From debfd3dabf23fe7c70cc9f5b19d8ce4091131931 Mon Sep 17 00:00:00 2001 From: GinjaNinja32 Date: Thu, 26 May 2016 16:49:31 +0100 Subject: [PATCH 01/50] Ports GinjaNinja32's drinks rewrite from Bay --- code/datums/supplypacks.dm | 25 +- code/game/machinery/autolathe_datums.dm | 30 +- code/game/machinery/vending.dm | 28 +- code/game/objects/items/weapons/RSF.dm | 2 +- .../objects/items/weapons/storage/boxes.dm | 11 +- code/modules/reagents/Chemistry-Machinery.dm | 2 +- code/modules/reagents/Chemistry-Reagents.dm | 10 +- .../Chemistry-Reagents-Core.dm | 9 +- .../Chemistry-Reagents-Dispenser.dm | 8 +- .../Chemistry-Reagents-Food-Drinks.dm | 543 ++++++------------ .../Chemistry-Reagents-Other.dm | 6 +- .../Chemistry-Reagents-Toxins.dm | 7 +- .../drinkingglass/drinkingglass.dm | 145 +++++ .../drinkingglass/extras.dm | 69 +++ .../drinkingglass/glass_boxes.dm | 75 +++ .../drinkingglass/glass_types.dm | 72 +++ .../reagent_containers/food/drinks/cup.dm | 43 ++ html/changelogs/GinjaNinja32-newdrinks.yml | 6 + icons/pdrink.dmi | Bin 0 -> 68135 bytes maps/polaris-1.dmm | 12 +- maps/polaris-2.dmm | 12 +- maps/polaris-5.dmm | 4 +- polaris.dme | 6 +- 23 files changed, 700 insertions(+), 425 deletions(-) create mode 100644 code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm create mode 100644 code/modules/reagents/reagent_containers/drinkingglass/extras.dm create mode 100644 code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm create mode 100644 code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm create mode 100644 code/modules/reagents/reagent_containers/food/drinks/cup.dm create mode 100644 html/changelogs/GinjaNinja32-newdrinks.yml create mode 100644 icons/pdrink.dmi diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 8c81c98db63..d6843d95ad0 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -109,7 +109,9 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /datum/supply_packs/party name = "Party equipment" contains = list( - /obj/item/weapon/storage/box/drinkingglasses, + /obj/item/weapon/storage/box/mixedglasses, + /obj/item/weapon/storage/box/mixedglasses, + /obj/item/weapon/storage/box/glasses/square, /obj/item/weapon/reagent_containers/food/drinks/shaker, /obj/item/weapon/reagent_containers/food/drinks/flask/barflask, /obj/item/weapon/reagent_containers/food/drinks/bottle/patron, @@ -119,13 +121,32 @@ var/list/all_supply_groups = list("Operations","Security","Hospitality","Enginee /obj/item/weapon/lipstick/random, /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 2, /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 4, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 4 ) cost = 20 containertype = /obj/structure/closet/crate containername = "Party equipment" group = "Hospitality" +/datum/supply_packs/barsupplies + name = "Bar supplies" + contains = list( + /obj/item/weapon/storage/box/glasses/cocktail, + /obj/item/weapon/storage/box/glasses/rocks, + /obj/item/weapon/storage/box/glasses/square, + /obj/item/weapon/storage/box/glasses/pint, + /obj/item/weapon/storage/box/glasses/wine, + /obj/item/weapon/storage/box/glasses/shake, + /obj/item/weapon/storage/box/glasses/shot, + /obj/item/weapon/storage/box/glasses/mug, + /obj/item/weapon/reagent_containers/food/drinks/shaker, + /obj/item/weapon/storage/box/glass_extras/straws, + /obj/item/weapon/storage/box/glass_extras/sticks + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "crate of bar supplies" + group = "Hospitality" + /datum/supply_packs/lasertag name = "Lasertag equipment" contains = list( diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index eda9262351f..82decf4836e 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -38,13 +38,33 @@ /datum/autolathe/recipe/drinkingglass name = "drinking glass" - path = /obj/item/weapon/reagent_containers/food/drinks/drinkingglass + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/square category = "General" + New() + ..() + var/obj/O = path + name = initial(O.name) // generic recipes yay -/datum/autolathe/recipe/shotglass/ - name = "shot glass" - path = /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass - category = "General" +/datum/autolathe/recipe/drinkingglass/rocks + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks + +/datum/autolathe/recipe/drinkingglass/shake + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake + +/datum/autolathe/recipe/drinkingglass/cocktail + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail + +/datum/autolathe/recipe/drinkingglass/shot + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot + +/datum/autolathe/recipe/drinkingglass/pint + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint + +/datum/autolathe/recipe/drinkingglass/mug + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug + +/datum/autolathe/recipe/drinkingglass/wine + path = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine /datum/autolathe/recipe/flashlight name = "flashlight" diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index f086a3e1dd6..f3cfc9bcff0 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -719,8 +719,14 @@ /obj/item/weapon/reagent_containers/food/drinks/cans/sodawater = 15, /obj/item/weapon/reagent_containers/food/drinks/flask/barflask = 5, /obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask = 5, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 30, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass = 30, + /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/shake = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/shot = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/pint = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/mug = 10, + /obj/item/weapon/reagent_containers/food/drinks/glass2/wine = 10, /obj/item/weapon/reagent_containers/food/drinks/ice = 10, /obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5, @@ -959,7 +965,8 @@ /obj/item/weapon/material/kitchen/utensil/knife = 6, /obj/item/weapon/material/kitchen/utensil/spoon = 6, /obj/item/weapon/material/knife = 3, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass = 8, + /obj/item/weapon/material/kitchen/rollingpin = 2, + /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 8, /obj/item/clothing/suit/chef/classic = 2, /obj/item/weapon/storage/toolbox/lunchbox = 3, /obj/item/weapon/storage/toolbox/lunchbox/heart = 3, @@ -971,16 +978,15 @@ /obj/item/weapon/storage/toolbox/lunchbox/syndicate = 3) - contraband = list(/obj/item/weapon/material/kitchen/rollingpin = 2, - /obj/item/weapon/material/knife/butch = 2) + contraband = list(/obj/item/weapon/material/knife/butch = 2) /obj/machinery/vending/sovietsoda name = "BODA" desc = "An old sweet water vending machine,how did this end up here?" icon_state = "sovietsoda" product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem." - products = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/soda = 30) - contraband = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/cola = 20) + products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 30) // TODO Russian soda can + contraband = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 20) // TODO Russian cola can idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. /obj/machinery/vending/tool @@ -1053,16 +1059,16 @@ icon_state = "fitness" products = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 8, /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 8, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 8, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 8, + //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 8, + //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 8, /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 8, /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 8, /obj/item/weapon/reagent_containers/pill/diet = 8) prices = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 3, /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 3, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 20, - /obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 5, + //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask/proteinshake = 20, + //obj/item/weapon/reagent_containers/food/drinks/drinkingglass/fitnessflask = 5, /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 5, /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 5, /obj/item/weapon/reagent_containers/pill/diet = 25) diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index b96d53c2a87..6384508c044 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -82,7 +82,7 @@ RSF product = new /obj/item/clothing/mask/smokable/cigarette() used_energy = 10 if(2) - product = new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass() + product = new /obj/item/weapon/reagent_containers/food/drinks/glass2() used_energy = 50 if(3) product = new /obj/item/weapon/paper() diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 9f6992d4046..a1b6e17b5a8 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -312,15 +312,6 @@ for(var/i = 1 to 7) new /obj/item/clothing/glasses/regular(src) -/obj/item/weapon/storage/box/drinkingglasses - name = "box of drinking glasses" - desc = "It has a picture of drinking glasses on it." - -/obj/item/weapon/storage/box/drinkingglasses/New() - ..() - for(var/i = 1 to 7) - new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src) - /obj/item/weapon/storage/box/cdeathalarm_kit name = "death alarm kit" desc = "Box of stuff used to implant death alarms." @@ -570,4 +561,4 @@ /obj/item/weapon/storage/box/ambrosiadeus/New() ..() for(var/i = 1 to 7) - new /obj/item/seeds/ambrosiadeusseed(src) \ No newline at end of file + new /obj/item/seeds/ambrosiadeusseed(src) diff --git a/code/modules/reagents/Chemistry-Machinery.dm b/code/modules/reagents/Chemistry-Machinery.dm index b58f1384da7..5c4dc8c169f 100644 --- a/code/modules/reagents/Chemistry-Machinery.dm +++ b/code/modules/reagents/Chemistry-Machinery.dm @@ -349,7 +349,7 @@ return if (istype(O,/obj/item/weapon/reagent_containers/glass) || \ - istype(O,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass) || \ + istype(O,/obj/item/weapon/reagent_containers/food/drinks/glass2) || \ istype(O,/obj/item/weapon/reagent_containers/food/drinks/shaker)) if (beaker) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index e7317b32e88..64cbd4a32c0 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -26,17 +26,19 @@ var/overdose = 0 var/scannable = 0 // Shows up on health analyzers. var/affects_dead = 0 - var/glass_icon_state = null - var/glass_name = null - var/glass_desc = null - var/glass_center_of_mass = null var/cup_icon_state = null var/cup_name = null var/cup_desc = null var/cup_center_of_mass = null + var/color = "#000000" var/color_weight = 1 + var/glass_icon = DRINK_ICON_DEFAULT + var/glass_name = "something" + var/glass_desc = "It's a glass of... what, exactly?" + var/list/glass_special = null // null equivalent to list() + /datum/reagent/proc/remove_self(var/amount) // Shortcut holder.remove_reagent(id, amount) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm index 20225508c65..842814bca26 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Core.dm @@ -6,8 +6,7 @@ metabolism = REM * 5 color = "#C80000" - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" + glass_name = "tomato juice" glass_desc = "Are you sure this is tomato juice?" /datum/reagent/blood/initialize_data(var/newdata) @@ -91,8 +90,7 @@ color = "#0064C877" metabolism = REM * 10 - glass_icon_state = "glass_clear" - glass_name = "glass of water" + glass_name = "water" glass_desc = "The father of all refreshments." /datum/reagent/water/touch_turf(var/turf/simulated/T) @@ -154,8 +152,7 @@ reagent_state = LIQUID color = "#660000" - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of welder fuel" + glass_name = "welder fuel" glass_desc = "Unless you are an industrial tool, this is probably not safe for consumption." /datum/reagent/fuel/touch_turf(var/turf/T) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm index 4c3e461a270..89837746c38 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Dispenser.dm @@ -66,8 +66,7 @@ var/targ_temp = 310 var/halluci = 0 - glass_icon_state = "glass_clear" - glass_name = "glass of ethanol" + glass_name = "ethanol" glass_desc = "A well-known alcohol with a variety of applications." /datum/reagent/ethanol/touch_mob(var/mob/living/L, var/amount) @@ -368,9 +367,10 @@ description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." reagent_state = SOLID color = "#FFFFFF" - glass_icon_state = "iceglass" - glass_name = "glass of sugar" + + glass_name = "sugar" glass_desc = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." + glass_icon = DRINK_ICON_NOISY /datum/reagent/sugar/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) M.nutrition += removed * 3 diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm index 469c34a1c19..e0bca7f3f9c 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm @@ -383,8 +383,7 @@ description = "The raw essence of a banana." color = "#C3AF00" - glass_icon_state = "banana" - glass_name = "glass of banana juice" + glass_name = "banana juice" glass_desc = "The raw essence of a banana. HONK!" /datum/reagent/drink/juice/berry @@ -393,8 +392,7 @@ description = "A delicious blend of several different kinds of berries." color = "#990066" - glass_icon_state = "berryjuice" - glass_name = "glass of berry juice" + glass_name = "berry juice" glass_desc = "Berry juice. Or maybe it's jam. Who cares?" /datum/reagent/drink/juice/carrot @@ -403,8 +401,7 @@ description = "It is just like a carrot but without crunching." color = "#FF8C00" // rgb: 255, 140, 0 - glass_icon_state = "carrotjuice" - glass_name = "glass of carrot juice" + glass_name = "carrot juice" glass_desc = "It is just like a carrot but without crunching." /datum/reagent/drink/juice/carrot/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -417,8 +414,7 @@ description = "It's grrrrrape!" color = "#863333" - glass_icon_state = "grapejuice" - glass_name = "glass of grape juice" + glass_name = "grape juice" glass_desc = "It's grrrrrape!" /datum/reagent/juice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -448,8 +444,7 @@ description = "This juice is VERY sour." color = "#AFAF00" - glass_icon_state = "lemonjuice" - glass_name = "glass of lemon juice" + glass_name = "lemon juice" glass_desc = "Sour..." /datum/reagent/drink/juice/lime @@ -458,8 +453,7 @@ description = "The sweet-sour juice of limes." color = "#365E30" - glass_icon_state = "glass_green" - glass_name = "glass of lime juice" + glass_name = "lime juice" glass_desc = "A glass of sweet-sour lime juice" /datum/reagent/drink/juice/lime/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -474,8 +468,7 @@ description = "Both delicious AND rich in Vitamin C, what more do you need?" color = "#E78108" - glass_icon_state = "glass_orange" - glass_name = "glass of orange juice" + glass_name = "orange juice" glass_desc = "Vitamins! Yay!" /datum/reagent/drink/orangejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -491,8 +484,7 @@ color = "#863353" strength = 5 - glass_icon_state = "poisonberryjuice" - glass_name = "glass of poison berry juice" + glass_name = "poison berry juice" glass_desc = "A glass of deadly juice." /datum/reagent/drink/juice/potato @@ -502,8 +494,7 @@ nutrition = 2 color = "#302000" - glass_icon_state = "glass_brown" - glass_name = "glass of potato juice" + glass_name = "potato juice" glass_desc = "Juice from a potato. Bleh." /datum/reagent/drink/juice/tomato @@ -512,8 +503,7 @@ description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" color = "#731008" - glass_icon_state = "glass_red" - glass_name = "glass of tomato juice" + glass_name = "tomato juice" glass_desc = "Are you sure this is tomato juice?" /datum/reagent/drink/juice/tomato/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -528,8 +518,7 @@ description = "Delicious juice made from watermelon." color = "#B83333" - glass_icon_state = "glass_red" - glass_name = "glass of watermelon juice" + glass_name = "watermelon juice" glass_desc = "Delicious juice made from watermelon." // Everything else @@ -540,8 +529,7 @@ description = "An opaque white liquid produced by the mammary glands of mammals." color = "#DFDFDF" - glass_icon_state = "glass_white" - glass_name = "glass of milk" + glass_name = "milk" glass_desc = "White and nutritious goodness!" cup_icon_state = "cup_cream" @@ -554,7 +542,6 @@ description = "A delicious mixture of perfectly healthy mix and terrible chocolate." color = "#74533b" - glass_icon_state = "glass_brown" glass_name = "glass of chocolate milk" glass_desc = "Delciously fattening!" @@ -575,8 +562,7 @@ description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" color = "#DFD7AF" - glass_icon_state = "glass_white" - glass_name = "glass of cream" + glass_name = "cream" glass_desc = "Ewwww..." cup_icon_state = "cup_cream" @@ -589,8 +575,7 @@ description = "An opaque white liquid made from soybeans." color = "#DFDFC7" - glass_icon_state = "glass_white" - glass_name = "glass of soy milk" + glass_name = "soy milk" glass_desc = "White and nutritious soy goodness!" cup_icon_state = "cup_cream" @@ -607,7 +592,6 @@ adj_sleepy = -3 adj_temp = 20 - glass_icon_state = "bigteacup" glass_name = "cup of tea" glass_desc = "Tasty black tea, it has antioxidants, it's good for you!" @@ -624,10 +608,9 @@ color = "#104038" // rgb: 16, 64, 56 adj_temp = -5 - glass_icon_state = "icedteaglass" - glass_name = "glass of iced tea" + glass_name = "iced tea" glass_desc = "No relation to a certain rap artist/ actor." - glass_center_of_mass = list("x"=15, "y"=10) + glass_special = list(DRINK_ICE) /datum/reagent/drink/coffee name = "Coffee" @@ -640,14 +623,14 @@ adj_temp = 25 overdose = 45 - glass_icon_state = "hot_coffee" - glass_name = "mug of coffee" - glass_desc = "Don't drop it, or you'll send scalding liquid and porcelain shards everywhere." - cup_icon_state = "cup_coffee" cup_name = "cup of coffee" cup_desc = "Don't drop it, or you'll send scalding liquid and porcelain shards everywhere." + glass_name = "cup of coffee" + glass_desc = "Don't drop it, or you'll send scalding liquid and glass shards everywhere." + + /datum/reagent/drink/coffee/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) if(alien == IS_DIONA) return @@ -680,21 +663,20 @@ color = "#102838" adj_temp = -5 - glass_icon_state = "icedcoffeeglass" - glass_name = "glass of iced coffee" + glass_name = "iced coffee" glass_desc = "A drink to perk you up and refresh you!" + glass_special = list(DRINK_ICE) /datum/reagent/drink/coffee/soy_latte name = "Soy Latte" id = "soy_latte" description = "A nice and tasty beverage while you are reading your hippie books." - color = "#664300" + color = "#C65905" adj_temp = 5 - glass_icon_state = "soy_latte" - glass_name = "glass of soy latte" glass_desc = "A nice and refreshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) + glass_name = "soy latte" + glass_desc = "A nice and refrshing beverage while you are reading." cup_icon_state = "cup_latte" cup_name = "cup of soy latte" @@ -708,13 +690,11 @@ name = "Cafe Latte" id = "cafe_latte" description = "A nice, strong and tasty beverage while you are reading." - color = "#664300" // rgb: 102, 67, 0 + color = "#C65905" adj_temp = 5 - glass_icon_state = "cafe_latte" - glass_name = "glass of cafe latte" + glass_name = "cafe latte" glass_desc = "A nice, strong and refreshing beverage while you are reading." - glass_center_of_mass = list("x"=15, "y"=9) cup_icon_state = "cup_latte" cup_name = "cup of cafe latte" @@ -733,8 +713,7 @@ nutrition = 2 adj_temp = 5 - glass_icon_state = "chocolateglass" - glass_name = "glass of hot chocolate" + glass_name = "hot chocolate" glass_desc = "Made with love! And cocoa beans." cup_icon_state = "cup_coco" @@ -750,9 +729,9 @@ adj_drowsy = -3 adj_temp = -5 - glass_icon_state = "glass_clear" - glass_name = "glass of soda water" + glass_name = "soda water" glass_desc = "Soda water. Why not make a scotch and soda?" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/grapesoda name = "Grape Soda" @@ -761,22 +740,22 @@ color = "#421C52" adj_drowsy = -3 - glass_icon_state = "gsodaglass" - glass_name = "glass of grape soda" + glass_name = "grape soda" glass_desc = "Looks like a delicious drink!" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/tonic name = "Tonic Water" id = "tonic" description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." - color = "#664300" + color = "#619494" + adj_dizzy = -5 adj_drowsy = -3 adj_sleepy = -2 adj_temp = -5 - glass_icon_state = "glass_clear" - glass_name = "glass of tonic water" + glass_name = "tonic water" glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away." /datum/reagent/drink/soda/lemonade @@ -786,9 +765,9 @@ color = "#FFFF00" adj_temp = -5 - glass_icon_state = "lemonadeglass" - glass_name = "glass of lemonade" + glass_name = "lemonade" glass_desc = "Oh the nostalgia..." + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/kiraspecial name = "Kira Special" @@ -797,10 +776,9 @@ color = "#CCCC99" adj_temp = -5 - glass_icon_state = "kiraspecial" - glass_name = "glass of Kira Special" + glass_name = "Kira Special" glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!" - glass_center_of_mass = list("x"=16, "y"=12) + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/brownstar name = "Brown Star" @@ -809,8 +787,7 @@ color = "#9F3400" adj_temp = -2 - glass_icon_state = "brownstar" - glass_name = "glass of Brown Star" + glass_name = "Brown Star" glass_desc = "It's not what it sounds like..." /datum/reagent/drink/milkshake @@ -820,10 +797,8 @@ color = "#AEE5E4" adj_temp = -9 - glass_icon_state = "milkshake" - glass_name = "glass of milkshake" + glass_name = "milkshake" glass_desc = "Glorious brainfreezing mixture." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/milkshake/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -853,10 +828,8 @@ color = "#485000" adj_temp = -5 - glass_icon_state = "rewriter" - glass_name = "glass of Rewriter" + glass_name = "Rewriter" glass_desc = "The secret of the sanctuary of the Libarian..." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/drink/rewriter/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -870,10 +843,9 @@ adj_temp = -5 adj_sleepy = -2 - glass_icon_state = "nuka_colaglass" - glass_name = "glass of Nuka-Cola" + glass_name = "Nuka-Cola" glass_desc = "Don't cry, Don't raise your eye, It's only nuclear wasteland" - glass_center_of_mass = list("x"=16, "y"=6) + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/nuka_cola/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -889,10 +861,8 @@ description = "Made in the modern day with proper pomegranate substitute. Who uses real fruit, anyways?" color = "#FF004F" - glass_icon_state = "grenadineglass" - glass_name = "glass of grenadine syrup" + glass_name = "grenadine syrup" glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks." - glass_center_of_mass = list("x"=17, "y"=6) /datum/reagent/drink/soda/space_cola name = "Space Cola" @@ -903,9 +873,9 @@ adj_drowsy = -3 adj_temp = -5 - glass_icon_state = "glass_brown" - glass_name = "glass of Space Cola" + glass_name = "Space Cola" glass_desc = "A glass of refreshing Space Cola" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/spacemountainwind name = "Mountain Wind" @@ -916,9 +886,9 @@ adj_sleepy = -1 adj_temp = -5 - glass_icon_state = "Space_mountain_wind_glass" - glass_name = "glass of Space Mountain Wind" + glass_name = "Space Mountain Wind" glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind." + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/dr_gibb name = "Dr. Gibb" @@ -928,8 +898,7 @@ adj_drowsy = -6 adj_temp = -5 - glass_icon_state = "dr_gibb_glass" - glass_name = "glass of Dr. Gibb" + glass_name = "Dr. Gibb" glass_desc = "Dr. Gibb. Not as dangerous as the name might imply." /datum/reagent/drink/soda/space_up @@ -939,9 +908,9 @@ color = "#202800" adj_temp = -8 - glass_icon_state = "space-up_glass" - glass_name = "glass of Space-up" + glass_name = "Space-up" glass_desc = "Space-up. It helps keep your cool." + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/soda/lemon_lime name = "Lemon Lime" @@ -950,9 +919,9 @@ color = "#878F00" adj_temp = -8 - glass_icon_state = "lemonlime" - glass_name = "glass of lemon lime soda" + glass_name = "lemon lime soda" glass_desc = "A tangy substance made of 0.5% natural citrus!" + glass_special = list(DRINK_FIZZ) /datum/reagent/drink/doctor_delight name = "The Doctor's Delight" @@ -962,10 +931,8 @@ color = "#FF8CFF" nutrition = 1 - glass_icon_state = "doctorsdelightglass" - glass_name = "glass of The Doctor's Delight" + glass_name = "The Doctor's Delight" glass_desc = "A healthy mixture of juices, guaranteed to keep you healthy until the next toolboxing takes place." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/drink/doctor_delight/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1018,17 +985,16 @@ color = "#619494" adj_temp = -5 - glass_icon_state = "iceglass" - glass_name = "glass of ice" + glass_name = "ice" glass_desc = "Generally, you're supposed to put something else in there too..." + glass_icon = DRINK_ICON_NOISY /datum/reagent/drink/nothing name = "Nothing" id = "nothing" description = "Absolutely nothing." - glass_icon_state = "nothing" - glass_name = "glass of nothing" + glass_name = "nothing" glass_desc = "Absolutely nothing." /* Alcohol */ @@ -1042,35 +1008,29 @@ color = "#33EE00" strength = 12 - glass_icon_state = "absintheglass" - glass_name = "glass of absinthe" + glass_name = "absinthe" glass_desc = "Wormwood, anise, oh my." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/ale name = "Ale" id = "ale" description = "A dark alchoholic beverage made by malted barley and yeast." - color = "#664300" + color = "#4C3100" strength = 50 - glass_icon_state = "aleglass" - glass_name = "glass of ale" + glass_name = "ale" glass_desc = "A freezing pint of delicious ale" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/beer name = "Beer" id = "beer" description = "An alcoholic beverage made from malted grains, hops, yeast, and water." - color = "#664300" + color = "#FFD300" strength = 50 nutriment_factor = 1 - glass_icon_state = "beerglass" - glass_name = "glass of beer" + glass_name = "beer" glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/beer/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1085,10 +1045,8 @@ color = "#0000CD" strength = 15 - glass_icon_state = "curacaoglass" - glass_name = "glass of blue curacao" + glass_name = "blue curacao" glass_desc = "Exotically blue, fruity drink, distilled from oranges." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/cognac name = "Cognac" @@ -1097,22 +1055,18 @@ color = "#AB3C05" strength = 15 - glass_icon_state = "cognacglass" - glass_name = "glass of cognac" + glass_name = "cognac" glass_desc = "Damn, you feel like some kind of French aristocrat just by holding this." - glass_center_of_mass = list("x"=16, "y"=6) /datum/reagent/ethanol/deadrum name = "Deadrum" id = "deadrum" description = "Popular with the sailors. Not very popular with everyone else." - color = "#664300" + color = "#ECB633" strength = 50 - glass_icon_state = "rumglass" - glass_name = "glass of rum" + glass_name = "rum" glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/deadrum/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1124,13 +1078,11 @@ name = "Gin" id = "gin" description = "It's gin. In space. I say, good sir." - color = "#664300" + color = "#0064C6" strength = 50 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of gin" + glass_name = "gin" glass_desc = "A crystal clear glass of Griffeater gin." - glass_center_of_mass = list("x"=16, "y"=12) //Base type for alchoholic drinks containing coffee /datum/reagent/ethanol/coffee @@ -1168,13 +1120,11 @@ name = "Kahlua" id = "kahlua" description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" - color = "#664300" + color = "#4C3100" strength = 15 - glass_icon_state = "kahluaglass" - glass_name = "glass of RR coffee liquor" + glass_name = "RR coffee liquor" glass_desc = "DAMN, THIS THING LOOKS ROBUST" - glass_center_of_mass = list("x"=15, "y"=7) /datum/reagent/ethanol/melonliquor name = "Melon Liquor" @@ -1183,34 +1133,28 @@ color = "#138808" // rgb: 19, 136, 8 strength = 50 - glass_icon_state = "emeraldglass" - glass_name = "glass of melon liquor" + glass_name = "melon liquor" glass_desc = "A relatively sweet and fruity 46 proof liquor." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/rum name = "Rum" id = "rum" description = "Yohoho and all that." - color = "#664300" + color = "#ECB633" strength = 15 - glass_icon_state = "rumglass" - glass_name = "glass of rum" + glass_name = "rum" glass_desc = "Now you want to Pray for a pirate suit, don't you?" - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/sake name = "Sake" id = "sake" description = "Anime's favorite drink." - color = "#664300" + color = "#DDDDDD" strength = 25 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of sake" + glass_name = "sake" glass_desc = "A glass of sake." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/tequila name = "Tequila" @@ -1219,10 +1163,8 @@ color = "#FFFF91" strength = 25 - glass_icon_state = "tequillaglass" - glass_name = "glass of Tequila" + glass_name = "Tequilla" glass_desc = "Now all that's missing is the weird colored shades!" - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/thirteenloko name = "Thirteen Loko" @@ -1232,8 +1174,7 @@ strength = 25 nutriment_factor = 1 - glass_icon_state = "thirteen_loko_glass" - glass_name = "glass of Thirteen Loko" + glass_name = "Thirteen Loko" glass_desc = "This is a glass of Thirteen Loko, it appears to be of the highest quality. The drink, not the glass." /datum/reagent/ethanol/thirteenloko/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) @@ -1252,10 +1193,8 @@ color = "#91FF91" // rgb: 145, 255, 145 strength = 15 - glass_icon_state = "vermouthglass" - glass_name = "glass of vermouth" + glass_name = "vermouth" glass_desc = "You wonder why you're even drinking this straight." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/vodka name = "Vodka" @@ -1264,10 +1203,8 @@ color = "#0064C8" // rgb: 0, 100, 200 strength = 15 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of vodka" + glass_name = "vodka" glass_desc = "The glass contain wodka. Xynta." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/vodka/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1277,13 +1214,11 @@ name = "Whiskey" id = "whiskey" description = "A superb and well-aged single-malt whiskey. Damn." - color = "#664300" + color = "#4C3100" strength = 25 - glass_icon_state = "whiskeyglass" - glass_name = "glass of whiskey" + glass_name = "whiskey" glass_desc = "The silky, smokey whiskey goodness inside the glass makes the drink look very classy." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/wine name = "Wine" @@ -1292,10 +1227,8 @@ color = "#7E4043" // rgb: 126, 64, 67 strength = 15 - glass_icon_state = "wineglass" - glass_name = "glass of wine" + glass_name = "wine" glass_desc = "A very classy looking drink." - glass_center_of_mass = list("x"=15, "y"=7) // Cocktails @@ -1307,73 +1240,61 @@ color = "#365000" strength = 30 - glass_icon_state = "acidspitglass" - glass_name = "glass of Acid Spit" + glass_name = "Acid Spit" glass_desc = "A drink from the company archives. Made from live aliens." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/ethanol/alliescocktail name = "Allies Cocktail" id = "alliescocktail" description = "A drink made from your allies, not as sweet as when made from your enemies." - color = "#664300" + color = "#D8AC45" strength = 25 - glass_icon_state = "alliescocktail" - glass_name = "glass of Allies cocktail" + glass_name = "Allies cocktail" glass_desc = "A drink made from your allies." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/aloe name = "Aloe" id = "aloe" description = "So very, very, very good." - color = "#664300" + color = "#B7EA75" strength = 15 - glass_icon_state = "aloe" - glass_name = "glass of Aloe" + glass_name = "Aloe" glass_desc = "Very, very, very good." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/amasec name = "Amasec" id = "amasec" description = "Official drink of the Gun Club!" reagent_state = LIQUID - color = "#664300" + color = "#FF975D" strength = 25 - glass_icon_state = "amasecglass" - glass_name = "glass of Amasec" + glass_name = "Amasec" glass_desc = "Always handy before COMBAT!!!" - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/andalusia name = "Andalusia" id = "andalusia" description = "A nice, strangely named drink." - color = "#664300" + color = "#F4EA4A" strength = 15 - glass_icon_state = "andalusia" - glass_name = "glass of Andalusia" + glass_name = "Andalusia" glass_desc = "A nice, strange named drink." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/antifreeze name = "Anti-freeze" id = "antifreeze" description = "Ultimate refreshment." - color = "#664300" + color = "#56DEEA" strength = 12 adj_temp = 20 targ_temp = 330 - glass_icon_state = "antifreeze" - glass_name = "glass of Anti-freeze" + glass_name = "Anti-freeze" glass_desc = "The ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/atomicbomb name = "Atomic Bomb" @@ -1384,20 +1305,17 @@ strength = 10 druggy = 50 - glass_icon_state = "atomicbombglass" - glass_name = "glass of Atomic Bomb" + glass_name = "Atomic Bomb" glass_desc = "We cannot take legal responsibility for your actions after imbibing." - glass_center_of_mass = list("x"=15, "y"=7) /datum/reagent/ethanol/coffee/b52 name = "B-52" id = "b52" description = "Coffee, Irish Cream, and cognac. You will get bombed." - color = "#664300" + color = "#997650" strength = 12 - glass_icon_state = "b52glass" - glass_name = "glass of B-52" + glass_name = "B-52" glass_desc = "Kahlua, Irish cream, and congac. You will get bombed." /datum/reagent/ethanol/bahama_mama @@ -1407,10 +1325,8 @@ color = "#FF7F3B" strength = 25 - glass_icon_state = "bahama_mama" - glass_name = "glass of Bahama Mama" + glass_name = "Bahama Mama" glass_desc = "Tropical cocktail" - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/bananahonk name = "Banana Mama" @@ -1420,35 +1336,29 @@ color = "#FFFF91" strength = 12 - glass_icon_state = "bananahonkglass" - glass_name = "glass of Banana Honk" + glass_name = "Banana Honk" glass_desc = "A drink from Banana Heaven." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/barefoot name = "Barefoot" id = "barefoot" description = "Barefoot and pregnant" - color = "#664300" + color = "#FFCDEA" strength = 30 - glass_icon_state = "b&p" - glass_name = "glass of Barefoot" + glass_name = "Barefoot" glass_desc = "Barefoot and pregnant" - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/beepsky_smash name = "Beepsky Smash" id = "beepskysmash" description = "Deny drinking this and prepare for THE LAW." reagent_state = LIQUID - color = "#664300" + color = "#404040" strength = 12 - glass_icon_state = "beepskysmashglass" glass_name = "Beepsky Smash" glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." - glass_center_of_mass = list("x"=18, "y"=10) /datum/reagent/ethanol/beepsky_smash/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1462,8 +1372,7 @@ strength = 50 nutriment_factor = 2 - glass_icon_state = "glass_brown" - glass_name = "glass of bilk" + glass_name = "bilk" glass_desc = "A brew of milk and beer. For those alcoholics who fear osteoporosis." /datum/reagent/ethanol/black_russian @@ -1473,20 +1382,17 @@ color = "#360000" strength = 15 - glass_icon_state = "blackrussianglass" - glass_name = "glass of Black Russian" + glass_name = "Black Russian" glass_desc = "For the lactose-intolerant. Still as classy as a White Russian." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/bloody_mary name = "Bloody Mary" id = "bloodymary" description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." - color = "#664300" + color = "#B40000" strength = 15 - glass_icon_state = "bloodymaryglass" - glass_name = "glass of Bloody Mary" + glass_name = "Bloody Mary" glass_desc = "Tomato juice, mixed with Vodka and a lil' bit of lime. Tastes like liquid murder." /datum/reagent/ethanol/booger @@ -1496,21 +1402,18 @@ color = "#8CFF8C" strength = 30 - glass_icon_state = "booger" - glass_name = "glass of Booger" + glass_name = "Booger" glass_desc = "Ewww..." /datum/reagent/ethanol/coffee/brave_bull name = "Brave Bull" id = "bravebull" description = "It's just as effective as Dutch-Courage!" - color = "#664300" + color = "#4C3100" strength = 15 - glass_icon_state = "bravebullglass" - glass_name = "glass of Brave Bull" + glass_name = "Brave Bull" glass_desc = "Tequilla and coffee liquor, brought together in a mouthwatering mixture. Drink up." - glass_center_of_mass = list("x"=15, "y"=8) /datum/reagent/ethanol/changelingsting name = "Changeling Sting" @@ -1519,21 +1422,18 @@ color = "#2E6671" strength = 10 - glass_icon_state = "changelingsting" - glass_name = "glass of Changeling Sting" + glass_name = "Changeling Sting" glass_desc = "A stingy drink." /datum/reagent/ethanol/martini name = "Classic Martini" id = "martini" description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" + color = "#0064C8" strength = 25 - glass_icon_state = "martiniglass" - glass_name = "glass of classic martini" + glass_name = "classic martini" glass_desc = "Damn, the bartender even stirred it, not shook it." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/cuba_libre name = "Cuba Libre" @@ -1542,10 +1442,8 @@ color = "#3E1B00" strength = 30 - glass_icon_state = "cubalibreglass" - glass_name = "glass of Cuba Libre" + glass_name = "Cuba Libre" glass_desc = "A classic mix of rum and cola." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/demonsblood name = "Demons Blood" @@ -1554,10 +1452,8 @@ color = "#820000" strength = 15 - glass_icon_state = "demonsblood" - glass_name = "glass of Demons' Blood" + glass_name = "Demons' Blood" glass_desc = "Just looking at this thing makes the hair at the back of your neck stand up." - glass_center_of_mass = list("x"=16, "y"=2) /datum/reagent/ethanol/devilskiss name = "Devils Kiss" @@ -1566,10 +1462,8 @@ color = "#A68310" strength = 15 - glass_icon_state = "devilskiss" - glass_name = "glass of Devil's Kiss" + glass_name = "Devil's Kiss" glass_desc = "Creepy time!" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/driestmartini name = "Driest Martini" @@ -1579,33 +1473,29 @@ color = "#2E6671" strength = 12 - glass_icon_state = "driestmartiniglass" - glass_name = "glass of Driest Martini" + glass_name = "Driest Martini" glass_desc = "Only for the experienced. You think you see sand floating in the glass." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/ginfizz name = "Gin Fizz" id = "ginfizz" description = "Refreshingly lemony, deliciously dry." - color = "#664300" + color = "#FFFFAE" strength = 30 - glass_icon_state = "ginfizzglass" - glass_name = "glass of gin fizz" + glass_name = "gin fizz" glass_desc = "Refreshingly lemony, deliciously dry." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/ethanol/grog name = "Grog" id = "grog" description = "Watered-down rum, pirate approved!" reagent_state = LIQUID - color = "#664300" + color = "#FFBB00" strength = 100 - glass_icon_state = "grogglass" - glass_name = "glass of grog" + + glass_name = "grog" glass_desc = "A fine and cepa drink for Space." /datum/reagent/ethanol/erikasurprise @@ -1615,87 +1505,76 @@ color = "#2E6671" strength = 15 - glass_icon_state = "erikasurprise" - glass_name = "glass of Erika Surprise" + glass_name = "Erika Surprise" glass_desc = "The surprise is, it's green!" - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/gargle_blaster name = "Pan-Galactic Gargle Blaster" id = "gargleblaster" description = "Whoah, this stuff looks volatile!" reagent_state = LIQUID - color = "#664300" + color = "#7F00FF" strength = 10 - glass_icon_state = "gargleblasterglass" - glass_name = "glass of Pan-Galactic Gargle Blaster" + glass_name = "Pan-Galactic Gargle Blaster" glass_desc = "Does... does this mean that Arthur and Ford are on the station? Oh joy." - glass_center_of_mass = list("x"=17, "y"=6) /datum/reagent/ethanol/gintonic name = "Gin and Tonic" id = "gintonic" description = "An all time classic, mild cocktail." - color = "#664300" + color = "#0064C8" strength = 50 - glass_icon_state = "gintonicglass" - glass_name = "glass of gin and tonic" + glass_name = "gin and tonic" glass_desc = "A mild but still great cocktail. Drink up, like a true Englishman." - glass_center_of_mass = list("x"=16, "y"=7) /datum/reagent/ethanol/goldschlager name = "Goldschlager" id = "goldschlager" description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." - color = "#664300" + color = "#F4E46D" strength = 15 - glass_icon_state = "ginvodkaglass" - glass_name = "glass of Goldschlager" + glass_name = "Goldschlager" glass_desc = "100 proof that teen girls will drink anything with gold in it." - glass_center_of_mass = list("x"=16, "y"=12) /datum/reagent/ethanol/hippies_delight name = "Hippies' Delight" id = "hippiesdelight" description = "You just don't get it maaaan." reagent_state = LIQUID - color = "#664300" + color = "#FF88FF" strength = 15 druggy = 50 - glass_icon_state = "hippiesdelightglass" - glass_name = "glass of Hippie's Delight" + glass_name = "Hippie's Delight" glass_desc = "A drink enjoyed by people during the 1960's." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/hooch name = "Hooch" id = "hooch" description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" - color = "#664300" + color = "#4C3100" strength = 25 toxicity = 2 - glass_icon_state = "glass_brown2" - glass_name = "glass of Hooch" + glass_name = "Hooch" glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." /datum/reagent/ethanol/iced_beer name = "Iced Beer" id = "iced_beer" description = "A beer which is so cold the air around it freezes." - color = "#664300" + + color = "#FFD300" strength = 50 adj_temp = -20 targ_temp = 270 - glass_icon_state = "iced_beerglass" - glass_name = "glass of iced beer" + glass_name = "iced beer" glass_desc = "A beer so frosty, the air around it freezes." - glass_center_of_mass = list("x"=16, "y"=7) + glass_special = list(DRINK_ICE) /datum/reagent/ethanol/irishcarbomb name = "Irish Car Bomb" @@ -1704,81 +1583,68 @@ color = "#2E6671" strength = 15 - glass_icon_state = "irishcarbomb" - glass_name = "glass of Irish Car Bomb" + glass_name = "Irish Car Bomb" glass_desc = "An irish car bomb." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/coffee/irishcoffee name = "Irish Coffee" id = "irishcoffee" description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." - color = "#664300" + color = "#4C3100" strength = 15 - glass_icon_state = "irishcoffeeglass" - glass_name = "glass of Irish coffee" + glass_name = "Irish coffee" glass_desc = "Coffee and alcohol. More fun than a Mimosa to drink in the morning." - glass_center_of_mass = list("x"=15, "y"=10) /datum/reagent/ethanol/irish_cream name = "Irish Cream" id = "irishcream" description = "Whiskey-imbued cream, what else would you expect from the Irish." - color = "#664300" + color = "#DDDD9A3" strength = 25 - glass_icon_state = "irishcreamglass" - glass_name = "glass of Irish cream" + glass_name = "Irish cream" glass_desc = "It's cream, mixed with whiskey. What else would you expect from the Irish?" - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/longislandicedtea name = "Long Island Iced Tea" id = "longislandicedtea" description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - color = "#664300" + color = "#895B1F" strength = 12 - glass_icon_state = "longislandicedteaglass" - glass_name = "glass of Long Island iced tea" + glass_name = "Long Island iced tea" glass_desc = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/manhattan name = "Manhattan" id = "manhattan" description = "The Detective's undercover drink of choice. He never could stomach gin..." - color = "#664300" + color = "#C13600" strength = 15 - glass_icon_state = "manhattanglass" - glass_name = "glass of Manhattan" + glass_name = "Manhattan" glass_desc = "The Detective's undercover drink of choice. He never could stomach gin..." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/manhattan_proj name = "Manhattan Project" id = "manhattan_proj" description = "A scientist's drink of choice, for pondering ways to blow up the station." - color = "#664300" + color = "#C15D00" strength = 10 druggy = 30 - glass_icon_state = "proj_manhattanglass" - glass_name = "glass of Manhattan Project" + glass_name = "Manhattan Project" glass_desc = "A scienitst drink of choice, for thinking how to blow up the station." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/manly_dorf name = "The Manly Dorf" id = "manlydorf" description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." - color = "#664300" + color = "#4C3100" strength = 25 - glass_icon_state = "manlydorfglass" - glass_name = "glass of The Manly Dorf" + glass_name = "The Manly Dorf" glass_desc = "A manly concotion made from Ale and Beer. Intended for true men only." /datum/reagent/ethanol/margarita @@ -1788,34 +1654,29 @@ color = "#8CFF8C" strength = 15 - glass_icon_state = "margaritaglass" - glass_name = "glass of margarita" + glass_name = "margarita" glass_desc = "On the rocks with salt on the rim. Arriba~!" - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/mead name = "Mead" id = "mead" description = "A Viking's drink, though a cheap one." reagent_state = LIQUID - color = "#664300" + color = "#FFBB00" strength = 30 nutriment_factor = 1 - glass_icon_state = "meadglass" - glass_name = "glass of mead" + glass_name = "mead" glass_desc = "A Viking's beverage, though a cheap one." - glass_center_of_mass = list("x"=17, "y"=10) /datum/reagent/ethanol/moonshine name = "Moonshine" id = "moonshine" description = "You've really hit rock bottom now... your liver packed its bags and left last night." - color = "#664300" + color = "#0064C8" strength = 12 - glass_icon_state = "glass_clear" - glass_name = "glass of moonshine" + glass_name = "moonshine" glass_desc = "You've really hit rock bottom now... your liver packed its bags and left last night." /datum/reagent/ethanol/neurotoxin @@ -1826,10 +1687,10 @@ color = "#2E2E61" strength = 10 - glass_icon_state = "neurotoxinglass" - glass_name = "glass of Neurotoxin" + glass_name = "Neurotoxin" glass_desc = "A drink that is guaranteed to knock you silly." - glass_center_of_mass = list("x"=16, "y"=8) + glass_icon = DRINK_ICON_NOISY + glass_special = list("neuroright") /datum/reagent/ethanol/neurotoxin/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1842,10 +1703,8 @@ color = "#585840" strength = 30 - glass_icon_state = "patronglass" - glass_name = "glass of Patron" + glass_name = "Patron" glass_desc = "Drinking patron in the bar, with all the subpar ladies." - glass_center_of_mass = list("x"=7, "y"=8) /datum/reagent/ethanol/pwine name = "Poison Wine" @@ -1856,10 +1715,8 @@ druggy = 50 halluci = 10 - glass_icon_state = "pwineglass" - glass_name = "glass of ???" + glass_name = "???" glass_desc = "A black ichor with an oily purple sheer on top. Are you sure you should drink this?" - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/pwine/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) ..() @@ -1881,24 +1738,20 @@ color = "#C73C00" strength = 30 - glass_icon_state = "red_meadglass" - glass_name = "glass of red mead" + glass_name = "red mead" glass_desc = "A true Viking's beverage, though its color is strange." - glass_center_of_mass = list("x"=17, "y"=10) /datum/reagent/ethanol/sbiten name = "Sbiten" id = "sbiten" description = "A spicy Vodka! Might be a little hot for the little guys!" - color = "#664300" + color = "#FFA371" strength = 15 adj_temp = 50 targ_temp = 360 - glass_icon_state = "sbitenglass" - glass_name = "glass of Sbiten" + glass_name = "Sbiten" glass_desc = "A spicy mix of Vodka and Spice. Very hot." - glass_center_of_mass = list("x"=17, "y"=8) /datum/reagent/ethanol/screwdrivercocktail name = "Screwdriver" @@ -1907,23 +1760,19 @@ color = "#A68310" strength = 15 - glass_icon_state = "screwdriverglass" - glass_name = "glass of Screwdriver" + glass_name = "Screwdriver" glass_desc = "A simple, yet superb mixture of Vodka and orange juice. Just the thing for the tired engineer." - glass_center_of_mass = list("x"=15, "y"=10) /datum/reagent/ethanol/silencer name = "Silencer" id = "silencer" description = "A drink from Mime Heaven." nutriment_factor = 1 - color = "#664300" + color = "#FFFFFF" strength = 12 - glass_icon_state = "silencerglass" - glass_name = "glass of Silencer" + glass_name = "Silencer" glass_desc = "A drink from mime Heaven." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/singulo name = "Singulo" @@ -1932,10 +1781,8 @@ color = "#2E6671" strength = 10 - glass_icon_state = "singulo" - glass_name = "glass of Singulo" + glass_name = "Singulo" glass_desc = "A blue-space beverage." - glass_center_of_mass = list("x"=17, "y"=4) /datum/reagent/ethanol/snowwhite name = "Snow White" @@ -1944,10 +1791,8 @@ color = "#FFFFFF" strength = 30 - glass_icon_state = "snowwhite" - glass_name = "glass of Snow White" + glass_name = "Snow White" glass_desc = "A cold refreshment." - glass_center_of_mass = list("x"=16, "y"=8) /datum/reagent/ethanol/suidream name = "Sui Dream" @@ -1956,10 +1801,8 @@ color = "#00A86B" strength = 100 - glass_icon_state = "sdreamglass" - glass_name = "glass of Sui Dream" + glass_name = "Sui Dream" glass_desc = "A froofy, fruity, and sweet mixed drink. Understanding the name only brings shame." - glass_center_of_mass = list("x"=16, "y"=5) /datum/reagent/ethanol/syndicatebomb name = "Syndicate Bomb" @@ -1968,10 +1811,8 @@ color = "#2E6671" strength = 10 - glass_icon_state = "syndicatebomb" - glass_name = "glass of Syndicate Bomb" + glass_name = "Syndicate Bomb" glass_desc = "Tastes like terrorism!" - glass_center_of_mass = list("x"=16, "y"=4) /datum/reagent/ethanol/tequilla_sunrise name = "Tequila Sunrise" @@ -1980,8 +1821,7 @@ color = "#FFE48C" strength = 25 - glass_icon_state = "tequillasunriseglass" - glass_name = "glass of Tequila Sunrise" + glass_name = "Tequilla Sunrise" glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..." /datum/reagent/ethanol/threemileisland @@ -1992,36 +1832,32 @@ strength = 10 druggy = 50 - glass_icon_state = "threemileislandglass" - glass_name = "glass of Three Mile Island iced tea" + glass_name = "Three Mile Island iced tea" glass_desc = "A glass of this is sure to prevent a meltdown." - glass_center_of_mass = list("x"=16, "y"=2) /datum/reagent/ethanol/toxins_special name = "Toxins Special" id = "phoronspecial" description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" reagent_state = LIQUID - color = "#664300" + color = "#7F00FF" strength = 10 adj_temp = 15 targ_temp = 330 - glass_icon_state = "toxinsspecialglass" - glass_name = "glass of Toxins Special" + glass_name = "Toxins Special" glass_desc = "Whoah, this thing is on FIRE" /datum/reagent/ethanol/vodkamartini name = "Vodka Martini" id = "vodkamartini" description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." - color = "#664300" + color = "#0064C8" strength = 12 - glass_icon_state = "martiniglass" - glass_name = "glass of vodka martini" + glass_name = "vodka martini" glass_desc ="A bastardisation of the classic martini. Still great." - glass_center_of_mass = list("x"=17, "y"=8) + /datum/reagent/ethanol/vodkatonic name = "Vodka and Tonic" @@ -2030,10 +1866,9 @@ color = "#0064C8" // rgb: 0, 100, 200 strength = 15 - glass_icon_state = "vodkatonicglass" - glass_name = "glass of vodka and tonic" + glass_name = "vodka and tonic" glass_desc = "For when a gin and tonic isn't Russian enough." - glass_center_of_mass = list("x"=16, "y"=7) + /datum/reagent/ethanol/white_russian name = "White Russian" @@ -2042,10 +1877,9 @@ color = "#A68340" strength = 15 - glass_icon_state = "whiterussianglass" - glass_name = "glass of White Russian" + glass_name = "White Russian" glass_desc = "A very nice looking drink. But that's just, like, your opinion, man." - glass_center_of_mass = list("x"=16, "y"=9) + /datum/reagent/ethanol/whiskey_cola name = "Whiskey Cola" @@ -2054,22 +1888,19 @@ color = "#3E1B00" strength = 25 - glass_icon_state = "whiskeycolaglass" - glass_name = "glass of whiskey cola" + glass_name = "whiskey cola" glass_desc = "An innocent-looking mixture of cola and Whiskey. Delicious." - glass_center_of_mass = list("x"=16, "y"=9) + /datum/reagent/ethanol/whiskeysoda name = "Whiskey Soda" id = "whiskeysoda" description = "For the more refined griffon." - color = "#664300" + color = "#EAB300" strength = 15 - glass_icon_state = "whiskeysodaglass2" - glass_name = "glass of whiskey soda" + glass_name = "whiskey soda" glass_desc = "Ultimate refreshment." - glass_center_of_mass = list("x"=16, "y"=9) /datum/reagent/ethanol/specialwhiskey // I have no idea what this is and where it comes from name = "Special Blend Whiskey" @@ -2078,7 +1909,5 @@ color = "#523600" strength = 7 - glass_icon_state = "whiskeyglass" - glass_name = "glass of special blend whiskey" - glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything. The smell of it singes your nostrils." - glass_center_of_mass = list("x"=16, "y"=12) + glass_name = "special blend whiskey" + glass_desc = "Just when you thought regular station whiskey was good... This silky, amber goodness has to come along and ruin everything." diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm index c3cb7b4d2b4..92d09d1e183 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -112,8 +112,7 @@ color = "#C8A5DC" affects_dead = 1 //This can even heal dead people. - glass_icon_state = "golden_cup" - glass_name = "golden cup" + glass_name = "liquid gold" glass_desc = "It's magic. We don't have to explain it." /datum/reagent/adminordrazine/affect_touch(var/mob/living/carbon/M, var/alien, var/removed) @@ -197,8 +196,7 @@ description = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." color = "#E0E8EF" - glass_icon_state = "glass_clear" - glass_name = "glass of holy water" + glass_name = "holy water" glass_desc = "An ashen-obsidian-water mix, this solution will alter certain sections of the brain's rationality." /datum/reagent/water/holywater/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed) diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index bc0072511a3..884ee830f0c 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -331,13 +331,10 @@ id = "beer2" description = "An alcoholic beverage made from malted grains, hops, yeast, and water. The fermentation appears to be incomplete." //If the players manage to analyze this, they deserve to know something is wrong. reagent_state = LIQUID - color = "#664300" + color = "#FFD300" - glass_icon_state = "beerglass" - glass_name = "glass of beer" + glass_name = "beer" glass_desc = "A freezing pint of beer" - glass_center_of_mass = list("x"=16, "y"=8) - /* Drugs */ /datum/reagent/space_drugs diff --git a/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm new file mode 100644 index 00000000000..8e042c2086c --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm @@ -0,0 +1,145 @@ +#define DRINK_ICON_FILE 'icons/pdrink.dmi' + +/var/const/DRINK_FIZZ = "fizz" +/var/const/DRINK_ICE = "ice" +/var/const/DRINK_ICON_DEFAULT = "" +/var/const/DRINK_ICON_NOISY = "_noise" + +/obj/item/weapon/reagent_containers/food/drinks/glass2 + name = "glass" // Name when empty + var/base_name = "glass" // Name to put in front of drinks, i.e. "[base_name] of [contents]" + desc = "A generic drinking glass." // Description when empty + icon = DRINK_ICON_FILE + var/base_icon = "square" // Base icon name + volume = 30 + + var/list/filling_states // List of percentages full that have icons + + var/list/extras = list() // List of extras. Two extras maximum + + var/rim_pos + + center_of_mass = list("x"=16, "y"=10) + + amount_per_transfer_from_this = 5 + possible_transfer_amounts = list(5,10,15,30) + flags = OPENCONTAINER + +/obj/item/weapon/reagent_containers/food/drinks/glass2/examine(mob/M as mob) + ..() + + for(var/I in extras) + if(istype(I, /obj/item/weapon/glass_extra)) + M << "There is \a [I] in \the [src]." + else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice)) + M << "There is \a [I] on the rim." + else + M << "There is \a [I] somewhere on the glass. Somehow." + + if(has_ice()) + M << "There is some ice floating in the drink." + + if(has_fizz()) + M << "It is fizzing slightly." + +/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/has_ice() + if(reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + if(!((R.id == "ice") || ("ice" in R.glass_special))) // if it's not a cup of ice, and it's not already supposed to have ice in, see if the bartender's put ice in it + if(reagents.has_reagent("ice", reagents.total_volume / 10)) // 10% ice by volume + return 1 + + return 0 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/has_fizz() + if(reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + if(!("fizz" in R.glass_special)) + var/totalfizzy = 0 + for(var/datum/reagent/re in reagents.reagent_list) + if("fizz" in re.glass_special) + totalfizzy += re.volume + if(totalfizzy >= reagents.total_volume / 5) // 20% fizzy by volume + return 1 + return 0 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/New() + ..() + icon_state = base_icon + +/obj/item/weapon/reagent_containers/food/drinks/glass2/on_reagent_change() + update_icon() + +/obj/item/weapon/reagent_containers/food/drinks/glass2/proc/can_add_extra(obj/item/weapon/glass_extra/GE) + if(!("[base_icon]_[GE.glass_addition]left" in icon_states(DRINK_ICON_FILE))) + return 0 + if(!("[base_icon]_[GE.glass_addition]right" in icon_states(DRINK_ICON_FILE))) + return 0 + + return 1 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/update_icon() + underlays.Cut() + + if (reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + name = "[base_name] of [R.glass_name ? R.glass_name : "something"]" + desc = R.glass_desc ? R.glass_desc : initial(desc) + + var/list/under_liquid = list() + var/list/over_liquid = list() + + var/amnt = 100 + var/percent = round((reagents.total_volume / volume) * 100) + for(var/k in filling_states) + if(percent <= k) + amnt = k + break + + if(has_ice()) + over_liquid |= "[base_icon][amnt]_ice" + + if(has_fizz()) + over_liquid |= "[base_icon][amnt]_fizz" + + for(var/S in R.glass_special) + if("[base_icon]_[S]" in icon_states(DRINK_ICON_FILE)) + under_liquid |= "[base_icon]_[S]" + else if("[base_icon][amnt]_[S]" in icon_states(DRINK_ICON_FILE)) + over_liquid |= "[base_icon][amnt]_[S]" + + for(var/k in under_liquid) + underlays += image(DRINK_ICON_FILE, src, k, -3) + + var/image/filling = image(DRINK_ICON_FILE, src, "[base_icon][amnt][R.glass_icon]", -2) + filling.color = reagents.get_color() + underlays += filling + + for(var/k in over_liquid) + underlays += image(DRINK_ICON_FILE, src, k, -1) + else + name = initial(name) + desc = initial(desc) + + var/side = "left" + for(var/item in extras) + if(istype(item, /obj/item/weapon/glass_extra)) + var/obj/item/weapon/glass_extra/GE = item + var/image/I = image(DRINK_ICON_FILE, src, "[base_icon]_[GE.glass_addition][side]") + if(GE.glass_color) + I.color = GE.glass_color + underlays += I + else if(istype(item, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice)) + var/obj/FS = item + var/image/I = image(FS) + + var/fsy = rim_pos[1] - 20 + var/fsx = rim_pos[side == "left" ? 2 : 3] - 16 + + var/matrix/M = matrix() + M.Scale(0.5) + M.Translate(fsx, fsy) + I.transform = M + underlays += I + else continue + side = "right" diff --git a/code/modules/reagents/reagent_containers/drinkingglass/extras.dm b/code/modules/reagents/reagent_containers/drinkingglass/extras.dm new file mode 100644 index 00000000000..513c1b87caa --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/extras.dm @@ -0,0 +1,69 @@ +/obj/item/weapon/reagent_containers/food/drinks/glass2/attackby(obj/item/I as obj, mob/user as mob) + if(extras.len >= 2) return ..() // max 2 extras, one on each side of the drink + + if(istype(I, /obj/item/weapon/glass_extra)) + var/obj/item/weapon/glass_extra/GE = I + if(can_add_extra(GE)) + extras += GE + user.remove_from_mob(GE) + GE.loc = src + user << "You add \the [GE] to \the [src]." + update_icon() + else + user << "There's no space to put \the [GE] on \the [src]!" + else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/fruit_slice)) + var/obj/item/weapon/reagent_containers/food/snacks/fruit_slice/FS = I + extras += FS + user.remove_from_mob(FS) + FS.pixel_x = 0 // Reset its pixel offsets so the icons work! + FS.pixel_y = 0 + FS.loc = src + user << "You add \the [FS] to \the [src]." + update_icon() + else + return ..() + +/obj/item/weapon/reagent_containers/food/drinks/glass2/attack_hand(mob/user as mob) + if(src != user.get_inactive_hand()) + return ..() + + if(!extras.len) + user << "There's nothing on the glass to remove!" + return + + var/choice = input(user, "What would you like to remove from the glass?") as null|anything in extras + if(!choice || !(choice in extras)) + return + + if(user.put_in_active_hand(choice)) + user << "You remove \the [choice] from \the [src]." + extras -= choice + else + user << "Something went wrong, please try again." + + update_icon() + +/obj/item/weapon/glass_extra + name = "generic glass addition" + desc = "This goes on a glass." + var/glass_addition + var/glass_desc + var/glass_color + w_class = 1 + icon = DRINK_ICON_FILE + +/obj/item/weapon/glass_extra/stick + name = "stick" + desc = "This goes in a glass." + glass_addition = "stick" + glass_desc = "There is a stick in the glass." + icon_state = "stick" + +/obj/item/weapon/glass_extra/straw + name = "straw" + desc = "This goes in a glass." + glass_addition = "straw" + glass_desc = "There is a straw in the glass." + icon_state = "straw" + +#undef DRINK_ICON_FILE diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm b/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm new file mode 100644 index 00000000000..d9c19321ca4 --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/glass_boxes.dm @@ -0,0 +1,75 @@ +/obj/item/weapon/storage/box/mixedglasses + name = "glassware box" + desc = "A box of assorted glassware" + can_hold = list(/obj/item/weapon/reagent_containers/food/drinks/glass2) + New() + ..() + new /obj/item/weapon/reagent_containers/food/drinks/glass2/square(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/shake(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/shot(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/pint(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/mug(src) + new /obj/item/weapon/reagent_containers/food/drinks/glass2/wine(src) + +/obj/item/weapon/storage/box/glasses + name = "box of glasses" + var/glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2 + can_hold = list(/obj/item/weapon/reagent_containers/food/drinks/glass2) + New() + ..() + + for(var/i = 1 to 7) + new glass_type(src) + +/obj/item/weapon/storage/box/glasses/square + name = "box of half-pint glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/square + +/obj/item/weapon/storage/box/glasses/rocks + name = "box of rocks glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks + +/obj/item/weapon/storage/box/glasses/shake + name = "box of milkshake glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/shake + +/obj/item/weapon/storage/box/glasses/cocktail + name = "box of cocktail glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail + +/obj/item/weapon/storage/box/glasses/shot + name = "box of shot glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/shot + +/obj/item/weapon/storage/box/glasses/pint + name = "box of pint glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/pint + +/obj/item/weapon/storage/box/glasses/mug + name = "box of glass mugs" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/mug + +/obj/item/weapon/storage/box/glasses/wine + name = "box of wine glasses" + glass_type = /obj/item/weapon/reagent_containers/food/drinks/glass2/wine + +/obj/item/weapon/storage/box/glass_extras + name = "box of cocktail garnishings" + var/extra_type = /obj/item/weapon/glass_extra + can_hold = list(/obj/item/weapon/glass_extra) + storage_slots = 14 + New() + ..() + + for(var/i = 1 to 14) + new extra_type(src) + +/obj/item/weapon/storage/box/glass_extras/straws + name = "box of straws" + extra_type = /obj/item/weapon/glass_extra/straw + +/obj/item/weapon/storage/box/glass_extras/sticks + name = "box of drink sticks" + extra_type = /obj/item/weapon/glass_extra/stick diff --git a/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm b/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm new file mode 100644 index 00000000000..feec8bf16e7 --- /dev/null +++ b/code/modules/reagents/reagent_containers/drinkingglass/glass_types.dm @@ -0,0 +1,72 @@ +/obj/item/weapon/reagent_containers/food/drinks/glass2/square + name = "half-pint glass" + base_name = "glass" + base_icon = "square" + desc = "Your standard drinking glass." + filling_states = list(20, 40, 60, 80, 100) + volume = 30 + possible_transfer_amounts = list(5,10,15,30) + rim_pos = list(23,13,20) // y, x0, x1 + +/obj/item/weapon/reagent_containers/food/drinks/glass2/rocks + name = "rocks glass" + base_name = "glass" + base_icon = "rocks" + filling_states = list(25, 50, 75, 100) + volume = 20 + possible_transfer_amounts = list(5,10,20) + rim_pos = list(21, 10, 23) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/shake + name = "milkshake glass" + base_name = "glass" + base_icon = "shake" + filling_states = list(25, 50, 75, 100) + volume = 30 + possible_transfer_amounts = list(5,10,15,30) + rim_pos = list(25, 13, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail + name = "cocktail glass" + base_name = "glass" + base_icon = "cocktail" + filling_states = list(33, 66, 100) + volume = 15 + possible_transfer_amounts = list(5,10,15) + rim_pos = list(22, 13, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/shot + name = "shot glass" + base_name = "shot" + base_icon = "shot" + filling_states = list(33, 66, 100) + volume = 5 + possible_transfer_amounts = list(1,2,5) + rim_pos = list(17, 13, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/pint + name = "pint glass" + base_name = "pint" + base_icon = "pint" + filling_states = list(16, 33, 50, 66, 83, 100) + volume = 60 + possible_transfer_amounts = list(5,10,15,30,60) + rim_pos = list(25, 12, 21) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/mug + name = "glass mug" + base_name = "mug" + base_icon = "mug" + filling_states = list(25, 50, 75, 100) + volume = 40 + possible_transfer_amounts = list(5,10,20,40) + rim_pos = list(22, 12, 20) + +/obj/item/weapon/reagent_containers/food/drinks/glass2/wine + name = "wine glass" + base_name = "glass" + base_icon = "wine" + filling_states = list(20, 40, 60, 80, 100) + volume = 25 + possible_transfer_amounts = list(5, 10, 15, 25) + rim_pos = list(25, 12, 21) diff --git a/code/modules/reagents/reagent_containers/food/drinks/cup.dm b/code/modules/reagents/reagent_containers/food/drinks/cup.dm new file mode 100644 index 00000000000..36a88cf7a9f --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/drinks/cup.dm @@ -0,0 +1,43 @@ +/obj/item/weapon/reagent_containers/food/drinks/cup + name = "coffee cup" + desc = "The container of oriental luxuries." + icon_state = "cup_empty" + amount_per_transfer_from_this = 5 + volume = 30 + center_of_mass = list("x"=16, "y"=16) + + on_reagent_change() + if (reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + + if(R.cup_icon_state) + icon_state = R.cup_icon_state + else + icon_state = "cup_brown" + + if(R.cup_name) + name = R.cup_name + else + name = "Cup of.. what?" + + if(R.cup_desc) + desc = R.cup_desc + else + desc = "You can't really tell what this is." + + if(R.cup_center_of_mass) + center_of_mass = R.cup_center_of_mass + else + center_of_mass = list("x"=16, "y"=16) + + if(R.price_tag) + price_tag = R.price_tag + else + price_tag = null + + else + icon_state = "cup_empty" + name = "coffee cup" + desc = "The container of oriental luxuries." + center_of_mass = list("x"=16, "y"=16) + return diff --git a/html/changelogs/GinjaNinja32-newdrinks.yml b/html/changelogs/GinjaNinja32-newdrinks.yml new file mode 100644 index 00000000000..3c685a553ab --- /dev/null +++ b/html/changelogs/GinjaNinja32-newdrinks.yml @@ -0,0 +1,6 @@ +author: GinjaNinja32 +delete-after: True +changes: + - rscadd: "Rewrote drinking glasses. There are now eight types of glass, and drink appearance is based on color and the type of glass you put it in." + - rscadd: "There are now 'glass extras' you can add to drinks. Straws, drink sticks, and fruit slices (yes, all of them) all work. You can add up to two extras per glass. Add extras by clicking the glass with the extra, remove by clicking the glass with an empty hand while it's in your other hand." + - rscadd: "Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make it be fizzy or have ice floating in it." diff --git a/icons/pdrink.dmi b/icons/pdrink.dmi new file mode 100644 index 0000000000000000000000000000000000000000..c1d49bc91cf6f6f67cd56144aea059068c2a81c1 GIT binary patch literal 68135 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

gYzJn-6rMTwj6 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

gYzJn-6rMTwj6 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 Date: Tue, 7 Jun 2016 17:47:24 +0100 Subject: [PATCH 04/50] Adds straws and sticks to bar vendor, also reorders the list to be nicer --- code/game/machinery/vending.dm | 56 ++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 27 deletions(-) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index bb0fc377345..8461fe48532 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -697,29 +697,7 @@ desc = "A technological marvel, supposedly able to mix just the mixture you'd like to drink the moment you ask for one." icon_state = "boozeomat" icon_deny = "boozeomat-deny" - products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/gin = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/vodka = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/rum = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/wine = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/cognac = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 15, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 15, - /obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/cream = 5, - /obj/item/weapon/reagent_containers/food/drinks/cans/tonic = 15, - /obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind = 5, - /obj/item/weapon/reagent_containers/food/drinks/cans/sodawater = 15, - /obj/item/weapon/reagent_containers/food/drinks/flask/barflask = 5, - /obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask = 5, - /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 10, + products = list(/obj/item/weapon/reagent_containers/food/drinks/glass2/square = 10, /obj/item/weapon/reagent_containers/food/drinks/glass2/rocks = 10, /obj/item/weapon/reagent_containers/food/drinks/glass2/shake = 10, /obj/item/weapon/reagent_containers/food/drinks/glass2/cocktail = 10, @@ -727,13 +705,37 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/pint = 10, /obj/item/weapon/reagent_containers/food/drinks/glass2/mug = 10, /obj/item/weapon/reagent_containers/food/drinks/glass2/wine = 10, - /obj/item/weapon/reagent_containers/food/drinks/ice = 10, - /obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5, - /obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/gin = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/cognac = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/rum = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey = 5, - /obj/item/weapon/reagent_containers/food/drinks/tea = 15) + /obj/item/weapon/reagent_containers/food/drinks/bottle/tequilla = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/vodka = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/wine = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 15, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 15, + /obj/item/weapon/reagent_containers/food/drinks/bottle/orangejuice = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/tomatojuice = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/limejuice = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/cream = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 5, + /obj/item/weapon/reagent_containers/food/drinks/bottle/space_mountain_wind = 5, + /obj/item/weapon/reagent_containers/food/drinks/cans/sodawater = 15, + /obj/item/weapon/reagent_containers/food/drinks/cans/tonic = 15, + /obj/item/weapon/reagent_containers/food/drinks/flask/barflask = 5, + /obj/item/weapon/reagent_containers/food/drinks/flask/vacuumflask = 5, + /obj/item/weapon/reagent_containers/food/drinks/ice = 10, + /obj/item/weapon/reagent_containers/food/drinks/tea = 15, + /obj/item/weapon/glass_extra/stick = 30, + /obj/item/weapon/glass_extra/straw = 30) contraband = list() vend_delay = 15 idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. From 289f3577ce9679d008e7e4ed4dcf41da1c51923d Mon Sep 17 00:00:00 2001 From: Yoshax Date: Tue, 7 Jun 2016 19:34:12 +0100 Subject: [PATCH 05/50] Adds straws, sticks and milkshake glasses to kitchen vendor --- code/game/machinery/vending.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 8461fe48532..cb62e51badf 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -991,6 +991,9 @@ /obj/item/weapon/material/knife = 3, /obj/item/weapon/material/kitchen/rollingpin = 2, /obj/item/weapon/reagent_containers/food/drinks/glass2/square = 8, + /obj/item/weapon/reagent_containers/food/drinks/glass2/shake = 8, + /obj/item/weapon/glass_extra/stick = 15, + /obj/item/weapon/glass_extra/straw = 15, /obj/item/clothing/suit/chef/classic = 2, /obj/item/weapon/storage/toolbox/lunchbox = 3, /obj/item/weapon/storage/toolbox/lunchbox/heart = 3, From 4c83ed3823fb51df8f5210d84c59fefbe15e8770 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 8 Jun 2016 18:18:06 -0400 Subject: [PATCH 06/50] Makes Travis more intolerant Someone removed macros. Time to lower the thingy. --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 566778c4c86..01d35d59d3d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ sudo: false env: BYOND_MAJOR="509" BYOND_MINOR="1318" - MACRO_COUNT=996 + MACRO_COUNT=986 cache: directories: From 8d1bdb2ef512d3bfe7f29bd02b813c90a90c4748 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 8 Jun 2016 18:22:43 -0400 Subject: [PATCH 07/50] Wonder where that extra one is --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 01d35d59d3d..16cd43e0298 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ sudo: false env: BYOND_MAJOR="509" BYOND_MINOR="1318" - MACRO_COUNT=986 + MACRO_COUNT=987 cache: directories: From 74a1b59a39a150b238d1ddd99bbdb704844469d7 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Wed, 8 Jun 2016 19:29:47 -0400 Subject: [PATCH 08/50] Adds IDs and Wallets Adds variants of ID cards for each department and head, and adds several new colors of wallet. The wallets self-color the little ID in the corner based on the ID inserted so they always show the right picture of the ID, without needing to sprite each ID. Some are snowflaked, notably Gold and Centcom, but the rest are generated on the fly based on colors on the ID. --- code/game/jobs/job/civilian.dm | 9 ++ code/game/jobs/job/civilian_chaplain.dm | 1 + code/game/jobs/job/engineering.dm | 4 +- code/game/jobs/job/medical.dm | 6 +- code/game/jobs/job/science.dm | 5 +- code/game/jobs/job/security.dm | 5 +- code/game/objects/items/weapons/cards_ids.dm | 88 ++++++++++++++++++ .../objects/items/weapons/storage/wallets.dm | 84 ++++++++++++++--- .../loadout/loadout_accessories.dm | 26 +++++- icons/obj/card.dmi | Bin 7895 -> 16999 bytes icons/obj/storage.dmi | Bin 70462 -> 69984 bytes icons/obj/wallet.dmi | Bin 0 -> 1409 bytes 12 files changed, 208 insertions(+), 20 deletions(-) create mode 100644 icons/obj/wallet.dmi diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm index f4c3ca9e1bc..c02048450b6 100644 --- a/code/game/jobs/job/civilian.dm +++ b/code/game/jobs/job/civilian.dm @@ -9,6 +9,7 @@ spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_bar) alt_titles = list("Barista") @@ -38,6 +39,7 @@ spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_kitchen) alt_titles = list("Cook") @@ -65,6 +67,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_hydroponics, access_bar, access_kitchen) minimal_access = list(access_hydroponics) alt_titles = list("Hydroponicist") @@ -98,6 +101,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/cargo/head economic_modifier = 5 access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) @@ -128,6 +132,7 @@ spawn_positions = 2 supervisors = "the quartermaster and the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/cargo access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting) @@ -153,6 +158,7 @@ spawn_positions = 3 supervisors = "the quartermaster and the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/cargo economic_modifier = 5 access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station) minimal_access = list(access_mining, access_mining_station, access_mailsorting) @@ -192,6 +198,7 @@ spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_janitor, access_maint_tunnels) minimal_access = list(access_janitor, access_maint_tunnels) alt_titles = list("Custodian") @@ -218,6 +225,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_library, access_maint_tunnels) minimal_access = list(access_library) alt_titles = list("Journalist") @@ -244,6 +252,7 @@ spawn_positions = 2 supervisors = "company officials and Corporate Regulations" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian economic_modifier = 7 access = list(access_lawyer, access_sec_doors, access_maint_tunnels, access_heads) minimal_access = list(access_lawyer, access_sec_doors, access_heads) diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm index 61cba700238..9ce0e2b8118 100644 --- a/code/game/jobs/job/civilian_chaplain.dm +++ b/code/game/jobs/job/civilian_chaplain.dm @@ -9,6 +9,7 @@ spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#515151" + idtype = /obj/item/weapon/card/id/civilian access = list(access_morgue, access_chapel_office, access_crematorium, access_maint_tunnels) minimal_access = list(access_morgue, access_chapel_office, access_crematorium) alt_titles = list("Counselor") diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 707bab08995..6940cd57c9b 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#7F6E2C" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/engineering/head req_admin_notify = 1 economic_modifier = 10 @@ -59,6 +59,7 @@ spawn_positions = 5 supervisors = "the chief engineer" selection_color = "#5B4D20" + idtype = /obj/item/weapon/card/id/engineering economic_modifier = 5 access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics) minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction) @@ -96,6 +97,7 @@ spawn_positions = 2 supervisors = "the chief engineer" selection_color = "#5B4D20" + idtype = /obj/item/weapon/card/id/engineering economic_modifier = 5 access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_external_airlocks) minimal_access = list(access_eva, access_engine, access_atmospherics, access_maint_tunnels, access_emergency_storage, access_construction, access_external_airlocks) diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index eeb0c8072a5..32fd340755f 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#026865" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/medical/head req_admin_notify = 1 economic_modifier = 10 access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads, @@ -48,6 +48,7 @@ spawn_positions = 3 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical economic_modifier = 7 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_eva) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_virology, access_eva) @@ -109,6 +110,7 @@ spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical economic_modifier = 5 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) minimal_access = list(access_medical, access_medical_equip, access_chemistry) @@ -170,6 +172,7 @@ economic_modifier = 5 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical access = list(access_medical, access_medical_equip, access_morgue, access_psychiatrist) minimal_access = list(access_medical, access_medical_equip, access_psychiatrist) alt_titles = list("Psychologist") @@ -202,6 +205,7 @@ spawn_positions = 2 supervisors = "the chief medical officer" selection_color = "#013D3B" + idtype = /obj/item/weapon/card/id/medical economic_modifier = 4 access = list(access_medical, access_medical_equip, access_morgue, access_surgery, access_chemistry, access_virology, access_eva, access_maint_tunnels, access_external_airlocks, access_psychiatrist) minimal_access = list(access_medical, access_medical_equip, access_morgue, access_eva, access_maint_tunnels, access_external_airlocks) diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 99482457cce..7055aa7cb37 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#AD6BAD" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/science/head req_admin_notify = 1 economic_modifier = 15 access = list(access_rd, access_heads, access_tox, access_genetics, access_morgue, @@ -51,6 +51,7 @@ spawn_positions = 3 supervisors = "the research director" selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/science economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch) minimal_access = list(access_tox, access_tox_storage, access_research, access_xenoarch) @@ -81,6 +82,7 @@ spawn_positions = 2 supervisors = "the research director" selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/science economic_modifier = 7 access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_hydroponics) minimal_access = list(access_research, access_xenobiology, access_hydroponics, access_tox_storage) @@ -111,6 +113,7 @@ spawn_positions = 2 supervisors = "research director" selection_color = "#633D63" + idtype = /obj/item/weapon/card/id/science economic_modifier = 5 access = list(access_robotics, access_tox, access_tox_storage, access_tech_storage, access_morgue, access_research) //As a job that handles so many corpses, it makes sense for them to have morgue access. minimal_access = list(access_robotics, access_tech_storage, access_morgue, access_research) //As a job that handles so many corpses, it makes sense for them to have morgue access. diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 6320a475ce3..04adecc3229 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -9,7 +9,7 @@ spawn_positions = 1 supervisors = "the captain" selection_color = "#8E2929" - idtype = /obj/item/weapon/card/id/silver + idtype = /obj/item/weapon/card/id/security/head req_admin_notify = 1 economic_modifier = 10 access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, @@ -56,6 +56,7 @@ spawn_positions = 1 supervisors = "the head of security" selection_color = "#601C1C" + idtype = /obj/item/weapon/card/id/security economic_modifier = 5 access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_morgue, access_external_airlocks) minimal_access = list(access_security, access_eva, access_sec_doors, access_brig, access_armory, access_maint_tunnels, access_external_airlocks) @@ -93,6 +94,7 @@ spawn_positions = 2 supervisors = "the head of security" selection_color = "#601C1C" + idtype = /obj/item/weapon/card/id/security alt_titles = list("Forensic Technician","Investigator") access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks) minimal_access = list(access_security, access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_eva, access_external_airlocks) @@ -135,6 +137,7 @@ spawn_positions = 4 supervisors = "the head of security" selection_color = "#601C1C" + idtype = /obj/item/weapon/card/id/security alt_titles = list("Junior Officer") economic_modifier = 4 access = list(access_security, access_eva, access_sec_doors, access_brig, access_maint_tunnels, access_morgue, access_external_airlocks) diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 6d1a2eaa3dc..3f49e3c6ab5 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -117,6 +117,9 @@ var/icon/front var/icon/side + var/primary_color = rgb(0,0,0) // Obtained by eyedroppering the stripe in the middle of the card + var/secondary_color = rgb(0,0,0) // Likewise for the oval in the top-left corner + //alt titles are handled a bit weirdly in order to unobtrusively integrate into existing ID system var/assignment = null //can be alt title or the actual job var/rank = null //actual job @@ -262,3 +265,88 @@ /obj/item/weapon/card/id/centcom/ERT/New() ..() access |= get_all_station_access() + +// Department-flavor IDs +/obj/item/weapon/card/id/medical + name = "identification card" + desc = "A card issued to station medical staff." + icon_state = "med" + primary_color = rgb(189,237,237) + secondary_color = rgb(223,255,255) + +/obj/item/weapon/card/id/medical/head + name = "identification card" + desc = "A card which represents care and compassion." + icon_state = "medGold" + primary_color = rgb(189,237,237) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/security + name = "identification card" + desc = "A card issued to station security staff." + icon_state = "sec" + primary_color = rgb(189,47,0) + secondary_color = rgb(223,127,95) + +/obj/item/weapon/card/id/security/head + name = "identification card" + desc = "A card which represents honor and protection." + icon_state = "secGold" + primary_color = rgb(189,47,0) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/engineering + name = "identification card" + desc = "A card issued to station engineering staff." + icon_state = "eng" + primary_color = rgb(189,94,0) + secondary_color = rgb(223,159,95) + +/obj/item/weapon/card/id/engineering/head + name = "identification card" + desc = "A card which represents creativity and ingenuity." + icon_state = "engGold" + primary_color = rgb(189,94,0) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/science + name = "identification card" + desc = "A card issued to station science staff." + icon_state = "sci" + primary_color = rgb(142,47,142) + secondary_color = rgb(191,127,191) + +/obj/item/weapon/card/id/science/head + name = "identification card" + desc = "A card which represents knowledge and reasoning." + icon_state = "sciGold" + primary_color = rgb(142,47,142) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/cargo + name = "identification card" + desc = "A card issued to station cargo staff." + icon_state = "car" + primary_color = rgb(142,94,0) + secondary_color = rgb(191,159,95) + +/obj/item/weapon/card/id/cargo/head + name = "identification card" + desc = "A card which represents service and planning." + icon_state = "carGold" + primary_color = rgb(142,94,0) + secondary_color = rgb(255,223,127) + +/obj/item/weapon/card/id/civilian + name = "identification card" + desc = "A card issued to station civilian staff." + icon_state = "civ" + primary_color = rgb(0,94,142) + secondary_color = rgb(95,159,191) + +/obj/item/weapon/card/id/civilian/head //This is not the HoP. There's no position that uses this right now. + name = "identification card" + desc = "A card which represents common sense and responsibility." + icon_state = "civGold" + primary_color = rgb(0,94,142) + secondary_color = rgb(255,223,127) \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm index 81cee4552a2..c5e4e92721d 100644 --- a/code/game/objects/items/weapons/storage/wallets.dm +++ b/code/game/objects/items/weapons/storage/wallets.dm @@ -2,6 +2,7 @@ name = "wallet" desc = "It can hold a few small and personal things." storage_slots = 10 + icon = 'icons/obj/wallet.dmi' icon_state = "wallet" w_class = 2 can_hold = list( @@ -45,23 +46,59 @@ update_icon() /obj/item/weapon/storage/wallet/update_icon() - if(front_id) switch(front_id.icon_state) - if("id") - icon_state = "walletid" + if("id") //The plain assistant ID + var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) + var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_id") + new_wallet.Blend(id_overlay, ICON_OVERLAY) + del id_overlay + icon = new_wallet return - if("silver") - icon_state = "walletid_silver" - return - if("gold") - icon_state = "walletid_gold" - return - if("centcom") - icon_state = "walletid_centcom" - return - icon_state = "wallet" + if("silver") //HoP's ID has a special overlay. + var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) + var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idsilver") + new_wallet.Blend(id_overlay, ICON_OVERLAY) + del id_overlay + icon = new_wallet + if("gold") //Captain's ID has a special overlay. + var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) + var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idgold") + new_wallet.Blend(id_overlay, ICON_OVERLAY) + del id_overlay + icon = new_wallet + if("centcom") //Centcom ID has a special overlay. + var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) + var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idcentcom") + new_wallet.Blend(id_overlay, ICON_OVERLAY) + del id_overlay + icon = new_wallet + else //Doesn't match a special overlay type. + if(front_id.primary_color && front_id.secondary_color) //Colored ID with stripe and oval colors (pri/sec). + var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) + var/icon/id_icon = new/icon("icon" = initial(icon), "icon_state" = "wallet_id") + var/icon/pri_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idprimary") + var/icon/sec_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idsecondary") + pri_overlay.Blend(front_id.primary_color, ICON_ADD) + sec_overlay.Blend(front_id.secondary_color, ICON_ADD) + + new_wallet.Blend(id_icon, ICON_OVERLAY) + del id_icon + new_wallet.Blend(pri_overlay, ICON_OVERLAY) + del pri_overlay + new_wallet.Blend(sec_overlay, ICON_OVERLAY) + del sec_overlay + + icon = new_wallet + return + + else //Dunno what to do. Resort to plain assistant ID. + icon_state = initial(icon_state) + "id" + return + else + icon = initial(icon) + icon_state = initial(icon_state) /obj/item/weapon/storage/wallet/GetID() return front_id @@ -73,7 +110,6 @@ else return ..() - /obj/item/weapon/storage/wallet/random/New() ..() var/amount = rand(50, 100) + rand(50, 100) // Triangular distribution from 100 to 200 @@ -85,4 +121,22 @@ while(amount >= i) amount -= i SC.adjust_worth(i, 0) - SC.update_icon() \ No newline at end of file + SC.update_icon() + +/obj/item/weapon/storage/wallet/grey + icon_state = "greywallet" + +/obj/item/weapon/storage/wallet/green + icon_state = "greenwallet" + +/obj/item/weapon/storage/wallet/purple + icon_state = "purplewallet" + +/obj/item/weapon/storage/wallet/red + icon_state = "redwallet" + +/obj/item/weapon/storage/wallet/blue + icon_state = "bluewallet" + +/obj/item/weapon/storage/wallet/white + icon_state = "whitewallet" diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm index a90373d2195..dd8d66b0c51 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm @@ -29,9 +29,33 @@ path = /obj/item/clothing/accessory/armband/science /datum/gear/accessory/wallet - display_name = "wallet" + display_name = "wallet, orange" path = /obj/item/weapon/storage/wallet/random +/datum/gear/accessory/wallet_grey + display_name = "wallet, grey" + path = /obj/item/weapon/storage/wallet/grey + +/datum/gear/accessory/wallet_green + display_name = "wallet, green" + path = /obj/item/weapon/storage/wallet/green + +/datum/gear/accessory/wallet_purple + display_name = "wallet, purple" + path = /obj/item/weapon/storage/wallet/purple + +/datum/gear/accessory/wallet_red + display_name = "wallet, red" + path = /obj/item/weapon/storage/wallet/red + +/datum/gear/accessory/wallet_blue + display_name = "wallet, blue" + path = /obj/item/weapon/storage/wallet/blue + +/datum/gear/accessory/wallet_white + display_name = "wallet, white" + path = /obj/item/weapon/storage/wallet/white + /datum/gear/accessory/holster display_name = "holster, armpit" path = /obj/item/clothing/accessory/holster/armpit diff --git a/icons/obj/card.dmi b/icons/obj/card.dmi index 75d2b5ebf483cd48fb0f5dbd837d73e260209f2a..2ed467d9f5ea9d0ae6457a1994f9294e00673708 100644 GIT binary patch literal 16999 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

GTE~htGIbru9=tnM&#-C9a ze$wtOa@=|$cJ8gNPyQq%TiP3NtW>=Y>wZ3bIF#Fy4OJoHsDug6z~U9q#zxQc}9Kg3P_~1VQc_^U*U~kR!S*TNoPt$&&2p&nY9_@3F8bI^5XszAKL}@Y{JcB)4`ZJjH}t_1>sFamllv2*jz9YQ!Y~K@yXPvbI}D6JZ1i#O%_~2_XO!wh*_^%q-aG=xiB(x>AA833@u>MRV zj}=~`0Sq@U3gZrUzxsapqB~Ng%GBk#;|a8Ub$+vQsl=AV)xEXtr-7UpJ~zaGecB~q zbTL=7eiKehO-+aC?X}a@%fSkqIFnTYg%U~a+%7!>Lqc+L=#|LiEV7hUD09?OeVg~c zHMaDEteF{hG7mdxsKvF*{ny*gxl*Tcug2P!6?qoGs)?(v7WEW)YHGxB4z!;oY*n$b zZd^ZGA0kv7!*kywQ6dmDsn@tI?vh103}_mj7pn*j{V<+BQQ&qT9;G;~YvX_xIsDj= z>_A5V$;1ZGm#mm-UEX%S)t71!d1HQvLSJA1J!hf+MUO2seBo|JIQhPZP+1 zZ(eA=`d$D9$qECE9v9$P0a|lHcR!qU(tJuwi{S4w^_^}m0SzfXjy_qg`?R&wK>=ZA*uDSvZz0pl>gq(GF+=qW{)O^& z^9o`H1RUst2Fl5sYKf7n`+XXLVL$%m@QpmmB$eN4y+4LNSh2qA0B-34n+LixJZcg? qBB*$mP8ciLFa0L-f3%n!;0Y$qmg@-Ko-6>D0a8=ZR4!Mv4EaCF76IP? literal 7895 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 delta 50535 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 literal 0 HcmV?d00001 From 1e831112cf3be5f0c03630593abc5afca5e50761 Mon Sep 17 00:00:00 2001 From: Spades Date: Thu, 9 Jun 2016 01:29:16 -0400 Subject: [PATCH 09/50] Fixes #1830 --- code/modules/events/infestation.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/events/infestation.dm b/code/modules/events/infestation.dm index e7afa00109a..9074035d592 100644 --- a/code/modules/events/infestation.dm +++ b/code/modules/events/infestation.dm @@ -6,7 +6,7 @@ #define LOC_VAULT 5 #define LOC_CONSTR 6 #define LOC_TECH 7 -#define LOC_TACTICAL 8 +#define LOC_GARDEN 8 #define VERM_MICE 0 #define VERM_LIZARDS 1 @@ -50,9 +50,9 @@ if(LOC_TECH) spawn_area_type = /area/storage/tech locstring = "technical storage" - if(LOC_TACTICAL) - spawn_area_type = /area/security/tactical - locstring = "tactical equipment storage" + if(LOC_GARDEN) + spawn_area_type = /area/hydroponics/garden + locstring = "the public garden" for(var/areapath in typesof(spawn_area_type)) var/area/A = locate(areapath) From 25d61db083e322154830895c19b51acfa69f9778 Mon Sep 17 00:00:00 2001 From: Spades Date: Thu, 9 Jun 2016 01:37:54 -0400 Subject: [PATCH 10/50] Neither Travis nor Byond noticed this. Whoops! No one saw that! :U --- code/modules/events/infestation.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/events/infestation.dm b/code/modules/events/infestation.dm index 9074035d592..16f2b785212 100644 --- a/code/modules/events/infestation.dm +++ b/code/modules/events/infestation.dm @@ -102,7 +102,7 @@ #undef LOC_HYDRO #undef LOC_VAULT #undef LOC_TECH -#undef LOC_TACTICAL +#undef LOC_GARDEN #undef VERM_MICE #undef VERM_LIZARDS From 7670ab1ad006fb4fb7eb60e56831c5dfad5b76b8 Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 9 Jun 2016 09:03:07 -0400 Subject: [PATCH 11/50] Fixes #1896 --- code/modules/xenobio2/machinery/injector.dm | 11 ++++++----- code/modules/xenobio2/machinery/injector_computer.dm | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/code/modules/xenobio2/machinery/injector.dm b/code/modules/xenobio2/machinery/injector.dm index a3f88825c53..7b482d5c1d6 100644 --- a/code/modules/xenobio2/machinery/injector.dm +++ b/code/modules/xenobio2/machinery/injector.dm @@ -67,19 +67,20 @@ src.occupant = victim /obj/machinery/xenobio2/manualinjector/proc/eject_contents() - for(var/obj/thing in (contents - component_parts - circuit - beaker)) - thing.forceMove(loc) + eject_xeno() + eject_beaker() + return + +/obj/machinery/xenobio2/manualinjector/proc/eject_xeno() if(occupant) occupant.forceMove(loc) occupant = null - return - + /obj/machinery/xenobio2/manualinjector/proc/eject_beaker() if(beaker) var/obj/item/weapon/reagent_containers/glass/beaker/B = beaker B.loc = loc beaker = null - return /obj/machinery/xenobio2/manualinjector/proc/inject_reagents() if(!occupant) diff --git a/code/modules/xenobio2/machinery/injector_computer.dm b/code/modules/xenobio2/machinery/injector_computer.dm index f65599e4850..7bcccd55ca8 100644 --- a/code/modules/xenobio2/machinery/injector_computer.dm +++ b/code/modules/xenobio2/machinery/injector_computer.dm @@ -99,7 +99,7 @@ injector.inject_reagents() active = 0 if(href_list["eject_occupant"]) - injector.eject_contents() + injector.eject_xeno() if(href_list["eject_beaker"]) injector.eject_beaker() From 8e40ad6f493824c8525f69e5ebfd25f382f849bc Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 9 Jun 2016 09:05:33 -0400 Subject: [PATCH 12/50] Fixes #1899, changes name references to [src]. --- .../modules/xenobio2/machinery/gene_manipulators.dm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/code/modules/xenobio2/machinery/gene_manipulators.dm b/code/modules/xenobio2/machinery/gene_manipulators.dm index f5d124a9f1f..c8bd8d374c9 100644 --- a/code/modules/xenobio2/machinery/gene_manipulators.dm +++ b/code/modules/xenobio2/machinery/gene_manipulators.dm @@ -99,6 +99,7 @@ /obj/machinery/xenobio/proc/finished_task() active = 0 + in_use = 0 if(failed_task) failed_task = 0 visible_message("\icon[src] [src] pings unhappily, flashing a red warning light.") @@ -332,7 +333,7 @@ ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open) if (!ui) - ui = new(user, src, ui_key, "xenobio_editor.tmpl", "Biological Genetic Bombarder UI", 470, 450) + ui = new(user, src, ui_key, "xenobio_editor.tmpl", "biological genetic bombarder UI", 470, 450) ui.set_initial_data(data) ui.open() ui.set_auto_update(1) @@ -375,21 +376,21 @@ /obj/machinery/xenobio/editor/proc/move_into_editor(var/mob/user,var/mob/living/victim) if(src.occupant) - user << "The biological genetic bombarder is full, empty it first!" + user << "The [src] is full, empty it first!" return if(in_use) - user << "The biological genetic bombarder is locked and running, wait for it to finish." + user << "The [src] is locked and running, wait for it to finish." return if(!(istype(victim, /mob/living/simple_animal/xeno/slime)) ) - user << "This is not a suitable subject for the biological genetic bombarder!" + user << "This is not a suitable subject for the [src]!" return - user.visible_message("[user] starts to put [victim] into the biological genetic bombarder!") + user.visible_message("[user] starts to put [victim] into the [src]!") src.add_fingerprint(user) if(do_after(user, 30) && victim.Adjacent(src) && user.Adjacent(src) && victim.Adjacent(user) && !occupant) - user.visible_message("[user] stuffs [victim] into the biological genetic bombarder!") + user.visible_message("[user] stuffs [victim] into the [src]!") if(victim.client) victim.client.perspective = EYE_PERSPECTIVE victim.client.eye = src From 52f8c6a344e451d62c224ef0ccc68848f52c5676 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Thu, 9 Jun 2016 17:08:07 +0100 Subject: [PATCH 13/50] Ensures retail scanners work with drinks --- .../reagent_containers/drinkingglass/drinkingglass.dm | 1 + code/modules/reagents/reagent_containers/food/drinks.dm | 8 +++++++- .../reagents/reagent_containers/food/drinks/cup.dm | 6 +----- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm index 8e042c2086c..c367d8b09c3 100644 --- a/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm +++ b/code/modules/reagents/reagent_containers/drinkingglass/drinkingglass.dm @@ -68,6 +68,7 @@ icon_state = base_icon /obj/item/weapon/reagent_containers/food/drinks/glass2/on_reagent_change() + ..() update_icon() /obj/item/weapon/reagent_containers/food/drinks/glass2/proc/can_add_extra(obj/item/weapon/glass_extra/GE) diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index b28c16691f6..98480e6d9aa 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -11,7 +11,13 @@ volume = 50 /obj/item/weapon/reagent_containers/food/drinks/on_reagent_change() - return + if (reagents.reagent_list.len > 0) + var/datum/reagent/R = reagents.get_master_reagent() + if(R.price_tag) + price_tag = R.price_tag + else + price_tag = null + return /obj/item/weapon/reagent_containers/food/drinks/attack_self(mob/user as mob) if(!is_open_container()) diff --git a/code/modules/reagents/reagent_containers/food/drinks/cup.dm b/code/modules/reagents/reagent_containers/food/drinks/cup.dm index 217d4b0e3ca..087d2dec5b7 100644 --- a/code/modules/reagents/reagent_containers/food/drinks/cup.dm +++ b/code/modules/reagents/reagent_containers/food/drinks/cup.dm @@ -7,6 +7,7 @@ center_of_mass = list("x"=16, "y"=16) /obj/item/weapon/reagent_containers/food/drinks/cup/on_reagent_change() + ..() if (reagents.reagent_list.len > 0) var/datum/reagent/R = reagents.get_master_reagent() @@ -30,11 +31,6 @@ else center_of_mass = list("x"=16, "y"=16) - if(R.price_tag) - price_tag = R.price_tag - else - price_tag = null - else icon_state = "cup_empty" name = "coffee cup" From 730fceb2d77b5d5853bdb0a56d2a8c81f4d40161 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Thu, 9 Jun 2016 17:23:43 +0100 Subject: [PATCH 14/50] Makes Datraen happy --- .../reagents/reagent_containers/food/drinks.dm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index 98480e6d9aa..69472021b84 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -102,6 +102,9 @@ volume = 150 flags = CONDUCT | OPENCONTAINER +/obj/item/weapon/reagent_containers/food/drinks/golden_cup/on_reagent_change() + ..() + ///////////////////////////////////////////////Drinks //Notes by Darem: Drinks are simply containers that start preloaded. Unlike condiments, the contents can be ingested directly // rather then having to add it to something else first. They should only contain liquids. They have a default container size of 50. @@ -205,6 +208,7 @@ ..() /obj/item/weapon/reagent_containers/food/drinks/sillycup/on_reagent_change() + ..() if(reagents.total_volume) icon_state = "water_cup" else @@ -224,6 +228,9 @@ volume = 120 center_of_mass = list("x"=17, "y"=10) +/obj/item/weapon/reagent_containers/food/drinks/shaker/on_reagent_change() + ..() + /obj/item/weapon/reagent_containers/food/drinks/teapot name = "teapot" desc = "An elegant teapot. It simply oozes class." @@ -233,6 +240,9 @@ volume = 120 center_of_mass = list("x"=17, "y"=7) +/obj/item/weapon/reagent_containers/food/drinks/teapot/on_reagent_change() + ..() + /obj/item/weapon/reagent_containers/food/drinks/flask name = "\improper Captain's flask" desc = "A metal flask belonging to the captain" @@ -240,6 +250,9 @@ volume = 60 center_of_mass = list("x"=17, "y"=7) +/obj/item/weapon/reagent_containers/food/drinks/flask/on_reagent_change() + ..() + /obj/item/weapon/reagent_containers/food/drinks/flask/shiny name = "shiny flask" desc = "A shiny metal flask. It appears to have a Greek symbol inscribed on it." @@ -277,3 +290,7 @@ icon_state = "britcup" volume = 30 center_of_mass = list("x"=15, "y"=13) + +/obj/item/weapon/reagent_containers/food/drinks/britcup/on_reagent_change() + ..() + From 08972b1dc5c77ac388895a3ca3c5c5808111a358 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Thu, 9 Jun 2016 18:28:16 -0400 Subject: [PATCH 15/50] Better, now. --- code/game/objects/items/weapons/cards_ids.dm | 4 +- .../objects/items/weapons/storage/wallets.dm | 104 +++++++----------- .../loadout/loadout_accessories.dm | 26 +---- icons/obj/card.dmi | Bin 16999 -> 16999 bytes icons/obj/wallet.dmi | Bin 1409 -> 2067 bytes 5 files changed, 43 insertions(+), 91 deletions(-) diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 3f49e3c6ab5..a85fab3807a 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -326,14 +326,14 @@ /obj/item/weapon/card/id/cargo name = "identification card" desc = "A card issued to station cargo staff." - icon_state = "car" + icon_state = "cargo" primary_color = rgb(142,94,0) secondary_color = rgb(191,159,95) /obj/item/weapon/card/id/cargo/head name = "identification card" desc = "A card which represents service and planning." - icon_state = "carGold" + icon_state = "cargoGold" primary_color = rgb(142,94,0) secondary_color = rgb(255,223,127) diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm index c5e4e92721d..9cbda62db71 100644 --- a/code/game/objects/items/weapons/storage/wallets.dm +++ b/code/game/objects/items/weapons/storage/wallets.dm @@ -3,7 +3,7 @@ desc = "It can hold a few small and personal things." storage_slots = 10 icon = 'icons/obj/wallet.dmi' - icon_state = "wallet" + icon_state = "wallet-orange" w_class = 2 can_hold = list( /obj/item/weapon/spacecash, @@ -28,7 +28,6 @@ var/obj/item/weapon/card/id/front_id = null - /obj/item/weapon/storage/wallet/remove_from_storage(obj/item/W as obj, atom/new_location) . = ..(W, new_location) if(.) @@ -46,59 +45,14 @@ update_icon() /obj/item/weapon/storage/wallet/update_icon() + overlays.Cut() if(front_id) - switch(front_id.icon_state) - if("id") //The plain assistant ID - var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) - var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_id") - new_wallet.Blend(id_overlay, ICON_OVERLAY) - del id_overlay - icon = new_wallet - return - if("silver") //HoP's ID has a special overlay. - var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) - var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idsilver") - new_wallet.Blend(id_overlay, ICON_OVERLAY) - del id_overlay - icon = new_wallet - if("gold") //Captain's ID has a special overlay. - var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) - var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idgold") - new_wallet.Blend(id_overlay, ICON_OVERLAY) - del id_overlay - icon = new_wallet - if("centcom") //Centcom ID has a special overlay. - var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) - var/icon/id_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idcentcom") - new_wallet.Blend(id_overlay, ICON_OVERLAY) - del id_overlay - icon = new_wallet - else //Doesn't match a special overlay type. - if(front_id.primary_color && front_id.secondary_color) //Colored ID with stripe and oval colors (pri/sec). - var/icon/new_wallet = new/icon("icon" = initial(icon), "icon_state" = initial(icon_state)) - var/icon/id_icon = new/icon("icon" = initial(icon), "icon_state" = "wallet_id") - var/icon/pri_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idprimary") - var/icon/sec_overlay = new/icon("icon" = initial(icon), "icon_state" = "wallet_idsecondary") - - pri_overlay.Blend(front_id.primary_color, ICON_ADD) - sec_overlay.Blend(front_id.secondary_color, ICON_ADD) - - new_wallet.Blend(id_icon, ICON_OVERLAY) - del id_icon - new_wallet.Blend(pri_overlay, ICON_OVERLAY) - del pri_overlay - new_wallet.Blend(sec_overlay, ICON_OVERLAY) - del sec_overlay - - icon = new_wallet - return - - else //Dunno what to do. Resort to plain assistant ID. - icon_state = initial(icon_state) + "id" - return - else - icon = initial(icon) - icon_state = initial(icon_state) + var/tiny_state = "id-generic" + if("id-"+front_id.icon_state in icon_states(icon)) + tiny_state = "id-"+front_id.icon_state + var/image/tiny_image = new/image(icon, icon_state = tiny_state) + tiny_image.appearance_flags = RESET_COLOR + overlays += tiny_image /obj/item/weapon/storage/wallet/GetID() return front_id @@ -123,20 +77,38 @@ SC.adjust_worth(i, 0) SC.update_icon() -/obj/item/weapon/storage/wallet/grey - icon_state = "greywallet" +/obj/item/weapon/storage/wallet/poly + name = "polychromic wallet" + desc = "You can recolor it! Fancy! The future is NOW!" + icon_state = "wallet-white" -/obj/item/weapon/storage/wallet/green - icon_state = "greenwallet" +/obj/item/weapon/storage/wallet/poly/New() + ..() + verbs |= /obj/item/weapon/storage/wallet/poly/proc/change_color + color = "#"+get_random_colour() + update_icon() + +/obj/item/weapon/storage/wallet/poly/proc/change_color() + set name = "Change Wallet Color" + set category = "Object" + set desc = "Change the color of the wallet." + set src in usr -/obj/item/weapon/storage/wallet/purple - icon_state = "purplewallet" + if(usr.stat || usr.restrained() || usr.incapacitated()) + return -/obj/item/weapon/storage/wallet/red - icon_state = "redwallet" + var/new_color = input(usr, "Pick a new color", "Wallet Color", color) as color|null -/obj/item/weapon/storage/wallet/blue - icon_state = "bluewallet" + if(new_color && (new_color != color)) + color = new_color -/obj/item/weapon/storage/wallet/white - icon_state = "whitewallet" +/obj/item/weapon/storage/wallet/poly/emp_act() + var/original_state = icon_state + icon_state = "wallet-emp" + update_icon() + + spawn(200) + if(src) + icon_state = original_state + update_icon() + \ No newline at end of file diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm index dd8d66b0c51..43c99c300be 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm @@ -32,29 +32,9 @@ display_name = "wallet, orange" path = /obj/item/weapon/storage/wallet/random -/datum/gear/accessory/wallet_grey - display_name = "wallet, grey" - path = /obj/item/weapon/storage/wallet/grey - -/datum/gear/accessory/wallet_green - display_name = "wallet, green" - path = /obj/item/weapon/storage/wallet/green - -/datum/gear/accessory/wallet_purple - display_name = "wallet, purple" - path = /obj/item/weapon/storage/wallet/purple - -/datum/gear/accessory/wallet_red - display_name = "wallet, red" - path = /obj/item/weapon/storage/wallet/red - -/datum/gear/accessory/wallet_blue - display_name = "wallet, blue" - path = /obj/item/weapon/storage/wallet/blue - -/datum/gear/accessory/wallet_white - display_name = "wallet, white" - path = /obj/item/weapon/storage/wallet/white +/datum/gear/accessory/wallet_poly + display_name = "wallet, polychromic" + path = /obj/item/weapon/storage/wallet/poly /datum/gear/accessory/holster display_name = "holster, armpit" diff --git a/icons/obj/card.dmi b/icons/obj/card.dmi index 2ed467d9f5ea9d0ae6457a1994f9294e00673708..e1a2c1c2ae47791154e76b322bfe27f1195f9bdc 100644 GIT binary patch delta 337 zcmV-X0j~b%gaPM-0gyX?j=~@ihR^L&O!Vq*th*k2F&g7RU%_A*=|l<*ur+=AJ(%n! zX1n~}Ao=(hhGCe~X170_XnQ=A1BWQyQB9xk%d)tOPA%2+u_}v}#kA=$iAg1^i)mJ$shZ^2)D`Wsx8g=VWps%gD{SpTkyVh0Xcx$!n1 zLBlRJzRPne7>`kVXkQr+26Dwl5C(H`gD{Ybok1AL)iK0ixwroAFba!JI))(Z21ci) zQ7NyCqtk+7SY{rt;ly_oeMNhQ*j72iR;Fraswr5xa{A{Yiq@yt`$RRZ){ClIJar1_ z%%cM8W>i?&^a3W!=Vr2(()C!%0Kx|<@U zXkE-LkzQUL$8nah-5-u;*qx4Qpb*(RsNwT{t%?Wh)Itp(l`2|d)23+>6DEQh78(;S zRG~RUsG(HFEnr8}_y@XLboVU9T7bL-fA#5auu_F4izC#qS#5rQS4Fl1g{<6on~$I& zmm1&YIm~a^U^s~Om!+c*bUleD)glFo) jZa^#eX?hAB&q|lDKks07I;w9Ou?@+A$==Mfd;#k~TJ)Ww diff --git a/icons/obj/wallet.dmi b/icons/obj/wallet.dmi index 0525de5d7621fbf805825b53c72ddffdf65310ea..101a138156ee1299f05fd2e8ca0d7788d0bda3cd 100644 GIT binary patch literal 2067 zcmaiydsxz08pnS+F(ppUY^71g6*QwNO^F%(A#GBjJGQY(L@rgrm^ zqNye1h0MxJ>J~Xjj+gP0moO9;6)OQPZ|T%NNcdZ5cb@rk&-0w`=bZDt&-*>MD}(^= zweU@F007qd`gjKEIHBv$*L$1WI!kslF4Lm5Pc4t znCbAnEj8mD!caf~=H})|BvNN*r>msFdpN)L=&F>LfcV_5=XL-{wf<$6L2;_3g?qz=Uc)-}a#&md0L!?kWxMh{=-p2cimmiR&@?cK)= zzj+<0Hbh}^el@Tt3UM&)9B3;cd_7!gPG9Kq6PKCvVsh5N!?qQ<>^YOdTn!5EY%ZtG zpenjph^M|ULVbA^Nq7h`{6@MZe{0L?N5MjNkAv740APoFJ>7}%w`XNclFY{(7O~qU zBYbRn&iZKmh_k7M$G2@GfZ?F#5(FhMz3MP!bzZokn_-$!Z{%`ZnG`$kX;%0)-%R%g z$Ie(6X0slrbsv0$YQ8&!cnht16o#1Gg0h~^GfF7%>ufse(Mn)tm67hHKZxL#QFWNO zNF(TxO$*T@gGSWj7LB4uDlO<*X=nY}eWb?O0$SiRbpB) z$vxlg`@P)gOdr`xigWOW6`SB#i=c&(QsRI++!eGoWoIY%n^h#61T84+ z?()jTV1ebk5HcFVB)6!!y8v4iVkuO>VT5+oIcbajURjK)@%~p&yQb=*CFvuZuoeeO9xOYP-XhA7i$8OftWo+O z^t2Sp_$2#B@`lXlc# z((q8Q=wUon)Z9FGLEE8J4h;<{m5kn3u~2`h!_?robesVbE^-=c9`aNl_w9SgBQ@7G z9fBumg7QIft?us&G3Xz~NYrYa9q(!Q9V(^P@alVs zT47^1#TnE#c9Zb}DA-A&{-CaN!AjI!?N{`eR@_env;BMokg_1x2-e+|YN((mOSi82 z%l0BX{*ubXmkGAi0s!}?zI zOcA-aK@`)pZEe z=Ax~vLfrdD=QW`I!I^VQ+TW1Oyq@w1eahVaAxJ+rXQy3ihP)9W(8vE3gZLm2`K=^i SeOFlnjR~8g-NL^J=6#$^_ zi}NDLc4&Jk%gLfdP`wTSOd$v#>dj`e;{mXqsP0 zWMrgIg(a@ox^Vv)I+ku`X2wqfNl8hrldu-sD?jZs#zdF)_V)TZ*qygBvUbO#<0`|$ z!?|2;whhKS^dytXl-+a0L<8gtq*7^z>9@McERjf5Z(&elWr&HbLdRC{csve=^TZ5^ z$Q;Zs$}g`j4@kiKyMZ&wpq36=t3g*+m;D&}0Tay5&g$#ycNQbRcJ7wFHz+8GLZSFj zF8Pdn5nem28DGg)#rVnk!7>Q}A;3d8B@+RxQ=t)=UPm+H(i74$6H-$E$i7%J;;Q=C zT1`Q~cPsM!IMT=R_eJa0n`>jk;uvvC`~>c5B62A#Xus=Uu7@$>A875ne{?;*4m-Q+ zLH9Lriq$}&DIXPZ2yGEV9n~X`sE8u)(@wY|ZAG+j!1FA2S$|^vsdGVHV87j}^@so} zQ&9_f_$SxZnTSv7xn)+*xHV}nMrch723u64Y5mE=TBI$lhpGKn_e-Rz&D{>;qMT@c z1DkW8vm+D$xddM?&(Q3PtCKk)(;g@&Ho}86gwjV5%=IBE91}FtD!4hNRkrJGyP?Gjc+5R{F+KTsq>5ifMCAL0sX0ZxqWU(h);+8-mowashTcs75bvNLenBN zzC_2`k{9EA4cIed<@yddZ;ahqgDtTAitO@PWQMTYJ0yL6|}E* z@C(7CnPAh=)GbfE!98-v4~l?OY9kN?I0tEPm3O2HX>cBN?VKn$2N?3dg;o3;PZRCn z^2qmDv&!rVqgqxg%ZQ|c1~dMsJ2zO!?bPKDRQkm6quodXpoKdwv`u0%O%|Ywtp1}n zAyicd)`_CD02SOFFf=nz!gtP~(&eVrv=8ns*J{w5X&x35IHsHcr+X~aZI#=RD#`6$ z$&b+f%}hDF`+n|9LR3w@hD9glHR=+T={yEbeY}29{l64}Tfb}YA@HE=vjIrbyt!vb zYr{F|vYzQ;{-}KztaVMf=Yoc1OyJbh%wsU6M}{qND>74;tjeizndzFtX>zp8G=Dfr zt3(U7N^?OA_TGBj)@UPF@tUpQv++dDJ`k?7GJUq5u|qM_`8)BA8tvg#+BRkTWI4Zh z6;GBaE@VZNOBM-4_`*qId1f>bKKAyuPOm|ZqD*adOj#4h{n{pRcNiR<{n;R+!CR9p}P+9t#Pb511>Ak^@CE5`*HT?ndhAh8fKWrZvVmv;Nd5gj|!qWd|6vu)K<2uIYH?V&i z$p*p`ACrhgwt5u=M0TDDEHyP@bCV}d`@FTWRkpUq)WGGcY#)6;zoEV*nQI!{|Z3kis{stSYbB+K2 From 309761f0517b76456e4b4a7ce8f54f4849261593 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Fri, 10 Jun 2016 00:27:49 -0400 Subject: [PATCH 16/50] Mech tracking beacon Was unbuildable for some reason. How'd it lose the ID? And why was it all by itself in some random path and category. --- code/modules/research/mechfab_designs.dm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index 35f064321c6..b5c35ea0e0c 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -223,14 +223,6 @@ time = 60 materials = list(DEFAULT_WALL_MATERIAL = 50000, "uranium" = 10000) -/datum/design/item/mecha_tracking - name = "Exosuit tracking beacon" - build_type = MECHFAB - time = 5 - materials = list(DEFAULT_WALL_MATERIAL = 500) - build_path = /obj/item/mecha_parts/mecha_tracking - category = "Misc" - /datum/design/item/mecha build_type = MECHFAB category = "Exosuit Equipment" @@ -241,6 +233,13 @@ if(!desc) desc = "Allows for the construction of \a '[item_name]' exosuit module." +/datum/design/item/mecha/tracking + name = "Exosuit tracking beacon" + id = "mech_tracker" + time = 5 + materials = list(DEFAULT_WALL_MATERIAL = 500) + build_path = /obj/item/mecha_parts/mecha_tracking + /datum/design/item/mecha/hydraulic_clamp name = "Hydraulic clamp" id = "hydraulic_clamp" From 5c97cede59eaee2b928be8b33149f0fd8889e116 Mon Sep 17 00:00:00 2001 From: Datraen Date: Thu, 9 Jun 2016 12:19:20 -0400 Subject: [PATCH 17/50] Brings vending machine datums under a subtype of smartfridge datums. --- code/datums/vending/stored_item.dm | 58 ++++++++++ code/datums/vending/vending.dm | 13 +++ code/game/machinery/kitchen/smartfridge.dm | 125 +++++---------------- code/game/machinery/vending.dm | 99 +++------------- polaris.dme | 2 + 5 files changed, 115 insertions(+), 182 deletions(-) create mode 100644 code/datums/vending/stored_item.dm create mode 100644 code/datums/vending/vending.dm diff --git a/code/datums/vending/stored_item.dm b/code/datums/vending/stored_item.dm new file mode 100644 index 00000000000..4fed107d77c --- /dev/null +++ b/code/datums/vending/stored_item.dm @@ -0,0 +1,58 @@ +/* +* Datum that holds the instances and information about the items stored. Currently used in SmartFridges and Vending Machines. +*/ +/datum/stored_item + var/item_name = "name" //Name of the item(s) displayed + var/item_path = null + var/amount = 0 + var/list/instances //What items are actually stored + var/stored //The thing holding it is + +/datum/stored_item/New(var/stored, var/path, var/name = null, var/amount = 0) + src.item_path = path + + if(!name) + var/atom/tmp = path + src.item_name = initial(tmp.name) + else + src.item_name = name + + src.amount = amount + src.stored = stored + + ..() + +/datum/stored_item/Destroy() + stored = null + if(instances) + for(var/product in instances) + qdel(product) + instances.Cut() + . = ..() + +/datum/stored_item/proc/get_amount() + return instances ? instances.len : amount + +/datum/stored_item/proc/get_product(var/product_location) + if(!get_amount() || !product_location) + return + init_products() + + var/atom/movable/product = instances[instances.len] // Remove the last added product + instances -= product + product.forceMove(product_location) + +/datum/stored_item/proc/add_product(var/atom/movable/product) + if(product.type != item_path) + return 0 + init_products() + product.forceMove(stored) + instances += product + +/datum/stored_item/proc/init_products() + if(instances) + return + instances = list() + for(var/i = 1 to amount) + var/new_product = new item_path(stored) + instances += new_product \ No newline at end of file diff --git a/code/datums/vending/vending.dm b/code/datums/vending/vending.dm new file mode 100644 index 00000000000..329c8c19591 --- /dev/null +++ b/code/datums/vending/vending.dm @@ -0,0 +1,13 @@ +/** + * Datum used to hold further information about a product in a vending machine + */ +/datum/stored_item/vending_product + var/price = 0 // Price to buy one + var/display_color = null // Display color for vending machine listing + var/category = CAT_NORMAL // CAT_HIDDEN for contraband, CAT_COIN for premium + +/datum/stored_item/vending_product/New(var/stored, var/path, var/name = null, var/amount = 1, var/price = 0, var/color = null, var/category = CAT_NORMAL) + ..(stored, path, name, amount) + src.price = price + src.display_color = color + src.category = category \ No newline at end of file diff --git a/code/game/machinery/kitchen/smartfridge.dm b/code/game/machinery/kitchen/smartfridge.dm index a4832325262..5dc2dba62b9 100644 --- a/code/game/machinery/kitchen/smartfridge.dm +++ b/code/game/machinery/kitchen/smartfridge.dm @@ -1,63 +1,3 @@ -/* -* Datum that holds the instances and information about the items in the smartfridge. -*/ -/datum/data/stored_item - var/item_name = "name" //Name of the item(s) displayed - var/item_path = null - var/amount = 0 - var/list/instances //What items are actually stored - var/fridge //The attatched fridge - -/datum/data/stored_item/New(var/fridge, var/path, var/name = null, var/amount = 0) - ..() - - src.item_path = path - - if(!name) - var/atom/tmp = path - src.item_name = initial(tmp.name) - else - src.item_name = name - - src.amount = amount - src.fridge = fridge - -/datum/data/stored_item/Destroy() - fridge = null - if(instances) - for(var/product in instances) - qdel(product) - instances.Cut() - . = ..() - -/datum/data/stored_item/proc/get_amount() - return instances ? instances.len : amount - -/datum/data/stored_item/proc/get_product(var/product_location) - if(!get_amount() || !product_location) - return - init_products() - - var/atom/movable/product = instances[instances.len] // Remove the last added product - instances -= product - product.forceMove(product_location) - -/datum/data/stored_item/proc/add_product(var/atom/movable/product) - if(product.type != item_path) - return 0 - init_products() - product.forceMove(fridge) - instances += product - -/datum/data/stored_item/proc/init_products() - if(instances) - return - instances = list() - for(var/i = 1 to amount) - var/new_product = new item_path(fridge) - instances += new_product - - /* SmartFridge. Much todo */ /obj/machinery/smartfridge @@ -76,7 +16,7 @@ var/icon_off = "smartfridge-off" var/icon_panel = "smartfridge-panel" var/list/item_records = list() - var/datum/data/stored_item/currently_vending = null //What we're putting out of the machine. + var/datum/stored_item/currently_vending = null //What we're putting out of the machine. var/seconds_electrified = 0; var/shoot_inventory = 0 var/locked = 0 @@ -96,6 +36,8 @@ /obj/machinery/smartfridge/Destroy() qdel(wires) + for(var/A in item_records) //Get rid of item records. + qdel(A) wires = null return ..() @@ -129,7 +71,7 @@ /obj/machinery/smartfridge/secure/extract/New() ..() - var/datum/data/stored_item/I = new(src, /obj/item/xenoproduct/slime/core) + var/datum/stored_item/I = new(src, /obj/item/xenoproduct/slime/core) item_records.Add(I) for(var/i=1 to 5) var/obj/item/xenoproduct/slime/core/C = new(src) @@ -226,17 +168,17 @@ overlays += "drying_rack_drying" /obj/machinery/smartfridge/drying_rack/proc/dry() - for(var/datum/data/stored_item/I in item_records) + for(var/datum/stored_item/I in item_records) for(var/obj/item/weapon/reagent_containers/food/snacks/S in I.instances) if(S.dry) continue if(S.dried_type == S.type) S.dry = 1 S.name = "dried [S.name]" S.color = "#AAAAAA" - I.get_product(loc) + stock(S) else var/D = S.dried_type - new D(loc) + new D(get_turf(src)) qdel(S) return return @@ -286,46 +228,22 @@ if(accept_check(O)) user.remove_from_mob(O) - var/hasRecord = FALSE //Check to see if this passes or not. - for(var/datum/data/stored_item/I in item_records) - if(istype(O, I.item_path)) - stock(O, I) - qdel(O) - return - if(!hasRecord) - var/datum/data/stored_item/item = new/datum/data/stored_item(src, O.type) - stock(O, item) - item_records.Add(item) - + stock(O) user.visible_message("[user] has added \the [O] to \the [src].", "You add \the [O] to \the [src].") - nanomanager.update_uis(src) else if(istype(O, /obj/item/weapon/storage/bag)) var/obj/item/weapon/storage/bag/P = O var/plants_loaded = 0 for(var/obj/G in P.contents) if(accept_check(G)) - plants_loaded++ - var/hasRecord = FALSE //Check to see if this passes or not. - for(var/datum/data/stored_item/I in item_records) - if(istype(G, I.item_path)) - if(G.name == I.item_name) - stock(G, I) - hasRecord = TRUE - if(!hasRecord) - var/datum/data/stored_item/item = new/datum/data/stored_item(src, G.type, G.name) - stock(G, item) - item_records.Add(item) - + stock(G) + plants_loaded = 1 if(plants_loaded) - user.visible_message("[user] loads \the [src] with \the [P].", "You load \the [src] with \the [P].") if(P.contents.len > 0) user << "Some items are refused." - nanomanager.update_uis(src) - else user << "\The [src] smartly refuses [O]." return 1 @@ -337,11 +255,20 @@ user << "You short out the product lock on [src]." return 1 -/obj/machinery/smartfridge/proc/stock(obj/item/O, var/datum/data/stored_item/I) - I.add_product(O) +/obj/machinery/smartfridge/proc/stock(obj/item/O) + var/hasRecord = FALSE //Check to see if this passes or not. + for(var/datum/stored_item/I in item_records) + if((O.type == I.item_path) && (O.name == I.item_name)) + I.add_product(O) + hasRecord = TRUE + break + if(!hasRecord) + var/datum/stored_item/item = new/datum/stored_item(src, O.type, O.name) + item.add_product(O) + item_records.Add(item) nanomanager.update_uis(src) -/obj/machinery/smartfridge/proc/vend(datum/data/stored_item/I) +/obj/machinery/smartfridge/proc/vend(datum/stored_item/I) I.get_product(get_turf(src)) nanomanager.update_uis(src) @@ -370,7 +297,7 @@ var/list/items[0] for (var/i=1 to length(item_records)) - var/datum/data/stored_item/I = item_records[i] + var/datum/stored_item/I = item_records[i] var/count = I.get_amount() if(count > 0) items.Add(list(list("display_name" = html_encode(capitalize(I.item_name)), "vend" = i, "quantity" = count))) @@ -400,7 +327,7 @@ if(href_list["vend"]) var/index = text2num(href_list["vend"]) var/amount = text2num(href_list["amount"]) - var/datum/data/stored_item/I = item_records[index] + var/datum/stored_item/I = item_records[index] var/count = I.get_amount() // Sanity check, there are probably ways to press the button when it shouldn't be possible. @@ -419,8 +346,8 @@ if(!target) return 0 - for(var/datum/data/stored_item/I in src.item_records) - throw_item = I.get_product(loc) + for(var/datum/stored_item/I in item_records) + throw_item = I.get_product(get_turf(src)) if (!throw_item) continue break diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index f086a3e1dd6..b9470335261 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1,69 +1,3 @@ -/** - * Datum used to hold information about a product in a vending machine - */ -/datum/data/vending_product - var/product_name = "generic" // Display name for the product - var/product_path = null - var/amount = 0 // The original amount held in the vending machine - var/list/instances - var/price = 0 // Price to buy one - var/display_color = null // Display color for vending machine listing - var/category = CAT_NORMAL // CAT_HIDDEN for contraband, CAT_COIN for premium - var/vending_machine // The vending machine we belong to - -/datum/data/vending_product/New(var/vending_machine, var/path, var/name = null, var/amount = 1, var/price = 0, var/color = null, var/category = CAT_NORMAL) - ..() - - src.product_path = path - - if(!name) - var/atom/tmp = path - src.product_name = initial(tmp.name) - else - src.product_name = name - - src.amount = amount - src.price = price - src.display_color = color - src.category = category - src.vending_machine = vending_machine - -/datum/data/vending_product/Destroy() - vending_machine = null - if(instances) - for(var/product in instances) - qdel(product) - instances.Cut() - . = ..() - -/datum/data/vending_product/proc/get_amount() - return instances ? instances.len : amount - -/datum/data/vending_product/proc/add_product(var/atom/movable/product) - if(product.type != product_path) - return 0 - init_products() - product.forceMove(vending_machine) - instances += product - -/datum/data/vending_product/proc/get_product(var/product_location) - if(!get_amount() || !product_location) - return - init_products() - - var/atom/movable/product = instances[instances.len] // Remove the last added product - instances -= product - product.forceMove(product_location) - return product - -/datum/data/vending_product/proc/init_products() - if(instances) - return - instances = list() - for(var/i = 1 to amount) - var/new_product = new product_path(vending_machine) - instances += new_product - /** * A vending machine */ @@ -89,7 +23,7 @@ var/vend_ready = 1 //Are we ready to vend?? Is it time?? var/vend_delay = 10 //How long does it take to vend? var/categories = CAT_NORMAL // Bitmask of cats we're currently showing - var/datum/data/vending_product/currently_vending = null // What we're requesting payment for right now + var/datum/stored_item/vending_product/currently_vending = null // What we're requesting payment for right now var/status_message = "" // Status screen messages like "insufficient funds", displayed in NanoUI var/status_error = 0 // Set to 1 if status_message is an error @@ -169,7 +103,7 @@ var/category = current_list[2] for(var/entry in current_list[1]) - var/datum/data/vending_product/product = new/datum/data/vending_product(src, entry) + var/datum/stored_item/vending_product/product = new/datum/stored_item/vending_product(src, entry) product.price = (entry in src.prices) ? src.prices[entry] : 0 product.amount = (current_list[1][entry]) ? current_list[1][entry] : 1 @@ -182,7 +116,7 @@ wires = null qdel(coin) coin = null - for(var/datum/data/vending_product/R in product_records) + for(var/datum/stored_item/vending_product/R in product_records) qdel(R) product_records = null return ..() @@ -276,10 +210,9 @@ return else - for(var/datum/data/vending_product/R in product_records) - if(istype(W, R.product_path)) + for(var/datum/stored_item/vending_product/R in product_records) + if(istype(W, R.item_path) && (W.name == R.item_name)) stock(W, R, user) - qdel(W) return ..() @@ -374,7 +307,7 @@ // create entry in the purchaser's account log var/datum/transaction/T = new() T.target_name = "[vendor_account.owner_name] (via [src.name])" - T.purpose = "Purchase of [currently_vending.product_name]" + T.purpose = "Purchase of [currently_vending.item_name]" if(currently_vending.price > 0) T.amount = "([currently_vending.price])" else @@ -400,7 +333,7 @@ var/datum/transaction/T = new() T.target_name = target - T.purpose = "Purchase of [currently_vending.product_name]" + T.purpose = "Purchase of [currently_vending.item_name]" T.amount = "[currently_vending.price]" T.source_terminal = src.name T.date = current_date_string @@ -432,7 +365,7 @@ var/list/data = list() if(currently_vending) data["mode"] = 1 - data["product"] = currently_vending.product_name + data["product"] = currently_vending.item_name data["price"] = currently_vending.price data["message_err"] = 0 data["message"] = src.status_message @@ -442,14 +375,14 @@ var/list/listed_products = list() for(var/key = 1 to src.product_records.len) - var/datum/data/vending_product/I = src.product_records[key] + var/datum/stored_item/vending_product/I = src.product_records[key] if(!(I.category & src.categories)) continue listed_products.Add(list(list( "key" = key, - "name" = I.product_name, + "name" = I.item_name, "price" = I.price, "color" = I.display_color, "amount" = I.get_amount()))) @@ -497,7 +430,7 @@ return var/key = text2num(href_list["vend"]) - var/datum/data/vending_product/R = product_records[key] + var/datum/stored_item/vending_product/R = product_records[key] // This should not happen unless the request from NanoUI was bad if(!(R.category & src.categories)) @@ -526,7 +459,7 @@ src.add_fingerprint(usr) nanomanager.update_uis(src) -/obj/machinery/vending/proc/vend(datum/data/vending_product/R, mob/user) +/obj/machinery/vending/proc/vend(datum/stored_item/vending_product/R, mob/user) if((!allowed(usr)) && !emagged && scan_id) //For SECURE VENDING MACHINES YEAH usr << "Access denied." //Unless emagged of course flick(src.icon_deny,src) @@ -581,7 +514,7 @@ * Checks if item is vendable in this machine should be performed before * calling. W is the item being inserted, R is the associated vending_product entry. */ -/obj/machinery/vending/proc/stock(obj/item/weapon/W, var/datum/data/vending_product/R, var/mob/user) +/obj/machinery/vending/proc/stock(obj/item/weapon/W, var/datum/stored_item/vending_product/R, var/mob/user) if(!user.unEquip(W)) return @@ -635,7 +568,7 @@ //Oh no we're malfunctioning! Dump out some product and break. /obj/machinery/vending/proc/malfunction() - for(var/datum/data/vending_product/R in src.product_records) + for(var/datum/stored_item/vending_product/R in src.product_records) while(R.get_amount()>0) R.get_product(loc) break @@ -651,7 +584,7 @@ if(!target) return 0 - for(var/datum/data/vending_product/R in src.product_records) + for(var/datum/stored_item/vending_product/R in src.product_records) throw_item = R.get_product(loc) if (!throw_item) continue @@ -930,7 +863,7 @@ for(var/entry in current_list[1]) var/obj/item/seeds/S = new entry(src) var/name = S.name - var/datum/data/vending_product/product = new/datum/data/vending_product(src, entry, name) + var/datum/stored_item/vending_product/product = new/datum/stored_item/vending_product(src, entry, name) product.price = (entry in src.prices) ? src.prices[entry] : 0 product.amount = (current_list[1][entry]) ? current_list[1][entry] : 1 diff --git a/polaris.dme b/polaris.dme index 24805a54500..4bb3f09fdab 100644 --- a/polaris.dme +++ b/polaris.dme @@ -215,6 +215,8 @@ #include "code\datums\uplink\uplink_categories.dm" #include "code\datums\uplink\uplink_items.dm" #include "code\datums\uplink\visible_weapons.dm" +#include "code\datums\vending\stored_item.dm" +#include "code\datums\vending\vending.dm" #include "code\datums\wires\airlock.dm" #include "code\datums\wires\alarm.dm" #include "code\datums\wires\apc.dm" From 2000f958862992b9e175cf67db9fde5fc4bcbae4 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Fri, 10 Jun 2016 09:50:54 -0400 Subject: [PATCH 18/50] "1" Spam Why would you do this to meeee. --- code/modules/power/cable.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index e4bbbec5f6b..a423e4ced4a 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -606,7 +606,6 @@ obj/structure/cable/proc/cableColor(var/colorC) /obj/item/stack/cable_coil/transfer_to(obj/item/stack/cable_coil/S) if(!istype(S)) - world << 1 return ..() From 2d5c5a9129acf141ca69a451ad7c7789cea6c912 Mon Sep 17 00:00:00 2001 From: Datraen Date: Fri, 10 Jun 2016 10:33:03 -0400 Subject: [PATCH 19/50] Properly handles dried items, updates update_icon for drying racks. --- code/game/machinery/kitchen/smartfridge.dm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/kitchen/smartfridge.dm b/code/game/machinery/kitchen/smartfridge.dm index 5dc2dba62b9..ae48142b4d2 100644 --- a/code/game/machinery/kitchen/smartfridge.dm +++ b/code/game/machinery/kitchen/smartfridge.dm @@ -162,7 +162,12 @@ icon_state = icon_off else icon_state = icon_on - if(contents.len) + var/hasItems + for(var/datum/stored_item/I in item_records) + if(I.get_amount()) + hasItems = 1 + break + if(hasItems) overlays += "drying_rack_filled" if(!not_working) overlays += "drying_rack_drying" @@ -175,7 +180,8 @@ S.dry = 1 S.name = "dried [S.name]" S.color = "#AAAAAA" - stock(S) + I.instances -= S + S.forceMove(get_turf(src)) else var/D = S.dried_type new D(get_turf(src)) From 78e63a00a4cdd66cfd473af9110b57067c50b561 Mon Sep 17 00:00:00 2001 From: Datraen Date: Fri, 10 Jun 2016 14:28:59 -0400 Subject: [PATCH 20/50] Xenobio2 Update #7 (#1910) * Ensures cores, slimes cannot be used twice in their machines. * Fixes xenos appearing friendly, simple_mob death problems. Simple mobs that were dead and not of the hostile subtype wouldn't call walk(src,0), which prevents corpses from following their target. * Cleans up trait data when a xeno or xeno product is removed. * Slimes more likely to have amutationtoxin, consumes virusfood. * Fixes some issues. * Adds changelog --- .../living/simple_animal/hostile/hostile.dm | 9 +--- .../mob/living/simple_animal/simple_animal.dm | 2 + .../xenobio2/machinery/core_extractor.dm | 1 + .../xenobio2/machinery/slime_replicator.dm | 6 ++- .../modules/xenobio2/mob/slime/slime procs.dm | 18 +++++++- code/modules/xenobio2/mob/slime/slime.dm | 2 + code/modules/xenobio2/mob/xeno.dm | 42 ++++++++++--------- code/modules/xenobio2/mob/xeno_product.dm | 5 +++ html/changelogs/Datraen-Xenobio2Update7.yml | 9 ++++ 9 files changed, 64 insertions(+), 30 deletions(-) create mode 100644 html/changelogs/Datraen-Xenobio2Update7.yml diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index c4dcfbd3f16..6269bd4634e 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -5,11 +5,4 @@ destroy_surroundings = 1 a_intent = I_HURT hostile = 1 - - -/mob/living/simple_animal/hostile/Life() - - . = ..() - if(!.) - walk(src, 0) - return 0 \ No newline at end of file + \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 08ff09703f2..8439643fe58 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -117,6 +117,8 @@ living_mob_list += src stat = CONSCIOUS density = 1 + else + walk(src, 0) return 0 diff --git a/code/modules/xenobio2/machinery/core_extractor.dm b/code/modules/xenobio2/machinery/core_extractor.dm index e01bc6f8520..b50e42acd63 100644 --- a/code/modules/xenobio2/machinery/core_extractor.dm +++ b/code/modules/xenobio2/machinery/core_extractor.dm @@ -126,6 +126,7 @@ spawn(30) icon_state = "scanner_0old" qdel(occupant) + occupant = null //If qdel's being slow or acting up, let's make sure we can't make more cores from this one. inuse = 0 eject_contents() update_light_color() diff --git a/code/modules/xenobio2/machinery/slime_replicator.dm b/code/modules/xenobio2/machinery/slime_replicator.dm index 3626304bfef..9faa4272b40 100644 --- a/code/modules/xenobio2/machinery/slime_replicator.dm +++ b/code/modules/xenobio2/machinery/slime_replicator.dm @@ -73,12 +73,14 @@ icon_state = "restruct_1" spawn(30) var/mob/living/simple_animal/xeno/slime/S = new(src) - S.traitdat = core.traits + S.traitdat = new() //New instance, so that if the core is deleted, the slime retains a trait datum. S.nameVar = core.nameVar S.name = "[S.nameVar] baby slime" + core.traits.copy_traits(S.traitdat) S.ProcessTraits() - qdel(core) spawn(30) + qdel(core) + core = null //If qdel's being a bit slow or acting up, let's just make sure we can't clone the core. inuse = 0 eject_slime() icon_state = "restruct_0" diff --git a/code/modules/xenobio2/mob/slime/slime procs.dm b/code/modules/xenobio2/mob/slime/slime procs.dm index adc8f4e5baf..f2ee6013b7f 100644 --- a/code/modules/xenobio2/mob/slime/slime procs.dm +++ b/code/modules/xenobio2/mob/slime/slime procs.dm @@ -24,7 +24,23 @@ Slime specific procs go here. traitdat.traits[TRAIT_XENO_CANLEARN] = prob(68) traitdat.traits[TRAIT_XENO_SPEED] = round(rand(-10,10)) - +/mob/living/simple_animal/xeno/slime/RandomChemicals() + ..() + if(prob(40)) + var/hasMutToxin + for(var/R in traitdat.chems) + if(R == "mutationtoxin") + hasMutToxin = 1 + var/chemamount + if(hasMutToxin) + var/list/chemchoices = (xenoChemList - traitdat.chems) + + var/chemtype = pick(chemchoices) + chemamount = rand(1,5) + traitdat.chems[chemtype] = chemamount + else + chemamount = rand(1,5) + traitdat.chems["mutationtoxin"] = chemamount /mob/living/simple_animal/xeno/slime/proc/GrowUp() GenerateAdult() diff --git a/code/modules/xenobio2/mob/slime/slime.dm b/code/modules/xenobio2/mob/slime/slime.dm index b214b346306..65d4ad64d88 100644 --- a/code/modules/xenobio2/mob/slime/slime.dm +++ b/code/modules/xenobio2/mob/slime/slime.dm @@ -4,6 +4,7 @@ Slime definitions, Life and New live here. /mob/living/simple_animal/xeno/slime //Adult values are found here nameVar = "grey" //When mutated, nameVar might change. desc = "A shifting, mass of goo." + faction = "slime" speak_emote = list("garbles", "chirps", "blurbles") colored = 1 color = "#CACACA" @@ -68,6 +69,7 @@ Slime definitions, Life and New live here. "toxin" = list("toxic" = 0.5), "carpotoxin" = list("toxic" = 1, "mut" = 1.5), "phoron" = list("toxic" = 1.5, "mut" = 0.03), + "virusfood" = list("nutr" = 1.5, "mut" = 0.32), "cyanide" = list("toxic" = 3.5), "slimejelly" = list("nutr" = 0.5), "amutationtoxin" = list("toxic" = 0.1, "heal" = 1.5, "mut" = 3), diff --git a/code/modules/xenobio2/mob/xeno.dm b/code/modules/xenobio2/mob/xeno.dm index 7b1bf7dfac2..e72f6a4f2bc 100644 --- a/code/modules/xenobio2/mob/xeno.dm +++ b/code/modules/xenobio2/mob/xeno.dm @@ -8,6 +8,7 @@ Also includes Life and New /mob/living/simple_animal/xeno name = "Xeno" real_name = "Xeno" + faction = "xeno" //Needs to be set. desc = "Something's broken, yell at someone." melee_damage_lower = 0 melee_damage_upper = 0 @@ -46,33 +47,32 @@ Also includes Life and New //Life additions /mob/living/simple_animal/xeno/Life() - if(src.stat == DEAD) - return 0 - if(stasis) stasis-- if(stasis < 0) stasis = 0 return 0 + ..() - handle_reagents() - if((mut_level >= mut_max) && !(mutable & NOMUT)) - Mutate() - mut_level -= mut_max + if(!(stat == DEAD)) + handle_reagents() + if((mut_level >= mut_max) && !(mutable & NOMUT)) + Mutate() + mut_level -= mut_max - ProcessSpeechBuffer() + ProcessSpeechBuffer() - //Have to feed the xenos somehow. - if(nutrition < 0) - nutrition = 0 - if((nutrition > 0 ) && traitdat.traits[TRAIT_XENO_EATS]) - if(nutrition >= 300) - nutrition -= hunger_factor - else - if(traitdat.traits[TRAIT_XENO_EATS]) - health = starve_damage + //Have to feed the xenos somehow. + if(nutrition < 0) + nutrition = 0 + if((nutrition > 0 ) && traitdat.traits[TRAIT_XENO_EATS]) + if(nutrition >= 300) + nutrition -= hunger_factor + else + if(traitdat.traits[TRAIT_XENO_EATS]) + health = starve_damage - return 1 //Everything worked okay. + return 1 //Everything worked okay. /mob/living/simple_animal/xeno/New() @@ -94,4 +94,8 @@ Also includes Life and New if(!health) stat = DEAD - \ No newline at end of file + +/mob/living/simple_animal/xeno/Destroy() + traitdat.Destroy() //Let's clean up after ourselves. + traitdat = null + ..() \ No newline at end of file diff --git a/code/modules/xenobio2/mob/xeno_product.dm b/code/modules/xenobio2/mob/xeno_product.dm index b084b8eea64..a9989c3c459 100644 --- a/code/modules/xenobio2/mob/xeno_product.dm +++ b/code/modules/xenobio2/mob/xeno_product.dm @@ -10,4 +10,9 @@ Xenobiological product lives here as a basic type. var/source = "Unknown" var/product = "mess" var/nameVar = "blah" + +/obj/item/xenoproduct/Destroy() + traits.Destroy() //Let's not leave any traits hanging around. + traits = null + ..() \ No newline at end of file diff --git a/html/changelogs/Datraen-Xenobio2Update7.yml b/html/changelogs/Datraen-Xenobio2Update7.yml new file mode 100644 index 00000000000..5c7739f344a --- /dev/null +++ b/html/changelogs/Datraen-Xenobio2Update7.yml @@ -0,0 +1,9 @@ +author: Datraen + +delete-after: True + +changes: + - tweak: "Adds a chance for slimes to get mutation toxin for creation of prometheans (40%)." + - bugfix: "Simple animals outside of the hostile subtype won't follow you as a zombie." + - bugfix: "Xeno hostility is more apparent now." + - bugfix: "Slime cores can no longer create twice as many slimes through an exploit." From 34d81de406ed6ffc78d67853602f3bd063c3afbc Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Fri, 10 Jun 2016 15:19:31 -0400 Subject: [PATCH 21/50] Use correct sprite for Pros fab 'chu gotta change these too. --- code/game/mecha/mech_prosthetics.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/mecha/mech_prosthetics.dm b/code/game/mecha/mech_prosthetics.dm index e24a5203962..588fd402f38 100644 --- a/code/game/mecha/mech_prosthetics.dm +++ b/code/game/mecha/mech_prosthetics.dm @@ -183,9 +183,9 @@ if(materials[S.material.name] + amnt <= res_max_amount) if(S && S.amount >= 1) var/count = 0 - overlays += "pros-load-metal" + overlays += "fab-load-metal" spawn(10) - overlays -= "pros-load-metal" + overlays -= "fab-load-metal" while(materials[S.material.name] + amnt <= res_max_amount && S.amount >= 1) materials[S.material.name] += amnt S.use(1) From c01a44f8926d121859eb6e2ff884e514a8efae04 Mon Sep 17 00:00:00 2001 From: Anewbe Date: Fri, 10 Jun 2016 18:09:48 -0500 Subject: [PATCH 22/50] Adds more fishnet --- code/datums/underwear/bottom.dm | 6 +++++- code/datums/underwear/top.dm | 14 +++++++++++++- icons/mob/human.dmi | Bin 26738 -> 28760 bytes 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/code/datums/underwear/bottom.dm b/code/datums/underwear/bottom.dm index 7f91a186081..64d90f62b46 100644 --- a/code/datums/underwear/bottom.dm +++ b/code/datums/underwear/bottom.dm @@ -53,4 +53,8 @@ /datum/category_item/underwear/bottom/thong name = "Thong" icon_state = "thong" - has_color = TRUE \ No newline at end of file + has_color = TRUE + +/datum/category_item/underwear/bottom/fishnet_lower + name = "Fishnets" + icon_state = "fishnet_lower" \ No newline at end of file diff --git a/code/datums/underwear/top.dm b/code/datums/underwear/top.dm index 8640e77da90..044f10e7cbb 100644 --- a/code/datums/underwear/top.dm +++ b/code/datums/underwear/top.dm @@ -40,4 +40,16 @@ /datum/category_item/underwear/top/halterneck_bra name = "Halterneck bra" icon_state = "halterneck_bra" - has_color = TRUE \ No newline at end of file + has_color = TRUE + +/datum/category_item/underwear/top/fishnet_base + name = "Fishnet top" + icon_state = "fishnet_body" + +/datum/category_item/underwear/top/fishnet_sleeves + name = "Fishnet with sleeves" + icon_state = "fishnet_sleeves" + +/datum/category_item/underwear/top/fishnet_gloves + name = "Fishnet with gloves" + icon_state = "fishnet_gloves" \ No newline at end of file diff --git a/icons/mob/human.dmi b/icons/mob/human.dmi index 4ed82dd5ed2b9ade04369034ee072d56b8ced1d0..4f14b81e3e5d6268f90bfd4bb9d0c55535568984 100644 GIT binary patch literal 28760 zcmce;S6EX~*EPCB5ftfFdJ#~nAX20RsVY*Gq6mTl3P=fEdV&p*s!|k?Dn$?wK{^Ra zFH)rj2-2m88VDh0@xI@Gp8w)J&$&7Oxgfh{@3rQhbIdWv+#%A$NT2=;_ZbL+=xz} zc-ZO<-E*FIcbOcb6scFPzxcedT(vQsHzsV8?5?;uOA{)f`%msDI8+7mYH+2d?zz*W zGi{qY^DfV-6J5Dt|F-R~qfEpqNcz&}UfTQnFEP|aytXF{^Xc8-9L10+LJSqEF7{Z} z>yV%f4VXTSve=3Wf`R4kC%(~_UxyWisrBMwYz4U`ZDB%@Ds=U=?;(?03HG*koh+my zziL`FD~*R!ipzOC!0#-O?q^*r42(?))#ILuQw$L*Vv+(l0;Kt zIAs@Wo%T~pDXjT=h3_6`(BONAn>&@5lqS8WCN|Sw28GR<9k3qBsbN0-`nNklIwi-& zF&G(dF9kt@&<&kyX8viblR?33^J7YzxVbb@p_jbLOiZG0P`twYeU+|5g>LLmtqQUU zXPn&L#`S5G-gF^GNbmkU+<|0U!X=(w>(Bo2e4IwQZ|J@~^Yc@*P9_XOi>xYc-&H&? zNZ0j8e&1DGKLjayB5}Rp#@{b@*^I0^?AI=&2R*q`g{2o37Cs}(oMnWHh=^EiI|UXO z&g#Cp8kQxo-%hD@oDTncS~_huTsZtE8~jfxvfzJK*-FWC+Ki_SS(&t&e%^@lCSrM! z9q&W~k9Jo^u*Zj1?6$MKsOfqB0L}9YQ@J?zZe-6eyzwU!eBdKpxcANLUYFoVV@uf8 zt}Shj3~UA#*E2$%dBGU@@Q7*7MWhV zPlGRcW)~Zx67d1Fg4Y+|8qoFbh9WEdLix~N3D~0~(OWgYhY1Txa7bry!pVT4MxURl zUq$Iq+FLnaaNwhhRj@nK9Vwz(buxv>=BSd9D5OI)WhCc=xQ=lCnY}6@v=n*}W>#Vo z^A9SKlG?$FREZq>T2(ILk^T($F^K9XVIiZ8tbxh!3#Od|b8P;Eq^~Hrhnc@`CNlU@2n}gADv9EE%pP${!z#z+Ty&kyZs8|hGt9o610fvJ;#ug%S z{4b4;!|>w>28MaBK1Mfr)npellcd>)?@HHn2hohBBR~Ten z^_Xsta+LAm-s%|To8D7`*S8oq8u0LaqVtG=gSbKj1ELD~>D$I7Ge=7ewa3(lYt_xS z>XnWcJK(A_LX6Ji@D00A zByuuII#Bx(lPmN*9=K6)gA>hto-WV4FD!%|-!$h!U=)?{D8CEvQ;8>sN!t%L70nN& z_Z7{v!FnYhWt7i?UrMA8x!2?OGc@Mr~}U^$~GLN?&eP zEV5PXJ@GG!Vw&uyMffs<4V@sPF%|(@+&=kmcjd<#wn`+V}kX+83{I?>Pz%$D@yq57U;CjGOLbtXM z_V|D`y^ni4qv>PbP0T(Sd|HY9oHzE@a#4No+^P3sM1iu7@*TnK8KyOrSCxaJl_XO5 zHqn;j(X34sUki>Gw`4uDErk+n|69D2#uE|*J#b)!3e@>@TjRKiqRsiy`ue8S*(~yX zcf8s7#HUR8aUa4xh2tNH2(}VH%q#~{`2D6>*xT>bX78HDJYK+a+m#Txnpl@!bL~%Yn|#Inrj!sBxcHCOXAzBxSl&qg`IKf{W!(6EDuS3)rOXe)v+%#g!!@)$xs#5d zcPa(POf!4%RQ=2~@}mK_%5=IAOH!0@0v1=z`IPq^!^j$07fF`2{H}Af>Ih%i4lS}M zzB52o@TONAA~7xf$!K5lZx(%W7($?Y`h=2awoUZO65=@NKCZdEor}gUJXa!0_VGpy zu5>#IzNSInRlWbHTlDIpo&(so#am4Z2^>FWKK-xy>#;8ONv5p@IXmL|_5H4&>uUnZ zAHI+;pK1Hg01#d^&55sGk!m-3L-#Is^`2Tn;Ax)2c~JD40?`OGn7vQMpMNV?u~s`c z)%(jkSPS&&-`d4`w`18bSg(doM%Zkhqy4e>;l{%Db8~rHl+IQA6kbPacO){*W)?)N za+;~DGsRpwGV{hWi7HI~*Ua9J$Hg)8n+fa}#*V{gXvU8%+LFKTPsqy4ri{5&Xmg+4 zAcOBY*eDDRh&_DYC7RdttPt08upQJ;YK?fzD%eX@(g;Q1^KX4*F=K5!m6-v&?L}2B zt#o+RzpnZr-NOyA_S5RY+&+zSV$Z^v_6~ih&k{LMrIm)SlNJ~8RlIvI{e>kMbUf!= zynvctcXN!-!eI!P-r_{T+!dwSz5S67WZur$&;m6h+mnSWk$43OGrCOohpC-tdHZG1 z8{FVt)zwf$_Xg6wr_hdD09&$8rePKLQyr4+lM41Jw*B!mabD#F?<|V%50w(2qXn9s zSM-{)(UVnk9|&$fm5NJ9pO}N*tnweQ*ht*)hP^qb%xn-(u)xx%#|KWu%Bc3wa%fd2 zw6^-&8}@zoJvEWrK|B%(q0k37VTR>0Gl<)+nrd(^c&r|B;LF=C(#A0* zPd6oE=pb`?8C%Oi7MprOYw@mcOi%2pC(Rx#YuK7AJ;PEA6rb=Pk3+M&AJku53Q%caT|V_ zgF8Lu#`yfrnc})~6Bc&tH&%K(if}Oe%x@l0>v3M=IT@U-u4qK|{oA;Zt`E2=> zCy12S#@|KtvbQdTb)3Gg?na&vVWh2l@{rQ83TbU8*5@njr;14sQxV}om0lV$XQRBa z*IbO)TP}Nl`FsCV=J6rroy?B#;!53p$3-HBu=Rs`4}?TN$scpD8lg!&ex?;e(gZp2 z0{MJza*^)Sgq2%2HT` zTz^aRQtH?<^5bMBCQ;xxj4I_o!0F>tbvI<<98o~CY9GUv{K5I4{RJ=mKj*n?ih_kx zJ+s6;B4eCS2$IXPUHWj-`94^(GOCZGW#8!LNBc$U~Y@yT6ZO zyrOj+Zc$|Oijb0&^u=<@4_W8iU@$_1*cQQlIbeD3`kXzFV-QvjACJYg9c9Vbz6Xec zt-?s1T3EB&-Sh_J2GjGU}oLmQb6D`Oy4y;y5g% zzY0^oDm(3>%)%N>U74>QQllm(q>FgnGoP)d-lBA7r@r_NE_n)#TD)bNo6Aa3#9gnR zKJ(>}l!3N;g`>i(lw$Z*7kl-eJQ3Sdcp`N9GAr0>+a0lGY(}{xbC* zg)e6JCe$CyUwQ~U1v7|Rt!8t=&%6AvgK7>O<6h}6PDB6~DR{bhU*kyWUKKL`5rdYa z%Zm-iNl$WG4XO8|rtN+m`v6tO`D;c75T!{S8b>0pkk_*-_N z@=_k}&?TjZ5>+Rh=8DP=I+PT+wueP&XM_)Bl{lF>BkNW5|SmKCTLLU!EV0kdpL1CRbq#;Okym3 zq*8^cUE6Re^b_p4^!K-^#k3N4)(law8=vFtzKSOy+V*d^k6dLskdBlP)2`xN)BJpy zvv^74jD2^<^67|H;gp1gmy300N?a*I@e}U6wF}%w0cYbA6w0vVva9HwsKsEzw(SvX zN}u`dp98tq+7^XSu=u8;t(d&P>Y)oVa;(hEZx2(y0;mNmAxE++?Fj9J8bBAu_Z~~N z@`8l8of`ajG5PIFFQUG_>du<1@xkm~l_ODnVTwBVuy)Fy3v-qx1I@7Q93(Ll^`3l| zaLg%A{-TEdSi=Oy+qZqEpUO9B{+Z;apE0`Ly(`JRZDgPF-uLnJa#&{z*~ldpd-k^;mdge(4H%rc;ATrhY7G6aRie%ZyW4 z!tcYeF<6EUSX<2)EMSyWY_Hiw{aW^KZM$N7(7TQy?XXLJ^Z9pY;-8<3L9)z`RevP1 zfwYIcSL<^TRDTt@2FWvPRXF}l`!X2Un_DB$h96eXFU{=|mwh-}74o`$)m2%_KHqwr z2UceMgRF?gRR(&)-w|=KFBBKLDx0sw9$!!YPNA>>4=+4b>c;uJ@abl@9J$6Fi;KN2 zDCxLw<(wH%2FrxGxJl_BhzBrgn`LFZWFZbkQ>KT!sv76VZqrvYqNK_TTb(|R6MBABa@z!}DJIV4|8C0|g9 z3=`7RdxShhUW`#~*b>(&TH92e{{kR7QK*JQIlZ@GG{49A_(=1YGqGz1&WG;sYhZsE zfRrqy7Q}E=D{Xb5O0eIlQ>|q@^Rbhq1Xt+rOVuo5O;+(l+04AaGEV|lM&mA73J-_LFvs`~x`o{|j-5pq3sz`dQm@$~VcfZOlP$kJ{4 zNR}_ZP!lj+UYnt{kY^{?t>V`hjXxo3(Mq7|fv)RZ98rNKaUW3ZV~6%7L;7H(M>s zpM>;b&ujJoi)CloH9EpRg#Xpf&CG;M^KShFg@0l?^}`EC3p27LmNeSy;3_&M^r$kz z2F;ETQuWL?xo|KL`_6=mfv!U;JKsidtcoxl9fc+OB_@>AacdNwi}7@USd>N|vFf~~ zQ2UH**=ca2Yi^qKD9=_h5H>Qwt$?;ND$j}pTEeIb5*^Atb8=rL*n_|n61YMj*uoVN0iJ7^-hOQ8HVq!7JV_VC6 z5#~h}zIDPGe2x_0sVoJNu~mo>ago>4UX41y1_LNY7{J~3QL2Jt4X6>xre$=-?C7x$ zNh2NJSbpkIT3lRTnU_J%ciHUi`}ZPwMxP{j8N%B;I&M$-o8P^=A{T?7-xwMi>huPF z>TLg#w1?W#Xqr=eZ+!CjaaKVAEkih^ zuC8u-XXlm`f-}77k)txNdSC^1TQzW}prEvr6I@uhFOXfu?C#yD!^1-q-fV%1hewiy zg+)h8>p2(&^J$r6u)vej;|1;P?GrV~hBC?gST5Uz&sUFO$wk;%@$=_tKPET*H9?d3 z7{V{Lt{TT$09T3eC+&{3{Cq*9Yi5>kyfOXr#S9=NoG!y(Zyz4fXdh{I4HsL9gXbs$ z{&IqeUCJxN#dL&VbMz@(JxS@;&|w9k=lio)MZ35#-% zt12Vgy`LZoADkh8;P?Dr6v2J+>WT2ihtp=-8iY(uO@Gwas{sQyoCa2S-tTUqAxbcrcY&GBqBJCiU)=V*}Z3 znG#Y`3fIPebRot{9@M#BL@yBdLp$i@MOHvQGcFEsJ*{rO_r;@Hsv zHvO+i(%F>WJ=oh1Y#1-Hv;?~dQYz<6^NohK&&_+Cj%&+N2)A;t(IqFpef#$rmZ4R7 z149mNoG+BJs=Q@jV9=B#ZPg6^bnf3zu^}kAjlb-Y#aJKgVUD)Cei)`I!Zxo^EChoS z@)X0(Xl4dVPKkXMmY1Rb5MPMnkAQ{nOb_H5kVn zn)yMG>$etQkKAkR4HFqs9^?;Jf#;usOuVVl5A9YQg$gn#HQDZjy-rR|NpW=v)#Afc zsr?cP2V~GM>YURU=M}WW#2^|x{51xF@4S_8?_}A9%Z|x4`Ne%Z*j^tpJVYh`)Jfg| zpv>4oje63X{(Jivq|8%GX)@HVi}T2!u4}tOASY(aavPxO1QVh;g#bOsK2}*gC1|FN zPb|7?4*)9Ek)nWYE)hEU<_~XoNaAj3D^Sqx0mXl`%syQDZno8l`0w7uL1KEjtj+wo zi@4{Th_QWcOL+?F{ z0qN!K@7G7?HBTBI{5&V)y43vNcE|q^6;}wfKz=d(A3DUwzD!j>ww4*$C)UPc*N$g7 zuV}m)eojr-+|trQ_<}9|IHJDb71=a4Hd-IxUFB;L&^^x*X2&R|Eu=4evEWqW?o@_O zXV8g|7DhQ8)^HgG(FEH(6;tj!m`+{Iay70Z5}M=p69DMMSjC%*+VtXt{iVOh4;w zbQypX4DjkvQUT7K_~?KL zO`WpHslKOs?-O`z9TPR)ckAiD_Vo1Fgw5FT_VnnT7^C9D2X^-=qPWEDU32q;D_q_S z-OP9YjA)}dWK#F)Cm+!F5jU@BU@P4QXH&c@2ELf)Ka|o48!lp7CZI~EyRu!L;b{cz zmkd!V0*R$zQtNTl{$xgr6bEkzKsE=1A2ZIzpDeZ< zlOe=C=LK~y)pMx~mPcz&S`KBl-yVj6s3>2!8s0YWe9YcEq~g8<+KaOjxp(TdY@}Ax zr#89Z!2qXfj5VBXI=xcsfbLRIzjyZEp4r1k5r17SCvr^jd&l<@Yso)14Hw7KDGv&G z{RD2wi5|3W{Hwfalx&bdJ&Ij&u6g*VJo~ke zW&9Q&#ya;n7tpRtp$3aL6W06ok9KEqUI+gyx>#2Y!xt0Q~FMqJ3C@k z4Yf%NSczS;Iqlm=O_sX4uf)i&tb)C>=ye$uK4_N_D6hprOw9CRS=<4%zOKTO-~L-Q z)iVLWy3J)r3F;oU*Q4MR=2t=|m8;I92zu!MyF=R70UK3L-qlvufB~mHP2k?In1~(q zTVU#umzNI=2_fD`=pLop?Nr8o&6?Rxrf+1L@wwXTOfrdMBpkQ1var1DnmsRHHD_ zrnhfr(I@F?E(mSkIp+dE@52=ri^fGYmtiTn_+DE@Nc)ztuKT4mW-Ori*IBg)S72HZ z^o6tB_SM!U8+1a7Z0zh~TYtsr3^RTG*ji%7#uh84Zl)?BhS$-=^>|KH-3Gd@%`N+; zanQ6Mw|bz0OvBC{tCU#HlX;IZog;sVb%|99+;PIDWDMpT&+hyioJ>JkF1^3N@W0*# zD1UOgM&{n_q{sT5iAhOXv}M-@6{;uK;hpo}nZS%FXR38e|S^F*jxj3&v#qGRQE4?c5a$$7Kw`}$x)qcDKaHPK; zkY?jsD6Wll$Nt3rAl{)g>A(l@jl>q)lDoMT6>Q~CezR=UZyQx99e%Yee>q8i-P!pf zcutRlgcMup%m?TFYMKQG20U!d*{$8Hqy_4Wi;LA`wWRKS)2yhh9Dn=TR>M8nV08EB z_k>Kclc52ft`jzjv5$CNyC41Ogm06b_n^+RI>ghn z?6_{(PT8@CS1y>~VcVT38I~wn1`vmyp57$nteS}ow3%}l2rXySov&)zc=rx!9A2EX zVy<*yvAHnI^C0kFZlFxQ(Wmdy=m0hc96F>@9dYn+(L?!?T{A6a1|Hvg5`^0AAPeYP zTc_bXFcZYkgZbp9WhRuuvvq4&W91^^nVN7Wks)qOGX?r@#9k;UhX8O2@?Soy%?+~r zML4`FfAmF%N&8#yx<$ba)QJay5+p|nb{FQ4ahb%tfA`H0FEvLJO7UQg&WaZSwK1r6 zPfTlVZ5<6rf{-f7sV7Zk=FMTC^^h-i{f6d7P7%H=U<+uO{WVwfff)VZL$l15ouEzW zNTuEhAPXxhazL9qgU00qR_6ZrrW>gLph+@?*ojQ@f0q6HKQS#66MD`6f{)Modi{0} zs?^iCYc0afk>Rg9m>SG>Ha!W;jP2p2RrXu`u(Y>d6 zTVn>bZU?u;@Z_7DnbFR=)q$j<%2q~W&riwzhqkfccFqYdouC&W5-0jYcghvXxlfBA zesloWh!6M@%PAlr@W)GXeqkYfFi_HUyyAvconNtqwe^JCWTAOc0$H8v&28|Ef4Gc1 zEsTOgfF4r+n7FxbZvN@yd@vj=$b=SPbTk6NeF!TlTQsQBl-lB3klPEtQ}|j0AOPG7 z;Z0$0-kkaCp{#W$_+%Rh!J~j_bdF2|R{g6-?|LiU{0bs5a}nAx^I4N=Jt@edRZnmb z$R*er<4;%3+pAlx&FaXqRCoha#B)uWhDo65~HL2RJXv`qq*cLAQLOAsDXhyLqfh|V`D%&nB3F4 zTYO&>l#busjv)TC_pPjUN19?AkT+VruYPiJbNeAF1r81j4Aic@k^y%8oSQo~0MUzq z!WyZ*I!a7-sIRC{@NclG`?cIcqpUio=02hPdlo-x0nvzz(T?dV+E!AVT_`y95Fkh3 z&-X!~KLrM72e!`KS$*K*Qe?}TnNmi;9{iR4@#6PVfbqxW zW8=$RDa_tCO@$4=@?z6!P5k}#rhF?WnD~VIGZV59C|iLxgPA1(+`S+vSsr4S-c7y9 zN2%^H4al`@%^VA|Mi^bo)u^auXzhI=?rk)UsD0d)^#LWn%!SWcb=?dl2l+?w_q{!vj;0KfkW z;n>R49t+mcwElzNam$M`9c!C)pU*?zNCDv~p64lOClW>zX*?<~V1L||NfjLPp`TZQ zu3dpzpYudap3v&L*p|h)xg~*SKlozMdX0W_TU(R=gynh&eD{y3_8ueNdcwO`odV_7 zi(B{CJF%vxr)Ox}r}?RUAcXKHVUg<-HUD#%?SoWv7I!S8Z?GhlIt5^8I@$uIR6v(y zd;Prjgt#$}$%5eD@hkoWoGFv>MfnM-AXQZX^!XSVI_b;uWFW`Tdt-evZ=XH8_MPQk* zaL=!WN2+FmNML|LrWh}}q;A)K`{LdxP5}(@F4Xus-2JQs4WP30FclS*Uw=IS!+5y- z=gY5Zckp?5b(Us;^I~YG+MHV={;-o8TJ>N5PYVTZ!oOA7=^rvrFOheWNa*RT@&hcE@m8@Da)IvJDS6SWorQ<+}2A?PBWi6iE zMZ8y|G+-Kh!}mxtfUCnAC~NURg7cC6T3dVnM1X|)Ol2(K&)muD0bHOzOvWsRny(V^ zG#5&D1-(C0&i~*y;|->38tBpX9`ba!g}!E+t}+l7hah{VkP^*kxm!&YcW)yAmDC( z^X5&(gF3%|0_ZL6_4cY{VBl%6px6w#)WP@{9I>qAw2MWq{TMk_kNYuVQ*<7EqB(wZ z8IfsVf}ux*9q+eVEkN+%mp{w%_ z^MJ9X1&4-#QLEzvIoJ=Z0LtblwJ0{Het5*yA=XDwXjT|3rblqSO{ve;^nj@vPA|y< zs`J7cD0dtM)9jPSnvHf2yO#>&LNnF*XXO){zHODw!!12p)yOVBl@$fF=S&<8=uWm8 zE~I#WPdV^>{PX>*cI)V0ZbXBgcP#9WNbOu;X;n!Ep7lq90sU&BaCUOIgBg|sRtl5} z9E>ogkhffLvlwb)jvUQ>Q)Zm<(ZzGgU(`;ygu2dptiHTEGB!X3Zuan3(Mlk%p9SgA z0JsY0pCQ<$Z1CS|(n_rjO`WyLUB{I@+-6_Q{mkbY$20#(XoN8+x9H_spNmH^|14$Z z?vy*cGh&WHmA70->tKE>#lrw==jwQUn^TpVdq$~;k(Pr8$`*PG?xMwwTmNPH;K7QsXokhzbcJ5W+qcE;9<~jQ9A@!nXqA@Q zH)aXW7AYUQi^ZviZyiu%NglrNBqk>$WPbikRa(FGX6qjKJfp_Xc+>R*qK{SOj3Alb zXG4H?>m~}soE<1D;lE$@0;*V&u zwQww->M4jeAuiyfc`G0^e5!u8fSB*#;IJeIs+E^*vp=gnXA?BYp0lmaVRjv9W^Lj= zsi)noOYV=H7l$><(wwu}RRJ${prhg53%39v`*Q1AhMO!>$&|!BH$Q*CE?^lATD$f{ z14H%<;4|6Y633eHoD}j(kfEXB_3PKa{eS_{ck<;+Dmjowqj^~qQ?3|5 znt%_0F)k#>$-xsH`hVnX(g^dwyf0_Jt2qGHWdiIU@gx>;SA@gqLw^Zlx~9q~A2v<9 zx@8f(ttgZ>v+oy*{FV$m)l&v5C@Ikcp6NypO=F3QQ%NnD%F5wkX2{-Jq|OTprj|3FF>1nw{P;rZNS?;q-H+B6PwyLi5zv$J z%gHCkkvi5<_=B(euX@-^0g(RxUp9UF=fuHO+cVk&;6b?04K zMpe7r@COI0X-dXWV@zV=l1JU{z1uR$qi@q0plbIOi^nSM1n82SjE$|$=y*1{L>{g3 zKi{d}?G6FzUdM0EoeJ_F`ya?1x-wM^1?16`4ZqNJt(69~8vW>SYv#=p(z8VT?|@O} zBKT_e;#+-wW@vLMC+=y3v?(8)Np*(D`t6jwIWY12&{*}ZUz#(rFUef7e$lPy2$ydOp5V_;=E92_v-M|-}*SzZ{ zL#A$U)NI{nl-Iu+Sf62y{D&xQW|t*5ZMk1x5VF5w9{l`ebd-tbrgX!_+YOwdAf3F7 zP6T;Vo#vqSBzH>p3S|w5vMj)cpgVtwH6rQ{WSf;NES9@WVQLxa?*FC=q`bE9LBb+ z)(8a!7P8I2n9E)IVtV$^LSN+u<$Q1NXxoUi7EoVHuQq|VHM>#UST0-H(%-99dMb6ig%{o4 z@Cx~*<{LC;_x`^`tvp#~qzXja*1&5uT-8A0cH4@=B*Us#( z#(!caFC9(aTVqg%*i!pjk(;vt4L11WroqjrRpW1qb#0sdNALK_YX|Fc^-4t6dh%vP zXdKm!3j<1O9U#ivc+cB$`|rJBo&DP(JwtJrI)mQF_r?Pp^+m;Ss5dVVun(D1iqk={ zvb+aZ{MJHv5mP^`5VVkQuNBA0uVIepuu|A{YN%#Wh0y~x`gV#U`W#)FT9!hn@foY3 zW~HZ}XwqJ%#YH7NYMkrtI86VxOaS6{dwY9dGU(qw+Hwe*;W@{s z4vN_6{K$<_mS;U>@Q2uHV(on9FSp(i*hOc}-}#!IuliU%^|4&8n>1EP(pE?x-Uv^* zT3=gDBy}IULW%&2pG>6w#}BL9H%w5jOwiIcg&BQIm+}+fdIcuTmr%Ayc<+9cb15c& zqNl~zs_Log!f)0~w<_Kn#h!~YGcA*Lb-R}Js;O^*AYON-9&duuxGJ`PrqHL-^l;UaFwwum&E#lYFLwj|!O!2lrj;aLuHR~U;HPmK;*-1h&C|J|a<-gx5`J~z@6&-LSN zwu5>esC;4Lqnu->Ox1v0r8ZH=TNP?E1ghLX1o=#7Csgh6cGtQq-zc2=U3@HF1>rdsl|?U4_ONf=TSK=YgV>4 zJi_l^{q|(HD%)`YOGFfvm^dZP3hK|VkzeT3*Q03|MhX#-4gAzu;<8rrg;>`1sAuP& z#X#qUg|hT)r~b?>al>ejJ(}Zdnd0$*l+f86SeAXy&omLs{JuZa?fobd`NfAlZ@=27 z+Y9PbYIUT&;M*3|s9V(tR-3mu`Sa#!=+2cTUO}cngtK#zTx55 zBN{)X>2;1*EGvL40V=nHt@%)_?YvGiHodfoURGyjne*KxH-n_(4Y1M*5QEJDa`iTDUf$O}ucur0ZrKP21K@lAqvYem1jnjJY zfY058H{WhmszOw}2`wp*=Ick5$$$Fvr$a9sFRBL?1Dz#+SDg;^*Ib|uO@@&0LZ*&v zu^G7nV6O!ahazLpO) zelNUMtKebm8B_CR0DG|OXY*Pq0UwmY<~))c7WBrYJLV7Fu4tGxGp1^rIPdWDA=Ttb zJEy-->9ZJ&1+=BF{GV&@{J->zE&w$Z8Dw7rdbFi7J%3K68(_kR0%atPWfwp824mAjX+$- zNIat{fu&AUI0{XYcbsL#bx0F?xz{IZ5L-J1`u=sc&vpVE>;^vH0MZpDbY4tMSWN7c zo12@Ht1A@*bS>ViKD3}2*=Z9|SSaDyA({+9Mrq1fvUks2W-1*i;%q9jZ=--1c$HB= z_!AB2{E9u#`7yGO0t#I!=7AVuX32KI%UNHTJfO_Ne7@wPp2sP8u zeQ*|1_FhOpPsFx1wU3_F)rkf_3iIK$7*3eLZ)xC%1aRRUP42(qHZ?-`?@81nD5cH$ z{HLwnzm31lYe={K?HFk^YfwH_p+<8KIr>xfZ;&#o-%dDtSU-~xL1UPFUQi>5D^KJ8 zXDRefz9WJShf$(q4CW1+r9lFiMO}VEc|6;Ntnei+lAnCswDIKq^oh?uh^WODx)I)p zITo-v=r6vx~CP@=K|5> z%k?&h>nW(w(R+BfJ|_Ip;B1-Ng72R{e=c;1KIs>J`!*>LClh+)scy8V&G@erscUX- zVyKDXMj;SVoXp9=jQ8~=dn(dSK|0NGnvV02bn@wKh}q zY8Lq2AEaYnv$2SOW?~ggwVo)Gi#%JB=q@K8L{YK*1ctKZ&n`PVep>1HyVS@4Z+8nu z)`IiVIok+7$nAlFy`T=Cg7g^TW1g<03xzxS;5PF)l~XB-UyER2Q^9E}-kp_V4|~#Z zXDoMO0%-fAdwSj{DZ%J$$3%qP@5feO-hZ_FncPyLEL&K@8y4HncD_3-Mt$+c-;GB=$S6!x7g8+L)U?2*=j}3>yO9z5aLbc zl2`NiTzK(48FY{%LmDS0@)4)b49}}85rvi!;j-f~_Nv^MRt%Q88FQ+h^m0~Zz)#Jr z3|?B!Q?6d`XWEa-y`U1xQoK&wTqZw2IP(Lawey~N0BTpi(H(y&r(g!4QNLfA^MVeq z4&giT5!jX@t{em;p%%De&tgwsd$AZkBE&K5U7s=7o6f}KV`i2)Ip)E&y zdy%IuF48#3(!xR(@bXl;#^E;vPQ&`7k2b+7ZgfH5^k!g#);d1b8-!dlc)?4WkNOe^ zkLAN4JE=Yk_GT6DP)P-8OIaUuL#XCpwvf(c1-E;5t(VF|TE6vcJ$H45P+UGf!O;Z; zU%nlx?6=mdN2?S#K}km=8M@7%7_$ohot62tbyv;1Bkt_XgJ*&ly^{Oh8W7Q}3`WsBrk8wsJIZ|ZGJ*tThG?Xr38H=}TsGkuhQ`|q;D zO=RR1AufGUvp9_p-n0qfLn>VRN0Nnw-$rJCD%C9;&u<{(cILZa5F%YU>>LA4^!}PL zYu_R-3Z(HDep74_vm4MwPA!95&z+>Sn+yIi#mocV>Y3*Quh0?KnRU)wFm+n|{apF@ zoXvwYmA*y3KE_Hm?dS#wMKd0Wxfbm!^u0auvUI)>cNZ$9OTjs?h?joZTu95L;gKdPT@EutgI3235<^D^TIu1<&KCt=4z56%B_#}t8Dx#m(eS+J&T+(W z?bTIG2wM-F{nbCZCs`za@k;VzS(#|w*E5%kl}+wOsy=1$?8_$T-Pbuk-s3a9?I!+h zjWz7iNKccSGh9ci^Bc0`f`WN~beuCsYFg|w9D$cpk3O7Z=*X0_}Rm&mPfG008d^Sg#UHf0gJWM zsj~tp7{zH)Yp-$Z=V$9xYUr_kX-D|oG|sj!w9FOXn~EF%T0p~#fA+dBkEd2mNjy>J z9bLgceBG2)YH;)B0CHsH*_G3#Hh~=}%uplQzlxVWKIqu%yyp6@fy7?(1Ifvmd7>B$ z0xgV+M@_FI6B5|eX;k&0x$V*~U#@w3ms^;di$V|A1sE(txqkWA2W(8?rnkC~;p5|Q zLDBhZP-A}%ygv%#0Nw&TsQX_R=RmUKW1?9h%xpY!-n=39J&)p*WZuk} z)!yv)y+B?AH&nzDN{kA9_}n+>mwJnF-Q3yOW1reBf*ub>)!2#Y-cD!Nc&F)G;e$8$ zQH5hM-jwB^Jo;GAN!%Z!v%#~yaS=&|jSY^dYPxa!Z7aS3GU2ly?vPX0#f(ic6j}0) z5Z9n?452CPCnytB_NxeIm@_{UxMwNR>NYAAg8R?STa#6|1c+r-i>JLc{9+)kjB*um z_Fl~NuoX3gX$amZ?-lm@s|7jg(?C0Q1WJ+`ohHZ7Nm@iV;7&+q-_`p<*)z4V$e=m? z>hJUqWxguaGex%hi0dS5#7%dH#krn?MO4oPLa5>XH$9z${<~Iv;iO5)2T5%SEoK~c zLMi>@%R%L*`(r^1+I`>r90tB`o|{h*w8!)+(2J_|`uw@mm|Ex8r=Y0H1}Phj<(6mY z#8`ro1m5|PyvDgIPI9^iOyta-P__#9h&!D-$EM~CoY1u0S60TY8_tS9&^=Jz%q_Yk zydnJz9P#*~pg<&0Ns7&GYEBU3geOX?od#=G=(${gUMaCrYZRAKSU{Od>Ae^Dc)DuX@TWtn#V|bwip=QI@q{rP10g<_ZJ#?7HloF?Ms`In);(FJ*I8P@M87q znEyN;hI4rsJvK41I^wyzc>lC5)s~Ou!63r|bHs>^RRPTH0d-ArIQelyQW8hVuUy&i zbnl8gI`3(QioMHbcZ|Ok5@ZP$lc|KvOFWVKXEuMl^w&u$A`z8Z$sH?&LP77_bz#)_O`Z`5tI@!RDmRZiXa^oP^y3eg7gxlB!D#Oi1ZSA z=%I#ClH3!&-`rWV?#!$^cdfhT50enza?XCw+57B$p6AKJ-q7nT31)-jJ5|h-DWNeD zsx5jzTq5g`f`URtgeK|wRRhs8pAUgG`Z-yGimsHk&yXZ|c4U$UWc8%3>s`|&sjf+=j8?fUM{M*OC@@=RT`NDk!@l|zv7f)^3cpXpnd{9?4uX-#z%DOM7a#HK` zmF9^lWK9U{$|W6LRxh1A^78kh3F`)Sk&yl!b=`%80$m+1eu>n<7b-{XpWJm*WmPC& zSDC8RpqNs8#d9SPyt5+9I!4drpOpUMxv=rJYyGpIti9Nw#A8*_SFFs|WKgnSZi~Hq zmKY?Whk$dH^fgJUj1IdGBF_O*ON=ukgo?jXuyh{fX^o#cdsWa>g^gN)uhO9O$(|M! zLoh;Tl{sOhP8^yujka`9@*|~4td-@sd(EQY%y)vb^Y};r`_%FR(i!45#B?Y)5K+1NXbrwdvQoM6seG(1nG) zo2~e(?-R&&2Whcsgz&TgxJI&WMH+=x1I3di1&daR>?MS^ES>Y#L7`bM z=1n~NK)(V2sGwn1=fpz1Gs>sgyFHnj0x{%@;hQngsqmtnPd6Wj!(d=b$@0yQmE7=E zyKvdF4A&_K`1ylbSvp3IT|?GN+NOR+dNhvd&(8n<*Cf9Ayv1qg9MR{ApHE5dy}a+o?k13;WwuyzA)K! z!Ox17gaInwzIQXo4s<|D0CGaVQjupjT5w>U`R=%ugRl?p`1n)0z{t>cT@#stY)in0 z*>iW8guCD5f@07`LKmrb3O{jep9P#OqkPQaSpS#b)+$pyc#-dSPh$4^3h5yUb)Pr4 zA?_n5$&VrXG4dIWNjzlrs1TxeVYuJgvN7du1Fo_kqI?|8I6 zFhdP8Rync>k+l>miBmuE(#-|twRG)}hArFyQ|(YaCp7Myb_hDtRb$x$|Fjr!S{jbtJh3;?fGPAM#1>Hl@A89ZCg1`b^%jgx8Q#Yhnu|I zdYhD#*Uaz{FADb6(Nh773^+oR@riJ%24$U7KXCaIRk?AUj7Z&^a1*V#fQVM@L#$8S z2tMDg7l}Fg!1pxT>d?ECna10@isLC7-Y3jMe^AFH6$b z6b+MWlg=8PBQI;!$z0lBLZqALnd!Wy9-8z zi1YgIoT*#dmOLyyJC?u*);yNI!c!l~^Vzonv`blJtkRFaJtV&1)TG!Z7>>-IjO z^*CVeWQQNA&f~ek{zbftLJ&)(>mc^YcWsd)MJXMTA-fksfh})~9Nw)7f@`rRs07~D zMV+KR=ja1C?dw;qSy<)+I5f}AXVcB$9YASG&tVpicX$?>R#-f^i-@j}^|OUTTD5+v zHoNOPMk01o4v)3DxQEhleDrT-gh3y*u^g!6*uo7G(vUX#1Js0dfMaRt=m;KIGD*~S zbNkxT)uoGl03$<7Vg2@;opYdVo$tcBwUp?U^=LP* zk4xE}bESfBs%OH5ab|Y-jwD}SQ}qOB5#XyIxX^R7Cn*wE^DWWp(r_ao+~cd!px7Bp zu4HYeBk|dOVXZxLIRZK{?M#0TErk(fhSnew`>U)U1!^#(bPZ?%6x&qbMS9)hkPZ(& zpfs)v?3!1&eK_v&A(!-u{s|ov@&I;&dZA*Pp_>bYedfY1Ty)ljA-5+(GMD@Xo)*FF z-^d}dQr2$=OaQT`Pz|%EMXZJlr}?#L%rzxIR_soK<#}!QnHCOJdM{~Uh~SHt*j$mz%g)o1olA7IM^yE& zgI^B7h1~%rL-gnKc`E?+;umwQ^I!au{nC?h;!AewukcAeC5&7&K>ID-4zc#^P-=PQ zvOd)a4zIuU^j^jV%F-kA3xI0v5_*B~ylv`i!iXBZoo}Fnuz;e+Z??ieXAFYR>^C`h zY~s(?hyVa5glcWoJ6JTuvVJ>%LXdV(tr}+GMN*S005?rOBv+REEqqQ``*ln90r;#Y z!^T8|w$z$Ed8Wctn9CKcjEM#F{C0DRQ`;q#uDVo3*f@FPd#e(Z3sh3}4~%O#(xWuq zPraH_Qa@PxVgK{jzUNXtdaBXc4HP##`ERiq11kPm2|L3Fmu(nXg0RBz zHw^T6s(cAefZ`J%L>IGj_@NAhr(w`kd{>u!+JgXO524-N7BAiFvpV|7U-TJhO?;$~ zO1~_oTFi355KDs9Z1mvO}lW;)ciyte}; z)f`IARDJoid-3czX5CB!3gXZ-T-tkKN`IOL`S^qC`|qS`{O@b|WGZo0Rw8P-laGYH zY-QFiBG7)Kb;A7@``g%*lWkXiM!p@bamjL8x%Eu=;fm^qyEEmNk6nwrzauYOQD$*i z!>XK^?(ccOrR0@=SZq0e#tr}Z*WDfxLbv-XmJbtMP8iOkBIQmLovhtbhOcVF!xl66 zD?cb_SAHSrYK>Xi5+O4Vz-rhblKmF`y8DhHBh)f$8$q!e z!hOW8ulOGv$z7}Ou~hn=6SdS%*W$6WoS#X$*k6X9IOO2v^_w7=qj@A?si7?ddl(|k zbcz(OIsSZNIcFLO-S~X3m3lbYAG%XHw)+%ZHQG$k6;{E44>)4X%&WUS~&Dohb1R+TE*%k|*tc{m- zh2=E9jR6(^ty2(k!TGQjyuvbfvs`L1AYca)9ysi_BMIZAPF2*Xl~)N2-LCD+VRP;= zlV;Sj(@OMSGMf_R^_$(i0|db<3=^r$ToETBY_=Ua3fA@Gdwbzub}32+v!6YB9O>b` zL(R7PUcX6gw}xVKtSIG%eUVz^C_+0!OUE^DD`yT(pDHKeO8A=A-HVVQ-P{~BFGROj zLnTM0$#R}Lv0}Svmu}qDF-}98&TSKI!HeDp?%Z5)8 zks+p3*0_1>9Rm~~oC|juv^-lsdEq!8pPYsUOb96;AW#fS(18Gyb4}z0YbsrgsTxd? zp7E5i?U9ws^nxNH(bhH3yfvMy769#}xUny$(Yh+3T?9 zyKX(<=qLzlfyH8~_f5GnO{4uV)GFi#R?)z}of<$ShUlVp`U#2@9@OjA9g6kM13~Pb zgHHgRt8Fr+59{KNoJcF>T=uW_)-l)bz0_D2zg(PE{6GUp4~8r$!bAl*rVAqqCvUCu zz5MY&)sJ*T-_Ve+n#z_)_atg#Ia3CI<3@q0+EMSO-`u86KH+TO0nCLjT&71C8u6yB z6r#yhhU5gWfPP!GwvM&;B3U-wUwYSwJSc>UxJ6L#nuK-hP0yy^TmxY%NBK}CgW6-f zVlN5!^S7q8w<6RPD=e}l5&Rg)T^g7mLQ6Xgz&Xb}dC zR0c@DtKHsPDS*3vapP!~GgP{J2&x4fk-LR$U4KY;rw}|B0MiaChG>|+|BHLGrvrd) z9?kPK2q1mvAsRjJzv(2JBNY=Hw)rux`~X?~$H)EgLE5IH_u6P)>Xew|vB@VVB5yN4 zjaRrVq|ky3hoYs0MZxFZg+xNoj!N53 zw(}b8%W(hOoe)aD&9ZO5g9+xUu;#^i#k1ObwtdEzN zActipgyt~kJ(-s|-I#1;+^mXN&MCrqln0_4ecNU&t($d#d6sm&tpWmfH}eY|EGkAW z-4>-b@$ambQ^tX>AodMd?3j>&n&w|K=di`;b^PnTUI>QBBS-p!tf|zX-FC4=z0NS|LZ4L+!`-O zVCxg6WWjMJ{H2-G*C2rr3u~j0;Ip^-d2@){JF7u+3y2~#QWvjS^zB<{Qx=1nU&%}G z=2udd4A=aIq+)&%(YD@F=#fGq8eg{Nc+FNt04XhvK3K)L;k|7stC4 zUAL=haz7#Ag4#tkQA`;Ec-^?>IPeO$H>Axb^Nu=O3$ypWk@!(QHnz>MsZ#Qp3XKt4 zpuPaz}&pN-~xBt<0L2HDkY2;zBA>GD-|pl zU4DMf$f#E^z|4+J>e3yHd!B8W7B)8*Da&YXZC#GpYCxPy{_x>yP*4rtHgw825Uu*~ zVM$s*f&947cL=2>()Yb(#dj4cRD4U6c2%LC{(h!fDlsiFv3~MLNcqeul|6h{nt-LW z6pu3$s+Vk;eU?*wCAGU9t+0sM~M`_j#n#6DSlO+QQaL>W^KL{-flD^3cgTiA0eI}&UWj%v zGtfs*@}76zX1U1Ba%LAeE$YTgKKDnD4$~-IuG0Hc;j&+6 z8^Jg*X4>$s?_`M0?KExjRp}nier}S=>5ZvKj@s77d{gdZhV@Z$-3KU@yJHjt4?U1M z$@%(K$I0o8{D<}^6(s5qba%+p#*c}l!YW=fNU6JTY8nDEBuEn+vbebDW5u|}4~Y$P zk7df@AI0qLJ^MjeaK@K&Tvg`mB+62Wcy@@J_v`OYx{>L^w7>80=e?6r-(na+`j%_3 zK^gLI2+*hL+IIwd9e|bJB?K1APA@$Z7`(r3Okk*>KD_#fy3M)A?dt0KJ}IdUjX4L@ zDKg}zeYpC`4^9&Wy_x|FyNu*U9TohWAIJ8u=#mYA;@+*c^82MHvHN6Qh4ecvyI^?1 zD$2^NZe{l>;PzL2;|Ydc6SOZ^`$@lshldMO+H!MqDF)skNIVan&$FY`bixPV$er@g zXjG z8BTSPN7Mo@g@9Hi=M}kkeb1V5ybG&6ir~vtG*9;$dej0;GA*spXA;WXiq|60t>nTV#ZK%{4ALA9IsuE_lO zFP~J#eY|FShlc)w>;eM=jgs^GSK>*XW|dQMdNK|U4)jn)&pD8*IyWxP&vS{3i$f>? zt@sB^PbB)d?lv^M^tN>hbQV^&=gs)NAu9Ph>LCP-bO+4!8AB73xB>rJ1r-%3M_nlu z8;v0q>d=t6)2^3~PncQ&(XK01?F!(Q8zckzyT#J7&@YcLLVQTz*MA&Tl)H$4z_A_| z9&2ms6DLnz)zuAwE-Od9GuwSA?QlHts5OpCUXBlX3xxP`??LSqtWQ;(k^u)VN0J% z5IY7-ojCzx^{e+r@iGr=ta8?09ns8OBIF?%S0aq1>@CG8(P>J?X#qF!s{+gg031n% zAlCp5(gcGm`Sr20s%eM6$q$L|RcSQ*{>=kM^aTZlU{KpI6Y?}QO(+M<^CQ5TsZrOR z&Yrc^5cy82pWj)Z*49o%zi8KPN=!@B1=jDx+)-nt*?>rvfyeAOE(IBWx(5=blHR<3 zoC28fU-yaIm7nhYC8+Ah1z0Nm5ib|t%Nqd53qYT<1cZG01qxdcAP`EWE(gxIOUBi= zwuY5-4iHH4*Fob&k&ew$x)UW1_ZJ#oA1mt83|y;YR#NgO?_9Wi`Jp#ub93_#L&wY8 zn+~e1tX$jdLcAZ^2ed!+jLErujq1)` zE~1$-hw?qixYmUk$Fq!%DiVE-H-Po8j~NtVDPW7dv!^DC1F6y}Xxy&Z(&=q)U%%)z zGCce>))~1ILP`+9z`U;$qlT79mUnq^1=xMrIhPUkWc**$zb>TFxVvo zB&AnjF-cp#NER;#qx2u;1S7$y)XZS&ULPDgz z1jBA-xZ2#t#?#KwY@YGNobc6p2M-S!XIxZtv;ZOv@x*4G&>mYotvVp%%y2N%{(OMp zj?!OyJSbJFbRh+YMPj|BQ3dcd4=SYVt{TzQ<$L#20q4X|zJXMMyGrMl zXn97c&%=T0BQZe#53P)(1a`Lf{!j>Yg0^`E1he26T`_*ZqBkb_3Q^{^dJ9;+jy#pj2I(C?;iuy_Q7sTVCwT zW00KI1FOL(Zyz7}ZbgQVkEw7V9hLKPNZ0?(2ut^O1Czl0oDrp?_qlP>BF_3ko=$G) zZ>UOhmbjHJ+U<_c`Cv|>6zJR09_R*~jEJ=-IV}I_pNoJ}na_cDEvTFsWB!+#*?(r4 z8yfaTU*ejoFdxJf-F!{{!{}CDPFX-P*_RX4;+#HZXE$%#CBeQA6i=^z`{utX0fY!6 z{8VLVZ$NTFOgNfNNQu#0EViX8I^fwe9kJLul_1Dc?)6Z>YNPdriHXVGwwkD*<-y|Q z7uaewAj1$Z2*dz%&L1zm{_*oE;plL)^I2sK`Vwz5(CC4|Tyj7_z!8(obsaHL)<;O8 zYb+zk(v*rnYoU7}?EHQz>+S6=di1p!Gucu8kvDzpjfVNf#e1ngy1QfKE?ltFH!$$9 z7{K8QtBsz7%PA?ne*T=!!NujqPjuaxqldX)>qI!p|5fpr3SPxxLnpn@o>xiJ8n$)f z24-jk*Wix4e)sW;NaS_7OP4-5j+j(vV2{M)=r`EQJ)j3yV#jYF=BrQdLtsTNqcd6rcW(b<7i{hJi936jP|0*RvU@XPh-eL5ILSwTJeZA-_9Q^JR+RkJ z7(P~#&1t;?k`B<&i&`Krb=TTD5)|ews0UALBwxIE(KIzBW?%gNgouc)a?0`P>FLl$ zdwWk$Zt!0g&U8SlAV%+V%umNM9?drq33{K4Dk`$hM+LnU0#6)R)91KNa(IHczrW>; z{gE`nw#%S;Yt;YfwXCz4R~c4LS$WX}qw{I-I~=bA23e^h(xll1XbEWSaT~)*;n?HD6r1u8H(UIY#{i`hw;2YXOXnHJeR!Kt z3``1qQ!AJpT%fhD4)6)RFTg4ad``6`uN=oI)fb5zm^Awy18seK*3kaRlkOA3!uN%d zetu@`931>-4O5NBcNtKnM$%>EnwAcwH|N27;`1ls=r+WX@4gDGMr_9yT>YoxJ)U2b z4gX+@##1H~tIu5f$@Rs&!i>T~Sg*)4Fv&rnZwesPWC!t_IQ?0k-c)JvCmx6{(!`rP zUn{7po;OHQ{;a@x@>bKhj4p5S5XHQzhMcleW4+I}zf(*9F`|XzTS>`L;zBu?pYk8r zjeToh>u4R!DPrq55o-)k?Lu$1=k}rrR0~7yTLMI$>m7du5)c$>SX+B?lkbEwe9LvX z=J)(^#KAnNqOGw@P_NFz9l6gkzVazCpp%+kza8HE}1C!t;QhG=26 zl7~=ooAK#N6JZqcB2?gqq>Wbf2V&{WK-}WeA4401m;?Co@pURPJ~p7dXREI zkVr*c1hp08RMtNQgbdi9qNF-r4X3xI-nWL z?68Yj1>X?OKr3j2RpW5C^VrxJA{&%F=^6?dXaYk2kLA&o9O#C`TUrEyLYt?>KIpT; zdVw;dSX|hi@IMb6J5h zkM`-KKNk-6L0AJrOr5-C^p8i+`^qxEu)qz9y*~g*qa8bM&@Z4rt5AVMjnAmu-lg`sYowg-#!bP&|;c>8^G#A zOp5vlsn+51n-i6cj(}Y*gv5|zqbLL9~X@QIi+ih z-v@oByu7@Bznmqw+-X@DGc$8!W8*b&K{<8xDA4n!=4S5j#s=W)nV6Z6>~Gcx9~sdd z0$nz?Sru=zE996>AO_f!09b}C<~*>JClHpUx#b@}ezfZ1z$?vR(`0y;m7eUS zff@7~gp$hHW6P$%Kj8?~OmA2kMoxJcn`%4#gDKm@I=P zqH&0-2@;qTlK0Ml0{yS}Lny%>hT2$h-8(HTieLa07t1XbhjAXN1gu3j@7s6 z>D;~Lr9ayX8g42KnvehaxHj@%FG~Dt_koOzSYNbx7W}gk{9+(<^O}K9ftKCh{{~TC B{9^zB literal 26738 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 S02m(vfoba9Dg4Xk@BalS From 01224f0e89b54168a7d6736890efc3d6c721b70b Mon Sep 17 00:00:00 2001 From: Anewbe Date: Fri, 10 Jun 2016 21:09:21 -0500 Subject: [PATCH 23/50] Allows anyone who can loadout a large webbing select any large webbing --- .../preference_setup/loadout/loadout_accessories.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/client/preference_setup/loadout/loadout_accessories.dm b/code/modules/client/preference_setup/loadout/loadout_accessories.dm index 43c99c300be..4a79d5c26b4 100644 --- a/code/modules/client/preference_setup/loadout/loadout_accessories.dm +++ b/code/modules/client/preference_setup/loadout/loadout_accessories.dm @@ -176,32 +176,32 @@ /datum/gear/accessory/brown_vest display_name = "webbing, engineering" path = /obj/item/clothing/accessory/storage/brown_vest - allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/black_vest display_name = "webbing, security" path = /obj/item/clothing/accessory/storage/black_vest - allowed_roles = list("Security Officer","Head of Security","Warden") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/white_vest display_name = "webbing, medical" path = /obj/item/clothing/accessory/storage/white_vest - allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/brown_drop_pouches display_name = "drop pouches, engineering" path = /obj/item/clothing/accessory/storage/brown_drop_pouches - allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/black_drop_pouches display_name = "drop pouches, security" path = /obj/item/clothing/accessory/storage/black_drop_pouches - allowed_roles = list("Security Officer","Head of Security","Warden") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/white_drop_pouches display_name = "drop pouches, medical" path = /obj/item/clothing/accessory/storage/white_drop_pouches - allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor") + allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor") /datum/gear/accessory/webbing display_name = "webbing, simple" From c182da0fe16f64373a4f47079ecbe8e757798061 Mon Sep 17 00:00:00 2001 From: Anewbe Date: Fri, 10 Jun 2016 22:04:07 -0500 Subject: [PATCH 24/50] Adds fine smokables to the loadout --- .../preference_setup/loadout/loadout_smoking.dm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/code/modules/client/preference_setup/loadout/loadout_smoking.dm b/code/modules/client/preference_setup/loadout/loadout_smoking.dm index f54279066d4..2599cf1f354 100644 --- a/code/modules/client/preference_setup/loadout/loadout_smoking.dm +++ b/code/modules/client/preference_setup/loadout/loadout_smoking.dm @@ -17,3 +17,19 @@ /datum/gear/ashtray display_name = "ashtray, plastic" path = /obj/item/weapon/material/ashtray/plastic + +/datum/gear/cigar + display_name = "cigar" + path = /obj/item/clothing/mask/smokable/cigarette/cigar + +/datum/gear/cigarettes + display_name = "cigarette selection" + path = /obj/item/weapon/storage/fancy/cigarettes + +/datum/gear/cigarettes/New() + ..() + var/list/cigarettes = list() + for(var/cigarette in (typesof(/obj/item/weapon/storage/fancy/cigarettes) - typesof(/obj/item/weapon/storage/fancy/cigarettes/killthroat))) + var/obj/item/weapon/storage/fancy/cigarettes/cigarette_brand = cigarette + cigarettes[initial(cigarette_brand.name)] = cigarette_brand + gear_tweaks += new/datum/gear_tweak/path(sortAssoc(cigarettes)) \ No newline at end of file From 73bccabfbb3b9acd5ee2d4d8573599d24b626072 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sat, 11 Jun 2016 16:28:32 +0100 Subject: [PATCH 25/50] Makes everything produced in Robotics 25% cheaper to produce --- code/modules/research/mechfab_designs.dm | 90 ++++++++++++------------ code/modules/research/prosfab_designs.dm | 54 +++++++------- 2 files changed, 72 insertions(+), 72 deletions(-) diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index b5c35ea0e0c..7ebdc5fbb69 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -11,7 +11,7 @@ id = "ripley_chassis" build_path = /obj/item/mecha_parts/chassis/ripley time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 15000) /datum/design/item/mechfab/ripley/chassis/firefighter name = "Firefigher chassis" @@ -23,35 +23,35 @@ id = "ripley_torso" build_path = /obj/item/mecha_parts/part/ripley_torso time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 40000, "glass" = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 30000, "glass" = 11250) /datum/design/item/mechfab/ripley/left_arm name = "Ripley left arm" id = "ripley_left_arm" build_path = /obj/item/mecha_parts/part/ripley_left_arm time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/ripley/right_arm name = "Ripley right arm" id = "ripley_right_arm" build_path = /obj/item/mecha_parts/part/ripley_right_arm time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/ripley/left_leg name = "Ripley left leg" id = "ripley_left_leg" build_path = /obj/item/mecha_parts/part/ripley_left_leg time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/ripley/right_leg name = "Ripley right leg" id = "ripley_right_leg" build_path = /obj/item/mecha_parts/part/ripley_right_leg time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/odysseus category = "Odysseus" @@ -61,49 +61,49 @@ id = "odysseus_chassis" build_path = /obj/item/mecha_parts/chassis/odysseus time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 15000) /datum/design/item/mechfab/odysseus/torso name = "Odysseus torso" id = "odysseus_torso" build_path = /obj/item/mecha_parts/part/odysseus_torso time = 18 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/odysseus/head name = "Odysseus head" id = "odysseus_head" build_path = /obj/item/mecha_parts/part/odysseus_head time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 1500, "glass" = 7500) /datum/design/item/mechfab/odysseus/left_arm name = "Odysseus left arm" id = "odysseus_left_arm" build_path = /obj/item/mecha_parts/part/odysseus_left_arm time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/mechfab/odysseus/right_arm name = "Odysseus right arm" id = "odysseus_right_arm" build_path = /obj/item/mecha_parts/part/odysseus_right_arm time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/mechfab/odysseus/left_leg name = "Odysseus left leg" id = "odysseus_left_leg" build_path = /obj/item/mecha_parts/part/odysseus_left_leg time = 13 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/mechfab/odysseus/right_leg name = "Odysseus right leg" id = "odysseus_right_leg" build_path = /obj/item/mecha_parts/part/odysseus_right_leg time = 13 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/mechfab/gygax category = "Gygax" @@ -113,56 +113,56 @@ id = "gygax_chassis" build_path = /obj/item/mecha_parts/chassis/gygax time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/gygax/torso name = "Gygax torso" id = "gygax_torso" build_path = /obj/item/mecha_parts/part/gygax_torso time = 30 - materials = list(DEFAULT_WALL_MATERIAL = 50000, "glass" = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 37500, "glass" = 15000) /datum/design/item/mechfab/gygax/head name = "Gygax head" id = "gygax_head" build_path = /obj/item/mecha_parts/part/gygax_head time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 20000, "glass" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 15000, "glass" = 7500) /datum/design/item/mechfab/gygax/left_arm name = "Gygax left arm" id = "gygax_left_arm" build_path = /obj/item/mecha_parts/part/gygax_left_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/gygax/right_arm name = "Gygax right arm" id = "gygax_right_arm" build_path = /obj/item/mecha_parts/part/gygax_right_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 30000) + materials = list(DEFAULT_WALL_MATERIAL = 22500) /datum/design/item/mechfab/gygax/left_leg name = "Gygax left leg" id = "gygax_left_leg" build_path = /obj/item/mecha_parts/part/gygax_left_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000) + materials = list(DEFAULT_WALL_MATERIAL = 26250) /datum/design/item/mechfab/gygax/right_leg name = "Gygax right leg" id = "gygax_right_leg" build_path = /obj/item/mecha_parts/part/gygax_right_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000) + materials = list(DEFAULT_WALL_MATERIAL = 26250) /datum/design/item/mechfab/gygax/armour name = "Gygax armour plates" id = "gygax_armour" build_path = /obj/item/mecha_parts/part/gygax_armour time = 60 - materials = list(DEFAULT_WALL_MATERIAL = 50000, "diamond" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 37500, "diamond" = 7500) /datum/design/item/mechfab/durand category = "Durand" @@ -172,62 +172,62 @@ id = "durand_chassis" build_path = /obj/item/mecha_parts/chassis/durand time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/mechfab/durand/torso name = "Durand torso" id = "durand_torso" build_path = /obj/item/mecha_parts/part/durand_torso time = 30 - materials = list(DEFAULT_WALL_MATERIAL = 55000, "glass" = 20000, "silver" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 41250, "glass" = 15000, "silver" = 7500) /datum/design/item/mechfab/durand/head name = "Durand head" id = "durand_head" build_path = /obj/item/mecha_parts/part/durand_head time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 25000, "glass" = 10000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 18750, "glass" = 7500, "silver" = 2250) /datum/design/item/mechfab/durand/left_arm name = "Durand left arm" id = "durand_left_arm" build_path = /obj/item/mecha_parts/part/durand_left_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 26250, "silver" = 2250) /datum/design/item/mechfab/durand/right_arm name = "Durand right arm" id = "durand_right_arm" build_path = /obj/item/mecha_parts/part/durand_right_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 26250, "silver" = 2250) /datum/design/item/mechfab/durand/left_leg name = "Durand left leg" id = "durand_left_leg" build_path = /obj/item/mecha_parts/part/durand_left_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 30000, "silver" = 2250) /datum/design/item/mechfab/durand/right_leg name = "Durand right leg" id = "durand_right_leg" build_path = /obj/item/mecha_parts/part/durand_right_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000) + materials = list(DEFAULT_WALL_MATERIAL = 30000, "silver" = 2250) /datum/design/item/mechfab/durand/armour name = "Durand armour plates" id = "durand_armour" build_path = /obj/item/mecha_parts/part/durand_armour time = 60 - materials = list(DEFAULT_WALL_MATERIAL = 50000, "uranium" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 37500, "uranium" = 7500) /datum/design/item/mecha build_type = MECHFAB category = "Exosuit Equipment" time = 10 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/mecha/AssembleDesignDesc() if(!desc) @@ -237,7 +237,7 @@ name = "Exosuit tracking beacon" id = "mech_tracker" time = 5 - materials = list(DEFAULT_WALL_MATERIAL = 500) + materials = list(DEFAULT_WALL_MATERIAL = 375) build_path = /obj/item/mecha_parts/mecha_tracking /datum/design/item/mecha/hydraulic_clamp @@ -264,20 +264,20 @@ name = "Flare launcher" id = "mecha_flare_gun" build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flare - materials = list(DEFAULT_WALL_MATERIAL = 12500) + materials = list(DEFAULT_WALL_MATERIAL = 9375) /datum/design/item/mecha/sleeper name = "Sleeper" id = "mech_sleeper" build_path = /obj/item/mecha_parts/mecha_equipment/tool/sleeper - materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 3750, "glass" = 7500) /datum/design/item/mecha/syringe_gun name = "Syringe gun" id = "mech_syringe_gun" build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 2250, "glass" = 1500) /* /datum/design/item/mecha/syringe_gun @@ -291,7 +291,7 @@ name = "Passenger compartment" id = "mech_passenger" build_path = /obj/item/mecha_parts/mecha_equipment/tool/passenger - materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 3750, "glass" = 3750) //obj/item/mecha_parts/mecha_equipment/repair_droid, //obj/item/mecha_parts/mecha_equipment/jetpack, //TODO MECHA JETPACK SPRITE MISSING @@ -351,7 +351,7 @@ desc = "A weapon that violates the Geneva Convention at 6 rounds per minute." id = "clusterbang_launcher" req_tech = list(TECH_COMBAT= 5, TECH_MATERIAL = 5, TECH_ILLEGAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 6000, "uranium" = 6000) + materials = list(DEFAULT_WALL_MATERIAL = 15000, "gold" = 4500, "uranium" = 4500) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited // *** Nonweapon modules @@ -374,7 +374,7 @@ desc = "An exosuit-mounted rapid construction device." id = "mech_rcd" time = 120 - materials = list(DEFAULT_WALL_MATERIAL = 30000, "phoron" = 25000, "silver" = 20000, "gold" = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 22500, "phoron" = 18750, "silver" = 15000, "gold" = 15000) req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER = 4, TECH_ENGINEERING = 4) build_path = /obj/item/mecha_parts/mecha_equipment/tool/rcd @@ -390,7 +390,7 @@ desc = "Automated repair droid, exosuits' best companion. BEEP BOOP" id = "mech_repair_droid" req_tech = list(TECH_MAGNET = 3, TECH_DATA = 3, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 1000, "silver" = 2000, "glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 750, "silver" = 1500, "glass" = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid /datum/design/item/mecha/phoron_generator @@ -398,13 +398,13 @@ id = "mech_phoron_generator" req_tech = list(TECH_PHORON = 2, TECH_POWER= 2, TECH_ENGINEERING = 2) build_path = /obj/item/mecha_parts/mecha_equipment/generator - materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "silver" = 375, "glass" = 750) /datum/design/item/mecha/energy_relay name = "Energy relay" id = "mech_energy_relay" req_tech = list(TECH_MAGNET = 4, TECH_POWER = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 2000, "silver" = 3000, "glass" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "gold" = 1500, "silver" = 2250, "glass" = 1500) build_path = /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay /datum/design/item/mecha/ccw_armor @@ -412,14 +412,14 @@ desc = "Exosuit close-combat armor booster." id = "mech_ccw_armor" req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 4) - materials = list(DEFAULT_WALL_MATERIAL = 20000, "silver" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 11250, "silver" = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster /datum/design/item/mecha/proj_armor desc = "Exosuit projectile armor booster." id = "mech_proj_armor" req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 15000, "gold" = 3750) build_path = /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster /datum/design/item/mecha/diamond_drill @@ -427,7 +427,7 @@ desc = "A diamond version of the exosuit drill. It's harder, better, faster, stronger." id = "mech_diamond_drill" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "diamond" = 6500) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "diamond" = 4875) build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill /datum/design/item/mecha/generator_nuclear @@ -435,7 +435,7 @@ desc = "Exosuit-held nuclear reactor. Converts uranium and everyone's health to energy." id = "mech_generator_nuclear" req_tech = list(TECH_POWER= 3, TECH_ENGINEERING = 3, TECH_MATERIAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "silver" = 375, "glass" = 750) build_path = /obj/item/mecha_parts/mecha_equipment/generator/nuclear /datum/design/item/synthetic_flash @@ -443,6 +443,6 @@ id = "sflash" req_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 2) build_type = MECHFAB - materials = list(DEFAULT_WALL_MATERIAL = 750, "glass" = 750) + materials = list(DEFAULT_WALL_MATERIAL = 562, "glass" = 562) build_path = /obj/item/device/flash/synthetic category = "Misc" \ No newline at end of file diff --git a/code/modules/research/prosfab_designs.dm b/code/modules/research/prosfab_designs.dm index 8c0670e7066..9629bb31f10 100644 --- a/code/modules/research/prosfab_designs.dm +++ b/code/modules/research/prosfab_designs.dm @@ -49,7 +49,7 @@ //////////////////// Prosthetics //////////////////// /datum/design/item/prosfab/pros/torso time = 35 - materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 10000, "plasteel" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 45000, "glass" = 7500, "plasteel" = 1500) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_DATA = 3) //Saving the values just in case var/gender = MALE @@ -72,7 +72,7 @@ id = "pros_head" build_path = /obj/item/organ/external/head time = 30 - materials = list(DEFAULT_WALL_MATERIAL = 25000, "glass" = 5000, "plasteel" = 1000) + materials = list(DEFAULT_WALL_MATERIAL = 18750, "glass" = 3750, "plasteel" = 750) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_DATA = 3) //Saving the values just in case /datum/design/item/prosfab/pros/l_arm @@ -80,63 +80,63 @@ id = "pros_l_arm" build_path = /obj/item/organ/external/arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/pros/l_hand name = "Prosthetic left hand" id = "pros_l_hand" build_path = /obj/item/organ/external/hand time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/l_leg name = "Prosthetic left leg" id = "pros_l_leg" build_path = /obj/item/organ/external/leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/prosfab/pros/l_foot name = "Prosthetic left foot" id = "pros_l_foot" build_path = /obj/item/organ/external/foot time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/r_arm name = "Prosthetic right arm" id = "pros_r_arm" build_path = /obj/item/organ/external/arm/right time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/pros/r_hand name = "Prosthetic right hand" id = "pros_r_hand" build_path = /obj/item/organ/external/hand/right time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/r_leg name = "Prosthetic right leg" id = "pros_r_leg" build_path = /obj/item/organ/external/leg/right time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/prosfab/pros/r_foot name = "Prosthetic right foot" id = "pros_r_foot" build_path = /obj/item/organ/external/foot/right time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/pros/cell name = "Prosthetic powercell" id = "pros_cell" build_path = /obj/item/organ/internal/cell time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 4000, "plasteel" = 2000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "glass" = 3000, "plasteel" = 1500) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2) /datum/design/item/prosfab/pros/eyes @@ -144,63 +144,63 @@ id = "pros_eyes" build_path = /obj/item/organ/internal/eyes/robot time = 15 - materials = list(DEFAULT_WALL_MATERIAL = 7500, "glass" = 7500) + materials = list(DEFAULT_WALL_MATERIAL = 5625, "glass" = 5625) // req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2) //////////////////// Cyborg Parts //////////////////// /datum/design/item/prosfab/cyborg category = "Cyborg Parts" time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 3750) /datum/design/item/prosfab/cyborg/exoskeleton name = "Robot exoskeleton" id = "robot_exoskeleton" build_path = /obj/item/robot_parts/robot_suit time = 50 - materials = list(DEFAULT_WALL_MATERIAL = 50000) + materials = list(DEFAULT_WALL_MATERIAL = 37500) /datum/design/item/prosfab/cyborg/torso name = "Robot torso" id = "robot_torso" build_path = /obj/item/robot_parts/chest time = 35 - materials = list(DEFAULT_WALL_MATERIAL = 40000) + materials = list(DEFAULT_WALL_MATERIAL = 30000) /datum/design/item/prosfab/cyborg/head name = "Robot head" id = "robot_head" build_path = /obj/item/robot_parts/head time = 35 - materials = list(DEFAULT_WALL_MATERIAL = 25000) + materials = list(DEFAULT_WALL_MATERIAL = 18750) /datum/design/item/prosfab/cyborg/l_arm name = "Robot left arm" id = "robot_l_arm" build_path = /obj/item/robot_parts/l_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/cyborg/r_arm name = "Robot right arm" id = "robot_r_arm" build_path = /obj/item/robot_parts/r_arm time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 18000) + materials = list(DEFAULT_WALL_MATERIAL = 13500) /datum/design/item/prosfab/cyborg/l_leg name = "Robot left leg" id = "robot_l_leg" build_path = /obj/item/robot_parts/l_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) /datum/design/item/prosfab/cyborg/r_leg name = "Robot right leg" id = "robot_r_leg" build_path = /obj/item/robot_parts/r_leg time = 20 - materials = list(DEFAULT_WALL_MATERIAL = 15000) + materials = list(DEFAULT_WALL_MATERIAL = 11250) //////////////////// Cyborg Internals //////////////////// @@ -208,7 +208,7 @@ category = "Cyborg Internals" build_type = PROSFAB time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/cyborg/component/binary_communication_device name = "Binary communication device" @@ -246,7 +246,7 @@ category = "Cyborg Modules" build_type = PROSFAB time = 12 - materials = list(DEFAULT_WALL_MATERIAL = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500) /datum/design/item/prosfab/robot_upgrade/rename name = "Rename module" @@ -264,28 +264,28 @@ name = "Emergency restart module" desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online." id = "borg_restart_module" - materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 45000, "glass" = 3750) build_path = /obj/item/borg/upgrade/restart /datum/design/item/prosfab/robot_upgrade/vtec name = "VTEC module" desc = "Used to kick in a robot's VTEC systems, increasing their speed." id = "borg_vtec_module" - materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 5000) + materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 4500, "gold" = 3750) build_path = /obj/item/borg/upgrade/vtec /datum/design/item/prosfab/robot_upgrade/tasercooler name = "Rapid taser cooling module" desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate." id = "borg_taser_module" - materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 2000, "diamond" = 500) + materials = list(DEFAULT_WALL_MATERIAL = 60000, "glass" = 4500, "gold" = 1500, "diamond" = 375) build_path = /obj/item/borg/upgrade/tasercooler /datum/design/item/prosfab/robot_upgrade/jetpack name = "Jetpack module" desc = "A carbon dioxide jetpack suitable for low-gravity mining operations." id = "borg_jetpack_module" - materials = list(DEFAULT_WALL_MATERIAL = 10000, "phoron" = 15000, "uranium" = 20000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "phoron" = 11250, "uranium" = 15000) build_path = /obj/item/borg/upgrade/jetpack /datum/design/item/prosfab/robot_upgrade/syndicate @@ -293,5 +293,5 @@ desc = "Allows for the construction of lethal upgrades for cyborgs." id = "borg_syndicate_module" req_tech = list(TECH_COMBAT = 4, TECH_ILLEGAL = 3) - materials = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 15000, "diamond" = 10000) + materials = list(DEFAULT_WALL_MATERIAL = 7500, "glass" = 11250, "diamond" = 7500) build_path = /obj/item/borg/upgrade/syndicate \ No newline at end of file From 94745d92105d7921d3b77aa3a13eef127d3ff4f9 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sat, 11 Jun 2016 16:59:45 +0100 Subject: [PATCH 26/50] Adds changelog --- html/changelogs/Yoshax-Roboticsstuff.yml | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 html/changelogs/Yoshax-Roboticsstuff.yml diff --git a/html/changelogs/Yoshax-Roboticsstuff.yml b/html/changelogs/Yoshax-Roboticsstuff.yml new file mode 100644 index 00000000000..8a3033a9563 --- /dev/null +++ b/html/changelogs/Yoshax-Roboticsstuff.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Yoshax + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Everything produced in Robotics is now 25% cheaper to produce." From 6984008bca620cf00a9a68766fd5cbb970433015 Mon Sep 17 00:00:00 2001 From: Datraen Date: Sat, 11 Jun 2016 12:13:40 -0400 Subject: [PATCH 27/50] Splits supplypacks.dm into categorized files, adds subtyping. --- code/datums/supplypacks.dm | 2161 ----------------------- code/datums/supplypacks/atmospherics.dm | 104 ++ code/datums/supplypacks/contraband.dm | 44 + code/datums/supplypacks/engineering.dm | 303 ++++ code/datums/supplypacks/hospitality.dm | 72 + code/datums/supplypacks/hydroponics.dm | 161 ++ code/datums/supplypacks/medical.dm | 313 ++++ code/datums/supplypacks/misc.dm | 268 +++ code/datums/supplypacks/operations.dm | 75 + code/datums/supplypacks/science.dm | 57 + code/datums/supplypacks/security.dm | 526 ++++++ code/datums/supplypacks/supply.dm | 123 ++ code/datums/supplypacks/supplypacks.dm | 37 + polaris.dme | 13 +- 14 files changed, 2095 insertions(+), 2162 deletions(-) delete mode 100644 code/datums/supplypacks.dm create mode 100644 code/datums/supplypacks/atmospherics.dm create mode 100644 code/datums/supplypacks/contraband.dm create mode 100644 code/datums/supplypacks/engineering.dm create mode 100644 code/datums/supplypacks/hospitality.dm create mode 100644 code/datums/supplypacks/hydroponics.dm create mode 100644 code/datums/supplypacks/medical.dm create mode 100644 code/datums/supplypacks/misc.dm create mode 100644 code/datums/supplypacks/operations.dm create mode 100644 code/datums/supplypacks/science.dm create mode 100644 code/datums/supplypacks/security.dm create mode 100644 code/datums/supplypacks/supply.dm create mode 100644 code/datums/supplypacks/supplypacks.dm diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm deleted file mode 100644 index d6843d95ad0..00000000000 --- a/code/datums/supplypacks.dm +++ /dev/null @@ -1,2161 +0,0 @@ -//SUPPLY PACKS -//NOTE: only secure crate types use the access var (and are lockable) -//NOTE: hidden packs only show up when the computer has been hacked. -//ANOTER NOTE: Contraband is obtainable through modified supplycomp circuitboards. -//BIG NOTE: Don't add living things to crates, that's bad, it will break the shuttle. -//NEW NOTE: Do NOT set the price of any crates below 7 points. Doing so allows infinite points. - -var/list/all_supply_groups = list("Operations","Security","Hospitality","Engineering","Atmospherics","Medical","Reagents","Reagent Cartridges","Science","Hydroponics", "Supply", "Miscellaneous") - -/datum/supply_packs - var/name = null - var/list/contains = list() - var/manifest = "" - var/amount = null - var/cost = null - var/containertype = null - var/containername = null - var/access = null - var/hidden = 0 - var/contraband = 0 - var/group = "Operations" - -/datum/supply_packs/New() - manifest += "

" - -/datum/supply_packs/specialops - name = "Special Ops supplies" - contains = list( - /obj/item/weapon/storage/box/emps, - /obj/item/weapon/grenade/smokebomb = 3, - /obj/item/weapon/pen/reagent/paralysis, - /obj/item/weapon/grenade/chem_grenade/incendiary - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Special Ops crate" - group = "Security" - hidden = 1 - -/datum/supply_packs/food - name = "Kitchen supply crate" - contains = list( - /obj/item/weapon/reagent_containers/food/condiment/flour = 6, - /obj/item/weapon/reagent_containers/food/drinks/milk = 3, - /obj/item/weapon/reagent_containers/food/drinks/soymilk = 2, - /obj/item/weapon/storage/fancy/egg_box = 2, - /obj/item/weapon/reagent_containers/food/snacks/tofu = 4, - /obj/item/weapon/reagent_containers/food/snacks/meat = 4 - ) - cost = 10 - containertype = /obj/structure/closet/crate/freezer - containername = "Food crate" - group = "Supply" - -/datum/supply_packs/monkey - name = "Monkey crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes) - cost = 20 - containertype = /obj/structure/closet/crate/freezer - containername = "Monkey crate" - group = "Hydroponics" - -/datum/supply_packs/farwa - name = "Farwa crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes/farwacubes) - cost = 30 - containertype = /obj/structure/closet/crate/freezer - containername = "Farwa crate" - group = "Hydroponics" - -/datum/supply_packs/skrell - name = "Neaera crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes/neaeracubes) - cost = 30 - containertype = /obj/structure/closet/crate/freezer - containername = "Neaera crate" - group = "Hydroponics" - -/datum/supply_packs/stok - name = "Stok crate" - contains = list (/obj/item/weapon/storage/box/monkeycubes/stokcubes) - cost = 30 - containertype = /obj/structure/closet/crate/freezer - containername = "Stok crate" - group = "Hydroponics" - -/datum/supply_packs/beanbagammo - name = "Beanbag shells" - contains = list(/obj/item/weapon/storage/box/beanbags = 3) - cost = 30 - containertype = /obj/structure/closet/crate - containername = "Beanbag shells" - group = "Security" - -/datum/supply_packs/toner - name = "Toner cartridges" - contains = list(/obj/item/device/toner = 6) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Toner cartridges" - group = "Supply" - -/datum/supply_packs/party - name = "Party equipment" - contains = list( - /obj/item/weapon/storage/box/mixedglasses, - /obj/item/weapon/storage/box/mixedglasses, - /obj/item/weapon/storage/box/glasses/square, - /obj/item/weapon/reagent_containers/food/drinks/shaker, - /obj/item/weapon/reagent_containers/food/drinks/flask/barflask, - /obj/item/weapon/reagent_containers/food/drinks/bottle/patron, - /obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager, - /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey, - /obj/item/weapon/storage/fancy/cigarettes/dromedaryco, - /obj/item/weapon/lipstick/random, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 2, - /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 4, - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Party equipment" - group = "Hospitality" - -/datum/supply_packs/barsupplies - name = "Bar supplies" - contains = list( - /obj/item/weapon/storage/box/glasses/cocktail, - /obj/item/weapon/storage/box/glasses/rocks, - /obj/item/weapon/storage/box/glasses/square, - /obj/item/weapon/storage/box/glasses/pint, - /obj/item/weapon/storage/box/glasses/wine, - /obj/item/weapon/storage/box/glasses/shake, - /obj/item/weapon/storage/box/glasses/shot, - /obj/item/weapon/storage/box/glasses/mug, - /obj/item/weapon/reagent_containers/food/drinks/shaker, - /obj/item/weapon/storage/box/glass_extras/straws, - /obj/item/weapon/storage/box/glass_extras/sticks - ) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "crate of bar supplies" - group = "Hospitality" - -/datum/supply_packs/lasertag - name = "Lasertag equipment" - contains = list( - /obj/item/weapon/gun/energy/lasertag/red, - /obj/item/clothing/suit/redtag, - /obj/item/weapon/gun/energy/lasertag/blue, - /obj/item/clothing/suit/bluetag - ) - containertype = /obj/structure/closet - containername = "Lasertag Closet" - group = "Hospitality" - cost = 20 - -/datum/supply_packs/internals - name = "Internals crate" - contains = list( - /obj/item/clothing/mask/gas = 3, - /obj/item/weapon/tank/air = 3 - ) - cost = 10 - containertype = /obj/structure/closet/crate/internals - containername = "Internals crate" - group = "Atmospherics" - -/datum/supply_packs/evacuation - name = "Emergency equipment" - contains = list( - /obj/item/weapon/storage/toolbox/emergency = 2, - /obj/item/clothing/suit/storage/hazardvest = 2, - /obj/item/clothing/suit/storage/vest = 2, - /obj/item/weapon/tank/emergency_oxygen/engi = 4, - /obj/item/clothing/suit/space/emergency = 4, - /obj/item/clothing/head/helmet/space/emergency = 4, - /obj/item/clothing/mask/gas = 4 - ) - cost = 45 - containertype = /obj/structure/closet/crate/internals - containername = "Emergency crate" - group = "Atmospherics" - - -/datum/supply_packs/inflatable - name = "Inflatable barriers" - contains = list(/obj/item/weapon/storage/briefcase/inflatable = 3) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Inflatable Barrier Crate" - group = "Atmospherics" - -/datum/supply_packs/janitor - name = "Janitorial supplies" - contains = list( - /obj/item/weapon/reagent_containers/glass/bucket, - /obj/item/weapon/mop, - /obj/item/clothing/under/rank/janitor, - /obj/item/weapon/cartridge/janitor, - /obj/item/clothing/gloves/black, - /obj/item/clothing/head/soft/purple, - /obj/item/weapon/storage/belt/janitor, - /obj/item/clothing/shoes/galoshes, - /obj/item/weapon/caution = 4, - /obj/item/weapon/storage/bag/trash, - /obj/item/device/lightreplacer, - /obj/item/weapon/reagent_containers/spray/cleaner, - /obj/item/weapon/reagent_containers/glass/rag, - /obj/item/weapon/grenade/chem_grenade/cleaner = 3, - /obj/structure/mopbucket - ) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Janitorial supplies" - group = "Supply" - -/datum/supply_packs/lightbulbs - name = "Replacement lights" - contains = list(/obj/item/weapon/storage/box/lights/mixed = 3) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Replacement lights" - group = "Engineering" - -/datum/supply_packs/wizard - name = "Wizard costume" - contains = list( - /obj/item/weapon/staff, - /obj/item/clothing/suit/wizrobe/fake, - /obj/item/clothing/shoes/sandal, - /obj/item/clothing/head/wizard/fake - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Wizard costume crate" - group = "Miscellaneous" - -/datum/supply_packs/foam_weapons - name = "Foam Weapon Crate" - contains = list( - /obj/item/weapon/material/sword/foam = 2, - /obj/item/weapon/material/twohanded/baseballbat/foam = 2, - /obj/item/weapon/material/twohanded/spear/foam = 2, - /obj/item/weapon/material/twohanded/fireaxe/foam = 2 - ) - cost = 80 - containertype = /obj/structure/closet/crate - containername = "foam weapon crate" - group = "Miscellaneous" - -/datum/supply_packs/mule - name = "Mulebot Crate" - contains = list() - cost = 20 - containertype = /obj/structure/largecrate/animal/mulebot - containername = "Mulebot Crate" - group = "Operations" - -/datum/supply_packs/cargotrain - name = "Cargo Train Tug" - contains = list(/obj/vehicle/train/cargo/engine) - cost = 45 - containertype = /obj/structure/largecrate - containername = "Cargo Train Tug Crate" - group = "Operations" - -/datum/supply_packs/cargotrailer - name = "Cargo Train Trolley" - contains = list(/obj/vehicle/train/cargo/trolley) - cost = 15 - containertype = /obj/structure/largecrate - containername = "Cargo Train Trolley Crate" - group = "Operations" - -/datum/supply_packs/lisa - name = "Corgi Crate" - contains = list() - cost = 50 - containertype = /obj/structure/largecrate/animal/corgi - containername = "Corgi Crate" - group = "Hydroponics" - -/datum/supply_packs/hydroponics - name = "Hydroponics Supply Crate" - contains = list( - /obj/item/weapon/reagent_containers/spray/plantbgone = 4, - /obj/item/weapon/reagent_containers/glass/bottle/ammonia = 2, - /obj/item/weapon/material/hatchet, - /obj/item/weapon/material/minihoe, - /obj/item/device/analyzer/plant_analyzer, - /obj/item/clothing/gloves/botanic_leather, - /obj/item/clothing/suit/apron, - /obj/item/weapon/material/minihoe, - /obj/item/weapon/storage/box/botanydisk - ) - cost = 15 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Hydroponics crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/cow - name = "Cow crate" - cost = 30 - containertype = /obj/structure/largecrate/animal/cow - containername = "Cow crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/goat - name = "Goat crate" - cost = 25 - containertype = /obj/structure/largecrate/animal/goat - containername = "Goat crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/chicken - name = "Chicken crate" - cost = 20 - containertype = /obj/structure/largecrate/animal/chick - containername = "Chicken crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/seeds - name = "Seeds crate" - contains = list( - /obj/item/seeds/chiliseed, - /obj/item/seeds/berryseed, - /obj/item/seeds/cornseed, - /obj/item/seeds/eggplantseed, - /obj/item/seeds/tomatoseed, - /obj/item/seeds/appleseed, - /obj/item/seeds/soyaseed, - /obj/item/seeds/wheatseed, - /obj/item/seeds/carrotseed, - /obj/item/seeds/harebell, - /obj/item/seeds/lemonseed, - /obj/item/seeds/orangeseed, - /obj/item/seeds/grassseed, - /obj/item/seeds/sunflowerseed, - /obj/item/seeds/chantermycelium, - /obj/item/seeds/potatoseed, - /obj/item/seeds/sugarcaneseed - ) - cost = 10 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Seeds crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/weedcontrol - name = "Weed control crate" - contains = list( - /obj/item/weapon/material/hatchet = 2, - /obj/item/weapon/reagent_containers/spray/plantbgone = 4, - /obj/item/clothing/mask/gas = 2, - /obj/item/weapon/grenade/chem_grenade/antiweed = 2 - ) - cost = 25 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Weed control crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/exoticseeds - name = "Exotic seeds crate" - contains = list( - /obj/item/seeds/replicapod = 2, - /obj/item/seeds/libertymycelium, - /obj/item/seeds/reishimycelium, - /obj/item/seeds/random = 6, - /obj/item/seeds/kudzuseed - ) - cost = 15 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Exotic Seeds crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/medical - name = "Medical crate" - contains = list( - /obj/item/weapon/storage/firstaid/regular, - /obj/item/weapon/storage/firstaid/fire, - /obj/item/weapon/storage/firstaid/toxin, - /obj/item/weapon/storage/firstaid/o2, - /obj/item/weapon/storage/firstaid/adv, - /obj/item/weapon/reagent_containers/glass/bottle/antitoxin, - /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline, - /obj/item/weapon/reagent_containers/glass/bottle/stoxin, - /obj/item/weapon/storage/box/syringes, - /obj/item/weapon/storage/box/autoinjectors - ) - cost = 10 - containertype = /obj/structure/closet/crate/medical - containername = "Medical crate" - group = "Medical" - -/datum/supply_packs/bloodpack - name = "BloodPack crate" - contains = list(/obj/item/weapon/storage/box/bloodpacks = 3) - cost = 10 - containertype = /obj/structure/closet/crate/medical - containername = "BloodPack crate" - group = "Medical" - -/datum/supply_packs/bodybag - name = "Body bag crate" - contains = list(/obj/item/weapon/storage/box/bodybags = 3) - cost = 10 - containertype = /obj/structure/closet/crate/medical - containername = "Body bag crate" - group = "Medical" - -/datum/supply_packs/cryobag - name = "Stasis bag crate" - contains = list(/obj/item/bodybag/cryobag = 3) - cost = 50 - containertype = /obj/structure/closet/crate/medical - containername = "Stasis bag crate" - group = "Medical" - -/datum/supply_packs/virus - name = "Virus sample crate" - contains = list(/obj/item/weapon/virusdish/random = 4) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Virus sample crate" - access = access_cmo - group = "Science" - -/datum/supply_packs/metal50 - name = "50 metal sheets" - contains = list(/obj/item/stack/material/steel) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Metal sheets crate" - group = "Engineering" - -/datum/supply_packs/glass50 - name = "50 glass sheets" - contains = list(/obj/item/stack/material/glass) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Glass sheets crate" - group = "Engineering" - -/datum/supply_packs/wood50 - name = "50 wooden planks" - contains = list(/obj/item/stack/material/wood) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Wooden planks crate" - group = "Engineering" - -/datum/supply_packs/plastic50 - name = "50 plastic sheets" - contains = list(/obj/item/stack/material/plastic) - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Plastic sheets crate" - group = "Engineering" - -/datum/supply_packs/smescoil - name = "Superconducting Magnetic Coil" - contains = list(/obj/item/weapon/smes_coil) - cost = 75 - containertype = /obj/structure/closet/crate - containername = "Superconducting Magnetic Coil crate" - group = "Engineering" - -/datum/supply_packs/electrical - name = "Electrical maintenance crate" - contains = list( - /obj/item/weapon/storage/toolbox/electrical = 2, - /obj/item/clothing/gloves/yellow = 2, - /obj/item/weapon/cell = 2, - /obj/item/weapon/cell/high = 2 - ) - cost = 15 - containertype = /obj/structure/closet/crate - containername = "Electrical maintenance crate" - group = "Engineering" - -/datum/supply_packs/mechanical - name = "Mechanical maintenance crate" - contains = list( - /obj/item/weapon/storage/belt/utility/full = 3, - /obj/item/clothing/suit/storage/hazardvest = 3, - /obj/item/clothing/head/welding = 2, - /obj/item/clothing/head/hardhat - ) - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Mechanical maintenance crate" - group = "Engineering" - -/datum/supply_packs/watertank - name = "Water tank crate" - contains = list(/obj/structure/reagent_dispensers/watertank) - cost = 8 - containertype = /obj/structure/largecrate - containername = "water tank crate" - group = "Hydroponics" - -/datum/supply_packs/fueltank - name = "Fuel tank crate" - contains = list(/obj/structure/reagent_dispensers/fueltank) - cost = 8 - containertype = /obj/structure/largecrate - containername = "fuel tank crate" - group = "Engineering" - -/datum/supply_packs/coolanttank - name = "Coolant tank crate" - contains = list(/obj/structure/reagent_dispensers/coolanttank) - cost = 16 - containertype = /obj/structure/largecrate - containername = "coolant tank crate" - group = "Science" - -/datum/supply_packs/solar - name = "Solar Pack crate" - contains = list( - /obj/item/solar_assembly = 21, - /obj/item/weapon/circuitboard/solar_control, - /obj/item/weapon/tracker_electronics, - /obj/item/weapon/paper/solar - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Solar pack crate" - group = "Engineering" - -/datum/supply_packs/engine - name = "Emitter crate" - contains = list(/obj/machinery/power/emitter = 2) - cost = 10 - containertype = /obj/structure/closet/crate/secure - containername = "Emitter crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/engine/field_gen - name = "Field Generator crate" - contains = list(/obj/machinery/field_generator = 2) - containertype = /obj/structure/closet/crate/secure - containername = "Field Generator crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/engine/sing_gen - name = "Singularity Generator crate" - contains = list(/obj/machinery/the_singularitygen) - containertype = /obj/structure/closet/crate/secure - containername = "Singularity Generator crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/engine/collector - name = "Collector crate" - contains = list(/obj/machinery/power/rad_collector = 3) - containername = "Collector crate" - group = "Engineering" - -/datum/supply_packs/engine/PA - name = "Particle Accelerator crate" - cost = 40 - contains = list( - /obj/structure/particle_accelerator/fuel_chamber, - /obj/machinery/particle_accelerator/control_box, - /obj/structure/particle_accelerator/particle_emitter/center, - /obj/structure/particle_accelerator/particle_emitter/left, - /obj/structure/particle_accelerator/particle_emitter/right, - /obj/structure/particle_accelerator/power_box, - /obj/structure/particle_accelerator/end_cap - ) - containertype = /obj/structure/closet/crate/secure - containername = "Particle Accelerator crate" - access = access_ce - group = "Engineering" - -/datum/supply_packs/mecha_ripley - name = "Circuit Crate (\"Ripley\" APLU)" - contains = list( - /obj/item/weapon/book/manual/ripley_build_and_repair, - /obj/item/weapon/circuitboard/mecha/ripley/main, - /obj/item/weapon/circuitboard/mecha/ripley/peripherals - ) - cost = 30 - containertype = /obj/structure/closet/crate/secure - containername = "APLU \"Ripley\" Circuit Crate" - access = access_robotics - group = "Science" - -/datum/supply_packs/mecha_odysseus - name = "Circuit Crate (\"Odysseus\")" - contains = list( - /obj/item/weapon/circuitboard/mecha/odysseus/peripherals, - /obj/item/weapon/circuitboard/mecha/odysseus/main - ) - cost = 25 - containertype = /obj/structure/closet/crate/secure - containername = "\"Odysseus\" Circuit Crate" - access = access_robotics - group = "Science" - -/datum/supply_packs/hoverpod - name = "Hoverpod Shipment" - contains = list() - cost = 80 - containertype = /obj/structure/largecrate/hoverpod - containername = "Hoverpod Crate" - group = "Operations" - -/datum/supply_packs/robotics - name = "Robotics assembly crate" - contains = list( - /obj/item/device/assembly/prox_sensor = 3, - /obj/item/weapon/storage/toolbox/electrical, - /obj/item/device/flash = 4, - /obj/item/weapon/cell/high = 2 - ) - cost = 10 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Robotics assembly" - access = access_robotics - group = "Engineering" - -/datum/supply_packs/robolimbs_basic - name = "Basic robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/xion - ) - cost = 15 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Robolimb blueprints (basic)" - access = access_robotics - group = "Engineering" - -/datum/supply_packs/robolimbs_adv - name = "All robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/bishop, - /obj/item/weapon/disk/limb/hesphiastos, - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/veymed, - /obj/item/weapon/disk/limb/wardtakahashi, - /obj/item/weapon/disk/limb/xion, - /obj/item/weapon/disk/limb/zenghu, - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Robolimb blueprints (adv)" - access = access_robotics - group = "Engineering" - -/datum/supply_packs/phoron - name = "Phoron assembly crate" - contains = list( - /obj/item/weapon/tank/phoron = 3, - /obj/item/device/assembly/igniter = 3, - /obj/item/device/assembly/prox_sensor = 3, - /obj/item/device/assembly/timer = 3 - ) - cost = 10 - containertype = /obj/structure/closet/crate/secure/phoron - containername = "Phoron assembly crate" - access = access_tox_storage - group = "Science" - -/datum/supply_packs/weapons - name = "Weapons crate" - contains = list( - /obj/item/weapon/melee/baton = 2, - /obj/item/weapon/gun/energy/gun = 2, - /obj/item/weapon/gun/energy/taser = 2, - /obj/item/weapon/gun/projectile/colt/detective = 2, - /obj/item/weapon/storage/box/flashbangs = 2 - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Weapons crate" - access = access_security - group = "Security" - -/datum/supply_packs/flareguns - name = "Flare guns crate" - contains = list( - /obj/item/weapon/gun/projectile/sec/flash, - /obj/item/ammo_magazine/c45m/flash, - /obj/item/weapon/gun/projectile/shotgun/doublebarrel/flare, - /obj/item/weapon/storage/box/flashshells - ) - cost = 25 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Flare gun crate" - access = access_security - group = "Security" - -/datum/supply_packs/eweapons - name = "Experimental weapons crate" - contains = list( - /obj/item/weapon/gun/energy/xray = 2, - /obj/item/weapon/shield/energy = 2) - cost = 125 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Experimental weapons crate" - access = access_armory - group = "Security" - -/datum/supply_packs/randomised/armor - num_contained = 5 - contains = list( - /obj/item/clothing/suit/storage/vest, - /obj/item/clothing/suit/storage/vest/officer, - /obj/item/clothing/suit/storage/vest/warden, - /obj/item/clothing/suit/storage/vest/hos, - /obj/item/clothing/suit/storage/vest/pcrc, - /obj/item/clothing/suit/storage/vest/detective, - /obj/item/clothing/suit/storage/vest/heavy, - /obj/item/clothing/suit/storage/vest/heavy/officer, - /obj/item/clothing/suit/storage/vest/heavy/warden, - /obj/item/clothing/suit/storage/vest/heavy/hos, - /obj/item/clothing/suit/storage/vest/heavy/pcrc - ) - - name = "Armor crate" - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "Armor crate" - access = access_security - group = "Security" - -/datum/supply_packs/riot_gear - name = "Riot gear crate" - contains = list( - /obj/item/weapon/melee/baton = 3, - /obj/item/weapon/shield/riot = 3, - /obj/item/weapon/handcuffs = 3, - /obj/item/weapon/storage/box/flashbangs, - /obj/item/weapon/storage/box/beanbags, - /obj/item/weapon/storage/box/handcuffs - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "riot gear crate" - access = access_armory - group = "Security" - -/datum/supply_packs/riot_armor - name = "Riot armor set crate" - contains = list( - /obj/item/clothing/head/helmet/riot, - /obj/item/clothing/suit/armor/riot, - /obj/item/clothing/gloves/arm_guard/riot, - /obj/item/clothing/shoes/leg_guard/riot - ) - cost = 30 - containertype = /obj/structure/closet/crate/secure - containername = "riot armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/ablative_armor - name = "Ablative armor set crate" - contains = list( - /obj/item/clothing/head/helmet/laserproof, - /obj/item/clothing/suit/armor/laserproof, - /obj/item/clothing/gloves/arm_guard/laserproof, - /obj/item/clothing/shoes/leg_guard/laserproof - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "ablative armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/bullet_resistant_armor - name = "Bullet resistant armor set crate" - contains = list( - /obj/item/clothing/head/helmet/bulletproof, - /obj/item/clothing/suit/armor/bulletproof, - /obj/item/clothing/gloves/arm_guard/bulletproof, - /obj/item/clothing/shoes/leg_guard/bulletproof - ) - cost = 35 - containertype = /obj/structure/closet/crate/secure - containername = "bullet resistant armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/combat_armor - name = "Combat armor set crate" - contains = list( - /obj/item/clothing/head/helmet/combat, - /obj/item/clothing/suit/armor/combat, - /obj/item/clothing/gloves/arm_guard/combat, - /obj/item/clothing/shoes/leg_guard/combat - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure - containername = "combat armor set crate" - access = access_armory - group = "Security" - -/datum/supply_packs/tactical - name = "Tactical suits" - containertype = /obj/structure/closet/crate/secure - containername = "Tactical Suit Locker" - cost = 60 - group = "Security" - access = access_armory - contains = list( - /obj/item/clothing/under/tactical, - /obj/item/clothing/suit/armor/tactical, - /obj/item/clothing/head/helmet/tactical, - /obj/item/clothing/mask/balaclava/tactical, - /obj/item/clothing/glasses/sunglasses/sechud/tactical, - /obj/item/weapon/storage/belt/security/tactical, - /obj/item/clothing/shoes/jackboots, - /obj/item/clothing/gloves/black, - /obj/item/clothing/under/tactical, - /obj/item/clothing/suit/armor/tactical, - /obj/item/clothing/head/helmet/tactical, - /obj/item/clothing/mask/balaclava/tactical, - /obj/item/clothing/glasses/sunglasses/sechud/tactical, - /obj/item/weapon/storage/belt/security/tactical, - /obj/item/clothing/shoes/jackboots, - /obj/item/clothing/gloves/black - ) - -/datum/supply_packs/energyweapons - name = "Energy weapons crate" - contains = list(/obj/item/weapon/gun/energy/laser = 3) - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "energy weapons crate" - access = access_armory - group = "Security" - -/datum/supply_packs/shotgun - name = "Shotgun crate" - contains = list( - /obj/item/weapon/storage/box/shotgunammo, - /obj/item/weapon/storage/box/shotgunshells, - /obj/item/weapon/gun/projectile/shotgun/pump/combat = 2 - ) - cost = 65 - containertype = /obj/structure/closet/crate/secure - containername = "Shotgun crate" - access = access_armory - group = "Security" - -/datum/supply_packs/erifle - name = "Energy marksman crate" - contains = list(/obj/item/weapon/gun/energy/sniperrifle = 2) - cost = 90 - containertype = /obj/structure/closet/crate/secure - containername = "Energy marksman crate" - access = access_armory - group = "Security" - -/datum/supply_packs/shotgunammo - name = "Ballistic ammunition crate" - contains = list( - /obj/item/weapon/storage/box/shotgunammo = 2, - /obj/item/weapon/storage/box/shotgunshells = 2 - ) - cost = 60 - containertype = /obj/structure/closet/crate/secure - containername = "ballistic ammunition crate" - access = access_armory - group = "Security" - -/datum/supply_packs/ionweapons - name = "Electromagnetic weapons crate" - contains = list( - /obj/item/weapon/gun/energy/ionrifle = 2, - /obj/item/weapon/storage/box/emps - ) - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "electromagnetic weapons crate" - access = access_armory - group = "Security" - -/datum/supply_packs/randomised/automatic - name = "Automatic weapon crate" - num_contained = 2 - contains = list( - /obj/item/weapon/gun/projectile/automatic/wt550, - /obj/item/weapon/gun/projectile/automatic/z8 - ) - cost = 90 - containertype = /obj/structure/closet/crate/secure - containername = "Automatic weapon crate" - access = access_armory - group = "Security" - -/datum/supply_packs/randomised/autoammo - name = "Automatic weapon ammunition crate" - num_contained = 6 - contains = list( - /obj/item/ammo_magazine/mc9mmt, - /obj/item/ammo_magazine/mc9mmt/rubber, - /obj/item/ammo_magazine/a556 - ) - cost = 20 - containertype = /obj/structure/closet/crate/secure - containername = "Automatic weapon ammunition crate" - access = access_armory - group = "Security" - -/datum/supply_packs/energy_guns - name = "energy guns crate" - contains = list(/obj/item/weapon/gun/energy/gun = 2) - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "energy guns crate" - access = access_armory - group = "Security" - -/datum/supply_packs/securitybarriers - name = "Security barrier crate" - contains = list(/obj/machinery/deployable/barrier = 4) - cost = 20 - containertype = /obj/structure/closet/crate/secure/gear - containername = "Security barrier crate" - group = "Security" - -/datum/supply_packs/securityshieldgen - name = "Wall shield Generators" - contains = list(/obj/machinery/shieldwallgen = 4) - cost = 20 - containertype = /obj/structure/closet/crate/secure - containername = "wall shield generators crate" - access = access_teleporter - group = "Security" - -/datum/supply_packs/randomised - var/num_contained = 4 //number of items picked to be contained in a randomised crate - contains = list( - /obj/item/clothing/head/collectable/chef, - /obj/item/clothing/head/collectable/paper, - /obj/item/clothing/head/collectable/tophat, - /obj/item/clothing/head/collectable/captain, - /obj/item/clothing/head/collectable/beret, - /obj/item/clothing/head/collectable/welding, - /obj/item/clothing/head/collectable/flatcap, - /obj/item/clothing/head/collectable/pirate, - /obj/item/clothing/head/collectable/kitty, - /obj/item/clothing/head/collectable/rabbitears, - /obj/item/clothing/head/collectable/wizard, - /obj/item/clothing/head/collectable/hardhat, - /obj/item/clothing/head/collectable/HoS, - /obj/item/clothing/head/collectable/thunderdome, - /obj/item/clothing/head/collectable/swat, - /obj/item/clothing/head/collectable/slime, - /obj/item/clothing/head/collectable/police, - /obj/item/clothing/head/collectable/slime, - /obj/item/clothing/head/collectable/xenom, - /obj/item/clothing/head/collectable/petehat - ) - name = "Collectable hat crate!" - cost = 200 - containertype = /obj/structure/closet/crate - containername = "Collectable hats crate! Brought to you by Bass.inc!" - group = "Miscellaneous" - -/datum/supply_packs/randomised/New() - manifest += "Contains any [num_contained] of:" - ..() - -/datum/supply_packs/artscrafts - name = "Arts and Crafts supplies" - contains = list( - /obj/item/weapon/storage/fancy/crayons, - /obj/item/device/camera, - /obj/item/device/camera_film = 2, - /obj/item/weapon/storage/photo_album, - /obj/item/weapon/packageWrap, - /obj/item/weapon/reagent_containers/glass/paint/red, - /obj/item/weapon/reagent_containers/glass/paint/green, - /obj/item/weapon/reagent_containers/glass/paint/blue, - /obj/item/weapon/reagent_containers/glass/paint/yellow, - /obj/item/weapon/reagent_containers/glass/paint/purple, - /obj/item/weapon/reagent_containers/glass/paint/black, - /obj/item/weapon/reagent_containers/glass/paint/white, - /obj/item/weapon/contraband/poster, - /obj/item/weapon/wrapping_paper = 3 - ) - cost = 10 - containertype = "/obj/structure/closet/crate" - containername = "Arts and Crafts crate" - group = "Operations" - - -/datum/supply_packs/randomised/contraband - num_contained = 5 - contains = list( - /obj/item/seeds/bloodtomatoseed, - /obj/item/weapon/storage/pill_bottle/zoom, - /obj/item/weapon/storage/pill_bottle/happy, - /obj/item/weapon/reagent_containers/food/drinks/bottle/pwine - ) - - name = "Contraband crate" - cost = 30 - containertype = /obj/structure/closet/crate - containername = "Unlabeled crate" - contraband = 1 - group = "Operations" - -/datum/supply_packs/boxes - name = "Empty boxes" - contains = list(/obj/item/weapon/storage/box = 10) - cost = 10 - containertype = "/obj/structure/closet/crate" - containername = "Empty box crate" - group = "Supply" - -/datum/supply_packs/surgery - name = "Surgery crate" - contains = list( - /obj/item/weapon/cautery, - /obj/item/weapon/surgicaldrill, - /obj/item/clothing/mask/breath/medical, - /obj/item/weapon/tank/anesthetic, - /obj/item/weapon/FixOVein, - /obj/item/weapon/hemostat, - /obj/item/weapon/scalpel, - /obj/item/weapon/bonegel, - /obj/item/weapon/retractor, - /obj/item/weapon/bonesetter, - /obj/item/weapon/circular_saw - ) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Surgery crate" - access = access_medical - group = "Medical" - -/datum/supply_packs/sterile - name = "Sterile equipment crate" - contains = list( - /obj/item/clothing/under/rank/medical/green = 2, - /obj/item/clothing/head/surgery/green = 2, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves, - /obj/item/weapon/storage/belt/medical = 3 - ) - cost = 15 - containertype = "/obj/structure/closet/crate" - containername = "Sterile equipment crate" - group = "Medical" - -/datum/supply_packs/randomised/pizza - num_contained = 5 - contains = list( - /obj/item/pizzabox/margherita, - /obj/item/pizzabox/mushroom, - /obj/item/pizzabox/meat, - /obj/item/pizzabox/vegetable - ) - name = "Surprise pack of five pizzas" - cost = 15 - containertype = /obj/structure/closet/crate/freezer - containername = "Pizza crate" - group = "Hospitality" - -/datum/supply_packs/randomised/costume - num_contained = 3 - contains = list( - /obj/item/clothing/suit/pirate, - /obj/item/clothing/suit/judgerobe, - /obj/item/clothing/suit/wcoat, - /obj/item/clothing/suit/hastur, - /obj/item/clothing/suit/holidaypriest, - /obj/item/clothing/suit/nun, - /obj/item/clothing/suit/imperium_monk, - /obj/item/clothing/suit/ianshirt, - /obj/item/clothing/under/gimmick/rank/captain/suit, - /obj/item/clothing/under/gimmick/rank/head_of_personnel/suit, - /obj/item/clothing/under/lawyer/purpsuit, - /obj/item/clothing/under/rank/mailman, - /obj/item/clothing/under/dress/dress_saloon, - /obj/item/clothing/suit/suspenders, - /obj/item/clothing/suit/storage/toggle/labcoat/mad, - /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, - /obj/item/clothing/under/schoolgirl, - /obj/item/clothing/under/owl, - /obj/item/clothing/under/waiter, - /obj/item/clothing/under/gladiator, - /obj/item/clothing/under/soviet, - /obj/item/clothing/under/scratch, - /obj/item/clothing/under/wedding/bride_white, - /obj/item/clothing/suit/chef, - /obj/item/clothing/suit/apron/overalls, - /obj/item/clothing/under/redcoat, - /obj/item/clothing/under/kilt - ) - name = "Costumes crate" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Actor Costumes" - group = "Miscellaneous" - -/datum/supply_packs/formal_wear - contains = list( - /obj/item/clothing/head/bowler, - /obj/item/clothing/head/that, - /obj/item/clothing/suit/storage/toggle/internalaffairs, - /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket, - /obj/item/clothing/suit/storage/toggle/lawyer/purpjacket, - /obj/item/clothing/under/suit_jacket, - /obj/item/clothing/under/suit_jacket/female, - /obj/item/clothing/under/suit_jacket/really_black, - /obj/item/clothing/under/suit_jacket/red, - /obj/item/clothing/under/lawyer/bluesuit, - /obj/item/clothing/under/lawyer/purpsuit, - /obj/item/clothing/shoes/black = 2, - /obj/item/clothing/shoes/leather, - /obj/item/clothing/suit/wcoat - ) - name = "Formalwear closet" - cost = 30 - containertype = /obj/structure/closet - containername = "Formalwear for the best occasions." - group = "Miscellaneous" - -/datum/supply_packs/randomised/card_packs - num_contained = 5 - contains = list( - /obj/item/weapon/pack/cardemon, - /obj/item/weapon/pack/spaceball, - /obj/item/weapon/deck/holder - ) - name = "Trading Card Crate" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "cards crate" - group = "Miscellaneous" - -/datum/supply_packs/shield_gen - contains = list(/obj/item/weapon/circuitboard/shield_gen) - name = "Bubble shield generator circuitry" - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "bubble shield generator circuitry crate" - group = "Engineering" - access = access_ce - -/datum/supply_packs/shield_gen_ex - contains = list(/obj/item/weapon/circuitboard/shield_gen_ex) - name = "Hull shield generator circuitry" - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "hull shield generator circuitry crate" - group = "Engineering" - access = access_ce - -/datum/supply_packs/shield_cap - contains = list(/obj/item/weapon/circuitboard/shield_cap) - name = "Bubble shield capacitor circuitry" - cost = 50 - containertype = /obj/structure/closet/crate/secure - containername = "shield capacitor circuitry crate" - group = "Engineering" - access = access_ce - -/datum/supply_packs/smbig - name = "Supermatter Core" - contains = list(/obj/machinery/power/supermatter) - cost = 150 - containertype = /obj/structure/closet/crate/secure/phoron - containername = "Supermatter crate (CAUTION)" - group = "Engineering" - access = access_ce - -/datum/supply_packs/eftpos - contains = list(/obj/item/device/eftpos) - name = "EFTPOS scanner" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "EFTPOS crate" - group = "Miscellaneous" - -/datum/supply_packs/teg - contains = list(/obj/machinery/power/generator) - name = "Mark I Thermoelectric Generator" - cost = 75 - containertype = /obj/structure/closet/crate/secure/large - containername = "Mk1 TEG crate" - group = "Engineering" - access = access_engine - -/datum/supply_packs/circulator - contains = list(/obj/machinery/atmospherics/binary/circulator) - name = "Binary atmospheric circulator" - cost = 60 - containertype = /obj/structure/closet/crate/secure/large - containername = "Atmospheric circulator crate" - group = "Engineering" - access = access_engine - -/datum/supply_packs/air_dispenser - contains = list(/obj/machinery/pipedispenser/orderable) - name = "Pipe Dispenser" - cost = 35 - containertype = /obj/structure/closet/crate/secure/large - containername = "Pipe Dispenser Crate" - group = "Engineering" - access = access_atmospherics - -/datum/supply_packs/disposals_dispenser - contains = list(/obj/machinery/pipedispenser/disposal/orderable) - name = "Disposals Pipe Dispenser" - cost = 35 - containertype = /obj/structure/closet/crate/secure/large - containername = "Disposal Dispenser Crate" - group = "Engineering" - access = access_atmospherics - -/datum/supply_packs/bee_keeper - name = "Beekeeping crate" - contains = list( - /obj/item/beehive_assembly, - /obj/item/bee_smoker, - /obj/item/honey_frame = 5, - /obj/item/bee_pack - ) - cost = 40 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Beekeeping crate" - access = access_hydroponics - group = "Hydroponics" - -/datum/supply_packs/cardboard_sheets - contains = list(/obj/item/stack/material/cardboard) - name = "50 cardboard sheets" - amount = 50 - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Cardboard sheets crate" - group = "Miscellaneous" - -/datum/supply_packs/bureaucracy - contains = list( - /obj/item/weapon/clipboard = 2, - /obj/item/weapon/pen/red, - /obj/item/weapon/pen/blue, - /obj/item/weapon/pen/blue, - /obj/item/device/camera_film, - /obj/item/weapon/folder/blue, - /obj/item/weapon/folder/red, - /obj/item/weapon/folder/yellow, - /obj/item/weapon/hand_labeler, - /obj/item/weapon/tape_roll, - /obj/structure/filingcabinet/chestdrawer{anchored = 0}, - /obj/item/weapon/paper_bin - ) - name = "Office supplies" - cost = 15 - containertype = /obj/structure/closet/crate - containername = "Office supplies crate" - group = "Supply" - -/datum/supply_packs/radsuit - contains = list( - /obj/item/clothing/suit/radiation = 3, - /obj/item/clothing/head/radiation = 3 - ) - name = "Radiation suits package" - cost = 20 - containertype = /obj/structure/closet/radiation - containername = "Radiation suit locker" - group = "Engineering" - -/datum/supply_packs/carpet - name = "Imported carpet" - containertype = /obj/structure/closet/crate - containername = "Imported carpet crate" - cost = 15 - group = "Miscellaneous" - contains = list( - /obj/item/stack/tile/carpet, - /obj/item/stack/tile/carpet/blue - ) - amount = 50 - -/datum/supply_packs/linoleum - name = "Linoleum" - containertype = /obj/structure/closet/crate - containername = "Linoleum crate" - cost = 15 - group = "Miscellaneous" - contains = list(/obj/item/stack/tile/linoleum) - amount = 50 - -/datum/supply_packs/hydrotray - name = "Empty hydroponics tray" - cost = 30 - containertype = /obj/structure/closet/crate/hydroponics - containername = "Hydroponics tray crate" - group = "Hydroponics" - contains = list(/obj/machinery/portable_atmospherics/hydroponics{anchored = 0}) - access = access_hydroponics - -/datum/supply_packs/canister_empty - name = "Empty gas canister" - cost = 7 - containername = "Empty gas canister crate" - containertype = /obj/structure/largecrate - contains = list(/obj/machinery/portable_atmospherics/canister) - group = "Atmospherics" - -/datum/supply_packs/canister_air - name = "Air canister" - cost = 10 - containername = "Air canister crate" - containertype = /obj/structure/largecrate - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/air) - -/datum/supply_packs/canister_oxygen - name = "Oxygen canister" - cost = 15 - containername = "Oxygen canister crate" - containertype = /obj/structure/largecrate - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/oxygen) - -/datum/supply_packs/canister_nitrogen - name = "Nitrogen canister" - cost = 10 - containername = "Nitrogen canister crate" - containertype = /obj/structure/largecrate - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/nitrogen) - -/datum/supply_packs/canister_phoron - name = "Phoron gas canister" - cost = 60 - containername = "Phoron gas canister crate" - containertype = /obj/structure/closet/crate/secure/large - access = access_atmospherics - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/phoron) - -/datum/supply_packs/canister_sleeping_agent - name = "N2O gas canister" - cost = 40 - containername = "N2O gas canister crate" - containertype = /obj/structure/closet/crate/secure/large - access = access_atmospherics - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/sleeping_agent) - -/datum/supply_packs/canister_carbon_dioxide - name = "Carbon dioxide gas canister" - cost = 40 - containername = "CO2 canister crate" - containertype = /obj/structure/closet/crate/secure/large - access = access_atmospherics - group = "Atmospherics" - contains = list(/obj/machinery/portable_atmospherics/canister/carbon_dioxide) - -/datum/supply_packs/pacman_parts - name = "P.A.C.M.A.N. portable generator parts" - cost = 45 - containername = "P.A.C.M.A.N. Portable Generator Construction Kit" - containertype = /obj/structure/closet/crate/secure - group = "Engineering" - access = access_tech_storage - contains = list( - /obj/item/weapon/stock_parts/micro_laser, - /obj/item/weapon/stock_parts/capacitor, - /obj/item/weapon/stock_parts/matter_bin, - /obj/item/weapon/circuitboard/pacman - ) - -/datum/supply_packs/super_pacman_parts - name = "Super P.A.C.M.A.N. portable generator parts" - cost = 55 - containername = "Super P.A.C.M.A.N. portable generator construction kit" - containertype = /obj/structure/closet/crate/secure - group = "Engineering" - access = access_tech_storage - contains = list( - /obj/item/weapon/stock_parts/micro_laser, - /obj/item/weapon/stock_parts/capacitor, - /obj/item/weapon/stock_parts/matter_bin, - /obj/item/weapon/circuitboard/pacman/super - ) - -/datum/supply_packs/witch - name = "Witch costume" - containername = "Witch costume" - containertype = /obj/structure/closet - cost = 20 - contains = list( - /obj/item/clothing/suit/wizrobe/marisa/fake, - /obj/item/clothing/shoes/sandal, - /obj/item/clothing/head/wizard/marisa/fake, - /obj/item/weapon/staff/broom - ) - group = "Miscellaneous" - -/datum/supply_packs/randomised/costume_hats - name = "Costume hats" - containername = "Actor hats crate" - containertype = /obj/structure/closet - cost = 10 - num_contained = 3 - contains = list( - /obj/item/clothing/head/redcoat, - /obj/item/clothing/head/mailman, - /obj/item/clothing/head/plaguedoctorhat, - /obj/item/clothing/head/pirate, - /obj/item/clothing/head/hasturhood, - /obj/item/clothing/head/powdered_wig, - /obj/item/clothing/head/hairflower, - /obj/item/clothing/head/hairflower/yellow, - /obj/item/clothing/head/hairflower/blue, - /obj/item/clothing/head/hairflower/pink, - /obj/item/clothing/mask/gas/owl_mask, - /obj/item/clothing/mask/gas/monkeymask, - /obj/item/clothing/head/helmet/gladiator, - /obj/item/clothing/head/ushanka - ) - group = "Miscellaneous" - -/datum/supply_packs/spare_pda - name = "Spare PDAs" - cost = 10 - containertype = /obj/structure/closet/crate - containername = "Spare PDA crate" - group = "Supply" - contains = list(/obj/item/device/pda = 3) - -/datum/supply_packs/randomised/dresses - name = "Womens formal dress locker" - containername = "Pretty dress locker" - containertype = /obj/structure/closet - cost = 15 - num_contained = 3 - contains = list( - /obj/item/clothing/under/wedding/bride_orange, - /obj/item/clothing/under/wedding/bride_purple, - /obj/item/clothing/under/wedding/bride_blue, - /obj/item/clothing/under/wedding/bride_red, - /obj/item/clothing/under/wedding/bride_white, - /obj/item/clothing/under/sundress, - /obj/item/clothing/under/dress/dress_green, - /obj/item/clothing/under/dress/dress_pink, - /obj/item/clothing/under/dress/dress_orange, - /obj/item/clothing/under/dress/dress_yellow, - /obj/item/clothing/under/dress/dress_saloon - ) - group = "Miscellaneous" - -/datum/supply_packs/painters - name = "Station Painting Supplies" - cost = 10 - containername = "station painting supplies crate" - containertype = /obj/structure/closet/crate - group = "Engineering" - contains = list( - /obj/item/device/pipe_painter = 2, - /obj/item/device/floor_painter = 2, - /obj/item/device/closet_painter = 2 - ) - -/datum/supply_packs/randomised/exosuit_mod - num_contained = 1 - contains = list( - /obj/item/device/kit/paint/ripley, - /obj/item/device/kit/paint/ripley/death, - /obj/item/device/kit/paint/ripley/flames_red, - /obj/item/device/kit/paint/ripley/flames_blue - ) - name = "Random APLU modkit" - cost = 200 - containertype = /obj/structure/closet/crate - containername = "heavy crate" - group = "Miscellaneous" - -/datum/supply_packs/randomised/exosuit_mod/durand - contains = list( - /obj/item/device/kit/paint/durand, - /obj/item/device/kit/paint/durand/seraph, - /obj/item/device/kit/paint/durand/phazon - ) - name = "Random Durand exosuit modkit" - -/datum/supply_packs/randomised/exosuit_mod/gygax - contains = list( - /obj/item/device/kit/paint/gygax, - /obj/item/device/kit/paint/gygax/darkgygax, - /obj/item/device/kit/paint/gygax/recitence - ) - name = "Random Gygax exosuit modkit" - -/datum/supply_packs/engineeringvoidsuits - name = "Engineering voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/engineering = 2, - /obj/item/clothing/head/helmet/space/void/engineering = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 40 - containertype = "/obj/structure/closet/crate/secure" - containername = "Engineering voidsuit crate" - access = access_engine_equip - group = "Engineering" - -/datum/supply_packs/atmosvoidsuits - name = "Atmospheric voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/atmos = 2, - /obj/item/clothing/head/helmet/space/void/atmos = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2, - ) - cost = 45 - containertype = "/obj/structure/closet/crate/secure" - containername = "Atmospheric voidsuit crate" - access = access_atmospherics - group = "Atmospherics" - -/datum/supply_packs/miningvoidsuits - name = "Mining voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/mining = 2, - /obj/item/clothing/head/helmet/space/void/mining = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 35 - containertype = "/obj/structure/closet/crate/secure" - containername = "Mining voidsuit crate" - access = access_mining - group = "Supply" - -/datum/supply_packs/randomised/webbing - name = "Webbing crate" - num_contained = 4 - contains = list( - /obj/item/clothing/accessory/storage/black_vest, - /obj/item/clothing/accessory/storage/brown_vest, - /obj/item/clothing/accessory/storage/white_vest, - /obj/item/clothing/accessory/storage/black_drop_pouches, - /obj/item/clothing/accessory/storage/brown_drop_pouches, - /obj/item/clothing/accessory/storage/white_drop_pouches, - /obj/item/clothing/accessory/storage/webbing - ) - cost = 15 - containertype = "/obj/structure/closet/crate" - containername = "Webbing crate" - group = "Operations" - -/datum/supply_packs/securityvoidsuits - name = "Security voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/security = 2, - /obj/item/clothing/head/helmet/space/void/security = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 55 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security voidsuit crate" - access = access_security - group = "Security" - -/datum/supply_packs/randomised/holster - name = "Holster crate" - num_contained = 4 - contains = list( - /obj/item/clothing/accessory/holster, - /obj/item/clothing/accessory/holster/armpit, - /obj/item/clothing/accessory/holster/waist, - /obj/item/clothing/accessory/holster/hip - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Holster crate" - access = access_security - group = "Security" - -/datum/supply_packs/medicalvoidsuits - name = "Medical voidsuits" - contains = list( - /obj/item/clothing/suit/space/void/medical = 2, - /obj/item/clothing/head/helmet/space/void/medical = 2, - /obj/item/clothing/mask/breath = 2, - /obj/item/clothing/shoes/magboots = 2, - /obj/item/weapon/tank/oxygen = 2 - ) - cost = 40 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical voidsuit crate" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/securityextragear - name = "Security surplus equipment" - contains = list( - /obj/item/weapon/storage/belt/security = 3, - /obj/item/clothing/glasses/sunglasses/sechud = 3, - /obj/item/device/radio/headset/headset_sec/alt = 3, - /obj/item/clothing/suit/storage/hooded/wintercoat/security = 3 - ) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security surplus equipment" - access = access_security - group = "Security" - -/datum/supply_packs/detectivegear - name = "Forensic investigation equipment" - contains = list( - /obj/item/weapon/storage/box/evidence = 2, - /obj/item/clothing/suit/storage/vest/detective, - /obj/item/weapon/cartridge/detective, - /obj/item/device/radio/headset/headset_sec, - /obj/item/taperoll/police, - /obj/item/clothing/glasses/sunglasses, - /obj/item/device/camera, - /obj/item/weapon/folder/red, - /obj/item/weapon/folder/blue, - /obj/item/weapon/storage/belt/detective, - /obj/item/clothing/gloves/black, - /obj/item/device/taperecorder, - /obj/item/device/mass_spectrometer, - /obj/item/device/camera_film = 2, - /obj/item/weapon/storage/photo_album, - /obj/item/device/reagent_scanner, - /obj/item/device/flashlight/maglight, - /obj/item/weapon/storage/briefcase/crimekit - ) - cost = 40 - containertype = "/obj/structure/closet/crate/secure" - containername = "Forensic equipment" - access = access_forensics_lockers - group = "Security" - -/datum/supply_packs/detectiveclothes - name = "Investigation apparel" - contains = list( - /obj/item/clothing/under/det/black = 2, - /obj/item/clothing/under/det/grey = 2, - /obj/item/clothing/head/det/grey = 2, - /obj/item/clothing/under/det = 2, - /obj/item/clothing/head/det = 2, - /obj/item/clothing/suit/storage/det_trench, - /obj/item/clothing/suit/storage/det_trench/grey, - /obj/item/clothing/suit/storage/forensics/red, - /obj/item/clothing/suit/storage/forensics/blue, - /obj/item/clothing/under/det/corporate = 2, - /obj/item/clothing/accessory/badge/holo/detective = 2, - /obj/item/clothing/gloves/black = 2 - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Investigation clothing" - access = access_forensics_lockers - group = "Security" - -/datum/supply_packs/officergear - name = "Officer equipment" - contains = list( - /obj/item/clothing/suit/storage/vest/officer, - /obj/item/clothing/head/helmet, - /obj/item/weapon/cartridge/security, - /obj/item/clothing/accessory/badge/holo, - /obj/item/clothing/accessory/badge/holo/cord, - /obj/item/device/radio/headset/headset_sec, - /obj/item/weapon/storage/belt/security, - /obj/item/device/flash, - /obj/item/weapon/reagent_containers/spray/pepper, - /obj/item/weapon/grenade/flashbang, - /obj/item/weapon/melee/baton/loaded, - /obj/item/clothing/glasses/sunglasses/sechud, - /obj/item/taperoll/police, - /obj/item/clothing/gloves/black, - /obj/item/device/hailer, - /obj/item/device/flashlight/flare, - /obj/item/clothing/accessory/storage/black_vest, - /obj/item/clothing/head/soft/sec/corp, - /obj/item/clothing/under/rank/security/corp, - /obj/item/weapon/gun/energy/taser, - /obj/item/device/flashlight/maglight - ) - cost = 30 - containertype = "/obj/structure/closet/crate/secure" - containername = "Officer equipment" - access = access_brig - group = "Security" - -/datum/supply_packs/wardengear - name = "Warden equipment" - contains = list( - /obj/item/clothing/suit/storage/vest/warden, - /obj/item/clothing/under/rank/warden, - /obj/item/clothing/under/rank/warden/corp, - /obj/item/clothing/suit/armor/vest/warden, - /obj/item/clothing/suit/armor/vest/warden/alt, - /obj/item/clothing/head/helmet/warden, - /obj/item/weapon/cartridge/security, - /obj/item/device/radio/headset/headset_sec, - /obj/item/clothing/glasses/sunglasses/sechud, - /obj/item/taperoll/police, - /obj/item/device/hailer, - /obj/item/clothing/accessory/badge/holo/warden, - /obj/item/weapon/storage/box/flashbangs, - /obj/item/weapon/storage/belt/security, - /obj/item/weapon/reagent_containers/spray/pepper, - /obj/item/weapon/melee/baton/loaded, - /obj/item/weapon/storage/box/holobadge, - /obj/item/clothing/head/beret/sec/corporate/warden, - /obj/item/device/flashlight/maglight - ) - cost = 45 - containertype = "/obj/structure/closet/crate/secure" - containername = "Warden equipment" - access = access_armory - group = "Security" - -/datum/supply_packs/headofsecgear - name = "Head of security equipment" - contains = list( - /obj/item/clothing/head/helmet/HoS, - /obj/item/clothing/suit/storage/vest/hos, - /obj/item/clothing/under/rank/head_of_security/corp, - /obj/item/clothing/suit/armor/hos, - /obj/item/clothing/head/helmet/HoS/dermal, - /obj/item/weapon/cartridge/hos, - /obj/item/device/radio/headset/heads/hos, - /obj/item/clothing/glasses/sunglasses/sechud, - /obj/item/weapon/storage/belt/security, - /obj/item/device/flash, - /obj/item/device/hailer, - /obj/item/clothing/accessory/badge/holo/hos, - /obj/item/clothing/accessory/holster/waist, - /obj/item/weapon/melee/telebaton, - /obj/item/weapon/shield/riot/tele, - /obj/item/clothing/head/beret/sec/corporate/hos, - /obj/item/device/flashlight/maglight - ) - cost = 65 - containertype = "/obj/structure/closet/crate/secure" - containername = "Head of security equipment" - access = access_hos - group = "Security" - -/datum/supply_packs/securityclothing - name = "Security uniform crate" - contains = list( - /obj/item/weapon/storage/backpack/satchel/sec = 2, - /obj/item/weapon/storage/backpack/security = 2, - /obj/item/clothing/accessory/armband = 4, - /obj/item/clothing/under/rank/security = 4, - /obj/item/clothing/under/rank/security2 = 4, - /obj/item/clothing/under/rank/warden, - /obj/item/clothing/under/rank/head_of_security, - /obj/item/clothing/suit/armor/hos/jensen, - /obj/item/clothing/head/soft/sec = 4, - /obj/item/clothing/gloves/black = 4, - /obj/item/weapon/storage/box/holobadge - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security uniform crate" - access = access_security - group = "Security" - -/datum/supply_packs/navybluesecurityclothing - name = "Navy blue security uniform crate" - contains = list( - /obj/item/weapon/storage/backpack/satchel/sec = 2, - /obj/item/weapon/storage/backpack/security = 2, - /obj/item/clothing/under/rank/security/navyblue = 4, - /obj/item/clothing/suit/security/navyofficer = 4, - /obj/item/clothing/under/rank/warden/navyblue, - /obj/item/clothing/suit/security/navywarden, - /obj/item/clothing/under/rank/head_of_security/navyblue, - /obj/item/clothing/suit/security/navyhos, - /obj/item/clothing/head/beret/sec/navy/officer = 4, - /obj/item/clothing/head/beret/sec/navy/warden, - /obj/item/clothing/head/beret/sec/navy/hos, - /obj/item/clothing/gloves/black = 4, - /obj/item/weapon/storage/box/holobadge - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Navy blue security uniform crate" - access = access_security - group = "Security" - -/datum/supply_packs/corporatesecurityclothing - name = "Corporate security uniform crate" - contains = list( - /obj/item/weapon/storage/backpack/satchel/sec = 2, - /obj/item/weapon/storage/backpack/security = 2, - /obj/item/clothing/under/rank/security/corp = 4, - /obj/item/clothing/head/soft/sec/corp = 4, - /obj/item/clothing/under/rank/warden/corp, - /obj/item/clothing/under/rank/head_of_security/corp, - /obj/item/clothing/head/beret/sec = 4, - /obj/item/clothing/head/beret/sec/corporate/warden, - /obj/item/clothing/head/beret/sec/corporate/hos, - /obj/item/clothing/under/det/corporate = 2, - /obj/item/clothing/gloves/black = 4, - /obj/item/weapon/storage/box/holobadge - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Corporate security uniform crate" - access = access_security - group = "Security" - -/datum/supply_packs/securitybiosuit - name = "Security biohazard gear" - contains = list( - /obj/item/clothing/head/bio_hood/security, - /obj/item/clothing/under/rank/security, - /obj/item/clothing/suit/bio_suit/security, - /obj/item/clothing/shoes/white, - /obj/item/clothing/mask/gas, - /obj/item/weapon/tank/oxygen, - /obj/item/clothing/gloves/latex - ) - cost = 35 - containertype = "/obj/structure/closet/crate/secure" - containername = "Security biohazard gear" - access = access_security - group = "Security" - -/datum/supply_packs/bolt_rifles_competitive - name = "Competitive shooting crate" - contains = list( - /obj/item/device/assembly/timer, - /obj/item/weapon/gun/projectile/shotgun/pump/rifle/practice = 2, - /obj/item/ammo_magazine/clip/a762/practice = 4, - /obj/item/target = 2, - /obj/item/target/alien = 2, - /obj/item/target/syndicate = 2 - ) - cost = 40 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Weapons crate" - access = access_security - group = "Security" - -/datum/supply_packs/bolt_rifles_mosin - name = "Surplus militia rifles" - contains = list( - /obj/item/weapon/gun/projectile/shotgun/pump/rifle/mosin = 3, - /obj/item/ammo_magazine/clip/a762 = 6 - ) - cost = 50 - hidden = 1 - containertype = /obj/structure/closet/crate/secure/weapon - containername = "Weapons crate" - access = access_security - group = "Security" - -/datum/supply_packs/medicalextragear - name = "Medical surplus equipment" - contains = list( - /obj/item/weapon/storage/belt/medical = 3, - /obj/item/clothing/glasses/hud/health = 3, - /obj/item/device/radio/headset/headset_med/alt = 3, - /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 3 - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical surplus equipment" - access = access_medical - group = "Medical" - -/datum/supply_packs/cmogear - name = "Chief medical officer equipment" - contains = list( - /obj/item/weapon/storage/belt/medical, - /obj/item/device/radio/headset/heads/cmo, - /obj/item/clothing/under/rank/chief_medical_officer, - /obj/item/weapon/reagent_containers/hypospray, - /obj/item/clothing/accessory/stethoscope, - /obj/item/clothing/glasses/hud/health, - /obj/item/clothing/suit/storage/toggle/labcoat/cmo, - /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, - /obj/item/clothing/mask/surgical, - /obj/item/clothing/shoes/white, - /obj/item/weapon/cartridge/cmo, - /obj/item/clothing/gloves/latex, - /obj/item/device/healthanalyzer, - /obj/item/device/flashlight/pen, - /obj/item/weapon/reagent_containers/syringe - ) - cost = 60 - containertype = "/obj/structure/closet/crate/secure" - containername = "Chief medical officer equipment" - access = access_cmo - group = "Medical" - -/datum/supply_packs/doctorgear - name = "Medical Doctor equipment" - contains = list( - /obj/item/weapon/storage/belt/medical, - /obj/item/device/radio/headset/headset_med, - /obj/item/clothing/under/rank/medical, - /obj/item/clothing/accessory/stethoscope, - /obj/item/clothing/glasses/hud/health, - /obj/item/clothing/suit/storage/toggle/labcoat, - /obj/item/clothing/mask/surgical, - /obj/item/weapon/storage/firstaid/adv, - /obj/item/clothing/shoes/white, - /obj/item/weapon/cartridge/medical, - /obj/item/clothing/gloves/latex, - /obj/item/device/healthanalyzer, - /obj/item/device/flashlight/pen, - /obj/item/weapon/reagent_containers/syringe - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical Doctor equipment" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/chemistgear - name = "Chemist equipment" - contains = list( - /obj/item/weapon/storage/box/beakers, - /obj/item/device/radio/headset/headset_med, - /obj/item/weapon/storage/box/autoinjectors, - /obj/item/clothing/under/rank/chemist, - /obj/item/clothing/glasses/science, - /obj/item/clothing/suit/storage/toggle/labcoat/chemist, - /obj/item/clothing/mask/surgical, - /obj/item/clothing/shoes/white, - /obj/item/weapon/cartridge/chemistry, - /obj/item/clothing/gloves/latex, - /obj/item/weapon/reagent_containers/dropper, - /obj/item/device/healthanalyzer, - /obj/item/weapon/storage/box/pillbottles, - /obj/item/weapon/reagent_containers/syringe - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Chemist equipment" - access = access_chemistry - group = "Medical" - -/datum/supply_packs/paramedicgear - name = "Paramedic equipment" - contains = list( - /obj/item/weapon/storage/belt/medical/emt, - /obj/item/device/radio/headset/headset_med, - /obj/item/clothing/under/rank/medical/black, - /obj/item/clothing/accessory/armband/medgreen, - /obj/item/clothing/glasses/hud/health, - /obj/item/clothing/suit/storage/toggle/labcoat/emt, - /obj/item/clothing/under/rank/medical/paramedic, - /obj/item/clothing/suit/storage/toggle/fr_jacket, - /obj/item/clothing/mask/gas, - /obj/item/clothing/under/rank/medical/paramedic, - /obj/item/clothing/accessory/stethoscope, - /obj/item/weapon/storage/firstaid/adv, - /obj/item/clothing/shoes/jackboots, - /obj/item/clothing/gloves/latex, - /obj/item/device/healthanalyzer, - /obj/item/weapon/cartridge/medical, - /obj/item/device/flashlight/pen, - /obj/item/weapon/reagent_containers/syringe, - /obj/item/clothing/accessory/storage/white_vest - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Paramedic equipment" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/psychiatristgear - name = "Psychiatrist equipment" - contains = list( - /obj/item/clothing/under/rank/psych, - /obj/item/device/radio/headset/headset_med, - /obj/item/clothing/under/rank/psych/turtleneck, - /obj/item/clothing/shoes/laceup, - /obj/item/clothing/suit/storage/toggle/labcoat, - /obj/item/clothing/shoes/white, - /obj/item/weapon/clipboard, - /obj/item/weapon/folder/white, - /obj/item/weapon/pen, - /obj/item/weapon/cartridge/medical - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Psychiatrist equipment" - access = access_psychiatrist - group = "Medical" - -/datum/supply_packs/medicalscrubs - name = "Medical scrubs" - contains = list( - /obj/item/clothing/shoes/white = 3,, - /obj/item/clothing/under/rank/medical/blue = 3, - /obj/item/clothing/under/rank/medical/green = 3, - /obj/item/clothing/under/rank/medical/purple = 3, - /obj/item/clothing/under/rank/medical/black = 3, - /obj/item/clothing/head/surgery = 3, - /obj/item/clothing/head/surgery/purple = 3, - /obj/item/clothing/head/surgery/blue = 3, - /obj/item/clothing/head/surgery/green = 3, - /obj/item/clothing/head/surgery/black = 3, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical scrubs crate" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/autopsy - name = "Autopsy equipment" - contains = list( - /obj/item/weapon/folder/white, - /obj/item/device/camera, - /obj/item/device/camera_film = 2, - /obj/item/weapon/autopsy_scanner, - /obj/item/weapon/scalpel, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves, - /obj/item/weapon/pen - ) - cost = 20 - containertype = "/obj/structure/closet/crate/secure" - containername = "Autopsy equipment crate" - access = access_morgue - group = "Medical" - -/datum/supply_packs/medicaluniforms - name = "Medical uniforms" - contains = list( - /obj/item/clothing/shoes/white = 3, - /obj/item/clothing/under/rank/chief_medical_officer, - /obj/item/clothing/under/rank/geneticist, - /obj/item/clothing/under/rank/virologist, - /obj/item/clothing/under/rank/nursesuit, - /obj/item/clothing/under/rank/nurse, - /obj/item/clothing/under/rank/orderly, - /obj/item/clothing/under/rank/medical = 3, - /obj/item/clothing/under/rank/medical/paramedic = 3, - /obj/item/clothing/suit/storage/toggle/labcoat = 3, - /obj/item/clothing/suit/storage/toggle/labcoat/cmo, - /obj/item/clothing/suit/storage/toggle/labcoat/emt, - /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, - /obj/item/clothing/suit/storage/toggle/labcoat/genetics, - /obj/item/clothing/suit/storage/toggle/labcoat/virologist, - /obj/item/clothing/suit/storage/toggle/labcoat/chemist, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical uniform crate" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/medicalbiosuits - name = "Medical biohazard gear" - contains = list( - /obj/item/clothing/head/bio_hood = 3, - /obj/item/clothing/suit/bio_suit = 3, - /obj/item/clothing/head/bio_hood/virology = 2, - /obj/item/clothing/suit/bio_suit/cmo, - /obj/item/clothing/head/bio_hood/cmo, - /obj/item/clothing/mask/gas = 5, - /obj/item/weapon/tank/oxygen = 5, - /obj/item/weapon/storage/box/masks, - /obj/item/weapon/storage/box/gloves - ) - cost = 50 - containertype = "/obj/structure/closet/crate/secure" - containername = "Medical biohazard equipment" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/portablefreezers - name = "Portable freezers crate" - contains = list(/obj/item/weapon/storage/box/freezer = 7) - cost = 25 - containertype = "/obj/structure/closet/crate/secure" - containername = "Portable freezers" - access = access_medical_equip - group = "Medical" - -/datum/supply_packs/minergear - name = "Shaft miner equipment" - contains = list( - /obj/item/weapon/storage/backpack/industrial, - /obj/item/weapon/storage/backpack/satchel/eng, - /obj/item/clothing/suit/storage/hooded/wintercoat/miner, - /obj/item/device/radio/headset/headset_cargo, - /obj/item/clothing/under/rank/miner, - /obj/item/clothing/gloves/black, - /obj/item/clothing/shoes/black, - /obj/item/device/analyzer, - /obj/item/weapon/storage/bag/ore, - /obj/item/device/flashlight/lantern, - /obj/item/weapon/shovel, - /obj/item/weapon/pickaxe, - /obj/item/weapon/mining_scanner, - /obj/item/clothing/glasses/material, - /obj/item/clothing/glasses/meson - ) - cost = 15 - containertype = "/obj/structure/closet/crate/secure" - containername = "Shaft miner equipment" - access = access_mining - group = "Supply" - -/datum/supply_packs/chaplaingear - name = "Chaplain equipment" - contains = list( - /obj/item/clothing/under/rank/chaplain, - /obj/item/clothing/shoes/black, - /obj/item/clothing/suit/nun, - /obj/item/clothing/head/nun_hood, - /obj/item/clothing/suit/chaplain_hoodie, - /obj/item/clothing/head/chaplain_hood, - /obj/item/clothing/suit/holidaypriest, - /obj/item/clothing/under/wedding/bride_white, - /obj/item/weapon/storage/backpack/cultpack, - /obj/item/weapon/storage/fancy/candle_box = 3 - ) - cost = 10 - containertype = "/obj/structure/closet/crate" - containername = "Chaplain equipment crate" - group = "Miscellaneous" diff --git a/code/datums/supplypacks/atmospherics.dm b/code/datums/supplypacks/atmospherics.dm new file mode 100644 index 00000000000..3837bc40267 --- /dev/null +++ b/code/datums/supplypacks/atmospherics.dm @@ -0,0 +1,104 @@ +/* +* Here is where any supply packs related +* to being atmospherics tasks live. +*/ +/datum/supply_packs/atmos + group = "Atmospherics" + +/datum/supply_packs/atmos/internals + name = "Internals crate" + contains = list( + /obj/item/clothing/mask/gas = 3, + /obj/item/weapon/tank/air = 3 + ) + cost = 10 + containertype = /obj/structure/closet/crate/internals + containername = "Internals crate" + +/datum/supply_packs/atmos/evacuation + name = "Emergency equipment" + contains = list( + /obj/item/weapon/storage/toolbox/emergency = 2, + /obj/item/clothing/suit/storage/hazardvest = 2, + /obj/item/clothing/suit/storage/vest = 2, + /obj/item/weapon/tank/emergency_oxygen/engi = 4, + /obj/item/clothing/suit/space/emergency = 4, + /obj/item/clothing/head/helmet/space/emergency = 4, + /obj/item/clothing/mask/gas = 4 + ) + cost = 45 + containertype = /obj/structure/closet/crate/internals + containername = "Emergency crate" + +/datum/supply_packs/atmos/inflatable + name = "Inflatable barriers" + contains = list(/obj/item/weapon/storage/briefcase/inflatable = 3) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Inflatable Barrier Crate" + +/datum/supply_packs/atmos/canister_empty + name = "Empty gas canister" + cost = 7 + containername = "Empty gas canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister) + +/datum/supply_packs/atmos/canister_air + name = "Air canister" + cost = 10 + containername = "Air canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister/air) + +/datum/supply_packs/atmos/canister_oxygen + name = "Oxygen canister" + cost = 15 + containername = "Oxygen canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister/oxygen) + +/datum/supply_packs/atmos/canister_nitrogen + name = "Nitrogen canister" + cost = 10 + containername = "Nitrogen canister crate" + containertype = /obj/structure/largecrate + contains = list(/obj/machinery/portable_atmospherics/canister/nitrogen) + +/datum/supply_packs/atmos/canister_phoron + name = "Phoron gas canister" + cost = 60 + containername = "Phoron gas canister crate" + containertype = /obj/structure/closet/crate/secure/large + access = access_atmospherics + contains = list(/obj/machinery/portable_atmospherics/canister/phoron) + +/datum/supply_packs/atmos/canister_sleeping_agent + name = "N2O gas canister" + cost = 40 + containername = "N2O gas canister crate" + containertype = /obj/structure/closet/crate/secure/large + access = access_atmospherics + contains = list(/obj/machinery/portable_atmospherics/canister/sleeping_agent) + +/datum/supply_packs/atmos/canister_carbon_dioxide + name = "Carbon dioxide gas canister" + cost = 40 + containername = "CO2 canister crate" + containertype = /obj/structure/closet/crate/secure/large + access = access_atmospherics + contains = list(/obj/machinery/portable_atmospherics/canister/carbon_dioxide) + +/datum/supply_packs/atmos/voidsuits + name = "Atmospheric voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/atmos = 2, + /obj/item/clothing/head/helmet/space/void/atmos = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2, + ) + cost = 45 + containertype = "/obj/structure/closet/crate/secure" + containername = "Atmospheric voidsuit crate" + access = access_atmospherics \ No newline at end of file diff --git a/code/datums/supplypacks/contraband.dm b/code/datums/supplypacks/contraband.dm new file mode 100644 index 00000000000..ebddcc6e4cb --- /dev/null +++ b/code/datums/supplypacks/contraband.dm @@ -0,0 +1,44 @@ +/* +* Here is where any supply packs that may or may not be legal +* and require modification of the supply controller live. +*/ + +/datum/supply_packs/randomised/contraband + num_contained = 5 + contains = list( + /obj/item/seeds/bloodtomatoseed, + /obj/item/weapon/storage/pill_bottle/zoom, + /obj/item/weapon/storage/pill_bottle/happy, + /obj/item/weapon/reagent_containers/food/drinks/bottle/pwine + ) + + name = "Contraband crate" + cost = 30 + containertype = /obj/structure/closet/crate + containername = "Unlabeled crate" + contraband = 1 + group = "Operations" + +/datum/supply_packs/security/specialops + name = "Special Ops supplies" + contains = list( + /obj/item/weapon/storage/box/emps, + /obj/item/weapon/grenade/smokebomb = 3, + /obj/item/weapon/pen/reagent/paralysis, + /obj/item/weapon/grenade/chem_grenade/incendiary + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Special Ops crate" + hidden = 1 + +/datum/supply_packs/security/bolt_rifles_mosin + name = "Surplus militia rifles" + contains = list( + /obj/item/weapon/gun/projectile/shotgun/pump/rifle/mosin = 3, + /obj/item/ammo_magazine/clip/a762 = 6 + ) + cost = 50 + hidden = 1 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Weapons crate" \ No newline at end of file diff --git a/code/datums/supplypacks/engineering.dm b/code/datums/supplypacks/engineering.dm new file mode 100644 index 00000000000..4f1a43cb417 --- /dev/null +++ b/code/datums/supplypacks/engineering.dm @@ -0,0 +1,303 @@ +/* +* Here is where any supply packs +* related to engineering tasks live. +*/ +/datum/supply_packs/eng + group = "Engineering" + +/datum/supply_packs/eng/lightbulbs + name = "Replacement lights" + contains = list(/obj/item/weapon/storage/box/lights/mixed = 3) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Replacement lights" + +/datum/supply_packs/eng/metal50 + name = "50 metal sheets" + contains = list(/obj/item/stack/material/steel) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Metal sheets crate" + +/datum/supply_packs/eng/glass50 + name = "50 glass sheets" + contains = list(/obj/item/stack/material/glass) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Glass sheets crate" + +/datum/supply_packs/eng/wood50 + name = "50 wooden planks" + contains = list(/obj/item/stack/material/wood) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Wooden planks crate" + +/datum/supply_packs/eng/plastic50 + name = "50 plastic sheets" + contains = list(/obj/item/stack/material/plastic) + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Plastic sheets crate" + +/datum/supply_packs/eng/smescoil + name = "Superconducting Magnetic Coil" + contains = list(/obj/item/weapon/smes_coil) + cost = 75 + containertype = /obj/structure/closet/crate + containername = "Superconducting Magnetic Coil crate" + +/datum/supply_packs/eng/electrical + name = "Electrical maintenance crate" + contains = list( + /obj/item/weapon/storage/toolbox/electrical = 2, + /obj/item/clothing/gloves/yellow = 2, + /obj/item/weapon/cell = 2, + /obj/item/weapon/cell/high = 2 + ) + cost = 15 + containertype = /obj/structure/closet/crate + containername = "Electrical maintenance crate" + +/datum/supply_packs/eng/mechanical + name = "Mechanical maintenance crate" + contains = list( + /obj/item/weapon/storage/belt/utility/full = 3, + /obj/item/clothing/suit/storage/hazardvest = 3, + /obj/item/clothing/head/welding = 2, + /obj/item/clothing/head/hardhat + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Mechanical maintenance crate" + +/datum/supply_packs/eng/fueltank + name = "Fuel tank crate" + contains = list(/obj/structure/reagent_dispensers/fueltank) + cost = 8 + containertype = /obj/structure/largecrate + containername = "fuel tank crate" + +/datum/supply_packs/eng/solar + name = "Solar Pack crate" + contains = list( + /obj/item/solar_assembly = 21, + /obj/item/weapon/circuitboard/solar_control, + /obj/item/weapon/tracker_electronics, + /obj/item/weapon/paper/solar + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Solar pack crate" + +/datum/supply_packs/eng/engine + name = "Emitter crate" + contains = list(/obj/machinery/power/emitter = 2) + cost = 10 + containertype = /obj/structure/closet/crate/secure + containername = "Emitter crate" + access = access_ce + +/datum/supply_packs/engine/eng/field_gen + name = "Field Generator crate" + contains = list(/obj/machinery/field_generator = 2) + containertype = /obj/structure/closet/crate/secure + containername = "Field Generator crate" + access = access_ce + +/datum/supply_packs/eng/engine/sing_gen + name = "Singularity Generator crate" + contains = list(/obj/machinery/the_singularitygen) + containertype = /obj/structure/closet/crate/secure + containername = "Singularity Generator crate" + access = access_ce + +/datum/supply_packs/eng/engine/collector + name = "Collector crate" + contains = list(/obj/machinery/power/rad_collector = 3) + containername = "Collector crate" + +/datum/supply_packs/eng/engine/PA + name = "Particle Accelerator crate" + cost = 40 + contains = list( + /obj/structure/particle_accelerator/fuel_chamber, + /obj/machinery/particle_accelerator/control_box, + /obj/structure/particle_accelerator/particle_emitter/center, + /obj/structure/particle_accelerator/particle_emitter/left, + /obj/structure/particle_accelerator/particle_emitter/right, + /obj/structure/particle_accelerator/power_box, + /obj/structure/particle_accelerator/end_cap + ) + containertype = /obj/structure/closet/crate/secure + containername = "Particle Accelerator crate" + access = access_ce + +/datum/supply_packs/eng/robotics + name = "Robotics assembly crate" + contains = list( + /obj/item/device/assembly/prox_sensor = 3, + /obj/item/weapon/storage/toolbox/electrical, + /obj/item/device/flash = 4, + /obj/item/weapon/cell/high = 2 + ) + cost = 10 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Robotics assembly" + access = access_robotics + +/datum/supply_packs/eng/robolimbs_basic + name = "Basic robolimb blueprints" + contains = list( + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/xion + ) + cost = 15 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Robolimb blueprints (basic)" + access = access_robotics + +/datum/supply_packs/eng/robolimbs_adv + name = "All robolimb blueprints" + contains = list( + /obj/item/weapon/disk/limb/bishop, + /obj/item/weapon/disk/limb/hesphiastos, + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/veymed, + /obj/item/weapon/disk/limb/wardtakahashi, + /obj/item/weapon/disk/limb/xion, + /obj/item/weapon/disk/limb/zenghu, + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Robolimb blueprints (adv)" + access = access_robotics + +/datum/supply_packs/eng/shield_gen + contains = list(/obj/item/weapon/circuitboard/shield_gen) + name = "Bubble shield generator circuitry" + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "bubble shield generator circuitry crate" + access = access_ce + +/datum/supply_packs/eng/shield_gen_ex + contains = list(/obj/item/weapon/circuitboard/shield_gen_ex) + name = "Hull shield generator circuitry" + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "hull shield generator circuitry crate" + access = access_ce + +/datum/supply_packs/eng/shield_cap + contains = list(/obj/item/weapon/circuitboard/shield_cap) + name = "Bubble shield capacitor circuitry" + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "shield capacitor circuitry crate" + access = access_ce + +/datum/supply_packs/eng/smbig + name = "Supermatter Core" + contains = list(/obj/machinery/power/supermatter) + cost = 150 + containertype = /obj/structure/closet/crate/secure/phoron + containername = "Supermatter crate (CAUTION)" + access = access_ce + +/datum/supply_packs/eng/teg + contains = list(/obj/machinery/power/generator) + name = "Mark I Thermoelectric Generator" + cost = 75 + containertype = /obj/structure/closet/crate/secure/large + containername = "Mk1 TEG crate" + access = access_engine + +/datum/supply_packs/eng/circulator + contains = list(/obj/machinery/atmospherics/binary/circulator) + name = "Binary atmospheric circulator" + cost = 60 + containertype = /obj/structure/closet/crate/secure/large + containername = "Atmospheric circulator crate" + access = access_engine + +/datum/supply_packs/eng/air_dispenser + contains = list(/obj/machinery/pipedispenser/orderable) + name = "Pipe Dispenser" + cost = 35 + containertype = /obj/structure/closet/crate/secure/large + containername = "Pipe Dispenser Crate" + access = access_atmospherics + +/datum/supply_packs/eng/disposals_dispenser + contains = list(/obj/machinery/pipedispenser/disposal/orderable) + name = "Disposals Pipe Dispenser" + cost = 35 + containertype = /obj/structure/closet/crate/secure/large + containername = "Disposal Dispenser Crate" + access = access_atmospherics + +/datum/supply_packs/eng/radsuit + contains = list( + /obj/item/clothing/suit/radiation = 3, + /obj/item/clothing/head/radiation = 3 + ) + name = "Radiation suits package" + cost = 20 + containertype = /obj/structure/closet/radiation + containername = "Radiation suit locker" + +/datum/supply_packs/eng/pacman_parts + name = "P.A.C.M.A.N. portable generator parts" + cost = 45 + containername = "P.A.C.M.A.N. Portable Generator Construction Kit" + containertype = /obj/structure/closet/crate/secure + access = access_tech_storage + contains = list( + /obj/item/weapon/stock_parts/micro_laser, + /obj/item/weapon/stock_parts/capacitor, + /obj/item/weapon/stock_parts/matter_bin, + /obj/item/weapon/circuitboard/pacman + ) + +/datum/supply_packs/eng/super_pacman_parts + name = "Super P.A.C.M.A.N. portable generator parts" + cost = 55 + containername = "Super P.A.C.M.A.N. portable generator construction kit" + containertype = /obj/structure/closet/crate/secure + access = access_tech_storage + contains = list( + /obj/item/weapon/stock_parts/micro_laser, + /obj/item/weapon/stock_parts/capacitor, + /obj/item/weapon/stock_parts/matter_bin, + /obj/item/weapon/circuitboard/pacman/super + ) + +/datum/supply_packs/eng/painters + name = "Station Painting Supplies" + cost = 10 + containername = "station painting supplies crate" + containertype = /obj/structure/closet/crate + contains = list( + /obj/item/device/pipe_painter = 2, + /obj/item/device/floor_painter = 2, + /obj/item/device/closet_painter = 2 + ) + +/datum/supply_packs/eng/voidsuits + name = "Engineering voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/engineering = 2, + /obj/item/clothing/head/helmet/space/void/engineering = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 40 + containertype = "/obj/structure/closet/crate/secure" + containername = "Engineering voidsuit crate" + access = access_engine_equip \ No newline at end of file diff --git a/code/datums/supplypacks/hospitality.dm b/code/datums/supplypacks/hospitality.dm new file mode 100644 index 00000000000..c35fb6025f4 --- /dev/null +++ b/code/datums/supplypacks/hospitality.dm @@ -0,0 +1,72 @@ +/* +* Here is where any supply packs related +* to being hospitable tasks live +*/ +/datum/supply_packs/hospitality + group = "Hospitality" + +/datum/supply_packs/hospitality/party + name = "Party equipment" + contains = list( + /obj/item/weapon/storage/box/mixedglasses = 2, + /obj/item/weapon/storage/box/glasses/square, + /obj/item/weapon/reagent_containers/food/drinks/shaker, + /obj/item/weapon/reagent_containers/food/drinks/flask/barflask, + /obj/item/weapon/reagent_containers/food/drinks/bottle/patron, + /obj/item/weapon/reagent_containers/food/drinks/bottle/goldschlager, + /obj/item/weapon/reagent_containers/food/drinks/bottle/specialwhiskey, + /obj/item/weapon/storage/fancy/cigarettes/dromedaryco, + /obj/item/weapon/lipstick/random, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/ale = 2, + /obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 4, + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Party equipment" + +/datum/supply_packs/hospitality/barsupplies + name = "Bar supplies" + contains = list( + /obj/item/weapon/storage/box/glasses/cocktail, + /obj/item/weapon/storage/box/glasses/rocks, + /obj/item/weapon/storage/box/glasses/square, + /obj/item/weapon/storage/box/glasses/pint, + /obj/item/weapon/storage/box/glasses/wine, + /obj/item/weapon/storage/box/glasses/shake, + /obj/item/weapon/storage/box/glasses/shot, + /obj/item/weapon/storage/box/glasses/mug, + /obj/item/weapon/reagent_containers/food/drinks/shaker, + /obj/item/weapon/storage/box/glass_extras/straws, + /obj/item/weapon/storage/box/glass_extras/sticks + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "crate of bar supplies" + +/datum/supply_packs/hospitality/lasertag + name = "Lasertag equipment" + contains = list( + /obj/item/weapon/gun/energy/lasertag/red, + /obj/item/clothing/suit/redtag, + /obj/item/weapon/gun/energy/lasertag/blue, + /obj/item/clothing/suit/bluetag + ) + containertype = /obj/structure/closet + containername = "Lasertag Closet" + cost = 20 + +/datum/supply_packs/randomised/hospitality/ + group = "Hospitality" + +/datum/supply_packs/randomised/hospitality/pizza + num_contained = 5 + contains = list( + /obj/item/pizzabox/margherita, + /obj/item/pizzabox/mushroom, + /obj/item/pizzabox/meat, + /obj/item/pizzabox/vegetable + ) + name = "Surprise pack of five pizzas" + cost = 15 + containertype = /obj/structure/closet/crate/freezer + containername = "Pizza crate" \ No newline at end of file diff --git a/code/datums/supplypacks/hydroponics.dm b/code/datums/supplypacks/hydroponics.dm new file mode 100644 index 00000000000..11053ee4cd8 --- /dev/null +++ b/code/datums/supplypacks/hydroponics.dm @@ -0,0 +1,161 @@ +/* +* Here is where any supply packs +* related to hydroponics tasks live. +*/ +/datum/supply_packs/hydro + group = "Hydroponics" + +/datum/supply_packs/hydro/monkey + name = "Monkey crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes) + cost = 20 + containertype = /obj/structure/closet/crate/freezer + containername = "Monkey crate" + +/datum/supply_packs/hydro/farwa + name = "Farwa crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes/farwacubes) + cost = 30 + containertype = /obj/structure/closet/crate/freezer + containername = "Farwa crate" + +/datum/supply_packs/hydro/neara + name = "Neaera crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes/neaeracubes) + cost = 30 + containertype = /obj/structure/closet/crate/freezer + containername = "Neaera crate" + +/datum/supply_packs/hydro/stok + name = "Stok crate" + contains = list (/obj/item/weapon/storage/box/monkeycubes/stokcubes) + cost = 30 + containertype = /obj/structure/closet/crate/freezer + containername = "Stok crate" + +/datum/supply_packs/hydro/lisa + name = "Corgi Crate" + contains = list() + cost = 50 + containertype = /obj/structure/largecrate/animal/corgi + containername = "Corgi Crate" + +/datum/supply_packs/hydro/hydroponics + name = "Hydroponics Supply Crate" + contains = list( + /obj/item/weapon/reagent_containers/spray/plantbgone = 4, + /obj/item/weapon/reagent_containers/glass/bottle/ammonia = 2, + /obj/item/weapon/material/hatchet, + /obj/item/weapon/material/minihoe, + /obj/item/device/analyzer/plant_analyzer, + /obj/item/clothing/gloves/botanic_leather, + /obj/item/clothing/suit/apron, + /obj/item/weapon/material/minihoe, + /obj/item/weapon/storage/box/botanydisk + ) + cost = 15 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Hydroponics crate" + access = access_hydroponics + +/datum/supply_packs/hydro/cow + name = "Cow crate" + cost = 30 + containertype = /obj/structure/largecrate/animal/cow + containername = "Cow crate" + access = access_hydroponics + +/datum/supply_packs/hydro/goat + name = "Goat crate" + cost = 25 + containertype = /obj/structure/largecrate/animal/goat + containername = "Goat crate" + access = access_hydroponics + +/datum/supply_packs/hydro/chicken + name = "Chicken crate" + cost = 20 + containertype = /obj/structure/largecrate/animal/chick + containername = "Chicken crate" + access = access_hydroponics + +/datum/supply_packs/hydro/seeds + name = "Seeds crate" + contains = list( + /obj/item/seeds/chiliseed, + /obj/item/seeds/berryseed, + /obj/item/seeds/cornseed, + /obj/item/seeds/eggplantseed, + /obj/item/seeds/tomatoseed, + /obj/item/seeds/appleseed, + /obj/item/seeds/soyaseed, + /obj/item/seeds/wheatseed, + /obj/item/seeds/carrotseed, + /obj/item/seeds/harebell, + /obj/item/seeds/lemonseed, + /obj/item/seeds/orangeseed, + /obj/item/seeds/grassseed, + /obj/item/seeds/sunflowerseed, + /obj/item/seeds/chantermycelium, + /obj/item/seeds/potatoseed, + /obj/item/seeds/sugarcaneseed + ) + cost = 10 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Seeds crate" + access = access_hydroponics + +/datum/supply_packs/hydro/weedcontrol + name = "Weed control crate" + contains = list( + /obj/item/weapon/material/hatchet = 2, + /obj/item/weapon/reagent_containers/spray/plantbgone = 4, + /obj/item/clothing/mask/gas = 2, + /obj/item/weapon/grenade/chem_grenade/antiweed = 2 + ) + cost = 25 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Weed control crate" + access = access_hydroponics + +/datum/supply_packs/hydro/exoticseeds + name = "Exotic seeds crate" + contains = list( + /obj/item/seeds/replicapod = 2, + /obj/item/seeds/libertymycelium, + /obj/item/seeds/reishimycelium, + /obj/item/seeds/random = 6, + /obj/item/seeds/kudzuseed + ) + cost = 15 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Exotic Seeds crate" + access = access_hydroponics + +/datum/supply_packs/hydro/watertank + name = "Water tank crate" + contains = list(/obj/structure/reagent_dispensers/watertank) + cost = 8 + containertype = /obj/structure/largecrate + containername = "water tank crate" + +/datum/supply_packs/hydro/bee_keeper + name = "Beekeeping crate" + contains = list( + /obj/item/beehive_assembly, + /obj/item/bee_smoker, + /obj/item/honey_frame = 5, + /obj/item/bee_pack + ) + cost = 40 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Beekeeping crate" + access = access_hydroponics + +/datum/supply_packs/hydro/tray + name = "Empty hydroponics tray" + cost = 30 + containertype = /obj/structure/closet/crate/hydroponics + containername = "Hydroponics tray crate" + contains = list(/obj/machinery/portable_atmospherics/hydroponics{anchored = 0}) + access = access_hydroponics \ No newline at end of file diff --git a/code/datums/supplypacks/medical.dm b/code/datums/supplypacks/medical.dm new file mode 100644 index 00000000000..ef67cb1a95e --- /dev/null +++ b/code/datums/supplypacks/medical.dm @@ -0,0 +1,313 @@ +/* +* Here is where any supply packs +* related to medical tasks live. +*/ +/datum/supply_packs/med + group = "Medical" + +/datum/supply_packs/med/medical + name = "Medical crate" + contains = list( + /obj/item/weapon/storage/firstaid/regular, + /obj/item/weapon/storage/firstaid/fire, + /obj/item/weapon/storage/firstaid/toxin, + /obj/item/weapon/storage/firstaid/o2, + /obj/item/weapon/storage/firstaid/adv, + /obj/item/weapon/reagent_containers/glass/bottle/antitoxin, + /obj/item/weapon/reagent_containers/glass/bottle/inaprovaline, + /obj/item/weapon/reagent_containers/glass/bottle/stoxin, + /obj/item/weapon/storage/box/syringes, + /obj/item/weapon/storage/box/autoinjectors + ) + cost = 10 + containertype = /obj/structure/closet/crate/medical + containername = "Medical crate" + +/datum/supply_packs/med/bloodpack + name = "BloodPack crate" + contains = list(/obj/item/weapon/storage/box/bloodpacks = 3) + cost = 10 + containertype = /obj/structure/closet/crate/medical + containername = "BloodPack crate" + +/datum/supply_packs/med/bodybag + name = "Body bag crate" + contains = list(/obj/item/weapon/storage/box/bodybags = 3) + cost = 10 + containertype = /obj/structure/closet/crate/medical + containername = "Body bag crate" + +/datum/supply_packs/med/cryobag + name = "Stasis bag crate" + contains = list(/obj/item/bodybag/cryobag = 3) + cost = 50 + containertype = /obj/structure/closet/crate/medical + containername = "Stasis bag crate" + +/datum/supply_packs/med/surgery + name = "Surgery crate" + contains = list( + /obj/item/weapon/cautery, + /obj/item/weapon/surgicaldrill, + /obj/item/clothing/mask/breath/medical, + /obj/item/weapon/tank/anesthetic, + /obj/item/weapon/FixOVein, + /obj/item/weapon/hemostat, + /obj/item/weapon/scalpel, + /obj/item/weapon/bonegel, + /obj/item/weapon/retractor, + /obj/item/weapon/bonesetter, + /obj/item/weapon/circular_saw + ) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Surgery crate" + access = access_medical + +/datum/supply_packs/med/sterile + name = "Sterile equipment crate" + contains = list( + /obj/item/clothing/under/rank/medical/green = 2, + /obj/item/clothing/head/surgery/green = 2, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves, + /obj/item/weapon/storage/belt/medical = 3 + ) + cost = 15 + containertype = "/obj/structure/closet/crate" + containername = "Sterile equipment crate" + +/datum/supply_packs/med/voidsuits + name = "Medical voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/medical = 2, + /obj/item/clothing/head/helmet/space/void/medical = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 40 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical voidsuit crate" + access = access_medical_equip + +/datum/supply_packs/med/extragear + name = "Medical surplus equipment" + contains = list( + /obj/item/weapon/storage/belt/medical = 3, + /obj/item/clothing/glasses/hud/health = 3, + /obj/item/device/radio/headset/headset_med/alt = 3, + /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 3 + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical surplus equipment" + access = access_medical + +/datum/supply_packs/med/cmogear + name = "Chief medical officer equipment" + contains = list( + /obj/item/weapon/storage/belt/medical, + /obj/item/device/radio/headset/heads/cmo, + /obj/item/clothing/under/rank/chief_medical_officer, + /obj/item/weapon/reagent_containers/hypospray, + /obj/item/clothing/accessory/stethoscope, + /obj/item/clothing/glasses/hud/health, + /obj/item/clothing/suit/storage/toggle/labcoat/cmo, + /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + /obj/item/clothing/mask/surgical, + /obj/item/clothing/shoes/white, + /obj/item/weapon/cartridge/cmo, + /obj/item/clothing/gloves/latex, + /obj/item/device/healthanalyzer, + /obj/item/device/flashlight/pen, + /obj/item/weapon/reagent_containers/syringe + ) + cost = 60 + containertype = "/obj/structure/closet/crate/secure" + containername = "Chief medical officer equipment" + access = access_cmo + +/datum/supply_packs/med/doctorgear + name = "Medical Doctor equipment" + contains = list( + /obj/item/weapon/storage/belt/medical, + /obj/item/device/radio/headset/headset_med, + /obj/item/clothing/under/rank/medical, + /obj/item/clothing/accessory/stethoscope, + /obj/item/clothing/glasses/hud/health, + /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/mask/surgical, + /obj/item/weapon/storage/firstaid/adv, + /obj/item/clothing/shoes/white, + /obj/item/weapon/cartridge/medical, + /obj/item/clothing/gloves/latex, + /obj/item/device/healthanalyzer, + /obj/item/device/flashlight/pen, + /obj/item/weapon/reagent_containers/syringe + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical Doctor equipment" + access = access_medical_equip + +/datum/supply_packs/med/chemistgear + name = "Chemist equipment" + contains = list( + /obj/item/weapon/storage/box/beakers, + /obj/item/device/radio/headset/headset_med, + /obj/item/weapon/storage/box/autoinjectors, + /obj/item/clothing/under/rank/chemist, + /obj/item/clothing/glasses/science, + /obj/item/clothing/suit/storage/toggle/labcoat/chemist, + /obj/item/clothing/mask/surgical, + /obj/item/clothing/shoes/white, + /obj/item/weapon/cartridge/chemistry, + /obj/item/clothing/gloves/latex, + /obj/item/weapon/reagent_containers/dropper, + /obj/item/device/healthanalyzer, + /obj/item/weapon/storage/box/pillbottles, + /obj/item/weapon/reagent_containers/syringe + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Chemist equipment" + access = access_chemistry + +/datum/supply_packs/med/paramedicgear + name = "Paramedic equipment" + contains = list( + /obj/item/weapon/storage/belt/medical/emt, + /obj/item/device/radio/headset/headset_med, + /obj/item/clothing/under/rank/medical/black, + /obj/item/clothing/accessory/armband/medgreen, + /obj/item/clothing/glasses/hud/health, + /obj/item/clothing/suit/storage/toggle/labcoat/emt, + /obj/item/clothing/under/rank/medical/paramedic, + /obj/item/clothing/suit/storage/toggle/fr_jacket, + /obj/item/clothing/mask/gas, + /obj/item/clothing/under/rank/medical/paramedic, + /obj/item/clothing/accessory/stethoscope, + /obj/item/weapon/storage/firstaid/adv, + /obj/item/clothing/shoes/jackboots, + /obj/item/clothing/gloves/latex, + /obj/item/device/healthanalyzer, + /obj/item/weapon/cartridge/medical, + /obj/item/device/flashlight/pen, + /obj/item/weapon/reagent_containers/syringe, + /obj/item/clothing/accessory/storage/white_vest + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Paramedic equipment" + access = access_medical_equip + +/datum/supply_packs/med/psychiatristgear + name = "Psychiatrist equipment" + contains = list( + /obj/item/clothing/under/rank/psych, + /obj/item/device/radio/headset/headset_med, + /obj/item/clothing/under/rank/psych/turtleneck, + /obj/item/clothing/shoes/laceup, + /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/shoes/white, + /obj/item/weapon/clipboard, + /obj/item/weapon/folder/white, + /obj/item/weapon/pen, + /obj/item/weapon/cartridge/medical + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Psychiatrist equipment" + access = access_psychiatrist + +/datum/supply_packs/med/medicalscrubs + name = "Medical scrubs" + contains = list( + /obj/item/clothing/shoes/white = 3,, + /obj/item/clothing/under/rank/medical/blue = 3, + /obj/item/clothing/under/rank/medical/green = 3, + /obj/item/clothing/under/rank/medical/purple = 3, + /obj/item/clothing/under/rank/medical/black = 3, + /obj/item/clothing/head/surgery = 3, + /obj/item/clothing/head/surgery/purple = 3, + /obj/item/clothing/head/surgery/blue = 3, + /obj/item/clothing/head/surgery/green = 3, + /obj/item/clothing/head/surgery/black = 3, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical scrubs crate" + access = access_medical_equip + +/datum/supply_packs/med/autopsy + name = "Autopsy equipment" + contains = list( + /obj/item/weapon/folder/white, + /obj/item/device/camera, + /obj/item/device/camera_film = 2, + /obj/item/weapon/autopsy_scanner, + /obj/item/weapon/scalpel, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves, + /obj/item/weapon/pen + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Autopsy equipment crate" + access = access_morgue + +/datum/supply_packs/med/medicaluniforms + name = "Medical uniforms" + contains = list( + /obj/item/clothing/shoes/white = 3, + /obj/item/clothing/under/rank/chief_medical_officer, + /obj/item/clothing/under/rank/geneticist, + /obj/item/clothing/under/rank/virologist, + /obj/item/clothing/under/rank/nursesuit, + /obj/item/clothing/under/rank/nurse, + /obj/item/clothing/under/rank/orderly, + /obj/item/clothing/under/rank/medical = 3, + /obj/item/clothing/under/rank/medical/paramedic = 3, + /obj/item/clothing/suit/storage/toggle/labcoat = 3, + /obj/item/clothing/suit/storage/toggle/labcoat/cmo, + /obj/item/clothing/suit/storage/toggle/labcoat/emt, + /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + /obj/item/clothing/suit/storage/toggle/labcoat/genetics, + /obj/item/clothing/suit/storage/toggle/labcoat/virologist, + /obj/item/clothing/suit/storage/toggle/labcoat/chemist, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical uniform crate" + access = access_medical_equip + +/datum/supply_packs/med/medicalbiosuits + name = "Medical biohazard gear" + contains = list( + /obj/item/clothing/head/bio_hood = 3, + /obj/item/clothing/suit/bio_suit = 3, + /obj/item/clothing/head/bio_hood/virology = 2, + /obj/item/clothing/suit/bio_suit/cmo, + /obj/item/clothing/head/bio_hood/cmo, + /obj/item/clothing/mask/gas = 5, + /obj/item/weapon/tank/oxygen = 5, + /obj/item/weapon/storage/box/masks, + /obj/item/weapon/storage/box/gloves + ) + cost = 50 + containertype = "/obj/structure/closet/crate/secure" + containername = "Medical biohazard equipment" + access = access_medical_equip + +/datum/supply_packs/med/portablefreezers + name = "Portable freezers crate" + contains = list(/obj/item/weapon/storage/box/freezer = 7) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Portable freezers" + access = access_medical_equip \ No newline at end of file diff --git a/code/datums/supplypacks/misc.dm b/code/datums/supplypacks/misc.dm new file mode 100644 index 00000000000..a64a6e44e72 --- /dev/null +++ b/code/datums/supplypacks/misc.dm @@ -0,0 +1,268 @@ +/* +* Here is where any supply packs +* that don't belong elsewhere live. +*/ +/datum/supply_packs/misc + group = "Miscellaneous" + +/datum/supply_packs/randomised/misc + group = "Miscellaneous" + +/datum/supply_packs/misc/wizard + name = "Wizard costume" + contains = list( + /obj/item/weapon/staff, + /obj/item/clothing/suit/wizrobe/fake, + /obj/item/clothing/shoes/sandal, + /obj/item/clothing/head/wizard/fake + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Wizard costume crate" + +/datum/supply_packs/misc/foam_weapons + name = "Foam Weapon Crate" + contains = list( + /obj/item/weapon/material/sword/foam = 2, + /obj/item/weapon/material/twohanded/baseballbat/foam = 2, + /obj/item/weapon/material/twohanded/spear/foam = 2, + /obj/item/weapon/material/twohanded/fireaxe/foam = 2 + ) + cost = 80 + containertype = /obj/structure/closet/crate + containername = "foam weapon crate" + +/datum/supply_packs/randomised/misc/hats + num_contained = 4 + contains = list( + /obj/item/clothing/head/collectable/chef, + /obj/item/clothing/head/collectable/paper, + /obj/item/clothing/head/collectable/tophat, + /obj/item/clothing/head/collectable/captain, + /obj/item/clothing/head/collectable/beret, + /obj/item/clothing/head/collectable/welding, + /obj/item/clothing/head/collectable/flatcap, + /obj/item/clothing/head/collectable/pirate, + /obj/item/clothing/head/collectable/kitty, + /obj/item/clothing/head/collectable/rabbitears, + /obj/item/clothing/head/collectable/wizard, + /obj/item/clothing/head/collectable/hardhat, + /obj/item/clothing/head/collectable/HoS, + /obj/item/clothing/head/collectable/thunderdome, + /obj/item/clothing/head/collectable/swat, + /obj/item/clothing/head/collectable/slime, + /obj/item/clothing/head/collectable/police, + /obj/item/clothing/head/collectable/slime, + /obj/item/clothing/head/collectable/xenom, + /obj/item/clothing/head/collectable/petehat + ) + name = "Collectable hat crate!" + cost = 200 + containertype = /obj/structure/closet/crate + containername = "Collectable hats crate! Brought to you by Bass.inc!" + +/datum/supply_packs/randomised/misc/costume + num_contained = 3 + contains = list( + /obj/item/clothing/suit/pirate, + /obj/item/clothing/suit/judgerobe, + /obj/item/clothing/suit/wcoat, + /obj/item/clothing/suit/hastur, + /obj/item/clothing/suit/holidaypriest, + /obj/item/clothing/suit/nun, + /obj/item/clothing/suit/imperium_monk, + /obj/item/clothing/suit/ianshirt, + /obj/item/clothing/under/gimmick/rank/captain/suit, + /obj/item/clothing/under/gimmick/rank/head_of_personnel/suit, + /obj/item/clothing/under/lawyer/purpsuit, + /obj/item/clothing/under/rank/mailman, + /obj/item/clothing/under/dress/dress_saloon, + /obj/item/clothing/suit/suspenders, + /obj/item/clothing/suit/storage/toggle/labcoat/mad, + /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, + /obj/item/clothing/under/schoolgirl, + /obj/item/clothing/under/owl, + /obj/item/clothing/under/waiter, + /obj/item/clothing/under/gladiator, + /obj/item/clothing/under/soviet, + /obj/item/clothing/under/scratch, + /obj/item/clothing/under/wedding/bride_white, + /obj/item/clothing/suit/chef, + /obj/item/clothing/suit/apron/overalls, + /obj/item/clothing/under/redcoat, + /obj/item/clothing/under/kilt + ) + name = "Costumes crate" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Actor Costumes" + +/datum/supply_packs/misc/formal_wear + contains = list( + /obj/item/clothing/head/bowler, + /obj/item/clothing/head/that, + /obj/item/clothing/suit/storage/toggle/internalaffairs, + /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket, + /obj/item/clothing/suit/storage/toggle/lawyer/purpjacket, + /obj/item/clothing/under/suit_jacket, + /obj/item/clothing/under/suit_jacket/female, + /obj/item/clothing/under/suit_jacket/really_black, + /obj/item/clothing/under/suit_jacket/red, + /obj/item/clothing/under/lawyer/bluesuit, + /obj/item/clothing/under/lawyer/purpsuit, + /obj/item/clothing/shoes/black = 2, + /obj/item/clothing/shoes/leather, + /obj/item/clothing/suit/wcoat + ) + name = "Formalwear closet" + cost = 30 + containertype = /obj/structure/closet + containername = "Formalwear for the best occasions." + +/datum/supply_packs/randomised/misc/card_packs + num_contained = 5 + contains = list( + /obj/item/weapon/pack/cardemon, + /obj/item/weapon/pack/spaceball, + /obj/item/weapon/deck/holder + ) + name = "Trading Card Crate" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "cards crate" + +/datum/supply_packs/misc/eftpos + contains = list(/obj/item/device/eftpos) + name = "EFTPOS scanner" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "EFTPOS crate" + +/datum/supply_packs/misc/cardboard_sheets + contains = list(/obj/item/stack/material/cardboard) + name = "50 cardboard sheets" + amount = 50 + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Cardboard sheets crate" + +/datum/supply_packs/misc/carpet + name = "Imported carpet" + containertype = /obj/structure/closet/crate + containername = "Imported carpet crate" + cost = 15 + contains = list( + /obj/item/stack/tile/carpet, + /obj/item/stack/tile/carpet/blue + ) + amount = 50 + +/datum/supply_packs/misc/linoleum + name = "Linoleum" + containertype = /obj/structure/closet/crate + containername = "Linoleum crate" + cost = 15 + contains = list(/obj/item/stack/tile/linoleum) + amount = 50 + +/datum/supply_packs/misc/witch + name = "Witch costume" + containername = "Witch costume" + containertype = /obj/structure/closet + cost = 20 + contains = list( + /obj/item/clothing/suit/wizrobe/marisa/fake, + /obj/item/clothing/shoes/sandal, + /obj/item/clothing/head/wizard/marisa/fake, + /obj/item/weapon/staff/broom + ) + +/datum/supply_packs/randomised/misc/costume_hats + name = "Costume hats" + containername = "Actor hats crate" + containertype = /obj/structure/closet + cost = 10 + num_contained = 3 + contains = list( + /obj/item/clothing/head/redcoat, + /obj/item/clothing/head/mailman, + /obj/item/clothing/head/plaguedoctorhat, + /obj/item/clothing/head/pirate, + /obj/item/clothing/head/hasturhood, + /obj/item/clothing/head/powdered_wig, + /obj/item/clothing/head/hairflower, + /obj/item/clothing/head/hairflower/yellow, + /obj/item/clothing/head/hairflower/blue, + /obj/item/clothing/head/hairflower/pink, + /obj/item/clothing/mask/gas/owl_mask, + /obj/item/clothing/mask/gas/monkeymask, + /obj/item/clothing/head/helmet/gladiator, + /obj/item/clothing/head/ushanka + ) + +/datum/supply_packs/randomised/misc/dresses + name = "Womens formal dress locker" + containername = "Pretty dress locker" + containertype = /obj/structure/closet + cost = 15 + num_contained = 3 + contains = list( + /obj/item/clothing/under/wedding/bride_orange, + /obj/item/clothing/under/wedding/bride_purple, + /obj/item/clothing/under/wedding/bride_blue, + /obj/item/clothing/under/wedding/bride_red, + /obj/item/clothing/under/wedding/bride_white, + /obj/item/clothing/under/sundress, + /obj/item/clothing/under/dress/dress_green, + /obj/item/clothing/under/dress/dress_pink, + /obj/item/clothing/under/dress/dress_orange, + /obj/item/clothing/under/dress/dress_yellow, + /obj/item/clothing/under/dress/dress_saloon + ) + +/datum/supply_packs/randomised/misc/exosuit_mod + num_contained = 1 + contains = list( + /obj/item/device/kit/paint/ripley, + /obj/item/device/kit/paint/ripley/death, + /obj/item/device/kit/paint/ripley/flames_red, + /obj/item/device/kit/paint/ripley/flames_blue + ) + name = "Random APLU modkit" + cost = 200 + containertype = /obj/structure/closet/crate + containername = "heavy crate" + +/datum/supply_packs/randomised/misc/exosuit_mod/durand + contains = list( + /obj/item/device/kit/paint/durand, + /obj/item/device/kit/paint/durand/seraph, + /obj/item/device/kit/paint/durand/phazon + ) + name = "Random Durand exosuit modkit" + +/datum/supply_packs/randomised/misc/exosuit_mod/gygax + contains = list( + /obj/item/device/kit/paint/gygax, + /obj/item/device/kit/paint/gygax/darkgygax, + /obj/item/device/kit/paint/gygax/recitence + ) + name = "Random Gygax exosuit modkit" + +/datum/supply_packs/misc/chaplaingear + name = "Chaplain equipment" + contains = list( + /obj/item/clothing/under/rank/chaplain, + /obj/item/clothing/shoes/black, + /obj/item/clothing/suit/nun, + /obj/item/clothing/head/nun_hood, + /obj/item/clothing/suit/chaplain_hoodie, + /obj/item/clothing/head/chaplain_hood, + /obj/item/clothing/suit/holidaypriest, + /obj/item/clothing/under/wedding/bride_white, + /obj/item/weapon/storage/backpack/cultpack, + /obj/item/weapon/storage/fancy/candle_box = 3 + ) + cost = 10 + containertype = "/obj/structure/closet/crate" + containername = "Chaplain equipment crate" \ No newline at end of file diff --git a/code/datums/supplypacks/operations.dm b/code/datums/supplypacks/operations.dm new file mode 100644 index 00000000000..f64b21353e3 --- /dev/null +++ b/code/datums/supplypacks/operations.dm @@ -0,0 +1,75 @@ +/* +* Here is where any supply packs +* related to operations live. +*/ +/datum/supply_packs/ops + group = "Operations" + +/datum/supply_packs/ops/mule + name = "Mulebot Crate" + contains = list() + cost = 20 + containertype = /obj/structure/largecrate/animal/mulebot + containername = "Mulebot Crate" + +/datum/supply_packs/ops/cargotrain + name = "Cargo Train Tug" + contains = list(/obj/vehicle/train/cargo/engine) + cost = 45 + containertype = /obj/structure/largecrate + containername = "Cargo Train Tug Crate" + +/datum/supply_packs/ops/cargotrailer + name = "Cargo Train Trolley" + contains = list(/obj/vehicle/train/cargo/trolley) + cost = 15 + containertype = /obj/structure/largecrate + containername = "Cargo Train Trolley Crate" + +/datum/supply_packs/ops/hoverpod + name = "Hoverpod Shipment" + contains = list() + cost = 80 + containertype = /obj/structure/largecrate/hoverpod + containername = "Hoverpod Crate" + +/datum/supply_packs/ops/artscrafts + name = "Arts and Crafts supplies" + contains = list( + /obj/item/weapon/storage/fancy/crayons, + /obj/item/device/camera, + /obj/item/device/camera_film = 2, + /obj/item/weapon/storage/photo_album, + /obj/item/weapon/packageWrap, + /obj/item/weapon/reagent_containers/glass/paint/red, + /obj/item/weapon/reagent_containers/glass/paint/green, + /obj/item/weapon/reagent_containers/glass/paint/blue, + /obj/item/weapon/reagent_containers/glass/paint/yellow, + /obj/item/weapon/reagent_containers/glass/paint/purple, + /obj/item/weapon/reagent_containers/glass/paint/black, + /obj/item/weapon/reagent_containers/glass/paint/white, + /obj/item/weapon/contraband/poster, + /obj/item/weapon/wrapping_paper = 3 + ) + cost = 10 + containertype = "/obj/structure/closet/crate" + containername = "Arts and Crafts crate" + +/datum/supply_packs/randomised/ops + group = "Operations" + +/datum/supply_packs/randomised/ops/webbing + name = "Webbing crate" + num_contained = 4 + contains = list( + /obj/item/clothing/accessory/storage/black_vest, + /obj/item/clothing/accessory/storage/brown_vest, + /obj/item/clothing/accessory/storage/white_vest, + /obj/item/clothing/accessory/storage/black_drop_pouches, + /obj/item/clothing/accessory/storage/brown_drop_pouches, + /obj/item/clothing/accessory/storage/white_drop_pouches, + /obj/item/clothing/accessory/storage/webbing + ) + cost = 15 + containertype = "/obj/structure/closet/crate" + containername = "Webbing crate" \ No newline at end of file diff --git a/code/datums/supplypacks/science.dm b/code/datums/supplypacks/science.dm new file mode 100644 index 00000000000..433caeff6f2 --- /dev/null +++ b/code/datums/supplypacks/science.dm @@ -0,0 +1,57 @@ +/* +* Here is where any supply packs +* related to security tasks live +*/ +/datum/supply_packs/sci + group = "Security" + +/datum/supply_packs/sci/virus + name = "Virus sample crate" + contains = list(/obj/item/weapon/virusdish/random = 4) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Virus sample crate" + access = access_cmo + +/datum/supply_packs/sci/coolanttank + name = "Coolant tank crate" + contains = list(/obj/structure/reagent_dispensers/coolanttank) + cost = 16 + containertype = /obj/structure/largecrate + containername = "coolant tank crate" + +/datum/supply_packs/sci/mecha_ripley + name = "Circuit Crate (\"Ripley\" APLU)" + contains = list( + /obj/item/weapon/book/manual/ripley_build_and_repair, + /obj/item/weapon/circuitboard/mecha/ripley/main, + /obj/item/weapon/circuitboard/mecha/ripley/peripherals + ) + cost = 30 + containertype = /obj/structure/closet/crate/secure + containername = "APLU \"Ripley\" Circuit Crate" + access = access_robotics + +/datum/supply_packs/sci/mecha_odysseus + name = "Circuit Crate (\"Odysseus\")" + contains = list( + /obj/item/weapon/circuitboard/mecha/odysseus/peripherals, + /obj/item/weapon/circuitboard/mecha/odysseus/main + ) + cost = 25 + containertype = /obj/structure/closet/crate/secure + containername = "\"Odysseus\" Circuit Crate" + access = access_robotics + +/datum/supply_packs/sci/phoron + name = "Phoron assembly crate" + contains = list( + /obj/item/weapon/tank/phoron = 3, + /obj/item/device/assembly/igniter = 3, + /obj/item/device/assembly/prox_sensor = 3, + /obj/item/device/assembly/timer = 3 + ) + cost = 10 + containertype = /obj/structure/closet/crate/secure/phoron + containername = "Phoron assembly crate" + access = access_tox_storage \ No newline at end of file diff --git a/code/datums/supplypacks/security.dm b/code/datums/supplypacks/security.dm new file mode 100644 index 00000000000..cc730151218 --- /dev/null +++ b/code/datums/supplypacks/security.dm @@ -0,0 +1,526 @@ +/* +* Here is where any supply packs +* related to security tasks live +*/ +/datum/supply_packs/security + group = "Security" + access = access_security + +/datum/supply_packs/security/beanbagammo + name = "Beanbag shells" + contains = list(/obj/item/weapon/storage/box/beanbags = 3) + cost = 30 + containertype = /obj/structure/closet/crate + containername = "Beanbag shells" + access = null + +/datum/supply_packs/security/weapons + name = "Weapons crate" + contains = list( + /obj/item/weapon/melee/baton = 2, + /obj/item/weapon/gun/energy/gun = 2, + /obj/item/weapon/gun/energy/taser = 2, + /obj/item/weapon/gun/projectile/colt/detective = 2, + /obj/item/weapon/storage/box/flashbangs = 2 + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Weapons crate" + +/datum/supply_packs/security/flareguns + name = "Flare guns crate" + contains = list( + /obj/item/weapon/gun/projectile/sec/flash, + /obj/item/ammo_magazine/c45m/flash, + /obj/item/weapon/gun/projectile/shotgun/doublebarrel/flare, + /obj/item/weapon/storage/box/flashshells + ) + cost = 25 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Flare gun crate" + +/datum/supply_packs/security/eweapons + name = "Experimental weapons crate" + contains = list( + /obj/item/weapon/gun/energy/xray = 2, + /obj/item/weapon/shield/energy = 2) + cost = 125 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Experimental weapons crate" + access = access_armory + +/datum/supply_packs/randomised/security + group = "Security" + access = access_security + +/datum/supply_packs/randomised/security/armor + num_contained = 5 + contains = list( + /obj/item/clothing/suit/storage/vest, + /obj/item/clothing/suit/storage/vest/officer, + /obj/item/clothing/suit/storage/vest/warden, + /obj/item/clothing/suit/storage/vest/hos, + /obj/item/clothing/suit/storage/vest/pcrc, + /obj/item/clothing/suit/storage/vest/detective, + /obj/item/clothing/suit/storage/vest/heavy, + /obj/item/clothing/suit/storage/vest/heavy/officer, + /obj/item/clothing/suit/storage/vest/heavy/warden, + /obj/item/clothing/suit/storage/vest/heavy/hos, + /obj/item/clothing/suit/storage/vest/heavy/pcrc + ) + + name = "Armor crate" + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "Armor crate" + +/datum/supply_packs/security/riot_gear + name = "Riot gear crate" + contains = list( + /obj/item/weapon/melee/baton = 3, + /obj/item/weapon/shield/riot = 3, + /obj/item/weapon/handcuffs = 3, + /obj/item/weapon/storage/box/flashbangs, + /obj/item/weapon/storage/box/beanbags, + /obj/item/weapon/storage/box/handcuffs + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "riot gear crate" + access = access_armory + +/datum/supply_packs/security/riot_armor + name = "Riot armor set crate" + contains = list( + /obj/item/clothing/head/helmet/riot, + /obj/item/clothing/suit/armor/riot, + /obj/item/clothing/gloves/arm_guard/riot, + /obj/item/clothing/shoes/leg_guard/riot + ) + cost = 30 + containertype = /obj/structure/closet/crate/secure + containername = "riot armor set crate" + access = access_armory + +/datum/supply_packs/security/ablative_armor + name = "Ablative armor set crate" + contains = list( + /obj/item/clothing/head/helmet/laserproof, + /obj/item/clothing/suit/armor/laserproof, + /obj/item/clothing/gloves/arm_guard/laserproof, + /obj/item/clothing/shoes/leg_guard/laserproof + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "ablative armor set crate" + access = access_armory + +/datum/supply_packs/security/bullet_resistant_armor + name = "Bullet resistant armor set crate" + contains = list( + /obj/item/clothing/head/helmet/bulletproof, + /obj/item/clothing/suit/armor/bulletproof, + /obj/item/clothing/gloves/arm_guard/bulletproof, + /obj/item/clothing/shoes/leg_guard/bulletproof + ) + cost = 35 + containertype = /obj/structure/closet/crate/secure + containername = "bullet resistant armor set crate" + access = access_armory + +/datum/supply_packs/security/combat_armor + name = "Combat armor set crate" + contains = list( + /obj/item/clothing/head/helmet/combat, + /obj/item/clothing/suit/armor/combat, + /obj/item/clothing/gloves/arm_guard/combat, + /obj/item/clothing/shoes/leg_guard/combat + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "combat armor set crate" + access = access_armory + +/datum/supply_packs/security/tactical + name = "Tactical suits" + containertype = /obj/structure/closet/crate/secure + containername = "Tactical Suit Locker" + cost = 60 + access = access_armory + contains = list( + /obj/item/clothing/under/tactical, + /obj/item/clothing/suit/armor/tactical, + /obj/item/clothing/head/helmet/tactical, + /obj/item/clothing/mask/balaclava/tactical, + /obj/item/clothing/glasses/sunglasses/sechud/tactical, + /obj/item/weapon/storage/belt/security/tactical, + /obj/item/clothing/shoes/jackboots, + /obj/item/clothing/gloves/black, + /obj/item/clothing/under/tactical, + /obj/item/clothing/suit/armor/tactical, + /obj/item/clothing/head/helmet/tactical, + /obj/item/clothing/mask/balaclava/tactical, + /obj/item/clothing/glasses/sunglasses/sechud/tactical, + /obj/item/weapon/storage/belt/security/tactical, + /obj/item/clothing/shoes/jackboots, + /obj/item/clothing/gloves/black + ) + +/datum/supply_packs/security/energyweapons + name = "Energy weapons crate" + contains = list(/obj/item/weapon/gun/energy/laser = 3) + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "energy weapons crate" + access = access_armory + +/datum/supply_packs/security/shotgun + name = "Shotgun crate" + contains = list( + /obj/item/weapon/storage/box/shotgunammo, + /obj/item/weapon/storage/box/shotgunshells, + /obj/item/weapon/gun/projectile/shotgun/pump/combat = 2 + ) + cost = 65 + containertype = /obj/structure/closet/crate/secure + containername = "Shotgun crate" + access = access_armory + +/datum/supply_packs/security/erifle + name = "Energy marksman crate" + contains = list(/obj/item/weapon/gun/energy/sniperrifle = 2) + cost = 90 + containertype = /obj/structure/closet/crate/secure + containername = "Energy marksman crate" + access = access_armory + +/datum/supply_packs/security/shotgunammo + name = "Ballistic ammunition crate" + contains = list( + /obj/item/weapon/storage/box/shotgunammo = 2, + /obj/item/weapon/storage/box/shotgunshells = 2 + ) + cost = 60 + containertype = /obj/structure/closet/crate/secure + containername = "ballistic ammunition crate" + access = access_armory + +/datum/supply_packs/security/ionweapons + name = "Electromagnetic weapons crate" + contains = list( + /obj/item/weapon/gun/energy/ionrifle = 2, + /obj/item/weapon/storage/box/emps + ) + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "electromagnetic weapons crate" + access = access_armory + +/datum/supply_packs/randomised/security/automatic + name = "Automatic weapon crate" + num_contained = 2 + contains = list( + /obj/item/weapon/gun/projectile/automatic/wt550, + /obj/item/weapon/gun/projectile/automatic/z8 + ) + cost = 90 + containertype = /obj/structure/closet/crate/secure + containername = "Automatic weapon crate" + access = access_armory + +/datum/supply_packs/randomised/security/autoammo + name = "Automatic weapon ammunition crate" + num_contained = 6 + contains = list( + /obj/item/ammo_magazine/mc9mmt, + /obj/item/ammo_magazine/mc9mmt/rubber, + /obj/item/ammo_magazine/a556 + ) + cost = 20 + containertype = /obj/structure/closet/crate/secure + containername = "Automatic weapon ammunition crate" + access = access_armory + +/datum/supply_packs/security/energy_guns + name = "energy guns crate" + contains = list(/obj/item/weapon/gun/energy/gun = 2) + cost = 50 + containertype = /obj/structure/closet/crate/secure + containername = "energy guns crate" + access = access_armory + +/datum/supply_packs/security/securitybarriers + name = "Security barrier crate" + contains = list(/obj/machinery/deployable/barrier = 4) + cost = 20 + containertype = /obj/structure/closet/crate/secure/gear + containername = "Security barrier crate" + access = null + +/datum/supply_packs/security/securityshieldgen + name = "Wall shield Generators" + contains = list(/obj/machinery/shieldwallgen = 4) + cost = 20 + containertype = /obj/structure/closet/crate/secure + containername = "wall shield generators crate" + access = access_teleporter + +/datum/supply_packs/security/voidsuits + name = "Security voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/security = 2, + /obj/item/clothing/head/helmet/space/void/security = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/clothing/shoes/magboots = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 55 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security voidsuit crate" + +/datum/supply_packs/randomised/security/holster + name = "Holster crate" + num_contained = 4 + contains = list( + /obj/item/clothing/accessory/holster, + /obj/item/clothing/accessory/holster/armpit, + /obj/item/clothing/accessory/holster/waist, + /obj/item/clothing/accessory/holster/hip + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Holster crate" + +/datum/supply_packs/security/extragear + name = "Security surplus equipment" + contains = list( + /obj/item/weapon/storage/belt/security = 3, + /obj/item/clothing/glasses/sunglasses/sechud = 3, + /obj/item/device/radio/headset/headset_sec/alt = 3, + /obj/item/clothing/suit/storage/hooded/wintercoat/security = 3 + ) + cost = 25 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security surplus equipment" + access = null + +/datum/supply_packs/security/detectivegear + name = "Forensic investigation equipment" + contains = list( + /obj/item/weapon/storage/box/evidence = 2, + /obj/item/clothing/suit/storage/vest/detective, + /obj/item/weapon/cartridge/detective, + /obj/item/device/radio/headset/headset_sec, + /obj/item/taperoll/police, + /obj/item/clothing/glasses/sunglasses, + /obj/item/device/camera, + /obj/item/weapon/folder/red, + /obj/item/weapon/folder/blue, + /obj/item/weapon/storage/belt/detective, + /obj/item/clothing/gloves/black, + /obj/item/device/taperecorder, + /obj/item/device/mass_spectrometer, + /obj/item/device/camera_film = 2, + /obj/item/weapon/storage/photo_album, + /obj/item/device/reagent_scanner, + /obj/item/device/flashlight/maglight, + /obj/item/weapon/storage/briefcase/crimekit + ) + cost = 40 + containertype = "/obj/structure/closet/crate/secure" + containername = "Forensic equipment" + access = access_forensics_lockers + +/datum/supply_packs/security/detectiveclothes + name = "Investigation apparel" + contains = list( + /obj/item/clothing/under/det/black = 2, + /obj/item/clothing/under/det/grey = 2, + /obj/item/clothing/head/det/grey = 2, + /obj/item/clothing/under/det = 2, + /obj/item/clothing/head/det = 2, + /obj/item/clothing/suit/storage/det_trench, + /obj/item/clothing/suit/storage/det_trench/grey, + /obj/item/clothing/suit/storage/forensics/red, + /obj/item/clothing/suit/storage/forensics/blue, + /obj/item/clothing/under/det/corporate = 2, + /obj/item/clothing/accessory/badge/holo/detective = 2, + /obj/item/clothing/gloves/black = 2 + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Investigation clothing" + access = access_forensics_lockers + +/datum/supply_packs/security/officergear + name = "Officer equipment" + contains = list( + /obj/item/clothing/suit/storage/vest/officer, + /obj/item/clothing/head/helmet, + /obj/item/weapon/cartridge/security, + /obj/item/clothing/accessory/badge/holo, + /obj/item/clothing/accessory/badge/holo/cord, + /obj/item/device/radio/headset/headset_sec, + /obj/item/weapon/storage/belt/security, + /obj/item/device/flash, + /obj/item/weapon/reagent_containers/spray/pepper, + /obj/item/weapon/grenade/flashbang, + /obj/item/weapon/melee/baton/loaded, + /obj/item/clothing/glasses/sunglasses/sechud, + /obj/item/taperoll/police, + /obj/item/clothing/gloves/black, + /obj/item/device/hailer, + /obj/item/device/flashlight/flare, + /obj/item/clothing/accessory/storage/black_vest, + /obj/item/clothing/head/soft/sec/corp, + /obj/item/clothing/under/rank/security/corp, + /obj/item/weapon/gun/energy/taser, + /obj/item/device/flashlight/maglight + ) + cost = 30 + containertype = "/obj/structure/closet/crate/secure" + containername = "Officer equipment" + access = access_brig + +/datum/supply_packs/security/wardengear + name = "Warden equipment" + contains = list( + /obj/item/clothing/suit/storage/vest/warden, + /obj/item/clothing/under/rank/warden, + /obj/item/clothing/under/rank/warden/corp, + /obj/item/clothing/suit/armor/vest/warden, + /obj/item/clothing/suit/armor/vest/warden/alt, + /obj/item/clothing/head/helmet/warden, + /obj/item/weapon/cartridge/security, + /obj/item/device/radio/headset/headset_sec, + /obj/item/clothing/glasses/sunglasses/sechud, + /obj/item/taperoll/police, + /obj/item/device/hailer, + /obj/item/clothing/accessory/badge/holo/warden, + /obj/item/weapon/storage/box/flashbangs, + /obj/item/weapon/storage/belt/security, + /obj/item/weapon/reagent_containers/spray/pepper, + /obj/item/weapon/melee/baton/loaded, + /obj/item/weapon/storage/box/holobadge, + /obj/item/clothing/head/beret/sec/corporate/warden, + /obj/item/device/flashlight/maglight + ) + cost = 45 + containertype = "/obj/structure/closet/crate/secure" + containername = "Warden equipment" + access = access_armory + +/datum/supply_packs/security/headofsecgear + name = "Head of security equipment" + contains = list( + /obj/item/clothing/head/helmet/HoS, + /obj/item/clothing/suit/storage/vest/hos, + /obj/item/clothing/under/rank/head_of_security/corp, + /obj/item/clothing/suit/armor/hos, + /obj/item/clothing/head/helmet/HoS/dermal, + /obj/item/weapon/cartridge/hos, + /obj/item/device/radio/headset/heads/hos, + /obj/item/clothing/glasses/sunglasses/sechud, + /obj/item/weapon/storage/belt/security, + /obj/item/device/flash, + /obj/item/device/hailer, + /obj/item/clothing/accessory/badge/holo/hos, + /obj/item/clothing/accessory/holster/waist, + /obj/item/weapon/melee/telebaton, + /obj/item/weapon/shield/riot/tele, + /obj/item/clothing/head/beret/sec/corporate/hos, + /obj/item/device/flashlight/maglight + ) + cost = 65 + containertype = "/obj/structure/closet/crate/secure" + containername = "Head of security equipment" + access = access_hos + +/datum/supply_packs/security/securityclothing + name = "Security uniform crate" + contains = list( + /obj/item/weapon/storage/backpack/satchel/sec = 2, + /obj/item/weapon/storage/backpack/security = 2, + /obj/item/clothing/accessory/armband = 4, + /obj/item/clothing/under/rank/security = 4, + /obj/item/clothing/under/rank/security2 = 4, + /obj/item/clothing/under/rank/warden, + /obj/item/clothing/under/rank/head_of_security, + /obj/item/clothing/suit/armor/hos/jensen, + /obj/item/clothing/head/soft/sec = 4, + /obj/item/clothing/gloves/black = 4, + /obj/item/weapon/storage/box/holobadge + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security uniform crate" + +/datum/supply_packs/security/navybluesecurityclothing + name = "Navy blue security uniform crate" + contains = list( + /obj/item/weapon/storage/backpack/satchel/sec = 2, + /obj/item/weapon/storage/backpack/security = 2, + /obj/item/clothing/under/rank/security/navyblue = 4, + /obj/item/clothing/suit/security/navyofficer = 4, + /obj/item/clothing/under/rank/warden/navyblue, + /obj/item/clothing/suit/security/navywarden, + /obj/item/clothing/under/rank/head_of_security/navyblue, + /obj/item/clothing/suit/security/navyhos, + /obj/item/clothing/head/beret/sec/navy/officer = 4, + /obj/item/clothing/head/beret/sec/navy/warden, + /obj/item/clothing/head/beret/sec/navy/hos, + /obj/item/clothing/gloves/black = 4, + /obj/item/weapon/storage/box/holobadge + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Navy blue security uniform crate" + +/datum/supply_packs/security/corporatesecurityclothing + name = "Corporate security uniform crate" + contains = list( + /obj/item/weapon/storage/backpack/satchel/sec = 2, + /obj/item/weapon/storage/backpack/security = 2, + /obj/item/clothing/under/rank/security/corp = 4, + /obj/item/clothing/head/soft/sec/corp = 4, + /obj/item/clothing/under/rank/warden/corp, + /obj/item/clothing/under/rank/head_of_security/corp, + /obj/item/clothing/head/beret/sec = 4, + /obj/item/clothing/head/beret/sec/corporate/warden, + /obj/item/clothing/head/beret/sec/corporate/hos, + /obj/item/clothing/under/det/corporate = 2, + /obj/item/clothing/gloves/black = 4, + /obj/item/weapon/storage/box/holobadge + ) + cost = 20 + containertype = "/obj/structure/closet/crate/secure" + containername = "Corporate security uniform crate" + +/datum/supply_packs/security/biosuit + name = "Security biohazard gear" + contains = list( + /obj/item/clothing/head/bio_hood/security, + /obj/item/clothing/under/rank/security, + /obj/item/clothing/suit/bio_suit/security, + /obj/item/clothing/shoes/white, + /obj/item/clothing/mask/gas, + /obj/item/weapon/tank/oxygen, + /obj/item/clothing/gloves/latex + ) + cost = 35 + containertype = "/obj/structure/closet/crate/secure" + containername = "Security biohazard gear" + +/datum/supply_packs/security/bolt_rifles_competitive + name = "Competitive shooting crate" + contains = list( + /obj/item/device/assembly/timer, + /obj/item/weapon/gun/projectile/shotgun/pump/rifle/practice = 2, + /obj/item/ammo_magazine/clip/a762/practice = 4, + /obj/item/target = 2, + /obj/item/target/alien = 2, + /obj/item/target/syndicate = 2 + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure/weapon + containername = "Weapons crate" \ No newline at end of file diff --git a/code/datums/supplypacks/supply.dm b/code/datums/supplypacks/supply.dm new file mode 100644 index 00000000000..a8c207e2933 --- /dev/null +++ b/code/datums/supplypacks/supply.dm @@ -0,0 +1,123 @@ +/* +* Here is where any supply packs +* related to civilian tasks live +*/ +/datum/supply_packs/supply + group = "Supply" + + +/datum/supply_packs/supply/food + name = "Kitchen supply crate" + contains = list( + /obj/item/weapon/reagent_containers/food/condiment/flour = 6, + /obj/item/weapon/reagent_containers/food/drinks/milk = 3, + /obj/item/weapon/reagent_containers/food/drinks/soymilk = 2, + /obj/item/weapon/storage/fancy/egg_box = 2, + /obj/item/weapon/reagent_containers/food/snacks/tofu = 4, + /obj/item/weapon/reagent_containers/food/snacks/meat = 4 + ) + cost = 10 + containertype = /obj/structure/closet/crate/freezer + containername = "Food crate" + +/datum/supply_packs/supply/toner + name = "Toner cartridges" + contains = list(/obj/item/device/toner = 6) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Toner cartridges" + +/datum/supply_packs/supply/janitor + name = "Janitorial supplies" + contains = list( + /obj/item/weapon/reagent_containers/glass/bucket, + /obj/item/weapon/mop, + /obj/item/clothing/under/rank/janitor, + /obj/item/weapon/cartridge/janitor, + /obj/item/clothing/gloves/black, + /obj/item/clothing/head/soft/purple, + /obj/item/weapon/storage/belt/janitor, + /obj/item/clothing/shoes/galoshes, + /obj/item/weapon/caution = 4, + /obj/item/weapon/storage/bag/trash, + /obj/item/device/lightreplacer, + /obj/item/weapon/reagent_containers/spray/cleaner, + /obj/item/weapon/reagent_containers/glass/rag, + /obj/item/weapon/grenade/chem_grenade/cleaner = 3, + /obj/structure/mopbucket + ) + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Janitorial supplies" + +/datum/supply_packs/supply/boxes + name = "Empty boxes" + contains = list(/obj/item/weapon/storage/box = 10) + cost = 10 + containertype = "/obj/structure/closet/crate" + containername = "Empty box crate" + +/datum/supply_packs/supply/bureaucracy + contains = list( + /obj/item/weapon/clipboard = 2, + /obj/item/weapon/pen/red, + /obj/item/weapon/pen/blue, + /obj/item/weapon/pen/blue, + /obj/item/device/camera_film, + /obj/item/weapon/folder/blue, + /obj/item/weapon/folder/red, + /obj/item/weapon/folder/yellow, + /obj/item/weapon/hand_labeler, + /obj/item/weapon/tape_roll, + /obj/structure/filingcabinet/chestdrawer{anchored = 0}, + /obj/item/weapon/paper_bin + ) + name = "Office supplies" + cost = 15 + containertype = /obj/structure/closet/crate + containername = "Office supplies crate" + + +/datum/supply_packs/supply/spare_pda + name = "Spare PDAs" + cost = 10 + containertype = /obj/structure/closet/crate + containername = "Spare PDA crate" + contains = list(/obj/item/device/pda = 3) + +/datum/supply_packs/supply/voidsuits + name = "Mining voidsuits" + contains = list( + /obj/item/clothing/suit/space/void/mining = 2, + /obj/item/clothing/head/helmet/space/void/mining = 2, + /obj/item/clothing/mask/breath = 2, + /obj/item/weapon/tank/oxygen = 2 + ) + cost = 35 + containertype = "/obj/structure/closet/crate/secure" + containername = "Mining voidsuit crate" + access = access_mining + +/datum/supply_packs/supply/minergear + name = "Shaft miner equipment" + contains = list( + /obj/item/weapon/storage/backpack/industrial, + /obj/item/weapon/storage/backpack/satchel/eng, + /obj/item/clothing/suit/storage/hooded/wintercoat/miner, + /obj/item/device/radio/headset/headset_cargo, + /obj/item/clothing/under/rank/miner, + /obj/item/clothing/gloves/black, + /obj/item/clothing/shoes/black, + /obj/item/device/analyzer, + /obj/item/weapon/storage/bag/ore, + /obj/item/device/flashlight/lantern, + /obj/item/weapon/shovel, + /obj/item/weapon/pickaxe, + /obj/item/weapon/mining_scanner, + /obj/item/clothing/glasses/material, + /obj/item/clothing/glasses/meson + ) + cost = 15 + containertype = "/obj/structure/closet/crate/secure" + containername = "Shaft miner equipment" + access = access_mining \ No newline at end of file diff --git a/code/datums/supplypacks/supplypacks.dm b/code/datums/supplypacks/supplypacks.dm new file mode 100644 index 00000000000..a320c429054 --- /dev/null +++ b/code/datums/supplypacks/supplypacks.dm @@ -0,0 +1,37 @@ +//SUPPLY PACKS +//NOTE: only secure crate types use the access var (and are lockable) +//NOTE: hidden packs only show up when the computer has been hacked. +//ANOTER NOTE: Contraband is obtainable through modified supplycomp circuitboards. +//BIG NOTE: Don't add living things to crates, that's bad, it will break the shuttle. +//NEW NOTE: Do NOT set the price of any crates below 7 points. Doing so allows infinite points. + +var/list/all_supply_groups = list("Operations","Security","Hospitality","Engineering","Atmospherics","Medical","Reagents","Reagent Cartridges","Science","Hydroponics", "Supply", "Miscellaneous") + +/datum/supply_packs + var/name = null + var/list/contains = list() + var/manifest = "" + var/amount = null + var/cost = null + var/containertype = null + var/containername = null + var/access = null + var/hidden = 0 + var/contraband = 0 + var/group = "Operations" + +/datum/supply_packs/New() + manifest += "
    " + for(var/path in contains) + if(!path || !ispath(path, /atom)) + continue + var/atom/O = path + manifest += "
  • [initial(O.name)]
  • " + manifest += "
" + +/datum/supply_packs/randomised + var/num_contained //number of items picked to be contained in a randomised crate + +/datum/supply_packs/randomised/New() + manifest += "Contains any [num_contained] of:" + ..() \ No newline at end of file diff --git a/polaris.dme b/polaris.dme index 7d78142a23c..fd5b2e63e43 100644 --- a/polaris.dme +++ b/polaris.dme @@ -166,7 +166,6 @@ #include "code\datums\progressbar.dm" #include "code\datums\recipe.dm" #include "code\datums\sun.dm" -#include "code\datums\supplypacks.dm" #include "code\datums\helper_datums\construction_datum.dm" #include "code\datums\helper_datums\events.dm" #include "code\datums\helper_datums\getrev.dm" @@ -196,6 +195,18 @@ #include "code\datums\repositories\cameras.dm" #include "code\datums\repositories\crew.dm" #include "code\datums\repositories\repository.dm" +#include "code\datums\supplypacks\atmospherics.dm" +#include "code\datums\supplypacks\contraband.dm" +#include "code\datums\supplypacks\engineering.dm" +#include "code\datums\supplypacks\hospitality.dm" +#include "code\datums\supplypacks\hydroponics.dm" +#include "code\datums\supplypacks\medical.dm" +#include "code\datums\supplypacks\misc.dm" +#include "code\datums\supplypacks\operations.dm" +#include "code\datums\supplypacks\science.dm" +#include "code\datums\supplypacks\security.dm" +#include "code\datums\supplypacks\supply.dm" +#include "code\datums\supplypacks\supplypacks.dm" #include "code\datums\underwear\bottom.dm" #include "code\datums\underwear\socks.dm" #include "code\datums\underwear\top.dm" From 3cb739527974693f5a3e9f7ead217546e66567db Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 21:52:52 -0400 Subject: [PATCH 28/50] Rearranges get_mobs_and_objs_in_view_fast Also adds the ability to select between ghost eyes and ears. --- code/_helpers/game.dm | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/code/_helpers/game.dm b/code/_helpers/game.dm index 57ff4b70138..b10463b4584 100644 --- a/code/_helpers/game.dm +++ b/code/_helpers/game.dm @@ -248,8 +248,11 @@ . |= M // Since we're already looping through mobs, why bother using |= ? This only slows things down. return . -/proc/get_mobs_and_objs_in_view_fast(var/turf/T, var/range, var/checkghosts = 1) - +//Uses dview to quickly return mobs and objects in view, +// then adds additional mobs or objects if they are in range 'smartly', +// based on their presence in lists of players or registered objects +// Type: 1-audio, 2-visual, 0-neither +/proc/get_mobs_and_objs_in_view_fast(var/turf/T, var/range, var/type = 1) var/list/mobs = list() var/list/objs = list() @@ -261,21 +264,30 @@ mobs += AM hearturfs += AM.locs[1] else if(isobj(AM)) - objs += AM + objs += AM hearturfs += AM.locs[1] - + //A list of every mob with a client for(var/mob/M in player_list) - if(checkghosts && M.stat == DEAD && M.is_preference_enabled(/datum/client_preference/ghost_ears)) - mobs |= M - continue if(M.loc && M.locs[1] in hearturfs) mobs |= M + else if(M.stat == DEAD) + switch(type) + if(1) //Audio messages use ghost_ears + if(M.is_preference_enabled(/datum/client_preference/ghost_ears)) + mobs |= M + if(2) //Visual messages use ghost_sight + if(M.is_preference_enabled(/datum/client_preference/ghost_sight)) + mobs |= M + + //For objects below the top level who still want to hear + for(var/obj/O in listening_objects) + if(O.loc && O.locs[1] in hearturfs) + objs |= O + return list("mobs" = mobs, "objs" = objs) - - #define SIGN(X) ((X<0)?-1:1) proc From 1e9e55d73d0df9f08eabd4e010a5e71ae9d47ae4 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 21:53:30 -0400 Subject: [PATCH 29/50] Moves static overlay to be a global HUD option --- code/_onclick/hud/hud.dm | 13 ++++++++++++- code/modules/mob/living/voice/voice.dm | 9 +++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index 66d453ac36d..7b9cf82cc52 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -6,12 +6,14 @@ var/datum/global_hud/global_hud = new() var/list/global_huds = list( global_hud.druggy, global_hud.blurry, + global_hud.whitense, global_hud.vimpaired, global_hud.darkMask, global_hud.nvg, global_hud.thermal, global_hud.meson, - global_hud.science) + global_hud.science + ) /datum/hud/var/obj/screen/grab_intent /datum/hud/var/obj/screen/hurt_intent @@ -21,6 +23,7 @@ var/list/global_huds = list( /datum/global_hud var/obj/screen/druggy var/obj/screen/blurry + var/obj/screen/whitense var/list/vimpaired var/list/darkMask var/obj/screen/nvg @@ -53,6 +56,14 @@ var/list/global_huds = list( blurry.layer = 17 blurry.mouse_opacity = 0 + //static overlay effect for cameras and the like + whitense = new /obj/screen() + whitense.screen_loc = ui_entire_screen + whitense.icon = 'icons/effects/static.dmi' + whitense.icon_state = "1 light" + whitense.layer = 17 + whitense.mouse_opacity = 0 + nvg = setup_overlay("nvg_hud") thermal = setup_overlay("thermal_hud") meson = setup_overlay("meson_hud") diff --git a/code/modules/mob/living/voice/voice.dm b/code/modules/mob/living/voice/voice.dm index e4eac0f439c..a9f5dbd60a3 100644 --- a/code/modules/mob/living/voice/voice.dm +++ b/code/modules/mob/living/voice/voice.dm @@ -42,12 +42,9 @@ // Parameters: None // Description: Adds a static overlay to the client's screen. /mob/living/voice/Login() - var/obj/screen/static_effect = new() //Since what the player sees is essentially a video feed, from a vast distance away, the view isn't going to be perfect. - static_effect.screen_loc = ui_entire_screen - static_effect.icon = 'icons/effects/static.dmi' - static_effect.icon_state = "1 light" - static_effect.mouse_opacity = 0 //So the static doesn't get in the way of clicking. - client.screen.Add(static_effect) + ..() + client.screen |= global_hud.whitense + client.screen |= global_hud.darkMask // Proc: Destroy() // Parameters: None From 40d0d75804763855419a744b17c7da918f780fbb Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 21:53:56 -0400 Subject: [PATCH 30/50] Rewrites LOOC and emote to use new proc And to be more simple and sane --- code/game/verbs/ooc.dm | 61 ++++++++++++++++++++++++++++++++------- code/modules/mob/emote.dm | 49 ++++++++++--------------------- 2 files changed, 66 insertions(+), 44 deletions(-) diff --git a/code/game/verbs/ooc.dm b/code/game/verbs/ooc.dm index 3e6ed273021..7891951f20c 100644 --- a/code/game/verbs/ooc.dm +++ b/code/game/verbs/ooc.dm @@ -106,7 +106,13 @@ log_ooc("(LOCAL) [mob.name]/[key] : [msg]") var/mob/source = mob.get_looc_source() - var/list/heard = get_mobs_or_objects_in_view(7, get_turf(source), 1, 0) + var/turf/T = get_turf(source) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) + var/list/m_viewers = in_range["mobs"] + + var/list/receivers = list() // Clients, not mobs. + var/list/r_receivers = list() var/display_name = key if(holder && holder.fakekey) @@ -114,34 +120,69 @@ if(mob.stat != DEAD) display_name = mob.name + // Everyone in normal viewing range of the LOOC + for(var/mob/viewer in m_viewers) + if(viewer.client && viewer.client.is_preference_enabled(/datum/client_preference/show_looc)) + receivers |= viewer.client + else if(istype(viewer,/mob/observer/eye)) // For AI eyes and the like + var/mob/observer/eye/E = viewer + if(E.owner && E.owner.client) + receivers |= E.owner.client + + // Admins with RLOOC displayed who weren't already in + for(var/client/admin in admins) + if(!(admin in receivers) && admin.is_preference_enabled(/datum/client_preference/holder/show_rlooc)) + r_receivers |= admin + + // Send a message + for(var/client/target in receivers) + var/admin_stuff = "" + + if(target in admins) + admin_stuff += "/([key])" + + target << "" + create_text_tag("looc", "LOOC:", target) + " [display_name][admin_stuff]: [msg]" + + for(var/client/target in r_receivers) + var/admin_stuff = "/([key])([admin_jump_link(mob, target.holder)])" + + target << "" + create_text_tag("looc", "LOOC:", target) + " (R)[display_name][admin_stuff]: [msg]" +/* for(var/client/target in clients) if(target.is_preference_enabled(/datum/client_preference/show_looc)) var/prefix = "" var/admin_stuff = "" var/send = 0 + // Admins get extra data. if(target in admins) admin_stuff += "/([key])" if(target != src) admin_stuff += "([admin_jump_link(mob, target.holder)])" - if(target.mob in heard) - send = 1 - if(isAI(target.mob)) + // For AIs, needs work done to see if the eye is in range as we're going over clients not mobs. + if(isAI(target.mob)) + var/mob/living/silicon/ai/A = target.mob + if(A.eyeobj in m_viewers) + send = 1 + prefix = "(Eye) " // Prefer the (Eye) prefix if they are in range of core and eye. + else if (A in m_viewers) + send = 1 prefix = "(Core) " - else if(isAI(target.mob)) // Special case - var/mob/living/silicon/ai/A = target.mob - if(A.eyeobj in hearers(7, source)) - send = 1 - prefix = "(Eye) " - + // If you're in range, you get the LOOC. + else if(target.mob in m_viewers) + send = 1 + + // If you weren't going to otherwise get it, but can see (R)LOOC. if(!send && (target in admins) && target.is_preference_enabled(/datum/client_preference/holder/show_rlooc)) send = 1 prefix = "(R)" + // Deliver message directly to the client with stream operator, not another proc. LOOC is important. if(send) target << "" + create_text_tag("looc", "LOOC:", target) + " [prefix][display_name][admin_stuff]: [msg]" +*/ /mob/proc/get_looc_source() return src diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 7fb80529095..15b99923752 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -1,7 +1,7 @@ // All mobs should have custom emote, really.. //m_type == 1 --> visual. //m_type == 2 --> audible -/mob/proc/custom_emote(var/m_type=1,var/message = null) +/mob/proc/custom_emote(var/m_type=1,var/message = null,var/range=world.view) if(stat || !use_me && usr == src) src << "You are unable to emote." return @@ -23,42 +23,23 @@ if (message) log_emote("[name]/[key] : [message]") - //Hearing gasp and such every five seconds is not good emotes were not global for a reason. + // Hearing gasp and such every five seconds is not good emotes were not global for a reason. // Maybe some people are okay with that. - for(var/mob/M in player_list) - if (!M.client) - continue //skip monkeys and leavers - if (istype(M, /mob/new_player)) - continue - if(findtext(message," snores.")) //Because we have so many sleeping people. - break - if(M.stat == DEAD && M.is_preference_enabled(/datum/client_preference/ghost_sight) && !(M in viewers(src,null))) - M.show_message(message, m_type) + var/turf/T = get_turf(src) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,range,2) + var/list/m_viewers = in_range["mobs"] + var/list/o_viewers = in_range["objs"] - if (m_type & 1) - var/list/see = get_mobs_or_objects_in_view(world.view,src) | viewers(get_turf(src), null) - for(var/I in see) - if(isobj(I)) - spawn(0) - if(I) //It's possible that it could be deleted in the meantime. - var/obj/O = I - O.see_emote(src, message, 1) - else if(ismob(I)) - var/mob/M = I - M.show_message(message, 1) - - else if (m_type & 2) - var/list/hear = get_mobs_or_objects_in_view(world.view,src) - for(var/I in hear) - if(isobj(I)) - spawn(0) - if(I) //It's possible that it could be deleted in the meantime. - var/obj/O = I - O.see_emote(src, message, 2) - else if(ismob(I)) - var/mob/M = I - M.show_message(message, 2) + for(var/mob/M in m_viewers) + spawn(0) // It's possible that it could be deleted in the meantime, or that it runtimes. + if(M) + M.show_message(message, m_type) + for(var/obj/O in o_viewers) + spawn(0) + if(O) + O.see_emote(src, message, m_type) /mob/proc/emote_dead(var/message) From 288954087587b946f7e1e31b6654cc6a10737ff6 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 21:54:08 -0400 Subject: [PATCH 31/50] Fixes a random typo in limb_reattach --- code/modules/surgery/limb_reattach.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/surgery/limb_reattach.dm b/code/modules/surgery/limb_reattach.dm index ee0dfecb4fd..8e6e8da21ff 100644 --- a/code/modules/surgery/limb_reattach.dm +++ b/code/modules/surgery/limb_reattach.dm @@ -40,7 +40,7 @@ end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = tool - user.visible_message("[user] has attached [target]'s [E.name] to the [E.amputation_point].>", \ + user.visible_message("[user] has attached [target]'s [E.name] to the [E.amputation_point].", \ "You have attached [target]'s [E.name] to the [E.amputation_point].") user.drop_from_inventory(E) E.replaced(target) From 7b4d5718892abca92dec4827b6715e5dc5eeb692 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 22:05:01 -0400 Subject: [PATCH 32/50] Makes communicators great again --- code/_helpers/global_lists.dm | 1 + .../devices/communicator/communicator.dm | 67 +++++++++++++++---- code/modules/mob/living/voice/voice.dm | 8 ++- 3 files changed, 61 insertions(+), 15 deletions(-) diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm index 1a1eced63a1..9a90a3676b7 100644 --- a/code/_helpers/global_lists.dm +++ b/code/_helpers/global_lists.dm @@ -11,6 +11,7 @@ var/global/list/human_mob_list = list() //List of all human mobs and sub-type var/global/list/silicon_mob_list = list() //List of all silicon mobs, including clientless var/global/list/living_mob_list = list() //List of all alive mobs, including clientless. Excludes /mob/new_player var/global/list/dead_mob_list = list() //List of all dead mobs, including clientless. Excludes /mob/new_player +var/global/list/listening_objects = list() //List of all objects which care about receiving messages (communicators, radios, etc) var/global/list/cable_list = list() //Index for all cables, so that powernets don't have to look through the entire world all the time var/global/list/chemical_reactions_list //list of all /datum/chemical_reaction datums. Used during chemical reactions diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm index bc80bc9db36..e7831391361 100644 --- a/code/game/objects/items/devices/communicator/communicator.dm +++ b/code/game/objects/items/devices/communicator/communicator.dm @@ -17,6 +17,8 @@ var/global/list/obj/item/device/communicator/all_communicators = list() origin_tech = list(TECH_ENGINEERING = 2, TECH_MAGNET = 2, TECH_BLUESPACE = 2, TECH_DATA = 2) matter = list(DEFAULT_WALL_MATERIAL = 30,"glass" = 10) + var/video_range = 4 + var/list/voice_mobs = list() var/list/voice_requests = list() var/list/voice_invites = list() @@ -474,6 +476,24 @@ var/global/list/obj/item/device/communicator/all_communicators = list() name = "[owner]'s [initial(name)]" + +// Proc: add_communicating() +// Parameters: 1 (comm - the communicator to add to communicating) +// Description: Used when this communicator gets a new communicator to relay say/me messages to +/obj/item/device/communicator/proc/add_communicating(obj/item/device/communicator/comm) + if(!comm || !istype(comm)) return + + communicating |= comm + listening_objects |= src + +// Proc: del_communicating() +// Parameters: 1 (comm - the communicator to remove from communicating) +// Description: Used when this communicator is being asked to stop relaying say/me messages to another +/obj/item/device/communicator/proc/del_communicating(obj/item/device/communicator/comm) + if(!comm || !istype(comm)) return + + communicating.Remove(comm) + // Proc: open_connection() // Parameters: 2 (user - the person who initiated the connecting being opened, candidate - the communicator or observer that will connect to the device) // Description: Typechecks the candidate, then calls the correct proc for further connecting. @@ -507,8 +527,8 @@ var/global/list/obj/item/device/communicator/all_communicators = list() comm.visible_message("\icon[src] Connection to [src] at [exonet.address] established.") sleep(20) - communicating |= comm - comm.communicating |= src + src.add_communicating(comm) + comm.add_communicating(src) // Proc: open_connection_to_ghost() // Parameters: 2 (user - the person who initiated this, candidate - the ghost that will be turned into a voice mob) @@ -530,6 +550,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() new_voice.mind = candidate.mind //Transfer the mind, if any. new_voice.ckey = candidate.ckey //Finally, bring the client over. voice_mobs.Add(new_voice) + listening_objects |= src var/obj/screen/blackness = new() //Makes a black screen, so the candidate can't see what's going on before actually 'connecting' to the communicator. blackness.screen_loc = ui_entire_screen @@ -586,10 +607,13 @@ var/global/list/obj/item/device/communicator/all_communicators = list() continue comm.visible_message("\icon[src] [reason].") visible_message("\icon[src] [reason].") - comm.communicating.Remove(src) - communicating.Remove(comm) + src.del_communicating(comm) + comm.del_communicating(src) update_icon() + if(voice_mobs.len == 0 && communicating.len == 0) + listening_objects.Remove(src) + // Proc: request() // Parameters: 1 (candidate - the ghost or communicator wanting to call the device) // Description: Response to a communicator or observer trying to call the device. Adds them to the list of requesters @@ -675,6 +699,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() voice_invites.Cut() all_communicators -= src processing_objects -= src + listening_objects.Remove(src) if(exonet) exonet.remove_address() exonet = null @@ -700,10 +725,18 @@ var/global/list/obj/item/device/communicator/all_communicators = list() /obj/item/device/communicator/see_emote(mob/living/M, text) var/rendered = "\icon[src] [text]" for(var/obj/item/device/communicator/comm in communicating) - for(var/mob/mob in viewers(get_turf(comm))) //We can't use visible_message(), or else we will get an infinite loop if two communicators hear each other. - mob.show_message(rendered) - for(var/mob/living/voice/V in comm.contents) - V.show_message(rendered) + var/turf/T = get_turf(comm) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) //Range of 3 since it's a tiny video display + var/list/mobs_to_relay = in_range["mobs"] + + for(var/mob/mob in mobs_to_relay) //We can't use visible_message(), or else we will get an infinite loop if two communicators hear each other. + var/dst = get_dist(get_turf(mob),get_turf(comm)) + if(dst <= video_range) + mob.show_message(rendered) + else + mob << "You can barely see some movement on \the [src]'s display." + ..() // Proc: hear_talk() @@ -712,9 +745,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() // Description: Relays the speech to all linked communicators. /obj/item/device/communicator/hear_talk(mob/living/M, text, verb, datum/language/speaking) for(var/obj/item/device/communicator/comm in communicating) - var/list/mobs_to_relay = list() - mobs_to_relay |= viewers(get_turf(comm)) - mobs_to_relay |= comm.contents //Needed so ghost-callers can see speech. + + var/turf/T = get_turf(comm) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) + var/list/mobs_to_relay = in_range["mobs"] + for(var/mob/mob in mobs_to_relay) //Can whoever is hearing us understand? if(!mob.say_understands(M, speaking)) @@ -736,7 +772,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() /obj/item/device/communicator/show_message(msg, type, alt, alt_type) var/rendered = "\icon[src] [msg]" for(var/obj/item/device/communicator/comm in communicating) - for(var/mob/mob in hearers(get_turf(comm))) //Ditto for audible messages. + var/turf/T = get_turf(comm) + if(!T) return + var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) + var/list/mobs_to_relay = in_range["mobs"] + + for(var/mob/mob in mobs_to_relay) mob.show_message(rendered) ..() @@ -822,4 +863,4 @@ var/global/list/obj/item/device/communicator/all_communicators = list() usr << "You can't do that because you are dead!" return - src.attack_self(usr) \ No newline at end of file + src.attack_self(usr) diff --git a/code/modules/mob/living/voice/voice.dm b/code/modules/mob/living/voice/voice.dm index a9f5dbd60a3..a27b0ffc948 100644 --- a/code/modules/mob/living/voice/voice.dm +++ b/code/modules/mob/living/voice/voice.dm @@ -107,7 +107,7 @@ // Proc: say() // Parameters: 4 (generic say() arguments) // Description: Adds a speech bubble to the communicator device, then calls ..() to do the real work. -/mob/living/voice/say(var/message, var/datum/language/speaking = null, var/verb="says", var/alt_name="") +/mob/living/voice/say(var/message, var/datum/language/speaking = null, var/verb="says", var/alt_name="", var/whispering=0) //Speech bubbles. if(comm) var/speech_bubble_test = say_test(message) @@ -119,4 +119,8 @@ M << speech_bubble src << speech_bubble - ..(message, speaking, verb, alt_name) //mob/living/say() can do the actual talking. \ No newline at end of file + ..(message, speaking, verb, alt_name, whispering) //mob/living/say() can do the actual talking. + +/mob/living/voice/custom_emote(var/m_type=1,var/message = null,var/range=world.view) + if(!comm) return + ..(m_type,message,comm.video_range) From 3ad30aebc5c8c6097a6d95d97737d459d152988d Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 22:08:31 -0400 Subject: [PATCH 33/50] Removes old code comment block --- code/game/verbs/ooc.dm | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/code/game/verbs/ooc.dm b/code/game/verbs/ooc.dm index 7891951f20c..2a0f3b66071 100644 --- a/code/game/verbs/ooc.dm +++ b/code/game/verbs/ooc.dm @@ -147,42 +147,6 @@ var/admin_stuff = "/([key])([admin_jump_link(mob, target.holder)])" target << "" + create_text_tag("looc", "LOOC:", target) + " (R)[display_name][admin_stuff]: [msg]" -/* - for(var/client/target in clients) - if(target.is_preference_enabled(/datum/client_preference/show_looc)) - var/prefix = "" - var/admin_stuff = "" - var/send = 0 - - // Admins get extra data. - if(target in admins) - admin_stuff += "/([key])" - if(target != src) - admin_stuff += "([admin_jump_link(mob, target.holder)])" - - // For AIs, needs work done to see if the eye is in range as we're going over clients not mobs. - if(isAI(target.mob)) - var/mob/living/silicon/ai/A = target.mob - if(A.eyeobj in m_viewers) - send = 1 - prefix = "(Eye) " // Prefer the (Eye) prefix if they are in range of core and eye. - else if (A in m_viewers) - send = 1 - prefix = "(Core) " - - // If you're in range, you get the LOOC. - else if(target.mob in m_viewers) - send = 1 - - // If you weren't going to otherwise get it, but can see (R)LOOC. - if(!send && (target in admins) && target.is_preference_enabled(/datum/client_preference/holder/show_rlooc)) - send = 1 - prefix = "(R)" - - // Deliver message directly to the client with stream operator, not another proc. LOOC is important. - if(send) - target << "" + create_text_tag("looc", "LOOC:", target) + " [prefix][display_name][admin_stuff]: [msg]" -*/ /mob/proc/get_looc_source() return src From 22e2352925d55b51c64de22e5606fa7d923d4272 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sat, 11 Jun 2016 23:30:41 -0400 Subject: [PATCH 34/50] Makes suit coolers work right in mecha 2 year old typo Fixes #1924 --- code/game/objects/items/devices/suit_cooling.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/devices/suit_cooling.dm b/code/game/objects/items/devices/suit_cooling.dm index c8b66fe38f3..550ea043801 100644 --- a/code/game/objects/items/devices/suit_cooling.dm +++ b/code/game/objects/items/devices/suit_cooling.dm @@ -66,7 +66,7 @@ if (ishuman(loc)) var/mob/living/carbon/human/H = loc if(istype(H.loc, /obj/mecha)) - var/obj/mecha/M = loc + var/obj/mecha/M = H.loc return M.return_temperature() else if(istype(H.loc, /obj/machinery/atmospherics/unary/cryo_cell)) return H.loc:air_contents.temperature From fd265861bcc27bc5cf4b0282e853af7c57e3802d Mon Sep 17 00:00:00 2001 From: Leshana Date: Sat, 11 Jun 2016 16:56:57 -0400 Subject: [PATCH 35/50] Move preferences copy_to() new player mobs into the preference_setup datums. * The /datum/category_item/player_setup_item datums did a good job of organizing the code for loading/saving/editing preferences data, but all of the code that applies preferences to newly created player mobs was still in a single function. * This change adds a new proc to player_setup_item datums: copy_to_mob() which is called from the traditional copy_to() proc, allowing each preferences datum to apply its own character data to the mob. * This allowes new preferences to easily compartmentalize their new code. * I also moved all the code for existing preferences from copy_to() into the copy_to_mob() on their respective preferences datums. --- .../preference_setup/antagonism/01_basic.dm | 4 + .../preference_setup/general/01_basic.dm | 19 +++ .../preference_setup/general/03_body.dm | 47 ++++++++ .../preference_setup/general/04_equipment.dm | 24 ++++ .../preference_setup/general/05_background.dm | 10 ++ .../preference_setup/general/06_flavor.dm | 12 ++ .../preference_setup/preference_setup.dm | 16 +++ .../client/preference_setup/skills/skills.dm | 5 + code/modules/client/preferences.dm | 113 +----------------- 9 files changed, 142 insertions(+), 108 deletions(-) diff --git a/code/modules/client/preference_setup/antagonism/01_basic.dm b/code/modules/client/preference_setup/antagonism/01_basic.dm index eefc531da15..5b0be7bb71f 100644 --- a/code/modules/client/preference_setup/antagonism/01_basic.dm +++ b/code/modules/client/preference_setup/antagonism/01_basic.dm @@ -15,6 +15,10 @@ var/global/list/uplink_locations = list("PDA", "Headset", "None") /datum/category_item/player_setup_item/antagonism/basic/sanitize_character() pref.uplinklocation = sanitize_inlist(pref.uplinklocation, uplink_locations, initial(pref.uplinklocation)) +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/antagonism/basic/copy_to_mob(var/mob/living/carbon/human/character) + character.exploit_record = pref.exploit_record + /datum/category_item/player_setup_item/antagonism/basic/content(var/mob/user) . +="Uplink Type :
[pref.uplinklocation]" . +="
" diff --git a/code/modules/client/preference_setup/general/01_basic.dm b/code/modules/client/preference_setup/general/01_basic.dm index 27aa76cc306..24f7e327f17 100644 --- a/code/modules/client/preference_setup/general/01_basic.dm +++ b/code/modules/client/preference_setup/general/01_basic.dm @@ -40,6 +40,25 @@ datum/preferences/proc/set_biological_gender(var/gender) pref.spawnpoint = sanitize_inlist(pref.spawnpoint, spawntypes, initial(pref.spawnpoint)) pref.be_random_name = sanitize_integer(pref.be_random_name, 0, 1, initial(pref.be_random_name)) +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/basic/copy_to_mob(var/mob/living/carbon/human/character) + if(config.humans_need_surnames) + var/firstspace = findtext(pref.real_name, " ") + var/name_length = length(pref.real_name) + if(!firstspace) //we need a surname + pref.real_name += " [pick(last_names)]" + else if(firstspace == name_length) + pref.real_name += "[pick(last_names)]" + + character.real_name = pref.real_name + character.name = character.real_name + if(character.dna) + character.dna.real_name = character.real_name + + character.gender = pref.biological_gender + character.identifying_gender = pref.identifying_gender + character.age = pref.age + /datum/category_item/player_setup_item/general/basic/content() . = list() . += "Name: " diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index a092b859b31..8bd528cb5d6 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -76,6 +76,53 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O if(!pref.organ_data) pref.organ_data = list() if(!pref.rlimb_data) pref.rlimb_data = list() +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/body/copy_to_mob(var/mob/living/carbon/human/character) + // Copy basic values + character.r_eyes = pref.r_eyes + character.g_eyes = pref.g_eyes + character.b_eyes = pref.b_eyes + character.h_style = pref.h_style + character.r_hair = pref.r_hair + character.g_hair = pref.g_hair + character.b_hair = pref.b_hair + character.f_style = pref.f_style + character.r_facial = pref.r_facial + character.g_facial = pref.g_facial + character.b_facial = pref.b_facial + character.r_skin = pref.r_skin + character.g_skin = pref.g_skin + character.b_skin = pref.b_skin + character.s_tone = pref.s_tone + character.h_style = pref.h_style + character.f_style = pref.f_style + character.b_type = pref.b_type + + // Destroy/cyborgize organs and limbs. + for(var/name in list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO)) + var/status = pref.organ_data[name] + var/obj/item/organ/external/O = character.organs_by_name[name] + if(O) + if(status == "amputated") + O.remove_rejuv() + else if(status == "cyborg") + if(pref.rlimb_data[name]) + O.robotize(pref.rlimb_data[name]) + else + O.robotize() + + for(var/name in list(O_HEART,O_EYES,O_BRAIN)) + var/status = pref.organ_data[name] + if(!status) + continue + var/obj/item/organ/I = character.internal_organs_by_name[name] + if(I) + if(status == "assisted") + I.mechassist() + else if(status == "mechanical") + I.robotize() + return + /datum/category_item/player_setup_item/general/body/content(var/mob/user) . = list() if(!pref.preview_icon) diff --git a/code/modules/client/preference_setup/general/04_equipment.dm b/code/modules/client/preference_setup/general/04_equipment.dm index c455cef524a..537f2632e73 100644 --- a/code/modules/client/preference_setup/general/04_equipment.dm +++ b/code/modules/client/preference_setup/general/04_equipment.dm @@ -18,6 +18,30 @@ S["backbag"] << pref.backbag S["pdachoice"] << pref.pdachoice +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/equipment/copy_to_mob(var/mob/living/carbon/human/character) + character.all_underwear.Cut() + character.all_underwear_metadata.Cut() + + for(var/underwear_category_name in pref.all_underwear) + var/datum/category_group/underwear/underwear_category = global_underwear.categories_by_name[underwear_category_name] + if(underwear_category) + var/underwear_item_name = pref.all_underwear[underwear_category_name] + character.all_underwear[underwear_category_name] = underwear_category.items_by_name[underwear_item_name] + if(pref.all_underwear_metadata[underwear_category_name]) + character.all_underwear_metadata[underwear_category_name] = pref.all_underwear_metadata[underwear_category_name] + else + pref.all_underwear -= underwear_category_name + + // TODO - Looks like this is duplicating the work of sanitize_character() if so, remove + if(pref.backbag > 4 || pref.backbag < 1) + pref.backbag = 1 //Same as above + character.backbag = pref.backbag + + if(pref.pdachoice > 3 || pref.pdachoice < 1) + pref.pdachoice = 1 + character.pdachoice = pref.pdachoice + /datum/category_item/player_setup_item/general/equipment/sanitize_character() if(!islist(pref.gear)) pref.gear = list() diff --git a/code/modules/client/preference_setup/general/05_background.dm b/code/modules/client/preference_setup/general/05_background.dm index 5708d3c757e..e3076629a8e 100644 --- a/code/modules/client/preference_setup/general/05_background.dm +++ b/code/modules/client/preference_setup/general/05_background.dm @@ -30,6 +30,16 @@ pref.nanotrasen_relation = sanitize_inlist(pref.nanotrasen_relation, COMPANY_ALIGNMENTS, initial(pref.nanotrasen_relation)) +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/background/copy_to_mob(var/mob/living/carbon/human/character) + character.med_record = pref.med_record + character.sec_record = pref.sec_record + character.gen_record = pref.gen_record + character.home_system = pref.home_system + character.citizenship = pref.citizenship + character.personal_faction = pref.faction + character.religion = pref.religion + /datum/category_item/player_setup_item/general/background/content(var/mob/user) . += "Background Information
" . += "[company_name] Relation: [pref.nanotrasen_relation]
" diff --git a/code/modules/client/preference_setup/general/06_flavor.dm b/code/modules/client/preference_setup/general/06_flavor.dm index b312bb95e9b..94525ee06ff 100644 --- a/code/modules/client/preference_setup/general/06_flavor.dm +++ b/code/modules/client/preference_setup/general/06_flavor.dm @@ -36,6 +36,18 @@ /datum/category_item/player_setup_item/general/flavor/sanitize_character() return +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/general/flavor/copy_to_mob(var/mob/living/carbon/human/character) + character.flavor_texts["general"] = pref.flavor_texts["general"] + character.flavor_texts["head"] = pref.flavor_texts["head"] + character.flavor_texts["face"] = pref.flavor_texts["face"] + character.flavor_texts["eyes"] = pref.flavor_texts["eyes"] + character.flavor_texts["torso"] = pref.flavor_texts["torso"] + character.flavor_texts["arms"] = pref.flavor_texts["arms"] + character.flavor_texts["hands"] = pref.flavor_texts["hands"] + character.flavor_texts["legs"] = pref.flavor_texts["legs"] + character.flavor_texts["feet"] = pref.flavor_texts["feet"] + /datum/category_item/player_setup_item/general/flavor/content(var/mob/user) . += "Flavor:
" . += "Set Flavor Text
" diff --git a/code/modules/client/preference_setup/preference_setup.dm b/code/modules/client/preference_setup/preference_setup.dm index 7028894fda4..a152d4399c2 100644 --- a/code/modules/client/preference_setup/preference_setup.dm +++ b/code/modules/client/preference_setup/preference_setup.dm @@ -72,6 +72,10 @@ for(var/datum/category_group/player_setup_category/PS in categories) PS.save_preferences(S) +/datum/category_collection/player_setup_collection/proc/copy_to_mob(var/mob/living/carbon/human/C) + for(var/datum/category_group/player_setup_category/PS in categories) + PS.copy_to_mob(C) + /datum/category_collection/player_setup_collection/proc/header() var/dat = "" for(var/datum/category_group/player_setup_category/PS in categories) @@ -143,6 +147,12 @@ for(var/datum/category_item/player_setup_item/PI in items) PI.save_preferences(S) +/datum/category_group/player_setup_category/proc/copy_to_mob(var/mob/living/carbon/human/C) + for(var/datum/category_item/player_setup_item/PI in items) + PI.sanitize_character() + for(var/datum/category_item/player_setup_item/PI in items) + PI.copy_to_mob(C) + /datum/category_group/player_setup_category/proc/content(var/mob/user) . = "
" var/current = 0 @@ -201,6 +211,12 @@ /datum/category_item/player_setup_item/proc/save_preferences(var/savefile/S) return +/* +* Called when the item is asked to apply its per character settings to a new mob. +*/ +/datum/category_item/player_setup_item/proc/copy_to_mob(var/mob/living/carbon/human/C) + return + /datum/category_item/player_setup_item/proc/content() return diff --git a/code/modules/client/preference_setup/skills/skills.dm b/code/modules/client/preference_setup/skills/skills.dm index 7255e25bc46..ab5a6c17e10 100644 --- a/code/modules/client/preference_setup/skills/skills.dm +++ b/code/modules/client/preference_setup/skills/skills.dm @@ -18,6 +18,11 @@ if(!pref.skills.len) pref.ZeroSkills() if(pref.used_skillpoints < 0) pref.used_skillpoints = 0 +// Moved from /datum/preferences/proc/copy_to() +/datum/category_item/player_setup_item/skills/copy_to_mob(var/mob/living/carbon/human/character) + character.skills = pref.skills + character.used_skillpoints = pref.used_skillpoints + /datum/category_item/player_setup_item/skills/content() . = list() . += "Select your Skills
" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 665ea5836c1..0bcaff2491b 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -251,118 +251,15 @@ datum/preferences /datum/preferences/proc/copy_to(mob/living/carbon/human/character, icon_updates = 1) // Sanitizing rather than saving as someone might still be editing when copy_to occurs. player_setup.sanitize_setup() + + // This needs to happen before anything else becuase it sets some variables. character.set_species(species) + // Special Case: This references variables owned by two different datums, so do it here. if(be_random_name) real_name = random_name(identifying_gender,species) - if(config.humans_need_surnames) - var/firstspace = findtext(real_name, " ") - var/name_length = length(real_name) - if(!firstspace) //we need a surname - real_name += " [pick(last_names)]" - else if(firstspace == name_length) - real_name += "[pick(last_names)]" - - character.real_name = real_name - character.name = character.real_name - if(character.dna) - character.dna.real_name = character.real_name - - character.flavor_texts["general"] = flavor_texts["general"] - character.flavor_texts["head"] = flavor_texts["head"] - character.flavor_texts["face"] = flavor_texts["face"] - character.flavor_texts["eyes"] = flavor_texts["eyes"] - character.flavor_texts["torso"] = flavor_texts["torso"] - character.flavor_texts["arms"] = flavor_texts["arms"] - character.flavor_texts["hands"] = flavor_texts["hands"] - character.flavor_texts["legs"] = flavor_texts["legs"] - character.flavor_texts["feet"] = flavor_texts["feet"] - - character.med_record = med_record - character.sec_record = sec_record - character.gen_record = gen_record - character.exploit_record = exploit_record - - character.gender = biological_gender - character.identifying_gender = identifying_gender - character.age = age - character.b_type = b_type - - character.r_eyes = r_eyes - character.g_eyes = g_eyes - character.b_eyes = b_eyes - - character.h_style = h_style - character.r_hair = r_hair - character.g_hair = g_hair - character.b_hair = b_hair - - character.f_style = f_style - character.r_facial = r_facial - character.g_facial = g_facial - character.b_facial = b_facial - - character.r_skin = r_skin - character.g_skin = g_skin - character.b_skin = b_skin - - character.s_tone = s_tone - - character.h_style = h_style - character.f_style = f_style - - character.home_system = home_system - character.citizenship = citizenship - character.personal_faction = faction - character.religion = religion - - character.skills = skills - character.used_skillpoints = used_skillpoints - - // Destroy/cyborgize organs and limbs. - for(var/name in list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO)) - var/status = organ_data[name] - var/obj/item/organ/external/O = character.organs_by_name[name] - if(O) - if(status == "amputated") - O.remove_rejuv() - else if(status == "cyborg") - if(rlimb_data[name]) - O.robotize(rlimb_data[name]) - else - O.robotize() - - for(var/name in list(O_HEART,O_EYES,O_BRAIN)) - var/status = organ_data[name] - if(!status) - continue - var/obj/item/organ/I = character.internal_organs_by_name[name] - if(I) - if(status == "assisted") - I.mechassist() - else if(status == "mechanical") - I.robotize() - - character.all_underwear.Cut() - character.all_underwear_metadata.Cut() - - for(var/underwear_category_name in all_underwear) - var/datum/category_group/underwear/underwear_category = global_underwear.categories_by_name[underwear_category_name] - if(underwear_category) - var/underwear_item_name = all_underwear[underwear_category_name] - character.all_underwear[underwear_category_name] = underwear_category.items_by_name[underwear_item_name] - if(all_underwear_metadata[underwear_category_name]) - character.all_underwear_metadata[underwear_category_name] = all_underwear_metadata[underwear_category_name] - else - all_underwear -= underwear_category_name - - if(backbag > 4 || backbag < 1) - backbag = 1 //Same as above - character.backbag = backbag - - if(pdachoice > 3 || pdachoice < 1) - pdachoice = 1 - character.pdachoice = pdachoice + // Ask the preferences datums to apply their own settings to the new mob + player_setup.copy_to_mob(character) if(icon_updates) character.force_update_limbs() From e993dffb1759e12c60308a357613ce9ebaa966e8 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sun, 12 Jun 2016 02:18:00 -0400 Subject: [PATCH 36/50] Fixes #1905 *screams forever* This one almost got me. Organs were defined in two places, probably because of a merge error, and /obj/item/organ/external/head/removed() was defined in THREE places. Pls. Why you do this. PLSSSS. --- code/modules/organs/organ_external.dm | 216 +---------------------- code/modules/organs/organ_icon.dm | 4 - code/modules/organs/subtypes/diona.dm | 9 + code/modules/organs/subtypes/standard.dm | 41 ++++- 4 files changed, 45 insertions(+), 225 deletions(-) diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index e177649e4ab..a1a31fad7c6 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -1105,7 +1105,6 @@ Note that amputating the affected organ does in fact remove the infection from t W.loc = owner /obj/item/organ/external/removed(var/mob/living/user, var/ignore_children = 0) - if(!owner) return var/is_robotic = robotic >= ORGAN_ROBOT @@ -1161,6 +1160,8 @@ Note that amputating the affected organ does in fact remove the infection from t qdel(spark_system) qdel(src) + victim.update_body() + /obj/item/organ/external/proc/disfigure(var/type = "brute") if (disfigured) return @@ -1246,216 +1247,3 @@ Note that amputating the affected organ does in fact remove the infection from t if(6 to INFINITY) flavor_text += "a ton of [wound]\s" return english_list(flavor_text) - -/**************************************************** - ORGAN DEFINES -****************************************************/ - -/obj/item/organ/external/chest - name = "upper body" - organ_tag = BP_TORSO - icon_name = "torso" - max_damage = 100 - min_broken_damage = 35 - w_class = 5 - body_part = UPPER_TORSO - vital = 1 - amputation_point = "spine" - joint = "neck" - dislocated = -1 - gendered_icon = 1 - cannot_amputate = 1 - parent_organ = null - encased = "ribcage" - organ_rel_size = 70 - base_miss_chance = 10 - -/obj/item/organ/external/chest/robotize() - if(..()) - // Give them a new cell. - owner.internal_organs_by_name["cell"] = new /obj/item/organ/internal/cell(owner,1) - -/obj/item/organ/external/groin - name = "lower body" - organ_tag = BP_GROIN - icon_name = "groin" - max_damage = 100 - min_broken_damage = 35 - w_class = 5 - body_part = LOWER_TORSO - vital = 1 - parent_organ = BP_TORSO - amputation_point = "lumbar" - joint = "hip" - dislocated = -1 - gendered_icon = 1 - organ_rel_size = 30 - -/obj/item/organ/external/arm - organ_tag = "l_arm" - name = "left arm" - icon_name = "l_arm" - max_damage = 50 - min_broken_damage = 30 - w_class = 3 - body_part = ARM_LEFT - parent_organ = BP_TORSO - joint = "left elbow" - amputation_point = "left shoulder" - can_grasp = 1 - -/obj/item/organ/external/arm/right - organ_tag = "r_arm" - name = "right arm" - icon_name = "r_arm" - body_part = ARM_RIGHT - joint = "right elbow" - amputation_point = "right shoulder" - -/obj/item/organ/external/leg - organ_tag = "l_leg" - name = "left leg" - icon_name = "l_leg" - max_damage = 50 - min_broken_damage = 30 - w_class = 3 - body_part = LEG_LEFT - icon_position = LEFT - parent_organ = BP_GROIN - joint = "left knee" - amputation_point = "left hip" - can_stand = 1 - -/obj/item/organ/external/leg/right - organ_tag = "r_leg" - name = "right leg" - icon_name = "r_leg" - body_part = LEG_RIGHT - icon_position = RIGHT - joint = "right knee" - amputation_point = "right hip" - -/obj/item/organ/external/foot - organ_tag = "l_foot" - name = "left foot" - icon_name = "l_foot" - min_broken_damage = 15 - w_class = 2 - body_part = FOOT_LEFT - icon_position = LEFT - parent_organ = "l_leg" - joint = "left ankle" - amputation_point = "left ankle" - can_stand = 1 - organ_rel_size = 10 - base_miss_chance = 50 - -/obj/item/organ/external/foot/removed() - if(owner) owner.u_equip(owner.shoes) - ..() - -/obj/item/organ/external/foot/right - organ_tag = "r_foot" - name = "right foot" - icon_name = "r_foot" - body_part = FOOT_RIGHT - icon_position = RIGHT - parent_organ = "r_leg" - joint = "right ankle" - amputation_point = "right ankle" - -/obj/item/organ/external/hand - organ_tag = "l_hand" - name = "left hand" - icon_name = "l_hand" - min_broken_damage = 15 - w_class = 2 - body_part = HAND_LEFT - parent_organ = "l_arm" - joint = "left wrist" - amputation_point = "left wrist" - can_grasp = 1 - organ_rel_size = 10 - base_miss_chance = 50 - -/obj/item/organ/external/hand/removed() - owner.u_equip(owner.gloves) - ..() - -/obj/item/organ/external/hand/right - organ_tag = "r_hand" - name = "right hand" - icon_name = "r_hand" - body_part = HAND_RIGHT - parent_organ = "r_arm" - joint = "right wrist" - amputation_point = "right wrist" - -/obj/item/organ/external/head - organ_tag = BP_HEAD - icon_name = "head" - name = "head" - max_damage = 75 - min_broken_damage = 35 - w_class = 3 - body_part = HEAD - vital = 1 - parent_organ = BP_TORSO - joint = "jaw" - amputation_point = "neck" - gendered_icon = 1 - encased = "skull" - base_miss_chance = 40 - - var/eye_icon = "eyes_s" - -// These organs are important for robotizing at chargen. -/obj/item/organ/external/head/robotize(var/company, var/skip_prosthetics, var/keep_organs) - return ..(company, skip_prosthetics, 1) - -/obj/item/organ/external/head/removed() - if(owner) - name = "[owner.real_name]'s head" - owner.u_equip(owner.glasses) - owner.u_equip(owner.head) - owner.u_equip(owner.l_ear) - owner.u_equip(owner.r_ear) - owner.u_equip(owner.wear_mask) - spawn(1) - owner.update_hair() - ..() - -/obj/item/organ/external/head/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list()) - ..(brute, burn, sharp, edge, used_weapon, forbidden_limbs) - if (!disfigured) - if (brute_dam > 40) - if (prob(50)) - disfigure("brute") - if (burn_dam > 40) - disfigure("burn") - -/obj/item/organ/external/head/skrell - eye_icon = "skrell_eyes_s" - -/obj/item/organ/external/head/seromi - eye_icon = "eyes_seromi" - -/obj/item/organ/external/head/no_eyes - eye_icon = "blank_eyes" - -/obj/item/organ/external/head/no_eyes/diona - max_damage = 50 - min_broken_damage = 25 - cannot_break = 1 - amputation_point = "branch" - joint = "structural ligament" - dislocated = -1 - vital = 0 - -/obj/item/organ/external/head/no_eyes/diona/removed() - var/mob/living/carbon/human/H = owner - ..() - if(!istype(H) || !H.organs || !H.organs.len) - H.death() - if(prob(50) && spawn_diona_nymph(get_turf(src))) - qdel(src) \ No newline at end of file diff --git a/code/modules/organs/organ_icon.dm b/code/modules/organs/organ_icon.dm index 98cce7efd39..035a0692c39 100644 --- a/code/modules/organs/organ_icon.dm +++ b/code/modules/organs/organ_icon.dm @@ -43,10 +43,6 @@ var/global/list/limb_icon_cache = list() var/obj/item/organ/internal/eyes/eyes = owner.internal_organs_by_name[O_EYES] if(eyes) eyes.update_colour() -/obj/item/organ/external/head/removed() - get_icon() - ..() - /obj/item/organ/external/head/get_icon() ..() diff --git a/code/modules/organs/subtypes/diona.dm b/code/modules/organs/subtypes/diona.dm index 344ba2f05a0..ab5c4367585 100644 --- a/code/modules/organs/subtypes/diona.dm +++ b/code/modules/organs/subtypes/diona.dm @@ -198,3 +198,12 @@ /obj/item/organ/internal/diona/node/removed() return + +/obj/item/organ/external/head/no_eyes/diona + max_damage = 50 + min_broken_damage = 25 + cannot_break = 1 + amputation_point = "branch" + joint = "structural ligament" + dislocated = -1 + vital = 0 \ No newline at end of file diff --git a/code/modules/organs/subtypes/standard.dm b/code/modules/organs/subtypes/standard.dm index ffc337824de..36fc7ba6776 100644 --- a/code/modules/organs/subtypes/standard.dm +++ b/code/modules/organs/subtypes/standard.dm @@ -18,6 +18,13 @@ cannot_amputate = 1 parent_organ = null encased = "ribcage" + organ_rel_size = 70 + base_miss_chance = 10 + +/obj/item/organ/external/chest/robotize() + if(..()) + // Give them a new cell. + owner.internal_organs_by_name["cell"] = new /obj/item/organ/internal/cell(owner,1) /obj/item/organ/external/groin name = "lower body" @@ -33,6 +40,7 @@ joint = "hip" dislocated = -1 gendered_icon = 1 + organ_rel_size = 30 /obj/item/organ/external/arm organ_tag = "l_arm" @@ -93,7 +101,8 @@ can_stand = 1 /obj/item/organ/external/foot/removed() - if(owner) owner.u_equip(owner.shoes) + if(owner) + owner.drop_from_inventory(owner.shoes) ..() /obj/item/organ/external/foot/right @@ -118,9 +127,12 @@ joint = "left wrist" amputation_point = "left wrist" can_grasp = 1 + organ_rel_size = 10 + base_miss_chance = 50 /obj/item/organ/external/hand/removed() - owner.u_equip(owner.gloves) + if(owner) + owner.drop_from_inventory(owner.gloves) ..() /obj/item/organ/external/hand/right @@ -147,18 +159,24 @@ gendered_icon = 1 cannot_gib = 1 encased = "skull" + base_miss_chance = 40 var/can_intake_reagents = 1 + var/eye_icon = "eyes_s" + +/obj/item/organ/external/head/robotize(var/company, var/skip_prosthetics, var/keep_organs) + return ..(company, skip_prosthetics, 1) /obj/item/organ/external/head/removed() if(owner) name = "[owner.real_name]'s head" - owner.u_equip(owner.glasses) - owner.u_equip(owner.head) - owner.u_equip(owner.l_ear) - owner.u_equip(owner.r_ear) - owner.u_equip(owner.wear_mask) + owner.drop_from_inventory(owner.glasses) + owner.drop_from_inventory(owner.head) + owner.drop_from_inventory(owner.l_ear) + owner.drop_from_inventory(owner.r_ear) + owner.drop_from_inventory(owner.wear_mask) spawn(1) owner.update_hair() + get_icon() ..() /obj/item/organ/external/head/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list()) @@ -169,3 +187,12 @@ disfigure("brute") if (burn_dam > 40) disfigure("burn") + +/obj/item/organ/external/head/skrell + eye_icon = "skrell_eyes_s" + +/obj/item/organ/external/head/seromi + eye_icon = "eyes_seromi" + +/obj/item/organ/external/head/no_eyes + eye_icon = "blank_eyes" From 11107cb8511634c2abeeebc0e93f87da36469512 Mon Sep 17 00:00:00 2001 From: Leshana Date: Sun, 12 Jun 2016 13:28:24 -0400 Subject: [PATCH 37/50] Removing redundant sanitizing; prefs has already been sanitized by this point. --- code/modules/client/preference_setup/preference_setup.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/modules/client/preference_setup/preference_setup.dm b/code/modules/client/preference_setup/preference_setup.dm index a152d4399c2..6344d538e7c 100644 --- a/code/modules/client/preference_setup/preference_setup.dm +++ b/code/modules/client/preference_setup/preference_setup.dm @@ -148,8 +148,6 @@ PI.save_preferences(S) /datum/category_group/player_setup_category/proc/copy_to_mob(var/mob/living/carbon/human/C) - for(var/datum/category_item/player_setup_item/PI in items) - PI.sanitize_character() for(var/datum/category_item/player_setup_item/PI in items) PI.copy_to_mob(C) From f51b725c23524ccef1bdc5b5be3e4ab1a971d9be Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Sun, 12 Jun 2016 15:35:33 -0400 Subject: [PATCH 38/50] Fixes #1837 They obviously have little windows on them. And this is how they used to be. Was probably an oversight when they were converted to another format or something. Airlocks without windows are preeeetty silly. --- code/game/machinery/doors/airlock.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 51af8837a8e..6873cbf0055 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -87,6 +87,7 @@ name = "External Airlock" icon = 'icons/obj/doors/Doorext.dmi' assembly_type = /obj/structure/door_assembly/door_assembly_ext + opacity = 0 /obj/machinery/door/airlock/glass name = "Glass Airlock" From b624e7703a54ab3c6c5d8df28ea70209cb651bb7 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Mon, 13 Jun 2016 02:55:05 -0400 Subject: [PATCH 39/50] Adds actual video calls to communicators 'chu heard me. S'what it does. When you're on a call, there's a "Start Video" button next to each person. When you click it, you actually look through their thing, like a ghost might if they ghostcalled. You have to stay within 1 tile of a video showing communicator to see it. Multiple people can share one communicator video stream by setting it on a table or whatever, and examining it. There's a message like "It appears to be showing a video: [view]" and you can click view and you can all look at the video. COLLABORATION. SYNERGY. OTHER BUZZWORDS. I also added the feature of DECLINING requests from people. Also communicators show up on a special camera list on security consoles, but the same EPv2 network visibility turns this off as well if you wanna be all hidey. This does mean that people with the visiblity on serve as sort of roaming AI cameras for the AI as well. So the AI can watch you repair the outside of the station or whatever if you want. --- code/__defines/machinery.dm | 1 + code/game/machinery/camera/camera.dm | 3 + code/game/machinery/camera/presets.dm | 3 +- .../devices/communicator/communicator.dm | 193 ++++++++++++++++-- code/modules/mob/living/carbon/human/life.dm | 6 +- icons/obj/device.dmi | Bin 44606 -> 44622 bytes nano/templates/communicator.tmpl | 9 +- 7 files changed, 192 insertions(+), 23 deletions(-) diff --git a/code/__defines/machinery.dm b/code/__defines/machinery.dm index 1f65364e1ae..cc77b8c3c59 100644 --- a/code/__defines/machinery.dm +++ b/code/__defines/machinery.dm @@ -50,6 +50,7 @@ var/global/defer_powernet_rebuild = 0 // True if net rebuild will be called #define NETWORK_SECURITY "Security" #define NETWORK_TELECOM "Tcomsat" #define NETWORK_THUNDER "Thunderdome" +#define NETWORK_COMMUNICATORS "Communicators" // Those networks can only be accessed by pre-existing terminals. AIs and new terminals can't use them. var/list/restricted_camera_networks = list(NETWORK_ERT,NETWORK_MERCENARY,"Secret") diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 291b9852949..7c466514194 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -35,10 +35,13 @@ var/affected_by_emp_until = 0 + var/client_huds = list() + /obj/machinery/camera/New() wires = new(src) assembly = new(src) assembly.state = 4 + client_huds |= global_hud.whitense /* // Use this to look for cameras that have the same c_tag. for(var/obj/machinery/camera/C in cameranet.cameras) diff --git a/code/game/machinery/camera/presets.dm b/code/game/machinery/camera/presets.dm index 136bafa90ed..883d9611c16 100644 --- a/code/game/machinery/camera/presets.dm +++ b/code/game/machinery/camera/presets.dm @@ -17,7 +17,8 @@ var/global/list/station_networks = list( NETWORK_RESEARCH_OUTPOST, NETWORK_ROBOTS, NETWORK_PRISON, - NETWORK_SECURITY + NETWORK_SECURITY, + NETWORK_COMMUNICATORS ) var/global/list/engineering_networks = list( NETWORK_ENGINE, diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm index e7831391361..bf7bd30ab12 100644 --- a/code/game/objects/items/devices/communicator/communicator.dm +++ b/code/game/objects/items/devices/communicator/communicator.dm @@ -18,6 +18,8 @@ var/global/list/obj/item/device/communicator/all_communicators = list() matter = list(DEFAULT_WALL_MATERIAL = 30,"glass" = 10) var/video_range = 4 + var/obj/machinery/camera/communicator/video_source // Their camera + var/obj/machinery/camera/communicator/camera // Our camera var/list/voice_mobs = list() var/list/voice_requests = list() @@ -63,6 +65,9 @@ var/global/list/obj/item/device/communicator/all_communicators = list() all_communicators = sortAtom(all_communicators) node = get_exonet_node() processing_objects |= src + camera = new(src) + camera.name = "[src] #[rand(100,999)]" + camera.c_tag = camera.name //This is a pretty terrible way of doing this. spawn(5 SECONDS) //Wait for our mob to finish spawning. if(ismob(loc)) @@ -74,6 +79,14 @@ var/global/list/obj/item/device/communicator/all_communicators = list() register_device(S.loc) initialize_exonet(S.loc) +// Proc: examine() +// Parameters: user - the user doing the examining +// Description: Allows the user to click a link when examining to look at video if one is going. +/obj/item/device/communicator/examine(mob/user) + . = ..(user, 1) + if(. && video_source) + user << "It looks like it's on a video call: \[view\]" + // Proc: initialize_exonet() // Parameters: 1 (user - the person the communicator belongs to) // Description: Sets up the exonet datum, gives the device an address, and then gets a node reference. Afterwards, populates the device @@ -257,27 +270,27 @@ var/global/list/obj/item/device/communicator/all_communicators = list() //Now for ghosts who we pretend have communicators. for(var/mob/observer/dead/O in known_devices) if(O.client && O.client.prefs.communicator_visibility == 1 && O.exonet) - communicators[++communicators.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address) + communicators[++communicators.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address, "ref" = "\ref[O]") //Lists all the other communicators that we invited. for(var/obj/item/device/communicator/comm in voice_invites) if(comm.exonet) - invites[++invites.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address) + invites[++invites.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]") //Ghosts we invited. for(var/mob/observer/dead/O in voice_invites) if(O.exonet && O.client) - invites[++invites.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address) + invites[++invites.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address, "ref" = "\ref[O]") //Communicators that want to talk to us. for(var/obj/item/device/communicator/comm in voice_requests) if(comm.exonet) - requests[++requests.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address) + requests[++requests.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]") //Ghosts that want to talk to us. for(var/mob/observer/dead/O in voice_requests) if(O.exonet && O.client) - requests[++requests.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address) + requests[++requests.len] = list("name" = sanitize("[O.client.prefs.real_name]'s communicator"), "address" = O.exonet.address, "ref" = "\ref[O]") //Now for all the voice mobs inside the communicator. for(var/mob/living/voice/voice in contents) @@ -285,12 +298,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() //Finally, all the communicators linked to this one. for(var/obj/item/device/communicator/comm in communicating) - connected_communicators[++connected_communicators.len] = list("name" = sanitize(comm.name), "true_name" = sanitize(comm.name)) + connected_communicators[++connected_communicators.len] = list("name" = sanitize(comm.name), "true_name" = sanitize(comm.name), "ref" = "\ref[comm]") //Devices that have been messaged or recieved messages from. for(var/obj/item/device/communicator/comm in im_contacts) if(comm.exonet) - im_contacts_ui[++im_contacts_ui.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address) + im_contacts_ui[++im_contacts_ui.len] = list("name" = sanitize(comm.name), "address" = comm.exonet.address, "ref" = "\ref[comm]") //Actual messages. for(var/I in im_list) @@ -313,6 +326,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() data["requestsReceived"] = requests data["voice_mobs"] = voices data["communicating"] = connected_communicators + data["video_comm"] = video_source ? "\ref[video_source.loc]" : null data["imContacts"] = im_contacts_ui data["imList"] = im_list_ui data["time"] = worldtime2text() @@ -325,7 +339,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(!ui) // the ui does not exist, so we'll create a new() one // for a list of parameters and their descriptions see the code docs in \code\modules\nano\nanoui.dm - ui = new(user, src, ui_key, "communicator.tmpl", "Communicator", 450, 700) + ui = new(user, src, ui_key, "communicator.tmpl", "Communicator", 475, 700) // when the ui is first opened this is the data it will use ui.set_initial_data(data) // open the new ui window @@ -344,9 +358,20 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(new_name) owner = new_name name = "[owner]'s [initial(name)]" + if(camera) + camera.name = name + camera.c_tag = name if(href_list["toggle_visibility"]) - network_visibility = !network_visibility + switch(network_visibility) + if(1) //Visible, becoming invisbile + network_visibility = 0 + if(camera) + camera.remove_network(NETWORK_COMMUNICATORS) + if(0) //Invisible, becoming visible + network_visibility = 1 + if(camera) + camera.add_network(NETWORK_COMMUNICATORS) if(href_list["toggle_ringer"]) ringer = !ringer @@ -371,6 +396,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() var/their_address = href_list["dial"] exonet.send_message(their_address, "voice") + if(href_list["decline"]) + var/ref_to_remove = href_list["decline"] + var/atom/decline = locate(ref_to_remove) + if(decline) + del_request(decline) + if(href_list["message"]) if(!get_connection_to_tcomms()) usr << "Error: Cannot connect to Exonet node." @@ -385,10 +416,24 @@ var/global/list/obj/item/device/communicator/all_communicators = list() var/name_to_disconnect = href_list["disconnect"] for(var/mob/living/voice/V in contents) if(name_to_disconnect == V.name) - close_connection(usr, V, "[usr] hung up.") + close_connection(usr, V, "[usr] hung up") for(var/obj/item/device/communicator/comm in communicating) if(name_to_disconnect == comm.name) - close_connection(usr, comm, "[usr] hung up.") + close_connection(usr, comm, "[usr] hung up") + + if(href_list["startvideo"]) + var/ref_to_video = href_list["startvideo"] + var/obj/item/device/communicator/comm = locate(ref_to_video) + if(comm) + connect_video(usr, comm) + + if(href_list["endvideo"]) + if(video_source) + end_video() + + if(href_list["watchvideo"]) + if(video_source) + watch_video(usr,video_source.loc) if(href_list["copy"]) target_address = href_list["copy"] @@ -398,9 +443,9 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(href_list["hang_up"]) for(var/mob/living/voice/V in contents) - close_connection(usr, V, "[usr] hung up.") + close_connection(usr, V, "[usr] hung up") for(var/obj/item/device/communicator/comm in communicating) - close_connection(usr, comm, "[usr] hung up.") + close_connection(usr, comm, "[usr] hung up") if(href_list["switch_tab"]) selected_tab = href_list["switch_tab"] @@ -475,7 +520,9 @@ var/global/list/obj/item/device/communicator/all_communicators = list() owner = user.name name = "[owner]'s [initial(name)]" - + if(camera) + camera.name = name + camera.c_tag = name // Proc: add_communicating() // Parameters: 1 (comm - the communicator to add to communicating) @@ -485,6 +532,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() communicating |= comm listening_objects |= src + update_icon() // Proc: del_communicating() // Parameters: 1 (comm - the communicator to remove from communicating) @@ -493,6 +541,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(!comm || !istype(comm)) return communicating.Remove(comm) + update_icon() // Proc: open_connection() // Parameters: 2 (user - the person who initiated the connecting being opened, candidate - the communicator or observer that will connect to the device) @@ -601,15 +650,19 @@ var/global/list/obj/item/device/communicator/all_communicators = list() visible_message("\icon[src] [reason].") voice_mobs.Remove(voice) qdel(voice) + update_icon() for(var/obj/item/device/communicator/comm in communicating) //Now we handle real communicators. if(target && comm != target) continue - comm.visible_message("\icon[src] [reason].") - visible_message("\icon[src] [reason].") src.del_communicating(comm) comm.del_communicating(src) - update_icon() + comm.visible_message("\icon[src] [reason].") + visible_message("\icon[src] [reason].") + if(comm.camera && video_source == comm.camera) //We hung up on the person on video + end_video() + if(camera && comm.video_source == camera) //We hung up on them while they were watching us + comm.end_video() if(voice_mobs.len == 0 && communicating.len == 0) listening_objects.Remove(src) @@ -649,6 +702,29 @@ var/global/list/obj/item/device/communicator/all_communicators = list() if(L) L << "\icon[src] Communications request from [who]." +// Proc: del_request() +// Parameters: 1 (candidate - the ghost or communicator to be declined) +// Description: Declines a request and cleans up both ends +/obj/item/device/communicator/proc/del_request(var/atom/candidate) + if(!(candidate in voice_requests)) + return + + if(isobserver(candidate)) + candidate << "Your communicator call request was declined." + else if(istype(candidate, /obj/item/device/communicator)) + var/obj/item/device/communicator/comm = candidate + comm.voice_invites -= src + + voice_requests -= candidate + + //Search for holder of our device. + var/mob/living/us = null + if(loc && isliving(loc)) + us = loc + + if(us) + us << "\icon[src] Declined request." + // Proc: request_im() // Parameters: 3 (candidate - the communicator wanting to message the device, origin_address - the address of the sender, text - the message) // Description: Response to a communicator trying to message the device. @@ -700,6 +776,8 @@ var/global/list/obj/item/device/communicator/all_communicators = list() all_communicators -= src processing_objects -= src listening_objects.Remove(src) + qdel(camera) + camera = null if(exonet) exonet.remove_address() exonet = null @@ -709,7 +787,11 @@ var/global/list/obj/item/device/communicator/all_communicators = list() // Parameters: None // Description: Self explanatory /obj/item/device/communicator/update_icon() - if(voice_mobs.len > 0) + if(video_source) + icon_state = "communicator-video" + return + + if(voice_mobs.len || communicating.len) icon_state = "communicator-active" return @@ -833,7 +915,71 @@ var/global/list/obj/item/device/communicator/all_communicators = list() src << "A communications request has been sent to [chosen_communicator]. Now you need to wait until someone answers." -/obj/item/device/communicator/integrated //For synths who have no hands. +// Proc: connect_video() +// Parameters: user - the mob doing the viewing of video, comm - the communicator at the far end +// Description: Sets up a videocall and puts the first view into it using watch_video, and updates the icon +/obj/item/device/communicator/proc/connect_video(mob/user,obj/item/device/communicator/comm) + if((!user) || (!comm) || user.stat) return //KO or dead, or already in a video + + if(video_source) //Already in a video + user << "You are already connected to a video call!" + + if(user.blinded) //User is blinded + user << "You cannot see well enough to do that!" + + if(!(src in comm.communicating) || !comm.camera) //You called someone with a broken communicator or one that's fake or yourself or something + user << "\icon[src]ERROR: Video failed. Either bandwidth is too low, or the other communicator is malfunctioning." + + user << "\icon[src] Attempting to start video over existing call." + sleep(30) + user << "\icon[src] Please wait..." + + video_source = comm.camera + comm.visible_message("\icon[src] New video connection from [comm].") + watch_video(user) + update_icon() + +// Proc: watch_video() +// Parameters: user - the mob doing the viewing of video +// Description: Moves a mob's eye to the far end for the duration of viewing the far end +/obj/item/device/communicator/proc/watch_video(mob/user) + if(!Adjacent(user) || !video_source) return + user.set_machine(video_source) + user.reset_view(video_source) + user << "Now viewing video session. To leave camera view: OOC -> Cancel Camera View" + spawn(0) + while(user.machine == video_source && Adjacent(user)) + var/turf/T = get_turf(video_source) + if(!T || !is_on_same_plane_or_station(T.z, user.z) || !video_source.can_use()) + user << "The screen bursts into static, then goes black." + video_cleanup(user) + return + sleep(10) + + video_cleanup(user) + +// Proc: video_cleanup() +// Parameters: user - the mob who doesn't want to see video anymore +// Description: Cleans up mob's client when they stop watching a video +/obj/item/device/communicator/proc/video_cleanup(mob/user) + if(!user) return + + user.reset_view(null) + user.unset_machine() + +// Proc: end_video() +// Parameters: reason - the text reason to print for why it ended +// Description: Ends the video call by clearing video_source +/obj/item/device/communicator/proc/end_video(var/reason) + video_source = null + + . = "\icon[src] [reason ? reason : "Video session ended"]." + + visible_message(.) + update_icon() + +//For synths who have no hands. +/obj/item/device/communicator/integrated name = "integrated communicator" desc = "A circuit used for long-range communications, able to be integrated into a system." @@ -864,3 +1010,12 @@ var/global/list/obj/item/device/communicator/all_communicators = list() return src.attack_self(usr) + +// A camera preset for spawning in the communicator +/obj/machinery/camera/communicator + network = list(NETWORK_COMMUNICATORS) + +/obj/machinery/camera/communicator/New() + ..() + client_huds |= global_hud.whitense + client_huds |= global_hud.darkMask \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 13dbd179c03..2030f3407d8 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -1051,7 +1051,11 @@ if(copytext(hud.icon_state,1,4) == "hud") //ugly, but icon comparison is worse, I believe client.images.Remove(hud) - client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask, global_hud.nvg, global_hud.thermal, global_hud.meson, global_hud.science) + client.screen.Remove(global_hud.blurry, global_hud.druggy, global_hud.vimpaired, global_hud.darkMask, global_hud.nvg, global_hud.thermal, global_hud.meson, global_hud.science, global_hud.whitense) + + if(istype(client.eye,/obj/machinery/camera)) + var/obj/machinery/camera/cam = client.eye + client.screen |= cam.client_huds if(damageoverlay.overlays) damageoverlay.overlays = list() diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index cba5ea04cae7c5d90e4823141c72cc01b3b2cb5d..2c2e234a3ff93a1501b014706154fdc6bb131e76 100644 GIT binary patch delta 23396 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

atrjSTSCSE8& zi4~YQcExI_ea&e73Yk<_C+QtyCI5VRQc}+ce2A6qA{>ON$N?)=_|zM*N)aGPdFzqK zx}<%caT$aS?9DW3kTYAu$o(oJ>La=SzEp1+G^6KOS(a;ep)ftmMKiNlkEhaa zl>TMmfaySvvM_XFd=`F-<}@OR0q8n=2Yz6Y`&pe-GBOBK)i&6y5WaEQM0E(g^DWJ21{k>>O_wL|Sryti zzkU10v6}QN#qMu`E3&}{|k||qrVc0cRbRkCy`2d^=h%xtm;oJsw$;^$Hu-8RQOt@1D%qh zh9#fL8q{s=><83o#vk4aI*b3rQe>yymYMK-YYjkj-G*o*r~ zV3o;o-=5o?r+V}eeMrK_FV6zSg<^N^Ky{@LD)mf@Tll+4@LdyoMyy&fA*nTG#Jph* zJwtDm&UmySp&u$xS66Xy-GHJ!@I2ioxIG2#wK^a{b%sJ^L>m6^0u?kEAT}E>6mpxN zx4gBwF^iBHtmAfcauWWz1-A)(5gJU?8Gi7b|FS@@Z;L_&FEQ+M%5-PTFIM~#|9V#2 zf#l;RB{61Wgts3xAl$-^k3eP`aESs+!C zVfPmu2W}ZM<35E`&Vatl#D-{m^;R4F&bS`Q1g@(J6s2-kZEdY%=l;xbL%7Cj7b_NK zwQk$-Kv*i>)x9YsN0m6+DTwR4pts@wzyc)YWOLRmrrpKD1^$V%9)G6Q``^gp@&81g z9`_4%)J6QfsNU6q>PWU3p5zh2UA)M&U1W@_ykQS++6Wb=a{FvgbO#Z_XI8i{x90tykJ@^8ySqwMqM}L@c=A! zz^%}MqeYnY=Uw`fE63lry1A_kXg?@*-*i4Q^C9Fe#a|)MR#k*RWR*VkLyJr*bsbB( zR+atv(8F?J&0*!YvJ`i0lA|CA;l!yXetrA+)_)_95lG|;9T(?ltp;Jz&ygj&Y!`}a z7@7mLP~GD2*(8X95B7uDX{^yL^~+$V%=Hyn$!VezA`+{u}Z+8d+t ztBF8F)zt|(%PvwH^`VhvSp4*?>8C`J7Q+^Mm0V$fCVDnUKcP}VfzUzzb~!k@{ZJ*T z#|Qkka1yF|7CfOBdg-k$?+I_jS7GoNfJH?u##-&lNt%Vl?0IEop)ho4bGrr3S)k8d z0u%QZneRA?Ng*%obP0mOzr837VfSA;0wSC#P5K~I|al*-Za|V*34=;^>eVaAr zvb#uLb-P&xvg(LwFeE^G319qMLlh@S)PbE zIrcp)wO(@)Xjil8`S4VcS*2GR|wDemOvc$Lar z$+9WfJVj!)pzs(pieFQh_Z#l6oTPLM`5IrpPID1yln9mCR#d(=uP}D@zljILk3Gyj zkiU-ksZD$x8LXk>T(6>1TXJ!qP9%74z7F?nhkcugC~zjG<;pg+Y|O@OjIhLS2L@$P znHtm09695zKY42pL5P*$F@c`8yU`n{(Uw2QpiJ1VL2SOn-iX`x@(wnb@`GEQDA z{Y!dEt*2kw9#w#BGiXKC(n(>cRL(2=VYUvpS9(0iOPc!j>5)_{jO^<9Lng+z89d2u z**XKaxeLdyRvq>dKQe%v$^LdfxVbf--ayi-)~wEOq(_C-VR;emH%=DF4(F2}Odg{& zk0W(m7q(nTNHwo`7v8KIl)1e0r1;a%WC7dc6ZSVQ!l(b1Z&Fs_gx#Hs8@?adFUE=A z1hV~T_1`CbinT77$h98ns9ioD@fILGjl8N zXB|xxkJ(-9>tcLaj~djNzYL2zwVQ`O`{f6l9LF1lN#1Adl48h+Q!VW~sVWYT2W<1A z2CN&k_#gAW{oDP75X*em)X9EuhbJjj{@3>$By-89GU=Iel$VL#CqpgB*0;1GPinmB zi{8~GP<}J?r8`&i-Mt5ob>ehN9kxa?d&6l9iK5z@4qp03Y0c~e)jzwgVBUo_W3&)R zDSgf&i&%_edeC!tw#7+e2x_p^+IC~&0-aY|jOh~!zx${F*wyKFf&uP*tfl8qVx-x; z*2{IxhoEMx)&bZZSC8=i5{+J8gf!c~^_cBCX^(3j|3|Pz0tH*L;Knn4dcx>+kVkjS zv7STlzRtnpYknLXG+ME)%8)mcJC?-%uBTpGz|P$7=N|K|OT}(GZrD*uZVzsA^WE~y z-4xk$3%LJ1Q&d;8^O&YV_u!hS6NQd&w_!oCUFmmgK zdh~>;Wk<-UlSMtz7Zq9oOV>Mx?ZKy*;@BE?`Z+mY`#u?&cDASJ4)u&=mS%1aUk|>1 zE1Jnsarv-k>bdPg=_cI&$I;>^s>>Wnc9Tl$-r!ywFR%>^fY%{L4;DxO80)YO2hT_5 z%Y~9wyW18-F-LL~?JZ(885eW{mV@`q>*KE5LG*K=>nf4>rs1t%ldRjs?eTWR`QB{P zd%w3I${le@7h%1{?f|SwP%-Sfv-ywy^^`n6x?&Qwk`w+812$|@>2v*>l1k48WCR#7 z2uM4}c0mc}Q~tC4c`SgOdWy6k&tG84n^{%y9|qNS8OfBReQ@wRHWZxwTkoliN|qA{ zRz}(9R{N|eZ6!%8uYMo}=tUgy-QC?`ADF_te4m*Ya*9A5+v>(+r9KZbkY?`)IbRbLu5uGk*^iYh8evIlIz^sN>7 z@s9HHL<}HW>A}G@?BJ+6DW&EJQL=oEKu?~mNFNZLv&^X~LXc3=DZ#MU7Y~zcyW0K_ z9*vO1hIlkFSE%h&0Jz1XY&NfET?a=p-$^6n z+%-LoQ}p%#xf6dI-!6j2hk6{=4~sKUi1d4~J_z!l!|ieN0=)yO9dk3T^^F7i$~FZt z+E2-jazO95V6nm1GgR-xKOls`H@iZMpV3q$E0;9leHel8Hdc{&IagPFJjW&qSrAEF zjUklDIo^0+B&5Y$5TY= zlmP6+kUpmL02deuPSq})tO38ND^(FG-pPZnE-OwUHSU}W%<)W4mzh{0vpQ|!urFRICmS@20XK=I74leJIUOqt%%#vM{p-OT9Fo~A z(5)Y@_0HA1QGv@r8zg1Oo8RnVswpf7HQJ!Q8rG3hmX%;J*ZScfYciK_dH$q@idQx+f!Q$f;ZPsnA$^89r`HG z!f(aJFmn=Hw&Sn5GI_?myLT7|eXg^lX<57RANl*=2Ub&%*MM!C9Ia;<)#d;nIWyJQ zVovZcRAWLul*x|XXzNvioz2Sp1nYDQbLBc=C4+ZsHksNSsa8kWRV~lJQi~t=>CNfb z@ZdXi_R|rK3%4xnF{Y(4f8zS9Nh|5WBK5S4#{{LRJ}>>b{#vID#Rdcw#tC;qSI6T?*c`+yl|gHoR*ijZt8T(0Pj4vcUF9#z&LMn47$0*{<8bIG0XR=-y`r^Mbz`K!V?Is|t!{ zxz12uk=*W4KGeTc3D<)Lua(!@18yBl!OSn(;;rTmZv0$o{7;=1S857Zg)7axh6FoK z2uVBY8HR-UGD|+Bs;6-YLpKcoa|5-;l_NbG%cs^iY7LQ*k=2x4&`_uel~^DVwXPa? zH)nb_J-uPrbGOetd6V}xhdvn~Y z1NyD^5wy#E{(T9MkB|D2_iScDccg_)u02=N0d7fZH0G>UBA3Cyg@PjL9p)jge#fKb z4ge_Mvz%1KpDE#b35$W!4I0HR(~pFPu{qzqB)EqNp-*XG0$@nNWrjno<8_H zTY=SS6PwMLTe4R_(-!6B4<0J{OqS@oCgfo~g&ejgs#K`CTu)#53sajjO?&Ss#}SN^-df&eDWUn!=mqtw>@$&(s;oCT4zp({4_otHy4Sfcxz7_i5i{-Hbh;@_1UjTl>}OL1%=#fJjW@XoA}EGGKCv*UFfD9 z0jt)jqHMRxlCK))A*tzWXSd4I`E8(*_w(9lWjQb14{>J>13sba%1x*yen=KVHxFWh zyL)>T%a;cWbar-jk2E#wG}Jn6q{1YD8GR}LU24b@mI!>==GtJMc|c^Fn;g6vfp^@6 zMdtGhx&?-UnmS62HQbOZ`V^y@RNt{G_V}_!aQ(=^Mj3j&7;ZSnIRvSu_IBArKWpop zS-ftjW;Q?16NB&v?Vpk7O_4-9#-L9(_l4%J{qM=Rh(B(9if^X+5kJv3JH{}grFIa7 z%)fckVD7;(Pm-k;@WQz4T>pwsu?chK4On43{1&W1qwTmoXSB1#ef3khbHiRIJjZ{) z#drP7#m)uS$CvmKB#;&hD=mz}FksA~zvmpneQW;^D=8gPNo&=$*@k(-!Mi;@JMz5+ntOc&Edl4eGnHmo zXL|!)7>CIFS(QY+zeEMdl*5m^@$#qLTe?f4I>WEcrKo>~r3#Bcax~hwtYPmZgM64| z;kc`^AF)SnSn!{<*gM|wAmmK?B3A%C{VO79S1%GD_PsiB(#jCRINct@1E3cV>Lb2S zb?#lnQ_;JkS7tX^fiEenDbOu7K1Y0fd>zgUv)io4OK5JgTOTBS3w(39iMVw>R3j|I zmleMdN}n0*m)Pgt*X&Pq#q`B|bQ%A>u<~XQOQGX{&A_Bo=@M)Rw-}6aTnWEq27D%~ zx3{-9!c=k7539^8Jl1-mwJa@}w#IT(;HdK|ud0kaGTm;TrfUAo&eqP+9LYrJ4%P~e zN5EcQ+$Ic)pkox&9(j6J6cMpNH|M2&9UWDH0GO8-Ttjpz{GT$eJRHim`#*M-HH0i< zsU)%`WE6N`B+XU}hmq}KU$(o7P(!GaphQ(MYItw;wU8pp zvLw5-H0gDcWi{wY1%-D_&}~G=PXq8RWXlyezQf*vUSJJkgJ@t$eA*`b;eE1*8K?wB zw+y8SAnl413kOv11a-F7Z*@oj$nJNFAuAT84ma`&C`dnkAqxhF{V~HaKSlQm?S*wv zdcUrAdHByq1pZD06avb>h1E%={SOBM{)YsqyZR!9^}uSgSq?Z({AJ?~MjP0+=em=- z->amSj6&*r-9K6`5h9Z~M}>w5iW0Qgm3B#;WTwz#3z)o6l} zyqCH=;ZKK@ja^a6=j&&=b{U#+{8DPK-d*5O)X^$C^NGe(47$R}o#IA}#pJ8}9OMfv zT0J%OP4uI2Zo12NX)v-PGxaZXilG;j7_6uq!Gswzd}lf748NpQ?k8dayt#>By+4=1qJX zI|m1Td8InWx8CH-SeAo~U~hnD1_UQBAR!jYbYH|u23XE9?W??~-{J_ZZt{;B1nbPS zv|~*+fd<=9w7E+uDlGgtfexgrGkYUxCSpWUQjVo#`NG zzQd$_b;?``v@A6P?`RN{p9k) zdavz|$4ix&6b@L)AlE64(!vyUg-Ygxw>t3hdQM7{Zqa?Y5k5>vx%X33+E_1G+v!BvczASK7k-*$$0un}65aD{WJhRHCdU7`@*s1rbmXGXxos zpF@AxMu*LX4H>-@T;WxZ`F(y=46G?aQjR&RK24#!GSjY@VD}q${?lz7J^V3#s`5@! zvRRShLAm3*74+amsB|DqbCYukSuT^5{7*~)l-1SE5k0P4NO=SJXqdA>^poxdnoR1< z$^&DtdoA_X6ZyZr%j9^2_^C_(+?@Mmr)8yV`+uaDRrz(K!vzf=*qy6%yT>iwsTf+^X0(1m&s> zr40Lh@h<_lsYNTmmJJ&JdcHPrBDKhJDvJ?P^^g73pVMun$vNMYC0-PNPz$s@G_d#D zUAh`CH|s(o(=P_t@p%4jZF#BT?EIZ%9UXIC|E(}wMd=bc zQ1&TNBR^nW2B{KjV@jWM#^39KmW{2KD$#VpzNXTs;C`jT{A|r^A6m}tRnGhe=mh5? zo;Fs1BitF0l8!U_^niQ%t+9sBEwlr}Wx^DQ^J6^b$Nrlh>-Ghpt>cOVzUeSa?$-*) zQ~dby$lc1q{bVnOeqAc(p7I}ulp43$&-x>DS7by(e!&Ac@7jQ?yW3sQ)afmJAvb4! zQq19*wcz$dmX0CVe`vpE$umJ_Os&wMtXtCxP3UB1V{mduqA72v^C%o?6x83n?ya0s z7Sgohu4K_LHO(2^)3ty9gaui&O5z*iNnoDLIOWTvZ=YVR)XBpJ+@UFra#f7E&(dxn zjc$RS$p~0500eFQ60=qtt|W*`J?@F1HEf@&R|OyU4dgBi6<8!YQ)K<5fJwB@Yfti_ zf4)uK5dJj)xtx2Xfnb*kX$;+uMlTMhNu5@^7z?tBOu|R2I{LA|buOu+0t>tS)hZm7 zOlG&5ANzA0SGz;EjnIvDvcXA#`+WPkg&1z5XQ50O zxbym??fnTa^$)>B=be=a0cmJn5dN}Qs0V!dk-{{PLVXJ8V)(omcMT+~0=6^LtA@to z@zOZK&g|@C4IYCdfPc;uX`Jg2K$#LgY;2R*=vZRe->rh%5fL_aTKt}SbtK{B@sRLv zPYqwbRi_Lp1>nN7b7#-4y|P;Z*#=3%@fkqF(PrKc&%B9}qshfs0=5!;DH;K`bu4D; z|88%^Zf+!hdUtDk7Tc#vZ@B8gaF2ZDFERx!4F(~19QVqb)!@{n3SWzf`kZS(^}GX{ zXAdIbBZos({M1nBTGO7NCu<>I(2Pc=cUD#24aO9_hrbHgc#SiGZt*2XwPQ|E0Wz0> zY~Yy6;OJ4GS{|=^Ymh4asjx5(%YF9j)7`g?lvZvV&hAa|OMM;Cf#cT@9A-{w^MFc~ zBSX$+-~PZ+VGGCJ_Xbg-q}=X*Pf86*sU&elIbVz$;-b3&78_r|9w6v!2^PBlSL) z9It0jqKa>ux8g}V6_(HC0|8wjSMDpYQ^{rtttr6(s8=c?UY!`pjy++gaFI8Hot3Le z$TNf0!w#zNKXc|MVh*<=BPwJ!VM9olqPkg zN2{-^6tytwajtAVhiZ)JNWf5gh{Vczb|Qnc1wg5G?1@O0X6nGXYO0O{vo?8bBgV0D!?=DgmD^V$^O}v zDO=NdT0jUN4Eu9?%{$z6mE!jRQ5I|v46a8ZfcB1#(?R5ezH9?u5)@$dxvCUq9b!)N z5_x*bRuak1|HKg1&EMY2b^r(}t2i2Q>a0@9-(uyOD0z&oTF@Zf>EaCm7Vj(c`R2CP zoeYg!E7@%InQk7_23TaVo5u&x;%h3TgVaV74QM9UXhbM5sY1m>dK6q{_yqLle2FSV z=tmA(3a(8@ZBsSblUfci#db7VxOdUQgML)NC^&)KqWD1egM2X07>K{dl-uyyAXUoj zn(!mvMgVD?=g`aC1+}tDsJlLF`X0BHs7!Ppl%&rM>>|kawCv<7wQo?*?Ziv zKRc1!bBNP-#GUzw0If?b7GbNrkoD$d zfx|E7F&>0lIlhrAjK?7@<`##q>S7`L^mY$i5A#Y907#;vkMwt~RI7G`Ex(^%USC5; z3j5W1H@;K$`6kbTOxV8eIg@cmHQeUoejGgoeaBpUMFlKdy-i|uQWGa7s^^_AbiQb;TlwFAtow@l2AbT5%;gU{(MC>mpnZab-jgz>ZIuBdp| zGB$pY{`A*(g<-fYV_0n8ClHANbzVX<&YXJE!RI~`>#25kccIM2?iTfj(VmWuB<7m_ zf1as_hx%xwN?G;R`FTLESXk@}OI6ksD-hq1EV)HxdJR_jJ8aO&Ksmc|SMuk)!HRnW zyO)NK{dI8JSg{^ATfdEqbhgRDm2;9(`v$91CKf!03h#aLeLuSB0bzz3-Gh^$%6<8& zK&`yNHJ?4j?Cc@J^fZ#$aITRJt1b-H_b9Z;o%sv}NWOUGa0f?OMh>!}YdRSH1QTo| zz~)sP3na8Nyo4Q0QjY(+QvtgN#&3X5v;tv+0{@!%){^xBDq$c@SG|x~l z_SJVEM(l;_;9-HQAcN(WzlW*3`@o(6x;+lLcxd5lb^!nrT*r2-Ke?1z)eM+jPa9Ft31iXj5}VMm%|Frw0z5B z4Ug$=8|WM4?obFfzv>V=BEm?XmE?GDK~8g3*AUxvvoen&DDZFyn2k_=q-&5ekt!O7`7#{gY1gqFWDm1M!)+U~g8m2Dowl(Fge8kb$ zZ(n;mq%8!h)72D&5uk;SUaasb(`m`Gq0>CaLT5x_1_lNkXH^B|U#Q+49vtS_jX&O- z6Wp4lO05|VjX&9^(ir^1I*54RxfruQ^f-~S@pt?9nw}Gkpw8g42oD0Sh7T$-vIQ^B z6CJhmzHv#Nojs~qRLDVpL!3>55EZE}X{Z4W32c8(LwE*#&@UVtvmAVsQBNPr0DU2l$yqhEQ^T>pocjJ-O8HN<6 zyoY+|PaOg(#f}^@RJ1dDpzutoheA-;_wy+FVDP>lH;;me8D*uoB<(`^Z?f%D zUNE^ty20q27HWd7f9t7RJFLvK2AtdLZ+~%xt6@%e1zXpaGN-XbO6Q}&W_~O32#IbW zW1byeBVQtFi}0o+!Sc$=pFwSi8fMZTN5l6q-CVPFsW$%I;n%DvcInG1;`3naPNzyM z>eb01Q;-3)QZD+8N_K3E!dIByt=GPRyL&H|qs_%@cIozc#9$9xh`8Um!p94~MTp|1 zNt?@~ zc*CS+=}y}6>)Yce&zoC}dTmwNBq{{+7Y^Pkhl91%>xmg|_{xmz@pO!@VuAH>(i7?&6pRD2{TU zd*t1lMBF;@j9LF`haec&SkZ>kKlejVVU#alE|@uM;ibzw91a}`u`!KZ>WTW{hRq8qHt#*& z(lj{6HLZ6u@IO(XjC}EqTpR#5^}cy_34J?F?U~e2{!!_$_lUIS{qbS!FLCFa!~ly2 zHXg%)@07?OKiE&w7HJKlr3I2e%Rg@ZH%FpBC?@*Sevd`~PxikG*1#HI-XlX+b#+Hl zc%3KzYar5*n6k1ze}=+4YLbg*pIf!~NX#2*>RIrujEpFOYZ(c#@4 zRP6|6fV5KPF|MBYM7EK+%6sh`FSa=tZ^rkz%o+b?~|2^kb&^aHtCv$A>Ee*edngIbtj)}gN z%z~_M-n=1@WHJXy&5-rl$j{3g&R(1P5rH82UO)C22$AIT)#L73615qIa3FM)oxx=T zYW3XzJ-p<6Y)G{{^7x#~nrD?R9v(_VAi=<+v9U3A501Ma?+4_+sEd8nnq0M^JydA)BoT6lVCAJ^y)H;diDVH+|V)9F4VMr^)K_6G~ECI delta 23385 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 X%Gz

-
{{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}}
+ {{:helper.link('Disconnect', 'close', {'disconnect' : value.true_name}, null, 'redButton')}} + {{if data.video_comm == null}} + {{:helper.link('Start Video', 'signal-diag', {'startvideo' : value.ref})}} + {{else data.video_comm == value.ref}} + {{:helper.link('End Video', 'signal-diag', {'endvideo' : value.true_name}, null, 'redButton')}} + {{/if}}
{{/for}} @@ -114,7 +119,7 @@ Used In File(s): code\game\objects\items\devices\communicator\communicator.dm {{:value.name}}
-
{{:value.address}}
{{:helper.link('Dial', 'signal-diag', {'dial' : value.address})}} +
{{:value.address}}
{{:helper.link('Accept', 'signal-diag', {'dial' : value.address})}}{{:helper.link('Decline', 'close', {'decline' : value.ref})}}
{{/for}} From fdc8b33b2c8f70607558bad138c0d3ba77a91094 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Mon, 13 Jun 2016 20:19:52 +0100 Subject: [PATCH 40/50] Adds towels to fitness vendor, color is randomised --- code/game/machinery/vending.dm | 6 ++++-- code/game/objects/items/weapons/towels.dm | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index b0f1460249a..0f3ff025b95 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -741,7 +741,8 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask = 8, /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 8, /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 8, - /obj/item/weapon/reagent_containers/pill/diet = 8) + /obj/item/weapon/reagent_containers/pill/diet = 8, + /obj/item/weapon/towel/random = 8) prices = list(/obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton = 3, /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate = 3, @@ -749,7 +750,8 @@ /obj/item/weapon/reagent_containers/food/drinks/glass2/fitnessflask = 5, /obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar = 5, /obj/item/weapon/reagent_containers/food/snacks/liquidfood = 5, - /obj/item/weapon/reagent_containers/pill/diet = 25) + /obj/item/weapon/reagent_containers/pill/diet = 25, + /obj/item/weapon/towel/random = 40) contraband = list(/obj/item/weapon/reagent_containers/syringe/steroid = 4) diff --git a/code/game/objects/items/weapons/towels.dm b/code/game/objects/items/weapons/towels.dm index 94c266142e5..d51cc8d1d06 100644 --- a/code/game/objects/items/weapons/towels.dm +++ b/code/game/objects/items/weapons/towels.dm @@ -12,3 +12,7 @@ /obj/item/weapon/towel/attack_self(mob/living/user as mob) user.visible_message(text("[] uses [] to towel themselves off.", user, src)) playsound(user, 'sound/weapons/towelwipe.ogg', 25, 1) + +/obj/item/weapon/towel/random/New() + ..() + color = "#"+get_random_colour() \ No newline at end of file From 3e0745677f055f6c4c680db16843b8816cf0c8bb Mon Sep 17 00:00:00 2001 From: Yoshax Date: Mon, 13 Jun 2016 20:20:07 +0100 Subject: [PATCH 41/50] Fixes chocolate milk and milk --- code/modules/reagents/reagent_containers/food/drinks.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index 69472021b84..f2770d98237 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -132,7 +132,7 @@ reagents.add_reagent("soymilk", 50) /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton - name = "small chocolate milk carton" + name = "small milk carton" volume = 30 icon_state = "mini-milk" /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/New() @@ -140,9 +140,9 @@ reagents.add_reagent("milk", 30) /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate - name = "Small Carton of Chocolate Milk" + name = "small chocolate milk carton" desc = "It's milk! This one is in delicious chocolate flavour." - + icon_state = "mini-milk_choco" /obj/item/weapon/reagent_containers/food/drinks/milk/smallcarton/chocolate/New() ..() reagents.add_reagent("chocolate_milk", 30) From fff26d1289793d372806db2ab30839b81c6b936e Mon Sep 17 00:00:00 2001 From: Yoshax Date: Mon, 13 Jun 2016 20:20:17 +0100 Subject: [PATCH 42/50] Fixes GRC to make it not shit --- code/_helpers/unsorted.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/_helpers/unsorted.dm b/code/_helpers/unsorted.dm index 0858ebc1a40..1e14d391833 100644 --- a/code/_helpers/unsorted.dm +++ b/code/_helpers/unsorted.dm @@ -1257,7 +1257,7 @@ var/list/WALLITEMS = list( arglist = list2params(arglist) return "[content]" -/proc/get_random_colour(var/simple, var/lower, var/upper) +/proc/get_random_colour(var/simple, var/lower=0, var/upper=255) var/colour if(simple) colour = pick(list("FF0000","FF7F00","FFFF00","00FF00","0000FF","4B0082","8F00FF")) From 7be9fab77277b84a98614684df14ca1f53e92524 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 14 Jun 2016 11:23:49 -0400 Subject: [PATCH 43/50] Changelog for my stuff To satisfy @EmperorJon ;o --- html/changelogs/arokha-severalchanges.yml | 50 +++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 html/changelogs/arokha-severalchanges.yml diff --git a/html/changelogs/arokha-severalchanges.yml b/html/changelogs/arokha-severalchanges.yml new file mode 100644 index 00000000000..88509fbb40d --- /dev/null +++ b/html/changelogs/arokha-severalchanges.yml @@ -0,0 +1,50 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Arokha + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Adds video-calls on communicators for existing calls" + - rscadd: "Adds a 'decline' to incoming communicator calls" + - rscadd: "New wallets that let you color them how you want" + - bugfix: "Fixes communicators being able to hear speech" + - bugfix: "Fixes deadcalls to communicators" + - bugfix: "Fixed dropping head/foot/glove items on limb loss" + - bugfix: "Suit coolers inside mecha now work" + - bugfix: "Fixed printing '1' to world over and over" + - bugfix: "Made mech tracking beacon constructable again" + - tweak: "Change how emotes and LOOC propogate to nearby people" + - tweak: "Rewrote how get_mobs_and_objs_in_view_fast works" + - tweak: "Can now see through the red external airlock doors" + + + From c0414d2917c369405541deb3fa8c35fb9a9dfc93 Mon Sep 17 00:00:00 2001 From: Mark9013100 Date: Tue, 14 Jun 2016 12:17:35 -0400 Subject: [PATCH 44/50] Allows cards to go on the ear slot --- code/game/objects/items/weapons/cards_ids.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index a85fab3807a..0f59b09cc49 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -15,7 +15,8 @@ name = "card" desc = "Does card things." icon = 'icons/obj/card.dmi' - w_class = 1.0 + w_class = 1 + slot_flags = SLOT_EARS var/associated_account_number = 0 var/list/files = list( ) From 0bff0300673780b32381dd85d7608937d0220fe3 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Tue, 14 Jun 2016 17:58:19 +0100 Subject: [PATCH 45/50] Updooterino the changelogerino --- html/changelog.html | 34 ++++++++++++++ html/changelogs/.all_changelog.yml | 31 +++++++++++++ html/changelogs/Datraen-Xenobio2Update7.yml | 9 ---- html/changelogs/GinjaNinja32-newdrinks.yml | 6 --- html/changelogs/Yoshax-Roboticsstuff.yml | 36 --------------- html/changelogs/arokha-severalchanges.yml | 50 --------------------- 6 files changed, 65 insertions(+), 101 deletions(-) delete mode 100644 html/changelogs/Datraen-Xenobio2Update7.yml delete mode 100644 html/changelogs/GinjaNinja32-newdrinks.yml delete mode 100644 html/changelogs/Yoshax-Roboticsstuff.yml delete mode 100644 html/changelogs/arokha-severalchanges.yml diff --git a/html/changelog.html b/html/changelog.html index 1723a560d03..d292d520ff9 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -53,6 +53,40 @@ -->
+

14 June 2016

+

Arokha updated:

+
    +
  • Adds video-calls on communicators for existing calls
  • +
  • Adds a 'decline' to incoming communicator calls
  • +
  • New wallets that let you color them how you want
  • +
  • Fixes communicators being able to hear speech
  • +
  • Fixes deadcalls to communicators
  • +
  • Fixed dropping head/foot/glove items on limb loss
  • +
  • Suit coolers inside mecha now work
  • +
  • Fixed printing '1' to world over and over
  • +
  • Made mech tracking beacon constructable again
  • +
  • Change how emotes and LOOC propogate to nearby people
  • +
  • Rewrote how get_mobs_and_objs_in_view_fast works
  • +
  • Can now see through the red external airlock doors
  • +
+

Datraen updated:

+
    +
  • Adds a chance for slimes to get mutation toxin for creation of prometheans (40%).
  • +
  • Simple animals outside of the hostile subtype won't follow you as a zombie.
  • +
  • Xeno hostility is more apparent now.
  • +
  • Slime cores can no longer create twice as many slimes through an exploit.
  • +
+

GinjaNinja32 updated:

+
    +
  • Rewrote drinking glasses. There are now eight types of glass, and drink appearance is based on color and the type of glass you put it in.
  • +
  • There are now 'glass extras' you can add to drinks. Straws, drink sticks, and fruit slices (yes, all of them) all work. You can add up to two extras per glass. Add extras by clicking the glass with the extra, remove by clicking the glass with an empty hand while it's in your other hand.
  • +
  • Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make it be fizzy or have ice floating in it.
  • +
+

Yoshax updated:

+
    +
  • Everything produced in Robotics is now 25% cheaper to produce.
  • +
+

08 June 2016

Yoshax updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index f556dac6847..0ab77df4c50 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -2388,3 +2388,34 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. cabinets, consoles, fax machines, etc. This applies to all bullets. - maptweak: The research outpost toxins department now has reinforced phoron windows. - bugfix: Spears now do their correct damage instead of doing around half. +2016-06-14: + Arokha: + - rscadd: Adds video-calls on communicators for existing calls + - rscadd: Adds a 'decline' to incoming communicator calls + - rscadd: New wallets that let you color them how you want + - bugfix: Fixes communicators being able to hear speech + - bugfix: Fixes deadcalls to communicators + - bugfix: Fixed dropping head/foot/glove items on limb loss + - bugfix: Suit coolers inside mecha now work + - bugfix: Fixed printing '1' to world over and over + - bugfix: Made mech tracking beacon constructable again + - tweak: Change how emotes and LOOC propogate to nearby people + - tweak: Rewrote how get_mobs_and_objs_in_view_fast works + - tweak: Can now see through the red external airlock doors + Datraen: + - tweak: Adds a chance for slimes to get mutation toxin for creation of prometheans + (40%). + - bugfix: Simple animals outside of the hostile subtype won't follow you as a zombie. + - bugfix: Xeno hostility is more apparent now. + - bugfix: Slime cores can no longer create twice as many slimes through an exploit. + GinjaNinja32: + - rscadd: Rewrote drinking glasses. There are now eight types of glass, and drink + appearance is based on color and the type of glass you put it in. + - rscadd: There are now 'glass extras' you can add to drinks. Straws, drink sticks, + and fruit slices (yes, all of them) all work. You can add up to two extras per + glass. Add extras by clicking the glass with the extra, remove by clicking the + glass with an empty hand while it's in your other hand. + - rscadd: Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make + it be fizzy or have ice floating in it. + Yoshax: + - tweak: Everything produced in Robotics is now 25% cheaper to produce. diff --git a/html/changelogs/Datraen-Xenobio2Update7.yml b/html/changelogs/Datraen-Xenobio2Update7.yml deleted file mode 100644 index 5c7739f344a..00000000000 --- a/html/changelogs/Datraen-Xenobio2Update7.yml +++ /dev/null @@ -1,9 +0,0 @@ -author: Datraen - -delete-after: True - -changes: - - tweak: "Adds a chance for slimes to get mutation toxin for creation of prometheans (40%)." - - bugfix: "Simple animals outside of the hostile subtype won't follow you as a zombie." - - bugfix: "Xeno hostility is more apparent now." - - bugfix: "Slime cores can no longer create twice as many slimes through an exploit." diff --git a/html/changelogs/GinjaNinja32-newdrinks.yml b/html/changelogs/GinjaNinja32-newdrinks.yml deleted file mode 100644 index 3c685a553ab..00000000000 --- a/html/changelogs/GinjaNinja32-newdrinks.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: GinjaNinja32 -delete-after: True -changes: - - rscadd: "Rewrote drinking glasses. There are now eight types of glass, and drink appearance is based on color and the type of glass you put it in." - - rscadd: "There are now 'glass extras' you can add to drinks. Straws, drink sticks, and fruit slices (yes, all of them) all work. You can add up to two extras per glass. Add extras by clicking the glass with the extra, remove by clicking the glass with an empty hand while it's in your other hand." - - rscadd: "Adding 'fizzy' things (soda water, cola, etc) or ice to a drink will make it be fizzy or have ice floating in it." diff --git a/html/changelogs/Yoshax-Roboticsstuff.yml b/html/changelogs/Yoshax-Roboticsstuff.yml deleted file mode 100644 index 8a3033a9563..00000000000 --- a/html/changelogs/Yoshax-Roboticsstuff.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Yoshax - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - tweak: "Everything produced in Robotics is now 25% cheaper to produce." diff --git a/html/changelogs/arokha-severalchanges.yml b/html/changelogs/arokha-severalchanges.yml deleted file mode 100644 index 88509fbb40d..00000000000 --- a/html/changelogs/arokha-severalchanges.yml +++ /dev/null @@ -1,50 +0,0 @@ -################################ -# Example Changelog File -# -# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. -# -# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) -# When it is, any changes listed below will disappear. -# -# Valid Prefixes: -# bugfix -# wip (For works in progress) -# tweak -# soundadd -# sounddel -# rscadd (general adding of nice things) -# rscdel (general deleting of nice things) -# imageadd -# imagedel -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Arokha - -# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. -delete-after: True - -# Any changes you've made. See valid prefix list above. -# INDENT WITH TWO SPACES. NOT TABS. SPACES. -# SCREW THIS UP AND IT WON'T WORK. -# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Adds video-calls on communicators for existing calls" - - rscadd: "Adds a 'decline' to incoming communicator calls" - - rscadd: "New wallets that let you color them how you want" - - bugfix: "Fixes communicators being able to hear speech" - - bugfix: "Fixes deadcalls to communicators" - - bugfix: "Fixed dropping head/foot/glove items on limb loss" - - bugfix: "Suit coolers inside mecha now work" - - bugfix: "Fixed printing '1' to world over and over" - - bugfix: "Made mech tracking beacon constructable again" - - tweak: "Change how emotes and LOOC propogate to nearby people" - - tweak: "Rewrote how get_mobs_and_objs_in_view_fast works" - - tweak: "Can now see through the red external airlock doors" - - - From cb6529505911bd62e07318a03b53b28e397749bf Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 14 Jun 2016 15:01:37 -0400 Subject: [PATCH 46/50] Fixes issues with update: Replaces glass boxes on map with new path Removes duplicate code accepted into Polaris Moves supplypacks_vr to science_vr --- code/datums/supplypacks/science.dm | 2 +- code/datums/supplypacks/science_vr.dm | 28 + code/datums/supplypacks_vr.dm | 20 - .../client/preference_setup/vore/01_ears.dm | 12 - maps/virgo-1.dmm | 13 +- maps/virgo-2.dmm | 2251 ++++++++--------- maps/virgo-5.dmm | 4 +- vorestation.dme | 2 +- 8 files changed, 1163 insertions(+), 1169 deletions(-) create mode 100644 code/datums/supplypacks/science_vr.dm delete mode 100644 code/datums/supplypacks_vr.dm diff --git a/code/datums/supplypacks/science.dm b/code/datums/supplypacks/science.dm index 433caeff6f2..0aa159fdd06 100644 --- a/code/datums/supplypacks/science.dm +++ b/code/datums/supplypacks/science.dm @@ -3,7 +3,7 @@ * related to security tasks live */ /datum/supply_packs/sci - group = "Security" + group = "Science" /datum/supply_packs/sci/virus name = "Virus sample crate" diff --git a/code/datums/supplypacks/science_vr.dm b/code/datums/supplypacks/science_vr.dm new file mode 100644 index 00000000000..9983d305018 --- /dev/null +++ b/code/datums/supplypacks/science_vr.dm @@ -0,0 +1,28 @@ +/datum/supply_packs/sci/some_robolimbs + name = "Basic Robolimb Blueprints" + contains = list( + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/xion, + /obj/item/weapon/disk/limb/talon + ) + cost = 15 + containertype = /obj/structure/closet/crate/secure + containername = "Basic Robolimb Blueprint Crate" + access = access_robotics + +/datum/supply_packs/sci/all_robolimbs + name = "Advanced Robolimb Blueprints" + contains = list( + /obj/item/weapon/disk/limb/bishop, + /obj/item/weapon/disk/limb/hesphiastos, + /obj/item/weapon/disk/limb/morpheus, + /obj/item/weapon/disk/limb/veymed, + /obj/item/weapon/disk/limb/wardtakahashi, + /obj/item/weapon/disk/limb/xion, + /obj/item/weapon/disk/limb/zenghu, + /obj/item/weapon/disk/limb/talon + ) + cost = 40 + containertype = /obj/structure/closet/crate/secure + containername = "Advanced Robolimb Blueprint Crate" + access = access_robotics \ No newline at end of file diff --git a/code/datums/supplypacks_vr.dm b/code/datums/supplypacks_vr.dm deleted file mode 100644 index 3d9f9b87fa5..00000000000 --- a/code/datums/supplypacks_vr.dm +++ /dev/null @@ -1,20 +0,0 @@ -/datum/supply_packs/robolimbs_basic - name = "Basic robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/xion, - /obj/item/weapon/disk/limb/talon - ) - -/datum/supply_packs/robolimbs_adv - name = "All robolimb blueprints" - contains = list( - /obj/item/weapon/disk/limb/bishop, - /obj/item/weapon/disk/limb/hesphiastos, - /obj/item/weapon/disk/limb/morpheus, - /obj/item/weapon/disk/limb/veymed, - /obj/item/weapon/disk/limb/wardtakahashi, - /obj/item/weapon/disk/limb/xion, - /obj/item/weapon/disk/limb/zenghu, - /obj/item/weapon/disk/limb/talon - ) \ No newline at end of file diff --git a/code/modules/client/preference_setup/vore/01_ears.dm b/code/modules/client/preference_setup/vore/01_ears.dm index 6b783c19188..694aacd7a20 100644 --- a/code/modules/client/preference_setup/vore/01_ears.dm +++ b/code/modules/client/preference_setup/vore/01_ears.dm @@ -1,15 +1,3 @@ -// Super Global Stuff -/datum/category_collection/player_setup_collection/proc/copy_to_mob(var/mob/living/carbon/human/C) - for(var/datum/category_group/player_setup_category/PS in categories) - PS.copy_to_mob(C) - -/datum/category_group/player_setup_category/proc/copy_to_mob(var/mob/living/carbon/human/C) - for(var/datum/category_item/player_setup_item/PI in items) - PI.copy_to_mob(C) - -/datum/category_item/player_setup_item/proc/copy_to_mob(var/mob/living/carbon/human/C) - return - // Global stuff that will put us on the map /datum/category_group/player_setup_category/vore name = "VORE" diff --git a/maps/virgo-1.dmm b/maps/virgo-1.dmm index d2a8c8c5aaa..590797f7864 100644 --- a/maps/virgo-1.dmm +++ b/maps/virgo-1.dmm @@ -667,7 +667,7 @@ "amQ" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main) "amR" = (/obj/machinery/atmospherics/unary/vent_pump/on,/obj/effect/floor_decal/corner/red{dir = 1},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled,/area/security/main) "amS" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled,/area/security/main) -"amT" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled,/area/security/main) +"amT" = (/obj/effect/floor_decal/corner/red{dir = 4},/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/item/weapon/storage/box/glasses,/turf/simulated/floor/tiled,/area/security/main) "amU" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/obj/item/weapon/screwdriver{pixel_y = 15},/obj/effect/floor_decal/corner/red{dir = 5},/turf/simulated/floor/tiled,/area/security/main) "amV" = (/obj/structure/table/standard,/obj/machinery/recharger,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/red{dir = 5},/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/obj/item/weapon/storage/box/donut,/turf/simulated/floor/tiled,/area/security/main) "amW" = (/obj/effect/floor_decal/corner/red{dir = 5},/obj/machinery/photocopier,/turf/simulated/floor/tiled,/area/security/main) @@ -816,7 +816,7 @@ "apJ" = (/obj/structure/disposalpipe/segment,/obj/item/stack/tile/wood,/turf/simulated/floor,/area/vacant/vacant_site) "apK" = (/obj/structure/table/reinforced,/obj/item/stack/tile/wood,/turf/simulated/floor/wood,/area/vacant/vacant_site) "apL" = (/obj/structure/table/reinforced,/obj/item/device/flashlight,/turf/simulated/floor/wood,/area/vacant/vacant_site) -"apM" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 4; pixel_y = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/simulated/floor/wood,/area/vacant/vacant_site) +"apM" = (/obj/structure/table/reinforced,/turf/simulated/floor/wood,/area/vacant/vacant_site) "apN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/maintenance/chapel) "apO" = (/turf/simulated/wall/r_wall,/area/security/security_equiptment_storage) "apP" = (/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/grille,/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/interrogation) @@ -2656,7 +2656,7 @@ "aZd" = (/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "aZe" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) "aZf" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop) -"aZg" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) +"aZg" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop) "aZh" = (/turf/simulated/wall,/area/medical/surgery_storage) "aZi" = (/obj/effect/floor_decal/industrial/warning/corner{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/medbay_fore) "aZj" = (/obj/machinery/floodlight,/turf/simulated/floor,/area/maintenance/medbay_fore) @@ -2895,7 +2895,7 @@ "bdI" = (/turf/simulated/wall,/area/medical/cryo) "bdJ" = (/obj/structure/bookcase/manuals/medical,/obj/item/weapon/book/manual/stasis,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdK" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 0},/obj/item/weapon/reagent_containers/food/drinks/britcup,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) -"bdL" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/obj/item/weapon/storage/box/drinkingglasses,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) +"bdL" = (/obj/structure/table/standard,/obj/structure/noticeboard{pixel_y = 28},/obj/item/weapon/book/manual/medical_diagnostics_manual{pixel_y = 7},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 4; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Break Room Emergency Phone"},/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/light{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdM" = (/obj/machinery/vending/cola,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdN" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak) "bdO" = (/turf/simulated/wall,/area/crew_quarters/medical_restroom) @@ -7953,7 +7953,7 @@ "cWW" = (/obj/structure/cable/cyan{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/engineering/atmos) "cWX" = (/obj/machinery/pipedispenser,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/tiled,/area/engineering/atmos) "cWY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{density = 0; dir = 1; icon_state = "pdoor0"; id = "atmoslockdown"; name = "Atmospherics Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area/engineering/break_room) -"cWZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room) +"cWZ" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/structure/table/reinforced,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 2},/turf/simulated/floor/tiled,/area/engineering/break_room) "cXa" = (/obj/structure/bed/chair/office/dark,/turf/simulated/floor/carpet,/area/engineering/break_room) "cXb" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/obj/effect/floor_decal/corner/blue{dir = 8},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/obj/machinery/portable_atmospherics/powered/pump/filled,/turf/simulated/floor/tiled,/area/engineering/foyer) "cXc" = (/obj/machinery/atmospherics/pipe/manifold/hidden/cyan{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/engineering/foyer) @@ -9707,7 +9707,7 @@ "dEI" = (/turf/space,/area/skipjack_station/southeast_solars) "dEJ" = (/obj/machinery/power/tracker,/obj/structure/cable/yellow,/turf/simulated/floor/airless,/area/solar/starboard) "dEK" = (/turf/space,/area/syndicate_station/south) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10010,4 +10010,3 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} - diff --git a/maps/virgo-2.dmm b/maps/virgo-2.dmm index ec3c6c9176f..34d0bd55e2a 100644 --- a/maps/virgo-2.dmm +++ b/maps/virgo-2.dmm @@ -835,7 +835,7 @@ "qc" = (/obj/structure/reagent_dispensers/beerkeg,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "qd" = (/obj/machinery/vending/boozeomat,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "qe" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) -"qf" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) +"qf" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/effect/floor_decal/corner/red/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/specops) "qg" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "qh" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/specops) "qi" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start) @@ -849,7 +849,7 @@ "qq" = (/obj/structure/sign/double/map/right{pixel_y = 32},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "qr" = (/obj/machinery/vending/snack{name = "hacked Getmore Chocolate Corp"; prices = list()},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership) "qs" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) -"qt" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) +"qt" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qu" = (/obj/structure/sink/kitchen{pixel_y = 28},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qv" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership) "qw" = (/obj/effect/landmark{name = "Nuclear-Code"},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/syndicate_mothership) @@ -1341,7 +1341,7 @@ "zO" = (/obj/machinery/vending/dinnerware,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zP" = (/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zQ" = (/obj/structure/table/marble,/obj/machinery/chemical_dispenser/bar_soft/full,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"zR" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/drinkingglasses,/obj/item/weapon/storage/box/drinkingglasses,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"zR" = (/obj/structure/table/marble,/obj/item/weapon/storage/box/glasses,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) "zS" = (/obj/structure/bed/chair/comfy/teal{dir = 1},/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command) "zT" = (/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command) "zU" = (/obj/machinery/computer/security,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) @@ -1451,1008 +1451,1008 @@ "BU" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) "BV" = (/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 8},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) "BW" = (/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"BX" = (/obj/machinery/computer/cryopod{density = 0; layer = 3.3; pixel_y = 32},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"BY" = (/obj/machinery/cryopod/robot/door/gateway,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"BZ" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Ca" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Cb" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Cc" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Cd" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/transport1/centcom) -"Ce" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/transport1/centcom) -"Cf" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (EAST)"; icon_state = "burst_l"; dir = 4},/turf/space,/area/shuttle/transport1/centcom) -"Cg" = (/obj/machinery/computer/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Ch" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"Ci" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/main_hall) -"Cj" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Ck" = (/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cl" = (/obj/structure/sign/redcross,/turf/unsimulated/wall,/area/centcom/medical) -"Cn" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) -"Co" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Cp" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Cq" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Cr" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Cs" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Ct" = (/obj/machinery/gateway{dir = 10},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cv" = (/obj/machinery/gateway{dir = 6},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cw" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) -"Cx" = (/obj/effect/floor_decal/corner/red{dir = 10},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Cy" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"Cz" = (/obj/machinery/telecomms/broadcaster/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CA" = (/obj/machinery/telecomms/hub/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CB" = (/obj/machinery/computer/rdservercontrol{badmin = 1; name = "Master R&D Server Controller"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CC" = (/obj/machinery/r_n_d/server/centcom,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CD" = (/obj/machinery/door/blast/regular{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CE" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"CF" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"CG" = (/obj/machinery/computer/teleporter,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CH" = (/obj/machinery/teleport/station,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CI" = (/obj/machinery/teleport/hub,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CJ" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"CK" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"CL" = (/obj/machinery/door/airlock/glass{name = "Arrivals Processing"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"CM" = (/obj/machinery/door/airlock/security{name = "Equipment Storage"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"CN" = (/obj/machinery/account_database{name = "CentComm Accounts database"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) -"CO" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"CP" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/centcom/tram) -"CQ" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (WEST)"; icon_state = "swall_straight"; dir = 8},/area/centcom/tram) -"CR" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"CS" = (/turf/simulated/shuttle/wall{tag = "icon-swall (WEST)"; icon_state = "swall"; dir = 8},/area/centcom/tram) -"CT" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"CU" = (/turf/simulated/shuttle/wall{tag = "icon-swall (EAST)"; icon_state = "swall"; dir = 4},/area/centcom/tram) -"CV" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/centcom/tram) -"CW" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"CX" = (/obj/effect/floor_decal/corner/white/full{tag = "icon-corner_white_full (EAST)"; icon_state = "corner_white_full"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"CY" = (/obj/effect/floor_decal/corner/white,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"CZ" = (/obj/effect/floor_decal/corner/white{dir = 5},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Da" = (/obj/effect/floor_decal/corner/white{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Db" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dc" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dd" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/centcom/tram) -"De" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Df" = (/obj/structure/bed/chair,/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = 28},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Dg" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Dh" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Di" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/centcom/tram) -"Dj" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Dk" = (/obj/effect/floor_decal/corner/white{dir = 6; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dl" = (/obj/effect/floor_decal/corner/white/diagonal{tag = "icon-corner_white_diagonal (EAST)"; icon_state = "corner_white_diagonal"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dm" = (/obj/effect/floor_decal/corner/white{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dn" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Do" = (/obj/machinery/porta_turret/crescent,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Dp" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Dq" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window2"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Dr" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Ds" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Dt" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"Du" = (/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"Dv" = (/obj/machinery/computer/card,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dw" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Dx" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/restaurant) -"Dy" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) -"Dz" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DA" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 4},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DB" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"DC" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 8},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DD" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DE" = (/obj/machinery/door/airlock/centcom{name = "Arrivals Processing"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"DF" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window1"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) -"DG" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DH" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DI" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DJ" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DK" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"DL" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{icon_state = "plant-06"; pixel_y = 8; tag = "icon-plant-06"},/obj/effect/floor_decal/corner/red{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DM" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/obj/effect/floor_decal/corner/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DN" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DO" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DP" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"DQ" = (/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DR" = (/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DS" = (/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DT" = (/obj/structure/flora/bush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DU" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DV" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DW" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DX" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"DY" = (/obj/structure/flora/ausbushes/fernybush,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"DZ" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Ea" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Eb" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = 0; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ec" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ed" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Ee" = (/obj/structure/bed/chair{dir = 1},/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Ef" = (/obj/structure/bed/chair{dir = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) -"Eg" = (/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Eh" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 2; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Ei" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) -"Ej" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Ek" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"El" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Em" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"En" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPortEast"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Eo" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ep" = (/obj/machinery/door/window/northright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Eq" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Er" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Es" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Et" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Eu" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ev" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ew" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ex" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ey" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortWest"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Ez" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"EA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EB" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EC" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"ED" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EE" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EF" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EG" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EH" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EI" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EJ" = (/obj/machinery/turretid{pixel_x = 28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EK" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EL" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"EM" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"EN" = (/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EO" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"EP" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortEast"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"EQ" = (/obj/machinery/door/blast/regular{id = "CentComPortEast"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/tram) -"ER" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) -"ES" = (/obj/machinery/door/window/eastright,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"ET" = (/obj/machinery/hologram/holopad,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"EU" = (/obj/machinery/door/window/westright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EV" = (/obj/structure/bed/chair/office/light{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"EW" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EX" = (/obj/effect/floor_decal/spline/plain{tag = "icon-spline_plain_full (NORTH)"; icon_state = "spline_plain_full"; dir = 1},/obj/structure/showcase,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"EY" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"EZ" = (/obj/structure/bed/chair/office/light,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fa" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fb" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fc" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fd" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fe" = (/obj/machinery/door/window/southleft,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Ff" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fg" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fh" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fi" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fj" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fk" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fl" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fm" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fn" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"Fo" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fp" = (/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fq" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) -"Fr" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fs" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Ft" = (/turf/unsimulated/wall,/area/centcom/medical) -"Fu" = (/obj/machinery/door/airlock/glass_medical{name = "Arrivals Medbay"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Fv" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/medical) -"Fw" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fx" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fy" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"Fz" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FA" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FB" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FC" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FD" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FE" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"FF" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FG" = (/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FH" = (/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FI" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FJ" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FK" = (/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FL" = (/obj/effect/floor_decal/corner/green,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FM" = (/obj/structure/table/standard,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/effect/floor_decal/corner/beige/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FN" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FO" = (/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FP" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FQ" = (/obj/structure/flora/ausbushes,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FR" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FS" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FT" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FU" = (/obj/structure/flora/bush,/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) -"FV" = (/obj/effect/floor_decal/corner/white{dir = 9; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"FW" = (/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FX" = (/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FY" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"FZ" = (/obj/machinery/chemical_dispenser/ert,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ga" = (/turf/unsimulated/wall,/area/centcom/bar) -"Gb" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/bar) -"Gc" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Gd" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) -"Ge" = (/turf/unsimulated/wall,/area/centcom/bathroom) -"Gf" = (/obj/machinery/door/airlock,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gg" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/shuttle/escape/centcom) -"Gh" = (/obj/structure/window/shuttle{icon_state = "window4"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Gi" = (/obj/structure/window/shuttle{icon_state = "window12"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Gj" = (/obj/structure/window/shuttle{icon_state = "window8"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Gk" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s"; icon_state = "swall_s"},/area/shuttle/escape/centcom) -"Gl" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Gm" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Gn" = (/obj/structure/closet/secure_closet/chemical,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Go" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Gp" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Gq" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Gr" = (/obj/structure/table/steel,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gs" = (/obj/structure/closet/secure_closet/personal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gt" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"Gu" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Gv" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Gw" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) -"Gx" = (/obj/machinery/computer/secure_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Gy" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Gz" = (/obj/machinery/computer/shuttle_control/emergency,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"GA" = (/obj/machinery/computer/communications,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"GB" = (/obj/machinery/computer/med_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"GC" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) -"GD" = (/obj/effect/floor_decal/corner/green{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GE" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GF" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/extinguisher,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge West"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GG" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GH" = (/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GI" = (/obj/machinery/status_display{pixel_y = 30},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge East"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GJ" = (/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GK" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GL" = (/obj/effect/floor_decal/corner/beige{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GM" = (/obj/effect/floor_decal/corner/beige,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GN" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"GO" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GP" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/amanita_pie,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GQ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GR" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GS" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GT" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stew,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"GU" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) -"GV" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"GW" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_shuttle"; pixel_x = 0; pixel_y = -25; req_one_access = list(13); tag_door = "escape_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GX" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GY" = (/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"GZ" = (/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ha" = (/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"},/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/inaprovaline,/turf/unsimulated/wall,/area/centcom/medical) -"Hb" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/boiledrice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Hc" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/beetsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Hd" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stuffing,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"He" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/soylenviridians,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"Hf" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Hg" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Hh" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"Hi" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight"; icon_state = "swall_straight"},/area/shuttle/escape/centcom) -"Hj" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Hk" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hl" = (/obj/machinery/computer/security,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hm" = (/turf/simulated/shuttle/wall{tag = "icon-swall"; icon_state = "swall"},/area/shuttle/escape/centcom) -"Hn" = (/obj/structure/AIcore/deactivated,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Ho" = (/obj/machinery/computer/crew,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hp" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Hq" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Hr" = (/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Hs" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ht" = (/obj/machinery/smartfridge/chemistry,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Hu" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Hv" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access = list(19)},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Hw" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/shuttle/escape/centcom) -"Hx" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/shuttle/escape/centcom) -"Hy" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (EAST)"; icon_state = "swall_straight"; dir = 4},/area/shuttle/escape/centcom) -"Hz" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/shuttle/escape/centcom) -"HA" = (/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerPort"; req_access = newlist()},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HB" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HC" = (/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HD" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HE" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HF" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HG" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HH" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bloodsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HI" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/tofukabob,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HJ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/poppypretzel,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HK" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/orangecakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HL" = (/obj/machinery/atm{pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"HM" = (/obj/machinery/atm{pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) -"HN" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"HO" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Cell"},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"HP" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 30},/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"HQ" = (/obj/machinery/computer/crew,/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HR" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HS" = (/obj/machinery/computer/med_data,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HT" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"HU" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/spesslaw,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HV" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/candiedapple,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HW" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HX" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/meatsteak,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"HY" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"HZ" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ia" = (/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ib" = (/obj/structure/urinal{pixel_y = 32},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ic" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Id" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) -"Ie" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"If" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Ig" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Ih" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Ii" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ij" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"Ik" = (/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Il" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Im" = (/turf/unsimulated/wall,/area/tdome) -"In" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/tdome) -"Io" = (/obj/machinery/door/airlock/centcom{name = "Thunderdome"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Ip" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Iq" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Ir" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Is" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"It" = (/obj/machinery/door/airlock{name = "Unit 5"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Iu" = (/obj/machinery/door/airlock{name = "Unit 6"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Iv" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/shuttle/escape/centcom) -"Iw" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ix" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) -"Iy" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) -"Iz" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) -"IA" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"IB" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) -"IC" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"ID" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IE" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/cash_register/civilian,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IF" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IG" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IH" = (/obj/structure/toilet{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"II" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"IJ" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_dock_airlock"; locked = 1; name = "Arrivals Airlock"; req_access = list(13)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) -"IK" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_mech"; pixel_y = 19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"IL" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"IM" = (/obj/machinery/camera/network/crescent{c_tag = "Shuttle Center"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"IN" = (/obj/machinery/vending/medical,/turf/unsimulated/wall,/area/centcom/medical) -"IO" = (/obj/machinery/vending/medical,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"IP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/BMinus,/obj/item/weapon/reagent_containers/blood/BPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"IQ" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"IR" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 9},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"IS" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 1},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"IT" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 5},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"IU" = (/obj/structure/table/woodentable{dir = 5},/obj/item/clothing/under/suit_jacket,/obj/item/clothing/suit/wcoat,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IV" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"IW" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IX" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IY" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"IZ" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"Ja" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_north_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Jb" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jc" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jd" = (/obj/machinery/sleeper{dir = 8},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Je" = (/obj/machinery/sleep_console,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jf" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jg" = (/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jh" = (/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ji" = (/obj/effect/floor_decal/carpet{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jj" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jk" = (/obj/effect/floor_decal/carpet{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jl" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Jm" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"Jn" = (/obj/structure/bed/chair{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle West"; dir = 4},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Jo" = (/obj/structure/bed/chair{dir = 8},/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle East"; dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Jp" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv,/obj/item/weapon/storage/firstaid/adv,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jq" = (/obj/effect/floor_decal/corner/blue{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jr" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Js" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Jt" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Ju" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jv" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) -"Jw" = (/obj/structure/closet/secure_closet/bar{req_access = list(25)},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Jx" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Jy" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_alc/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"Jz" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) -"JA" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) -"JB" = (/obj/structure/window/shuttle{icon_state = "window3"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) -"JC" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JD" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JE" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JF" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JG" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JH" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JI" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) -"JJ" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "centcom_dock"; name = "docking port controller"; pixel_x = 25; pixel_y = 0; req_one_access = list(13); tag_door = "centcom_dock_airlock"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) -"JK" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JL" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/toxin,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JM" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JN" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JO" = (/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JP" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JQ" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"JR" = (/obj/structure/bed/roller,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/structure/closet/secure_closet/medical_wall{name = "O- Blood Locker"; pixel_x = -32},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JS" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JT" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JU" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/o2,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JV" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/wrench,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JW" = (/obj/effect/floor_decal/corner/blue{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JX" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JY" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"JZ" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ka" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kb" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Kc" = (/obj/structure/bed/chair{dir = 4},/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Kd" = (/obj/structure/bed/chair{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ke" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kf" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(66)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kg" = (/obj/structure/closet/secure_closet/bar,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Kh" = (/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Ki" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Kj" = (/obj/machinery/door/airlock/command{name = "Thunderdome"},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) -"Kk" = (/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kl" = (/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access = list(5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Km" = (/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kn" = (/obj/effect/floor_decal/corner/blue{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ko" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kp" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kq" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kr" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Ks" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kt" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Ku" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kv" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Kw" = (/obj/machinery/status_display{pixel_y = -30},/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Kx" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_starboard_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) -"Ky" = (/obj/machinery/door/airlock/medical{name = "Observation Room"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Kz" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KA" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KB" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6,5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KC" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KD" = (/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KE" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"KF" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"KG" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"KH" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"KI" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"KJ" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/shuttle/escape/centcom) -"KK" = (/obj/machinery/door/airlock/glass_mining{name = "Shuttle Cargo"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"KL" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/shuttle/escape/centcom) -"KM" = (/obj/machinery/door/airlock/glass_medical{name = "Escape Shuttle Infirmary"; req_access = list(5)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"KN" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/shuttle/escape/centcom) -"KO" = (/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KP" = (/obj/effect/floor_decal/corner/pink{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KQ" = (/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KR" = (/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KS" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 0; pixel_y = 0},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KT" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KU" = (/obj/machinery/clonepod,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KV" = (/obj/machinery/computer/cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KW" = (/obj/machinery/dna_scannernew,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KX" = (/obj/structure/closet/wardrobe/white,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KY" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/medical_cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"KZ" = (/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"La" = (/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lb" = (/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lc" = (/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},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Ld" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Le" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Lf" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Lg" = (/obj/item/device/camera,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Lh" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Li" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lj" = (/obj/structure/closet/hydrant{pixel_x = 30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lk" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ll" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lm" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Ln" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lo" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lp" = (/obj/structure/closet/hydrant{pixel_x = -30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lq" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Lr" = (/obj/effect/floor_decal/corner/pink,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Ls" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lt" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lu" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lv" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Lw" = (/obj/structure/bed/chair,/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) -"Lx" = (/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"Ly" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Medical"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Lz" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LA" = (/obj/machinery/vending/wallmed1{layer = 3.3; name = "Emergency NanoMed"; pixel_x = 28; pixel_y = 0},/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LB" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LC" = (/obj/machinery/disease2/incubator,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LD" = (/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{pixel_x = 0; pixel_y = 28},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LE" = (/obj/machinery/disease2/isolator,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LF" = (/obj/effect/floor_decal/corner/green/full{dir = 8},/obj/machinery/computer/arcade/orion_trail,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LG" = (/obj/effect/floor_decal/corner/green{dir = 5},/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LI" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LJ" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"LK" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"LL" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"LM" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"LN" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/camera/network/crescent{c_tag = "Shuttle West Storage"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LO" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LP" = (/obj/machinery/iv_drip,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LQ" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LR" = (/obj/structure/bed/roller,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LS" = (/obj/structure/bed/roller,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"LT" = (/obj/machinery/recharge_station,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LU" = (/obj/machinery/recharge_station,/obj/machinery/camera/network/crescent{c_tag = "Shuttle East Storage"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) -"LV" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/medical/advanced/bruise_pack,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LW" = (/obj/structure/table/standard,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/scalpel,/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LX" = (/obj/structure/table/standard,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"LY" = (/obj/machinery/door/blast/regular{id = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"LZ" = (/obj/machinery/igniter,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Ma" = (/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Mb" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Mc" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/shuttle/escape/centcom) -"Md" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Me" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Mf" = (/obj/machinery/sleep_console{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Mg" = (/obj/machinery/sleeper{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) -"Mh" = (/obj/structure/table/standard,/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/stack/nanopaste,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mi" = (/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mj" = (/obj/machinery/door/airlock/glass_medical{name = "Virology Laboratory"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mk" = (/obj/structure/table/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/baton/loaded,/obj/item/weapon/melee/energy/sword/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Ml" = (/obj/machinery/door/blast/regular{id = "thunderdomegen"; name = "General Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Mm" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) -"Mn" = (/obj/machinery/door/blast/regular{id = "thunderdome"; name = "Thunderdome Blast Door"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Mo" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) -"Mp" = (/obj/structure/table/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/baton/loaded,/obj/item/weapon/melee/energy/sword/green,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Mq" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/shuttle/escape/centcom) -"Mr" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/escape/centcom) -"Ms" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/escape/centcom) -"Mt" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/escape/centcom) -"Mu" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mv" = (/obj/machinery/computer/operating,/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mw" = (/obj/machinery/computer/centrifuge,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mx" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"My" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"Mz" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) -"MA" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) -"MB" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 28},/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MC" = (/obj/machinery/smartfridge/chemistry/virology,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MD" = (/obj/structure/bed/chair/office/dark,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"ME" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MF" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MG" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MH" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MI" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MJ" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MK" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"ML" = (/obj/effect/landmark{name = "tdome2"},/obj/machinery/camera/network/thunder{c_tag = "Thunderdome - Red Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) -"MM" = (/obj/machinery/flasher{id = "flash"; name = "Thunderdome Flash"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"MN" = (/obj/effect/landmark{name = "tdome1"},/obj/machinery/camera/network/thunder{c_tag = "Green Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) -"MO" = (/obj/structure/closet/secure_closet/medical2,/obj/effect/floor_decal/corner/pink/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MP" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MQ" = (/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MR" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MS" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MT" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MU" = (/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MV" = (/obj/machinery/disease2/diseaseanalyser,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MW" = (/obj/machinery/computer/diseasesplicer,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MX" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) -"MY" = (/obj/machinery/atmospherics/pipe/vent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"MZ" = (/obj/machinery/camera/network/thunder{c_tag = "Thunderdome Arena"; invisibility = 101},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Na" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nb" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nc" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nd" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Ne" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Nf" = (/obj/machinery/door/blast/regular{id = "thunderdomehea"; name = "Heavy Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Ng" = (/obj/structure/table/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,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Nh" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Ni" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) -"Nj" = (/obj/structure/table/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,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) -"Nk" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; opacity = 1; req_access = list(103)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/terminal) -"Nl" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nm" = (/obj/structure/bed/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nn" = (/obj/item/weapon/extinguisher,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"No" = (/obj/machinery/atmospherics/valve,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Np" = (/obj/structure/bed/chair{dir = 1},/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nq" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nr" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/sleeping_agent{pixel_x = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Ns" = (/obj/item/weapon/wrench,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nt" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nu" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) -"Nv" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nw" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nx" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Ny" = (/obj/machinery/computer/pod{id = "thunderdomeaxe"; name = "Thunderdome Axe Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"Nz" = (/obj/machinery/computer/pod{id = "thunderdomegen"; name = "Thunderdome General Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NA" = (/obj/machinery/computer/pod{id = "thunderdomehea"; name = "Thunderdome Heavy Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NB" = (/obj/machinery/computer/pod{id = "thunderdome"; name = "Thunderdome Blast Door Control"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NC" = (/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"ND" = (/obj/structure/table/standard,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NE" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NF" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NG" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NH" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) -"NI" = (/turf/unsimulated/beach/sand{density = 1; opacity = 1},/area/beach) -"NJ" = (/turf/unsimulated/beach/sand,/area/beach) -"NK" = (/obj/structure/signpost,/turf/unsimulated/beach/sand,/area/beach) -"NL" = (/obj/structure/closet,/turf/unsimulated/beach/sand,/area/beach) -"NM" = (/obj/effect/overlay/palmtree_l,/turf/unsimulated/beach/sand,/area/beach) -"NN" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) -"NO" = (/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) -"NP" = (/turf/space,/area/shuttle/cryo/centcom) -"NQ" = (/obj/effect/overlay/palmtree_r,/turf/unsimulated/beach/sand,/area/beach) -"NR" = (/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) -"NS" = (/turf/simulated/shuttle/wall{dir = 4; icon_state = "swall_s"},/area/centcom/evac) -"NT" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; dir = 8; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) -"NU" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 2},/area/centcom/evac) -"NV" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 4},/area/centcom/evac) -"NW" = (/obj/structure/table/standard,/obj,/obj,/obj,/obj,/obj,/obj,/obj,/turf/unsimulated/beach/sand,/area/beach) -"NX" = (/obj/structure/table/standard,/obj/item/clothing/under/color/rainbow,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/collectable/petehat{pixel_y = 5},/turf/unsimulated/beach/sand,/area/beach) -"NY" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/centcom/evac) -"NZ" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/centcom/evac) -"Oa" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/centcom/evac) -"Ob" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/centcom/evac) -"Oc" = (/turf/simulated/shuttle/plating,/area/centcom/evac) -"Od" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod2/centcom) -"Oe" = (/obj/machinery/clonepod,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Of" = (/obj/machinery/computer/cloning,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Og" = (/obj/machinery/dna_scannernew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Oh" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Oi" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Oj" = (/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Ok" = (/obj/structure/closet/crate/medical,/obj/item/weapon/circular_saw,/obj/item/weapon/surgicaldrill,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/item/weapon/bonesetter,/obj/item/weapon/scalpel,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/nanopaste,/obj/item/weapon/tank/anesthetic,/obj/item/clothing/mask/breath/medical,/obj/item/clothing/mask/surgical,/obj/item/clothing/mask/surgical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Ol" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_c"; dir = 1},/area/centcom/evac) -"Om" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/unsimulated/beach/sand,/area/beach) -"On" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/beach/sand,/area/beach) -"Oo" = (/obj/item/weapon/beach_ball,/turf/unsimulated/beach/sand,/area/beach) -"Op" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/space,/area/centcom/evac) -"Oq" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/centcom/evac) -"Or" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/shuttle/plating,/area/centcom/evac) -"Os" = (/obj/machinery/vending/engineering,/turf/simulated/shuttle/plating,/area/centcom/evac) -"Ot" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod1/centcom) -"Ou" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod2/centcom) -"Ov" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/shuttle/cryo/centcom) -"Ow" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/centcom/evac) -"Ox" = (/turf/simulated/shuttle/wall,/area/centcom/evac) -"Oy" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Oz" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/centcom/evac) -"OA" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OB" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OC" = (/obj/machinery/atmospherics/pipe/manifold/visible,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OD" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OE" = (/obj/machinery/computer/operating,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OF" = (/obj/structure/shuttle/engine/propulsion{dir = 8},/turf/space,/area/centcom/evac) -"OG" = (/obj/structure/closet/emcloset,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"OH" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"OI" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OJ" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OK" = (/obj/machinery/optable,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OL" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"OM" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"ON" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OO" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OP" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OQ" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OR" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OS" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OT" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OU" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OV" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"OW" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/obj/item/toy/plushie/mouse{desc = "A plushie of a small fuzzy rodent."; name = "Woodrat"},/turf/unsimulated/beach/sand,/area/beach) -"OX" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) -"OY" = (/mob/living/simple_animal/crab/Coffee,/turf/unsimulated/beach/sand,/area/beach) -"OZ" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_r"},/turf/space,/area/centcom/evac) -"Pa" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 02"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Pb" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -30; pixel_y = 0},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pc" = (/obj/item/clothing/head/collectable/paper,/turf/unsimulated/beach/sand,/area/beach) -"Pd" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/simulated/shuttle/plating,/area/centcom/evac) -"Pe" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/centcom/evac) -"Pf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 1"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Pg" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 2"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Ph" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "cryostorage_shuttle_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock Cryostorage"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Pi" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pj" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "large_escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pk" = (/obj/structure/bed/roller,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pl" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pm" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Pn" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/bodybags{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/bodybags,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) -"Po" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/centcom/evac) -"Pp" = (/turf/unsimulated/floor{icon_state = "sandwater"},/area/beach) -"Pq" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) -"Pr" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_1_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Ps" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pt" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "cryostorage_shuttle_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "cryostorage_shuttle_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pu" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pv" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Pw" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Px" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window4"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"Py" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window8"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"Pz" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/centcom/evac) -"PA" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window12"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"PB" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PC" = (/obj/structure/table/standard,/obj/item/device/radio/off,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PD" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) -"PE" = (/turf/unsimulated/beach/coastline{density = 1; opacity = 1},/area/beach) -"PF" = (/turf/unsimulated/beach/coastline,/area/beach) -"PG" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PH" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PI" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) -"PJ" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PK" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PL" = (/obj/machinery/computer/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PM" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window3"},/turf/simulated/shuttle/plating,/area/centcom/evac) -"PN" = (/turf/unsimulated/beach/water{density = 1; opacity = 1},/area/beach) -"PO" = (/turf/unsimulated/beach/water,/area/beach) -"PP" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PQ" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PR" = (/obj/machinery/door/airlock/hatch{name = "Cockpit"; req_access = list(109)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PS" = (/obj/structure/table/standard,/obj/item/weapon/storage/lockbox,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PT" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"PU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_6_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_6_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PV" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_5_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_5_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PW" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_4_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_4_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PX" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_3_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_3_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"PY" = (/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"PZ" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qa" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/obj/item/weapon/stamp/captain,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qb" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) -"Qc" = (/turf/unsimulated/wall,/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qd" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/centcom/evac) -"Qe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_6_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 6"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 5"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qg" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_4_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 4"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qh" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_3_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 3"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qi" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Qj" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_1_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "large_escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"Qk" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Ql" = (/obj/structure/table/rack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qm" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qn" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qo" = (/obj/machinery/computer/secure_data,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"Qp" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"Qq" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/centcom/evac) -"Qr" = (/turf/simulated/mineral,/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qs" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qt" = (/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qu" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"; tag = "icon-spiderling"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Qv" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod6/centcom) -"Qw" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/space) -"Qx" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/centcom) -"Qy" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod4/centcom) -"Qz" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod3/centcom) -"QA" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 01"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QB" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QC" = (/obj/structure/closet/secure_closet/personal/patient,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QD" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QE" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QF" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod1/centcom) -"QG" = (/obj/structure/closet{name = "Evidence Closet"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QH" = (/obj/structure/closet/secure_closet/security,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QI" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QJ" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"QK" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QL" = (/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QM" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) -"QN" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) -"QO" = (/obj/item/weapon/tray{pixel_y = 5},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QP" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QQ" = (/obj/machinery/portable_atmospherics/powered/pump,/turf/simulated/shuttle/plating,/area/centcom/evac) -"QR" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/plating,/area/centcom/evac) -"QS" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket{amount_per_transfer_from_this = 50},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QT" = (/obj/item/weapon/mop,/obj/structure/mopbucket,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QU" = (/obj/structure/table/rack,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = 6; pixel_y = 3},/obj/item/clothing/accessory/storage/brown_vest,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) -"QV" = (/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QW" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QX" = (/turf/simulated/shuttle/wall{icon_state = "swall_f"; dir = 4},/area/centcom/evac) -"QY" = (/obj/item/weapon/bedsheet/orange,/obj/effect/decal/cleanable/cobweb2{tag = "icon-cobweb1"; icon_state = "cobweb1"},/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"QZ" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ra" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rb" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rc" = (/obj/structure/urinal{pixel_y = 32},/obj/item/weapon/soap/syndie,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rd" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Re" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rf" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rg" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rh" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ri" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rj" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rk" = (/obj/item/clothing/head/xenos,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rl" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{dir = 4; pixel_x = -28; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rm" = (/obj/item/clothing/mask/gas/swat{desc = "A close-fitting mask clearly not made for a human face."; name = "\improper alien mask"},/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rn" = (/obj/item/xenos_claw,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ro" = (/obj/structure/table/rack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rp" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/spikethrower,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rq" = (/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rr" = (/obj/item/pizzabox/meat,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rs" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rt" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ru" = (/obj/effect/decal/cleanable/cobweb2,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rv" = (/obj/structure/table/rack,/obj/item/clothing/glasses/thermal/plain/monocle,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rw" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rx" = (/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Ry" = (/obj/item/organ/internal/stack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"Rz" = (/obj/structure/bed/chair,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RC" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RD" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RE" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RF" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RG" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RH" = (/obj/item/clothing/head/philosopher_wig,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RI" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) -"RJ" = (/obj/machinery/door/airlock/external{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RK" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) -"RL" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RM" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) -"RN" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/skipjack_station/start) -"RO" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_west_control"; req_one_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"RP" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northwest_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RQ" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/skipjack_station/start) -"RR" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northeast_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RS" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_east_control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"RT" = (/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"RU" = (/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RY" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_west_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"RZ" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_west_sensor"; pixel_x = 25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sa" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sb" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sc" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sd" = (/obj/machinery/button/remote/blast_door{id = "skipjackshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) -"Se" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_east_sensor"; pixel_x = -25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sf" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_east_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sg" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sh" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_west_vent"; tag_exterior_door = "vox_northwest_lock"; frequency = 1331; id_tag = "vox_west_control"; tag_interior_door = "vox_southwest_lock"; pixel_x = 24; req_access = list(150); tag_chamber_sensor = "vox_west_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1331; id_tag = "vox_west_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Si" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sj" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sk" = (/obj/structure/bed/chair{dir = 1},/obj/item/clothing/glasses/thermal/plain/monocle,/obj/item/clothing/head/pirate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sl" = (/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sm" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_east_vent"; tag_exterior_door = "vox_northeast_lock"; frequency = 1331; id_tag = "vox_east_control"; tag_interior_door = "vox_southeast_lock"; pixel_x = -24; req_access = list(150); tag_chamber_sensor = "vox_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "vox_east_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sn" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"So" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southwest_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sp" = (/obj/structure/table/rack,/obj/item/weapon/rig/industrial,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sq" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sr" = (/obj/structure/table/rack,/obj/item/weapon/rig/light/hacker,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ss" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southeast_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"St" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_west_control"; pixel_x = -22; req_one_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Su" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/material/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sv" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sw" = (/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/material/minihoe,/obj/item/weapon/beartrap,/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sx" = (/obj/machinery/vending/hydroseeds,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Sy" = (/obj/structure/table/rack,/obj/item/weapon/melee/energy/sword/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Sz" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SA" = (/obj/machinery/washing_machine,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SB" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SC" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/sniperrifle,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/clothing/head/helmet/space/void/atmos,/obj/item/clothing/suit/space/void/atmos,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SD" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_east_control"; pixel_x = 22; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SE" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SF" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SG" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SH" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/syndicate/black/engie,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/syndicate/black/engie,/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SI" = (/obj/item/robot_parts/head,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SK" = (/obj/item/robot_parts/l_leg,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SM" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SN" = (/obj/machinery/floodlight,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SO" = (/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SP" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/crossbow,/obj/item/stack/rods{amount = 10},/obj/machinery/light/small{dir = 8},/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SQ" = (/obj/structure/table/rack,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/flashbang,/obj/item/weapon/grenade/spawnergrenade/manhacks,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SR" = (/obj/structure/table/steel,/obj/machinery/recharger,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SS" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"ST" = (/obj/item/robot_parts/robot_suit,/obj/item/robot_parts/r_leg,/obj/item/robot_parts/r_arm,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SV" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"SW" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SX" = (/obj/structure/table/steel,/obj/item/clothing/glasses/regular,/obj/item/clothing/glasses/regular,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SY" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"SZ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Ta" = (/obj/item/weapon/wrench,/obj/item/weapon/mop,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tb" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/item/weapon/crowbar,/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tc" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Td" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Te" = (/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"Tf" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"Tg" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Th" = (/obj/structure/table/steel,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ti" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Tj" = (/obj/machinery/bodyscanner{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tk" = (/obj/machinery/light/small{dir = 1},/obj/machinery/body_scanconsole,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tl" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tm" = (/obj/structure/toilet{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tn" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"To" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tp" = (/turf/unsimulated/wall,/area/wizard_station) -"Tq" = (/obj/structure/sink,/turf/unsimulated/wall,/area/wizard_station) -"Tr" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/skipjack_station/start) -"Ts" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/skipjack_station/start) -"Tt" = (/obj/structure/table/steel,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Tu" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Tv" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/skipjack_station/start) -"Tw" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/obj/effect/decal/cleanable/cobweb,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Tx" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Ty" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Tz" = (/obj/machinery/librarycomp,/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TA" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/security_space_law,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TB" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/nuclear,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TC" = (/obj/structure/table/woodentable,/obj/effect/landmark{name = "Teleport-Scroll"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TD" = (/obj/structure/table/woodentable,/obj/item/weapon/paper{info = "\[center]\[b]LIST OF SPELLS AVAILABLE\[/b]\[/center]\[br]\[br]Magic Missile:\[br]This spell fires several, slow moving, magic projectiles at nearby targets. If they hit a target, it is paralyzed and takes minor damage.\[br]\[br]Fireball:\[br]This spell fires a fireball at a target and does not require wizard garb. Be careful not to fire it at people that are standing next to you.\[br]\[br]Disintegrate:\[br]This spell instantly kills somebody adjacent to you with the vilest of magick. It has a long cooldown.\[br]\[br]Disable Technology:\[br]This spell disables all weapons, cameras and most other technology in range.\[br]\[br]Smoke:\[br]This spell spawns a cloud of choking smoke at your location and does not require wizard garb.\[br]\[br]Blind:\[br]This spell temporarly blinds a single person and does not require wizard garb.\[br]Forcewall:\[br]This spell creates an unbreakable wall that lasts for 30 seconds and does not require wizard garb.\[br]\[br]Blink:\[br]This spell randomly teleports you a short distance. Useful for evasion or getting into areas if you have patience.\[br]\[br]Teleport:\[br]This spell teleports you to a type of area of your selection. Very useful if you are in danger, but has a decent cooldown, and is unpredictable.\[br]\[br]Mutate:\[br]This spell causes you to turn into a hulk, and gain telekinesis for a short while.\[br]\[br]Ethereal Jaunt:\[br]This spell creates your ethereal form, temporarily making you invisible and able to pass through walls.\[br]\[br]Knock:\[br]This spell opens nearby doors and does not require wizard garb.\[br]"; name = "List of Available Spells (READ)"},/obj/item/clothing/glasses/regular,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TE" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/satchel/withwallet,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TF" = (/obj/structure/toilet{pixel_y = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TG" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TH" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TI" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/skipjack_station/start) -"TJ" = (/obj/structure/table/standard,/obj/item/weapon/legcuffs,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"TK" = (/obj/structure/table/standard,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"TL" = (/obj/machinery/light/small,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"TM" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/stack/medical/advanced/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"TN" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TO" = (/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TP" = (/obj/effect/landmark/start{name = "wizard"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TQ" = (/obj/structure/simple_door/iron,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TR" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"TS" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"TT" = (/obj/structure/table/standard,/obj/item/weapon/cautery,/obj/item/weapon/retractor,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/syringe,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"TU" = (/obj/structure/bookcase{name = "bookcase (Tactics)"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TV" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/closet/coffin,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"TW" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"TX" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"TY" = (/obj/item/weapon/bedsheet/rainbow,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"TZ" = (/obj/item/weapon/bedsheet/hos,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ua" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/obj/item/weapon/FixOVein,/obj/item/stack/nanopaste,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Ub" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/bag/cash,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Uc" = (/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ud" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ue" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/shoes/sandal,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uf" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/shoes/sandal/marisa,/obj/item/clothing/head/wizard/marisa,/obj/item/weapon/staff/broom,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ug" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uh" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ui" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) -"Uj" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Uk" = (/obj/item/weapon/bedsheet/green,/obj/machinery/light/small{dir = 4},/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ul" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Um" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/machinery/light/small{dir = 4},/obj/structure/closet/secure_closet/medical_wall{pixel_x = 32; pixel_y = 0; req_access = list(150)},/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) -"Un" = (/obj/structure/bookcase,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Uo" = (/obj/machinery/vending/magivend,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Up" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uq" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ur" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Us" = (/obj/item/pizzabox/meat,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Ut" = (/obj/item/weapon/bedsheet/clown,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) -"Uu" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"Uv" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/cultpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uw" = (/obj/structure/table/woodentable,/obj/item/clothing/glasses/monocle,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Ux" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uy" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/under/psysuit,/obj/item/clothing/suit/wizrobe/psypurple,/obj/item/clothing/head/wizard/amp,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"Uz" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/shoes/sandal/marisa{desc = "A set of fancy shoes that are as functional as they are comfortable."; name = "Gentlemans Shoes"},/obj/item/clothing/under/gentlesuit,/obj/item/clothing/suit/wizrobe/gentlecoat,/obj/item/clothing/head/wizard/cap,/obj/item/weapon/staff/gentcane,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"UA" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) -"UB" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UC" = (/obj/structure/table/woodentable,/obj/item/weapon/dice/d20,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UD" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/cups,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UE" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UF" = (/obj/item/target,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UG" = (/obj/item/target/syndicate,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UH" = (/obj/item/target/alien,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UI" = (/turf/unsimulated/wall/fakeglass{dir = 1; icon_state = "fakewindows"},/area/wizard_station) -"UJ" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"UK" = (/obj/structure/kitchenspike,/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) -"UL" = (/obj/structure/table/woodentable,/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/milosoup,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UM" = (/obj/structure/table/woodentable,/obj/item/weapon/dice,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UN" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UO" = (/turf/unsimulated/wall/fakeglass,/area/wizard_station) -"UP" = (/obj/structure/table/woodentable,/obj/item/device/megaphone,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UQ" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UR" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chawanmushi,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"US" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash/c1,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) -"UT" = (/obj/item/weapon/book/manual/robotics_cyborgs,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UU" = (/obj/item/robot_parts/head,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UV" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) -"UW" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 8},/area/wizard_station) -"UX" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/wizard_station) -"UY" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 4},/area/wizard_station) -"UZ" = (/obj/effect/decal/remains/human,/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) -"Va" = (/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) -"Vb" = (/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) -"Vc" = (/mob/living/simple_animal/crab{name = "Experiment 68a"},/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) -"Vd" = (/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Ve" = (/obj/structure/flora/ausbushes/fullgrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Vf" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"Vg" = (/mob/living/carbon/human/monkey{name = "Murphey"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"Vh" = (/mob/living/simple_animal/hostile/creature{name = "Experiment 35b"},/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) -"Vi" = (/obj/structure/flora/ausbushes/grassybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Vj" = (/mob/living/simple_animal/hostile/retaliate/goat{name = "Experiment 97d"},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) -"Vk" = (/obj/item/weapon/caution,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) -"Vl" = (/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) - +"BX" = (/obj/effect/floor_decal/industrial/warning{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"BY" = (/obj/machinery/computer/cryopod{density = 0; layer = 3.3; pixel_y = 32},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"BZ" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Ca" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Cb" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Cc" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/transport1/centcom) +"Cd" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/transport1/centcom) +"Ce" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (EAST)"; icon_state = "burst_l"; dir = 4},/turf/space,/area/shuttle/transport1/centcom) +"Cf" = (/obj/machinery/computer/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Cg" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"Ch" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/main_hall) +"Ci" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Cj" = (/obj/machinery/cryopod/robot/door/gateway,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Ck" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) +"Cl" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Cm" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Cn" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Co" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Cp" = (/obj/effect/floor_decal/industrial/warning{dir = 10},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cq" = (/obj/machinery/gateway{dir = 10},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cr" = (/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cs" = (/obj/machinery/gateway{dir = 6},/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Ct" = (/obj/effect/floor_decal/industrial/warning{dir = 6},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "dark"},/area/centcom/main_hall) +"Cu" = (/obj/effect/floor_decal/corner/red{dir = 10},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Cv" = (/obj/structure/bed/chair{dir = 1},/obj/effect/floor_decal/corner/white/diagonal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"Cw" = (/obj/machinery/telecomms/broadcaster/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"Cx" = (/obj/machinery/telecomms/hub/preset_cent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"Cy" = (/obj/machinery/computer/rdservercontrol{badmin = 1; name = "Master R&D Server Controller"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"Cz" = (/obj/machinery/r_n_d/server/centcom,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CA" = (/obj/machinery/door/blast/regular{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CB" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"CC" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"CD" = (/obj/machinery/computer/teleporter,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CE" = (/obj/machinery/teleport/station,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CF" = (/obj/machinery/teleport/hub,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CG" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"CH" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"CI" = (/obj/machinery/door/airlock/glass{name = "Arrivals Processing"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CJ" = (/obj/machinery/door/airlock/security{name = "Equipment Storage"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"CK" = (/obj/machinery/account_database{name = "CentComm Accounts database"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/command) +"CL" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"CM" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/centcom/tram) +"CN" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (WEST)"; icon_state = "swall_straight"; dir = 8},/area/centcom/tram) +"CO" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"CP" = (/turf/simulated/shuttle/wall{tag = "icon-swall (WEST)"; icon_state = "swall"; dir = 8},/area/centcom/tram) +"CQ" = (/obj/machinery/door/unpowered/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"CR" = (/turf/simulated/shuttle/wall{tag = "icon-swall (EAST)"; icon_state = "swall"; dir = 4},/area/centcom/tram) +"CS" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/centcom/tram) +"CT" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"CU" = (/obj/effect/floor_decal/corner/white/full{tag = "icon-corner_white_full (EAST)"; icon_state = "corner_white_full"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CV" = (/obj/effect/floor_decal/corner/white,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CW" = (/obj/effect/floor_decal/corner/white{dir = 5},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CX" = (/obj/effect/floor_decal/corner/white{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"CY" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"CZ" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Da" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/centcom/tram) +"Db" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dc" = (/obj/structure/bed/chair,/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = 28},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dd" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"De" = (/obj/structure/bed/chair,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 26},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Df" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/centcom/tram) +"Dg" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Dh" = (/obj/effect/floor_decal/corner/white{dir = 6; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Di" = (/obj/effect/floor_decal/corner/white/diagonal{tag = "icon-corner_white_diagonal (EAST)"; icon_state = "corner_white_diagonal"; dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Dj" = (/obj/effect/floor_decal/corner/white{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Dk" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Dl" = (/obj/machinery/porta_turret/crescent,/obj/effect/floor_decal/industrial/hatch/yellow,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Dm" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Dn" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window2"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Do" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dp" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Dq" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"Dr" = (/obj/effect/floor_decal/corner/white{tag = "icon-corner_white (NORTH)"; icon_state = "corner_white"; dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"Ds" = (/obj/machinery/computer/card,/obj/effect/floor_decal/corner/red{dir = 6},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Dt" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/red{dir = 9},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Du" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/restaurant) +"Dv" = (/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant) +"Dw" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Dx" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 4},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Dy" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"Dz" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 8},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DA" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DB" = (/obj/machinery/door/airlock/centcom{name = "Arrivals Processing"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"DC" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window1"},/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/tram) +"DD" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DE" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DF" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DG" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DH" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"DI" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{icon_state = "plant-06"; pixel_y = 8; tag = "icon-plant-06"},/obj/effect/floor_decal/corner/red{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DJ" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPort"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/obj/effect/floor_decal/corner/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DK" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DL" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/window/brigdoor{dir = 4; name = "Weapons locker"},/obj/structure/table/rack,/obj/item/clothing/suit/armor/riot,/obj/item/weapon/melee/baton/loaded,/obj/item/weapon/shield/riot,/obj/item/clothing/head/helmet/riot,/obj/structure/window/reinforced,/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DM" = (/obj/structure/closet/secure_closet/security,/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"DN" = (/obj/structure/flora/ausbushes/fernybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DO" = (/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DP" = (/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DQ" = (/obj/structure/flora/bush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DR" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/ppflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DS" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DT" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DU" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"DV" = (/obj/structure/flora/ausbushes/fernybush,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DW" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DX" = (/obj/structure/flora/ausbushes/sparsegrass,/obj/structure/flora/ausbushes/brflowers,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"DY" = (/obj/machinery/turretid{pixel_x = -28; pixel_y = 0; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"DZ" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Ea" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Eb" = (/obj/structure/bed/chair{dir = 1},/obj/structure/closet/walllocker/emerglocker{pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Ec" = (/obj/structure/bed/chair{dir = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -30},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/tram) +"Ed" = (/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ee" = (/obj/structure/table/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 2; health = 1e+006},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/red/full,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Ef" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/red/full{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security) +"Eg" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Eh" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Ei" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Ej" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Ek" = (/obj/structure/bed/chair/office/dark,/obj/machinery/button/remote/blast_door{desc = "A remote control switch for port-side blast doors."; id = "CentComPortEast"; name = "Security Doors"; pixel_x = -12; pixel_y = -25; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"El" = (/obj/machinery/computer/secure_data,/obj/machinery/camera/network/crescent{c_tag = "Crescent Arrivals North"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Em" = (/obj/machinery/door/window/northright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"En" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Eo" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ep" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Eq" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Er" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Es" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Et" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Eu" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1; health = 1e+006},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ev" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortWest"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Ew" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Ex" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Ey" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Ez" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EA" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"EB" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/door/window/southright{name = "Arrivals Processing"; req_access = list(101)},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"EC" = (/obj/machinery/door/airlock/external,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"ED" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EE" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EF" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EG" = (/obj/machinery/turretid{pixel_x = 28; pixel_y = -28; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EH" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EI" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"EJ" = (/obj/effect/floor_decal/spline/plain{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"EK" = (/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EL" = (/obj/effect/floor_decal/spline/plain{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"EM" = (/obj/machinery/door/blast/regular{density = 0; icon_state = "pdoor0"; id = "CentComPortEast"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"EN" = (/obj/machinery/door/blast/regular{id = "CentComPortEast"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "green"; dir = 8},/area/centcom/tram) +"EO" = (/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/thrower{affect_ghosts = 1; direction = 2; name = "thrower_throwdown"; tiles = 0},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/obj/effect/step_trigger/teleporter/random{affect_ghosts = 1; name = "escapeshuttle_leave"; teleport_x = 25; teleport_x_offset = 245; teleport_y = 25; teleport_y_offset = 245; teleport_z = 6; teleport_z_offset = 6},/turf/space,/area/space) +"EP" = (/obj/machinery/door/window/eastright,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EQ" = (/obj/machinery/hologram/holopad,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"ER" = (/obj/machinery/door/window/westright,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"ES" = (/obj/structure/bed/chair/office/light{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"ET" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EU" = (/obj/effect/floor_decal/spline/plain{tag = "icon-spline_plain_full (NORTH)"; icon_state = "spline_plain_full"; dir = 1},/obj/structure/showcase,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"EV" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"EW" = (/obj/structure/bed/chair/office/light,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EX" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EY" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"EZ" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fa" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fb" = (/obj/machinery/door/window/southleft,/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fc" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fd" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fe" = (/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Ff" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4; health = 1e+006},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fg" = (/obj/structure/bed/chair{dir = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fh" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fi" = (/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/spline/plain{dir = 1},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fj" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/machinery/computer/skills,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fk" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/structure/window/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"Fl" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fm" = (/obj/structure/window/reinforced,/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fn" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/beach/sand{tag = "icon-seashallow"; icon_state = "seashallow"},/area/centcom/main_hall) +"Fo" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood/cee{dir = 1},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fp" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Fq" = (/turf/unsimulated/wall,/area/centcom/medical) +"Fr" = (/obj/machinery/door/airlock/glass_medical{name = "Arrivals Medbay"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Fs" = (/obj/structure/sign/redcross,/turf/unsimulated/wall,/area/centcom/medical) +"Ft" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/medical) +"Fu" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fv" = (/obj/structure/flora/grass/brown,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fw" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (NORTHWEST)"; icon_state = "spline_fancy"; dir = 9},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fx" = (/obj/structure/flora/ausbushes/ywflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 6},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"Fy" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Fz" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FA" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FB" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FC" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"FD" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FE" = (/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FF" = (/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FG" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FH" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FI" = (/obj/effect/floor_decal/corner/green{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FJ" = (/obj/effect/floor_decal/corner/green,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FK" = (/obj/structure/table/standard,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/item/stack/material/phoron,/obj/effect/floor_decal/corner/beige/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FL" = (/obj/structure/table/standard,/obj/machinery/reagentgrinder,/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FM" = (/obj/effect/floor_decal/corner/beige{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FN" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FO" = (/obj/structure/flora/ausbushes,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FP" = (/obj/structure/flora/ausbushes/brflowers,/obj/effect/floor_decal/spline/fancy/wood{tag = "icon-spline_fancy (SOUTHWEST)"; icon_state = "spline_fancy"; dir = 10},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FQ" = (/obj/structure/flora/ausbushes/ppflowers,/obj/effect/floor_decal/spline/fancy/wood{dir = 5},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FR" = (/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FS" = (/obj/structure/flora/bush,/obj/structure/flora/ausbushes/sparsegrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/centcom/main_hall) +"FT" = (/obj/effect/floor_decal/corner/white{dir = 9; icon_state = "corner_white"; tag = "icon-corner_white (NORTHWEST)"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"FU" = (/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FV" = (/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FW" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FX" = (/obj/machinery/chemical_dispenser/ert,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"FY" = (/turf/unsimulated/wall,/area/centcom/bar) +"FZ" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/centcom/bar) +"Ga" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Gb" = (/obj/effect/floor_decal/spline/plain,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/main_hall) +"Gc" = (/turf/unsimulated/wall,/area/centcom/bathroom) +"Gd" = (/obj/machinery/door/airlock,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Ge" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/shuttle/escape/centcom) +"Gf" = (/obj/structure/window/shuttle{icon_state = "window4"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Gg" = (/obj/structure/window/shuttle{icon_state = "window12"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Gh" = (/obj/structure/window/shuttle{icon_state = "window8"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Gi" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s"; icon_state = "swall_s"},/area/shuttle/escape/centcom) +"Gj" = (/obj/structure/bed/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gk" = (/obj/structure/bed/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gl" = (/obj/structure/closet/secure_closet/chemical,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gm" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Gn" = (/obj/structure/table/woodentable{dir = 5},/obj/structure/flora/pottedplant{pixel_y = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Go" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Gp" = (/obj/structure/table/steel,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Gq" = (/obj/structure/closet/secure_closet/personal,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Gr" = (/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"Gs" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Gt" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Gu" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHWEST)"; icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) +"Gv" = (/obj/machinery/computer/secure_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gw" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gx" = (/obj/machinery/computer/shuttle_control/emergency,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gy" = (/obj/machinery/computer/communications,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Gz" = (/obj/machinery/computer/med_data,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"GA" = (/turf/simulated/shuttle/wall{tag = "icon-swall (NORTHEAST)"; icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) +"GB" = (/obj/effect/floor_decal/corner/green{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GC" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GD" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/extinguisher,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge West"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GE" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GF" = (/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GG" = (/obj/machinery/status_display{pixel_y = 30},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/machinery/camera/network/crescent{c_tag = "Shuttle Bridge East"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GH" = (/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GI" = (/obj/structure/closet/secure_closet/medical1,/obj/effect/floor_decal/corner/beige/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GJ" = (/obj/effect/floor_decal/corner/beige{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GK" = (/obj/effect/floor_decal/corner/beige,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GL" = (/obj/machinery/chem_master,/obj/effect/floor_decal/corner/beige/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GM" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GN" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/amanita_pie,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GO" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GP" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GQ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GR" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stew,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"GS" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/bathroom) +"GT" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"GU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_shuttle"; pixel_x = 0; pixel_y = -25; req_one_access = list(13); tag_door = "escape_shuttle_hatch"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GV" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GW" = (/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"GX" = (/obj/effect/floor_decal/corner/beige{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"GY" = (/obj/structure/closet/secure_closet/medical_wall{name = "Pill Cabinet"},/obj/item/weapon/storage/pill_bottle/antitox,/obj/item/weapon/storage/pill_bottle/tramadol,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/inaprovaline,/turf/unsimulated/wall,/area/centcom/medical) +"GZ" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/boiledrice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Ha" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/beetsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Hb" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/stuffing,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Hc" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/soylenviridians,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Hd" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"He" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Hf" = (/obj/structure/table/standard,/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"Hg" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight"; icon_state = "swall_straight"},/area/shuttle/escape/centcom) +"Hh" = (/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hi" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Hj" = (/obj/machinery/computer/security,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Hk" = (/turf/simulated/shuttle/wall{tag = "icon-swall"; icon_state = "swall"},/area/shuttle/escape/centcom) +"Hl" = (/obj/structure/AIcore/deactivated,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hm" = (/obj/machinery/computer/crew,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Hn" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ho" = (/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hp" = (/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hq" = (/obj/structure/table/standard,/obj/structure/flora/pottedplant{pixel_y = 8},/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hr" = (/obj/machinery/smartfridge/chemistry,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hs" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ht" = (/obj/machinery/door/airlock/glass_command{name = "Escape Shuttle Cockpit"; req_access = list(19)},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Hu" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHEAST)"; icon_state = "swall"; dir = 6},/area/shuttle/escape/centcom) +"Hv" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/shuttle/escape/centcom) +"Hw" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (EAST)"; icon_state = "swall_straight"; dir = 4},/area/shuttle/escape/centcom) +"Hx" = (/turf/simulated/shuttle/wall{tag = "icon-swall (SOUTHWEST)"; icon_state = "swall"; dir = 10},/area/shuttle/escape/centcom) +"Hy" = (/obj/machinery/door/airlock/multi_tile/glass{id_tag = "MedbayFoyerPort"; req_access = newlist()},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Hz" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HA" = (/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HB" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HC" = (/obj/structure/table/glass,/obj/structure/window/reinforced{dir = 1},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HD" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HE" = (/obj/structure/closet/secure_closet/medical3,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HF" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/bloodsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HG" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/tofukabob,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HH" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/poppypretzel,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HI" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/orangecakeslice,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HJ" = (/obj/machinery/atm{pixel_x = -30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"HK" = (/obj/machinery/atm{pixel_x = 30},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall) +"HL" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"HM" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Cell"},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"HN" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 30},/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"HO" = (/obj/machinery/computer/crew,/obj/effect/floor_decal/corner/green{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HP" = (/obj/structure/bed/chair/office/light{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HQ" = (/obj/machinery/computer/med_data,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HR" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"HS" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/spesslaw,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HT" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/candiedapple,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HU" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HV" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/reagent_containers/food/snacks/meatsteak,/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"HW" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"HX" = (/obj/structure/sink{pixel_y = 16},/obj/structure/mirror{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"HY" = (/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"HZ" = (/obj/structure/urinal{pixel_y = 32},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ia" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ib" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/tram) +"Ic" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Id" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ie" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"If" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ig" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ih" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"Ii" = (/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ij" = (/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Ik" = (/turf/unsimulated/wall,/area/tdome) +"Il" = (/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/tdome) +"Im" = (/obj/machinery/door/airlock/centcom{name = "Thunderdome"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"In" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Io" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ip" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Iq" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Ir" = (/obj/machinery/door/airlock{name = "Unit 5"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Is" = (/obj/machinery/door/airlock{name = "Unit 6"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"It" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/shuttle/escape/centcom) +"Iu" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Iv" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 5},/area/shuttle/escape/centcom) +"Iw" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/simulated/shuttle/floor4,/area/shuttle/escape/centcom) +"Ix" = (/turf/simulated/shuttle/wall{icon_state = "swall"; dir = 9},/area/shuttle/escape/centcom) +"Iy" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/obj/machinery/camera/network/crescent{c_tag = "Crescent Bar East"; dir = 4},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"Iz" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/material/ashtray/bronze{pixel_x = -1; pixel_y = 1},/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/area/centcom/bar) +"IA" = (/turf/unsimulated/floor{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IB" = (/obj/structure/table/woodentable{dir = 5},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IC" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/cash_register/civilian,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"ID" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IE" = (/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IF" = (/obj/structure/toilet{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"IG" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"IH" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "centcom_dock_airlock"; locked = 1; name = "Arrivals Airlock"; req_access = list(13)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/terminal) +"II" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_mech"; pixel_y = 19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IJ" = (/obj/machinery/status_display{pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IK" = (/obj/machinery/camera/network/crescent{c_tag = "Shuttle Center"},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IL" = (/obj/machinery/vending/medical,/turf/unsimulated/wall,/area/centcom/medical) +"IM" = (/obj/machinery/vending/medical,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"IN" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/BMinus,/obj/item/weapon/reagent_containers/blood/BPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"IO" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"IP" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 9},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"IQ" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 1},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"IR" = (/obj/structure/bed/chair/comfy/brown,/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet{dir = 1},/obj/effect/floor_decal/carpet{dir = 5},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"IS" = (/obj/structure/table/woodentable{dir = 5},/obj/item/clothing/under/suit_jacket,/obj/item/clothing/suit/wcoat,/obj/item/clothing/head/that{pixel_x = 4; pixel_y = 6},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IT" = (/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"IU" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IV" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IW" = (/obj/structure/bed/chair{dir = 8},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"IX" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"IY" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_north_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"IZ" = (/obj/structure/table/standard,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ja" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jb" = (/obj/machinery/sleeper{dir = 8},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jc" = (/obj/machinery/sleep_console,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jd" = (/obj/structure/table/standard,/obj/item/roller,/obj/item/roller{pixel_y = 8},/obj/item/roller{pixel_y = 16},/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Je" = (/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jf" = (/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jg" = (/obj/effect/floor_decal/carpet{dir = 8},/obj/machinery/computer/security/telescreen/entertainment{icon_state = "frame"; pixel_x = -30},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Jh" = (/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Ji" = (/obj/effect/floor_decal/carpet{dir = 4},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Jj" = (/obj/structure/curtain/open/shower,/obj/machinery/shower,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Jk" = (/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"Jl" = (/obj/structure/bed/chair{dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle West"; dir = 4},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Jm" = (/obj/structure/bed/chair{dir = 8},/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/obj/machinery/camera/network/crescent{c_tag = "Shuttle East"; dir = 8},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Jn" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv,/obj/item/weapon/storage/firstaid/adv,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jo" = (/obj/effect/floor_decal/corner/blue{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jp" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jq" = (/obj/machinery/atmospherics/unary/cryo_cell,/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Jr" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 8},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 10},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Js" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet,/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Jt" = (/obj/structure/bed/chair/comfy/brown{dir = 1},/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{dir = 2; icon_state = "carpet"},/area/centcom/bar) +"Ju" = (/obj/structure/closet/secure_closet/bar{req_access = list(25)},/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jv" = (/obj/structure/table/woodentable{dir = 5},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jw" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_alc/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jx" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar) +"Jy" = (/obj/machinery/porta_turret/crescent,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/tram) +"Jz" = (/obj/structure/window/shuttle{icon_state = "window3"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/shuttle/escape/centcom) +"JA" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JB" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JC" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JD" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"; tag = "icon-intact-f (NORTHEAST)"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JE" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JF" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4; icon_state = "map"; tag = "icon-manifold-f (EAST)"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JG" = (/obj/structure/curtain/open/shower,/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/centcom/bathroom) +"JH" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "centcom_dock"; name = "docking port controller"; pixel_x = 25; pixel_y = 0; req_one_access = list(13); tag_door = "centcom_dock_airlock"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/terminal) +"JI" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JJ" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/toxin,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JK" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JL" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JM" = (/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JN" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JO" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"JP" = (/obj/structure/bed/roller,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/structure/closet/secure_closet/medical_wall{name = "O- Blood Locker"; pixel_x = -32},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JQ" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JR" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JS" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/o2,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JT" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 5; pixel_y = 5},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/wrench,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JU" = (/obj/effect/floor_decal/corner/blue{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JV" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JW" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JX" = (/obj/structure/morgue,/obj/effect/floor_decal/corner/blue{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JY" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"JZ" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Ka" = (/obj/structure/bed/chair{dir = 4},/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Kb" = (/obj/structure/bed/chair{dir = 8},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Kc" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/regular,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kd" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Cloning Laboratory"; req_access = list(66)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ke" = (/obj/structure/closet/secure_closet/bar,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Kf" = (/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Kg" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Kh" = (/obj/machinery/door/airlock/command{name = "Thunderdome"},/obj/machinery/door/blast/regular{id = "crescent_thunderdome"; name = "Thunderdome"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) +"Ki" = (/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kj" = (/obj/machinery/door/airlock/medical{name = "Virology Access"; req_access = list(5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kk" = (/obj/effect/floor_decal/corner/blue/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kl" = (/obj/effect/floor_decal/corner/blue{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Km" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/effect/floor_decal/corner/blue{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kn" = (/obj/structure/filingcabinet/chestdrawer{desc = "A large drawer filled with autopsy reports."; name = "Autopsy Reports"},/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ko" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kp" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer,/obj/item/weapon/flame/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kq" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kr" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Ks" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Kt" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Ku" = (/obj/machinery/status_display{pixel_y = -30},/obj/machinery/light,/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Kv" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_shuttle_hatch"; locked = 1; name = "Shuttle Hatch"; req_access = list(13)},/obj/machinery/mech_sensor{dir = 8; frequency = 1380; id_tag = "shuttle_dock_south_starboard_mech"; pixel_y = -19},/turf/simulated/shuttle/floor,/area/shuttle/escape/centcom) +"Kw" = (/obj/machinery/door/airlock/medical{name = "Observation Room"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kx" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ky" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Kz" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access = list(6,5)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KA" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KB" = (/obj/item/device/camera{name = "Autopsy Camera"; pixel_x = -2; pixel_y = 7},/obj/item/weapon/paper_bin{pixel_y = -6},/obj/item/weapon/pen/red{pixel_x = -1; pixel_y = -9},/obj/item/weapon/pen/blue{pixel_x = 3; pixel_y = -5},/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KC" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"KD" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"KE" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"KF" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"KG" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"KH" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/shuttle/escape/centcom) +"KI" = (/obj/machinery/door/airlock/glass_mining{name = "Shuttle Cargo"},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"KJ" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/shuttle/escape/centcom) +"KK" = (/obj/machinery/door/airlock/glass_medical{name = "Escape Shuttle Infirmary"; req_access = list(5)},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"KL" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/shuttle/escape/centcom) +"KM" = (/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KN" = (/obj/effect/floor_decal/corner/pink{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KO" = (/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KP" = (/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KQ" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; pixel_x = 0; pixel_y = 0},/obj/effect/floor_decal/industrial/warning{icon_state = "warning"; dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KR" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KS" = (/obj/machinery/clonepod,/obj/effect/floor_decal/corner/blue/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KT" = (/obj/machinery/computer/cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KU" = (/obj/machinery/dna_scannernew,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KV" = (/obj/structure/closet/wardrobe/white,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KW" = (/obj/structure/table/standard,/obj/item/weapon/book/manual/medical_cloning,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KX" = (/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/storage/box/bodybags,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KY" = (/obj/effect/floor_decal/corner/blue{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"KZ" = (/obj/item/weapon/autopsy_scanner,/obj/item/weapon/scalpel,/obj/structure/table/standard,/obj/effect/floor_decal/corner/blue/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"La" = (/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},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Lb" = (/obj/structure/table/standard,/obj/machinery/microwave,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Lc" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Ld" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Le" = (/obj/item/device/camera,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Lf" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Lg" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = -28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lh" = (/obj/structure/closet/hydrant{pixel_x = 30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Li" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lj" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lk" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ll" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lm" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ln" = (/obj/structure/closet/hydrant{pixel_x = -30; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lo" = (/obj/structure/closet/walllocker/emerglocker{pixel_x = 28},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lp" = (/obj/effect/floor_decal/corner/pink,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lq" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lr" = (/obj/structure/bed/chair,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Ls" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/floor_decal/industrial/warning{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lt" = (/obj/structure/closet/l3closet/virology,/obj/item/clothing/mask/gas,/obj/effect/floor_decal/industrial/warning{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Lu" = (/obj/structure/bed/chair,/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeobserve) +"Lv" = (/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"Lw" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/obj/machinery/camera/network/crescent{c_tag = "Shuttle Medical"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lx" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Ly" = (/obj/machinery/vending/wallmed1{layer = 3.3; name = "Emergency NanoMed"; pixel_x = 28; pixel_y = 0},/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Lz" = (/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access = list(45)},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LA" = (/obj/machinery/disease2/incubator,/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LB" = (/obj/item/weapon/storage/box/syringes{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{pixel_x = 0; pixel_y = 28},/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LC" = (/obj/machinery/disease2/isolator,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LD" = (/obj/effect/floor_decal/corner/green/full{dir = 8},/obj/machinery/computer/arcade/orion_trail,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LE" = (/obj/effect/floor_decal/corner/green{dir = 5},/obj/item/weapon/stool/padded,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LF" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LG" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LH" = (/obj/structure/table/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"LI" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LJ" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/structure/disposalpipe/segment,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LK" = (/obj/structure/table/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/melee/energy/axe,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"LL" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/camera/network/crescent{c_tag = "Shuttle West Storage"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LM" = (/obj/structure/closet/crate/freezer/rations,/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LN" = (/obj/machinery/iv_drip,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LO" = (/obj/machinery/hologram/holopad,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LP" = (/obj/structure/bed/roller,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LQ" = (/obj/structure/bed/roller,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 26},/obj/machinery/light{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"LR" = (/obj/machinery/recharge_station,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LS" = (/obj/machinery/recharge_station,/obj/machinery/camera/network/crescent{c_tag = "Shuttle East Storage"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/shuttle/escape/centcom) +"LT" = (/obj/structure/table/standard,/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/medical/advanced/bruise_pack,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LU" = (/obj/structure/table/standard,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/scalpel,/obj/effect/floor_decal/corner/pink{dir = 5},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LV" = (/obj/structure/table/standard,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/obj/effect/floor_decal/corner/pink/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"LW" = (/obj/machinery/door/blast/regular{id = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"LX" = (/obj/machinery/igniter,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LY" = (/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"LZ" = (/obj/structure/disposalpipe/segment,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Ma" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/airless,/area/shuttle/escape/centcom) +"Mb" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Mc" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Md" = (/obj/machinery/sleep_console{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Me" = (/obj/machinery/sleeper{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/shuttle/escape/centcom) +"Mf" = (/obj/structure/table/standard,/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/stack/nanopaste,/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mg" = (/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mh" = (/obj/machinery/door/airlock/glass_medical{name = "Virology Laboratory"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mi" = (/obj/structure/table/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/baton/loaded,/obj/item/weapon/melee/energy/sword/red,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mj" = (/obj/machinery/door/blast/regular{id = "thunderdomegen"; name = "General Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mk" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) +"Ml" = (/obj/machinery/door/blast/regular{id = "thunderdome"; name = "Thunderdome Blast Door"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mm" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) +"Mn" = (/obj/structure/table/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/baton/loaded,/obj/item/weapon/melee/energy/sword/green,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Mo" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/shuttle/escape/centcom) +"Mp" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/shuttle/escape/centcom) +"Mq" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/shuttle/escape/centcom) +"Mr" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/shuttle/escape/centcom) +"Ms" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/effect/floor_decal/corner/pink{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mt" = (/obj/machinery/computer/operating,/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mu" = (/obj/machinery/computer/centrifuge,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mv" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full{dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mw" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/effect/floor_decal/corner/green/full{dir = 1},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"Mx" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) +"My" = (/obj/machinery/recharger{pixel_y = 4},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) +"Mz" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 28},/obj/effect/floor_decal/corner/pink{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MA" = (/obj/machinery/smartfridge/chemistry/virology,/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MB" = (/obj/structure/bed/chair/office/dark,/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MC" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/bed/chair{dir = 4},/obj/effect/floor_decal/corner/green{dir = 9},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MD" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/floor_decal/corner/green{dir = 6},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"ME" = (/obj/machinery/vending/snack,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MF" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MG" = (/obj/machinery/computer/arcade,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MH" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MI" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/green,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MJ" = (/obj/effect/landmark{name = "tdome2"},/obj/machinery/camera/network/thunder{c_tag = "Thunderdome - Red Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome2) +"MK" = (/obj/machinery/flasher{id = "flash"; name = "Thunderdome Flash"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"ML" = (/obj/effect/landmark{name = "tdome1"},/obj/machinery/camera/network/thunder{c_tag = "Green Team"; invisibility = 101},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome/tdome1) +"MM" = (/obj/structure/closet/secure_closet/medical2,/obj/effect/floor_decal/corner/pink/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MN" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MO" = (/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MP" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = 4; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/OMinus{pixel_x = -5; pixel_y = -1},/obj/effect/floor_decal/corner/pink{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MQ" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/effect/floor_decal/corner/pink/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MR" = (/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MS" = (/obj/item/weapon/storage/box/gloves{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/masks,/obj/structure/table/glass,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MT" = (/obj/machinery/disease2/diseaseanalyser,/obj/effect/floor_decal/corner/green{dir = 10},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MU" = (/obj/machinery/computer/diseasesplicer,/obj/effect/floor_decal/corner/green/full{dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MV" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/floor_decal/corner/green/full,/turf/unsimulated/floor{icon_state = "white"},/area/centcom/medical) +"MW" = (/obj/machinery/atmospherics/pipe/vent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"MX" = (/obj/machinery/camera/network/thunder{c_tag = "Thunderdome Arena"; invisibility = 101},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"MY" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"MZ" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Na" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Nb" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Nc" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Nd" = (/obj/machinery/door/blast/regular{id = "thunderdomehea"; name = "Heavy Supply"},/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Ne" = (/obj/structure/table/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,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Nf" = (/obj/machinery/door/airlock/command{name = "Thunderdome Administration"; req_access = list(102)},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Ng" = (/obj/effect/forcefield{desc = "You can't get in. Heh."; layer = 1; name = "Blocker"},/obj/machinery/atmospherics/pipe/simple/visible,/obj/effect/wingrille_spawn/reinforced/crescent,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome) +"Nh" = (/obj/structure/table/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,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/tdome) +"Ni" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; opacity = 1; req_access = list(103)},/turf/unsimulated/floor{icon_state = "floor"},/area/centcom/terminal) +"Nj" = (/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nk" = (/obj/structure/bed/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nl" = (/obj/item/weapon/extinguisher,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nm" = (/obj/machinery/atmospherics/valve,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nn" = (/obj/structure/bed/chair{dir = 1},/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"No" = (/obj/machinery/computer/security/telescreen,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Np" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/sleeping_agent{pixel_x = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nq" = (/obj/item/weapon/wrench,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nr" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Ns" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome) +"Nt" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nu" = (/obj/structure/table/standard,/obj/machinery/recharger{pixel_y = 4},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nv" = (/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nw" = (/obj/machinery/computer/pod{id = "thunderdomeaxe"; name = "Thunderdome Axe Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nx" = (/obj/machinery/computer/pod{id = "thunderdomegen"; name = "Thunderdome General Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Ny" = (/obj/machinery/computer/pod{id = "thunderdomehea"; name = "Thunderdome Heavy Supply"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"Nz" = (/obj/machinery/computer/pod{id = "thunderdome"; name = "Thunderdome Blast Door Control"},/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NA" = (/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/item/stack/medical/ointment,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NB" = (/obj/structure/table/standard,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NC" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"ND" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NE" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NF" = (/obj/structure/table/standard,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{icon_state = "lino"},/area/tdome/tdomeadmin) +"NG" = (/turf/unsimulated/beach/sand{density = 1; opacity = 1},/area/beach) +"NH" = (/turf/unsimulated/beach/sand,/area/beach) +"NI" = (/obj/structure/signpost,/turf/unsimulated/beach/sand,/area/beach) +"NJ" = (/obj/structure/closet,/turf/unsimulated/beach/sand,/area/beach) +"NK" = (/obj/effect/overlay/palmtree_l,/turf/unsimulated/beach/sand,/area/beach) +"NL" = (/obj/effect/overlay/palmtree_r,/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) +"NM" = (/obj/effect/overlay/coconut,/turf/unsimulated/beach/sand,/area/beach) +"NN" = (/turf/space,/area/shuttle/cryo/centcom) +"NO" = (/obj/effect/overlay/palmtree_r,/turf/unsimulated/beach/sand,/area/beach) +"NP" = (/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) +"NQ" = (/turf/simulated/shuttle/wall{dir = 4; icon_state = "swall_s"},/area/centcom/evac) +"NR" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; dir = 8; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) +"NS" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 2},/area/centcom/evac) +"NT" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 4},/area/centcom/evac) +"NU" = (/obj/structure/table/standard,/obj,/obj,/obj,/obj,/obj,/obj,/obj,/turf/unsimulated/beach/sand,/area/beach) +"NV" = (/obj/structure/table/standard,/obj/item/clothing/under/color/rainbow,/obj/item/clothing/glasses/sunglasses,/obj/item/clothing/head/collectable/petehat{pixel_y = 5},/turf/unsimulated/beach/sand,/area/beach) +"NW" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s (EAST)"; icon_state = "swall_s"; dir = 4},/area/centcom/evac) +"NX" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 1},/area/centcom/evac) +"NY" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/centcom/evac) +"NZ" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/centcom/evac) +"Oa" = (/turf/simulated/shuttle/plating,/area/centcom/evac) +"Ob" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod2/centcom) +"Oc" = (/obj/machinery/clonepod,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Od" = (/obj/machinery/computer/cloning,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oe" = (/obj/machinery/dna_scannernew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Of" = (/obj/machinery/atmospherics/unary/cryo_cell{layer = 3.3},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Og" = (/obj/machinery/atmospherics/portables_connector,/obj/machinery/portable_atmospherics/canister/oxygen/prechilled,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oh" = (/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = -4; pixel_y = 0},/obj/item/weapon/wrench,/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oi" = (/obj/structure/closet/crate/medical,/obj/item/weapon/circular_saw,/obj/item/weapon/surgicaldrill,/obj/item/weapon/bonegel{pixel_x = 4; pixel_y = 3},/obj/item/weapon/bonesetter,/obj/item/weapon/scalpel,/obj/item/weapon/retractor{pixel_x = 0; pixel_y = 6},/obj/item/weapon/hemostat{pixel_y = 4},/obj/item/weapon/cautery{pixel_y = 4},/obj/item/weapon/FixOVein{pixel_x = -6; pixel_y = 1},/obj/item/stack/nanopaste,/obj/item/weapon/tank/anesthetic,/obj/item/clothing/mask/breath/medical,/obj/item/clothing/mask/surgical,/obj/item/clothing/mask/surgical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oj" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/turf/simulated/shuttle/wall{icon_state = "swall_c"; dir = 1},/area/centcom/evac) +"Ok" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/snacks/chips,/turf/unsimulated/beach/sand,/area/beach) +"Ol" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/beach/sand,/area/beach) +"Om" = (/obj/item/weapon/beach_ball,/turf/unsimulated/beach/sand,/area/beach) +"On" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/space,/area/centcom/evac) +"Oo" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless,/area/centcom/evac) +"Op" = (/obj/machinery/portable_atmospherics/powered/scrubber,/turf/simulated/shuttle/plating,/area/centcom/evac) +"Oq" = (/obj/machinery/vending/engineering,/turf/simulated/shuttle/plating,/area/centcom/evac) +"Or" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod1/centcom) +"Os" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod2/centcom) +"Ot" = (/turf/unsimulated/floor{icon_state = "plating"; name = "plating"},/area/shuttle/cryo/centcom) +"Ou" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 8},/area/centcom/evac) +"Ov" = (/turf/simulated/shuttle/wall,/area/centcom/evac) +"Ow" = (/obj/machinery/door/airlock/external,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Ox" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 4},/area/centcom/evac) +"Oy" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Oz" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OA" = (/obj/machinery/atmospherics/pipe/manifold/visible,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OB" = (/obj/machinery/atmospherics/pipe/simple/visible{tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OC" = (/obj/machinery/computer/operating,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OD" = (/obj/structure/shuttle/engine/propulsion{dir = 8},/turf/space,/area/centcom/evac) +"OE" = (/obj/structure/closet/emcloset,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"OF" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"OG" = (/obj/machinery/bodyscanner{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OH" = (/obj/machinery/body_scanconsole,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OI" = (/obj/machinery/optable,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OJ" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"OK" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OL" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/fire{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OM" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 0},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"ON" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OO" = (/obj/machinery/sleeper{dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OP" = (/obj/machinery/sleep_console,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OQ" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/obj/item/weapon/reagent_containers/food/snacks/meat/syntiflesh,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OR" = (/obj/structure/closet/crate/medical,/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/weapon/storage/firstaid/o2{layer = 2.8; pixel_x = 4; pixel_y = 6},/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/fire{layer = 2.9; pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/firstaid/adv{pixel_x = -2},/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OS" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OT" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"OU" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/obj/item/toy/plushie/mouse{desc = "A plushie of a small fuzzy rodent."; name = "Woodrat"},/turf/unsimulated/beach/sand,/area/beach) +"OV" = (/obj/structure/bed/chair,/obj/effect/landmark{name = "endgame_exit"},/turf/unsimulated/beach/sand,/area/beach) +"OW" = (/mob/living/simple_animal/crab/Coffee,/turf/unsimulated/beach/sand,/area/beach) +"OX" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_r"},/turf/space,/area/centcom/evac) +"OY" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 02"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"OZ" = (/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = -30; pixel_y = 0},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pa" = (/obj/item/clothing/head/collectable/paper,/turf/unsimulated/beach/sand,/area/beach) +"Pb" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Pc" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/centcom/evac) +"Pd" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 1"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Pe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_2_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 2"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Pf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "cryostorage_shuttle_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock Cryostorage"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Pg" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Ph" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "large_escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pi" = (/obj/structure/bed/roller,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pj" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OMinus,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pk" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pl" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/bodybags{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/bodybags,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor3"},/area/centcom/evac) +"Pm" = (/turf/simulated/shuttle/wall{icon_state = "swall_t"; dir = 2},/area/centcom/evac) +"Pn" = (/turf/unsimulated/floor{icon_state = "sandwater"},/area/beach) +"Po" = (/turf/unsimulated/wall{desc = "That looks like it doesn't open easily."; icon = 'icons/obj/doors/rapid_pdoor.dmi'; icon_state = "pdoor1"; name = "Shuttle Bay Blast Door"},/area/centcom/evac) +"Pp" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_1_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pq" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_2_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "escape_pod_2_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pr" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "cryostorage_shuttle_recovery"; pixel_x = -25; pixel_y = 25; req_one_access = list(13); tag_door = "cryostorage_shuttle_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Ps" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pt" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pu" = (/obj/machinery/vending/cola,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Pv" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window4"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Pw" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window8"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Px" = (/obj/machinery/door/airlock/glass,/turf/simulated/shuttle/floor{icon_state = "floor2"},/area/centcom/evac) +"Py" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window12"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"Pz" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PA" = (/obj/structure/table/standard,/obj/item/device/radio/off,/obj/item/weapon/paper_bin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PB" = (/obj/structure/window/shuttle{icon_state = "window2"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) +"PC" = (/turf/unsimulated/beach/coastline{density = 1; opacity = 1},/area/beach) +"PD" = (/turf/unsimulated/beach/coastline,/area/beach) +"PE" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PF" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PG" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) +"PH" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PI" = (/obj/structure/bed/chair{dir = 4},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PJ" = (/obj/machinery/computer/shuttle,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PK" = (/obj/structure/grille,/obj/structure/window/shuttle{icon_state = "window3"},/turf/simulated/shuttle/plating,/area/centcom/evac) +"PL" = (/turf/unsimulated/beach/water{density = 1; opacity = 1},/area/beach) +"PM" = (/turf/unsimulated/beach/water,/area/beach) +"PN" = (/obj/machinery/door/airlock/glass,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PO" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PP" = (/obj/machinery/door/airlock/hatch{name = "Cockpit"; req_access = list(109)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PQ" = (/obj/structure/table/standard,/obj/item/weapon/storage/lockbox,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PR" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PS" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_6_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_6_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PT" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_5_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_5_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PU" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_4_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_4_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PV" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "escape_pod_3_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "escape_pod_3_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"PW" = (/obj/machinery/door/airlock/glass_security{name = "Security Processing"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"PX" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PY" = (/obj/structure/table/standard,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/obj/item/weapon/stamp/captain,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"PZ" = (/obj/structure/window/shuttle{icon_state = "window1"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/centcom/evac) +"Qa" = (/turf/unsimulated/wall,/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qb" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 1},/area/centcom/evac) +"Qc" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_6_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 6"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qd" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_5_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 5"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qe" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_4_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 4"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qf" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "escape_pod_3_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 3"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qg" = (/obj/machinery/door/airlock/maintenance_hatch{req_access = list(101)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Qh" = (/obj/machinery/embedded_controller/radio/simple_docking_controller{frequency = 1380; id_tag = "large_escape_pod_1_recovery"; pixel_x = -25; pixel_y = -25; req_one_access = list(13); tag_door = "large_escape_pod_1_recovery_hatch"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"Qi" = (/obj/machinery/computer/card,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qj" = (/obj/structure/table/rack,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qk" = (/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Ql" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qm" = (/obj/machinery/computer/secure_data,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"Qn" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qo" = (/turf/simulated/shuttle/wall{icon_state = "swall_s"; dir = 8},/area/centcom/evac) +"Qp" = (/turf/simulated/mineral,/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qq" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qr" = (/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qs" = (/obj/structure/table/standard,/obj/effect/decal/cleanable/cobweb2,/obj/effect/decal/cleanable/cobweb2{icon_state = "spiderling"; name = "dead spider"; tag = "icon-spiderling"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Qt" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod6/centcom) +"Qu" = (/turf/simulated/shuttle/wall{icon_state = "swall_straight"; dir = 1},/area/space) +"Qv" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod5/centcom) +"Qw" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod4/centcom) +"Qx" = (/turf/simulated/shuttle/plating,/area/shuttle/escape_pod3/centcom) +"Qy" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "large_escape_pod_1_recovery_hatch"; locked = 1; name = "Recovery Shuttle Dock 01"; req_access = list(13)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"Qz" = (/obj/structure/bed/chair{dir = 1},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QA" = (/obj/structure/closet/secure_closet/personal/patient,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QB" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QC" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QD" = (/turf/simulated/shuttle/plating,/area/shuttle/large_escape_pod1/centcom) +"QE" = (/obj/structure/closet{name = "Evidence Closet"},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QF" = (/obj/structure/closet/secure_closet/security,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QG" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QH" = (/obj/structure/bed/chair,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"QI" = (/obj/machinery/door/airlock/glass_security{name = "Escape Shuttle Cell"; req_access = list(1)},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QJ" = (/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QK" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor2"},/area/centcom/evac) +"QL" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/orange,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor4"},/area/centcom/evac) +"QM" = (/obj/item/weapon/tray{pixel_y = 5},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QN" = (/obj/structure/table/standard,/obj/item/weapon/storage/box/glasses{pixel_x = 1; pixel_y = 4},/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QO" = (/obj/machinery/portable_atmospherics/powered/pump,/turf/simulated/shuttle/plating,/area/centcom/evac) +"QP" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/plating,/area/centcom/evac) +"QQ" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket{amount_per_transfer_from_this = 50},/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QR" = (/obj/item/weapon/mop,/obj/structure/mopbucket,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QS" = (/obj/structure/table/rack,/obj/item/weapon/reagent_containers/spray/cleaner{pixel_x = 6; pixel_y = 3},/obj/item/clothing/accessory/storage/brown_vest,/turf/unsimulated/floor{icon = 'icons/turf/shuttle.dmi'; icon_state = "floor"},/area/centcom/evac) +"QT" = (/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QU" = (/obj/structure/table/standard,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QV" = (/turf/simulated/shuttle/wall{icon_state = "swall_f"; dir = 4},/area/centcom/evac) +"QW" = (/obj/item/weapon/bedsheet/orange,/obj/effect/decal/cleanable/cobweb2{tag = "icon-cobweb1"; icon_state = "cobweb1"},/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QX" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QY" = (/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"QZ" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ra" = (/obj/structure/urinal{pixel_y = 32},/obj/item/weapon/soap/syndie,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rb" = (/obj/structure/urinal{pixel_y = 32},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rc" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rd" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Re" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rf" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rg" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rh" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "white"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ri" = (/obj/item/clothing/head/xenos,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rj" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{dir = 4; pixel_x = -28; pixel_y = 0},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rk" = (/obj/item/clothing/mask/gas/swat{desc = "A close-fitting mask clearly not made for a human face."; name = "\improper alien mask"},/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rl" = (/obj/item/xenos_claw,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rm" = (/obj/structure/table/rack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rn" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/spikethrower,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ro" = (/obj/machinery/shower{dir = 1},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rp" = (/obj/item/pizzabox/meat,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rq" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rr" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rs" = (/obj/effect/decal/cleanable/cobweb2,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rt" = (/obj/structure/table/rack,/obj/item/clothing/glasses/thermal/plain/monocle,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ru" = (/obj/effect/landmark{name = "voxstart"},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rv" = (/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rw" = (/obj/item/organ/internal/stack,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rx" = (/obj/structure/bed/chair,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Ry" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"Rz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RB" = (/obj/machinery/computer/station_alert,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RC" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RD" = (/obj/machinery/suit_cycler/syndicate{locked = 0},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RE" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RF" = (/obj/item/clothing/head/philosopher_wig,/turf/unsimulated/floor{tag = "icon-asteroid"; icon_state = "asteroid"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RG" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 4},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) +"RH" = (/obj/machinery/door/airlock/external{req_access = list(150)},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RI" = (/obj/structure/lattice,/obj/structure/window/reinforced{dir = 8},/turf/space,/area/syndicate_mothership{name = "\improper Raider Base"}) +"RJ" = (/obj/structure/window/reinforced{dir = 8},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RK" = (/obj/structure/window/reinforced{dir = 4},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"}) +"RL" = (/turf/space,/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/skipjack_station/start) +"RM" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_west_control"; req_one_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"RN" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northwest_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RO" = (/turf/space,/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/area/skipjack_station/start) +"RP" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_northeast_lock"; locked = 0; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RQ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "vox_east_control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"RR" = (/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"RS" = (/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RW" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_west_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RX" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_west_sensor"; pixel_x = 25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"RY" = (/obj/machinery/computer/station_alert,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"RZ" = (/obj/machinery/computer/shuttle_control/multi/skipjack,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sa" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sb" = (/obj/machinery/button/remote/blast_door{id = "skipjackshutters"; name = "remote shutter control"; req_access = list(150)},/turf/simulated/wall/skipjack,/area/skipjack_station/start) +"Sc" = (/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "vox_east_sensor"; pixel_x = -25},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sd" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{frequency = 1331; id_tag = "vox_east_vent"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Se" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sf" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_west_vent"; tag_exterior_door = "vox_northwest_lock"; frequency = 1331; id_tag = "vox_west_control"; tag_interior_door = "vox_southwest_lock"; pixel_x = 24; req_access = list(150); tag_chamber_sensor = "vox_west_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1331; id_tag = "vox_west_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sg" = (/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sh" = (/obj/structure/bed/chair{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Si" = (/obj/structure/bed/chair{dir = 1},/obj/item/clothing/glasses/thermal/plain/monocle,/obj/item/clothing/head/pirate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sj" = (/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sk" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "vox_east_vent"; tag_exterior_door = "vox_northeast_lock"; frequency = 1331; id_tag = "vox_east_control"; tag_interior_door = "vox_southeast_lock"; pixel_x = -24; req_access = list(150); tag_chamber_sensor = "vox_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "vox_east_vent"},/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sl" = (/obj/machinery/atmospherics/pipe/manifold/visible{dir = 4},/obj/machinery/meter,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sm" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southwest_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sn" = (/obj/structure/table/rack,/obj/item/weapon/rig/industrial,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"So" = (/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sp" = (/obj/structure/table/rack,/obj/item/weapon/rig/light/hacker,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sq" = (/obj/machinery/door/airlock/hatch{frequency = 1331; icon_state = "door_closed"; id_tag = "vox_southeast_lock"; locked = 0; req_access = list(150)},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sr" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_west_control"; pixel_x = -22; req_one_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Ss" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/material/harpoon,/obj/item/clothing/suit/space/void/merc,/obj/item/clothing/head/helmet/space/void/merc,/obj/item/clothing/head/helmet/space/void/engineering,/obj/item/clothing/suit/space/void/engineering,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/obj/item/clothing/shoes/magboots,/obj/item/clothing/shoes/magboots,/obj/item/weapon/rig/light/stealth,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"St" = (/obj/machinery/microwave{pixel_x = -1; pixel_y = 8},/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Su" = (/obj/item/seeds/potatoseed,/obj/item/seeds/potatoseed,/obj/item/seeds/ambrosiavulgarisseed,/obj/item/weapon/material/minihoe,/obj/item/weapon/beartrap,/obj/structure/table/steel,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sv" = (/obj/machinery/vending/hydroseeds,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sw" = (/obj/structure/table/rack,/obj/item/weapon/melee/energy/sword/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/clothing/suit/space/pirate,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Sx" = (/obj/structure/table/rack,/obj/item/weapon/storage/belt/utility/full,/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/obj/item/device/multitool,/obj/item/clothing/shoes/magboots,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sy" = (/obj/machinery/washing_machine,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Sz" = (/obj/structure/table/standard,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter/zippo,/obj/item/clothing/gloves/yellow,/obj/item/stack/material/steel{amount = 50},/obj/item/stack/material/glass{amount = 50},/obj/item/weapon/card/emag,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SA" = (/obj/structure/table/rack,/obj/item/weapon/gun/energy/sniperrifle,/obj/item/clothing/suit/space/void/mining,/obj/item/clothing/head/helmet/space/void/mining,/obj/item/clothing/head/helmet/space/void/atmos,/obj/item/clothing/suit/space/void/atmos,/obj/item/weapon/tank/oxygen,/obj/item/weapon/tank/oxygen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SB" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "vox_east_control"; pixel_x = 22; req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SC" = (/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SD" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SE" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SF" = (/obj/structure/table/rack,/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/syndicate/black/engie,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/syndicate/black/engie,/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SG" = (/obj/item/robot_parts/head,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SI" = (/obj/item/robot_parts/l_leg,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SK" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SL" = (/obj/machinery/floodlight,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SM" = (/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SN" = (/obj/structure/table/rack,/obj/item/weapon/gun/launcher/crossbow,/obj/item/stack/rods{amount = 10},/obj/machinery/light/small{dir = 8},/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/obj/item/weapon/beartrap,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SO" = (/obj/structure/table/rack,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/flashbang,/obj/item/weapon/grenade/spawnergrenade/manhacks,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SP" = (/obj/structure/table/steel,/obj/machinery/recharger,/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SQ" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SR" = (/obj/item/robot_parts/robot_suit,/obj/item/robot_parts/r_leg,/obj/item/robot_parts/r_arm,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SS" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/blast/regular{id = "skipjackshutters"; name = "Skipjack Blast Shielding"},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"ST" = (/obj/machinery/door/airlock/hatch{req_access = list(150)},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SU" = (/obj/structure/bed/chair{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SV" = (/obj/structure/table/steel,/obj/item/clothing/glasses/regular,/obj/item/clothing/glasses/regular,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SW" = (/obj/structure/bed/chair{dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"SX" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SY" = (/obj/item/weapon/wrench,/obj/item/weapon/mop,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"SZ" = (/obj/machinery/atmospherics/pipe/simple/visible,/obj/item/weapon/crowbar,/obj/item/device/suit_cooling_unit,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Ta" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tb" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tc" = (/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"Td" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"Te" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Tf" = (/obj/structure/table/steel,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Tg" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Th" = (/obj/machinery/bodyscanner{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Ti" = (/obj/machinery/light/small{dir = 1},/obj/machinery/body_scanconsole,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Tj" = (/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Tk" = (/obj/structure/toilet{dir = 4},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tl" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/item/weapon/tank/nitrogen,/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tm" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/tank/air{dir = 1; start_pressure = 740},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tn" = (/turf/unsimulated/wall,/area/wizard_station) +"To" = (/obj/structure/sink,/turf/unsimulated/wall,/area/wizard_station) +"Tp" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/skipjack_station/start) +"Tq" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/shuttle/plating,/area/skipjack_station/start) +"Tr" = (/obj/structure/table/steel,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Ts" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Tt" = (/turf/space,/turf/simulated/shuttle/wall{dir = 4; icon_state = "diagonalWall3"},/area/skipjack_station/start) +"Tu" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/obj/effect/decal/cleanable/cobweb,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tv" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tw" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tx" = (/obj/machinery/librarycomp,/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Ty" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/security_space_law,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Tz" = (/obj/structure/table/woodentable,/obj/item/weapon/book/manual/nuclear,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"TA" = (/obj/structure/table/woodentable,/obj/effect/landmark{name = "Teleport-Scroll"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TB" = (/obj/structure/table/woodentable,/obj/item/weapon/paper{info = "\[center]\[b]LIST OF SPELLS AVAILABLE\[/b]\[/center]\[br]\[br]Magic Missile:\[br]This spell fires several, slow moving, magic projectiles at nearby targets. If they hit a target, it is paralyzed and takes minor damage.\[br]\[br]Fireball:\[br]This spell fires a fireball at a target and does not require wizard garb. Be careful not to fire it at people that are standing next to you.\[br]\[br]Disintegrate:\[br]This spell instantly kills somebody adjacent to you with the vilest of magick. It has a long cooldown.\[br]\[br]Disable Technology:\[br]This spell disables all weapons, cameras and most other technology in range.\[br]\[br]Smoke:\[br]This spell spawns a cloud of choking smoke at your location and does not require wizard garb.\[br]\[br]Blind:\[br]This spell temporarly blinds a single person and does not require wizard garb.\[br]Forcewall:\[br]This spell creates an unbreakable wall that lasts for 30 seconds and does not require wizard garb.\[br]\[br]Blink:\[br]This spell randomly teleports you a short distance. Useful for evasion or getting into areas if you have patience.\[br]\[br]Teleport:\[br]This spell teleports you to a type of area of your selection. Very useful if you are in danger, but has a decent cooldown, and is unpredictable.\[br]\[br]Mutate:\[br]This spell causes you to turn into a hulk, and gain telekinesis for a short while.\[br]\[br]Ethereal Jaunt:\[br]This spell creates your ethereal form, temporarily making you invisible and able to pass through walls.\[br]\[br]Knock:\[br]This spell opens nearby doors and does not require wizard garb.\[br]"; name = "List of Available Spells (READ)"},/obj/item/clothing/glasses/regular,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TC" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/satchel/withwallet,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TD" = (/obj/structure/toilet{pixel_y = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TE" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TF" = (/obj/structure/mirror{pixel_y = 28},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TG" = (/obj/structure/shuttle/engine/propulsion,/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/skipjack_station/start) +"TH" = (/obj/structure/table/standard,/obj/item/weapon/legcuffs,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"TI" = (/obj/structure/table/standard,/obj/item/weapon/deck/cards,/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"TJ" = (/obj/machinery/light/small,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"TK" = (/obj/structure/table/standard,/obj/item/weapon/circular_saw{pixel_y = 8},/obj/item/weapon/hemostat,/obj/item/weapon/scalpel,/obj/item/stack/medical/advanced/bruise_pack,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TL" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TM" = (/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TN" = (/obj/effect/landmark/start{name = "wizard"},/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TO" = (/obj/structure/simple_door/iron,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TP" = (/obj/machinery/shower{icon_state = "shower"; dir = 8},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"TQ" = (/obj/machinery/optable,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TR" = (/obj/structure/table/standard,/obj/item/weapon/cautery,/obj/item/weapon/retractor,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/weapon/reagent_containers/syringe,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TS" = (/obj/structure/bookcase{name = "bookcase (Tactics)"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"TT" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/closet/coffin,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"TU" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"TV" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"TW" = (/obj/item/weapon/bedsheet/rainbow,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"TX" = (/obj/item/weapon/bedsheet/hos,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"TY" = (/obj/structure/table/standard,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/obj/item/weapon/FixOVein,/obj/item/stack/nanopaste,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"TZ" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/bag/cash,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Ua" = (/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ub" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uc" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/red,/obj/item/clothing/shoes/sandal,/obj/item/clothing/head/wizard/red,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ud" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/marisa,/obj/item/clothing/shoes/sandal/marisa,/obj/item/clothing/head/wizard/marisa,/obj/item/weapon/staff/broom,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ue" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusblue,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uf" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ug" = (/obj/structure/toilet{dir = 4},/obj/machinery/light/small{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start) +"Uh" = (/obj/item/weapon/bedsheet/orange,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Ui" = (/obj/item/weapon/bedsheet/green,/obj/machinery/light/small{dir = 4},/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Uj" = (/obj/structure/table/standard,/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/syringe/antiviral,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Uk" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/adv{pixel_x = 1},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/machinery/light/small{dir = 4},/obj/structure/closet/secure_closet/medical_wall{pixel_x = 32; pixel_y = 0; req_access = list(150)},/obj/item/weapon/storage/firstaid/fire{pixel_x = 1},/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start) +"Ul" = (/obj/structure/bookcase,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Um" = (/obj/machinery/vending/magivend,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Un" = (/obj/structure/simple_door/wood{tag = "icon-wood"; icon_state = "wood"},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uo" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Up" = (/obj/item/weapon/bedsheet/rd,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Uq" = (/obj/item/pizzabox/meat,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Ur" = (/obj/item/weapon/bedsheet/clown,/obj/structure/bed/padded,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start) +"Us" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_soft/full,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"Ut" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack/cultpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uu" = (/obj/structure/table/woodentable,/obj/item/clothing/glasses/monocle,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uv" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/backpack,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uw" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/under/psysuit,/obj/item/clothing/suit/wizrobe/psypurple,/obj/item/clothing/head/wizard/amp,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Ux" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/shoes/sandal/marisa{desc = "A set of fancy shoes that are as functional as they are comfortable."; name = "Gentlemans Shoes"},/obj/item/clothing/under/gentlesuit,/obj/item/clothing/suit/wizrobe/gentlecoat,/obj/item/clothing/head/wizard/cap,/obj/item/weapon/staff/gentcane,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uy" = (/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/suit/wizrobe/magusred,/obj/item/clothing/head/wizard/magus,/obj/item/weapon/staff,/turf/unsimulated/floor{icon_state = "lino"},/area/wizard_station) +"Uz" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 4},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UA" = (/obj/structure/table/woodentable,/obj/item/weapon/dice/d20,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UB" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/cups,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UC" = (/obj/structure/bed/chair/wood/wings{icon_state = "wooden_chair_wings"; dir = 8},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UD" = (/obj/item/target,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UE" = (/obj/item/target/syndicate,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UF" = (/obj/item/target/alien,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UG" = (/turf/unsimulated/wall/fakeglass{dir = 1; icon_state = "fakewindows"},/area/wizard_station) +"UH" = (/obj/structure/table/rack,/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"UI" = (/obj/structure/kitchenspike,/obj/structure/table/marble,/turf/unsimulated/floor{icon_state = "dark"},/area/wizard_station) +"UJ" = (/obj/structure/table/woodentable,/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/milosoup,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UK" = (/obj/structure/table/woodentable,/obj/item/weapon/dice,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UL" = (/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UM" = (/turf/unsimulated/wall/fakeglass,/area/wizard_station) +"UN" = (/obj/structure/table/woodentable,/obj/item/device/megaphone,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UO" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UP" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chawanmushi,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UQ" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash/c1,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station) +"UR" = (/obj/item/weapon/book/manual/robotics_cyborgs,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"US" = (/obj/item/robot_parts/head,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UT" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station) +"UU" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 8},/area/wizard_station) +"UV" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows2"; dir = 8},/area/wizard_station) +"UW" = (/turf/unsimulated/wall/fakeglass{icon_state = "fakewindows"; dir = 4},/area/wizard_station) +"UX" = (/obj/effect/decal/remains/human,/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) +"UY" = (/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) +"UZ" = (/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) +"Va" = (/mob/living/simple_animal/crab{name = "Experiment 68a"},/turf/unsimulated/floor{icon_state = "asteroid"; tag = "icon-ironsand7"},/area/wizard_station) +"Vb" = (/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vc" = (/obj/structure/flora/ausbushes/fullgrass,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vd" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"Ve" = (/mob/living/carbon/human/monkey{name = "Murphey"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"Vf" = (/mob/living/simple_animal/hostile/creature{name = "Experiment 35b"},/turf/unsimulated/floor{tag = "icon-lava"; name = "plating"; icon_state = "lava"},/area/wizard_station) +"Vg" = (/obj/structure/flora/ausbushes/grassybush,/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vh" = (/mob/living/simple_animal/hostile/retaliate/goat{name = "Experiment 97d"},/turf/unsimulated/floor{icon_state = "grass0"; name = "grass"},/area/wizard_station) +"Vi" = (/obj/item/weapon/caution,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) +"Vj" = (/obj/item/weapon/material/knife/ritual,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/wizard_station) + (1,1,1) = {" aaabacadaeafagahaaaiajakalamanaoagafajacadahakaeamaiaoalahajapaqarasatauavawaxayaaabacadaeafagahaaaiajakalamanaoagafajacadahakazaAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaAaBaCaDaEaFaGaHaIaJazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQaQaQaQaQaQaQaQaQaQaQaQaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaR ajaTaUaVaWaXaYaZbabbbcbdbebfbgbhaYaXbcaUaVaZbdaWbfbbbhbeaZbcabauavawbibjbkblbmbeaXbfaZbcbbbhbeaXbfaZbcbbbhbhbeaXbfaZbcbbbhbhbmazaEbnbobpaqarasatauavawbibjbkblbqbnbobpaqarasatauaNazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQbrbsaQbrbsaQbrbsaQbrbsaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPbtbubububvbububububububwbxbybxbybxbxbybxbybxbwbzbAbAbAbAbAbAbAbAbAbwbBbCbDbDbDbDbDbDbDbDbwbEbEbEbEbEbEbEbEbEbEbwbFbFbFbFbFbFbFbFbFbFbwbGbHbIbJbKbKbKbKbKbLbM @@ -2587,127 +2587,126 @@ aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaP aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwondaPaPAzAAABAzAAAAACADAEAAAFAGndndwoAHwIwIxwAbykAlyHzwAIAJAKxwALAMyFykAozyzMzMANzyAOzPAPzPAiAjzPArAsAtzPzywrwrwrwrwrwrwrwrwrwqwrwrwrwrAxAxAywrwrAQwrARwrwrARwrAxsozHzHsowrwrsoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmj aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwnaPaPAzASATAUAVAWAXAWAWAWAXAYAZwnwnwnwIwIwIxwAlAlxMxMxMxMxMxMxwxMBaykBbBczyBdzMANzyAOzPzPzPBeAjzPArBfAtzPzywrwrwrwrwrwrwrwrwrwqBgzDwrwrwrwrwrBhwrsozUBiBjAxBkwrAksozHzHsowrwrsoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmj aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwnaPaPBlBmBnBmBoBmBmBmBmBmBmBmBpBqyhBqwIwIwIxwAMykBrBsBsBsBsBsBtxMxMBuxMxMzyzyzyzyzyAiAiAiAiAiAjzPArBvAtzPzywqwqBwwqwqsowKwrwrsoBxzDwrwrwrwrwrsosososowqwqwqwqwqsosoByBysowrwrsoaPaPaPaPBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwnaPaPBABBBCBDAVBEBFBEBEBEBFBGBHwnwnwnwIwIwIxwBaykykykykykykykBrBsBIykBrBJBKzyzPzPzPAjAjAjAjAjzPzPzPzPzPzPzyBLBMwrBNBOsoBPBQBRByByBSBysowqBTwqsoBUBUBUBVBWBWBWBZBXBUBUBywKwrwrsoaPaPaPBzBzCaCaCaCaCaCaCbCbCbCaCaCaCaCbCbCbCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPBAAACdBAAAAAACADAEAACeCfndndwowIwIwIxwBaykykzJzJzJzJzJykykykykykzJCgzyChzPzPzPzPzPzPzPzPzPzPzPzPChzywrwrwrwrwrsowrwrwrCiBUBUCjsowrwrwrsoBUBUBUBVBYBYBYBZBUBUBUBywrwrwrsoaPaPaPBzCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPCnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwowowowowoxcndndndndndndndndndndndaPwnwIwIwIxwBaykykCoCoCoCoCoykykykykykykAozyAszPArAsAsAtzPzPArAsAsAtzPAszywrwrwrwrwrsowrwrwrCiCpCqCrsowrwrwrsoBUBUBUCsCtCkCvCwBUBUBUBywrwrwrsoaPaPaPBzCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIxwBaykykzgykykykzgykBbCxAMykykAozyCyzPArBvBfAtzPzPArBvBfAtzPCyzywrCzCACBCCsowqCDwqByCECFBysoCGCHCIsoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCaCaCaCJBzBzBzCcCcCcBzCKCKBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCLCLCLwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCLCLCLwowoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowoCLCLCLxwBaykBbAMykykBbCxAMAoxwxwCMCMxwzyChzPzPzPzPzPzPzPzPzPzPzPzPChzyCNsososososoBUBUBUByCiCiBysososososoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCOCaCaBzBzCPCQCRCQCRCSCTCTCUCRCQCRCQCVCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmj -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICXwIwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowICYCZDawIwowoaPaPaPaPaPaPaPaPaPaPaPaPaPwowowIwICZDaxwBIykAoxwBuBuxwxwBaAoxwDbykykDczyAszPArAsAsAtzPzPArAsAsAtzPAszysosoBUBUBUBUBUBUBUBUBUBUBUByBysosoByBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCOCaCaBzCPDdDeDeDeDeDfDgDgDhDeDeDeDfDiCVDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIDkwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDlwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDmDaAlykykAoxwAMykAoxwBaAoxwDnykykDczyCyzPArBvBfAtzPzPArBvBfAtzPCyzysoDoBUBUBUBUBUBUBUBUBUBUBUDoByBysoByDpBUBUBUBUBUBUBUBUBUDpBywKwrwrBzBzBzBzBzCOCaCaCcDqDrDgDgDgDgDgDgDgDgDgDgDgDgDsDqDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIDmwIwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDmCZDuwIwIwIwowowowownwnwnwnwnwowowowowIwIwIwICZwIAlykykAoxwBaykDvxwBaAoxwDwykykDczyzyDxDxDxDxzyDyDyzyDxDxDxDxzyzyBUBUBUBUDzDADBDBDBDCDDBUBUBUBUByByByByByByByBUBUBUByByByByBysowrwrDECaCaCaBzCOCaCaCcDFDrDgDgDgDgDgDgDgDgDgDgDgDgDsDFDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIxwDLykBrxMBaDMDNxMBIBrxwDOCxCxDPxwDQDRDSDRDSCiBUBUCiDRDTDRDRDUByBUBUBUDVDWDXDXDXDXDXDYDZBUBUBUByDRDSDRDQDSCiBUBUBUCiDSDRDREasowrwrBzEbCaEcCcCOCaCaBzDiCVEdEdEdEdEeDgDgEfEdEdEdEeCPDdDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIxwxwAlAlxMEhEixMxMAlAlxwxwxwxwxwxwCiCiCiCiCiCiBUBUCiCiCiCiCiCiByBUBUEjEkDXDXDXDXDXDXDXElDDBUBUByCiCiCiCiCiCiBUBUBUCiCiCiCiCiByEmEmBzCaEnEoCcCOCaCaBzBzDiCQCRCQCRCSCTCTCUCRCQCRCQDdCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEpEqwnwIwIwIwIErEsEtErEsEuEvEwEsEtErEsEtwIwIwnExEpEqwnwIwIErEsEtErEsEuEvEwEsEtErEsEtwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUDoByDoBUBUBUBUBUBUBUBUBUBUBUBUDoByBUBUEzDXDXDXEAEBECDXDXDXEzBUBUByDpBUBUBUBUBUBUBUBUBUBUBUBUDpByBUBUCcEDEECcBzCaCaCaCJBzBzBzCcCcCcBzEFEFBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEGyhEHwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIEIEJEGyhEKwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUELBUBUEMDXDXEAENENENECDXDXEOBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEPCaCaCaEQCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPERmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdCnmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmd -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnyhyhESwIwIwIwIwIwIwIwIwIwIETwIwIwIwIwIwIwIwIEUEVwoyhESwIwIwIwIwIwIwIwIETwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwICiBUBUBUByBUBUByBUBUBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUELBUBUEMDXDXEWENEXENEYDXDXEOBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUCcCaCaCaCcCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEZyhFawIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIFbyhEZyhFawIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUELBUBUEMDXDXFcENENENFdDXDXEOBUBUELBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEPCaCaCaEQCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnFeFfwnwIwIwIwIFgFhFiFgFhFjFkFlFhFiFgFhFiwIwIwnFmFeFnwnwIwIFgFhFiFgFhFjFkFlFhFiFgFhFiwIwIwIwIwIwIwIwIwIwIBUBUBUBUEyBUBUEyBUBUBUDoByDoBUBUBUBUBUBUBUBUBUBUBUBUDoByBUBUFoDXDXDXFcFpFqDXDXDXFrBUBUByDpBUBUBUBUBUBUBUBUBUBUBUBUDpBzFsFsBzBzBzBzBzCaCaCaCJBzBzBzCcCcCcBzCKCKBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIEgDKyhDHDGyhDHwIwIwIwIwIwIFtFtFuFuClFvFvFvFtFuFuFtFtFvFvFtFtCiCiCiCiCiCiBUBUCiCiCiCiCiCiByBUBUFwFxDXDXDXDXDXDXDXFyFzBUBUByCiCiCiCiCiCiBUBUCiCiCiCiCiCiBzFAFAFBFCFDFECcCOCaCaBzBzCPCQCRCQCRCSCTCTCUCRCQCRCQCVCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIwIwIwIDGyhDHDGyhDIDJDKyhDHDGyhDHwIwIwIwIwIwIFtFFFGFGFHFIFJFJFKFGFLFtFMFNFOFPFtDTDQDRDSDSCiBUBUCiEaFQDSDRDRByBUBUBUFRFSDXDXDXDXDXFyDWBUBUBUByFTDRDQDRDSCiBUBUCiDRDSDRFUFQBzFAFAFAFAFAFACcCOCaCaBzCPDdDeDeDeDeDfDgDgDhDeDeDeDfDiCVDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIFVFVwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDkCZDuwIwIwIwowowowownwnwnwnwnwowowowowIwIwICYCZwIFuFGFGFGFGFGFGFGFGFGFWFtFXFGFYFZFtGaGbGbGbGbGaGcGcGaGbGbGbGbGaGaBUBUBUBUFwDAGdGdGdDCFzBUBUBUBUGeGeGeGeGeGeGeGfGfGeGeGeGeGeGeBzFAFAFAFAFAFABzCOCaCaCcDqDrDgDgDgDgDgDgDgDgDgDgDgDgDsDqDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICZFVwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIDmCZDawIwHwowoaPaPGgGhGiGiGiGjGkaPaPwowowHwIDkCZDaFuFGFGGlGmFGFGGlGmFGFWFtGnFGFGGoFtGpGqGqGqGqGqGqGqGqGqGqGqGqGpGaByDoBUBUBUBUBUBUBUBUBUBUBUDoByGeGrGsGsGsGsGtGtGtGtGsGsGsGsGrBzFAFAGuGvFAGuCcCOCaCaCcDFDrDgDgDgDgDgDgDgDgDgDgDgDgDsDFDjDjDjDjDjDjDjDjDjBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIDuwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowIDmCZwIwIwowondaPGgGwGxGyGzGAGBGCGkaPndwowowIwICZwIFtGDFGGlGmFGFGGlGmFGFWFtGEFGFYFZFtGqGqGqGqGqGqGqGqGqGqGqGqGqGqGaByByBUBUBUBUBUBUBUBUBUBUBUByByGeGtGtGtGtGtGtGtGtGtGtGtGtGtGtBzFAFAGuGvFAGuCcCOCaCaBzDiCVEdEdEdEdEeDgDgEfEdEdEdEeCPDdDtDtDtDtDtDtDtDtDtBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCLCLCLwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCLCLCLwowoaPndGgGwGFGGGHGGGHGGGIGCGkndaPwowoCLCLCLFtGJFGGlGmFGFGGlGmFGFWFtGKGLGMGNFtGqGqGOGPGQGRGqGqGOGSGTGRGqGqGaaPByByByByByBUByBUByByByByByaPGeGtGUGUGUGUGtGtGtGtGUGUGUGUGtBzFAFAGuGvFAGuBzCOCaCaBzBzDiCQCRCQCRCSCTCTCUCRCQCRCQDdCWCWCWCWCWCWCWCWCWCWBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndGVGHGHGHGWGXGYGHGHGHGVndaPaPwnwIwIwIFtGJFGFGFGFGFGFGFGFGFWFtFtFXGZHaFtGqGqGOHbHcGRGqGqGOHdHeGRGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeGtGtGtGtGtGtGtGtGtGtGtGtGtGtBzFAFAGuGvFAGuCcCaCaCaCJBzBzBzCcCcCcBzEFEFBzCcCcCcBzBzBzBzCcCcCcBzBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHiHjHkHlHmHnHmHoHpHqHindaPaPwnwIwIwIFtGJFGFGFLHrHrHrHrHrHsFtHtFKFHHuFtGqGqGqGqGqGqGqGqGqGqGqGqGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeGrGsGsGsGsGtGtGtGtGsGsGsGsGrBzFAFAGuGvFAGuCcCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHiHvGVHwHxHyHxHzGVHvHindaPaPwnwIwIwIFtFvHAFGFtHBHCHDHEHCHFFtGJFGFGHGFtGqGqGOHHHIGRGqGqGOHJHKGRGqGqGaaPaPByHLBUBUBUDXBUBUBUHMByaPaPGeGeGeGeGeGeGeGfGfGeGeGeGeGeGeBzFAFAGuGvFAGuBzCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCaCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwondndndHiGHHpHiHNHOHPHiHkGHHindndndwowIwIwIFtGJFGFGHQFKHRFGFGHRFHHSFKFGFGHTFtGqGqGOHUHVGRGqGqGOHWHXGRGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeHYHZHZHZHZHYHYHYHYIaIbIbIbIcBzFAFAGuGvFAGuBzBzCaCaCaCaCaCaIdIdIdCaCaCaCaIdIdIdCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPGVGHHpIeIfIgIhIeHkGHGVaPaPaPwowIwIwIFtGJFGFGFGFGFGFGFGFGFGFGFGFGFGIiFtGqGqGqGqGqGqGqGqGqGqGqGqGqGqGaaPaPByHfHgBUBUDXBUBUHgHhByaPaPGeHYHYHYHYHYHYHYHYHYHYHYHYHYHYBzFAFAFAFAFAFABzBzBzCcCcCcBzCcCcCcBzCcCcCcBzCcCcCcBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPGgGwHjHpIjIfIkIhIjHkHqGCGkaPaPwowIwIwIFtGJFGFGFGFGFGFGFGFGFGFGFGFGFGHTFtGqGqGqGqGqGqIlIlIlIlIlIlIlIlGaaPaPImImImInInIoInInImImImaPaPGeIpGeIqGeIrGeHYHYGeIsGeItGeIuBzFAFAFAFAFAFACcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnIvIwGHHpIxGVIyGVIzHkGHIwIvwnwnwnwIwIwIFtGJFGFLHrHrHrGDFLHrHrGDFGFGFGIiFtIAIBIBGqGqICIDIDIDIEIDIDIDIDGaaPaPImIFIGInIGIGIGInIGIFImaPaPGeIHGeIHGeIHGeHYHYGeIHGeIHGeIHBzFAFAIIIIIIIICcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJIKGHGHGHILIMGHGHILGHGHGHIKIJyhIJwIwIwIFtFvFGFWFvFvFvGJFWINHaGJFLIOIPIQFtIRISITGqGqICIUIVIVIVIVIVIVIVGaaPaPImIGIWIXIGIGIGIXIYIGImaPaPGeGeGeGeGeGeGeHYHYGeGeGeGeGeGeBzFAFAIZIZIZIZCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJJaGHGHGHGHGHGHGHGHGHGHGHJaIJyhIJwIwIwIFtJbFGFHJcJdJeFKFHJfFtJgJhFtFtFtFtJiJjJkGqGqICIVIVIVIVIVIVIVIVGaaPaPImInIGInIGIGIGInIGInImaPaPGeJlHYJlHYJlIaHYHYJmJlHYJlHYJlBzFAFAFAFAFAFACcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnIvJnGHHpIeHkGHHpIeHkGHJoIvwnwnwnwIwIwIFtJbFGFGFGFGFGFGFGJpFtJgJqJrJrJsFtJtJuJvGqGqIVIVIVJwJxJyJzIVIVGaaPaPImIGIGIGIGIGIGIGIGIGImaPaPGeHYHYHYHYHYHYHYHYHYHYHYHYHYHYBzJAFAFAFAFACcCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIeHkGHHpJBHkGHHpJBHkGHHpIeaPaPwowIwIwIFtJbFGFGFGJCJDFGFGJEFtJgFGJFJGJHFtGaGaGaGaGaGaGaGaGaGaGaGaGaGaGaImImImIGIGIGIGIGIGIGIGIGImImImGeJIHYJIHYJIIaHYHYJmJIHYJIHYJIBzCcCcCcCcCcCcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndndndndndndndndndndndndndndwowIwIJJwoaPaPJBHkGHHpJBHkGXHpJBHkGHHpJBaPaPwowIwIwIFtJKFGFGFGFGFGFGFGJLFtJgFGFGJMJHFtJNJOJOJOJPImIGIGIGIGIGIGIGIGIGIGIGImImJQImImIGImImJQImImIGIGImImImGeGeGeGeGeGeGeGeGeGeGeGeGeaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIjHkGHHpJBHkGHHpJBHkGHHpIjaPaPwowIwIwIFtJRFGFGFGJSJTFGFGJUFtJVJWFGJXJYFtJZFGFGFGKaImIGImImImImKbImImImIGIGIGIGIGIGImIGImIGIGIGIGIGIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnIvKcGHHpIjHkGHHpIjHkGHKdIvwnwnwnwIwIwIFtGJFGFGFGFLHrGDFGKeFtFtFtKfFtFtFtJZFGFGFGKaImIGImKgKhKhKhKhKiImImImImImImImImKjImImImImImImImImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJIKGHGHGHGHGHGHGHGHGHGHGHIKIJyhIJwIwIwIFtGJFGFLHrKkFtFtKlFtFtKmKnFGJqKoFtKnFGFGFGKpImIGImKgKhKhKhKhKiImKqKrKsKrKtKuKuKuKuKuKtKuKtKuKvImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIJyhIJJaGHGHKwGHGHGHGHGHKwGHGHKxIJyhIJwIwIwIFtFtKyFtINFtFtKzFGKAFtJgFGFGFGFGKBFGFGKCFGKDImIGImKEKhKhKhKhKFImKuKGKGKGKGKGKuKuKuKGKGKGKGKHKIImIGImImImImImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnKJGVKKKLGhGjKMGhGjKLKKGVKNwnwnwnwIwIwIFtKOFGKPKQKRFtKSFGKTFtKUKVKWKXKYFtKZLaLaLaLbImIGImKELcLdLdKhKhLeKuKuLfLgLfKuKuKuKuKuLfLgLfLhKuImIGIGIGIGIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPndndndndndndndndndndndaPaPaPwowIwIwIwoaPaPIvLiLjIvLkLlLmLnLoIvLpLqIvaPaPwowpwpwpFtKOFGLrLsLtFtLuFGLvFtFtFtFtFtFtFtFtFtFtFtImImIGImImImImImImImImKuKGKGKGKGKGKuKuKuKGKGKGKGLwKuImImImImImImImIGImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndaPaPaPaPaPaPaPaPaPndndndndwowIwIwIwondndIvLxLxIvLyLzLmLmLAIvLxLxIvndndwowIwIwIFtFtLBFtFvFvFtFtKlFtFtLCLDLEFvLFLGJcLHLHLIImIGIGImImLJLJLJLJLJImLKLKLKLKLKLKLKLKLKLKLKLKLKLLLKImLMLMLMLMLMImIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPIvLNLOIvLPLmLQLRLSIvLTLUIvaPaPxcwIwIwIFtLVFGKPLWLXFtGJFGFHJcFKFGFHFvFKFGFGFGFGFWImIGImImImLYLYLYLYLYImLZMaMaMaMaMaMaMaMaMaMaMaMaMbLZImLYLYLYLYLYImImImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwGwFwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwFwFwnaPaPKJMcMcIvMdMeLmMfMgIvMcMcKNaPaPwnwIwIwIFtMhFGFGFGMiFtGJFGFGFLHrFGFGMjFGFGFGFGFGFWImIGImMkMlMmMmMmMmMmMnMaMaMaMaMaMaMaMaMaMaMaMaMaMbMaMnMoMoMoMoMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPMqMrMrMsKLMcMcMcKLMsMrMrMtaPaPwnwIwIwIFtMuFGFGKCMvFtMwFGFGFWMxFGMyFvGDFGFYFGFGFWImIGImMkMlMmMzMmMzMmMnMaMaMaMaMaMaMaMaMaMaMaMaMaMbMaMnMoMAMoMAMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPMqMrMrMrMtaPaPaPaPaPaPwowIwIwIFtKOFGFGFGMBFtMCFGFGMDMEFGMFFvMGMHMIMJMJMKImIGImMkMlMmMmMLMmMmMnMaMaMaMaMaMaMaMMMaMaMaMaMaMbMaMnMoMoMNMoMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFtMOMPMQMRMSFtMTMUMVMWMXHrKkFtFtFtFtFtFtFtImIGImMkMlMmMmMmMmMmMnMaMaMaMaMaMaMYMZMYMaMaMaMaMbMaMnMoMoMoMoMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFtFtFtFtFtFtFtFtFtFtFtFtFtFtFtaPaPaPaPaPaPImIGImMkMlMmMzMmMzMmMnMaMaMaMaMaMaNaNbNcMaMaMaMaMbMaMnMoMAMoMAMoMlMpImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPImIGImIGMlMmMmMmMmMmMnMaMaMaMaMaMaMaNdMaMaMaMaMaMbMaMnMoMoMoMoMoMlIGImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPImIGImNeImNfNfNfNfNfImLZMaMaMaMaMaMaNdMaMaMaMaMaMbLZImNfNfNfNfNfImNeImIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwJwIwIwIwIwIwIwIwIwIwIwIwIwIwIwJwoaPaPaPaPaPaPImIGIGIGImNgNgNgNgNgImLKLKLKLKLKLKNhNiNhLKLKLKLKLLLKImNjNjNjNjNjImIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnwowowowownwnwnwnwoNkNkwowoaPaPaPaPaPaPImImImIGImImImImImImImNlNmNmNmNmNmNnNoNlNmNmNmNmNpNlImImImImImImImIGImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowpwpwoaPaPaPaPaPaPaPaPaPImIGIGIGIGIGIGIGImNlNlNqNlNqNlNlNrNsNlNqNlNqNtNlImIGIGIGIGIGIGIGImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPImImImImImImImIGNuNlNlNlNvNvNvNlNlNlNvNvNvNvNvNlNuIGImImImImImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPImImImNwNwNwNxNyNzNANlNBNCNDNENFNGNHImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNININININININININININININININININININININIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPImImImImImImImImImImImImImImImImImaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNKNJNJNJNLNLNLNJNJNLNLNLNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINMNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNNNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNJNJNJNJNJNJNJNJNONJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNJNJNJNJNJNJNJNJNMNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNPNPNPNPNPNPNPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNQNONJNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNPNPNPNPNPNPNPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNRNRNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNPNPNPNPNPNPNPNPNPaPNSNTNTNTNTNTNTNTNTNTNTNTNTNUwnwIwIwnNSNVNVNVNVNVNVNVNVNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNRNWNXNRNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNYNVNVNVNVNZNTNTNTNZNTNTNTNZOaNPNPNPNPNPNPNPNPNPOaObOcOdOdOdOdOdOdOdOdOdOdOdObwowpwpwoObOeOfOgOhOhOiOjOkOlNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNROmOnNRNJNJNQNJOoNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOpOqOcOrOsObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOdOdOdOdOdOdOdOdOdOdOdOdOwOxOyOyOxOzOAOAOAOBOCODOAOAOEObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNRNRNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOdOdOdOdOdOdOdOdOdOdOdOdObOGOHOHOGObOIOJOAOAOAOAOAOAOKObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNONJNJNJNJNJNJNJNJNJNJNJNJNJNMNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOdOdOdOdOdOdOdOdOdOdOdOdObOHOLOLOHObOAOAOAOMONOOOAOAOPOxNVNVNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNQNONJNJNJNJNJNJNJNJNJNJNJNJNONJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaObOcOdOdOdOdOdOdOdOdOdOdOdObOHOLOLOHObOQOROAOSOTOUOAOAOAOAOAOVObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJNJNJNJNJOWNJOXNJOXNJOYNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOZOqOcOcOcObOtOtOtObOuOuOuObOaOvOvOvOvOvOvOvOvOvOaOwNVNVNVNVOxPaPaOxNVNVNVNVOzOHOLOLOHObPbOAOAOAOAOAOAOAOAOAOAOVObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNINJNJNJPcNJNJNJNJNJNJNJNJNJNJNJNJNJNJNJNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNYNVNVOxPdOxPeOxPfOxPeOxPgOxPeOxOaOxPeOxPhOxPeOxOaOxOzPiOHOHOHOHPjOHOHOHOHOHOGObOHOLOLOHObOQOROAOAPkPkPlPmPmPnOxNVPoNVNUaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNIPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpPpNIaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOGOHOHOHOHOHOHPrOHOHOHPsOHOHOHOHOHOHOHPtOHOHPuPvPwOxOHOLOLOLOLOLOLOLOLOLOLOHOxOHOLOLOHOxPxPyPzPzPxPAPyOxNVNVOzPBOLPCPDaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPEPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPFPEaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOHOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOHPGOHOLPHPHPHPHPHPHPHPHOLOHPGOHOLOLOHPGOHOHOHOHOHOHOHOHOHOHPIPJPKPLPMaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOHOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLPPOLOLPQPQPQPQPQPQPQPQOLOLPPOLOLOLOLPPOLOLOLOLOLOLOLOLOLOHPROHOLPSPMaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPqOHOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOLOHPGOHOLPJPJPJPJPJPJPJPJOLOHPGOHOLOLOHPGOHOHOHOHOHOHOHOHOHOHPIPHPKPTPMaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPPqOGOHOHOHOHOHOHPUOHOHOHPVOHOHOHPWOHOHOHPXOHOHOHOHOGOxOHOLOLOLOLOLOLOLOLOLOLOHOxOHOLOLOHOxPxPyPYPxPyNZPxPyPPPPOzPZOLQaQbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRaRaRaRaRaRaRaRaRaRaRQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcQcaRaRaRaRaRaRaRmdaPaPaPaPaPaPaPaPaPaPQdNVNVOxPdOxNZOxQeOxNZOxQfOxNZOxQgOxNZOxQhOxNZOxQiOxOzOHOHOHOHOHQjOHOHOHOHOHOGObOHOLOLOHObQkQlQmQnQoObQpOLOLOLOxNVNZNVQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjmjmjmjmjmjmjmjQrQrQrQrQrQcQsQtQuQcQrQrQrQrQrQrQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOpOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLOwNVNVNVNVOxQAQAOxNVNVNVNVOzOHOLOLOHObQBQmQmQmQBObQCOLOLOLOLQDObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjmjmjmjmjmjmjmjQrQrQrQrQrQcQEQtQtQcQrQrQrQrQrQrQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLObQFQFQFQFQFQFQFQFQFQFQFOcObOHOLOLOHObQGQHQmQmQmObQpOLOLQpOLQpObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjmjmjmjQrQrQrQcQcQcQcQrQcQcQcQcQIQcQcQcQcQcQcQcQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLObQFQFQFQFQFQFQFQFQFQFQFQFObQJPHPHQJObPxPyQKPxPyObQCOLQpOxNVNVQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQrQrQrQLQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQcQrQrQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOFOqOcOcOcObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObOLOLOLObQFQFQFQFQFQFQFQFQFQFQFQFObQMQMQMQMObQNQmQmQmQNObQpOLQCObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQrQtQLQLQLQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQtQcQOQPQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOZOqOcQQQRObQvQvQvQwQxQxQxQwQyQyQyQwQzQzQzObQSQTQUObQFQFQFQFQFQFQFQFQFQFQFQFOwOxPxPyOxOzQmQmQmQmQmObQCOLQpObaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQrQLQLQLQrQrQrQcQcQcQcQIQcQcQcQcQIQcQtQtQtQIQVQWQrQrQrmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPQdNVNVNVNVPeNTNTNTPeNTNTNTPeNTNTNTPeNTNTNTPeNVNVNVOzQFQFQFQFQFQFQFQFQFQFQFOcObaPaPaPaPObQNQmQNQmQNObQpOLQXQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQLQLQrQrQrQrQrQrQrQrQcQtQtQEQcQYQtQcQtQtQtQIQVQZQrQrQcmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPQdNTNTNTNTNTNTNTNTNTNTNTNTQqaPaPaPaPQdNVNVNVNVNVPeNVNVQqaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQLQrQrQrmjmjQrQcQcQcQcRaQtQsQcRaQsQcQtQtQtQcQVQVQVRbQcmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjmjmjQrQLQLQrmjmjmjQrRcRdRdQcQcQcQcQcQcQcQcQtQtQtQcQVQVQVReQcmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPOPNaR -aRmjQrQLQLQLQLQrQrmjmjQrRfRgRfQIQtQtQtQtQtQtQtQtQtQtQcRhRiRjQcQcmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNPNaR -aRmjRkQLQLQLQLQLQrmjmjQcRlRfRfQIQtQtQtQtQtQtQtQtQtQtQcQrQrQrQrQrmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR -aRmjRmRnRoQLRpQLQLmjmjQcRlRqQcQcQcQcQcQcQcQcQcQcQIQcQcQcQcQcQcQcQcQcQcmjmjaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjRrQLRoQLRoQLQLmjmjQrQrQrQcQtQtQtQtQtQtQcRsRtRtRtRuQcQtQtQtQtQtQtQcmjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQLRoQLRvQLQLmjmjaPaPmjQcQtQsQtQtQtQtQcRtRtRwRtRtQcQtQtQtQtQsQtQcmjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrRxQLQLQLRyQLmjmjaPaPmjQcQtQtQtQtQtQtQIRtRtRzRtRtQIQtQtQtQtQtQtQcmjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQrQLQLQLQLQrmjmjncaPaPQcQtQtQcRARBRCQcRtRDRERtRFQcRARBRCQcQtQtQcaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQrQrQrRGRHQrmjndncaPaPQcQtQtQcaPaPaPQcQcRARBRCQcQcaPaPaPQcQtQtQcaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjQrQrQrQrQrQrmjaPaPaPaPaPRIRJRJRKaPaPaPaPaPaPaPaPaPaPaPaPaPRIRJRJRKaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjmjmjmjmjaPaPaPaPRIRLRMRKaPaPaPaPaPaPaPaPaPaPaPaPaPRIRLRMRKaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjmjmjmjaPaPaPaPaPRIRJRJRKaPaPaPaPaPaPaPaPaPaPaPaPaPRIRJRJRKaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjmjmjmjaPaPaPaPaPRNRORPRQaPaPaPRNaPaPaPaPaPRQaPaPaPRNRRRSRQaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTRURURTaPaPaPRTRVRWRWRWRXRTaPaPaPRTRURURTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTRYRZRTaPaPRNRTRTSaSbScSdRTRQaPaPRTSeSfRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTSgShRTaPaPRTRTSiSjSkSjSlRTRTaPaPRTSmSnRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTSoRTRTRTRTRTSpSqSqSqSqSqSrRTRTRTRTRTSsRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPRTStSuSvSwSxRTSySqSqSqSqSqSyRTSzSASBSCSDRTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjaPaPaPaPaPaPaPaPaPaPaPRTSERURURUSFRTRVRWRXSGRVRWRXRTSHRURUSISERTaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjaPaPaPaPaPaPaPaPaPaPaPSJSERURURURUSGSqSqSqSqSqSqSqSGRURUSKRUSESJaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPSLSMRUSNSORURTSPSQSqSqSqSqSRRTRUSSRUSTSESLaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPSUSMRURURTSVRTRTRTSWSXSYRTRTRTSVRTSZTaTbSUaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPRNRTTcTdTdRTTeTfTeSJTgThTiSJTjTkTlRTTmTnToRTRQaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTpTpTpTpTpTpTpTpTpTpTpTpTqTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPmjmjaPaPaPTrRTTsTsRTRTTeTeTeSLTgTtTiSLTlTlTuRTRTTsTsRTTvaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTwTxTyTzTATBTpTCTDTETpTFTGTGTHTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPmjmjaPaPaPaPTrTITITvRTTJTKTeSUTLSqTLSUTlTlTMRTTrTITITvaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyTyTNTOTPTOTQTGTGTGTRTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPRTTeTeTeRTRTSGRTRTTSTlTTRTaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTUTUTyTyTyTVTpTOTOTWTpTpTpTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPRTTeTeTXRTTYSqTZRTTlTlUaRTaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyUbTpUcUcUdTpUeUfUgUhTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPRTRTUiTeRTUjSqUkRTUlUmRTRTaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpUnUnTyTyTyUoTpUcUcUcUpUcUcUcUqTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPTrRTRTRTRTUrUsUtRTRTRTRTTvaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyUuTpUvUwUxTpUyUzUAUhTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPTrRTTsTsTsTsTsRTTvaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyTVTpTpTpTpTpTpTpTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPTrTITITITITITvaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBUCUDUETyUFUGUHUFUIUJUKUKUJTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBULUMUETyUNUNUNUNUOTOTOTOTOTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBUPUQUETyUNUNUNUNUNUNUNUNUNTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyUBURUSUETyUNUNUNUNUNUNUTUUUVTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTyTyTyTyTyTyUNUNUNUNUNUNUNUNUNTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjmjmjaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpUWUXUXUXUXUXUXUXUXUXUXUXUXUXUYTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjaPaPaPaPaPaPaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpUZVaVaUIVbVcVbUIVdVdVeUIVfVgTGTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -aRmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpVaVhUZUOVbVbVbUOViVjVdUOVkTGVlTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP -mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTpTpTpTpTpTpTpTpTpTpTpTpTpTpTpTpTpaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwnaPaPBABBBCBDAVBEBFBEBEBEBFBGBHwnwnwnwIwIwIxwBaykykykykykykykBrBsBIykBrBJBKzyzPzPzPAjAjAjAjAjzPzPzPzPzPzPzyBLBMwrBNBOsoBPBQBRByByBSBysowqBTwqsoBUBUBUBVBWBWBWBXBYBUBUBywKwrwrsoaPaPaPBzBzBZBZBZBZBZBZCaCaCaBZBZBZBZCaCaCaCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPBAAACcBAAAAAACADAEAACdCendndwowIwIwIxwBaykykzJzJzJzJzJykykykykykzJCfzyCgzPzPzPzPzPzPzPzPzPzPzPzPCgzywrwrwrwrwrsowrwrwrChBUBUCisowrwrwrsoBUBUBUBVCjCjCjBXBUBUBUBywrwrwrsoaPaPaPBzBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPCkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwowowowowoxcndndndndndndndndndndndaPwnwIwIwIxwBaykykClClClClClykykykykykykAozyAszPArAsAsAtzPzPArAsAsAtzPAszywrwrwrwrwrsowrwrwrChCmCnCosowrwrwrsoBUBUBUCpCqCrCsCtBUBUBUBywrwrwrsoaPaPaPBzBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwondaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIxwBaykykzgykykykzgykBbCuAMykykAozyCvzPArBvBfAtzPzPArBvBfAtzPCvzywrCwCxCyCzsowqCAwqByCBCCBysoCDCECFsoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzBZBZBZCGBzBzBzCbCbCbBzCHCHBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCICICIwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCICICIwowoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowoCICICIxwBaykBbAMykykBbCuAMAoxwxwCJCJxwzyCgzPzPzPzPzPzPzPzPzPzPzPzPCgzyCKsososososoBUBUBUByChChBysososososoBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCLBZBZBzBzCMCNCOCNCOCPCQCQCRCOCNCOCNCSCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPmj +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICUwIwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowICVCWCXwIwowoaPaPaPaPaPaPaPaPaPaPaPaPaPwowowIwICWCXxwBIykAoxwBuBuxwxwBaAoxwCYykykCZzyAszPArAsAsAtzPzPArAsAsAtzPAszysosoBUBUBUBUBUBUBUBUBUBUBUByBysosoByBUBUBUBUBUBUBUBUBUBUBUBywrwrwrsoaPaPaPBzCLBZBZBzCMDaDbDbDbDbDcDdDdDeDbDbDbDcDfCSDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIDhwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDiwIwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIwIDjCXAlykykAoxwAMykAoxwBaAoxwDkykykCZzyCvzPArBvBfAtzPzPArBvBfAtzPCvzysoDlBUBUBUBUBUBUBUBUBUBUBUDlByBysoByDmBUBUBUBUBUBUBUBUBUDmBywKwrwrBzBzBzBzBzCLBZBZCbDnDoDdDdDdDdDdDdDdDdDdDdDdDdDpDnDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIDjwIwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDjCWDrwIwIwIwowowowownwnwnwnwnwowowowowIwIwIwICWwIAlykykAoxwBaykDsxwBaAoxwDtykykCZzyzyDuDuDuDuzyDvDvzyDuDuDuDuzyzyBUBUBUBUDwDxDyDyDyDzDABUBUBUBUByByByByByByByBUBUBUByByByByBysowrwrDBBZBZBZBzCLBZBZCbDCDoDdDdDdDdDdDdDdDdDdDdDdDdDpDCDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIxwDIykBrxMBaDJDKxMBIBrxwDLCuCuDMxwDNDODPDODPChBUBUChDODQDODODRByBUBUBUDSDTDUDUDUDUDUDVDWBUBUBUByDODPDODNDPChBUBUBUChDPDODODXsowrwrBzDYBZDZCbCLBZBZBzDfCSEaEaEaEaEbDdDdEcEaEaEaEbCMDaDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIxwxwAlAlxMEeEfxMxMAlAlxwxwxwxwxwxwChChChChChChBUBUChChChChChChByBUBUEgEhDUDUDUDUDUDUDUEiDABUBUByChChChChChChBUBUBUChChChChChByEjEjBzBZEkElCbCLBZBZBzBzDfCNCOCNCOCPCQCQCRCOCNCOCNDaCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEmEnwnwIwIwIwIEoEpEqEoEpErEsEtEpEqEoEpEqwIwIwnEuEmEnwnwIwIEoEpEqEoEpErEsEtEpEqEoEpEqwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUDlByDlBUBUBUBUBUBUBUBUBUBUBUBUDlByBUBUEwDUDUDUExEyEzDUDUDUEwBUBUByDmBUBUBUBUBUBUBUBUBUBUBUBUDmByBUBUCbEAEBCbBzBZBZBZCGBzBzBzCbCbCbBzECECBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEDyhEEwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIEFEGEDyhEHwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUEIBUBUEJDUDUExEKEKEKEzDUDUELBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEMBZBZBZENBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPEOmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdCkmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmd +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnyhyhEPwIwIwIwIwIwIwIwIwIwIEQwIwIwIwIwIwIwIwIERESwoyhEPwIwIwIwIwIwIwIwIEQwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIChBUBUBUByBUBUByBUBUBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUEIBUBUEJDUDUETEKEUEKEVDUDUELBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUCbBZBZBZCbBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnEWyhEXwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIEYyhEWyhEXwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUEIBUBUEJDUDUEZEKEKEKFaDUDUELBUBUEIBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUBUEMBZBZBZENBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnFbFcwnwIwIwIwIFdFeFfFdFeFgFhFiFeFfFdFeFfwIwIwnFjFbFkwnwIwIFdFeFfFdFeFgFhFiFeFfFdFeFfwIwIwIwIwIwIwIwIwIwIBUBUBUBUEvBUBUEvBUBUBUDlByDlBUBUBUBUBUBUBUBUBUBUBUBUDlByBUBUFlDUDUDUEZFmFnDUDUDUFoBUBUByDmBUBUBUBUBUBUBUBUBUBUBUBUDmBzFpFpBzBzBzBzBzBZBZBZCGBzBzBzCbCbCbBzCHCHBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFEdDHyhDEDDyhDEwIwIwIwIwIwIFqFqFrFrFsFtFtFtFqFrFrFqFqFtFtFqFqChChChChChChBUBUChChChChChChByBUBUFuFvDUDUDUDUDUDUDUFwFxBUBUByChChChChChChBUBUChChChChChChBzFyFyFzFAFBFCCbCLBZBZBzBzCMCNCOCNCOCPCQCQCRCOCNCOCNCSCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIwIwIwIDDyhDEDDyhDFDGDHyhDEDDyhDEwIwIwIwIwIwIFqFDFEFEFFFGFHFHFIFEFJFqFKFLFMFNFqDQDNDODPDPChBUBUChDXFODPDODOByBUBUBUFPFQDUDUDUDUDUFwDTBUBUBUByFRDODNDODPChBUBUChDODPDOFSFOBzFyFyFyFyFyFyCbCLBZBZBzCMDaDbDbDbDbDcDdDdDeDbDbDbDcDfCSDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwIFTFTwIwIwIwowowowownwnwnwnwnwowowowowIwIwIDhCWDrwIwIwIwowowowownwnwnwnwnwowowowowIwIwICVCWwIFrFEFEFEFEFEFEFEFEFEFUFqFVFEFWFXFqFYFZFZFZFZFYGaGaFYFZFZFZFZFYFYBUBUBUBUFuDxGbGbGbDzFxBUBUBUBUGcGcGcGcGcGcGcGdGdGcGcGcGcGcGcBzFyFyFyFyFyFyBzCLBZBZCbDnDoDdDdDdDdDdDdDdDdDdDdDdDdDpDnDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowICWFTwIwHwowoaPaPaPaPaPaPaPaPaPaPaPwowowHwIDjCWCXwIwHwowoaPaPGeGfGgGgGgGhGiaPaPwowowHwIDhCWCXFrFEFEGjGkFEFEGjGkFEFUFqGlFEFEGmFqGnGoGoGoGoGoGoGoGoGoGoGoGoGnFYByDlBUBUBUBUBUBUBUBUBUBUBUDlByGcGpGqGqGqGqGrGrGrGrGqGqGqGqGpBzFyFyGsGtFyGsCbCLBZBZCbDCDoDdDdDdDdDdDdDdDdDdDdDdDdDpDCDgDgDgDgDgDgDgDgDgBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIDrwIwowondaPaPaPaPaPaPaPaPaPaPaPndwowowIDjCWwIwIwowondaPGeGuGvGwGxGyGzGAGiaPndwowowIwICWwIFqGBFEGjGkFEFEGjGkFEFUFqGCFEFWFXFqGoGoGoGoGoGoGoGoGoGoGoGoGoGoFYByByBUBUBUBUBUBUBUBUBUBUBUByByGcGrGrGrGrGrGrGrGrGrGrGrGrGrGrBzFyFyGsGtFyGsCbCLBZBZBzDfCSEaEaEaEaEbDdDdEcEaEaEaEbCMDaDqDqDqDqDqDqDqDqDqBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwoCICICIwowoaPndaPaPaPaPaPaPaPaPaPaPaPndaPwowoCICICIwowoaPndGeGuGDGEGFGEGFGEGGGAGindaPwowoCICICIFqGHFEGjGkFEFEGjGkFEFUFqGIGJGKGLFqGoGoGMGNGOGPGoGoGMGQGRGPGoGoFYaPByByByByByBUByBUByByByByByaPGcGrGSGSGSGSGrGrGrGrGSGSGSGSGrBzFyFyGsGtFyGsBzCLBZBZBzBzDfCNCOCNCOCPCQCQCRCOCNCOCNDaCTCTCTCTCTCTCTCTCTCTBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndGTGFGFGFGUGVGWGFGFGFGTndaPaPwnwIwIwIFqGHFEFEFEFEFEFEFEFEFUFqFqFVGXGYFqGoGoGMGZHaGPGoGoGMHbHcGPGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcGrGrGrGrGrGrGrGrGrGrGrGrGrGrBzFyFyGsGtFyGsCbBZBZBZCGBzBzBzCbCbCbBzECECBzCbCbCbBzBzBzBzCbCbCbBzBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHgHhHiHjHkHlHkHmHnHoHgndaPaPwnwIwIwIFqGHFEFEFJHpHpHpHpHpHqFqHrFIFFHsFqGoGoGoGoGoGoGoGoGoGoGoGoGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcGpGqGqGqGqGrGrGrGrGqGqGqGqGpBzFyFyGsGtFyGsCbBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnaPaPndaPaPaPaPaPaPaPaPaPaPaPndaPaPwnwIwIwIwnaPaPndHgHtGTHuHvHwHvHxGTHtHgndaPaPwnwIwIwIFqFtHyFEFqHzHAHBHCHAHDFqGHFEFEHEFqGoGoGMHFHGGPGoGoGMHHHIGPGoGoFYaPaPByHJBUBUBUDUBUBUBUHKByaPaPGcGcGcGcGcGcGcGdGdGcGcGcGcGcGcBzFyFyGsGtFyGsBzBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZBZCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndaPaPaPaPaPaPaPaPaPaPaPndndndwowIwIwIwondndndHgGFHnHgHLHMHNHgHiGFHgndndndwowIwIwIFqGHFEFEHOFIHPFEFEHPFFHQFIFEFEHRFqGoGoGMHSHTGPGoGoGMHUHVGPGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcHWHXHXHXHXHWHWHWHWHYHZHZHZIaBzFyFyGsGtFyGsBzBzBZBZBZBZBZBZIbIbIbBZBZBZBZIbIbIbCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPGTGFHnIcIdIeIfIcHiGFGTaPaPaPwowIwIwIFqGHFEFEFEFEFEFEFEFEFEFEFEFEFEIgFqGoGoGoGoGoGoGoGoGoGoGoGoGoGoFYaPaPByHdHeBUBUDUBUBUHeHfByaPaPGcHWHWHWHWHWHWHWHWHWHWHWHWHWHWBzFyFyFyFyFyFyBzBzBzCbCbCbBzCbCbCbBzCbCbCbBzCbCbCbBzaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPGeGuHhHnIhIdIiIfIhHiHoGAGiaPaPwowIwIwIFqGHFEFEFEFEFEFEFEFEFEFEFEFEFEHRFqGoGoGoGoGoGoIjIjIjIjIjIjIjIjFYaPaPIkIkIkIlIlImIlIlIkIkIkaPaPGcInGcIoGcIpGcHWHWGcIqGcIrGcIsBzFyFyFyFyFyFyCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnItIuGFHnIvGTIwGTIxHiGFIuItwnwnwnwIwIwIFqGHFEFJHpHpHpGBFJHpHpGBFEFEFEIgFqIyIzIzGoGoIAIBIBIBICIBIBIBIBFYaPaPIkIDIEIlIEIEIEIlIEIDIkaPaPGcIFGcIFGcIFGcHWHWGcIFGcIFGcIFBzFyFyIGIGIGIGCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIIGFGFGFIJIKGFGFIJGFGFGFIIIHyhIHwIwIwIFqFtFEFUFtFtFtGHFUILGYGHFJIMINIOFqIPIQIRGoGoIAISITITITITITITITFYaPaPIkIEIUIVIEIEIEIVIWIEIkaPaPGcGcGcGcGcGcGcHWHWGcGcGcGcGcGcBzFyFyIXIXIXIXCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIYGFGFGFGFGFGFGFGFGFGFGFIYIHyhIHwIwIwIFqIZFEFFJaJbJcFIFFJdFqJeJfFqFqFqFqJgJhJiGoGoIAITITITITITITITITFYaPaPIkIlIEIlIEIEIEIlIEIlIkaPaPGcJjHWJjHWJjHYHWHWJkJjHWJjHWJjBzFyFyFyFyFyFyCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnItJlGFHnIcHiGFHnIcHiGFJmItwnwnwnwIwIwIFqIZFEFEFEFEFEFEFEJnFqJeJoJpJpJqFqJrJsJtGoGoITITITJuJvJwJxITITFYaPaPIkIEIEIEIEIEIEIEIEIEIkaPaPGcHWHWHWHWHWHWHWHWHWHWHWHWHWHWBzJyFyFyFyFyCbCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIcHiGFHnJzHiGFHnJzHiGFHnIcaPaPwowIwIwIFqIZFEFEFEJAJBFEFEJCFqJeFEJDJEJFFqFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYIkIkIkIEIEIEIEIEIEIEIEIEIkIkIkGcJGHWJGHWJGHYHWHWJkJGHWJGHWJGBzCbCbCbCbCbCbaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndndndndndndndndndndndndndndwowIwIJHwoaPaPJzHiGFHnJzHiGVHnJzHiGFHnJzaPaPwowIwIwIFqJIFEFEFEFEFEFEFEJJFqJeFEFEJKJFFqJLJMJMJMJNIkIEIEIEIEIEIEIEIEIEIEIEIkIkJOIkIkIEIkIkJOIkIkIEIEIkIkIkGcGcGcGcGcGcGcGcGcGcGcGcGcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPIhHiGFHnJzHiGFHnJzHiGFHnIhaPaPwowIwIwIFqJPFEFEFEJQJRFEFEJSFqJTJUFEJVJWFqJXFEFEFEJYIkIEIkIkIkIkJZIkIkIkIEIEIEIEIEIEIkIEIkIEIEIEIEIEIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnItKaGFHnIhHiGFHnIhHiGFKbItwnwnwnwIwIwIFqGHFEFEFEFJHpGBFEKcFqFqFqKdFqFqFqJXFEFEFEJYIkIEIkKeKfKfKfKfKgIkIkIkIkIkIkIkIkKhIkIkIkIkIkIkIkIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIIGFGFGFGFGFGFGFGFGFGFGFIIIHyhIHwIwIwIFqGHFEFJHpKiFqFqKjFqFqKkKlFEJoKmFqKlFEFEFEKnIkIEIkKeKfKfKfKfKgIkKoKpKqKpKrKsKsKsKsKsKrKsKrKsKtIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIygyhyiaPaPaPaPaPaPaPaPaPaPaPaPaPyiyhygwIwIwIIHyhIHIYGFGFKuGFGFGFGFGFKuGFGFKvIHyhIHwIwIwIFqFqKwFqILFqFqKxFEKyFqJeFEFEFEFEKzFEFEKAFEKBIkIEIkKCKfKfKfKfKDIkKsKEKEKEKEKEKsKsKsKEKEKEKEKFKGIkIEIkIkIkIkIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwIwIwIwnwnwnKHGTKIKJGfGhKKGfGhKJKIGTKLwnwnwnwIwIwIFqKMFEKNKOKPFqKQFEKRFqKSKTKUKVKWFqKXKYKYKYKZIkIEIkKCLaLbLbKfKfLcKsKsLdLeLdKsKsKsKsKsLdLeLdLfKsIkIEIEIEIEIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwoaPaPaPndndndndndndndndndndndaPaPaPwowIwIwIwoaPaPItLgLhItLiLjLkLlLmItLnLoItaPaPwowpwpwpFqKMFELpLqLrFqLsFELtFqFqFqFqFqFqFqFqFqFqFqIkIkIEIkIkIkIkIkIkIkIkKsKEKEKEKEKEKsKsKsKEKEKEKELuKsIkIkIkIkIkIkIkIEIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwIwondndndndaPaPaPaPaPaPaPaPaPndndndndwowIwIwIwondndItLvLvItLwLxLkLkLyItLvLvItndndwowIwIwIFqFqLzFqFtFtFqFqKjFqFqLALBLCFtLDLEJaLFLFLGIkIEIEIkIkLHLHLHLHLHIkLILILILILILILILILILILILILILJLIIkLKLKLKLKLKIkIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPxcwnwnwnxcaPaPItLLLMItLNLkLOLPLQItLRLSItaPaPxcwIwIwIFqLTFEKNLULVFqGHFEFFJaFIFEFFFtFIFEFEFEFEFUIkIEIkIkIkLWLWLWLWLWIkLXLYLYLYLYLYLYLYLYLYLYLYLYLZLXIkLWLWLWLWLWIkIkIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwGwFwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwFwFwFwnaPaPKHMaMaItMbMcLkMdMeItMaMaKLaPaPwnwIwIwIFqMfFEFEFEMgFqGHFEFEFJHpFEFEMhFEFEFEFEFEFUIkIEIkMiMjMkMkMkMkMkMlLYLYLYLYLYLYLYLYLYLYLYLYLYLZLYMlMmMmMmMmMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnaPaPMoMpMpMqKJMaMaMaKJMqMpMpMraPaPwnwIwIwIFqMsFEFEKAMtFqMuFEFEFUMvFEMwFtGBFEFWFEFEFUIkIEIkMiMjMkMxMkMxMkMlLYLYLYLYLYLYLYLYLYLYLYLYLYLZLYMlMmMyMmMyMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPMoMpMpMpMraPaPaPaPaPaPwowIwIwIFqKMFEFEFEMzFqMAFEFEMBMCFEMDFtMEMFMGMHMHMIIkIEIkMiMjMkMkMJMkMkMlLYLYLYLYLYLYLYMKLYLYLYLYLYLZLYMlMmMmMLMmMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFqMMMNMOMPMQFqMRMSMTMUMVHpKiFqFqFqFqFqFqFqIkIEIkMiMjMkMkMkMkMkMlLYLYLYLYLYLYMWMXMWLYLYLYLYLZLYMlMmMmMmMmMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIFqFqFqFqFqFqFqFqFqFqFqFqFqFqFqaPaPaPaPaPaPIkIEIkMiMjMkMxMkMxMkMlLYLYLYLYLYLYMYMZNaLYLYLYLYLZLYMlMmMyMmMyMmMjMnIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPIkIEIkIEMjMkMkMkMkMkMlLYLYLYLYLYLYLYNbLYLYLYLYLYLZLYMlMmMmMmMmMmMjIEIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwIwoaPaPaPaPaPaPIkIEIkNcIkNdNdNdNdNdIkLXLYLYLYLYLYLYNbLYLYLYLYLYLZLXIkNdNdNdNdNdIkNcIkIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwJwIwIwIwIwIwIwIwIwIwIwIwIwIwIwJwoaPaPaPaPaPaPIkIEIEIEIkNeNeNeNeNeIkLILILILILILINfNgNfLILILILILJLIIkNhNhNhNhNhIkIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwnwnwnwnwowowowownwnwnwnwoNiNiwowoaPaPaPaPaPaPIkIkIkIEIkIkIkIkIkIkIkNjNkNkNkNkNkNlNmNjNkNkNkNkNnNjIkIkIkIkIkIkIkIEIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowpwpwoaPaPaPaPaPaPaPaPaPIkIEIEIEIEIEIEIEIkNjNjNoNjNoNjNjNpNqNjNoNjNoNrNjIkIEIEIEIEIEIEIEIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPIkIkIkIkIkIkIkIENsNjNjNjNtNtNtNjNjNjNtNtNtNtNtNjNsIEIkIkIkIkIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPIkIkIkNuNuNuNvNwNxNyNjNzNANBNCNDNENFIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPIkIkIkIkIkIkIkIkIkIkIkIkIkIkIkIkIkaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNINHNHNHNJNJNJNHNHNJNJNJNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNKNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNLNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwowIwIwoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNHNHNHNHNHNHNHNHNMNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNHNHNHNHNHNHNHNHNKNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNNNNNNNNNNNNNNaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNONMNHNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNNNNNNNNNNNNNNaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPwnwIwIwnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNPNPNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNNNNNNNNNNNNNNNNNNaPNQNRNRNRNRNRNRNRNRNRNRNRNRNSwnwIwIwnNQNTNTNTNTNTNTNTNTNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNPNUNVNPNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNWNTNTNTNTNXNRNRNRNXNRNRNRNXNYNNNNNNNNNNNNNNNNNNNYNZOaObObObObObObObObObObObNZwowpwpwoNZOcOdOeOfOfOgOhOiOjNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNPOkOlNPNHNHNONHOmNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOnOoOaOpOqNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZObObObObObObObObObObObObOuOvOwOwOvOxOyOyOyOzOAOBOyOyOCNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNPNPNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZObObObObObObObObObObObObNZOEOFOFOENZOGOHOyOyOyOyOyOyOINZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNMNHNHNHNHNHNHNHNHNHNHNHNHNHNKNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZObObObObObObObObObObObObNZOFOJOJOFNZOyOyOyOKOLOMOyOyONOvNTNTNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNONMNHNHNHNHNHNHNHNHNHNHNHNHNMNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYNZOaObObObObObObObObObObObNZOFOJOJOFNZOOOPOyOQOROSOyOyOyOyOyOTNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHNHNHNHNHOUNHOVNHOVNHOWNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPOXOoOaOaOaNZOrOrOrNZOsOsOsNZNYOtOtOtOtOtOtOtOtOtNYOuNTNTNTNTOvOYOYOvNTNTNTNTOxOFOJOJOFNZOZOyOyOyOyOyOyOyOyOyOyOTNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGNHNHNHPaNHNHNHNHNHNHNHNHNHNHNHNHNHNHNHNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPNWNTNTOvPbOvPcOvPdOvPcOvPeOvPcOvNYOvPcOvPfOvPcOvNYOvOxPgOFOFOFOFPhOFOFOFOFOFOENZOFOJOJOFNZOOOPOyOyPiPiPjPkPkPlOvNTPmNTNSaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRNGPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnPnNGaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOEOFOFOFOFOFOFPpOFOFOFPqOFOFOFOFOFOFOFPrOFOFPsPtPuOvOFOJOJOJOJOJOJOJOJOJOJOFOvOFOJOJOFOvPvPwPxPxPvPyPwOvNTNTOxPzOJPAPBaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPCPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPDPCaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOFOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOFPEOFOJPFPFPFPFPFPFPFPFOJOFPEOFOJOJOFPEOFOFOFOFOFOFOFOFOFOFPGPHPIPJPKaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOFOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJPNOJOJPOPOPOPOPOPOPOPOOJOJPNOJOJOJOJPNOJOJOJOJOJOJOJOJOJOFPPOFOJPQPKaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPPoOFOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOJOFPEOFOJPHPHPHPHPHPHPHPHOJOFPEOFOJOJOFPEOFOFOFOFOFOFOFOFOFOFPGPFPIPRPKaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPPoOEOFOFOFOFOFOFPSOFOFOFPTOFOFOFPUOFOFOFPVOFOFOFOFOEOvOFOJOJOJOJOJOJOJOJOJOJOFOvOFOJOJOFOvPvPwPWPvPwNXPvPwPNPNOxPXOJPYPZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRaRaRaRaRaRaRaRaRaRaRQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaQaaRaRaRaRaRaRaRmdaPaPaPaPaPaPaPaPaPaPQbNTNTOvPbOvNXOvQcOvNXOvQdOvNXOvQeOvNXOvQfOvNXOvQgOvOxOFOFOFOFOFQhOFOFOFOFOFOENZOFOJOJOFNZQiQjQkQlQmNZQnOJOJOJOvNTNXNTQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjmjmjmjmjmjmjmjQpQpQpQpQpQaQqQrQsQaQpQpQpQpQpQpQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOnOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJOuNTNTNTNTOvQyQyOvNTNTNTNTOxOFOJOJOFNZQzQkQkQkQzNZQAOJOJOJOJQBNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjmjmjmjmjmjmjmjQpQpQpQpQpQaQCQrQrQaQpQpQpQpQpQpQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJNZQDQDQDQDQDQDQDQDQDQDQDOaNZOFOJOJOFNZQEQFQkQkQkNZQnOJOJQnOJQnNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjmjmjmjQpQpQpQaQaQaQaQpQaQaQaQaQGQaQaQaQaQaQaQaQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJNZQDQDQDQDQDQDQDQDQDQDQDQDNZQHPFPFQHNZPvPwQIPvPwNZQAOJQnOvNTNTQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQpQpQpQJQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQaQpQpQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPODOoOaOaOaNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZOJOJOJNZQDQDQDQDQDQDQDQDQDQDQDQDNZQKQKQKQKNZQLQkQkQkQLNZQnOJQANZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQpQrQJQJQJQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQrQaQMQNQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPOXOoOaQOQPNZQtQtQtQuQvQvQvQuQwQwQwQuQxQxQxNZQQQRQSNZQDQDQDQDQDQDQDQDQDQDQDQDOuOvPvPwOvOxQkQkQkQkQkNZQAOJQnNZaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQpQJQJQJQpQpQpQaQaQaQaQGQaQaQaQaQGQaQrQrQrQGQTQUQpQpQpmjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPQbNTNTNTNTPcNRNRNRPcNRNRNRPcNRNRNRPcNRNRNRPcNTNTNTOxQDQDQDQDQDQDQDQDQDQDQDOaNZaPaPaPaPNZQLQkQLQkQLNZQnOJQVQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQJQJQpQpQpQpQpQpQpQpQaQrQrQCQaQWQrQaQrQrQrQGQTQXQpQpQamjmjaRmjmjmjmjmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPQbNRNRNRNRNRNRNRNRNRNRNRNRQoaPaPaPaPQbNTNTNTNTNTPcNTNTQoaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQJQpQpQpmjmjQpQaQaQaQaQYQrQqQaQYQqQaQrQrQrQaQTQTQTQZQamjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjmjmjQpQJQJQpmjmjmjQpRaRbRbQaQaQaQaQaQaQaQaQrQrQrQaQTQTQTRcQamjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPMPLaR +aRmjQpQJQJQJQJQpQpmjmjQpRdReRdQGQrQrQrQrQrQrQrQrQrQrQaRfRgRhQaQamjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLPLaR +aRmjRiQJQJQJQJQJQpmjmjQaRjRdRdQGQrQrQrQrQrQrQrQrQrQrQaQpQpQpQpQpmjmjaRmjmjmjaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaRaR +aRmjRkRlRmQJRnQJQJmjmjQaRjRoQaQaQaQaQaQaQaQaQaQaQGQaQaQaQaQaQaQaQaQaQamjmjaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjRpQJRmQJRmQJQJmjmjQpQpQpQaQrQrQrQrQrQrQaRqRrRrRrRsQaQrQrQrQrQrQrQamjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQJRmQJRtQJQJmjmjaPaPmjQaQrQqQrQrQrQrQaRrRrRuRrRrQaQrQrQrQrQqQrQamjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpRvQJQJQJRwQJmjmjaPaPmjQaQrQrQrQrQrQrQGRrRrRxRrRrQGQrQrQrQrQrQrQamjaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQpQJQJQJQJQpmjmjncaPaPQaQrQrQaRyRzRAQaRrRBRCRrRDQaRyRzRAQaQrQrQaaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQpQpQpRERFQpmjndncaPaPQaQrQrQaaPaPaPQaQaRyRzRAQaQaaPaPaPQaQrQrQaaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjQpQpQpQpQpQpmjaPaPaPaPaPRGRHRHRIaPaPaPaPaPaPaPaPaPaPaPaPaPRGRHRHRIaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjmjmjmjmjaPaPaPaPRGRJRKRIaPaPaPaPaPaPaPaPaPaPaPaPaPRGRJRKRIaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjmjmjmjaPaPaPaPaPRGRHRHRIaPaPaPaPaPaPaPaPaPaPaPaPaPRGRHRHRIaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjmjmjmjaPaPaPaPaPRLRMRNROaPaPaPRLaPaPaPaPaPROaPaPaPRLRPRQROaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRRSRSRRaPaPaPRRRTRURURURVRRaPaPaPRRRSRSRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRRWRXRRaPaPRLRRRRRYRZSaSbRRROaPaPRRScSdRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRSeSfRRaPaPRRRRSgShSiShSjRRRRaPaPRRSkSlRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRSmRRRRRRRRRRSnSoSoSoSoSoSpRRRRRRRRRRSqRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPRRSrSsStSuSvRRSwSoSoSoSoSoSwRRSxSySzSASBRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjaPaPaPaPaPaPaPaPaPaPaPRRSCRSRSRSSDRRRTRURVSERTRURVRRSFRSRSSGSCRRaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjaPaPaPaPaPaPaPaPaPaPaPSHSCRSRSRSRSSESoSoSoSoSoSoSoSERSRSSIRSSCSHaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPSJSKRSSLSMRSRRSNSOSoSoSoSoSPRRRSSQRSSRSCSJaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPSSSKRSRSRRSTRRRRRRSUSVSWRRRRRRSTRRSXSYSZSSaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPRLRRTaTbTbRRTcTdTcSHTeTfTgSHThTiTjRRTkTlTmRRROaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTnTnTnTnTnTnTnTnTnTnTnTnToTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPmjmjaPaPaPTpRRTqTqRRRRTcTcTcSJTeTrTgSJTjTjTsRRRRTqTqRRTtaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTuTvTwTxTyTzTnTATBTCTnTDTETETFTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPmjmjaPaPaPaPTpTGTGTtRRTHTITcSSTJSoTJSSTjTjTKRRTpTGTGTtaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTwTLTMTNTMTOTETETETPTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPRRTcTcTcRRRRSERRRRTQTjTRRRaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTSTSTwTwTwTTTnTMTMTUTnTnTnTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPRRTcTcTVRRTWSoTXRRTjTjTYRRaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTZTnUaUaUbTnUcUdUeUfTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPRRRRUgTcRRUhSoUiRRUjUkRRRRaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUlUlTwTwTwUmTnUaUaUaUnUaUaUaUoTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPTpRRRRRRRRUpUqUrRRRRRRRRTtaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwUsTnUtUuUvTnUwUxUyUfTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPTpRRTqTqTqTqTqRRTtaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTTTnTnTnTnTnTnTnTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPTpTGTGTGTGTGTtaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUAUBUCTwUDUEUFUDUGUHUIUIUHTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUJUKUCTwULULULULUMTMTMTMTMTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUNUOUCTwULULULULULULULULULTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwUzUPUQUCTwULULULULULULURUSUTTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTwTwTwTwTwTwULULULULULULULULULTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjmjmjaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUUUVUVUVUVUVUVUVUVUVUVUVUVUVUWTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjaPaPaPaPaPaPaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUXUYUYUGUZVaUZUGVbVbVcUGVdVeTETnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +aRmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnUYVfUXUMUZUZUZUMVgVhVbUMViTEVjTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP +mdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPTnTnTnTnTnTnTnTnTnTnTnTnTnTnTnTnTnaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP "} - diff --git a/maps/virgo-5.dmm b/maps/virgo-5.dmm index 40cbebab59f..113451711cb 100644 --- a/maps/virgo-5.dmm +++ b/maps/virgo-5.dmm @@ -683,7 +683,7 @@ "ng" = (/obj/effect/floor_decal/corner/purple{dir = 9},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "nh" = (/obj/effect/floor_decal/corner/purple{dir = 6},/turf/simulated/floor/tiled/white,/area/outpost/research/dock) "ni" = (/obj/machinery/newscaster{layer = 3.3; pixel_x = 0; pixel_y = -27},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -21},/turf/simulated/floor/wood,/area/outpost/research/dorms) -"nj" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/drinkingglasses{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms) +"nj" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/cups,/obj/item/weapon/storage/box/glasses{pixel_x = 1; pixel_y = 4},/obj/machinery/light,/turf/simulated/floor/wood,/area/outpost/research/dorms) "nk" = (/obj/structure/table/glass,/obj/item/device/camera_film{pixel_x = 2; pixel_y = 2},/obj/item/device/camera,/turf/simulated/floor/wood,/area/outpost/research/dorms) "nl" = (/obj/item/weapon/bedsheet/purple,/obj/structure/bed/padded,/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) "nm" = (/obj/structure/table/standard,/obj/machinery/alarm{dir = 1; pixel_y = -25},/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/floor/carpet/blue,/area/outpost/research/dorms) @@ -1591,7 +1591,7 @@ "EE" = (/obj/machinery/light/small{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen,/area/mine/explored) "EF" = (/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/libertycap,/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/mine/explored) "EG" = (/turf/space,/area/skipjack_station/mining) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/vorestation.dme b/vorestation.dme index 57ba753e7d9..c1114313d3e 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -173,7 +173,6 @@ #include "code\datums\progressbar.dm" #include "code\datums\recipe.dm" #include "code\datums\sun.dm" -#include "code\datums\supplypacks.dm" #include "code\datums\supplypacks_vr.dm" #include "code\datums\helper_datums\construction_datum.dm" #include "code\datums\helper_datums\events.dm" @@ -214,6 +213,7 @@ #include "code\datums\supplypacks\misc.dm" #include "code\datums\supplypacks\operations.dm" #include "code\datums\supplypacks\science.dm" +#include "code\datums\supplypacks\science_vr.dm" #include "code\datums\supplypacks\security.dm" #include "code\datums\supplypacks\supply.dm" #include "code\datums\supplypacks\supplypacks.dm" From a65ec8544ff0502640ca4e27ba176811778e5883 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 14 Jun 2016 15:10:40 -0400 Subject: [PATCH 47/50] Stupid DME --- vorestation.dme | 1 - 1 file changed, 1 deletion(-) diff --git a/vorestation.dme b/vorestation.dme index c1114313d3e..3668d1dc0ae 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -173,7 +173,6 @@ #include "code\datums\progressbar.dm" #include "code\datums\recipe.dm" #include "code\datums\sun.dm" -#include "code\datums\supplypacks_vr.dm" #include "code\datums\helper_datums\construction_datum.dm" #include "code\datums\helper_datums\events.dm" #include "code\datums\helper_datums\getrev.dm" From cecd4c7a619d4a4f2c9b3e1bf5d94b3426998885 Mon Sep 17 00:00:00 2001 From: Arokha Sieyes Date: Tue, 14 Jun 2016 16:08:53 -0400 Subject: [PATCH 48/50] Prevent lobby players from seeing emotes Someone had already added a 'return-only' override for hear_say for new_player mobs to keep their ghostears from working in the lobby, however ghostsight/eyes/whateveritscalled has not worked as it should and it seems like nobody thought to add a show_message block for emotes. --- code/modules/mob/new_player/new_player.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index a1b8437b0b7..6d9d3c3bda0 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -511,9 +511,14 @@ /mob/new_player/is_ready() return ready && ..() +// Prevents lobby players from seeing say, even with ghostears /mob/new_player/hear_say(var/message, var/verb = "says", var/datum/language/language = null, var/alt_name = "",var/italics = 0, var/mob/speaker = null) return +// Prevents lobby players from seeing emotes, even with ghosteyes +/mob/new_player/show_message(msg, type, alt, alt_type) + return + /mob/new_player/hear_radio() return From e650531dba2255d03cc807ca413170d506562317 Mon Sep 17 00:00:00 2001 From: Spades Date: Tue, 14 Jun 2016 16:17:25 -0400 Subject: [PATCH 49/50] Desert Eagle empty icons added. --- .../projectiles/guns/projectile/pistol.dm | 7 +++++++ icons/obj/gun.dmi | Bin 59544 -> 58989 bytes 2 files changed, 7 insertions(+) diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index 9caf66af4b7..15471da2a2d 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -124,6 +124,13 @@ magazine_type = /obj/item/ammo_magazine/a50 allowed_magazines = list(/obj/item/ammo_magazine/a50) +/obj/item/weapon/gun/projectile/deagle/update_icon() + ..() + if(ammo_magazine) + icon_state = "[initial(icon_state)]" + else + icon_state = "[initial(icon_state)]-e" + /obj/item/weapon/gun/projectile/deagle/gold desc = "A gold plated gun folded over a million times by superior martian gunsmiths. Uses .50 AE rounds." icon_state = "deagleg" diff --git a/icons/obj/gun.dmi b/icons/obj/gun.dmi index 453baecbc043a638a83680ece651f608e1a8714a..9695800a21414e144f1ee474b121f05bc884023d 100644 GIT binary patch delta 40600 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 delta 41160 zcmce-2T)W^v@LvK$Qh9!ND>7_ketIHAfQAMC1(*N2na}?LljU6isUGWh=63t3^|A- zk&NV|Q>#VSM{m}XeOOLySw*ZYwxw!e;^VE5HXBY79>Ov1Tjba z`~X2jVsEc;!KVYFVI~YW805+gECS6K%SGd>KdA+Mw5mm;sISsr6YtUQ%ppv_` zz;DHEd$|(bfa5bm`I*3Pss~$bQ&(Ee+=MgqnZBWEOO+5Fz34=4}xJ=*I#-mhp zukIbD+{>=Iq|NQV0NcUK{RNy{5WkfDWjKfLPvW&~WtcpeUgPUG!J4)T`8lIiGQHRL zNp14ml+=SvUoBhJpI#3>hCCp9Ijb5@+lwlJ-ysJ|sqFv#i^hQ^yWn@;1BPY2oKcr+{1h9{!bS80#MM>F#3g>qV=Eb&r>Q5A;piO!{= zgC7G?i_W9{9O*j-5vE3ciq#y&;Wz}D7cwSb6G7@FAA=#^l~3`?8w|Wa`F;K&QSEnY zvpZbj*G$lunAmuB;RpR3UY;(MVvf_IvbS2MC$J!4_2!M4Oo9uNet`s3?i_E8f4X&b&q{ZBd$vyIlPFEy4Ju`qR|w10IW<0G`;d1xGA3`LvL5f;2zU8@ zMOl1NR#}{$N135|c(c`j=Q@1f)XbG~b=R68`bkOC(t{xjkED^k)y<9~j`+|$4oAfy z;?1IX_O=+hLSjqOsvABu@d4zY&xa#m7}IY1ZYSkoT%StM7vV*+&prBaH&z8WDx0hP zWK$m6e5ZVQ+nTU|C5q#xSwT@-aRkXY!<~yM!HsgMvlh#9qo|?-xF@jd7Od`R#nDl7 zI*%Z!;*AN&#V3{IjTzml@Zig^lzaIlc&Uj0Nd@r-Qb+Rf%agIr%OS#R&7>(a=m9li z>1H)@@Ix)#oH>VbDfT{_(V0JP`tWH#Sc!6#I6;5h^bP*%jD+6xVO`YO)do>TL;I#0 z*}3pAE^;r)tbj0>iwyh?*Uh=xEU%NCc`1sA^CXV@vCsVN&KEhPi4)4~`wG}CY1#|2 zg={yK%7{g+uaD{(Q{eL&@;_ZknvbAe=Pz~FVB5`+5&6pUIEnhn)!m$jS4RYs1h7{O zTdwvy5M8Ksjl2+Xzn7SV)Ru7X8vW0?mA|W0L6E76nCkZlSkhTj(t%XUp+(BUU)oko z##unpVO7#0N6Num+LqBl4Eaum$s=g#E}b-d_Q@S=!GA_oy0Km@0&ujY@)sw$AJ$X^;rmi+^4$S#93d9#^sWq2NVXugiOAe^hxo> zU%!s$7QRjJO6ArF#3dWqe7u0!Xwb{LP$lsGdh-T(k9%m&Czi+E8V#@flmdlYS|b0x zy}QYhT2!An=9;9FBrHr4x396RT%9!V+DfEP|6_g9AG4tPfA4oD>DHc<}0z2qKG`_x7Ef~%5Z2|>Eisi3b8)%cP* zY2l7$263Q}d>L_^v+#j`HU5oq9d^sd;|zw6C&AAYgP{)pxJ{&>Jy}B_1=ExnFFR48)7{*-=}}*ufM@3Hamb(^&AwRd-59479L-TZ`b1} z`HL$CwByzTIVT_3oP3>xcB2%QMASG&Fhf>X0}H?K1S&IjGJhlKj0g;&3|gOtNMscMDR&Io{!}kbgvnd}jP~Gp<3(BeJ zw&l5rzJ$5Oj>9&b?d}noTm6xDnFG;ZHCQCt`HR*eZrNS)=SNM6`1ttJO2;dAehs{p zY{?Rinz_ij^=ghntx%m%wK~d^?C;S76QWislHP|p3ODRGJ(%e0m?emc+d>Nq3CG`W zXr??_z1O!Hz31EcytKUM=ey-IpM4Ll-UE3a&E7+)KF_8V z7kH4Eu1zF*S|s4$dfdGNlj@(`h@-jJ0$2F?DG3P))zs7)zdX#h_$`_4!C-l*QQ^#; z(IszN-sJ{M%P_xDd3c6|qHSyhClV8ujQ%8d*@0(;7*%=}a{BKV`}<9ihRm)pDl=f8 zG;B?vStOoa3~JnLIME`(G9fN?!+bi$icFA7C;z1+C6B398U@tO$#@^p6~dX3T=SjS z4DdbZ%~KRPWa>K8h?gFTsPaE~@quy6txt~UG4`d^7O?@D#V|Mdmh-GOYKM4Sn}*;v zg%;5rsLJ>7SvqB(?*03LK|%OGQY5rL&pA0dx*wTNehBeM$yd18u)qVu9A^Z#XHlH`{~sT=+z|JY@I!!B|X{Y*?!yPeWutTz=j zTxh&3YCt@f&6#R{QueMD=o)!;d`oQNHW^GIHxFx(6T9JKaQG#U4L_6!z-L9mTQUri6<3 zBr=z`Wi{X`aZLkxaVOEg%*-w=0;s?uDt3lX=~E$c2e?{%P8NwwTU|D8S#}6leMVyF z%ds_r+fmeDN}=~d9iLK0^_d5p!qVn}Lk{8=6F0rRT;F(}h8>#mc6LPT<3qaKw^Xc$ zI0x409xRO&s9$>f@=FaFq@eC5@@DCoMv5Rlf1X>(t|E|3lOKRd#A9QPTB_ zD0Ae>e(tAF;|1zkS}GnMVvs`qP_v^r7cd{>_-$U2ik_a{puw+tf`bB@o11g#lRKPQ zgU8C6Yh35sNq1#DH_FF0(|tE?TUljo)s&RnPt?}XP}bGGFkE0bFUn-ylp&CMA%Y++ zEscbdvQ4B<($F-3wQ__g&BL zz7NDG@1ML$_NO_~J6<6GldFXwla~v=MlMXykscjoF;+MNK_7LcHmcU8Elut0s#H+<24~pU#pjxSKOtcgrGLdmY1AjV)WOp zU6XWQp`nI$mwMvw3!0XZ>!kjGwwX`PB=gr4ESc!hkK8$T?OomQ@UE0<2AkNKX}qA1=AMTFngPz;8{kz98z=c%K^19j~$ z<*jZ^d@Yw+;~&v3-QGlP8c$+YE;r%a4C%QwG+bAa{>P%iA|jyys`*1!$9sPiX*$AR zy?S1SO4ABEYJF=lo2{GYKB~Dx$a2)%Am7pM;rK%ZW4Tl(QD zZ9^?k)NsrT968!<;L1e?hUN$8vfZu9X{;>K9Qqg0Rtb!p@LS2P5L0@#pCd7T=M-`r zmJk*Hke^R3GdG<$HPLG0ENvVn2-OsgA&yk70zqrpuF}Yo5J|L?3m~b=FxiLo=~`RP&#z(E%SG z2E+d5X&tN*Z)m@rtju^;d0-#1VW?T9TRU1?AqebLLH}cSNI_YdKv7Y#e`;!DCwVPc zK4GM9mr3SD!61&3ykX&a^@@+D(_ZR_0Xtdy*Nk?!vOf9lk>TO2>S}PpD1giA>FGJz zFM=ua^vDVykw>Z^vIj`2O`?AN((8mD3xjRzhs7)>iaRj_w@AarMirqPw6*1O{UVvD zgv5NB=alP2V9PWr?q1up$B1e3>hD_5`C(&cLg;;5+=ue=U+ccz_@98C$s{ISf(LJ8 zmz2#i~xZVAe|N%p4mK<^tfT2 zmFeI?A%E#Zno4K(Vn0g_4Rd=iIpuA=$Jc9WYdL3qXt?X&lRg#PVoH&vn9q$?T3H!t zt|l5sd#pZMM!hXa7yJGDx6bv8f=m>^I}>)e#@x$U+1OCAv-_;c{kfuoK3gTS`B&b9 zxAE~y!Xz4+nuL(w@t@pgc<0RFJt+hJCC&mP2 z(~FV-h^fMTh(`0T4>P}3(?dFgY*Fwdv)02Jb#oW<$c{Uxb6gm>^O`nmtY<_&?uzwy zF}tA=P7P)vH+5Eunirk(a|3$D5lT4u*MGMhbc`QFW9FIPCZ~oE%(rLnI7%&)UVn3! zB`V#OdJkSrMXZn5iTZ(n$*rAEk)}lqb_w_m9-)eOg^ymhgi!~RQ{UFqWaW-ziC$QE z{DvLLwz#+$)4d1|e=~5#cg|La3+MY%rGgU^nK~Z}E8n^E0R%pB20oh7r{^yf`Ys+^ z>wK=7dBz*}DnrbH0XX9EiHU*XVIml8#XP-NP7~i;p6R8r*bWzI>5oYi=_~oj@+VsZyWw^IO7cxpegPc^sGTau*a8^Nv~^)Sg|V zfjTi0wU;5;vz1K@+JuE`G6b)iPSU|)*F{U5x^b0j?;lhRXP#Q^eT1jlB41%%Ilrn7 z48E{}-*^pQ^-#WBKufFj=Lj_-20FrXZMo22ATgI9VM2~s7@BLF8;_TUjOt-n!;l}SeJ>Is85wq9S@<$4zW_fyZ zxfv)$fH4%6ls=5ChNZ$SFDWN?7P~RK%Y74kwn;(^z>r_C=1fq9QRL*L$=BlIe(n=i zM=a`$LD2X3iNuqaXjF2M@KW_b5UVVS>nrIEIY#Vl|6f0ueI|Ftey;=T{y;+W~YehwcpW3FR>yPP#s4K(a zHq&*iYm_R;?uLr;@=OpMY;0_vA*!&aiX9ePEEGh!tLGucaZGqttUI7&R<};b@gA7q zGlbnVcImVD#c5I1Fc~Wr;f&*IiqxqF4H8DG(4a-{Ndv6;n8FvI8)|~{#!XMeL@6* zIg2}O)_Guq2l`5#5AYI!A$q1!Cqi3mBbv#gq`;bhE(AQvr*|Tkh-s7(3yZUQ^6D?F0v8_^R2V=m;WUe?SZoKoG+MF9g0m2e99}y9X>q zgQ-{b9a3(uqYuU%3a6aAx2}UV94`-iE8?2R_YusIKIsdp0!udG{ZeKAZhDb^)T(xqlxZvM|H4 zC$n3#E$3VGteSdz>PItJ4RWUAd0R9-J_Mp1xOsyTE5fMDQgaDw=9y;!Ihu+4qpzoK z?Ge{bGXpnPUS6*7N5B_7(NP+uL;5$_xa2^&Zm=C5Y513_BNjKQ=XIaVB#K-b@~eOT)V;{asFXkSZkpKZeL~Sw>W* zNC?C#LFUMquE$l#L(UBBux;j9wrccJdlc)00PbLYqIzlR$>Yb5Ik>nGz{4nLYEq6i z{%GLtM}Y(N@X@2J($WiHLw+tQI(+R}eAL#P3xYDw{LEW4b(+GcA4ht_d8~~^>R_=t zn4!VCnrHa;?%nGjw7%pT4WAVxk2xOL+rDX9!R>SlU|t<3qfQF*t>)+EPRDmW1&>IZ z*}eWH_~~>nKyDZIvsDDaf`SO~Mun@HHb@J51z=-8wgAF$b3?Tq1e8jLVhT!1+?EOus|z~?PQg!;_c2Y+dwtcjyV;!u1+?^y1b&|HgDW` zUHXB8)VsksfE`7Ct7(y!CH3|8ev^7B^6lC0zb>e$Ek;M_(3a4RKH!FkA+5qkuu_gL zsm$jg``+VU`722v5io8^eBF25)GqOLr2Cd958??<3ViGmDDVo zRZ0ejAgWC`u5KhE_D6pG;<#}GgctUA*tIoBY&(ndMKd?q=)NI)1A&{oyrnl{(gynb zEy^;OKs*oCJWq5HH?zZ^bn}klZt9cWEHK|3EkRtLE0Ln}`pBe}o7gs+lVH|t{iVX| z?pf(zo=P?zRCoM0UnfuRH0#c59RmXrPwbENw(Dkbf84*Hnxin+mVPA7yN{cr%T}r0 zBXvgD!w->e58rlE3qu#3GZsbQpM{lHL#phv8Mi*QvHSmWhMzryZzaUVwF#Kj8AuYZ zHoNSt3;^`zo@iSvjbS63_^L==n%9uIi5RXm*d->F7j{KTW3K?HsL^bu6YR#)+$h?8m6T)c1{g~Th% zcxcST6wIy(Ll+>+s$QHs{sRl3v4*;x7!1}7!;t&=B<342IRdg z4j4V-I0j>)#LF(}CQ+E0nnD42u{`t3Wwt_oqk>Rl@IzZz@Xp8MjbF}sbv{j-m+L}# zE!vGZOz_+<@ePI_`|R!QjXEayE>VcvJg(Z0mT@DJx`Iv6<25^$QH6y9BB1Zko3*ri zXDeuiMlxs_&(0?|@(Rkl9yk1hIEIk}=TQW~HMHUHj;GNsoG}T+i9G=tPgbcB0l;bh zi^$<~gT=*>%A8XhErC}}4Rv>qDFszkWzviuJa`b?+pFa@h;*G(1}rJ}0r1_$m}?gz zdZYx;@xH;hgit|#t%3MkS{9bq@$n1^MR+s7^#lMKTtx&tZsOUOs{BkSGw+L{{k>N@ zLoasro^m1(P*Kifi@)*wbxK4q_ces1zfosn>RMU`gB1IH8TxpK=f!4o>}9sT3&@nW zfqt~OF$!1Q9%h%eP{+bx6WhWORdgz}yF4!v+T0d*a&Q*?rykV~pNthT!Ch!oVufXM zw1)jQy5ZsEYCq}Y)^J)qZ3Qd@aX@#KZ|ecrO!w)|op|0V5T(M>U}8l}OHKxUqlMyB zkP77nN8)SG&bxOPJ``UFrbk&#j0(_Ad;%zs@s^2;j~}=vrZbSkUJ!R0Z$-p!)?`Uo z3OSAnii(Pn?m{7d#ThKVm6wlR{8>^`(r;h!`Evot_sH`4A-nWps1iC-Mq|4`K&(N z!W(EDN?t^S4rC6&-B69i{P>~4S+mx?2XHFH7kUHJ#s20z2!rUm{UBG15K5Kt)Vkie z#!@FT`i(iV{gZ-mgP&AJaxxhp-SuYC&CQBbP`c0G8x0>nwm#KX1N#Z=5i3cS-cb66 zwF(c;%U~asmy7!0&JMF${PqZUVyD@$f{j0GTQ33XWd6-DX)Bo?E?_N{YXuY5_1@ykJBHX zKkB;Rw?D?ifrK$Mzj$qQ{H+`SGqx+!@V8k-%tllM0wjEc?ndlN}$)j>ds&Tlz?0P846f5O;<%LM<1TmUciY(7})c-0lbpL?s#1 zJP;PlPv;ob)YX;l+##f5mzSMs{we@~Y15i#m_PT{0$9YTsF!9%jKWu^uAfd4axNTZ zWZXvKFzc?5NNjCwcc%)7t|Br1>(s85c&lO;u6Le$q}nWCCK>OYtE1*%-&Z=oBe!~e zswK$KV$@%kAoUL?-*2v#Jn8W{Hx|p%REWi1nT8(6spGx#FCMG$xM?fMv~@HeO`fDK zKK=W5=bHdtWgMA4fdbWsECO=QV$mWT06q(z5YzPvTNVTyGIodfKi+-dRC;Q91Q2lG-UQdM@gRHXd2Nakt%}D1Kua)v zb0DwZc|GBnbnbZ|zQR8>nQ)F4Cmx!Ah9q-4LI3q^@c(QCbNmnA$icni(J*ApgmCQP{o6z%%lnLCzI_kpggG^6IjI2-P{ODT)S z5$Z%=EONq-FoN@QrY4>{tb0x*6p>2 zrSQ7^(Tq}p62=L>uY#Z4iu55p|vc zKf1TVa4l|OIup+fO{_~zC790mPOLoeY#0Lpuu*xtLxTbQQp_~lKIr)3?^DmVkmq%9I&?~33Mg$pIor+z+p4Ws!r^j*R$`TU>LWg@n~D^N2_@T4$+$?_gYX{A^V0>_bc&`5Z9GI zOQC<>kYcLm2K`mBdcmx4m zI7CNlA!t4X2;S*MP%&owi*iSo#8TMhd_;L~-ef(%loV3Ja?)v|z7gybsw zTs74!e^l0cz;E7=I^Ezev;1_K`XGHLb=~&rEfjMUD-!Q=k*iyXx~tlygvxUoTX zYX6LU93HQ|zr7nRI6X%CYy6qSPOS3j{2+00ZYC2_*6kwWCgp8oC%GEwo-Es6la4BG z>epU0oG~0OK3%re!p`iH<5{@slL}M*u@gz*jO*$jvgvxNohEw;nIZRjw&f*Wv7Uzp zt@m^3eHQv6vn?57?+;{&B@86`kSS5OXjTK8oE$7iHIdwta7%$Z))LSMDB#N%UK99i z|62z?pK|V_*SBgFqG`Vlk?jHsaM~j=&G)P5q?CD7{>XX^sed|)g?9#pzvCG^Q|NWs z*Spbvj2nw4u|4ipm*ChTu7sD@)sNy?zPhb?#yzCvdf_Q;W!*MXZzFbIssG8ovdKOV zp9CYJh$OFt`3tYB@O-Lo1_(#}u0vR%4H@{Zl4-E}n7Z3~pyEz4w5Ns=M_IdnfxO)>r=eRs`;Zp|C}`}lLxnyyR99g;$;0VMA7?4 zrKL;~vn^1Yp=qFJlT~l6*V*r>tA7ZOB7!Jb#3?8>HJfFj4>grJId>9`h$H_0nA7+wvFAYLmjeoM%S!K@# zm+v#TQfr5PGYdvyx1+0YSU)C;itrc@YpY`cr{NB2Z9)s<>?P6#YI$^zpy1fpSe@br zaPAdACKynV{;{ze8hDx6*$A>w{BvBM?zeN7t(YJ{PEPJWFz&0@uS22DE}o19kVX9$ z=uTmkfwS~_wAhUgD}*X?7F1GU6Jwj=jRojhECe}3MK1<;N(X_0@YEbm?(j0aRyEJ5 zdeuJUFy}*q*&g>tJyc|ZxtFEFGJr8W5#^QA!m>^60*^>GQv~CI8{EMvpm0p!M*ZH1 zvOTxKe^bNV8AmEfgW<2D=C9Ypw3%CJon1}YS23k4hhO@v>>uOdh~zK=&gel`D2;Nt zIS6?$E=}?#GV%_<=nbGKBTv2i4mdFFG--OsWn)sRwY^>1{nTO=tfTIO2ce6gPR!<8 zH+0aK(3Bx|fFnL=kjEa)%W|OTUXe)6R0OI5gyxAlQ9LS~B?VZk|HvP6hTyv$u)hkk z$GdtR3W>!(rw)L(MW3wA-ZwP`P)+b;yg0GmuqZ-X(ZJwhW0g(T* zfvh{HpakWF-w61XsF>Io#r_<;PQ`X`bo0oKs1{R zrtXUqJ9nUdHjc7v|Dv1iliibC>4WR&S#9DHw(1%7V=D4Kvk2=u86ah81t_1S=f-7j z6_9i&T$e*oDRjb^AlQ(m6XZ0SuxBSy;wxoEh(-ls zxOeMNGyHU+^6;dL25fHP6tH=bLnW%-SnZB&wxW(r=Zv6V^PJ*JZ#CclvT}5G$cv3k z9SNq{F_*{2G<>go_WL`?*3aJPOpc0*YGBi{z+ulWpSV?+0?6&Tvv3zw_|XLgeDa)} zP4Mygx z$;I!>-sC#`?o|gOi_e^7%SL>mNT^j!(Peu53Nq~;HuLaM3LiJhxo0_cd4{h@-GE?9~<@b4Hrzhjn4joMDo zS#IDmVq4tAypb8}oHf~OWa43wdZVM_b&Z4*w>ZD)#-iX0x5|$;P+|S{QyQ!&a%TFH z6;93nNfHARaEMUoEv-KFxWTa4r9xFI$hMqZvo*~gj$_~l?jJb=Z9RYTnFv15X1cgd zuk)JmlD4Qx5xYr*Nt@hNZ_yU7C>(SmP0L$mdJ!+&M)|U#l0}5 zJNtam_Iwd!5cuA3&M>VJvh4fO9mDc$F?9^{{-NlDYBJyqPfuk?p)^2(j===2CJetU7 zk$v^9{ttS4eIlk>jt-!5)FG0)o-#3x6ha+t%K5Xr+U&bHj2Xn)Mz&j;nx7unRTve| zJl&kCH-VQ=)H8v;uIk?zgIE}75sNoj=Pkm1Gg`GkmhERaY~T{pSRgTzOKbZZi>Hus zgCJ+5Zf;A$PZ?j_$*;%h_KFkk+o_bn*fr{Kc#)pLljBrmvv%R2a(aA19|;){Yp5sO zTFlPMqG4y>EZ%51*(e*+0*PQpuDE*x88bKgQAEC9+$Hwuf!pIa^XKee2F0nUW*EYW&#ZaL=utW6)i+Ao5&{~zr{+Y^%#WZ8kirit zQf@6Y{<;q|9(XIoXvjxWA%GTR)hotWp*c`;uM+h0Rs z5PvqQyW^+Yx)%pV8?0|)x{x2w0*|p{dU)niFi}md%vOFizn#OTN?RYY+0T|o$H6z| zZN}9(_6+#|Il{K1*`(|$FK3c*`_+M=rwno85-9_dx)Ev4=r(`vaZJ}+WYt+?4s1Vo zbmRq=%%skXRwbJj>K_~o2B{-=Pft+437Ws zA_>VfZXTZO^1UAcr$6psXW%`Nx<%V%C{sK1>7z#s2bAdD`&*x{ z#EdRc6rnoMF900`kp*d^kB<+>TQwS5+S%eFvm#Fe28Jh?aCm~)4zVpV`W#wWS)q|j zmpQ+WQ%#AUjtIKknAFra+VWC%W$AL;hDgF!g~S0V&yu6TQ{g}dpr@}dqcP^Q%G2I( z9Q*EF2}Zk%Nuq)nU7gDyCN{J{eFa^Kgx4+`;B^XLj0IWoheL#xDevFkm-Ig_*IZgS znC4%S$G{65ePjwSrZAZBob04zpaEQT{1V{i=7woaym-DUK1y_NDz|2ul{jGB6(7Yb zoC)d>l-ms}Dz(tA-MHS~-Pb?{=_ubBPfavQ3IHK6J2SI!K0NufX`Pr4&%oVX6liB0 zgZQEI%H=JSDyZJfIrhvNBnJU*f)Q`u#=BYW@=3bspG`0#-9`uX|1p8sh>4S1ndSTV z^xL|+!cgX?Pt0XcdcJw%6L9dwc4xcxi0RAtKPP~4go#w6F5hu4S2XxE!ZH(KUL--% zJz|?{;jVk}(W!n!&%pvU724y&0wwY$gqK-UGya5Ko4hg54|_7_$q)d?A|+27j!p@8 zu+DU#p3TvS>i8qFblbS-_UV?M-Ktokyft6>I28bek}y`5`xEZx6Mygu)ObP&cLXAc zk1s+oU?&G$BT-jVgCO@8FUB7qfYP?RG;3B?mhz!kl18(1Y}Zx3!>dQ+A@JDG+T&k| zo*R?i%?T!XZ<=7+4Au+7W7Da!O~<4^>7RRxa!DP0!>psFyl*=sb|Z z1=tiGNSE$DE6KNj9PYGVuVJ3F)XI>BzzK>q~L4z+nseeTB34nbfs5O1f0 zPF$#<0Q1vpOTV;B4V{09-FEmKW>(bk)wGuA*XTR=v}w7Lsxdh^IVL71fZzC=%eg-@ zgqB``V+n*Lq)mxkkAoiN?@N;G<(|*}=;O!7DJ*Z~1_sE027~Lyjj>PPsX>A!eNxTf z@A(_NR=u@Ped_V@c0XCPj@}piwl@V?XW#eSz!weEdYf^2c2N6!fJ~n-Q{XI}pb_Z5 zVfZw#4p&PF;dK=BQ+G?&og^}=R}(j)y_iJ~wiN%mA8pN^+rIr{PN4G*LTF(VO4X_|D6v<&Tyh-QTi92MgB>yoE~+$oBx9&7g--mk86 zWD0S5FT{QR`t_wAZ>R=$upaLn_ldrMs{{ZMT7|9AEl_JAS0BTctdics-`MhfD$);f z$VTa4a9#ir67)NAd7qHLB`wVy5fO2=1AKFeafNV-wwBh*rc6~$O)+lG?+R1LxsK0h ztbU)3X%>9>i@&gA7p_@Yxn7j9EO5roem~S29D?Ds>i4Ak71KT^7Khz?@l(r7E3cKN z`sC48%WW2+u)d~d#UL?<`HA8Fc%S*1U73~;@07rZHh|iF@xD7}B1}f0xDvb-PNJ-O z6DZ)K0H9vOPH$!eoseHBPQb~yG`*qA#YO^+`?Ha+rY5GQtWR1itn9Bu=S9d`UFGaF z6dzedTziMx*`2VR{_&(tX{OwB)2#QQVB7En&Kn-=BYMfeB`>MzUXY2U>x`T87rIj zfH>WvHo7S@tjXd;c~cwBgxEee8t@fDPjz4RFWLY6NU;WZ~qXPq6q!ug*`%x0 zCQ$Ly<(!e#`yZq6ErO~iN+ne;1f4w7-^QHSm)bK)}&Pa6OXKxAbkxBFM6|GcstX4A-7#mfAP(!u6|qGyK)= zpkWw=&I4Aw&Q0@H)ZGtg zia279RYsK0tf22%+2U2<|6%%)!u}fCHPNZ| zM?;x{gD>@`PcD#Gs^daq5T3KbIrGfuWu9uC#;(hJd!GO3$?nE@1O*X1buBKz#@Q3|i=cQcnZ-5BIU?qRfC=u2oMzeOo|_Po@IUo@|teLGz7T(>C>M zmN3(eWs8j^o!r$BM7(&N zVK8Oz6>%c=)$-H5h5Ksa6_`D&!X-7pR2oEPpqO)t0s0m0gbK358?w(DmZYgZiD&rU zK!D1}fai6FL0JShY%p2nIX-2ETpOArYKw9i+0^VaCqIaMS;&%QBd(Y7+Ok+C-1lyldMswF zn6qy-5$jGH9EN8Dy?zx1+yE5OO~&9Cmyi%lXbDt!j6txVx$PX7i$GH{9z}VEa7+Tb zw(PcKk@HY?VIk}4uv{;qvAC50YD}((mZ>YUYD#Ic!-vW%OphsEcz85AI<_cLFK!us zTX4g^sJ8lD<00OmdH3#imo3N~ZgxN! zE-!QOz&srSw-eE4Hzf*|4Nv5tQLn!G)ZFfZ=)r06fQ7>-G}?)S_%FL1i<+}343m~m zC!^(S(~ExT%`YaH-&R#61{!G#VWyD%+QYT>*_JR2fDJ&>Pugv4WF$2HcQPyMF%wTL zJ_Hn}3-<@YqhBk%SHuH?(_D!HVhA+-!0$YlkJ|)LO?Zvq)80$TvNpnx>pLpjlN{z% z)ccueX#>NOeLGr})XhOdn{iOT`6UIQrA7o86~0&nGDp2So(aOA zZqJejACplFI^USD5_pt5R8?$}F^pfo?F^QIs9 zEG=#Ln>QiKS7_r!U|=9c7jD1{F5PJAHI?BnD#Ry&fE4xls*mR;+tieeaFV5P(#ZmT z0FXjhnsLW&d}4n3pJD>3f@ttXU5^0~LcFA8dHM1s5$B2}9(9ZK)}NIXXeRMaSuRka zLpsLBGNz9H#Tcmyqjh`V1U_RQMu7xX>ys$Bkd09^y0GG7;>iWU(x5s4(1T~$0Hmv2 z2@b94||~_+dHS#3bo+%od(jTk9`J`5E!Y))5%#yg>&v(E!`%n3>%wIN2N2 zej6J*f4~IP3M-y8D+1_zURkK$PBcBe6ww=mw`xy$t|K@bE-*bIVP|A{y#trgLjgeS z9_G{<#OpBbi@;OS*Jp%g+F2fkzg7oAju4Yu9f2^zT%UH~@}q*Pgu`#@oC&X=;r_;t zq)xpyAbLY6$EUL$^7-@ij~_pJ)ycIS<7f&{oQNuW8*%DP?Ix4|WOcB6IlfPQ(;rbO zsY^LIwzBeFq2!D^@ZcxS7NDVaUFqjM@6k)dS1>e8>N%j}(Q=n;2RbJ&&)b=mvR3BD zTb*j?%AP;eym8q9VdJUXmz(%Y5`7B$!>agP2DjbW|i~N`#j8|7KXn%Zy*3t)m@vN z-2%=_j|z>tklU^E=Sa50cS@1EL&;g#;txB!ibFnCWTa8<2@iKW0=Jn&RB=>A6u5j@OPGw{m_2D&wo(~&0ZG+ka+9?Y`>z-uQdK6WPxYHchxn7=H z7TyY2sV@epd5DIQarqaXfv}-t3OHN_`mr?=ee_LB%fIZ!9)U!`;NakWUEQD+J3`1} zXQAu!ml_Vo#CO7Ex!M^oIwuQ_l6qJoeSmYX`tu2Mv=AGt_D>U7Ma%obL(xu?Di==V zi!}q~yZkqnxH_Up$I2a^^u4Hd_JTJD)%8`0?|uJn@&vE`5AEw#+rIQj>noQU0T-e8 zLXmkdXAbCqXzA#J!IF&D5vSKN_6k;1%(h0*fsTpf;sT(JseQ5joCHEF3S7TV(?c-% zyqjNqOrr5!pfNbZ&o{#n{gZMkHl}>xB>ue9ws=xYyj`)bUpr~^Hb0KR?Y9$H)B+I{kwfgl1F@}4p&IPLg~WVl%GC69Dk$p#$bB^C*jqIE zKXh?$$QML9jf*CZkB2C5OlrPjF20COpW%<*cVz;YG^-mX7Fm-kP9J~pK!16l#6axT zzVFOe`?d@$!1LI6<7ar#>8d&ILi{u^szH^@hbDjY(uoCxm zbQ&j!Edvikgx_#0FoeDgQEs%uf3tii`l+UDz?V-d-SYL4s~0UY9+n7D0Ca4zkFHr1 z+n5bwgBMhDxk1rG$)|+e$cY^F)5F5biomDpHE6fQqqaCXU~N7;Y$A3$djEdlXgimE zd)#5ecf96G|FQ*ZD_{Nm6V&%3f?pEmyy%H>zK1_Rr;VDnw&&;X>~_&(O$+G5-W1H< zMJbJS#?XBtx5|+-ODLp~0(uu48;be)Q$+0^Tw3=vFR#78uq^b0Ig?}3z-PuF70;D@ zqC*xuNtYR@(q&e0*-2D6NM=>s+mw}6(seFm;+y%@Uid>z?now~%x_nN<37@I$&N?a z?5&BQg4>)$nM3&|_$w!a;Imb8#jUp81Z>*njxhqu1JGQTGBTV&+vrWhV25Tppp3c% zTRr?4m#a1R_r?P}1G0+UvmCCOoX5ZRv_`AfZ zUEzFMsi{(TU?g8@KXh+OnuCQTc=mFuox^HSULhSnCuvoMMBain{<=hB?FSJLJe|2O z8k?9Fz@p?&)?x-J?d`vWVzRQV6J=n}bQ(e4I3e*9BU?n@&`%8lYGDy;Dmaw&23i`!2+sI;Y(i+_wp(D6*N^~JimF?=r7FoCzO zlCbk(fhwnXR)1$_XA56~LVGKoH?6KtHuvO@yL7Sny2W{~hIk8IvG=!B&DXD9Z8eh%xBz5Ca9+C2pFWm!Zon`c zZYfdk{1ivLyrHU?Es=dES1DDOG`lGzHv@Ci^JvQw3pUt7p^V=3tjl56e*}PuOoXJm z-aYN<>YA;4>%n4=t%4Wcn(e#Y<%-3CyhegyHSll1IB(y-cci1ihb9h_9lo}M6ixGF z_3q_QAkjomNhL>#zm6ya(HN*BEdb?B-52B=#(Mzc3&Gy9a*W#2QN?_TJVPJSpUi-+ zgp35zU&#T?B3s(EzMKxZwx&7X&0hbOJUM3b{tNH6!laM!uM-tpjhCZNfPxcPgVof{ zO=P&poH}a0aaR@$qN}PT&wHh+{(i{^a{Ry~5!<=RYB$BL3g>BgsFBrk60h+>NF=Ka zLq{~bYVwc{CFsj#WrI&$p9vnV-_O&N&G&g`Zx1jS!0$jL_~OB^pRG9QdaeqKrXn0I z{%EErSxlWoe4QM5-q+Nav4Kv>cxy#kcZExFV8ENUr?60Pb>f3s{d@m6;Uub$A4?h; zM~)uNshjZ!6jp6_Z9?HuGMjr*c`VU++=i>qnjZHGj0vl686010GGUudTLG z-+Z3*)T+rCq%MG_H^i*oG%f9O9-Q|QWL&;{`CqKP1yoes+c$jZ6i`x$K~XV~R2qg5 zEEGf#R3rq%KvF`1IUuD{HY#l)pn#%;#LyuvC?GMEbPP2NF!5gF{lA~*{noeEyWVGg zpRyD|PVBSK-dFsB=TthcDT}U^b)3x3hyrG1^w!L$xr}XsBj1>mJu-q`$@cQGo-J*D z2itX?=jXvjtNEzsX!yl+KKBhk$`b(@FbG`7S~WtTj8lg-|HS}+?aSV*xBppa_|yF& z@l)3aNx{a%+#BZ{{GZBk8;z+pJu*7?+x#5rtoOmwl7acEn4(YTP2ZZVkw1~nbI*da zB${2YQt%Ox!c&I1uGTi5d%1aAf^`_1-Mjo#CGFxAq-^8qi;6Lqij#_?DFugHAAM(9E z&F|7dV@FBnG?4cblEf#@!zD_Cxp?ilT)s@}94D*Xp)03unX%1qk$Tiz$eCwONK+t= z7)*2?ip5~(a$Uz;l2n)Cv={FZ&wo&uy8Mb_k%VDu0_&m#aIdSn zY}Hww1?BOTk>)nK$Gfm%l;)o<<)2a23PM2HLL}3(G@B2AqNu+>7b&0 z_xnzNEIGU*r2R^S`R15wkGUG>NhLZ2y-zLQ*OWPz;*ao7m)AZ$kYS5Vn1q;i%HxU__xeuOvWXKnoYOWxR)Yr-m&;LPGw_K~q_FavkP? z>49jOj5fMUa*mFUlKb7MLG~d>6xUeRXaOTj^e&gKCG9$g=jL27*}@Mur`@%xPrY%& zh!Zn4_oUQ7y0t==e2H}*lynK2WJj_xnI(}TlI!y|*C#UO=&_yWU;2n?T|PLK@a4I> zgEsUef_&Ug<#`S8eW(0cVEuK<6lk=`PDR$w(6-*K8q+fgd3ODbSR3|ffn86BA(*rc z!uPEOh4`dLCu#XDl0u$|)qTj`01i&c3fW}FO8rB?oV;yG_dG3*uU6)~29M>qZ75G^ z<4hfpy*5qXiQBF^wl$Q^dGCl+<-?I@8T;3#fo1rLpOv=AGHi&FJKS~NaArN?MR%jA z1XO8#xL~VyPQlbyBlkN!Z6R;=p0PsoCxVjm-xNx*2XX*LB5o(NA7%$bSj?|g^J-X>ooL1tdy^j1@%2HR1 zP2@JlU`r~9ETw1P$#vYJ?+&U9Xd_b!br!F%u^(qp`?2&orh0y^uO3fN_8;djzeO_q zU}%2o6yLZja=qMKeSjLdy7ozMuHvVa5eqU$s}iBjqLh{_oXf1k;?mMBlq|k&+u^Q_ z>2=26EUEU3QEaKSMJ=tfcGOLpl21JEk*CJ@?L17pduE@5awiY|_Ylg@UZtT(c^V}C z0cYnzM`X9^S$*-l`RZdSm-#uNZ(3SyKl@{nlcnqu#gT5OKY{n~+CdeBtw%)yKh5-F z57BfY^)_ZbMZ+$n^g^WFkpA}Vz5I&2x$-TXbYd81r&%cL@-xAb{Rcn? z;hGk-8WFyyt%T|Mz{=S!ou9L@n?STq|1m_{I zg7yk8U|0I~t9D%_$aHnlBBZjWu{_m#`)4NDDiME5Z%K5}24S@~@&|54$Bs{Bn7`G& zreoiDBl;67V9h@O1SKcx&OeSZcBp5;VEGlV#!rUMzWi z>xI=o0iv?3*?9RK=?!Pva=_=Nc$%IKnvxaF5{_s7Y|lgaFxmPwK-nTjff^FF^4s~G zBg%meEU(ILFxgz=aGrO5-ASL9oevP|e2hm?T#WIEV&7fk*ZSA4?RzG7ZdeqB2*3~- zGo?dR=z5!}_2r>Pcbq$w&ebbjpHk6fzg?gU>%^>giRgKFRCe)B3;@P+d?=h@sB{m1 zgtbUDrbl$~Lc}hIsu*hpzn>Zv3AhL!_8&b+ec57^r9S^tI@aNYB0KIEd1KuWrRz#-g3QiWiWD+`0n+h<&_mtVPS`cN4pHhn#){B_Ca*69S;~7 z0DZln8y`D-NRl4w3C%vM8&BrA9Tp$s@wi_LJI!#Z^e$6@kUN0%4bkNQm74mX9y_k^ zUevv`V*XrXG2J6$dr6kQKg9iIJ4n+Kyw8$K5_3|d*_i?00Qd(e4eGP|F#n@#!>PRI zKWaDses)*d1qj-dsh?R_2dAX}1C`*sG>?AWlm6wOac<{y?V42FaX=Ev zHCGh&G9lco3Wm@H?fQ73?gAYOWg9y;CC10EzE+6U5<6Gu;h=YB@~<9&sX#LE*HS{E zZxY{@w_D(+K{WyN>-^`x+0fv$%RSqMIk9X2$kEhQR^9?k2#^(l1m(zug3W7dYk`)Q z=+j(7M%Ahn=l3ZsP2W1-p^81;lhW3=4xzwSWdvR~Y-7hygEuWC7eNwoI?UAjN+@Y#=Gdl&7*;_u1B00|T3Tk*W zwkBphWrwm>6#8A1M@f-i3*Fk8-jw-Cz0|5pEiIM&_KkZxIbeG2B#vqVnX)0p zGS6kC*s;#z=S&YUyI7HgL6>ggP$g-+CAlUBzm5t+^VNHgn`y<^g%qi_HQQJk07B&I zue-VBbN%X8R)Qw#gGY~s+l|zF-4=#xw2?saP$U!n^Z}c~2Pr^>+I=dqd)`q(^Cl-G zrd4T%k%~~6mV+9(k=t)6@uE3#eh3OD=9vTkleP3hp?;#&8NIt=a>sZ-PO70 zB|?qn7rK2{-VU0+x;{_1w;CFWxqTOfn{T;ta2T%M{@}KS8V1$Q@!+-_?-1$uM#eu4 z<>Og+ejJY5I)jTua^DnGxG-dd9$z|VQ2vOTm%ZD!0AR493S*F}Ty~Hm$_Y^XFG%qt zy;y34Ou?Z`b&M0BEt)mw&z}7?K62g>Pxr{0u;FD~@91g)UcnIeSMH$n_MsdT(?}>6 z>O?5(T(p*dcr>-+r+$V+2+8+En+Hs_0Zq>Bs6F*k$qHrn985dP1)ku^`LAij7A3R% z^t9|(tlu|ZeemX3?(LOp1M!lEUS71k)t9674Qr;T?LKj)Qhkncum1M?iefRwCxRU# z+pm1#x?d=YA~X|R0IYyH7YbrIkjD+IpiA{6D!F@N8R`^+P^Tcw^E2}xSy@>R6BBt6 zGVn5(kSq}szi!+{I@aOmok?rls=Fr@)sC9%NSD#jIM+>hJPFzqJGZfZPItfFE$V_w zC+Y@mOV$p7n{J{PYCK%7?GJI2iJLwTjy~aABHbv}zDnP9dY?k` zD&Kx)u0VW2@%fio2&F6di*diJ(u<@ zU+Al4s?s6WJz=B|a&-t%8;{#?C&TF*>LK(S#< zgXiO!vD}1R>9=UzHjjJyd(M0=7W_Sw#M8G@pMn1yD6|b!*ul-R+HE?t<3YBGr?!wP;?fuWKmCCAi?uB=I<+H11)fB4n zcl9C?{)490EmD5ZXK$tcxmHB9`TkrRDHpZ- z#kpjDH^tN}&Uj^QL_Tz9W&ivS)|pt}>-mQcFO}M-*J)m3OiTh)8+{X=xKdM6`9|-? zc#zgcIr+sIVFSkhq{(iK_iF?#L)%afubMI-o=G2Yko!|7eC;B$qgEYidPW`=#y>XBk6>qzs zm|wD?g;C9QU$^{R+B# z8dSe%$tZpWJKyP5wqH$+FQ4~pdd(qDyC2oH`0|UVqN;60cgclzudfnXz7*qb(_<)1 zvL{Nna$ih2+~ihSSh!{_ciH0V60TsSr=D z$sV=nxo&r3R!8g@ZT*RmYeq&z`03Zgm99f#34U2e@J?)I`zTC$-zScB19M4$T-~8} zkp9`8-Cv4zk$Q+U8Bm-&iaD<+tWb*5!*i2z&X{hvq*V5ZXFmra7OvhuW25DLzqx(P zA9Y>*8W-yH7m#Ylhn;S$xpVh`IMOLU{fXu@b~`k;2{$rGTchc^{Q7-<&rk07y}jwB z8s1iIlv-Me>wI3p6nUw#1ZUp z%~DJ2#))(1dLFoyX?FGkoe*URUF1@Sr7szlnmzn{@k8V{RLVo*3R0!_w1R!3#5{wQ zcSZgTsiZhpU=RIR=(1)Bbr1@_3aGJ8IUmwrf>MId!s}jFl6( zo5F8#=q_b(y>v+1+*(_?dpiHsZu^tJ)e(;?Q$h;8cvMz4`}rrFtDz=Iag|3{Z=6`i zxk?<5O)E)5|3*}FkL45F%bxdka_?DBZwV^1CY$Z)GmSkx-uzTH@4cEaGEsmAyds6tI!!|=( zM&^-w6dh8u;?nQUlTEjy^-4cf)CHXBI%H$J1QjJ(mT0a9cC_K+~3A z_&;Y+r~y=(dT&isZjWny{T%+22WJ(>+MksGgUl^giv8Q)UfTNs26H_7++!Wl=*w1% zy_?xXKEQKyDe!kVdO&>gXlYNxXD&b%Lv8EN;znpySN&T1LJCEuYX07EUDrY$_Fm1~ z0OjxzM>~DB=NoKWD$oj8+8BuIO2L}AoRObfdn!-fHw^NWg}XBq!j{F_Egh4xEgt`! z%bUT<#$ZNX;>>-gQ&h>guHw)b)@=0xrlOAIBgUk|+#yxG-2doUuu6z9cLhF*yjbw; z45!59Lf-$RH)8vsS2ZkjS=_h(d@L1Dl|-%F3-|QNn$0=N?DpytB>G`nPkUhyeE|k~z1nQ=T90z_I8*F=)z>*UY2$knoT-s<<#SlN#smQ? zS3t0XAJbic5Vt5 zd9FK@y&j<17_bj&qmBG@Aq%u8gkw$Q!a+pZsD0D;S}*1|DsDl4$blKnAz{_n;Yh9Y zEqw%RZ=6=&Ed90)dWZ9f)E+VyFv8m$KJD1Oo1MX{xpz+=1lfG&2WA(yP0h|#Jb&(M zA>NxBed4f7fX*Yg=X_@Z>U<{oRdJ|rpMun_>OV1R2XrK3Hf^fxe1R@ThT-f!D7F8W5|pFbw^yH2l8W{+z6i~IC`!cvdJ&SpFL@G`SNaL5R@BAZ;@tt z>@?@&FPh{WL4$&H_U(J;Fux@F=~C6<)Ty1MvJ8Jab{C_At*ZaJ*BEv8z4eKt9?@Xsep{Y(Vc9`}2- zS#RHNUr}+lJ??ju+A?6amV$G-_eQN7r?lUc;$G%$rSqusnukOrU^D<#b0W&AM*{WJ z`xi{W89)q4A)apu%Za&oH+rzGw^2r3M{x7z)6fSCCe-aLz;=@@nJ6_fanLtyt<5mS z)_j1*`JeB=3F5?Dot&&(e=00o=slqQ!MZHbis~uCqPB5^>|-BUC;x6cA6# zS?3}^=2O4DyhnFWFM7ZBK414f&7I>+_Q3xGxMVFvV|b^fXdtLm1nI0ZNvo|&(8lYy zVT8A}kgS+C#tnx!f?*PQ%{Nv&n?KifDav?*qrBMahvAsZ)10gCButK|(R|s}@3kf2 zW$#S7jGyB<+Ojd_NBZ2wU)+_Dy+rcW~$F z*AEh(aGtrI(72A?S~P10N9l8+ zak`cWx==4e!PxqTT=)cP1%Shik`P+uFSPdTZTv49X_Gvz9;b+47Rbv=uotI5F~uU}PoO4#0>+?DdL1lkxWpXo0+>boOl4*>^rJ&D?XPdaVlJ}TN$DYKW2eWstxs5m&AT{(Ci)cHgaeeT-mgV z@zBp^TZf>Z&YdHVJULIH>_1SJk!@^Xz`SqYe#Qw*lC`%&i@eeo^3^ZBtCDb>Cx5%* z7xESt2xnZ(^QMgIUU}q>L+8w<|v~ z%*&8$Z*QNNo(|PiViJiG&LsOEEXdd2DjJFMMX|j+-EifaYFa@Ke;GM_+_dHnrjJ2^ z014Yy1qGs9TwDxwLLQV{N-bxepl8l(vB+e#nVvGfuX$P>H8MGf5f=Ulr6tKtu~lEM zcip~p>Cz5BckC!%EuvnyhoZ=XSEs6DlN7v82j6V-Fy5N7)8yl`vyh4^u8g&#>bE}g zmTnnPcV>1gzM*_7d4^uq^;_q~3zF*cm*tziMpF9FPM7}dz=c9kn+a#&e+kL$Ez+TbZE-*N=HY< zYGkImb7JYOLrR28%nO&lz3i|qA^nU`g7*@+4*DKFi3$u zX%Z@KFYc?PpdniHE=l<_#!qT4Mf|YfkE)3l>aKzf3ctA}6V}W?sDyNztSD-R-y{1U zk`qzM{L=8=^jOH}ckH6ZFHqf|s2 z^)?hyJ|I%k(K)KPO;rd7$3JZOr17J*!DP;l-6L<~u(gKXW1Jn_Pq_=tBTtOH3s}y> z-DOA_g4&(`0w_2Lro4DD=^-Bb_C&l_B%kDPkC6Z(B4-`EN=FBU(LeJwQ2>axeDXBu*O_)t+YI z=w`WWVIc&4-f!o7+j@JW>Vb`5bU5|vYZjFsG7A+CWk5@r5fe6jya7#iBP&1tSlX<+ z?ya8GyA|Z0$Br4$fYNBG_tu!J4xaqSX4^GK;c_9L9YRXzC&fT-;gP&LjSqItg?FN( zZ(7TVIK?#@@ZVppY5F2C5qhH)Fz5xVnNJoyktQ2{Cj(K&}4 za3>;5hn+rKefs@-_DuYg1$x(^0@!aKyJ+so6xorV{=?JP(wOT@(iZFLvf6*S`7T8K zz?S`DbwW)m-4A!H-KXIrMd@bt%`ONLG;o(@7B=SbfbHb+UZ%ZOX25?-Kvb*k#s7vVF?i^o| zyiXX=Zi1cUQX9_G*;GRBwc{m83S;lSfB!z&H>%YAlCiPo7D36ZI|U}Cun)9x>RG3M z&OGiFmTQQ7S+RO0X8tq%#s$o{RM1R;HqUmEsI4$|WS0@)D?e&0CJs7JuT?_X+U`vZ zi|gXr+Y+x0`sC}B6;v~T^uc4v#`m;i^Tpxa`_EGCMHT%-mF@78!GGscP6-GK^fA=% zplujPS*X*t$CsBez6Ov=f8Wsa`H44x8PD&B|2Vy^x3)e(tI^W&$NhG3 z#k<(6ibAy+YRh!b?6O>*$(E!aIjefM6VMJbTkk=2W~zT?Fs=`z1+FkqI`QspMBkj^ z=?4Bnb~8K5YG05VMl@ZoCp_w?iA5UdzPXq9RL_sxXC5@yVU{-OS(0;Qm05mZXNz9E zm^8iVs?~?V8X1Y2=8Mo^dPJ!CE{~&~#lp1kAPF8;m*KP6#h>HDiIwS}m(UAZSw&Y? zw(s7(tzAh8j$Uy&Z`1cyXBX4qb7YT*Z~;$*>tIdI^#+C4sG{rdFAYP(oV*9)!-t2D z;1=U<(qXj2cBkvj#8F1^QWWgDZ(*&SAPoVc)sd79?;KIOPL#;P(kd^Yv#=#Uc5Y%u+sOJ}1h&-zddW~*>`XpZDIi!+D*E2EY%m}B{y zNZ*k*;Q6nw{?GGlq5osrj{cAHc3rmeM_;qn>@oEoq#Wx{ckDi0s(BFW0HQmg1E8SB zK=m+YmXButgPdZ`q}Wv#te1M^V{B(#<;fRM>R8Gdp`iKxCm$|07d-Dp5#+z4@npWc z;TmJ!IEia`p%w*^ydGWzBq6WpHVZZ%F*5Qw0>45>Jm5BxpFe+Ie-}{y#2~jC*8m7}H*5Kp)e8#=)lYHQ*m*#t zQ@A#kz=W)pY{(;nvlxn=KMf$S%<`I7Waj-9mU_mV)Y0afx^>10Pxi zu{eM(xKXMkgfCvjo2}_2;d5B0DIno&oZhhjfHRfLfLP|oQUv_^ec~IRd~#`(io9W! zZL_ziHK&ZSMHWl#ydn0eN+XftCCQ`aY%Z0ewjJILACddr)_c&AOH2qv2Z;Up0X43n z=!fr586*__)GvRwYxl09TJhSEnoq5_`R?RNo(vK3I-wa=9tJyxbHqqnNC!__b$(c)^SJbZ56gf?yepZF$E z3IBmZ!Km!coqBK0E5Nb=sD=uq%a4dhq#08P>hX4bcp;cTt>3>JfD1<%W${FxYJln~ z+ZTg(MbtD+kp}M6|Bg3@8X(@(MymIZ z*zCKK47-#4^fz{+XdSfaUe&n^SwXj9hvl1Y{1X=w1LE-zLxliB{%4jIATh%r7lNBG z_D{>O*vAps$>XRdYhq&J3Ze(xN>H+s_~A{e!DKpm(x^w!x9JpM)*5m*io8Z zYI8mD8(-GtB0~w2H_Q*-=AC&S7ZRXZDU;Ca2??nX_gasNin;~-;u(lYw?LA9Hp_Ak9^NIHefzkBscgL+9WrtpGrLHDVd{2O z1y6yv4)`?E6#3`XMRALbLw+1tVjA8{&1za<+wB(AC=aj)ac8ftB4}p~COxO=%Ez>_rRQ$Ad#2<}+YpAt9z-Gc_EA zvF1>I_;&`%o~2mVp)LjoTf{YP{{H5X|7&3lN<#(uH7_bG%0@{F(CWueXBV5DIm573 z2(3^YrfeSmejXy9`2E>~KmHs?1S&<5T%r%Shh*3EMW}}}Kee=k6y5uU?Z*ssGw!>* z4eYKwZjCKo8~hmECXg5>FP~tYNy+by$^or$FeMrX7;Y;Ii6(*M0yLuKa^Cjs+nHe3 zfjYIiKT%qCWtc(S_|H3o9eu;g%2jIHYH4K!Yod1YZiwrx6bsnZT? zPZxRy1)}_X)wq;05UAcCU4BX7H!PORD?RSmkrJ5ryFqpF-)j+S`Kg9n`N|YP==6qH zxoeu^9c^yoHc`upfRqEap&R|=DDxdtvp)0*ee@`@i+iY1FeoSpO032=O?bBmT87S9 zYg%J@0$MsMK;eR6KM?uO(avM_5*xd1AdG;md*wd}3s9$&z`0ZpMYaD%Z@H*#9v5ct; zd(ely3YJ0Q4Y+uOvphYscRG^3?F-&)PbMx+FOb9czfN4760R^_=EsCBcbIY+YAl-X zKe~K`)iGU0m~`j(v11iMtNr6&k2f4Ah0bD*{q1G`O}dlv!b-|eI@M$zH=w`(V!gpjcj<1iT7>F ze@6=c)f4#tQvd%aEnDVA2Zx7;2SUvgGZFgliioOja9w&MaHx9|h+iezg@O2d zUmO2FCI}Fw3{9i5cOM25gv&vn3AF#2k%8=t5ZFd=fm93CC#LTIKCZ?g_~*d5rXMrY1E9{rM^FEZ0{ z;l_=RRl5IC_kj%4RA7h`g=3zEDrS0mdXBZl4*Ipb_X_ z%Zs=m+MQVEC53zM=+-4>q9ou<&8~Dq8s&h$;xVJtG+OqizS3G#*4D!-!~m9lOQ&|$Z%y`jDdmrElNSjp1d^*Wo=q^6qjYwR?v5K zqv*ykU*_m+Ym+YF1YsNdujj)>_l?ZH+}5XZ`-|B%jzKdZ4=xF#6szmk6pfA1=E`l+ zy1QS~XSYR{MYg2CZ#zD;5Kq78K5hqe1wj53tAkJ&wEaC6*n&Yc0@Tj8JDo~U-2~Yz zx|Crze9^Cem#d3v0%-TcN90Va+O}4t{8W3s)ilgjIv^QP(3M8?oSk<8&P?(8FF8cuWz*&6mu#UG;FfXVL!t-bF_WM6K5hsB^l|C}w^db~6@+K*|l7|i*5=(l)g(wz$)vz!Jw0$&};O;?Fbp3H% zklXJsTu>+n=b!qPmS>3~qN3ig8T8Tg37ndpOb`A|N%Yox-Zz5d*N}+B^?td9LWd49A`EOkvoPz$&tQTj!=`Qt@8MH5+GF_y28o$GC-ZJ+_FItSzRXZx>G8Smn>y2TOS5@A;0Pzq#8En=4nZ zZXRREsxg%_%$@AY0(;UNOV58KX%0hq3tB68w@b+~+O*N?(CqnRcDe^Nrew1}7bd`_ zl_QEh^fzC103`8s|6k*oA3rw#VTNrp?jRQZn~C1dbzx{{T(}?(bZW@ebBSlz{;P}2 z{XgyO{+~0>|K3Izjbd2;|1UemtoldOIwr|_^JgHYVJy8&r*gVDZquuMT0lKOhNV8!M44OonfL{l!3 zf$AC#o>mMaMubr|#DHU2;XdQMABYLjrVy)w;Ft)5LJiFc*k!=DF!Ba8 zN*(g@6KxA!z+0 z<(ED|?6pHzSE{E6?cwX~{Pl}D*pQrSEjNniqnhVN1pz^-(fi@UhZD223|m7)y(zDb z5g{{y_f4ZiN*O!LVw@|!@b~swSnQVKku`kahu2(Jmf7`qu|A*ZRHYqU`B$3JE_atjItcXLE@H#(8Nr}_&9`guU z#&%+#YCbdDz%UaZO#q}QZxSn_;5#ikkKMcXn6h?tT^&nqBoF(B><^Hf|M)Sy!d^h4 zrltmGC0VbKV|V{gO%339!XQDEC+&U=j%_br-Um{l$#X@0Ym~98^7VpmB)p<-?UOed z0mPHzZ>!kiPM<%|4N)|Z266Dbq262vTL}{a)>omLvYwbd(2z@{o(40z(edU4S?waP zKgYp3NW)bT-hG?0z^zba4mtnP*vm^983eu@pT0~^ZriNUIK$2I@U|FrpQ$HR zOQ1P#1j41@jHQU9_!n#}u&(`C$N?);LTNxj)%08cbDIeR10hdNzlL2Do(hA;%wVd& zd-n=bsnXKYHWc;+YdOZCoy{@=0>bTp0H*S^E!Fuw1@0-00jz6Py$ab!?_vi*N{^$m z<~Y22Mn*<_%`JcsN7&`VG?Q8!@V85)prc+1E=$)M_{bF`0^cBEl>Y+OP!~^Cll~Kz z2`( zV4j*kGG%Qr=dz4Bl1j0(w1i?15)7J~qpMad{p%Yqo+bf#Z{Lv8Qq--g*y!4Su>^x5 z9O{VwVuS43yLY?qmGYJkv@s3BYOD%sZQ*q)uCjGI? z-_fmy%s!pY*n)H?yxj_552zh((KT5nkzS>xF~RB~aed0$c@O^w?0>5fjJEW#8A)m*BgQ2fkeJ{nSaE0R4e$$)HR{Y&O?@qkx3Zj znH6f~n6ig6;uorAp0eMlqt-xgSWVz*Lc)I5``^DG2LUVxV89{L2W5dH$pc3P%|7e+ zieD=c{#toGa+C)I6t7;mHsz-)LXv?{QxHgYo(6WC`jbXd=@Z;zQ=g^zb`9TJIQj

    |>@SN1jPk{0&zv^t03 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 W*rid;U&;{poj787IG^Mq6#j3958o#M From 1380288ea552fc2b67b386dd4574e09b9a9c7ecf Mon Sep 17 00:00:00 2001 From: Spades Date: Tue, 14 Jun 2016 16:20:37 -0400 Subject: [PATCH 50/50] Fixes FiveSeven while I'm here. --- icons/obj/gun.dmi | Bin 58989 -> 58990 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/gun.dmi b/icons/obj/gun.dmi index 9695800a21414e144f1ee474b121f05bc884023d..81ad5fa391472e05dc9f4fa7c272d0165870b7f3 100644 GIT binary patch delta 1634 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