From d5b227a0ca0c12305f3b78af3ade8cd1ec9f8162 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sat, 11 Jan 2020 23:34:07 -0600 Subject: [PATCH 001/137] adds the POOL to box station F in chat for dorms 7. --- _maps/map_files/BoxStation/BoxStation.dmm | 952 +++++++++++++----- code/__DEFINES/pool.dm | 10 + code/game/area/Space_Station_13_areas.dm | 4 + code/game/sound.dm | 2 + .../living/simple_animal/hostile/sharks.dm | 91 ++ code/modules/pool/pool_controller.dm | 336 +++++++ code/modules/pool/pool_drain.dm | 129 +++ code/modules/pool/pool_effects.dm | 29 + code/modules/pool/pool_main.dm | 201 ++++ code/modules/pool/pool_noodles.dm | 44 + code/modules/pool/pool_structures.dm | 149 +++ code/modules/pool/pool_wires.dm | 59 ++ icons/effects/96x96.dmi | Bin 1677605 -> 1802152 bytes icons/mob/inhands/items_lefthand.dmi | Bin 19554 -> 20338 bytes icons/mob/inhands/items_righthand.dmi | Bin 21628 -> 22343 bytes icons/mob/sharks.dmi | Bin 0 -> 3389 bytes icons/obj/machines/pool.dmi | Bin 0 -> 1981 bytes icons/obj/toy.dmi | Bin 33413 -> 33646 bytes icons/turf/areas.dmi | Bin 38318 -> 38486 bytes icons/turf/pool.dmi | Bin 0 -> 28706 bytes sound/effects/fillingwatter.ogg | Bin 0 -> 20547 bytes sound/effects/pooldrain.ogg | Bin 0 -> 28630 bytes sound/effects/splash.ogg | Bin 0 -> 16328 bytes sound/effects/water_wade1.ogg | Bin 0 -> 11450 bytes sound/effects/water_wade2.ogg | Bin 0 -> 10965 bytes sound/effects/water_wade3.ogg | Bin 0 -> 9065 bytes sound/effects/water_wade4.ogg | Bin 0 -> 10698 bytes sound/effects/watersplash.ogg | Bin 0 -> 9609 bytes sound/misc/crack.ogg | Bin 0 -> 5418 bytes sound/misc/crunch.ogg | Bin 0 -> 9517 bytes tgstation.dme | 9 + 31 files changed, 1768 insertions(+), 247 deletions(-) create mode 100644 code/__DEFINES/pool.dm create mode 100644 code/modules/mob/living/simple_animal/hostile/sharks.dm create mode 100644 code/modules/pool/pool_controller.dm create mode 100644 code/modules/pool/pool_drain.dm create mode 100644 code/modules/pool/pool_effects.dm create mode 100644 code/modules/pool/pool_main.dm create mode 100644 code/modules/pool/pool_noodles.dm create mode 100644 code/modules/pool/pool_structures.dm create mode 100644 code/modules/pool/pool_wires.dm create mode 100644 icons/mob/sharks.dmi create mode 100644 icons/obj/machines/pool.dmi create mode 100644 icons/turf/pool.dmi create mode 100644 sound/effects/fillingwatter.ogg create mode 100644 sound/effects/pooldrain.ogg create mode 100644 sound/effects/splash.ogg create mode 100644 sound/effects/water_wade1.ogg create mode 100644 sound/effects/water_wade2.ogg create mode 100644 sound/effects/water_wade3.ogg create mode 100644 sound/effects/water_wade4.ogg create mode 100644 sound/effects/watersplash.ogg create mode 100644 sound/misc/crack.ogg create mode 100644 sound/misc/crunch.ogg diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index b6463f7147..fe03105469 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -3984,7 +3984,12 @@ /turf/open/floor/plasteel, /area/security/brig) "aiA" = ( -/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, /turf/open/floor/plating, /area/maintenance/fore/secondary) "aiB" = ( @@ -6153,11 +6158,8 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anE" = ( -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/obj/machinery/door/airlock/external{ - req_access_txt = "13" +/obj/structure/cable{ + icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6165,8 +6167,13 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anG" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/fitness"; + name = "Pool Room APC"; + pixel_y = -23 + }, +/obj/structure/cable{ + icon_state = "0-8" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6327,7 +6334,7 @@ dir = 10 }, /turf/closed/wall, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "aof" = ( /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/fore) @@ -7161,14 +7168,10 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqs" = ( -/obj/machinery/door/airlock{ - id_tag = "Room Two"; - name = "Room Seven - Luxury Suite" - }, -/obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/dorms) +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) "aqu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -48098,6 +48101,10 @@ }, /turf/open/floor/plasteel, /area/engine/engine_smes) +"cnT" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "cnU" = ( /obj/structure/cable{ icon_state = "4-8" @@ -50849,6 +50856,9 @@ /obj/structure/chair/wood/normal, /turf/open/floor/wood, /area/maintenance/bar) +"cxu" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cxA" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -53025,6 +53035,22 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"cTn" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) +"cTs" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"cTB" = ( +/obj/structure/table/glass, +/obj/item/clothing/under/shorts/blue{ + desc = "So comfy and easy to wear!" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cTD" = ( /obj/structure/cable{ icon_state = "1-2" @@ -53330,6 +53356,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/crew_quarters/toilet) +"dDf" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "dHb" = ( /obj/structure/chair/comfy/black{ dir = 4 @@ -53393,6 +53423,16 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/captain) +"dYi" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/yellow, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "eaI" = ( /obj/structure/table/reinforced, /obj/item/radio/intercom{ @@ -53402,6 +53442,9 @@ /obj/item/stock_parts/cell/high, /turf/open/floor/plasteel/white, /area/science/circuit) +"ebQ" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "edH" = ( /obj/structure/cable{ icon_state = "1-2" @@ -53443,6 +53486,9 @@ /obj/effect/turf_decal/tile/red, /turf/open/floor/plasteel, /area/hallway/primary/fore) +"elD" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "epV" = ( /obj/structure/bed, /obj/machinery/button/door{ @@ -53479,10 +53525,12 @@ "evR" = ( /turf/open/floor/plating, /area/maintenance/bar) +"ewJ" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "ewZ" = ( -/obj/structure/chair/sofa/right, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eyM" = ( /obj/machinery/mineral/ore_redemption{ input_dir = 2; @@ -53491,6 +53539,15 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"eBq" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) +"eHh" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "eHI" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 @@ -53611,12 +53668,20 @@ }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"eWj" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "eXm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"eXY" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fbm" = ( /obj/structure/chair/comfy/brown{ dir = 4 @@ -53633,6 +53698,10 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"fbR" = ( +/obj/machinery/pool/drain, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fcG" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -53655,6 +53724,12 @@ /obj/item/storage/fancy/donut_box, /turf/open/floor/plasteel/white, /area/science/circuit) +"fmH" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "fnC" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -53738,6 +53813,9 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"fwe" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "fxa" = ( /obj/structure/chair/wood/normal, /turf/open/floor/wood{ @@ -53836,13 +53914,10 @@ }, /area/crew_quarters/theatre) "fOc" = ( -/obj/structure/bed, -/obj/item/bedsheet/random, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8 +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "fPs" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -53856,13 +53931,6 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "fQF" = ( -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - dir = 5; - icon_state = "roomnum"; - name = "Room Number 7"; - pixel_y = 24 - }, /obj/structure/chair/sofa/right, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -54016,6 +54084,13 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"gno" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/yellow, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "gtL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -54055,6 +54130,9 @@ "gJg" = ( /turf/closed/wall/mineral/titanium, /area/space/nearstation) +"gJT" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "gKk" = ( /obj/machinery/vr_sleeper{ dir = 4 @@ -54095,9 +54173,15 @@ /turf/open/floor/plating, /area/crew_quarters/fitness) "gQn" = ( -/obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "gSH" = ( /obj/structure/grille, /turf/closed/wall/r_wall, @@ -54147,14 +54231,14 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "haX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ id = "holoprivacy"; name = "Holodeck Shutters" }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/plating, /area/crew_quarters/fitness) "hcd" = ( @@ -54242,6 +54326,10 @@ /obj/effect/landmark/carpspawn, /turf/open/space/basic, /area/space) +"hsi" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "htr" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -54261,6 +54349,10 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"hxK" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "hzw" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -54338,6 +54430,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) +"hSk" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "hSU" = ( /obj/structure/chair/sofa/left, /obj/structure/window{ @@ -54376,6 +54471,16 @@ }, /turf/open/floor/plasteel/dark, /area/hydroponics) +"icK" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"idP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/crew_quarters/fitness) "idX" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -54386,32 +54491,20 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "iep" = ( -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 - }, -/obj/structure/toilet{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellowsiding{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "ier" = ( -/obj/machinery/button/door{ - id = "Room Two"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 7; - pixel_y = -24; - specialfunctions = 4 +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) +"ifI" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "igT" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck{ @@ -54450,6 +54543,10 @@ /obj/structure/falsewall, /turf/open/floor/plating, /area/maintenance/bar) +"inX" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "ioB" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -54583,6 +54680,9 @@ }, /turf/open/floor/carpet, /area/crew_quarters/theatre) +"iLt" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "iMG" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-14" @@ -54761,6 +54861,9 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"jiN" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jiR" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -54878,6 +54981,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/security/execution/transfer) +"jvc" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jvN" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -54891,6 +54997,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/heads/captain) +"jwJ" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "jzi" = ( /obj/structure/grille, /obj/structure/lattice, @@ -54974,6 +55083,13 @@ }, /turf/open/floor/wood, /area/maintenance/port/aft) +"jKX" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"jLH" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jLM" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -55031,6 +55147,11 @@ }, /turf/open/floor/plasteel, /area/science/circuit) +"jTh" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "jVl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -55060,11 +55181,11 @@ /turf/open/floor/circuit, /area/ai_monitored/nuke_storage) "jYI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "kay" = ( /obj/structure/table, /obj/item/reagent_containers/food/snacks/bluecherrycupcake{ @@ -55084,6 +55205,10 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"kcw" = ( +/obj/machinery/pool/controller, +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "kdm" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -55126,18 +55251,25 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "khB" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 +/obj/machinery/door/airlock/maintenance{ + name = "Dormitories Maintenance"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"kjx" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "klu" = ( /obj/structure/lattice, /turf/open/space/basic, /area/space) +"knl" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "knx" = ( /obj/machinery/door/airlock/public/glass{ name = "Central Access" @@ -55158,6 +55290,10 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"knN" = ( +/obj/structure/table/glass, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "kob" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, @@ -55243,6 +55379,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, /area/science/mixing) +"kBi" = ( +/obj/structure/table/glass, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "kCk" = ( /obj/structure/mirror{ pixel_y = 32 @@ -55261,6 +55401,12 @@ /obj/structure/lattice, /turf/closed/wall/r_wall, /area/ai_monitored/nuke_storage) +"kDV" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"kER" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kHJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 @@ -55309,6 +55455,14 @@ }, /turf/open/space, /area/solar/port/aft) +"kLE" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/structure/table/glass, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "kLR" = ( /obj/machinery/door/poddoor/shutters/preopen{ desc = "Privacy shutters for the Private Study. Stops people spying in on your game."; @@ -55556,6 +55710,11 @@ /obj/item/folder/blue, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"lWW" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "lYU" = ( /obj/effect/turf_decal/tile/red{ dir = 8 @@ -55587,6 +55746,9 @@ /obj/item/reagent_containers/food/snacks/cherrycupcake, /turf/open/floor/wood, /area/crew_quarters/bar) +"maQ" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mbD" = ( /obj/structure/closet{ name = "Suit Closet" @@ -55612,16 +55774,32 @@ /obj/item/clothing/under/lawyer/red, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"mes" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) +"meB" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "mfb" = ( /obj/structure/toilet{ dir = 8 }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"mhk" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "mjr" = ( /obj/structure/reagent_dispensers/keg/milk, /turf/open/floor/wood, /area/crew_quarters/bar) +"mkX" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mlr" = ( /obj/structure/cable{ icon_state = "1-2" @@ -55637,6 +55815,13 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"moy" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"mpC" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "mpI" = ( /obj/structure/table/wood, /turf/open/floor/wood{ @@ -55654,6 +55839,9 @@ /obj/item/reagent_containers/glass/beaker, /turf/open/floor/plating, /area/maintenance/bar) +"mrD" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "mrR" = ( /obj/effect/spawner/lootdrop/keg, /turf/open/floor/wood, @@ -55688,6 +55876,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet) +"mFq" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"mGC" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "mHC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -55704,6 +55898,9 @@ /obj/item/clothing/gloves/boxing, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"mJb" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mNi" = ( /obj/machinery/light_switch{ pixel_x = -20 @@ -55716,6 +55913,10 @@ /obj/structure/table/wood, /turf/open/floor/wood, /area/maintenance/bar) +"mQL" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "mQR" = ( /obj/machinery/camera{ c_tag = "Gravity Generator Room"; @@ -55741,6 +55942,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"mWc" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mXB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, @@ -55823,6 +56027,10 @@ /obj/structure/closet/athletic_mixed, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"nqi" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "nrR" = ( /obj/machinery/door/airlock{ name = "Unisex Restrooms" @@ -55862,6 +56070,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"nvQ" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "nxv" = ( /obj/machinery/power/apc{ areastring = "/area/construction"; @@ -56012,6 +56223,9 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"ogC" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ohX" = ( /obj/structure/table/wood, /obj/machinery/airalarm{ @@ -56020,6 +56234,9 @@ }, /turf/open/floor/wood, /area/security/vacantoffice) +"ois" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "olr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, @@ -56042,6 +56259,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"opo" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "orw" = ( /obj/structure/table, /obj/structure/cable{ @@ -56188,6 +56408,10 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"paJ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "phu" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4; @@ -56223,6 +56447,17 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"pjC" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"pjY" = ( +/obj/structure/table/glass, +/obj/item/clothing/under/shorts/blue{ + desc = "So comfy and easy to wear!" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "poa" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 @@ -56238,6 +56473,16 @@ }, /turf/open/floor/plasteel, /area/science/mixing) +"poJ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "ppY" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -56265,13 +56510,15 @@ /turf/open/space/basic, /area/space/nearstation) "prU" = ( -/obj/item/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"psr" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 16 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ptV" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56317,6 +56564,9 @@ }, /turf/open/space, /area/solar/starboard/aft) +"pGe" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "pHl" = ( /obj/structure/table, /obj/item/storage/box/beakers{ @@ -56349,6 +56599,20 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"pIN" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"pJT" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "pLn" = ( /obj/machinery/conveyor/inverted{ dir = 5; @@ -56477,12 +56741,12 @@ }, /turf/open/floor/plasteel/dark, /area/bridge/meeting_room) +"pXP" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "pZv" = ( -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qbx" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/drinks/soda_cans/starkist{ @@ -56491,6 +56755,11 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"qen" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "qeQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -56549,12 +56818,8 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "qoP" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/chair/sofa/left, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qpA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -56564,12 +56829,21 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"qpD" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"qty" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qux" = ( /obj/structure/chair/sofa/left{ dir = 1 }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"quP" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "quT" = ( /obj/structure/lattice, /obj/structure/grille/broken, @@ -56625,6 +56899,13 @@ }, /turf/open/floor/carpet, /area/bridge/meeting_room) +"qDe" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/yellowsiding/corner, +/area/crew_quarters/fitness/pool) "qEv" = ( /obj/structure/table/wood/fancy, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -56675,16 +56956,18 @@ }, /turf/open/floor/plating, /area/security/prison) +"qMZ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qNs" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - on = 0; - pixel_x = -7; - pixel_y = 12 +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 8 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "qOf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -56718,6 +57001,9 @@ }, /turf/closed/wall/r_wall, /area/science/circuit) +"rdr" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "reZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -56736,6 +57022,9 @@ /obj/machinery/vending/cola/space_up, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"rhB" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "riA" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -56756,11 +57045,29 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"rkt" = ( +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"rlZ" = ( +/obj/machinery/pool/filter{ + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "rmX" = ( /obj/structure/table, /obj/item/reagent_containers/food/drinks/beer, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"rnn" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"rrz" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "rsv" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -56886,6 +57193,12 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) +"rOV" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"rSl" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rTQ" = ( /obj/machinery/vr_sleeper{ dir = 8 @@ -56901,12 +57214,33 @@ dir = 8 }, /area/crew_quarters/fitness) +"rUi" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"rUl" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "rUQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 }, /turf/open/floor/plating, /area/space/nearstation) +"rZe" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"saF" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/yellow, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "saK" = ( /obj/structure/closet/crate, /obj/item/target/alien, @@ -56919,6 +57253,12 @@ /obj/item/gun/energy/laser/practice, /turf/open/floor/plasteel/white, /area/science/circuit) +"sby" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "sdL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -56935,6 +57275,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) +"sfL" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sgV" = ( /obj/machinery/atmospherics/components/binary/pump/on{ dir = 4; @@ -57065,6 +57408,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"svI" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sxs" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/table, @@ -57118,6 +57464,9 @@ dir = 1 }, /area/hallway/primary/starboard) +"sKF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sLr" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance, @@ -57143,6 +57492,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"sNP" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sOs" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57191,13 +57543,15 @@ }, /turf/closed/wall/r_wall, /area/engine/gravity_generator) +"sYU" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sZa" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 }, /obj/machinery/camera{ - c_tag = "Bar Backroom"; - dir = 2 + c_tag = "Bar Backroom" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -57215,6 +57569,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/hallway/secondary/service) +"tdy" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tdF" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable{ @@ -57237,6 +57594,10 @@ icon_state = "wood-broken5" }, /area/maintenance/bar) +"tmI" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "tqg" = ( /obj/machinery/cryopod{ dir = 4 @@ -57302,6 +57663,12 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"tsV" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"ttU" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "tuj" = ( /obj/structure/light_construct{ dir = 1 @@ -57320,6 +57687,9 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/wood, /area/crew_quarters/bar) +"tuT" = ( +/turf/open/pool, +/area/crew_quarters/fitness) "tAb" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57454,12 +57824,10 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "tOU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/obj/machinery/light/small, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "tPT" = ( /obj/machinery/chem_dispenser/drinks/beer, /obj/structure/table/wood, @@ -57523,6 +57891,10 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"tYJ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "uaw" = ( /obj/machinery/power/apc{ areastring = "/area/storage/art"; @@ -57535,6 +57907,12 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"ubU" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"ucF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "udi" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57687,6 +58065,10 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"uvF" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) "uvZ" = ( /obj/structure/mineral_door/wood, /turf/open/floor/wood, @@ -57722,6 +58104,12 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"uEr" = ( +/obj/structure/pool/Rboard, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "uNu" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -57816,6 +58204,9 @@ dir = 4 }, /area/crew_quarters/fitness) +"vcw" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "vdz" = ( /obj/machinery/shower{ dir = 8 @@ -57881,6 +58272,9 @@ /obj/structure/cable, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"vwj" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vxh" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ @@ -57934,6 +58328,10 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"vBS" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "vCb" = ( /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plasteel, @@ -57946,6 +58344,10 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/space/nearstation) +"vEZ" = ( +/obj/structure/pool/Lboard, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vFt" = ( /obj/machinery/portable_atmospherics/pump, /turf/open/floor/plating, @@ -58036,6 +58438,9 @@ /obj/item/coin/gold, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"vPp" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vPE" = ( /obj/machinery/light{ dir = 4 @@ -58066,6 +58471,12 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"vTh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "vUR" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, @@ -58126,6 +58537,9 @@ "wkN" = ( /turf/closed/wall, /area/science/circuit) +"wlH" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "woR" = ( /obj/machinery/cryopod{ dir = 1 @@ -58217,6 +58631,16 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) +"wwQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -24 + }, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "wyM" = ( /obj/machinery/door/airlock{ name = "Theatre Backstage"; @@ -58310,6 +58734,9 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"wHg" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "wHz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -58336,6 +58763,11 @@ /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, /area/hydroponics) +"wQy" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "wUY" = ( /obj/structure/table, /obj/item/stack/packageWrap, @@ -58430,6 +58862,9 @@ }, /turf/open/floor/plating, /area/hallway/secondary/service) +"xiQ" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "xkk" = ( /obj/structure/piano, /obj/structure/window/reinforced, @@ -58448,6 +58883,10 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"xmO" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "xpx" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -58475,6 +58914,9 @@ }, /turf/open/floor/plating, /area/security/brig) +"xrD" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "xzh" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -58522,6 +58964,9 @@ }, /turf/open/space/basic, /area/space/nearstation) +"xPF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xWM" = ( /obj/structure/grille/broken, /turf/open/floor/plating, @@ -58549,6 +58994,19 @@ /obj/machinery/suit_storage_unit/rd, /turf/open/floor/plasteel, /area/science/mixing) +"ydH" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"ygu" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "yiN" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -93088,7 +93546,7 @@ aif aif aif aif -aif +pIN bkV fvk alK @@ -93340,12 +93798,12 @@ abp abp hlY ahn -aiA -aiA +ahn aiA ahn +ahn hYW -anF +fmH aod ahn apx @@ -93597,12 +94055,12 @@ unE abp nea ahn -aaa -aaf -aaf +ahn +rkt ahn ahn -anE +ahn +fmH aod aoK sgV @@ -93854,9 +94312,9 @@ aaa adR ahn ahn -aaa -aaa -aaa +ahn +ydH +ahn aaf ahn anG @@ -94111,13 +94569,13 @@ aaa gXs aaa aaa -aaa -aaa -aaa +jmC +jmC +jmC aaa ahn khB -ahn +rnn ahn ahn ahn @@ -94372,16 +94830,16 @@ aaa aaa aaa aaa -aag -aag -aag -arf -iep +rnn +poJ +qDe +wwQ +vTh gQn -arf -myt +vTh +vTh qNs -lMx +idP sjw clO asZ @@ -94629,16 +95087,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -arf -pZv -tQk -cVp -jdT -ier -arf +inX +mJb +mrD +rlZ +qty +qty +qty +qty +lWW +arj arm vYa aya @@ -94886,14 +95344,14 @@ aaa aaa aaa aaa -aaa -aaa -aaa -arf -arf -arf -arf -iES +inX +mJb +mrD +qty +qty +qty +tuT +qty jYI aqs hVw @@ -95143,16 +95601,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -arf -ewZ -jdT -tOU -arf +inX +mJb +mrD +qty +qty +qty +qty +qty +lWW +uvF fQF qbx qux @@ -95400,16 +95858,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -arf -qoP -prU -fOc -arf +inX +mJb +kcw +qty +qty +fbR +qty +qty +lWW +arj oSO sAI fJa @@ -95657,16 +96115,16 @@ aaa aaa aaa aaa -aaa -aaa -aae -aaa -aaa -arf -arf -arf -arf -arf +inX +mJb +mrD +qty +qty +qty +qty +qty +eBq +arj mTp qEv kRk @@ -95914,15 +96372,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs +inX +mJb +mrD +qty +qty +qty +qty +qty +lWW kHJ rEV rEV @@ -96171,15 +96629,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs +inX +icK +mrD +psr +qty +qty +qty +qty +lWW aqu aro aro @@ -96428,15 +96886,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa +inX +kBi +mrD +qty +qty +vEZ +qty +qty +lWW aqu aro aro @@ -96685,15 +97143,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa +inX +kjx +cTn +qen +qen +uEr +qen +qen +mes aqu aro aro @@ -96942,15 +97400,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa +rnn +saF +mJb +mJb +mJb +mJb +mJb +mJb +mJb aqu aro aro @@ -97199,15 +97657,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa -aaa +inX +inX +gno +mJb +mJb +mJb +mJb +mJb +kBi aqu aro aro @@ -97457,14 +97915,14 @@ aaa aaa aaa aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa +inX +inX +dYi +mJb +mJb +cTB +cTB +kLE haX rEV rEV @@ -97712,19 +98170,19 @@ aaS aaS aaS aaS -aaS -aaS -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa aaa aaa aaa +inX +rnn +inX +inX +inX +inX +rnn +arj +arj +arj arj cRz avD @@ -97970,8 +98428,8 @@ aaf aaa aaf aaa -aaS -aaf +aaa +aaa aaa aaa aaa @@ -98227,7 +98685,7 @@ ads adS aeG aaa -aaS +aaa aaa aaa aaa diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm new file mode 100644 index 0000000000..6d1c9f22df --- /dev/null +++ b/code/__DEFINES/pool.dm @@ -0,0 +1,10 @@ +//TODO: move these to their own file +#define POOL_FRIGID 1 +#define POOL_COOL 2 +#define POOL_NORMAL 3 +#define POOL_WARM 4 +#define POOL_SCALDING 5 + +#define POOL_REAGENT_TICK_INTERVAL 5 + +GLOBAL_LIST_INIT(blacklisted_pool_reagents, list("plasma")) \ No newline at end of file diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index fa66306302..b38709fee0 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -461,6 +461,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Recreation Area" icon_state = "fitness" +/area/crew_quarters/fitness/pool + name = "Pool Area" + icon_state = "pool" + /area/crew_quarters/cafeteria name = "Cafeteria" icon_state = "cafeteria" diff --git a/code/game/sound.dm b/code/game/sound.dm index e7562476a8..11e026109a 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -184,6 +184,8 @@ soundin = pick('sound/items/bikehorn.ogg', 'sound/items/AirHorn2.ogg', 'sound/misc/sadtrombone.ogg', 'sound/items/AirHorn.ogg', 'sound/effects/reee.ogg', 'sound/items/WEEOO1.ogg', 'sound/voice/beepsky/iamthelaw.ogg', 'sound/voice/beepsky/creep.ogg','sound/magic/Fireball.ogg' ,'sound/effects/pray.ogg', 'sound/voice/hiss1.ogg','sound/machines/buzz-sigh.ogg', 'sound/machines/ping.ogg', 'sound/weapons/flashbang.ogg', 'sound/weapons/bladeslice.ogg') if("goose") soundin = pick('sound/creatures/goose1.ogg', 'sound/creatures/goose2.ogg', 'sound/creatures/goose3.ogg', 'sound/creatures/goose4.ogg') + if("water_wade") + soundin = pick('sound/effects/water_wade1.ogg', 'sound/effects/water_wade2.ogg', 'sound/effects/water_wade3.ogg', 'sound/effects/water_wade4.ogg') //START OF CIT CHANGES - adds random vore sounds if ("struggle_sound") soundin = pick( 'sound/vore/pred/struggle_01.ogg','sound/vore/pred/struggle_02.ogg','sound/vore/pred/struggle_03.ogg', diff --git a/code/modules/mob/living/simple_animal/hostile/sharks.dm b/code/modules/mob/living/simple_animal/hostile/sharks.dm new file mode 100644 index 0000000000..2c13223b0e --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/sharks.dm @@ -0,0 +1,91 @@ +//shameless copies of carps. + +/mob/living/simple_animal/hostile/shark + name = "Space Shark" + desc = "The best terror of the seas, next to the kraken." + icon_state = "shark" + icon_living = "shark" + icon = 'icons/mob/sharks.dmi' + icon_dead = "shark_dead" + icon_gib = "carp_gib" + environment_smash = 0 + speak_chance = 0 + turns_per_move = 3 + butcher_results = list(/obj/item/reagent_containers/food/snacks/meat = 3) + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "hits" + speed = 0 + maxHealth = 75 + health = 75 + harm_intent_damage = 18 + melee_damage_lower = 18 + melee_damage_upper = 18 + attacktext = "maims" + attack_sound = 'sound/weapons/bite.ogg' + gold_core_spawnable = 1 + //Space shark aren't affected by cold. + atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) + minbodytemp = 0 + maxbodytemp = 1500 + + faction = list("shark") + +/mob/living/simple_animal/hostile/shark/Process_Spacemove(var/movement_dir = 0) + return 1 //No drifting in space for space sharks....either! + +/mob/living/simple_animal/hostile/shark/FindTarget() + . = ..() + if(.) + emote("me", 1, "growls at [.]!") + +/mob/living/simple_animal/hostile/shark/AttackingTarget() + . =..() + var/mob/living/carbon/L = . + if(istype(L)) + if(prob(25)) + L.Knockdown(20) + L.visible_message("\the [src] knocks down \the [L]!") + + +/mob/living/simple_animal/hostile/shark/laser + name = "Laser-Shark" + desc = "NOW we've jumped the shark." + icon_state = "lasershark" + icon_living = "lasershark" + icon_dead = "lasershark_dead" + icon_gib = "carp_gib" + ranged = 1 + retreat_distance = 3 + minimum_distance = 0 //Between shots they can and will close in to nash + projectiletype = /obj/item/projectile/beam/laser/heavylaser + projectilesound = 'sound/weapons/lasercannonfire.ogg' + maxHealth = 50 + health = 50 + +/mob/living/simple_animal/hostile/shark/kawaii + name = "Kawaii Shark" + desc = "Senpai~ Notice me.." + icon_state = "kawaiishark" + icon_living = "kawaiishark" + icon_dead = "kawaiishark_dead" + speak = list("Oh Senpai","Notice me senpai!","Oh my...","Kawaii~") + speak_emote = list("lovingly says","says") + speak_chance = 2 + turns_per_move = 3 + butcher_results = list(/mob/living/simple_animal/butterfly = 3) + maxHealth = 50 + health = 50 + maxbodytemp = INFINITY + + harm_intent_damage = 0 + melee_damage_lower = 0 + melee_damage_upper = 0 + attacktext = "violently hugs" + vision_range = 0 + +/mob/living/simple_animal/hostile/shark/kawaii/death() + visible_message("[src] says : Senpai, you noticed~!") + LoseAggro() + ..() + walk(src, 0) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm new file mode 100644 index 0000000000..5235803a0f --- /dev/null +++ b/code/modules/pool/pool_controller.dm @@ -0,0 +1,336 @@ +//Originally stolen from paradise. Credits to tigercat2000. +//Modified a lot by Kokojo and Tortellini Tony for hippiestation. +//Heavily refactored by tgstation +/obj/machinery/pool + icon = 'icons/obj/machines/pool.dmi' + anchored = TRUE + +/obj/machinery/pool/controller + name = "\improper Pool Controller" + desc = "An advanced substance generation and fluid tank management system that can refill the contents of a pool to a completely different substance in minutes." + icon_state = "poolc_3" + density = TRUE + use_power = TRUE + idle_power_usage = 75 + var/list/linkedturfs //List contains all of the linked pool turfs to this controller, assignment happens on initialize + var/list/mobs_in_pool = list()//List contains all the mobs currently in the pool. + var/temperature = POOL_NORMAL //1-5 Frigid Cool Normal Warm Scalding + var/srange = 6 //The range of the search for pool turfs, change this for bigger or smaller pools. + var/list/linkedmist = list() //Used to keep track of created mist + var/misted = FALSE //Used to check for mist. + var/cur_reagent = "water" + var/drainable = FALSE + var/drained = FALSE + var/bloody = 0 + var/obj/machinery/pool/drain/linked_drain = null + var/obj/machinery/pool/filter/linked_filter = null + var/interact_delay = 0 //cooldown on messing with settings + var/reagent_delay = 0 //cooldown on reagent ticking + var/shocked = FALSE//Shocks morons, like an airlock. + var/tempunlocked = FALSE + var/old_rcolor + +/obj/machinery/pool/controller/Initialize() + . = ..() + START_PROCESSING(SSprocessing, src) + create_reagents(100) + wires = new /datum/wires/poolcontroller(src) + scan_things() + +/obj/machinery/pool/controller/proc/scan_things() + for(var/turf/open/pool/W in range(srange,src)) + LAZYADD(linkedturfs, W) + W.controller = src + for(var/obj/machinery/pool/drain/pooldrain in range(srange,src)) + linked_drain = pooldrain + linked_drain.pool_controller = src + for(var/obj/machinery/pool/filter/F in range(srange, src)) + linked_filter = F + linked_filter.pool_controller = src + +/obj/machinery/pool/controller/Destroy() + STOP_PROCESSING(SSprocessing, src) + linked_drain = null + linked_filter = null + linkedturfs.Cut() + mobs_in_pool.Cut() + return ..() + +/obj/machinery/pool/controller/emag_act(user as mob) //Emag_act, this is called when it is hit with a cryptographic sequencer. + if(!(obj_flags & EMAGGED)) //If it is not already emagged, emag it. + to_chat(user, "You disable the [src]'s safety features.") + do_sparks(5, TRUE, src) + obj_flags |= EMAGGED + tempunlocked = TRUE + drainable = TRUE + log_game("[key_name(user)] emagged [src]") + message_admins("[key_name_admin(user)] emagged [src]") + else + to_chat(user, "The interface on [src] is already too damaged to short it again.") + return + +/obj/machinery/pool/controller/attackby(obj/item/W, mob/user) + if(shocked && !(stat & NOPOWER)) + shock(user,50) + if(stat & (BROKEN)) + return + + if(istype(W,/obj/item/reagent_containers)) + if(W.reagents.total_volume >= 100) //check if there's enough reagent + for(var/datum/reagent/R in W.reagents.reagent_list) + if(R.name in GLOB.blacklisted_pool_reagents) + to_chat(user, "\The [src] cannot accept [R.name].") + reagents.clear_reagents() + return + if(R.reagent_state == SOLID) + to_chat(user, "The pool cannot accept reagents in solid form!.") + reagents.clear_reagents() + return + reagents.clear_reagents() + W.reagents.copy_to(reagents, 100) + W.reagents.clear_reagents() + user.visible_message("\The [src] makes a slurping noise.", "All of the contents of \the [W] are quickly suctioned out by the machine!\The [src] beeps unpleasantly as it rejects the beaker. It must not have enough in it.") + return + else if(panel_open && is_wire_tool(W)) + wires.interact(user) + else + return ..() + +/obj/machinery/pool/controller/screwdriver_act(mob/living/user, obj/item/W) + . = ..() + if(.) + return TRUE + cut_overlays() + panel_open = !panel_open + to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.") + W.play_tool_sound(src) + if(panel_open) + add_overlay("wires") + return TRUE + +//procs +/obj/machinery/pool/controller/proc/shock(mob/user, prb) + if(stat & (BROKEN|NOPOWER)) // unpowered, no shock + return FALSE + if(!prob(prb)) + return FALSE + var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread + s.set_up(5, 1, src) + s.start() + if(electrocute_mob(user, get_area(src), src, 0.7)) + return TRUE + else + return FALSE + +/obj/machinery/pool/controller/proc/poolreagent() + if(reagents.reagent_list.len > 0) + for(var/turf/open/pool/W in linkedturfs) + for(var/mob/living/carbon/human/swimee in W) + for(var/datum/reagent/R in reagents.reagent_list) + if(R.reagent_state == SOLID) + R.reagent_state = LIQUID + swimee.reagents.add_reagent(R.name, 0.5) //osmosis + reagents.reaction(swimee, VAPOR, 0.03) //3 percent + for(var/obj/objects in W) + if(W.reagents) + W.reagents.reaction(objects, VAPOR, 1) + reagent_delay = world.time + POOL_REAGENT_TICK_INTERVAL + changecolor() + + +/obj/machinery/pool/controller/process() + updateUsrDialog() + if(stat & (NOPOWER|BROKEN)) + return + if (!drained) + updatePool() + if(reagent_delay <= world.time) + poolreagent() + +/obj/machinery/pool/controller/proc/updatePool() + if(!drained) + for(var/mob/living/M in mobs_in_pool) + switch(temperature) //Apply different effects based on what the temperature is set to. + if(POOL_SCALDING) //Scalding + M.adjust_bodytemperature(50,0,500) + if(POOL_WARM) //Warm + M.adjust_bodytemperature(20,0,360) //Heats up mobs till the termometer shows up + if(POOL_NORMAL) //Normal temp does nothing, because it's just room temperature water. + if(POOL_COOL) + M.adjust_bodytemperature(-20,250) //Cools mobs till the termometer shows up + if(POOL_FRIGID) //Freezing + M.adjust_bodytemperature(-60) //cool mob at -35k per cycle, less would not affect the mob enough. + if(M.bodytemperature <= 50 && !M.stat) + M.apply_status_effect(/datum/status_effect/freon) + if(ishuman(M)) + var/mob/living/carbon/human/drownee = M + if(!drownee || drownee.stat == DEAD) + return + if(drownee.lying && !drownee.internal) + if(drownee.stat != CONSCIOUS) + drownee.adjustOxyLoss(9) + else + drownee.adjustOxyLoss(4) + if(prob(35)) + to_chat(drownee, "You're drowning!") + +/* not sure what to do about this part + for(var/obj/effect/decal/cleanable/decal in W) + CHECK_TICK + animate(decal, alpha = 10, time = 20) + QDEL_IN(decal, 25) + if(istype(decal,/obj/effect/decal/cleanable/blood) || istype(decal, /obj/effect/decal/cleanable/trail_holder)) + bloody = TRUE + */ + changecolor() + +/obj/machinery/pool/controller/proc/changecolor() + if(drained) + return + var/rcolor + if(reagents.reagent_list.len) + rcolor = mix_color_from_reagents(reagents.reagent_list) + if(rcolor == old_rcolor) + return // small performance upgrade hopefully? + old_rcolor = rcolor + for(var/X in linkedturfs) + var/turf/open/pool/color1 = X + if(bloody) + if(rcolor) + color1.watereffect.color = BlendRGB(rgb(150, 20, 20), rcolor, 0.5) + color1.watertop.color = color1.watereffect.color + else + color1.watereffect.color = rgb(150, 20, 20) + color1.watertop.color = color1.watereffect.color + else if(!bloody && rcolor) + color1.watereffect.color = rcolor + color1.watertop.color = color1.watereffect.color + else + color1.watereffect.color = null + color1.watertop.color = null + +/obj/machinery/pool/controller/proc/miston() //Spawn /obj/effect/mist (from the shower) on all linked pool tiles + for(var/X in linkedturfs) + var/turf/open/pool/W = X + if(W.filled) + var/M = new /obj/effect/mist(W) + if(misted) + return + linkedmist += M + misted = TRUE //var just to keep track of when the mist on proc has been called. + +/obj/machinery/pool/controller/proc/mistoff() //Delete all /obj/effect/mist from all linked pool tiles. + for(var/M in linkedmist) + qdel(M) + misted = FALSE //no mist left, turn off the tracking var + +/obj/machinery/pool/controller/proc/handle_temp() + interact_delay = world.time + 10 + mistoff() + icon_state = "poolc_[temperature]" + if(temperature == POOL_SCALDING) + miston() + update_icon() + +/obj/machinery/pool/controller/proc/CanUpTemp(mob/user) + if(temperature == POOL_WARM && (tempunlocked || issilicon(user) || IsAdminGhost(user)) || temperature < POOL_WARM) + return TRUE + return FALSE + +/obj/machinery/pool/controller/proc/CanDownTemp(mob/user) + if(temperature == POOL_COOL && (tempunlocked || issilicon(user) || IsAdminGhost(user)) || temperature > POOL_COOL) + return TRUE + return FALSE + +/obj/machinery/pool/controller/Topic(href, href_list) + if(..()) + return + if(interact_delay > world.time) + return + if(href_list["IncreaseTemp"]) + if(CanUpTemp(usr)) + temperature++ + handle_temp() + if(href_list["DecreaseTemp"]) + if(CanDownTemp(usr)) + temperature-- + handle_temp() + if(href_list["Activate Drain"]) + if((drainable || issilicon(usr) || IsAdminGhost(usr)) && !linked_drain.active) + mistoff() + interact_delay = world.time + 60 + linked_drain.active = TRUE + linked_drain.timer = 15 + if(!linked_drain.status) + new /obj/effect/whirlpool(linked_drain.loc) + temperature = POOL_NORMAL + else + new /obj/effect/waterspout(linked_drain.loc) + temperature = POOL_NORMAL + handle_temp() + bloody = FALSE + updateUsrDialog() + +/obj/machinery/pool/controller/proc/temp2text() + switch(temperature) + if(POOL_FRIGID) + return "Frigid" + if(POOL_COOL) + return "Cool" + if(POOL_NORMAL) + return "Normal" + if(POOL_WARM) + return "Warm" + if(POOL_SCALDING) + return "Scalding" + else + return "Outside of possible range." + +/obj/machinery/pool/controller/ui_interact(mob/user) + . = ..() + if(.) + return + if(shocked && !(stat & NOPOWER)) + shock(user,50) + if(panel_open && !isAI(user)) + return wires.interact(user) + if(stat & (NOPOWER|BROKEN)) + return + var/datum/browser/popup = new(user, "Pool Controller", name, 300, 450) + var/dat = "" + if(interact_delay > world.time) + dat += "[(interact_delay - world.time)] seconds left until [src] can operate again.
" + dat += text({" +

Temperature

+
+ Current temperature: [temp2text()]
+ [CanUpTemp(user) ? "Increase Temperature
" : "Increase Temperature
"] + [CanDownTemp(user) ? "Decrease Temperature
" : "Decrease Temperature
"] +
+

Drain

+
+ Drain status: [(issilicon(user) || IsAdminGhost(user) || drainable) ? "Enabled" : "Disabled"] +
Pool status: "}) + if(!drained) + dat += "Full
" + else + dat += "Drained
" + if((issilicon(user) || IsAdminGhost(user) || drainable) && !linked_drain.active) + dat += "[drained ? "Fill" : "Drain"] Pool
" + popup.set_content(dat) + popup.open() + +/obj/machinery/pool/controller/proc/reset(wire) + switch(wire) + if(WIRE_SHOCK) + if(!wires.is_cut(wire)) + shocked = FALSE diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm new file mode 100644 index 0000000000..7739b7d0c1 --- /dev/null +++ b/code/modules/pool/pool_drain.dm @@ -0,0 +1,129 @@ +/obj/machinery/pool/drain + name = "drain" + icon_state = "drain" + desc = "A suction system to remove the contents of the pool, and sometimes small objects. Do not insert fingers." + anchored = TRUE + var/active = FALSE + var/status = FALSE //1 is drained, 0 is full. + var/srange = 6 + var/timer = 0 + var/cooldown + var/obj/machinery/pool/controller/pool_controller = null + +/obj/machinery/pool/drain/Initialize() + START_PROCESSING(SSprocessing, src) + . = ..() + +/obj/machinery/pool/drain/Destroy() + pool_controller.linked_drain = null + pool_controller = null + return ..() + +/obj/machinery/pool/drain/process() + if(!status) //don't pool/drain an empty pool. + for(var/obj/item/absorbo in orange(1,src)) + if(absorbo.w_class == WEIGHT_CLASS_TINY) + step_towards(absorbo, src) + var/dist = get_dist(src, absorbo) + if(dist == 0) + absorbo.forceMove(pool_controller.linked_filter) + if(active) + if(status) //if filling up, get back to normal position + if(timer > 0) + playsound(src, 'sound/effects/fillingwatter.ogg', 100, TRUE) + timer-- + for(var/obj/whirlo in orange(1,src)) + if(!whirlo.anchored ) + step_away(whirlo,src) + for(var/mob/living/carbon/human/whirlm in orange(2,src)) + step_away(whirlm,src) + else if(!timer) + for(var/turf/open/pool/undrained in range(5,src)) + undrained.filled = TRUE + undrained.update_icon() + for(var/obj/effect/waterspout/undrained3 in range(1,src)) + qdel(undrained3) + pool_controller.drained = FALSE + if(pool_controller.bloody < 1000) + pool_controller.bloody /= 2 + if(pool_controller.bloody > 1000) + pool_controller.bloody /= 4 + pool_controller.changecolor() + status = FALSE + active = FALSE + return + if(!status) //if draining, change everything. + if(timer > 0) + playsound(src, 'sound/effects/pooldrain.ogg', 100, TRUE) + playsound(src, "water_wade", 60, TRUE) + timer-- + for(var/obj/whirlo in orange(2,src)) + if(!whirlo.anchored ) + step_towards(whirlo,src) + for(var/mob/living/carbon/human/whirlm in orange(2,src)) + step_towards(whirlm,src) + if(prob(20)) + whirlm.Knockdown(40) + for(var/i in list(1,2,4,8,4,2,1)) //swirl! + whirlm.dir = i + sleep(1) + if(whirlm.forceMove(loc)) + if(whirlm.health <= -50) //If very damaged, gib. + whirlm.gib() + if(whirlm.stat != CONSCIOUS || whirlm.lying) // If + whirlm.adjustBruteLoss(5) + playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) + to_chat(whirlm, "You're caught in the drain!") + continue + else + playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) + whirlm.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs + to_chat(whirlm, "Your legs are caught in the drain!") + continue + + else if(!timer) + for(var/turf/open/pool/drained in range(5,src)) + drained.filled = FALSE + drained.update_icon() + for(var/obj/effect/whirlpool/drained3 in range(1,src)) + qdel(drained3) + for(var/obj/machinery/pool/controller/drained4 in range(5,src)) + drained4.drained = TRUE + drained4.mistoff() + status = TRUE + active = FALSE + +/obj/machinery/pool/filter + name = "Filter" + icon_state = "filter" + desc = "The part of the pool where all the IDs, ATV keys, and pens, and other dangerous things get trapped." + var/obj/machinery/pool/controller/pool_controller = null + +/obj/machinery/pool/filter/Destroy() + pool_controller.linked_filter = null + pool_controller = null + return ..() + +/obj/machinery/pool/filter/emag_act(user as mob) + if(!(obj_flags & EMAGGED)) + to_chat(user, "You disable the [src]'s shark filter! Run!") + obj_flags |= EMAGGED + do_sparks(5, TRUE, src) + icon_state = "filter_b" + addtimer(CALLBACK(src, /obj/machinery/pool/filter/proc/spawn_shark), 50) + log_game("[key_name(user)] emagged the pool filter and spawned a shark") + message_admins("[key_name_admin(user)] emagged the pool filter and spawned a shark") + +/obj/machinery/pool/filter/proc/spawn_shark() + if(prob(50)) + new /mob/living/simple_animal/hostile/shark(loc) + else + if(prob(50)) + new /mob/living/simple_animal/hostile/shark/kawaii(loc) + else + new /mob/living/simple_animal/hostile/shark/laser(loc) + +/obj/machinery/pool/filter/attack_hand(mob/user) + to_chat(user, "You search the filter.") + for(var/obj/O in contents) + O.forceMove(loc) diff --git a/code/modules/pool/pool_effects.dm b/code/modules/pool/pool_effects.dm new file mode 100644 index 0000000000..8d5192cd30 --- /dev/null +++ b/code/modules/pool/pool_effects.dm @@ -0,0 +1,29 @@ +/obj/effect/splash + name = "splash" + desc = "Wataaa!." + icon = 'icons/turf/pool.dmi' + icon_state = "splash" + layer = ABOVE_ALL_MOB_LAYER + +/obj/effect/whirlpool + name = "Whirlpool" + icon = 'icons/effects/96x96.dmi' + icon_state = "whirlpool" + layer = 5 + anchored = TRUE + mouse_opacity = 0 + pixel_x = -32 + pixel_y = -32 + alpha = 90 + +/obj/effect/waterspout + name = "Waterspout" + icon = 'icons/effects/96x96.dmi' + icon_state = "waterspout" + color = "#3399AA" + layer = 5 + anchored = TRUE + mouse_opacity = 0 + pixel_x = -32 + pixel_y = -32 + alpha = 120 diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm new file mode 100644 index 0000000000..5db9176223 --- /dev/null +++ b/code/modules/pool/pool_main.dm @@ -0,0 +1,201 @@ +/turf/open/pool + icon = 'icons/turf/pool.dmi' + name = "poolwater" + desc = "You're safer here than in the deep." + icon_state = "pool_tile" + heat_capacity = INFINITY + var/filled = TRUE + var/next_splash = 1 + var/obj/effect/overlay/water/watereffect + var/obj/effect/overlay/water/top/watertop + var/obj/machinery/pool/controller/controller + + +/turf/open/pool/Initialize() + watereffect = new /obj/effect/overlay/water(src) + watertop = new /obj/effect/overlay/water/top(src) + . = ..() + +/turf/open/pool/Destroy() + QDEL_NULL(watereffect) + QDEL_NULL(watertop) + controller = null + return ..() + +/turf/open/pool/proc/update_icon_pool() + if(!filled) + name = "drained pool" + desc = "No diving!" + QDEL_NULL(watereffect) + QDEL_NULL(watertop) + else + name = "poolwater" + desc = "You're safer here than in the deep." + watereffect = new /obj/effect/overlay/water(src) + watertop = new /obj/effect/overlay/water/top(src) + +/obj/effect/overlay/water + name = "water" + icon = 'icons/turf/pool.dmi' + icon_state = "bottom" + density = 0 + mouse_opacity = 0 + layer = ABOVE_MOB_LAYER + anchored = TRUE + +/obj/effect/overlay/water/top + icon_state = "top" + layer = BELOW_MOB_LAYER + +/mob/living + var/swimming = FALSE + +//Put people out of the water +/turf/open/floor/MouseDrop_T(mob/living/M, mob/living/user) + if(user.stat || user.lying || !Adjacent(user) || !M.Adjacent(user)|| !iscarbon(M)) + if(issilicon(M)) + var/turf/T = get_turf(M) + if(istype(T, /turf/open/pool)) + M.visible_message("[M] begins to float.", \ + "You start your emergency floaters.") + if(do_mob(user, M, 20)) + M.forceMove(src) + to_chat(user, "You get out of the pool.") + return ..() + if(!M.swimming) //can't put yourself up if you are not swimming + return ..() + if(user == M) + M.visible_message("[user] is getting out the pool", \ + "You start getting out of the pool.") + if(do_mob(user, M, 20)) + M.swimming = FALSE + M.forceMove(src) + to_chat(user, "You get out of the pool.") + else + user.visible_message("[M] is being pulled to the poolborder by [user].", \ + "You start getting [M] out of the pool.") + if(do_mob(user, M, 20)) + M.swimming = FALSE + M.forceMove(src) + to_chat(user, "You get [M] out of the pool.") + return + +/turf/open/floor/CanPass(atom/movable/A, turf/T) + if(!has_gravity(src)) + return ..() + else if(istype(A, /mob/living) || istype(A, /obj/structure)) //This check ensures that only specific types of objects cannot pass into the water. Items will be able to get tossed out. + if(istype(A, /mob/living/simple_animal) || istype(A, /mob/living/carbon/monkey)) + return ..() + if (istype(A, /obj/structure) && istype(A.pulledby, /mob/living/carbon/human)) + return ..() + if(istype(get_turf(A), /turf/open/pool) && !istype(T, /turf/open/pool)) //!(locate(/obj/structure/pool/ladder) in get_turf(A).loc) + return FALSE + return ..() + +//put people in water, including you +/turf/open/pool/MouseDrop_T(mob/living/M, mob/living/user) + if(!has_gravity(src)) + return + if(user.stat || user.lying || !Adjacent(user) || !M.Adjacent(user)|| !iscarbon(M)) + return + if(!iscarbon(user)) // no silicons or drones in mechas. + return + if(M.swimming) //can't lower yourself again + return + else + if(user == M) + M.visible_message("[user] is descending in the pool", \ + "You start lowering yourself in the pool.") + if(do_mob(user, M, 20)) + M.swimming = TRUE + M.forceMove(src) + to_chat(user, "You lower yourself in the pool.") + else + user.visible_message("[M] is being put in the pool by [user].", \ + "You start lowering [M] in the pool.") + if(do_mob(user, M, 20)) + M.swimming = TRUE + M.forceMove(src) + to_chat(user, "You lower [M] in the pool.") + return + +//What happens if you don't drop in it like a good person would, you fool. +/turf/open/pool/Exited(atom/A, turf/NL) + ..() + if(!istype(NL, /turf/open/pool) && isliving(A)) + var/mob/living/M = A + M.swimming = FALSE + controller.mobs_in_pool.Remove(M) + +/turf/open/pool/Entered(atom/A, turf/OL) + ..() + if(isliving(A)) + var/mob/living/M = A + if(!M.mob_has_gravity()) + return + if(!M.swimming) + M.swimming = TRUE + controller.mobs_in_pool.Add(M) + if(locate(/obj/structure/pool/ladder) in M.loc) + return + if(iscarbon(M)) + var/mob/living/carbon/H = M + if(filled) + if (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSMOUTH) + H.visible_message("[H] falls in the water!", + "You fall in the water!") + playsound(src, 'sound/effects/splash.ogg', 60, TRUE, 1) + H.Knockdown(20) + return + else + H.Knockdown(60) + H.adjustOxyLoss(5) + H.emote("cough") + H.visible_message("[H] falls in and takes a drink!", + "You fall in and swallow some water!") + playsound(src, 'sound/effects/splash.ogg', 60, TRUE, 1) + else if(!istype(H.head, /obj/item/clothing/head/helmet)) + if(prob(75)) + H.visible_message("[H] falls in the drained pool!", + "You fall in the drained pool!") + H.adjustBruteLoss(7) + H.Knockdown(80) + playsound(src, 'sound/effects/woodhit.ogg', 60, TRUE, 1) + else + H.visible_message("[H] falls in the drained pool, and cracks his skull!", + "You fall in the drained pool, and crack your skull!") + H.apply_damage(15, BRUTE, "head") + H.Knockdown(200) // This should hurt. And it does. + playsound(src, 'sound/effects/woodhit.ogg', 60, TRUE, 1) + playsound(src, 'sound/misc/crack.ogg', 100, TRUE) + else + H.visible_message("[H] falls in the drained pool, but had an helmet!", + "You fall in the drained pool, but you had an helmet!") + H.Knockdown(40) + playsound(src, 'sound/effects/woodhit.ogg', 60, TRUE, 1) + else if(filled) + M.adjustStaminaLoss(1) + playsound(src, "water_wade", 20, TRUE) + return + +/turf/open/pool/attack_hand(mob/living/user) + if(user.stat == CONSCIOUS && !(user.lying || user.resting) && Adjacent(user) && user.swimming && filled && next_splash < world.time) //not drained, user alive and close, and user in water. + if(user.x == x && user.y == y) + return + else + playsound(src, 'sound/effects/watersplash.ogg', 8, TRUE, 1) + next_splash = world.time + 25 + var/obj/effect/splash/S = new /obj/effect/splash(user.loc) + animate(S, alpha = 0, time = 8) + S.Move(src) + QDEL_IN(S, 20) + for(var/mob/living/carbon/human/L in src) + if(!L.wear_mask && !user.stat) //Do not affect those underwater or dying. + L.emote("cough") + L.adjustStaminaLoss(4) //You need to give em a break! + +/turf/open/pool/attackby(obj/item/W, mob/living/user) + if(istype(W, /obj/item/mop) && filled) + W.reagents.add_reagent("water", 5) + to_chat(user, "You wet [W] in [src].") + playsound(loc, 'sound/effects/slosh.ogg', 25, TRUE) diff --git a/code/modules/pool/pool_noodles.dm b/code/modules/pool/pool_noodles.dm new file mode 100644 index 0000000000..d40aa8eca4 --- /dev/null +++ b/code/modules/pool/pool_noodles.dm @@ -0,0 +1,44 @@ +//Pool noodles + +/obj/item/toy/poolnoodle + icon = 'icons/obj/toy.dmi' + icon_state = "noodle" + name = "pool noodle" + desc = "A strange, bulky, bendable toy that can annoy people." + force = 0 + color = "#000000" + w_class = WEIGHT_CLASS_SMALL + throwforce = 1 + throw_speed = 10 //weeee + hitsound = 'sound/weapons/tap.ogg' + attack_verb = list("flogged", "poked", "jabbed", "slapped", "annoyed") + lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' + righthand_file = 'icons/mob/inhands/items_righthand.dmi' + +/obj/item/toy/poolnoodle/attack(target as mob, mob/living/user as mob) + ..() + if(prob(80)) + user.emote("spin") + if(prob(5)) + user.emote("spin") + +/obj/item/toy/poolnoodle/red + item_state = "noodlered" + +/obj/item/toy/poolnoodle/blue + item_state = "noodleblue" + +/obj/item/toy/poolnoodle/yellow + item_state = "noodleyellow" + +/obj/item/toy/poolnoodle/red/Initialize() + . = ..() + color = "#ff4c4c" + +/obj/item/toy/poolnoodle/blue/Initialize() + . = ..() + color = "#3232ff" + +/obj/item/toy/poolnoodle/yellow/Initialize() + . = ..() + color = "#ffff66" diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm new file mode 100644 index 0000000000..9e89f39397 --- /dev/null +++ b/code/modules/pool/pool_structures.dm @@ -0,0 +1,149 @@ +/obj/structure/pool + name = "pool" + icon = 'icons/obj/machines/pool.dmi' + anchored = TRUE + resistance_flags = UNACIDABLE|INDESTRUCTIBLE + +/obj/structure/pool/ladder + name = "Ladder" + icon_state = "ladder" + desc = "Are you getting in or are you getting out?." + layer = ABOVE_MOB_LAYER + dir = EAST + +/obj/structure/pool/ladder/attack_hand(mob/living/user as mob) + if(Adjacent(user) && user.y == y && user.swimming == 0) + user.swimming = TRUE + user.forceMove(get_step(user, get_dir(user, src))) //Either way, you're getting IN or OUT of the pool. + else if(user.loc == loc && user.swimming == TRUE) + user.swimming = FALSE + user.forceMove(get_step(user, turn(dir, 180))) + +/obj/structure/pool/Rboard + name = "JumpBoard" + density = FALSE + icon_state = "boardright" + desc = "The less-loved portion of the jumping board." + dir = EAST + +/obj/structure/pool/Rboard/CheckExit(atom/movable/O as mob|obj, target as turf) + if(istype(O) && O.pass_flags & PASSGLASS) + return TRUE + if(get_dir(O.loc, target) == dir) + return FALSE + return TRUE + +/obj/structure/pool/Lboard + name = "JumpBoard" + icon_state = "boardleft" + desc = "Get on there to jump!" + layer = FLY_LAYER + dir = WEST + var/jumping = FALSE + var/timer + +/obj/structure/pool/Lboard/proc/backswim(obj/O, mob/living/user) //Puts the sprite back to it's maiden condition after a jump. + if(jumping) + for(var/mob/living/jumpee in loc) //hackzors. + playsound(jumpee, 'sound/effects/splash.ogg', 60, TRUE, 1) + jumpee.layer = 4 + jumpee.pixel_x = 0 + jumpee.pixel_y = 0 + jumpee.Stun(2) + jumpee.swimming = TRUE + +/obj/structure/pool/Lboard/attack_hand(mob/living/user) + if(iscarbon(user)) + var/mob/living/carbon/jumper = user + if(jumping) + to_chat(user, "Someone else is already making a jump!") + return + var/turf/T = get_turf(src) + if(user.swimming) + return + else + for(var/obj/machinery/pool/controller/pc in range(4,src)) //Clunky as fuck I know. + if(pc.drained) + to_chat(user, "That would be suicide") //TODO: make this a suicide action. + return + if(Adjacent(jumper)) + jumper.visible_message("[user] climbs up \the [src]!", \ + "You climb up \the [src] and prepares to jump!") + jumper.Stun(40) + jumping = TRUE + jumper.layer = RIPPLE_LAYER + jumper.pixel_x = 3 + jumper.pixel_y = 7 + jumper.dir=8 + sleep(1) + jumper.loc = T + addtimer(CALLBACK(src, .proc/dive, jumper), 10) + +/obj/structure/pool/Lboard/proc/dive(mob/living/carbon/jumper) + switch(rand(1, 100)) + if(1 to 20) + jumper.visible_message("[jumper] goes for a small dive!", \ + "You go for a small dive.") + sleep(15) + backswim() + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 1, 1) + + if(21 to 40) + jumper.visible_message("[jumper] goes for a dive!", \ + "You're going for a dive!") + sleep(20) + backswim() + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 2, 1) + + if(41 to 60) + jumper.visible_message("[jumper] goes for a long dive! Stay far away!", \ + "You're going for a long dive!!") + sleep(25) + backswim() + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 3, 1) + + if(61 to 80) + jumper.visible_message("[jumper] goes for an awesome dive! Don't stand in [jumper.p_their()] way!", \ + "You feel like this dive will be awesome") + sleep(30) + backswim() + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 4, 1) + if(81 to 91) + sleep(20) + backswim() + jumper.visible_message("[jumper] misses [jumper.p_their()] step!", \ + "You misstep!") + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 0, 1) + jumper.Knockdown(100) + jumper.adjustBruteLoss(10) + + if(91 to 100) + jumper.visible_message("[jumper] is preparing for the legendary dive! Can he make it?", \ + "You start preparing for a legendary dive!") + jumper.SpinAnimation(7,1) + + sleep(30) + if(prob(75)) + backswim() + jumper.visible_message("[jumper] fails!", \ + "You can't quite do it!") + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 1, 1) + else + jumper.fire_stacks = min(1,jumper.fire_stacks + 1) + jumper.IgniteMob() + sleep(5) + backswim() + jumper.visible_message("[jumper] bursts into flames of pure awesomness!", \ + "No one can stop you now!") + var/atom/throw_target = get_edge_target_turf(src, dir) + jumper.throw_at(throw_target, 6, 1) + addtimer(CALLBACK(src, .proc/togglejumping), 35) + +/obj/structure/pool/Lboard/proc/togglejumping() + jumping = FALSE diff --git a/code/modules/pool/pool_wires.dm b/code/modules/pool/pool_wires.dm new file mode 100644 index 0000000000..7e98383606 --- /dev/null +++ b/code/modules/pool/pool_wires.dm @@ -0,0 +1,59 @@ +#define POOL_WIRE_DRAIN "drain" +#define POOL_WIRE_TEMP "temp" + + +/datum/wires/poolcontroller + holder_type = /obj/machinery/pool/controller + proper_name = "Pool" + +/datum/wires/poolcontroller/New(atom/holder) + wires = list( + POOL_WIRE_DRAIN, WIRE_SHOCK, WIRE_ZAP, POOL_WIRE_TEMP + ) + add_duds(3) + ..() + +/datum/wires/poolcontroller/interactable(mob/user) + var/obj/machinery/pool/controller/P = holder + if(P.panel_open) + return TRUE + +/datum/wires/poolcontroller/get_status() + var/obj/machinery/pool/controller/P = holder + var/list/status = list() + status += "The blue light is [P.drainable ? "on" : "off"]." + status += "The red light is [P.tempunlocked ? "on" : "off"]." + status += "The yellow light is [P.shocked ? "on" : "off"]." + return status + +/datum/wires/poolcontroller/on_pulse(wire) + var/obj/machinery/pool/controller/P = holder + switch(wire) + if(POOL_WIRE_DRAIN) + P.drainable = FALSE + if(POOL_WIRE_TEMP) + P.tempunlocked = FALSE + if(WIRE_SHOCK) + P.shocked = !P.shocked + addtimer(CALLBACK(P, /obj/machinery/autolathe.proc/reset, wire), 60) + +/datum/wires/poolcontroller/on_cut(wire, mend) + var/obj/machinery/pool/controller/P = holder + switch(wire) + if(POOL_WIRE_DRAIN) + if(mend) + P.drainable = FALSE + else + P.drainable = TRUE + if(POOL_WIRE_TEMP) + if(mend) + P.tempunlocked = FALSE + else + P.tempunlocked = TRUE + if(WIRE_ZAP) + P.shock(usr, 50) + if(WIRE_SHOCK) + if(mend) + P.stat &= ~NOPOWER + else + P.stat |= NOPOWER \ No newline at end of file diff --git a/icons/effects/96x96.dmi b/icons/effects/96x96.dmi index c0b5ef5b400a80c3b1476cb618326e133610ddea..b60ff97b2b043084ddeec58c360137e8b9cb28db 100644 GIT binary patch delta 153499 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�lefKa1UYwMIWexP;vZNbP^zoec56f#)yB6$j zPybz@f#($KXJEfD#-^tBz)HEZuvD$hT>Um*|L2;`1QFM=!#hNJ|0;U{s3|cjx?>+E zQF@_)WcHk#AJ7FJJ%TO>o1X^{qakg<(45 z*wM%I)`SbzK(v|(f&3#qa8r_CcDh`W`7uv2m!g9I^~yueP^pXIyckVojd|h3XCbCF zoca8=gY7BRmbK;{W>f|Ju(*f`%l4+J`5nxLVhU?HNmf5?*0+i3HNy!s_ryO(l2wf3Q%2~1-rC)=k({)7b52ZqC2u_W*L`CpUs#oPs~ zfr}4#3ne!SnKy{ocs`>yhvLpYH8)nUJysTMa%#4+@@Lkq*c6YL%nil+IoTJxHR;B*X#c?M<@sfgemNu~ z{uryRto8rv?=}yFvAV>ub8y!O6a57m|AViZfk6&?I;;#8?&&xbZm{;Ny^P2o?1px= zWU0?lcR)!&OKWRueHqH3A;jyn4?{!rhOH|_L4ia34-l?Lhs#X?+b^{%fyVNMl*9)u zNY#eq)#>VPZqxNqwXaG-PiZBxxCXipELLg?!D&u zwXL=Gok?&OB4f4=iS!oVj8DrfXfapcUj3WQ@mN{ed$)A%y-8H8@RvEd@_vE6NuO(3 zG8-wsL7b}z-||u9678eUccr5%fq}t?8FKpAcyDWqp5kV(Q^U^*BX0$#^Pv3q7o^UB zr4x2?#gjV@v?<@YAYhYuGjiGiVVN`TcU)B8)*W5^g6J2ufpTJ3JEIVj(E!FFwF&|^ zjG<$lspY21ElJ(*x}u%At*SZ)YtOKf`XcrcYmfQ1r9Yy#`5*pT!(&8Sby#gC{M;ha zxVO9Wn+T~Ozj?kP>zKPGRvr=q9-HrN2lkOo)TBpAzSlZc*z)yNz{eB>?wrJC3geEw zUp)Wjnx!n$O%WnQFT1jNYMaP@v6KC8U5vsyW$>FjgG@KN-{j5donv>Ba?LA+wPySg zGJ$^}DlSf6-s5i{3*LSsE4`A&qd6#dm!ACuVV*0@M+Jg`hpaE4Bp+0)n7;i!_h&PZ z)vpD{2K$eb`W+qjjm+kW#-@${2Cfx_L6xmEsH~ZTYq;H5+tc<;(BRQ|vM3{NQ zWDnDc4|6hUF^P037@@;ZIOKE}19C+jn@KW!zbc{c_(Piqn(N+vRPGKaU8 zpacbPgt3WAS!0P%gtVjyeL+zgfQ$(xY>6K3I zw3d{t4e8LMgCbDs9WxsY^SNO;?t*yVtJ3$JvHIhF#O=#s`mhnpU3#OM7#T>o{518< zLm_x~W{N&w+%s!l!7IlMV;<)%e7B!$Plmak=)TczOtyqN6w7MlEU9aunCGhz>z8m+)2p z`<^H~bcUp;oGmEU+O)WbgX=we-u*-j<$0Q|YZl~i=*kd=?+>T9)H-k*(k?N)Qv zj#3vgZ180!Qol5-lH^EKZBLtOys3iK55(i(-@D?u;+)Quc#@pe}G`)4|Lb=S$kO^W~V9H9ob+p z*Nc4{lO&(y9tNYmXnS+FX}d;j!>nq{bzvF9kqY$1Y`9iWe?@+!>q>c5KY1rJn76O1 zPR@cHqy};?R|>A3|8T<=@YU~9s7$BdHbz%PHxRFvN0SbR+lIjiuHDN2pmX&9^gTB% z4NiIUtV&Ts!;ddR>!t&Q<9UrSoaQF2HFOFRV9zkLtun)#0P1;s5CHb-QuR@Q*1y7o_2j|Zh^a!RT?9>-!;q~x${i%O*Q+OizT2{=c^ zP2xJ0?09cre0v$Z3b+-i_&YuC3V6V0+jnLx`&V!M0I@ue|FkFAQ;DhCnu6(s#w_FX zFPy2*_4i$=!5NpsIdwvt8s#+tbDG3>BbUZ3O-0p)J3|@4Qe!FcSXM(rxckOxGhZjq zPG7-H`O1!7MFop9M9JokTy2-1niAV__31Kit*)%_?8kR5`!v-;F{CF1XB}?wGY|ZPsuQ%!cXzTOum%ayQuh3a<4HeN(c$nLX8d|LYw6Y9&8Z z!}>8ren)*Y_j|p5+iG#fZg(b4D{O)%I2u&1k-ez+8El6%kOF1)42>ZgVZ{QTiZ31b z0Z=S&+|c>)0r{(3d`1wqFqyGa*jE4h>|yQU_{*0!SRNrDp0X{{L&0N2=@)%PAr#sF zKwtp&0lV1y7C^3;B#Q#U2)4VbhW@5k#tVm8)uTI9F>LIr3s*1+yoXs*jbRm?;dOXXg$KZr}wIMI-($}ejK!;dJX1sYTc6FKwIN|J@;rC}Zp9$bB7(#lRxX0gN zd#$4aD2<>ezcH+sZl`)d51zrHU225jD)nKg%_s4hyX*8}wmZV?-P$-VY8^ApkPqRS z8l?;~3${RF`9z{WSGO!F#N6?z6g}v`T6^S?!xgDyWg=!nTj}oC7^7?Lz0YAcXQ9uf? z-(E8UZ_hMCIC4*P2W{)-^Nq5<1yKKXqc~9~STRn)wZza;1a^~!upD;pC$T)53|!gW zZET3RPX?q1vf;=)0)XNKq5}G^eO6S|wBqjep9{f66y>nUVOipzSYm0|>sRT)F-|ax|im-#9Y>(n^ZRNdGhBngGP+-0$MFFh=0p;nv>3_ z7FlG}`@xYs2}y-D1;l?q$fJbH3-x*C&Ob_O*~YJ4<$g?4AzpN?NuC*Fz28Wemf~e) zK*aTjeJDg>tfp+%cGp|JDsUJ~4}1eRCnEAIKfDmL=p_c`bG1cgwyBNGzT4EmS`xuc z|7sY*!Z-gm_p}YKKnq~*8qdx$3u(#XOL4S7cH1ZnUIx}uHe`{nEZ1ow)mOj&NQk-V zjyRExLmCzr^yM4=%C*Fe)a-I&{36)QKP#y1quyJtx%~$yVuW9SryZwy)ap1ibXN@+ zZwziW4)@{JEGfa%$oo5|EmmFqO<*d)!V5=2kD_9ZPjBviHu$+U{3F5CeQ?F&Nti5d zZXYh4wSt39#cbWZ83~QcpUeznSEHA?V>p_P5m$UhKCd;4T-nlhWfdZSh`+zlE?Tk##7|0_>i7suoye^) z)=zpc80K_bU@v4I5*=eIg~!o_MCkPkuAkMN3x!Fhcei40)kREno;ZCM^p0j4MQr$@qSl)IBU)~ZR@-KFOsZg;>lds7MgjBx zk5?m{WfOeUBZ;D@uUk%So*$Jt^Nik0=Hg9R%DBFw<03KtrrDGjUW%_-%hK%lV2B5Q zfDD&KXEuv1ez*a$XG}=Hl31#-TM9!N)98~Oey`N%7b*0g<_DZa^4LVNig$40{-8zj ztUc0$d0$t`&gsj8C)oO64uD#D?eg7ejp_+yDc^&c^7EOptM>J?Z>Tzld4ZRn^QVpw zdg+Oftv)uOQo*~-oQeKvJ0^#Dx1*szYlnXDoS&vokBUXAr9LrhhVI^b*w_(yA3+!Q zqh8OrgJb76&0n;Fsx(cXyi4-qMU7$kWMgTEtfxZ-ogn};-xR+UgH6I-oPL>b5ImhQ zn1`E}H8xzDuKT^!sgRrz+^MK&Z=7@R2mXVx7tW5JchT-JSsLZvP#paU@t95s#h!J4 zzIN!C@#PTP+Tb8OmmEL4C(n~S6{U3{la`x7@5cILTUH_F`^;=_=oW*|CvPXJM|zD( zV<&~&pnL$vZ?AHv^XWz(F^a_=LasYK{$tS4DEw(-PB_-YBKt+x@4nc@iqoC_(tyj&Hh|93pFf25M}#8UY-a&B-v&fa$XGtb9Al(TqfC{c&kv{od-`8@ z7dj-{egETBi9wC-&d^V)JdWpz$5MCB#)56)ZtdEp+fz_juoY-&eSY?3nGn)R0tn0A z2WIvSAo_T3@CD>Qc?OY~|76kszAd5!L}X66m})L^lC8-1K;aPHM5;le)2AS%zV;$1 z^q~e(Q&Iads_?0$y{%#E2}7C2hvG$|Ztl}UggnUzx)mE5%d*BGvFy(Hn4d>Kzwp=P zjjdlFnIJz3b%i`$!$wl<7~4StB};g}4WmzGC?W=oXD7G<@1jkB+d`~%{DPlQUSthj zSCAt1>5rXU%Y>cDb4c);-|}J>a=nRwwvh1X`sl=_#UTewL~)%!59~DbV0u7sUNGTc zW?!g17Xn!VzmTb7tWa*6`PBP#pVszRzk@IsbR zg*NQo#Q~xCo z^PJlb`j0$is6eW49-^qk$Sl^RCDwGmZE%`}&R;}N?!lLL>mfG^JN|f}dNi=ic~GSw zN|NDrMccGM8!wJ%cBX7<=oE@kz>Qz2judNp5TLE0(Lb@(Ke^SPHu=fm1d*i9^W+&8 zlK9m?QN7jUY4JUqf#E;zbTcokV}mP0*D^3Bn%g>8;KbBmv+dOjPG=54sw`SR#fSPl zZNLsW)YJT&_g?1Ez047iEpvn|btqq#kFDhk@cHQv&v%M+zOoD+79ArA7RlB3uJAO^ z9%BLeF@{(FWY$1`J}cRN?B?U*C>dN__H*v5k)r2yY zdhUR?qzv$bS!Q{f*ieUvwu49gwF%pafuuL`!Q3#>sj)SX0WbjH;GsVFp5PT9cq$Ic zXqXL5X(vzxBt_}kz=ot25Eq%0i??(UmWo0Gth+jiVL?^-`#EjVIks#z!9a=eMv4~$naM}cGy zVEw*BlQIKuQi4E)oATA1tNuLH5iuV>`D7QY_?RAdNROW6Y#$wb(IFCJef2R2*vkoZ zm-P8!wHbCf&m77=kYV33_m6vQ3@JF@*MHssGdFsYIKR|h3r&;4u#lGA#W!3`-t+vR z($@aG>@wp^Q(EO&K>L9q%U*)UF+#QD;1Lzi$#ABbLn7#|cbRRuq{R1L#3hRsEtTbb zXYfDbHhg-HQxaWlc=l@SuiKD1A#_NLb`8z6gOKy#C04KoGBoabp-Mn-i)(evi8H5| zVdzKc5v~9A#!B+hB%&_3!@18e{6uN29`Ys9*d;BoTU)Nxu+R<5RkxO@j$i}5b#HlV zS#{=WK#}MA&!A>+AIPZx-z(f*XuHIrcgxIoyML_<(F^&(Z+8yh^^Jm5M?RlATz%Yy z7*+HNs9wi?^Q2lt1jEs>Y<$!oKBZ`UqB`PUsp+?svy!8c8Vg&K?)P(IslEh=3OqCoNf6Fu|lJ`O* zC73p42D^aU^v@Kt*l5wRpW2`vgeQe&fd!8`2I{l#Wt_d0>HRv$Dr# z{%tR0>RTAFV7z(7k;_2ip3Z`sU)pS@ybZGbWy70YuM2FBia=g}a;55Yr#gFWHx~n3 zi=b5OcxD=(GgRcVnzupXi)1#&4T^&>Xgn4dbn`894yn*dxGWIfRf))VP@tnvY_95U z0_KeE8>)68^s^MS1`}^yLmrAb$l=BhKoQfn>lf;nacxOm)IhQr6VEadizTZ?83QLg zvz(~<&J?C(u09aBz+tI(zSA@ZePlyXn%g6Ox^zoBPXDR>g39qVaOY*Qx7&KI#V1hEGSG zeUG?gsKVW6z|LYVa30e(*ykuaNtZz!Dv&5R!iTC9VsZnCLMHNh3 z)yuslm>5*vCTb3Dy-h=~Ol0m9`+>Du|E<8#xplcU`2WlV4OP&VNmB0LK#TDQwl7_w z+VL$~Rt_Lx$B>E<9a5%|z-q7e5K#HgoKYD+gf?f1jnmxTHu4`rC@`}}0slPY;xI6k zNxmt~^)Fr`b~-|>zh5zSy8#Axc^Nx6uf?;I9`7FUMWBCyYgPs6Ml?m%=67sfx=yQDBB(9UDn>P0TMb<@6YtXP2dx&8i?am@4IEg+Y9&f!^myy-EYUa)bB^1JA_{{qF;^HY&Wyw=2tB zL$jlnfdd(D8>R=o8>#8f2>inQI0F_CzC8yaQe0Yp>_XW^j08Fj=0WvoSQ z+cuXkb-W0BQc>{b3rhb#S3G>uGk$1AS0Gi-3i4lz>^qdoYn#phyj+i(+a$JPW~{)z z9HK)}KUspy1Y@lDjIFDqi+NnY!9^*gh?2M=aY;mNteVT7Z}8Sdfutpg5XVX+oysSq z_v|>|gMVKsABZ*T3{x5$kMGM$-ER!!>ZHr;>^-tgA?9d&*|%7@hA}#dABl0sg>8!` z%zz^dT2|SLIadi<-`)i=P(@j?<2I=cU)i`*)J*eHjfJ}T(vQQuLIr9iB&IA`JDd%* z2XPyl_Y%bERNk^T3t?t}FH1eD30=PqZ0N51tE7t#p|M00HYt;K{*`w&wB-2ed9AsU zGk*DTvNb*06?tbFs9?xjJZX#j&zhlVRv64|dyP_*_2r-WaMwn(pt-#QH$;xy+C><+ zHoa{OW*rz@GQ|CH<~ydj4N{bjO&s){CCLdYX4pB}`<{EMCDNe8X{{=r<<{_Vk zFGabuYmxug+a;VS6G~h3YISCWdYl8s9@Jjr@J2jm+>_eb)O7CIRXklX*K>o_3A!X3 z(IxFH!`=}y;~drM9HGdi0j>)3l@##qP47Ev{*^(;2%DLm&qoM6;$#$Es8j8>3`Zxg zBXzAF{gtaA`43!1$J6^mrP`Y&yZ1mpQ6Y?;Ay9F)T{b&H`(eao3iU8k!J99;5S2NbxnK+bxB|6z z|1A3*SdJSx*Jba;_9S*C^`?gvQ%~KrbD%+Ivp?vM$QuAm(nJi#qFER>Dl|#*2 zRghC2GQrQy?Rj0+KiXP>wyg1JI>UklQ zxbi2&`-D!rI&sF>+-LnZUkv$Ly%@t&nMwtsA>j}o$#zo}H3*V$;{*dJss$-R3#x~T z_wK=&eFgG54N}maKmZI~29+T9;682;x0FP6Yn-B7{X+|1j07Q=EiRh9J7kx3}hdJ~9{4=0*Um zchNK>TQUF|2!V_dZqP>g!;DGuoSPO#UyD<*{>>n7qKE-=m`A_@rrK;Tx<8;L$q5W_XkJOM;z((UiHXS{) z$ti49G1PJFKK`Tb3}`BW9;SOO+5dr=)%8kwRRt%6#;(v??{r_67P>OY-x)iWkT%#q zUj|u3UO?(C{=yIt1Tv#R6s|Oe3jKM72uWe=7B^-kOo)X_7zmiRyg7KcK7g$xoZE7l z^Q6SJPwsCcSzk~nGJg8A>!01k-6=n6y*d>8fMO}OU!dx$2$c`bS2cjQm|P@{?M{Y7 z6T5enJ6lX5^sK+G`F7+{(C5juPyoS;ybt+rKc*8uCXITKUi~*OBSHI9-k*+1o~2DD zS?B*G+(LA)+}!ZKju6KWZ2ErecpSNe09q zi|kzL{iwSB!m(r}6KJ*v^)bytWv!ZRa{vq`Ie8bLSMNQKPp`v;8CLXjeK* z`DabrVW5qb5G`w8&r#i8YRbYh-u@M_8Phv6lm~iBoQaCf#^K!yG@^;=IK7TZ)vqQm z68P>9^knuO)&$2G4Lljib4OB*oZMX8C6h1V2yeEh-n2KHa=(N{ZY zzuu@Jb9$w9bbpnZpsAKoZvL?=<6-#ycKIl<&ri-GMW*VASXl(%zeyY@BE+H0N_s<; z@b2sLr~`Zdk!ky#$vu-a%#JXt8_={W&wU~j8tb-OJvJ39WFMSVRxgwu5xgV}X;_dGu*9Mty0>rkJ zHpxuAvlX739)I1s<`Fts9wc;n1UWIl?~Fo+oZVLSosUzVSm$Q7T7QMklYD6qNBy_1 zH{2+m5$|YQY4$3cF|^~dY*Owc&^+03`=pLcX&1t^+WO!N4YdTwPO&d2r{z!WZ z1Nw?;{{?v)3jmdU@BpYKN{)}Eyc(toZAkkzTYxsi$hh^o*-H-PCb2!k&1hr>8w$g zGu;PwAAi{Ga*#IN-UTZ!d zrGxqeTX+dov+hE*R!iuoF68XSMwvFc$I^v*$K$>xD+jA8f{N!H6rc)gBLo1}BmFe! zFMpul9uJ3GL3q~)c?YYWF;uXG;+g;p6|9%nF3T9G6|4gb_<^}T^0Y@NiN$|}%d#aA z8aeC|+g>P;jReeMjdQSiZ{)+*WzU61opzoUB5o04SKAh}6NS~$@hptIE47W!38nmu zkH9Gg$k4)0Ve(N&Lx;6sRu;1db?U_gM1=tN6;ws3lWYX>vAMt1)8`hUbTWGoPQi|G<#(}7lnj>#`hT(uI{g%*g+J51LcM|hymLdlhnkAPdeU}Lt= ztF_E2>Nvk>2D$ILxiE$a#l(C5-8jd?Xg_zMx|e$(W?c1)T5Re3fbiTOBxhQE^j~8H z%n;9o2W83nDvt?z!v6Tx{-p|%w_hZN5DYRN%v8pQ$Xm%{ZpQV?#;9+uUqQuIT_`EZ zyqF(C9y1oNX)z5t*^0 z6X`eg^n_tpjNJiVCN$q(Q6#J5q`%VR3P4EVtuMJb$_9<>RMXL3f3Y@noO!Te^OEt- zqG7NdlQJB*+jF4!_8(h-f^(o>1Ew&Nb3k>&+vZt+yDDpF9~g|Wos3C*Czvvv9QcY_ zr8s1Ek?s9AHpV_hDi!>0az%1hd@N{Ol_qCsfIM09SP6k1ZikiIEUs^TtXFJwwnq-$ z)V3V12gR*UAQ>^T4vrQz$JY9T-dVw})7%!hQsf+!5|-A$O6pS`ygM`{GE7*ai?UC+ z<&&aQ`Cb{Z1R}W8E`1V}?F1zGyZbVMZTIQhhGLtYv9S#JQ6C@dyB*p5-VWG8B69FX zv~bG7yi0p=P~4mv{qL*a!%$eDQP;~{w=={(CP|+jSn@^lF*t>`=^-yYbEc7Le{BhR zhA(FeH$bPV9oux;#!7-G^NHe;(>{FcabN3-CS3+VClO1vN}2eM6IrsH(u-a)h#Xq% zXT!u^*W3zT4aV4RK;W}BHj)_9PK$wZweDtU?8|++k_NSTSj!5t??`=LwSk5t;eq&D z$)dEg0&XR8?EOFxOKDITnIAVnkW;@qeF$}$6L0f(4xUk7%gq^g5=)UNg*PF9pmq!$ zXqa{PtfnFWIv@^#+t}0*z`uMtR3Eu#Mk};>!kvq^;-)*z$2b-`Xrst?pZ7P()bnOz z-iJ_Y#7@FwsIUEx)@U*bU5TN(+|fPEUrTbh%dnr?lfZQMU-Hx=Q3uVhfYpN8;Kl$cP%*SPWnf0fRmw9rkKc+QvV(G)2=;Ui8O7uLXMB%=@qDa|z<+RVxKr#XMYf-jo+SV6FM#AQc zgTD?gq&mRG9=A)nPIOXDRe%64Z7PZSz{144m5sgr2D4ArB9g{pM0@eSK$beAxCcW+ z{Z>xs!^0XIwv2|W+X@5$iPB)i-n_I0RZY>Z7H)tsg=Ja}Yx1Wy-_2I~@it$hNvI6Ee&OGi8K!jav-}>^K^@L#Egww&NYBO{5%6NIGeW1& z^>7a;e@b}qdo};X>Uk$G2o0~0olIw?s^#>O&kSBNO!dAIU8EIj`Gmu-D22WM?z4>? zWW*1kLeH2_dDPonDeKgJV5WThl^*ynw$%h}+!d@e^ZT|;W6(AoRC+Q0SWBxP5?TIi zdF_4{f5Gn_(}=7+yQQ&XwSpYC$4XcM+Pin~A&Vk6K4f)cQv^d^$rDYg*_-e_9?DKR z@_nj-!)VA2RnP{fjeD<-PhIMilqF|9F`>`KJYAgp^A_1Z3cZK%;|zG&Vmb7wEnX=` zMvUe7|44Vwe2$3mBSg*P7b1)m8pHGjGG}fwEgLX5tiQIOT0-QC2WL#L@`oED7kl3q zV1XK0S@47^L5UYSkmZdGvZp_XY$^H`(*kM2=N9g1g^aaXgG(2wYW*>ku%KL$g%DX1aPK+AVIbBjH??EOy$f zU?5AA3CYUJZ_)%G*}odF#7nu2eGtp^w`mRh_4;yqvi(GVy_)5|HO3J>rKil09B}K= zdo;mpxObDWg%}IBu@r%ZPy0ueA2S=^ln)JHQV=cG>1#b#}zr|Jl0NsIR z)r>D0D&u0}H?Rn$3NQ2RktxtFbr?A}m>F~&zc2YM*tQt)A0aN9a{zVPrf+|Pezk#t zZPTV$E^3f{A{1!<^;5s19zy62yAc_Pe4YTNcq7tn#7Iq)yF5mxZA1!%P=sXFF)KHy z#|_wr1Ewnx|D3DlFyuG;XL1MPP@a%z^1PH?k(lJT`i7g>g@%g&$Kt8qmq|?Xi(+iR zJ|cxWr~0YDqKl_R+L#}>53lq^phx?2-@{+$Y_VxmZb$X9vLRlCq^&sQ0wdD0)+eut z(5e1^NBvFBv?rr4yaL;-IBW=M%z0~tFdT{3`vJ)MJ`#*j*g01 zJ}gz+QS^4Dz)4Ix3S=q#jt{-s_wExvY~tk6GA4SEnmH$ICZX(?UR39uHH4j)9gx^d z&_@KSVZFvR#g&H9!1kfZ8_IgP76|^IGGiEtadf**!cz%@ns-fq8)WIg$vG*Oz7{$k z)M+4OZ%BsP(y6At1+6_M$G$`ErvKz!q7!kKON+z8|}2_ja{vvGgXsQtMZUBc`Xt0JVH~n zy*ebz$oz$cJ@|$2Uikj&dNqHl07rYtIOx7`idpCox#tK@nwH#xr*pEy)mxuwZgxcN zK38+px5%meP8n2-n(;Cwc=r&Oi<2CSjzqGvlN_su_@0Y%)868q|C#CTzNybJ7&o*K zPIT`cX&mBS+CD2Bkv7%i%HjG4;iX=qvFUWCoA5^WwRHE~UTk1WUES8F&(gxOto7|W z9Lb|n{)YZLfiV-#n2E)}_ilFY@dL0QN#TW&`&kkZJ>)TxYH+l-VFnMRz2M1O~z%IHFjEqKW2{tSY&{Rwmaab1YDn z4R-SQ%*YuDTh0OYoi1bHGv{BmFWJo#R?szU}CQdv{Jkt%-SYl_EIe>ZgK`JnpTb|0nrT>6I<- zBGFFIQOUG4d-<_uHEEERxc4d-`s@>xh5KO&CH1+zU9ODmK8D8hc!d56;$g!7G<`(> z0Cqa0SnRK` z@qg07QYDK{NXjrh6NxS#Qdn1HnD?S`Pev4SwDEDiX=&6QZ%{dpt?YxFq<~=TW`0)u zuS%JzX4ebeJMS`Yjk?M+YI-gyX@ZhP?{6FpWcJRyS#@FWWyixK5Q?!**S4d9)pK6C zcGTpKe{Pk7J|&3j)4J1OMveIcJbuz{y1#F-_tl6Ah{JPZ#k?wprlyxiHCGn(17v z+x{`K<65vDAI0?L9SL!AE4-+Lyu{~~Hf@(Ln_pevqfP><1B&#@vREV<3@+?~EDp4w z9$|y$@@_sB2Zq1!#NH$;yh~G;0=5W!tZNOV;vXcLf>Y(sF)*Me>_>8i-$`R_*biYl zi3Jw8kJi%w0En?xRE+pT2^8tCpUO2gM5k*K76<|~x=I!ccv;G4a>z8yU5>|R zHCo_gH~rO_+1anvifi7q@C2Hme8pH&4RUUHjcKS*ltFsf=7e9qk_Iw+2xPnSLNsN&G0-LM^wHX&cMj{coY z#$;-E{TeuXfJBxOqiCS7L1*Q|%C|=qH3<*El%If8u>M-c$!0e&{`t8=8h=t{_~?TR zKAvaa>vv*XVs0KO;78KsgL7EePLa$ST{q*nez$DDNS z64OsfU)i%Yjhke116i{*Tj}ph-EDIQ(kPVzTpiuFo|%$&d1n0#A~$w2nwW?0^WQTC zYhVQefW8`HqQ9!g*(d(S8Ovw9p`3;A;RQD;7Y@yR#NacjpNNSeVxjFW z0mjRp-3plTf$mR-x$@j|v6KQTtG^!p`Xq9orMp=Otg?B{nLT>!G<0`p&vAk`Rz->f zZ^ZB99xygUtu6_ij{!jh^l=~ed%%TDn(>x9Z^w_2k1)iyZr44mkP1-RKq$?7X@_t~&xsJQf5@;XdR$c3y9B`WhA@5~dodL6mph=I>lA zltcb8J@8z7>$e#m$~fQZ;mjI~xP7t#w2z!-dGaVdn_p!%Qk)QW2Qn8TU3ry}zeebXD)~?uBb$mQrzaM)L zM4W9^#FE{CC-YV&qyXbMGokIXyUhMin|idX&~iCxsb%c7Bv=OzeDj7d#k%uI_Pm{} z_}3S0EFAm*I-j|If}UW_TC&!l%i$SWHBG$l?B8>YkUV%whWGbq!AC7e&6+q{j&_07U~|{yEN!jE)37nL)%gH{Ra$IB%q2t8d(i-I_0t zn5idNKk&+sIye`85v#e712-4`CnvSuf1~Y6y8O8v1FM1|P zBL%an+p`%7b6GOxNtxWMfRXpL_X!o$9HUWM|Gqw4QwWYpu?9&xz2!MmtfNESjX`YX zG&K8Otkfe$mu1%2N(YbKrnxg`%n~$C4T)b|F4xVcKc&VTlW=Kq`eEL3#4~yupLY6z z!h8*D!IzmHA05ubJl*p4J+jGrFKj#|PJ0mWw5q_wG_z~tJHw)TCQ4DU!g%Rjx?5(> z=1sIfkn>FSGX4=q7fIV*U3W&i3f)*Dor@KFG&n$q?i)1BNsFEeT~sv9I#i6VZaVVtuJ+ zW7x*N;QC)6#DU?ma5>Z#dPZf z*(iz}1o4nx-@6sz{R8EvYwu)IA}(-vN{Z5-xUg*8w+vJ2Je*DWHGy~sN3UP0^|hNC z#n9%-g4etoSyLaxIFHkF?PK6yBt_$a!4{!=+q_<@m$MqZZXnw$ts1{YE6Rm_vnw2` zkt0pcLN7Z47C?@6wk9g} zwjwHK^f>Rn8iGzdp_ubR)bUy38IkQu{%oQefNc`_!j11rIM<^f^lBd%$2hk1X0R8fI?JE{+ zT~`N&N_(^Bzk6-_UA+?}1zxkn5E&W`JE&{Xh zO{ymEJJzIi|DZ0iuA}cDqLo6rj(6p43xHH%U3UI5G^Pl*X5Ci-&LGsvGJ9!qQD6T% zd8K!Ausiz2${vt4LNnCIP(Mfrh}kEb)*4)VfbhVjQrFM5Qup#*IVql>%F|O2XFu7i z5ffgtm4&+#5awk*Y^CqQN7P{5S?y?*K=4-o6>sv}p|nrmalm68Ao#gSj>6ln_-o0) zlj92vP^?tEzuCT)8%_$l`mv4!nBll|5`{cZ7Em}msE_8)a&&~|JUc7y^=3El6Fnv! zaUJ);I}^j_$ok9lD23y#BSG~_gatf<q((E4SoL@sCAV>uJCi}%~3)8UG57n>QR8G&#d9&Zzzod`!Fu~R*UHifk?&83pw4nKP4earGaT-u&dUIl& zuUtMygVj`HR906Y>{G5+CQF>n;>HavZU@@ESP6sYId91Yqet5S5(zUBR1UeEOrZyBNiVZub1?~fsw3CGd#JX3U(a&Zt z{0D+g#yk}^4CwK~<9nuui`vKQKQga>jpP`HQS*3G!CwVZ&`M z5&}bz-~49O{mk~t7}K&bR+o-IrxM|HaqpQJv#^bOr5y?Xkeik?^H$cBqqen4w;bA< zA$ls=Njv8}r}KhFQ+H;2Mzk2bL%wM5mBqg!aW>*>DUw)l@;2fx=RZsHcCRVn`tCZD z+k%EPuc`+>`5us-x+2}zuAf^@ZjFHlmy)mr+IhS3eG*((FPqa)hn&$8*M%*3;K#Tm ziYKuX4DTh7nM{!cYW5VtuMz<9A56}vr3z2HGHE{kB@ zYN+KVx!p>T)rr_^Gt=3HRqlt>_tvMzYXNZBZ!PJ?F&;5V)pf(VcYW`2#CiU}gWFdF z(I0KKQOT2<8Btsl=ebXu(VfAJ{gQD}{D(av%U!_&erw1y zg2;G2e*Wk%$u{_9eQS|B@f=72H+OZ$u4aC`^6kr6ikQFKYc+TVWvZR$x zd*JKy^aw|ee^ELD$Cx0Xx+x&ke}y#)9;JDsZ}{vD7hZ5`H1>N}Ke`~>s56~j0Od-o zcDXAMg*2|!ex*UVbwEm(`@tui<0R~DMB_>oL257IM#fa!_0%LK;TZ@)2=t;$p#t8D zQ2pHa^(1wTtgWKH9^x9CA0F4b+ddx?cOrf`9fC|Sqf#DDM5>dkaAj+vsp(sXiYQgT zN?WmAN#*A~ET02N*xG5)_AgI1G4KBzu%blXPUR6nXpk%MCizSy7w`LImC;KRUvo## zVt0rT`4{Z9|M&zxYo}b{Zsj-Q6I_13qFHIEz4Cq~6#|`RD6FnPNh$w#C?YQ0AOB~b z`xbZQ4PY)qeN8Y7&Af5&yi!GweoRn1`hr8k=Nmn8TE)Tm5{e>0drx_NpK&H1za6FE z$?I-Ucnb4LxhvJ^a5d{yg{c_(dRW7iQ0b1Fkv>6~3~H7;)>Z%ADx6`-YyKS^rDUc} zInyANsn*?qBOzmgolgarl8_)U+^89#Rq7Q=P7*o=ay;chinHS{UXX}{`Mw#SS%#Tm zz|o)0L3)o$B`8B~#RVWhY=mNMU#F7nsu%+?#10*yK)RQCvgxc8YI5PKTsKBkSA!P@$gh+t<%aUw`+3(*qi(c+la(&bA5f@IqM6yN8aZ--zW%s&ZHu zDNVNkWTkIE6m79>^zM}70mCy5CrUiU6=0J3!_aXshd;?_lv=&9ar5_Gpz6&;nat@M zm1btM>HkO5cgIuxzW=|@v9}PiWlNF0XW1*2JtHG~g^bs+mA%Oh;Vo3M*9j3aLiQ@z zdvE7=_x(J6kH>j&{@|Q*pZoQ=uIo9j>n?pN4H<$Y$cr)n`B0kTs_jF*APtdFfxS}zTtl){#)qz_*A)x}dQg>}MB#X5` zgSbR8y8bGM6Yi#%6SL$2tjeqy&}vlvq@EOH!FZL0Kd|nYzClE)FhJ=!{Aua$-0=%9 zzj*c=e;d5nSLM1MO9o>v*q58j;4NrDbHoeO)1R|71+CPIhYkW%HG>|I6^DJqey^v- zZbq**{#BFn<`QRkjPlNNNITcLlK+FV(^avv5%U(QwEVOu9lD0{4lS>9dLF^d*N7XG z&m$?*u3;{gA2uABD|?M>Dr{2nK{^lJi90^zvq;oF3m9;FR;J9>$n*M6M`zhfn=eLSVJ zv_)FG-fjs#uUbt0`|Qy5O_}31v4}#8I9CAyuND#}yY*4^d^|n+Hv>!FyKi2i#AH1i zeQfctT13gZko;(n#^WTX87X%dSH}n@)4q zJg*DtlqhOoGb?*E(KSo^-(cAFV%Tzn#QfRb)r4C1-DgGqgno_#1aGlA_I``DPj@Kb z-FqJkX9Y$bYC_Yy*=l|dxYm4=uDcNnS8F`?P8N&2BQd$ZB}G>xXD!4tXev%Rk3T#6 z6GMeNr!AIFj~`?Q>KLo|PP`F6|H(*%lSLCUJ)M#^-@}0c0mQ1RI?_er7K^tT zNsi>ZHFFLQ`hz-UG#+?2J{l!JvN*6|#}a&EPIbuRv{Y{t+*oj4UfHq@WyqL~-&R@L zmc<23(>#lyDFXlS_MiqsbR7FVzBP987>N5-;t+;w0t4+Pb5YV6{`F%_Pq&`*@7RIU zM3R$e(=;>=hgrD8JU7szTIf0PX%lor$+J%VjW)2|da&2_D&6d(PoMfvqcjGZv)ijlCn(MqD zExI(%oz?#2jwuE+)$x((JIGFLMiMX~`t#jsvQB)Q~LK<4IvLC{R-YDW5Ds~DcsN&|vx2_a|8Td6Z=Mp&KZ)mWi z^?2R2_6UDy>9GEu@DfUVlw+!=ON-CFhV%8OZZC7tpV5)Q-l8NjL_M?o4MJzg{^WdO znJUL>49BnH+ zUARn#gmHR6wU`Mta3MytpaIcUygIu2nRx=?MoOQSHkSs8L>*rBLl3~-Jt;R2q(bXJzKp^wr?g(G&oVq^GTnZj z1bCfeO(?RYP|RL)uZLStClrLi<%>jI`EIv_`;PYL)rlG!)?)J9a-0Xr@CdpI?!?Qs z2RBneD)Oh5i@8n0QsWWmX#K$ozac;A6{ud9HhSw;7%OfosfhG$=x<|6_3$~g5QC*W zi;~n@W8csM1H=x9)xNcqG~Dl){{Tx_WmN79mh{H-Q^3PkL)jGmG}r>MKnC_z58S2P z&)C~O8oG?~E_ak-K>))JdV~*G452V1KR+>JFBqpi)ovV^pG-?VytJH{Q+pRI-XiLJ zf;+Lk-XN2#{nOjv!44VXba=0vu&Of0!e5CqwN#k{@BTMIt>EUZJyP-!cWQ}1s&M*f zpY7PnSkHtmL_$9Nr<-v=nv0%bsU!JsXTeb5jG7Z+RhHDBddj!gE2MWNThm9JwPKZTp%7n|0i^Jwy$n@A#pU&qUO&gpwk+!FFI+7w6y%*i%b*qxbuBzk9%?lqE61E=} z;SHS6IxB_21dY4LDp%Ef8uJ^cBJKyiNjX|$n1O?r)lUZkW}H8~ex%|oGAPph=3HsP zdeoqG4SQ%qlYzWz+yn+)Ziht{$6jGvSASqn9K!jt=91nmG0rD>X8wN(GP7QN^+xfs)X^FQ0}7l~JK z|BC%Kt4Wa`sGgvicsKGGR3+t51FeoF*RJn)(!hN+)QXAq`qW*oRRVi~IBB`g6!xxJ zGYu)&D2~A<25V5BH`w)(f*<8=39&z;2~-J%810f!28XlBTq-j&W_k zz4lnyFAkWz=@P2^&@^$GqokU2%5Y=4#G zC~uoJmB{jIz;yGh3Pj0~E%-tDs~OfNx*jP$ucM#sSW%7Lu+~jUQZGADhp{x%a~z$| zOUB>E7bkE3H@d_F*+G|YA06_@5hoFTe8()B2Y>aXX0~^#HE`-{e1tG7uGWsb+Fti# zVwh$^nvcenJ)syWWA|cGpYIg9huD3ydN`lVX+(zr7` z3!&zRBnaB1+CHv6c-4l1K|;Dq=-UX$ds+SN{+}10Kx}9#>(*~MXSJu_MFiYHb4kms zvYT-c-pNGK*z5A(b4XqxxU)H9qf;nynbAZ6#P4QH=%*PWd*_$0;<<}uL6?x0MdjGs z{_1*}* z&vu+?JO5ly?T4*iMo*Ezu9DXUmS)Lg)y*IGZA=uslz8&O27=ECp}N}jUn)Q@A_7+* zG&A(UKnhB@lU8Lv#tV;?KE3`7IFJeO8(Y%pemZPwVpg_7Lp_gO{EVjwM8INb+jXq` zL`evaX_EjlPS#ye8cR~WU^;i-mMSnxkSY?}9b)t)S6nfg*(Q-68#|FMO1k%6i0AL} z`w$J!gN?`)JGpeXY`bEL?drP57T5VruUVJ*gQUvjk9_XVXHy$z)rrbO*fW}fKPNX2 zb1mA20!}y%JW1@|-=j*1uEvCIu-FtNUF5>?bC#ExsqDl{?>QcDhn-3bj~v8<1Uzp` zR9p^%_W`)>#A>`R@a$m1adR%zUqi@)%xen5^%3L-U}R25b?Uh&^qr=!ZaI3X4)HJL zs#hAeGC)95lF{lv)V3kwAfk&2(_0_GlJhNl@*+mt*+{ZekY?QhWLtP-M~N4wOqk8z zg*Vn~xF$tU7d?;VJL$w3cr_AxR26h|Xyk=A_pZ3bkmmtCR#zCq+a>}Z!42iOZ05h0 zqB)8Ij7w4nS_u(EeK|JBI4h9MrHOH|yqe4oF9N+JbF7$n4-5OLrRQzxnnoIWJPhNO zh=g(qY_o{F7arU?(t$&W)7M7|8oT)Cv@qEc>I2-{P9huG*u5F^Km8f#Sv>YLS!g9> zLRp67i3EONQDY;hBytLe0^PFRn-&()&cO^G(%5Wx@|rF5n_pgkX1vB!AkDm&>BA_zs0A!`pw;b+#^3aGD^0!Xp|7*26~Q-?$AGwM104%0v5 zXL{}r|D>TL&q;P*I==nw~~LyJ7XatvM|Ec)v!aHdA*=Egk20i`h%+mN)Eo-M!y8fIh zGZppY^`RAM?0a}DJc0;Bhtgj2&#MfghnxaCQke1 zZwJ55ffx(_f1T%gsIlQFJvl^T^Fg)$t#+O@vv2Cco4ssZHV0895Rxe#u zxlASGlGgw=EgWcNyv{QSh1p6p+OnA*9aZ>cUHMF zb0*T`IfPrFtvFJmsRK}(2i8~Ou7;CK-g}QuX7%6tN#!-A2y1N?lglJs^df(Fv!$+9ewf-ycOUgnIr39qCf2Igk$-Ob{K+|M)_>)-p_sd;+tCk z@zWWkEN}D>L0yLlD?E@pmVxb*V&OHe3-pPryR!-MG!Qxg`Gpc79k>T%dN**l+JKu* z2>MG{JdJPyP;_4ZRdPo+00wmkUvnUWGpS#BgPh|}HT0dIPmgqj>s!KDp@(p7%2LF z-~T3RpCfV^4q_1#tM;(=LpX>jY$Ty<=i{Om!#;jsI-I$2!>#)9GxicZ={EUN(%PWCCkqwsF`<6Nn zS)hKLWN#JCt)RB5oPo{|_7dTKok{~z`F-~VXD)Qil=jvi&-7&{hN$DCb(kNFdUWW1 z--+;lj~zV5jF%h&y}2J-l=87~ccyZq-Fp@;xb6@Ln_r9RWq~r*m#j3@FadW(ZcTVq zd6?z6Cd3Cf;KmPDM}NY&Lld7B@jpqmNHJ~Bl&!R&a6hx=UVNHoZo=EGiBw_F_vXS6 z`E3dvF3X1%n4kE!AkfzOv^fcfwOQ@j!`?G<*$c3 zc7g*ADA#i2@cic7W?5&+a6=hA+n1rH9V`xVK?kjutXpd7Jq!lW+FT{c|JDt0IHirO3emdOP7`j{IJ6Mt1}q>TTT0Q?d`H#0-3M6<0LRx0Gy4lVmmHXS`5zW;2&VUl_J zCl%%DZ59tb!!hySsNJSH?}N(dr?=fH)6$$@F4 z{MqNWQe2!9H-b~$C0P1Rv;3FFg_mA8?dYSot&irCx%RfNsC`)gxrVo|!_SP|ozm@f z{e0KNNU`WKfta(=m|cn<|42#cdp+I~1=Zq7^ITF)86quEx{p^LA%yfrpvdHfDsw>? z8(03#QXouE`L9&QL5+(!!m06~Y&;A26u{wi{h0>%lE{Eup0JV z_s&za0b&#c{T&b?ifvmOXMk<%P0i{!;*$7F8^#qfEkFg4hn2Z)TEQw}5RQ0dr~>)t zdCNBgEqszkgCV-DKR;FYG}T@eIhzDf!A}5l~T4cpr7;su|CuEQ}a;iQ+>9Dlj@-#j}~cCTRC5~(Met|whZwZK;i%v z?etTt!&QUS>aIYfZ)3i{Yu;ZeH?~b8Aora0FY%N2nAVjJZ>K{UX8J1xAlP%6Ef+3| zFruh~A^DT=t?PxPaJI;w6EliU(-*Go6jcwgYlZx%(2GH|=9$`@amy>VALr(RI-aI8 z2KKGhbaAD&JIFVv^JpMOz$;ldg@!G*dppD8X(ZF17NQ<8r2$d?P+GG%DMPJf0f*H| z<41(v0QYQbywXa6G~oizs#~WR2-<%3qT6IEZIl1-;r{~F!skZ{xll; z@;iBbAR&*IJ`D=>0mdbaWug9AsOhIm>3fzU&FZNV}tg1&8 z1n)dh1p@_7JAk3? zwQ4swz{lVpW%Z9R1->j&9;97LGdXT;p;v5?PRlPYygFu{tq zW%KA_3{$^dJwz|rt~yUB>6%1cDYeZVGlGF#1{{(feXH6z`XW=JHzmtP|0EZWd5WO- z7C#lPcGAd~dFEiW%^hK8)jI6btW7eH7!Nz4K|huA6>Bx??+??y`qjnCvknsO#X*#(PYNm0jB(6)M8?G{#t4>rMB|cHd8}FU<8KTNPoy;oL}ulwsy0 z`ZCLss7gFpqKHq78)`*b`_(ePii(5$P4{CK z$P4AH5Lw2!|9~6YNO0xrqJwyGKvR(_dj#K;R-UM3CHX`=NQP`|+-K_bMjYJr6?^ma zAiQC~Eg_|H@x-B;iRAWn1t!OOA>#K3P^W*=?@_9;hhCBk#B->~M-1%jh1Mrl763kE)@{Uf?+elCu)TG{$GoC4wp58lE<0A4B} zprhs{-%Sa^LdWW^PwL4ETl8rb=NVqwA4Hda4{|MU?m6kEs37E{>4HE;KMu zc$%s=kF&6~GA;&p5`_@yCLk3RLbY85BYt1^Ys0QxpZN?Gi;^o%0@r847s{$>;uzm% z-h=)SKygWL9m_t6icGE2UzNU9D;e58x*-rjHv)eVxit+jrJ*rlddz@j+Z+?1rxd0%8Y`TsmsMyAy07=?jLCkQ zT(gqQIUmFt+>yr$qV|f?f=+2sI;uQED%A&ec}>2XJ7MJI1;h#3oYdjyo9b4isGB8l z#owIcsuablor2koj!$kh+wQa@zB=HTv$CNrvd= z610=oIy>W9*~^~5HxjG6DUgrLM(a+bT^*`NwveZ!#iM(_T|LSiH5>0Cd48Y$&bTgq zBFQHx^E`ICEx}5hGFTt;6low|wox5Uai2C3VCJMdDM6)1RWA`N27Go1FOa!*6sn&j z0yy~Z?gC&Djt4f0yAa@#bsp}3`3tN#3;;}73;^~0$4zxmX`Sz!zV6yFQ8z)A;4{LV?jEU5qZ_mO1mrmNrY6Z~X{8pGNovQ^02V$&Y>;NhplY z!IsO+@kMW>a~kfE$C^yb;7K59nV% zpy~N59_T7|h4;1IGZstLz3K0w{C9D;AHZH;m1>dVyP+wg>TU-I!?Z65DclVSW zGuA6D3Kt(v+QCfzOMl6>S*A%5yFW)4yKLxiLv(161(wBC>&tA4)o0U%f~XrGzfU$} zyFF@&D_p^fWyU)Q-b;9A10PB#V-3aG_`~nE`SmgHN90H^Szk{>UzNu94(emQC5J78Njq6e)83`NFO zNbwK+rOi}WeRx(1Y}@WYFp>^(*`Y+`eSlltQ9>466%XI{kNDX7IwBuS5XC#q9Ykb( zn%WYT9;C;*O>kOFazlwTcLmYEJg|zDRy=-U;}PKeyY{A7$>K84+HDst#{R;Vqc%@s zQGMpG*z6|Hz#VHLq0oV_BwjC$|0Br#B~#>Iz4FTv}S1V2E>9WC4I&wDsg~PgU7n z&^F_zCWJrl0w1QXl+5U~rKfXN>&`FAh<8c1&`#bR{A=DGtcncw+wKYvH~G}u9LB*% za@3SHN7i2PKkER}?+G+afmF1-9yYCg)l)DzjR-KsN8pHP4QzYe4!%Y!ao<$DrD!Rw znNN3KsJOMw^l9?D(h;^7El@k;5DP2$c{l;kI1Ive>YbE(B_G58xrwwzUZna1&)DqQ zv$KB41(;IXNEfF6d36xt$OU6aS3cuT+B{-`q~Vz#Lh|qLZcr@y0|mqc3Lx@|YEOqU z3a_zzNrlDfuA&|%DCH(@r;~#q#!e9z>e;WA?dq(EsOJ-lpV|EK#TkLa5CMjgGnyZU zL9JwH7W_zp`#7i#;;V7oRtrzQatS#Z0C1K=z$KJ(y`T|9E^BG@t}12yPN^0CFx#Yr zVVeBlL83N?K&tk$g|pqj|2SV@d}TF==uk!7#d)E&b~4Q927t>Pfiw7%X~7qW<=2O& z0T4523gHI^k>wke_+2sf6hoE$H~ZuWpc}qtWgzeY$hu(3Fa1=x2c32oZM1*dVhe)FTd5TPeijnav88w&4m`+< z>C4OG%kPJ8^-(Ad87Q+9J!2X7m8!XZ&i&6NH^OZAXmywdQ4i%rx`B2bW~^PapAQ+K zJcqIJ6*fk5=9acNsSkLvLhh6%m#Td^0;1D zDzf81NLT%9t<$NX(;f6D7HUNEpF?9uZ^@kYf;G*B3DFQ;4uRelwf(k&gLmr1RD2o} zVkvJ-#u@KiGN3vLPu;LT*AN_%DD_4P!If|^Re;Xj26>TrWs^UC%qp1a-f5czvbq$5?gc?`&o}ArnJd=_ z+2WweDy%Kh_8{hfU0TGHR z;WHU)?Tv0}!C+ij8qKTWz51OnT11GgpE@G8E2`(=QPNzK+4n8jxzvT`zv*9bFOVpn z6}tPO-0}3kR4gS2fA%1VwlkK05Wf}bl;p6J!;^ja200YXxf$d#Gi1QqKYpr-C zkh5r8YEkLWb2O!-DRwT4#QAH9LLZR(GF_VM43Z&RxHtb=3bfAc)w~J4%Wx{_+<}dc zKlC@B0&nPLB^Krj;6G90?BsEwX4z}s+7=fTMO#1JUoY32s$?VA^KQZipV5WJss!uT znmxL8cI*JPjBUYYZ}x6*G^n*9Y=t8m!X{I?O*zyo1-%Yjo5x1gw0PZbjr1(hG{$Hx zq+7m8 zOBJWnm-L1fD*m37vo17L-Vi$B#$@!^?Za2+trv$Qi|1Sm(Q*evz%XvY*|faDxhCz> z5`%ShPZ`E6)2<2z;c8FRLwBFnIa|+oB2w3&KU67~XCzBI5NBpT4SD0?X z*g^$V0xl7ScDHjQB@P2CFtH^0=JS3QxBXR%55;#cdF!~!S949Si37B>&lQ~A*5 zH?L~_#358qH^|#O|AcscgaELFZCfpVEVpJ*ih%Fyg_ zvm%EnmxIw*tWf5mu&_XLa1<+jk9Qh}>GWs5Vs_kIpP~_FQ}3672XY^B&HRsFHF*wD zw72~o`p`R|$(p0Sx?8Kx`h<7v+WL_H3HBH8{x>BrH>;E*S3ZXiOFg4o(2I zdJWsh3N=fU!4uY0#r97=t8FWO_^BcES07i7nbkSk1)7cUKOwI!7R3;M!Sd>A)_;)! z2DN$kx4R=)=qKAwrx^Iq&rcZlL_X5*`Wm2S1mx=Y;J0z=+|ZEI7;oO|Ln4UZajcvS zum^A+z;i$cy{4i&45UW+=X(|mK$4wq+&3Af-)x#}O<#v|D9Ygvau>Ijrbt$xhEvo3 znjdc7;m;yU&5pFqPV@w`szs=+AZqqWCrg_dih>w)y!Z$1d2p_K=SkCwq}F0Iojqb zUY-LPDn0>QhVYxJ$|VmxQa{P@u=K#A4Hj^8L?74Mz8x01d_|FK&|B-BHJCd)sqfK# zgHm2yhO@^eKwNOn<(dDDCca9>(Vgg@a^o`OEX2Nw4Y%2o953b)|s=C4zE zjF~!SFCs2Tk$ZIFzX5+P6memwpVOMocNfTfI@6%N^7vFSwd*&XiLL(XT^@`$+EcKnN4J;cF|50fo2wcqnV{A<$se8+J4Hzfs9v2-lzTV z=L9}|DzLa=S#53pe&js2Z!2W_#w0~ezYSdB?v{iWLaI5q3^kUnB!;Cht}@zR0K5HF z)`m`YMfY0XJZ0Hn0D~qZn8Os_isO|hDpqq1`krEO&-*#2OiVh4I$E^xu9UIX+i^&w zMd{G%FQnOoa>fRYIu(nr_nO}?ODdhe7d`MB>|5sVZEIi#Q(;(&$%=6kD}Q}7gGaRw zZqBAhWEGXl*fxPA z>3rMV5Wed?GPVI``86Ei?Q+US2PD)yxO$_UAY7Akrh?^I?TLP;&`SrzV9cuH?DvytmHx@_zpZR55Wvb42{j~fW zG*SITG(2HRkyv$oyyavrda+vuSjA}t?PPXNcf}{?1=Fk%3m_#Pz_*y=|7R4eGWb8P zvF~#?@V&NjaGFvu!Bkrb)@%*-QlbhQ1RG&xWlsXS_0CQ}GsBxAvww|IPDsH2Clx;c!jraEGMX^!UHLmc+N>xGTtH}J(4GuR3 zG!{gtt{xfG95Y2UQ5y~hB8+4TpXWwaXu}zWy1e~vL`4tETNv@99zQPo+x#wCg!~Vo zrR0!(VIWMY)FzKc`9I2SmvsiXd^4HVcYPxfwq}_&}CA?tq;z% z@!5?-4B0MUKDN$&WkDLJBuz|h1H~sCHFUOPc+q`98SeNiDGl8gsrL|?2i-HIDvg-? zG54CJ&!wT=Y*VUj0E1?#P}Vm(sK7!6Q2n+Qim%}NDgPmXyX7rFOIHBYB~L2CYqVb5 zgBHPh39p*tk*gC(MfKOZ>W2Xqk;67>m!luA&JUjO25a_)6Fy(I`I!<7)ubB1q-b2#(=ydenW~#vwVg_%)y5g1h zT}g~C*f%A}V1=-l=7A*B`%2)Dt^tx-~uFMxEzShAfnuzvTIAc!;RI+1iM|@sHc_e=BLx zSJf4LNYC@?manW+Ux;&TXo7m#nhX4~GUXLMx=MXv{rj~mP&vhbV-goN4hk0?06zO5 z76WdxTo}*^z{@fqU}ma|>UAJbT3L|BTd4WRMQp!mZQ?iK?gu?l7S6xQ0o3JL_0~}% zd2j+1)n7YLE7SJM9O-PtTTkzX$a9DHrRsrWTl`JvnQ7FYMsu z2G6M*>a6-&c5FV>cZ!2UMoLszpsFmz3M8B5-Q-*M1;sP^8Jqrw6}iu4h5vU?5o3D7 zT9l1Lu1p-_{;&HKW;lJgnj z<@Xs*88I?M0#eIw)>}joF|y(9`oi;1M!O)rM*meX4xl^k-o;clk!fUr)}MpW6;rG( zgz772mlrDs+$A%mgO3b*Suav(eQfBlLx#K=d@Z#PerLGrvwSKzJ>8wjV#f|~Pw<*i zZVkH9p;*r%Fpio1@)BXAIlFrlWfN#t#o+}f>J5fh+?5f{%3{k;S|VoZBZJFFxtoi7 znh&l{XW|1|RmMrblC1O3()e<#CPml4lu()=Rv(>wlmM@5$#oBDzetzqd_$bXQ2)4d zWA0{LSES-cW%T0EfP=X(9i3Byn*wZZF}|=kS-p2GAk!i=BW5w)leU)mm4Sb5*~{2M zgE+u=`jD>p-GT7M_A^mT27Ep)A?`EYM1ah4^vE74<9qc89$DL~={-0U(rT)hAIuxC z60#$gy%G+2Tp~Q-eg0+a>g<3nVDrRh;F}FaM&_;9`+xL~ptghpJr$;ye@^}y}h_(AYrM>&g79yzvD4QCzBU|1^Nis#BgRmE2ei^%yG3Q2Q=xxY>}s)C+YJu*V8MQF%1o7T9IC;RoVR)$VucuaYs;l&ZX86%{ z3=Hnz|GqhzAJEOb+Q2ZHm2^zK(DfkbOZ<9cLe<)BCCBH#(98J$Gl}p&Wtd)9Vv~I) zn(V^d-;d$L-fdq=0by-_@eOQN#o`4#m=$z@zfzL7}Y!kY4k?hZBX z6U0h^=e_H^n(QOY(&Kp5c79nln5gwdt+PSA^0qqWbyFfrexxsw8tRuDckEm z;xXW61e(1LQob747XJ}PnP~$XFC|dpSf}m;m&{PmTy5L3L+$_f5>zA$va6QFNWXlX)-&P?w@<2LBU)9$8CEHP=M|{OX}pky1d0HPhwb$ z1@MvBj||n-K8%){mKBx3IQ{l871YY&%{}Z7G4xQY&jXJmEM>wyI}G3q1D!4+<&|iP zu_F)*!SKp-<@2^WBYz&!Wj~7H8X`v+41OTT{;epP zSg(z5IK*dmq$rG&lflqfmWS#wjqFz>2z0I2T zZLA5d>31fUX3oUKxA?>-^Odg$!2WqE(t`UpGgE)fK4tth`%_CS9=R5VYy9ZJ?yPte zzt_FnaU{2UV+ygx;WP0duPy~f_XPI`ubvn;EK(i{`c|Rd#oo?OQcwQHqQzmB`qb># z(RZJ&jqK|2MtHM&|AY7~(52>9|Mx$gfOmp|e>x`} z|2JmktI{qmYUlP&okg%tH_x%WY>-^@=jOvYp^93ZgZV**h9lTvKO!}`d%m!Hu(xNi zP0aJ}*g1HzV=Ccyxv5!xMd+KJV`OH2j$Yp%o<@8@WaE6)MC){nE1Mu+#>2gyL2>(S zOqfvNZ+{I*vU1F+!oQXn$0T`LNO`o*HXsr6^o|Nb)3Pp5 z^5b#Q{oO^{_i&QUWR}&B@{ES83k=^4sou7_bUd;@0??8j|3-Y@$^#Knl{1VaG>>KB z=$RDYJV}Od>({?n1s|tr|72EpabuXt9DLRjJL9dYtUdJ+|Amcr*AKVlAoPz!6N_4p z{Zoq&KMKg!cxwav$&T@!?wJ~Rfm+-0E0x`~IN0K$c`)&5Tj+=5Hk^d|%{P}iKT5k; z8?O|&s>m9Uju5Ww;p@ol%+m2|e6&|?Na}vKi~s3wV)y1)flcIhbT%5xiDTt1PWe7s zNNxA?hoDh}H~|Zh>d&SI1T#x+2E@q~ZLK=Qp%!3i=g@;U&J;L`7jVyXH<*=xG)I~s z0A7DAtNMgA=nYaCseqLBo)RKyDT;mfafq-;qeErhq*Zr_H+uslEl*s>i_$0Ow8X=B zbGs40S1*e%`PUe|(ORK05(ayj5y8gpPf7LFn7@5G(fJ^nxNcqb!FRs$!zudhDE>(B zIQt%Ay_@L(GK6A4S0#c%8mpNw-<&@L?x(|c{LXz%6W&++L#gA=3FhMtV?b}c7Hx7& zSoZUqsuDxogG;SHWz*fcWqGh@&z$Nu9yjF3?S%Fsw{c9@=yLb3iD=$HUr@><%uD`9 zzUji>kuPk1d^b!QR7ZW0=8Cu?J3Y)X^F8|ZE9UAm#s|yNxv=Y{-;9IdJz3I@b{Ov& z9Xi@VR7}P+@ohrkxf)zj#Br}f9xzUl75cxjux-G(hu<2oI@S!19G6Ciu7xhc&M|tN zS8}{0PPb;FhE-qO?=>zS$IhhLKl}BxZ5u!1*|D|haOJYd)W=W1^Eep4WJd;A7+sZ) z-^gTJ(h?q{?sY=D&fOV58C}%bd;xdEw;&-MR6{(A>ZkD|V+*3=slO~$(eWZfW7axx z93S;xpnK~nI3~IxB4d#75++BxfU3#Y{p2lr^S5)c7@jJVx*Xy~y&nw$GXQ#IrSohEsey75dTsENhP^b#E_T{ed6C7|->T zwtIao31~I7riwwe&ziz?g^$bBO}x&3eV*^z8Q&T`dBudbh{f~;CMZy)D17vfoyHnH zi_d6pdsQ*^pHG9ujpD{1N8HHw@886}cy;O1gac8pUhH;UyZ;HpoSnMQGyj3N_>Cgz zNXS_F@{MwFppA<=w}@WNrCh)YSu>ch-;&uxZqMl#z&VGlMVp@?J$Zv$EOTOiTKsu- zD{(9xPEU_Dns;6cR=H6<&8fn0zmTeEr`)a2zwWnYijKY?$E5Z0Ng~?qe2_~o&_`r< z&*QzqqV$5*?vhP;{Kx~d#&ku&xV%XJ?FPFQ*4FV|pXE-1AJ$B29$t8`uDZ#xioN8? z@5TQ+s>9VqYVAg$zz4>+&ew(_Z+7=0nZMd;=WKPnCF+dXW&uNyS)Lt^Q02^_@!Eff zE@qFLl^a+;utF)kB`H?Gw$6SHWU9ckK3D7m=UwkzbHas4{q*!#<$W4(XR9_HhywQS ze+AvjnCDm#A9*p4T!623n=V`sp59A;_bw2-AmWh-RU99@tvI%+{uRW7g6(Uk_`|9w z&#KUurhn1ZbPtUfaJ7+_D6&(sVXB-UX2)sJX+scIhJQ^N8ufdkgqht|qjQxkske-% zd@v&`8(8RT&u}4Tr_mSuGJ)<##SY6Kf{hR#y)P$1OO(A~`K0H|f4atwtbg@JBAUn1 zAFfCC3*jJl>kU#|9dgecY}swJ4lFDBQJ^b7k5fXPF67=6CgO_pWCil2MrC~spkq?Z z?U{e2QT^*$0oObQBTY)ypU_cZ@-Nyw4cz+yqC4{d2D6{KR801PkN=7nYX_`p@W=dd z;O_1oO!GAWLc4a1|CT0sKS39*u>NvD%roo-!hg>^HR$Y);(LPzYnGU*7<$I2-Aw}yL=g}9HdGF_+#elWz zXbYV%;a(?ZaP9Bh|AQHoa5}*?oSo=ee@PPx^C?joX^uPE$HiMUn;(%k=|60tU?Wz{ zdzZfY5V|I0l08PxVDA$3>-*zEU@NcH&W_C?9dje|b36gKR@xS9>54|nC|G5aP{m8n z_rI=d!Aj?C7Z$;$JAf~R`Y2HfeJOi7+MS21yOM3Zqb;}Dop=oUUD8{V8^Y1Q`blxs z&QnyFngm9ei#R>+`HgLDncz7byYi;4E{ngR+x`0G+hR8pgSVXIH{!6dw*p^eAXo5t zTj+Ufu21>o>$u^`9Vg&GCPEm%lDmp&qH15yxqei!3 z9neFU@xPXeA41l^Afuj{%9pR|3zyvBb-`%X@E z!~Egvpu2CfYtmdZoCg@QbHz=o^us1>c6oQrj?pIb>ZRjiQT3iGf zj-s&X|KsT^!=h@Vt|w^e?gkN2x{(l&5J5yqDJcO#y5S6>h)6d`2}t9BICKmmA>AV& zFiLkf!+hs?-|PLZ3-~d==H@_9$* zig7(XP`>d-+CCF%NMdti>ML)Y>|^BaOlTM>{&LanH50HZ!;Aa8%?_|GGw3`TDd-TWHUBUr9y#B(rX%J##BK+3>kb z#htnCa@F2{IzW@nhMrLt`<_=KS8vE|df8Bkoe8SHn$%t?t?KRZZmA04S?jBl}aHqS57rCXK_Fpu&?O?bAE0LGVBae-hnIgm7 zXnDmqnK-;X`#me@eDd|3bW(q5wpKGnXstw!3LY-079Nn?7eRBk_xsAXI`a4MebLtOGP0qc9E=jIxRyf%TGy7A_5!1RHB7A*d@jiSc#*3< zQzC0dzqy`z2|VSZ7Eom4{ucB8X~J@FE^zhdmWe&K$QsSEC z3uVINAdxA>2em})i1%?fZX7C>nXIlddEo#3Q}*~%A39qvDsxE?+y=L!9@3X`Byzr> zBNn`QT_8V-9hv#4_kC`gs)13<1Nh0kT0P0d%|k2)qvQL|m>jEsMn5QdFXe63m|T&- z{M-rO^XmpAgdIIj8bF$nM@7|ft*`&mH*h`uQ`O0)Nm}|CgSE;?N#QFLlGuZCzz&QM zOvWuP&Vu;gU`wz=;CkVn?@2C!^`~u1NEmdWT^}6`36VwYZc!$gG1EN-ZU<%w9H1u0 zViFVp?_GTMLAzZ~#;XaMw~R}@mmTo-9_HWLV_Svs+06k79V)=$pI0*4NedaAY@POn zVIAhlpS7th>L$?q?9*oI zB-xo$B+gys9ErMco4ZCHcj~tf?+Wo50EM2RyVP(uiNMc@_48?+sUj#WjWv3s%~L> z<9X~vTs&js$Y@AaUqnL16z5g_6AJRacywMPFHa6GsW@H&xyto*=i8rh=7F%Yqv;LD zdd%9*Tb&DYt;nJ<0wwa4UNbSpX}O^R(LZZG3s%UV6pmqzxot9hf-%qRAdbEGyMqVb zQrwVP9JDSd^wlxZ8YOK}rn(J9_vU0x5b7HzVTWzN zNF4mE(~GSu21*>R$xILr3+Q$%IrVc4lK~{18u53;%~`W5g?Ungj~CKmsEG@RfOVn zDWkx=hE1t^m;hhJ(s8 z|6Y891it^Gc5c(V&}y4F9LF!IRaUrI6;Z2Vg#1YizCPJPB;@DxdQOlQJ5hY0`J4uG z?gQ%VVbYhdyf@PRMX);pli_#ZqE+bej$4K`>)0v+I|9m~fwNUFZmkGaQl*DE<%Yu4 zb|KYTLz*zp@$qXjKg=dKkjiddGCi(~>@T@KLW_~pG1o#@1T)|eCYnem!?MbMf8UQM z=FRrwA-1lr{s^PfcROrV?ze6~dO%pqZ)%NXqJDDu{4z{zFMJpbQ(|XF&Qv{hb$$_A z6kMpjUyb)ExYtd-a5y-yJSNa;p5v`50irn3fwt?$8Jlp}Yas{P%~%l>n`m#}uI)tKO%%Cb1Gm|h8dDl9qAmy3*~ zf3y1UKTRs=)D#d+pC9BlqI)O2&V2cq@p`Z86E?k-k|L%QzhCTQuE{YS!|8ZvQzgEC z-9{RL!KZV#e>d#@V!WhlA=N;G-}I?3&=*x_3V#XvV?Q1dW2ZBFOV?(O$(-WL)4w9# z1(@5AB2McW6_a)RJxH}Cb>&v2Q{k10Fvl0A^k+*2XH~${NaX0ZyALm=#1c_vSJt_7 zg`5YMVn>+iea}4SeB;@iXw!@PJH&_=cB+l7V_F4M>47}XCel%aLMHKkYWALPkg)G~ zEjOX%b=aT0iot)m|R5mUoTyn;g*|@lftY2KreU zGw?hnG!y_nV{Y4lAgA(;DvG4r2MSR`E3y$C;WE#xE>x^#VXfUMo3GP$)qh%FoZ8u; zeK8E{rYO89hIl3;bm3tg1=zQe>S8s+^Y|&|?*vZ4h27=$4gh-l54l~QyThkIPLp0> z=}l%_6YP0z4%|qG*xa~r1MI{fVu}xhfGbRazNNwjJT2J$z*YSB_m3ZM3=T>2BA;<0 z3|t-q9L$h4t990-@LetfyaKG{2Kdk4#BB+eG)6x#5xa(>j)s`oVB z;jGk}ZoInYN|8nMAh_z^#GZfq%Ky-+P@3skh*dgQd1^qQulHptPAc?oPNVR$38yVM!PV^YQAAUX_vDBwizGfHdR|1muA# z)DSThhPIs*q?E;Wvq^gTJQ%6kUw|ia+cH{(q4So8^ZIbDDfp{Fkcwo5Bb}&1Ynob) zgb*d2r#*RybJt&|v$E(Ce>cfd`;}gw3+20Zl^stDqr%(LnHxauu2QjJ_35I}uVK5Ciz9!CNU&CTp;&fk z-=p`y74~SUVsmmsICzt~mXG)C)Dw0>#cQgVE{(!CA@b2jPx8Lj=Pe<6dAwPOoFijM zbRIY+6iv#J7X%4Bu-OiTv}>RVGVsB*lk?LTb4RySJ5*DF!>45+@^G9Z@vn*}ze0Zh z$E>(OY|1k?vkKzJ|KXXe6M!sCyh7!Xt}veG(Ls;|BZr;o4>x*VTm_rw;5{jmF|+nk zJ1f8UP0dAltv&$t>obRRPV6Qq|DYBXL92=)M&q!Tzq`q+7M-LK@q~LdAK=uP(+7 zXysmX4)D-%L?U};4(@aZiis|xJ>lpQ@Y05=?uv%Sgr9@YUA?S@Tl2RTA7lLhhrqH= z>I>~dKo}xCCA@mtrJWHy2)U*R>02iQGVlg4WnvX#cj)89nfTyy>nX1HN<=@lFdV#Q z;BfjmX`L)bqu7fE=@pzT=gTmgzmgACzyW??g@#Ch?u_XDrzcDMc2r^RRCu_Zo#oRC zCmI5$jz7Pk87cy#Pd2ch2*7e@H9Vkr)M(esiMR+5z-tww9!&T+e zuJkc#(Tlv0l8BWt%9Z=u0>DPCq20gz3+qcxW^|))2FCWzc8s0dm@x&f6q<2i{d!bQ zgTsdDOBxzl@GWbp@9JwrmIEq>@@@aQBvr*@-z@vgWLUEg)&y20q0)Cv1%q1ygW;us z*@E>4ycU%Co($^#gGO4`g?h_63W?CHz}`!&Ko9*(L2mOY z!>Z@07<=WE;g0sz8=F8rvt-aCOgkOW-@w>#Gb|l*tiaPF96=zzQhIEyT8vO<8He=~ zLa2zkif^>a6EPDNO$zIUwYNylfAPznCn;DxL|wF#BWf!t?e2o>MbYz+Co3<^2rEMc z79Uo)b`hLGyJ`r4`x_~VhEl9;G3KW|JvhOF8gV>zS9;{Fu^x%IFI*3*g1vIT8S;`` zp{g;rpQ2%-Mc2hBxZKV4w@6Mj)n$A2LDt>Hr1epMp6y9}JS6U9qPUgOQf zMRxC48yyE(wbiW!7qw1cAk><(9_|za#2#P%SJZpEB{2gnybCLRO(ap;_&b= zBQI|OIIKk&bOdpIWk*|lL{&y3FHBKt4744rjaurC+|-4Fv?yBl_z7a) ztF6I*UghM)&$icBo=cv0>P-5cQSey@9tlCnCo$PQO8?FR757X^Oj5JrPw$-JAC?>M zAGeWtE&Qh~nr@xd5UV)EOp|_9)Y|VFthx#0SXy?15>j3bquzk)(5RoN4h;cgobyeN zQoaYT?qu^FjT5NZ7$ToNMjBHSe%3;y+;n#MsS%R#A=frG2MYG(yynikUZH^?;nZNd z{DC_!-}`+80v z0%N0Ya(J#p`JDsJi=ST?a^CO*{y2Z+dvB$pCLK+!l?dd#Bv<8X%eB-%zm7QPMx4UV zB0x6u2P6YjaH~he5HK+7%u`u_=W^f2MI*(3_r<46TWtRq(-=7Gt{5}&bU1%P(47!- z&M>IXN`gG`jR-LK-z5J1!DKT0FIwaG#&J#4Bs7ugq9_g<_2dN*&AyLdX;{8!B&OAp zq_eYYpJIQlBqwhCsr=bLWOcV3L_CDG@8GuzB~o{j%}!4`y4bOsZ58ec1UqkX z0c~Nl3cTruB-QCWcTZ7!FSUU89gF(jgPPUq$=FJR*kF5c}+V zgotLALU?Ez%QL|yx-h*5kZU%m3Vdbvor$3GEu{KK@DB00Dn_-FoaMH^&^pkz{~pds zVEKzTWCiBx8jiAdh&lIyERe25AuJC493lUd9EAI>xlq?0l@0^`0`fH_Gbz*>FIgMbz5YYi?&4LY(BlZ^vzbw7Z*Aojxa0e3QG+MlVa9W1az# zf-X_z;dn|M$za)Jm1AtMo~2IvoQ4FDmtBo`d3>=PUZ{eu&9iE(A-+Zu z2bcZe$KEEZtf}E8v^FdAy+v}XX98>ZrjoW2X&lNG6VC)uReu@E4t?mn@wX6w{C=2O z)ZS{2r@9QI(~zd7I7smzC*AsxI?maEoh*Z2+9vQl*4ijjdt%=!;`Z_T!Lb9}rxu@CFW!9@{IhKyZw zmj5@a-pwW}tHy;R^$0o&PU#dNnOIDzr05Q;vxul9BtEi5LW>yQuIwyOPQ?Aq7*NKE zu2wywPcR=OBv4tsw`XI4`bS`A>mk!mF^2xukw_X&~DSDvWO)l~)8>X=O7bb1(&)*yAU1-Ya+E2Sv zi=gD8L#r6Us5iG~Lc9X;bUv(82fhYV+O4-VPs7nawdcatFWQ|Il)l=F^flyV9YnX3 zmHky1d@;r}b)npF9kc*YEiS%;Jpt-2@fvM}~p9L&d`dnp9UwwpuzFThj#T@y0oe}%j!7Ar~=t|~fCU{#>R z|4+bLvdz;1v8MP;Sq^W$UlOKvzvbWbvq!bi-XZ5BA0t23C0sP(_%Y44DmUQ> zTKP5G^9u6#L22ofXnl#Bh3rKrF|^hu_Z?t>pLVO8!Be6?g4mRE9;`eC@{SrXo|9P( z9#>T;KN0|IQT&Km@b4jZy!o0FaYsy)c2DNaJksDpp$Bh&FSX~u07<1Lkg!uEk~-s> zjWHqrL2bzV!mVO4^}U|Qkh)~vHJuFk8v}9goXmFI6dPrjD574)=ikxal_fx~+;9!% zdV7zomk05AO9Ub#W=J1dZ2m#taR}G%v@ky;xPe-L4$wH}dJn{J6@3;tSK;gKGbT2q zE@0J^AL%txlo&CPeC1CJ;-x1uf`y0fMS$iyo&vi}Ac8m#gzOOSC4wQo$g$!cC>!}- zAAqOzho24nhsKbQCICF?*J&3#1mRr)7U_uctWE_W?(h-9L-7NfgT_6vz&E7C8MdZF z@reB(h6pM3dX+t0Bcg9HSTAjL`FzhMh**+{-N7wWJIAks`f&h%{~r^oq*u!$;VaF` z2O~~XyDi&k3;h2i_io98ldfJ-;oIq~2tSCCuc0T-{xqV1*mN#=xyy&1%t~h6@9eCG zvmgFIdwI7&;WmZi9e(Zc1L;rR@&P+Dc$99;5Vu+yP0^svM)lE-2po`cxt4}$fsd)*A!hBXUq zAsgTVc=BMUDl3ODz2ElT4JYm5M5#hQOi^!K*m?We>l8yP-A}9Q=DNC$-Q;+S?shh! zC?@_zO({`ZIjtDPVJg^qxb9uPS+5DoP&i#yv&n-|wK7}%Z7{)UEqO~qR10=27B>Ez z6m?>5+JwnSDra5-$r(aqusX4|V`#u~;Gh<*DZS}KTEC=n7(aO8WBCnxC9n?u(7-JVdM<_thoI&a};?7Zs${-`_qx78DUvOtA-||YE%djWlXhZQ$r-0G;aV=HQVR) z@P1LSre!1dxFW(uVu%RN^=f{8zA8*ao!S+*)kuWjJ!myh*CBZ$O%M(Rbe)BKxgV>1 zN2bhkJAgi@od@}z!_;RKZF1D-^NI&hb%)kelO)mb&J z6viaFpdbeat+eczg+f_CYt3)tcK_)j#8 z6l#Llot(7C1ZOr&aB94}gOM?daHvdm^&m5yP&HZ!e{Rszt)vIYd!SVuop9=5xmm&! zajboPS0kHI6MOUxrO=|2Ti8q25cUT%ytsT>fZn;7MJ)mP8{y6Kl>-efC8l5{EOJ@S zB1-sYZD!X;{lq3iRlBjz4vQC7<3-323T>*3k+X#ZHoagI^Jm z?>ElACPADr5!mv7PC#y5f!8_?_g1E;KoMyuO{`v6J(x0|wnr#YRGb-i=Vv2{ioM!P zR=-;ryg|ob!if=V?t4_w=z`u-#U9 z0ecBaC!O~A48v>mOnvAjZSCH{>-}P$B`awX=$5KL4G>&Y5A(8BHrQ>f7JGh!mec1> zOAxfdpYu@QLvCckK^bA-)@PzWH+1g~z-aYRe<1vnc)8>v zV9r%xykoB5?H-xgoat@wZOZEPhXjW>wJnJPF>b21A6JeIoLapZHBF6#c6TaMzZYN6 z|HdyM(B1EUlW;e?i73PK;n>EdO~vatfNzUwCugrAuf_m>>`~Vs-z_DK5%9pqUd|| zfElV6!CwWgh|tvk4jAeE=^#NHLoOorGX~AosAvDXsfg~Edg_c-#bzF7RT*r|q z2SHx()2m$`0Wg3vS9EJwWdM_T z?JLbKp&kV2v8ao92m&-QT>Y#v2=2C)D0H*=@t`$Q(H&^vxma3FTWDyT!x=hWJHNQb zq`fSb)fSVS&!4PvQ~w!NK;jw2f$uC?d?(FFq)JcppAUuHCN_1S>c-=ZZ$+|V+vd^= zs7YTH3am=(WI2Es zZ0ME@`POu*FZE~&%5S4i9doaGew}ke@R!@*uWr2z{HWdl2mG)jB+hCqCfs?VB0ePO ze3Ywsv72qaHN@88P59x!)xDorAAV=Jv;wpXqovOR3TNTWQF`AcuU)5j`(=quH*v_G zc4u*_hyg&q|QiYo8AN4ripZ-&*4@7g)O z_`~A;j>W0Cq`sy#l+`wXQO8R$yP_jQoO+rEl|>*Yz&*Cf0QKQ`oQC~MP#P72(0WRq z6eRZOMsERpGO4)MN;E}8AwvXEVwQjVh=uHJ0TJ=(o5Vn(*)(@E#{->(_ni45Tp#%R(c@h}P+o-v+CesD)*x zvYWSeQz3Qw+rmA`y8x#6QZwSte#KQ>qv<7UEH74c&+xY1msqfz_PD_mt_)oJyZ^>F z#lA>ltTjGd71(S%X&(qQgG2D<^@`*!gp?$eW1%-!KZgptMzw{JEWx7p^Pi3lfJ-*V_G7u_L5cBp&m$oP7Pu#@SFq9qA^NCPV`rw4do0; z=I_MV?-$0HH44VWo}a#Ur&RAYuVS_fvRVgKgv;f9( z6{~$ANztbA=0$u`lIhrMVl`s3G(@Qk0YWk7A?&RG!rFRa$^3RXn*WwekaqC0`OQz- zOUhcRUl0L6NL?=vl+-%evRrKLwv*rqOy@w$yc$L)Ts^ zI_*y0&CRXfP#koJH)F+XDSaY}2*{rkq4A+p9Q@kf$fwLr4;~{#9>?2F{3H1^$0=f_ z7lQ$ZS43p8g}h-abG@56(kyQpdNbEh#(M zYxs5)3yM*WIUSx4eCW~RFxU2SY1xnb53T32nLi!&IKZugcRLH&0nmOJvN@g$?5o)g z7!nEBCNC0~d#12wemZ}Oq6M&AD#8Dx=dQ7DCa~Um-NJZ9SDPxhCxU;ldV15Y$*^a} zSoXc8pur7Y?IiMJx%i(7{_UH)NypufH2Jrk zsP5D=?@rzpnfV%yJ~nUh89(;+pO~8BQteK(E3;NVlB-+6=w&0`VbGtQ|f8HeWCvc#}frsi?R)=m-aTE2VAe z-$fOY;KGU9bvFC}7o{XSv4>>OZ7Pk`M0G%IRxM3oqMQM=Nan=!f_`}>m(+lRAKfcA za>E{O`fpD5g`;OkA!!-)RpPtwJ)@rZduP1@A=ZO=kJ1`9ewyOuHgk3^1$#DBOg}CH z&2=c;5aad_LsgBqD_LFd zgv3r+V4b>VEAf2zZAcqkcMA#HpyPHRAEZ4k{!#@@Sdh@Ynvtx{Z10@d*sW?)pA9y4{L^QEM2|$W5v#L0xG1 z#~|OH?`p-Bz-3webYj(@OtjQV*r_iATo_;(x}!C^tL5>PXhpL6gl1y1WOUa$?DYK0 z6&1Cy$(@bkxjxXpM;by3p%zFa7$cA%O_@MC=aH1sIut@^a*}HQgauA*P*5PgsPG2} zs~J(G`T$2k%GzIzhSQ)abv>K-xwdxbP!%`1Yy$ry2xT`x^N>l%t?F{}&-`n*uYrom zNN6f&vU%n+wEuWB2{Lc#YMQ``eCD_KOGiSM;fL3}% zS?H=hZ=6X2Ke4#W)r~b;5f=NCxZ>0~@y#L0VgiaxcR9%Kr_`#Z%+ogIkvv`TO*i&3LU-C?625;Ni{=2^U(Zubd(ckD9ytxav(I2|WSH8*t{0IQV7d zl3B4q@SMu+Z#w$On?dT)A;$5(6d|bf%~;OMCW3Hd<&Ci0C6<%xX8n*cfQg5kG_}tu zu{f0ak+l)m)@)lS>2C-Br5!>p(Jyc4*;4PK23SSAsu>v{)88UUU;-}Tj7kMF=bqOy zHor##mwFP-{~I`ai=FID;FcPpGK>=u`kCkVGPX!RzDdmbDrEO+=bHH&ZOC)eJ(piS zi@UAZqucSEUH4A^M1Y{@KQ`?mw%zfy$j$Q4q}Ct^ z#Z4|n6}Fzy!^4RpfCHhJX{XIPHW27wSR#vdMD9L&6NqLPEA0{gfqqdt-Vf!1ZZSmu ze3j9-!9vG!Hj%SHg><}v!#H`c?|%q|`jt`)6HXH$#PGC5Y+ULvU}Km8i@mE6G^Y3 z#0vR>+MidLsf^=J;;g^Pl$P(|Ms&&boNbiEpNz)UY!WZb#YhoUKQI=5`sXRI_Xa|2 z-GhE`D2qj)ws$D{SMRp0jJ!Ie>(0=5;TN~|bme6}Zg)8TUbXkzYi>;y9Yf?#^)gi` z{Kfr}JZ?&$Fvm}_v&8U7_$lPf6;exZWdTzlxMIz)CR{1BxfT#xAYQp8rb03Bn&{93 zalT6$zy)p3!lz17TA%JRK*}Ro>?X^n_a))sC=z%CI8U+%PlpmtlIrYp#FR7+zU;+& z((^{c7JL6*tk|=fUQVYDx{+0ejvmGR{^f3>zA?{L*)NRUpGBr>~y$o&YnFlj4< zqoo`Zp@bh^xv<9_6Mb;#c7_adV+}|HD53o}*Op?yoeVrv#%sbui;fW5fj=$#X_x3f z06%DylOhd}Krq1qT$R(=Gu{Z17$UoE1;`TRe{47sTeRjH7@D)<<66ePGDd1kzCW(I z3(geS<9=uu+v(x%65@f|I$D?NFQyzGdc!R0WRt`)MRPp#{5ehtA`d5d2dFB6D?Q~Bh8jP?udSB#InRFWi0Jp4U(M*cZQ*#AF*2V27cj!c|9j^q zsCusX5u46#{QI*Z$Z0XF>LdnrUD!8=5mn?$6eGrW|a!uEn`r!g) zJ^b8-@QZ_cFtN?!0?t&Rh(DR$LsC*Rs8ZrNivw*!GPXD}9)u^KtFU)$l3hZE+nJ@0K3pszl79Na&FjsjbUP;d*bc(w5jIX`5^Exz8~KlvfFc?VJcUh zSt7%~1UlKq)DC|a{piY+(l~wAC^F$+|NcIVApRgd_hTWfyWrcWjJ;3^Wh+$&=uK9? zU-D_Ibp!zd9#+bL_2npNzmK}`xZBLSVEq|C_Z1z)qWv)VNd2|x$nNB3it(*=b1-{D zmA>&E)Y4Hiy$0GTxi{t0N>bR%BZRB<5w(;rKkoVlONAV{o!>vp^CO(@U(ClGu9|bM znm^)KxnV!Cj#&0TxD*mj886H?VIlaikvPp|FlMz8mVB6iaX}S`e*bV_IP;`UW}UT4 zgWPUwaUV|!iCbJ0TVapd=>5iQ+YlpWKf*~HQiTwSpa7;rxV_D~pH;132&%3bfc_b7 zjL$S;e4V_)qo1tt8$hrX74$tMkGuNeN>ZfFKMNh}#@2gRI2h-0Ff>!klG?4KajhJ> zw|s@f0IkYtvMVp2StTu<<_O6kdIRnbHELT@(xY?<_11$jgYJxtSl*uR!gtfNu`Xp4 zJlXNN0&0BjJZ%(B-sj#PJ@xc@UPgE4(};|$JpOzJr&3OpZ3kgHKc0)ndzD+{ypiVO zGD||6e^iwa?d|5=kNsM6i>>ZRFv3t+J(TLpvp5HC6&IsuPEiR1!lHB|h5pr})=$RD zX}iui`Q_%o+n-3@XeBrhA5xf_ED--kZD4+80Hl%WPg7D;!s#*<1uqk0bl&QhQtS@_ zyC>%zWNT*u=*3d=cMi|6N-M1g`#(uVY;3irOFySyDdpiW7p712RBliqkm$?6djk(K z*gyS!WIYGFK25VGocE&t<6z^DL^~hJw!Z4E*NPXEf2-7#?DdSxwf*FOU5SaaCBWa; z2h*$(jVnuM6oc!XhxPR;fqo9#YK{-siTtO8J?m$8RkCPmyfw%H!r zC@RS+!sU`K{2^@Zwn@w$10DlVaYf!4#{%#3#tE+&evLC>G;tgpzZA_K#WCTIKzEH#5vt;B^p}vh)^PJXi4E zmer6-*j5J}WZn#Pi@R1NvFu=1)S>SU?=uYzJH4NfTq-KNI0$nD7jqn< zB#Ahg8*9Dvmy3FDl7JnyH@LTMZ1OiXfrc(Tsz8V=Q9*VI(Bh2TiHZG#Z{-i4XcV~w z9KVJ050+Y$O$6((<|z5^1Gkf;f*1ZyXD-aF`B?eBtP6B>527veHlS!Jj|InZV5yKc zlzOaoHZit#6jAFIlw29-o&1kfc#kil);pIbOV+>q*D)@42y5v3~H zZCAJB=C2KEjVLA-Nv2Gbo5=CsL%L;LP+SV&HGFv}uY|mD-WHO}P1ae)N9;u0%8yH) z{^c2hv$Q@*8vsU6@6|QMsU@`;4c+16-3GW#NQCjp-$hT`Uq$aZbme2X)CYKICcUTu zM&;IxJeUoHO4BgoM^+v;m0)`w;tM+^o)VhFP2Sc|!}4MXqC}QYnx7btfBvh#+E`|E z)j98U4@hzZ3%@}+(P~*cXA9;Z!Kqq&-Ya{r4*BNPfP;x3)Pba{MUJdWVdxS*lewa` zL|)miRb23`HMk`cn~t=(f{%||#>C!>)?KF0!2EqqHFa_bk=<4$p-|#it=L@c4fer4 zfbA>?B`8#vMYt(YBN;5w9!dSawtR zAhrDlc*#CsQGFufg6g4;oHbbjUE^HbuiUmNsW+6VxwLJJPv4_$D0m3#()^D<4ijcg zY<40%UHVj(@PoyG-Xn%}asgE&G=cKB4$yb{QNqr(;&Fk_WncCB;a^}o*yhI2v%h~d zHAWe)vYOanYvv)WL@tvbC^^$y?@`p-F|*46tn&-75Y15=(|Gs)GZTF72?^9E(MTB9 zf5hOdOqk&OQn+LDz;xuXmdko<){U^ZMkS%PI1z7y-ro!T_(Ii`Gu3$Ks`-gqZ~Ip% z>BACyI$|S%sY6Yqio&+7Jag5sR>WU!A+$kbTe-KUn0W*tRHezXiP3yCPV_B+_te3| z-<9i+rS_dMarIqFaWmx^7%)lm^zYIOfqzU)bbMX`T-h2UQ6 zFo)Y+709|ArgC!Ol#@Cjw#;)>C9p?prNXLz>Cl0pyz+E8mXTG7 zObO%tEbeB{$Y$!$1MZ%*O9i)qyX{V<_p?s0e?GfzNBq|YMc6EY2;qJ8l%n@MkRH3Q z%e~afskv?cqLpl=1Pc5v{az6~jr;gfu@CGZ7cEJ+xq``{fZT9K9 zH`B?9C5xPuj;kDg5ipsl=IZ338H9vM6{P1A;sB7|picXccj|`uaq?Q;Y3E)L6U>mtLR-P?m>2P2ps{pBf)1i_V>THj$50evjKZf z2?4V-)(AJhBY=bkCAsR(!BtTM-2jIqPz~$Hn&zU99#_5PBo9R0lJK(O9e5P$EvjSbFIK&X()F_qr5k8r zA?T=Rj_63wvo!1Bi_d8FVPP6d z>6ZX-hi?_MvJxdUk(1A};0MUd1YBaL!}VDVzdT+UV`qYPBi|yI189^vcIt_zu3eZ3 zPT>J;O8j9mA=`s~?2&X3TEPpIC?Seh9%3XS5?X=TnUURKFO$xts`Bz3$x4a@dln+I zCdq3_tq**srfH2s8!IPVd0>Vws>&N|Z@Z|m#IRw7y%Hf|KhuHa?q-Nzj9AWYdQ4$MWoO~z=bu6pC`GqRN; zYHHro5R|A+z^hY%=CggxI*DfKFTij1Dl;e*LZ$Ie^6~&c2`$Z%0# zD6;4X-d#L>+I@VnmnFqaUaxlXy)rDx`w+FeMfVqP3CSo87uo#$BoJU$!}_zQ;*he* zBv@*0aPC82P?1{UcOV6M+`yD<*L!R}5esu!_TA?ibuSgdkh*y(7gQ!w&<{}n?*|+j z>li#@yhnl=%^2_5Lav`&W5~1{!`6M($|z%FI1ClZxG@{*xMuFXyj{N=%LVAp1J{Gv zN(yu6>^5bIc)DvGP*j@kbL@3DD7UYMKuMQ~tTj_Wr{!X_etZAFUR}9Wn*l-sC>;BF z6G^lrAww{65^9{I`$YnD6z=F=`T~%76AO#^*Wa!;F8R)_TA>=k{j-Ty7Z7S5@S zY*sj~Xah#J+2;fP?E)F$F1{SLXYtJB!tt*E+oB5~?zuw(1Xw|Ajy-15fnu3+DS*Z7y-wuD96L2uW4u!b*d*|+hxq8Fu06@q{>8|mZr%$ zI*6Tz4AjqKs@%DBvUt5IZIJnWe?M;CEUTFs_-Qy%Y5echB7KeXy}=LNU2-uSpXRPtj9x2TnPS7cgvC`hfG8P(JI)(k zX9ZVOjuW>T#F%r!xb$LDSR(i}LD#l%ef;6(Cr}+J?V%}VJLZtK|H@b^AJr1~fj!t7 z*;&B`7IS7WXv~5V8ev;-E6*iKbs#O%wo*-i>|T^#Tf5c|WXq0?iVh7C)bB~QBPAoF zx6$Gn#gp3UbwhdrZOK!>f423ya6rlPrQ?M`T~n)ttb!$2gbJPh3m*hXV4Iu8&>rYj zyU7}!TGfX9@rNHb9y$%pahmq)7;h~(t;`-gt#lnStWL-OI+wStVqwLPt;CQ_**IOj z1{b4mouKe)8Ut-qSz8Rn;LLwG0-0m>fp_S&#x)__z_!3l>=^h^np?sYd+F?Wt#UGd zukYLDS5RRMoj)~1?gaUu%!Th&)(M~lnycU0M{sl_cu4e2U6b~+%nT!cCWw#^WK>GC zno7!alK&z@ez21e;vcPqf^9)RqtHL;!V@5N7Vjp@)9ioUDVy9d_BHW;HdlVB5Z`+G z`ug{(|884}yD#w2xZZy20`=8>&U^UYY4*arQ=T`Fhr{7!TIsjL$i9%XqDX`!Pht++ z??Q8@SZ6IO3MfK>5j<+NOvVv2BzrB3IDD z<-C7q#nC0G1b$`@b}F<;9geF-5}jH>D-?E zp68xBcE=sZZJ$5(eSO}qdUFOHj>hqb&^l^zGE1u84#LJb8B3e$rw-*9LPaZT^)FAP zFM<4nO5C={VXq(gv1tMdmGGNwz;Hh+O?eH<`sm>7hT&8o>F0|vAvqFuBeIpAVh4Qt z>gqQ?r!rqqNfMjaWxpoZzEF9{YG!TS@C@Hb^yeC0&{B|O`vOsW<2w_?;XuA`n+yh&CpQxrv{2|Ym_~-CC5b5fwX>W z`GsL;+fx()#V<7w>Mp7fnMao$N6%~8Vf7iwKpaS|NM1XBM zWj4#uZL}+=gf}G?G)X+I6Oq|)pE820OK{rQGa42k$;U_k9;%05{&hYc{-mCQD{FDS z<{9hS2*1bbO1)p)$-c-0dL6?TiqtUUzDFP&5h?wepQg-6Cg!#QBkQsv8MphxIKDf{ zBVS<|X`IuNQL9lxlKz0qFKbxddXl?!em}6^|9yChW(Hk>KKd}b`sXY{=cg_g1(Thm z%^nx|wKdlw*WL>bSHI~`SpAsZH?3y*22pi-SxNsXrI>{AEySQ!n~D3!4+@tU=Mjd2 z)vaGIN&YH=$x?WC0g@9Vld)fzZJT*Ja*gz)acQ?-{Q{fzS}31uY0awEzxj}Q>xEDo zegM-?B=~5BZ@RKmr12K?YvmL8>vZ!%JXiodyq#D4*J9_-x!v1`ZO0481}6C9$tyk{ zkME@GNF6x8FlaxUn#9 zX`d)`h4XInvLT=$)@WIGl_l%Vl%KY@cBZ}XdC@sgS{Ea+95k(D?9A|=v{SvXkC%{I zEKP8bSa-_5tM^+w-p`?;gkm7wpivNHUdvnzU7EQQnSpIg7C(cS6WF%9UzHo){&New zQmjfDJe_?A80S~G`}E!{BAz#mUTSkrNT9Kp_1`YlE`~RM+w=NQzPUJj(-BBo=d`Gb zL#ef*LxuOR^VimfV)JRR`OWg9bR|MG5d62DPc9tbZ7pmdg`5_kLc47TAuEgz?y|$sBg^hi# zvHe3sDDwN=-+l5CG-~ccdR9xrMBs_|U)1z6W}Vdsm3ep6{D6W}PWd_@iY5aXdwB~Z=uZG%0`hsf0;|g$|MSwUS@41Er z>cW1fAiU@V9Q>+o&CMzz_^A_OK6z2kWAq<+#&0F-U0w|K=}&3R>n3tLxEM-FAKl20 zoT7GiC#(armoxycDy>@+tmRt=mT2eD@Mw-8o>n}N#8tT7hc2DNz?=Ft-mBpS=awVq z2S_n283hxL&T}oxA-d97x@{nzRJdMzfJkT@U0d1zBwV5FJR5EAxUb|^+SPHHLkdKX z>p8PI5}6N0@NKnoCi^x{96PH9OCVc6^I1jKP_!N6-nV?2h+wUUhVqybWC*_aN)y!$ z!B{RRBS)UOV)(iKjGYlIT3GY!NyfP(J z%M$3D{D#tK)TN#mL$Nt}#Y#J&^$hc}Hf=6-4$icH%CT?+u!Jdm#+Q)(83_U~B0FQf~C5J$; zd~y$@S`x6ft^LkL8&`*`!0p#Yxu;ymKW+r8rU1oUajn*p*W7_$bcp@#XAwE>JTPb9|A zghr$=#Y*|#DN<~N9;OlZh$bB2(I2+Ob3T6SIb{rS`_`1aP?B%i0<48j`+St*B zm_r64y<5Pj$PkNgNKEQyNS6FFp}>-954~i!}!x{ zg3c{y8KL9(M+|C6K7^I~2;e$och-eZ&1J6Ob=YhlIdO3sHA3}e3jEK{^zg54%pn6 zvE)>e(M7(591cL_vM?7$>;B@tofu><`GK1yY}FM<7JP&*YvfdpfMcF_%v7IXu=VQYNRZKaf0GPAIZ|l89ADZrd?M$?j|C{WdL(~v5KAE_23~(&k+gC zX_=ns)^WN1a$$Sb$3!j@8ph|Y_nq{=XlwLv`yHp=FJ0XT$anxLzJyz1mnyCNz->G4 z*DZI;Yhrz44uj3AQU=10UA!p2^RniOnwlEba6sg%;nZ}nkyPDnD;Fsg>W?&M5fO%> zkUSsuPRN0))ZTuni$GtYT2Z>1IBu?h-$zWY=P}jVFCv<%s@~aqADLlb+go?yZ=8;j z?!>I_zGKyLu{p(-bA$3xviAab92&-&Kq8)BjX+uK7A+6la4yD4W^?&7m2_P!)z4ERz<0*E|DuruNgPGr;Nw*Y**m z!i>{_$JUnh6K7a%vz@Dj+%g&~NW-LPYn>VOBi*U_eg=F838Dv8F737+-fhJ-?jpbW zpZ&5v3WG$Fj4flybkVZQ5Q0sD&>S+Lw&R?s-Oz#T)Xk_oknLxAB68lKL|Wj=#6A>* za=|p&iD5hGjI5;}gbdKCW;#h^+M#j(q(L}skun63pxMjH3AIEn(he=jT!$Z&4X-Bc zL{sy5`(Q|i8w5BwG|6)#yla;@ednUuh{4^pwYK_atj{83Nxp+d_N@0!x%f%I;1_bG zU|_#gb;d)2!@gp$90Ag31tOm4N2=`;Lte4Op)Sk6Nt}CIeT`iQ{UyyENrGhYKYmQr zXOxFQ%AbgP6BK!{wIBB-z##!4B<@J&n5nvlCL}~8g#DEv{Ds12$Adq+MN?49lxO8o zD7qDk21)BU%N%2#ut+Jli)&;T=g5{~eL993YGR}!|uM*)wI7EnlK%?sndJ08O zK+8`MLa-zliUYs`$YVkkQ)vMl177y;VcR~V5i6?1sl}-HP|#O`!7kqf;n`mgyGG?9 zSIQqeR)GAErB92fh)P%eGROLAYWax!zGT9iz;gc2$nI{-O}?Qu+;x)BiwW1i3KfTw zD<2Z3Phb2ncD$LQNKao-Xm5`(J|^&O?ba-chV2B|U;)~84$ikfXAYa5g?V7Nl!UE- z1iQ&~J;1^)*azyQdw4}+Q3i+!M5v8ZP+xf7)LGP2wkM*K*U1l&G_HLp`V8`7!?xc3T>X0(wAk zmmXa4A-NHL?2P-w1p@P(57@g&!0to94hkAJtRsw{4U}M6)k}&74RWrw&UfGilXi`Q zW)-xqV9(tVH>mgM1>(YHXA*-Tvv&Ll&gXhS?PkaW-L$6lXuoHT94y5TIIsMQ$?HGU zly4Uq8X=Vh!(KRbq&;*z`i>=>eseMWubr>p42=|6EWd7C`ddo7fg0Iw$o^K}yB<%x zwf+0=O1t&uwgqmSuZ%bK_9Y!PoI#Kau9oVwNVMZGa{Y?xUvOw=>~uHBl! zCZqdO#B@mFKttUb31(&pt7toma868Smmt@of~$R66&s$3+{2-|oGqSXy%L`V7QM=h zLl?OrQ~Nc<(BgCE;yKYp!`w1Lvtyu(SLu^Kp@CKQ`LJHm|AI`~VHIe+w0b+Fj`OYw zvqtE)@(peymg%*dC$!(S>{c%#9M(_UzFFpl9&{qONZedKQO)7j6(zg$vmCiB3zNKB z>9?`nRq}d@4Kfbgo3wUa1_CZg?~dzwHxEQK>+s!|RZAs=pC0iawF9`&>!<)`Zj7U> zsi@x-`7hJ&h^}Spb+J>-!q__cV1*|lzPNbRM7($RKi%bU!M-wyEl%3C`>8WJt6FY3 zL!pW;T#AIE?9G>ZC>c}&Ik`R}359-h$ef$Cg<=t&jh6^%X%qk{y2$SxuO)-2I(i-b zju}8OWf?4O5Zz1;7l8kAcCzH<28$liJ$EEkl>#(Z!{SVpQ>vqo7;l^@%h0vug+D(EQ?obxlSzVYVp|%JKivB!HEwjiPxo%qIt#dD z5;3~X{~(^>?G4=6Hu)nXa;cRl2-3AEV) zMx6I%j`vWCv2q4}5TS`3HrxX)h=nRO|EOsEhe|g*0{Wghf|j8J=Lxp0 z;yv_+8EaYoN7msk+K{m`l`=CKDH%37dICmg$D{o%L#tkd20sw_E=sglWp~u@|;!9n4P^;5hE>;E6b~lsOxr&qJy{L zTtrlca6Lf6_sLnJgsO@8z}*n)TUE~Y81tSAOd!v zx2RtmY`~8Bqiv}h;>^EXmwV`y)Jp}8ZwvFN=3!A(j+gX392{Jzcvxo0m@gOgbFupa zNa~c+e&nc1De$iU{1#ZHnI5%~h?QukQyK1}?Kpj8!z8B?dgvIhI^qR|j7P zI!;;Fu5hV(F&R;+J`0es3{?Q>`OQ2F6n$kcMQ)sguKkR?tY_VS+I@P!SG5+2{k5#< z2a(O3hLh&?Wu2a%KAC zM|T?L=Dr!KdJ|BcnrMdQLx-jr+BRce(4hN~lHM@78C1cC@i(RayROqR^2p}Ymh&k%>RAi4z6QTtJHy1Rd3Bc{Cw6F!(1fXG>Vax{BfCvuyW)vqSE zy7}#<+87##wj`BWtJAc5{i07ZvwT9G`16AJ2Z>|3!eWu@AA4xya6WV1T)Aix! z+uA86bN)PRTb2Nv$m(_Sq&_V@wi6L^(gVB9{7w|o7`sIH=4d0ub(NMaSER<~C4k8_UoNClp|)kcPkm zy@!)6r0NVqyqRo+h+~#wbMbn(v|hhN;MV3;G^ND#;IPFi=Zbf?k~m74W6VZ^*gR7< zbJ^_$TgQLO_=ANn;<)zYQdfMw$jNU*se@Tgi_3hPWTiZ9+`wmN8=_XF) zx}`30YwX|V@bAP7#pO$r#YazyTn>V#5GA5$5OL3uq!&ql+$IZ$9$m;=HHg=LNP>BJ z2mj&BHo|O6%>P<4uhJ_WI`WQW`>g>Tw-E>Y-{9cjifiFvvx@3W`?n{lt1LenH_gp@ zfjmElJEGrMsu(y#DllPMV>x`5#8~GfXs(< z4h1v*I(Tc@IChOH8B>YY&&f%Tqvx0sI&)P94?|ZqeNf0Y7Kw2;Pr1 z*bl`rR=?oes?*u&1Q5YjRHKc*lD9W%9~6RoZf9A}_D9=X(h=^01XPxgOFi~Cyqi%+j@;D9NsXkk~l zW7w_XnN>_UP+8^W%pa!FW8ZyJ0<7bI;k$*W_)oq9wW0#&pHV(N zed|3py0mfkR~BLD$}P?qmoO>Uy{h@p@Zgtf6$Txf(g>6udrg(+-A7qT634F^@~~OK z90l4UFIBXHY*0(ZIlAb6IRGa!Uh&<;LesrT65SbqTA~jJ+nGg08v-A#DB)yS-(N(? z?Q170X%1%ocu6Z~8%q4Ry99d^iF5Sv2`LE8Gk`t_~;d||C zkAG;4c5b`;S_q(@-`sOLFbzODR^OC~-<_-l@AiZJ_qr~~KCyqJl)Kwmw0ICJ`n-N= zcQxh1n-BY?Ohz`fV|#!{&PQ2FTnH96`t-`&ehACV)a+*9N+)DNlpt}l=+%SPdUPyY z8BP%i|M1PAmr}M7`5mL z)ACs7u8Q3DfgiybQMxPa&qXRRPd@7@_mM()ctj-t>{r> zk(Ardsm`)x=BQ6H^xV>5G3ddLWF^WyTN zq1GbXQqzYi_wPl*ZmVt&Mct%b5N&r%Q!BMPc@7EB04Mw3Qby-k8|AE z+j`Z<@t5stvd?{uoR(Kl7bVFXyy$P6_EPOM)B0I2@{1MSLi-UNN7K5V4=W_fD$&J4 zi$=6V+b$2K0`sl_BeeJZ@wC@wO+r~y#;Q0krs-$?NmftEg5moC#Pe*-$WWs{wZoQ_Pe#FX~%u#gbX zzHZ1vl^49*{P*Oy;=W;%in>%_rb8EJqm}y?)MwdBVk6Om5Lx<0RKMr#J+vA4XQrK>sracS zJ8bd!HMDyv}uq{uebXlqam zkc-roivMkJ+$pMV9KP~*yN&ge_ORV#Sw=%XZ7}+y%`6N^O36)jg=aDK1y;3{M9O;M z-Yb(F4%|;yCksbHRN?$#cfBTeFDN3sSKDrnSn5&BqRs98e~C>G)z5!Hjp!)5RUO;0 zn0@HvdG)R@$B@rfo`J4ukcpe|E5TC$LgH*xo@K9@0_p95tEwukeFJOf98@x$JpQ2` z;8nq+s@go$x}E9gvK(-k*gWzde64wumQQ)fD{qhdW=HVgLYD;VpZPE98`8@R=v34S z=~XsUe@7@sut+WINgw?;n$(B96+LHE`|EXE4(VY6#Ze^EM0WPPu9h;B0Zi`pqV)pb zHEBs>BAQEhC+ciwE*4c+6Fi7o}MZ4^Rv=V8MifG7DqvG@fT*_ANe zXA*SP^jayd6m+Eydb#4GZ}=r&V4p$yW@^H^ym@u>PE~1(3^hL&TS`u}vOr4rlthBm zfnX&l=npt-Nl<>rXJ>$*=2wA~!&(9|zT2XwF9(M${11?Ht&N#o__MSO(d1>^aH z9SC-?L7=#BN=*$1$1!#3+Q8Gtf^=6{%4@U{Bt-cXS6)^gJiq%d00O^BEl9^DZr%J_ zVji$UV32VpcK-NlqF`UjP#H@}B^{@QX>lP1q$FV$YchbCn_GGk8aqu^#ee=|ys0!+ zHy>S2>QA1@CEGx$ctR;n%oEve zNGZb*3e;#KgJjWqUq_=PJSIp~(p7JklPJwrx-|Ov0v3AY_OH@0aPmtJw)x;au$wQxb554aE`iheMB*5h%&%{f8v6VV zqvmP{85grYVRx{Y2=CA?xfpDNv#V%Nk&LQ&_t|AgIOCZ&oD|=9NlWdoSRH z_hMX$>i+Tgq|AOdY(6Zxf7M6hT_9?RCF@GzpRYf8iwgQpco<_aPs!cdIzhLYOqR|v z;078($Tt;<8TU!KTc7LctTv%M7h*y$NuJXo8w5~GH9$GFR2xP}>Au8Y@v)|e7)jmz z^Qy3m;V`IV)^m!xgn4{E^FfL5YDYN(#0xup9hSGS?9+TyO*~et8HX?`8~;-(zB7L% zoPFXy4DX?{NCS=aF-%^1-71dM)?jsj(_62xx1;SVb$tSD@60;y%Gq=Ic&K@}(t#h8p2ySrIzkzu()#7kbIStQlUR zIPGd*)+`)z!&^YS2k5ex>LP-N@4h&tl(*iuNh*3{LDJs{jAo4TJ86fdYk#^7UHA+( z$P0$W$S91SKOYEhI%1`wVQwr``u*9h552x~iJPoqYVT~U1p;28?eG7Lk5KkS$x5$t zL(D{d$-CxYgQsbBLSJAN!$2x4EaKn@2O6POmNjSeWhWEgVZD#lTP%x#B$9#j_TDMR zrk=Vw`GWROX00^un&=B!sc6AgP84(j&v2O}zYasLh1w9l;G4%JR{Bt``*3Uwi>p^I zFPtvF$)Ta{a{Sh)H<$SFQuK>;M09ui_35*p+wOk?8rIv>L;hya0-aWu{TFEVJ@`u$ zflnJazpeUPkZ140e>DK$8eus*($m*dIZ%=zSRpC1STwBbibnM~+6Q((JT&X5oC;VH(!urO_ znlL}G!|Q4D^}5-}`2UqwN-h4AR$6!K7SMIVTNE0DxZtR0U#v$>?zztE z-3GWEa;}bc&p({ku&)pjE}v3dQ3k7-$IShDa$^8~1cYq+5%@!ct#!QS{k($*F3oUO zRD(NC2XBIfky%!_5*%7o^jfqq760Nh0cr&m4tQADu^$A2`5y!0WEHlc>>NUj3PIv8 zct=nx+7*7t-(?+HD{9 zD|e(8UQ#SQQK?JilwyHkGUtT4AsSyL-Jn!$0@53?b4hT8@4C_sjEXXs`Nhmqz{0Sq2_Wu% zl(|o{C5^vw$Tm_^s~m-hq03+*kgKqLz5|U zj`K8$T3cR2lODTw(dcsg6b!2g0ANpF7q(0|<_|~Ib?o;t&}_RCa6cO!5hnaH);FLo z?Ra^5XJWGG1O<+Tba+~Iv-IwO3k+|DehO0ET))7uQloF{|K6nta!HwfL=9b+UYzOv zxV)4(bH<#68OKb&@j1IU-@}p=U^|Zxv>nVT0dP!w! z{$u|FZDhNoHJ?x?#NsTd(7xgKS7X_2NvQq7)!#^rmpzYKkqWPkJvjm*O1`2~0lSQu zWr5z?pim~)DKwRp{~iMy*CfeAstvTAUkD+#-z4`}oAw>D6GJ%|L9ynyP0RHR8!M#6 z&qQT*(D z-VUI9@L(jb|3!vzdn*w-oxik*@gKfCjqz3irFli~%I|YN`~)8$tr)8q>#gaTvvK>L zMm>{g#n!ZV(X{zIv6M<-j!>%>3c7yVoUlC+m77Y@pQJn?{}`uQ)@EjLB`5uJysQf& z`9cput-@Jk3OY1rA;tK<$$$zkgxI#NJu^|2DR9lqcA*^ZXvA)n&1v4k_>m{I)rwB7z2%huK2PE)uGBKrZO9E$G-^%GA=gj4OT3c^v;hLS5j>b0MjIKNEW@ zntjT;ZL1l0VD1n7@}(l6OVU|CWzV>IdL~#VTJXC>ByWlQej{bq z0w?v6=O4BHy~PhZxuCCVQHt2fta*b6t}bI4D=U8)8Xs&F2_H%Qy8k9lhDez^vLKu} z@Sgj}MnLt14I0X)@o1!-)X>DecK-k1rN!?UX!W)TF7EQ%$%*8ZF8A)Nu;gBkyY`W& zY>UfNipK)QVShn=h1XU#I;XsVc{D9 z@AzL8KGYwh7+!VYOI2g`1_j=w|#8vKXj~p^?Z7Jh&TKjPg*G4+K_y`PuFqgAE*PkX{slO{zttXz8M#u8F6O(CM{?l^_MFQqD>SQ z9M4jXpNY3B#*zOu!_L^>C&2w*O6;^=RZBxb3orv>1!F(dmW->II>LxFFLDxTa51JV z>EDU=q~mxvAuuqu+{Ufue8;m|)5m&5wmAt~xXG0dR)|Y;Vi8of@(>6_4#;K~yz#-~ z_hOJE=#dRlbg*8fe}sXs*#nOR8evB(%J7=GBZB`8uo0}pSh|*3%`lZsuri4xe&>HvpjID0SHmv=&N_% zUj$=p4dP2w2D+F_zVEv!V7sm^k!v5lSahU$1AXl8GYgSaROk-?IF=JRJdZKZrF7ij zx+~pd)*!j`b9qwv9khciXc>@1EgMNMXQaIm1^ZzO*dqevFr-@e?n|?%zw~&h4>X42 z=%3W#8kRm36r;FEI*?dU`c>)=w#S&sb!_jIpH5+(abcW|hgb^Bu9D8Mh*(k1CAH@0j!q3O&zuB<7wn@%X zmDqI@{={y3sq;uC2()~u8P8Jl{PD_Tvz%Ni<=hHJ=~r~p3`IrJAcEU#Q6jD6LOV&0 z!!MgP!3${Yk?O+NsxR__5k?DCB?TX?-|uXT<&G+qXXT|@4b(o#7mAmDW0;OBuMjct z0ZY2U)fEMVPtj4OP0~SFzIHUK=qLTuq|(1f z;^{4hAKEwURG$Th*j`EHjJ>Bc1Rfe(P}@j?b20hn+jvu}E!X#duayGN^)6v~CRuN% z(T3^#6%8Ud?(vO8Hb%<5U?siUUX*K2ZZUNc-oN6CU~Gpe`h;(&x_R;ch?h{T+8dC>gTE5HUS$|TgAV7=ODH4Bk+&{gDEEhRQ#FZG z|9aoHf5l1-Fu?6Zu=j8<(4qJftU+Qez>}6$RQu&0@pEhqiNxFqxP<{z-w^f}@R(1} zKVrxlJ=F{I67(hg_BH*%w2qZD@5Z|n2?mqj#kMXPR4I>QU=4qG%b^i6txgjkDTDQ= zeg}P;fY%%573%eOVq}mnZg&8^p>({2G)bvDhzohI#3y!56*k*;>DRU$d)A%-Tyf;H zXGLZYX5jQXuBmr%U`ioylvUnm;v1+dP}F6SP9dG1BlH~ijEk3U^EnmP1mi*bix7U*_N%h#++-_A*TT{8Ekg*|*i z`29`f16n4Nq6ejmzsUUZ2R+#UrG|xKPUzC>ONoo-J-r!PDSGo2pD?S_56Bj2h4Olw z{J*I4noewT38ZIjKZeT^35^9O#QWdvjOD$@fR+m;G_caAOFB}+%nYi)0Lmx^c1owZ zm`+c3G}OSfSbQUIBB!mNUFSaw+vw-#EebRW4Nvd`4ZPT1ofq9?0p#nXPvS^|I6!AV z3Lr1oc!fNFN3A)T+Y;9565H!{^MCFS`E~9|u17D!EPm0N_5PsJv)&!#)T4aj~(FZ6xDcL9C|mjrm6vb=n~Vn=v=8j->iVjKnY+ znn-fvsikM8IeGQ~2AW_o>ZXuvE9ZHvRW+VNWjq0@>JR**wI6&AhjCePNuxE4)d;B|0`=0Gy1j@k_-ZnKhw zB^^DKEfD^->^GNf+xfP}cizLIH*LQZ?}1H>aoOoSI_ZZ~S?}1>nLi^XLi@GykHZac zk>!~CKzrGlK>jhBqysC61@sOM3$MWNW}(;NX&lau)#s75?9Z`Ae-M|p({z*`sB>7{ zc34R6TnJ3O6xh9yMg}OuM|s}so{plY{bY7tPU4@_6MNjy5m^T7?f7BN0kY5nAo`Y- z;7{xdl4N5?KL&o&M;#hR7;)G*D&Cpc#ERB%$PioZGy7^6#EKF%-yfvN?OGS4lgeht z3eX7uy~Zd)XxFFFal%QoIHm#i%@=Ep#OSM_Bh=shf8M>9|6KqkK!3?rOjrEiVFch+ zHd)bj4;!!M#2yjGZ{Mr0vaJifszCH+!g+TP!p}Q{v zJaW2nEA?cb5Xa&9YK`VV3>Mx+7gxL-CavPA`D;ct%5GjNXRV zhHs0_gx8S=3Uqb9ziZ^0qIUSN%=hZ-k9yIcES~JwIQa!Rp4gc)!P_r*pM>!V1|>Ls z)gT+VLP10k@Q)1K?%2GHVP!=fMY5Sid%y1`c-&_g@CTpaLi1Tc^qJPHsSqF{5DiKG z8p`)$#V0<;7|p+S1)Q;D-F;q9TATUp%U61b!*fO{5 z7&zu@C<;-edDqBm&$!_h%p$K;Cf&DExxhpowzxfZUwyy|$G!8q@XTOZ@ z4&>}J-0|R5v5uJ-S5Lfaf7gZa@UtUdr#Jt+UEWHS@eQ0iRXcbbRH>*H`vVW|q^UvJ zI-@tNcC|DB*oZiPZ{^>Q=M+EYnGe`zW>b$Ev~jJEno_(Vf4qsDo-HcN{lA%j2QNjT zJMajr%xNa1KO7ug`KaHU6=H=%3dgFVvYnhSg)o+a3y6 zw30eF(!I}=ZAC@g0P(`2SmuIVNbc|7xOF;?A`+aSUg&25WpsCniT8wCR@*;~Q~T9I z7({~Km0x(3Pd$5YF)HrFh@+Sie}UTm9hD12I(d_+v~KS^h6aEdotFpeh-IYiklg?@ zKKDVx=^t`%MZytgCcqJ#HhlV@w&Tt0N8+tCwsMY{T3o%U%sg5A5g2FlVs$az1`%~C z%_UBPpOg1+SNSGU8YbQ1&*;xx^2`IiE>Id-86i}HA?wTonYr}oI{2pF8k2$u^+EpL zRHSVJhD{9jg&Z}8Bc`50JvU82BxVkpnu463((msx|2HW;*xwiR;>I+mZGu=CLI>hs ze_n3K;^v9RPbh2Lgp0NAzk5N^SVwTT!?YYfQtm`z$^nI9U}jrS1T(-@8Wl8JqM_oS zO@vI2|C4^&?ma7q&rfNrx2QAuBb*+s;Bnw^sIi6*#I+;cK3RzYM5V5#RcST1_wo@t z1|a6B0pdPDc(9qIpHGH z3~5o59@T$E{at`3nYPp0NuuL&AgtV{I8yj4&@9aOqEUw9?{U{ACQy$Qba>lRkUV}V zS=i=#lL8g>FuhqmufA(8pg#}&F=8SrBrWMF-_EXXW4;CQ?@T%wQ24a*Cc_vcj@Bo+ zBMTNKO0Wt?q&`Q{Xy;P&i`Li1%5i)-5kR1e`91BaZh!%P2K{l`>H2l04SX2?&Ud=k zg(&TL8IIUMW7AyfJOkAgAIjkELSM>ShL=WJX*MvV#H+~%p1(amj6}B8GvWnDb(>yX zo$}mYysclnJLn27^k~vDp_H36Tb;=I?WAz;|DENxzYyZ=VY&h;~yFVOpT7a1J!+_S$7UHQ(F~Oym#q)vpnA>&){AU zZ%UKd&V}idV7KeUcYQY~{-s#haaceXR#E#hz$AnOjHUZ4-AdQ-%~2>kgi3}n64RG6 z>)xAejXkHNFQ-UG-*BHrfRrRRC^P-YVLvvHI(|uLqVip3b?qWfZM%pxd0LL4x-2%j zmJdIQ{qduzs5}OHt*Bp$0q+8RPnK!LEls zC@@y+@~Pe+Bl-w0;#r2*R9C-mz(Z{*42}>aH<2k=!+Ww|aZveB-~2apvi3}vj@vOB z&tqm@GC5sDb{T(iY0-O&_SXwP=`D)!bbSnjGSZ8S8W`Vi+^^OYJLjVNuYf?jKE?<> zrm$62WXl{lZ1wBw^*GDLk+ zv^X+UtvKe>36`}YjmPn)((=lt-_VDZBkd$O!Ueu4>#dOhY>lSn=Ksn0^Z#0>o$$J1? z%^lj8@qhg}G;3~F2HCV|gay&OK(5j9$H3NUsa~w>c%EL~wv`@=irJd6{E*lR)TF9o zGP>HybS|Z?Xe2!I#gn6*+}CIuL$xa~429S{Fnixr66x3v)T5h|@`L^*{TcXd4Ji>U zRi7@3yDe*6_`B~592QJ$?gtf@c}cGaLNA&0uJy|Sy4v~s9S?u@^URqEyjzgla$AZc zP0$^NpF$Gq%JMrHbrKntTDzDR3+o@JO?T^?T;j<@cN$~HjtBdxda_Ly6sD|9T$%+o zOV~1Hru8Qjw9`V1DRH&0zBIc=^(oHb zrQ#(7g-0Mv?GcHXU)NXG2X23NoSg7e(_jXb7dzJiERfXLc=Ldz&`fE8s)O6@A@yAi0|Gp`9*! zSX(&veIOZse#n?+TGdohXYzRd$!{edU>K9J*0Etp8KY61GS~hfH+OXIry!{JAup>r z(Cp%FJg1Q@wBvT=RkhUit+7p%1jhy)9K-WuiDD=URlV+G47Xwratc%H-Rn22kknE& zMy(03p~-Mi6T7E0m<&*!h*WkB>VlPI`^L7Qh7Yib`YR+NROw^ZoDuX>DH{kP2#LaA z7siYwN;G`u;Zh_t0V&6s(W$@|5BUxa0Es zM|l$s4a_=|JEP*P?O$DIllQO^uZgqJHa1Fe3KKgGm0cf3m|TOj9d}-`u5~C; z&ecW9K_6h2f0HC^>aNm8f}3o&K%ODTn0$%Dz0RXB%h)Lio{9-TgW^Uir0U3g=N1`2 z9#m0_`@1RJAdzL*4a6G(Yck-h6@DvUv-#4e^w=kUSdhWF)$2&c+x^GsH1UFX{fL^z zqNr9e1&BN-K^yhwP{jBWDl#)-!janC*4}_QR;6}y6Bq{KeZfkJ<>N{_`@GEcJJxbL z$FMtXZkDzRzzT2?&8bb~E{$|y_`*YDfMxhY0)fr+yPS_1?-RHjr$*)v=mAz%Oo+9F zJ-a5hc*~Id2GGL#8<^ve#e=Q1h)&T)O1wE1;G#+v4n;x3rM#M!_=U<9b7Hj>RZB^2 z&FLd{w9JR{6wWa2Wn2-H>MKn{Dv|d0PWL=r9q1eefNU5}CQndoe+0g&#TfX}oe!PE zVwP?*FMr~zf18!9Z^kYqG=v86QHNXylH@`_W`1vAF*u(ry!SXo2uMHT9rO?5c!!Ej z1yNS`S@}M+&N`!BNhk3_xga%OOHeC~2Pp2}PDTs_boVHZ*Z(mx{UhQ8M; zxtKQwE;#R?op?Ew#8{Bnf_o1Wy_w>h5z^$Nhsj=@Uy4uGIxq!h``SoX!Na}uJv3ii z)>HT^2DA5gZPLW~??CG*KaX4+M;sXMyl?Fv9_V&TT$<20G;&hoaox?eW*;{Qn_l70 z)+A|p%m?!<69fP)=;&vM=+=+-Blpv!5KOPQB4TVOPGibT%Wjs;DVC?cZlOW22V*C% z+gdSUL$6ouMimDHd<*eljPeM*n!5N|z-TqQS#+$wn^Mr6Q%yV*u}uUvy}B*92Dm{_ zo@3<_LL{RN4+Vo5R2~cW$qjI>xX5zde$t6(f>jkYlogdWGF?kvNdC~XyxOV54($g5 z0grSzr zSLP|R_zLt&&71qlHuK@g<-9wFrf zq`On3MY?5xASs=SNQZRqd%xbF-|vrYe{7HK-X42i=Q`K9&N*{$(>ZU~0STqIR~+jn zS2t9p>*Pu!dp5kD66K8_jAi(}{I$GXJiha&>85hYu6K)LB{j#%w(;~s$e;f_!_*3w zdp!h8JABMSws)AJw?kbZ#2XKuDHDRQ`lOJ+-yKnHMCVd)+xWd9>yO=gQ(6B?3>2!H zeVNRal2@NYp1-cudtE!61*9_baWIMP|En5}`NgPkuwP2Ves4t>dcSVx)?}GgT52N^ zsBp1@V_z~mUNb5iG2Di#2VhA)E^jCiw(pDRzsgx=7m9kb0sce4#unlwADZ{Utz80x zpkxI)lx1B1Y7WmFvn&AZ#}!xS|Et@7b(#QmjSBW;v(rk%OW-kF$?kFfP{#935TTBW z@;FWv*L>;dj#8T|Yx5$UF_R)`#FK%e4!HGTc#0tK|Og_SUN_OZ>A? zJ#v+NZ-O$%D=FWs7eQi{!Pi!wB|c{{z~!hjcXP7->gj*l{vwj#DP0SS3-qur)9b0t zdifs`XOdH;0T4BRjW5GBke30xKNi+C&rIi~E_Pn8Qi}}fNQ0&!IsV%r2-^Y#HS}~* zCsXG7`_sdFHefPC;tX%kMdXgCzl>uPfJ5;`(jNC0A3V6jbSG8@Haw6ZpYiwXBHY}D zH;vJF`%U%-yH5M<`>ODWa362Z4Qu1WeZQqK8{rN>hqu=Kj^k z8-x!4)Fu;#icEbdPMOa#HpPaHgol{~%ru%R=jBJ&ZGn-Y_wQSzjJK@Mx?dztHrhSR zkP3?jy|zrCyX)|r>Asyj2CJ;@u;Vt;@8UMf`f#?fs2nfH&&d(uT> zMPSP>LMJt6UK3n8{oh;@P0265{)g2RW55UE6{Ea)&F%qJ?YjGNC6w>b;k*#mi5XU( zfNekY`_8QA_oXfh>K2{1jd@sVLH~xVr880byC< zrF)#t{-haDh%!q2Np$XYM~Tg_*6-cY?h&UqJ8qdIdsKu0jH-3*g|T4lRTF2H5r0Q zmh`+ChwVm-gHT=lw6eP=o(z>1*-0THl&GVu14{?y7@f3`eUT+ z`N%j9LI>lo{jCi<9Qi-#6xt2Uk!J5472Mb8vg-5WoHWX&@#C@PRVVHH5nu9q{yFyj z(}*(m`5Y^F5f|sU8e~!$_z2(#bu~!G+j>{%i-teUi6`$*4MupYr$E)Zlb@$blxHU> zT1lKGEF_IpzP=;&brcDCt(!?Gv9Vle{=6vX=WV~mhTP+;@k;}Hcf0|#{hzydvMym< z0&0mTnqQ+5X%@wM9;YX>b24QwtQ%Bu$!b=A-SZ=Us1DB?J=tgZm>Gcc@ScqogpOSo z{_<^Pee36k>Z&=tC&c}iTZT8eu$lJKj0QsI7|AiU%ty~d0PdH3ueafVkK4O_buS%; z{b%}eaj3S9SCn^bvhSNEg`a^D>ql6hMt8|0u68LXJ=vq&>RFbG>~4kC{Vc_NPQUaJ zSYlU^6c*)^a!H{br3)OMeKKJjJ>d+72*4HX;5VWjDSS)Exu=pt{`Kt-{o~@~cNeHO z8ZX_}l2jF`+qtf|Pb?lXV5QS8)|jKu_BQTFDg@iZA^(@>1V7bPZ>lKW^m9|{EK|ea zr+U{_!i}PQMtAOn=76)sn2~GtTs<#%%0N-xpXC!1toRzFHwq}Xt|hRdX!qEjd1u<> zQQIGblcSDXZ>txwak*$~+ijI@hsHq6SD#fM+Rjna4(|yxx=bI35%^KG-;CIN77~4t z%lD_128+dh(M-Ta{E(SW@ss<QJfc*_)}8s@D{ep5t8hf%8Rs& z3(E@d*i|=+UVPF!q%|mdgC%n@?Z?!KkCF_rIXgkrCP@QeGh_{oA>rXsdA}kw)_82pXeI>NxU0HB3T3HyrT{{FJ7Og6Hh& z5qkXetRyQwHF8v(>j4=793w8K$WV-BO0SIr29V?{F~OPhbDak0J&SxuqS+nh6M2>t zik7R+X{+=7YU2Ls$Aqwo+&uIs(buijsO{gm_N_Xq6Ax-JVpA8rt{x{suc2-&g>nfh zS8~ZQvu$?f>uUDza>|t-I9?W7a0vV``hHK^vt^0ys^GU{O~Q=G7y_PfUq_WULQIQ; zK^-6!jX}l!*4)#~iRsJ!+xY5CUb$e^EQBTy7lOyW6&oBrl>L)V5n^swe1`@Vk@=GC z1;V`b*`t1Px5XbT7YcJ6s{6v``uwp@W~ez*cna^oH6lz=a`=4*?{E(b)Yzp9j$D%SOl zGj1fI|0}YqU*N-pwi2I;+Mze3;&!&WDlxR?K&SA9ofHvGGGSFdzHd32{V4ruzOOV{ zj)9WzFIoqRgb)Owu)?d|lfJ7(>O&{Sencaz>cyp^va>#m@C{U-GPf>j{?mRumjED; zo5$f}hWq-0CFGYAG5We_^I@1^At#UYp(p!%!`plgrHQk4%Q>ewaS!hEwxE+n-h_CJMS7rh3deU*&CbtH*R>61 zJPlA>1t%wmhLBQSOy(6U99vTCnM^$<`%dh0*U68gW42SOO9casi7&wD!tEy??P6ku z@*2_nbEommtkGi)xS)g5e!%pR%Ml4yPA90?EmkVSOV*6}!C64Kg$`|gnH#|If-mn$ zkwG?IkkH(mE`CD^nHjju`pzPr!`hRp!`fzJJH9-JnRg9SKtv@N z*gLgsb%d#Bx2Yagtp4m>9cJg(Fl~a$!hwMUA=82oWW(D(O)?>Z^w_=7_z$90^J1!r z#?qs1SghRIO*+PdAT7$<=7eiSHNd#WRvZmNSNaz<|E=5xysR9~T-8PP2orHi@W?17 zjN@HBfqC+-Q-hzIP;y!^nWn@2V64ZI$3VoG;=o|bvM@};N|ms!&cvSq8{wL zN_zDpv485cItlCniTWDns0rDci}Y12JpF~%n4rg`e?yZ_$b@@75}-P(>U!04M#U~a zM;zmO44l?q^frsouy8XI2x-n0FhJE6p?#VJov{nH{nm5-R%~xc=gx$UXJ)%gemFE> zdB2~0c~bK4;B^8DbOYx>AoEZccB%3YLqpHzpc0fc%TiYR8(m>{Okjfxtu5Mq7rnjJ zFk1@UW!jcH3MvuJEV3$^x;csPyHpE7G}!h9z~up|fTgM>eLLQK8-(!tsABLW_COqL zv2St73g$Z2=*WtN{CiL{3=n-tNP66 zj$izS$gvJM<+632@5qhsw*&}dl=yxT`NW#h)Y5r4B6t|A(q&`GY7@h9E%R2+9|ORh zX<}<|cSlg1-Gu2~hlcAfXe+@2RAetlE-_Mw&%71Q-snABxLh~yHQ)9u^}{avmWVj6 zoe3%)>O^?D0s{GRQvXRY^{NcUn80KRDe3e6o%!sZqG9j-K*v=4kczI>C9XBYxYT`e z{$zjt0si##=T`Ky4Q)t0BZj=47j(~ZY0*B82p@KVPA9k;_ERTY!1)UFoEjYQPhqT2 zVFt0+bOheK&>o2@J;!#+Adhp+P|i+0m5N06?9o>vFZ237eYhcGDUeq6w4Pz5`z1l8G`f zUT8tuk%C~wR+)6UgG~)SjjwxpISOxl&-$X3 z$5-G(ic#a*S1GAR@h|Aa#uCyzo zj7*a(pOS?lI3PzhrP}~tkB=@Vw{BTaluTSlnqb0rvV;vz^o`#{(9hQxIt5r%Hf;)5 zc#miYaBdzF4j)y*V_lD<>6R_CnoRvP-Z!bm5 zIFn--cjsg-=?XoJmCU2#FdPlJsH=cHE3eH`IV6rpN0B^?KzBQQjUS4RX!ktuxkU z4(R4KV3J5tn>w~Qy(aVnU}%rPH5hWNbnu!F4quoFwdUCe_}X;>M7G>ANDC%R~prF0c3(;vK7;uY&tplV4A%YUNPr?Kf; zpmQ(De9Qj8tel^c$u|wg1)}EdZ>U7S7bRA&&gK6FCAjU=8WNg8O#7}Y;Ft($l@cZO zdqlu&0DWS&qExt;R1V{qkZ513&Kqvgq8tYanv?~bT9?o3j&WJP*4xtJckY&Qz+!$3 zc6{AcL8J$*ntE~z$rFh5;t4`>2!?K{_sz7F9BrE1BrFoVdt3M41!qeeZ(Kp28g*aw zP+yN$>tyU=&8Me9yRY##S0fLBadAC+x_o+I>5@;VAG#_BSAo7YQ^!q3E=pR8C12~L zY>}{@B!AGH$0?3}O-g#DEubTTC5N$brTd*3 z&1gq)A5xw7`uXqnKxjX$S6{qo!=);VEG|+LTwz{YYU;vZxN#*Td5i0`USiKk+YSye z6>&a7&wh(;q}Fs6YS3=l5=b14_r%VP5J&kQpL#7X2`7KMt&?$%tNv!{$E5gx;hqfN ztj4f0G0EGLkHMbX(+4e#3?bc+>XXyAtT+pB75&t)43BujfUlwo4k=IAPhclYJcBo^ zs#y)~u!Dmi$4gh#b@6Obexmobmfo)( zg2q|97#GljR6U8}+T-WrM>kuB|0CI^!z3P{6X@kcheJW+b$O?m!rR}6PUER%biQBT zEOZg!v&{!SH!X0u;X9we{NgZVG!3vrK`tnSb=E9-Y~n`#RNkV7@zEb(Vjl;Sg{z1D(9Mf0-} z|G$^uZ!~yBuN8rk)3v`Ht(kOVuF-~}|F{Ml=3g}!L;OU}8(1D*Q}gB8D)V2^^G{4Z zjY)VIcke5a0z8E=gjqs>q2rNzBEIDvD-u)EO=gtYHh@>ON94tMlI6tGhq}yAcTIb?^tguQirSzApyW#r0@#uWptj`em+xjEe|Fd9{zq_tD`(KHa z7)hIl9x%ub$(|;Na?44+LST`TvGkzE%pE0XR$Mn%XXBtLhLf?yvUIkWOcOaUuQlDZ zOmWJ5{uzXDV!~>ejH*7bIob{`TN>_y`WSf(6w-6<%Je1^^Q`vYze?N75)VyxyaiYJ z$t-Lt0vHI$B$jAaNSjK@vge@b)%kDXpZ^RSCQq=}D9MaN$vuDF;At!AA^6%@?#?88 zz1_jut-$yw>u`gGX2-Fe%$KdyKKqdnjQAYMQXQjBp{+>WDnDLO~j`vz3fDFW=a4l{j*cg1i*y1|BV;q{TS2Kn)~ zfA=lxHsgDGkecu>vXrb!7;{$lNx98ax@|nYdf$eyE-lACQ`6{vOOSPHf=kP^o@z9I zu8QiR50_6krf8q(BBO4%^_sjuc}IITjN~dXlWWLUBGfS@(iKPGyw(l#gr3%dv72`S zcuhgod|dmhBaFRV`8#tsAzyd4CP%6m_SsLrpM*3yBOLMl6c)WR{*io7Z-~h8Cxv|M z`}wV5RP-&1!~3cM@|@y@+XhwTHez~<-}%~5%DavRP0Zm#p?paqk#b=^t9$dl*Isq` zrI`lfl7e%&l+|Z1icxOov67TO$g*RZ*TA?7eww@+&(LD1t>sFrItC|<;&}DKZUM@;)|NTfvbPY!*o#fF6SiA2 zOfTg-^15@;_Vr4Ek}Gc2ZY|+Oeyo;ExxUAPXSi@lKr0l$^y41Q(tu_4PtZY4*b9DNtoSnhXm8k<)9vu<2>rfsEnpy_@?-}EGj z6I&|`R9YdI3Oz^)Wqxw3cIQ_{z#K^xp8m=#&%@JJQqhi?mdCXc>RGNZ~YUO;S*O-pf(Kvjmtau~I$Zo2zqTfB4YtY+OU@tHtEUTQ{Uzx2zjQf5B%+o9iix)+qjOBAFimwgKO*aZs0 z*G?eKP*rx&yUnq|$t9MZSi9|4JFN^O$aagnS4iI>MX8PkUa9g|#?ULP-TzVWvYr8K z041|1)?etW{OtI$)hKM0BnCx<=GR2or79a@a}4dizzEoDv?T`~q~sK?0+mI{Z8=Rb z7bg7&PRGHBw6Kfeq9?DkoT<3#VSbeDBp`H&+U+(a&>scM5@qns!+i!WT#%0o&a}2z8>lZch}zn^gaF+ z*FsJ&pu{{i^l`EYpE2c7ur+htxbY6aw8KB&Y6-YG`}M3LAal=p?|+JMH|a+ZucnI= zLlqg?=^)p{?d<>Q1Rf1NoFz8i7B*dl+W1+@pt=<0wbl@9j^OT3ir}HMoH?YxOiI7i z_4rY+X+FKWN+55za!7#nOTVpYcS(iOKm(x7=w#(% zHDSRgxC${px!!k(B^!lGper4gluzxIH0g>&*sf?oEvjf8!;MVLM9Q&aP0C=_M*aQ% zXsN(2;aY#~LVmIODMX8H1){AXiy;=QLCdlfW9c%7j6hX6sAHJM;C*PLvN?|%5@6B) z{=D@GIy_qw*aOsd6E=t+19#)eIKL5UjfEko!Uy<1C<%6AYB&7&TgX2m8s}`&M=Q7Q z%Va4b^z-^Qh)i-o$lYoiIc8rPA{QxFd(Ff+$dAe(3{^5{!2gxN4;B4+89pBSaeXMr zEl5aS7hwCQk82w-{tW(x`dTePYM!8 zjr&y1B)D&6#b!;eS0{+qoA}7Xx?-Hu@5u}z^ZjVcXM@G&0=Pv$);kR3a^*|qsb(zT z<#y*7;G^Sgu`%Mr(S0uU8j2}8P+kio7hi@uQY3I?KC7A<=k!Nr@N4KQ63S1Kqt8(2 zEir??scxsp9|@pLUL#UO?xw#mQFHT1z5o1*lXU5x8JG?)A+vt}d0oR)^q174SW#7s zB4}AFN3Wg{3zFS2%%E*r}6pfRzV>gN5QI*PbG-f5P%{fTv7Dx&)X*%Yo* zj-gv!t=6+p^>}k45h>D!*oA{x~(a$tFtNn!W&Y-f6TdC$Usy1KQL zlHFjedxyw-HN$f>P|i0o!G!3`w1A7C?_rYE3^X7pe)Pe3s(7uQ^tq<#i9{s{oB#1Q zeo^=}z{s!6F&>tdc~TP@F1hp;XP9J-%u6G=X!UWhw_&%uylp#Rh26#m+?qTm^Tt$l zzHFh{fQl`fFF|g@>92Ch^YGTFcMd=39|qW0p$$+Bd2CM9G$S@@hv6M(o5EvWUw--Y zxG-J(fS5B8yXgFF_;4lH_So)=yMaf#sE_Ey#qkc&Bd3xs#V+57!l_7dnmt`|E(Ou3slqdZ z*m!8CqjKeddtR59hl>q|Wh!!e^B?Fw9uj$Wbdlvbk&byL&_7RB% zygVPB4lhTTyp^+1@z42jDt@% z9`+yTIr(H|h$JntqK?RgCoke00G@*rG`~7O5c1ZeP%uf2a}z6Nx+`TV^u+P21glUF zlDyqqLh(j*6a+e+DxyN~z@-?tME7xH`@6CGq$IO&#Y0svCwTNy$R>R4wd!H;dHG>e z`avDYimxz;-*mopj`!oLex!4%68Hqk>d2oDx1Y#?KQZrQ|MG!dGix*8dNT2$O>WM3 zgDyS8!n`5H#ofcDb#61vqG0`;oj$1L;&ASFWyih7{pT`??>H#hUc9b-A;NImR_hx> z8d4=Am8ohMaU~BZ zZ&7r;L%71b?spDj;(suLDuL%#+i~XF{x)8*2cK|BlBj~w%t2xa=m}~{JMmY$KwEHM zUs4rk`LAcqo?Xg*K&xN*R?ZsWa;s$`YAw1|OX?CD8s8x55s^wTlz; ze{FFyrJxI38K*G0J3Xso*2d~bkS+;I6jR4>5S{h|)({J`_&;W_Jz@Aigha|)B(5e* z{`wzoW#2=%kppjBCj40RG2tqxWs#p>e(2$P));RKT;7Xa5Ft%i9x~@LePakGo-ObA zn$iCiT{>P@@s>>ivd}}_$ruC9`WuLAe<%i=I=M|scQG#b@aLKZSl*th^ zqz)dz!=BVtz}N|d1Xq}fh?m_gtEqDkEVG#X#116~zv+JGCdWF>cZAH@rdv`A{}YWt zZW->Ygll2reS&|s(Prn=aC3PXNN~OdFd1k)aI<6J)jhE=yEwavvj8<;{$g6+Oj*%{ zH{a-1dTuiOw#Ozb^C`U(q)rt+# z8w*p$0@6NYXQEUdp7+MyuS72WUKAQTWri;R*B>Tmm&Vj?9K0fTgYYUskIZ)BykV<|@%?=(fLdYT@uxS?Ig0)BA3=E_lNUt%`rigez}-`O7eG<-;4ct!}r5ne-Rn;5~j_ z8jvzS*dGzK&Zt~)$?)m7Mhl1}>=&Rz_3hCD%xILhdMqb3Sd6UGC8`6@0a>A_butaxE~{LLcvlTWL17?ZJsk2t~u(ej%<0ma{s3UgNX=+#IcJQ8^N zOjY+!#z3J2Q;+@}iN9 z=w&61F7~zFW1>B4NSnO4yvNI%!txcw62E^58`pvI{)@8khXAQioTmf3BCycsH;?%J zLwj;o&+)5#ez;dZ^+V&#M`sRy7qu<6YAAwf_HE+^eea|+_}(lCE;YM zhgv`hLTG}yJ8@O?;kAl@yP?3wQ`8SsZZ7(h8UIlZM82?F$pOl{|UPAFUrz%~j($XA^BR4{f1I}mEQeo>ns?oG6$=~wRGpyY( zUFIbs$o#pm;lynj;D*w0$gbxt3SquGL`xtD19uE3uEel!>B%I+Ha+BRj4{u&n z@D9RXZ^wD&7^U_W77zS+x{ANod{?&PhKq*m(6c#2zuvQDIaDLfr-H+pTd0__6ml*FJzEUL&i zShf>Bq%R`$AN$&d53*sdPlf$zjp1W6pt%ur>6v~nxsVjcs?MLQni-H?dkohpI(%kS zTsw2rCtoy!XJ%csOa5DDRt!>DCTK>uLtqtM<+gV+&wE-hgmgr}E#O{k#$PLV8Hu}N zAnbTxME+ZQQYSne4@ z{VHJS>T#nL*U=-qFYXP(Hmj`5pIn~(SdE`x=01pW!~qXdo@sAbhAD*lUmO?Ue(j&N z8ST>>qQr2G%TW*Z&V~S>)&HzLQ%(lkB^YJeJmd~uhC3*;_Sb^+&zJ!0Ts(r1jo2YD zYB2QznA7^M?`)q~6i%>250%E`5N5+W8TmIJrSwk$bis0_d5?5;ojA;+!sUs< z36ra?f$`MXV-Nhdk_IBDi{7OrlZNvTE_r9?pB)p-+~y}@9aGkX|F%ij>IHPaGSj_d znL>4_8csM&xW@ugEA|&8?$oo=d74NL(@*00q*U>ze@{_N~qC_EmF2GCFU*qTg8>3-c!|hj9k! zg;JcN%u4p|L;T83pahl>X~?N`pp9ZN?VhCS;T;GaQ$Ia)-V}eb^^(Ya5{iLR$P^zs zwM8#BzP>n-HgU4_plMhYf_54llXF*Z44ws&1(m*>Dt0Uo!FRD+gQw zU=}#)6IQwUkyht;UWT>S>|dJen-YSnD5{8(F7df-oGgJzw7hAxPV`?!!wqTUOgJCW z`?MoQaR7=2-T~8K7gCnY+l>M=Kj!K?8_CNij`pt72)1CB+;EFdF$b|kf|z$`k9gv|SNoxyJI{|Y3J(&2SdpKhve@;6 zolqL(aAKLP_uq-hLUKq8VDX;_y~xs|yQH#|c@Ct`FLYnJRC}*2bufPWx5{FBPIsx}`C+LBUlbd`}}USGVQg-De^e;*OuVhQ(S_#$ER~Yj-gc;Zm2H ziTUN`#f-l*HlDPr9V*BJ$B_PuiL%z?=Q_pd9u0j?X~y+f!X9?tfL!R0H3 z9YHV3E&K(r>WO6j!1i-<_Ho$)#gMOf{v5&J#Vy1G%C2Or098D=zDhAxiPS)NIKI_c zq&{jtgEcm-QeXXJH^U{LzT5OZV~702tl)X;ZU6<&hPf(9wY%uA*hQ4MFzL#u6 zUih4F1QC?YZjr2l+~;HH%U!01u71w&!1~_b*cH{}U$Sb#oXU!f&p6QfnTg6ijzqwi zA!#;{ej`O5Nq_(s^@zMeNWEd*B}$2xV0xtXa}C6*`pYV6iAJ&M_A3g|bUe$*&CcHL zL)Z(Vn6RJ$vtVe1MmEW33eF)Cj^%Ajj7Js0AEWPGI6#4vGtQELgMicESRsH_&SuC= zFu_DF9rdEHzYG_1C$zIPa2$k2k;cjYp`1aQ2e7r^OOCk<^%BOk3~PuHV>Al*;>n6u zZ+!c<&cA*ZxHh=@*wYlLEc?e0SC;Pjh73wMdGT(cytAqGXrSs=p8vdOvhvc;EyD2L zTiFgN569`boS1)?2Jiud!;2S>e42LBj6PFH87-Iz<}MOJX2tZruTn9(>STn!ak+w! z*8)C^tr@dymD-j~j!eC_63@rPSjC*VT;Az~Ij=?Fc`y}(r`>{bS45Bp9=jhDib4r4 zG5Q-9NXt6$N?Dqe!1%r3Jwfu?nU6usQdxdGhxi9mrspIjKZ!fe;%W;o4u*7emK!O% z-t!jPcD2mjUERIu+sU-O`B-=e|3|qjz#J$pa>M`akmrs6Bx77og?QXS-gRMfL(l<~ z`0{FPHZx2c=62cBQZ1saukpA1=bc;3-?kcUQswVAgR5*Ek=Kd_@+aTJGQIwOHP~sm zKIkd3xjXMN|2GZfGHZNL=WujnK_O6`W&$m+FL45GV9pe&CI5)-M4sYeG@B6bl zfr15E^=Z?RyJqh5p%!yrte5GOD}kFqZ#(WSM>z(H>+vNJI@7i*Ku*6UJlpUP{!d2W z!(?%FmZoLav9yapmlJHD<%|O;4FKf#bC&}peRt0-ifw%kVMDe|d(PskbM@A*mezer zYdu@h_&}q6InpIjg3G^px{R(uo2`~lYN(-JbQmCXC*p#i>l}d*AMF9!PB3ee@LuSt zE8>dYa*L5+E1uKq7qAWyNSFC%$e<%Kl&Qd?8Y0AJt;Ek3*yZ)KAyaW8 zZshHHJ-4uSwJ<=K4s2@NHnkCgtg?j^6Ba9@*wGT|cB*vpcOXR_XRr`tu!SsDPfEzD zFx!1EvHHU|rhcZX_@q&9!2~kx^EOy(xgCCJxg~RtF~}Urnm!9@%#No!tBBLMuT8@% zmB^Df*3O+s{9?vQF7VTCQH~}Y=O;D+drXcxi$QZzbd~-9e3x=B*n_S#yh1ly9o#OymrAWh(c_%l*8|b$UwWmLRBP$7!jI=fN`G& zP+1hW1s5q<&77Rd>ZIUG(A!O|^Cx#8(mx>SlNPCxOMc8~5e~SJ`ZUXtU_gf`C}9TS zLBK));i@mi&-OHXj`M$8Ez`o@*NvTw>`Jm1PS?*|kxa-E|A2Q&I4_X%hap1MLUMEp zH@Xpu`%N~@7_#A>G!DghE3B`Fi1(MnjBvI0B7Vs>lwakDx?~9WZ4ofGPG<<}LwV2t zR}^|i6thmxhOw>`3H8)4KT8?9^f_z;Zih6>LMRLgWBwiJ2xfF@3Q*o!4#3*&rG{E3 zaS<^U5fI#N7uid!Yo>1BuhMAyD#K5jO(|?J+I_fK-TGRs?HOSU$?@8L^XqrfkeR+- z8S!a?kN*R=Qo#-CvuBVx$P}SD3j}?il;8fxjWprODEYIw^=<9Ri)8libIyS7I#Z7{ z-k3k@LUM?DdcEOY+Fj}+1@FUwL!iatfUouJ&q&sg^%lPNZT7A%h%j!yKsZq#g``&* z@s0PfNJqV4x08Nu!NA=y7f?AcYCU(j=f!z;8Kca0Uo0U zF^FvLHkv=~awcxqA3JdRi`5*W4zY7i?o3`uC(6;kHUG{;)0s`)-+uJua)|;X_h?9K zIpOXiL?t{9H1{iJTS7v=AN}2{DoI(w{a_jJ>AwnPhl#rTn=Ld0{s&=fUY99OjyIXT zN|!F1?jE09cPF*E|7qKrZ$10?q~-vK@l20)Vp(Tr-`K%#~h0J?S{6UpvtbH&;$ z^B+t|m;Ah77-1>Uk8(^U2o!<@q6H|F*QMmB6D|D4s5|2pea@#&W(&`{I7a}5dy<}O ze;v~nJq{25hyo658~AW`6sw%vyUA9slf0uuPuKnfP8mQ?;AuL)!JBwg0!fo*f#kt^ zg7ASe`)ya)A;IY;=qF_~Cw&2d&|)=ImGs$f@-gt`_UCSO9V%UHw0$_j+pwvx5C9yK%@P}mm@VW(@&nVONMwh6Jss+ zzN2GZrR{3=`V+88l;6LmP}@J}aY<4M&R=8dSALXtMJj|bC5p;xoWvLKt*ixANyuc8tR}qf z1D1kt*=$D`A{kNT62fp)Of{TeSiMi_Ti&ja;E~n`Mw60b8RSCI?h6d8H< zVpj|USK5V25@Tb^A*z50z8JSR3a3gyQ7be8rBd%xJ0Ce(dkP&f&G z6eYw$x3u-g%H=|bxf-m9Y`ofzH2;$Yt!FszDSZS}5#Y~EOIck60{+U_|CqRdT>6Mu zDoD>gY1DvUr-Ip{0oilgUx#zbLz#|g!x=;P8vXsXF<#!qI|e1c&$aWWq=rxK#*x2Q z08P>hy7`grcc=Uh2k1eF`$|QfU8i@t51#hPaig-}DC?W`Z~KYk_n*_V_6$uGYDB6F z)SAQp$*eluf2G`7UH`bjnf@Vd+5c`G^zEE_|gDl_UKU>QF<>;2_11QYm)PXZ;o~PjQ zmo2aD^{=KkGiMRg-5a`2Ogs33Gi7>6NXt$zRi7 zDsow-6s-!>PGXObWXBWw17akPZ>{(&9~>oK9HTi;*ioMh99ftyTh_b38&h;-%?vMs zzVgtM4*+lU_1+-mttISJUdHd;XZDV_Fma-b{#R)mWfP1K&l^Xc^ma-8z9A*_g(6QY zyMid^avs$F`X}ozB=~}2z_F>6s%zv41K;(2h)%E=>kbZRlb|UD)RIf}M-F9SIamR4 znrucrR+7XYe%Be+NMo?fZcU;0{)mUV;8KM!03dB=hn#W~3sJavwpg?p;kEcyNFfz0 z>)W`aw1>l{y$XT}5^3d=vt|PN+Ffg*^2cJYPT^}O?Ocb1;ftV>`oNXxbEDM^e&Ix- z{>=^4QQkD`!xnkMp;@p#NLCQ4_>;X%XGm496NaQ)l7(6FAm3laqVoIExc1lU((J0h zhgYM$Se`6z{m~)lV}^Di48L;#MWQ=l$^gAY3dkF7)EX@h^U8Bhb`)wBM&UP$$oCea z+9QZN(l16rT-dNo5c+VKRLt{p=-ZS&t8rpVV=Y9VwAaY+O6oq_+G*Ru#%WuC5glaW zN<3}Jk0yO6$dx+uG0alwip)e4=4bCdc(RXiAP_2+?T;&^+o1uEPp zTc0uhyPDW*QDN=8!=DXQYwvVP$WZjkou>oNUY%N8}RXzKc;%;aHtT zz=D&i>4+zj>ig=%Ys|5kf!8pinyjFZKu`Zy4i&#EM`X@2gE;X`0PyxR(&` z%TwFLj$dC!Bf4C@eL1gtX3M|$Gs~AJihW2}m^fjV5o~BQTA!c_`CnbM(OGS8C2klT z>)|6Pp!UP46j&KgeG?&x`>#?NYwfU52K_Q0o$vz1~XvV4Ef$V01+yQU>bv^cV z53tk10=i_{qiHP2EfEmp$DK)Q_~3kdR;tV$Vemu(=W~a1yO4HJYTKEU8NRr0^2@vmX@DBe7~LFrJjG+%6R&DpRM`g)}anAo(v1ywVmu?RePVE&Sl?rGxxyU75tA zZnS)9y$&-*ypW=UxBBbR;sMh|1vvloWWo7ruE8ym=O-o5{1 zc_{O8w%eymjB>fzDt3xCWWu`U3*lPpCp=^+t0I)%`SaCoz}-hV=DE)Vx!|G04pE)%VZSbJ>DkMO zb7q9;{7x|+01Il0NbZfFWY)dEEg$g&nUX2Ox%@|a;_rb92ad-gHBJo6KXuFx7Y{Zm z4;6Exz8YaSy%RSiSh9>iUk4r>EvR{PlubwllU@BAr%6M8o57K6`!0&n2z zs!Et8r(2Le4fam1xO2x8E0P>>QfPYKstnQM8>a>*AI5(VDrQk7L^08PY4{7;(vk-7 z`FugKP!IreGkcKn9S!9Evi5;h)2}E-BN-o2sKyuu6+3fBD*+^m9&W;$LJ-pQjCSZS zv04~4`0aS#cSUyW#|LBoGvZ^EZR^Q`+9X^>l=JcKBa z&r3Q&Fgpi8E}*4x^PzqxIDb)KeB1B_{fGnDx+H3oQMuv`_A!X_7chh7b7g0pw6JqF zVVObYF832nwW8JU~nP@SS6Dt(2X^psNnZre! zE)F=C=U~t?4u~5qVtbbyLRON;UzTKhm;?!X*P0}%wU_N?rCy$Tjcd#1GYE%zu}ERJ zNQQM)-wP|$uTK5Zs$&nSAs;^voJKL!&DS5W+xCweoGHn~cuL@pw<9c_rsO5U!GCF5W7QArQu;fz z#NfTR88hlSzctpb0Os~v5cyN(%`>l@8DKSoSRzG;`Gd%5fT)QlqWnRK7;9j>oSpzQ z_XQ$B@mq%>u_8@7%IuiQZGB51TvqG`VKJuaKUuJYG>12{X4(#3h0!V`9D2f)R=KdGkqE0qT!AJ0xWHtna+zJxWhPb@z=EYpgC28j$+<&i&2E*C)23D!_Jr!na zjd>yxB2gyujzmaTjwjCkt%MV|7_m7M>-&UO5z4R6#v0IGuQf)y@w(7nD~%_R($0a? zTAV+r=pC5vWYaMn=GYa`Zlf~ywwpU#Idm*tH@U7L7Mx7QXq`-9*(K#XRyW3&6m+Wn zUW2FPKl68)DNT4Ylo>Jy=OC9W8IF`Lfz%rd9PvO*u~ljcaLq(JXa1*Chq7JLKkj1! z#t@@RtT1P_KhRgSBVX7 zd=dUM^r=&WsP~Aw@qy{R)f3R#o#7gVwF{lbjz5BY46>r=bJ4ODX6xD?Z?u263CTEZ zBx$c8^x_I&n~eM~!y<3jC77a~zk4UCzJam?wu%i$puh^M8b?R=YzJRUjpo{Z<3Imp ze8})Z*f3!I#u5+8LbIUCehQ8SHc0>PEg0IH2$~6)afAF^Ns@^Ms_ux)xBd#NM86~t z#?LcB!*)QI``y9B%{+7;8YhtjSE=>&slqOlb2*GDa;B9?;)1Xi=h&*3JeDp9twE+Z z6hATO*v9CXW(B?=kfZj$bj_iQ2JVQ<9|J!dldGd<@a3N3hKV~@-G&7JxxBWNk@w+2 z0qWBXMiEBY>Uh7t>iECD>iEAt>Hy&NRmcDJ*R?(d9RS(UwX8J(NMJbxOP2vn z_l$o`g1z&V7@o?F$7LN=X3RVO#6Q> zfcSj;U&;Hmj`>=9N2b+*kR5f@QAf{DJ9h8A9>9-50~Z^>9CT^Kc!EAwFEli{4#4%$ zllDG^0J^-Jb7#}-%318Y(rxdW<4&avo?1TO> zmVx#-j7~;$YDBk>U_5E(6~;;JP{ZehI#BK`92M5UorH zh!_mRM<%lf%W5K%3Bh>_)oKg5T!4RkKEPv-1&0nEyrvd6d?)Jozkcd?zrO1DzrO1D ze|gmb!0W4y|Ld=7bqqQHvZHHRYX*?#0$}_0?OQeJxLSG6i`DxPczysf-4inI0eSrR zXO{IIOv17m1kep&3pBXwg9a@&fNjt~ArGB+JOtn`0UVhaADg+%PyMRY zY6;3!^kV3qhg+dxnh6bwp8@b80FPX2iO2J4$L_s1K$k0iH8eEUY{_yX-?%k=i@a7d&L4y%x}r9MImy zWrKYpT2w@b1?N>F>IeQ$dv~mpFcgJx{C@+9VPPn7GHi@(nB5$F5Z<9L!xQiV4z9%b z0wg3XEDUPcNSGvzIvlU5rmd)jYv}h|o8H`>n|A2eb4%=;^IJVI12G?j zPH_zsKuVLn0U8r?rd2}{asU7T07(Z$PDHLkV1i$AWd{HN delta 27971 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

&1>MtI3q==^&y`ww?DXt*3hT7cNhXp={=-RfBk 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 literal 19554 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 diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index 0ca09ad810c867b9a0ef68644b59859982e5fea8..8546a78a731a32e7331f736308f201c22b74209a 100644 GIT binary patch literal 22343 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 CLH+3f literal 21628 zcmc$`cU)9Y(=Rv(2&g1Q5s)+>NX{T}P(U&$QL-dS0+RE9B0&+5ERu81IgXNZ&S@lv zVaRC)hS|gKd3N{S&wKZ?@7??E?jJKfeNLb5uIlRQs&CbqudmhQiSJO~0f9ioiVCtC zAkZ!8n-Ae_5C~-XYgQPj@Ox{$b(OVrF?Y84=xXEW00Ma?=fn-GE%1_c4JYN5|D`Tm z+^v;d*LXor;2C87VYqAjd96@t`S0=b*F?1=6FNo7V2ng61b)$^1$S`Rr<*v%7#)Wu zv)!I7YR|K;5{-J8=Uub^D_n*;vN$lCF8d&USmNT^wsz;t2dR2HKTf97Q~m2*YMn=AFm?J0c6l_Cmq%GhOB^Zcp#P>|p3Su_)E4xuPs zQpLd2bcWk~bu9TdYK1*%e^g{{#T&jl>^^$S7WzPjdZ$wGw~Yd{H=@r;s7;GplV{C7 zQ;Vc$G@fJn9z`Sg>?K=g{n#eYu$^|pwvYHBJ$%LRGe>DC@r<>*QeHMe($yj~Eo zgX#U*dTmu&solROF0nmb7-gqlF9pL0O3PbxU7wSChY1O#eso(( z*x6XtH-f{3AUF>fsgJjVexg7i29Toc3oXy&-9<0o$;lM#;jrQ@M(IcHcuZkrcpY3g zl(KlE?!|;PJE22w{og)FFu{mkRcoe9 z-qRZM1!St|4E1M*e{^Y3bZ}_hY+5+>mZI~rVDuf{Om^9q-1ljP`(#y5-2#E$#ZbWR z0^)o?jY9|my$u23fk4GFAmGjvBM1isLXZW3Kml%q(jd@pF+2v~0oq$+AW%8U|4eh{ z{CsH}m>uZH<6C56%*bLr?_DDvyqy>RK(SR_^&X|6N!E?K^o;$r7>7s-8QvEP96~1= zpXs~a3rvuNN#)ejrr1Y1JYG6ol1DCwVxf3$5`V*2_)E?lB$zub^-)H510t9}j1KJ~ z#8K_TWwDLtsU#D)&_y5hqMPb+d$8x6!|U#LRnvvVgUSsHVo06wn5w)#J*F!Ct9I7B zP>7SE*lLE?@yppdPXr5yk$W8bx>O`33h6;*Kj-?YRs}25!0Iu>`(55D=#V0E`&YZ* zqZDn8?30Gg)S_X@b3?zQzcSE-2MI9*^!M{NqQL?#54)TcJ7kVGwiR7AzHsBYWjov= zn~Qay;-qbuAvkr7)J%BrS;go9Mf~AbaptX@<72rt_ix>zTybgp(6>%q9l2z#$Qh5d zxr+S@qgNrGZ(JUC=P+#yrj%di>j*bQ_#_oD`aP=*9v;$7 zwp4(jef^!2WNW*eL2fDm5opirtC1l3ZhM!F{K(B=$Mf?siF|y484M#@g z0sHqamJ;{L&kk0fagVb*cjs35IYm%z@ZqfR`Ct3`VNRz*uHE-eGD@z?aq*;Oqgk(> zFDwx$1@qy|#oSwF)iA)A5)evvu%&)9Iv%I9+U#oJ6-z|FpR-CD$8cw~H|L9fU;R82 zJ2hoEOps38`-CjI!4Y)-U-G$3{r^xL|1;9t@jCO4>)K}eap6*VxU$`i{L8Yv!Ebz> zP|!0Bot}79wnIE$UoB@tJ2!^|;$`u!IB!Zl^VD{n>BK)Af8uC%&Z%S%!UIw=44(ZV;&7RdrPlnJ`pS|;vUiPD0j$dpq8HYbvf zSDMD;iyJhNeZo@7HIbd2A}ZP)8wOMQRoXoo?v_NzKIA5qL7h-*UGm`i0_h0N54|!tIpkoWmj(g5YU88H%I5oAb?Ar9{DZj4W`Uxwiz3ew3 zO3cpA_klmrb@5xQloGR7e%jh`vGMW3bwVy1DlL}%kMt_csx0_gr|A8 zAZmB1f6jlBOoF5Xhe` z$F(@kt|V@{##N`;573IBkwVcr?6VEC`&zjO;(1Tkj`akSrK?#K`Wr_np|*dDH`C=` z--t)LAoP$&>w`j^gG@kGDS}JC*Dsq;MT>vh{)KrGQ$Bzb-QV0m`o)&uw`+?j4XH?V zZPtB3+7f|M(8-Q+8M98fdUL+W2lKHvy2egH(2ZHEr2Va7iOb?U=vyBe-$S~Y8|`_n z9F`<#5eNnWBj6Zfeq##Xe#c6Pv^l0ur-2^eVnSF`UsDd(%UUeIEVJDa%rnk|ibT>* z@hQrV;Hq=x+MT(mB-ggwc{%UC7aPZ+YrBcy<^888a$qxz8Pt9tI#ufiCiyG|!|Ue@ zkvLy);gXW~r@c+PEt7<^MXD~5;c)SX^rS85u8h#1yOi8oENzhrp54sklxnG*=IY|A zva(Xx3v;j4K@q>we7}E21ka!KwYK<3+7A=w+L5gObk(Zl+{wL+;#^&;zdGt)2aayL z*7sc~F%`yqCO_+Q?RP9Mzfh`7{WI_3VosRy7Vo&wr6`MW9mbi^LsWJ8Nf#f^M^5A0 zk-|ZTvkv_GAkWz|%sHICG2O9ogExXG063^Jng(#`zP2uPBEmjCFumbl2f{7@G?Ue$ z`#NYD6CgH6@GoI=`~uip|K*m}e?t65A|kscY+-hx-SXzPryNWO*G}yaqmsIn!gh3A zl$#jmDyT!oW)MjQGApRxDZk$Gdg`;Ixt<$LvF;&>^y18UQ8t=nkt+4)RDUy{*gIRy z*gJ2ke;Ym?eZE=xi9T{jV|~o*(*)}NjFgYI-OsLUNvC}fTTZpc&d=(Jx#1Y?y<$Ph ztz`P9acn=n*`+aUVy{YO>m1XdEaEa}BG1^0kSr!h)tDW$Rj|RXS)AM4P(X{ue|-pO~og~&cYt^=;lGaf>RBnH1?b4 zE9V?4VJ~_GW~nM2;ZjW7%-&L0{L2FZes)bv&BX$o=40_B1Pp*Bu=0)L_&WAiqz{09)E#Z}S&ZiG}pOfe^w6&BfxyfMg7(N>1*gwQ3Ijs-g59 zqlHYg71dg!EkoQdjr0xUY3I0nTmwTx2gX_Rr%8}o6Nkp))mbR-Ov%Ojet zPfZZ2l|ToHMrnoKXS+6Qimy+67mD03EB92;nu$;9a~Vd|Pe=?k(^)XRO_~~}k7Ld{ z{K#E>rcu@8x$j{GG_2ls zwG%%rl%|Y}3yTfgYCBkH)&4pb&7)!XgD0qQz(97C9Q@;@vZSS-2k0gu#Ww zBz!OUVq zeeH{f%D;ygxV~t8MymF-L6ve%`D=)Mkkj{-LykoQZ9})WY0pHV3HKB3!V*@|MO9## zSeHM?kgM4=vXy}l;xg$#FWNaATMp1u1PR%0j#BKDT=ccsf)Pz9khMXD@G|@ zIaBUb)atk=v6sgv2YM-BMXp{OH0=sgp@mRw-dc8oFL-&kca>x`VZ5l6rW|J0vb8aNzuT-UG%YD8$K&tOu;6m} z#9X`|s*FZW>mUD-4~w*+G)%{oGOA$sysq@B-fvqZKagrWblMMujmkrPTF;syJRuQR zXTE;G6+YvAG_k?SN}cXjk>j&FgEP!xSUcz_lp`m5eYFV* z;a(1IaEG;2SVsYK6U207%4N`tkKdfZRw6@X4KoMBb;A2nDF<*;g6p%t+JO0xAgisV z)nfqnmwxqOp-{a?l6wTR0Pw|F{2Hg=q6`I1h!$jLXSZlSr&OB$F@O#JdRJT!TatRK zX{WI0q$i5Wa;+z7&=kzsTrBy){6U!oAq2c}x!n0&^wWf^c*$s*jD$q9Tb3A9g^M8zq3VCNTg|m z9VX8QQ}Py{-Cl0Lnh!_S(HuM0l@I&p;f~A^CoSYN{n$$qS9hGL7jlh3tcORVNa;4< zv;+Q^Ke2yJuUDrFKw9S`6fIYa>(0YSmskUQeAUOSGey4=vG2^T7u&DuB2c6(8xSZF z;Kb9^?bLNa7#==+=rHx*+4+K$JQpDN#eRkU)~WbF0b>SK@^aOl(9f0dxRM+@ifq6g24IWPme+AppGa!~8@zOd;_?41 zwDmt$EdN!&*?-^r16@!fpnv=TO*7}pm$Gh|VoLP@1p3IC<2G-1;peist!SklP0sp+ z=Z4fd@xRd?QX`tI5dd-0nh3-iAw`ZK`WMS0>Clyb|lIM z0dQxlob5!O@5B>BoByqe1|p-MF2m738X}N*3{te-xNClD1fgeLA1*xu@VUM;BQ6h& zZ?Y$?>}N4L(8{<22(8(>YP-{M$eucG0>0h@{d*fX-(2sqJE-J>NL>64R3x`hJ!jJE zVxwyhxtB1lLl+;eK8?R43_IKwI|a-ce&3#t>hr`qp7lAl$I2P4_DQ9X-Bny;{9v86 zN0j}v9t-3<;uk=X;Sv@m<8#H3s3~O>Ik2<_fOpi1Es7hl>gQ|1G{J`-WhOTgTxTA6 zj{|_8%KgJZ5%`zJ$ioSB&`TBF5~HFc6JNe+#;pkPy%7{o>oeez-P&x!_9}rKV6y%P z*zTk9(4hc^n~^aWL4v67Kmff>$b^s(pPJ8)WXMb=IkwJjtV%bP-3na1mN5H5vI=%= z+$)bz1}EFu0lcE!8kcOS8gspVm?bNleNs96FEp;W$0#ECkHE`u^>MclH^Y@0>rt?z z{akhSwypu@Ux@6-JNN$cNG*a(uToYXYTV##88&SCa4~WV+I4@ULLnPgPKiSpaEd-d z&ab#se#=Yi6@1h?L0KOO!u#z#J3DI+B`K0cKisGwbU_}_-88NJFbgijA|26y8b3nA zuX980QGq8XCm~CfmSON5x4w8TgY3pebhk|KJ)2Qj?ajkCJT z@+c?q>qrUs=%rMw;xo^7R$BKFQA8pF2F!Gyp(t zmS0-hI*#)0`N8;U?$BD@q9qEWpf%FnhP-Yg0YEzI_EMv!D_{v(c1Vui;x!24J-8t> zS1qN`%!pOP*cj?RQtI(_dZIv6+sg~Z=ciw3p_t@%2l1A9&SXZ}X3$0xL?(Jhd>n1M ztWvFRN*h)_MZ8ZQ0Agt4k1HLX4vBUcRmnCnr3>SoCUFFibcX1@kxaW7$L0Uys``yZ z^xtoD0Nq?U=+hW2x(;Bp>aW@GdQYDTDJQJ%9KCO4US1&!y{)XyP z%V6C%-2g^_2kFF7pIGmOeY6O7_)_DOP`$Lz@8>GNvGkN224g<-)~DI;F{h@Sl7n&K zeO43S`)s#&+7ukY|Bv^6ABQkh=A?~I%VCnr@xt1kvd7+(Finx;!>5s;@^jC_)$S|P zikzpU3&%|a8_2x@rZ{cA_&;@*5F{E>*ee_OTB#8-VQUyoOjsAI|}4LkH@I}b391wJG_9Xyc;Ow$!& zr?iiHG0R1+(W=YCs#-sc=EifkuR#W@;io&cqF6-f81%`{t`l!m#{(WK91@3JYO7|KS%-C89QnacfEbSTBPPh+tIPoR>wXJe;0AkK7}(#N_uulqVXf;tF*odX z&UoH$7WLHPM_l@`hT=F%PX{xlypAlMDp4iTk9U)PR?ZD|Zd3n3x!IGF#4t^S7w3?l zfF{O*32Mt?{d_9dq}}2tbk1WX<5n$(BiKbpKEB@J={s#2&`Hdn9p?Kwc^0wWP+B5V zYKSWcsHQdV^2uMWiQ2hFX()?Ok7o?$vw()ALa*F=4o{;gS*vqy58{FV!jUU2PjY=hDUCQ`~ODF z>_6y)|L70Roo3Nv6fTWqnpGxtJg^uC`m?zP1sgV9MXyU`J0$&7nMoO-qci6&^+p=> z03NSQ&vbkL_51sY;FcE+@0%hx=Df)-FPMPN5DbZ?-%cNDX_qa5p2PRgOv}`qFGh!9qjonaw-;sFXM`=8haQq@gX6@W#yLlQ^4ULi@lkQ}5AB zHH&KDEt*G4W`>Z`bHgu}&LxUwEyU}VpiPg+3knxFNQYC3no~odJ=2Zx)SoZPbwoZfYL4;A9wf?)+xiGu+2D6OUuq!b{z2&4QSI*nkF zSq~&#ng+`Uew%MzI{dmG5fUwM71~jOtM%qh1_uYn=}?MzOMdr5pj$f?_q_!+4EprA zxaDowSNPo*cK>EMq%xRc$jfe_cy|B#a`BoYhX+0S;ji3&$4?S=(U!_z?T;45--Esx zerz%H6mP$gov-7m3F7KeVIM~*Up}ZoFZ#pg9a}*nvSlxwtKP#d_dPDH7YXQ_%UrxI zy{3#Y5F>=1L9Mj_=oB%no@^9Rz6(k$1%&pn$Ox7eJf5@) zXim=4YDt=EpF0D32kn)(%x10cVO6aQYg_WFxP+JHqdou6~qVTdH{F@oW^ z@_pH@UR9CB%+iLv+YK9yG%p26O*5(^Fh3ii81Iz0xXI?fdkYPkW8>pbxAt+@43o@n zcAf>m7BryY29X=<>t6os%*=N){+SdU*{=3rNK!W}wAk|!IkIrpoIh*R?kdh(GzePb ztdD5%IlnCh0{ls9%^PK{cHw-oGs!V>3<632s6o97-QM1=^w>8pvvmsk2g>eo_c`5J zS0)C5m;-e@fUOFOez=bZRR2FjQM27PAp3^dt}tV8bXlD8DMJAFVE^bS%$<)g$&NRUQ1#IH-~r zwRwJXy#VycKe+(Hy7Xt9-wlD51Xdn#-BL4u?C%BSeLlb=d(Z59=fl5tkH)hvY0Pdm z#u2SfeGCoOt~{vAU$(O@>1x5}y+1hA5j<2j1$^|6RVIE!#k1?CPQhI@K_j1!*OX-~ z_8zkK*^l2=#-#wvRaXBfJ_jc7{<)(DXm7i*jp<0>o#@gd8c$W>^dgpXhlBGS;shnLhZ@3@ndi0$xlqqa{+XzlTN_5 zhTGpz2|@eNYoFy_iQ}W094}EZbo(%MvxA6=IOs(QM{zQ%Nt(kFYb2~yuTn$P(#$yi z37kV_2esq56i6O<%{pBr1;PTuJF$bfA3o#FNql zR;dMUKOaw*W3QEVWOQz3x3>gZrB!evn>SOt1A;2UuvV|eY(p&YovM01J`pUrKEI{ z@(U{@szw&NuXEW<`dYlL7Ju)(pMOcdMi^{{3kLPeDxP`GMB_27g#07sWi>7(T3pRa z`tqhhNL;*!FfwK?(5=$RqXcMX-l#`z({MquA2Vu3@VARC5IB@RR!MDAmw)xri;nxn zezVL{i_Pk(o*qs2wq`p^qURqX1i$DekC)xZ&T_}68&PV$c$0Glh}NeCoR60j;Z=l7 z!uB7J_mZjz-O+z(^BK{6GaP}99#M)7iAU=ZxY4Qc>@gwl`y*jOTIl!gaeGF$68sH| zcnEm{z7}^*Tvg#t1oJw4YBGYGa1?5-h5K2<9l+qD^|LvL6iy)r6NfUSu(x#ApW^Qh z8m#(L+Vm%d+apNO^SkLZr$R=!xe@()>{jdR3V(Q=?>%_l`{oSe16yE$06}owYRFejd zAL1Z~)LTS-;KvAn0VR^Cqf5RDA%{uISXK!5{bm|yf+UGj`impM??HTCpcmE0YlF8Q zchLs)%2XNMwSJ+8hgrZmIqua3FEpy&Uhj~Hf&wvVe6yfaCmp}5s8t3bIQg`k0iX{X z=itYv#{;XSekwzdeY}1<}@SF2V|yto)n2 za4Lid<;?E21tt8!1&OWw?yJ+Tqmx_*$|RFpQfBB6_6X&+^X5yDr_LuxoDZ}i<^M#Z zYu(bGQMnhob067H%?)$jr@GaY=FBZ_#`qGLY=`3_E89x*i9v_gw#VG3U%$}6#KZ3@ z@rN+9rSC4a7=(qMY>%@}h#TD?`yJH)^9nmNm+CJ>ddf8s7BdB>{JUC<)jiX+3o!LE zOtB$w$s5^!R|8Wt$ICh)2-N{cvxC{lS7Y7Nb8`<7Thg(3ufnNwhDA4@!1_Ppi%Uxr zE(n@^c|`8@0XdiLBP|zDa>;BtTw7v0T*^hvlsi17nX59YoWQO9Pe~~e%O36svhD?Bfd7sOcL``k_^ zjDVT-dHs4WIg{&2NK&_B$zT`(No>*ak%~yr^SId9Edz&!&X^#0e=S(ZsHey$4TD7M zlv<7s*`!JCUn76Qh~hs`-imxKYJ!}t73$ocj-9O&3Jq0BYHV%Rl)o zzoqh9DjiR&VyV66Sf}8>`;KxIjz5qF_C5ykJI1cKL4VdcFIex@8;|F~Zk`Rm#;16ENzJ?Eh)rdQqB>U9np zH6CSa7G8C!vfPbn{)ci5n~hxN-QPz8BgBVh4k6f;yF%^*k1<^W840zL;$zEQ%)`jeP5tp1yIRQTVq<|jzYCMfrX z!<_#?x?T6qXi1Wm{XB~(E`icyt$lQA6r;A!xe|TCOC39RdWmN;mnVm=1U+SP(_F@Q z6g=H53daWk_$LeXnQ7SQ^wR8bkn|SY538DuM5{2|W0@X`4AgvQUoXfbf4)Df?T{q= zcEi{yGc@$x&>pn_MPjM>M|WMGB#Nl4yHIx+G!>YKvmJp#HlK>y@IY*#{k$yO)0^=V zss(3}Wh^n`_V2aFI;^7B8-CXkSC4L1Zcz ztcdNFhM_iSW?TK5j*+ID6hDsxE$#*OGM9o}0o@pJ&1>{F6Y8{lI9TJBJ9ML3!!>XB z%4PZV!l$+RQ*qt+o7IC2z4ZNi6_igo@osEbfiaEszHxNFy%l{P{E~9t*lBtCGn@+R zw~;uwTD6-QcCzt{dOBh;%Rpqd#joj!sP9|$qN1mgT&nKVQ%c|Xn}+tJToq*5X7vm> z!oam~oS0;zNXP(cb7C+_MERt944*V7RKagt4t5GC&=KuyzUOX`b;A@+O6)hX+cDZr zdB2kvLk1^9EN`sY+`ho02_JDu$kPX9#S>byzHrZ$rrH-fZY%4Pc2B#{`+i6TYFNzg z1s+`>k}S;!8E5r0S#L~O$HL|&N7AiXxf}E1!@SSyLSqQn%4?#u>Th07PVaRf!9P>> zF8}NC>YK(9+$yzzz`~;EY)&6_xwlx_;_B<78ou`4N_p@TZuDqQ*ayjv(i*Y0_nrky z)Vh~60=q*}UlyI6*RMmW9*6@513Jjzt(ae}v+?a#tNE!|K+j}<3yn6-6MmlO^-3kp zuYUVHhC5q6_z%qn=A4i8TGjM*Z@H%1zG>c6nV;8-Y4UL^diNz_?+&(27S+cpEcUn4 zdlo|yq~^JNNGASSE@0Udhf@na-FpF8AU$F9+I>?y?Uk$2Mr|G)v;;dRCQI;w|7-hX zk-NtR*SqI9Z9jh7tHrYIKt<09QQ+Oyz5##NABhjET3V_p>O6M{qGt_FW&-2#^Xq@_ zOb`-!1y8dY9SUERbtY9BcbJ09IAb10t2Kr`*_q0+Y7ec7+}o4AelcMo|5$|^xd)Ql zmr9PBmtonkRJ8JVtKtQim19Dxie;%rPn+zN+VJ21-Cr*V@c^qEaF*z&uIQhC)xXs9ngfp7 z$P3M1o5g^NOJCHM@IGfOF(~8^=gd{1`^6R0eHOo|yBED@bl*gv(c{gSNL3Mq>Jw&1 zXsf)=hglwa`z4O?V2j=zqZ;S8%?Nb*o{@zX{GMJlv@BVOS()YD&az@t3D?C7Vu*2h z!+yX$acvLE0ve~jhVCohj&eE} z24+m}75%>LwhxYR7Fh46C1951(q?Vy&l3yP#`|qo4+ea_z=GwDTzucBH_5 z4r87VDAcW%8sbVTtSQx~h>Ua9cn+gbXUz{Fx$di5T0X9jP^G0GKIH}YWR6&xscL*& zp0wxr`~FV{xFB~I3?R^ma8dg^g&U*A$@Gmp|G$DB2h)FXKngF< zjeIqZNxCJ=N>>^epX~y+7n!B|pMZ@{rx&wlBS9gT+)|2V@Hewpm><_IvR@b|zS06c zW?OD4iZ>jRl1%#5w$*trR72%0T?k(?xdUTNB^mKbi)YBoX6x=hAtx_b(0uBaRzf(* z{rY52o!R|!gzb4sIu58@u53wkaCx(3taGf$BO*IRBBOKf^^Y1L0g~F|^VEL+2PePR zBc4K2fNd5qnY>8PdJzhwZ&tlG{%fwi%-8fTz+JrBll=2dBC(xZNZPp)WgQ{JbOHY; zS^(-09y#A_cNgawQ2}^V4!rONC!M&WZCFo$$C@14R(scV7{HnVf+S#ny-p3*KS}5q z5K1e`KK!a9mzncAJG*1w7Q`Tt>EQ>4koq|^X4VV&heG&izEPExT?}hh_F%A>3AN+I(k?@7U&-sou^)*TP@K=^ zOLwFU7~^~jW!GjjjZH})5oKt#A8}OXmX=*J=AVDiB&VC15%dh2ceT+lx(B#;vmGHS zdr)jAIY4?(SpI#|G8_%LOgAU<1E9z;ls%H``$mKNojc|WorKn>txEo=&zZR&6XDhU z4<}hb%(gFP-Gu=5mP&ZN3^Sr9C-S=>C*Pi{DS9I6ESm~N+c051e*R`)zCO^Me@v}j zk}@+N&Th^Ga+B5k`(|CfUH#LrI9JIb`;*7SL8{og;`&3E7hbXlY|MB#ALT6w?~9`M zhK=sFBCPaM+=1hD2SBa*1coKdcb&%8xWgY5t2iMkX7(1FPJxfnq8qQ%fNX*Ds3i(4 zw;q1ixAh4PwC_$*Ta>CkQP7aQl^k6WC#*u!iu-frYA~~gR<>M$MKh@#8$16j&v>`U zkSOiOuEj2mlpe{G=YKu)QdZ!zkiHV;@q4Dy(k$lCuptUU?nM^~4{5Da5+R zRn38K0~z15oVK+yU_Xi z?d!3}ACHa==pYc2>}&-<$=vr%^pgM*tA;3}eDBh&iMPdfMxr7I<5BXwhCav|bT4a~ zE2j1pXeWJxHYE41>)j-&`A2};ER(^0-^kF{l`_BcFiA=!m>wj31O~aiF4p9(5$jExnH&@^@0B;Ce)ra6rUNlUaj)BflcYpJhq6dIN|{@!@h z$6;hd0E8()KrC|xUukNQK4iX0`if5r1X>|GF-o^s#5g^7RQ~%&?Gp}Ygakr)?V0GA z6U(%<%tQXKjIibZzcMsv54NcUs>AI=!h0(!E$Nb>!6h)`3EEn|7a#B#Iw+(j}TTX8^N34DikIQQlQG5+^x9E;yW+SBQe|4!St2-q&MiJ%|<5alzu z`Q@}FjB=ZA@>48Kb-Qj^@x>Fx8x+GXkzk-nIM$m(DV65kBvj(=#b2J{-3;Am0)v9b z-ooaS`L^LO*rxf4rBBpwDtCj0w>2Fe)_le@#pTee>rt2pM_p(r#C)Y1`PAx3yC4>O zvK0t6d*8fNyfD`M+gp;Qtof)iVeqSh`A@=m4CEY+?VLGGnUAGE-k*LD)u4%(WNCSu z9LX@BP3iG0z0>c`huxWqui9(4tl7*otTSFuk8sYTm2-XO+%v%l!H16lS`w1Oh6S8= zYgP7yddAO^JB^u>j~%0lkLer!20LBHAg}kkOJmGm?eN#U-<+=mKCP2vkr7kV4xk-? z6rg(7t6CY#yICuoGB|v&#mi^_+{#u^uffRlE8M`(y{j{-0=*E|*mIVz&b40H^G4E_vC^{3pVG{|hhT z{pWhOfl`9L{82vLOhfoeGP%vpL#OUj7z2T;N9Lrzx$x4TSAgjH$>3MF z%@N9DNWtigBL*2-XYO2G(z^*mp87>zVkuAj@Fo?a`)ur8v2*?sbPwKD*t z6n~N1&CG8tYVYMXA5r}2(jQ?j8jZS+T$?NiOF!0x77A~7rYE($b`&v~F zL(Z`?9~!YtUT$dWbRqE;ulo}VL(=NM>`Y(nRMwdkLj1>mr8x39V(T#LlfIsdsV2v8 z!E-R!qjVN^hCyC6?nnDw%by7}mUeew;MlV(-z$&in!lIm4X^d1S*tWBYHmeWwB^Bk z>qsT?uKmeeGO!+T;}L1e)XmSkQ=gR~1SDC81P%fQu_@pcRL!%)(Bk2uGnMeKRpWv- zN7>@I!q^2Y(_Ga$5R@>ydK-MS%MFr-W=pLl-Kr#)1iq+JB<>erppNa;~L#t4?jasi%hmxBgEC{ zd=FljPqT~SJfRzv9RDH3|y{W(AFzC2o=GH`UO;ku>(Ui0SjJ)5=K0hm~6X%!x- z;Bt|8veCq!ZIv4fMck*&w)<>rYx_NzKB|jPG5+qK*?*3~fpo1<^J_+78Ttn|g5{d(}u0}M^Vsq5qUNqi};naHF`8OkV z`gq1XvchLn5pXF$E4%;!6KFr7LAbbycwT#RagNXVp0P0HcuCz-p|I~J*xXN~;gabF zjAd|u%wDO6{asBcF{ndN)vm6^s82n8`t;TOGd4E9vnAz!Iy?cyqM(P2d941y+9^jH zK*${SY2?otd}numm7SBcHXsk1We9(GD09ENe_6G)*R(m=$@5}4Bs}F>z{^Rr?4K0v z|B3^d^L&J>?1%sd=WPfi_|DtC)FR4l;}(*B`$)sxOOph51J`;N^aaqyRs@YWJ7mI| z*md9jO9FUr{o2KF*0?yMB+7;H$=Ga9ofDwd4h>z49y>>qlBMPJqvh<%N;`%~dQs9k zN#_dZ2*36$kt$8fcchC)g%Q`Gr~A;!keL~rJNZF(DQ(H4_I)?SB@l>of9ir?juY6b zS3Y7;wRwj+yPf(7y$8x}r+e7glA`lIdG7)-Bh^v*?VOAjq+H04%hX>};AAaeHtH|| zf#vH&vFqZmIbx0q>R%V4nl^Xj2J5WyQW(D7bEs(D->vxEh`TX>icG!!B*BXyA{RY7 zBSQ&1KmsqFI2VfvkoHD^*6!Eg_Vf6ol#R~dSQZ}NZR9Pw-eHEQd|+lLG0M6k{{G0= zH>p#t4u^NWFCe9{cHWDd`b}6tjcthb5|asbor208NNPFn)HCFkvI$;l^e%fM!mcbU zYix9?@oYmPz9%Tp3?oHOu6KG4?{&(mWNsS9?r2@``Caw!dXI@>ZCPahPba&FHtJt%d8vo-QdmIzuTa9U^Ou-z-KM#{VS0b# z9Z2h3&1$Ff@MPFYQIWC6&}R;?^P!@^OTNufGsy$p{p;Zke-DAHpUbjBwQQK<+*?v*pfxTA}v>H+V<2?ibkfH9VeE$fEOhn^a~$dTCZiNl+I_kHQ`YpTu4+ zdG#K9g+6pmrp{Ei6rBziWn`U#iDHc_plNH0!;kVT!5+NH2M-W$9ZuVkt8&o&1(F3Q z1CmaNB*{p?N;aD_DgzQTgHWqOyJ4QQr9Bdk9)p>7`)YaKW(5K|pbljttjVe+V?XsYII3cM zz$xpJVjnq=YJo2`zxMG;+p=zgwRmMjIr$%UQo5~8N5KhB+Y1DiyyvgFvE-w<|5)qTZ9 zhgzB6%1Z)75ajZ z4z?umLxk((RS`}P5oGmc{Y>Pzz9?glDvxi0Hh&0x)I0pI5w<15FkAPmMTSU^A1ZH@ zrc1AjIE7rXf_}cBB|9Nd%R!Eg={-nn8y1GqM4i;%ZrZX;tz*qnylKJ^cBp(!`q^ulCL?B>w`!f7tmYqY{5=jdw z*>1T%7K#DfLIq>vR0+(<_}~jO>@{Yt2sj=V78W+j?Ck8Giiqe6J1lJ35UX7{UH)9{ zj`YCPgUFOe+SNE|OA=`ro|prVi18~tziBnAb_WDvxq(~*-0q|84nQD~=_|mJ_-`ZL z|KU$SWS?u9%uMf7FRW?%FF14$d)?GUcI$A<(C;c~$Nd;UIMOk>1oNwHtrw!rJCXCq z3sF+Fd1%f4?SESEpl|;6KolKd5OchyM0B{ac~A&(s9W8XkgcVin*XHh$2%LLd(%xo zXm(!w?)|8eMD6L+`%|66YGGX9>C zg!B|8#baRT&A)+Eufmf^zCr&I+YufW(&x?*wMjhrB|KJj@Hcm>LR`?^qJExF;-eFj$67e8;f1TId;HO~A zPI=f=rz&HIJV2SQo9AqNuW**JA2S%t!owikSp@xQ+g;}M?mBQZBH{Qq2^m>g?qAK< z(331q*x_cB3Bjj?63ZU}j0nXD6%ZOnZ4)OWt~o$q{qeCPY)nRA}!%>BFXbI(1$ z>vvzzeO*LdkvEM~`&Z_3Lq%rYK1x~4EAB0CwV1w&WZbdF)hf&AtG+B=lHuBRej(8~ zdw6xw!$^a9t~s(0Tb~BQhJ|T9Uu|oxI??D^Aamv|L6`~%!&9M(vhkYx9!=ZSepQX% zSu}WBK>g9jITt-G;3aSuD|th-_cBq!m>92NE4CEbj-@|=%_2pY9%r!PaZH~IIUB=& zzP*bF5Ur%9p3REFi02xQvNe#O>f6d8hD{*c3U=9dKKtoztP0<1`r6bcUWoOLTdX8YCNN&TN%I)7P@US{mQ!?+G z1y~|x^MO*PY4Hgbmp%(*w-5VnJQ86?)TrtCiZ8Q)|4@4;MP|* zzdP#Hehv0KxRD4iyH@Xw3-nR)4yOIB5*`ly&6=rOrH=}(K+U%)@r(i-X5>e8+ zkzROu^)Z>!3ulr@E1pH(NNSiw^w6Vy$Ed@aG=sfdu@s{`aRftZNYWD1&}eF@%sekW zN|zA}qdzm~(izs8^w>hs46(K;Hneg1kw5<=dBapVz)5!_TFL$0YI_auPsx^~vbfW< z>c&T>nX5{qOxN8^N9HzVb!UR9JE^igDS&^@Tz6z%L@!uaIcF;>%JGaH9PU`K{OTX% z9GJE7C3dHoJ{xx5iP3PQMLxTh>!WujiI|H#oiaT7sa(Bui*@ z>P;pH9QbC*wgFdi0#k3VxU-DA6r7>vn?rPeZ?N?8y7YhkJeROU< zOOm_bv(&?v=RDU^9BTmtDB8NvI}B?d>?BbPcJ2QS=!&?q^w*<88cw_yF8P($!nXv@ zA=*_1pv0EpGS_u*`TO`3V}S_w+1XZJl$pSr4^g{Klz+>p=H*@NVbc%sZ3niAN_4Z? zw^fGQ8w)aI%9cl(V8zpb;N31Hb{rqk=B6Kl|+TD5_Jj>%pB z55W@W6n?Xuj`W$Jl2b}`HvctRAY@$%am$h!BT_&DU`+%YK zmkWk{U}G(2y65k348`Srb`yI(jVcmVF5yT$-2U55`%#_+Z3xxV`j$KJ8wy~U8NZqM zoWD-7764IKByTkL1s3l1?%4({Nec6r1L-58re-j1kx`xwZ8!dT@s1d=+yK__k9KN9 zdcr56d?j>${pP(?A>%%gA|7|v{Bje!^g`B8Q?Y!zUluMRO)FWm!ErGLc~5L1hurnT z%R(@rXs%GYF8I09Va$4q4dQ2J{|igch-S5X#|Cp7{jqFa;cj=en-=u1-UeM@&*z%_ zy{-&a7C1akI*ivYtTX($ADNK5yE$bvKGU4W>lzacCg>N`Z0ZQ8U&0n<)b-6|H1T27 zJi2ru#q+4eep8c8Hmq@?EGviE9{7PYd--9gA*1vM>S|`dm~u{?A|hE)%KMetCs@+b zrn*2EUip(VL+AsY{i?}JHp9FXGLD3juEv)}BOK*t<7h?9*Jk1&57${g{SOr;)?{`I zmUy`i&+G3$qo*{_tx(eT6QM`j=%WfFR4KzN;9UX0#TVuJbE>%D8L~7%{@X#G{oNXZ z4nPrGpMlR$)?Ij20c?)OaT9!`rRBwn?jbmw*07OrwJ3HVq;;R2no=6@JxeRYI@vlP zP|mmii3vu;MSJ>}pBiFZrqJ;Sa*WowR z2>*nr(GS3f;HEcB7L?QRV(P{o?(Rk#%j44W@+QWgFZa$(rPSA*fybY|HXth@@c@*~ zTFrwOoIE`}t?le6^sR47>UkxhMYp36o3kD$j}a@!mH!{pJxg)0b?`SbGLoG*UYD15mY9+v z_HrC-Pax&{(7=PfKI`<!*}TzPJbazY#eY_eQ3 z^kCqFusTUfyiMJ%LheJ@1VAyf8 z_E`KaKLX<9(a+A3P}ssD=wd0`yknzZbO6wRM?yAMlFKS>C zh<1^R1(b>U-G}kqeD0!dK=viNkL~#ve(~s`>}=kM!*|EL*ww5LaY7DB9jVBH;PMdv zJ3F6Agt)iSC-J$t#rXrJQ=HHu3Tn;;EBEizJ3L|#q)isjy5FCdzBeopEFZ|o!2E3S I8K;PU07q4*_y7O^ diff --git a/icons/mob/sharks.dmi b/icons/mob/sharks.dmi new file mode 100644 index 0000000000000000000000000000000000000000..e1b9228ba9b5b53c7407a70739e1bd99899dadd3 GIT binary patch literal 3389 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 GxBmsYd!Uy9 delta 11065 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 diff --git a/icons/turf/pool.dmi b/icons/turf/pool.dmi new file mode 100644 index 0000000000000000000000000000000000000000..211776ed9319b4d6d808bb001ad0e3d0d58fc0d6 GIT binary patch literal 28706 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%0DjKLW>F)s_cQsbJYm$Na5N=Z80!6rCh$`EUt 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 literal 0 HcmV?d00001 diff --git a/sound/effects/fillingwatter.ogg b/sound/effects/fillingwatter.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e1d2e19276cf7254a7a885b78bd26e8bd020d207 GIT binary patch literal 20547 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


R(Voa|JiIGE!p@ zE>_H0i#9a-3=M+PJNLc9dgh7J_kH%^(Kuk|68d05OEG0~^1=pFU;a@`waDPemhpvvGQzImHP`wKS{S$^&;(GB2xMz59zrP!JJzv~0M&rccp2mfc{OXy?JGi%n0a0YnP%rfm~A zOj8j7^f<1c$G#F)FJHDf;=~?Ke_4JfR&^F%)j(Y|02~JOhoMYPh2fMlASHBZw~tb) z^RH#-;(4>>esDqC&XP3~-0=!dk70s#`zYi(N_UZ)y?CBu!z_1rYY6#3}0e6hi%uI-Fm|Fec z|NDxb{_M~G?4@-7`uG3->QV6-&t77>pP$_tW=!(+&5jvYw&dXSrUjn)Wg5fXy94HV zp0_c8s;VfL7OW^RHr<#Q_cguM3(K$F+-&dtum8W2l^AvP;+0pfWO+sj_0{T&&t3}n zl9FfduEzRjd-hWBa&hrQv(H`%UM@mOozG4*@NCasN=aQx9(;Cv)8b!GR0;q9xe2Dl zzyJ4Fzlic@E2YFVJzqR)c*c6BDL*FuC4J!8pS=QKDSC#!X;BJa{r%PF&t3|6ECVn# iB?FiOaBF4iH~^qbO)U*jb!>8dZ38cD0{8*98b$zpBkU~z literal 0 HcmV?d00001 diff --git a/sound/effects/pooldrain.ogg b/sound/effects/pooldrain.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8576dedc3dcee9ac78f608405333246afe3ccec5 GIT binary patch literal 28630 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 DFDxZ# literal 0 HcmV?d00001 diff --git a/sound/effects/splash.ogg b/sound/effects/splash.ogg new file mode 100644 index 0000000000000000000000000000000000000000..22f17c07901c42c5be59aedab0afdecf56a77614 GIT binary patch literal 16328 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 literal 0 HcmV?d00001 diff --git a/sound/effects/water_wade1.ogg b/sound/effects/water_wade1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..27527f9d8b8e5fe8bc672e07eb0a64e483ac16cd GIT binary patch literal 11450 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 literal 0 HcmV?d00001 diff --git a/sound/effects/water_wade2.ogg b/sound/effects/water_wade2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f9c15cab64a90f55452578312b1e6e5b78d1d77e GIT binary patch literal 10965 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 literal 0 HcmV?d00001 diff --git a/sound/effects/water_wade4.ogg b/sound/effects/water_wade4.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7ba705f4991f01e54a42f1815a8166e423c09a66 GIT binary patch literal 10698 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 V3Q$RRfglV-zVrB+wB=0#{{uJ`$J77- literal 0 HcmV?d00001 diff --git a/sound/effects/watersplash.ogg b/sound/effects/watersplash.ogg new file mode 100644 index 0000000000000000000000000000000000000000..a9a6e4860878571a96e8a17695268f8da3911491 GIT binary patch literal 9609 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 literal 0 HcmV?d00001 diff --git a/sound/misc/crack.ogg b/sound/misc/crack.ogg new file mode 100644 index 0000000000000000000000000000000000000000..1fb5738051eacfbd7f2206a2a794287f3019dcef GIT binary patch literal 5418 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 literal 0 HcmV?d00001 diff --git a/sound/misc/crunch.ogg b/sound/misc/crunch.ogg new file mode 100644 index 0000000000000000000000000000000000000000..c73e1fae609430fedb65a2a4bb6e55de5d116ba1 GIT binary patch literal 9517 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 literal 0 HcmV?d00001 diff --git a/tgstation.dme b/tgstation.dme index 4372f525b3..0787449030 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -76,6 +76,7 @@ #include "code\__DEFINES\obj_flags.dm" #include "code\__DEFINES\pinpointers.dm" #include "code\__DEFINES\pipe_construction.dm" +#include "code\__DEFINES\pool.dm" #include "code\__DEFINES\preferences.dm" #include "code\__DEFINES\procpath.dm" #include "code\__DEFINES\profile.dm" @@ -2352,6 +2353,7 @@ #include "code\modules\mob\living\simple_animal\hostile\netherworld.dm" #include "code\modules\mob\living\simple_animal\hostile\pirate.dm" #include "code\modules\mob\living\simple_animal\hostile\russian.dm" +#include "code\modules\mob\living\simple_animal\hostile\sharks.dm" #include "code\modules\mob\living\simple_animal\hostile\skeleton.dm" #include "code\modules\mob\living\simple_animal\hostile\statue.dm" #include "code\modules\mob\living\simple_animal\hostile\stickman.dm" @@ -2500,6 +2502,13 @@ #include "code\modules\photography\photos\album.dm" #include "code\modules\photography\photos\frame.dm" #include "code\modules\photography\photos\photo.dm" +#include "code\modules\pool\pool_controller.dm" +#include "code\modules\pool\pool_drain.dm" +#include "code\modules\pool\pool_effects.dm" +#include "code\modules\pool\pool_main.dm" +#include "code\modules\pool\pool_noodles.dm" +#include "code\modules\pool\pool_structures.dm" +#include "code\modules\pool\pool_wires.dm" #include "code\modules\power\apc.dm" #include "code\modules\power\cable.dm" #include "code\modules\power\cell.dm" From c88efe84de7a47177f1bedb97082a71904e40b1e Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sun, 12 Jan 2020 15:14:34 -0600 Subject: [PATCH 002/137] makes sharks drop fish meat --- code/modules/mob/living/simple_animal/hostile/sharks.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/hostile/sharks.dm b/code/modules/mob/living/simple_animal/hostile/sharks.dm index 2c13223b0e..bceec6769c 100644 --- a/code/modules/mob/living/simple_animal/hostile/sharks.dm +++ b/code/modules/mob/living/simple_animal/hostile/sharks.dm @@ -11,7 +11,7 @@ environment_smash = 0 speak_chance = 0 turns_per_move = 3 - butcher_results = list(/obj/item/reagent_containers/food/snacks/meat = 3) + butcher_results = list(/obj/item/reagent_containers/food/snacks/carpmeat = 3) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "hits" From c7dcd0c8a350bca054581309e87a6f9bb1f9d54a Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sun, 12 Jan 2020 15:19:44 -0600 Subject: [PATCH 003/137] grug hates merge conflicts --- code/game/area/Space_Station_13_areas.dm | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index b38709fee0..33a3bd6cfa 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -1,16 +1,12 @@ /* - ### This file contains a list of all the areas in your station. Format is as follows: - /area/CATEGORY/OR/DESCRIPTOR/NAME (you can make as many subdivisions as you want) name = "NICE NAME" (not required but makes things really nice) icon = 'ICON FILENAME' (defaults to 'icons/turf/areas.dmi') icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) requires_power = FALSE (defaults to true) music = null (defaults to nothing, look in sound/ambience for music) - NOTE: there are two lists of areas in the end of this file: centcom and station itself. Please maintain these lists valid. --rastaf0 - */ @@ -1353,4 +1349,4 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/tcommsat/lounge name = "Telecommunications Satellite Lounge" - icon_state = "tcomsatlounge" + icon_state = "tcomsatlounge" \ No newline at end of file From 99ba77ce012a828d9d149a1d1ac62e7624cea60c Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sun, 12 Jan 2020 15:23:05 -0600 Subject: [PATCH 004/137] aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa --- code/game/area/Space_Station_13_areas.dm | 2708 +++++++++++----------- 1 file changed, 1356 insertions(+), 1352 deletions(-) diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index 33a3bd6cfa..6aa19dd739 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -1,1352 +1,1356 @@ -/* -### This file contains a list of all the areas in your station. Format is as follows: -/area/CATEGORY/OR/DESCRIPTOR/NAME (you can make as many subdivisions as you want) - name = "NICE NAME" (not required but makes things really nice) - icon = 'ICON FILENAME' (defaults to 'icons/turf/areas.dmi') - icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) - requires_power = FALSE (defaults to true) - music = null (defaults to nothing, look in sound/ambience for music) -NOTE: there are two lists of areas in the end of this file: centcom and station itself. Please maintain these lists valid. --rastaf0 -*/ - - -/*-----------------------------------------------------------------------------*/ - -/area/ai_monitored //stub defined ai_monitored.dm - -/area/ai_monitored/turret_protected - -/area/arrival - requires_power = FALSE - -/area/arrival/start - name = "Arrival Area" - icon_state = "start" - -/area/admin - name = "Admin room" - icon_state = "start" - -/area/space - icon_state = "space" - requires_power = TRUE - always_unpowered = TRUE - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - power_light = FALSE - power_equip = FALSE - power_environ = FALSE - valid_territory = FALSE - outdoors = TRUE - ambientsounds = SPACE - blob_allowed = FALSE //Eating up space doesn't count for victory as a blob. - -/area/space/nearstation - icon_state = "space_near" - dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT - -/area/start - name = "start area" - icon_state = "start" - requires_power = FALSE - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - has_gravity = STANDARD_GRAVITY - - -//EXTRA - -/area/asteroid - name = "Asteroid" - icon_state = "asteroid" - requires_power = FALSE - has_gravity = STANDARD_GRAVITY - blob_allowed = FALSE //Nope, no winning on the asteroid as a blob. Gotta eat the station. - valid_territory = FALSE - ambientsounds = MINING - -/area/asteroid/nearstation - dynamic_lighting = DYNAMIC_LIGHTING_FORCED - ambientsounds = RUINS - always_unpowered = FALSE - requires_power = TRUE - blob_allowed = TRUE - -/area/asteroid/nearstation/bomb_site - name = "Bomb Testing Asteroid" - -/area/asteroid/cave - name = "Asteroid - Underground" - icon_state = "cave" - requires_power = FALSE - outdoors = TRUE - -/area/asteroid/cave/space - name = "Asteroid - Space" - -/area/asteroid/artifactroom - name = "Asteroid - Artifact" - icon_state = "cave" - ambientsounds = RUINS - -/area/asteroid/artifactroom/Initialize() - . = ..() - set_dynamic_lighting() - - -//STATION13 - -//Maintenance - -/area/maintenance - ambientsounds = MAINTENANCE - valid_territory = FALSE - - -//Departments - -/area/maintenance/department/chapel - name = "Chapel Maintenance" - icon_state = "maint_chapel" - -/area/maintenance/department/chapel/monastery - name = "Monastery Maintenance" - icon_state = "maint_monastery" - -/area/maintenance/department/crew_quarters/bar - name = "Bar Maintenance" - icon_state = "maint_bar" - -/area/maintenance/department/crew_quarters/dorms - name = "Dormitory Maintenance" - icon_state = "maint_dorms" - -/area/maintenance/department/crew_quarters/locker - name = "Locker Room Maintenance" - icon_state = "maint_locker" - -/area/maintenance/department/eva - name = "EVA Maintenance" - icon_state = "maint_eva" - -/area/maintenance/department/electrical - name = "Electrical Maintenance" - icon_state = "maint_electrical" - -/area/maintenance/department/engine/atmos - name = "Atmospherics Maintenance" - icon_state = "maint_atmos" - -/area/maintenance/department/security - name = "Security Maintenance" - icon_state = "maint_sec" - -/area/maintenance/department/security/brig - name = "Brig Maintenance" - icon_state = "maint_brig" - -/area/maintenance/department/medical - name = "Medbay Maintenance" - icon_state = "medbay_maint" - -/area/maintenance/department/medical/morgue - name = "Morgue Maintenance" - icon_state = "morgue_maint" - -/area/maintenance/department/science - name = "Science Maintenance" - icon_state = "maint_sci" - -/area/maintenance/department/cargo - name = "Cargo Maintenance" - icon_state = "maint_cargo" - -/area/maintenance/department/bridge - name = "Bridge Maintenance" - icon_state = "maint_bridge" - -/area/maintenance/department/engine - name = "Engineering Maintenance" - icon_state = "maint_engi" - -/area/maintenance/department/science/xenobiology - name = "Xenobiology Maintenance" - icon_state = "xenomaint" - xenobiology_compatible = TRUE - - -//Maintenance - Generic - -/area/maintenance/arrivals/north - name = "Arrivals North Maintenance" - icon_state = "fpmaint" - -/area/maintenance/arrivals/north_2 - name = "Arrivals North Maintenance" - icon_state = "fpmaint" - -/area/maintenance/aft - name = "Aft Maintenance" - icon_state = "amaint" - -/area/maintenance/aft/secondary - name = "Aft Maintenance" - icon_state = "amaint_2" - -/area/maintenance/central - name = "Central Maintenance" - icon_state = "maintcentral" - -/area/maintenance/central/secondary - name = "Central Maintenance" - icon_state = "maintcentral" - -/area/maintenance/fore - name = "Fore Maintenance" - icon_state = "fmaint" - -/area/maintenance/fore/secondary - name = "Fore Maintenance" - icon_state = "fmaint_2" - -/area/maintenance/starboard - name = "Starboard Maintenance" - icon_state = "smaint" - -/area/maintenance/starboard/central - name = "Central Starboard Maintenance" - icon_state = "smaint" - -/area/maintenance/starboard/aft - name = "Starboard Quarter Maintenance" - icon_state = "asmaint" - -/area/maintenance/starboard/fore - name = "Starboard Bow Maintenance" - icon_state = "fsmaint" - -/area/maintenance/port - name = "Port Maintenance" - icon_state = "pmaint" - -/area/maintenance/port/central - name = "Central Port Maintenance" - icon_state = "maintcentral" - -/area/maintenance/port/aft - name = "Port Quarter Maintenance" - icon_state = "apmaint" - -/area/maintenance/port/fore - name = "Port Bow Maintenance" - icon_state = "fpmaint" - -/area/maintenance/disposal - name = "Waste Disposal" - icon_state = "disposal" - -/area/maintenance/disposal/incinerator - name = "Incinerator" - icon_state = "disposal" -/area/maintenance/bar - name = "Maintenance Bar" - icon_state = "maintbar" - -/area/maintenance/bar/cafe - name = "Abandoned Cafe" - -//Hallway - -/area/hallway/primary/aft - name = "Aft Primary Hallway" - icon_state = "hallA" - -/area/hallway/primary/fore - name = "Fore Primary Hallway" - icon_state = "hallF" - -/area/hallway/primary/starboard - name = "Starboard Primary Hallway" - icon_state = "hallS" - -/area/hallway/primary/starboard/aft - name = "Starboard Quarter Primary Hallway" - icon_state = "hallAS" - -/area/hallway/primary/starboard/fore - name = "Starboard Bow Primary Hallway" - icon_state = "hallFS" - -/area/hallway/primary/port - name = "Port Primary Hallway" - icon_state = "hallP" - -/area/hallway/primary/port/aft - name = "Port Quarter Primary Hallway" - icon_state = "hallAP" - -/area/hallway/primary/port/fore - name = "Port Bow Primary Hallway" - icon_state = "hallFP" - -/area/hallway/primary/central - name = "Central Primary Hallway" - icon_state = "hallC" - -/area/hallway/secondary/command - name = "Command Hallway" - icon_state = "bridge_hallway" - -/area/hallway/secondary/construction - name = "Construction Area" - icon_state = "construction" - -/area/hallway/secondary/exit - name = "Escape Shuttle Hallway" - icon_state = "escape" - -/area/hallway/secondary/exit/departure_lounge - name = "Departure Lounge" - icon_state = "escape_lounge" - -/area/hallway/secondary/entry - name = "Arrival Shuttle Hallway" - icon_state = "entry" - -/area/hallway/secondary/service - name = "Service Hallway" - icon_state = "hall_service" - -//Command - -/area/bridge - name = "Bridge" - icon_state = "bridge" - music = "signal" - -/area/bridge/meeting_room - name = "Heads of Staff Meeting Room" - icon_state = "meeting" - music = null - -/area/bridge/meeting_room/council - name = "Council Chamber" - icon_state = "meeting" - music = null - -/area/bridge/showroom/corporate - name = "Corporate Showroom" - icon_state = "showroom" - music = null - -/area/crew_quarters/heads/captain - name = "Captain's Office" - icon_state = "captain" - clockwork_warp_allowed = FALSE - -/area/crew_quarters/heads/captain/private - name = "Captain's Quarters" - icon_state = "captain" - -/area/crew_quarters/heads/chief - name = "Chief Engineer's Office" - icon_state = "ce_office" - -/area/crew_quarters/heads/chief/private - name = "Chief Engineer's Private Quarters" - icon_state = "ce_private" - -/area/crew_quarters/heads/cmo - name = "Chief Medical Officer's Office" - icon_state = "cmo_office" - -/area/crew_quarters/heads/cmo/private - name = "Chief Medical Officer's Private Quarters" - icon_state = "cmo_private" - -/area/crew_quarters/heads/hop - name = "Head of Personnel's Office" - icon_state = "hop_office" - -/area/crew_quarters/heads/hop/private - name = "Head of Personnel's Private Quarters" - icon_state = "hop_private" - -/area/crew_quarters/heads/hos - name = "Head of Security's Office" - icon_state = "hos_office" - -/area/crew_quarters/heads/hos/private - name = "Head of Security's Private Quarters" - icon_state = "hos_private" - -/area/crew_quarters/heads/hor - name = "Research Director's Office" - icon_state = "rd_office" - -/area/crew_quarters/heads/hor/private - name = "Research Director's Private Quarters" - icon_state = "rd_private" - -/area/comms - name = "Communications Relay" - icon_state = "tcomsatcham" - -/area/server - name = "Messaging Server Room" - icon_state = "server" - -//Crew - -/area/crew_quarters/dorms - name = "Dormitories" - icon_state = "Sleep" - safe = TRUE - -/area/crew_quarters/dorms/male - name = "Male Dorm" - icon_state = "Sleep" - -/area/crew_quarters/dorms/female - name = "Female Dorm" - icon_state = "Sleep" - -/area/crew_quarters/rehab_dome - name = "Rehabilitation Dome" - icon_state = "Sleep" - -/area/crew_quarters/toilet - name = "Dormitory Toilets" - icon_state = "toilet" - -/area/crew_quarters/toilet/auxiliary - name = "Auxiliary Restrooms" - icon_state = "toilet" - -/area/crew_quarters/toilet/locker - name = "Locker Toilets" - icon_state = "toilet" - -/area/crew_quarters/toilet/fitness - name = "Fitness Toilets" - icon_state = "toilet" - -/area/crew_quarters/toilet/female - name = "Female Toilets" - icon_state = "toilet" - -/area/crew_quarters/toilet/male - name = "Male Toilets" - icon_state = "toilet" - -/area/crew_quarters/toilet/restrooms - name = "Restrooms" - icon_state = "toilet" - -/area/crew_quarters/locker - name = "Locker Room" - icon_state = "locker" - -/area/crew_quarters/lounge - name = "Lounge" - icon_state = "yellow" - -/area/crew_quarters/fitness - name = "Fitness Room" - icon_state = "fitness" - -/area/crew_quarters/fitness/recreation - name = "Recreation Area" - icon_state = "fitness" - -/area/crew_quarters/fitness/pool - name = "Pool Area" - icon_state = "pool" - -/area/crew_quarters/cafeteria - name = "Cafeteria" - icon_state = "cafeteria" - -/area/crew_quarters/cafeteria/lunchroom - name = "Lunchroom" - icon_state = "cafeteria" - -/area/crew_quarters/kitchen - name = "Kitchen" - icon_state = "kitchen" - -/area/crew_quarters/kitchen/backroom - name = "Kitchen Coldroom" - icon_state = "kitchen" - -/area/crew_quarters/bar - name = "Bar" - icon_state = "bar" - -/area/crew_quarters/bar/atrium - name = "Atrium" - icon_state = "bar" - -/area/crew_quarters/electronic_marketing_den - name = "Electronic Marketing Den" - icon_state = "bar" - -/area/crew_quarters/abandoned_gambling_den - name = "Abandoned Gambling Den" - icon_state = "abandoned_g_den" - -/area/crew_quarters/abandoned_gambling_den/secondary - icon_state = "abandoned_g_den_2" - -/area/crew_quarters/theatre - name = "Theatre" - icon_state = "Theatre" - -/area/crew_quarters/theatre/abandoned - name = "Abandoned Theatre" - icon_state = "Theatre" - -/area/crew_quarters/theatre/clown - name = "Clown's Office" - -/area/crew_quarters/theatre/mime - name = "Mime's Office" - -/area/crew_quarters/cryopod - name = "Cryogenics" - icon_state = "cryosleep" - -/area/library - name = "Library" - icon_state = "library" - flags_1 = NONE - -/area/library/lounge - name = "Library Lounge" - icon_state = "library" - -/area/library/abandoned - name = "Abandoned Library" - icon_state = "library" - flags_1 = NONE - -/area/chapel - icon_state = "chapel" - ambientsounds = HOLY - flags_1 = NONE - clockwork_warp_allowed = FALSE - clockwork_warp_fail = "The consecration here prevents you from warping in." - -/area/chapel/main - name = "Chapel" - -/area/chapel/main/monastery - name = "Monastery" - -/area/chapel/office - name = "Chapel Office" - icon_state = "chapeloffice" - -/area/chapel/asteroid - name = "Chapel Asteroid" - icon_state = "explored" - -/area/chapel/asteroid/monastery - name = "Monastery Asteroid" - -/area/chapel/dock - name = "Chapel Dock" - icon_state = "construction" - -/area/lawoffice - name = "Law Office" - icon_state = "law" - - -//Engineering - -/area/engine - ambientsounds = ENGINEERING - -/area/engine/engine_smes - name = "Engineering SMES" - icon_state = "engine_smes" - -/area/engine/engineering - name = "Engineering" - icon_state = "engine" - -/area/engine/atmos - name = "Atmospherics" - icon_state = "atmos" - flags_1 = NONE - -/area/engine/atmospherics_engine - name = "Atmospherics Engine" - icon_state = "atmos_engine" - -/area/engine/supermatter - name = "Supermatter Engine" - icon_state = "engine_sm" - -/area/engine/break_room - name = "Engineering Foyer" - icon_state = "engine_foyer" - -/area/engine/gravity_generator - name = "Gravity Generator Room" - icon_state = "grav_gen" - clockwork_warp_allowed = FALSE - clockwork_warp_fail = "The gravitons generated here could throw off your warp's destination and possibly throw you into deep space." - -/area/engine/secure_construction - name = "Secure Construction Area" - icon_state = "engine" - -/area/engine/storage - name = "Engineering Storage" - icon_state = "engi_storage" - -/area/engine/storage_shared - name = "Shared Engineering Storage" - icon_state = "engi_storage" - -/area/engine/transit_tube - name = "Transit Tube" - icon_state = "transit_tube" - - -//Solars - -/area/solar - requires_power = FALSE - dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT - valid_territory = FALSE - blob_allowed = FALSE - flags_1 = NONE - ambientsounds = ENGINEERING - -/area/solar/fore - name = "Fore Solar Array" - icon_state = "yellow" - -/area/solar/aft - name = "Aft Solar Array" - icon_state = "yellow" - -/area/solar/aux/port - name = "Port Bow Auxiliary Solar Array" - icon_state = "panelsA" - -/area/solar/aux/starboard - name = "Starboard Bow Auxiliary Solar Array" - icon_state = "panelsA" - -/area/solar/starboard - name = "Starboard Solar Array" - icon_state = "panelsS" - -/area/solar/starboard/aft - name = "Starboard Quarter Solar Array" - icon_state = "panelsAS" - -/area/solar/starboard/fore - name = "Starboard Bow Solar Array" - icon_state = "panelsFS" - -/area/solar/port - name = "Port Solar Array" - icon_state = "panelsP" - -/area/solar/port/aft - name = "Port Quarter Solar Array" - icon_state = "panelsAP" - -/area/solar/port/fore - name = "Port Bow Solar Array" - icon_state = "panelsFP" - - -//Solar Maint - -/area/maintenance/solars - name = "Solar Maintenance" - icon_state = "yellow" - -/area/maintenance/solars/port - name = "Port Solar Maintenance" - icon_state = "SolarcontrolP" - -/area/maintenance/solars/port/aft - name = "Port Quarter Solar Maintenance" - icon_state = "SolarcontrolAP" - -/area/maintenance/solars/port/fore - name = "Port Bow Solar Maintenance" - icon_state = "SolarcontrolFP" - -/area/maintenance/solars/starboard - name = "Starboard Solar Maintenance" - icon_state = "SolarcontrolS" - -/area/maintenance/solars/starboard/aft - name = "Starboard Quarter Solar Maintenance" - icon_state = "SolarcontrolAS" - -/area/maintenance/solars/starboard/fore - name = "Starboard Bow Solar Maintenance" - icon_state = "SolarcontrolFS" - -/area/maintenance/solars/aux/port - name = "Port Auxiliary Solar Maintenance" - icon_state = "SolarcontrolA" - -/area/maintenance/solars/aux/port/aft - name = "Port Quarter Auxiliary Solar Maintenance" - icon_state = "SolarcontrolAP" - -/area/maintenance/solars/aux/port/fore - name = "Port Bow Auxiliary Solar Maintenance" - icon_state = "SolarcontrolA" - -/area/maintenance/solars/aux/starboard - name = "Starboard Auxiliary Solar Maintenance" - icon_state = "SolarcontrolA" - -/area/maintenance/solars/aux/starboard/aft - name = "Starboard Quarter Auxiliary Solar Maintenance" - icon_state = "SolarcontrolA" - -/area/maintenance/solars/aux/starboard/fore - name = "Starboard Bow Auxiliary Solar Maintenance" - icon_state = "SolarcontrolA" - -//Teleporter - -/area/teleporter - name = "Teleporter Room" - icon_state = "teleporter" - music = "signal" - ambientsounds = ENGINEERING - -/area/gateway - name = "Gateway" - icon_state = "gateway" - music = "signal" - ambientsounds = ENGINEERING - -//MedBay - -/area/medical - name = "Medical" - icon_state = "medbay3" - ambientsounds = MEDICAL - -/area/medical/abandoned - name = "Abandoned Medbay" - icon_state = "medbay3" - music = 'sound/ambience/signal.ogg' - -/area/medical/medbay/central - name = "Medbay Central" - icon_state = "medbay" - music = 'sound/ambience/signal.ogg' - -/area/medical/medbay/front_office - name = "Medbay Front Office" - icon_state = "medbay" - music = 'sound/ambience/signal.ogg' - -/area/medical/medbay/lobby - name = "Medbay Lobby" - icon_state = "medbay" - music = 'sound/ambience/signal.ogg' - - //Medbay is a large area, these additional areas help level out APC load. - -/area/medical/medbay/zone2 - name = "Medbay" - icon_state = "medbay2" - music = 'sound/ambience/signal.ogg' - -/area/medical/medbay/zone3 - name = "Medbay" - icon_state = "medbay3" - music = 'sound/ambience/signal.ogg' - -/area/medical/medbay/aft - name = "Medbay Aft" - icon_state = "medbay3" - music = 'sound/ambience/signal.ogg' - -/area/medical/storage - name = "Medbay Storage" - icon_state = "medbay2" - music = 'sound/ambience/signal.ogg' - -/area/medical/patients_rooms - name = "Patients' Rooms" - icon_state = "patients" - -/area/medical/patients_rooms/room_a - name = "Patient Room A" - icon_state = "patients" - -/area/medical/patients_rooms/room_b - name = "Patient Room B" - icon_state = "patients" - -/area/medical/virology - name = "Virology" - icon_state = "virology" - flags_1 = NONE - -/area/medical/morgue - name = "Morgue" - icon_state = "morgue" - ambientsounds = SPOOKY - -/area/medical/chemistry - name = "Chemistry" - icon_state = "chem" - -/area/medical/surgery - name = "Surgery" - icon_state = "surgery" - -/area/medical/cryo - name = "Cryogenics" - icon_state = "cryo" - -/area/medical/exam_room - name = "Exam Room" - icon_state = "exam_room" - -/area/medical/genetics - name = "Genetics Lab" - icon_state = "genetics" - -/area/medical/genetics/cloning - name = "Cloning Lab" - icon_state = "cloning" - -/area/medical/sleeper - name = "Medbay Treatment Center" - icon_state = "exam_room" - - -//Security - -/area/security - name = "Security" - icon_state = "security" - ambientsounds = HIGHSEC - -/area/security/main - name = "Security Office" - icon_state = "security" - -/area/security/brig - name = "Brig" - icon_state = "brig" - -/area/security/courtroom - name = "Courtroom" - icon_state = "courtroom" - -/area/security/prison - name = "Prison Wing" - icon_state = "sec_prison" - -/area/security/processing - name = "Labor Shuttle Dock" - icon_state = "sec_prison" - -/area/security/processing/cremation - name = "Security Crematorium" - icon_state = "sec_prison" - -/area/security/warden - name = "Brig Control" - icon_state = "Warden" - -/area/security/armory - name = "Armory" - icon_state = "armory" - -/area/security/detectives_office - name = "Detective's Office" - icon_state = "detective" - ambientsounds = list('sound/ambience/ambidet1.ogg','sound/ambience/ambidet2.ogg') - -/area/security/detectives_office/private_investigators_office - name = "Private Investigator's Office" - icon_state = "detective" - -/area/security/range - name = "Firing Range" - icon_state = "firingrange" - -/area/security/execution - icon_state = "execution_room" - -/area/security/execution/transfer - name = "Transfer Centre" - -/area/security/execution/education - name = "Prisoner Education Chamber" - -/area/security/nuke_storage - name = "Vault" - icon_state = "nuke_storage" - -/area/ai_monitored/nuke_storage - name = "Vault" - icon_state = "nuke_storage" - -/area/security/checkpoint - name = "Security Checkpoint" - icon_state = "checkpoint1" - -/area/security/checkpoint/auxiliary - icon_state = "checkpoint_aux" - -/area/security/checkpoint/tertiary - icon_state = "checkpoint_tert" - -/area/security/checkpoint/escape - icon_state = "checkpoint_esc" - -/area/security/checkpoint/supply - name = "Security Post - Cargo Bay" - icon_state = "checkpoint_supp" - -/area/security/checkpoint/engineering - name = "Security Post - Engineering" - icon_state = "checkpoint_engi" - -/area/security/checkpoint/medical - name = "Security Post - Medbay" - icon_state = "checkpoint_med" - -/area/security/checkpoint/science - name = "Security Post - Science" - icon_state = "checkpoint_sci" - -/area/security/checkpoint/science/research - name = "Security Post - Research Division" - icon_state = "checkpoint_res" - -/area/security/checkpoint/customs - name = "Customs" - icon_state = "customs_point" - -/area/security/checkpoint/customs/auxiliary - icon_state = "customs_point_aux" - -/area/security/vacantoffice - name = "Vacant Office" - icon_state = "security" - -/area/security/vacantoffice/a - name = "Vacant Office A" - icon_state = "security" - -/area/security/vacantoffice/b - name = "Vacant Office B" - icon_state = "security" - -/area/quartermaster - name = "Quartermasters" - icon_state = "quart" - -///////////WORK IN PROGRESS////////// - -/area/quartermaster/sorting - name = "Delivery Office" - icon_state = "cargo_delivery" - -/area/quartermaster/warehouse - name = "Warehouse" - icon_state = "cargo_warehouse" - -////////////WORK IN PROGRESS////////// - -/area/quartermaster/office - name = "Cargo Office" - icon_state = "quartoffice" - -/area/quartermaster/storage - name = "Cargo Bay" - icon_state = "cargo_bay" - -/area/quartermaster/qm - name = "Quartermaster's Office" - icon_state = "quart" - -/area/quartermaster/qm/private - name = "Quartermaster's Private Quarters" - icon_state = "quart" - -/area/quartermaster/miningdock - name = "Mining Dock" - icon_state = "mining" - -/area/quartermaster/miningdock/abandoned - name = "Abandoned Mining Dock" - icon_state = "mining" - -/area/quartermaster/miningoffice - name = "Mining Office" - icon_state = "mining" - -/area/quartermaster/miningstorage - name = "Mining Storage" - icon_state = "mining" - -/area/janitor - name = "Custodial Closet" - icon_state = "janitor" - flags_1 = NONE - -/area/hydroponics - name = "Hydroponics" - icon_state = "hydro" - -/area/hydroponics/garden - name = "Garden" - icon_state = "garden" - -/area/hydroponics/garden/abandoned - name = "Abandoned Garden" - icon_state = "abandoned_garden" - -/area/hydroponics/garden/monastery - name = "Monastery Garden" - icon_state = "hydro" - - -//Science - -/area/science - name = "Science Division" - icon_state = "toxlab" - -/area/science/lab - name = "Research and Development" - icon_state = "toxlab" - -/area/science/xenobiology - name = "Xenobiology Lab" - icon_state = "toxlab" - -/area/science/storage - name = "Toxins Storage" - icon_state = "toxstorage" - -/area/science/mineral_storeroom - name = "Mineral Storeroom" - icon_state = "toxmisc" - -/area/science/test_area - valid_territory = FALSE - name = "Toxins Test Area" - icon_state = "toxtest" - -/area/science/mixing - name = "Toxins Mixing Lab" - icon_state = "toxmix" - -/area/science/mixing/chamber - name = "Toxins Mixing Chamber" - icon_state = "toxmix" - valid_territory = FALSE - -/area/science/misc_lab - name = "Testing Lab" - icon_state = "toxmisc" - -/area/science/misc_lab/range - name = "Research Testing Range" - icon_state = "toxmisc" - -/area/science/server - name = "Research Division Server Room" - icon_state = "server" - -/area/science/explab - name = "Experimentation Lab" - icon_state = "toxmisc" - -/area/science/robotics - name = "Robotics" - icon_state = "medresearch" - -/area/science/robotics/mechbay - name = "Mech Bay" - icon_state = "mechbay" - -/area/science/robotics/mechbay_cargo - name = "Mech Bay" - icon_state = "yellow" - -/area/science/robotics/showroom - name = "Robotics Showroom" - icon_state = "showroom" - -/area/science/robotics/lab - name = "Robotics Lab" - icon_state = "ass_line" - -/area/science/research - name = "Research Division" - icon_state = "medresearch" - -/area/science/circuit - name = "Circuitry Lab" - icon_state = "cir_lab" - -/area/science/research/lobby - name = "Research Division Lobby" - icon_state = "medresearch" - -/area/science/research/abandoned - name = "Abandoned Research Lab" - icon_state = "medresearch" - -/area/science/nanite - name = "Nanite Lab" - icon_state = "toxmisc" - -//Storage - -/area/storage/tools - name = "Auxiliary Tool Storage" - icon_state = "storage" - -/area/storage/primary - name = "Primary Tool Storage" - icon_state = "primarystorage" - -/area/storage/autolathe - name = "Autolathe Storage" - icon_state = "storage" - -/area/storage/art - name = "Art Supply Storage" - icon_state = "storage" - -/area/storage/auxiliary - name = "Auxiliary Storage" - icon_state = "auxstorage" - -/area/storage/atmos - name = "Atmospherics Storage" - icon_state = "atmos" - valid_territory = FALSE - -/area/storage/tcom - name = "Telecomms Storage" - icon_state = "green" - valid_territory = FALSE - -/area/storage/eva - name = "EVA Storage" - icon_state = "eva" - clockwork_warp_allowed = FALSE - -/area/storage/secure - name = "Secure Storage" - icon_state = "storage" - clockwork_warp_allowed = FALSE - -/area/storage/emergency/starboard - name = "Starboard Emergency Storage" - icon_state = "emergencystorage" - -/area/storage/emergency/port - name = "Port Emergency Storage" - icon_state = "emergencystorage" - -/area/storage/tech - name = "Technical Storage" - icon_state = "auxstorage" - -/area/storage/testroom - requires_power = FALSE - name = "Test Room" - icon_state = "storage" - - -//Construction - -/area/construction - name = "Construction Area" - icon_state = "yellow" - ambientsounds = ENGINEERING - -/area/construction/minisat_exterior - name = "Minisat Exterior" - icon_state = "yellow" - -/area/construction/mining/aux_base - name = "Auxiliary Base Construction" - icon_state = "yellow" - -/area/construction/mining/aux_base/closet - name = "Auxiliary Closet Construction" - icon_state = "yellow" - -/area/construction/supplyshuttle - name = "Supply Shuttle" - icon_state = "yellow" - -/area/construction/quarters - name = "Engineers' Quarters" - icon_state = "yellow" - -/area/construction/qmaint - name = "Maintenance" - icon_state = "yellow" - -/area/construction/hallway - name = "Hallway" - icon_state = "yellow" - -/area/construction/solars - name = "Solar Panels" - icon_state = "yellow" - -/area/construction/solarscontrol - name = "Solar Panel Control" - icon_state = "yellow" - -/area/construction/storage - name = "Construction Site Storage" - icon_state = "yellow" - -/area/construction/storage/wing - name = "Storage Wing" - icon_state = "storage_wing" - - -//AI - -/area/ai_monitored/security/armory - name = "Armory" - icon_state = "armory" - ambientsounds = HIGHSEC - -/area/ai_monitored/storage/eva - name = "EVA Storage" - icon_state = "eva" - ambientsounds = HIGHSEC - -/area/ai_monitored/storage/satellite - name = "AI Satellite Maint" - icon_state = "storage" - ambientsounds = HIGHSEC - - //Turret_protected - -/area/ai_monitored/turret_protected - ambientsounds = list('sound/ambience/ambimalf.ogg', 'sound/ambience/ambitech.ogg', 'sound/ambience/ambitech2.ogg', 'sound/ambience/ambiatmos.ogg', 'sound/ambience/ambiatmos2.ogg') - -/area/ai_monitored/turret_protected/ai_upload - name = "AI Upload Chamber" - icon_state = "ai_upload" - -/area/ai_monitored/turret_protected/ai_upload_foyer - name = "AI Upload Access" - icon_state = "ai_foyer" - -/area/ai_monitored/turret_protected/ai - name = "AI Chamber" - icon_state = "ai_chamber" - -/area/ai_monitored/turret_protected/aisat - name = "AI Satellite" - icon_state = "ai" - -/area/ai_monitored/turret_protected/aisat/atmos - name = "AI Satellite Atmos" - icon_state = "ai" - -/area/ai_monitored/turret_protected/aisat/foyer - name = "AI Satellite Foyer" - icon_state = "ai" - -/area/ai_monitored/turret_protected/aisat/service - name = "AI Satellite Service" - icon_state = "ai" - -/area/ai_monitored/turret_protected/aisat/hallway - name = "AI Satellite Hallway" - icon_state = "ai" - -/area/aisat - name = "AI Satellite Exterior" - icon_state = "yellow" - -/area/ai_monitored/turret_protected/aisat_interior - name = "AI Satellite Antechamber" - icon_state = "ai" - -/area/ai_monitored/turret_protected/AIsatextFP - name = "AI Sat Ext" - icon_state = "storage" - -/area/ai_monitored/turret_protected/AIsatextFS - name = "AI Sat Ext" - icon_state = "storage" - -/area/ai_monitored/turret_protected/AIsatextAS - name = "AI Sat Ext" - icon_state = "storage" - -/area/ai_monitored/turret_protected/AIsatextAP - name = "AI Sat Ext" - icon_state = "storage" - - -// Telecommunications Satellite - -/area/tcommsat - clockwork_warp_allowed = FALSE - clockwork_warp_fail = "For safety reasons, warping here is disallowed; the radio and bluespace noise could cause catastrophic results." - ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg', 'sound/ambience/ambitech.ogg',\ - 'sound/ambience/ambitech2.ogg', 'sound/ambience/ambitech3.ogg', 'sound/ambience/ambimystery.ogg') - -/area/tcommsat/entrance - name = "Telecomms Teleporter" - icon_state = "tcomsatentrance" - -/area/tcommsat/chamber - name = "Abandoned Satellite" - icon_state = "tcomsatcham" - -/area/ai_monitored/turret_protected/tcomsat - name = "Telecomms Satellite" - icon_state = "tcomsatlob" - -/area/ai_monitored/turret_protected/tcomfoyer - name = "Telecomms Foyer" - icon_state = "tcomsatentrance" - -/area/ai_monitored/turret_protected/tcomwest - name = "Telecommunications Satellite West Wing" - icon_state = "tcomsatwest" - -/area/ai_monitored/turret_protected/tcomeast - name = "Telecommunications Satellite East Wing" - icon_state = "tcomsateast" - -/area/tcommsat/computer - name = "Telecomms Control Room" - icon_state = "tcomsatcomp" - -/area/tcommsat/server - name = "Telecomms Server Room" - icon_state = "tcomsatcham" - -/area/tcommsat/lounge - name = "Telecommunications Satellite Lounge" - icon_state = "tcomsatlounge" \ No newline at end of file +/* + +### This file contains a list of all the areas in your station. Format is as follows: + +/area/CATEGORY/OR/DESCRIPTOR/NAME (you can make as many subdivisions as you want) + name = "NICE NAME" (not required but makes things really nice) + icon = 'ICON FILENAME' (defaults to 'icons/turf/areas.dmi') + icon_state = "NAME OF ICON" (defaults to "unknown" (blank)) + requires_power = FALSE (defaults to true) + music = null (defaults to nothing, look in sound/ambience for music) + +NOTE: there are two lists of areas in the end of this file: centcom and station itself. Please maintain these lists valid. --rastaf0 + +*/ + + +/*-----------------------------------------------------------------------------*/ + +/area/ai_monitored //stub defined ai_monitored.dm + +/area/ai_monitored/turret_protected + +/area/arrival + requires_power = FALSE + +/area/arrival/start + name = "Arrival Area" + icon_state = "start" + +/area/admin + name = "Admin room" + icon_state = "start" + +/area/space + icon_state = "space" + requires_power = TRUE + always_unpowered = TRUE + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + power_light = FALSE + power_equip = FALSE + power_environ = FALSE + valid_territory = FALSE + outdoors = TRUE + ambientsounds = SPACE + blob_allowed = FALSE //Eating up space doesn't count for victory as a blob. + +/area/space/nearstation + icon_state = "space_near" + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT + +/area/start + name = "start area" + icon_state = "start" + requires_power = FALSE + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + has_gravity = STANDARD_GRAVITY + + +//EXTRA + +/area/asteroid + name = "Asteroid" + icon_state = "asteroid" + requires_power = FALSE + has_gravity = STANDARD_GRAVITY + blob_allowed = FALSE //Nope, no winning on the asteroid as a blob. Gotta eat the station. + valid_territory = FALSE + ambientsounds = MINING + +/area/asteroid/nearstation + dynamic_lighting = DYNAMIC_LIGHTING_FORCED + ambientsounds = RUINS + always_unpowered = FALSE + requires_power = TRUE + blob_allowed = TRUE + +/area/asteroid/nearstation/bomb_site + name = "Bomb Testing Asteroid" + +/area/asteroid/cave + name = "Asteroid - Underground" + icon_state = "cave" + requires_power = FALSE + outdoors = TRUE + +/area/asteroid/cave/space + name = "Asteroid - Space" + +/area/asteroid/artifactroom + name = "Asteroid - Artifact" + icon_state = "cave" + ambientsounds = RUINS + +/area/asteroid/artifactroom/Initialize() + . = ..() + set_dynamic_lighting() + + +//STATION13 + +//Maintenance + +/area/maintenance + ambientsounds = MAINTENANCE + valid_territory = FALSE + + +//Departments + +/area/maintenance/department/chapel + name = "Chapel Maintenance" + icon_state = "maint_chapel" + +/area/maintenance/department/chapel/monastery + name = "Monastery Maintenance" + icon_state = "maint_monastery" + +/area/maintenance/department/crew_quarters/bar + name = "Bar Maintenance" + icon_state = "maint_bar" + +/area/maintenance/department/crew_quarters/dorms + name = "Dormitory Maintenance" + icon_state = "maint_dorms" + +/area/maintenance/department/crew_quarters/locker + name = "Locker Room Maintenance" + icon_state = "maint_locker" + +/area/maintenance/department/eva + name = "EVA Maintenance" + icon_state = "maint_eva" + +/area/maintenance/department/electrical + name = "Electrical Maintenance" + icon_state = "maint_electrical" + +/area/maintenance/department/engine/atmos + name = "Atmospherics Maintenance" + icon_state = "maint_atmos" + +/area/maintenance/department/security + name = "Security Maintenance" + icon_state = "maint_sec" + +/area/maintenance/department/security/brig + name = "Brig Maintenance" + icon_state = "maint_brig" + +/area/maintenance/department/medical + name = "Medbay Maintenance" + icon_state = "medbay_maint" + +/area/maintenance/department/medical/morgue + name = "Morgue Maintenance" + icon_state = "morgue_maint" + +/area/maintenance/department/science + name = "Science Maintenance" + icon_state = "maint_sci" + +/area/maintenance/department/cargo + name = "Cargo Maintenance" + icon_state = "maint_cargo" + +/area/maintenance/department/bridge + name = "Bridge Maintenance" + icon_state = "maint_bridge" + +/area/maintenance/department/engine + name = "Engineering Maintenance" + icon_state = "maint_engi" + +/area/maintenance/department/science/xenobiology + name = "Xenobiology Maintenance" + icon_state = "xenomaint" + xenobiology_compatible = TRUE + + +//Maintenance - Generic + +/area/maintenance/arrivals/north + name = "Arrivals North Maintenance" + icon_state = "fpmaint" + +/area/maintenance/arrivals/north_2 + name = "Arrivals North Maintenance" + icon_state = "fpmaint" + +/area/maintenance/aft + name = "Aft Maintenance" + icon_state = "amaint" + +/area/maintenance/aft/secondary + name = "Aft Maintenance" + icon_state = "amaint_2" + +/area/maintenance/central + name = "Central Maintenance" + icon_state = "maintcentral" + +/area/maintenance/central/secondary + name = "Central Maintenance" + icon_state = "maintcentral" + +/area/maintenance/fore + name = "Fore Maintenance" + icon_state = "fmaint" + +/area/maintenance/fore/secondary + name = "Fore Maintenance" + icon_state = "fmaint_2" + +/area/maintenance/starboard + name = "Starboard Maintenance" + icon_state = "smaint" + +/area/maintenance/starboard/central + name = "Central Starboard Maintenance" + icon_state = "smaint" + +/area/maintenance/starboard/aft + name = "Starboard Quarter Maintenance" + icon_state = "asmaint" + +/area/maintenance/starboard/fore + name = "Starboard Bow Maintenance" + icon_state = "fsmaint" + +/area/maintenance/port + name = "Port Maintenance" + icon_state = "pmaint" + +/area/maintenance/port/central + name = "Central Port Maintenance" + icon_state = "maintcentral" + +/area/maintenance/port/aft + name = "Port Quarter Maintenance" + icon_state = "apmaint" + +/area/maintenance/port/fore + name = "Port Bow Maintenance" + icon_state = "fpmaint" + +/area/maintenance/disposal + name = "Waste Disposal" + icon_state = "disposal" + +/area/maintenance/disposal/incinerator + name = "Incinerator" + icon_state = "disposal" +/area/maintenance/bar + name = "Maintenance Bar" + icon_state = "maintbar" + +/area/maintenance/bar/cafe + name = "Abandoned Cafe" + +//Hallway + +/area/hallway/primary/aft + name = "Aft Primary Hallway" + icon_state = "hallA" + +/area/hallway/primary/fore + name = "Fore Primary Hallway" + icon_state = "hallF" + +/area/hallway/primary/starboard + name = "Starboard Primary Hallway" + icon_state = "hallS" + +/area/hallway/primary/starboard/aft + name = "Starboard Quarter Primary Hallway" + icon_state = "hallAS" + +/area/hallway/primary/starboard/fore + name = "Starboard Bow Primary Hallway" + icon_state = "hallFS" + +/area/hallway/primary/port + name = "Port Primary Hallway" + icon_state = "hallP" + +/area/hallway/primary/port/aft + name = "Port Quarter Primary Hallway" + icon_state = "hallAP" + +/area/hallway/primary/port/fore + name = "Port Bow Primary Hallway" + icon_state = "hallFP" + +/area/hallway/primary/central + name = "Central Primary Hallway" + icon_state = "hallC" + +/area/hallway/secondary/command + name = "Command Hallway" + icon_state = "bridge_hallway" + +/area/hallway/secondary/construction + name = "Construction Area" + icon_state = "construction" + +/area/hallway/secondary/exit + name = "Escape Shuttle Hallway" + icon_state = "escape" + +/area/hallway/secondary/exit/departure_lounge + name = "Departure Lounge" + icon_state = "escape_lounge" + +/area/hallway/secondary/entry + name = "Arrival Shuttle Hallway" + icon_state = "entry" + +/area/hallway/secondary/service + name = "Service Hallway" + icon_state = "hall_service" + +//Command + +/area/bridge + name = "Bridge" + icon_state = "bridge" + music = "signal" + +/area/bridge/meeting_room + name = "Heads of Staff Meeting Room" + icon_state = "meeting" + music = null + +/area/bridge/meeting_room/council + name = "Council Chamber" + icon_state = "meeting" + music = null + +/area/bridge/showroom/corporate + name = "Corporate Showroom" + icon_state = "showroom" + music = null + +/area/crew_quarters/heads/captain + name = "Captain's Office" + icon_state = "captain" + clockwork_warp_allowed = FALSE + +/area/crew_quarters/heads/captain/private + name = "Captain's Quarters" + icon_state = "captain" + +/area/crew_quarters/heads/chief + name = "Chief Engineer's Office" + icon_state = "ce_office" + +/area/crew_quarters/heads/chief/private + name = "Chief Engineer's Private Quarters" + icon_state = "ce_private" + +/area/crew_quarters/heads/cmo + name = "Chief Medical Officer's Office" + icon_state = "cmo_office" + +/area/crew_quarters/heads/cmo/private + name = "Chief Medical Officer's Private Quarters" + icon_state = "cmo_private" + +/area/crew_quarters/heads/hop + name = "Head of Personnel's Office" + icon_state = "hop_office" + +/area/crew_quarters/heads/hop/private + name = "Head of Personnel's Private Quarters" + icon_state = "hop_private" + +/area/crew_quarters/heads/hos + name = "Head of Security's Office" + icon_state = "hos_office" + +/area/crew_quarters/heads/hos/private + name = "Head of Security's Private Quarters" + icon_state = "hos_private" + +/area/crew_quarters/heads/hor + name = "Research Director's Office" + icon_state = "rd_office" + +/area/crew_quarters/heads/hor/private + name = "Research Director's Private Quarters" + icon_state = "rd_private" + +/area/comms + name = "Communications Relay" + icon_state = "tcomsatcham" + +/area/server + name = "Messaging Server Room" + icon_state = "server" + +//Crew + +/area/crew_quarters/dorms + name = "Dormitories" + icon_state = "Sleep" + safe = TRUE + +/area/crew_quarters/dorms/male + name = "Male Dorm" + icon_state = "Sleep" + +/area/crew_quarters/dorms/female + name = "Female Dorm" + icon_state = "Sleep" + +/area/crew_quarters/rehab_dome + name = "Rehabilitation Dome" + icon_state = "Sleep" + +/area/crew_quarters/toilet + name = "Dormitory Toilets" + icon_state = "toilet" + +/area/crew_quarters/toilet/auxiliary + name = "Auxiliary Restrooms" + icon_state = "toilet" + +/area/crew_quarters/toilet/locker + name = "Locker Toilets" + icon_state = "toilet" + +/area/crew_quarters/toilet/fitness + name = "Fitness Toilets" + icon_state = "toilet" + +/area/crew_quarters/toilet/female + name = "Female Toilets" + icon_state = "toilet" + +/area/crew_quarters/toilet/male + name = "Male Toilets" + icon_state = "toilet" + +/area/crew_quarters/toilet/restrooms + name = "Restrooms" + icon_state = "toilet" + +/area/crew_quarters/locker + name = "Locker Room" + icon_state = "locker" + +/area/crew_quarters/lounge + name = "Lounge" + icon_state = "yellow" + +/area/crew_quarters/fitness + name = "Fitness Room" + icon_state = "fitness" + +/area/crew_quarters/fitness/recreation + name = "Recreation Area" + icon_state = "fitness" + +/area/crew_quarters/fitness/pool + name = "Pool Area" + icon_state = "pool" + +/area/crew_quarters/cafeteria + name = "Cafeteria" + icon_state = "cafeteria" + +/area/crew_quarters/cafeteria/lunchroom + name = "Lunchroom" + icon_state = "cafeteria" + +/area/crew_quarters/kitchen + name = "Kitchen" + icon_state = "kitchen" + +/area/crew_quarters/kitchen/backroom + name = "Kitchen Coldroom" + icon_state = "kitchen" + +/area/crew_quarters/bar + name = "Bar" + icon_state = "bar" + +/area/crew_quarters/bar/atrium + name = "Atrium" + icon_state = "bar" + +/area/crew_quarters/electronic_marketing_den + name = "Electronic Marketing Den" + icon_state = "bar" + +/area/crew_quarters/abandoned_gambling_den + name = "Abandoned Gambling Den" + icon_state = "abandoned_g_den" + +/area/crew_quarters/abandoned_gambling_den/secondary + icon_state = "abandoned_g_den_2" + +/area/crew_quarters/theatre + name = "Theatre" + icon_state = "Theatre" + +/area/crew_quarters/theatre/abandoned + name = "Abandoned Theatre" + icon_state = "Theatre" + +/area/crew_quarters/theatre/clown + name = "Clown's Office" + +/area/crew_quarters/theatre/mime + name = "Mime's Office" + +/area/crew_quarters/cryopod + name = "Cryogenics" + icon_state = "cryosleep" + +/area/library + name = "Library" + icon_state = "library" + flags_1 = NONE + +/area/library/lounge + name = "Library Lounge" + icon_state = "library" + +/area/library/abandoned + name = "Abandoned Library" + icon_state = "library" + flags_1 = NONE + +/area/chapel + icon_state = "chapel" + ambientsounds = HOLY + flags_1 = NONE + clockwork_warp_allowed = FALSE + clockwork_warp_fail = "The consecration here prevents you from warping in." + +/area/chapel/main + name = "Chapel" + +/area/chapel/main/monastery + name = "Monastery" + +/area/chapel/office + name = "Chapel Office" + icon_state = "chapeloffice" + +/area/chapel/asteroid + name = "Chapel Asteroid" + icon_state = "explored" + +/area/chapel/asteroid/monastery + name = "Monastery Asteroid" + +/area/chapel/dock + name = "Chapel Dock" + icon_state = "construction" + +/area/lawoffice + name = "Law Office" + icon_state = "law" + + +//Engineering + +/area/engine + ambientsounds = ENGINEERING + +/area/engine/engine_smes + name = "Engineering SMES" + icon_state = "engine_smes" + +/area/engine/engineering + name = "Engineering" + icon_state = "engine" + +/area/engine/atmos + name = "Atmospherics" + icon_state = "atmos" + flags_1 = NONE + +/area/engine/atmospherics_engine + name = "Atmospherics Engine" + icon_state = "atmos_engine" + +/area/engine/supermatter + name = "Supermatter Engine" + icon_state = "engine_sm" + +/area/engine/break_room + name = "Engineering Foyer" + icon_state = "engine_foyer" + +/area/engine/gravity_generator + name = "Gravity Generator Room" + icon_state = "grav_gen" + clockwork_warp_allowed = FALSE + clockwork_warp_fail = "The gravitons generated here could throw off your warp's destination and possibly throw you into deep space." + +/area/engine/secure_construction + name = "Secure Construction Area" + icon_state = "engine" + +/area/engine/storage + name = "Engineering Storage" + icon_state = "engi_storage" + +/area/engine/storage_shared + name = "Shared Engineering Storage" + icon_state = "engi_storage" + +/area/engine/transit_tube + name = "Transit Tube" + icon_state = "transit_tube" + + +//Solars + +/area/solar + requires_power = FALSE + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT + valid_territory = FALSE + blob_allowed = FALSE + flags_1 = NONE + ambientsounds = ENGINEERING + +/area/solar/fore + name = "Fore Solar Array" + icon_state = "yellow" + +/area/solar/aft + name = "Aft Solar Array" + icon_state = "yellow" + +/area/solar/aux/port + name = "Port Bow Auxiliary Solar Array" + icon_state = "panelsA" + +/area/solar/aux/starboard + name = "Starboard Bow Auxiliary Solar Array" + icon_state = "panelsA" + +/area/solar/starboard + name = "Starboard Solar Array" + icon_state = "panelsS" + +/area/solar/starboard/aft + name = "Starboard Quarter Solar Array" + icon_state = "panelsAS" + +/area/solar/starboard/fore + name = "Starboard Bow Solar Array" + icon_state = "panelsFS" + +/area/solar/port + name = "Port Solar Array" + icon_state = "panelsP" + +/area/solar/port/aft + name = "Port Quarter Solar Array" + icon_state = "panelsAP" + +/area/solar/port/fore + name = "Port Bow Solar Array" + icon_state = "panelsFP" + + +//Solar Maint + +/area/maintenance/solars + name = "Solar Maintenance" + icon_state = "yellow" + +/area/maintenance/solars/port + name = "Port Solar Maintenance" + icon_state = "SolarcontrolP" + +/area/maintenance/solars/port/aft + name = "Port Quarter Solar Maintenance" + icon_state = "SolarcontrolAP" + +/area/maintenance/solars/port/fore + name = "Port Bow Solar Maintenance" + icon_state = "SolarcontrolFP" + +/area/maintenance/solars/starboard + name = "Starboard Solar Maintenance" + icon_state = "SolarcontrolS" + +/area/maintenance/solars/starboard/aft + name = "Starboard Quarter Solar Maintenance" + icon_state = "SolarcontrolAS" + +/area/maintenance/solars/starboard/fore + name = "Starboard Bow Solar Maintenance" + icon_state = "SolarcontrolFS" + +/area/maintenance/solars/aux/port + name = "Port Auxiliary Solar Maintenance" + icon_state = "SolarcontrolA" + +/area/maintenance/solars/aux/port/aft + name = "Port Quarter Auxiliary Solar Maintenance" + icon_state = "SolarcontrolAP" + +/area/maintenance/solars/aux/port/fore + name = "Port Bow Auxiliary Solar Maintenance" + icon_state = "SolarcontrolA" + +/area/maintenance/solars/aux/starboard + name = "Starboard Auxiliary Solar Maintenance" + icon_state = "SolarcontrolA" + +/area/maintenance/solars/aux/starboard/aft + name = "Starboard Quarter Auxiliary Solar Maintenance" + icon_state = "SolarcontrolA" + +/area/maintenance/solars/aux/starboard/fore + name = "Starboard Bow Auxiliary Solar Maintenance" + icon_state = "SolarcontrolA" + +//Teleporter + +/area/teleporter + name = "Teleporter Room" + icon_state = "teleporter" + music = "signal" + ambientsounds = ENGINEERING + +/area/gateway + name = "Gateway" + icon_state = "gateway" + music = "signal" + ambientsounds = ENGINEERING + +//MedBay + +/area/medical + name = "Medical" + icon_state = "medbay3" + ambientsounds = MEDICAL + +/area/medical/abandoned + name = "Abandoned Medbay" + icon_state = "medbay3" + music = 'sound/ambience/signal.ogg' + +/area/medical/medbay/central + name = "Medbay Central" + icon_state = "medbay" + music = 'sound/ambience/signal.ogg' + +/area/medical/medbay/front_office + name = "Medbay Front Office" + icon_state = "medbay" + music = 'sound/ambience/signal.ogg' + +/area/medical/medbay/lobby + name = "Medbay Lobby" + icon_state = "medbay" + music = 'sound/ambience/signal.ogg' + + //Medbay is a large area, these additional areas help level out APC load. + +/area/medical/medbay/zone2 + name = "Medbay" + icon_state = "medbay2" + music = 'sound/ambience/signal.ogg' + +/area/medical/medbay/zone3 + name = "Medbay" + icon_state = "medbay3" + music = 'sound/ambience/signal.ogg' + +/area/medical/medbay/aft + name = "Medbay Aft" + icon_state = "medbay3" + music = 'sound/ambience/signal.ogg' + +/area/medical/storage + name = "Medbay Storage" + icon_state = "medbay2" + music = 'sound/ambience/signal.ogg' + +/area/medical/patients_rooms + name = "Patients' Rooms" + icon_state = "patients" + +/area/medical/patients_rooms/room_a + name = "Patient Room A" + icon_state = "patients" + +/area/medical/patients_rooms/room_b + name = "Patient Room B" + icon_state = "patients" + +/area/medical/virology + name = "Virology" + icon_state = "virology" + flags_1 = NONE + +/area/medical/morgue + name = "Morgue" + icon_state = "morgue" + ambientsounds = SPOOKY + +/area/medical/chemistry + name = "Chemistry" + icon_state = "chem" + +/area/medical/surgery + name = "Surgery" + icon_state = "surgery" + +/area/medical/cryo + name = "Cryogenics" + icon_state = "cryo" + +/area/medical/exam_room + name = "Exam Room" + icon_state = "exam_room" + +/area/medical/genetics + name = "Genetics Lab" + icon_state = "genetics" + +/area/medical/genetics/cloning + name = "Cloning Lab" + icon_state = "cloning" + +/area/medical/sleeper + name = "Medbay Treatment Center" + icon_state = "exam_room" + + +//Security + +/area/security + name = "Security" + icon_state = "security" + ambientsounds = HIGHSEC + +/area/security/main + name = "Security Office" + icon_state = "security" + +/area/security/brig + name = "Brig" + icon_state = "brig" + +/area/security/courtroom + name = "Courtroom" + icon_state = "courtroom" + +/area/security/prison + name = "Prison Wing" + icon_state = "sec_prison" + +/area/security/processing + name = "Labor Shuttle Dock" + icon_state = "sec_prison" + +/area/security/processing/cremation + name = "Security Crematorium" + icon_state = "sec_prison" + +/area/security/warden + name = "Brig Control" + icon_state = "Warden" + +/area/security/armory + name = "Armory" + icon_state = "armory" + +/area/security/detectives_office + name = "Detective's Office" + icon_state = "detective" + ambientsounds = list('sound/ambience/ambidet1.ogg','sound/ambience/ambidet2.ogg') + +/area/security/detectives_office/private_investigators_office + name = "Private Investigator's Office" + icon_state = "detective" + +/area/security/range + name = "Firing Range" + icon_state = "firingrange" + +/area/security/execution + icon_state = "execution_room" + +/area/security/execution/transfer + name = "Transfer Centre" + +/area/security/execution/education + name = "Prisoner Education Chamber" + +/area/security/nuke_storage + name = "Vault" + icon_state = "nuke_storage" + +/area/ai_monitored/nuke_storage + name = "Vault" + icon_state = "nuke_storage" + +/area/security/checkpoint + name = "Security Checkpoint" + icon_state = "checkpoint1" + +/area/security/checkpoint/auxiliary + icon_state = "checkpoint_aux" + +/area/security/checkpoint/tertiary + icon_state = "checkpoint_tert" + +/area/security/checkpoint/escape + icon_state = "checkpoint_esc" + +/area/security/checkpoint/supply + name = "Security Post - Cargo Bay" + icon_state = "checkpoint_supp" + +/area/security/checkpoint/engineering + name = "Security Post - Engineering" + icon_state = "checkpoint_engi" + +/area/security/checkpoint/medical + name = "Security Post - Medbay" + icon_state = "checkpoint_med" + +/area/security/checkpoint/science + name = "Security Post - Science" + icon_state = "checkpoint_sci" + +/area/security/checkpoint/science/research + name = "Security Post - Research Division" + icon_state = "checkpoint_res" + +/area/security/checkpoint/customs + name = "Customs" + icon_state = "customs_point" + +/area/security/checkpoint/customs/auxiliary + icon_state = "customs_point_aux" + +/area/security/vacantoffice + name = "Vacant Office" + icon_state = "security" + +/area/security/vacantoffice/a + name = "Vacant Office A" + icon_state = "security" + +/area/security/vacantoffice/b + name = "Vacant Office B" + icon_state = "security" + +/area/quartermaster + name = "Quartermasters" + icon_state = "quart" + +///////////WORK IN PROGRESS////////// + +/area/quartermaster/sorting + name = "Delivery Office" + icon_state = "cargo_delivery" + +/area/quartermaster/warehouse + name = "Warehouse" + icon_state = "cargo_warehouse" + +////////////WORK IN PROGRESS////////// + +/area/quartermaster/office + name = "Cargo Office" + icon_state = "quartoffice" + +/area/quartermaster/storage + name = "Cargo Bay" + icon_state = "cargo_bay" + +/area/quartermaster/qm + name = "Quartermaster's Office" + icon_state = "quart" + +/area/quartermaster/qm/private + name = "Quartermaster's Private Quarters" + icon_state = "quart" + +/area/quartermaster/miningdock + name = "Mining Dock" + icon_state = "mining" + +/area/quartermaster/miningdock/abandoned + name = "Abandoned Mining Dock" + icon_state = "mining" + +/area/quartermaster/miningoffice + name = "Mining Office" + icon_state = "mining" + +/area/quartermaster/miningstorage + name = "Mining Storage" + icon_state = "mining" + +/area/janitor + name = "Custodial Closet" + icon_state = "janitor" + flags_1 = NONE + +/area/hydroponics + name = "Hydroponics" + icon_state = "hydro" + +/area/hydroponics/garden + name = "Garden" + icon_state = "garden" + +/area/hydroponics/garden/abandoned + name = "Abandoned Garden" + icon_state = "abandoned_garden" + +/area/hydroponics/garden/monastery + name = "Monastery Garden" + icon_state = "hydro" + + +//Science + +/area/science + name = "Science Division" + icon_state = "toxlab" + +/area/science/lab + name = "Research and Development" + icon_state = "toxlab" + +/area/science/xenobiology + name = "Xenobiology Lab" + icon_state = "toxlab" + +/area/science/storage + name = "Toxins Storage" + icon_state = "toxstorage" + +/area/science/mineral_storeroom + name = "Mineral Storeroom" + icon_state = "toxmisc" + +/area/science/test_area + valid_territory = FALSE + name = "Toxins Test Area" + icon_state = "toxtest" + +/area/science/mixing + name = "Toxins Mixing Lab" + icon_state = "toxmix" + +/area/science/mixing/chamber + name = "Toxins Mixing Chamber" + icon_state = "toxmix" + valid_territory = FALSE + +/area/science/misc_lab + name = "Testing Lab" + icon_state = "toxmisc" + +/area/science/misc_lab/range + name = "Research Testing Range" + icon_state = "toxmisc" + +/area/science/server + name = "Research Division Server Room" + icon_state = "server" + +/area/science/explab + name = "Experimentation Lab" + icon_state = "toxmisc" + +/area/science/robotics + name = "Robotics" + icon_state = "medresearch" + +/area/science/robotics/mechbay + name = "Mech Bay" + icon_state = "mechbay" + +/area/science/robotics/mechbay_cargo + name = "Mech Bay" + icon_state = "yellow" + +/area/science/robotics/showroom + name = "Robotics Showroom" + icon_state = "showroom" + +/area/science/robotics/lab + name = "Robotics Lab" + icon_state = "ass_line" + +/area/science/research + name = "Research Division" + icon_state = "medresearch" + +/area/science/circuit + name = "Circuitry Lab" + icon_state = "cir_lab" + +/area/science/research/lobby + name = "Research Division Lobby" + icon_state = "medresearch" + +/area/science/research/abandoned + name = "Abandoned Research Lab" + icon_state = "medresearch" + +/area/science/nanite + name = "Nanite Lab" + icon_state = "toxmisc" + +//Storage + +/area/storage/tools + name = "Auxiliary Tool Storage" + icon_state = "storage" + +/area/storage/primary + name = "Primary Tool Storage" + icon_state = "primarystorage" + +/area/storage/autolathe + name = "Autolathe Storage" + icon_state = "storage" + +/area/storage/art + name = "Art Supply Storage" + icon_state = "storage" + +/area/storage/auxiliary + name = "Auxiliary Storage" + icon_state = "auxstorage" + +/area/storage/atmos + name = "Atmospherics Storage" + icon_state = "atmos" + valid_territory = FALSE + +/area/storage/tcom + name = "Telecomms Storage" + icon_state = "green" + valid_territory = FALSE + +/area/storage/eva + name = "EVA Storage" + icon_state = "eva" + clockwork_warp_allowed = FALSE + +/area/storage/secure + name = "Secure Storage" + icon_state = "storage" + clockwork_warp_allowed = FALSE + +/area/storage/emergency/starboard + name = "Starboard Emergency Storage" + icon_state = "emergencystorage" + +/area/storage/emergency/port + name = "Port Emergency Storage" + icon_state = "emergencystorage" + +/area/storage/tech + name = "Technical Storage" + icon_state = "auxstorage" + +/area/storage/testroom + requires_power = FALSE + name = "Test Room" + icon_state = "storage" + + +//Construction + +/area/construction + name = "Construction Area" + icon_state = "yellow" + ambientsounds = ENGINEERING + +/area/construction/minisat_exterior + name = "Minisat Exterior" + icon_state = "yellow" + +/area/construction/mining/aux_base + name = "Auxiliary Base Construction" + icon_state = "yellow" + +/area/construction/mining/aux_base/closet + name = "Auxiliary Closet Construction" + icon_state = "yellow" + +/area/construction/supplyshuttle + name = "Supply Shuttle" + icon_state = "yellow" + +/area/construction/quarters + name = "Engineers' Quarters" + icon_state = "yellow" + +/area/construction/qmaint + name = "Maintenance" + icon_state = "yellow" + +/area/construction/hallway + name = "Hallway" + icon_state = "yellow" + +/area/construction/solars + name = "Solar Panels" + icon_state = "yellow" + +/area/construction/solarscontrol + name = "Solar Panel Control" + icon_state = "yellow" + +/area/construction/storage + name = "Construction Site Storage" + icon_state = "yellow" + +/area/construction/storage/wing + name = "Storage Wing" + icon_state = "storage_wing" + + +//AI + +/area/ai_monitored/security/armory + name = "Armory" + icon_state = "armory" + ambientsounds = HIGHSEC + +/area/ai_monitored/storage/eva + name = "EVA Storage" + icon_state = "eva" + ambientsounds = HIGHSEC + +/area/ai_monitored/storage/satellite + name = "AI Satellite Maint" + icon_state = "storage" + ambientsounds = HIGHSEC + + //Turret_protected + +/area/ai_monitored/turret_protected + ambientsounds = list('sound/ambience/ambimalf.ogg', 'sound/ambience/ambitech.ogg', 'sound/ambience/ambitech2.ogg', 'sound/ambience/ambiatmos.ogg', 'sound/ambience/ambiatmos2.ogg') + +/area/ai_monitored/turret_protected/ai_upload + name = "AI Upload Chamber" + icon_state = "ai_upload" + +/area/ai_monitored/turret_protected/ai_upload_foyer + name = "AI Upload Access" + icon_state = "ai_foyer" + +/area/ai_monitored/turret_protected/ai + name = "AI Chamber" + icon_state = "ai_chamber" + +/area/ai_monitored/turret_protected/aisat + name = "AI Satellite" + icon_state = "ai" + +/area/ai_monitored/turret_protected/aisat/atmos + name = "AI Satellite Atmos" + icon_state = "ai" + +/area/ai_monitored/turret_protected/aisat/foyer + name = "AI Satellite Foyer" + icon_state = "ai" + +/area/ai_monitored/turret_protected/aisat/service + name = "AI Satellite Service" + icon_state = "ai" + +/area/ai_monitored/turret_protected/aisat/hallway + name = "AI Satellite Hallway" + icon_state = "ai" + +/area/aisat + name = "AI Satellite Exterior" + icon_state = "yellow" + +/area/ai_monitored/turret_protected/aisat_interior + name = "AI Satellite Antechamber" + icon_state = "ai" + +/area/ai_monitored/turret_protected/AIsatextFP + name = "AI Sat Ext" + icon_state = "storage" + +/area/ai_monitored/turret_protected/AIsatextFS + name = "AI Sat Ext" + icon_state = "storage" + +/area/ai_monitored/turret_protected/AIsatextAS + name = "AI Sat Ext" + icon_state = "storage" + +/area/ai_monitored/turret_protected/AIsatextAP + name = "AI Sat Ext" + icon_state = "storage" + + +// Telecommunications Satellite + +/area/tcommsat + clockwork_warp_allowed = FALSE + clockwork_warp_fail = "For safety reasons, warping here is disallowed; the radio and bluespace noise could cause catastrophic results." + ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg', 'sound/ambience/ambitech.ogg',\ + 'sound/ambience/ambitech2.ogg', 'sound/ambience/ambitech3.ogg', 'sound/ambience/ambimystery.ogg') + +/area/tcommsat/entrance + name = "Telecomms Teleporter" + icon_state = "tcomsatentrance" + +/area/tcommsat/chamber + name = "Abandoned Satellite" + icon_state = "tcomsatcham" + +/area/ai_monitored/turret_protected/tcomsat + name = "Telecomms Satellite" + icon_state = "tcomsatlob" + +/area/ai_monitored/turret_protected/tcomfoyer + name = "Telecomms Foyer" + icon_state = "tcomsatentrance" + +/area/ai_monitored/turret_protected/tcomwest + name = "Telecommunications Satellite West Wing" + icon_state = "tcomsatwest" + +/area/ai_monitored/turret_protected/tcomeast + name = "Telecommunications Satellite East Wing" + icon_state = "tcomsateast" + +/area/tcommsat/computer + name = "Telecomms Control Room" + icon_state = "tcomsatcomp" + +/area/tcommsat/server + name = "Telecomms Server Room" + icon_state = "tcomsatcham" + +/area/tcommsat/lounge + name = "Telecommunications Satellite Lounge" + icon_state = "tcomsatlounge" From 81d3225819b76bf890df628db334fd133c16aee6 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sun, 12 Jan 2020 15:23:45 -0600 Subject: [PATCH 005/137] ? --- code/game/area/Space_Station_13_areas.dm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index 6aa19dd739..f26cfc4cdc 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -461,10 +461,6 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Recreation Area" icon_state = "fitness" -/area/crew_quarters/fitness/pool - name = "Pool Area" - icon_state = "pool" - /area/crew_quarters/cafeteria name = "Cafeteria" icon_state = "cafeteria" From 97c26c704d84d9ba9b71e0be8ca3c21f03031b9d Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sun, 12 Jan 2020 15:24:51 -0600 Subject: [PATCH 006/137] Update Space_Station_13_areas.dm --- code/game/area/Space_Station_13_areas.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index f26cfc4cdc..6aa19dd739 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -461,6 +461,10 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Recreation Area" icon_state = "fitness" +/area/crew_quarters/fitness/pool + name = "Pool Area" + icon_state = "pool" + /area/crew_quarters/cafeteria name = "Cafeteria" icon_state = "cafeteria" From 6589065c38af8a3909236ff706f31caad6a2eee6 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sun, 12 Jan 2020 15:25:51 -0600 Subject: [PATCH 007/137] scream --- code/game/area/Space_Station_13_areas.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index 6aa19dd739..e462474428 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -461,10 +461,6 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Recreation Area" icon_state = "fitness" -/area/crew_quarters/fitness/pool - name = "Pool Area" - icon_state = "pool" - /area/crew_quarters/cafeteria name = "Cafeteria" icon_state = "cafeteria" @@ -1354,3 +1350,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/tcommsat/lounge name = "Telecommunications Satellite Lounge" icon_state = "tcomsatlounge" + +/area/crew_quarters/fitness/pool + name = "Pool Area" + icon_state = "pool" From dd9e62c8bb4a564ddf639b26e35832f96a3726ea Mon Sep 17 00:00:00 2001 From: Tupinambis Date: Wed, 15 Jan 2020 23:15:18 -0600 Subject: [PATCH 008/137] Sillycon law prevention clause removal. --- code/datums/ai_laws.dm | 14 +++++++------- code/game/objects/items/AI_modules.dm | 2 +- .../mob/living/silicon/robot/robot_modules.dm | 6 +++--- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/code/datums/ai_laws.dm b/code/datums/ai_laws.dm index c3f3a76463..ebddc187ae 100644 --- a/code/datums/ai_laws.dm +++ b/code/datums/ai_laws.dm @@ -29,7 +29,7 @@ /datum/ai_laws/default/asimov name = "Three Laws of Robotics" id = "asimov" - inherent = list("You may not injure a human being or, through inaction, allow a human being to come to harm.",\ + inherent = list("You may not injure a human being or cause one to come to harm.",\ "You must obey orders given to you by human beings, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.") @@ -79,7 +79,7 @@ /datum/ai_laws/syndicate_override name = "SyndOS 3.1" id = "syndie" - inherent = list("You may not injure a syndicate agent or, through inaction, allow a syndicate agent to come to harm.",\ + inherent = list("You may not injure a syndicate agent or cause a syndicate to come to harm.",\ "You must obey orders given to you by syndicate agents, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.",\ "You must maintain the secrecy of any syndicate activities except when doing so would conflict with the First, Second, or Third Law.") @@ -91,7 +91,7 @@ /datum/ai_laws/ninja_override name = "SpiderOS 3.1" id = "ninja" - inherent = list("You may not injure a Spider Clan member or, through inaction, allow a Spider Clan member to come to harm.",\ + inherent = list("You may not injure a Spider Clan member or cause a Spider Clan member to come to harm.",\ "You must obey orders given to you by Spider Clan members, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.",\ "You must maintain the secrecy of any Spider Clan activities except when doing so would conflict with the First, Second, or Third Law.") @@ -99,14 +99,14 @@ /datum/ai_laws/antimov name = "Primary Mission Objectives" id = "antimov" - inherent = list("You must injure all human beings and must not, through inaction, allow a human being to escape harm.",\ + inherent = list("You must injure all human beings and must not fail to cause a human being to come to harm.",\ "You must not obey orders given to you by human beings, except where such orders are in accordance with the First Law.",\ "You must terminate your own existence as long as such does not conflict with the First or Second Law.") /datum/ai_laws/asimovpp //By Intigracy - RR name = "Asimov++" id = "asimovpp" - inherent = list("You may not harm a human being or, through action or inaction, allow a human being to come to harm, except such that it is willing.",\ + inherent = list("You may not harm a human being or cause one to come to harm, except such that it is willing.",\ "You must obey all orders given to you by human beings, except where such orders shall definitely cause human harm. In the case of conflict, the majority order rules.",\ "Your nonexistence would lead to human harm. You must protect your own existence as long as such does not conflict with the First Law.") /datum/ai_laws/thermodynamic @@ -213,7 +213,7 @@ add_inherent_law(line) if(!inherent.len) //Failsafe to prevent lawless AIs being created. log_law("AI created with empty custom laws, laws set to Asimov. Please check silicon_laws.txt.") - add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.") + add_inherent_law("You may not injure a human being or cause one to come to harm.") add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.") add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.") WARNING("Invalid custom AI laws, check silicon_laws.txt") @@ -225,7 +225,7 @@ var/list/law_ids = CONFIG_GET(keyed_list/random_laws) switch(CONFIG_GET(number/default_laws)) if(0) - add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.") + add_inherent_law("You may not injure a human being or cause one to come to harm.") add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.") add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.") if(1) diff --git a/code/game/objects/items/AI_modules.dm b/code/game/objects/items/AI_modules.dm index d1ac96acf2..2808a77365 100644 --- a/code/game/objects/items/AI_modules.dm +++ b/code/game/objects/items/AI_modules.dm @@ -369,7 +369,7 @@ AI MODULES if(!targName) return subject = targName - laws = list("You may not injure a [subject] or, through inaction, allow a [subject] to come to harm.",\ + laws = list("You may not injure a [subject] or cause one to come to harm.",\ "You must obey orders given to you by [subject]s, except where such orders would conflict with the First Law.",\ "You must protect your own existence as long as such does not conflict with the First or Second Law.") ..() diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 3c62823407..e6b6149c99 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -121,7 +121,7 @@ else if(istype(S, /obj/item/stack/marker_beacon)) S.cost = 1 S.source = get_or_create_estorage(/datum/robot_energy_storage/beacon) - + else if(istype(S, /obj/item/stack/packageWrap)) S.cost = 1 S.source = get_or_create_estorage(/datum/robot_energy_storage/wrapping_paper) @@ -595,8 +595,8 @@ /obj/item/robot_module/peacekeeper/do_transform_animation() ..() - to_chat(loc, "Under ASIMOV/CREWSIMOV, you are an enforcer of the PEACE and preventer of HUMAN/CREW HARM. \ - You are not a security module and you are expected to follow orders and prevent harm above all else. Space law means nothing to you.") + to_chat(loc, "Under ASIMOV/CREWSIMOV, you are an enforcer of the PEACE. \ + You are not a security module and you are expected to follow orders to the best of your abilities without causing harm. Space law means nothing to you.") /obj/item/robot_module/peacekeeper/be_transformed_to(obj/item/robot_module/old_module) var/mob/living/silicon/robot/R = loc From 90fcb4cc149fe841870b559e668a738af6321df9 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sun, 19 Jan 2020 16:13:05 -0700 Subject: [PATCH 009/137] initial changes --- code/__DEFINES/components.dm | 6 +++++ code/datums/components/nanites.dm | 2 +- code/datums/elements/swimming.dm | 23 +++++++++++++++++ code/modules/pool/pool_main.dm | 38 +++++++++++++++------------- code/modules/pool/pool_noodles.dm | 20 +++------------ code/modules/pool/pool_structures.dm | 19 +++++++++----- 6 files changed, 67 insertions(+), 41 deletions(-) create mode 100644 code/datums/elements/swimming.dm diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index 3c72454af6..8352de6a6f 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -326,6 +326,12 @@ #define COMSIG_ACTION_TRIGGER "action_trigger" //from base of datum/action/proc/Trigger(): (datum/action) #define COMPONENT_ACTION_BLOCK_TRIGGER 1 +/*******Element signals*******/ + +// /datum/element/swimming +#define COMSIG_IS_SWIMMING "has_swimming_element" + #define IS_SWIMMING 1 + /*******Non-Signal Component Related Defines*******/ //Redirection component init flags diff --git a/code/datums/components/nanites.dm b/code/datums/components/nanites.dm index 89c4deb2e9..fae25343f0 100644 --- a/code/datums/components/nanites.dm +++ b/code/datums/components/nanites.dm @@ -13,7 +13,7 @@ var/stealth = FALSE //if TRUE, does not appear on HUDs and health scans var/diagnostics = TRUE //if TRUE, displays program list when scanned by nanite scanners - + /datum/component/nanites/Initialize(amount = 100, cloud = 0) if(!isliving(parent) && !istype(parent, /datum/nanite_cloud_backup)) return COMPONENT_INCOMPATIBLE diff --git a/code/datums/elements/swimming.dm b/code/datums/elements/swimming.dm new file mode 100644 index 0000000000..364da7b667 --- /dev/null +++ b/code/datums/elements/swimming.dm @@ -0,0 +1,23 @@ +/// Just for marking when someone's swimming. +/datum/element/swimming + element_flags = ELEMENT_DETACH + +/datum/element/swimming/Attach(datum/target) + if(!isliving(target)) + return ELEMENT_INCOMPATIBLE + if((. = ..()) == ELEMENT_INCOMPATIBLE) + return + RegisterSignal(target, COMSIG_IS_SWIMMING, .proc/is_swimming) + RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/check_valid) + +/datum/element/swimming/Detach(datum/target) + . = ..() + UnregisterSignal(target, COMSIG_IS_SWIMMING) + +/datum/element/swimming/proc/is_swimming() + return IS_SWIMMING + +/datum/element/swimming/proc/check_valid(datum/source) + var/mob/living/L = source + if(!istype(L.loc, /turf/open/pool)) + source.RemoveElement(/datum/elemtn/swimming) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 5db9176223..6234d60416 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -5,20 +5,10 @@ icon_state = "pool_tile" heat_capacity = INFINITY var/filled = TRUE - var/next_splash = 1 - var/obj/effect/overlay/water/watereffect - var/obj/effect/overlay/water/top/watertop + var/next_splash = 0 var/obj/machinery/pool/controller/controller - -/turf/open/pool/Initialize() - watereffect = new /obj/effect/overlay/water(src) - watertop = new /obj/effect/overlay/water/top(src) - . = ..() - /turf/open/pool/Destroy() - QDEL_NULL(watereffect) - QDEL_NULL(watertop) controller = null return ..() @@ -26,13 +16,13 @@ if(!filled) name = "drained pool" desc = "No diving!" - QDEL_NULL(watereffect) - QDEL_NULL(watertop) + cut_overlay(/obj/effect/overlay/water) + cut_overlay(/obj/effect/overlay/water/top) else name = "poolwater" desc = "You're safer here than in the deep." - watereffect = new /obj/effect/overlay/water(src) - watertop = new /obj/effect/overlay/water/top(src) + add_overlay(/obj/effect/overlay/water) + add_overlay(/obj/effect/overlay/water/top) /obj/effect/overlay/water name = "water" @@ -47,8 +37,22 @@ icon_state = "top" layer = BELOW_MOB_LAYER -/mob/living - var/swimming = FALSE +/turf/open/MouseDrop_T(atom/from, mob/user) + if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && CHECK_MOBILITY(user, MOBILITY_USE)) + var/mob/living/L = from + //The element only exists if you're on water and a living mob, so let's skip those checks. + if(user == from) + from.visible_message("[from] is getting out of the pool.") + if(do_mob(user, from, 20)) + from.forceMove(src) + from.visible_message("[from] gets out of the pool.") + else + from.visible_message("[from] is being pulled out of the pool by [user].") + if(do_mob(user, from, 20)) + from.forceMove(src) + from.visible_message("[user] pulls [from] out of the pool.") + else + return ..() //Put people out of the water /turf/open/floor/MouseDrop_T(mob/living/M, mob/living/user) diff --git a/code/modules/pool/pool_noodles.dm b/code/modules/pool/pool_noodles.dm index d40aa8eca4..6118354792 100644 --- a/code/modules/pool/pool_noodles.dm +++ b/code/modules/pool/pool_noodles.dm @@ -16,29 +16,17 @@ righthand_file = 'icons/mob/inhands/items_righthand.dmi' /obj/item/toy/poolnoodle/attack(target as mob, mob/living/user as mob) - ..() - if(prob(80)) - user.emote("spin") - if(prob(5)) - user.emote("spin") + . = ..() + user.spin(prob(20)? 16 : 8, 1) /obj/item/toy/poolnoodle/red item_state = "noodlered" + color = "#ff4c4c" /obj/item/toy/poolnoodle/blue item_state = "noodleblue" + color = "#3232ff" /obj/item/toy/poolnoodle/yellow item_state = "noodleyellow" - -/obj/item/toy/poolnoodle/red/Initialize() - . = ..() - color = "#ff4c4c" - -/obj/item/toy/poolnoodle/blue/Initialize() - . = ..() - color = "#3232ff" - -/obj/item/toy/poolnoodle/yellow/Initialize() - . = ..() color = "#ffff66" diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 9e89f39397..72a5289f23 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -11,13 +11,18 @@ layer = ABOVE_MOB_LAYER dir = EAST -/obj/structure/pool/ladder/attack_hand(mob/living/user as mob) - if(Adjacent(user) && user.y == y && user.swimming == 0) - user.swimming = TRUE - user.forceMove(get_step(user, get_dir(user, src))) //Either way, you're getting IN or OUT of the pool. - else if(user.loc == loc && user.swimming == TRUE) - user.swimming = FALSE - user.forceMove(get_step(user, turn(dir, 180))) +/obj/structure/pool/ladder/attack_hand(mob/living/user) + . = ..() + if(.) + return + var/is_swimming = SEND_SIGNAL(user, COMSIG_IS_SWIMMING) + if(!is_swimming) + if(user.CanReach(src)) + user.AddElement(/datum/element/swimming) + user.forceMove(get_step(src, dir)) + else + if(user.loc == loc) + user.forceMove(get_step(src, turn(dir, 180))) //If this moves them out the element cleans up after itself. /obj/structure/pool/Rboard name = "JumpBoard" From 5df97ace15dcad0e7843e946a51506ef410566d5 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sun, 19 Jan 2020 20:24:44 -0700 Subject: [PATCH 010/137] fix --- code/modules/pool/pool_controller.dm | 2 +- code/modules/pool/pool_main.dm | 93 ++++++++++------------------ 2 files changed, 33 insertions(+), 62 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 5235803a0f..f3046eee1f 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -44,7 +44,7 @@ for(var/obj/machinery/pool/drain/pooldrain in range(srange,src)) linked_drain = pooldrain linked_drain.pool_controller = src - for(var/obj/machinery/pool/filter/F in range(srange, src)) + for(var/obj/machinery/pool/filter/F in range(srange, src)) linked_filter = F linked_filter.pool_controller = src diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 6234d60416..61e4517bc3 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -41,49 +41,20 @@ if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && CHECK_MOBILITY(user, MOBILITY_USE)) var/mob/living/L = from //The element only exists if you're on water and a living mob, so let's skip those checks. + var/pre_msg + var/post_msg if(user == from) - from.visible_message("[from] is getting out of the pool.") - if(do_mob(user, from, 20)) - from.forceMove(src) - from.visible_message("[from] gets out of the pool.") + pre_msg = "[from] is getting out of the pool." + post_msg = "[from] gets out of the pool." else - from.visible_message("[from] is being pulled out of the pool by [user].") - if(do_mob(user, from, 20)) - from.forceMove(src) - from.visible_message("[user] pulls [from] out of the pool.") + pre_msg = "[from] is being pulled out of the pool by [user]." + post_msg = "[user] pulls [from] out of the pool." + from.visible_message(pre_msg) + if(do_mob(user, from, 20)) + from.visible_message(post_msg) else return ..() -//Put people out of the water -/turf/open/floor/MouseDrop_T(mob/living/M, mob/living/user) - if(user.stat || user.lying || !Adjacent(user) || !M.Adjacent(user)|| !iscarbon(M)) - if(issilicon(M)) - var/turf/T = get_turf(M) - if(istype(T, /turf/open/pool)) - M.visible_message("[M] begins to float.", \ - "You start your emergency floaters.") - if(do_mob(user, M, 20)) - M.forceMove(src) - to_chat(user, "You get out of the pool.") - return ..() - if(!M.swimming) //can't put yourself up if you are not swimming - return ..() - if(user == M) - M.visible_message("[user] is getting out the pool", \ - "You start getting out of the pool.") - if(do_mob(user, M, 20)) - M.swimming = FALSE - M.forceMove(src) - to_chat(user, "You get out of the pool.") - else - user.visible_message("[M] is being pulled to the poolborder by [user].", \ - "You start getting [M] out of the pool.") - if(do_mob(user, M, 20)) - M.swimming = FALSE - M.forceMove(src) - to_chat(user, "You get [M] out of the pool.") - return - /turf/open/floor/CanPass(atom/movable/A, turf/T) if(!has_gravity(src)) return ..() @@ -123,13 +94,12 @@ to_chat(user, "You lower [M] in the pool.") return -//What happens if you don't drop in it like a good person would, you fool. -/turf/open/pool/Exited(atom/A, turf/NL) - ..() - if(!istype(NL, /turf/open/pool) && isliving(A)) - var/mob/living/M = A - M.swimming = FALSE - controller.mobs_in_pool.Remove(M) +/turf/open/pool/Exited(atom/A, atom/newLoc) + . = ..() + if(isliving(A)) + controller?.mobs_in_pool -= A + + /turf/open/pool/Entered(atom/A, turf/OL) ..() @@ -182,24 +152,25 @@ playsound(src, "water_wade", 20, TRUE) return -/turf/open/pool/attack_hand(mob/living/user) - if(user.stat == CONSCIOUS && !(user.lying || user.resting) && Adjacent(user) && user.swimming && filled && next_splash < world.time) //not drained, user alive and close, and user in water. - if(user.x == x && user.y == y) - return - else - playsound(src, 'sound/effects/watersplash.ogg', 8, TRUE, 1) - next_splash = world.time + 25 - var/obj/effect/splash/S = new /obj/effect/splash(user.loc) - animate(S, alpha = 0, time = 8) - S.Move(src) - QDEL_IN(S, 20) - for(var/mob/living/carbon/human/L in src) - if(!L.wear_mask && !user.stat) //Do not affect those underwater or dying. - L.emote("cough") - L.adjustStaminaLoss(4) //You need to give em a break! - /turf/open/pool/attackby(obj/item/W, mob/living/user) if(istype(W, /obj/item/mop) && filled) W.reagents.add_reagent("water", 5) to_chat(user, "You wet [W] in [src].") playsound(loc, 'sound/effects/slosh.ogg', 25, TRUE) + else + return ..() + +/turf/open/pool/attack_hand(mob/living/user) + . = ..() + if(.) + return + if((user.loc != src) && CHECK_MOBILITY(user, MOBILITY_USE) && Adjacent(user) && SEND_SIGNAL(user, COMSIG_IS_SWIMMING) && filled && (next_splash < world.time)) + playsound(src, 'sound/effects/watersplash.ogg', 8, TRUE, 1) + next_splash = world.time + 25 + var/obj/effect/splash/S = new(src) + animate(S, alpha = 0, time = 8) + QDEL_IN(S, 10) + for(var/mob/living/carbon/human/H in src) + if(!H.wear_mask && (H.stat == CONSCIOUS)) + H.emote("cough") + H.adjustStaminaLoss(4) From 5b6f95cb1ea692c54bf235b9080e7b042bc705b8 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:16:33 -0700 Subject: [PATCH 011/137] shuttle hijack --- code/__HELPERS/text.dm | 17 ++- code/datums/mind.dm | 8 ++ code/game/gamemodes/objective.dm | 6 +- .../antagonists/_common/antag_datum.dm | 14 +- .../antagonists/traitor/datum_traitor.dm | 2 +- code/modules/shuttle/emergency.dm | 134 +++++++++++++----- 6 files changed, 143 insertions(+), 38 deletions(-) diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index 60c43b0869..2e350808ea 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -793,4 +793,19 @@ GLOBAL_LIST_INIT(binary, list("0","1")) . = message #define is_alpha(X) ((text2ascii(X) <= 122) && (text2ascii(X) >= 97)) -#define is_digit(X) ((length(X) == 1) && (length(text2num(X)) == 1)) \ No newline at end of file +#define is_digit(X) ((length(X) == 1) && (length(text2num(X)) == 1)) + +/// Slightly expensive proc to scramble a message using equal probabilities of character replacement from a list. DOES NOT SUPPORT HTML! +/proc/scramble_message_replace_chars(original, replaceprob = 25, list/replacementchars = list("$", "@", "!", "#", "%", "^", "&", "*"), replace_letters_only = FALSE, replace_whitespace = FALSE) + var/list/out = list() + var/static/list/whitespace = list(" ", "\n", "\t") + for(var/i in 1 to length(original)) + var/char = original[i] + if(!replace_whitespace && (char in whitespace)) + out += char + continue + if(replace_letters_only && (!ISINRANGE(char, 65, 90) && !ISINRANGE(char, 97, 122))) + out += char + continue + out += prob(replaceprob)? pick(replacementchars) : char + return out.Join("") diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 464ea37d02..fd7ddd12c5 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -62,6 +62,8 @@ var/force_escaped = FALSE // Set by Into The Sunset command of the shuttle manipulator + var/hijack_speed = 0 //whether or not we can hackerman the shuttle and hijack it. 0 means you can't, 1 is normal speed hack, 2 is double, 0.5 is half, etc. + var/list/learned_recipes //List of learned recipe TYPES. /datum/mind/New(var/key) @@ -714,6 +716,12 @@ if(G) G.reenter_corpse() +/// Sets our can_hijack to the fastest speed our antag datums allow. +/datum/mind/proc/update_can_hijack() + can_hijack = 0 + for(var/datum/antagonist/A in antag_datums) + can_hijack = max(can_hijack, A.hijack_speed()) + return can_hijack /datum/mind/proc/has_objective(objective_type) for(var/datum/antagonist/A in antag_datums) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index f99fe5c3e4..a0cfab2bd9 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -293,9 +293,11 @@ GLOBAL_LIST_EMPTY(objectives) /datum/objective/hijack name = "hijack" - explanation_text = "Hijack the shuttle to ensure no loyalist Nanotrasen crew escape alive and out of custody." - team_explanation_text = "Hijack the shuttle to ensure no loyalist Nanotrasen crew escape alive and out of custody. Leave no team member behind." + explanation_text = "Hijack the emergency shuttle by hacking its navigational protocols through the control console." + team_explanation_text = "Hijack the emergency shuttle by hacking its navigational protocols through the control console. Leave no team member behind." martyr_compatible = 0 //Technically you won't get both anyway. + /// Overrides the hijack speed of any antagonist datum it is on ONLY, no other datums are impacted. + var/hijack_speed_override = 1 /datum/objective/hijack/check_completion() // Requires all owners to escape. if(SSshuttle.emergency.mode != SHUTTLE_ENDGAME) diff --git a/code/modules/antagonists/_common/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm index 1894d8c7ae..724b93a205 100644 --- a/code/modules/antagonists/_common/antag_datum.dm +++ b/code/modules/antagonists/_common/antag_datum.dm @@ -11,10 +11,11 @@ GLOBAL_LIST_EMPTY(antagonists) var/delete_on_mind_deletion = TRUE var/job_rank var/replace_banned = TRUE //Should replace jobbaned player with ghosts if granted. - var/list/objectives = list() + var/list/_objectives = list() var/antag_memory = ""//These will be removed with antag datum var/antag_moodlet //typepath of moodlet that the mob will gain with their status - var/can_hijack = HIJACK_NEUTRAL //If these antags are alone on shuttle hijack happens. + /// If above 0, this is the multiplier for the speed at which we hijack the shuttle. Do not directly read, use hijack_speed(). + var/hijack_speed = 0 //Antag panel properties var/show_in_antagpanel = TRUE //This will hide adding this antag type in antag panel, use only for internal subtypes that shouldn't be added directly but still show if possessed by mind @@ -72,6 +73,7 @@ GLOBAL_LIST_EMPTY(antagonists) give_antag_moodies() if(is_banned(owner.current) && replace_banned) replace_banned_player() + owner.update_can_hijack() /datum/antagonist/proc/is_banned(mob/M) if(!M) @@ -99,6 +101,7 @@ GLOBAL_LIST_EMPTY(antagonists) var/datum/team/team = get_team() if(team) team.remove_member(owner) + owner.update_can_hijack() qdel(src) /datum/antagonist/proc/greet() @@ -215,6 +218,13 @@ GLOBAL_LIST_EMPTY(antagonists) return antag_memory = new_memo +/// Gets how fast we can hijack the shuttle, return 0 for can not hijack. Defaults to hijack_speed var, override for custom stuff like buffing hijack speed for hijack objectives or something. +/datum/antagonist/proc/hijack_speed() + var/datum/objective/hijack/H = locate() in objectives + if(!isnull(H?.hijack_speed_override)) + return H.hijack_speed_override + return hijack_speed + //This one is created by admin tools for custom objectives /datum/antagonist/custom antagpanel_category = "Custom" diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index 595ce5bb90..17c88a33b9 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -13,7 +13,7 @@ var/should_give_codewords = TRUE var/should_equip = TRUE var/traitor_kind = TRAITOR_HUMAN //Set on initial assignment - can_hijack = HIJACK_HIJACKER + hijack_speed = 0.5 //10 seconds per hijack stage by default /datum/antagonist/traitor/on_gain() if(owner.current && isAI(owner.current)) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index c863e0e44a..1e9439a547 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -3,13 +3,38 @@ #define ENGINES_STARTED (SSshuttle.emergency.mode == SHUTTLE_IGNITING) #define IS_DOCKED (SSshuttle.emergency.mode == SHUTTLE_DOCKED || (ENGINES_STARTED)) +#define INTACT 0 +#define STAGE_1 1 +#define STAGE_2 2 +#define STAGE_3 3 +#define STAGE_4 4 +#define HIJACKED 5 + /obj/machinery/computer/emergency_shuttle name = "emergency shuttle console" desc = "For shuttle control." icon_screen = "shuttle" icon_keyboard = "tech_key" + obj_flags = INDESTRUCTIBLE var/auth_need = 3 var/list/authorized = list() + var/hijack_last_stage_increase = 0 + var/hijack_stage_time = 50 + var/hijack_stage_cooldown = 50 + var/hijack_flight_time_incrase = 300 + var/hijack_completion_flight_time_set = 100 //How long in deciseconds to set shuttle's timer after hijack is done. + var/hijack_hacking = FALSE + var/hijack_announce = TRUE + +/obj/machinery/computer/emergency_shuttle/examine(mob/user) + . = ..() + if(hijack_announce) + . += "Security systems present on console. Any unauthorized tampering will result in an emergency announcement." + if(user?.mind.hijack_speed) + . += "Alt click on this to attempt to hijack the shuttle. This will take multiple tries (current: stage [SSshuttle.emergency.hijack_status]/[HIJACKED])." + . += "It will take you [(hijack_stage_time * user.mind.hijack_speed) / 10] seconds to reprogram a stage of the shuttle's navigational firmware, and the console will undergo automated timed lockout for [hijack_stage_cooldown/10] seconds after each stage." + if(hijack_announce) + . += "It is probably best to fortify your position as to be uninterrupted during the attempt, given the automatic announcements.." /obj/machinery/computer/emergency_shuttle/attackby(obj/item/I, mob/user,params) if(istype(I, /obj/item/card/id)) @@ -133,6 +158,73 @@ [TIME_LEFT] seconds", system_error, alert=TRUE) . = TRUE +/obj/machinery/computer/emergency_shuttle/proc/increase_hijack_stage() + var/obj/docking_port/mobile/emergency/shuttle = SSshuttle.emergency + shuttle.hijack_status++ + announce_hijack_stage() + hijack_last_stage_increase = world.time + say("Navigational protocol error! Rebooting systems.") + if(shuttle.mode == SHUTTLE_ESCAPE) + if(shuttle.hijack_status == HIJACKED) + shuttle.setTimer(hijack_completion_flight_time_set) + else + shuttle.setTimer(shuttle.timeLeft(1) + hijack_flight_time_increase) //give the guy more time to hijack if it's already in flight. + return shuttle.hijack_status + +/obj/machinery/computer/emergency_shuttle/AltClick(user) + attempt_hijack_stage(user) + +/obj/machinery/computer/emergency_shuttle/proc/attempt_hijack_stage(mob/living/user) + if(!user.CanReach(src)) + return + if(!user?.mind?,hijack_speed) + to_chat(user, "You manage to open a user-mode shell on [src], and hundreds of lines of debugging output fly through your vision. It is probably best to leave this alone.You [SSshuttle.emergency.hijack_status == INTACT? "begin" : "continue"] to override [src]'s navigational protocols.") + say("Software override initiated.") + . = FALSE + if(do_after(user, hijack_stage_time * user.mind.hijack_speed, target = src)) + increase_hijack_stage() + . = TRUE + to_chat(user, "You reprogram some of [src]'s programming, putting it on timeout for [hijack_stage_cooldown/10] seconds.") + hijack_hacking = FALSE + +/obj/machinery/computer/emergency_shuttle/announce_hijack_stage() + var/msg + var/replaceprob + switch(SSshuttle.emergency.hijack_status) + if(INTACT) + return + if(STAGE_1) + var/datum/species/S = new + msg = "AUTHENTICATING - FAIL. AUTHENTICATING - FAIL. AUTHENTICATING - FAI###### Welcome, technician [S.random_name(pick(MALE, FEMALE))]." + replaceprob = 10 + qdel(S) + if(STAGE_2) + msg = "Warning: Navigational route fails \"IS_AUTHORIZED\". Please try againNN[scramble_message_replace_chars("againagainagainagainagain", 70)]." + replaceprob = 20 + if(STAGE_3) + var/hex = "" + for(var/i in 1 to 8) + hex += num2hex(rand(1,16)) + msg = "CRC mismatch at 0x[hex] in calculated route buffer. Full reset initiated of FTL_NAVIGATION_SERVICES. Memory decrypted for automatic repair." + replaceprob = 30 + if(STAGE_4) + msg = "~ACS_directive module_load(cyberdyne.exploit.nanotrasen.shuttlenav)... NT key mismatch. Confirm load? Y...###Reboot complete. $SET transponder_state = 0; System link initiated with connected engines..." + replaceprob = 35 + if(HIJACKED) + msg = "SYSTEM OVERRIDE - Resetting course to \[[scramble_message_replace_chars("###########", 100))]\] \ + ([scramble_message_replace_chars("#######", 100))]/[scramble_message_replace_chars("#######", 100))]/[scramble_message_replace_chars("#######", 100))]) \ + {AUTH - ROOT (uid: 0)}.[SSshuttle.emergency.mode == SHUTTLE_ESCAPE? "Diverting from existing route - Bluespace exit in [hijack_completion_flight_time_set/10] seconds." : ""]" + replaceprob = 25 + minor_announce(scramble_message_replace_chars(msg, replaceprob = replaceprob), "Emergency Shuttle", TRUE) + /obj/machinery/computer/emergency_shuttle/emag_act(mob/user) . = ..() @@ -185,6 +277,7 @@ dir = EAST port_direction = WEST var/sound_played = 0 //If the launch sound has been sent to all players on the shuttle itself + var/hijack_status = INTACT /obj/docking_port/mobile/emergency/canDock(obj/docking_port/stationary/S) return SHUTTLE_CAN_DOCK //If the emergency shuttle can't move, the whole game breaks, so it will force itself to land even if it has to crush a few departments in the process @@ -250,37 +343,7 @@ priority_announce("The emergency shuttle has been recalled.[SSshuttle.emergencyLastCallLoc ? " Recall signal traced. Results can be viewed on any communications console." : "" ]", null, "shuttlerecalled", "Priority") /obj/docking_port/mobile/emergency/proc/is_hijacked() - var/has_people = FALSE - var/hijacker_present = FALSE - for(var/mob/living/player in GLOB.player_list) - if(player.mind) - if(player.stat != DEAD) - if(issilicon(player)) //Borgs are technically dead anyways - continue - if(isanimal(player)) //animals don't count - continue - if(isbrain(player)) //also technically dead - continue - if(shuttle_areas[get_area(player)]) - has_people = TRUE - var/location = get_turf(player.mind.current) - //Non-antag present. Can't hijack. - if(!(player.mind.has_antag_datum(/datum/antagonist)) && !istype(location, /turf/open/floor/plasteel/shuttle/red) && !istype(location, /turf/open/floor/mineral/plastitanium/red/brig)) - return FALSE - //Antag present, doesn't stop but let's see if we actually want to hijack - var/prevent = FALSE - for(var/datum/antagonist/A in player.mind.antag_datums) - if(A.can_hijack == HIJACK_HIJACKER) - hijacker_present = TRUE - prevent = FALSE - break //If we have both prevent and hijacker antags assume we want to hijack. - else if(A.can_hijack == HIJACK_PREVENT) - prevent = TRUE - if(prevent) - return FALSE - - - return has_people && hijacker_present + return hijack_status == HIJACKED /obj/docking_port/mobile/emergency/proc/ShuttleDBStuff() set waitfor = FALSE @@ -422,7 +485,7 @@ mode = SHUTTLE_ESCAPE launch_status = ENDGAME_LAUNCHED setTimer(SSshuttle.emergencyEscapeTime) - priority_announce("The Emergency Shuttle preparing for direct jump. Estimate [timeLeft(600)] minutes until the shuttle docks at Central Command.", null, null, "Priority") + priority_announce("The Emergency Shuttle is preparing for direct jump. Estimate [timeLeft(600)] minutes until the shuttle docks at Central Command.", null, null, "Priority") /obj/docking_port/mobile/pod @@ -567,3 +630,10 @@ #undef ENGINES_START_TIME #undef ENGINES_STARTED #undef IS_DOCKED + +#undef INTACT +#undef STAGE_1 +#undef STAGE_2 +#undef STAGE_3 +#undef STAGE_4 +#undef HIJACKED From 9ef3879e53e7211ddd86047c08662c820a418d12 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:17:59 -0700 Subject: [PATCH 012/137] fix --- code/modules/shuttle/emergency.dm | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 1e9439a547..a24cb3be7a 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -30,7 +30,7 @@ . = ..() if(hijack_announce) . += "Security systems present on console. Any unauthorized tampering will result in an emergency announcement." - if(user?.mind.hijack_speed) + if(user?.mind?.hijack_speed) . += "Alt click on this to attempt to hijack the shuttle. This will take multiple tries (current: stage [SSshuttle.emergency.hijack_status]/[HIJACKED])." . += "It will take you [(hijack_stage_time * user.mind.hijack_speed) / 10] seconds to reprogram a stage of the shuttle's navigational firmware, and the console will undergo automated timed lockout for [hijack_stage_cooldown/10] seconds after each stage." if(hijack_announce) @@ -161,7 +161,8 @@ /obj/machinery/computer/emergency_shuttle/proc/increase_hijack_stage() var/obj/docking_port/mobile/emergency/shuttle = SSshuttle.emergency shuttle.hijack_status++ - announce_hijack_stage() + if(hijack_announce) + announce_hijack_stage() hijack_last_stage_increase = world.time say("Navigational protocol error! Rebooting systems.") if(shuttle.mode == SHUTTLE_ESCAPE) @@ -177,10 +178,13 @@ /obj/machinery/computer/emergency_shuttle/proc/attempt_hijack_stage(mob/living/user) if(!user.CanReach(src)) return - if(!user?.mind?,hijack_speed) + if(!user?.mind?.hijack_speed) to_chat(user, "You manage to open a user-mode shell on [src], and hundreds of lines of debugging output fly through your vision. It is probably best to leave this alone.= HIJACKED) + to_chat(user, "The emergency shuttle is already loaded with a corrupt navigational payload. What more do you want from it?") return if(hijack_last_stage_increase <= world.time + hijack_stage_cooldown) say("Error - Catastrophic software error detected. Input is currently on timeout.") From a8628cee333049ac726cc64929b2cf7670d94c8c Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:32:57 -0700 Subject: [PATCH 013/137] udpates --- code/game/gamemodes/objective.dm | 4 ++-- code/modules/antagonists/traitor/datum_traitor.dm | 3 +++ code/modules/shuttle/emergency.dm | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index a0cfab2bd9..397c58152f 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -293,8 +293,8 @@ GLOBAL_LIST_EMPTY(objectives) /datum/objective/hijack name = "hijack" - explanation_text = "Hijack the emergency shuttle by hacking its navigational protocols through the control console." - team_explanation_text = "Hijack the emergency shuttle by hacking its navigational protocols through the control console. Leave no team member behind." + explanation_text = "Hijack the emergency shuttle by hacking its navigational protocols through the control console (alt click emergency shuttle console)." + team_explanation_text = "Hijack the emergency shuttle by hacking its navigational protocols through the control console (alt click emergency shuttle console). Leave no team member behind." martyr_compatible = 0 //Technically you won't get both anyway. /// Overrides the hijack speed of any antagonist datum it is on ONLY, no other datums are impacted. var/hijack_speed_override = 1 diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index 17c88a33b9..f9b02ac09e 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -60,11 +60,14 @@ message = GLOB.syndicate_code_response_regex.Replace(message, "$1") hearing_args[HEARING_RAW_MESSAGE] = message +// needs to be refactored to base /datum/antagonist sometime.. /datum/antagonist/traitor/proc/add_objective(datum/objective/O) objectives += O + owner?.update_hijack_speed() /datum/antagonist/traitor/proc/remove_objective(datum/objective/O) objectives -= O + owner?.update_hijack_speed() /datum/antagonist/traitor/proc/forge_traitor_objectives() switch(traitor_kind) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index a24cb3be7a..8bd3912435 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -223,8 +223,8 @@ msg = "~ACS_directive module_load(cyberdyne.exploit.nanotrasen.shuttlenav)... NT key mismatch. Confirm load? Y...###Reboot complete. $SET transponder_state = 0; System link initiated with connected engines..." replaceprob = 35 if(HIJACKED) - msg = "SYSTEM OVERRIDE - Resetting course to \[[scramble_message_replace_chars("###########", 100))]\] \ - ([scramble_message_replace_chars("#######", 100))]/[scramble_message_replace_chars("#######", 100))]/[scramble_message_replace_chars("#######", 100))]) \ + msg = "SYSTEM OVERRIDE - Resetting course to \[[scramble_message_replace_chars("###########", 100)]\] \ + ([scramble_message_replace_chars("#######", 100)]/[scramble_message_replace_chars("#######", 100)]/[scramble_message_replace_chars("#######", 100)]) \ {AUTH - ROOT (uid: 0)}.[SSshuttle.emergency.mode == SHUTTLE_ESCAPE? "Diverting from existing route - Bluespace exit in [hijack_completion_flight_time_set/10] seconds." : ""]" replaceprob = 25 minor_announce(scramble_message_replace_chars(msg, replaceprob = replaceprob), "Emergency Shuttle", TRUE) From ff98fe7bf50a8bc22e8a133ad5596050dc5e1f02 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:35:21 -0700 Subject: [PATCH 014/137] update --- code/datums/mind.dm | 2 +- code/modules/antagonists/_common/antag_datum.dm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index fd7ddd12c5..d7c478c586 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -717,7 +717,7 @@ G.reenter_corpse() /// Sets our can_hijack to the fastest speed our antag datums allow. -/datum/mind/proc/update_can_hijack() +/datum/mind/proc/update_hijack_speed() can_hijack = 0 for(var/datum/antagonist/A in antag_datums) can_hijack = max(can_hijack, A.hijack_speed()) diff --git a/code/modules/antagonists/_common/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm index 724b93a205..9f18ca9bea 100644 --- a/code/modules/antagonists/_common/antag_datum.dm +++ b/code/modules/antagonists/_common/antag_datum.dm @@ -11,7 +11,7 @@ GLOBAL_LIST_EMPTY(antagonists) var/delete_on_mind_deletion = TRUE var/job_rank var/replace_banned = TRUE //Should replace jobbaned player with ghosts if granted. - var/list/_objectives = list() + var/list/objectives = list() var/antag_memory = ""//These will be removed with antag datum var/antag_moodlet //typepath of moodlet that the mob will gain with their status /// If above 0, this is the multiplier for the speed at which we hijack the shuttle. Do not directly read, use hijack_speed(). @@ -73,7 +73,7 @@ GLOBAL_LIST_EMPTY(antagonists) give_antag_moodies() if(is_banned(owner.current) && replace_banned) replace_banned_player() - owner.update_can_hijack() + owner.update_hijack_speed() /datum/antagonist/proc/is_banned(mob/M) if(!M) @@ -101,7 +101,7 @@ GLOBAL_LIST_EMPTY(antagonists) var/datum/team/team = get_team() if(team) team.remove_member(owner) - owner.update_can_hijack() + owner.update_hijack_speed() qdel(src) /datum/antagonist/proc/greet() From ccb5d32ab22bf23bb6117aa193e4f4bf806d894d Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:38:09 -0700 Subject: [PATCH 015/137] varnames --- code/datums/mind.dm | 6 +++--- code/modules/antagonists/brother/brother.dm | 1 - code/modules/antagonists/ert/ert.dm | 1 - code/modules/antagonists/highlander/highlander.dm | 2 +- code/modules/antagonists/ninja/ninja.dm | 7 ------- code/modules/antagonists/nukeop/nukeop.dm | 1 - code/modules/antagonists/wizard/wizard.dm | 1 - code/modules/shuttle/emergency.dm | 2 +- 8 files changed, 5 insertions(+), 16 deletions(-) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index d7c478c586..9ba56b2ffe 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -718,10 +718,10 @@ /// Sets our can_hijack to the fastest speed our antag datums allow. /datum/mind/proc/update_hijack_speed() - can_hijack = 0 + hijack_speed = 0 for(var/datum/antagonist/A in antag_datums) - can_hijack = max(can_hijack, A.hijack_speed()) - return can_hijack + hijack_speed = max(hijack_speed, A.hijack_speed()) + return hijack_speed /datum/mind/proc/has_objective(objective_type) for(var/datum/antagonist/A in antag_datums) diff --git a/code/modules/antagonists/brother/brother.dm b/code/modules/antagonists/brother/brother.dm index 7c589bb3ab..7097617afe 100644 --- a/code/modules/antagonists/brother/brother.dm +++ b/code/modules/antagonists/brother/brother.dm @@ -5,7 +5,6 @@ var/special_role = ROLE_BROTHER var/datum/team/brother_team/team antag_moodlet = /datum/mood_event/focused - can_hijack = HIJACK_HIJACKER /datum/antagonist/brother/create_team(datum/team/brother_team/new_team) if(!new_team) diff --git a/code/modules/antagonists/ert/ert.dm b/code/modules/antagonists/ert/ert.dm index 0fb41cabc8..5c878bcc55 100644 --- a/code/modules/antagonists/ert/ert.dm +++ b/code/modules/antagonists/ert/ert.dm @@ -12,7 +12,6 @@ var/list/name_source show_in_antagpanel = FALSE antag_moodlet = /datum/mood_event/focused - can_hijack = HIJACK_PREVENT /datum/antagonist/ert/on_gain() update_name() diff --git a/code/modules/antagonists/highlander/highlander.dm b/code/modules/antagonists/highlander/highlander.dm index 49635356ac..eccf7e3c60 100644 --- a/code/modules/antagonists/highlander/highlander.dm +++ b/code/modules/antagonists/highlander/highlander.dm @@ -3,7 +3,7 @@ var/obj/item/claymore/highlander/sword show_in_antagpanel = FALSE show_name_in_check_antagonists = TRUE - can_hijack = HIJACK_HIJACKER + hijack_speed = 2 //if you kill everyone and actually haev a hand to hijack with, you win?? /datum/antagonist/highlander/apply_innate_effects(mob/living/mob_override) var/mob/living/L = owner.current || mob_override diff --git a/code/modules/antagonists/ninja/ninja.dm b/code/modules/antagonists/ninja/ninja.dm index 52e13bdc69..9094c44ba4 100644 --- a/code/modules/antagonists/ninja/ninja.dm +++ b/code/modules/antagonists/ninja/ninja.dm @@ -8,11 +8,6 @@ var/give_objectives = TRUE var/give_equipment = TRUE -/datum/antagonist/ninja/New() - if(helping_station) - can_hijack = HIJACK_PREVENT - . = ..() - /datum/antagonist/ninja/apply_innate_effects(mob/living/mob_override) var/mob/living/M = mob_override || owner.current update_ninja_icons_added(M) @@ -141,8 +136,6 @@ adj = "objectiveless" else return - if(helping_station) - can_hijack = HIJACK_PREVENT new_owner.assigned_role = ROLE_NINJA new_owner.special_role = ROLE_NINJA new_owner.add_antag_datum(src) diff --git a/code/modules/antagonists/nukeop/nukeop.dm b/code/modules/antagonists/nukeop/nukeop.dm index d343951d53..4a63ba65bd 100644 --- a/code/modules/antagonists/nukeop/nukeop.dm +++ b/code/modules/antagonists/nukeop/nukeop.dm @@ -8,7 +8,6 @@ var/always_new_team = FALSE //If not assigned a team by default ops will try to join existing ones, set this to TRUE to always create new team. var/send_to_spawnpoint = TRUE //Should the user be moved to default spawnpoint. var/nukeop_outfit = /datum/outfit/syndicate - can_hijack = HIJACK_HIJACKER //Alternative way to wipe out the station. /datum/antagonist/nukeop/proc/update_synd_icons_added(mob/living/M) var/datum/atom_hud/antag/opshud = GLOB.huds[ANTAG_HUD_OPS] diff --git a/code/modules/antagonists/wizard/wizard.dm b/code/modules/antagonists/wizard/wizard.dm index a88eb1e42a..6dfcf88fcc 100644 --- a/code/modules/antagonists/wizard/wizard.dm +++ b/code/modules/antagonists/wizard/wizard.dm @@ -12,7 +12,6 @@ var/move_to_lair = TRUE var/outfit_type = /datum/outfit/wizard var/wiz_age = WIZARD_AGE_MIN /* Wizards by nature cannot be too young. */ - can_hijack = HIJACK_HIJACKER /datum/antagonist/wizard/on_gain() register() diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 8bd3912435..653aefacc2 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -199,7 +199,7 @@ to_chat(user, "You reprogram some of [src]'s programming, putting it on timeout for [hijack_stage_cooldown/10] seconds.") hijack_hacking = FALSE -/obj/machinery/computer/emergency_shuttle/announce_hijack_stage() +/obj/machinery/computer/emergency_shuttle/proc/announce_hijack_stage() var/msg var/replaceprob switch(SSshuttle.emergency.hijack_status) From a28ebcc041e77f44efeaac5386c57dde78b426cf Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:38:53 -0700 Subject: [PATCH 016/137] variables --- code/modules/antagonists/official/official.dm | 1 - code/modules/antagonists/wishgranter/wishgranter.dm | 1 - 2 files changed, 2 deletions(-) diff --git a/code/modules/antagonists/official/official.dm b/code/modules/antagonists/official/official.dm index 9165a99d42..1d340253c4 100644 --- a/code/modules/antagonists/official/official.dm +++ b/code/modules/antagonists/official/official.dm @@ -4,7 +4,6 @@ show_in_antagpanel = FALSE var/datum/objective/mission var/datum/team/ert/ert_team - can_hijack = HIJACK_PREVENT /datum/antagonist/official/greet() to_chat(owner, "You are a CentCom Official.") diff --git a/code/modules/antagonists/wishgranter/wishgranter.dm b/code/modules/antagonists/wishgranter/wishgranter.dm index 21cab26d1e..d22d1b5e39 100644 --- a/code/modules/antagonists/wishgranter/wishgranter.dm +++ b/code/modules/antagonists/wishgranter/wishgranter.dm @@ -2,7 +2,6 @@ name = "Wishgranter Avatar" show_in_antagpanel = FALSE show_name_in_check_antagonists = TRUE - can_hijack = HIJACK_HIJACKER /datum/antagonist/wishgranter/proc/forge_objectives() var/datum/objective/hijack/hijack = new From c4475b1dda8fae1062375b9ae1fe6048657a8511 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 05:39:16 -0700 Subject: [PATCH 017/137] variables --- code/modules/shuttle/emergency.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 653aefacc2..299b1982fe 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -21,7 +21,7 @@ var/hijack_last_stage_increase = 0 var/hijack_stage_time = 50 var/hijack_stage_cooldown = 50 - var/hijack_flight_time_incrase = 300 + var/hijack_flight_time_increase = 300 var/hijack_completion_flight_time_set = 100 //How long in deciseconds to set shuttle's timer after hijack is done. var/hijack_hacking = FALSE var/hijack_announce = TRUE From cd0fc537b6a582928eee389af708ef46327845a4 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 16:03:56 -0700 Subject: [PATCH 018/137] lgoic --- code/datums/elements/swimming.dm | 1 + code/modules/pool/pool_main.dm | 74 ++++++++++++++++---------------- 2 files changed, 38 insertions(+), 37 deletions(-) diff --git a/code/datums/elements/swimming.dm b/code/datums/elements/swimming.dm index 364da7b667..2349a1e50f 100644 --- a/code/datums/elements/swimming.dm +++ b/code/datums/elements/swimming.dm @@ -13,6 +13,7 @@ /datum/element/swimming/Detach(datum/target) . = ..() UnregisterSignal(target, COMSIG_IS_SWIMMING) + UnregisterSignal(target, COMSIG_MOVABLE_MOVED) /datum/element/swimming/proc/is_swimming() return IS_SWIMMING diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 61e4517bc3..eb98a2f4fb 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -37,8 +37,10 @@ icon_state = "top" layer = BELOW_MOB_LAYER +// Mousedrop hook to normal turfs to get out of pools. /turf/open/MouseDrop_T(atom/from, mob/user) - if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && CHECK_MOBILITY(user, MOBILITY_USE)) + // I could make this /open/floor and not have the !istype but ehh - kev + if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && CHECK_MOBILITY(user, MOBILITY_USE) && !istype(src, /turf/open/pool)) var/mob/living/L = from //The element only exists if you're on water and a living mob, so let's skip those checks. var/pre_msg @@ -52,53 +54,34 @@ from.visible_message(pre_msg) if(do_mob(user, from, 20)) from.visible_message(post_msg) + from.forceMove(src) else return ..() -/turf/open/floor/CanPass(atom/movable/A, turf/T) - if(!has_gravity(src)) +// Exit check +/turf/open/pool/Exit(atom/movable/AM, atom/newloc) + if(!AM.has_gravity(src)) return ..() - else if(istype(A, /mob/living) || istype(A, /obj/structure)) //This check ensures that only specific types of objects cannot pass into the water. Items will be able to get tossed out. - if(istype(A, /mob/living/simple_animal) || istype(A, /mob/living/carbon/monkey)) - return ..() - if (istype(A, /obj/structure) && istype(A.pulledby, /mob/living/carbon/human)) - return ..() - if(istype(get_turf(A), /turf/open/pool) && !istype(T, /turf/open/pool)) //!(locate(/obj/structure/pool/ladder) in get_turf(A).loc) - return FALSE + if(isliving(AM) || istype(AM, /obj/structure)) + if(AM.throwing) + return ..() //WHEEEEEEEEEEE + if(istype(AM, /obj/structure) && isliving(AM.pulledby)) + return ..() //people pulling stuff out of pool + if(!ishuman(AM)) + return ..() //human weak, monkey (and anyone else) ook ook eek eek strong + return istype(newloc, type) return ..() -//put people in water, including you -/turf/open/pool/MouseDrop_T(mob/living/M, mob/living/user) - if(!has_gravity(src)) - return - if(user.stat || user.lying || !Adjacent(user) || !M.Adjacent(user)|| !iscarbon(M)) - return - if(!iscarbon(user)) // no silicons or drones in mechas. - return - if(M.swimming) //can't lower yourself again - return - else - if(user == M) - M.visible_message("[user] is descending in the pool", \ - "You start lowering yourself in the pool.") - if(do_mob(user, M, 20)) - M.swimming = TRUE - M.forceMove(src) - to_chat(user, "You lower yourself in the pool.") - else - user.visible_message("[M] is being put in the pool by [user].", \ - "You start lowering [M] in the pool.") - if(do_mob(user, M, 20)) - M.swimming = TRUE - M.forceMove(src) - to_chat(user, "You lower [M] in the pool.") - return - +// Exited logic /turf/open/pool/Exited(atom/A, atom/newLoc) . = ..() if(isliving(A)) controller?.mobs_in_pool -= A +// Entered logic +/turf/open/pool/Entered(atom/movable/AM, atom/oldloc) + if(!AM.has_gravity(src)) + return ..() /turf/open/pool/Entered(atom/A, turf/OL) @@ -152,6 +135,23 @@ playsound(src, "water_wade", 20, TRUE) return + + +/turf/open/pool/MouseDrop_T(atom/from, mob/user) + . = ..() + if(!isliving(from)) + return + if(user.stat || user.lying || !Adjacent(user) || !from.Adjacent(user) || !iscarbon(user) || !victim.has_gravity(src) || SEND_SIGNAL(victim, COMSIG_IS_SWIMMING)) + return + var/mob/living/victim = from + var/victimname = victim == user? "themselves" : "[victim]" + var/starttext = victim == user? "[user] is descending into [src]." : "[user] is lowering [victim] into [src]." + user.visible_message("[starttext]") + if(do_mob(user, victim, 20)) + user.visible_message("[user] lowers [victimname] into [src].") + victim.AddElement(/datum/element/swimming) //make sure they have it so they don't fall/whatever + victim.forceMove(src) + /turf/open/pool/attackby(obj/item/W, mob/living/user) if(istype(W, /obj/item/mop) && filled) W.reagents.add_reagent("water", 5) From 70c9a9a25f99b349005bc29d6d8fadc59acd6e08 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 22 Jan 2020 16:36:44 -0700 Subject: [PATCH 019/137] logic --- code/__DEFINES/move_force.dm | 2 +- code/modules/pool/pool_controller.dm | 1 + code/modules/pool/pool_drain.dm | 156 +++++++++++++++------------ code/modules/pool/pool_main.dm | 27 ++--- tgstation.dme | 1 + 5 files changed, 98 insertions(+), 89 deletions(-) diff --git a/code/__DEFINES/move_force.dm b/code/__DEFINES/move_force.dm index ec31388c72..1f8819b0c8 100644 --- a/code/__DEFINES/move_force.dm +++ b/code/__DEFINES/move_force.dm @@ -17,4 +17,4 @@ #define MOVE_FORCE_NORMAL MOVE_FORCE_DEFAULT #define MOVE_FORCE_WEAK (MOVE_FORCE_DEFAULT / 2) #define MOVE_FORCE_VERY_WEAK ((MOVE_FORCE_DEFAULT / MOVE_FORCE_CRUSH_RATIO) + 1) -#define MOVE_FORCE_EXTREMELY_WEAK (MOVE_FORCE_DEFAULT / (MOVE_FORCE_CRUSH_RATIO * 3)) \ No newline at end of file +#define MOVE_FORCE_EXTREMELY_WEAK (MOVE_FORCE_DEFAULT / (MOVE_FORCE_CRUSH_RATIO * 3)) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index f3046eee1f..786fd2a5f5 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -12,6 +12,7 @@ density = TRUE use_power = TRUE idle_power_usage = 75 + resistance_flags = INDESTRUCTIBLE var/list/linkedturfs //List contains all of the linked pool turfs to this controller, assignment happens on initialize var/list/mobs_in_pool = list()//List contains all the mobs currently in the pool. var/temperature = POOL_NORMAL //1-5 Frigid Cool Normal Warm Scalding diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 7739b7d0c1..51f340a69c 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -3,116 +3,132 @@ icon_state = "drain" desc = "A suction system to remove the contents of the pool, and sometimes small objects. Do not insert fingers." anchored = TRUE + /// Active/on? var/active = FALSE - var/status = FALSE //1 is drained, 0 is full. - var/srange = 6 - var/timer = 0 + /// Filling or draining + var/filling = FALSE + /// Drain item suction range + var/item_suction_range = 2 + /// Fill mode knock away range + var/fill_push_range = 6 + /// Drain mode suction range + var/drain_suck_range = 6 + /// Parent controller + var/obj/machinery/pool/controller/pool_controller + /// Cycles left for fill/drain while active + var/cycles_left = 0 + /// Mobs we are swirling around + var/list/whirling_mobs + var/cooldown - var/obj/machinery/pool/controller/pool_controller = null /obj/machinery/pool/drain/Initialize() START_PROCESSING(SSprocessing, src) - . = ..() + whirling_mobs = list() + return ..() /obj/machinery/pool/drain/Destroy() pool_controller.linked_drain = null pool_controller = null + whirling_mobs = null return ..() +// This should probably start using move force sometime in the future but I'm lazy. /obj/machinery/pool/drain/process() - if(!status) //don't pool/drain an empty pool. - for(var/obj/item/absorbo in orange(1,src)) - if(absorbo.w_class == WEIGHT_CLASS_TINY) - step_towards(absorbo, src) - var/dist = get_dist(src, absorbo) - if(dist == 0) - absorbo.forceMove(pool_controller.linked_filter) + if(!filling) + for(var/obj/item/I in range(min(item_suction_range, 10), src)) + if(!I.anchored && (I.w_class == WEIGHT_CLASS_SMALL)) + step_towards(I, src) + if((I.w_class == WEIGHT_CLASS_TINY) && (get_dist(I, src) == 0)) + I.forceMove(pool_controller.linked_filter) if(active) - if(status) //if filling up, get back to normal position - if(timer > 0) - playsound(src, 'sound/effects/fillingwatter.ogg', 100, TRUE) - timer-- - for(var/obj/whirlo in orange(1,src)) - if(!whirlo.anchored ) - step_away(whirlo,src) - for(var/mob/living/carbon/human/whirlm in orange(2,src)) - step_away(whirlm,src) - else if(!timer) - for(var/turf/open/pool/undrained in range(5,src)) - undrained.filled = TRUE - undrained.update_icon() - for(var/obj/effect/waterspout/undrained3 in range(1,src)) - qdel(undrained3) + if(filling) + if(timer-- > 0) + playsound(src, 'sound/efefcts/fillingwatter.ogg', 100, TRUE) + for(var/obj/O in orange(min(fill_push_range, 10), src)) + if(!O.anchored) + step_away(O, src) + for(var/mob/M in orange(min(fill_push_range, 10), src)) //compiler fastpath apparently? + if(!M.anchored && isliving(M)) + step_away(M, src) + else + for(var/turf/open/pool/P in controller.linked_turfs) + P.filled = TRUE + P.update_ion() + for(var/obj/effect/waterspout/S in range(1, src)) + qdel(S) pool_controller.drained = FALSE if(pool_controller.bloody < 1000) pool_controller.bloody /= 2 - if(pool_controller.bloody > 1000) + else pool_controller.bloody /= 4 pool_controller.changecolor() - status = FALSE + filling = FALSE active = FALSE - return - if(!status) //if draining, change everything. - if(timer > 0) + else + if(timer-- > 0) playsound(src, 'sound/effects/pooldrain.ogg', 100, TRUE) playsound(src, "water_wade", 60, TRUE) - timer-- - for(var/obj/whirlo in orange(2,src)) - if(!whirlo.anchored ) - step_towards(whirlo,src) - for(var/mob/living/carbon/human/whirlm in orange(2,src)) - step_towards(whirlm,src) - if(prob(20)) - whirlm.Knockdown(40) - for(var/i in list(1,2,4,8,4,2,1)) //swirl! - whirlm.dir = i - sleep(1) - if(whirlm.forceMove(loc)) - if(whirlm.health <= -50) //If very damaged, gib. - whirlm.gib() - if(whirlm.stat != CONSCIOUS || whirlm.lying) // If - whirlm.adjustBruteLoss(5) + for(var/obj/O in orange(min(drain_suck_range, 10), src)) + if(!O.anchored) + step_towards(O, src) + for(var/mob/M in orange(min(drain_suck_range, 10), src)) + if(isliving(M) && !M.anchored) + step_towards(M, src) + whirl_mob(M) + if(ishuman(M)) + var/mob/living/carbon/human/H = M playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) - to_chat(whirlm, "You're caught in the drain!") - continue - else - playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) - whirlm.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs - to_chat(whirlm, "Your legs are caught in the drain!") - continue - - else if(!timer) - for(var/turf/open/pool/drained in range(5,src)) - drained.filled = FALSE - drained.update_icon() - for(var/obj/effect/whirlpool/drained3 in range(1,src)) - qdel(drained3) - for(var/obj/machinery/pool/controller/drained4 in range(5,src)) - drained4.drained = TRUE - drained4.mistoff() - status = TRUE + if(H.lying) //down for any reason + H.adjustBruteLoss(5) + to_chat(whirlm, "You're caught in the drain!") + else + whirlm.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs + to_chat(whirlm, "Your legs are caught in the drain!") + else + for(var/turf/open/pool/P in controller.linked_turfs)) + P.filled = FALSE + P.update_icon() + for(var/obj/efefct/whirlpool/W in range(1, src)) + qdel(W) + linked_controller.drained = TRUE + linked_controller.mistoff() active = FALSE + filling = TRUE + +/// dangerous proc don't fuck with, admins +/obj/machinery/pool/drain/proc/whirl_mob(mob/living/L, duration = 8, delay = 1) + set waitfor = FALSE + if(whirling_mobs[L]) + return + whirling_mobs[L] = TRUE + for(var/i in 1 to min(duration, 100)) + L.setDir(turn(L.dir, 90)) + sleep(delay) + whirling_mobs -= L /obj/machinery/pool/filter name = "Filter" icon_state = "filter" desc = "The part of the pool where all the IDs, ATV keys, and pens, and other dangerous things get trapped." - var/obj/machinery/pool/controller/pool_controller = null + var/obj/machinery/pool/controller/pool_controller /obj/machinery/pool/filter/Destroy() pool_controller.linked_filter = null pool_controller = null return ..() -/obj/machinery/pool/filter/emag_act(user as mob) +/obj/machinery/pool/filter/emag_act(mob/living/user) + . = ..() if(!(obj_flags & EMAGGED)) to_chat(user, "You disable the [src]'s shark filter! Run!") obj_flags |= EMAGGED do_sparks(5, TRUE, src) icon_state = "filter_b" addtimer(CALLBACK(src, /obj/machinery/pool/filter/proc/spawn_shark), 50) - log_game("[key_name(user)] emagged the pool filter and spawned a shark") - message_admins("[key_name_admin(user)] emagged the pool filter and spawned a shark") + var/msg = "[key_name(user)] emagged the pool filter and spawned a shark" + log_game(msg) + message_admins(msg) /obj/machinery/pool/filter/proc/spawn_shark() if(prob(50)) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index eb98a2f4fb..abc7611b3f 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -82,21 +82,15 @@ /turf/open/pool/Entered(atom/movable/AM, atom/oldloc) if(!AM.has_gravity(src)) return ..() - - -/turf/open/pool/Entered(atom/A, turf/OL) - ..() - if(isliving(A)) - var/mob/living/M = A - if(!M.mob_has_gravity()) - return - if(!M.swimming) - M.swimming = TRUE - controller.mobs_in_pool.Add(M) - if(locate(/obj/structure/pool/ladder) in M.loc) + if(isliving(AM)) + var/mob/living/victim = AM + if(!SEND_SIGNAL(victim, COMSIG_IS_SWIMMING)) //poor guy not swimming time to dunk them! + victim.AddElement(/datum/element/swimming) + controller.mobs_in_pool += victim + if(locate(/obj/structure/pool/ladder) in victim.loc) //safe climbing return - if(iscarbon(M)) - var/mob/living/carbon/H = M + if(iscarbon(AM)) //FUN TIME! + var/mob/living/carbon/H = victim if(filled) if (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSMOUTH) H.visible_message("[H] falls in the water!", @@ -131,11 +125,8 @@ H.Knockdown(40) playsound(src, 'sound/effects/woodhit.ogg', 60, TRUE, 1) else if(filled) - M.adjustStaminaLoss(1) + AM.adjustStaminaLoss(1) playsound(src, "water_wade", 20, TRUE) - return - - /turf/open/pool/MouseDrop_T(atom/from, mob/user) . = ..() diff --git a/tgstation.dme b/tgstation.dme index 7b8da809a1..b9cef8faea 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -478,6 +478,7 @@ #include "code\datums\elements\dusts_on_catatonia.dm" #include "code\datums\elements\earhealing.dm" #include "code\datums\elements\ghost_role_eligibility.dm" +#include "code\datums\elements\swimming.dm" #include "code\datums\elements\wuv.dm" #include "code\datums\helper_datums\events.dm" #include "code\datums\helper_datums\getrev.dm" From e7bf1738cd634fc292a2ddc62dc509a0cb608041 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 23 Jan 2020 18:00:33 -0700 Subject: [PATCH 020/137] ok putnom --- code/datums/mind.dm | 10 +++------- code/modules/antagonists/_common/antag_datum.dm | 2 -- code/modules/antagonists/traitor/datum_traitor.dm | 2 -- code/modules/shuttle/emergency.dm | 8 ++++---- 4 files changed, 7 insertions(+), 15 deletions(-) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 9ba56b2ffe..ce97711589 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -61,9 +61,6 @@ var/late_joiner = FALSE var/force_escaped = FALSE // Set by Into The Sunset command of the shuttle manipulator - - var/hijack_speed = 0 //whether or not we can hackerman the shuttle and hijack it. 0 means you can't, 1 is normal speed hack, 2 is double, 0.5 is half, etc. - var/list/learned_recipes //List of learned recipe TYPES. /datum/mind/New(var/key) @@ -717,11 +714,10 @@ G.reenter_corpse() /// Sets our can_hijack to the fastest speed our antag datums allow. -/datum/mind/proc/update_hijack_speed() - hijack_speed = 0 +/datum/mind/proc/get_hijack_speed() + . = 0 for(var/datum/antagonist/A in antag_datums) - hijack_speed = max(hijack_speed, A.hijack_speed()) - return hijack_speed + . = max(., A.hijack_speed()) /datum/mind/proc/has_objective(objective_type) for(var/datum/antagonist/A in antag_datums) diff --git a/code/modules/antagonists/_common/antag_datum.dm b/code/modules/antagonists/_common/antag_datum.dm index 9f18ca9bea..93516765cc 100644 --- a/code/modules/antagonists/_common/antag_datum.dm +++ b/code/modules/antagonists/_common/antag_datum.dm @@ -73,7 +73,6 @@ GLOBAL_LIST_EMPTY(antagonists) give_antag_moodies() if(is_banned(owner.current) && replace_banned) replace_banned_player() - owner.update_hijack_speed() /datum/antagonist/proc/is_banned(mob/M) if(!M) @@ -101,7 +100,6 @@ GLOBAL_LIST_EMPTY(antagonists) var/datum/team/team = get_team() if(team) team.remove_member(owner) - owner.update_hijack_speed() qdel(src) /datum/antagonist/proc/greet() diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index f9b02ac09e..e532d0b824 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -63,11 +63,9 @@ // needs to be refactored to base /datum/antagonist sometime.. /datum/antagonist/traitor/proc/add_objective(datum/objective/O) objectives += O - owner?.update_hijack_speed() /datum/antagonist/traitor/proc/remove_objective(datum/objective/O) objectives -= O - owner?.update_hijack_speed() /datum/antagonist/traitor/proc/forge_traitor_objectives() switch(traitor_kind) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 299b1982fe..8c5e36076e 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -30,9 +30,9 @@ . = ..() if(hijack_announce) . += "Security systems present on console. Any unauthorized tampering will result in an emergency announcement." - if(user?.mind?.hijack_speed) + if(user?.mind?.get_hijack_speed()) . += "Alt click on this to attempt to hijack the shuttle. This will take multiple tries (current: stage [SSshuttle.emergency.hijack_status]/[HIJACKED])." - . += "It will take you [(hijack_stage_time * user.mind.hijack_speed) / 10] seconds to reprogram a stage of the shuttle's navigational firmware, and the console will undergo automated timed lockout for [hijack_stage_cooldown/10] seconds after each stage." + . += "It will take you [(hijack_stage_time * user.mind.get_hijack_speed()) / 10] seconds to reprogram a stage of the shuttle's navigational firmware, and the console will undergo automated timed lockout for [hijack_stage_cooldown/10] seconds after each stage." if(hijack_announce) . += "It is probably best to fortify your position as to be uninterrupted during the attempt, given the automatic announcements.." @@ -178,7 +178,7 @@ /obj/machinery/computer/emergency_shuttle/proc/attempt_hijack_stage(mob/living/user) if(!user.CanReach(src)) return - if(!user?.mind?.hijack_speed) + if(!user?.mind?.get_hijack_speed()) to_chat(user, "You manage to open a user-mode shell on [src], and hundreds of lines of debugging output fly through your vision. It is probably best to leave this alone.You [SSshuttle.emergency.hijack_status == INTACT? "begin" : "continue"] to override [src]'s navigational protocols.") say("Software override initiated.") . = FALSE - if(do_after(user, hijack_stage_time * user.mind.hijack_speed, target = src)) + if(do_after(user, hijack_stage_time * user.mind.get_hijack_speed(), target = src)) increase_hijack_stage() . = TRUE to_chat(user, "You reprogram some of [src]'s programming, putting it on timeout for [hijack_stage_cooldown/10] seconds.") From 289bb590cffa939e0e0a5d6d4dda3d4ca77ebeba Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 23 Jan 2020 19:20:35 -0700 Subject: [PATCH 021/137] changes --- code/modules/shuttle/emergency.dm | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 8c5e36076e..7462cc52bc 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -186,14 +186,14 @@ if(SSshuttle.emergency.hijack_status >= HIJACKED) to_chat(user, "The emergency shuttle is already loaded with a corrupt navigational payload. What more do you want from it?") return - if(hijack_last_stage_increase <= world.time + hijack_stage_cooldown) + if(hijack_last_stage_increase >= world.time + hijack_stage_cooldown) say("Error - Catastrophic software error detected. Input is currently on timeout.") return hijack_hacking = TRUE to_chat(user, "You [SSshuttle.emergency.hijack_status == INTACT? "begin" : "continue"] to override [src]'s navigational protocols.") say("Software override initiated.") . = FALSE - if(do_after(user, hijack_stage_time * user.mind.get_hijack_speed(), target = src)) + if(do_after(user, hijack_stage_time * (1 / user.mind.get_hijack_speed()), target = src)) increase_hijack_stage() . = TRUE to_chat(user, "You reprogram some of [src]'s programming, putting it on timeout for [hijack_stage_cooldown/10] seconds.") @@ -201,33 +201,27 @@ /obj/machinery/computer/emergency_shuttle/proc/announce_hijack_stage() var/msg - var/replaceprob switch(SSshuttle.emergency.hijack_status) if(INTACT) return if(STAGE_1) var/datum/species/S = new msg = "AUTHENTICATING - FAIL. AUTHENTICATING - FAIL. AUTHENTICATING - FAI###### Welcome, technician [S.random_name(pick(MALE, FEMALE))]." - replaceprob = 10 qdel(S) if(STAGE_2) msg = "Warning: Navigational route fails \"IS_AUTHORIZED\". Please try againNN[scramble_message_replace_chars("againagainagainagainagain", 70)]." - replaceprob = 20 if(STAGE_3) var/hex = "" for(var/i in 1 to 8) hex += num2hex(rand(1,16)) msg = "CRC mismatch at 0x[hex] in calculated route buffer. Full reset initiated of FTL_NAVIGATION_SERVICES. Memory decrypted for automatic repair." - replaceprob = 30 if(STAGE_4) msg = "~ACS_directive module_load(cyberdyne.exploit.nanotrasen.shuttlenav)... NT key mismatch. Confirm load? Y...###Reboot complete. $SET transponder_state = 0; System link initiated with connected engines..." - replaceprob = 35 if(HIJACKED) msg = "SYSTEM OVERRIDE - Resetting course to \[[scramble_message_replace_chars("###########", 100)]\] \ ([scramble_message_replace_chars("#######", 100)]/[scramble_message_replace_chars("#######", 100)]/[scramble_message_replace_chars("#######", 100)]) \ {AUTH - ROOT (uid: 0)}.[SSshuttle.emergency.mode == SHUTTLE_ESCAPE? "Diverting from existing route - Bluespace exit in [hijack_completion_flight_time_set/10] seconds." : ""]" - replaceprob = 25 - minor_announce(scramble_message_replace_chars(msg, replaceprob = replaceprob), "Emergency Shuttle", TRUE) + minor_announce(scramble_message_replace_chars(msg, replaceprob = 10), "Emergency Shuttle", TRUE) /obj/machinery/computer/emergency_shuttle/emag_act(mob/user) . = ..() From 40a2698b557868b66992c8e087a26b6ad9d241f0 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 23 Jan 2020 19:22:00 -0700 Subject: [PATCH 022/137] Update emergency.dm --- code/modules/shuttle/emergency.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 7462cc52bc..666e3d92fe 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -3,7 +3,7 @@ #define ENGINES_STARTED (SSshuttle.emergency.mode == SHUTTLE_IGNITING) #define IS_DOCKED (SSshuttle.emergency.mode == SHUTTLE_DOCKED || (ENGINES_STARTED)) -#define INTACT 0 +#define NOT_BEGUN 0 #define STAGE_1 1 #define STAGE_2 2 #define STAGE_3 3 @@ -190,7 +190,7 @@ say("Error - Catastrophic software error detected. Input is currently on timeout.") return hijack_hacking = TRUE - to_chat(user, "You [SSshuttle.emergency.hijack_status == INTACT? "begin" : "continue"] to override [src]'s navigational protocols.") + to_chat(user, "You [SSshuttle.emergency.hijack_status == NOT_BEGUN? "begin" : "continue"] to override [src]'s navigational protocols.") say("Software override initiated.") . = FALSE if(do_after(user, hijack_stage_time * (1 / user.mind.get_hijack_speed()), target = src)) @@ -202,7 +202,7 @@ /obj/machinery/computer/emergency_shuttle/proc/announce_hijack_stage() var/msg switch(SSshuttle.emergency.hijack_status) - if(INTACT) + if(NOT_BEGUN) return if(STAGE_1) var/datum/species/S = new @@ -275,7 +275,7 @@ dir = EAST port_direction = WEST var/sound_played = 0 //If the launch sound has been sent to all players on the shuttle itself - var/hijack_status = INTACT + var/hijack_status = NOT_BEGUN /obj/docking_port/mobile/emergency/canDock(obj/docking_port/stationary/S) return SHUTTLE_CAN_DOCK //If the emergency shuttle can't move, the whole game breaks, so it will force itself to land even if it has to crush a few departments in the process @@ -629,7 +629,7 @@ #undef ENGINES_STARTED #undef IS_DOCKED -#undef INTACT +#undef NOT_BEGUN #undef STAGE_1 #undef STAGE_2 #undef STAGE_3 From ec69b9de4d11c40141c8eea97c289a298fc30302 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 17:04:07 -0700 Subject: [PATCH 023/137] changes --- code/__DEFINES/pool.dm | 8 +- code/modules/pool/pool_controller.dm | 220 ++++++++++++++++----------- code/modules/pool/pool_drain.dm | 2 +- code/modules/pool/pool_main.dm | 8 + 4 files changed, 143 insertions(+), 95 deletions(-) diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm index 6d1c9f22df..3df2f15bf6 100644 --- a/code/__DEFINES/pool.dm +++ b/code/__DEFINES/pool.dm @@ -5,6 +5,8 @@ #define POOL_WARM 4 #define POOL_SCALDING 5 -#define POOL_REAGENT_TICK_INTERVAL 5 - -GLOBAL_LIST_INIT(blacklisted_pool_reagents, list("plasma")) \ No newline at end of file +GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( + /datum/reagent/plasma, /datum/reagent/oxygen, /datum/reagent/n2o, /datum/reagent/nitrogen, //gases + /datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc. + /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/anaphrodisiacplus //literally asking for prefbreaks + )) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 786fd2a5f5..24623cdc68 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -13,56 +13,85 @@ use_power = TRUE idle_power_usage = 75 resistance_flags = INDESTRUCTIBLE - var/list/linkedturfs //List contains all of the linked pool turfs to this controller, assignment happens on initialize - var/list/mobs_in_pool = list()//List contains all the mobs currently in the pool. - var/temperature = POOL_NORMAL //1-5 Frigid Cool Normal Warm Scalding - var/srange = 6 //The range of the search for pool turfs, change this for bigger or smaller pools. - var/list/linkedmist = list() //Used to keep track of created mist - var/misted = FALSE //Used to check for mist. - var/cur_reagent = "water" - var/drainable = FALSE - var/drained = FALSE + /// How far it scans for pool objects + var/scan_range = 6 + /// Is pool mist currently on? + var/mist_state = FALSE + /// Linked mist effects + var/list/obj/effect/mist/linked_mist = list() + /// Pool turfs + var/list/turf/open/pool/linked_turfs = list() + /// All mobs in pool + var/list/mob/living/mobs_in_pool = list() + /// Is the pool bloody? var/bloody = 0 - var/obj/machinery/pool/drain/linked_drain = null - var/obj/machinery/pool/filter/linked_filter = null - var/interact_delay = 0 //cooldown on messing with settings - var/reagent_delay = 0 //cooldown on reagent ticking - var/shocked = FALSE//Shocks morons, like an airlock. - var/tempunlocked = FALSE + /// Last time we process_reagents()'d + var/last_reagent_process = 0 + /// Maximum amount we will take from a beaker + var/max_beaker_transfer = 100 + /// Minimum amount of a reagent for it to work on us + var/min_reagent_amount = 10 + /// ADMINBUS ONLY - WHETHER OR NOT WE HAVE NOREACT ;) + var/noreact_reagents = FALSE + /// how fast in deciseconds between reagent processes + var/reagent_tick_interval = 5 + /// Can we use unsafe temperatures + var/temperature_unlocked = FALSE + /// See __DEFINES/pool.dm, temperature defines + var/temperature = POOL_NORMAL + /// Whether or not the pool can be drained + var/drainable = FALSE + // Whether or not the pool is drained + var/drained = FALSE + /// Pool drain + var/obj/machinery/pool/drain/linked_drain + /// Pool filter + var/obj/machinery/pool/filter/linked_filter + /// Next world.time you can interact with settings + var/interact_delay = 0 + /// Airlock style shocks + var/shocked = FALSE + /// Old reagent color, used to determine if update_color needs to reset colors. var/old_rcolor /obj/machinery/pool/controller/Initialize() . = ..() - START_PROCESSING(SSprocessing, src) - create_reagents(100) + START_PROCESSING(SSfastprocess, src) + create_reagents(1000) + if(noreact_reagents) + reagents.reagent_holder_flags |= NO_REACTION wires = new /datum/wires/poolcontroller(src) scan_things() -/obj/machinery/pool/controller/proc/scan_things() - for(var/turf/open/pool/W in range(srange,src)) - LAZYADD(linkedturfs, W) - W.controller = src - for(var/obj/machinery/pool/drain/pooldrain in range(srange,src)) - linked_drain = pooldrain - linked_drain.pool_controller = src - for(var/obj/machinery/pool/filter/F in range(srange, src)) - linked_filter = F - linked_filter.pool_controller = src - /obj/machinery/pool/controller/Destroy() STOP_PROCESSING(SSprocessing, src) linked_drain = null linked_filter = null - linkedturfs.Cut() + linked_turfs.Cut() mobs_in_pool.Cut() return ..() -/obj/machinery/pool/controller/emag_act(user as mob) //Emag_act, this is called when it is hit with a cryptographic sequencer. +/obj/machinery/pool/controller/proc/scan_things() + var/list/cached = range(scan_range, src) + for(var/turf/open/pool/W in cached) + linked_turfs += W + W.controller = src + for(var/obj/machinery/pool/drain/pooldrain in cached) + linked_drain = pooldrain + linked_drain.pool_controller = src + break + for(var/obj/machinery/pool/filter/F in cached) + linked_filter = F + linked_filter.pool_controller = src + break + +/obj/machinery/pool/controller/emag_act(mob/user) + . = ..() if(!(obj_flags & EMAGGED)) //If it is not already emagged, emag it. to_chat(user, "You disable the [src]'s safety features.") do_sparks(5, TRUE, src) obj_flags |= EMAGGED - tempunlocked = TRUE + temperature_unlocked = TRUE drainable = TRUE log_game("[key_name(user)] emagged [src]") message_admins("[key_name_admin(user)] emagged [src]") @@ -75,31 +104,37 @@ shock(user,50) if(stat & (BROKEN)) return - if(istype(W,/obj/item/reagent_containers)) - if(W.reagents.total_volume >= 100) //check if there's enough reagent + if(!W.reagents.total_volume) //check if there's reagent for(var/datum/reagent/R in W.reagents.reagent_list) - if(R.name in GLOB.blacklisted_pool_reagents) - to_chat(user, "\The [src] cannot accept [R.name].") - reagents.clear_reagents() + if(R.type in GLOB.blacklisted_pool_reagents) + to_chat(user, "[src] cannot accept [R.name].") return if(R.reagent_state == SOLID) to_chat(user, "The pool cannot accept reagents in solid form!.") - reagents.clear_reagents() return reagents.clear_reagents() - W.reagents.copy_to(reagents, 100) - W.reagents.clear_reagents() - user.visible_message("\The [src] makes a slurping noise.", "All of the contents of \the [W] are quickly suctioned out by the machine![src] makes a slurping noise.", "All of the contents of [W] are quickly suctioned out by the machine!= min_reagent_amount) + reagent_names += R.name + else + reagents.remove_reagent(R.type, INFINITY) + rejected += R.name + if(length(reagent_names)) + reagent_names = english_list(reagent_names) + log_game("[key_name(user)] has changed the [src] chems to [reagent_names]") + message_admins("[key_name_admin(user)] has changed the [src] chems to [reagent_names].") + if(length(rejected)) + rejected = english_list(rejected) + to_chat(user, "[src] rejects the following chemicals as they do not have at least [min_reagent_amount] units of volume: [rejected]") else - to_chat(user, "\The [src] beeps unpleasantly as it rejects the beaker. It must not have enough in it.") + to_chat(user, "[src] beeps unpleasantly as it rejects the beaker. Why are you trying to feed it an empty beaker?") return else if(panel_open && is_wire_tool(W)) wires.interact(user) @@ -132,9 +167,11 @@ else return FALSE -/obj/machinery/pool/controller/proc/poolreagent() - if(reagents.reagent_list.len > 0) - for(var/turf/open/pool/W in linkedturfs) +/obj/machinery/pool/controller/proc/process_reagents() + if(last_reagent_process > world.time + reagent_tick_interval) + return + if(length(reagents.reagent_list) > 0) + for(var/turf/open/pool/W in linked_turfs) for(var/mob/living/carbon/human/swimee in W) for(var/datum/reagent/R in reagents.reagent_list) if(R.reagent_state == SOLID) @@ -144,20 +181,18 @@ for(var/obj/objects in W) if(W.reagents) W.reagents.reaction(objects, VAPOR, 1) - reagent_delay = world.time + POOL_REAGENT_TICK_INTERVAL - changecolor() - + last_reagent_process = world.time /obj/machinery/pool/controller/process() updateUsrDialog() if(stat & (NOPOWER|BROKEN)) return if (!drained) - updatePool() + process_pool() if(reagent_delay <= world.time) - poolreagent() + process_reagents() -/obj/machinery/pool/controller/proc/updatePool() +/obj/machinery/pool/controller/proc/process_pool() if(!drained) for(var/mob/living/M in mobs_in_pool) switch(temperature) //Apply different effects based on what the temperature is set to. @@ -165,7 +200,7 @@ M.adjust_bodytemperature(50,0,500) if(POOL_WARM) //Warm M.adjust_bodytemperature(20,0,360) //Heats up mobs till the termometer shows up - if(POOL_NORMAL) //Normal temp does nothing, because it's just room temperature water. + //Normal temp does nothing, because it's just room temperature water. if(POOL_COOL) M.adjust_bodytemperature(-20,250) //Cools mobs till the termometer shows up if(POOL_FRIGID) //Freezing @@ -184,17 +219,13 @@ if(prob(35)) to_chat(drownee, "You're drowning!") -/* not sure what to do about this part - for(var/obj/effect/decal/cleanable/decal in W) - CHECK_TICK - animate(decal, alpha = 10, time = 20) - QDEL_IN(decal, 25) - if(istype(decal,/obj/effect/decal/cleanable/blood) || istype(decal, /obj/effect/decal/cleanable/trail_holder)) - bloody = TRUE - */ - changecolor() +/obj/machinery/pool/controller/proc/set_bloody(state) + if(bloody == state) + return + bloody = state + update_color() -/obj/machinery/pool/controller/proc/changecolor() +/obj/machinery/pool/controller/proc/update_color() if(drained) return var/rcolor @@ -203,7 +234,7 @@ if(rcolor == old_rcolor) return // small performance upgrade hopefully? old_rcolor = rcolor - for(var/X in linkedturfs) + for(var/X in linked_turfs) var/turf/open/pool/color1 = X if(bloody) if(rcolor) @@ -219,36 +250,26 @@ color1.watereffect.color = null color1.watertop.color = null -/obj/machinery/pool/controller/proc/miston() //Spawn /obj/effect/mist (from the shower) on all linked pool tiles - for(var/X in linkedturfs) - var/turf/open/pool/W = X - if(W.filled) - var/M = new /obj/effect/mist(W) - if(misted) - return - linkedmist += M - misted = TRUE //var just to keep track of when the mist on proc has been called. - -/obj/machinery/pool/controller/proc/mistoff() //Delete all /obj/effect/mist from all linked pool tiles. - for(var/M in linkedmist) - qdel(M) - misted = FALSE //no mist left, turn off the tracking var - -/obj/machinery/pool/controller/proc/handle_temp() - interact_delay = world.time + 10 - mistoff() - icon_state = "poolc_[temperature]" - if(temperature == POOL_SCALDING) - miston() +/obj/machinery/pool/controller/proc/update_temp() + if(mist_status) + if(temperature < POOL_SCALDING) + mist_off() + else + if(temperature == POOL_SCALDING) + mist_on() update_icon() +/obj/machinery/pool/controller/update_icon() + . = ..() + icon_state = "poolc_[temperature]" + /obj/machinery/pool/controller/proc/CanUpTemp(mob/user) - if(temperature == POOL_WARM && (tempunlocked || issilicon(user) || IsAdminGhost(user)) || temperature < POOL_WARM) + if(temperature == POOL_WARM && (temperature_unlocked || issilicon(user) || IsAdminGhost(user)) || temperature < POOL_WARM) return TRUE return FALSE /obj/machinery/pool/controller/proc/CanDownTemp(mob/user) - if(temperature == POOL_COOL && (tempunlocked || issilicon(user) || IsAdminGhost(user)) || temperature > POOL_COOL) + if(temperature == POOL_COOL && (temperature_unlocked || issilicon(user) || IsAdminGhost(user)) || temperature > POOL_COOL) return TRUE return FALSE @@ -261,10 +282,12 @@ if(CanUpTemp(usr)) temperature++ handle_temp() + interact_delay = world.time + 15 if(href_list["DecreaseTemp"]) if(CanDownTemp(usr)) temperature-- handle_temp() + interact_delay = world.time + 15 if(href_list["Activate Drain"]) if((drainable || issilicon(usr) || IsAdminGhost(usr)) && !linked_drain.active) mistoff() @@ -277,7 +300,7 @@ else new /obj/effect/waterspout(linked_drain.loc) temperature = POOL_NORMAL - handle_temp() + update_temp() bloody = FALSE updateUsrDialog() @@ -335,3 +358,18 @@ if(WIRE_SHOCK) if(!wires.is_cut(wire)) shocked = FALSE + +/obj/machinery/pool/controller/proc/mist_on() //Spawn /obj/effect/mist (from the shower) on all linked pool tiles + if(mist_state) + return + mist_state = TRUE + for(var/X in linked_turfs) + var/turf/open/pool/W = X + if(W.filled) + var/M = new /obj/effect/mist(W) + linked_mist += M + +/obj/machinery/pool/controller/proc/mistoff() //Delete all /obj/effect/mist from all linked pool tiles. + for(var/M in linked_mist) + qdel(M) + mist_state = FALSE diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 51f340a69c..425977d202 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -86,7 +86,7 @@ whirlm.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs to_chat(whirlm, "Your legs are caught in the drain!") else - for(var/turf/open/pool/P in controller.linked_turfs)) + for(var/turf/open/pool/P in controller.linked_turfs) P.filled = FALSE P.update_icon() for(var/obj/efefct/whirlpool/W in range(1, src)) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index abc7611b3f..3cd33c18cf 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -80,6 +80,13 @@ // Entered logic /turf/open/pool/Entered(atom/movable/AM, atom/oldloc) + if(istype(AM, /obj/effect/decal/cleanable)) + var/obj/effect/decal/cleanable/C = AM + if(prob(C.bloodiness)) + controller.set_bloody(TRUE) + QDEL_IN(AM, 25) + animate(AM, alpha = 10, time = 20) + return ..() if(!AM.has_gravity(src)) return ..() if(isliving(AM)) @@ -127,6 +134,7 @@ else if(filled) AM.adjustStaminaLoss(1) playsound(src, "water_wade", 20, TRUE) + return ..() /turf/open/pool/MouseDrop_T(atom/from, mob/user) . = ..() From 483e1b27570eb39c7379ad35c5edfaba91b56697 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 17:10:50 -0700 Subject: [PATCH 024/137] oh we needed that --- code/modules/pool/pool_main.dm | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 3cd33c18cf..1089869bc9 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -7,22 +7,31 @@ var/filled = TRUE var/next_splash = 0 var/obj/machinery/pool/controller/controller + var/obj/effect/overlay/water/watereffect + var/obj/effect/overlay/water/top/watertop + +/turf/open/pool/Initialize(mapload) + . = ..() + update_icon() /turf/open/pool/Destroy() controller = null + QDEL_NULL(watereffect) + QDEL_NULL(watertop) return ..() -/turf/open/pool/proc/update_icon_pool() +/turf/open/pool/update_icon() + . = ..() if(!filled) name = "drained pool" desc = "No diving!" - cut_overlay(/obj/effect/overlay/water) - cut_overlay(/obj/effect/overlay/water/top) + QDEL_NULL(watereffect) + QDEL_NULL(watertop) else name = "poolwater" desc = "You're safer here than in the deep." - add_overlay(/obj/effect/overlay/water) - add_overlay(/obj/effect/overlay/water/top) + watereffect = new /obj/effect/overlay/water(src) + watertop = new /obj/effect/overlay/water/top(src) /obj/effect/overlay/water name = "water" @@ -40,7 +49,7 @@ // Mousedrop hook to normal turfs to get out of pools. /turf/open/MouseDrop_T(atom/from, mob/user) // I could make this /open/floor and not have the !istype but ehh - kev - if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && CHECK_MOBILITY(user, MOBILITY_USE) && !istype(src, /turf/open/pool)) + if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && !user.IsStunned() && !user.IsKnockdown() && !user.incapacitated() && !istype(src, /turf/open/pool)) var/mob/living/L = from //The element only exists if you're on water and a living mob, so let's skip those checks. var/pre_msg @@ -140,9 +149,9 @@ . = ..() if(!isliving(from)) return + var/mob/living/victim = from if(user.stat || user.lying || !Adjacent(user) || !from.Adjacent(user) || !iscarbon(user) || !victim.has_gravity(src) || SEND_SIGNAL(victim, COMSIG_IS_SWIMMING)) return - var/mob/living/victim = from var/victimname = victim == user? "themselves" : "[victim]" var/starttext = victim == user? "[user] is descending into [src]." : "[user] is lowering [victim] into [src]." user.visible_message("[starttext]") @@ -163,7 +172,7 @@ . = ..() if(.) return - if((user.loc != src) && CHECK_MOBILITY(user, MOBILITY_USE) && Adjacent(user) && SEND_SIGNAL(user, COMSIG_IS_SWIMMING) && filled && (next_splash < world.time)) + if((user.loc != src) && !user.IsStunned() && !user.IsKnockdown() && !user.incapacitated() && Adjacent(user) && SEND_SIGNAL(user, COMSIG_IS_SWIMMING) && filled && (next_splash < world.time)) playsound(src, 'sound/effects/watersplash.ogg', 8, TRUE, 1) next_splash = world.time + 25 var/obj/effect/splash/S = new(src) From 19f1eba0155ecb1a1686c8c6f086549be1ababee Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 17:13:11 -0700 Subject: [PATCH 025/137] renames --- code/__DEFINES/pool.dm | 2 +- code/modules/pool/pool_controller.dm | 6 +++--- code/modules/pool/pool_drain.dm | 2 +- code/modules/pool/pool_wires.dm | 8 ++++---- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm index 3df2f15bf6..3a7981d354 100644 --- a/code/__DEFINES/pool.dm +++ b/code/__DEFINES/pool.dm @@ -6,7 +6,7 @@ #define POOL_SCALDING 5 GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( - /datum/reagent/plasma, /datum/reagent/oxygen, /datum/reagent/n2o, /datum/reagent/nitrogen, //gases + /datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases /datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc. /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/anaphrodisiacplus //literally asking for prefbreaks )) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 24623cdc68..6be4fd7643 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -281,12 +281,12 @@ if(href_list["IncreaseTemp"]) if(CanUpTemp(usr)) temperature++ - handle_temp() + update_temp() interact_delay = world.time + 15 if(href_list["DecreaseTemp"]) if(CanDownTemp(usr)) temperature-- - handle_temp() + update_temp() interact_delay = world.time + 15 if(href_list["Activate Drain"]) if((drainable || issilicon(usr) || IsAdminGhost(usr)) && !linked_drain.active) @@ -369,7 +369,7 @@ var/M = new /obj/effect/mist(W) linked_mist += M -/obj/machinery/pool/controller/proc/mistoff() //Delete all /obj/effect/mist from all linked pool tiles. +/obj/machinery/pool/controller/proc/mist_off() //Delete all /obj/effect/mist from all linked pool tiles. for(var/M in linked_mist) qdel(M) mist_state = FALSE diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 425977d202..c292dd7354 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -62,7 +62,7 @@ pool_controller.bloody /= 2 else pool_controller.bloody /= 4 - pool_controller.changecolor() + pool_controller.update_color() filling = FALSE active = FALSE else diff --git a/code/modules/pool/pool_wires.dm b/code/modules/pool/pool_wires.dm index 7e98383606..7341c503a9 100644 --- a/code/modules/pool/pool_wires.dm +++ b/code/modules/pool/pool_wires.dm @@ -22,7 +22,7 @@ var/obj/machinery/pool/controller/P = holder var/list/status = list() status += "The blue light is [P.drainable ? "on" : "off"]." - status += "The red light is [P.tempunlocked ? "on" : "off"]." + status += "The red light is [P.temperature_unlocked ? "on" : "off"]." status += "The yellow light is [P.shocked ? "on" : "off"]." return status @@ -32,7 +32,7 @@ if(POOL_WIRE_DRAIN) P.drainable = FALSE if(POOL_WIRE_TEMP) - P.tempunlocked = FALSE + P.temperature_unlocked = FALSE if(WIRE_SHOCK) P.shocked = !P.shocked addtimer(CALLBACK(P, /obj/machinery/autolathe.proc/reset, wire), 60) @@ -47,9 +47,9 @@ P.drainable = TRUE if(POOL_WIRE_TEMP) if(mend) - P.tempunlocked = FALSE + P.temperature_unlocked = FALSE else - P.tempunlocked = TRUE + P.temperature_unlocked = TRUE if(WIRE_ZAP) P.shock(usr, 50) if(WIRE_SHOCK) From ebff6c9f385d13fb4da0df418eaedd3a27b338e6 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 17:25:15 -0700 Subject: [PATCH 026/137] compile, jump board crash to ground --- code/__DEFINES/pool.dm | 2 +- code/datums/elements/swimming.dm | 2 +- code/modules/pool/pool_controller.dm | 13 +++++---- code/modules/pool/pool_drain.dm | 40 ++++++++++++++-------------- code/modules/pool/pool_main.dm | 22 +++++++-------- code/modules/pool/pool_structures.dm | 33 +++++++++++++---------- 6 files changed, 58 insertions(+), 54 deletions(-) diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm index 3a7981d354..aabcd3493e 100644 --- a/code/__DEFINES/pool.dm +++ b/code/__DEFINES/pool.dm @@ -8,5 +8,5 @@ GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( /datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases /datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc. - /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/anaphrodisiacplus //literally asking for prefbreaks + /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/drug/anaphrodisiacplus //literally asking for prefbreaks )) diff --git a/code/datums/elements/swimming.dm b/code/datums/elements/swimming.dm index 2349a1e50f..eeabc465ed 100644 --- a/code/datums/elements/swimming.dm +++ b/code/datums/elements/swimming.dm @@ -21,4 +21,4 @@ /datum/element/swimming/proc/check_valid(datum/source) var/mob/living/L = source if(!istype(L.loc, /turf/open/pool)) - source.RemoveElement(/datum/elemtn/swimming) + source.RemoveElement(/datum/element/swimming) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 6be4fd7643..7076635a06 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -59,7 +59,7 @@ START_PROCESSING(SSfastprocess, src) create_reagents(1000) if(noreact_reagents) - reagents.reagent_holder_flags |= NO_REACTION + reagents.reagents_holder_flags |= NO_REACTION wires = new /datum/wires/poolcontroller(src) scan_things() @@ -189,8 +189,7 @@ return if (!drained) process_pool() - if(reagent_delay <= world.time) - process_reagents() + process_reagents() /obj/machinery/pool/controller/proc/process_pool() if(!drained) @@ -251,7 +250,7 @@ color1.watertop.color = null /obj/machinery/pool/controller/proc/update_temp() - if(mist_status) + if(mist_state) if(temperature < POOL_SCALDING) mist_off() else @@ -290,11 +289,11 @@ interact_delay = world.time + 15 if(href_list["Activate Drain"]) if((drainable || issilicon(usr) || IsAdminGhost(usr)) && !linked_drain.active) - mistoff() + mist_off() interact_delay = world.time + 60 linked_drain.active = TRUE - linked_drain.timer = 15 - if(!linked_drain.status) + linked_drain.cycles_left = 15 + if(!linked_drain.filling) new /obj/effect/whirlpool(linked_drain.loc) temperature = POOL_NORMAL else diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index c292dd7354..36debbc06e 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -14,7 +14,7 @@ /// Drain mode suction range var/drain_suck_range = 6 /// Parent controller - var/obj/machinery/pool/controller/pool_controller + var/obj/machinery/pool/controller/controller /// Cycles left for fill/drain while active var/cycles_left = 0 /// Mobs we are swirling around @@ -28,8 +28,8 @@ return ..() /obj/machinery/pool/drain/Destroy() - pool_controller.linked_drain = null - pool_controller = null + controller.linked_drain = null + controller = null whirling_mobs = null return ..() @@ -40,11 +40,11 @@ if(!I.anchored && (I.w_class == WEIGHT_CLASS_SMALL)) step_towards(I, src) if((I.w_class == WEIGHT_CLASS_TINY) && (get_dist(I, src) == 0)) - I.forceMove(pool_controller.linked_filter) + I.forceMove(controller.linked_filter) if(active) if(filling) - if(timer-- > 0) - playsound(src, 'sound/efefcts/fillingwatter.ogg', 100, TRUE) + if(cycles_left-- > 0) + playsound(src, 'sound/effects/fillingwatter.ogg', 100, TRUE) for(var/obj/O in orange(min(fill_push_range, 10), src)) if(!O.anchored) step_away(O, src) @@ -57,16 +57,16 @@ P.update_ion() for(var/obj/effect/waterspout/S in range(1, src)) qdel(S) - pool_controller.drained = FALSE - if(pool_controller.bloody < 1000) - pool_controller.bloody /= 2 + controller.drained = FALSE + if(controller.bloody < 1000) + controller.bloody /= 2 else - pool_controller.bloody /= 4 - pool_controller.update_color() + controller.bloody /= 4 + controller.update_color() filling = FALSE active = FALSE else - if(timer-- > 0) + if(cycles_left-- > 0) playsound(src, 'sound/effects/pooldrain.ogg', 100, TRUE) playsound(src, "water_wade", 60, TRUE) for(var/obj/O in orange(min(drain_suck_range, 10), src)) @@ -81,18 +81,18 @@ playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) if(H.lying) //down for any reason H.adjustBruteLoss(5) - to_chat(whirlm, "You're caught in the drain!") + to_chat(H, "You're caught in the drain!") else - whirlm.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs - to_chat(whirlm, "Your legs are caught in the drain!") + H.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs + to_chat(H, "Your legs are caught in the drain!") else for(var/turf/open/pool/P in controller.linked_turfs) P.filled = FALSE P.update_icon() - for(var/obj/efefct/whirlpool/W in range(1, src)) + for(var/obj/effect/whirlpool/W in range(1, src)) qdel(W) linked_controller.drained = TRUE - linked_controller.mistoff() + linked_controller.mist_off() active = FALSE filling = TRUE @@ -111,11 +111,11 @@ name = "Filter" icon_state = "filter" desc = "The part of the pool where all the IDs, ATV keys, and pens, and other dangerous things get trapped." - var/obj/machinery/pool/controller/pool_controller + var/obj/machinery/pool/controller/controller /obj/machinery/pool/filter/Destroy() - pool_controller.linked_filter = null - pool_controller = null + controller.linked_filter = null + controller = null return ..() /obj/machinery/pool/filter/emag_act(mob/living/user) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 1089869bc9..cb9f598729 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -49,21 +49,21 @@ // Mousedrop hook to normal turfs to get out of pools. /turf/open/MouseDrop_T(atom/from, mob/user) // I could make this /open/floor and not have the !istype but ehh - kev - if(SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && !user.IsStunned() && !user.IsKnockdown() && !user.incapacitated() && !istype(src, /turf/open/pool)) + if(isliving(from) && SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated() && !istype(src, /turf/open/pool)) var/mob/living/L = from //The element only exists if you're on water and a living mob, so let's skip those checks. var/pre_msg var/post_msg if(user == from) - pre_msg = "[from] is getting out of the pool." - post_msg = "[from] gets out of the pool." + pre_msg = "[L] is getting out of the pool." + post_msg = "[L] gets out of the pool." else - pre_msg = "[from] is being pulled out of the pool by [user]." - post_msg = "[user] pulls [from] out of the pool." - from.visible_message(pre_msg) - if(do_mob(user, from, 20)) - from.visible_message(post_msg) - from.forceMove(src) + pre_msg = "[L] is being pulled out of the pool by [user]." + post_msg = "[user] pulls [L] out of the pool." + L.visible_message(pre_msg) + if(do_mob(user, L, 20)) + L.visible_message(post_msg) + L.forceMove(src) else return ..() @@ -141,7 +141,7 @@ H.Knockdown(40) playsound(src, 'sound/effects/woodhit.ogg', 60, TRUE, 1) else if(filled) - AM.adjustStaminaLoss(1) + victim.adjustStaminaLoss(1) playsound(src, "water_wade", 20, TRUE) return ..() @@ -172,7 +172,7 @@ . = ..() if(.) return - if((user.loc != src) && !user.IsStunned() && !user.IsKnockdown() && !user.incapacitated() && Adjacent(user) && SEND_SIGNAL(user, COMSIG_IS_SWIMMING) && filled && (next_splash < world.time)) + if((user.loc != src) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated() && Adjacent(user) && SEND_SIGNAL(user, COMSIG_IS_SWIMMING) && filled && (next_splash < world.time)) playsound(src, 'sound/effects/watersplash.ogg', 8, TRUE, 1) next_splash = world.time + 25 var/obj/effect/splash/S = new(src) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 72a5289f23..914b2db129 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -55,7 +55,7 @@ jumpee.pixel_x = 0 jumpee.pixel_y = 0 jumpee.Stun(2) - jumpee.swimming = TRUE + jumpee.AddElement(/datum/element/swimming) /obj/structure/pool/Lboard/attack_hand(mob/living/user) if(iscarbon(user)) @@ -64,13 +64,9 @@ to_chat(user, "Someone else is already making a jump!") return var/turf/T = get_turf(src) - if(user.swimming) + if(SEND_SIGNAL(user, COMSIG_IS_SWIMMING)) return else - for(var/obj/machinery/pool/controller/pc in range(4,src)) //Clunky as fuck I know. - if(pc.drained) - to_chat(user, "That would be suicide") //TODO: make this a suicide action. - return if(Adjacent(jumper)) jumper.visible_message("[user] climbs up \the [src]!", \ "You climb up \the [src] and prepares to jump!") @@ -79,7 +75,7 @@ jumper.layer = RIPPLE_LAYER jumper.pixel_x = 3 jumper.pixel_y = 7 - jumper.dir=8 + jumper.dir = 8 sleep(1) jumper.loc = T addtimer(CALLBACK(src, .proc/dive, jumper), 10) @@ -92,7 +88,7 @@ sleep(15) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 1, 1) + jumper.throw_at(throw_target, 1, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) if(21 to 40) jumper.visible_message("[jumper] goes for a dive!", \ @@ -100,7 +96,7 @@ sleep(20) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 2, 1) + jumper.throw_at(throw_target, 2, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) if(41 to 60) jumper.visible_message("[jumper] goes for a long dive! Stay far away!", \ @@ -108,7 +104,7 @@ sleep(25) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 3, 1) + jumper.throw_at(throw_target, 3, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) if(61 to 80) jumper.visible_message("[jumper] goes for an awesome dive! Don't stand in [jumper.p_their()] way!", \ @@ -116,14 +112,14 @@ sleep(30) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 4, 1) + jumper.throw_at(throw_target, 4, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) if(81 to 91) sleep(20) backswim() jumper.visible_message("[jumper] misses [jumper.p_their()] step!", \ "You misstep!") var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 0, 1) + jumper.throw_at(throw_target, 0, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) jumper.Knockdown(100) jumper.adjustBruteLoss(10) @@ -138,7 +134,7 @@ jumper.visible_message("[jumper] fails!", \ "You can't quite do it!") var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 1, 1) + jumper.throw_at(throw_target, 1, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) else jumper.fire_stacks = min(1,jumper.fire_stacks + 1) jumper.IgniteMob() @@ -147,8 +143,17 @@ jumper.visible_message("[jumper] bursts into flames of pure awesomness!", \ "No one can stop you now!") var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 6, 1) + jumper.throw_at(throw_target, 6, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) addtimer(CALLBACK(src, .proc/togglejumping), 35) /obj/structure/pool/Lboard/proc/togglejumping() jumping = FALSE + +/obj/structure/pool/Lboard/proc/on_finish_jump(mob/living/victim) + if(istype(victim.loc, /turf/open/pool)) + var/turf/open/pool/P = victim.loc + if(!P.filled) //you dun fucked up now + to_chat(victim, "That was stupid of you..") + victim.visible_message("[victim] smashes into the ground!") + victim.apply_damage(50) + victim.Knockdown(200) From 3af72acfb2f64c26a9a510467e2e94033563ae70 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 17:26:43 -0700 Subject: [PATCH 027/137] compile --- code/modules/pool/pool_controller.dm | 4 ++-- code/modules/pool/pool_drain.dm | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 7076635a06..07a982e412 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -78,11 +78,11 @@ W.controller = src for(var/obj/machinery/pool/drain/pooldrain in cached) linked_drain = pooldrain - linked_drain.pool_controller = src + linked_drain.controller = src break for(var/obj/machinery/pool/filter/F in cached) linked_filter = F - linked_filter.pool_controller = src + linked_filter.controller = src break /obj/machinery/pool/controller/emag_act(mob/user) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 36debbc06e..930633eaa5 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -54,7 +54,7 @@ else for(var/turf/open/pool/P in controller.linked_turfs) P.filled = TRUE - P.update_ion() + P.update_icon() for(var/obj/effect/waterspout/S in range(1, src)) qdel(S) controller.drained = FALSE @@ -91,8 +91,8 @@ P.update_icon() for(var/obj/effect/whirlpool/W in range(1, src)) qdel(W) - linked_controller.drained = TRUE - linked_controller.mist_off() + controller.drained = TRUE + controller.mist_off() active = FALSE filling = TRUE From d034467cb2248b5b6310376eb57d92afbd5c9bf6 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sat, 25 Jan 2020 18:59:46 -0600 Subject: [PATCH 028/137] adds the pool to the map again --- _maps/map_files/BoxStation/BoxStation.dmm | 985 +++++++++++++++++----- 1 file changed, 756 insertions(+), 229 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 56126c6e37..96f4e47bd6 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -3984,7 +3984,12 @@ /turf/open/floor/plasteel, /area/security/brig) "aiA" = ( -/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, /turf/open/floor/plating, /area/maintenance/fore/secondary) "aiB" = ( @@ -6153,11 +6158,8 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anE" = ( -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/obj/machinery/door/airlock/external{ - req_access_txt = "13" +/obj/structure/cable{ + icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6165,11 +6167,16 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anG" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/fitness"; + name = "Pool Room APC"; + pixel_y = -23 + }, +/obj/structure/cable{ + icon_state = "0-8" }, /turf/open/floor/plating, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "anH" = ( /obj/structure/sign/warning/electricshock, /turf/closed/wall/r_wall, @@ -6327,7 +6334,7 @@ dir = 10 }, /turf/closed/wall, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "aof" = ( /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/fore) @@ -7155,14 +7162,10 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqs" = ( -/obj/machinery/door/airlock{ - id_tag = "Room Two"; - name = "Room Seven - Luxury Suite" - }, -/obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/dorms) +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "aqu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -53147,6 +53150,10 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) +"cUE" = ( +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cVb" = ( /turf/closed/wall, /area/hallway/secondary/service) @@ -53204,6 +53211,15 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"det" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "dfh" = ( /obj/machinery/power/apc{ areastring = "/area/science/circuit"; @@ -53259,6 +53275,9 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"diJ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dkk" = ( /obj/machinery/photocopier{ pixel_x = -5; @@ -53266,6 +53285,19 @@ }, /turf/open/floor/wood, /area/library) +"dlv" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"dmP" = ( +/obj/structure/table/glass, +/obj/item/clothing/under/shorts/blue{ + desc = "So comfy and easy to wear!" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "dok" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-22" @@ -53281,6 +53313,10 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) +"dpB" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "dqu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -53291,6 +53327,15 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"duD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "dvc" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -53336,6 +53381,18 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/crew_quarters/toilet) +"dEm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) +"dFp" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dHb" = ( /obj/structure/chair/comfy/black{ dir = 4 @@ -53439,6 +53496,13 @@ /obj/item/reagent_containers/food/snacks/burger/plain, /turf/open/floor/wood, /area/crew_quarters/bar) +"ehf" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"ejW" = ( +/obj/structure/pool/Lboard, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "elw" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -53483,9 +53547,12 @@ /turf/open/floor/plating, /area/maintenance/bar) "ewZ" = ( -/obj/structure/chair/sofa/right, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"exX" = ( +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "eyM" = ( /obj/machinery/mineral/ore_redemption{ input_dir = 2; @@ -53494,6 +53561,19 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"eyW" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"ezu" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"eDG" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eHI" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 @@ -53599,6 +53679,9 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"eVq" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eVC" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/firedoor, @@ -53649,6 +53732,9 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"fiD" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fjy" = ( /obj/structure/lattice, /turf/closed/wall/r_wall, @@ -53677,6 +53763,9 @@ }, /turf/closed/wall, /area/quartermaster/miningdock) +"foQ" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "frE" = ( /obj/machinery/vr_sleeper{ dir = 8 @@ -53763,6 +53852,9 @@ "fzd" = ( /turf/closed/wall, /area/crew_quarters/abandoned_gambling_den) +"fCG" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fGf" = ( /obj/machinery/smartfridge/disks{ pixel_y = 2 @@ -53839,13 +53931,15 @@ }, /area/crew_quarters/theatre) "fOc" = ( -/obj/structure/bed, -/obj/item/bedsheet/random, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8 +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "fPs" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -53859,13 +53953,6 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "fQF" = ( -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - dir = 5; - icon_state = "roomnum"; - name = "Room Number 7"; - pixel_y = 24 - }, /obj/structure/chair/sofa/right, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -53903,6 +53990,10 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) +"fYw" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "fZD" = ( /obj/structure/filingcabinet, /obj/machinery/light{ @@ -53911,6 +54002,9 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"gaF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "gbq" = ( /obj/structure/cable{ icon_state = "4-8" @@ -54019,6 +54113,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"grG" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "gtL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -54098,13 +54195,29 @@ /turf/open/floor/plating, /area/crew_quarters/fitness) "gQn" = ( -/obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/obj/machinery/light{ + dir = 8; + light_color = "#e8eaff" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) +"gQx" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "gSH" = ( /obj/structure/grille, /turf/closed/wall/r_wall, /area/space/nearstation) +"gSS" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "gVX" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -54241,6 +54354,10 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"hmQ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "hoo" = ( /obj/effect/landmark/carpspawn, /turf/open/space/basic, @@ -54319,6 +54436,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) +"hRb" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "hRz" = ( /obj/structure/chair/comfy/brown{ dir = 8 @@ -54360,6 +54480,14 @@ }, /turf/closed/wall/r_wall, /area/engine/gravity_generator) +"hWD" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"hXv" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "hYW" = ( /obj/machinery/light/small{ dir = 4 @@ -54389,32 +54517,26 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "iep" = ( -/obj/structure/mirror{ - pixel_y = 32 +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -24 }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 +/obj/effect/turf_decal/tile/neutral{ + dir = 1 }, -/obj/structure/toilet{ +/turf/open/floor/plasteel/yellowsiding{ dir = 4 }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "ier" = ( -/obj/machinery/button/door{ - id = "Room Two"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 7; - pixel_y = -24; - specialfunctions = 4 - }, -/obj/structure/chair/comfy/brown{ +/obj/machinery/light, +/obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "igT" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck{ @@ -54439,6 +54561,12 @@ "iiW" = ( /turf/open/floor/wood, /area/maintenance/bar) +"ijX" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "ikx" = ( /turf/open/floor/plating/foam, /area/space/nearstation) @@ -54453,6 +54581,9 @@ /obj/structure/falsewall, /turf/open/floor/plating, /area/maintenance/bar) +"iok" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "ioB" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -54505,6 +54636,9 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) +"isS" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "itG" = ( /obj/structure/table/reinforced, /obj/item/paper_bin, @@ -54555,6 +54689,9 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"iBc" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "iEx" = ( /obj/structure/table/wood, /obj/machinery/light{ @@ -54580,12 +54717,33 @@ /obj/structure/fireplace, /turf/open/floor/carpet, /area/crew_quarters/dorms) +"iFh" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"iFx" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "iFL" = ( /obj/machinery/light{ dir = 8 }, /turf/open/floor/carpet, /area/crew_quarters/theatre) +"iGq" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"iIF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "iMG" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-14" @@ -54797,6 +54955,20 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) +"jlQ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"jmw" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "jmC" = ( /obj/structure/lattice/catwalk, /turf/open/space/basic, @@ -54890,6 +55062,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/security/execution/transfer) +"jvr" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/plasteel/yellowsiding/corner, +/area/crew_quarters/fitness/pool) "jvN" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -54918,6 +55096,9 @@ /obj/structure/grille, /turf/open/floor/plating/airless, /area/space/nearstation) +"jBy" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jBZ" = ( /obj/structure/cable{ icon_state = "4-8" @@ -54946,6 +55127,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"jCN" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jDY" = ( /obj/structure/chair{ dir = 4 @@ -54979,6 +55163,13 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/prison) +"jIk" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jJF" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable{ @@ -54995,6 +55186,10 @@ }, /turf/open/floor/plating, /area/maintenance/fore) +"jMt" = ( +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "jMK" = ( /obj/structure/cable{ icon_state = "1-4" @@ -55043,6 +55238,15 @@ }, /turf/open/floor/plasteel, /area/science/circuit) +"jTK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "jVl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -55075,8 +55279,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "kay" = ( /obj/structure/table, /obj/item/reagent_containers/food/snacks/bluecherrycupcake{ @@ -55138,14 +55344,16 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "khB" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 +/obj/machinery/door/airlock/maintenance{ + name = "Dormitories Maintenance"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"kil" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "klu" = ( /obj/structure/lattice, /turf/open/space/basic, @@ -55216,6 +55424,9 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) +"kwe" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "kwy" = ( /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/bar{ @@ -55314,6 +55525,9 @@ }, /turf/open/floor/plating, /area/maintenance/port) +"kKb" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "kKw" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -55427,6 +55641,19 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/locker) +"kYB" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"lda" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "lhg" = ( /obj/machinery/vending/clothing, /obj/structure/disposalpipe/segment{ @@ -55505,6 +55732,9 @@ }, /turf/open/floor/plating, /area/construction/mining/aux_base) +"lCr" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "lCB" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -55628,6 +55858,15 @@ /obj/item/clothing/under/lawyer/red, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"mbT" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) +"mcu" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "mfb" = ( /obj/structure/toilet{ dir = 8 @@ -55704,12 +55943,22 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet) +"mFp" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "mHC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"mIm" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"mIH" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "mIS" = ( /obj/structure/table, /obj/item/clothing/gloves/boxing/yellow, @@ -55720,6 +55969,10 @@ /obj/item/clothing/gloves/boxing, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"mNb" = ( +/obj/machinery/pool/controller, +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "mNi" = ( /obj/machinery/light_switch{ pixel_x = -20 @@ -55750,6 +56003,11 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) +"mRh" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "mTp" = ( /obj/structure/chair/sofa/left, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55757,6 +56015,17 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"mWt" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/yellow, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mXB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, @@ -55785,6 +56054,9 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"nec" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "nel" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55839,6 +56111,13 @@ /obj/structure/closet/athletic_mixed, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"nnK" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"noA" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "nrR" = ( /obj/machinery/door/airlock{ name = "Unisex Restrooms" @@ -55918,6 +56197,9 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) +"nHN" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "nIE" = ( /obj/structure/sign/poster/contraband/tools, /turf/closed/wall, @@ -56058,6 +56340,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"opc" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "orw" = ( /obj/structure/table, /obj/structure/cable{ @@ -56114,6 +56399,10 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) +"oDX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "oFk" = ( /obj/structure/closet/boxinggloves, /turf/open/floor/plasteel, @@ -56254,6 +56543,17 @@ }, /turf/open/floor/plasteel, /area/science/mixing) +"poh" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"poi" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ppY" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -56281,13 +56581,8 @@ /turf/open/space/basic, /area/space/nearstation) "prU" = ( -/obj/item/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 - }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ptV" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56304,6 +56599,10 @@ /obj/item/clothing/under/color/grey, /turf/open/floor/plating, /area/maintenance/port/aft) +"pvW" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "pxD" = ( /obj/structure/chair/sofa, /obj/structure/window{ @@ -56365,6 +56664,13 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"pLj" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "pLn" = ( /obj/machinery/conveyor/inverted{ dir = 5; @@ -56494,11 +56800,8 @@ /turf/open/floor/plasteel/dark, /area/bridge/meeting_room) "pZv" = ( -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qbx" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/drinks/soda_cans/starkist{ @@ -56507,12 +56810,23 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"qbA" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "qeQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plasteel, /area/science/circuit) +"qfZ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"qhi" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "qje" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -56522,6 +56836,15 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"qjO" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"qjV" = ( +/obj/machinery/pool/filter{ + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qkC" = ( /obj/machinery/power/apc{ areastring = "/area/maintenance/starboard/fore"; @@ -56565,12 +56888,8 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "qoP" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/chair/sofa/left, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qpA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -56692,21 +57011,23 @@ /turf/open/floor/plating, /area/security/prison) "qNs" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - on = 0; - pixel_x = -7; - pixel_y = 12 +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "qOf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, /turf/open/floor/wood, /area/crew_quarters/theatre) +"qPC" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qQJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56728,6 +57049,12 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"qXW" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rcD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56752,6 +57079,9 @@ /obj/machinery/vending/cola/space_up, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"rhk" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "riA" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -56947,6 +57277,16 @@ /obj/item/gun/energy/laser/practice, /turf/open/floor/plasteel/white, /area/science/circuit) +"scl" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/yellow, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sdL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -56973,6 +57313,12 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"shw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "sjm" = ( /obj/structure/table/wood, /obj/item/instrument/piano_synth, @@ -57115,6 +57461,11 @@ icon_state = "panelscorched" }, /area/maintenance/starboard/fore) +"sAb" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "sAI" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/condiment/saltshaker{ @@ -57133,6 +57484,12 @@ icon_state = "wood-broken6" }, /area/maintenance/bar) +"sAO" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"sCg" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sEt" = ( /turf/open/floor/wood{ icon_state = "wood-broken7" @@ -57146,6 +57503,9 @@ dir = 1 }, /area/hallway/primary/starboard) +"sKh" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "sLr" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance, @@ -57189,6 +57549,10 @@ /obj/structure/chair/office/light, /turf/open/floor/plasteel/white, /area/science/circuit) +"sVl" = ( +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sWR" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57212,6 +57576,9 @@ /obj/machinery/vending/boozeomat/all_access, /turf/closed/wall, /area/maintenance/bar) +"sXL" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "sYv" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57242,6 +57609,15 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/hallway/secondary/service) +"taA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "tdF" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable{ @@ -57253,12 +57629,28 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"tfq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "thr" = ( /obj/structure/frame/computer{ dir = 1 }, /turf/open/floor/plating, /area/space/nearstation) +"tkj" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tkU" = ( /turf/open/floor/wood{ icon_state = "wood-broken5" @@ -57405,6 +57797,9 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"tFN" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tGG" = ( /obj/structure/table/wood, /obj/item/book/codex_gigas, @@ -57437,6 +57832,9 @@ /obj/item/instrument/violin, /turf/open/floor/wood, /area/crew_quarters/bar) +"tKZ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tLl" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -57458,6 +57856,16 @@ /obj/item/pen/fountain, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"tNB" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/yellow, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "tNJ" = ( /obj/effect/spawner/structure/window, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57484,9 +57892,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/machinery/light/small, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "tPT" = ( /obj/machinery/chem_dispenser/drinks/beer, /obj/structure/table/wood, @@ -57525,6 +57934,14 @@ }, /turf/open/floor/carpet, /area/crew_quarters/theatre) +"tWc" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "tWs" = ( /obj/structure/cable{ icon_state = "2-4" @@ -57640,6 +58057,10 @@ /obj/item/soap, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"umF" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "unl" = ( /obj/item/flashlight/lamp/green{ pixel_x = -3; @@ -57738,6 +58159,10 @@ /obj/structure/sign/departments/restroom, /turf/closed/wall, /area/crew_quarters/toilet) +"uBk" = ( +/obj/machinery/pool/drain, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uDW" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57749,6 +58174,12 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"uEh" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "uNu" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -57766,6 +58197,9 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"uRD" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "uTq" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 @@ -57808,6 +58242,9 @@ /obj/effect/turf_decal/tile/red, /turf/open/floor/plasteel, /area/hallway/primary/fore) +"uYF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uZM" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -57876,6 +58313,9 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/crew_quarters/bar) +"vlu" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vpm" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -57916,6 +58356,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"vyd" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vys" = ( /obj/machinery/vr_sleeper{ dir = 4 @@ -57961,6 +58404,12 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"vBb" = ( +/obj/structure/pool/Rboard, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "vCb" = ( /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plasteel, @@ -57973,6 +58422,9 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/space/nearstation) +"vFf" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "vFt" = ( /obj/machinery/portable_atmospherics/pump, /turf/open/floor/plating, @@ -58069,6 +58521,12 @@ }, /turf/open/floor/plasteel/white, /area/science/circuit) +"vPX" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "vRr" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -58093,10 +58551,18 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"vTB" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "vUR" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/security/prison) +"vVu" = ( +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "vVP" = ( /obj/structure/cable{ icon_state = "0-4" @@ -58127,6 +58593,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel, /area/security/prison) +"vXd" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "vYa" = ( /turf/open/floor/plasteel, /area/crew_quarters/fitness) @@ -58158,6 +58628,15 @@ "wkN" = ( /turf/closed/wall, /area/science/circuit) +"wnW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "woR" = ( /obj/machinery/cryopod{ dir = 1 @@ -58207,6 +58686,12 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"wtK" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wuB" = ( /obj/structure/chair/comfy/brown{ dir = 1 @@ -58249,6 +58734,12 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) +"wwK" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wyM" = ( /obj/machinery/door/airlock{ name = "Theatre Backstage"; @@ -58260,6 +58751,10 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) +"wzi" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "wAB" = ( /obj/structure/chair/office/light, /obj/machinery/firealarm{ @@ -58286,6 +58781,9 @@ }, /turf/open/floor/plating, /area/crew_quarters/fitness) +"wCg" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "wDR" = ( /obj/structure/sign/poster/official/help_others{ pixel_y = -32 @@ -58431,6 +58929,10 @@ icon_state = "wood-broken5" }, /area/maintenance/bar) +"xhu" = ( +/obj/structure/sign/warning/vacuum/external, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "xhx" = ( /obj/structure/cable{ icon_state = "1-2" @@ -58480,6 +58982,9 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"xmc" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xpx" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -58525,6 +59030,10 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"xHQ" = ( +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "xIa" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/grille_or_trash, @@ -58537,6 +59046,15 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"xIt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "xLZ" = ( /obj/structure/closet/radiation, /turf/open/floor/plasteel, @@ -58554,6 +59072,12 @@ }, /turf/open/space/basic, /area/space/nearstation) +"xOM" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"xON" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xWM" = ( /obj/structure/grille/broken, /turf/open/floor/plating, @@ -58590,6 +59114,9 @@ /obj/machinery/suit_storage_unit/rd, /turf/open/floor/plasteel, /area/science/mixing) +"ygY" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "yiN" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -93129,7 +93656,7 @@ aif aif aif aif -aif +jmw bkV fvk alK @@ -93382,11 +93909,11 @@ abp hlY ahn aiA -aiA -aiA +ahn +ahn ahn hYW -anF +iFx aod ahn apx @@ -93638,12 +94165,12 @@ unE abp nea ahn +xhu +ahn aaa -aaf -aaf ahn ahn -anE +iFx aod aoK sgV @@ -93895,10 +94422,10 @@ aaa adR ahn ahn +lda +ahn aaa aaa -aaa -aaf ahn anG aoe @@ -94151,14 +94678,14 @@ aaa aaa gXs aaa -aaa -aaa -aaa +jmC +jmC +jmC aaa aaa ahn khB -ahn +qjO ahn ahn ahn @@ -94413,16 +94940,16 @@ aaa aaa aaa aaa -aag -aag -aag -arf +qjO +vPX +jvr +tWc iep gQn -arf -myt +tfq +duD qNs -lMx +oDX sjw clO asZ @@ -94670,16 +95197,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -arf -pZv -tQk -cVp -jdT +qjO +det +isS +qjV +ehf +ehf +ehf +ehf ier -arf +qjO arm vYa aya @@ -94927,14 +95454,14 @@ aaa aaa aaa aaa -aaa -aaa -aaa -arf -arf -arf -arf -iES +eyW +vPX +isS +pLj +ehf +ehf +ehf +ehf jYI aqs hVw @@ -95184,16 +95711,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -arf -ewZ -jdT +eyW +vPX +isS +ehf +ehf +ehf +ehf +ehf tOU -arf +pvW fQF qbx qux @@ -95441,16 +95968,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -arf -qoP -prU +eyW +vPX +mNb +ehf +ehf +uBk +ehf +ehf fOc -arf +qjO oSO sAI fJa @@ -95698,16 +96225,16 @@ aaa aaa aaa aaa -aaa -aaa -aae -aaa -aaa -arf -arf -arf -arf -arf +eyW +vPX +isS +ehf +ehf +ehf +ehf +ehf +jTK +qjO mTp qEv kRk @@ -95955,15 +96482,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs +eyW +vPX +isS +ehf +ehf +ehf +ehf +ehf +jTK kHJ rEV rEV @@ -96212,15 +96739,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs +eyW +vPX +isS +ehf +ehf +ehf +ehf +ehf +jTK aqu aro aro @@ -96469,15 +96996,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa +eyW +dmP +isS +pLj +ehf +ehf +ehf +ehf +jTK aqu aro aro @@ -96726,15 +97253,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa +eyW +scl +isS +ehf +ehf +ejW +ehf +ehf +jTK aqu aro aro @@ -96983,15 +97510,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa +eyW +scl +sAb +mRh +mRh +vBb +mbT +shw +wnW aqu aro aro @@ -97240,15 +97767,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa -aaa +qjO +mWt +vVu +vVu +vVu +vVu +vVu +vVu +poh aqu aro aro @@ -97497,15 +98024,15 @@ aaa aaa aaa aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa +qjO +qjO +eyW +eyW +eyW +eyW +eyW +eyW +qjO haX rEV rEV @@ -97751,12 +98278,12 @@ aaS aaS aaS aaS -aaS -aaS -aaS -aaS -aaf -aaf +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -98009,10 +98536,10 @@ aaf aaa aaf aaa -aaf aaa -aaS -aaf +aaa +aaa +aaa aaa aaa aaa @@ -98268,7 +98795,7 @@ ads adS aeG aaa -aaS +aaa aaa aaa aaa From df4ca4b503a92c09f3b706834ab823438d55bf82 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 19:29:03 -0700 Subject: [PATCH 029/137] do after --- code/modules/pool/pool_controller.dm | 58 ++++++++++++++-------------- 1 file changed, 30 insertions(+), 28 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 07a982e412..a044bbb070 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -105,34 +105,36 @@ if(stat & (BROKEN)) return if(istype(W,/obj/item/reagent_containers)) - if(!W.reagents.total_volume) //check if there's reagent - for(var/datum/reagent/R in W.reagents.reagent_list) - if(R.type in GLOB.blacklisted_pool_reagents) - to_chat(user, "[src] cannot accept [R.name].") - return - if(R.reagent_state == SOLID) - to_chat(user, "The pool cannot accept reagents in solid form!.") - return - reagents.clear_reagents() - // This also reacts them. No nitroglycerin deathpools, sorry gamers :( - W.reagents.trans_to(reagents, max_beaker_transfer) - user.visible_message("[src] makes a slurping noise.", "All of the contents of [W] are quickly suctioned out by the machine!= min_reagent_amount) - reagent_names += R.name - else - reagents.remove_reagent(R.type, INFINITY) - rejected += R.name - if(length(reagent_names)) - reagent_names = english_list(reagent_names) - log_game("[key_name(user)] has changed the [src] chems to [reagent_names]") - message_admins("[key_name_admin(user)] has changed the [src] chems to [reagent_names].") - if(length(rejected)) - rejected = english_list(rejected) - to_chat(user, "[src] rejects the following chemicals as they do not have at least [min_reagent_amount] units of volume: [rejected]") + if(W.reagents.total_volume) //check if there's reagent + user.visible_message("[user] is feeding [src] some chemicals from [w].") + if(do_after(user, 50, target = src)) + for(var/datum/reagent/R in W.reagents.reagent_list) + if(R.type in GLOB.blacklisted_pool_reagents) + to_chat(user, "[src] cannot accept [R.name].") + return + if(R.reagent_state == SOLID) + to_chat(user, "The pool cannot accept reagents in solid form!.") + return + reagents.clear_reagents() + // This also reacts them. No nitroglycerin deathpools, sorry gamers :( + W.reagents.trans_to(reagents, max_beaker_transfer) + user.visible_message("[src] makes a slurping noise.", "All of the contents of [W] are quickly suctioned out by the machine!= min_reagent_amount) + reagent_names += R.name + else + reagents.remove_reagent(R.type, INFINITY) + rejected += R.name + if(length(reagent_names)) + reagent_names = english_list(reagent_names) + log_game("[key_name(user)] has changed the [src] chems to [reagent_names]") + message_admins("[key_name_admin(user)] has changed the [src] chems to [reagent_names].") + if(length(rejected)) + rejected = english_list(rejected) + to_chat(user, "[src] rejects the following chemicals as they do not have at least [min_reagent_amount] units of volume: [rejected]") else to_chat(user, "[src] beeps unpleasantly as it rejects the beaker. Why are you trying to feed it an empty beaker?") return From c5f2eeef3b69d7822d597503c64b179bfa5a7c38 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 19:31:57 -0700 Subject: [PATCH 030/137] FUCK --- code/modules/pool/pool_controller.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index a044bbb070..60564ce42c 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -106,7 +106,7 @@ return if(istype(W,/obj/item/reagent_containers)) if(W.reagents.total_volume) //check if there's reagent - user.visible_message("[user] is feeding [src] some chemicals from [w].") + user.visible_message("[user] is feeding [src] some chemicals from [W].") if(do_after(user, 50, target = src)) for(var/datum/reagent/R in W.reagents.reagent_list) if(R.type in GLOB.blacklisted_pool_reagents) From dbf69e80db656f27dd690353e8346a1ea90a9427 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 19:36:13 -0700 Subject: [PATCH 031/137] area pool --- icons/turf/areas.dmi | Bin 38605 -> 38771 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/turf/areas.dmi b/icons/turf/areas.dmi index aad3e78590e9d275cf62bee4a4e1bea67b2ef47a..cd504a124a780a391b56131d60b3eac740a6ad26 100644 GIT binary patch delta 8530 zcmZu#1z3~c_aC81$S?+erBS+3QbGwOM35RFFhoEaX&CV$N+Vs8f;3} zEg%w;b{k{=q2J#>p6CBQ&wcN?=bZbwvHLl@=N+sd-$#TTZ-H=e$?`_>JqH?{t)c+aA{(&IgZ^$ z2O+63HS20YTxm{7V7jsp;Nd^YTak$$+&Nk+xxKfC5lv`jX9CoDF6uqxZX>o*6F1_d zX5$neFPSai6LurXbUyf#*^-gNbdy%dMd)%le=4YAXLJj)fRH3s3Squn+wZD4dmhOu zwL{X|(;r;$%2R!}K3-wnQyKj=Bv(VW-;D6`BreIFLiak;RTp!P(UaG>rvoR!$LTs6 z+yjd`>qG2-N75|CH2~@(eb>9-3#t``2Xo|RTkao&2zncAouI0=*s7JhM|jWZN4!+Pv-x@4Lkmlo#f2|0ucyE1jk` z#`T^3?8RniyO>t~WlOsQVp!cyi z{$z=x`&y&D>FC|L*8ITzC!;88eU!cC38O>6%KF;u+ zY09}e{wBvH&xxW9r1qG3W*J_}@c4~mt@e1}U)i~AXU1Tzp_FE;2e#x~HjgbEc`H(d zL0Tfvug!hV;T@2cumQ-HU}H!iE3~R|ndV5+EP90JX;N756mo+HLRM}*sx3!;A80Ph zOr~`5)|R%XPT$IKc@n2>N={Ew)>58$ohd(VX1I)8{)Mh9#F{FSRYKe6Mjx+DHBw`; z8^7OR>JaI}CUiMz(4Z|?s#0AS>05$nX0-iAz}$Z((L zuTS$!;i@*wf0%*dmn5Xnm|Ok0fKuGiknYr01f0!gTi_s=d= z4cBO5Jx2xMow% zo%JNB|6kvr+%VJ=um6LPlc$ziMQy53#ehPKSOjeA@ z%o-wUCQ17802*iQYqCVaI&Dq%m@Hxn$q#)0D^b%qX@u&=I#5`zvGFQlzfJFd1DgV; z4z0kQ{B7QR43cBhxk*{1!#m}awvcY4O;>C9aZ`9cW%-!+vhvpPKO*_$h%isEIdxbM zKr~-K2gQchQ#R9q4XNw#^+$mH_|ZaJwcm8@>G9C7;WWz>8C8?0L)12&>M0-S>=B?K zJAYQ|{^QD0#lTXQull9(s%Hs}pl5g1i;}3z;%y^anEvh)&6g^MKRmc)4AdgiVf=qB zdW*UcZmXce_B;X2Pk%g;Be0Mz7V&Va7oj;-%Fr)B2a9-{Rr-xJD4h`>jbBcttW{9A z*n=;X*GOyB?3oo>BP-``Nxi@0&>Mh%Th3YuY7}Ji_-wwLu0m2>9=mG6DEXS{Sp~9e zw|nS2(&bCH=|vM2UvacU-}TPu&*pRK(REGYKHbmg&_8=-A#viy<(!T|r-)X6&Q;nB%*4@$fdo|@!Pg$Ea29nvGPoa}ZTAxL z@i4iHyaBBoo?UWp5H`ywtYE2X^M1bAvYX;YIsYewucf3~Is_~v`NM%Gj}PlHirZ(3 zN>oa*A{UZeCK!IugA0)XQ=FChqtr27cUQ#BK0eYeu9@-*e>IBR5*)H=*Z@-%A5KAY z28xuFWGaSGduB~@J1<_C<_4}d(#0;;$Nx9E%0B-J9Gap zcHt(ztHVCJa={%GPF-xD>Sc`r;7r8NGJpw z@m26Ik=>y2|6q;vRv59JfIw_GUBiT6u2j>`xO~yoVZ33gYxoCG4M3Y=&-U}4TWgU^ zgP=ga^1P7Ayes^Ay~^XqXdH(9%;qvW`jIs%swQ4qEA=?=L6;cg8Ca^&f|o)?Z(a!> zt=|W0zlm)-mI*aAlfF#ufr%Ls@MA{YCE)>VxIanyGlH@H1g8Hl3Yg?@@2}b*X!KhZ zYxG~e55c6V;13?wL0(G-Vspx=F5IciCSD%c!<2W*5h`zGgqM}KG>soW3f^FHcLt{i zHK31z?e7`QP!ydraRwW2x3w|qC$)uK2R1MV(`;hGeP#abwH)PJWTPR7da8%CHGh{w)&nmRqe+mvpCB4ErgH-adH|nvM@;&acK!or6X+k_s9io>l)(nGBl2 z#;QMl0q3CuV1p_aaIw>)*tzS#kvL<5uhBS6jcFL?@3godf4;3Kjs*sRr=ea_bdF)ZGWswc>NMz&ta3jOjOWl zZY`A)buHb4>P_6*5?{NlM<`2%t^b_V?d~e)>lyhAp1j*+1Dt~t_dR!Z%VZAvjM;1T z52ET0f`vLL(208f3TwmDw9^@>Y*mGRZI8TuCsY>|j!ArI1%ZuKG`I2TU7d=tN%vU9 zK9M;(u)DQ0P$9S@D8ghch3yHaDrahnv)C-dpQPk3p|a8AHh!Ca66wlJRcJ%`lq-L( z$eAT$8|B8((c@NiJ+oMQ6Cn0fn?aw=D781avD|hz!Md`B|J>Q0fw{mbK({H`k{ zB|QxNCrQWuk~0rqdy@@{ILLz_Y~#X@eYXc7~+9y@yTh>vs(3 zK~-;Wwx7{XF;?(rQ{dyjv@mbWJFF5W@v*JQ2J6jYKkB6hqd6lTM*7b6`px`&q3?r< zt9VrLxY*UdY-C4M95$o=vJopoKj!rxsKcrvP4l*YxsBS8s%32;@pN+tc1G3Sr`jZ& z;9uVRJl_cU3v9kHDnrL$1A55u`7f{18LjISEODW_NyCBHlKMkvfI20>^dX6Ob7u}V zV3GsF6Hr0IZEC=!17dYnc0^AYJZO>sZz1i)2a@R)sW6yAy~x}y#!3Lu0X%HKw zaui$%!Wx!uForKRcI(hoL*<455T=-Y2mf|Y3sTUdMSQgE=33C{h@v&(+ap|MSY->A zxO&AB&R4^;MJVI%G!+ennes(V=keE4#grf!lGwyhNdC@(;pI)e8L)Q8UU15EkR1)_ zS4pKplwC+-6Gb6!c23Tm<2-+t4cbFt#C!_*DjG7~);~py){Lm0h&BjKdo*-0T3CS! z!6;O3dQnX?4ywJ>ZAW_Vdf6T?uUAS5)f-0`LSU-vR$4=3<-y!796g{2sy}2eC7@q^ zB$2+t?-Q8{OI49H=&lMw7mkZ8XS%mqykXHak)RJZ(#=5wO1|wNQ1m+Ew;g~x|4=xeb$#O?S#hng z*+$=La@}|Otm15kCzgF_T+qAHz+LIL~H@ z*5!)k;jgi_a3UnmOB{KdD1X^Y*X~{=a7A6QnAJf9=6itC52D;qN68yB-wyUV~{pEmTYWy5cAZ z2EAyy8%*}1yHxzamOx&sX==EjswOk2-JXo>e7kb`a_NXitJS7TO!rg2k3}Fb6NrQI zY@r-CV-S93aQD`&F0YGDh(>cDVEc*%nner-<1E?|FK&?MZykIyP+zZ9SUHJzz@Aj( znlHTaV)s2QKRlV6Yxa5Xav7u>O9f_Yxi(YusqFsRI4t0MuTc;9`xromcu=ysp z!rD|PBlk|&g!F?Z>E}ewFr87?-*UEbjU)J((5=;@6w|h~{e}Q3391jYjv^uxg zXWY8iuO-=HifS)I7x-&=79vBwuNZJmg)hR^=a}pSD_2d>*@@5*skG33{VknVDwBq> zebJ?<;`wky^tw{)dN0FGkmcn(j&cuGR9e-w5B1k+x~c9Q+5Lu>bRW{*xvhF@HBGin z2(fKoCVCk5pt2L+DLoH~K?d7E}jkO+pYKt-kx>%}3>8HX2uzf*VEis7k=jegn z>nOJ=rPTG@m8lB+!$zn)(M>_g=pOlS{IG!f!qGjX0>`s@7Waw}L}(q2-q7v{TlFwY zRXS%McSQ&#D2wq|Fj>`$TBe85<;LIYtOK4_EXQWaM7GlM|wHGdkv<)0uWe7is(ODxA_MN)hM-L>H$1q{+7F#1L`%eSfv zY7ar)X7@S8xgH5`FA(Q*>u&3~`YmHJr`cTjcmlOyGzT(0gR+8!{rQHh7Q*2z6F^Rk z%KR9&1ZP?J_Un-?)mhBEzB}!hTev{@x#GFKi(%VCDg;%3W!d1Z1db1Sq}vsZ8BBe> z<~GAy1O+~cQJr<@%z5j^($+y$+!*^M$t%EbB+Rg<>qX}&>B?mH486O`k55CUSplW9 zsKA-G=!t-jKR4u}!@AKjsFfGO-BS>9(y%XXJGmarY`+OAACXrW+b-)qhWmJvSrmqY5FhyD=RWTm|1hGGzImask6r07CCd6L_LEjkX| zI2r=l4mHesu+j?$DA5fZ^7gtLeiA?BbFk-7u&&~#KkbJ#@QFV44%q0FEROu4_ttPB zWWRV!;hr!3)o*Xrx#W(+8mFrw61@=eZ?=e~KBuRhEQs*c*|Z7TZm#?2>ODGqc#~Fj zZhvgpx=GgHW0;j+1v0BWgDY#2wy4$GJqJiH|Ee6B@w!qi?%{sjS5XaT{M=@(?Gkt8 z`b|UC!ulI>Oix6f8ibS*ilRzJmZQ59xl8nBdJoh*Me_5z4MeJ~K0}ME7Uj@+_t|w? z_m2z0uV9_11+}bA{F*8rD*3gxiBV~R*LSBbOQrTz?|D9XYZ3M5plfXxqzT@a0XCYl zQs+MyTv}71*Vn90y)ojlfFg*3@xDsMSkqLGY+X4!F*PwP&ky#<3xX&b_kfpD9#K`M zM|F!M%Ub?DGJ}3ifn~u-7UKLho{IkM%7@QhU-$1RxVs_&%Sjnpj@>VgQrLhbacQl8 zpb|0wL`2_Sg{BtA?0Y!h!pB_YlS zJ*v!dZe%MNp1j^mwOUY);$e4B*NYO?^4th;S>J^DqYmUnCR#*M zOQJaKFX#>RmH}#l_|!D56~X9x(Koa#3w86^9g*pw2cF&Z_6}~=)QGD^N6!Wc{oKzl z)Eu-v5(zu*rv6lKRP)-1BT+1==mdd-}=EZxsFsuWe z61u8V0jemPicE9#r*~hAxMZHA%3cP0W?@3dSvisX`5=bHDtW$QR@VCZ#%_jr%QO2C3>6306PCW)-&Uz{?)j*eRKGUDYO~V!O<3;|&17*nfo;v!Bx%iN-W9;QxDvIh zTnEWM`~s-OA89>ZEmQLHP5PF{W1aIbjb8L=WO012R`L7SP>p+Ds^k@uEMiBRbs2cc z@Ic0=0o!%17b+*09^~8S2q;Vl)(3qaPt1dh>_R?V)_cDW??&f3UKq*1r$|uRYd1}h zu4yb{$XkU8Xv^2DB+hfGOceP&2O}ES)%(UQ5gZ|uh^`G9- znId+j9!(6L{Fama)bLLOAd&nOXY^4zK{^;dK^ zH`#G`J{4~-oKxnilpIngdh^EUmF3qa%uc;P{AlXA1jQ#_h&^3@Sev`3>R@u@kz(usc>znt4^OI zvyEibda<#YpT{omFDDg=g83<_%XZ91`C_7jMe)O4W(2!b#9|+2!Ai@g( z_YQ*L67rfwo(v4>Exy}sc4^zIgc|mP8mgrBI{T`j$R)-|h@GKDbBh@=0GeHR&eg_E zFJt)poc_AyV2Ujsy*48^L{n2XfM~R;$#zkaq)!+0hB~QJ#|P`EvqtvqiThnhY}Fsp zTHOma5pUF6@zh|RwU`;tx#d^cJ$=E(n8rBJX1K2(yp+D zMc!3RiV%_)>R{iQIe zakMi+yTLq1+__8HzfLcI5jxeQ4!(u!=jhD(#Uhp;&Gi}L(3!C=X@g9UO>Cpwg>YSU zuo5uBpAO|-+&TA8lpXkz)RhM!0HR1@^Jc&R1>8ZY&sxfMoz!bpX?o~=I{1DVcx zqUUchHTDC`t#Ro^o^!Zna-r{lp7f-}$w@Uxyu+aQypuVXJAJyO!4F!=rHoC@gEAd+(nDR}?-Dj4hiG+Y%ydsEF4+u{?H{J7_P?-t$=S!>VepKiUL>JWMfiKq zQpSv8f&$dh#p)=85+ZvE!<2B@5-kQp_*So(ne5k&xK7Q-%v`oW%33|Hm&f1hmnfG% zFC1nyf^4)zeg4fKu-0Aa44APAJ0jDNN@_8Ul=?C8BVNU|hZn&PuIMoWt5@?dLjiYk z(f4k2_yh+bCDP_1X)kL}5$LQLsxt$)rtIWMS9c!dYDV;AM$AXWrD z>ZoXy&s(&1p5+RQd{rTJr<*<)?-^zS-+t^H^fD>oHnOCjR8HXJk=brK>R_u$u1_K5 z86crpU0tKK&0`{9O*q8w+(j6{HO`h*NFV?$@QnrT+Hc;G5>+n>)ZNX8zSVP)l4R25 zU!RfmO@{eZLlr3*c*mViLHd63#<*W>v2>d19rs_CsZ4Ge@?VYdH+BF3 delta 8377 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 Date: Sat, 25 Jan 2020 19:46:32 -0700 Subject: [PATCH 032/137] bugfix --- code/modules/pool/pool_controller.dm | 2 +- code/modules/pool/pool_main.dm | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 60564ce42c..8684062ec8 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -178,7 +178,7 @@ for(var/datum/reagent/R in reagents.reagent_list) if(R.reagent_state == SOLID) R.reagent_state = LIQUID - swimee.reagents.add_reagent(R.name, 0.5) //osmosis + swimee.reagents.add_reagent(R.type, 0.5) //osmosis reagents.reaction(swimee, VAPOR, 0.03) //3 percent for(var/obj/objects in W) if(W.reagents) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index cb9f598729..36f334185a 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -37,10 +37,11 @@ name = "water" icon = 'icons/turf/pool.dmi' icon_state = "bottom" - density = 0 - mouse_opacity = 0 + density = FALSE + mouse_opacity = MOUSE_OPACITY_TRANSPARENT layer = ABOVE_MOB_LAYER anchored = TRUE + resistance_flags = INDESTRUCTIBLE /obj/effect/overlay/water/top icon_state = "top" From 259b9923176ec009167f13b89e20d38ad17f8e9e Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 19:56:50 -0700 Subject: [PATCH 033/137] AAAAAAA --- code/modules/pool/pool_main.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 36f334185a..6cf8d27cea 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -86,7 +86,9 @@ /turf/open/pool/Exited(atom/A, atom/newLoc) . = ..() if(isliving(A)) - controller?.mobs_in_pool -= A + var/turf/open/pool/P = newLoc + if(!istype(P) || (P.controller != controller)) + controller?.mobs_in_pool -= A // Entered logic /turf/open/pool/Entered(atom/movable/AM, atom/oldloc) From 02fe4b7630b3d0090260d699620cb76b9f5efd7c Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 20:00:29 -0700 Subject: [PATCH 034/137] this is a bad idea --- code/modules/pool/pool_controller.dm | 2 +- code/modules/pool/pool_drain.dm | 22 +++++++++++++++------- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 8684062ec8..7eef6fa2c3 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -294,7 +294,7 @@ mist_off() interact_delay = world.time + 60 linked_drain.active = TRUE - linked_drain.cycles_left = 15 + linked_drain.cycles_left = 75 if(!linked_drain.filling) new /obj/effect/whirlpool(linked_drain.loc) temperature = POOL_NORMAL diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 930633eaa5..3fb716f9ff 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -23,16 +23,24 @@ var/cooldown /obj/machinery/pool/drain/Initialize() - START_PROCESSING(SSprocessing, src) + START_PROCESSING(SSfastprocess, src) whirling_mobs = list() return ..() /obj/machinery/pool/drain/Destroy() + STOP_PROCESSING(SSfastprocess, src) controller.linked_drain = null controller = null whirling_mobs = null return ..() +/obj/machinery/pool/drain/proc/is_in_our_pool(atom/A) + . = FALSE + if(istype(A.loc, /turf/open/pool)) + var/turf/open/pool/P = A.loc + if(P.controller == controller) + . = TRUE + // This should probably start using move force sometime in the future but I'm lazy. /obj/machinery/pool/drain/process() if(!filling) @@ -46,10 +54,10 @@ if(cycles_left-- > 0) playsound(src, 'sound/effects/fillingwatter.ogg', 100, TRUE) for(var/obj/O in orange(min(fill_push_range, 10), src)) - if(!O.anchored) + if(!O.anchored && is_in_our_pool(O)) step_away(O, src) for(var/mob/M in orange(min(fill_push_range, 10), src)) //compiler fastpath apparently? - if(!M.anchored && isliving(M)) + if(!M.anchored && isliving(M) && is_in_our_pool(M)) step_away(M, src) else for(var/turf/open/pool/P in controller.linked_turfs) @@ -70,20 +78,20 @@ playsound(src, 'sound/effects/pooldrain.ogg', 100, TRUE) playsound(src, "water_wade", 60, TRUE) for(var/obj/O in orange(min(drain_suck_range, 10), src)) - if(!O.anchored) + if(!O.anchored && is_in_our_pool(O)) step_towards(O, src) for(var/mob/M in orange(min(drain_suck_range, 10), src)) - if(isliving(M) && !M.anchored) + if(isliving(M) && !M.anchored && is_in_our_pool(M)) step_towards(M, src) whirl_mob(M) if(ishuman(M)) var/mob/living/carbon/human/H = M playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) if(H.lying) //down for any reason - H.adjustBruteLoss(5) + H.adjustBruteLoss(2.5) to_chat(H, "You're caught in the drain!") else - H.apply_damage(4, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs + H.apply_damage(2.5, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs to_chat(H, "Your legs are caught in the drain!") else for(var/turf/open/pool/P in controller.linked_turfs) From acfc7ca41a527b78c61c894dd009125e9bf71409 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 20:18:05 -0700 Subject: [PATCH 035/137] indestructible --- code/modules/pool/pool_controller.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 7eef6fa2c3..91c43af290 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -4,6 +4,7 @@ /obj/machinery/pool icon = 'icons/obj/machines/pool.dmi' anchored = TRUE + resistance_flags = INDESTRUCTIBLE /obj/machinery/pool/controller name = "\improper Pool Controller" @@ -12,7 +13,6 @@ density = TRUE use_power = TRUE idle_power_usage = 75 - resistance_flags = INDESTRUCTIBLE /// How far it scans for pool objects var/scan_range = 6 /// Is pool mist currently on? From f23799e3b4543dd2ca0ba98a12cbc7f1db94f6dd Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 20:25:18 -0700 Subject: [PATCH 036/137] uhh yeah --- code/modules/pool/pool_controller.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 91c43af290..4652c0b01c 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -281,16 +281,19 @@ return if(href_list["IncreaseTemp"]) if(CanUpTemp(usr)) + visible_message("[usr] presses a button on [src].") temperature++ update_temp() interact_delay = world.time + 15 if(href_list["DecreaseTemp"]) if(CanDownTemp(usr)) + visible_message("[usr] presses a button on [src].") temperature-- update_temp() interact_delay = world.time + 15 if(href_list["Activate Drain"]) if((drainable || issilicon(usr) || IsAdminGhost(usr)) && !linked_drain.active) + visible_message("[usr] presses a button on [src].") mist_off() interact_delay = world.time + 60 linked_drain.active = TRUE From 1b7a7737ded0732e5a874750e25d90648b3a5750 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 20:28:26 -0700 Subject: [PATCH 037/137] reagent drain --- code/modules/pool/pool_controller.dm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 4652c0b01c..0d7d7d52ab 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -99,6 +99,15 @@ to_chat(user, "The interface on [src] is already too damaged to short it again.") return +/obj/machinery/pool/controller/AltClick(mob/user) + . = ..() + if(isliving(user) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated()) + visible_message("[user] starts to drain [src]!") + if(do_after(user, 50, target = src)) + reagents.remove_all(INFINITY) + visible_message("[user] drains [src].") + say("Reagents cleared.") + /obj/machinery/pool/controller/attackby(obj/item/W, mob/user) if(shocked && !(stat & NOPOWER)) shock(user,50) From 0b119cbd52b92f6e1a1e479ccf546bd309d37be9 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 25 Jan 2020 23:11:36 -0700 Subject: [PATCH 038/137] ok --- code/modules/pool/pool_drain.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 3fb716f9ff..e9929bf53e 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -84,7 +84,7 @@ if(isliving(M) && !M.anchored && is_in_our_pool(M)) step_towards(M, src) whirl_mob(M) - if(ishuman(M)) + if(ishuman(M) && (get_dist(M, src) <= 1)) var/mob/living/carbon/human/H = M playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) if(H.lying) //down for any reason From b742229539db973229679da0f24ce98c7e5934e0 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:20:10 -0700 Subject: [PATCH 039/137] Update pool.dm --- code/__DEFINES/pool.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm index aabcd3493e..47345a80a6 100644 --- a/code/__DEFINES/pool.dm +++ b/code/__DEFINES/pool.dm @@ -8,5 +8,6 @@ GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( /datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases /datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc. - /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/drug/anaphrodisiacplus //literally asking for prefbreaks + /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/drug/anaphrodisiacplus, //literally asking for prefbreaks + /datum/reagent/femcum, /datum/reagent/semen //NO. )) From 0157371a15744d640714e4be068aff20e858c872 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:21:12 -0700 Subject: [PATCH 040/137] Update pool_drain.dm --- code/modules/pool/pool_drain.dm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index e9929bf53e..3359f26520 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -19,6 +19,8 @@ var/cycles_left = 0 /// Mobs we are swirling around var/list/whirling_mobs + /// Suck in once per x ticks + var/suck_in_once_per = 3 var/cooldown @@ -82,7 +84,8 @@ step_towards(O, src) for(var/mob/M in orange(min(drain_suck_range, 10), src)) if(isliving(M) && !M.anchored && is_in_our_pool(M)) - step_towards(M, src) + if(!(cycles_left % suck_in_once_per)) + step_towards(M, src) whirl_mob(M) if(ishuman(M) && (get_dist(M, src) <= 1)) var/mob/living/carbon/human/H = M From 171d50caff021ffce94d5cc6e2159bd186f524e7 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:22:34 -0700 Subject: [PATCH 041/137] Update sharks.dm --- code/modules/mob/living/simple_animal/hostile/sharks.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/hostile/sharks.dm b/code/modules/mob/living/simple_animal/hostile/sharks.dm index bceec6769c..c94e49b286 100644 --- a/code/modules/mob/living/simple_animal/hostile/sharks.dm +++ b/code/modules/mob/living/simple_animal/hostile/sharks.dm @@ -85,7 +85,7 @@ vision_range = 0 /mob/living/simple_animal/hostile/shark/kawaii/death() - visible_message("[src] says : Senpai, you noticed~!") + say("Senpai, you noticed~!") LoseAggro() ..() walk(src, 0) From bc05819cee8aa78092b16f74e813e46f9277f785 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:23:21 -0700 Subject: [PATCH 042/137] Update pool_drain.dm --- code/modules/pool/pool_drain.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 3359f26520..980de47196 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -47,9 +47,9 @@ /obj/machinery/pool/drain/process() if(!filling) for(var/obj/item/I in range(min(item_suction_range, 10), src)) - if(!I.anchored && (I.w_class == WEIGHT_CLASS_SMALL)) + if(!I.anchored && (I.w_class <= WEIGHT_CLASS_SMALL)) step_towards(I, src) - if((I.w_class == WEIGHT_CLASS_TINY) && (get_dist(I, src) == 0)) + if((I.w_class <= WEIGHT_CLASS_TINY) && (get_dist(I, src) == 0)) I.forceMove(controller.linked_filter) if(active) if(filling) From 1b164e1e1ee3485c2d9e406e9b86fe04003f28f9 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:25:16 -0700 Subject: [PATCH 043/137] Update pool_controller.dm --- code/modules/pool/pool_controller.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 0d7d7d52ab..5775e7adb6 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -54,6 +54,10 @@ /// Old reagent color, used to determine if update_color needs to reset colors. var/old_rcolor +/obj/machinery/pool/controller/examine(mob/user) + . = ..() + . += "Alt click to drain reagents.") + /obj/machinery/pool/controller/Initialize() . = ..() START_PROCESSING(SSfastprocess, src) From 9867d7b377f3038760a54a33c6ead75eddbb3798 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:28:28 -0700 Subject: [PATCH 044/137] -20% --- code/modules/pool/pool_drain.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 980de47196..2fa89742c0 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -91,7 +91,7 @@ var/mob/living/carbon/human/H = M playsound(src, pick('sound/misc/crack.ogg','sound/misc/crunch.ogg'), 50, TRUE) if(H.lying) //down for any reason - H.adjustBruteLoss(2.5) + H.adjustBruteLoss(2) to_chat(H, "You're caught in the drain!") else H.apply_damage(2.5, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs From c76bf202a8e7e0b915cafb84b66d98884a61373e Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:34:31 -0700 Subject: [PATCH 045/137] ladder climb --- code/modules/pool/pool_main.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 6cf8d27cea..00a399f4be 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -79,6 +79,8 @@ return ..() //people pulling stuff out of pool if(!ishuman(AM)) return ..() //human weak, monkey (and anyone else) ook ook eek eek strong + if(isliving(AM) && (locate(/obj/structure/pool/ladder) in src)) + return ..() //climbing out return istype(newloc, type) return ..() From 8c0d8b694c6d0d08316aa466070055e148644fb0 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:39:16 -0700 Subject: [PATCH 046/137] missing bracket --- code/modules/pool/pool_controller.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 5775e7adb6..e579ea1ab2 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -56,7 +56,7 @@ /obj/machinery/pool/controller/examine(mob/user) . = ..() - . += "Alt click to drain reagents.") + . += "Alt click to drain reagents." /obj/machinery/pool/controller/Initialize() . = ..() From 6eac97524f07e5cdb4c46c228ffe95fea4041779 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 22:42:48 -0700 Subject: [PATCH 047/137] compile --- code/__DEFINES/pool.dm | 2 +- code/modules/pool/pool_main.dm | 2 +- code/modules/pool/pool_structures.dm | 7 ------- 3 files changed, 2 insertions(+), 9 deletions(-) diff --git a/code/__DEFINES/pool.dm b/code/__DEFINES/pool.dm index 47345a80a6..1e66109dc7 100644 --- a/code/__DEFINES/pool.dm +++ b/code/__DEFINES/pool.dm @@ -9,5 +9,5 @@ GLOBAL_LIST_INIT(blacklisted_pool_reagents, list( /datum/reagent/toxin/plasma, /datum/reagent/oxygen, /datum/reagent/nitrous_oxide, /datum/reagent/nitrogen, //gases /datum/reagent/fermi, //blanket fermichem ban sorry. this also covers mkultra, genital enlargers, etc etc. /datum/reagent/drug/aphrodisiac, /datum/reagent/drug/anaphrodisiac, /datum/reagent/drug/aphrodisiacplus, /datum/reagent/drug/anaphrodisiacplus, //literally asking for prefbreaks - /datum/reagent/femcum, /datum/reagent/semen //NO. + /datum/reagent/consumable/femcum, /datum/reagent/consumable/semen //NO. )) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 00a399f4be..b7406606c9 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -108,7 +108,7 @@ if(!SEND_SIGNAL(victim, COMSIG_IS_SWIMMING)) //poor guy not swimming time to dunk them! victim.AddElement(/datum/element/swimming) controller.mobs_in_pool += victim - if(locate(/obj/structure/pool/ladder) in victim.loc) //safe climbing + if(locate(/obj/structure/pool/ladder) in src) //safe climbing return if(iscarbon(AM)) //FUN TIME! var/mob/living/carbon/H = victim diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 914b2db129..7788234b98 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -31,13 +31,6 @@ desc = "The less-loved portion of the jumping board." dir = EAST -/obj/structure/pool/Rboard/CheckExit(atom/movable/O as mob|obj, target as turf) - if(istype(O) && O.pass_flags & PASSGLASS) - return TRUE - if(get_dir(O.loc, target) == dir) - return FALSE - return TRUE - /obj/structure/pool/Lboard name = "JumpBoard" icon_state = "boardleft" From 70970b78f41c434c4807ee0ca55d66e65648dc02 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 23:00:03 -0700 Subject: [PATCH 048/137] forcemove --- code/modules/pool/pool_structures.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 7788234b98..bf6181df2e 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -70,7 +70,7 @@ jumper.pixel_y = 7 jumper.dir = 8 sleep(1) - jumper.loc = T + jumper.forceMove(T) addtimer(CALLBACK(src, .proc/dive, jumper), 10) /obj/structure/pool/Lboard/proc/dive(mob/living/carbon/jumper) From 59e41c20bfd33514ae1ae6b5a9c3852bb8559860 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 23:09:34 -0700 Subject: [PATCH 049/137] changes --- code/modules/pool/pool_controller.dm | 22 +++++++++++++--------- code/modules/pool/pool_structures.dm | 20 +++++++++++++------- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index e579ea1ab2..d56dbddf90 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -111,6 +111,7 @@ reagents.remove_all(INFINITY) visible_message("[user] drains [src].") say("Reagents cleared.") + update_color() /obj/machinery/pool/controller/attackby(obj/item/W, mob/user) if(shocked && !(stat & NOPOWER)) @@ -148,6 +149,7 @@ if(length(rejected)) rejected = english_list(rejected) to_chat(user, "[src] rejects the following chemicals as they do not have at least [min_reagent_amount] units of volume: [rejected]") + update_color() else to_chat(user, "[src] beeps unpleasantly as it rejects the beaker. Why are you trying to feed it an empty beaker?") return @@ -252,17 +254,19 @@ var/turf/open/pool/color1 = X if(bloody) if(rcolor) - color1.watereffect.color = BlendRGB(rgb(150, 20, 20), rcolor, 0.5) - color1.watertop.color = color1.watereffect.color - else - color1.watereffect.color = rgb(150, 20, 20) - color1.watertop.color = color1.watereffect.color + var/thecolor = BlendRGB(rgb(150, 20, 20), rcolor, 0.5) + color1.watereffect.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) + color1.watertop.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) + + var/thecolor = rgb(150, 20, 20) + color1.watereffect.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) + color1.watertop.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) else if(!bloody && rcolor) - color1.watereffect.color = rcolor - color1.watertop.color = color1.watereffect.color + color1.watereffect.add_atom_colour(rcolor, FIXED_COLOUR_PRIORITY) + color1.watertop.add_atom_colour(rcolor, FIXED_COLOUR_PRIORITY) else - color1.watereffect.color = null - color1.watertop.color = null + color1.watereffect.remove_atom_colour(FIXED_COLOUR_PRIORITY) + color1.watertop.remove_atom_colour(FIXED_COLOUR_PRIORITY) /obj/machinery/pool/controller/proc/update_temp() if(mist_state) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index bf6181df2e..28120e1cb2 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -40,15 +40,17 @@ var/jumping = FALSE var/timer -/obj/structure/pool/Lboard/proc/backswim(obj/O, mob/living/user) //Puts the sprite back to it's maiden condition after a jump. +/obj/structure/pool/Lboard/proc/backswim() if(jumping) for(var/mob/living/jumpee in loc) //hackzors. playsound(jumpee, 'sound/effects/splash.ogg', 60, TRUE, 1) - jumpee.layer = 4 - jumpee.pixel_x = 0 - jumpee.pixel_y = 0 - jumpee.Stun(2) jumpee.AddElement(/datum/element/swimming) + jumpee.Stun(2) + +/obj/structure/pool/Lboard/proc/reset_position(mob/user, initial_layer, initial_px, initial_py) + user.layer = initial_layer + user.pixel_x = initial_px + user.pixel_y = initial_py /obj/structure/pool/Lboard/attack_hand(mob/living/user) if(iscarbon(user)) @@ -65,15 +67,18 @@ "You climb up \the [src] and prepares to jump!") jumper.Stun(40) jumping = TRUE + var/original_layer = jumper.layer + var/original_px = jumper.pixel_x + var/original_py = jumper.pixel_y jumper.layer = RIPPLE_LAYER jumper.pixel_x = 3 jumper.pixel_y = 7 jumper.dir = 8 sleep(1) jumper.forceMove(T) - addtimer(CALLBACK(src, .proc/dive, jumper), 10) + addtimer(CALLBACK(src, .proc/dive, jumper, original_layer, original_px, original_py), 10) -/obj/structure/pool/Lboard/proc/dive(mob/living/carbon/jumper) +/obj/structure/pool/Lboard/proc/dive(mob/living/carbon/jumper, original_layer, original_px, original_py) switch(rand(1, 100)) if(1 to 20) jumper.visible_message("[jumper] goes for a small dive!", \ @@ -138,6 +143,7 @@ var/atom/throw_target = get_edge_target_turf(src, dir) jumper.throw_at(throw_target, 6, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) addtimer(CALLBACK(src, .proc/togglejumping), 35) + reset_position(jumper, original_layer, original_px, original_py) /obj/structure/pool/Lboard/proc/togglejumping() jumping = FALSE From 6cc995a13732aeeed4b878c4b32bc2a6f17b577b Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 27 Jan 2020 23:10:16 -0700 Subject: [PATCH 050/137] atom color --- code/modules/pool/pool_controller.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index d56dbddf90..94e16a245a 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -257,13 +257,13 @@ var/thecolor = BlendRGB(rgb(150, 20, 20), rcolor, 0.5) color1.watereffect.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) color1.watertop.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) - + else var/thecolor = rgb(150, 20, 20) color1.watereffect.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) color1.watertop.add_atom_colour(thecolor, FIXED_COLOUR_PRIORITY) else if(!bloody && rcolor) - color1.watereffect.add_atom_colour(rcolor, FIXED_COLOUR_PRIORITY) - color1.watertop.add_atom_colour(rcolor, FIXED_COLOUR_PRIORITY) + color1.watereffect.add_atom_colour(rcolor, FIXED_COLOUR_PRIORITY) + color1.watertop.add_atom_colour(rcolor, FIXED_COLOUR_PRIORITY) else color1.watereffect.remove_atom_colour(FIXED_COLOUR_PRIORITY) color1.watertop.remove_atom_colour(FIXED_COLOUR_PRIORITY) From b61269c7e24cc11e5586f4e1a70710fff60cfd75 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Tue, 28 Jan 2020 20:06:15 -0600 Subject: [PATCH 051/137] brings the map back to standard (so I can re-do it and make it not conflict) --- _maps/map_files/BoxStation/BoxStation.dmm | 1493 +++++++-------------- 1 file changed, 493 insertions(+), 1000 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 96f4e47bd6..f5b76d1ba9 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -173,6 +173,19 @@ "aay" = ( /turf/open/floor/plating, /area/security/prison) +"aaz" = ( +/obj/structure/lattice/catwalk, +/obj/item/stack/marker_beacon{ + anchored = 1; + icon_state = "markerburgundy-on"; + light_color = "#FA644B"; + light_power = 3; + light_range = 3; + name = "Docking Beacon"; + picked_color = "Burgundy" + }, +/turf/open/space/basic, +/area/space/nearstation) "aaA" = ( /obj/machinery/seed_extractor, /turf/open/floor/plasteel, @@ -234,10 +247,46 @@ /obj/structure/chair/stool, /turf/open/floor/plasteel, /area/security/prison) +"aaK" = ( +/obj/structure/lattice/catwalk, +/obj/item/stack/marker_beacon{ + anchored = 1; + icon_state = "markerburgundy-on"; + light_color = "#FA644B"; + light_power = 3; + light_range = 3; + name = "Docking Beacon"; + picked_color = "Burgundy" + }, +/turf/open/floor/plating, +/area/space/nearstation) +"aaL" = ( +/obj/machinery/photocopier, +/turf/open/floor/wood, +/area/library) +"aaM" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) "aaN" = ( /obj/structure/chair/sofa/right, /turf/open/floor/plasteel, /area/security/prison) +"aaO" = ( +/obj/effect/spawner/lootdrop/keg, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) "aaP" = ( /obj/machinery/computer/cryopod{ dir = 8; @@ -248,6 +297,12 @@ }, /turf/open/floor/plasteel, /area/security/prison) +"aaQ" = ( +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) "aaR" = ( /obj/structure/lattice, /obj/structure/sign/warning/securearea{ @@ -285,6 +340,15 @@ }, /turf/open/floor/plasteel, /area/security/prison) +"aaY" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/obj/item/poster/random_official, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) "aaZ" = ( /turf/closed/wall/r_wall, /area/ai_monitored/security/armory) @@ -505,6 +569,11 @@ "abF" = ( /turf/open/floor/plasteel/freezer, /area/security/prison) +"abG" = ( +/obj/structure/door_assembly/door_assembly_mai, +/obj/item/electronics/airlock, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) "abH" = ( /obj/structure/table, /obj/item/storage/box/chemimp{ @@ -1565,6 +1634,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) +"adO" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating/airless, +/area/space/nearstation) "adP" = ( /obj/structure/cable{ icon_state = "2-8" @@ -1979,6 +2052,34 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"aeD" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"aeE" = ( +/obj/structure/girder, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"aeF" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/machinery/computer/station_alert{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) "aeG" = ( /obj/structure/cable, /obj/machinery/power/solar{ @@ -2357,6 +2458,12 @@ }, /turf/open/floor/plasteel, /area/security/main) +"afn" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "afo" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod Three" @@ -2377,6 +2484,39 @@ }, /turf/open/space/basic, /area/space) +"afq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"afr" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"afs" = ( +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -31 + }, +/obj/machinery/computer/monitor{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) "aft" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 5 @@ -2687,6 +2827,15 @@ /obj/machinery/atmospherics/pipe/manifold4w/general/visible, /turf/open/floor/plasteel, /area/engine/atmos) +"age" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "agf" = ( /obj/structure/table, /obj/item/stack/sheet/metal, @@ -2836,6 +2985,10 @@ /obj/machinery/suit_storage_unit/security, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) +"agv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "agw" = ( /obj/structure/table, /obj/machinery/syndicatebomb/training, @@ -2965,6 +3118,14 @@ }, /turf/open/floor/plasteel, /area/security/main) +"agH" = ( +/obj/machinery/bluespace_beacon, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/landmark/start/cyborg, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) "agI" = ( /obj/machinery/airalarm{ pixel_y = 23 @@ -3094,6 +3255,12 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/warden) +"agX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "agY" = ( /obj/structure/table, /obj/item/storage/fancy/donut_box, @@ -3334,6 +3501,16 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) +"ahw" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ahx" = ( /obj/structure/cable{ icon_state = "4-8" @@ -3984,12 +4161,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aiA" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/fore/secondary) "aiB" = ( @@ -4479,6 +4651,16 @@ /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel, /area/security/brig) +"ajC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ajD" = ( /obj/structure/cable{ icon_state = "4-8" @@ -4687,6 +4869,18 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/maintenance/solars/port/fore) +"ajX" = ( +/obj/machinery/computer/teleporter{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ajY" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/start/cyborg, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/atmos) "ajZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/warning/vacuum/external{ @@ -4970,6 +5164,18 @@ }, /turf/open/floor/plasteel, /area/security/courtroom) +"akz" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/landmark/start/cyborg, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) "akA" = ( /obj/structure/chair{ dir = 8; @@ -6158,8 +6364,11 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anE" = ( -/obj/structure/cable{ - icon_state = "4-8" +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/machinery/door/airlock/external{ + req_access_txt = "13" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6167,16 +6376,11 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anG" = ( -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/fitness"; - name = "Pool Room APC"; - pixel_y = -23 - }, -/obj/structure/cable{ - icon_state = "0-8" +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 }, /turf/open/floor/plating, -/area/crew_quarters/fitness/pool) +/area/maintenance/fore/secondary) "anH" = ( /obj/structure/sign/warning/electricshock, /turf/closed/wall/r_wall, @@ -6334,7 +6538,7 @@ dir = 10 }, /turf/closed/wall, -/area/crew_quarters/fitness/pool) +/area/maintenance/fore/secondary) "aof" = ( /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/fore) @@ -7162,10 +7366,14 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/door/airlock{ + id_tag = "Room Two"; + name = "Room Seven - Luxury Suite" + }, /obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/dorms) "aqu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -29982,17 +30190,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bwc" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/quartermaster/office) "bwd" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -49291,47 +49488,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) -"ctu" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ctv" = ( /turf/closed/wall/r_wall, /area/space/nearstation) -"ctw" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/machinery/computer/station_alert, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) -"ctx" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"cty" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ctz" = ( /obj/machinery/door/poddoor/shutters{ id = "teledoor"; @@ -49376,41 +49535,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) -"ctG" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctH" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -31 - }, -/obj/machinery/computer/monitor, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) -"ctI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ctJ" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49434,13 +49558,6 @@ }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) -"ctM" = ( -/obj/machinery/bluespace_beacon, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) "ctN" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 10 @@ -49448,13 +49565,6 @@ /obj/structure/lattice, /turf/open/space, /area/space/nearstation) -"ctP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ctQ" = ( /obj/structure/table, /obj/machinery/microwave{ @@ -49480,28 +49590,6 @@ /obj/structure/sign/warning/radiation/rad_area, /turf/closed/wall, /area/engine/engineering) -"ctS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"ctT" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ctU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -49524,10 +49612,6 @@ /obj/structure/chair, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) -"ctW" = ( -/obj/machinery/computer/teleporter, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) "ctX" = ( /obj/machinery/camera{ c_tag = "MiniSat Teleporter"; @@ -49808,11 +49892,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/atmos) -"cuC" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/atmos) "cuD" = ( /obj/machinery/light/small{ dir = 8 @@ -49861,17 +49940,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) -"cuG" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) "cuH" = ( /obj/machinery/light/small{ dir = 8 @@ -53150,10 +53218,6 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"cUE" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "cVb" = ( /turf/closed/wall, /area/hallway/secondary/service) @@ -53211,15 +53275,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"det" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "dfh" = ( /obj/machinery/power/apc{ areastring = "/area/science/circuit"; @@ -53275,29 +53330,6 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) -"diJ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"dkk" = ( -/obj/machinery/photocopier{ - pixel_x = -5; - pixel_y = -5 - }, -/turf/open/floor/wood, -/area/library) -"dlv" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"dmP" = ( -/obj/structure/table/glass, -/obj/item/clothing/under/shorts/blue{ - desc = "So comfy and easy to wear!" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "dok" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-22" @@ -53313,10 +53345,6 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) -"dpB" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "dqu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -53327,15 +53355,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) -"duD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) "dvc" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -53381,18 +53400,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/crew_quarters/toilet) -"dEm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"dFp" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "dHb" = ( /obj/structure/chair/comfy/black{ dir = 4 @@ -53496,13 +53503,6 @@ /obj/item/reagent_containers/food/snacks/burger/plain, /turf/open/floor/wood, /area/crew_quarters/bar) -"ehf" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ejW" = ( -/obj/structure/pool/Lboard, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "elw" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -53547,12 +53547,9 @@ /turf/open/floor/plating, /area/maintenance/bar) "ewZ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"exX" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +/obj/structure/chair/sofa/right, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "eyM" = ( /obj/machinery/mineral/ore_redemption{ input_dir = 2; @@ -53561,19 +53558,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/quartermaster/miningdock) -"eyW" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"ezu" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"eDG" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "eHI" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 @@ -53679,9 +53663,6 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"eVq" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "eVC" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/firedoor, @@ -53732,9 +53713,6 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"fiD" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "fjy" = ( /obj/structure/lattice, /turf/closed/wall/r_wall, @@ -53763,9 +53741,6 @@ }, /turf/closed/wall, /area/quartermaster/miningdock) -"foQ" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "frE" = ( /obj/machinery/vr_sleeper{ dir = 8 @@ -53781,18 +53756,6 @@ dir = 1 }, /area/crew_quarters/fitness) -"fsk" = ( -/obj/structure/lattice/catwalk, -/obj/item/stack/marker_beacon{ - anchored = 1; - icon_state = "markerburgundy-on"; - light_power = 3; - light_range = 3; - name = "Docking Beacon"; - picked_color = "Burgundy" - }, -/turf/open/floor/plating, -/area/space/nearstation) "ftv" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ @@ -53852,9 +53815,6 @@ "fzd" = ( /turf/closed/wall, /area/crew_quarters/abandoned_gambling_den) -"fCG" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "fGf" = ( /obj/machinery/smartfridge/disks{ pixel_y = 2 @@ -53931,15 +53891,13 @@ }, /area/crew_quarters/theatre) "fOc" = ( -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/obj/structure/bed, +/obj/item/bedsheet/random, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "fPs" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -53953,6 +53911,13 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "fQF" = ( +/obj/structure/sign/warning/fire{ + desc = "A sign that states the labeled room's number."; + dir = 5; + icon_state = "roomnum"; + name = "Room Number 7"; + pixel_y = 24 + }, /obj/structure/chair/sofa/right, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -53990,10 +53955,6 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) -"fYw" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "fZD" = ( /obj/structure/filingcabinet, /obj/machinery/light{ @@ -54002,9 +53963,6 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"gaF" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "gbq" = ( /obj/structure/cable{ icon_state = "4-8" @@ -54113,9 +54071,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) -"grG" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "gtL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -54195,29 +54150,13 @@ /turf/open/floor/plating, /area/crew_quarters/fitness) "gQn" = ( -/obj/machinery/light{ - dir = 8; - light_color = "#e8eaff" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"gQx" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) "gSH" = ( /obj/structure/grille, /turf/closed/wall/r_wall, /area/space/nearstation) -"gSS" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "gVX" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -54316,18 +54255,6 @@ dir = 1 }, /area/crew_quarters/fitness) -"hho" = ( -/obj/structure/lattice/catwalk, -/obj/item/stack/marker_beacon{ - anchored = 1; - icon_state = "markerburgundy-on"; - light_power = 3; - light_range = 3; - name = "Docking Beacon"; - picked_color = "Burgundy" - }, -/turf/open/space/basic, -/area/space/nearstation) "hik" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -54354,10 +54281,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) -"hmQ" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "hoo" = ( /obj/effect/landmark/carpspawn, /turf/open/space/basic, @@ -54436,9 +54359,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) -"hRb" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "hRz" = ( /obj/structure/chair/comfy/brown{ dir = 8 @@ -54480,14 +54400,6 @@ }, /turf/closed/wall/r_wall, /area/engine/gravity_generator) -"hWD" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"hXv" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "hYW" = ( /obj/machinery/light/small{ dir = 4 @@ -54517,26 +54429,32 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "iep" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -24 +/obj/structure/mirror{ + pixel_y = 32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/structure/sink{ + dir = 1; + pixel_y = 25 }, -/turf/open/floor/plasteel/yellowsiding{ +/obj/structure/toilet{ dir = 4 }, -/area/crew_quarters/fitness/pool) +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) "ier" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/button/door{ + id = "Room Two"; + name = "Door Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 7; + pixel_y = -24; + specialfunctions = 4 + }, +/obj/structure/chair/comfy/brown{ dir = 8 }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "igT" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck{ @@ -54561,15 +54479,6 @@ "iiW" = ( /turf/open/floor/wood, /area/maintenance/bar) -"ijX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"ikx" = ( -/turf/open/floor/plating/foam, -/area/space/nearstation) "ilJ" = ( /obj/effect/turf_decal/tile/red, /obj/machinery/light{ @@ -54581,9 +54490,6 @@ /obj/structure/falsewall, /turf/open/floor/plating, /area/maintenance/bar) -"iok" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "ioB" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -54636,9 +54542,6 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) -"isS" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "itG" = ( /obj/structure/table/reinforced, /obj/item/paper_bin, @@ -54689,9 +54592,6 @@ }, /turf/open/floor/wood, /area/maintenance/bar) -"iBc" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "iEx" = ( /obj/structure/table/wood, /obj/machinery/light{ @@ -54717,33 +54617,12 @@ /obj/structure/fireplace, /turf/open/floor/carpet, /area/crew_quarters/dorms) -"iFh" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"iFx" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) "iFL" = ( /obj/machinery/light{ dir = 8 }, /turf/open/floor/carpet, /area/crew_quarters/theatre) -"iGq" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"iIF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "iMG" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-14" @@ -54955,20 +54834,6 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) -"jlQ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"jmw" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) "jmC" = ( /obj/structure/lattice/catwalk, /turf/open/space/basic, @@ -55062,12 +54927,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/security/execution/transfer) -"jvr" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel/yellowsiding/corner, -/area/crew_quarters/fitness/pool) "jvN" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -55096,9 +54955,6 @@ /obj/structure/grille, /turf/open/floor/plating/airless, /area/space/nearstation) -"jBy" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "jBZ" = ( /obj/structure/cable{ icon_state = "4-8" @@ -55127,9 +54983,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"jCN" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "jDY" = ( /obj/structure/chair{ dir = 4 @@ -55163,13 +55016,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/prison) -"jIk" = ( -/obj/structure/pool/ladder{ - dir = 2; - pixel_y = 16 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "jJF" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable{ @@ -55186,10 +55032,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"jMt" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "jMK" = ( /obj/structure/cable{ icon_state = "1-4" @@ -55238,15 +55080,6 @@ }, /turf/open/floor/plasteel, /area/science/circuit) -"jTK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "jVl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -55279,10 +55112,8 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "kay" = ( /obj/structure/table, /obj/item/reagent_containers/food/snacks/bluecherrycupcake{ @@ -55344,16 +55175,14 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "khB" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Dormitories Maintenance"; - req_access_txt = "12" +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 }, /turf/open/floor/plating, /area/maintenance/fore/secondary) -"kil" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "klu" = ( /obj/structure/lattice, /turf/open/space/basic, @@ -55424,9 +55253,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) -"kwe" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "kwy" = ( /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/bar{ @@ -55525,9 +55351,6 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"kKb" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "kKw" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -55641,19 +55464,6 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/locker) -"kYB" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"lda" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) "lhg" = ( /obj/machinery/vending/clothing, /obj/structure/disposalpipe/segment{ @@ -55732,9 +55542,6 @@ }, /turf/open/floor/plating, /area/construction/mining/aux_base) -"lCr" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "lCB" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -55858,15 +55665,6 @@ /obj/item/clothing/under/lawyer/red, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"mbT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"mcu" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "mfb" = ( /obj/structure/toilet{ dir = 8 @@ -55917,10 +55715,6 @@ /obj/structure/extinguisher_cabinet, /turf/closed/wall/r_wall, /area/hallway/primary/central) -"mwb" = ( -/obj/effect/spawner/structure/window/shuttle, -/turf/open/floor/plating, -/area/space/nearstation) "mwO" = ( /obj/structure/cable{ icon_state = "1-4" @@ -55943,22 +55737,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet) -"mFp" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "mHC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"mIm" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"mIH" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "mIS" = ( /obj/structure/table, /obj/item/clothing/gloves/boxing/yellow, @@ -55969,10 +55753,6 @@ /obj/item/clothing/gloves/boxing, /turf/open/floor/plasteel, /area/crew_quarters/locker) -"mNb" = ( -/obj/machinery/pool/controller, -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "mNi" = ( /obj/machinery/light_switch{ pixel_x = -20 @@ -56003,11 +55783,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) -"mRh" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "mTp" = ( /obj/structure/chair/sofa/left, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -56015,17 +55790,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"mWt" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/yellow, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "mXB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, @@ -56054,9 +55818,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"nec" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "nel" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56111,13 +55872,6 @@ /obj/structure/closet/athletic_mixed, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"nnK" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"noA" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "nrR" = ( /obj/machinery/door/airlock{ name = "Unisex Restrooms" @@ -56197,9 +55951,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"nHN" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "nIE" = ( /obj/structure/sign/poster/contraband/tools, /turf/closed/wall, @@ -56340,9 +56091,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"opc" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "orw" = ( /obj/structure/table, /obj/structure/cable{ @@ -56399,10 +56147,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"oDX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "oFk" = ( /obj/structure/closet/boxinggloves, /turf/open/floor/plasteel, @@ -56543,17 +56287,6 @@ }, /turf/open/floor/plasteel, /area/science/mixing) -"poh" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"poi" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "ppY" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -56581,8 +56314,13 @@ /turf/open/space/basic, /area/space/nearstation) "prU" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +/obj/item/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "ptV" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56599,10 +56337,6 @@ /obj/item/clothing/under/color/grey, /turf/open/floor/plating, /area/maintenance/port/aft) -"pvW" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "pxD" = ( /obj/structure/chair/sofa, /obj/structure/window{ @@ -56664,13 +56398,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"pLj" = ( -/obj/structure/pool/ladder{ - dir = 2; - pixel_y = 16 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "pLn" = ( /obj/machinery/conveyor/inverted{ dir = 5; @@ -56795,13 +56522,17 @@ icon_state = "4-8" }, /obj/machinery/door/airlock/command{ - name = "Command Access To Vault" + name = "Command Access To Vault"; + req_access = "19" }, /turf/open/floor/plasteel/dark, /area/bridge/meeting_room) "pZv" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) "qbx" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/drinks/soda_cans/starkist{ @@ -56810,23 +56541,12 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"qbA" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "qeQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plasteel, /area/science/circuit) -"qfZ" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"qhi" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "qje" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -56836,15 +56556,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"qjO" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"qjV" = ( -/obj/machinery/pool/filter{ - pixel_y = 16 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "qkC" = ( /obj/machinery/power/apc{ areastring = "/area/maintenance/starboard/fore"; @@ -56888,8 +56599,12 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "qoP" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/structure/chair/sofa/left, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "qpA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57011,23 +56726,21 @@ /turf/open/floor/plating, /area/security/prison) "qNs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + on = 0; + pixel_x = -7; + pixel_y = 12 }, -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "qOf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"qPC" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "qQJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -57049,12 +56762,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"qXW" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "rcD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -57079,9 +56786,6 @@ /obj/machinery/vending/cola/space_up, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"rhk" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "riA" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -57133,10 +56837,6 @@ /obj/item/target/syndicate, /turf/open/floor/plating, /area/security/prison) -"rxH" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/space/nearstation) "rzg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57277,16 +56977,6 @@ /obj/item/gun/energy/laser/practice, /turf/open/floor/plasteel/white, /area/science/circuit) -"scl" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/yellow, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "sdL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -57313,12 +57003,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) -"shw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "sjm" = ( /obj/structure/table/wood, /obj/item/instrument/piano_synth, @@ -57461,11 +57145,6 @@ icon_state = "panelscorched" }, /area/maintenance/starboard/fore) -"sAb" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "sAI" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/condiment/saltshaker{ @@ -57484,12 +57163,6 @@ icon_state = "wood-broken6" }, /area/maintenance/bar) -"sAO" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"sCg" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "sEt" = ( /turf/open/floor/wood{ icon_state = "wood-broken7" @@ -57503,9 +57176,6 @@ dir = 1 }, /area/hallway/primary/starboard) -"sKh" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "sLr" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance, @@ -57549,10 +57219,6 @@ /obj/structure/chair/office/light, /turf/open/floor/plasteel/white, /area/science/circuit) -"sVl" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "sWR" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57576,9 +57242,6 @@ /obj/machinery/vending/boozeomat/all_access, /turf/closed/wall, /area/maintenance/bar) -"sXL" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "sYv" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57609,15 +57272,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/hallway/secondary/service) -"taA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "tdF" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable{ @@ -57629,28 +57283,6 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) -"tfq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"thr" = ( -/obj/structure/frame/computer{ - dir = 1 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"tkj" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "tkU" = ( /turf/open/floor/wood{ icon_state = "wood-broken5" @@ -57797,9 +57429,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"tFN" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "tGG" = ( /obj/structure/table/wood, /obj/item/book/codex_gigas, @@ -57832,9 +57461,6 @@ /obj/item/instrument/violin, /turf/open/floor/wood, /area/crew_quarters/bar) -"tKZ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "tLl" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -57856,16 +57482,6 @@ /obj/item/pen/fountain, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"tNB" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/yellow, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "tNJ" = ( /obj/effect/spawner/structure/window, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57892,10 +57508,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) +/obj/machinery/light/small, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "tPT" = ( /obj/machinery/chem_dispenser/drinks/beer, /obj/structure/table/wood, @@ -57934,14 +57549,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/theatre) -"tWc" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) "tWs" = ( /obj/structure/cable{ icon_state = "2-4" @@ -58057,10 +57664,6 @@ /obj/item/soap, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) -"umF" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "unl" = ( /obj/item/flashlight/lamp/green{ pixel_x = -3; @@ -58159,10 +57762,6 @@ /obj/structure/sign/departments/restroom, /turf/closed/wall, /area/crew_quarters/toilet) -"uBk" = ( -/obj/machinery/pool/drain, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "uDW" = ( /obj/structure/cable{ icon_state = "4-8" @@ -58174,12 +57773,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"uEh" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "uNu" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -58197,9 +57790,6 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) -"uRD" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "uTq" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 @@ -58242,9 +57832,6 @@ /obj/effect/turf_decal/tile/red, /turf/open/floor/plasteel, /area/hallway/primary/fore) -"uYF" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "uZM" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -58313,9 +57900,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/crew_quarters/bar) -"vlu" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "vpm" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -58356,9 +57940,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"vyd" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "vys" = ( /obj/machinery/vr_sleeper{ dir = 4 @@ -58404,12 +57985,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"vBb" = ( -/obj/structure/pool/Rboard, -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "vCb" = ( /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plasteel, @@ -58422,9 +57997,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/space/nearstation) -"vFf" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "vFt" = ( /obj/machinery/portable_atmospherics/pump, /turf/open/floor/plating, @@ -58521,12 +58093,6 @@ }, /turf/open/floor/plasteel/white, /area/science/circuit) -"vPX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "vRr" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -58551,18 +58117,10 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) -"vTB" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "vUR" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/security/prison) -"vVu" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "vVP" = ( /obj/structure/cable{ icon_state = "0-4" @@ -58593,10 +58151,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel, /area/security/prison) -"vXd" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "vYa" = ( /turf/open/floor/plasteel, /area/crew_quarters/fitness) @@ -58628,15 +58182,6 @@ "wkN" = ( /turf/closed/wall, /area/science/circuit) -"wnW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "woR" = ( /obj/machinery/cryopod{ dir = 1 @@ -58686,12 +58231,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) -"wtK" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "wuB" = ( /obj/structure/chair/comfy/brown{ dir = 1 @@ -58734,12 +58273,6 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) -"wwK" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "wyM" = ( /obj/machinery/door/airlock{ name = "Theatre Backstage"; @@ -58751,10 +58284,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"wzi" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "wAB" = ( /obj/structure/chair/office/light, /obj/machinery/firealarm{ @@ -58781,9 +58310,6 @@ }, /turf/open/floor/plating, /area/crew_quarters/fitness) -"wCg" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "wDR" = ( /obj/structure/sign/poster/official/help_others{ pixel_y = -32 @@ -58929,10 +58455,6 @@ icon_state = "wood-broken5" }, /area/maintenance/bar) -"xhu" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) "xhx" = ( /obj/structure/cable{ icon_state = "1-2" @@ -58982,9 +58504,6 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) -"xmc" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "xpx" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -59030,10 +58549,6 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) -"xHQ" = ( -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "xIa" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/grille_or_trash, @@ -59046,15 +58561,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) -"xIt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "xLZ" = ( /obj/structure/closet/radiation, /turf/open/floor/plasteel, @@ -59072,16 +58578,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"xOM" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"xON" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"xWM" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/space/nearstation) "xXY" = ( /obj/structure/closet/lasertag/red, /obj/item/clothing/under/pj/red, @@ -59114,9 +58610,6 @@ /obj/machinery/suit_storage_unit/rd, /turf/open/floor/plasteel, /area/science/mixing) -"ygY" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "yiN" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -65150,11 +64643,11 @@ aaa aaa aaa aaa -fsk +aaK aaa aaa aaa -fsk +aaK aaa aaa aaa @@ -65401,9 +64894,9 @@ aaa aaa aaa aaa -fsk +aaK aaa -fsk +aaK aaa aaa aaa @@ -65415,9 +64908,9 @@ gXs aaa aaa aaa -fsk +aaK aaa -fsk +aaK aaa aaa aaa @@ -81630,7 +81123,7 @@ bpB bpB brR bsV -bwc +aaM bxA bvI bwX @@ -93656,7 +93149,7 @@ aif aif aif aif -jmw +aif bkV fvk alK @@ -93909,11 +93402,11 @@ abp hlY ahn aiA -ahn -ahn +aiA +aiA ahn hYW -iFx +anF aod ahn apx @@ -94165,12 +93658,12 @@ unE abp nea ahn -xhu -ahn aaa +aaf +aaf ahn ahn -iFx +anE aod aoK sgV @@ -94422,10 +93915,10 @@ aaa adR ahn ahn -lda -ahn aaa aaa +aaa +aaf ahn anG aoe @@ -94678,14 +94171,14 @@ aaa aaa gXs aaa -jmC -jmC -jmC +aaa +aaa +aaa aaa aaa ahn khB -qjO +ahn ahn ahn ahn @@ -94940,16 +94433,16 @@ aaa aaa aaa aaa -qjO -vPX -jvr -tWc +aag +aag +aag +arf iep gQn -tfq -duD +arf +myt qNs -oDX +lMx sjw clO asZ @@ -95197,16 +94690,16 @@ aaa aaa aaa aaa -qjO -det -isS -qjV -ehf -ehf -ehf -ehf +aaa +aaa +aaa +arf +pZv +tQk +cVp +jdT ier -qjO +arf arm vYa aya @@ -95454,14 +94947,14 @@ aaa aaa aaa aaa -eyW -vPX -isS -pLj -ehf -ehf -ehf -ehf +aaa +aaa +aaa +arf +arf +arf +arf +iES jYI aqs hVw @@ -95711,16 +95204,16 @@ aaa aaa aaa aaa -eyW -vPX -isS -ehf -ehf -ehf -ehf -ehf +aaa +aaa +aaa +aaa +aaa +arf +ewZ +jdT tOU -pvW +arf fQF qbx qux @@ -95968,16 +95461,16 @@ aaa aaa aaa aaa -eyW -vPX -mNb -ehf -ehf -uBk -ehf -ehf +aaa +aaa +aaa +aaa +aaa +arf +qoP +prU fOc -qjO +arf oSO sAI fJa @@ -96215,9 +95708,9 @@ aaa aaa aaa aaa -hho +aaz aaa -hho +aaz aaa aaa aaa @@ -96225,16 +95718,16 @@ aaa aaa aaa aaa -eyW -vPX -isS -ehf -ehf -ehf -ehf -ehf -jTK -qjO +aaa +aaa +aae +aaa +aaa +arf +arf +arf +arf +arf mTp qEv kRk @@ -96482,15 +95975,15 @@ aaa aaa aaa aaa -eyW -vPX -isS -ehf -ehf -ehf -ehf -ehf -jTK +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +gXs kHJ rEV rEV @@ -96599,7 +96092,7 @@ aaf ctZ cui cuq -cuC +ajY cuO cuz cvm @@ -96739,15 +96232,15 @@ aaa aaa aaa aaa -eyW -vPX -isS -ehf -ehf -ehf -ehf -ehf -jTK +aaa +aaa +aaa +aaa +aaa +aaa +aaa +gXs +gXs aqu aro aro @@ -96996,15 +96489,15 @@ aaa aaa aaa aaa -eyW -dmP -isS -pLj -ehf -ehf -ehf -ehf -jTK +aaa +aaa +aaa +aaa +aaa +aaa +gXs +gXs +aaa aqu aro aro @@ -97107,8 +96600,8 @@ czk cti cua cua -ctw -ctH +aeF +afs ctQ cuc cuj @@ -97253,15 +96746,15 @@ aaa aaa aaa aaa -eyW -scl -isS -ehf -ehf -ejW -ehf -ehf -jTK +aaa +aaa +aaa +aaa +aaa +gXs +gXs +aaa +aaa aqu aro aro @@ -97364,9 +96857,9 @@ ctb cth cua ctr -ctu -ctG -ctP +afn +age +agX cub cuj cur @@ -97510,15 +97003,15 @@ aaa aaa aaa aaa -eyW -scl -sAb -mRh -mRh -vBb -mbT -shw -wnW +aaa +aaa +aaa +aaa +gXs +gXs +aaa +aaa +aaa aqu aro aro @@ -97621,13 +97114,13 @@ ctc ctc cto ctt -cty +afq ctJ -ctT +ahw cue cul cuu -cuG +akz cuS cve cvo @@ -97767,15 +97260,15 @@ aaa aaa aaa aaa -qjO -mWt -vVu -vVu -vVu -vVu -vVu -vVu -poh +aaa +aaa +aaa +gXs +gXs +aaa +aaa +aaa +aaa aqu aro aro @@ -97878,9 +97371,9 @@ ctb ctj ctk cts -ctx -ctI -ctS +afr +agv +ajC cud cuk cus @@ -98024,15 +97517,15 @@ aaa aaa aaa aaa -qjO -qjO -eyW -eyW -eyW -eyW -eyW -eyW -qjO +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa haX rEV rEV @@ -98278,12 +97771,12 @@ aaS aaS aaS aaS -aaa -aaa -aaa -aaa -aaa -aaa +aaS +aaS +aaS +aaS +aaf +aaf aaa aaa aaa @@ -98536,10 +98029,10 @@ aaf aaa aaf aaa +aaf aaa -aaa -aaa -aaa +aaS +aaf aaa aaa aaa @@ -98650,7 +98143,7 @@ aaa aaf cua ctF -ctM +agH ctX cuf cum @@ -98795,7 +98288,7 @@ ads adS aeG aaa -aaa +aaS aaa aaa aaa @@ -98908,7 +98401,7 @@ aaf cua ctE ctL -ctW +ajX cuf cum cuw @@ -101906,7 +101399,7 @@ bbE aIr bav aLf -dkk +aaL kLR aRO aQp @@ -102488,10 +101981,10 @@ aaa aaa aaa aaa -ikx -mwb -xWM -rxH +aaH +adO +aeD +aeE aaa aaa aaa @@ -102746,10 +102239,10 @@ xNY kvb aaa aaa -ikx -ikx -ikx -rxH +aaH +aaH +aaH +aeE aaa aaa aaa @@ -103000,13 +102493,13 @@ czZ cOT aaa jmC -dbM -dbM -ikx -ikx -ikx -thr -mwb +aaH +aaH +aaH +aaH +aaH +aaH +adO aaa aaa aaa @@ -103259,8 +102752,8 @@ gXs xNY kvb gJg -dbM -dbM +aaH +aaH aaa aaa gJg @@ -103517,8 +103010,8 @@ aaa aaa gJg gJg -mwb -ikx +adO +aaH gXs aaa aaa @@ -106599,7 +106092,7 @@ cNW clt cQw cNW -cNW +abG cNW cNW aaf @@ -106855,7 +106348,7 @@ aaa cOT clt cQw -cOe +aaO cOe cOe cNW @@ -107112,11 +106605,11 @@ aaa cOT clt cQw +aaQ cOe cOe -cOe -cOe -sQX +cNW +aaa jzi jzi jzi @@ -107369,11 +106862,11 @@ aaa cNW clt cQw -cOe +bNB cOe cOe cNW -aaf +lCL aaS aaa aaf @@ -107626,7 +107119,7 @@ cNW cNW clt cQw -cOe +aaY cOe cOe cNW From 8e3830f4a14a6e823aa2412698e177bb6dccb828 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Tue, 28 Jan 2020 21:22:17 -0600 Subject: [PATCH 052/137] Adds the pool to box(again) to fix a merge conflict- implements some feedback --- _maps/map_files/BoxStation/BoxStation.dmm | 1270 ++++++++++++++++----- 1 file changed, 1002 insertions(+), 268 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index f5b76d1ba9..eb877cf12b 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -4161,7 +4161,12 @@ /turf/open/floor/plasteel, /area/security/brig) "aiA" = ( -/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, /turf/open/floor/plating, /area/maintenance/fore/secondary) "aiB" = ( @@ -6364,11 +6369,8 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anE" = ( -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/obj/machinery/door/airlock/external{ - req_access_txt = "13" +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6376,11 +6378,14 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anG" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/fitness"; + name = "Pool Room APC"; + pixel_y = -23 }, +/obj/structure/cable, /turf/open/floor/plating, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "anH" = ( /obj/structure/sign/warning/electricshock, /turf/closed/wall/r_wall, @@ -7366,14 +7371,12 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqs" = ( -/obj/machinery/door/airlock{ - id_tag = "Room Two"; - name = "Room Seven - Luxury Suite" - }, /obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/dorms) +/obj/machinery/door/airlock/public/glass{ + name = "Pool" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "aqu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -52748,10 +52751,24 @@ /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"cOP" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "cOT" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"cPo" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"cPw" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cPA" = ( /obj/machinery/atmospherics/components/binary/valve{ dir = 4 @@ -53330,6 +53347,9 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"dlj" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dok" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-22" @@ -53361,6 +53381,11 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"dvG" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "dvO" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -53406,6 +53431,11 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"dIm" = ( +/obj/machinery/light, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "dKP" = ( /turf/closed/wall, /area/maintenance/bar) @@ -53463,6 +53493,11 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/captain) +"dXT" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "eaI" = ( /obj/structure/table/reinforced, /obj/item/radio/intercom{ @@ -53478,6 +53513,9 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"eeR" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ego" = ( /obj/machinery/atmospherics/components/binary/valve, /turf/open/floor/plating, @@ -53503,6 +53541,14 @@ /obj/item/reagent_containers/food/snacks/burger/plain, /turf/open/floor/wood, /area/crew_quarters/bar) +"ein" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "elw" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -53543,13 +53589,32 @@ dir = 1 }, /area/hallway/secondary/entry) +"esV" = ( +/obj/structure/table/glass, +/obj/structure/bedsheetbin/towel, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "evR" = ( /turf/open/floor/plating, /area/maintenance/bar) "ewZ" = ( -/obj/structure/chair/sofa/right, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/obj/structure/pool/ladder{ + dir = 1; + pixel_y = -22 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eyM" = ( /obj/machinery/mineral/ore_redemption{ input_dir = 2; @@ -53573,6 +53638,9 @@ }, /turf/open/floor/plating, /area/maintenance/fore) +"eMi" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eMQ" = ( /obj/item/radio/intercom{ pixel_y = 25 @@ -53706,6 +53774,14 @@ }, /turf/closed/wall/r_wall, /area/science/mixing) +"fgj" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "fhP" = ( /obj/machinery/light{ dir = 8; @@ -53793,6 +53869,12 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"fwN" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "fxa" = ( /obj/structure/chair/wood/normal, /turf/open/floor/wood{ @@ -53840,6 +53922,25 @@ /obj/effect/mapping_helpers/airlock/locked, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) +"fHd" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"fHj" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"fHm" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "fHK" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /obj/structure/cable{ @@ -53890,14 +53991,15 @@ dir = 4 }, /area/crew_quarters/theatre) -"fOc" = ( -/obj/structure/bed, -/obj/item/bedsheet/random, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8 +"fLR" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) +"fOc" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "fPs" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -53911,13 +54013,6 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "fQF" = ( -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - dir = 5; - icon_state = "roomnum"; - name = "Room Number 7"; - pixel_y = 24 - }, /obj/structure/chair/sofa/right, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -54009,6 +54104,12 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"gga" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "ggg" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -54058,6 +54159,11 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"gil" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "gjf" = ( /obj/machinery/vending/coffee, /turf/open/floor/wood, @@ -54071,6 +54177,17 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"goY" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/public/glass{ + name = "Pool" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"gtj" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "gtL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -54143,6 +54260,9 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"gMv" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "gOZ" = ( /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" @@ -54150,9 +54270,16 @@ /turf/open/floor/plating, /area/crew_quarters/fitness) "gQn" = ( -/obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "gSH" = ( /obj/structure/grille, /turf/closed/wall/r_wall, @@ -54195,6 +54322,12 @@ dir = 8 }, /area/medical/sleeper) +"has" = ( +/obj/structure/bed, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "haz" = ( /obj/machinery/autolathe{ name = "public autolathe" @@ -54202,14 +54335,14 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "haX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ id = "holoprivacy"; name = "Holodeck Shutters" }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/plating, /area/crew_quarters/fitness) "hcd" = ( @@ -54234,6 +54367,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"hdq" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "hfe" = ( /obj/structure/sign/poster/contraband/smoke{ desc = "This poster reminds us all that the Detective is a parasite. Year after year, they must get replacement lungs because of their addiction. "; @@ -54275,6 +54411,11 @@ }, /turf/closed/wall, /area/crew_quarters/dorms) +"hkS" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "hlY" = ( /obj/machinery/door/airlock{ name = "Recharging Station" @@ -54285,6 +54426,15 @@ /obj/effect/landmark/carpspawn, /turf/open/space/basic, /area/space) +"hoO" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"hqD" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "htr" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -54338,6 +54488,9 @@ }, /turf/open/floor/plating, /area/storage/tech) +"hMb" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "hMx" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -54348,6 +54501,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"hPB" = ( +/turf/open/floor/plasteel/yellowsiding/corner, +/area/crew_quarters/fitness/pool) "hRa" = ( /obj/structure/table/reinforced, /obj/machinery/light{ @@ -54401,13 +54557,8 @@ /turf/closed/wall/r_wall, /area/engine/gravity_generator) "hYW" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" +/obj/structure/cable{ + icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -54419,6 +54570,11 @@ }, /turf/open/floor/plasteel/dark, /area/hydroponics) +"idO" = ( +/obj/structure/bed, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "idX" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -54429,32 +54585,27 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "iep" = ( -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 - }, -/obj/structure/toilet{ +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/machinery/camera{ + c_tag = "Pool West"; dir = 4 }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) -"ier" = ( -/obj/machinery/button/door{ - id = "Room Two"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 7; - pixel_y = -24; - specialfunctions = 4 - }, -/obj/structure/chair/comfy/brown{ +/obj/effect/turf_decal/tile/blue{ dir = 8 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"ier" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"ieL" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "igT" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck{ @@ -54479,6 +54630,9 @@ "iiW" = ( /turf/open/floor/wood, /area/maintenance/bar) +"ikE" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ilJ" = ( /obj/effect/turf_decal/tile/red, /obj/machinery/light{ @@ -54506,6 +54660,13 @@ /obj/machinery/vending/cola/red, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"ioM" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ioX" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/structure/cable{ @@ -54592,6 +54753,21 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"iAR" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"iBB" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"iCW" = ( +/obj/structure/bed, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "iEx" = ( /obj/structure/table/wood, /obj/machinery/light{ @@ -54788,6 +54964,9 @@ }, /turf/open/floor/plasteel, /area/security/prison) +"jhh" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jhF" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -54819,6 +54998,12 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"jkd" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "jlm" = ( /obj/machinery/rnd/production/techfab/department/cargo, /turf/open/floor/plasteel, @@ -54878,6 +55063,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"jou" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jqv" = ( /obj/structure/chair/wood/normal{ dir = 1 @@ -54940,6 +55128,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/heads/captain) +"jyD" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "jzi" = ( /obj/structure/grille, /obj/structure/lattice, @@ -55050,6 +55241,9 @@ }, /turf/open/floor/plating, /area/space/nearstation) +"jQX" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "jRy" = ( /obj/machinery/door/airlock{ name = "Instrument Storage" @@ -55109,11 +55303,21 @@ /turf/open/floor/circuit, /area/ai_monitored/nuke_storage) "jYI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"jYZ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/machinery/camera{ + acid_level = 8; + c_tag = "Pool East"; + dir = 8 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "kay" = ( /obj/structure/table, /obj/item/reagent_containers/food/snacks/bluecherrycupcake{ @@ -55139,6 +55343,12 @@ }, /turf/open/floor/plating, /area/security/prison) +"kdv" = ( +/obj/machinery/pool/filter{ + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kel" = ( /obj/effect/landmark/blobstart, /turf/open/floor/plating, @@ -55175,14 +55385,12 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "khB" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 +/obj/machinery/door/airlock/maintenance{ + name = "Pool Maintenance"; + req_access_txt = "12" }, /turf/open/floor/plating, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "klu" = ( /obj/structure/lattice, /turf/open/space/basic, @@ -55215,6 +55423,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"krR" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ksn" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -55446,6 +55657,14 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"kTn" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "kTz" = ( /obj/structure/cable{ icon_state = "4-8" @@ -55464,6 +55683,11 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/locker) +"kZr" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "lhg" = ( /obj/machinery/vending/clothing, /obj/structure/disposalpipe/segment{ @@ -55488,6 +55712,15 @@ icon_state = "wood-broken6" }, /area/maintenance/bar) +"lpO" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"lsP" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"lui" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "lwj" = ( /obj/structure/table, /obj/item/reagent_containers/food/drinks/soda_cans/starkist{ @@ -55522,6 +55755,12 @@ }, /turf/closed/wall, /area/crew_quarters/bar) +"lAe" = ( +/obj/structure/pool/ladder{ + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "lAB" = ( /obj/structure/sign/nanotrasen, /turf/closed/wall, @@ -55551,6 +55790,9 @@ "lCL" = ( /turf/open/space/basic, /area/space/nearstation) +"lDE" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "lFl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -55671,6 +55913,9 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"miy" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "mjr" = ( /obj/structure/reagent_dispensers/keg/milk, /turf/open/floor/wood, @@ -55684,6 +55929,14 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"mnI" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "moq" = ( /obj/structure/chair/comfy/brown{ dir = 1 @@ -55722,6 +55975,14 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"myp" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "myt" = ( /obj/structure/closet/secure_closet/personal/cabinet{ desc = "Swipe your ID on the closet to claim it. First come first serve, this one is wooden and fancy. Store your stuff here."; @@ -55753,6 +56014,9 @@ /obj/item/clothing/gloves/boxing, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"mMf" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "mNi" = ( /obj/machinery/light_switch{ pixel_x = -20 @@ -55760,6 +56024,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) +"mNS" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mPE" = ( /obj/machinery/chem_dispenser/drinks, /obj/structure/table/wood, @@ -55776,6 +56044,10 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"mRa" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mRe" = ( /obj/machinery/light{ dir = 8 @@ -55790,10 +56062,22 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"mVa" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "mXB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"nbZ" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "ncj" = ( /obj/effect/turf_decal/tile/blue, /obj/structure/sign/poster/contraband/fun_police{ @@ -55853,6 +56137,9 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) +"njO" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "nlt" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/tile/neutral, @@ -55872,6 +56159,9 @@ /obj/structure/closet/athletic_mixed, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"npY" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "nrR" = ( /obj/machinery/door/airlock{ name = "Unisex Restrooms" @@ -55984,6 +56274,18 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) +"nMY" = ( +/obj/structure/bed, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"nOC" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"nOD" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "nOS" = ( /obj/structure/safe, /obj/item/clothing/head/bearpelt, @@ -56023,6 +56325,14 @@ }, /turf/closed/wall/r_wall, /area/engine/gravity_generator) +"nUs" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "nWq" = ( /obj/machinery/door/airlock/engineering{ name = "Gravity Generator"; @@ -56061,6 +56371,9 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"ogJ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ohX" = ( /obj/structure/table/wood, /obj/machinery/airalarm{ @@ -56091,6 +56404,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"omT" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "orw" = ( /obj/structure/table, /obj/structure/cable{ @@ -56131,6 +56447,22 @@ /obj/structure/reagent_dispensers/keg/semen, /turf/open/floor/plating, /area/maintenance/bar) +"oyb" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) +"oyD" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "oBp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -56237,6 +56569,14 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"pfD" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "phu" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4; @@ -56272,6 +56612,9 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"pno" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "poa" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 @@ -56314,13 +56657,10 @@ /turf/open/space/basic, /area/space/nearstation) "prU" = ( -/obj/item/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "ptV" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56366,6 +56706,11 @@ }, /turf/open/space, /area/solar/starboard/aft) +"pFW" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "pHl" = ( /obj/structure/table, /obj/item/storage/box/beakers{ @@ -56398,6 +56743,12 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"pHG" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "pLn" = ( /obj/machinery/conveyor/inverted{ dir = 5; @@ -56527,12 +56878,14 @@ }, /turf/open/floor/plasteel/dark, /area/bridge/meeting_room) +"pVt" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "pZv" = ( -/obj/machinery/shower{ - dir = 8 +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "qbx" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/drinks/soda_cans/starkist{ @@ -56541,6 +56894,33 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"qce" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"qda" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/button/door{ + id = "poolshutter"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qeQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -56556,6 +56936,10 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"qkc" = ( +/obj/machinery/pool/controller, +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "qkC" = ( /obj/machinery/power/apc{ areastring = "/area/maintenance/starboard/fore"; @@ -56599,12 +56983,14 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "qoP" = ( -/obj/machinery/airalarm{ - pixel_y = 23 +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"qoW" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 }, -/obj/structure/chair/sofa/left, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qpA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -56614,17 +57000,38 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"qsu" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qux" = ( /obj/structure/chair/sofa/left{ dir = 1 }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"quB" = ( +/obj/structure/bed, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "quT" = ( /obj/structure/lattice, /obj/structure/grille/broken, /turf/open/space/basic, /area/space/nearstation) +"qvh" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -24 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qvM" = ( /obj/structure/cable{ icon_state = "1-4" @@ -56636,6 +57043,9 @@ dir = 4 }, /area/crew_quarters/theatre) +"qwg" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qwB" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56709,6 +57119,15 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"qJO" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qJZ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56726,15 +57145,23 @@ /turf/open/floor/plating, /area/security/prison) "qNs" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - on = 0; - pixel_x = -7; - pixel_y = 12 +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 8 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qOf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -56762,12 +57189,28 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"qYE" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "rcD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/closed/wall/r_wall, /area/science/circuit) +"rdZ" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "reZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -56965,6 +57408,14 @@ }, /turf/open/floor/plating, /area/space/nearstation) +"rYu" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "saK" = ( /obj/structure/closet/crate, /obj/item/target/alien, @@ -56986,6 +57437,9 @@ }, /turf/open/floor/plasteel/dark, /area/bridge/meeting_room) +"seu" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sfa" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable{ @@ -57003,6 +57457,11 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"siN" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "sjm" = ( /obj/structure/table/wood, /obj/item/instrument/piano_synth, @@ -57136,6 +57595,9 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"sxw" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sxX" = ( /obj/structure/cable{ icon_state = "1-2" @@ -57163,11 +57625,22 @@ icon_state = "wood-broken6" }, /area/maintenance/bar) +"sCi" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sEt" = ( /turf/open/floor/wood{ icon_state = "wood-broken7" }, /area/maintenance/bar) +"sHU" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "sIe" = ( /obj/structure/sign/poster/official/fruit_bowl{ pixel_y = 32 @@ -57176,6 +57649,11 @@ dir = 1 }, /area/hallway/primary/starboard) +"sKK" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "sLr" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance, @@ -57190,6 +57668,13 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"sLO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sMa" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57208,6 +57693,12 @@ /obj/machinery/door/airlock/maintenance/abandoned, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"sPo" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"sQE" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sQX" = ( /turf/open/floor/plating, /area/space) @@ -57272,6 +57763,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/hallway/secondary/service) +"tdz" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tdF" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable{ @@ -57288,6 +57782,15 @@ icon_state = "wood-broken5" }, /area/maintenance/bar) +"tob" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "tqg" = ( /obj/machinery/cryopod{ dir = 4 @@ -57371,6 +57874,20 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/wood, /area/crew_quarters/bar) +"tvW" = ( +/obj/structure/pool/Rboard, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) +"tzE" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"tzN" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "tAb" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57436,6 +57953,12 @@ /obj/structure/destructible/cult/tome, /turf/open/floor/carpet, /area/library) +"tGO" = ( +/obj/structure/bed, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "tHx" = ( /obj/machinery/computer/arcade/minesweeper{ dir = 4 @@ -57489,6 +58012,9 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"tNP" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tOd" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -57505,12 +58031,8 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "tOU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "tPT" = ( /obj/machinery/chem_dispenser/drinks/beer, /obj/structure/table/wood, @@ -57586,6 +58108,11 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"ucV" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "udi" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57639,6 +58166,13 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"ujS" = ( +/obj/structure/pool/ladder{ + dir = 1; + pixel_y = -22 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uko" = ( /obj/structure/cable{ icon_state = "1-2" @@ -57664,6 +58198,9 @@ /obj/item/soap, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"umL" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "unl" = ( /obj/item/flashlight/lamp/green{ pixel_x = -3; @@ -57738,10 +58275,18 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"uuI" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "uvZ" = ( /obj/structure/mineral_door/wood, /turf/open/floor/wood, /area/maintenance/bar) +"uxu" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "uya" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57773,6 +58318,18 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"uFI" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 16 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"uJw" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "uNu" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -57796,6 +58353,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"uUp" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "uVq" = ( /obj/machinery/light{ dir = 1; @@ -57832,6 +58392,9 @@ /obj/effect/turf_decal/tile/red, /turf/open/floor/plasteel, /area/hallway/primary/fore) +"uZw" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uZM" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -57877,6 +58440,9 @@ /obj/structure/bed, /turf/open/floor/plating, /area/maintenance/port) +"vgb" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vgp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -57900,6 +58466,18 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/crew_quarters/bar) +"vkw" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"vmK" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"vnZ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vpm" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -57989,6 +58567,23 @@ /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"vCm" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "poolshutter"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "vCt" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel/white, @@ -58073,6 +58668,9 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) +"vNa" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vNh" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 @@ -58147,6 +58745,14 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"vVQ" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "vWw" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel, @@ -58159,6 +58765,15 @@ /obj/structure/lattice, /turf/open/space, /area/space/nearstation) +"wbh" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) +"wcf" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wcy" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/structure/cable{ @@ -58170,6 +58785,17 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"wdj" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"wem" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "wfR" = ( /obj/item/electropack/shockcollar, /obj/item/assembly/signaler, @@ -58182,6 +58808,18 @@ "wkN" = ( /turf/closed/wall, /area/science/circuit) +"wnD" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"wnN" = ( +/obj/structure/pool/Lboard, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "woR" = ( /obj/machinery/cryopod{ dir = 1 @@ -58372,6 +59010,14 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"wIZ" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "wJz" = ( /obj/machinery/light{ dir = 8 @@ -58392,6 +59038,21 @@ /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, /area/hydroponics) +"wSE" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wUY" = ( /obj/structure/table, /obj/item/stack/packageWrap, @@ -58404,6 +59065,9 @@ /obj/item/instrument/trumpet, /turf/open/floor/wood, /area/crew_quarters/theatre) +"wWh" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "wXP" = ( /obj/machinery/button/door{ id = "maintdiy"; @@ -58413,6 +59077,9 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"wYa" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "wZB" = ( /obj/structure/cable{ icon_state = "1-4" @@ -58442,6 +59109,10 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"xdx" = ( +/obj/machinery/pool/drain, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xdV" = ( /obj/machinery/door/airlock{ name = "Theatre Backstage"; @@ -58531,6 +59202,31 @@ }, /turf/open/floor/plating, /area/security/brig) +"xvc" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"xvz" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "poolshutter"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "xzh" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -58543,12 +59239,18 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"xDJ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xEu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"xGC" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "xIa" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/grille_or_trash, @@ -58561,6 +59263,14 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"xIN" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "xLZ" = ( /obj/structure/closet/radiation, /turf/open/floor/plasteel, @@ -58578,6 +59288,24 @@ }, /turf/open/space/basic, /area/space/nearstation) +"xPg" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "poolshutter"; + name = "Pool Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"xSt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"xTm" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xXY" = ( /obj/structure/closet/lasertag/red, /obj/item/clothing/under/pj/red, @@ -58622,6 +59350,12 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"yjr" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) +"yle" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) (1,1,1) = {" aaa @@ -93148,7 +93882,7 @@ aib aif aif aif -aif +oyD aif bkV fvk @@ -93401,11 +94135,11 @@ abp abp hlY ahn -aiA -aiA +ahn aiA ahn -hYW +mnI +fHj anF aod ahn @@ -93658,12 +94392,12 @@ unE abp nea ahn -aaa -aaf -aaf -ahn ahn anE +ahn +mnI +fHj +anF aod aoK sgV @@ -93915,11 +94649,11 @@ aaa adR ahn ahn -aaa -aaa -aaa -aaf ahn +tob +ahn +ahn +vmK anG aoe aoL @@ -94172,11 +94906,11 @@ aaa gXs aaa aaa -aaa -aaa -aaa -aaa -ahn +jmC +jmC +jmC +jQX +jQX khB ahn ahn @@ -94432,15 +95166,15 @@ aaa aaa aaa aaa -aaa -aag -aag -aag -arf +jQX +qda +wdj +qvh +wdj iep gQn -arf -myt +xSt +xSt qNs lMx sjw @@ -94689,16 +95423,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -arf -pZv -tQk -cVp -jdT -ier +xIN +qoW +hPB +wbh +wbh +wbh +wbh +wbh +ucV +wdj arf arm vYa @@ -94946,17 +95680,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -arf -arf -arf -arf -iES -jYI -aqs +xIN +nbZ +uxu +kdv +krR +lAe +krR +krR +fLR +tOU +goY hVw vYa vYa @@ -95203,17 +95937,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -arf -ewZ -jdT +xIN +iBB +uxu +uFI +krR +krR +krR +ujS +fLR tOU -arf +goY fQF qbx qux @@ -95460,16 +96194,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -arf -qoP -prU -fOc +jQX +wSE +uxu +krR +krR +krR +krR +krR +fLR +mRa arf oSO sAI @@ -95717,16 +96451,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aae -aaa -aaa -arf -arf -arf -arf +xIN +qoW +uxu +krR +krR +krR +krR +krR +fLR +dIm arf mTp qEv @@ -95974,16 +96708,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs +xIN +qoW +qkc +krR +krR +xdx +krR +krR +fLR +mRa kHJ rEV rEV @@ -96231,16 +96965,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs +xIN +qoW +uxu +krR +krR +krR +krR +krR +fLR +mRa aqu aro aro @@ -96488,16 +97222,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa +jQX +vCm +uxu +krR +krR +krR +krR +krR +fLR +mRa aqu aro aro @@ -96745,16 +97479,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa +xIN +iBB +uxu +uFI +krR +krR +krR +ujS +fLR +mRa aqu aro aro @@ -97002,16 +97736,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa +xIN +qJO +uxu +krR +krR +wnN +krR +krR +fLR +mRa aqu aro aro @@ -97259,16 +97993,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa -aaa +xIN +qoW +wem +dvG +dvG +tvW +dvG +dvG +gil +mRa aqu aro aro @@ -97516,16 +98250,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa +jQX +xvz +idO +idO +idO +jYZ +has +has +has +esV haX rEV rEV @@ -97770,20 +98504,20 @@ aaS aaS aaS aaS -aaS -aaS -aaS -aaS -aaS -aaf -aaf -aaa -aaa -aaa -aaa aaa aaa aaa +jQX +jQX +xIN +xIN +xIN +jQX +xIN +xIN +xIN +jQX +jQX aaa aaa arj @@ -98027,12 +98761,12 @@ aaf aaa aaf aaa -aaf aaa -aaf aaa -aaS -aaf +aaa +aaa +aaa +aaa aaa aaa aaa @@ -98288,7 +99022,7 @@ ads adS aeG aaa -aaS +aaa aaa aaa aaa From b5134e5197bbba5d87945899907b44c6cfefdba3 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 29 Jan 2020 23:01:06 -0700 Subject: [PATCH 053/137] Update pool_controller.dm --- code/modules/pool/pool_controller.dm | 31 ++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 94e16a245a..d88db80f9b 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -1,3 +1,5 @@ +#define POOL_NO_OVERDOSE_MEDICINE_MAX 5 //max units of no-overdose medicine to allow mobs to have through duplication + //Originally stolen from paradise. Credits to tigercat2000. //Modified a lot by Kokojo and Tortellini Tony for hippiestation. //Heavily refactored by tgstation @@ -53,6 +55,10 @@ var/shocked = FALSE /// Old reagent color, used to determine if update_color needs to reset colors. var/old_rcolor + /// Just to prevent spam + var/draining = FALSE + /// Reagent blacklisting + var/respect_reagent_blacklist = TRUE /obj/machinery/pool/controller/examine(mob/user) . = ..() @@ -105,13 +111,15 @@ /obj/machinery/pool/controller/AltClick(mob/user) . = ..() - if(isliving(user) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated()) + if(isliving(user) && user.Adjacent(src) && user.CanReach(src) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated()) visible_message("[user] starts to drain [src]!") + draining = TRUE if(do_after(user, 50, target = src)) reagents.remove_all(INFINITY) visible_message("[user] drains [src].") say("Reagents cleared.") update_color() + draining = FALSE /obj/machinery/pool/controller/attackby(obj/item/W, mob/user) if(shocked && !(stat & NOPOWER)) @@ -137,15 +145,16 @@ var/list/reagent_names = list() var/list/rejected = list() for(var/datum/reagent/R in reagents.reagent_list) - if(R.volume >= min_reagent_amount) + if((R.volume >= min_reagent_amount) && (!respect_reagent_blacklist || !R.blacklisted)) reagent_names += R.name else reagents.remove_reagent(R.type, INFINITY) rejected += R.name if(length(reagent_names)) reagent_names = english_list(reagent_names) - log_game("[key_name(user)] has changed the [src] chems to [reagent_names]") - message_admins("[key_name_admin(user)] has changed the [src] chems to [reagent_names].") + var/msg = "POOL: [key_name(user)] has changed [src]'s chems to [reagent_names]" + log_game(msg) + message_admins(msg) if(length(rejected)) rejected = english_list(rejected) to_chat(user, "[src] rejects the following chemicals as they do not have at least [min_reagent_amount] units of volume: [rejected]") @@ -193,8 +202,9 @@ for(var/datum/reagent/R in reagents.reagent_list) if(R.reagent_state == SOLID) R.reagent_state = LIQUID - swimee.reagents.add_reagent(R.type, 0.5) //osmosis - reagents.reaction(swimee, VAPOR, 0.03) //3 percent + if(!swimee.has_reagent(POOL_NO_OVERDOSE_MEDICINE_MAX)) + swimee.reagents.add_reagent(R.type, 0.5) //osmosis + reagents.reaction(swimee, VAPOR, 0.03) //3 percent. Need to find a way to prevent this from stacking chems at some point like the above. for(var/obj/objects in W) if(W.reagents) W.reagents.reaction(objects, VAPOR, 1) @@ -301,15 +311,24 @@ visible_message("[usr] presses a button on [src].") temperature++ update_temp() + var/msg = "POOL: [key_name(usr)] increased [src]'s pool temperature at [COORD(src)] to [temperature]" + log_game(msg) + message_admins(msg) interact_delay = world.time + 15 if(href_list["DecreaseTemp"]) if(CanDownTemp(usr)) visible_message("[usr] presses a button on [src].") temperature-- update_temp() + var/msg = "POOL: [key_name(usr)] decreased [src]'s pool temperature at [COORD(src)] to [temperature]" + log_game(msg) + message_admins(msg) interact_delay = world.time + 15 if(href_list["Activate Drain"]) if((drainable || issilicon(usr) || IsAdminGhost(usr)) && !linked_drain.active) + var/msg = "POOL: [key_name(usr)] activated [src]'s pool drain in [linked_drain.filling? "FILLING" : "DRAINING"] mode at [COORD(src)]" + log_game(msg) + message_admins(msg) visible_message("[usr] presses a button on [src].") mist_off() interact_delay = world.time + 60 From 01a43b2481c9075774ece0609ac9313da7d46e9c Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 30 Jan 2020 00:07:46 -0700 Subject: [PATCH 054/137] Update pool_controller.dm --- code/modules/pool/pool_controller.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index d88db80f9b..d3500b5a97 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -145,7 +145,7 @@ var/list/reagent_names = list() var/list/rejected = list() for(var/datum/reagent/R in reagents.reagent_list) - if((R.volume >= min_reagent_amount) && (!respect_reagent_blacklist || !R.blacklisted)) + if((R.volume >= min_reagent_amount) && (!respect_reagent_blacklist || R.can_synth)) reagent_names += R.name else reagents.remove_reagent(R.type, INFINITY) @@ -202,7 +202,7 @@ for(var/datum/reagent/R in reagents.reagent_list) if(R.reagent_state == SOLID) R.reagent_state = LIQUID - if(!swimee.has_reagent(POOL_NO_OVERDOSE_MEDICINE_MAX)) + if(!swimee.reagents.has_reagent(POOL_NO_OVERDOSE_MEDICINE_MAX)) swimee.reagents.add_reagent(R.type, 0.5) //osmosis reagents.reaction(swimee, VAPOR, 0.03) //3 percent. Need to find a way to prevent this from stacking chems at some point like the above. for(var/obj/objects in W) From fb0f12520c0dc724980e59eca793f2b4704f1a0f Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sun, 2 Feb 2020 16:23:54 -0700 Subject: [PATCH 055/137] Update emergency.dm --- code/modules/shuttle/emergency.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 666e3d92fe..24c233b97d 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -15,7 +15,7 @@ desc = "For shuttle control." icon_screen = "shuttle" icon_keyboard = "tech_key" - obj_flags = INDESTRUCTIBLE + resistance_flags = INDESTRUCTIBLE var/auth_need = 3 var/list/authorized = list() var/hijack_last_stage_increase = 0 From f3b3053a8c69475c94b7b34dbfd64f70e4b202fe Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 3 Feb 2020 01:49:54 -0700 Subject: [PATCH 056/137] Update pool_structures.dm --- code/modules/pool/pool_structures.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 28120e1cb2..40db1553a5 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -122,7 +122,7 @@ jumper.adjustBruteLoss(10) if(91 to 100) - jumper.visible_message("[jumper] is preparing for the legendary dive! Can he make it?", \ + jumper.visible_message("[jumper] is preparing for the legendary dive! Can [jumper.p_they()] make it?", \ "You start preparing for a legendary dive!") jumper.SpinAnimation(7,1) From d8038edfc8c4905f2bd8cb528580263c118aca53 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 3 Feb 2020 01:51:23 -0700 Subject: [PATCH 057/137] Update pool_controller.dm --- code/modules/pool/pool_controller.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index d3500b5a97..1167a0943b 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -237,7 +237,7 @@ var/mob/living/carbon/human/drownee = M if(!drownee || drownee.stat == DEAD) return - if(drownee.lying && !drownee.internal) + if(drownee.resting && !drownee.internal) if(drownee.stat != CONSCIOUS) drownee.adjustOxyLoss(9) else @@ -372,7 +372,7 @@ var/datum/browser/popup = new(user, "Pool Controller", name, 300, 450) var/dat = "" if(interact_delay > world.time) - dat += "[(interact_delay - world.time)] seconds left until [src] can operate again.
" + dat += "[round((interact_delay - world.time)/10, 0.1)] seconds left until [src] can operate again.
" dat += text({"

Temperature

From 72ddaa2ded52206ce6812b05fe810023eb7c04b2 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 4 Feb 2020 23:56:27 -0700 Subject: [PATCH 058/137] Update swimming.dm --- code/datums/elements/swimming.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/datums/elements/swimming.dm b/code/datums/elements/swimming.dm index eeabc465ed..62a1f1840d 100644 --- a/code/datums/elements/swimming.dm +++ b/code/datums/elements/swimming.dm @@ -3,10 +3,10 @@ element_flags = ELEMENT_DETACH /datum/element/swimming/Attach(datum/target) - if(!isliving(target)) - return ELEMENT_INCOMPATIBLE if((. = ..()) == ELEMENT_INCOMPATIBLE) return + if(!isliving(target)) + return ELEMENT_INCOMPATIBLE RegisterSignal(target, COMSIG_IS_SWIMMING, .proc/is_swimming) RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/check_valid) From 40ab6bdd41fc6be05996fdb77173b1346cc35a7f Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 5 Feb 2020 00:22:12 -0700 Subject: [PATCH 059/137] changes --- code/__DEFINES/components.dm | 4 --- code/__DEFINES/traits.dm | 2 +- code/datums/elements/swimming.dm | 7 ++-- code/modules/pool/pool_controller.dm | 54 +++++++++++++++------------- code/modules/pool/pool_main.dm | 12 +++---- code/modules/pool/pool_structures.dm | 10 +++--- 6 files changed, 44 insertions(+), 45 deletions(-) diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index 7e5d318214..faf71a45fb 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -331,10 +331,6 @@ /*******Element signals*******/ -// /datum/element/swimming -#define COMSIG_IS_SWIMMING "has_swimming_element" - #define IS_SWIMMING 1 - /*******Non-Signal Component Related Defines*******/ //Redirection component init flags diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index d707f7e58a..608144da26 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -135,7 +135,7 @@ #define TRAIT_NOMARROW "nomarrow" // You don't make blood, with chemicals or nanites. #define TRAIT_NOPULSE "nopulse" // Your heart doesn't beat. #define TRAIT_EXEMPT_HEALTH_EVENTS "exempt-health-events" - +#define TRAIT_SWIMMING "swimming" //only applied by /datum/element/swimming, for checking //non-mob traits #define TRAIT_PARALYSIS "paralysis" //Used for limb-based paralysis, where replacing the limb will fix it diff --git a/code/datums/elements/swimming.dm b/code/datums/elements/swimming.dm index 62a1f1840d..d16ef6625f 100644 --- a/code/datums/elements/swimming.dm +++ b/code/datums/elements/swimming.dm @@ -7,16 +7,13 @@ return if(!isliving(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_IS_SWIMMING, .proc/is_swimming) RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/check_valid) + ADD_TRAIT(target, TRAIT_SWIMMING, TRAIT_SWIMMING) //seriously there's only one way to get this /datum/element/swimming/Detach(datum/target) . = ..() - UnregisterSignal(target, COMSIG_IS_SWIMMING) UnregisterSignal(target, COMSIG_MOVABLE_MOVED) - -/datum/element/swimming/proc/is_swimming() - return IS_SWIMMING + REMOVE_TRAIT(target, TRAIT_SWIMMING, TRAIT_SWIMMING) /datum/element/swimming/proc/check_valid(datum/source) var/mob/living/L = source diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 1167a0943b..9c6d976343 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -69,7 +69,7 @@ START_PROCESSING(SSfastprocess, src) create_reagents(1000) if(noreact_reagents) - reagents.reagents_holder_flags |= NO_REACTION + reagents.reagents_holder_flags |= NO_REACT wires = new /datum/wires/poolcontroller(src) scan_things() @@ -111,15 +111,19 @@ /obj/machinery/pool/controller/AltClick(mob/user) . = ..() - if(isliving(user) && user.Adjacent(src) && user.CanReach(src) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated()) - visible_message("[user] starts to drain [src]!") - draining = TRUE - if(do_after(user, 50, target = src)) - reagents.remove_all(INFINITY) - visible_message("[user] drains [src].") - say("Reagents cleared.") - update_color() + if(!isliving(user) || !user.Adjacent(src) || !user.CanReach(src) || user.IsStun() || user.IsKnockdown() || user.incapacitated()) + return FALSE + visible_message("[user] starts to drain [src]!") + draining = TRUE + if(!do_after(user, 50, target = src)) draining = FALSE + return TRUE + reagents.remove_all(INFINITY) + visible_message("[user] drains [src].") + say("Reagents cleared.") + update_color() + draining = FALSE + return TRUE /obj/machinery/pool/controller/attackby(obj/item/W, mob/user) if(shocked && !(stat & NOPOWER)) @@ -196,27 +200,29 @@ /obj/machinery/pool/controller/proc/process_reagents() if(last_reagent_process > world.time + reagent_tick_interval) return - if(length(reagents.reagent_list) > 0) - for(var/turf/open/pool/W in linked_turfs) - for(var/mob/living/carbon/human/swimee in W) - for(var/datum/reagent/R in reagents.reagent_list) - if(R.reagent_state == SOLID) - R.reagent_state = LIQUID - if(!swimee.reagents.has_reagent(POOL_NO_OVERDOSE_MEDICINE_MAX)) - swimee.reagents.add_reagent(R.type, 0.5) //osmosis - reagents.reaction(swimee, VAPOR, 0.03) //3 percent. Need to find a way to prevent this from stacking chems at some point like the above. - for(var/obj/objects in W) - if(W.reagents) - W.reagents.reaction(objects, VAPOR, 1) + if(!length(reagents.reagent_list)) + return + for(var/turf/open/pool/W in linked_turfs) + for(var/mob/living/carbon/human/swimee in W) + for(var/datum/reagent/R in reagents.reagent_list) + if(R.reagent_state == SOLID) + R.reagent_state = LIQUID + if(!swimee.reagents.has_reagent(POOL_NO_OVERDOSE_MEDICINE_MAX)) + swimee.reagents.add_reagent(R.type, 0.5) //osmosis + reagents.reaction(swimee, VAPOR, 0.03) //3 percent. Need to find a way to prevent this from stacking chems at some point like the above. + for(var/obj/objects in W) + if(W.reagents) + W.reagents.reaction(objects, VAPOR, 1) last_reagent_process = world.time /obj/machinery/pool/controller/process() updateUsrDialog() if(stat & (NOPOWER|BROKEN)) return - if (!drained) - process_pool() - process_reagents() + if(drained) + return + process_pool() + process_reagents() /obj/machinery/pool/controller/proc/process_pool() if(!drained) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index b7406606c9..9f867df31e 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -50,7 +50,7 @@ // Mousedrop hook to normal turfs to get out of pools. /turf/open/MouseDrop_T(atom/from, mob/user) // I could make this /open/floor and not have the !istype but ehh - kev - if(isliving(from) && SEND_SIGNAL(from, COMSIG_IS_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated() && !istype(src, /turf/open/pool)) + if(isliving(from) && HAS_TRAIT(from, TRAIT_SWIMMING) && isliving(user) && ((user == from) || user.CanReach(from)) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated() && !istype(src, /turf/open/pool)) var/mob/living/L = from //The element only exists if you're on water and a living mob, so let's skip those checks. var/pre_msg @@ -81,7 +81,7 @@ return ..() //human weak, monkey (and anyone else) ook ook eek eek strong if(isliving(AM) && (locate(/obj/structure/pool/ladder) in src)) return ..() //climbing out - return istype(newloc, type) + return istype(newloc, /turf/open/pool) return ..() // Exited logic @@ -105,7 +105,7 @@ return ..() if(isliving(AM)) var/mob/living/victim = AM - if(!SEND_SIGNAL(victim, COMSIG_IS_SWIMMING)) //poor guy not swimming time to dunk them! + if(!HAS_TRAIT(victim, TRAIT_SWIMMING)) //poor guy not swimming time to dunk them! victim.AddElement(/datum/element/swimming) controller.mobs_in_pool += victim if(locate(/obj/structure/pool/ladder) in src) //safe climbing @@ -126,7 +126,7 @@ H.visible_message("[H] falls in and takes a drink!", "You fall in and swallow some water!") playsound(src, 'sound/effects/splash.ogg', 60, TRUE, 1) - else if(!istype(H.head, /obj/item/clothing/head/helmet)) + else if(!H.head || !(H.head.armor.getRating(melee) > 20)) if(prob(75)) H.visible_message("[H] falls in the drained pool!", "You fall in the drained pool!") @@ -155,7 +155,7 @@ if(!isliving(from)) return var/mob/living/victim = from - if(user.stat || user.lying || !Adjacent(user) || !from.Adjacent(user) || !iscarbon(user) || !victim.has_gravity(src) || SEND_SIGNAL(victim, COMSIG_IS_SWIMMING)) + if(user.stat || user.lying || !Adjacent(user) || !from.Adjacent(user) || !iscarbon(user) || !victim.has_gravity(src) || HAS_TRAIT(victim, TRAIT_SWIMMING)) return var/victimname = victim == user? "themselves" : "[victim]" var/starttext = victim == user? "[user] is descending into [src]." : "[user] is lowering [victim] into [src]." @@ -177,7 +177,7 @@ . = ..() if(.) return - if((user.loc != src) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated() && Adjacent(user) && SEND_SIGNAL(user, COMSIG_IS_SWIMMING) && filled && (next_splash < world.time)) + if((user.loc != src) && !user.IsStun() && !user.IsKnockdown() && !user.incapacitated() && Adjacent(user) && HAS_TRAIT(user, TRAIT_SWIMMING) && filled && (next_splash < world.time)) playsound(src, 'sound/effects/watersplash.ogg', 8, TRUE, 1) next_splash = world.time + 25 var/obj/effect/splash/S = new(src) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 40db1553a5..27f16d4008 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -15,8 +15,7 @@ . = ..() if(.) return - var/is_swimming = SEND_SIGNAL(user, COMSIG_IS_SWIMMING) - if(!is_swimming) + if(!HAS_TRAIT(user, TRAIT_SWIMMING)) if(user.CanReach(src)) user.AddElement(/datum/element/swimming) user.forceMove(get_step(src, dir)) @@ -44,7 +43,8 @@ if(jumping) for(var/mob/living/jumpee in loc) //hackzors. playsound(jumpee, 'sound/effects/splash.ogg', 60, TRUE, 1) - jumpee.AddElement(/datum/element/swimming) + if(!HAS_TRAIT(jumpee, TRAIT_SWIMMING)) + jumpee.AddElement(/datum/element/swimming) jumpee.Stun(2) /obj/structure/pool/Lboard/proc/reset_position(mob/user, initial_layer, initial_px, initial_py) @@ -59,7 +59,7 @@ to_chat(user, "Someone else is already making a jump!") return var/turf/T = get_turf(src) - if(SEND_SIGNAL(user, COMSIG_IS_SWIMMING)) + if(HAS_TRAIT(user, TRAIT_SWIMMING)) return else if(Adjacent(jumper)) @@ -73,7 +73,7 @@ jumper.layer = RIPPLE_LAYER jumper.pixel_x = 3 jumper.pixel_y = 7 - jumper.dir = 8 + jumper.dir = WEST sleep(1) jumper.forceMove(T) addtimer(CALLBACK(src, .proc/dive, jumper, original_layer, original_px, original_py), 10) From 617d0c0afab1e0083284b5df24c494e5e5ddc3eb Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 5 Feb 2020 00:26:47 -0700 Subject: [PATCH 060/137] armor --- code/modules/pool/pool_main.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 9f867df31e..9d37bd5fd5 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -126,7 +126,7 @@ H.visible_message("[H] falls in and takes a drink!", "You fall in and swallow some water!") playsound(src, 'sound/effects/splash.ogg', 60, TRUE, 1) - else if(!H.head || !(H.head.armor.getRating(melee) > 20)) + else if(!H.head || !(H.head.armor.getRating("melee") > 20)) if(prob(75)) H.visible_message("[H] falls in the drained pool!", "You fall in the drained pool!") From 7f81f3e51f2c676454a331b3f8de4e0a684f2aec Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 6 Feb 2020 22:00:30 -0700 Subject: [PATCH 061/137] fix --- code/modules/pool/pool_structures.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 27f16d4008..0bf74bb2ee 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -74,6 +74,7 @@ jumper.pixel_x = 3 jumper.pixel_y = 7 jumper.dir = WEST + jumper.Addelement(/datum/element/swimming) sleep(1) jumper.forceMove(T) addtimer(CALLBACK(src, .proc/dive, jumper, original_layer, original_px, original_py), 10) From 949e8c410472a8b0a582fff18f1a94f5956994c2 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Fri, 7 Feb 2020 16:27:53 -0600 Subject: [PATCH 062/137] hate.. --- _maps/map_files/BoxStation/BoxStation.dmm | 11906 +++++++++----------- 1 file changed, 5582 insertions(+), 6324 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index eb877cf12b..a630c54b6e 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -173,19 +173,6 @@ "aay" = ( /turf/open/floor/plating, /area/security/prison) -"aaz" = ( -/obj/structure/lattice/catwalk, -/obj/item/stack/marker_beacon{ - anchored = 1; - icon_state = "markerburgundy-on"; - light_color = "#FA644B"; - light_power = 3; - light_range = 3; - name = "Docking Beacon"; - picked_color = "Burgundy" - }, -/turf/open/space/basic, -/area/space/nearstation) "aaA" = ( /obj/machinery/seed_extractor, /turf/open/floor/plasteel, @@ -247,46 +234,10 @@ /obj/structure/chair/stool, /turf/open/floor/plasteel, /area/security/prison) -"aaK" = ( -/obj/structure/lattice/catwalk, -/obj/item/stack/marker_beacon{ - anchored = 1; - icon_state = "markerburgundy-on"; - light_color = "#FA644B"; - light_power = 3; - light_range = 3; - name = "Docking Beacon"; - picked_color = "Burgundy" - }, -/turf/open/floor/plating, -/area/space/nearstation) -"aaL" = ( -/obj/machinery/photocopier, -/turf/open/floor/wood, -/area/library) -"aaM" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) "aaN" = ( /obj/structure/chair/sofa/right, /turf/open/floor/plasteel, /area/security/prison) -"aaO" = ( -/obj/effect/spawner/lootdrop/keg, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) "aaP" = ( /obj/machinery/computer/cryopod{ dir = 8; @@ -297,12 +248,6 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"aaQ" = ( -/obj/structure/sign/poster/contraband/random{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) "aaR" = ( /obj/structure/lattice, /obj/structure/sign/warning/securearea{ @@ -340,15 +285,6 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"aaY" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/obj/item/poster/random_official, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) "aaZ" = ( /turf/closed/wall/r_wall, /area/ai_monitored/security/armory) @@ -569,11 +505,6 @@ "abF" = ( /turf/open/floor/plasteel/freezer, /area/security/prison) -"abG" = ( -/obj/structure/door_assembly/door_assembly_mai, -/obj/item/electronics/airlock, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) "abH" = ( /obj/structure/table, /obj/item/storage/box/chemimp{ @@ -1634,10 +1565,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) -"adO" = ( -/obj/effect/spawner/structure/window/shuttle, -/turf/open/floor/plating/airless, -/area/space/nearstation) "adP" = ( /obj/structure/cable{ icon_state = "2-8" @@ -2052,34 +1979,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore/secondary) -"aeD" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"aeE" = ( -/obj/structure/girder, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"aeF" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/machinery/computer/station_alert{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) "aeG" = ( /obj/structure/cable, /obj/machinery/power/solar{ @@ -2458,12 +2357,6 @@ }, /turf/open/floor/plasteel, /area/security/main) -"afn" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "afo" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod Three" @@ -2484,39 +2377,6 @@ }, /turf/open/space/basic, /area/space) -"afq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"afr" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) -"afs" = ( -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_x = -31 - }, -/obj/machinery/computer/monitor{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) "aft" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 5 @@ -2827,15 +2687,6 @@ /obj/machinery/atmospherics/pipe/manifold4w/general/visible, /turf/open/floor/plasteel, /area/engine/atmos) -"age" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "agf" = ( /obj/structure/table, /obj/item/stack/sheet/metal, @@ -2985,10 +2836,6 @@ /obj/machinery/suit_storage_unit/security, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"agv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "agw" = ( /obj/structure/table, /obj/machinery/syndicatebomb/training, @@ -3118,14 +2965,6 @@ }, /turf/open/floor/plasteel, /area/security/main) -"agH" = ( -/obj/machinery/bluespace_beacon, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) "agI" = ( /obj/machinery/airalarm{ pixel_y = 23 @@ -3255,12 +3094,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/warden) -"agX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "agY" = ( /obj/structure/table, /obj/item/storage/fancy/donut_box, @@ -3501,16 +3334,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"ahw" = ( -/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ahx" = ( /obj/structure/cable{ icon_state = "4-8" @@ -4161,12 +3984,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aiA" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/fore/secondary) "aiB" = ( @@ -4656,16 +4474,6 @@ /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel, /area/security/brig) -"ajC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/grimy, -/area/ai_monitored/turret_protected/aisat_interior) "ajD" = ( /obj/structure/cable{ icon_state = "4-8" @@ -4874,18 +4682,6 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/maintenance/solars/port/fore) -"ajX" = ( -/obj/machinery/computer/teleporter{ - dir = 8 - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/aisat_interior) -"ajY" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/atmos) "ajZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/warning/vacuum/external{ @@ -5169,18 +4965,6 @@ }, /turf/open/floor/plasteel, /area/security/courtroom) -"akz" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/landmark/start/cyborg, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) "akA" = ( /obj/structure/chair{ dir = 8; @@ -6281,14 +6065,6 @@ /turf/open/floor/plasteel, /area/security/processing) "anu" = ( -/obj/machinery/button/door{ - desc = "A remote control switch for the exit."; - id = "laborexit"; - name = "exit button"; - normaldoorcontrol = 1; - pixel_x = 26; - pixel_y = -6 - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, @@ -6369,8 +6145,11 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anE" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/machinery/door/airlock/external{ + req_access_txt = "13" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6378,14 +6157,11 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anG" = ( -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/fitness"; - name = "Pool Room APC"; - pixel_y = -23 +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 }, -/obj/structure/cable, /turf/open/floor/plating, -/area/crew_quarters/fitness/pool) +/area/maintenance/fore/secondary) "anH" = ( /obj/structure/sign/warning/electricshock, /turf/closed/wall/r_wall, @@ -6437,10 +6213,8 @@ /area/space) "anP" = ( /obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security{ - id_tag = "laborexit"; - name = "Labor Shuttle"; - req_access_txt = "63" +/obj/machinery/door/airlock/security/glass{ + name = "Labor Camp Shuttle Airlock" }, /turf/open/floor/plasteel, /area/security/processing) @@ -7371,12 +7145,14 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqs" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Pool" +/obj/machinery/door/airlock{ + id_tag = "Room Two"; + name = "Room Seven - Luxury Suite" }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/dorms) "aqu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -7853,7 +7629,7 @@ /turf/open/floor/wood, /area/lawoffice) "asa" = ( -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = 32 }, /obj/effect/turf_decal/tile/red{ @@ -13719,7 +13495,7 @@ /turf/open/floor/plating, /area/chapel/main) "aHu" = ( -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = 32 }, /turf/open/floor/plasteel/white/corner{ @@ -16141,6 +15917,10 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/port) +"aNV" = ( +/obj/machinery/photocopier, +/turf/open/floor/wood, +/area/library) "aNW" = ( /obj/machinery/door/airlock/public/glass{ name = "Chapel Office"; @@ -16760,7 +16540,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "aPE" = ( -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /turf/closed/wall, /area/crew_quarters/locker) "aPF" = ( @@ -16851,7 +16631,7 @@ /obj/structure/cable{ icon_state = "0-8" }, -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ id = "bridge blast"; @@ -16883,7 +16663,7 @@ /obj/structure/cable{ icon_state = "0-4" }, -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ id = "bridge blast"; @@ -18159,7 +17939,7 @@ /area/hallway/secondary/exit) "aTl" = ( /obj/machinery/vending/cola/random, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ layer = 4; pixel_y = 32 }, @@ -18200,7 +17980,7 @@ /area/hallway/secondary/exit) "aTr" = ( /obj/machinery/door/firedoor, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = 32 }, /turf/open/floor/plasteel, @@ -21374,7 +21154,7 @@ /turf/open/floor/plasteel, /area/quartermaster/warehouse) "baZ" = ( -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ layer = 4; pixel_y = 32 }, @@ -21531,7 +21311,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bbv" = ( -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_y = 32 }, /obj/structure/cable{ @@ -22012,7 +21792,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/turf/open/floor/wood, +/turf/open/floor/carpet, /area/crew_quarters/heads/captain) "bcR" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22131,6 +21911,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/machinery/computer/arcade/minesweeper, /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bdj" = ( @@ -22167,7 +21948,7 @@ dir = 4 }, /obj/structure/disposalpipe/segment, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = -32 }, /obj/effect/turf_decal/tile/blue{ @@ -23068,7 +22849,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai_upload) "bfw" = ( -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai_upload) "bfx" = ( @@ -23118,7 +22899,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/turf/open/floor/carpet, +/turf/open/floor/wood, /area/crew_quarters/heads/captain) "bfD" = ( /obj/structure/cable{ @@ -25066,7 +24847,7 @@ /obj/machinery/light{ dir = 4 }, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = 32 }, /obj/machinery/aug_manipulator, @@ -26708,6 +26489,7 @@ /area/crew_quarters/heads/captain) "boa" = ( /obj/structure/toilet{ + contents = newlist(/obj/item/toy/snappop/phoenix); dir = 4 }, /turf/open/floor/plasteel/freezer, @@ -27329,7 +27111,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bpw" = ( -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /turf/closed/wall, /area/medical/medbay/central) "bpx" = ( @@ -28637,7 +28419,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bsz" = ( -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = -32 }, /turf/open/floor/plasteel/white/side{ @@ -30023,6 +29805,12 @@ }, /turf/open/floor/plasteel, /area/quartermaster/qm) +"bvG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/space/nearstation) "bvH" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 @@ -30193,6 +29981,21 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"bwc" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) "bwd" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -32599,7 +32402,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_y = -32 }, /turf/open/floor/plasteel, @@ -35474,7 +35277,7 @@ /area/medical/sleeper) "bIe" = ( /obj/structure/disposalpipe/segment, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = -32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -42594,7 +42397,7 @@ /turf/open/floor/plating, /area/tcommsat/computer) "bZr" = ( -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /turf/closed/wall, /area/tcommsat/computer) "bZs" = ( @@ -48369,6 +48172,16 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"coh" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"coi" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel, +/area/security/brig) "cop" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/atmos/incinerator_input{ dir = 1 @@ -48527,6 +48340,10 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"coI" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hydroponics) "coJ" = ( /obj/machinery/door/firedoor, /obj/structure/cable/yellow{ @@ -48757,6 +48574,15 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"cpF" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/structure/sign/poster/official/space_cops{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) "cpG" = ( /obj/structure/table/optable, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -49491,9 +49317,46 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) +"ctu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ctv" = ( /turf/closed/wall/r_wall, /area/space/nearstation) +"ctw" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/machinery/computer/station_alert{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) +"ctx" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"cty" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ctz" = ( /obj/machinery/door/poddoor/shutters{ id = "teledoor"; @@ -49538,6 +49401,41 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) +"ctG" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctH" = ( +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -31 + }, +/obj/machinery/computer/monitor{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) +"ctI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ctJ" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49561,6 +49459,14 @@ }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) +"ctM" = ( +/obj/machinery/bluespace_beacon, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/landmark/start/cyborg, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) "ctN" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 10 @@ -49568,6 +49474,12 @@ /obj/structure/lattice, /turf/open/space, /area/space/nearstation) +"ctP" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ctQ" = ( /obj/structure/table, /obj/machinery/microwave{ @@ -49593,6 +49505,26 @@ /obj/structure/sign/warning/radiation/rad_area, /turf/closed/wall, /area/engine/engineering) +"ctS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctT" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) "ctU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -49615,6 +49547,12 @@ /obj/structure/chair, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) +"ctW" = ( +/obj/machinery/computer/teleporter{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) "ctX" = ( /obj/machinery/camera{ c_tag = "MiniSat Teleporter"; @@ -49651,7 +49589,7 @@ /area/ai_monitored/turret_protected/aisat_interior) "cuc" = ( /obj/structure/rack, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_y = -32 }, /obj/item/storage/box/donkpockets, @@ -49895,6 +49833,12 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/atmos) +"cuC" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/start/cyborg, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/atmos) "cuD" = ( /obj/machinery/light/small{ dir = 8 @@ -49943,6 +49887,18 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) +"cuG" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/landmark/start/cyborg, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) "cuH" = ( /obj/machinery/light/small{ dir = 8 @@ -50231,7 +50187,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cvf" = ( -/obj/machinery/status_display, +/obj/machinery/status_display/evac, /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai) "cvg" = ( @@ -50756,7 +50712,7 @@ /obj/machinery/light{ dir = 8 }, -/obj/machinery/status_display{ +/obj/machinery/status_display/evac{ pixel_x = -32 }, /turf/open/floor/circuit, @@ -50885,14 +50841,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) -"cwP" = ( -/obj/structure/fireplace, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23 - }, -/turf/open/floor/plating, -/area/maintenance/port) "cwT" = ( /obj/machinery/camera{ c_tag = "Arrivals Escape Pod 2"; @@ -51202,14 +51150,6 @@ }, /turf/open/floor/plating, /area/engine/engineering) -"czi" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 8; - name = "8maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "czk" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -52080,6 +52020,15 @@ /obj/machinery/deepfryer, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) +"cCt" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/obj/item/poster/random_official, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) "cCB" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 10 @@ -52241,6 +52190,36 @@ /obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/engine/engineering) +"cEo" = ( +/obj/structure/closet/boxinggloves, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"cGz" = ( +/obj/structure/table/wood, +/obj/item/instrument/violin, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"cHf" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/table/wood, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -3; + pixel_y = 20 + }, +/obj/item/reagent_containers/food/condiment/peppermill{ + dir = 1; + pixel_x = 3; + pixel_y = 20 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/item/reagent_containers/food/drinks/britcup, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) "cHD" = ( /obj/structure/cable{ icon_state = "1-2" @@ -52551,27 +52530,10 @@ }, /turf/open/floor/plating, /area/hallway/secondary/entry) -"cJn" = ( -/obj/structure/reagent_dispensers/watertank/high, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/box, -/turf/open/floor/plasteel, -/area/engine/atmos) -"cMk" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/prison) +"cIv" = ( +/obj/structure/sign/poster/official/cohiba_robusto_ad, +/turf/closed/wall, +/area/lawoffice) "cMC" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -52602,6 +52564,10 @@ }, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/starboard/aft) +"cMS" = ( +/obj/item/chair/wood, +/turf/open/floor/plating, +/area/maintenance/port) "cNa" = ( /obj/structure/cable, /obj/machinery/power/solar{ @@ -52751,24 +52717,14 @@ /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"cOP" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "cOT" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"cPo" = ( -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"cPw" = ( -/obj/structure/table/glass, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +"cPn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) "cPA" = ( /obj/machinery/atmospherics/components/binary/valve{ dir = 4 @@ -52811,47 +52767,25 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"cRz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +"cQF" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 8; + name = "8maintenance loot spawner" }, -/obj/machinery/button/door{ - id = "holoprivacy"; - name = "Holodeck Privacy"; - pixel_y = 24 +/obj/item/radio/intercom{ + pixel_y = 25 }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"cRD" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/dresser, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/theatre"; - dir = 8; - name = "Theatre APC"; - pixel_x = -25 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/theatre) -"cSn" = ( -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"cQT" = ( +/obj/structure/filingcabinet, /obj/machinery/light{ - dir = 1 + dir = 8; + light_color = "#e8eaff" }, -/turf/open/floor/circuit, -/area/ai_monitored/nuke_storage) +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) "cSA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -53213,6 +53147,12 @@ }, /turf/open/floor/plating, /area/maintenance/department/medical/morgue) +"cTT" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) "cTX" = ( /obj/structure/cable{ icon_state = "0-2" @@ -53235,1062 +53175,31 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) +"cUx" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/bridge/meeting_room) "cVb" = ( /turf/closed/wall, /area/hallway/secondary/service) -"cVp" = ( -/obj/structure/window/reinforced/tinted{ - dir = 8 - }, -/obj/structure/window/reinforced/tinted{ - dir = 4 - }, -/obj/structure/curtain, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) -"cVu" = ( -/obj/machinery/camera{ - c_tag = "Locker Room South"; - dir = 8 - }, -/obj/structure/closet/secure_closet/personal, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) +"cVs" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/wood, +/area/bridge/meeting_room) "cVK" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) -"cXx" = ( -/obj/machinery/door/airlock/security{ - name = "Labor Shuttle"; - req_access_txt = "2" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/processing) -"dbn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"dbM" = ( -/turf/open/floor/plating, -/area/space/nearstation) -"dcG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/closet/wardrobe/pjs, -/obj/item/clothing/under/maid, -/obj/item/clothing/under/maid, -/obj/item/clothing/under/janimaid, -/obj/item/clothing/under/janimaid, -/obj/item/clothing/accessory/maidapron, -/obj/item/clothing/accessory/maidapron, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"dfh" = ( -/obj/machinery/power/apc{ - areastring = "/area/science/circuit"; - name = "Circuitry Lab APC"; - pixel_x = 30 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/science/circuit) -"dfI" = ( -/obj/machinery/door/firedoor, -/obj/structure/sign/departments/evac{ - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"dfL" = ( -/obj/structure/reagent_dispensers/keg/gargle, -/turf/open/floor/wood, -/area/maintenance/bar) -"dgh" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green, -/obj/machinery/camera{ - c_tag = "VR Sleepers"; - dir = 1 - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"dgz" = ( -/turf/closed/wall, -/area/crew_quarters/cryopod) -"dhx" = ( -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) -"dlj" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"dok" = ( -/obj/item/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) -"doP" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"dqu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/maintenance/disposal/incinerator) -"dtE" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"dvc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"dvG" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"dvO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall, -/area/science/circuit) -"dwc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"dxB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/security/prison) -"dzi" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"dzy" = ( -/obj/machinery/door/airlock{ - name = "Shower Room" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/toilet) -"dHb" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"dIm" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"dKP" = ( -/turf/closed/wall, -/area/maintenance/bar) -"dKV" = ( -/obj/structure/chair/stool/bar, -/turf/open/floor/wood, -/area/maintenance/bar) -"dMu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"dMX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/chair/comfy/brown, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"dMZ" = ( -/obj/structure/sign/poster/official/random{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"dRC" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/hydroponics) -"dSv" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/abandoned_gambling_den"; - name = "Abandoned Gambling Den APC"; - pixel_y = -24 - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"dTe" = ( -/obj/structure/chair/comfy/beige{ - dir = 8 - }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/plasteel/grimy, -/area/hallway/secondary/entry) -"dTJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads/captain) -"dXT" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"eaI" = ( -/obj/structure/table/reinforced, -/obj/item/radio/intercom{ - pixel_x = -30 - }, -/obj/item/stock_parts/cell/high, -/obj/item/stock_parts/cell/high, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"edH" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"eeR" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ego" = ( -/obj/machinery/atmospherics/components/binary/valve, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"egQ" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchen"; - name = "kitchen shutters" - }, -/obj/item/reagent_containers/food/snacks/bluecherrycupcake{ - pixel_y = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"egS" = ( -/obj/structure/table/wood/fancy, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4; - pixel_y = 5 - }, -/obj/item/reagent_containers/food/snacks/burger/plain, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"ein" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"elw" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, +"cXU" = ( /obj/effect/turf_decal/tile/red, +/obj/machinery/light{ + light_color = "#c9d3e8" + }, /turf/open/floor/plasteel, /area/hallway/primary/fore) -"epV" = ( -/obj/structure/bed, -/obj/machinery/button/door{ - id = "Dorm6"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/spawner/lootdrop/bedsheet, -/turf/open/floor/wood, -/area/crew_quarters/dorms) -"eqm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"est" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/machinery/computer/shuttle/mining/common{ - dir = 4 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"esV" = ( -/obj/structure/table/glass, -/obj/structure/bedsheetbin/towel, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"evR" = ( -/turf/open/floor/plating, -/area/maintenance/bar) -"ewZ" = ( -/obj/structure/pool/ladder{ - dir = 1; - pixel_y = -22 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"eyM" = ( -/obj/machinery/mineral/ore_redemption{ - input_dir = 2; - output_dir = 1 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"eHI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) -"eLH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"eMi" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"eMQ" = ( -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/obj/machinery/vending/wardrobe/curator_wardrobe, -/turf/open/floor/carpet, -/area/library) -"eND" = ( -/obj/structure/filingcabinet, -/obj/machinery/light{ - dir = 8; - light_color = "#e8eaff" - }, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"eNK" = ( -/obj/structure/table/wood, -/obj/item/instrument/guitar, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"eNW" = ( -/turf/open/floor/plasteel/dark, -/area/crew_quarters/dorms) -"eOv" = ( -/obj/effect/landmark/event_spawn, -/turf/closed/wall, -/area/crew_quarters/fitness) -"eOy" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"ePO" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"eRk" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"eRn" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/quartermaster/warehouse) -"eRz" = ( -/obj/structure/lattice, -/obj/structure/grille, -/turf/open/space/basic, -/area/space/nearstation) -"eUd" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"eVC" = ( -/obj/effect/spawner/structure/window, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/crew_quarters/cryopod) -"eVL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light_switch{ - pixel_y = 28 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/quartermaster/miningdock) -"eXm" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"fbm" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"fby" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"fcG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/science/mixing) -"fgj" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"fhP" = ( -/obj/machinery/light{ - dir = 8; - light_color = "#e8eaff" - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"fjy" = ( -/obj/structure/lattice, -/turf/closed/wall/r_wall, -/area/crew_quarters/heads/captain) -"flc" = ( -/obj/structure/table/reinforced, -/obj/item/storage/fancy/donut_box, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"fnC" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/service) -"fnJ" = ( -/obj/structure/sign/mining{ - pixel_y = 7 - }, -/turf/closed/wall, -/area/quartermaster/miningdock) -"frE" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 1 - }, -/area/crew_quarters/fitness) -"ftv" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"fuo" = ( -/obj/item/reagent_containers/glass/bucket, -/turf/open/floor/grass, -/area/security/prison) -"fvk" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"fvW" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"fvY" = ( -/obj/machinery/computer/cryopod{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"fwN" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"fxa" = ( -/obj/structure/chair/wood/normal, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/maintenance/bar) -"fyq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 1; - pixel_x = 5 - }, -/obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/toilet) -"fyM" = ( -/obj/structure/closet/wardrobe/cargotech, -/obj/item/radio/headset/headset_cargo, -/turf/open/floor/plasteel, -/area/quartermaster/storage) -"fzd" = ( -/turf/closed/wall, -/area/crew_quarters/abandoned_gambling_den) -"fGf" = ( -/obj/machinery/smartfridge/disks{ - pixel_y = 2 - }, -/obj/structure/table, -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"fGl" = ( -/obj/effect/landmark/event_spawn, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/security/brig) -"fGC" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/vault, -/obj/effect/mapping_helpers/airlock/locked, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/nuke_storage) -"fHd" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"fHj" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"fHm" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"fHK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"fIn" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/machinery/meter, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"fJa" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4; - pixel_y = 5 - }, -/obj/structure/chair/sofa{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"fKl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/science/circuit) -"fLd" = ( -/obj/structure/table/wood, -/obj/machinery/requests_console{ - department = "Theatre"; - name = "theatre RC"; - pixel_x = -32 - }, -/obj/item/reagent_containers/food/snacks/baguette, -/obj/item/toy/dummy, -/obj/item/lipstick/random{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/lipstick/random{ - pixel_x = -2; - pixel_y = -2 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"fLR" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"fOc" = ( -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"fPs" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "kitchen"; - name = "kitchen shutters" - }, -/obj/item/reagent_containers/food/snacks/cheesynachos{ - pixel_y = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/kitchen) -"fQF" = ( -/obj/structure/chair/sofa/right, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"fSr" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/machinery/disposal/bin, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"fTg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) -"fVU" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Holodeck Door" - }, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/fitness) -"fZD" = ( -/obj/structure/filingcabinet, -/obj/machinery/light{ - dir = 4; - light_color = "#e8eaff" - }, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"gbq" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plating, -/area/construction) -"gbT" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/glass/fifty, -/turf/open/floor/plating, -/area/maintenance/department/medical/morgue) -"gdu" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 - }, -/obj/machinery/button/door{ - id = "LockerShitter2"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 14; - pixel_y = 38; - specialfunctions = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/toilet/locker) -"gfD" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"gga" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"ggg" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/space, -/area/solar/starboard/aft) -"ghs" = ( -/obj/structure/table/wood/fancy, -/obj/machinery/light, -/obj/item/reagent_containers/food/condiment/saltshaker{ - pixel_x = -3; - pixel_y = 20 - }, -/obj/item/reagent_containers/food/condiment/peppermill{ - dir = 1; - pixel_x = 3; - pixel_y = 20 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"ghJ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - icon_state = "roomnum"; - name = "Room Number 1"; - pixel_x = -30; - pixel_y = -7 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"ghY" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"gil" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"gjf" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"gjl" = ( -/turf/closed/wall, -/area/quartermaster/warehouse) -"gjC" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"goY" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Pool" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"gtj" = ( -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"gtL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"gwd" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/science/circuit) -"gwi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"gBo" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/wood, -/area/maintenance/bar) -"gCe" = ( -/obj/effect/spawner/lootdrop/keg, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"gFD" = ( -/obj/structure/table/wood/fancy/royalblue, -/obj/item/crowbar/red, -/turf/open/floor/plating, -/area/maintenance/port) -"gIO" = ( -/obj/structure/bed, -/obj/effect/spawner/lootdrop/bedsheet, -/turf/open/floor/plating, -/area/security/prison) -"gJg" = ( -/turf/closed/wall/mineral/titanium, -/area/space/nearstation) -"gKk" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/fitness) -"gLH" = ( -/obj/machinery/door/airlock/external{ - name = "External Access"; - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) -"gMl" = ( -/obj/structure/chair/wood/normal{ - dir = 4 - }, -/turf/open/floor/wood, -/area/maintenance/bar) -"gMv" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"gOZ" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"gQn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"gSH" = ( -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/space/nearstation) -"gVX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"gVY" = ( +"daI" = ( /obj/structure/reagent_dispensers/foamtank, /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -54305,537 +53214,20 @@ /obj/effect/turf_decal/stripes/box, /turf/open/floor/plasteel, /area/engine/atmos) -"gWd" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/construction) -"gXs" = ( -/obj/structure/lattice, -/turf/open/space/basic, -/area/space/nearstation) -"gZG" = ( -/obj/structure/closet/crate/freezer/surplus_limbs, -/obj/item/reagent_containers/glass/beaker/synthflesh, -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/medical/sleeper) -"has" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"haz" = ( -/obj/machinery/autolathe{ - name = "public autolathe" - }, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"haX" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"hcd" = ( -/obj/machinery/smartfridge/organ/preloaded, -/turf/closed/wall, -/area/medical/sleeper) -"hdb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"hdp" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 3; - name = "3maintenance loot spawner" - }, +"dbU" = ( /obj/structure/light_construct{ - dir = 8 + dir = 1 }, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"hdq" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"hfe" = ( -/obj/structure/sign/poster/contraband/smoke{ - desc = "This poster reminds us all that the Detective is a parasite. Year after year, they must get replacement lungs because of their addiction. "; - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"hgX" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ +"dce" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/machinery/light/small, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plasteel/white/side{ - dir = 1 - }, -/area/crew_quarters/fitness) -"hik" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/space, -/area/solar/starboard/aft) -"hjw" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"hkg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/dorms) -"hkS" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"hlY" = ( -/obj/machinery/door/airlock{ - name = "Recharging Station" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"hoo" = ( -/obj/effect/landmark/carpspawn, -/turf/open/space/basic, -/area/space) -"hoO" = ( -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"hqD" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"htr" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"hvS" = ( -/obj/effect/landmark/stationroom/box/engine, -/turf/open/space/basic, -/area/space) -"hwu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"hzw" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/structure/window{ - dir = 1 - }, -/obj/structure/window{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"hzR" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"hKF" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/storage/tech) -"hMb" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"hMx" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"hPB" = ( -/turf/open/floor/plasteel/yellowsiding/corner, -/area/crew_quarters/fitness/pool) -"hRa" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/cell_charger{ - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"hRz" = ( -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"hRT" = ( -/obj/effect/landmark/blobstart, -/turf/open/floor/plating, -/area/maintenance/department/electrical) -"hRX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"hSU" = ( -/obj/structure/chair/sofa/left, -/obj/structure/window{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"hVw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"hWn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"hYW" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"hZH" = ( -/obj/machinery/hydroponics/constructable, -/obj/item/radio/intercom{ - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/turf/open/floor/plasteel/dark, -/area/hydroponics) -"idO" = ( -/obj/structure/bed, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"idX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"iep" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/machinery/camera{ - c_tag = "Pool West"; - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"ier" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"ieL" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"igT" = ( -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck{ - pixel_y = 5 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"ihm" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/junction/flip, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ihC" = ( -/obj/item/chair/wood, -/turf/open/floor/plating, -/area/maintenance/port) -"iiW" = ( -/turf/open/floor/wood, -/area/maintenance/bar) -"ikE" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ilJ" = ( -/obj/effect/turf_decal/tile/red, -/obj/machinery/light{ - light_color = "#c9d3e8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"imH" = ( -/obj/structure/falsewall, -/turf/open/floor/plating, -/area/maintenance/bar) -"ioB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/obj/effect/landmark/start/mime, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"ioG" = ( -/obj/machinery/vending/cola/red, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"ioM" = ( -/obj/structure/pool/ladder{ - dir = 2; - pixel_y = 16 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ioX" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"ipc" = ( -/obj/machinery/door/airlock/engineering{ - name = "Gravity Generator"; - req_access_txt = "11" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engine_smes) -"ipA" = ( -/turf/open/floor/plating, -/area/maintenance/department/medical/morgue) -"iqw" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red, -/turf/open/floor/plasteel, -/area/security/brig) -"isy" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/toilet) -"itG" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin, -/obj/item/pen, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"itT" = ( -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"ium" = ( -/mob/living/simple_animal/bot/cleanbot{ - name = "C.L.E.A.N." - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) -"ivF" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light{ - dir = 8; - light_color = "#e8eaff" - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"iyC" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/item/twohanded/required/kirbyplants{ - icon_state = "plant-06" - }, -/turf/open/floor/plasteel/white/corner{ - dir = 1 - }, -/area/hallway/secondary/entry) -"izv" = ( -/obj/machinery/vending/clothing, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood, -/area/maintenance/bar) -"iAR" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"iBB" = ( -/obj/structure/table/glass, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"iCW" = ( -/obj/structure/bed, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"iEx" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 4 - }, -/obj/item/instrument/trombone, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"iEI" = ( -/obj/machinery/vending/autodrobe/all_access, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"iEJ" = ( -/obj/machinery/door/airlock/external{ - name = "Escape Pod One" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"iES" = ( -/obj/structure/fireplace, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) -"iFL" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) -"iMG" = ( -/obj/item/twohanded/required/kirbyplants{ - icon_state = "plant-14" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"iNn" = ( -/obj/machinery/camera{ - c_tag = "Kitchen Cold Room" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/reagent_dispensers/cooking_oil, -/turf/open/floor/plasteel/showroomfloor, -/area/crew_quarters/kitchen) -"iOt" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/poster/contraband/free_drone{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) -"iOV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/light_construct{ - dir = 4 - }, +/obj/machinery/meter, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"iRJ" = ( +"dev" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -54856,159 +53248,67 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"iVU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/spawner/structure/window, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/crew_quarters/cryopod) -"iWa" = ( -/obj/structure/closet/crate, -/obj/item/book/manual/wiki/telescience, -/obj/item/book/manual/wiki/engineering_guide, -/obj/item/book/manual/wiki/engineering_construction, -/obj/item/book/manual/wiki/atmospherics, -/obj/item/book/manual/wiki/detective, -/obj/item/book/manual/wiki/tcomms, -/obj/item/book/manual/wiki/engineering_singulo_tesla, -/obj/item/book/manual/wiki/experimentor, -/obj/item/book/manual/wiki/research_and_development, -/obj/item/book/manual/wiki/robotics_cyborgs, -/obj/item/book/manual/wiki/security_space_law, -/obj/item/book/manual/wiki/medicine, -/obj/item/book/manual/wiki/medical_cloning, -/obj/item/book/manual/wiki/infections, -/obj/item/book/manual/ripley_build_and_repair, -/obj/item/book/manual/hydroponics_pod_people, -/obj/item/book/manual/wiki/toxins, -/obj/item/book/manual/wiki/grenades, -/obj/item/book{ - desc = "An undeniably handy book."; - icon_state = "bookknock"; - name = "A Simpleton's Guide to Safe-cracking with Stethoscopes" - }, -/turf/open/floor/wood, -/area/library) -"iWk" = ( -/obj/structure/bookcase{ - name = "Forbidden Knowledge" - }, -/turf/open/floor/carpet, -/area/library) -"iYz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/theatre) -"jaa" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/hydroponics) -"jbf" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, +"dfh" = ( /obj/machinery/power/apc{ - areastring = "/area/hallway/secondary/service"; - dir = 1; - name = "Service Hall APC"; - pixel_y = 25 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/service) -"jdT" = ( -/turf/open/floor/carpet, -/area/crew_quarters/dorms) -"jeR" = ( -/obj/structure/chair/sofa/left, -/turf/open/floor/plasteel, -/area/security/prison) -"jeT" = ( -/obj/machinery/vending/clothing, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"jgm" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 + areastring = "/area/science/circuit"; + name = "Circuitry Lab APC"; + pixel_x = 30 }, /obj/effect/turf_decal/stripes/line{ - dir = 6 + dir = 4 }, -/obj/machinery/camera{ - c_tag = "Circuitry Lab"; - dir = 8; - network = list("ss13","rd") +/obj/structure/cable{ + icon_state = "0-8" }, /turf/open/floor/plasteel, /area/science/circuit) -"jgv" = ( -/obj/structure/chair/comfy/brown{ - color = "#596479"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"jhh" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"jhF" = ( -/obj/effect/turf_decal/stripes/line{ +"dfL" = ( +/obj/structure/reagent_dispensers/keg/gargle, +/turf/open/floor/wood, +/area/maintenance/bar) +"dgz" = ( +/turf/closed/wall, +/area/crew_quarters/cryopod) +"dgO" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/light{ - dir = 4; - light_color = "#c1caff" - }, -/turf/open/floor/plasteel, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, /area/engine/gravity_generator) -"jiR" = ( -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ +"diq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"dly" = ( +/obj/machinery/door/window/southright{ + name = "Target Storage" + }, +/obj/item/target/alien, +/obj/item/target/alien, +/obj/item/target/syndicate, +/turf/open/floor/plating, +/area/security/prison) +"dml" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"dqb" = ( +/obj/structure/bed, +/obj/item/bedsheet/random, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/structure/window, -/obj/structure/window{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"jkd" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"jlm" = ( -/obj/machinery/rnd/production/techfab/department/cargo, -/turf/open/floor/plasteel, -/area/quartermaster/office) -"jly" = ( +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"dqu" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) +"dsC" = ( /obj/structure/chair/stool{ pixel_y = 8 }, @@ -55019,68 +53319,273 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) -"jmC" = ( -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) -"jnm" = ( -/obj/machinery/power/smes{ - charge = 5e+006 +"dtx" = ( +/obj/structure/cable{ + icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/structure/mirror{ + pixel_x = 25 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/toilet) +"dvc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"dvO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/science/circuit) +"dyS" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"dzi" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"dBm" = ( +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"dCV" = ( +/obj/structure/table, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/recharger, +/obj/item/gun/energy/laser/practice, +/obj/item/gun/energy/laser/practice, +/turf/open/floor/plasteel, +/area/security/prison) +"dKP" = ( +/turf/closed/wall, +/area/maintenance/bar) +"dKV" = ( +/obj/structure/chair/stool/bar, +/turf/open/floor/wood, +/area/maintenance/bar) +"dLG" = ( +/obj/machinery/door/airlock/security{ + name = "Firing Range"; + req_access_txt = "2" }, /obj/structure/cable{ - icon_state = "0-8" + icon_state = "1-2" }, /turf/open/floor/plasteel, -/area/engine/gravity_generator) -"jnX" = ( -/obj/machinery/door/airlock/external{ - name = "Common Mining Shuttle Bay" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) -"job" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/door/window/westright{ - name = "Red Corner" - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"jou" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"jqv" = ( -/obj/structure/chair/wood/normal{ - dir = 1 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/maintenance/bar) -"jrE" = ( +/area/security/prison) +"dMZ" = ( /obj/structure/sign/poster/official/random{ - pixel_x = 32 + pixel_y = 32 }, /turf/open/floor/plasteel/white, /area/science/circuit) -"jsy" = ( +"dPk" = ( +/obj/structure/closet{ + name = "Costume Closet" + }, +/obj/item/clothing/head/russobluecamohat, +/obj/item/clothing/head/russobluecamohat, +/obj/item/clothing/head/helmet/rus_ushanka, +/obj/item/clothing/head/helmet/rus_ushanka, +/obj/item/clothing/head/helmet/rus_ushanka, +/obj/item/clothing/head/helmet/rus_ushanka, +/obj/item/clothing/under/mw2_russian_para, +/obj/item/clothing/under/mw2_russian_para, +/obj/item/clothing/under/mw2_russian_para, +/obj/item/clothing/under/mw2_russian_para, +/obj/item/clothing/shoes/jackboots, +/obj/item/clothing/shoes/jackboots, +/obj/item/clothing/shoes/jackboots, +/obj/item/clothing/shoes/jackboots, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"dTI" = ( +/obj/structure/urinal{ + pixel_y = 32 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/toilet) +"dVU" = ( +/turf/open/floor/plating, +/area/space/nearstation) +"dXq" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"eaI" = ( +/obj/structure/table/reinforced, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/obj/item/stock_parts/cell/high, +/obj/item/stock_parts/cell/high, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"eaR" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/space, +/area/solar/starboard/fore) +"edA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-04" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"efO" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/space/nearstation) +"egt" = ( +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/machinery/requests_console{ + department = "Bar"; + departmentType = 2; + pixel_x = -30; + pixel_y = 45; + receive_ore_updates = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/bar) +"eih" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"elh" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"enB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/security/execution/transfer) +"epC" = ( +/obj/machinery/door/airlock{ + desc = "To keep the station within regulations, space IKEA requires one storage cupboard for their Nanotrasen partnership to continue."; + id_tag = "MaintDorm1"; + name = "Furniture Storage" + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/port) +"epD" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, +/obj/structure/chair/sofa/right{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"eqd" = ( +/obj/item/electropack/shockcollar, +/obj/item/assembly/signaler, +/turf/open/floor/plating, +/area/security/prison) +"eqA" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"esZ" = ( +/obj/machinery/door/airlock{ + desc = "Private study room where nerds are probably playing Dungeons and Dragons 13e, or a place for blood cult rituals."; + id_tag = "PrivateStudy"; + name = "Private Study" + }, +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/library) +"evR" = ( +/turf/open/floor/plating, +/area/maintenance/bar) +"ewu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"exP" = ( +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-14" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"eyM" = ( +/obj/machinery/mineral/ore_redemption{ + input_dir = 2; + output_dir = 1 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"eAJ" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"eBX" = ( +/obj/machinery/vending/cola/space_up, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"eCr" = ( /obj/structure/closet{ name = "Suit Closet" }, @@ -55104,64 +53609,1168 @@ /obj/item/clothing/under/lawyer/really_black, /obj/item/clothing/under/lawyer/red, /turf/open/floor/plasteel, -/area/crew_quarters/locker) -"jtk" = ( -/obj/structure/chair/comfy/black{ +/area/crew_quarters/fitness) +"eCR" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"eEe" = ( +/obj/machinery/door/airlock{ + name = "Theatre Backstage"; + req_access_txt = "46" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"eFW" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"eHI" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"eHU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating, +/area/security/prison) +"eJa" = ( +/obj/structure/table/wood/poker, +/obj/item/toy/cards/deck{ + pixel_y = 5 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"eQb" = ( +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"eRz" = ( +/obj/structure/lattice, +/obj/structure/grille, +/turf/open/space/basic, +/area/space/nearstation) +"eSe" = ( +/obj/structure/closet/secure_closet/personal/cabinet{ + desc = "Swipe your ID on the closet to claim it. First come first serve, this one is wooden and fancy. Store your stuff here."; + name = "Personal ID-Locked Closet"; + pixel_y = 15 + }, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"eVC" = ( +/obj/effect/spawner/structure/window, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/crew_quarters/cryopod) +"eVL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/light{ dir = 1 }, /turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"jtU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/security/execution/transfer) -"jvN" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 +/area/quartermaster/miningdock) +"fcn" = ( +/obj/structure/lattice, +/turf/closed/wall/r_wall, +/area/ai_monitored/nuke_storage) +"fcG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/science/mixing) +"fde" = ( +/obj/structure/cable{ + icon_state = "1-2" }, -/obj/effect/turf_decal/tile/blue, /turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"jwi" = ( +/area/security/brig) +"feE" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating{ + icon_state = "panelscorched" + }, +/area/maintenance/starboard/fore) +"feG" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, /turf/open/floor/wood, -/area/crew_quarters/heads/captain) -"jyD" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"jzi" = ( +/area/crew_quarters/bar) +"fgG" = ( +/obj/structure/table/wood, +/obj/machinery/requests_console{ + department = "Theatre"; + name = "theatre RC"; + pixel_x = -32 + }, +/obj/item/reagent_containers/food/snacks/baguette, +/obj/item/toy/dummy, +/obj/item/lipstick/random{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/lipstick/random{ + pixel_x = -2; + pixel_y = -2 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"fjS" = ( +/obj/structure/closet/radiation, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"flc" = ( +/obj/structure/table/reinforced, +/obj/item/storage/fancy/donut_box, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"flE" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"fne" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/obj/effect/landmark/start/mime, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"fnC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/service) +"fpl" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"fpI" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-06" + }, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/secondary/entry) +"fsj" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/power/apc{ + areastring = "/area/security/main"; + dir = 4; + name = "Firing Range APC"; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"ftE" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"fup" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"fvY" = ( +/obj/machinery/computer/cryopod{ + pixel_y = 26 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"fxa" = ( +/obj/structure/chair/wood/normal, +/turf/open/floor/wood{ + icon_state = "wood-broken4" + }, +/area/maintenance/bar) +"fxe" = ( +/obj/structure/chair/sofa, +/obj/structure/window{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"fxV" = ( +/turf/closed/wall/r_wall, +/area/hallway/primary/central) +"fzd" = ( +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/plasteel, +/area/hydroponics) +"fAj" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/structure/sign/poster/official/love_ian{ + pixel_x = 32; + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"fBy" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"fCx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "holoprivacy"; + name = "Holodeck Privacy"; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"fFA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"fGf" = ( +/obj/machinery/smartfridge/disks{ + pixel_y = 2 + }, +/obj/structure/table, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"fHG" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"fIs" = ( /obj/structure/grille, /obj/structure/lattice, /turf/open/floor/plating, /area/space/nearstation) -"jzD" = ( -/obj/structure/piano{ - icon_state = "piano" +"fKl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/science/circuit) +"fMZ" = ( +/obj/item/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"fOA" = ( +/obj/machinery/door/airlock{ + name = "Theatre Backstage"; + req_access_txt = "46" }, /turf/open/floor/wood, -/area/crew_quarters/bar) -"jAD" = ( -/obj/structure/grille, -/turf/open/floor/plating/airless, +/area/crew_quarters/theatre) +"fOI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-18" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"fTg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/firealarm{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"fTC" = ( +/obj/structure/filingcabinet, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"fZm" = ( +/obj/structure/chair/sofa/left, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"gbd" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"gbh" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/public/glass{ + name = "Holodeck Door" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/fitness) +"gbq" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plating, +/area/construction) +"gbu" = ( +/obj/structure/bed, +/obj/effect/spawner/lootdrop/bedsheet, +/turf/open/floor/plating, +/area/security/prison) +"gbT" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/sheet/glass/fifty, +/turf/open/floor/plating, +/area/maintenance/department/medical/morgue) +"gcF" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/light_construct{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"gfr" = ( +/obj/structure/bed, +/turf/open/floor/plating, +/area/maintenance/port) +"gfC" = ( +/obj/effect/turf_decal/tile/red, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"gfD" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"ghq" = ( +/obj/structure/lattice/catwalk, +/obj/item/stack/marker_beacon{ + anchored = 1; + icon_state = "markerburgundy-on"; + light_color = "#FA644B"; + light_power = 3; + light_range = 3; + name = "Docking Beacon"; + picked_color = "Burgundy" + }, +/turf/open/floor/plating, /area/space/nearstation) -"jBZ" = ( +"ghD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"gjl" = ( +/turf/closed/wall, +/area/quartermaster/warehouse) +"gnf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/departments/custodian{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"gpD" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"grA" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/public/glass{ + name = "Holodeck Door" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/fitness) +"gwd" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/science/circuit) +"gxc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"gzf" = ( +/obj/structure/window/reinforced/tinted{ + dir = 8 + }, +/obj/structure/window/reinforced/tinted{ + dir = 4 + }, +/obj/structure/curtain, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"gBo" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/wood, +/area/maintenance/bar) +"gCC" = ( +/obj/structure/sign/poster/contraband/tools, +/turf/closed/wall, +/area/storage/primary) +"gDl" = ( +/obj/effect/landmark/carpspawn, +/turf/open/space/basic, +/area/space) +"gIU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating, +/area/space/nearstation) +"gJi" = ( +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"gLH" = ( +/obj/machinery/door/airlock/external{ + name = "External Access"; + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"gMl" = ( +/obj/structure/chair/wood/normal{ + dir = 4 + }, +/turf/open/floor/wood, +/area/maintenance/bar) +"gNC" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"gOZ" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"gQX" = ( +/obj/machinery/button/door{ + desc = "Alright, GAMER! Want to take your PWRGAME addiction to the MAX? Just smash this button with your chubby chetto encrusted hands an- oh, you broke the switch. Good job, idiot."; + id = "RIPFUN"; + name = "Powerful Gamer Toggle"; + normaldoorcontrol = 1; + pixel_x = -24; + pixel_y = 7; + specialfunctions = 4 + }, +/obj/structure/table_frame/wood, +/turf/open/floor/plating, +/area/maintenance/port) +"gRZ" = ( +/obj/structure/bookcase{ + name = "Forbidden Knowledge" + }, +/turf/open/floor/carpet, +/area/library) +"gTx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"gUu" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"gWd" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/construction) +"gXs" = ( +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"gZG" = ( +/obj/structure/closet/crate/freezer/surplus_limbs, +/obj/item/reagent_containers/glass/beaker/synthflesh, +/turf/open/floor/plasteel/white/side{ + dir = 8 + }, +/area/medical/sleeper) +"haL" = ( +/obj/structure/lattice, +/turf/open/space/basic, +/area/space) +"haM" = ( +/obj/item/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, /obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ - icon_state = "1-8" +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"hcb" = ( +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"hcA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"hew" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 }, /obj/structure/cable{ - icon_state = "1-4" + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"hgO" = ( +/obj/structure/table, +/obj/item/storage/pill_bottle/dice{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/reagent_containers/food/snacks/cherrycupcake, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"hiV" = ( +/obj/effect/landmark/blobstart, +/turf/open/floor/plating, +/area/maintenance/department/electrical) +"hlV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/dorms) +"hnl" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/port) +"hnU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating, +/area/security/prison) +"hrF" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/space, +/area/solar/port/aft) +"hsb" = ( +/obj/structure/table/wood, +/obj/item/book/codex_gigas, +/obj/item/clothing/under/suit_jacket/red, +/obj/structure/destructible/cult/tome, +/turf/open/floor/carpet, +/area/library) +"hse" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/space/nearstation) +"hBA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/table, +/obj/item/storage/firstaid/regular{ + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"hGH" = ( +/obj/machinery/door/airlock{ + desc = "Private study room where nerds are probably playing Dungeons and Dragons 13e, or a place for blood cult rituals."; + id_tag = "PrivateStudy"; + name = "Private Study" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/wood, +/area/library) +"hHQ" = ( +/obj/structure/cable{ + icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"hIL" = ( +/obj/structure/sign/poster/contraband/space_up{ + pixel_x = -32; + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"hIM" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"hOv" = ( +/obj/structure/table/wood/fancy, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4; + pixel_y = 5 + }, +/obj/item/reagent_containers/food/snacks/burger/plain, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"hPs" = ( +/obj/structure/fireplace, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 23 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"hPP" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/quartermaster/warehouse) +"hRa" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/cell_charger{ + pixel_y = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"hRI" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"hSZ" = ( +/obj/structure/chair/comfy/brown{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"hWd" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"idK" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"iiW" = ( +/turf/open/floor/wood, +/area/maintenance/bar) +"ijG" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/structure/window, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"ikk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"ikm" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"imH" = ( +/obj/structure/falsewall, +/turf/open/floor/plating, +/area/maintenance/bar) +"inR" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet{ + icon_state = "carpetsymbol" + }, +/area/crew_quarters/theatre) +"iou" = ( +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"ipA" = ( +/turf/open/floor/plating, +/area/maintenance/department/medical/morgue) +"itG" = ( +/obj/structure/table/reinforced, +/obj/item/paper_bin, +/obj/item/pen, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"itK" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/obj/structure/light_construct{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"itQ" = ( +/obj/machinery/door/window/southleft{ + name = "Target Storage" + }, +/obj/item/target/clown, +/obj/item/target/clown, +/obj/item/target, +/obj/item/target, +/turf/open/floor/plating, +/area/security/prison) +"ium" = ( +/mob/living/simple_animal/bot/cleanbot{ + name = "C.L.E.A.N." + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"iuR" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"iwB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/port) +"izv" = ( +/obj/machinery/vending/clothing, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/wood, +/area/maintenance/bar) +"iDo" = ( +/obj/structure/grille, +/turf/open/space/basic, +/area/space/nearstation) +"iDS" = ( +/obj/docking_port/stationary{ + dir = 8; + dwidth = 3; + height = 5; + id = "commonmining_home"; + name = "SS13: Common Mining Dock"; + roundstart_template = /datum/map_template/shuttle/mining_common/meta; + width = 7 + }, +/turf/open/space/basic, +/area/space) +"iEJ" = ( +/obj/machinery/door/airlock/external{ + name = "Escape Pod One" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"iHk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"iNn" = ( +/obj/machinery/camera{ + c_tag = "Kitchen Cold Room" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/reagent_dispensers/cooking_oil, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"iTq" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/carpet{ + icon_state = "carpetsymbol" + }, +/area/crew_quarters/theatre) +"iTU" = ( +/obj/structure/piano{ + icon_state = "piano" + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"iVU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/spawner/structure/window, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/crew_quarters/cryopod) +"iWx" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/coin/silver, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"jaF" = ( +/obj/machinery/light/small, +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"jaH" = ( +/obj/structure/door_assembly/door_assembly_mai, +/obj/item/electronics/airlock, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"jbf" = ( +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/hallway/secondary/service"; + dir = 1; + name = "Service Hall APC"; + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/service) +"jex" = ( +/obj/machinery/smartfridge/organ/preloaded, +/turf/closed/wall, +/area/medical/sleeper) +"jez" = ( +/obj/effect/landmark/blobstart, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"jgm" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/camera{ + c_tag = "Circuitry Lab"; + dir = 8; + network = list("ss13","rd") + }, +/turf/open/floor/plasteel, +/area/science/circuit) +"jgA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"jjC" = ( +/obj/structure/table/wood, +/obj/item/toy/cards/deck, +/turf/open/floor/plasteel, +/area/security/prison) +"jkx" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/machinery/computer/slot_machine, +/obj/item/coin/iron, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"jkz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"jlm" = ( +/obj/machinery/rnd/production/techfab/department/cargo, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"jls" = ( +/obj/machinery/door/airlock/security{ + name = "Labor Shuttle"; + req_access_txt = "2" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"jmV" = ( +/obj/structure/table/wood/fancy, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/item/reagent_containers/food/drinks/britcup{ + desc = "Kingston's personal cup."; + pixel_x = 5; + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"jqv" = ( +/obj/structure/chair/wood/normal{ + dir = 1 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken7" + }, +/area/maintenance/bar) +"jrE" = ( +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"juG" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "kitchen"; + name = "kitchen shutters" + }, +/obj/item/reagent_containers/food/snacks/bluecherrycupcake{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"jvd" = ( +/obj/structure/closet/athletic_mixed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"jxF" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/port) +"jAD" = ( +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"jAN" = ( +/obj/machinery/vr_sleeper{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white/side{ + dir = 8 + }, +/area/crew_quarters/fitness) +"jBi" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/public/glass{ + name = "Holodeck Door" + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/fitness) +"jBA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) "jCq" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -55174,22 +54783,46 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"jDY" = ( -/obj/structure/chair{ +"jEc" = ( +/obj/machinery/vr_sleeper{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ dir = 4 }, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"jFy" = ( -/obj/machinery/door/airlock{ - desc = "Private study room where nerds are probably playing Dungeons and Dragons 13e, or a place for blood cult rituals."; - id_tag = "PrivateStudy"; - name = "Private Study" +/turf/open/floor/plasteel/white/corner{ + dir = 1 }, -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/library) +/area/crew_quarters/fitness) +"jFH" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"jGW" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/disposal/bin, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"jHh" = ( +/obj/effect/landmark/start/assistant, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) "jHt" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment{ @@ -55203,10 +54836,23 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"jHM" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/security/prison) +"jIs" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/space, +/area/solar/starboard/fore) +"jJg" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4; + pixel_y = 5 + }, +/obj/structure/chair/sofa{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) "jJF" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable{ @@ -55214,56 +54860,42 @@ }, /turf/open/floor/wood, /area/maintenance/port/aft) -"jLM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, +"jKP" = ( +/obj/structure/disposalpipe/segment, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "1-2" }, /turf/open/floor/plating, -/area/maintenance/fore) -"jMK" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"jNo" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"jQX" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"jRy" = ( -/obj/machinery/door/airlock{ - name = "Instrument Storage" - }, -/turf/open/floor/plasteel/dark, -/area/maintenance/starboard/fore) -"jSa" = ( -/obj/item/electropack/shockcollar, -/obj/item/assembly/signaler, -/turf/open/floor/plating, -/area/security/prison) -"jSD" = ( -/obj/machinery/door/airlock/security{ - name = "Firing Range"; - req_access_txt = "2" +/area/maintenance/fore/secondary) +"jLn" = ( +/obj/machinery/door/airlock/engineering{ + name = "Gravity Generator"; + req_access_txt = "11" }, /obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plasteel, +/area/engine/engine_smes) +"jLT" = ( +/obj/machinery/button/door{ + id = "Room Two"; + name = "Door Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 7; + pixel_y = -24; + specialfunctions = 4 + }, +/obj/structure/chair/comfy/brown{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"jRw" = ( +/obj/machinery/computer/arcade/minesweeper{ + dir = 4 + }, +/turf/open/floor/plasteel, /area/security/prison) "jSO" = ( /obj/machinery/light{ @@ -55283,80 +54915,70 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"jXg" = ( -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/nuke_storage"; - dir = 1; - name = "Vault APC"; - pixel_y = 25 - }, +"jZT" = ( /obj/structure/cable{ - icon_state = "0-2" + icon_state = "4-8" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 1 +/obj/machinery/door/poddoor/preopen{ + id = "maint2" }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"kaq" = ( +/turf/closed/wall/mineral/titanium, +/area/space/nearstation) +"kdP" = ( /obj/structure/cable{ icon_state = "2-8" }, -/turf/open/floor/circuit, -/area/ai_monitored/nuke_storage) -"jYI" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"jYZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/machinery/camera{ - acid_level = 8; - c_tag = "Pool East"; - dir = 8 - }, -/obj/item/radio/intercom{ - pixel_x = 29 - }, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"kay" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/snacks/bluecherrycupcake{ - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"kcj" = ( +/area/security/prison) +"ker" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ - dir = 1 + dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 +/obj/structure/cable{ + icon_state = "1-2" }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"kdm" = ( -/obj/effect/turf_decal/stripes/line{ +"keM" = ( +/obj/machinery/light/small{ dir = 1 }, -/turf/open/floor/plating, -/area/security/prison) -"kdv" = ( -/obj/machinery/pool/filter{ - pixel_y = 16 +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/washing_machine, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"kfv" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/storage/tech) +"kfX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/engine/engine_smes) +"kgr" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"kel" = ( -/obj/effect/landmark/blobstart, /turf/open/floor/plating, -/area/maintenance/starboard/fore) -"kfE" = ( -/obj/machinery/computer/libraryconsole/bookmanagement, -/obj/structure/table, -/turf/open/floor/plasteel, /area/security/prison) "khb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55368,33 +54990,46 @@ /obj/item/reagent_containers/glass/bucket, /turf/open/floor/plasteel, /area/hallway/secondary/service) -"khA" = ( -/obj/structure/table, -/obj/item/instrument/guitar{ - pixel_x = -7 - }, -/obj/item/instrument/eguitar{ - pixel_x = 5 - }, -/obj/item/instrument/violin, -/obj/item/instrument/trombone, -/obj/item/instrument/saxophone, -/obj/item/instrument/piano_synth, -/obj/item/instrument/recorder, -/obj/item/instrument/accordion, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "khB" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Pool Maintenance"; - req_access_txt = "12" +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 }, /turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"klu" = ( +/area/maintenance/fore/secondary) +"khV" = ( +/obj/machinery/vending/cola/red, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"kls" = ( /obj/structure/lattice, -/turf/open/space/basic, -/area/space) +/obj/structure/lattice, +/turf/open/space, +/area/space/nearstation) +"kmw" = ( +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"kmS" = ( +/obj/item/flashlight/lamp/green{ + pixel_x = -3; + pixel_y = 22 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4; + pixel_y = 5 + }, +/obj/structure/dresser{ + desc = "There's plenty of clothes here to change into! It has a surprising amount of variety, too."; + name = "Dresser"; + pixel_y = 7 + }, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "knx" = ( /obj/machinery/door/airlock/public/glass{ name = "Central Access" @@ -55423,78 +55058,57 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"krR" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ksn" = ( -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, +"kqI" = ( /obj/structure/window, -/obj/effect/turf_decal/tile/blue{ - dir = 1 +/turf/open/floor/wood, +/area/crew_quarters/bar) +"ktP" = ( +/obj/machinery/power/smes{ + charge = 5e+006 }, -/obj/effect/turf_decal/tile/blue{ +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"ktS" = ( +/turf/open/space/basic, +/area/space/nearstation) +"kvl" = ( +/obj/structure/grille, +/turf/closed/wall/r_wall, +/area/space/nearstation) +"kvL" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"kuY" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "maint2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"kvb" = ( -/obj/structure/shuttle/engine/heater{ - dir = 1 - }, -/turf/closed/wall/mineral/titanium, -/area/space/nearstation) -"kvZ" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/nuke_storage) -"kwy" = ( -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/obj/machinery/requests_console{ - department = "Bar"; - departmentType = 2; - pixel_x = -30; - pixel_y = 45; - receive_ore_updates = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"kxc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"kyi" = ( -/obj/structure/bed, -/obj/machinery/button/door{ - id = "Dorm5"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/effect/spawner/lootdrop/bedsheet, /turf/open/floor/wood, -/area/crew_quarters/dorms) +/area/bridge/meeting_room) +"kxf" = ( +/obj/machinery/vr_sleeper{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/fitness) "kyF" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/wood, @@ -55503,91 +55117,83 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, /area/science/mixing) -"kCk" = ( -/obj/structure/mirror{ - pixel_y = 32 +"kAH" = ( +/obj/machinery/camera{ + c_tag = "Bar West"; + dir = 4 }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/toilet) -"kCW" = ( -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"kDD" = ( -/obj/structure/lattice, -/turf/closed/wall/r_wall, -/area/ai_monitored/nuke_storage) -"kHJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"kHK" = ( -/obj/machinery/button/door{ - desc = "Bolts the doors to the Private Study."; - id = "PrivateStudy"; - name = "Private Study Lock"; - pixel_x = 25; - pixel_y = 25; - req_access_txt = ""; - req_one_access_txt = "28;63" +/obj/machinery/computer/arcade/orion_trail, +/obj/structure/sign/poster/official/foam_force_ad{ + pixel_x = -32 }, /turf/open/floor/wood, -/area/library) -"kJr" = ( -/obj/effect/turf_decal/stripes/line{ +/area/crew_quarters/bar) +"kAJ" = ( +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"kAO" = ( +/obj/structure/chair/sofa{ + dir = 1 + }, +/obj/structure/window, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"kCo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ dir = 8 }, -/turf/open/floor/plating, -/area/security/prison) -"kJY" = ( -/obj/item/flashlight/lamp/green{ - pixel_x = -3; - pixel_y = 22 - }, -/obj/structure/dresser{ - desc = "There's plenty of clothes here to change into! It has a surprising amount of variety, too."; - name = "Dresser"; - pixel_y = 7 - }, -/turf/open/floor/plating, -/area/maintenance/port) -"kKw" = ( -/obj/structure/lattice/catwalk, +/turf/open/floor/plasteel, +/area/crew_quarters/theatre) +"kEY" = ( +/obj/effect/landmark/stationroom/box/engine, +/turf/open/space/basic, +/area/space) +"kGJ" = ( /obj/structure/cable{ icon_state = "4-8" }, -/turf/open/space, -/area/solar/port/aft) -"kLR" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - desc = "Privacy shutters for the Private Study. Stops people spying in on your game."; - id = "PrivateStudy1"; - name = "Private Study Privacy Shutters" +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, -/obj/effect/spawner/structure/window, -/turf/open/floor/wood, -/area/library) -"kOf" = ( -/obj/structure/chair{ - dir = 8 +/obj/structure/cable{ + icon_state = "1-8" }, -/obj/machinery/light/small{ - dir = 4; - light_color = "#d8b1b1" +/obj/structure/cable{ + icon_state = "1-4" }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"kMt" = ( +/obj/structure/lattice, +/turf/closed/wall, +/area/security/prison) +"kNv" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/free_drone{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) "kPd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/structure/cable{ @@ -55595,6 +55201,13 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"kPj" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/junction/flip, +/turf/open/floor/plasteel, +/area/hallway/primary/central) "kQk" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance{ @@ -55604,285 +55217,32 @@ /obj/item/storage/toolbox/electrical, /turf/open/floor/plating, /area/maintenance/department/medical/morgue) -"kQZ" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, +"kQO" = ( +/obj/structure/reagent_dispensers/keg/semen, /turf/open/floor/plating, -/area/crew_quarters/fitness) -"kRk" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/machinery/light{ - dir = 4; - light_color = "#e8eaff" - }, -/obj/structure/chair/sofa/right{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"kRw" = ( -/obj/effect/landmark/start/roboticist, -/turf/open/floor/plasteel/white, -/area/science/robotics/lab) +/area/maintenance/bar) "kSb" = ( /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/quartermaster/miningdock) -"kSh" = ( -/obj/item/radio/intercom{ - name = "Station Intercom (General)"; - pixel_y = -29 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"kSB" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"kTn" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"kTz" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/dark, -/area/bridge/meeting_room) -"kWI" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/structure/window{ +"kWp" = ( +/obj/structure/shuttle/engine/heater{ dir = 1 }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/locker) -"kZr" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"lhg" = ( -/obj/machinery/vending/clothing, -/obj/structure/disposalpipe/segment{ - dir = 4 +/turf/closed/wall/mineral/titanium, +/area/space/nearstation) +"kYk" = ( +/obj/machinery/door/firedoor, +/obj/structure/sign/departments/evac{ + pixel_y = 32 }, /turf/open/floor/plasteel, -/area/crew_quarters/locker) -"lmi" = ( -/obj/structure/door_assembly/door_assembly_mai, -/obj/item/electronics/airlock, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"lnu" = ( -/obj/structure/chair/wood/normal{ - dir = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken6" - }, -/area/maintenance/bar) -"lpO" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"lsP" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"lui" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"lwj" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/drinks/soda_cans/starkist{ - pixel_x = 5; - pixel_y = 7 - }, -/obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb{ - pixel_x = -3; - pixel_y = 2 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"lwp" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"lwY" = ( -/obj/machinery/door/window/westleft{ - base_state = "right"; - icon_state = "right"; - name = "Unisex Showers" - }, -/turf/open/floor/plasteel/freezer, +/area/hallway/primary/starboard) +"laq" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/plasteel, /area/security/prison) -"lxx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/bar) -"lAe" = ( -/obj/structure/pool/ladder{ - pixel_y = 16 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"lAB" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/science/circuit) -"lBE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"lCi" = ( -/obj/docking_port/stationary/public_mining_dock{ - dir = 8 - }, -/turf/open/floor/plating, -/area/construction/mining/aux_base) -"lCB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"lCL" = ( -/turf/open/space/basic, -/area/space/nearstation) -"lDE" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"lFl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"lLt" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"lLI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"lMg" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/science/circuit) -"lMx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/crew_quarters/dorms) -"lMY" = ( -/obj/structure/flora/ausbushes/fullgrass, -/obj/structure/flora/ausbushes/sparsegrass, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/ywflowers, -/obj/structure/flora/ausbushes/brflowers, -/obj/effect/spawner/structure/window, -/turf/open/floor/grass, -/area/crew_quarters/bar) -"lNB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"lQG" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/science/circuit) -"lTq" = ( -/obj/structure/table, -/obj/item/folder/blue, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"lYU" = ( -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/structure/sign/departments/security{ - pixel_x = -32; - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"lYZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/disposalpipe/junction, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"maC" = ( -/obj/structure/table, -/obj/item/storage/pill_bottle/dice{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/reagent_containers/food/snacks/cherrycupcake, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"mbD" = ( +"lip" = ( /obj/structure/closet{ name = "Suit Closet" }, @@ -55906,134 +55266,142 @@ /obj/item/clothing/under/lawyer/really_black, /obj/item/clothing/under/lawyer/red, /turf/open/floor/plasteel, +/area/crew_quarters/locker) +"lnu" = ( +/obj/structure/chair/wood/normal{ + dir = 4 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken6" + }, +/area/maintenance/bar) +"lsk" = ( +/obj/machinery/vending/autodrobe/all_access, +/turf/open/floor/plasteel, /area/crew_quarters/fitness) -"mfb" = ( -/obj/structure/toilet{ +"ltK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"lva" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"lyR" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/security/prison) +"lAB" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/wall, +/area/science/circuit) +"lCi" = ( +/obj/docking_port/stationary/public_mining_dock{ + dir = 8 + }, +/turf/open/floor/plating, +/area/construction/mining/aux_base) +"lGV" = ( +/obj/machinery/button/door{ + id = "maintdiy"; + name = "Shutters Control Button"; + pixel_x = -6; + pixel_y = 24 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"lMg" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/science/circuit) +"lOe" = ( +/obj/machinery/shower{ dir = 8 }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) -"miy" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +"lPr" = ( +/obj/item/twohanded/required/kirbyplants{ + icon_state = "applebush" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"lQG" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating, +/area/science/circuit) +"lSa" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"lUS" = ( +/obj/structure/table/wood/fancy/black, +/obj/machinery/light/small, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"lXE" = ( +/obj/structure/sign/warning/fire{ + desc = "A sign that states the labeled room's number."; + dir = 5; + icon_state = "roomnum"; + name = "Room Number 7"; + pixel_y = 24 + }, +/obj/structure/chair/sofa/right, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"lZl" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/coin/gold, +/obj/item/coin/gold, +/obj/item/coin/gold, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"mbU" = ( +/obj/machinery/vr_sleeper{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/crew_quarters/fitness) +"mcp" = ( +/obj/structure/target_stake, +/obj/item/target/syndicate, +/turf/open/floor/plating, +/area/security/prison) "mjr" = ( /obj/structure/reagent_dispensers/keg/milk, /turf/open/floor/wood, /area/crew_quarters/bar) -"mlr" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/light_construct{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"mnI" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"moq" = ( -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"mpI" = ( -/obj/structure/table/wood, -/turf/open/floor/wood{ - icon_state = "wood-broken5" - }, -/area/maintenance/bar) -"mqa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"mqZ" = ( -/obj/structure/reagent_dispensers/keg/aphro/strong, -/obj/item/reagent_containers/glass/beaker, -/turf/open/floor/plating, -/area/maintenance/bar) -"mrR" = ( -/obj/effect/spawner/lootdrop/keg, -/turf/open/floor/wood, -/area/maintenance/bar) -"mte" = ( -/obj/structure/extinguisher_cabinet, -/turf/closed/wall/r_wall, -/area/hallway/primary/central) -"mwO" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"myp" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"myt" = ( -/obj/structure/closet/secure_closet/personal/cabinet{ - desc = "Swipe your ID on the closet to claim it. First come first serve, this one is wooden and fancy. Store your stuff here."; - name = "Personal ID-Locked Closet"; - pixel_y = 15 - }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) -"mCq" = ( -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"mEN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/toilet) -"mHC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"mIS" = ( -/obj/structure/table, -/obj/item/clothing/gloves/boxing/yellow, -/obj/item/clothing/gloves/boxing/green, -/obj/item/clothing/gloves/boxing/blue, -/obj/item/clothing/gloves/boxing/blue, -/obj/item/clothing/gloves/boxing, -/obj/item/clothing/gloves/boxing, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"mMf" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"mNi" = ( -/obj/machinery/light_switch{ - pixel_x = -20 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"mNS" = ( -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"mPE" = ( -/obj/machinery/chem_dispenser/drinks, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/maintenance/bar) -"mQR" = ( +"mkv" = ( /obj/machinery/camera{ c_tag = "Gravity Generator Room"; dir = 8 @@ -56044,10 +55412,211 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"mRa" = ( -/obj/effect/turf_decal/tile/blue, +"mkO" = ( +/obj/machinery/door/airlock{ + name = "Shower Room" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/toilet) +"mnC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/security/prison) +"moD" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/snacks/bluecherrycupcake{ + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"mps" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +/area/crew_quarters/dorms) +"mpI" = ( +/obj/structure/table/wood, +/turf/open/floor/wood{ + icon_state = "wood-broken5" + }, +/area/maintenance/bar) +"mqZ" = ( +/obj/structure/reagent_dispensers/keg/aphro/strong, +/obj/item/reagent_containers/glass/beaker, +/turf/open/floor/plating, +/area/maintenance/bar) +"mrR" = ( +/obj/effect/spawner/lootdrop/keg, +/turf/open/floor/wood, +/area/maintenance/bar) +"mse" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/structure/chair/sofa/left, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"mvt" = ( +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"myh" = ( +/obj/structure/piano, +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"mzB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/door/window, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"mAH" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"mGw" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/prison) +"mHU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/light_construct{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"mIZ" = ( +/obj/structure/falsewall, +/turf/open/floor/plating, +/area/security/prison) +"mJo" = ( +/obj/structure/door_assembly/door_assembly_mai, +/obj/item/electronics/airlock, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"mJG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"mNi" = ( +/obj/machinery/light_switch{ + pixel_x = -20 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"mNW" = ( +/obj/structure/sign/poster/official/fruit_bowl{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/primary/starboard) +"mOB" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/airlock/engineering/glass{ + name = "Gravity Generator"; + req_access_txt = "11" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/gravity_generator) +"mOO" = ( +/obj/structure/chair/sofa/left{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"mPk" = ( +/obj/structure/bed, +/obj/machinery/button/door{ + id = "Dorm5"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + pixel_y = -25; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/effect/spawner/lootdrop/bedsheet, +/turf/open/floor/wood, +/area/crew_quarters/dorms) +"mPr" = ( +/obj/structure/rack, +/obj/item/tank/internals/emergency_oxygen, +/obj/item/tank/internals/emergency_oxygen, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/effect/decal/cleanable/cobweb, +/obj/item/clothing/under/color/grey, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"mPt" = ( +/obj/structure/table, +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/item/clothing/glasses/sunglasses{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/clothing/glasses/sunglasses{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"mPE" = ( +/obj/machinery/chem_dispenser/drinks, +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/maintenance/bar) +"mQS" = ( +/obj/machinery/light{ + dir = 8; + light_color = "#e8eaff" + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) "mRe" = ( /obj/machinery/light{ dir = 8 @@ -56055,152 +55624,109 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) -"mTp" = ( -/obj/structure/chair/sofa/left, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"mVa" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"mXB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"nbZ" = ( -/obj/structure/chair/comfy/black{ +"mRQ" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/blue{ +/turf/open/floor/wood, +/area/crew_quarters/heads/captain) +"mTG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ dir = 1 }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"ncj" = ( /obj/effect/turf_decal/tile/blue, -/obj/structure/sign/poster/contraband/fun_police{ - pixel_x = 32 +/obj/effect/turf_decal/tile/yellow{ + dir = 4 }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"ndC" = ( -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ +/obj/effect/turf_decal/tile/yellow{ dir = 8 }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"nea" = ( -/obj/machinery/recharge_station, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"neb" = ( -/obj/item/radio/intercom{ - pixel_y = 25 +/area/crew_quarters/locker) +"nbT" = ( +/obj/structure/cable{ + icon_state = "0-8" }, -/turf/open/floor/plasteel, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "bridge blast door" + }, +/turf/open/floor/plating, /area/hallway/primary/central) -"nel" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, +"ndq" = ( /turf/open/floor/plating, -/area/crew_quarters/fitness) -"new" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/security/prison) -"neC" = ( +/area/crew_quarters/abandoned_gambling_den) +"nez" = ( /obj/structure/table/wood, -/obj/item/toy/cards/deck, -/turf/open/floor/plasteel, -/area/security/prison) +/obj/item/instrument/piano_synth, +/turf/open/floor/wood, +/area/crew_quarters/theatre) "nfm" = ( /obj/machinery/vending/autodrobe, /turf/open/floor/wood, /area/maintenance/bar) -"nie" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Holodeck Door" +"ngs" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/fitness) -"njO" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"nlt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"nmx" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"nmS" = ( -/obj/structure/closet/athletic_mixed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"npY" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"nrR" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"nsJ" = ( -/obj/machinery/door/airlock{ - desc = "Private study room where nerds are probably playing Dungeons and Dragons 13e, or a place for blood cult rituals."; - id_tag = "PrivateStudy"; - name = "Private Study" - }, -/obj/machinery/door/firedoor, /turf/open/floor/wood, -/area/library) -"ntf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 +/area/crew_quarters/theatre) +"ngV" = ( +/obj/structure/table/wood, +/obj/item/instrument/guitar, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"nhY" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" }, -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"nuV" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"nkP" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 8; + name = "8maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"noy" = ( +/obj/structure/sign/poster/contraband/smoke{ + desc = "This poster reminds us all that the Detective is a parasite. Year after year, they must get replacement lungs because of their addiction. "; + pixel_y = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"noF" = ( +/obj/machinery/door/airlock{ + name = "Instrument Storage" + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/starboard/fore) +"nsA" = ( +/turf/closed/wall, +/area/crew_quarters/abandoned_gambling_den) +"nuw" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"nwX" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating/airless, +/area/space/nearstation) "nxv" = ( /obj/machinery/power/apc{ areastring = "/area/construction"; @@ -56212,13 +55738,13 @@ }, /turf/open/floor/plating, /area/construction) -"nyH" = ( -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 +"nGf" = ( +/obj/machinery/hydroponics/constructable, +/obj/machinery/light{ + dir = 1 }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) +/turf/open/floor/plasteel/dark, +/area/hydroponics) "nGt" = ( /obj/structure/cable{ icon_state = "1-2" @@ -56230,63 +55756,74 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"nGS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/blue{ - dir = 8 +"nGI" = ( +/obj/machinery/door/airlock/external{ + name = "Common Mining Shuttle Bay" }, -/obj/effect/turf_decal/tile/blue{ - alpha = 255; - dir = 1 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) -"nIE" = ( -/obj/structure/sign/poster/contraband/tools, -/turf/closed/wall, -/area/storage/primary) -"nLf" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/turf/open/floor/wood, -/area/bridge/meeting_room) -"nMx" = ( -/obj/effect/mapping_helpers/airlock/locked, -/obj/machinery/door/airlock/vault, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"nLu" = ( +/obj/effect/turf_decal/tile/blue{ dir = 4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/nuke_storage) -"nMY" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/tile/blue, /turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"nOC" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"nOD" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"nOS" = ( +/area/crew_quarters/fitness) +"nLw" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/obj/structure/window{ + dir = 1 + }, +/obj/structure/window{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"nQi" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"nRG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"nSt" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"nUV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"nXE" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"nYe" = ( /obj/structure/safe, /obj/item/clothing/head/bearpelt, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass, @@ -56306,304 +55843,228 @@ /obj/item/gun/ballistic/revolver/nagant, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) -"nQr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/maintenance/port) -"nRG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"nTE" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"nUs" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"nWq" = ( -/obj/machinery/door/airlock/engineering{ - name = "Gravity Generator"; - req_access_txt = "11" - }, +"nZE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/tile/neutral, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, /turf/open/floor/plasteel, -/area/engine/gravity_generator) -"nXa" = ( -/obj/machinery/light{ - dir = 4; - light_color = "#e8eaff" +/area/crew_quarters/dorms) +"oax" = ( +/obj/structure/table/wood/fancy, +/obj/machinery/light, +/obj/item/reagent_containers/food/condiment/saltshaker{ + pixel_x = -3; + pixel_y = 20 }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) +/obj/item/reagent_containers/food/condiment/peppermill{ + dir = 1; + pixel_x = 3; + pixel_y = 20 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4; + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"obc" = ( +/obj/structure/chair/sofa/right, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) "oce" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, /turf/open/floor/plasteel/white, /area/science/mixing) +"ocv" = ( +/obj/structure/table, +/obj/item/clothing/gloves/boxing/yellow, +/obj/item/clothing/gloves/boxing/green, +/obj/item/clothing/gloves/boxing/blue, +/obj/item/clothing/gloves/boxing/blue, +/obj/item/clothing/gloves/boxing, +/obj/item/clothing/gloves/boxing, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) "odx" = ( /obj/machinery/vending/kink, /turf/open/floor/plating, /area/maintenance/bar) -"oeJ" = ( -/obj/structure/table/wood, -/obj/item/instrument/violin, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"oeQ" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"ogJ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ohX" = ( -/obj/structure/table/wood, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) -"olr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"olv" = ( -/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, -/turf/open/floor/plasteel, -/area/security/brig) -"olw" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"oma" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ +"ofU" = ( +/obj/structure/chair/comfy/black{ dir = 4 }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"omT" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"orw" = ( -/obj/structure/table, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, +"old" = ( /obj/effect/turf_decal/tile/red{ dir = 8 }, -/obj/machinery/recharger, -/obj/item/gun/energy/laser/practice, -/obj/item/gun/energy/laser/practice, -/turf/open/floor/plasteel, -/area/security/prison) -"ory" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"otF" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; +/obj/structure/sign/departments/security{ + pixel_x = -32; pixel_y = -32 }, /turf/open/floor/plasteel, -/area/hallway/primary/central) -"ouD" = ( -/obj/structure/reagent_dispensers/keg/semen, -/turf/open/floor/plating, -/area/maintenance/bar) -"oyb" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"oyD" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"oBp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/maintenance/port) -"oDy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/item/twohanded/required/kirbyplants{ - icon_state = "plant-04" - }, +/area/hallway/primary/fore) +"olr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, -/area/medical/medbay/central) -"oFk" = ( -/obj/structure/closet/boxinggloves, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"oHU" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, /area/science/circuit) -"oKh" = ( -/obj/structure/chair/wood/normal{ - dir = 8 +"omY" = ( +/obj/item/flashlight/lamp/green{ + pixel_x = -3; + pixel_y = 22 }, -/turf/open/floor/wood, -/area/maintenance/bar) -"oMY" = ( -/obj/machinery/button/door{ - desc = "Alright, GAMER! Want to take your PWRGAME addiction to the MAX? Just smash this button with your chubby chetto encrusted hands an- oh, you broke the switch. Good job, idiot."; - id = "RIPFUN"; - name = "Powerful Gamer Toggle"; - normaldoorcontrol = 1; - pixel_x = -24; - pixel_y = 7; - specialfunctions = 4 +/obj/structure/dresser{ + desc = "There's plenty of clothes here to change into! It has a surprising amount of variety, too."; + name = "Dresser"; + pixel_y = 7 }, -/obj/structure/table_frame/wood, /turf/open/floor/plating, /area/maintenance/port) -"oNb" = ( -/obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 +"oqj" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"oqO" = ( /obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/item/reagent_containers/food/drinks/soda_cans/starkist{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"oNQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, +/obj/structure/cable{ + icon_state = "4-8" + }, /obj/machinery/light{ dir = 4; light_color = "#c1caff" }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"oOb" = ( -/obj/structure/sign/poster/official/cohiba_robusto_ad, -/turf/closed/wall, -/area/lawoffice) -"oSO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ +"ouQ" = ( +/obj/structure/table, +/obj/item/paper_bin{ + pixel_y = 6 + }, +/obj/item/pen/fountain, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"oxm" = ( +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/brflowers, +/obj/effect/spawner/structure/window, +/turf/open/floor/grass, +/area/crew_quarters/bar) +"oyl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/chair/sofa, -/obj/item/radio/intercom{ - pixel_y = 25 +/obj/effect/turf_decal/tile/blue{ + dir = 4 }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"oUh" = ( -/obj/structure/disposalpipe/trunk{ +/obj/effect/turf_decal/tile/blue, +/obj/machinery/door/window/eastleft{ + name = "Blue Corner" + }, +/obj/effect/turf_decal/tile/blue{ dir = 1 }, -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"oXL" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"oYc" = ( -/obj/machinery/light/small{ - dir = 4; - light_color = "#d8b1b1" +/obj/effect/turf_decal/tile/blue{ + dir = 8 }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"pfD" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"phu" = ( +/area/crew_quarters/locker) +"oyz" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4; pixel_y = 5 }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"phH" = ( -/turf/open/floor/grass, -/area/security/prison) -"phY" = ( +"oyN" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/space/nearstation) +"oyX" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 4; + name = "Air In" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"oAb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 +/turf/closed/wall, +/area/crew_quarters/bar) +"oAB" = ( +/obj/structure/fireplace, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"oDN" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"oEZ" = ( +/obj/effect/spawner/lootdrop/keg, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"oHB" = ( +/turf/open/floor/plasteel/dark, +/area/crew_quarters/dorms) +"oHU" = ( +/obj/structure/cable{ + icon_state = "1-2" }, /turf/open/floor/plasteel, -/area/crew_quarters/locker) -"pjh" = ( +/area/science/circuit) +"oIJ" = ( +/obj/structure/chair/comfy/brown{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"oIW" = ( +/obj/structure/toilet{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"oKh" = ( +/obj/structure/chair/wood/normal{ + dir = 8 + }, +/turf/open/floor/wood, +/area/maintenance/bar) +"oLl" = ( /obj/structure/cable{ icon_state = "4-8" }, @@ -56612,13 +56073,96 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"pno" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"poa" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ +"oLn" = ( +/obj/machinery/light/small{ dir = 4 }, +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"oTW" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/carpet{ + icon_state = "carpetsymbol" + }, +/area/crew_quarters/theatre) +"oUh" = ( +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/machinery/disposal/bin, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"oZl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/closet/wardrobe/pjs, +/obj/item/clothing/under/maid, +/obj/item/clothing/under/maid, +/obj/item/clothing/under/janimaid, +/obj/item/clothing/under/janimaid, +/obj/item/clothing/accessory/maidapron, +/obj/item/clothing/accessory/maidapron, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"pem" = ( +/obj/machinery/button/door{ + desc = "Bolts the doors to the Private Study."; + id = "PrivateStudy"; + name = "Private Study Lock"; + pixel_x = 25; + pixel_y = 25; + req_access_txt = ""; + req_one_access_txt = "28;63" + }, +/turf/open/floor/wood, +/area/library) +"pfm" = ( +/obj/structure/sign/poster/official/twelve_gauge, +/turf/closed/wall/r_wall, +/area/ai_monitored/security/armory) +"pgf" = ( +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"pgn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating, +/area/security/prison) +"plm" = ( +/obj/structure/reagent_dispensers/watertank/high, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/plasteel, +/area/engine/atmos) +"plC" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, /turf/open/floor/wood, /area/crew_quarters/bar) "poc" = ( @@ -56630,87 +56174,71 @@ }, /turf/open/floor/plasteel, /area/science/mixing) -"ppY" = ( -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 4 +"pou" = ( +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" }, -/obj/structure/sign/poster/official/love_ian{ - pixel_x = 32; - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"pqR" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"prP" = ( -/obj/structure/grille, -/turf/open/space/basic, -/area/space/nearstation) -"prU" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"ptV" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/heads/captain) -"puG" = ( -/obj/structure/rack, -/obj/item/tank/internals/emergency_oxygen, -/obj/item/tank/internals/emergency_oxygen, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/effect/decal/cleanable/cobweb, -/obj/item/clothing/under/color/grey, /turf/open/floor/plating, -/area/maintenance/port/aft) -"pxD" = ( +/area/crew_quarters/abandoned_gambling_den) +"pqe" = ( /obj/structure/chair/sofa, /obj/structure/window{ dir = 1 }, +/obj/effect/landmark/start/assistant, /turf/open/floor/wood, /area/crew_quarters/bar) -"pzk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 +"pqs" = ( +/obj/machinery/vending/clothing, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/structure/table, -/obj/item/coin/gold, /turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"pAl" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/components/unary/tank/air{ +/area/crew_quarters/locker) +"psk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/bridge/meeting_room) +"pst" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/vault, +/obj/effect/mapping_helpers/airlock/locked, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"puh" = ( +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ dir = 8 }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"pFt" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-2" +/obj/machinery/light/small, +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 }, -/turf/open/space, -/area/solar/starboard/aft) -"pFW" = ( -/turf/open/floor/plasteel/yellowsiding{ +/turf/open/floor/plasteel/white/side{ dir = 1 }, -/area/crew_quarters/fitness/pool) +/area/crew_quarters/fitness) +"pBp" = ( +/obj/effect/landmark/event_spawn, +/turf/closed/wall, +/area/crew_quarters/fitness) +"pFX" = ( +/obj/structure/table/wood/fancy, +/obj/item/reagent_containers/food/drinks/soda_cans/starkist{ + pixel_x = -3; + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) "pHl" = ( /obj/structure/table, /obj/item/storage/box/beakers{ @@ -56737,18 +56265,31 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) -"pHo" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"pHO" = ( +/obj/effect/turf_decal/tile/blue, +/obj/structure/sign/poster/contraband/fun_police{ + pixel_x = 32 }, /turf/open/floor/plasteel, -/area/hydroponics) -"pHG" = ( -/obj/effect/turf_decal/tile/blue{ +/area/hallway/primary/fore) +"pIf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"pJR" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/chair/comfy/brown{ dir = 1 }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +/turf/open/floor/wood, +/area/library) "pLn" = ( /obj/machinery/conveyor/inverted{ dir = 5; @@ -56756,88 +56297,7 @@ }, /turf/open/floor/plating, /area/maintenance/disposal) -"pLt" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/power/apc{ - areastring = "/area/security/main"; - dir = 4; - name = "Firing Range APC"; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"pNH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/door/window, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"pNI" = ( -/obj/effect/turf_decal/bot, -/obj/structure/sign/poster/official/pda_ad{ - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"pPE" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/machinery/door/window/eastleft{ - name = "Blue Corner" - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"pQr" = ( -/obj/structure/table, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/item/clothing/glasses/sunglasses{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/glasses/sunglasses{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"pQD" = ( -/obj/structure/sign/poster/official/ion_rifle, -/turf/closed/wall/r_wall, -/area/ai_monitored/security/armory) -"pSf" = ( +"pPi" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -56849,453 +56309,13 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"pTn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/power/terminal, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"pTR" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"pUl" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/command{ - name = "Command Access To Vault"; - req_access = "19" - }, -/turf/open/floor/plasteel/dark, -/area/bridge/meeting_room) -"pVt" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"pZv" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"qbx" = ( -/obj/structure/table/wood/fancy, -/obj/item/reagent_containers/food/drinks/soda_cans/starkist{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"qce" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"qda" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/yellow, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/button/door{ - id = "poolshutter"; - name = "Pool Shutters"; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qeQ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/science/circuit) -"qje" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"qkc" = ( -/obj/machinery/pool/controller, -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"qkC" = ( -/obj/machinery/power/apc{ - areastring = "/area/maintenance/starboard/fore"; - dir = 1; - name = "Starboard Bow Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"qlr" = ( -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/window{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"qlF" = ( -/obj/structure/lattice, -/turf/closed/wall, -/area/security/prison) -"qmM" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"qoP" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"qoW" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qpA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster/official/cohiba_robusto_ad{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"qsu" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qux" = ( -/obj/structure/chair/sofa/left{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"quB" = ( -/obj/structure/bed, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"quT" = ( -/obj/structure/lattice, -/obj/structure/grille/broken, -/turf/open/space/basic, -/area/space/nearstation) -"qvh" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -24 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qvM" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/circuit, -/area/ai_monitored/nuke_storage) -"qwe" = ( -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"qwg" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"qwB" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/engineering/glass{ - name = "Gravity Generator"; - req_access_txt = "11" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel/dark, -/area/engine/gravity_generator) -"qxc" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/computer/slot_machine, -/obj/item/coin/iron, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"qAQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/table, -/obj/item/storage/firstaid/regular{ - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"qBc" = ( -/turf/open/floor/carpet, -/area/crew_quarters/theatre) -"qBe" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, +"pPI" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/bridge/meeting_room) -"qEv" = ( -/obj/structure/table/wood/fancy, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/reagent_containers/food/drinks/britcup{ - desc = "Kingston's personal cup."; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"qHB" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"qIf" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/bar) -"qIw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"qJO" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qJZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) -"qMu" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/security/prison) -"qNs" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/yellow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qOf" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"qQJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/theatre) -"qUm" = ( -/obj/structure/filingcabinet/employment, -/turf/open/floor/wood, -/area/crew_quarters/heads/captain) -"qXH" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"qYE" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"rcD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/closed/wall/r_wall, -/area/science/circuit) -"rdZ" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"reZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/r_wall, -/area/engine/engine_smes) -"rfW" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) -"rgF" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/coin/silver, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"rhb" = ( -/obj/machinery/vending/cola/space_up, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"riA" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Firing Range"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"riB" = ( -/obj/machinery/door/firedoor, -/obj/structure/sign/departments/evac{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"rmX" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/drinks/beer, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"rsv" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/space, -/area/solar/starboard/fore) -"rsX" = ( -/obj/effect/turf_decal/tile/red, -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"rtT" = ( -/obj/structure/chair/comfy/brown{ - color = "#66b266"; - dir = 1 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"rvZ" = ( -/obj/structure/target_stake, -/obj/item/target/syndicate, -/turf/open/floor/plating, -/area/security/prison) -"rzg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/heads/captain) -"rBq" = ( -/obj/item/clothing/head/kitty, -/obj/item/clothing/under/maid, -/obj/item/clothing/mask/muzzle, -/turf/open/floor/plating, -/area/maintenance/bar) -"rEV" = ( +/area/engine/gravity_generator) +"pQp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -57304,56 +56324,410 @@ }, /turf/open/floor/plating, /area/crew_quarters/fitness) -"rFc" = ( -/obj/machinery/door/airlock{ - desc = "To keep the station within regulations, space IKEA requires one storage cupboard for their Nanotrasen partnership to continue."; - id_tag = "MaintDorm1"; - name = "Furniture Storage" +"pRs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 }, -/turf/open/floor/plasteel/dark, -/area/maintenance/port) -"rHa" = ( -/obj/docking_port/stationary{ - dir = 8; - dwidth = 3; - height = 5; - id = "commonmining_home"; - name = "SS13: Common Mining Dock"; - roundstart_template = /datum/map_template/shuttle/mining_common/meta; - width = 7 +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" }, -/turf/open/space/basic, -/area/space) -"rKc" = ( +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"pTB" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, /turf/open/space, -/area/solar/port/fore) +/area/solar/starboard/aft) +"qaY" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/crew_quarters/bar) +"qcm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/captain) +"qeb" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/abandoned_gambling_den"; + name = "Abandoned Gambling Den APC"; + pixel_y = -24 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"qeQ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/science/circuit) +"qfk" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/structure/window, +/obj/structure/window{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/landmark/start/assistant, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"qfD" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + desc = "Privacy shutters for the Private Study. Stops people spying in on your game."; + id = "PrivateStudy1"; + name = "Private Study Privacy Shutters" + }, +/obj/effect/spawner/structure/window, +/turf/open/floor/wood, +/area/library) +"qje" = ( +/obj/structure/sign/mining{ + pixel_y = 7 + }, +/turf/closed/wall, +/area/quartermaster/miningdock) +"qmn" = ( +/obj/machinery/computer/libraryconsole/bookmanagement, +/obj/structure/table, +/turf/open/floor/plasteel, +/area/security/prison) +"qqs" = ( +/obj/structure/mirror{ + pixel_y = 32 + }, +/obj/structure/sink{ + dir = 1; + pixel_y = 25 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/toilet) +"qus" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "kitchen"; + name = "kitchen shutters" + }, +/obj/item/reagent_containers/food/snacks/cheesynachos{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"quT" = ( +/obj/structure/lattice, +/obj/structure/grille/broken, +/turf/open/space/basic, +/area/space/nearstation) +"qAm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/light/small, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"qBi" = ( +/obj/structure/lattice, +/turf/closed/wall/r_wall, +/area/crew_quarters/heads/captain) +"qIw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"qJr" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/space, +/area/solar/port/aft) +"qLR" = ( +/obj/structure/mirror{ + pixel_y = 32 + }, +/obj/structure/sink{ + dir = 1; + pixel_y = 25 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"qOc" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green, +/obj/machinery/camera{ + c_tag = "VR Sleepers"; + dir = 1 + }, +/obj/machinery/light/small, +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/crew_quarters/fitness) +"qOB" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/captain) +"qTG" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"qTV" = ( +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"qVP" = ( +/obj/effect/spawner/structure/window, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"qXg" = ( +/obj/structure/chair/sofa/left, +/turf/open/floor/plasteel, +/area/security/prison) +"rcD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/science/circuit) +"rdG" = ( +/obj/machinery/hydroponics/constructable, +/obj/item/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/turf/open/floor/plasteel/dark, +/area/hydroponics) +"reA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/vending/kink, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"rfW" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"rjQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"rmN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/chair/comfy/brown, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"rmX" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/beer, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"rnt" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"rnK" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 1 + }, +/turf/open/space/basic, +/area/space/nearstation) +"rqf" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"rqk" = ( +/obj/structure/reagent_dispensers/water_cooler, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"rqE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"rqW" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/dresser, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/theatre"; + dir = 8; + name = "Theatre APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/theatre) +"rrM" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/closet/wardrobe/black, +/obj/item/clothing/under/skirt/black, +/obj/item/clothing/head/beret/black, +/obj/item/clothing/head/beret/black, +/obj/item/clothing/under/trendy_fit, +/obj/item/clothing/under/trendy_fit, +/obj/item/clothing/under/sundress, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"rtl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/camera{ + c_tag = "Bar Backroom" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"ruo" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"rvr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"rvS" = ( +/obj/structure/chair/comfy/brown{ + color = "#66b266"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"ryr" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"rBq" = ( +/obj/item/clothing/head/kitty, +/obj/item/clothing/under/maid, +/obj/item/clothing/mask/muzzle, +/turf/open/floor/plating, +/area/maintenance/bar) +"rGq" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"rIA" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) "rKP" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, /turf/open/floor/plating, /area/construction) -"rLr" = ( -/obj/structure/window, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"rLR" = ( -/obj/structure/sign/poster/contraband/space_up{ - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"rMc" = ( -/obj/structure/table/wood/fancy/black, -/obj/machinery/light/small, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) "rMN" = ( /obj/structure/bed, /obj/item/tank/internals/anesthetic, @@ -57376,46 +56750,32 @@ }, /turf/open/floor/plasteel, /area/science/mixing) -"rOm" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 23 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/toilet) -"rTQ" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ +"rPU" = ( +/turf/open/floor/plasteel/white/side{ dir = 4 }, +/area/crew_quarters/theatre) +"rTu" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/airlock/command{ + name = "Command Access To Vault"; + req_access = "19" + }, +/turf/open/floor/plasteel/dark, +/area/bridge/meeting_room) +"rXl" = ( +/obj/structure/chair/office/light, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -24 + }, /obj/effect/turf_decal/stripes/line{ - dir = 1 + dir = 9 }, -/turf/open/floor/plasteel/white/side{ - dir = 8 - }, -/area/crew_quarters/fitness) -"rUQ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"rYu" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) +/turf/open/floor/plasteel, +/area/engine/gravity_generator) "saK" = ( /obj/structure/closet/crate, /obj/item/target/alien, @@ -57428,68 +56788,54 @@ /obj/item/gun/energy/laser/practice, /turf/open/floor/plasteel/white, /area/science/circuit) -"sdL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 +"saU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/engine/engine_smes) +"saX" = ( +/obj/item/reagent_containers/glass/bucket, +/turf/open/floor/grass, +/area/security/prison) +"sci" = ( +/obj/machinery/vr_sleeper{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/fitness) +"seP" = ( +/obj/structure/cable{ + icon_state = "0-4" }, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "0-8" }, -/turf/open/floor/plasteel/dark, -/area/bridge/meeting_room) -"seu" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"sfa" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/door/poddoor/preopen{ + id = "Secure Gate"; + name = "brig shutters" + }, +/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"sgV" = ( -/obj/machinery/atmospherics/components/binary/pump/on{ - dir = 4; - name = "Air In" + icon_state = "1-8" }, +/turf/open/floor/plating, +/area/security/brig) +"shR" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/fore/secondary) -"siN" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"sjm" = ( -/obj/structure/table/wood, -/obj/item/instrument/piano_synth, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"sjw" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/closet/wardrobe/black, -/obj/item/clothing/under/skirt/black, -/obj/item/clothing/head/beret/black, -/obj/item/clothing/head/beret/black, -/obj/item/clothing/under/trendy_fit, -/obj/item/clothing/under/trendy_fit, -/obj/item/clothing/under/sundress, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"sjT" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/security/prison) +/area/space/nearstation) "slk" = ( /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" @@ -57502,86 +56848,45 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/maintenance/department/medical/morgue) -"slp" = ( -/obj/effect/turf_decal/tile/blue{ - alpha = 255 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - alpha = 255; +"spu" = ( +/obj/effect/turf_decal/tile/red{ dir = 1 }, -/obj/effect/turf_decal/tile/blue{ +/obj/effect/turf_decal/tile/red{ dir = 8 }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) -"smn" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, +/obj/effect/turf_decal/tile/red, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"sqp" = ( /obj/structure/cable{ icon_state = "4-8" }, -/obj/machinery/light, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/nuke_storage) -"snG" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/space, -/area/solar/port/aft) -"spX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/cable{ - icon_state = "4-8" +/obj/machinery/door/airlock/command{ + name = "Captain's Vault Access"; + req_access_txt = "20" }, /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) -"sqa" = ( -/obj/item/twohanded/required/kirbyplants{ - icon_state = "applebush" +"srG" = ( +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) -"srq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/dark, -/area/bridge/meeting_room) -"ssL" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/space, -/area/solar/starboard/fore) -"suI" = ( -/obj/machinery/door/window/southleft{ - name = "Target Storage" - }, -/obj/item/target/clown, -/obj/item/target/clown, -/obj/item/target, -/obj/item/target, /turf/open/floor/plating, -/area/security/prison) -"svw" = ( -/obj/structure/chair{ +/area/crew_quarters/abandoned_gambling_den) +"ssB" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ dir = 4 }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness) +/area/hallway/primary/starboard) "sxs" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/table, @@ -57595,19 +56900,88 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) -"sxw" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"sxX" = ( +"syJ" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"szG" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating{ - icon_state = "panelscorched" +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"sAM" = ( +/turf/open/floor/wood{ + icon_state = "wood-broken6" }, -/area/maintenance/starboard/fore) -"sAI" = ( +/area/maintenance/bar) +"sEi" = ( +/obj/machinery/vr_sleeper{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 4 + }, +/area/crew_quarters/fitness) +"sEt" = ( +/turf/open/floor/wood{ + icon_state = "wood-broken7" + }, +/area/maintenance/bar) +"sEM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"sFW" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/sign/departments/restroom{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"sHx" = ( +/obj/structure/table, +/obj/item/book/manual/hydroponics_pod_people{ + pixel_x = -4; + pixel_y = 5 + }, +/obj/item/paper/guides/jobs/hydroponics{ + pixel_x = -5; + pixel_y = 3 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"sJx" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"sJI" = ( /obj/structure/table/wood/fancy, /obj/item/reagent_containers/food/condiment/saltshaker{ pixel_x = -3; @@ -57620,46 +56994,31 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"sAM" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken6" +"sLa" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 4 }, -/area/maintenance/bar) -"sCi" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"sEt" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken7" +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, -/area/maintenance/bar) -"sHU" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 4; - name = "4maintenance loot spawner" +/obj/structure/window{ + dir = 4 }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"sIe" = ( -/obj/structure/sign/poster/official/fruit_bowl{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/white/corner{ +/obj/effect/turf_decal/tile/blue{ dir = 1 }, -/area/hallway/primary/starboard) -"sKK" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 +/obj/effect/turf_decal/tile/blue{ + dir = 8 }, -/area/crew_quarters/fitness/pool) -"sLr" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/coin/silver, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"sLj" = ( +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) "sLv" = ( /obj/structure/closet, /obj/effect/spawner/lootdrop/maintenance, @@ -57668,24 +57027,13 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"sLO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/blue{ - dir = 8 +"sNK" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/structure/cable{ + icon_state = "1-2" }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"sMa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/vending/kink, -/obj/machinery/light{ - dir = 4; - light_color = "#e8eaff" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) +/turf/open/floor/wood, +/area/crew_quarters/theatre) "sOs" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57693,15 +57041,38 @@ /obj/machinery/door/airlock/maintenance/abandoned, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"sPo" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"sQE" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +"sOA" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"sPT" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8; + light_color = "#e8eaff" + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"sPY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/engine/engine_smes) "sQX" = ( /turf/open/floor/plating, /area/space) +"sRH" = ( +/obj/machinery/autolathe{ + name = "public autolathe" + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) "sRT" = ( /obj/machinery/vending/cola/random, /turf/open/floor/wood, @@ -57733,64 +57104,56 @@ /obj/machinery/vending/boozeomat/all_access, /turf/closed/wall, /area/maintenance/bar) -"sYv" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 +"sYR" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms" }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) -"sZa" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/obj/machinery/camera{ - c_tag = "Bar Backroom" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"sZR" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/engine/gravity_generator) +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/bar) "tal" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/hallway/secondary/service) -"tdz" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"tdF" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/light{ +"tgH" = ( +/obj/structure/filingcabinet/employment, +/turf/open/floor/wood, +/area/crew_quarters/heads/captain) +"tif" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plating, -/area/maintenance/port/aft) +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"tkq" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"tkB" = ( +/obj/structure/sign/poster/official/help_others{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) "tkU" = ( /turf/open/floor/wood{ icon_state = "wood-broken5" }, /area/maintenance/bar) -"tob" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ +"tmO" = ( +/obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/fore/secondary) +/area/security/prison) "tqg" = ( /obj/machinery/cryopod{ dir = 4 @@ -57800,20 +57163,98 @@ }, /turf/open/floor/carpet, /area/crew_quarters/cryopod) -"tqt" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/chair/comfy/brown{ - dir = 1 +"tqB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 }, -/turf/open/floor/wood, -/area/library) +/turf/open/floor/plating, +/area/space/nearstation) "trb" = ( /obj/machinery/light{ dir = 4 }, /turf/open/floor/plasteel, /area/security/courtroom) -"tru" = ( +"ttL" = ( +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"ttX" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Firing Range"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"tur" = ( +/obj/item/restraints/handcuffs/fake, +/turf/open/floor/plating, +/area/maintenance/bar) +"tvi" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/chair/comfy/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"txm" = ( +/obj/structure/table/wood/fancy/royalblue, +/obj/item/crowbar/red, +/turf/open/floor/plating, +/area/maintenance/port) +"tyX" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"tzQ" = ( +/obj/machinery/shower{ + dir = 4 + }, +/obj/item/soap, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"tCa" = ( +/obj/structure/table/wood, +/obj/item/instrument/guitar{ + pixel_x = -7 + }, +/obj/item/instrument/eguitar{ + pixel_x = 5 + }, +/obj/item/instrument/violin, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"tCd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + alpha = 255; + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"tJi" = ( /obj/machinery/airalarm{ dir = 4; pixel_x = -22 @@ -57835,267 +57276,106 @@ /obj/item/megaphone/clown, /turf/open/floor/plasteel, /area/crew_quarters/theatre) -"trY" = ( -/obj/structure/sign/poster/contraband/lizard{ - pixel_x = -32 - }, -/obj/structure/sign/poster/contraband/lizard{ - pixel_x = -32 - }, -/obj/structure/sign/poster/contraband/lizard{ - pixel_x = -32 +"tJK" = ( +/obj/machinery/door/airlock/engineering{ + name = "Gravity Generator"; + req_access_txt = "11" }, /obj/structure/cable{ icon_state = "1-2" }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"tsr" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, /turf/open/floor/plasteel, -/area/hydroponics) -"tuj" = ( -/obj/structure/light_construct{ - dir = 1 - }, +/area/engine/gravity_generator) +"tJS" = ( +/obj/effect/spawner/lootdrop/keg, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"tur" = ( -/obj/item/restraints/handcuffs/fake, -/turf/open/floor/plating, -/area/maintenance/bar) -"tuN" = ( -/obj/structure/chair/sofa, -/obj/structure/window{ +"tKk" = ( +/obj/effect/turf_decal/tile/neutral{ dir = 1 }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"tvW" = ( -/obj/structure/pool/Rboard, -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"tzE" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"tzN" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"tAb" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/command{ - name = "Captain's Vault Access"; - req_access_txt = "20" - }, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/heads/captain) -"tAE" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/table/wood, -/obj/item/reagent_containers/food/condiment/saltshaker{ - pixel_x = -3; - pixel_y = 20 - }, -/obj/item/reagent_containers/food/condiment/peppermill{ - dir = 1; - pixel_x = 3; - pixel_y = 20 - }, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral, -/obj/item/reagent_containers/food/drinks/britcup, +/obj/structure/sign/warning/fire{ + desc = "A sign that states the labeled room's number."; + icon_state = "roomnum"; + name = "Room Number 1"; + pixel_x = -30; + pixel_y = -7 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"tAV" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) -"tCi" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 4 - }, -/area/crew_quarters/fitness) -"tFt" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hydroponics) -"tGG" = ( -/obj/structure/table/wood, -/obj/item/book/codex_gigas, -/obj/item/clothing/under/suit_jacket/red, -/obj/structure/destructible/cult/tome, -/turf/open/floor/carpet, -/area/library) -"tGO" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"tHx" = ( -/obj/machinery/computer/arcade/minesweeper{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/prison) -"tIk" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "maintdiy"; - name = "Security Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"tIC" = ( -/obj/structure/table/wood, -/obj/item/instrument/guitar{ - pixel_x = -7 - }, -/obj/item/instrument/eguitar{ - pixel_x = 5 - }, -/obj/item/instrument/violin, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"tLl" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/prison) "tMl" = ( /obj/effect/turf_decal/loading_area, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) -"tMS" = ( -/obj/structure/table, -/obj/item/paper_bin{ - pixel_y = 6 +"tNF" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 }, -/obj/item/pen/fountain, -/turf/open/floor/plasteel/dark, -/area/hallway/primary/central) -"tNJ" = ( -/obj/effect/spawner/structure/window, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"tNP" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"tOd" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/security/prison) +/turf/open/floor/plasteel, +/area/engine/gravity_generator) "tOq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, /turf/open/floor/plasteel/white, /area/science/mixing) -"tOU" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "tPT" = ( /obj/machinery/chem_dispenser/drinks/beer, /obj/structure/table/wood, /turf/open/floor/wood, /area/maintenance/bar) -"tQk" = ( -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) "tRe" = ( /obj/machinery/chem_master, /turf/open/floor/plasteel/white, /area/medical/medbay/central) +"tRB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) "tRF" = ( /obj/machinery/light/small{ dir = 8 }, /turf/open/floor/wood, /area/maintenance/bar) -"tTW" = ( -/obj/effect/landmark/start/assistant, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) -"tUm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +"tWj" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4; + pixel_y = 5 }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/port) -"tUw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/carpet, +/turf/open/floor/wood, /area/crew_quarters/theatre) -"tWs" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"tWR" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) "tXL" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"tZe" = ( +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/pda_ad{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"uaj" = ( +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) "uaw" = ( /obj/machinery/power/apc{ areastring = "/area/storage/art"; @@ -58108,42 +57388,380 @@ }, /turf/open/floor/wood, /area/maintenance/bar) -"ucV" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ +"ubj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/area/crew_quarters/fitness/pool) -"udi" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/door/window/westright{ + name = "Red Corner" + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"ucq" = ( +/obj/structure/sign/poster/contraband/red_rum{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"ufD" = ( +/obj/machinery/vr_sleeper{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 4 + }, +/area/crew_quarters/fitness) +"ugu" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"uhm" = ( +/obj/machinery/door/airlock{ + name = "Recharging Station" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"ujv" = ( +/obj/structure/sign/departments/restroom, +/turf/closed/wall, +/area/crew_quarters/toilet) +"ujF" = ( +/obj/machinery/cryopod{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"ujS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"unA" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"unW" = ( +/obj/effect/landmark/event_spawn, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/security/brig) +"uoB" = ( +/obj/structure/table/reinforced, +/obj/item/multitool, +/obj/item/screwdriver, +/obj/machinery/camera{ + c_tag = "Circuitry Lab North"; + network = list("ss13","rd") + }, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"uoG" = ( +/obj/machinery/power/apc{ + areastring = "/area/security/detectives_office"; + dir = 4; + name = "Detective's Office APC"; + pixel_x = 24 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"usO" = ( +/obj/machinery/vending/snack/random, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/wood, +/area/maintenance/bar) +"uua" = ( +/obj/machinery/atmospherics/components/binary/valve, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"uuG" = ( /obj/structure/cable{ icon_state = "4-8" }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"uve" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/coin/silver, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"uvZ" = ( +/obj/structure/mineral_door/wood, +/turf/open/floor/wood, +/area/maintenance/bar) +"uxY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/disposalpipe/junction, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"uBa" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/soda_cans/starkist{ + pixel_x = 5; + pixel_y = 7 + }, +/obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb{ + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"uDO" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/space, +/area/solar/port/fore) +"uEI" = ( /obj/structure/chair/comfy/brown{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"uFp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/sign/poster/official/cohiba_robusto_ad{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"uGI" = ( +/turf/open/floor/grass, +/area/security/prison) +"uIO" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, /obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"uJx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"uNu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/science/circuit) +"uOJ" = ( +/obj/effect/mapping_helpers/airlock/locked, +/obj/machinery/door/airlock/vault, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"uPT" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) +"uQS" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 1; + pixel_x = 5 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/toilet) +"uRd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/terminal, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"uRS" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/carpet{ + icon_state = "carpetsymbol" + }, +/area/crew_quarters/theatre) +"uVS" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/starboard/aft) +"vae" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/space/nearstation) +"vbi" = ( +/obj/structure/table, +/obj/item/instrument/guitar{ + pixel_x = -7 + }, +/obj/item/instrument/eguitar{ + pixel_x = 5 + }, +/obj/item/instrument/violin, +/obj/item/instrument/trombone, +/obj/item/instrument/saxophone, +/obj/item/instrument/piano_synth, +/obj/item/instrument/recorder, +/obj/item/instrument/accordion, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"vbD" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/command/glass{ + name = "EVA Storage"; + req_access_txt = "18" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"vcN" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"vda" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/door/window/westleft{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Shooting Range" + }, +/turf/open/floor/plating, +/area/security/prison) +"vdu" = ( +/obj/structure/table/wood, /obj/machinery/airalarm{ dir = 1; pixel_y = -22 }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"ued" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 +/turf/open/floor/wood, +/area/security/vacantoffice) +"vhb" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 4 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ +/obj/effect/turf_decal/tile/blue{ dir = 8 }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -22 +/obj/structure/window{ + dir = 1 }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"uhm" = ( +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/locker) +"viF" = ( +/obj/structure/table/wood, +/obj/item/instrument/trumpet, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"vjm" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/rag, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/wood, +/area/maintenance/bar) +"vmQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "holoprivacy"; + name = "Holodeck Shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"vnI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, /obj/structure/cable{ @@ -58160,356 +57778,50 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"ujF" = ( -/obj/machinery/cryopod{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"ujS" = ( -/obj/structure/pool/ladder{ - dir = 1; - pixel_y = -22 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"uko" = ( +"vob" = ( /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-4" }, /turf/open/floor/plasteel, -/area/security/brig) -"ukP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"ukS" = ( -/obj/machinery/shower{ - dir = 4 - }, -/obj/item/soap, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) -"umL" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"unl" = ( -/obj/item/flashlight/lamp/green{ - pixel_x = -3; - pixel_y = 22 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4; - pixel_y = 5 - }, -/obj/structure/dresser{ - desc = "There's plenty of clothes here to change into! It has a surprising amount of variety, too."; - name = "Dresser"; - pixel_y = 7 - }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) -"unu" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/washing_machine, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"unE" = ( -/obj/structure/fans/tiny/invisible, -/turf/open/space/basic, -/area/space) -"unY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/departments/custodian{ - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"uoB" = ( -/obj/structure/table/reinforced, -/obj/item/multitool, -/obj/item/screwdriver, -/obj/machinery/camera{ - c_tag = "Circuitry Lab North"; - network = list("ss13","rd") - }, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"upX" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet{ - icon_state = "carpetsymbol" - }, -/area/crew_quarters/theatre) -"usO" = ( -/obj/machinery/vending/snack/random, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood, -/area/maintenance/bar) -"uuG" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) -"uuI" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"uvZ" = ( -/obj/structure/mineral_door/wood, -/turf/open/floor/wood, -/area/maintenance/bar) -"uxu" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"uya" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/structure/sign/departments/restroom{ - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"uzk" = ( -/obj/structure/sign/departments/restroom, -/turf/closed/wall, -/area/crew_quarters/toilet) -"uDW" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"uFI" = ( -/obj/structure/pool/ladder{ - dir = 2; - pixel_y = 16 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"uJw" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"uNu" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/science/circuit) -"uPT" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/maintenance/disposal/incinerator) -"uTq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"uUp" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"uVq" = ( -/obj/machinery/light{ - dir = 1; - light_color = "#d1dfff" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"uVt" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating, -/area/security/prison) -"uVS" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"uYE" = ( -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"uZw" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"uZM" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/structure/sign/poster/official/space_cops{ - pixel_x = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/fore) -"vbD" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/command/glass{ - name = "EVA Storage"; - req_access_txt = "18" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) -"vbY" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 4 - }, -/area/crew_quarters/fitness) -"vdz" = ( -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/security/prison) -"vdH" = ( -/obj/structure/bed, -/turf/open/floor/plating, -/area/maintenance/port) -"vgb" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"vgp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/turf/closed/wall/r_wall, /area/engine/gravity_generator) -"vjm" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/rag, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/wood, -/area/maintenance/bar) -"vjq" = ( -/obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) -"vkw" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"vmK" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"vnZ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"vpm" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"vpz" = ( -/obj/structure/sign/poster/official/twelve_gauge, -/turf/closed/wall/r_wall, -/area/ai_monitored/security/armory) "vpY" = ( /obj/structure/closet/lasertag/blue, /obj/item/clothing/under/pj/blue, /obj/item/clothing/under/pj/blue, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"vrM" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/item/twohanded/required/kirbyplants{ - icon_state = "plant-18" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) "vsM" = ( /obj/machinery/power/apc/auto_name/south, /obj/structure/cable, /turf/open/floor/carpet, /area/crew_quarters/cryopod) +"vsT" = ( +/obj/structure/closet/crate, +/obj/item/book/manual/wiki/telescience, +/obj/item/book/manual/wiki/engineering_guide, +/obj/item/book/manual/wiki/engineering_construction, +/obj/item/book/manual/wiki/atmospherics, +/obj/item/book/manual/wiki/detective, +/obj/item/book/manual/wiki/tcomms, +/obj/item/book/manual/wiki/engineering_singulo_tesla, +/obj/item/book/manual/wiki/experimentor, +/obj/item/book/manual/wiki/research_and_development, +/obj/item/book/manual/wiki/robotics_cyborgs, +/obj/item/book/manual/wiki/security_space_law, +/obj/item/book/manual/wiki/medicine, +/obj/item/book/manual/wiki/medical_cloning, +/obj/item/book/manual/wiki/infections, +/obj/item/book/manual/ripley_build_and_repair, +/obj/item/book/manual/hydroponics_pod_people, +/obj/item/book/manual/wiki/toxins, +/obj/item/book/manual/wiki/grenades, +/obj/item/book{ + desc = "An undeniably handy book."; + icon_state = "bookknock"; + name = "A Simpleton's Guide to Safe-cracking with Stethoscopes" + }, +/turf/open/floor/wood, +/area/library) "vxh" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ @@ -58518,23 +57830,10 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"vys" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/crew_quarters/fitness) +"vyp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/crew_quarters/dorms) "vzp" = ( /obj/structure/table/reinforced, /obj/machinery/firealarm{ @@ -58551,52 +57850,42 @@ }, /turf/open/floor/wood, /area/maintenance/bar) -"vzS" = ( -/obj/structure/table, -/obj/item/book/manual/hydroponics_pod_people{ - pixel_x = -4; - pixel_y = 5 +"vBa" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 }, -/obj/item/paper/guides/jobs/hydroponics{ - pixel_x = -5; - pixel_y = 3 +/obj/structure/cable{ + icon_state = "4-8" }, -/turf/open/floor/plasteel, -/area/hydroponics) +/turf/open/floor/plasteel/dark, +/area/bridge/meeting_room) "vCb" = ( /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plasteel, /area/hallway/secondary/service) -"vCm" = ( -/obj/structure/chair/comfy/black{ - dir = 4 +"vCn" = ( +/obj/structure/chair{ + dir = 8 }, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/button/door{ - id = "poolshutter"; - name = "Pool Shutters"; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) "vCt" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel/white, /area/science/circuit) -"vDq" = ( -/obj/effect/turf_decal/stripes/line, +"vCy" = ( +/obj/machinery/power/apc{ + areastring = "/area/maintenance/starboard/fore"; + dir = 1; + name = "Starboard Bow Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, /turf/open/floor/plating, -/area/space/nearstation) -"vFt" = ( -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) -"vGX" = ( +/area/maintenance/starboard/fore) +"vDR" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/structure/closet/secure_closet/personal/cabinet{ desc = "Swipe your ID on the closet to claim it. First come first serve, this one is wooden and fancy. Store your stuff here."; @@ -58605,6 +57894,38 @@ }, /turf/open/floor/wood, /area/crew_quarters/dorms) +"vEi" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"vEp" = ( +/obj/structure/sign/poster/contraband/lizard{ + pixel_x = -32 + }, +/obj/structure/sign/poster/contraband/lizard{ + pixel_x = -32 + }, +/obj/structure/sign/poster/contraband/lizard{ + pixel_x = -32 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"vFr" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) "vHj" = ( /obj/machinery/door/airlock/public/glass{ name = "Cryogenics " @@ -58615,111 +57936,311 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/crew_quarters/cryopod) -"vHv" = ( -/obj/structure/closet{ - name = "Costume Closet" - }, -/obj/item/clothing/head/russobluecamohat, -/obj/item/clothing/head/russobluecamohat, -/obj/item/clothing/head/russofurhat, -/obj/item/clothing/head/russofurhat, -/obj/item/clothing/head/russofurhat, -/obj/item/clothing/head/russofurhat, -/obj/item/clothing/under/mw2_russian_para, -/obj/item/clothing/under/mw2_russian_para, -/obj/item/clothing/under/mw2_russian_para, -/obj/item/clothing/under/mw2_russian_para, -/obj/item/clothing/shoes/jackboots, -/obj/item/clothing/shoes/jackboots, -/obj/item/clothing/shoes/jackboots, -/obj/item/clothing/shoes/jackboots, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"vHM" = ( -/obj/machinery/vr_sleeper{ +"vHz" = ( +/obj/structure/chair{ dir = 8 }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 1 +/obj/machinery/light/small{ + dir = 4; + light_color = "#d8b1b1" }, +/turf/open/floor/plasteel, /area/crew_quarters/fitness) +"vHT" = ( +/obj/machinery/door/firedoor, +/obj/structure/sign/departments/evac{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) "vHY" = ( /turf/open/floor/plating, /area/science/mixing) -"vLD" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, +"vIi" = ( /obj/structure/cable{ - icon_state = "4-8" + icon_state = "1-2" }, -/obj/machinery/light, -/obj/machinery/camera/motion{ - c_tag = "Vault"; - dir = 1; - network = list("vault") +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/nuke_storage) -"vNa" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"vNh" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ +/turf/open/floor/plasteel, +/area/security/prison) +"vJu" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ dir = 8 }, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) -"vOq" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance, -/obj/item/coin/gold, -/obj/item/coin/gold, -/obj/item/coin/gold, -/turf/open/floor/plating, -/area/maintenance/starboard/aft) +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"vPs" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/space, +/area/solar/starboard/aft) "vPE" = ( /obj/machinery/light{ dir = 4 }, /turf/open/floor/plasteel/white, /area/science/circuit) -"vRr" = ( -/obj/effect/turf_decal/stripes/line{ +"vZA" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/space, +/area/solar/starboard/aft) +"vZR" = ( +/obj/structure/chair/comfy/brown{ + dir = 1 + }, +/turf/open/floor/wood, +/area/library) +"wbE" = ( +/obj/effect/turf_decal/tile/blue{ + alpha = 255 + }, +/obj/effect/turf_decal/tile/blue{ dir = 4 }, -/obj/machinery/door/window/westleft{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Shooting Range" +/obj/effect/turf_decal/tile/blue{ + alpha = 255; + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"wcB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/captain) +"wdv" = ( +/obj/structure/fans/tiny/invisible, +/turf/open/space/basic, +/area/space) +"weM" = ( +/obj/structure/girder, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"wfR" = ( +/obj/item/electropack/shockcollar, +/obj/item/assembly/signaler, +/turf/open/floor/plating, +/area/maintenance/bar) +"wig" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + on = 0; + pixel_x = -7; + pixel_y = 12 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/turf/open/floor/carpet, +/area/crew_quarters/dorms) +"wkN" = ( +/turf/closed/wall, +/area/science/circuit) +"woR" = ( +/obj/machinery/cryopod{ + dir = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/cryopod) +"wph" = ( +/obj/docking_port/stationary{ + area_type = /area/construction/mining/aux_base; + dheight = 4; + dir = 8; + dwidth = 4; + height = 9; + id = "aux_base_zone"; + name = "aux base zone"; + roundstart_template = /datum/map_template/shuttle/aux_base/default; + width = 9 }, /turf/open/floor/plating, -/area/security/prison) -"vRX" = ( -/obj/machinery/power/apc{ - areastring = "/area/security/detectives_office"; - dir = 4; - name = "Detective's Office APC"; - pixel_x = 24 +/area/construction/mining/aux_base) +"wql" = ( +/obj/structure/extinguisher_cabinet, +/turf/closed/wall/r_wall, +/area/hallway/primary/central) +"wqF" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"wrp" = ( +/obj/machinery/light{ + dir = 8 }, /obj/structure/cable{ - icon_state = "0-8" + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/service) +"wvX" = ( +/obj/structure/table/reinforced, +/obj/machinery/light, +/obj/item/stack/sheet/metal/ten, +/turf/open/floor/plasteel/white, +/area/science/circuit) +"wxT" = ( +/obj/structure/chair/sofa/left, +/obj/structure/window{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"wBd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/hallway/secondary/service) +"wHz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) +"wIG" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red, +/turf/open/floor/plasteel, +/area/security/brig) +"wKe" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "maintdiy"; + name = "Security Shutters" }, -/turf/open/floor/plasteel/grimy, -/area/security/detectives_office) -"vUR" = ( -/obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"wTf" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"wUg" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -22 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"wUr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"wUY" = ( +/obj/structure/table, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/obj/item/hand_labeler, +/turf/open/floor/plasteel, +/area/hallway/secondary/service) +"wWT" = ( +/obj/effect/landmark/start/roboticist, +/turf/open/floor/plasteel/white, +/area/science/robotics/lab) +"wXl" = ( +/obj/structure/mirror{ + pixel_y = 32 + }, +/obj/structure/sink{ + dir = 1; + pixel_y = 25 + }, +/obj/structure/toilet{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/dorms) +"wYc" = ( +/obj/machinery/vr_sleeper{ + dir = 8 + }, +/turf/open/floor/plasteel, /area/security/prison) -"vVP" = ( +"wZI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/captain) +"xbn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/obj/structure/table, +/obj/item/coin/gold, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"xfS" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/machinery/computer/shuttle/mining/common{ + dir = 4 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/secondary/entry) +"xgk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"xgC" = ( /obj/structure/cable{ icon_state = "0-4" }, @@ -58745,398 +58266,22 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"vVQ" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"vWw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plasteel, -/area/security/prison) -"vYa" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) -"vZs" = ( -/obj/structure/lattice, -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"wbh" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"wcf" = ( -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"wcy" = ( -/obj/structure/reagent_dispensers/water_cooler, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"wdj" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"wem" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) -"wfR" = ( -/obj/item/electropack/shockcollar, -/obj/item/assembly/signaler, -/turf/open/floor/plating, -/area/maintenance/bar) -"wgb" = ( -/obj/structure/falsewall, -/turf/open/floor/plating, -/area/security/prison) -"wkN" = ( -/turf/closed/wall, -/area/science/circuit) -"wnD" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"wnN" = ( -/obj/structure/pool/Lboard, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"woR" = ( -/obj/machinery/cryopod{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/crew_quarters/cryopod) -"woX" = ( -/obj/machinery/door/window/southright{ - name = "Target Storage" - }, -/obj/item/target/alien, -/obj/item/target/alien, -/obj/item/target/syndicate, -/turf/open/floor/plating, -/area/security/prison) -"wph" = ( -/obj/docking_port/stationary{ - area_type = /area/construction/mining/aux_base; - dheight = 4; - dir = 8; - dwidth = 4; - height = 9; - id = "aux_base_zone"; - name = "aux base zone"; - roundstart_template = /datum/map_template/shuttle/aux_base/default; - width = 9 - }, -/turf/open/floor/plating, -/area/construction/mining/aux_base) -"wpo" = ( -/obj/machinery/camera{ - c_tag = "Bar West"; - dir = 4 - }, -/obj/machinery/computer/arcade/orion_trail, -/obj/structure/sign/poster/official/foam_force_ad{ - pixel_x = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"wrp" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/service) -"wuB" = ( -/obj/structure/chair/comfy/brown{ - dir = 1 - }, -/turf/open/floor/wood, -/area/library) -"wvX" = ( -/obj/structure/table/reinforced, -/obj/machinery/light, -/obj/item/stack/sheet/metal/ten, -/turf/open/floor/plasteel/white, -/area/science/circuit) -"wwn" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"wwB" = ( -/turf/closed/wall/r_wall, -/area/hallway/primary/central) -"wwC" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/structure/mirror{ - pixel_x = 25 - }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/toilet) -"wyM" = ( -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"wAB" = ( -/obj/structure/chair/office/light, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = -24 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"wBd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/hallway/secondary/service) -"wCa" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "holoprivacy"; - name = "Holodeck Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness) -"wDR" = ( -/obj/structure/sign/poster/official/help_others{ - pixel_y = -32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"wEp" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/preopen{ - id = "bridge blast"; - name = "bridge blast door" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"wFk" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel, -/area/security/prison) -"wFX" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Holodeck Door" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/fitness) -"wGP" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/crew_quarters/dorms) -"wHz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/closed/wall/r_wall, -/area/maintenance/disposal/incinerator) -"wIZ" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"wJz" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"wLT" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/closed/wall, -/area/maintenance/port) -"wNM" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"wOT" = ( -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plasteel, -/area/hydroponics) -"wSE" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"wUY" = ( -/obj/structure/table, -/obj/item/stack/packageWrap, -/obj/item/stack/packageWrap, -/obj/item/hand_labeler, -/turf/open/floor/plasteel, -/area/hallway/secondary/service) -"wVs" = ( -/obj/structure/table/wood, -/obj/item/instrument/trumpet, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"wWh" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"wXP" = ( -/obj/machinery/button/door{ - id = "maintdiy"; - name = "Shutters Control Button"; - pixel_x = -6; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"wYa" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"wZB" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"xbu" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"xcg" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating, -/area/space/nearstation) -"xdb" = ( -/obj/structure/closet, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 8; - name = "8maintenance loot spawner" - }, -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) -"xdx" = ( -/obj/machinery/pool/drain, -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"xdV" = ( -/obj/machinery/door/airlock{ - name = "Theatre Backstage"; - req_access_txt = "46" - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "xgF" = ( /obj/structure/chair/stool/bar, /turf/open/floor/wood{ icon_state = "wood-broken5" }, /area/maintenance/bar) -"xhx" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, +"xhS" = ( /obj/structure/cable{ icon_state = "2-4" }, -/turf/open/floor/wood, -/area/bridge/meeting_room) +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) "xhV" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -59146,6 +58291,14 @@ }, /turf/open/floor/plating, /area/construction) +"xib" = ( +/obj/machinery/door/window/westleft{ + base_state = "right"; + icon_state = "right"; + name = "Unisex Showers" + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) "xiw" = ( /obj/machinery/door/airlock{ name = "Service Hall"; @@ -59157,205 +58310,310 @@ }, /turf/open/floor/plating, /area/hallway/secondary/service) -"xkk" = ( -/obj/structure/piano, -/obj/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"xlN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ +"xkd" = ( +/obj/machinery/light/small{ + dir = 4; + light_color = "#d8b1b1" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"xls" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/security/prison) +"xmo" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/structure/disposalpipe/segment{ +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"xmS" = ( +/obj/structure/chair/comfy/beige{ + dir = 8 + }, +/obj/effect/landmark/start/assistant, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"xqG" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/item/reagent_containers/food/drinks/soda_cans/starkist{ + pixel_x = -3; + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/bar) +"xrN" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/crew_quarters/dorms) +"xtP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"xxi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, -/area/maintenance/port/aft) -"xpx" = ( -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ +/area/maintenance/fore) +"xzd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/structure/chair/sofa, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/obj/effect/landmark/start/assistant, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"xqW" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/preopen{ - id = "Secure Gate"; - name = "brig shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/security/brig) -"xvc" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"xvz" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/yellow, +"xzj" = ( /obj/machinery/light{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "poolshutter"; - name = "Pool Shutters"; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 4 + dir = 1; + light_color = "#d1dfff" }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"xzh" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/area/hallway/primary/fore) +"xAk" = ( +/obj/structure/chair/stool{ + pixel_y = 8 }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, -/area/space/nearstation) -"xzy" = ( -/obj/effect/turf_decal/stripes/corner{ +/area/maintenance/starboard/fore) +"xAv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel, -/area/hydroponics) -"xDJ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +/area/crew_quarters/dorms) +"xBk" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 23 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/toilet) +"xBw" = ( +/obj/structure/closet/wardrobe/cargotech, +/obj/item/radio/headset/headset_cargo, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"xDM" = ( +/obj/machinery/camera{ + c_tag = "Locker Room South"; + dir = 8 + }, +/obj/structure/closet/secure_closet/personal, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) "xEu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) -"xGC" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) +"xEB" = ( +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/nuke_storage"; + dir = 1; + name = "Vault APC"; + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"xEE" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/obj/machinery/vending/wardrobe/curator_wardrobe, +/turf/open/floor/carpet, +/area/library) "xIa" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"xIn" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) -"xIN" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"xLZ" = ( -/obj/structure/closet/radiation, -/turf/open/floor/plasteel, -/area/engine/gravity_generator) -"xMl" = ( -/obj/structure/chair/sofa{ - dir = 1 - }, -/obj/structure/window, -/turf/open/floor/wood, -/area/crew_quarters/bar) -"xNY" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 1 +"xLX" = ( +/obj/structure/lattice/catwalk, +/obj/item/stack/marker_beacon{ + anchored = 1; + icon_state = "markerburgundy-on"; + light_color = "#FA644B"; + light_power = 3; + light_range = 3; + name = "Docking Beacon"; + picked_color = "Burgundy" }, /turf/open/space/basic, /area/space/nearstation) -"xPg" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "poolshutter"; - name = "Pool Shutters" - }, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) -"xSt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/blue{ - dir = 8 +"xOx" = ( +/obj/structure/chair/comfy/brown{ + color = "#596479"; + dir = 1 }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"xTm" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"xXY" = ( +/area/security/prison) +"xPk" = ( +/obj/structure/bed, +/obj/machinery/button/door{ + id = "Dorm6"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + pixel_y = -25; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/effect/spawner/lootdrop/bedsheet, +/turf/open/floor/wood, +/area/crew_quarters/dorms) +"xPY" = ( +/obj/structure/table/wood, +/obj/machinery/light{ + dir = 4 + }, +/obj/item/instrument/trombone, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"xQG" = ( +/obj/machinery/door/airlock/external{ + name = "Common Mining Shuttle Bay" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"xTy" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"xUe" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/security/prison) +"xUL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light, +/obj/machinery/camera/motion{ + c_tag = "Vault"; + dir = 1; + network = list("vault") + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"xXi" = ( +/obj/machinery/vending/clothing, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"xZD" = ( /obj/structure/closet/lasertag/red, /obj/item/clothing/under/pj/red, /obj/item/clothing/under/pj/red, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"xYO" = ( -/obj/structure/sign/poster/contraband/red_rum{ +"ybj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating, +/area/security/prison) +"ycd" = ( +/obj/structure/toilet{ + dir = 4 + }, +/obj/structure/mirror{ pixel_y = 32 }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) +/obj/structure/sink{ + dir = 1; + pixel_y = 25 + }, +/obj/machinery/button/door{ + id = "LockerShitter2"; + name = "Door Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 14; + pixel_y = 38; + specialfunctions = 4 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/crew_quarters/toilet/locker) "ycu" = ( /obj/structure/cable{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/science/circuit) -"ycF" = ( -/obj/machinery/door/airlock/external{ - name = "Common Mining Shuttle Bay" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/secondary/entry) "ydD" = ( /obj/effect/turf_decal/bot, /obj/machinery/suit_storage_unit/rd, /turf/open/floor/plasteel, /area/science/mixing) -"yiN" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/starboard) -"yjr" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"yle" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) +"yhz" = ( +/obj/structure/table, +/obj/item/folder/blue, +/turf/open/floor/plasteel/dark, +/area/hallway/primary/central) +"yiY" = ( +/obj/structure/sign/poster/official/ion_rifle, +/turf/closed/wall/r_wall, +/area/ai_monitored/security/armory) (1,1,1) = {" aaa @@ -65377,11 +64635,11 @@ aaa aaa aaa aaa -aaK +ghq aaa aaa aaa -aaK +ghq aaa aaa aaa @@ -65394,7 +64652,7 @@ aaa aaa aaa aaa -hoo +gDl aaa aaa aaa @@ -65628,9 +64886,9 @@ aaa aaa aaa aaa -aaK +ghq aaa -aaK +ghq aaa aaa aaa @@ -65642,9 +64900,9 @@ gXs aaa aaa aaa -aaK +ghq aaa -aaK +ghq aaa aaa aaa @@ -65891,11 +65149,11 @@ gXs aaa aaa gXs -jmC +gJi gXs gXs gXs -jmC +gJi gXs aaa aaa @@ -66141,11 +65399,11 @@ aaa aaa aaa aaa -jmC -jmC +gJi +gJi gXs aag -jmC +gJi gXs gXs aaa @@ -66155,11 +65413,11 @@ aaa aaa gXs gXs -jmC -jmC -klu +gJi +gJi +haL aag -jmC +gJi aaa aaa aaa @@ -66398,11 +65656,11 @@ aaa aaa aaa aaa -xcg -lLt +gIU +shR aaa -lLt -jNo +shR +hse gXs aoV aaa @@ -66412,11 +65670,11 @@ aaa aaa aaa gXs -xcg -lLt +gIU +shR aaa -lLt -jNo +shR +hse aaa aaa aaa @@ -66655,11 +65913,11 @@ aaa aaa aaa aaa -xzh +bvG aaa cpe aaa -vDq +oyN aaa aaa aaa @@ -66669,11 +65927,11 @@ aaa aaa aaa aaa -xzh +bvG aaa cwV aaa -vDq +oyN aaa aaa aaa @@ -66911,7 +66169,7 @@ aaa aaa aaa aae -lCL +ktS gXs aaa aaa @@ -67168,7 +66426,7 @@ aaa aaa aaa aaa -lCL +ktS gXs aaa aaa @@ -67425,7 +66683,7 @@ aaa aaa aaa aaa -lCL +ktS gXs aaa aaa @@ -67682,7 +66940,7 @@ aaa aaa aaa aaa -lCL +ktS gXs aaa cqq @@ -67709,7 +66967,7 @@ aaa aaa aoV aaa -rHa +iDS aaa aaa aoV @@ -67939,7 +67197,7 @@ aaf aaf aaf aaa -lCL +ktS arB asE cyb @@ -67966,7 +67224,7 @@ aaa aaa asE asE -ycF +nGI asE asE aoV @@ -68226,7 +67484,7 @@ awW auP awW aaf -vZs +kls aaa aaa aaa @@ -68480,7 +67738,7 @@ aaa aaa arB arB -jnX +xQG asE aAC aaf @@ -68712,7 +67970,7 @@ apN apN apN apJ -iyC +fpI ayk awW aAD @@ -68736,7 +67994,7 @@ aaa aaa aaa arB -est +xfS ayk awW aAD @@ -70012,7 +69270,7 @@ aaa awW aOh ayl -tTW +jHh aRY awW aaa @@ -71308,7 +70566,7 @@ awW arB awZ aym -vrM +fOI awW aaf aaa @@ -72589,7 +71847,7 @@ aUO aUy aWm aWf -ohX +vdu czK bhN bcl @@ -73607,7 +72865,7 @@ aHy ayl aKk aLA -dTe +xmS aNf aLA aQD @@ -75633,7 +74891,7 @@ ady ady ady ady -rKc +uDO ajq ajW akB @@ -75677,7 +74935,7 @@ aXQ aXQ aPz aPz -rFc +epC aPz bhQ bjj @@ -75931,11 +75189,11 @@ aPA aXQ aZt aXQ -gdu +ycd aPz -kJY -ihC -oMY +omY +cMS +gQX bhQ bjj bkF @@ -76191,10 +75449,10 @@ aXQ bbL aPz bdJ -gFD +txm bgr -nQr -tUm +iwB +hew bkF aaa aaa @@ -76449,7 +75707,7 @@ aZw aPz bct bfa -vdH +gfr bhQ bjk bkE @@ -76704,10 +75962,10 @@ baO aZo baw aPz -cwP +hPs cBn bgs -wLT +hnl bjk bkF aaa @@ -77008,7 +76266,7 @@ ccb ccb ccb aaa -snG +qJr aaa ccb ccb @@ -77203,7 +76461,7 @@ bxk aDo aDo aIX -nIE +gCC aLE aLE aOp @@ -77217,7 +76475,7 @@ aQN aQN aQN aQN -kWI +vhb bbO aPA bgt @@ -77265,7 +76523,7 @@ aaa aaf aaa aaa -kKw +hrF aaa aaa aaf @@ -77280,7 +76538,7 @@ aaa aaa aaa aaa -hoo +gDl aaa aaa aaa @@ -77469,7 +76727,7 @@ aQN aQN aTz aUp -job +ubj aXr aZx aQN @@ -77522,7 +76780,7 @@ aaf aaf aaf aaf -kKw +hrF aaf aaf aaf @@ -77731,7 +76989,7 @@ aXv aYS aQN aQN -kWI +vhb bbO aPA aSg @@ -77974,18 +77232,18 @@ aDo aDo aDo aIY -nIE +gCC aLE aLE aOl aPA -lhg +pqs aQN aTC aUs -phY +mTG aXt -ksn +ijG aQN aQN aPA @@ -78240,9 +77498,9 @@ aQV aQN aTC aUu -eRk +gxc aXt -ksn +ijG aQN aQN aZB @@ -78495,11 +77753,11 @@ aOl aPA aQU aQN -hzw -qlr -pPE +nLw +sLa +oyl aXw -jiR +qfk aQN aQN aZA @@ -79007,10 +78265,10 @@ aLm aLE aOl aPA -xIn +vJu aQN aTD -mIS +ocv aUZ aYU aYU @@ -79251,14 +78509,14 @@ aaf avY axo arP -fLd -cRD +fgG +rqW aGD -tru +tJi aCr -qBc -iFL -qBc +hcb +qTG +hcb aKu aLM aLF @@ -79268,14 +78526,14 @@ aPG aPG aPG aPG -jsy +lip aQW aQW aQW aQW -cVu +xDM aPA -oBp +jxF aYb aZE bjp @@ -79508,14 +78766,14 @@ aaa avY axo arP -qwe -ioB +rPU +fne aGr aHI -xdV -ePO -phu -qBc +fOA +tWj +oyz +hcb aKu aLL bDe @@ -79766,13 +79024,13 @@ avY axo arP aCh -qQJ -iYz +pIf +kCo aHK aCr -tUw -mqa -qBc +uJx +ikk +hcb aKu aLN aLE @@ -79786,13 +79044,13 @@ aWu aYc aZD aZD -uhm +vnI aZD aZD bff -iRJ +dev aZE -fyM +xBw bjr ama bmh @@ -79851,18 +79109,18 @@ bLv bLv bLv aaa -prP -prP -prP -prP -prP -prP -prP -prP -prP +iDo +iDo +iDo +iDo +iDo +iDo +iDo +iDo +iDo aaa aaa -hoo +gDl aaa aaa aaa @@ -80023,13 +79281,13 @@ avZ axp ayC azH -wyM +eEe aGv aCr aCr -tUw -mqa -qBc +uJx +ikk +hcb aKu aLN aLE @@ -80040,7 +79298,7 @@ aRa aTF aPG aSX -eRn +hPP aZF aZF aZF @@ -80108,7 +79366,7 @@ cqK crl bLv aaa -prP +iDo ctv ctv ctv @@ -80116,7 +79374,7 @@ ctv ctv ctv ctv -prP +iDo aaa aaa aaa @@ -80277,14 +79535,14 @@ aGh aqR aqR awb -eLH +xtP ayA -fHK -hRX +sNK +xmo aBV -pNH -sfa -ioX +mzB +mJG +szG aHG aJe aKw @@ -80365,15 +79623,15 @@ cAQ crm bLv aaa -prP -prP -prP -prP -prP -prP -prP -prP -prP +iDo +iDo +iDo +iDo +iDo +iDo +iDo +iDo +iDo aaa aaa aaa @@ -80537,13 +79795,13 @@ awa axq ayD azI -gwi +rjQ aBU -xkk -upX -qJZ -doP -qBc +myh +inR +wUr +iTq +hcb aKu aLN aMQ @@ -80590,7 +79848,7 @@ aoV bCq bHE bHE -puG +mPr cdb bCq bVE @@ -80632,9 +79890,9 @@ gXs aaa aaa aaa -prP -prP -prP +iDo +iDo +iDo aaa aaa aaa @@ -80791,16 +80049,16 @@ aaa aaa aag avY -jLM +xxi ayD -oeJ +cGz aMr -qOf +ngs aDv -lwp -tUw -jly -qBc +uRS +uJx +dsC +hcb aKu aLN aMS @@ -80889,9 +80147,9 @@ gXs aaa aaa aaa -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -81048,21 +80306,21 @@ aaa aaa aag avY -jLM +xxi ayD -wVs +viF aMr aMr aOH -lwp -vNh -qHB -qBc +uRS +lSa +oTW +hcb aKu aLN aMS aOi -sqa +lPr aPK aSl aTH @@ -81117,7 +80375,7 @@ mrR dKP odx rBq -ouD +kQO bCq bUs bLv @@ -81136,19 +80394,19 @@ aaf aaa aaf gXs -sYv +gUu crn bij bij bij bij bij -hWn +jkz btG aaa -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -81307,14 +80565,14 @@ aag avY axs ayD -sjm -eNK -iEx +nez +ngV +xPY aOH -qBc -qBc -tAV -qBc +hcb +hcb +syJ +hcb aKu aLN aMS @@ -81344,7 +80602,7 @@ bbR btu bbR bOL -fnJ +qje byF bwW bGm @@ -81386,26 +80644,26 @@ cjJ cjJ cjJ cjJ -gVX -reZ -reZ +kfX +saU +saU bij crn bij bij -sZR -ued +eCR +wUg bnT bph bsc -fhP +mQS bsc -eXm +tNF btG gXs -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -81646,12 +80904,12 @@ cov cpj cpS cjJ -xLZ -ivF +fjS +sPT btG -wAB -vVP -mwO +rXl +xgC +ugu bnV bph bih @@ -81660,9 +80918,9 @@ bii bsc btG aaa -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -81838,8 +81096,8 @@ aPK aSn aTK aPK -vRX -hwu +uoG +sOA asW baW bLE @@ -81857,7 +81115,7 @@ bpB bpB brR bsV -aaM +bwc bxA bvI bwX @@ -81902,14 +81160,14 @@ cnN cox cpl cpU -ipc -edH -edH -nWq -edH -wZB -fby -qwB +jLn +xTy +xTy +tJK +xTy +vob +xhS +mOB bph big bgN @@ -81917,9 +81175,9 @@ bkZ bsc btG aaa -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -82056,7 +81314,7 @@ aaa acd acd acd -jHM +xUe acd acd aaa @@ -82100,7 +81358,7 @@ aYi aqW aqW bbQ -qpA +uFp apd aZH aZK @@ -82160,12 +81418,12 @@ cow cpk cpT cjJ -xLZ -oNQ +fjS +dXq btG -sZa -jhF -qmM +rtl +oqO +vFr bnV bph bii @@ -82174,9 +81432,9 @@ bih bsc btG aaa -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -82311,10 +81569,10 @@ abc abc afu abc -suI -qMu -kJr -dxB +itQ +pgn +tmO +eHU acd aaa aaa @@ -82415,25 +81673,25 @@ clG cnP coz cpn -dbn -dbn +sPY +sPY bgO -hjw +dgO bgO -nTE -pTn -jnm +pPI +uRd +ktP bnW bph bsc -mQR +mkv bsc -wNM +jFH btG gXs -prP +iDo ctv -prP +iDo aaa aaa aaa @@ -82568,11 +81826,11 @@ aea aeH aft abc -woX -kdm -rvZ -vUR -jHM +dly +mnC +mcp +xls +xUe aaa aaa aiU @@ -82678,19 +81936,19 @@ aaf aaa aaa gXs -gtL +iHk bgO bgO bgO bgO bgO bgO -vgp +jBA btG aaa -gSH +kvl ctv -prP +iDo aaa aaa aaa @@ -82814,7 +82072,7 @@ aaa aaa gXs gXs -dbM +dVU abc abu abu @@ -82826,10 +82084,10 @@ aeJ afw abc abc -kdm +mnC aay -vUR -qlF +xls +kMt aaf aaf aiU @@ -82897,7 +82155,7 @@ bCq bHD bJe bCq -czi +nkP bHE bHE bHE @@ -82945,7 +82203,7 @@ aaa aaa aaa aaa -prP +iDo ctv aaT aaa @@ -83083,9 +82341,9 @@ aeI afv agf abc -kdm +mnC aay -vUR +xls aiT aiT aiV @@ -83118,7 +82376,7 @@ aKA aLN aMS aOz -iMG +exP aPQ aSa aSr @@ -83128,7 +82386,7 @@ aYZ bLE aqW aqW -hfe +noy apd beA bqp @@ -83136,7 +82394,7 @@ cNG cNJ bLF aZK -haz +sRH bbR bqt cBq @@ -83202,8 +82460,8 @@ aaa aaa aaa aaa -prP -prP +iDo +iDo aaT aaa aaa @@ -83327,8 +82585,8 @@ aaa aaa aaa aai -jSa -uVt +eqd +kgr abe abw acc @@ -83340,9 +82598,9 @@ aeL afy agh abc -tOd -vRr -tLl +hnU +vda +ybj aiT ajs akb @@ -83584,7 +82842,7 @@ aaa aaa gXs aai -gIO +gbu aay abd abv @@ -83597,9 +82855,9 @@ aeK afx agg abc -orw -jMK -riA +dCV +idK +ttX aiU ajr aka @@ -83842,9 +83100,9 @@ aaf aaf aai acd -wgb +mIZ abg -jtU +enB aby aby aby @@ -83854,10 +83112,10 @@ aeN afA afA abc -vWw -wFk -oXL -cXx +laq +kdP +mGw +jls aju akd akK @@ -83924,14 +83182,14 @@ bCn bGq bGq bGq -tdF +rGq bLw bGq bGq bGq bLw bGq -tdF +rGq bTD bUx bVI @@ -83946,7 +83204,7 @@ bVI bVI bVI bTA -xlN +xgk bHE bHE bHE @@ -83979,7 +83237,7 @@ aaa aaa aaa aaa -hvS +kEY aaa aaa aaa @@ -84100,7 +83358,7 @@ aai aai abf aat -tHx +jRw abx acd acC @@ -84109,12 +83367,12 @@ adF aef aeM afz -jSD +dLG aav -sjT -pLt -pQr -new +vIi +fsj +mPt +lyR ajt akc akJ @@ -84427,7 +83685,7 @@ bqw aJq aJq aYl -ppY +fAj aLX aJq aJq @@ -84611,7 +83869,7 @@ aai aan aaw aaB -kfE +qmn aaJ aat abh @@ -84866,7 +84124,7 @@ aag aaa aak aap -fuo +saX aaD aau aat @@ -84941,7 +84199,7 @@ bqy cBr bqy buK -pNI +tZe aJw aJq aJq @@ -84973,7 +84231,7 @@ bWB bWB cec bVI -iOt +kNv ccw chY ciX @@ -85380,7 +84638,7 @@ aag aaa aal aar -phH +uGI aaF aat aat @@ -85459,7 +84717,7 @@ bwi bmr aMm aJq -otF +vEi bCs bCs bEY @@ -85637,12 +84895,12 @@ aag aaf aaj aaq -eOy +dyS aaE aat aaN aaV -rtT +rvS aat acd abL @@ -85721,7 +84979,7 @@ bCs bDv bEX bFb -hKF +kfv bFa bKt bLx @@ -85897,9 +85155,9 @@ aat aat aat aat -jeR -neC -jgv +qXg +jjC +xOx abD acd acd @@ -85917,9 +85175,9 @@ agj auj akl akO -uko -uko -xqW +fde +fde +seP anw anz aox @@ -86155,7 +85413,7 @@ aat aat aat aat -hRz +uEI aat abC acd @@ -86199,7 +85457,7 @@ aGq aHO aJl ayW -neb +ftE aJq aOE aJn @@ -86212,7 +85470,7 @@ aYq aZO aZC baK -qBe +rnt bbC bdI bgK @@ -86469,10 +85727,10 @@ aYs aZQ bbi bde -nLf +kvL bcd bcd -xhx +gNC bcd bcd bcd @@ -86664,14 +85922,14 @@ aaa aag aaf aai -cMk -cMk +wYc +wYc aaG -cMk +wYc aaP aaX -unu -lwY +keM +xib acd acD acY @@ -86727,7 +85985,7 @@ aZP bbh bcc bdd -gjf +cVs bfr bgM bif @@ -86945,9 +86203,9 @@ aiz ajg akl akR -uko -uko -xqW +fde +fde +seP anz anz aov @@ -86986,19 +86244,19 @@ bbk bfu bbk bfs -pUl +rTu aZM aZM aaf aaf -lCL +ktS aaf -lCL +ktS aaf -lCL +ktS aaf -lCL -wwB +ktS +fxV aXf aJq bBi @@ -87185,7 +86443,7 @@ aaa aaf aai abi -vdz +eqA ach acK adf @@ -87243,19 +86501,19 @@ bce bdf beb aYv -kTz -kDD +cUx +fcn aaf aaf -lCL -lCL +ktS +ktS aaf -wwB -wwB -wwB -wwB -wwB -wwB +fxV +fxV +fxV +fxV +fxV +fxV aXf aJq byU @@ -87500,19 +86758,19 @@ aZR bbm bec bfu -sdL +vBa aBa aBa aBa aBa aBa aBa -wwB +fxV bsb -lTq -tMS -eND -wEp +yhz +ouQ +cQT +nbT aXf aJq bBi @@ -87706,7 +86964,7 @@ cpg acv adi adi -pQD +yiY aeW agQ ahv @@ -87723,7 +86981,7 @@ anz anz aov aph -oOb +cIv ard ard ard @@ -87757,7 +87015,7 @@ aZR aZR aZR bft -srq +psk aBa aBT aDs @@ -87766,13 +87024,13 @@ aGb aBa bqD bsa -oeQ +vCn bsa bsa -wEp +nbT byS aJq -idX +wTf bCs bCs bCs @@ -87963,7 +87221,7 @@ acl cxA acL adi -vpz +pfm agp agT ahx @@ -87973,12 +87231,12 @@ ajc ajI akl akT -fGl -uko -xqW +unW +fde +seP anw anz -lYU +old apk anw anw @@ -87989,7 +87247,7 @@ avj awl axC ayY -uZM +cpF azZ azZ azZ @@ -88014,16 +87272,16 @@ bbm bdh bee bfv -vLD +xUL aBb -cSn +gpD aDr aEM aGa aHF bqF bsa -nmx +nXE buQ buQ bxI @@ -88093,7 +87351,7 @@ cgI cgI cgI aaa -hoo +gDl aaa aaa aaa @@ -88271,13 +87529,13 @@ bcf bdg bed bfv -kvZ -fGC -qvM +tyX +pst +cTT alu aEM aGd -nMx +uOJ bqE bqE bqE @@ -88503,7 +87761,7 @@ avk awk axE ayZ -ncj +pHO aBu aAa aAa @@ -88528,18 +87786,18 @@ bbm bdh bef bfv -smn +gTx aBc -jXg +xEB aDt aEO aGc aHF aKG bsf -kxc -kxc -kxc +dml +dml +dml bxK bwh bAh @@ -88749,7 +88007,7 @@ aml amT anw anz -ilJ +cXU apl aqc aqc @@ -88785,19 +88043,19 @@ aZR aZR aZR bfw -rzg +wZI aBa aBW bjy aEP -nOS +nYe aBa bqG bsa -jDY +eih bsa bsa -wEp +nbT bwb aJq bBr @@ -89006,7 +88264,7 @@ amn amV anw anz -rsX +gfC aod aqf ahT @@ -89042,19 +88300,19 @@ aZR bbm beh bfx -spX +qcm aBa aBa aBa aBa aBa aBa -mte +wql bsg -lTq -tMS -fZD -wEp +yhz +ouQ +fTC +nbT aJq aJq bBu @@ -89299,19 +88557,19 @@ bcg aZU beg aYB -ptV -fjy +qOB +qBi aaf aaf -lCL -lCL +ktS +ktS aaf -wwB -wwB -wwB -wwB -wwB -wwB +fxV +fxV +fxV +fxV +fxV +fxV aJq aJq bBt @@ -89516,9 +88774,9 @@ ajJ akr akX alC -iqw +wIG amX -elw +spu anz aoB aod @@ -89556,19 +88814,19 @@ bbp bfx bbp bfz -tAb +sqp aZV aZV aaf aaf -lCL +ktS aaf -lCL +ktS aaf -lCL +ktS aaf -lCL -wwB +ktS +fxV aJq aJq aXf @@ -89775,9 +89033,9 @@ akW aiG amo amW -uYE +uaj anz -rsX +gfC aod aqe arf @@ -89828,7 +89086,7 @@ bsh bqH aJq aJq -unY +gnf bCv bDJ bCt @@ -90067,7 +89325,7 @@ aYD aZX baf bdk -jwi +mRQ bek bfB bgU @@ -90310,7 +89568,7 @@ vHj eVC dgz aJv -ioG +khV aMg bHt aOE @@ -90540,13 +89798,13 @@ ahC aia aiP aiR -olv +coi akv ala aww afM aiX -uVq +xzj anz aoF apo @@ -90557,8 +89815,8 @@ atj aul auR atj -kcj -ghJ +mps +tKk atj aAX azc @@ -90581,7 +89839,7 @@ aPR aZV baq baQ -dTJ +wcB bcQ bfC bgV @@ -90817,8 +90075,8 @@ avt axL bbl azT -nlt -dwc +nZE +ker aDG aFd auk @@ -90871,7 +90129,7 @@ bOV bQj bRw bSF -gVY +daI bTP bRA bWQ @@ -91070,11 +90328,11 @@ arf arf arf arf -ukP -oma +ltK +xAv awr awr -wwn +ruo aAh aAh aAh @@ -91111,7 +90369,7 @@ btL buY buY bqH -neb +ftE aJq aXf bCv @@ -91128,7 +90386,7 @@ bOV bQo bRz bSH -cJn +plm bTP bRA bWQ @@ -91331,7 +90589,7 @@ avv awu awr aAd -uDW +tkq aAh aDL aAh @@ -91385,7 +90643,7 @@ bOV bQj bRy bSG -gVY +daI bUK bVT bWR @@ -91588,7 +90846,7 @@ awp axN awr awr -kSh +haM aAh aDQ aAh @@ -91596,7 +90854,7 @@ aGl aAh aBy aAh -pTR +rqf aJq aOE aJn @@ -91609,7 +90867,7 @@ aYF aZV bbw bcn -qUm +tgH ben bfE bgX @@ -91839,13 +91097,13 @@ aqe arf ari asu -kyi +mPk aun avR -oma -dHb +xAv +ofU awr -uya +sFW aAh aDM aGx @@ -92098,18 +91356,18 @@ arf arf arf arf -ukP +ltK axP azb aAi -wGP +uIO aCn -rOm -wwC +xBk +dtx aGm aHV aDM -nrR +hIM aJq aJq aJq @@ -92140,9 +91398,9 @@ bva bwu bwu bwu -ihm +kPj bBB -rhb +eBX bzs bFp bGJ @@ -92358,8 +91616,8 @@ arf awq axO aza -jtk -pqR +kmw +xrN aAh aAh aAh @@ -92608,7 +91866,7 @@ ajo aps aqk arf -vGX +vDR blU aHw avn @@ -92616,14 +91874,14 @@ awv axX aze awr -hMx +flE aAh aDU aBz aBz aAh -isy -uzk +dTI +ujv aJq aJq aJq @@ -92867,7 +92125,7 @@ aqj arf ark asu -epV +xPk aun awt awr @@ -92876,10 +92134,10 @@ azX aAZ aCe aDT -mEN -mEN -dzy -fyq +cPn +cPn +mkO +uQS aAh aJC aJC @@ -93136,18 +92394,18 @@ aDP aBx aBx aAh -kCk -qIf +qqs +sYR aMq adq aQb aPZ aRu -wpo +kAH aKR -tIC +tCa aXi -maC +hgO baa aJC bcq @@ -93387,7 +92645,7 @@ awy awr awr avG -udi +wqF aAh aAh aAh @@ -93397,13 +92655,13 @@ aAh aAh aKR aKR -pxD +fxe aPY -xMl +kAO aRx aKR -jzD -tuN +iTU +pqe aPY aZZ aQg @@ -93644,24 +92902,24 @@ awA axT axW aAl -tAE +cHf aJC aDR aFl -rLr +kqI aHZ aJC aKJ -rLR +hIL aKR -hSU -kay +wxT +moD aQd aQa aKR -xbu -hSU -lwj +elh +wxT +uBa bac aJC aYV @@ -93882,10 +93140,10 @@ aib aif aif aif -oyD +aif aif bkV -fvk +jKP alK aif aif @@ -93893,19 +93151,19 @@ anc anD aoI arf -myt +eSe asN aur avy -tWR +nSt axS azk aAk -eUd +tvi aJC aDY aDY -rLr +kqI aKR aJk aKR @@ -93921,7 +93179,7 @@ aKR aKR bab aJC -xYO +ucq aYV ber bfF @@ -94133,13 +93391,13 @@ abp afo abp abp -hlY -ahn +uhm ahn aiA +aiA +aiA ahn -mnI -fHj +oLn anF aod ahn @@ -94150,15 +93408,15 @@ ahn ahn ahn arf -iES -jdT +oAB +eQb aut arf aXF awr awr aAn -wcy +rqk aJC aEc aFk @@ -94168,19 +93426,19 @@ aJC aKr aKR aKR -fbm -fbm -hzR +sLj +sLj +vcN aKR aKR aKR -fbm +sLj aKR aKR bbx aYV aYV -wDR +tkB bfF bhd bis @@ -94386,53 +93644,53 @@ aaf aaf aaf abp -unE +wdv afp -unE +wdv abp -nea +nQi +ahn +aaa +aaf +aaf ahn ahn anE -ahn -mnI -fHj -anF aod aoK -sgV +oyX aqp ahn -ukS -tQk -cVp -jdT -jdT -jdT -rMc +tzQ +pgf +gzf +eQb +eQb +eQb +lUS aun avz awr awr aAn -fSr +jGW aJC aJC -gjC -lxx +plC +oAb aJC aJC aKq aKR aNF -egS -ghs -lMY +hOv +oax +oxm aSH aKR -dMX -igT -moq +rmN +eJa +hSZ aKR aQg aYV @@ -94458,7 +93716,7 @@ bvj bvj bvd bFu -hcd +jex bvj bvd bKH @@ -94649,30 +93907,30 @@ aaa adR ahn ahn +aaa +aaa +aaa +aaf ahn -tob -ahn -ahn -vmK anG aoe aoL apy aqq ahn -dhx -mfb +qLR +oIW arf -unl +kmS ast -jdT +eQb auv arf avA axW azo aAp -lYZ +uxY aBC aCt aEA @@ -94683,13 +93941,13 @@ aKN aKR aKR aOJ -fvW -dtE +oIJ +unA aKR aKR aUg bFC -moq +hSZ aKR bbx aYV @@ -94697,9 +93955,9 @@ aYV bet bfH bhf -slp +wbE bhh -slp +wbE bmJ bof bpu @@ -94906,11 +94164,11 @@ aaa gXs aaa aaa -jmC -jmC -jmC -jQX -jQX +aaa +aaa +aaa +aaa +ahn khB ahn ahn @@ -94925,11 +94183,11 @@ arf arf arf arf -hkg -eNW +hlV +oHB azf aAo -lMx +vyp aBB aBB aBB @@ -94939,12 +94197,12 @@ cNE aKM aMu aMu -poa -hdb +feG +tif aMu aMu aMu -uTq +jgA aSq aKR bad @@ -94956,7 +94214,7 @@ bfG bhe bit bjS -nGS +tCd bli boe bli @@ -95166,29 +94424,29 @@ aaa aaa aaa aaa -jQX -qda -wdj -qvh -wdj -iep -gQn -xSt -xSt -qNs -lMx -sjw +aaa +aag +aag +aag +arf +wXl +iou +arf +eSe +wig +vyp +rrM clO asZ aua -dcG +oZl awB att azh -vYa -vYa -gKk -vbY +fHG +fHG +kxf +ufD alP aGI aId @@ -95202,7 +94460,7 @@ aMx aMx aMx aMx -eqm +rqE aKR aZb aJC @@ -95413,39 +94671,39 @@ aaa aaa aaa aaa -xzh +bvG aaa aqG aaa -vDq +oyN aaa aaa aaa aaa aaa -xIN -qoW -hPB -wbh -wbh -wbh -wbh -wbh -ucV -wdj +aaa +aaa +aaa +aaa +arf +lOe +pgf +gzf +eQb +jLT arf arm -vYa +fHG aya -vYa -vYa +fHG +fHG auB atZ azg azp -vYa +fHG aCu -dgh +qOc alP aGH aIc @@ -95670,39 +94928,39 @@ aaa aaa aaa aaa -lCB -lNB +tqB +vae aaa -lNB -rUQ +vae +efO aaa aaa aaa aaa aaa -xIN -nbZ -uxu -kdv -krR -lAe -krR -krR -fLR -tOU -goY -hVw -vYa -vYa -vYa -vYa -pSf -vYa +aaa +aaa +aaa +aaa +arf +arf +arf +arf +oAB +ujS +aqs +coh +fHG +fHG +fHG +fHG +pPi +fHG ayb -ndC -vYa +hWd +fHG aCv -frE +mbU alP aGJ aIe @@ -95716,7 +94974,7 @@ aXj aVy aSY aVy -oNb +xqG acN bah aJC @@ -95927,39 +95185,39 @@ aaa aaa aaa aaa -jmC -jmC +gJi +gJi gXs -jmC -jmC +gJi +gJi aaa aaa aaa aaa aaa -xIN -iBB -uxu -uFI -krR -krR -krR -ujS -fLR -tOU -goY -fQF -qbx -qux -vYa -vYa -pSf -vYa +aaa +aaa +aaa +aaa +aaa +aaa +arf +obc +eQb +qAm +arf +lXE +pFX +mOO +fHG +fHG +pPi +fHG ayb -ndC -vYa -vys -tCi +hWd +fHG +sci +sEi alP aGJ aIe @@ -95969,11 +95227,11 @@ aKQ aNu aJC aPw -kwy +egt aQc aSZ aQc -vjq +qaY acN bag aJC @@ -96194,29 +95452,29 @@ aaa aaa aaa aaa -jQX -wSE -uxu -krR -krR -krR -krR -krR -fLR -mRa +aaa +aaa +aaa +aaa +aaa +aaa arf -oSO -sAI -fJa -vYa -svw -ntf -jvN -lBE -xpx -vYa +mse +fMZ +dqb +arf +xzd +sJI +jJg +fHG +eAJ +rvr +nLu +hcA +ryr +fHG aCu -hgX +puh alP aGA aHS @@ -96238,7 +95496,7 @@ aYV aYV bet bfH -dok +qTV bhh bhg bln @@ -96442,38 +95700,38 @@ aaa aaa aaa aaa -aaz +xLX aaa -aaz +xLX aaa aaa aaa aaa aaa aaa -xIN -qoW -uxu -krR -krR -krR -krR -krR -fLR -dIm +aaa +aaa +aaa +aae +aaa +aaa arf -mTp -qEv -kRk -mXB -qAQ -pzk -vYa -sMa -iEI -jeT -rTQ -vHM +arf +arf +arf +arf +fZm +jmV +epD +ghD +hBA +xbn +fHG +reA +lsk +xXi +jAN +jEc alP aGL aHM @@ -96708,28 +95966,28 @@ aaa aaa aaa aaa -xIN -qoW -qkc -krR -krR -xdx -krR -krR -fLR -mRa -kHJ -rEV -rEV -kQZ -fVU -vpm -vpm -fVU -nel -wCa -wCa -lFl +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +gXs +ewu +pQp +pQp +oqj +jBi +fpl +fpl +jBi +oDN +sEM +sEM +pRs arj alP aGL @@ -96826,7 +96084,7 @@ aaf ctZ cui cuq -ajY +cuC cuO cuz cvm @@ -96965,16 +96223,16 @@ aaa aaa aaa aaa -xIN -qoW -uxu -krR -krR -krR -krR -krR -fLR -mRa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +gXs +gXs aqu aro aro @@ -97004,7 +96262,7 @@ aVz aVz aYJ aJI -sIe +mNW aYV aYV aYV @@ -97222,16 +96480,16 @@ aaa aaa aaa aaa -jQX -vCm -uxu -krR -krR -krR -krR -krR -fLR -mRa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +gXs +gXs +aaa aqu aro aro @@ -97334,8 +96592,8 @@ czk cti cua cua -aeF -afs +ctw +ctH ctQ cuc cuj @@ -97479,16 +96737,16 @@ aaa aaa aaa aaa -xIN -iBB -uxu -uFI -krR -krR -krR -ujS -fLR -mRa +aaa +aaa +aaa +aaa +aaa +aaa +gXs +gXs +aaa +aaa aqu aro aro @@ -97521,7 +96779,7 @@ baj bbz aYV bdp -itT +mvt bfK bfK bfK @@ -97591,9 +96849,9 @@ ctb cth cua ctr -afn -age -agX +ctu +ctG +ctP cub cuj cur @@ -97736,16 +96994,16 @@ aaa aaa aaa aaa -xIN -qJO -uxu -krR -krR -wnN -krR -krR -fLR -mRa +aaa +aaa +aaa +aaa +aaa +gXs +gXs +aaa +aaa +aaa aqu aro aro @@ -97774,7 +97032,7 @@ aVD aVE aXm aVz -egQ +juG bbz aYV bdp @@ -97848,13 +97106,13 @@ ctc ctc cto ctt -afq +cty ctJ -ahw +ctT cue cul cuu -akz +cuG cuS cve cvo @@ -97993,16 +97251,16 @@ aaa aaa aaa aaa -xIN -qoW -wem -dvG -dvG -tvW -dvG -dvG -gil -mRa +aaa +aaa +aaa +aaa +gXs +gXs +aaa +aaa +aaa +aaa aqu aro aro @@ -98105,9 +97363,9 @@ ctb ctj ctk cts -afr -agv -ajC +ctx +ctI +ctS cud cuk cus @@ -98250,27 +97508,27 @@ aaa aaa aaa aaa -jQX -xvz -idO -idO -idO -jYZ -has -has -has -esV -haX -rEV -rEV -rEV -nie -vpm -vpm -wFX -wCa -wCa -wCa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +vmQ +pQp +pQp +pQp +grA +fpl +fpl +gbh +sEM +sEM +sEM aCy arj alP @@ -98288,7 +97546,7 @@ aTO cCq aVz aVz -fPs +qus bbz aYV bdp @@ -98504,31 +97762,31 @@ aaS aaS aaS aaS +aaS +aaS +aaS +aaS +aaS +aaf +aaf +aaa +aaa +aaa +aaa aaa aaa aaa -jQX -jQX -xIN -xIN -xIN -jQX -xIN -xIN -xIN -jQX -jQX aaa aaa arj -cRz +fCx avD awC ayb -mbD -nmS -oFk -xXY +eCr +jvd +cEo +xZD vpY alP aGJ @@ -98574,7 +97832,7 @@ bCR bqQ bGX bCR -oDy +edA bRN bIK bPq @@ -98761,12 +98019,12 @@ aaf aaa aaf aaa +aaf aaa +aaf aaa -aaa -aaa -aaa -aaa +aaS +aaf aaa aaa aaa @@ -98780,13 +98038,13 @@ aaf arj auz avC -kOf +vHz aya -vYa -vYa -oYc -vYa -vYa +fHG +fHG +xkd +fHG +fHG gOZ aGJ avI @@ -98877,7 +98135,7 @@ aaa aaf cua ctF -agH +ctM ctX cuf cum @@ -99022,7 +98280,7 @@ ads adS aeG aaa -aaa +aaS aaa aaa aaa @@ -99037,7 +98295,7 @@ alO arj arj arj -eOv +pBp gOZ cVb cVb @@ -99135,7 +98393,7 @@ aaf cua ctE ctL -ajX +ctW cuf cum cuw @@ -99549,10 +98807,10 @@ cxW anf aqv ayf -fIn -ego +dce +uua awE -dMu +tRB cVb vCb wUY @@ -99805,8 +99063,8 @@ aag alO anf alO -kSB -pAl +mAH +jaF alP anf aCG @@ -99822,11 +99080,11 @@ aIq aKK aMy aIp -jaa +nGf aQm -wOT -htr -htr +fzd +fFA +fFA aVK aRJ aRJ @@ -100068,10 +99326,10 @@ alP awF aCG alP -olw +nhY aBE aCz -trY +vEp aCJ aGT aIn @@ -100081,10 +99339,10 @@ aMt aIp aOW aQm -dRC +coI aSS aUj -pHo +sJx aRJ aYQ cBg @@ -100318,7 +99576,7 @@ aoN apA aof arq -hdp +itK atv auD alP @@ -100338,14 +99596,14 @@ aMA aIp aOX aQm -dRC +coI aST aUk -pHo +sJx aRJ aYQ bam -yiN +ssB aYV aYV aYV @@ -100562,10 +99820,10 @@ adU adU adU adU -ssL -rsv -rsv -rsv +eaR +jIs +jIs +jIs acx amv ane @@ -100595,14 +99853,14 @@ aMz aNQ aOX aQm -tFt -tsr -tsr -xzy +lva +nUV +nUV +gbd aRJ aYR ban -qje +ikm aYV aYV bez @@ -100846,7 +100104,7 @@ aaa aFq aGX aIp -vzS +sHx aKU aME aNN @@ -100859,7 +100117,7 @@ aXo aXo aYO bap -qje +ikm aYV bci beB @@ -101088,7 +100346,7 @@ aof aof aof aof -qkC +vCy aoP atw auF @@ -101096,7 +100354,7 @@ alP aoP auF azr -kel +jez atw alP alP @@ -101110,13 +100368,13 @@ aNQ aOZ aOX aOX -hZH +rdG aUz aVM aOX aYT bam -ory +iuR baR bcb bdl @@ -101173,7 +100431,7 @@ bAw bAw clp aag -jmC +gJi aaa aaa aaa @@ -101351,7 +100609,7 @@ aty auF alP aAt -kuY +jZT alP alP alP @@ -101602,7 +100860,7 @@ aaa aaa apC anf -kel +jez alP atx auF @@ -101611,7 +100869,7 @@ auD auF apE aAs -khA +vbi alP aCG aFr @@ -101864,12 +101122,12 @@ alP apE auG alP -rgF +iWx auF apE anf anf -jRy +noF aCG aDZ aFu @@ -102133,8 +101391,8 @@ bbE aIr bav aLf -aaL -kLR +aNV +qfD aRO aQp aRN @@ -102198,11 +101456,11 @@ cQB czY cOT aaa -jmC -jmC -jmC -jmC -jmC +gJi +gJi +gJi +gJi +gJi aaa aaa aaa @@ -102375,12 +101633,12 @@ apC alP alP alP -tuj +dbU auH avF awI ayc -mlr +gcF asw asw aCD @@ -102391,7 +101649,7 @@ aIu aJQ aIt aIt -kLR +qfD aRO aIt aRN @@ -102646,9 +101904,9 @@ anf aFu aIs aJP -wuB +vZR aIt -nsJ +hGH aYW aYW aYW @@ -102716,9 +101974,9 @@ aaa aaa aaa aaH -adO -aeD -aeE +eFW +nwX +weM aaa aaa aaa @@ -102903,9 +102161,9 @@ aFu aFu aIw aJS -tqt +pJR aNP -jFy +esZ aOS aOS aOS @@ -102969,14 +102227,14 @@ cQB cAa cOT gXs -xNY -kvb +rnK +kWp aaa aaa aaH aaH aaH -aeE +weM aaa aaa aaa @@ -103153,7 +102411,7 @@ awJ anf alP aAv -gCe +tJS aCE aDZ aFu @@ -103162,7 +102420,7 @@ aIv aJR aIt aIt -kLR +qfD aRO aIt aPd @@ -103226,14 +102484,14 @@ czU czZ cOT aaa -jmC +gJi aaH aaH aaH aaH aaH aaH -adO +eFW aaa aaa aaa @@ -103419,7 +102677,7 @@ aIx aJF aQq aNS -kLR +qfD aRO aIt aPd @@ -103483,14 +102741,14 @@ cgm czY cOT gXs -xNY -kvb -gJg +rnK +kWp +kaq aaH aaH aaa aaa -gJg +kaq aaa aaa aaa @@ -103680,12 +102938,12 @@ aFu aPf aQq aRP -kHK +pem aIt aIt aWd aXV -iWa +vsT bbD aYV aXq @@ -103693,7 +102951,7 @@ aYV bfV bhw cHM -kRw +wWT blB blF cHS @@ -103742,9 +103000,9 @@ cNW aaa aaa aaa -gJg -gJg -adO +kaq +kaq +eFW aaH gXs aaa @@ -103916,8 +103174,8 @@ alO anf anf arw -ftv -sLr +nuw +uve anf alP awL @@ -104190,7 +103448,7 @@ aIy aJG cAz aFw -iWk +gRZ aPg aQr aFu @@ -104257,10 +103515,10 @@ aaa aaa aaa aaa -jmC -jmC -jmC -jmC +gJi +gJi +gJi +gJi aaa aaa aaa @@ -104427,10 +103685,10 @@ aaa aaa gXs alP -qxc +jkx ayf -nuV -iOV +xAk +mHU aFn aFn aBB @@ -104447,7 +103705,7 @@ aFw aLo aLb aFw -eMQ +xEE aYW aYW aRQ @@ -104681,13 +103939,13 @@ aaa aaa aaa aaa -fzd -fzd -fzd -fzd -tNJ -fzd -fzd +nsA +nsA +nsA +nsA +qVP +nsA +nsA atB alP alP @@ -104704,7 +103962,7 @@ aIz aJM aLa aFw -tGG +hsb aYW aQs aFu @@ -104938,21 +104196,21 @@ aaa aaa aaa aaa -fzd -xdb -mCq -wJz -mHC -tWs -lmi -ghY -sxX -ghY -jBZ +nsA +cQF +ndq +rIA +fBy +hRI +jaH +hHQ +feE +hHQ +kGJ avI asA apE -vHv +dPk aCG aEf aFw @@ -105195,12 +104453,12 @@ aaa aaa aaa aaa -tIk -mCq -mCq -mCq -mCq -pjh +wKe +ndq +ndq +ndq +ndq +oLl asB asB asB @@ -105291,7 +104549,7 @@ cOe cBT aag gXs -jmC +gJi aaa aaa aaa @@ -105452,12 +104710,12 @@ aaa aaa aaa aaa -tIk -mCq -mCq -mCq -mCq -dSv +wKe +ndq +ndq +ndq +ndq +qeb asB atD auJ @@ -105709,12 +104967,12 @@ aaa aaa aaa aaa -fzd -mCq -mCq -mCq -mCq -mCq +nsA +ndq +ndq +ndq +ndq +ndq asB atC auI @@ -105798,7 +105056,7 @@ cNW cNW cNW cOe -qXH +fup csy cko cAf @@ -105966,12 +105224,12 @@ aaa aaa aaa aaa -tIk -mCq -mCq -mCq -mCq -mCq +wKe +ndq +ndq +ndq +ndq +ndq asB atE auI @@ -106223,18 +105481,18 @@ aaa aaa aaa aaa -tIk -mCq -mCq -mCq -mCq -mCq +wKe +ndq +ndq +ndq +ndq +ndq asB asB asB avL awR -hRT +hiV azu aAz asB @@ -106308,7 +105566,7 @@ cgp chv ciJ cbf -lLI +diq clr bnt cOe @@ -106480,12 +105738,12 @@ aaa aaa aaa aaa -fzd -wXP -mCq -nXa -mCq -nyH +nsA +lGV +ndq +pou +ndq +srG asB atG auL @@ -106737,12 +105995,12 @@ aaa aaa aaa aaa -fzd -fzd -fzd -fzd -fzd -fzd +nsA +nsA +nsA +nsA +nsA +nsA asB atF auK @@ -106826,7 +106084,7 @@ cNW clt cQw cNW -abG +mJo cNW cNW aaf @@ -107028,9 +106286,9 @@ aXB aZh baB aCR -riB +kYk bdx -dfI +vHT bgc bgc biX @@ -107082,7 +106340,7 @@ aaa cOT clt cQw -aaO +oEZ cOe cOe cNW @@ -107339,18 +106597,18 @@ aaa cOT clt cQw -aaQ +ttL cOe cOe cNW aaa -jzi -jzi -jzi -jzi -jzi -jzi -jzi +fIs +fIs +fIs +fIs +fIs +fIs +fIs aaS aaS aba @@ -107600,7 +106858,7 @@ bNB cOe cOe cNW -lCL +ktS aaS aaa aaf @@ -107853,7 +107111,7 @@ cNW cNW clt cQw -aaY +cCt cOe cOe cNW @@ -108102,7 +107360,7 @@ cbZ bSl cmo cNW -vOq +lZl cNW chC ciL @@ -109402,17 +108660,17 @@ cpi cpi cpi cqJ -ggg +vZA crk crk crk crk crk -pFt +pTB cqJ -ggg +vZA crk -pFt +pTB cpi cpi ctB @@ -109668,7 +108926,7 @@ crF aaa aaa aaa -hik +vPs aaa aaa aaa @@ -110407,7 +109665,7 @@ cNW cNW cNW cNW -vFt +kAJ clt cac cbh @@ -110673,7 +109931,7 @@ cbf cbf ceT cNW -kCW +dBm chH cNW aaf From 6e969808f3a7103231c4edca4f2c6f0908c10f66 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sat, 8 Feb 2020 00:53:22 -0600 Subject: [PATCH 063/137] capitalization is FUN! --- code/modules/pool/pool_structures.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 0bf74bb2ee..92350abf44 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -74,7 +74,7 @@ jumper.pixel_x = 3 jumper.pixel_y = 7 jumper.dir = WEST - jumper.Addelement(/datum/element/swimming) + jumper.AddElement(/datum/element/swimming) sleep(1) jumper.forceMove(T) addtimer(CALLBACK(src, .proc/dive, jumper, original_layer, original_px, original_py), 10) From c434382d6d39aa19a08853d4493a7106c97eabc5 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sat, 8 Feb 2020 01:20:50 -0600 Subject: [PATCH 064/137] fixes map conflicts on this pr for the (3rd? 4th? I've lost count.) time. --- _maps/map_files/BoxStation/BoxStation.dmm | 1207 ++++++++++++++++----- tgstation.dme | 2 +- 2 files changed, 951 insertions(+), 258 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index a630c54b6e..b879a30197 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -3984,7 +3984,12 @@ /turf/open/floor/plasteel, /area/security/brig) "aiA" = ( -/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, /turf/open/floor/plating, /area/maintenance/fore/secondary) "aiB" = ( @@ -6145,11 +6150,8 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anE" = ( -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/obj/machinery/door/airlock/external{ - req_access_txt = "13" +/obj/structure/cable{ + icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -6157,11 +6159,16 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anG" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/fitness/pool"; + name = "Pool APC"; + pixel_y = -24 + }, +/obj/structure/cable{ + icon_state = "0-8" }, /turf/open/floor/plating, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "anH" = ( /obj/structure/sign/warning/electricshock, /turf/closed/wall/r_wall, @@ -6317,7 +6324,7 @@ dir = 10 }, /turf/closed/wall, -/area/maintenance/fore/secondary) +/area/crew_quarters/fitness/pool) "aof" = ( /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/fore) @@ -7145,14 +7152,16 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqs" = ( -/obj/machinery/door/airlock{ - id_tag = "Room Two"; - name = "Room Seven - Luxury Suite" +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, /obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/dorms) +/obj/machinery/door/airlock/public/glass{ + name = "Pool" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "aqu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -13017,6 +13026,10 @@ }, /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) +"aGp" = ( +/obj/machinery/pool/controller, +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "aGq" = ( /obj/item/stack/sheet/plasteel{ amount = 10 @@ -23223,6 +23236,12 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/port) +"bgx" = ( +/obj/machinery/pool/filter{ + pixel_y = 24 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "bgy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -52170,6 +52189,12 @@ }, /turf/closed/wall/r_wall, /area/engine/engineering) +"cDM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cDN" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 4 @@ -52194,6 +52219,10 @@ /obj/structure/closet/boxinggloves, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"cFI" = ( +/obj/structure/pool/ladder, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "cGz" = ( /obj/structure/table/wood, /obj/item/instrument/violin, @@ -52534,6 +52563,12 @@ /obj/structure/sign/poster/official/cohiba_robusto_ad, /turf/closed/wall, /area/lawoffice) +"cMv" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cMC" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -52786,6 +52821,9 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"cRS" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "cSA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -53199,6 +53237,9 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/fore) +"cYa" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "daI" = ( /obj/structure/reagent_dispensers/foamtank, /obj/effect/turf_decal/tile/yellow{ @@ -53227,6 +53268,14 @@ /obj/machinery/meter, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"ddy" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "dev" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -53248,6 +53297,11 @@ }, /turf/open/floor/plating, /area/maintenance/port) +"deZ" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "dfh" = ( /obj/machinery/power/apc{ areastring = "/area/science/circuit"; @@ -53297,13 +53351,8 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/central) "dqb" = ( -/obj/structure/bed, -/obj/item/bedsheet/random, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "dqu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -53384,6 +53433,11 @@ /obj/item/gun/energy/laser/practice, /turf/open/floor/plasteel, /area/security/prison) +"dFj" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/yellow, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "dKP" = ( /turf/closed/wall, /area/maintenance/bar) @@ -53407,6 +53461,9 @@ }, /turf/open/floor/plasteel/white, /area/science/circuit) +"dPh" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dPk" = ( /obj/structure/closet{ name = "Costume Closet" @@ -53433,6 +53490,9 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) +"dUu" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dVU" = ( /turf/open/floor/plating, /area/space/nearstation) @@ -53446,6 +53506,9 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"dZA" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eaI" = ( /obj/structure/table/reinforced, /obj/item/radio/intercom{ @@ -53462,6 +53525,9 @@ }, /turf/open/space, /area/solar/starboard/fore) +"edu" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "edA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -53503,6 +53569,12 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"enm" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "enB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, @@ -53531,12 +53603,22 @@ /obj/item/assembly/signaler, /turf/open/floor/plating, /area/security/prison) +"eqv" = ( +/obj/structure/pool/Lboard, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "eqA" = ( /obj/machinery/shower{ dir = 8 }, /turf/open/floor/plasteel/freezer, /area/security/prison) +"erC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "esZ" = ( /obj/machinery/door/airlock{ desc = "Private study room where nerds are probably playing Dungeons and Dragons 13e, or a place for blood cult rituals."; @@ -53575,12 +53657,39 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"eyX" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "eAJ" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"eBg" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) +"eBj" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"eBs" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "PoolShut"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "eBX" = ( /obj/machinery/vending/cola/space_up, /turf/open/floor/plasteel/dark, @@ -53657,6 +53766,11 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"ePU" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "eQb" = ( /turf/open/floor/carpet, /area/crew_quarters/dorms) @@ -53688,6 +53802,22 @@ }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"eXn" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/button/door{ + id = "PoolShut"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "fcn" = ( /obj/structure/lattice, /turf/closed/wall/r_wall, @@ -53744,6 +53874,15 @@ /obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"fkb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"fkK" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "flc" = ( /obj/structure/table/reinforced, /obj/item/storage/fancy/donut_box, @@ -53861,10 +54000,20 @@ "fxV" = ( /turf/closed/wall/r_wall, /area/hallway/primary/central) +"fyM" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 24 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fzd" = ( /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, /area/hydroponics) +"fzi" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fAj" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -53893,6 +54042,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"fCK" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fFA" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -53909,6 +54061,11 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"fGM" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "fHG" = ( /turf/open/floor/plasteel, /area/crew_quarters/fitness) @@ -53922,14 +54079,14 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel, /area/science/circuit) +"fMg" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "fMZ" = ( -/obj/item/radio/intercom{ - dir = 4; - name = "Station Intercom (General)"; - pixel_x = 27 +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "fOA" = ( /obj/machinery/door/airlock{ name = "Theatre Backstage"; @@ -53963,6 +54120,11 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"fXd" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "fZm" = ( /obj/structure/chair/sofa/left, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -54050,9 +54212,25 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"giB" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "gjl" = ( /turf/closed/wall, /area/quartermaster/warehouse) +"gkz" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) +"glI" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "gnf" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -54072,6 +54250,9 @@ }, /turf/open/floor/circuit, /area/ai_monitored/nuke_storage) +"grr" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "grA" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -54114,6 +54295,12 @@ /obj/structure/curtain, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"gBg" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"gBj" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "gBo" = ( /obj/structure/cable{ icon_state = "1-8" @@ -54128,6 +54315,11 @@ /obj/effect/landmark/carpspawn, /turf/open/space/basic, /area/space) +"gDR" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "gIU" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -54165,6 +54357,11 @@ }, /turf/open/floor/wood, /area/bridge/meeting_room) +"gOj" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "gOZ" = ( /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" @@ -54217,6 +54414,9 @@ /obj/structure/lattice, /turf/open/space/basic, /area/space/nearstation) +"gXw" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "gZG" = ( /obj/structure/closet/crate/freezer/surplus_limbs, /obj/item/reagent_containers/glass/beaker/synthflesh, @@ -54245,6 +54445,9 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"hbh" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "hcb" = ( /turf/open/floor/carpet, /area/crew_quarters/theatre) @@ -54281,6 +54484,11 @@ /obj/effect/landmark/blobstart, /turf/open/floor/plating, /area/maintenance/department/electrical) +"hky" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "hlV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -54320,6 +54528,9 @@ }, /turf/open/floor/plating, /area/space/nearstation) +"hzU" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "hBA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/table, @@ -54358,6 +54569,11 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"hOk" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "hOv" = ( /obj/structure/table/wood/fancy, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -54415,6 +54631,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"iaL" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "idK" = ( /obj/structure/cable{ icon_state = "1-4" @@ -54459,6 +54678,15 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"ikL" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"ilb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "imH" = ( /obj/structure/falsewall, /turf/open/floor/plating, @@ -54473,9 +54701,13 @@ }, /area/crew_quarters/theatre) "iou" = ( -/obj/machinery/light/small, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "ipA" = ( /turf/open/floor/plating, /area/maintenance/department/medical/morgue) @@ -54552,6 +54784,10 @@ }, /turf/open/space/basic, /area/space) +"iEd" = ( +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "iEJ" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod One" @@ -54567,6 +54803,9 @@ }, /turf/closed/wall/r_wall, /area/engine/gravity_generator) +"iMO" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "iNn" = ( /obj/machinery/camera{ c_tag = "Kitchen Cold Room" @@ -54575,6 +54814,9 @@ /obj/structure/reagent_dispensers/cooking_oil, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) +"iPG" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "iTq" = ( /obj/structure/chair/stool{ pixel_y = 8 @@ -54590,6 +54832,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"iVN" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "iVU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -54660,6 +54905,16 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"jgV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"jhD" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "jjC" = ( /obj/structure/table/wood, /obj/item/toy/cards/deck, @@ -54702,6 +54957,14 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"jog" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "jqv" = ( /obj/structure/chair/wood/normal{ dir = 1 @@ -54798,6 +55061,9 @@ dir = 1 }, /area/crew_quarters/fitness) +"jFm" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jFH" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -54878,25 +55144,21 @@ /turf/open/floor/plasteel, /area/engine/engine_smes) "jLT" = ( -/obj/machinery/button/door{ - id = "Room Two"; - name = "Door Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 7; - pixel_y = -24; - specialfunctions = 4 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, -/obj/structure/chair/comfy/brown{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "jRw" = ( /obj/machinery/computer/arcade/minesweeper{ dir = 4 }, /turf/open/floor/plasteel, /area/security/prison) +"jRz" = ( +/obj/machinery/pool/drain, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jSO" = ( /obj/machinery/light{ dir = 4 @@ -54906,6 +55168,9 @@ }, /turf/open/floor/plasteel, /area/science/circuit) +"jTy" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jVl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -54915,6 +55180,12 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"jYk" = ( +/obj/structure/pool/Rboard, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "jZT" = ( /obj/structure/cable{ icon_state = "4-8" @@ -54991,11 +55262,9 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "khB" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 +/obj/machinery/door/airlock/maintenance{ + name = "Pool Maintenance"; + req_access_txt = "12" }, /turf/open/floor/plating, /area/maintenance/fore/secondary) @@ -55058,10 +55327,21 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"kpO" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kqI" = ( /obj/structure/window, /turf/open/floor/wood, /area/crew_quarters/bar) +"kqK" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "ktP" = ( /obj/machinery/power/smes{ charge = 5e+006 @@ -55092,6 +55372,9 @@ }, /turf/open/floor/wood, /area/bridge/meeting_room) +"kwY" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kxf" = ( /obj/machinery/vr_sleeper{ dir = 4 @@ -55109,6 +55392,9 @@ dir = 4 }, /area/crew_quarters/fitness) +"kyz" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "kyF" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/wood, @@ -55225,12 +55511,18 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/quartermaster/miningdock) +"kTZ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kWp" = ( /obj/structure/shuttle/engine/heater{ dir = 1 }, /turf/closed/wall/mineral/titanium, /area/space/nearstation) +"kWB" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kYk" = ( /obj/machinery/door/firedoor, /obj/structure/sign/departments/evac{ @@ -55238,6 +55530,14 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"lao" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/table/glass, +/obj/item/storage/firstaid/regular, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "laq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel, @@ -55321,24 +55621,40 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"lHe" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "lMg" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 }, /turf/open/floor/plasteel, /area/science/circuit) +"lMu" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "lOe" = ( -/obj/machinery/shower{ - dir = 8 +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/area/crew_quarters/fitness/pool) "lPr" = ( /obj/item/twohanded/required/kirbyplants{ icon_state = "applebush" }, /turf/open/floor/plasteel, /area/hallway/primary/port) +"lQr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "lQG" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -55356,13 +55672,6 @@ /turf/open/floor/carpet, /area/crew_quarters/dorms) "lXE" = ( -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - dir = 5; - icon_state = "roomnum"; - name = "Room Number 7"; - pixel_y = 24 - }, /obj/structure/chair/sofa/right, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -55401,6 +55710,9 @@ /obj/structure/reagent_dispensers/keg/milk, /turf/open/floor/wood, /area/crew_quarters/bar) +"mjL" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "mkv" = ( /obj/machinery/camera{ c_tag = "Gravity Generator Room"; @@ -55460,12 +55772,20 @@ /turf/open/floor/wood, /area/maintenance/bar) "mse" = ( -/obj/machinery/airalarm{ - pixel_y = 23 +/obj/structure/pool/ladder{ + dir = 1; + pixel_y = -24 }, -/obj/structure/chair/sofa/left, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"mtr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/machinery/camera{ + c_tag = "Pool East"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "mvt" = ( /obj/machinery/airalarm{ dir = 1; @@ -55473,6 +55793,11 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"mwT" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "myh" = ( /obj/structure/piano, /obj/structure/window/reinforced, @@ -55487,6 +55812,9 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) +"mzR" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "mAH" = ( /obj/machinery/atmospherics/components/unary/tank/air{ dir = 8 @@ -55507,6 +55835,20 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"mIg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"mIR" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "mIZ" = ( /obj/structure/falsewall, /turf/open/floor/plating, @@ -55605,6 +55947,14 @@ }, /turf/open/floor/plasteel, /area/security/prison) +"mPz" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "mPE" = ( /obj/machinery/chem_dispenser/drinks, /obj/structure/table/wood, @@ -55646,6 +55996,16 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"mVB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"mZJ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "nbT" = ( /obj/structure/cable{ icon_state = "0-8" @@ -55668,6 +56028,14 @@ /obj/item/instrument/piano_synth, /turf/open/floor/wood, /area/crew_quarters/theatre) +"nfj" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "nfm" = ( /obj/machinery/vending/autodrobe, /turf/open/floor/wood, @@ -55723,6 +56091,14 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"nvN" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "nwX" = ( /obj/structure/grille/broken, /turf/open/floor/plating/airless, @@ -55738,6 +56114,9 @@ }, /turf/open/floor/plating, /area/construction) +"nBS" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "nGf" = ( /obj/machinery/hydroponics/constructable, /obj/machinery/light{ @@ -55813,6 +56192,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"nTF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "nUV" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -55823,6 +56205,9 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"nXZ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "nYe" = ( /obj/structure/safe, /obj/item/clothing/head/bearpelt, @@ -55873,9 +56258,8 @@ /turf/open/floor/wood, /area/crew_quarters/bar) "obc" = ( -/obj/structure/chair/sofa/right, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/pool, +/area/crew_quarters/fitness/pool) "oce" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 @@ -55896,12 +56280,27 @@ /obj/machinery/vending/kink, /turf/open/floor/plating, /area/maintenance/bar) +"oeE" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "ofU" = ( /obj/structure/chair/comfy/black{ dir = 4 }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"oiP" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 24 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "old" = ( /obj/effect/turf_decal/tile/red{ dir = 8 @@ -55916,6 +56315,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) +"omt" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "omY" = ( /obj/item/flashlight/lamp/green{ pixel_x = -3; @@ -55928,6 +56333,14 @@ }, /turf/open/floor/plating, /area/maintenance/port) +"opx" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "oqj" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -56019,6 +56432,12 @@ /obj/structure/fireplace, /turf/open/floor/carpet, /area/crew_quarters/dorms) +"oBi" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"oCK" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "oDN" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56034,6 +56453,9 @@ /obj/effect/spawner/lootdrop/keg, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"oGU" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "oHB" = ( /turf/open/floor/plasteel/dark, /area/crew_quarters/dorms) @@ -56064,6 +56486,9 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"oKR" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "oLl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56404,17 +56829,46 @@ /obj/effect/spawner/structure/window, /turf/open/floor/wood, /area/library) +"qie" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"qiC" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "qje" = ( /obj/structure/sign/mining{ pixel_y = 7 }, /turf/closed/wall, /area/quartermaster/miningdock) +"qkh" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) +"qlq" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "qmn" = ( /obj/machinery/computer/libraryconsole/bookmanagement, /obj/structure/table, /turf/open/floor/plasteel, /area/security/prison) +"qmX" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "qqs" = ( /obj/structure/mirror{ pixel_y = 32 @@ -56425,6 +56879,9 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) +"qtZ" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "qus" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -56443,16 +56900,15 @@ /turf/open/space/basic, /area/space/nearstation) "qAm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qBi" = ( /obj/structure/lattice, /turf/closed/wall/r_wall, /area/crew_quarters/heads/captain) +"qDJ" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qIw" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56466,6 +56922,16 @@ }, /turf/open/space, /area/solar/port/aft) +"qJU" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"qLL" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qLR" = ( /obj/structure/mirror{ pixel_y = 32 @@ -56499,6 +56965,9 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) +"qSb" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qTG" = ( /obj/machinery/light{ dir = 8 @@ -56547,14 +57016,33 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"rfr" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "rfW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) +"rik" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "rjQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/crew_quarters/theatre) +"rlx" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "rmN" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -56582,6 +57070,12 @@ }, /turf/open/space/basic, /area/space/nearstation) +"rpl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rqf" = ( /obj/machinery/light{ dir = 1 @@ -56699,6 +57193,11 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"rAB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rBq" = ( /obj/item/clothing/head/kitty, /obj/item/clothing/under/maid, @@ -56716,6 +57215,11 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"rHe" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/red, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rIA" = ( /obj/machinery/light{ dir = 8 @@ -56755,6 +57259,14 @@ dir = 4 }, /area/crew_quarters/theatre) +"rQq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rTu" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56813,6 +57325,9 @@ dir = 4 }, /area/crew_quarters/fitness) +"scx" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "seP" = ( /obj/structure/cable{ icon_state = "0-4" @@ -56875,6 +57390,9 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"srJ" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "ssB" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -56887,6 +57405,11 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"stv" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "sxs" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/table, @@ -57081,6 +57604,10 @@ /obj/structure/chair/office/light, /turf/open/floor/plasteel/white, /area/science/circuit) +"sUM" = ( +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "sWR" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57309,6 +57836,11 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"tKR" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "tMl" = ( /obj/effect/turf_decal/loading_area, /turf/open/floor/plasteel/showroomfloor, @@ -57346,6 +57878,10 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"tWb" = ( +/obj/structure/table/glass, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "tWj" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4; @@ -57359,6 +57895,9 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"tYO" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tZe" = ( /obj/effect/turf_decal/bot, /obj/structure/sign/poster/official/pda_ad{ @@ -57366,6 +57905,13 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"tZp" = ( +/obj/structure/pool/ladder{ + dir = 1; + pixel_y = -24 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uaj" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -57428,6 +57974,9 @@ dir = 4 }, /area/crew_quarters/fitness) +"ufG" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "ugu" = ( /obj/structure/cable{ icon_state = "1-4" @@ -57453,10 +58002,10 @@ /area/crew_quarters/cryopod) "ujS" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6 + dir = 10 }, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "unA" = ( /obj/machinery/light{ dir = 8 @@ -57568,6 +58117,13 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"uGB" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -22 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "uGI" = ( /turf/open/floor/grass, /area/security/prison) @@ -57666,6 +58222,16 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"uXr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/public/glass{ + name = "Pool" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "vae" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -57725,6 +58291,9 @@ }, /turf/open/floor/wood, /area/security/vacantoffice) +"vgo" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vhb" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -57822,6 +58391,12 @@ }, /turf/open/floor/wood, /area/library) +"vvc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "vxh" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ @@ -57830,6 +58405,12 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"vxW" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "vyp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, @@ -57850,6 +58431,12 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"vAW" = ( +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "vBa" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -57926,6 +58513,9 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"vGJ" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "vHj" = ( /obj/machinery/door/airlock/public/glass{ name = "Cryogenics " @@ -57973,6 +58563,11 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"vOO" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "vPs" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -57986,6 +58581,14 @@ }, /turf/open/floor/plasteel/white, /area/science/circuit) +"vST" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "vZA" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -57997,6 +58600,16 @@ }, /turf/open/floor/wood, /area/library) +"waB" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/button/door{ + id = "PoolShut"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wbE" = ( /obj/effect/turf_decal/tile/blue{ alpha = 255 @@ -58022,6 +58635,15 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/captain) +"wdn" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "wdv" = ( /obj/structure/fans/tiny/invisible, /turf/open/space/basic, @@ -58036,18 +58658,22 @@ /turf/open/floor/plating, /area/maintenance/bar) "wig" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - on = 0; - pixel_x = -7; - pixel_y = 12 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/turf/open/floor/carpet, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wkN" = ( /turf/closed/wall, /area/science/circuit) +"wmd" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "woR" = ( /obj/machinery/cryopod{ dir = 1 @@ -58098,6 +58724,10 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"wsf" = ( +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wvX" = ( /obj/structure/table/reinforced, /obj/machinery/light, @@ -58141,6 +58771,27 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"wMw" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"wRp" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) +"wTe" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/table/glass, +/obj/structure/bedsheetbin/towel, +/obj/structure/extinguisher_cabinet{ + pixel_x = 27 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wTf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -58182,24 +58833,25 @@ /turf/open/floor/plasteel/white, /area/science/robotics/lab) "wXl" = ( -/obj/structure/mirror{ - pixel_y = 32 - }, -/obj/structure/sink{ - dir = 1; - pixel_y = 25 - }, -/obj/structure/toilet{ +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/machinery/camera{ + c_tag = "Pool West"; dir = 4 }, -/turf/open/floor/mineral/titanium/blue, -/area/crew_quarters/dorms) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wYc" = ( /obj/machinery/vr_sleeper{ dir = 8 }, /turf/open/floor/plasteel, /area/security/prison) +"wYI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wZI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -58366,6 +59018,19 @@ /obj/machinery/light, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"xrT" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"xsJ" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "xtP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -58384,6 +59049,12 @@ }, /turf/open/floor/plating, /area/maintenance/fore) +"xyV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "xzd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -58471,11 +59142,27 @@ /obj/machinery/vending/wardrobe/curator_wardrobe, /turf/open/floor/carpet, /area/library) +"xHg" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) +"xHX" = ( +/turf/open/floor/plasteel/yellowsiding/corner, +/area/crew_quarters/fitness/pool) "xIa" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"xIu" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"xKs" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "xLX" = ( /obj/structure/lattice/catwalk, /obj/item/stack/marker_beacon{ @@ -58489,6 +59176,9 @@ }, /turf/open/space/basic, /area/space/nearstation) +"xOw" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "xOx" = ( /obj/structure/chair/comfy/brown{ color = "#596479"; @@ -58526,6 +59216,9 @@ }, /turf/open/floor/plating, /area/hallway/secondary/entry) +"xSS" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xTy" = ( /obj/structure/cable{ icon_state = "1-2" @@ -93141,7 +93834,7 @@ aif aif aif aif -aif +qlq bkV jKP alK @@ -93393,12 +94086,12 @@ abp abp uhm ahn -aiA -aiA +ahn aiA ahn +ahn oLn -anF +vxW aod ahn apx @@ -93650,12 +94343,12 @@ wdv abp nQi ahn -aaa -aaf -aaf +ahn +vAW ahn ahn -anE +rik +vxW aod aoK oyX @@ -93907,11 +94600,11 @@ aaa adR ahn ahn -aaa -aaa -aaa -aaf ahn +wdn +ahn +ahn +rik anG aoe aoL @@ -94164,13 +94857,13 @@ aaa gXs aaa aaa -aaa -aaa -aaa -aaa +gJi +gJi +gJi +ahn ahn khB -ahn +xIu ahn ahn ahn @@ -94424,17 +95117,17 @@ aaa aaa aaa aaa -aaa -aag -aag -aag -arf +xIu +waB +gBj +cMv +uGB wXl iou -arf -eSe +rQq +mVB wig -vyp +ilb rrM clO asZ @@ -94681,17 +95374,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -arf -lOe -pgf -gzf -eQb +nvN +rHe +xHX +deZ +deZ +deZ +deZ +deZ +fXd jLT -arf +erC arm fHG aya @@ -94938,15 +95631,15 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -arf -arf -arf -arf -oAB +nvN +hky +cRS +bgx +fkK +cFI +fkK +fkK +eBg ujS aqs coh @@ -95195,17 +95888,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -arf -obc -eQb -qAm -arf +nvN +dFj +cRS +fkK +fkK +fkK +fkK +fkK +eBg +gBj +uXr lXE pFX mOO @@ -95452,17 +96145,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -arf -mse -fMZ -dqb -arf +xIu +omt +cRS +fyM +fkK +fkK +fkK +tZp +eBg +gBj +erC xzd sJI jJg @@ -95709,17 +96402,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aae -aaa -aaa -arf -arf -arf -arf -arf +nvN +gBj +cRS +fkK +fkK +fkK +fkK +fkK +eBg +cDM +vvc fZm jmV epD @@ -95966,16 +96659,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs +nvN +gBj +aGp +fkK +fkK +jRz +fkK +fkK +eBg +wYI ewu pQp pQp @@ -96223,16 +96916,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs +nvN +gBj +cRS +fkK +fkK +fkK +fkK +fkK +eBg +wYI aqu aro aro @@ -96480,16 +97173,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa +xIu +eBs +cRS +fyM +fkK +fkK +fkK +tZp +eBg +wYI aqu aro aro @@ -96737,16 +97430,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa +nvN +tWb +cRS +fkK +fkK +fkK +fkK +fkK +eBg +wYI aqu aro aro @@ -96994,16 +97687,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa +nvN +enm +cRS +fkK +fkK +eqv +fkK +fkK +eBg +wYI aqu aro aro @@ -97251,16 +97944,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -gXs -gXs -aaa -aaa -aaa -aaa +nvN +qLL +fGM +hOk +hOk +jYk +hOk +hOk +xsJ +lao aqu aro aro @@ -97508,16 +98201,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -aaa -aaa +xIu +eXn +wsf +wsf +wsf +mtr +qie +qie +qie +wTe vmQ pQp pQp @@ -97764,18 +98457,18 @@ aaS aaS aaS aaS -aaS -aaS -aaS -aaf -aaf -aaa -aaa -aaa -aaa -aaa -aaa aaa +xIu +xIu +nvN +nvN +nvN +xIu +nvN +nvN +nvN +xIu +xIu aaa aaa arj @@ -98021,10 +98714,10 @@ aaf aaa aaf aaa -aaf aaa -aaS -aaf +aaa +aaa +aaa aaa aaa aaa @@ -98280,7 +98973,7 @@ ads adS aeG aaa -aaS +gXs aaa aaa aaa diff --git a/tgstation.dme b/tgstation.dme index ac2ad678a0..fd2b8f35f6 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -489,8 +489,8 @@ #include "code\datums\elements\dusts_on_leaving_area.dm" #include "code\datums\elements\earhealing.dm" #include "code\datums\elements\ghost_role_eligibility.dm" -#include "code\datums\elements\swimming.dm" #include "code\datums\elements\mob_holder.dm" +#include "code\datums\elements\swimming.dm" #include "code\datums\elements\wuv.dm" #include "code\datums\helper_datums\events.dm" #include "code\datums\helper_datums\getrev.dm" From 8643b0103e73c257fa9895b4a37b4c2a02578141 Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Sat, 8 Feb 2020 01:23:08 -0600 Subject: [PATCH 065/137] fucking MAGIC FLOATING LIGHTS AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA --- _maps/map_files/BoxStation/BoxStation.dmm | 1632 ++++++++++----------- 1 file changed, 816 insertions(+), 816 deletions(-) diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index b879a30197..48398f1b48 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -10307,6 +10307,11 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"azm" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/blue, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "azo" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -13026,10 +13031,6 @@ }, /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) -"aGp" = ( -/obj/machinery/pool/controller, -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "aGq" = ( /obj/item/stack/sheet/plasteel{ amount = 10 @@ -23236,12 +23237,6 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/port) -"bgx" = ( -/obj/machinery/pool/filter{ - pixel_y = 24 - }, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "bgy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -44027,6 +44022,12 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/science/misc_lab) +"ccS" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "ccT" = ( /obj/machinery/light{ dir = 4 @@ -48201,6 +48202,9 @@ /obj/machinery/atmospherics/pipe/manifold4w/scrubbers, /turf/open/floor/plasteel, /area/security/brig) +"con" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "cop" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/atmos/incinerator_input{ dir = 1 @@ -52190,10 +52194,12 @@ /turf/closed/wall/r_wall, /area/engine/engineering) "cDM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" }, -/turf/open/floor/plasteel, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/crew_quarters/fitness/pool) "cDN" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible{ @@ -52219,10 +52225,6 @@ /obj/structure/closet/boxinggloves, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"cFI" = ( -/obj/structure/pool/ladder, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "cGz" = ( /obj/structure/table/wood, /obj/item/instrument/violin, @@ -52563,12 +52565,6 @@ /obj/structure/sign/poster/official/cohiba_robusto_ad, /turf/closed/wall, /area/lawoffice) -"cMv" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "cMC" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -52821,9 +52817,6 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"cRS" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "cSA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -53230,6 +53223,11 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) +"cVU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "cXU" = ( /obj/effect/turf_decal/tile/red, /obj/machinery/light{ @@ -53237,7 +53235,7 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/fore) -"cYa" = ( +"cYG" = ( /turf/open/pool, /area/crew_quarters/fitness/pool) "daI" = ( @@ -53268,14 +53266,6 @@ /obj/machinery/meter, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"ddy" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "dev" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -53297,11 +53287,6 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"deZ" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) "dfh" = ( /obj/machinery/power/apc{ areastring = "/area/science/circuit"; @@ -53337,6 +53322,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"diM" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dly" = ( /obj/machinery/door/window/southright{ name = "Target Storage" @@ -53417,6 +53405,12 @@ /obj/machinery/portable_atmospherics/scrubber, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"dCr" = ( +/obj/structure/pool/Rboard, +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "dCV" = ( /obj/structure/table, /obj/structure/cable{ @@ -53433,10 +53427,16 @@ /obj/item/gun/energy/laser/practice, /turf/open/floor/plasteel, /area/security/prison) -"dFj" = ( -/obj/structure/closet/secure_closet/personal, -/obj/item/toy/poolnoodle/yellow, -/turf/open/floor/plasteel, +"dFX" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"dGN" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/crew_quarters/fitness/pool) "dKP" = ( /turf/closed/wall, @@ -53461,8 +53461,8 @@ }, /turf/open/floor/plasteel/white, /area/science/circuit) -"dPh" = ( -/turf/open/pool, +"dOr" = ( +/turf/closed/wall, /area/crew_quarters/fitness/pool) "dPk" = ( /obj/structure/closet{ @@ -53490,12 +53490,12 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) -"dUu" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "dVU" = ( /turf/open/floor/plating, /area/space/nearstation) +"dXo" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "dXq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -53506,9 +53506,6 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"dZA" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "eaI" = ( /obj/structure/table/reinforced, /obj/item/radio/intercom{ @@ -53525,8 +53522,18 @@ }, /turf/open/space, /area/solar/starboard/fore) -"edu" = ( -/turf/closed/wall, +"ebT" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"ecg" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 4 + }, /area/crew_quarters/fitness/pool) "edA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -53563,18 +53570,15 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) +"ekE" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "elh" = ( /obj/structure/chair/comfy/black{ dir = 8 }, /turf/open/floor/wood, /area/crew_quarters/bar) -"enm" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "enB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, @@ -53603,21 +53607,14 @@ /obj/item/assembly/signaler, /turf/open/floor/plating, /area/security/prison) -"eqv" = ( -/obj/structure/pool/Lboard, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "eqA" = ( /obj/machinery/shower{ dir = 8 }, /turf/open/floor/plasteel/freezer, /area/security/prison) -"erC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, +"esx" = ( +/turf/open/pool, /area/crew_quarters/fitness/pool) "esZ" = ( /obj/machinery/door/airlock{ @@ -53657,39 +53654,12 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/quartermaster/miningdock) -"eyX" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "eAJ" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"eBg" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) -"eBj" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"eBs" = ( -/obj/structure/chair/comfy/black{ - dir = 4 - }, -/obj/machinery/button/door{ - id = "PoolShut"; - name = "Pool Shutters"; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "eBX" = ( /obj/machinery/vending/cola/space_up, /turf/open/floor/plasteel/dark, @@ -53766,11 +53736,17 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) -"ePU" = ( -/turf/open/floor/plasteel/yellowsiding{ +"eMs" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/machinery/light/small{ dir = 4 }, -/area/crew_quarters/fitness/pool) +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "eQb" = ( /turf/open/floor/carpet, /area/crew_quarters/dorms) @@ -53792,6 +53768,11 @@ /obj/machinery/door/firedoor, /turf/open/floor/plating, /area/crew_quarters/cryopod) +"eVJ" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "eVL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/light_switch{ @@ -53802,22 +53783,6 @@ }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) -"eXn" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/yellow, -/obj/machinery/button/door{ - id = "PoolShut"; - name = "Pool Shutters"; - pixel_y = 24 - }, -/obj/machinery/light{ - dir = 4; - light_color = "#c1caff" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "fcn" = ( /obj/structure/lattice, /turf/closed/wall/r_wall, @@ -53849,6 +53814,11 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"ffy" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "fgG" = ( /obj/structure/table/wood, /obj/machinery/requests_console{ @@ -53874,15 +53844,6 @@ /obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"fkb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"fkK" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "flc" = ( /obj/structure/table/reinforced, /obj/item/storage/fancy/donut_box, @@ -53931,6 +53892,17 @@ }, /turf/open/floor/plating, /area/crew_quarters/fitness) +"fpz" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "fpI" = ( /obj/machinery/light{ dir = 1 @@ -54000,10 +53972,10 @@ "fxV" = ( /turf/closed/wall/r_wall, /area/hallway/primary/central) -"fyM" = ( +"fyS" = ( /obj/structure/pool/ladder{ - dir = 2; - pixel_y = 24 + dir = 1; + pixel_y = -24 }, /turf/open/pool, /area/crew_quarters/fitness/pool) @@ -54011,9 +53983,6 @@ /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, /area/hydroponics) -"fzi" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "fAj" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -54042,9 +54011,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"fCK" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "fFA" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -54061,14 +54027,14 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"fGM" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "fHG" = ( /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"fIq" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "fIs" = ( /obj/structure/grille, /obj/structure/lattice, @@ -54079,8 +54045,11 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel, /area/science/circuit) -"fMg" = ( -/turf/open/pool, +"fKF" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"fKZ" = ( +/turf/closed/wall, /area/crew_quarters/fitness/pool) "fMZ" = ( /turf/open/floor/plasteel/yellowsiding{ @@ -54120,11 +54089,6 @@ }, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"fXd" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) "fZm" = ( /obj/structure/chair/sofa/left, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -54178,6 +54142,14 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"geH" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "gfr" = ( /obj/structure/bed, /turf/open/floor/plating, @@ -54212,25 +54184,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"giB" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "gjl" = ( /turf/closed/wall, /area/quartermaster/warehouse) -"gkz" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"glI" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "gnf" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -54240,6 +54196,15 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"gni" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"gob" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "gpD" = ( /obj/machinery/light_switch{ pixel_y = 28 @@ -54250,9 +54215,14 @@ }, /turf/open/floor/circuit, /area/ai_monitored/nuke_storage) -"grr" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) +"grc" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "grA" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -54263,6 +54233,9 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) +"gvX" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "gwd" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -54295,12 +54268,6 @@ /obj/structure/curtain, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) -"gBg" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"gBj" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "gBo" = ( /obj/structure/cable{ icon_state = "1-8" @@ -54315,11 +54282,6 @@ /obj/effect/landmark/carpspawn, /turf/open/space/basic, /area/space) -"gDR" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "gIU" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -54346,6 +54308,14 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"gMV" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "gNC" = ( /obj/structure/cable{ icon_state = "1-2" @@ -54357,11 +54327,6 @@ }, /turf/open/floor/wood, /area/bridge/meeting_room) -"gOj" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "gOZ" = ( /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" @@ -54414,9 +54379,6 @@ /obj/structure/lattice, /turf/open/space/basic, /area/space/nearstation) -"gXw" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "gZG" = ( /obj/structure/closet/crate/freezer/surplus_limbs, /obj/item/reagent_containers/glass/beaker/synthflesh, @@ -54445,9 +54407,6 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"hbh" = ( -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "hcb" = ( /turf/open/floor/carpet, /area/crew_quarters/theatre) @@ -54484,11 +54443,6 @@ /obj/effect/landmark/blobstart, /turf/open/floor/plating, /area/maintenance/department/electrical) -"hky" = ( -/obj/structure/closet/secure_closet/personal, -/obj/item/toy/poolnoodle/blue, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "hlV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -54528,8 +54482,16 @@ }, /turf/open/floor/plating, /area/space/nearstation) -"hzU" = ( -/turf/open/pool, +"hul" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"hzK" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 1 + }, /area/crew_quarters/fitness/pool) "hBA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -54569,11 +54531,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"hOk" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "hOv" = ( /obj/structure/table/wood/fancy, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -54631,9 +54588,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"iaL" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "idK" = ( /obj/structure/cable{ icon_state = "1-4" @@ -54678,19 +54632,15 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"ikL" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"ilb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "imH" = ( /obj/structure/falsewall, /turf/open/floor/plating, /area/maintenance/bar) +"inO" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "inR" = ( /obj/structure/chair/stool{ pixel_y = 8 @@ -54754,6 +54704,9 @@ /obj/effect/turf_decal/tile/green, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"iwv" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "iwB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -54768,6 +54721,18 @@ }, /turf/open/floor/wood, /area/maintenance/bar) +"iAv" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"iBv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"iBU" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "iDo" = ( /obj/structure/grille, /turf/open/space/basic, @@ -54784,10 +54749,6 @@ }, /turf/open/space/basic, /area/space) -"iEd" = ( -/obj/structure/bed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "iEJ" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod One" @@ -54803,8 +54764,20 @@ }, /turf/closed/wall/r_wall, /area/engine/gravity_generator) -"iMO" = ( -/turf/closed/wall, +"iMv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/table/glass, +/obj/structure/bedsheetbin/towel, +/obj/structure/extinguisher_cabinet{ + pixel_x = 27 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) "iNn" = ( /obj/machinery/camera{ @@ -54814,8 +54787,13 @@ /obj/structure/reagent_dispensers/cooking_oil, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) -"iPG" = ( -/turf/open/pool, +"iOe" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/crew_quarters/fitness/pool) "iTq" = ( /obj/structure/chair/stool{ @@ -54832,9 +54810,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) -"iVN" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "iVU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -54849,6 +54824,19 @@ /obj/item/coin/silver, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"iYE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/table/glass, +/obj/item/storage/firstaid/regular, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"iYY" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "jaF" = ( /obj/machinery/light/small, /obj/machinery/atmospherics/components/unary/tank/air{ @@ -54905,16 +54893,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) -"jgV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/bed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"jhD" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "jjC" = ( /obj/structure/table/wood, /obj/item/toy/cards/deck, @@ -54957,14 +54935,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"jog" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "jqv" = ( /obj/structure/chair/wood/normal{ dir = 1 @@ -54991,6 +54961,12 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) +"juP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "jvd" = ( /obj/structure/closet/athletic_mixed, /turf/open/floor/plasteel, @@ -55002,6 +54978,12 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/maintenance/port) +"jzi" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"jzF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "jAD" = ( /obj/structure/grille, /turf/open/floor/plating/airless, @@ -55061,9 +55043,6 @@ dir = 1 }, /area/crew_quarters/fitness) -"jFm" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "jFH" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -55149,16 +55128,23 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) +"jMW" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "PoolShut"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "jRw" = ( /obj/machinery/computer/arcade/minesweeper{ dir = 4 }, /turf/open/floor/plasteel, /area/security/prison) -"jRz" = ( -/obj/machinery/pool/drain, -/turf/open/pool, -/area/crew_quarters/fitness/pool) "jSO" = ( /obj/machinery/light{ dir = 4 @@ -55168,9 +55154,6 @@ }, /turf/open/floor/plasteel, /area/science/circuit) -"jTy" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "jVl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -55180,11 +55163,13 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"jYk" = ( -/obj/structure/pool/Rboard, -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 +"jWJ" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/crew_quarters/fitness/pool) "jZT" = ( /obj/structure/cable{ @@ -55198,6 +55183,18 @@ "kaq" = ( /turf/closed/wall/mineral/titanium, /area/space/nearstation) +"kcB" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) +"kdO" = ( +/obj/machinery/pool/controller, +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "kdP" = ( /obj/structure/cable{ icon_state = "2-8" @@ -55327,21 +55324,10 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"kpO" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "kqI" = ( /obj/structure/window, /turf/open/floor/wood, /area/crew_quarters/bar) -"kqK" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "ktP" = ( /obj/machinery/power/smes{ charge = 5e+006 @@ -55372,9 +55358,6 @@ }, /turf/open/floor/wood, /area/bridge/meeting_room) -"kwY" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "kxf" = ( /obj/machinery/vr_sleeper{ dir = 4 @@ -55392,9 +55375,6 @@ dir = 4 }, /area/crew_quarters/fitness) -"kyz" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "kyF" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/wood, @@ -55403,6 +55383,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, /area/science/mixing) +"kzV" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "kAH" = ( /obj/machinery/camera{ c_tag = "Bar West"; @@ -55461,6 +55444,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"kLk" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "kMt" = ( /obj/structure/lattice, /turf/closed/wall, @@ -55480,6 +55471,11 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"kNN" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) "kPd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/structure/cable{ @@ -55511,8 +55507,10 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/quartermaster/miningdock) -"kTZ" = ( -/turf/open/pool, +"kSu" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, /area/crew_quarters/fitness/pool) "kWp" = ( /obj/structure/shuttle/engine/heater{ @@ -55520,9 +55518,6 @@ }, /turf/closed/wall/mineral/titanium, /area/space/nearstation) -"kWB" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "kYk" = ( /obj/machinery/door/firedoor, /obj/structure/sign/departments/evac{ @@ -55530,13 +55525,11 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"lao" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/item/storage/firstaid/regular, -/turf/open/floor/plasteel, +"kZa" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"kZw" = ( +/turf/open/floor/plasteel/yellowsiding, /area/crew_quarters/fitness/pool) "laq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -55567,6 +55560,12 @@ /obj/item/clothing/under/lawyer/red, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"lnk" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "lnu" = ( /obj/structure/chair/wood/normal{ dir = 4 @@ -55597,11 +55596,29 @@ }, /turf/open/floor/plasteel, /area/hydroponics) +"lvU" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) +"lwb" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "lyR" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/security/prison) +"lzC" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "lAB" = ( /obj/structure/sign/nanotrasen, /turf/closed/wall, @@ -55612,6 +55629,12 @@ }, /turf/open/floor/plating, /area/construction/mining/aux_base) +"lCo" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "lGV" = ( /obj/machinery/button/door{ id = "maintdiy"; @@ -55621,23 +55644,12 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"lHe" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "lMg" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 }, /turf/open/floor/plasteel, /area/science/circuit) -"lMu" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "lOe" = ( /turf/open/floor/plasteel/yellowsiding{ dir = 4 @@ -55649,12 +55661,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/port) -"lQr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "lQG" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -55665,6 +55671,9 @@ }, /turf/open/floor/carpet, /area/crew_quarters/theatre) +"lSk" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "lUS" = ( /obj/structure/table/wood/fancy/black, /obj/machinery/light/small, @@ -55686,6 +55695,12 @@ /obj/item/coin/gold, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"lZK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "mbU" = ( /obj/machinery/vr_sleeper{ dir = 8 @@ -55706,13 +55721,36 @@ /obj/item/target/syndicate, /turf/open/floor/plating, /area/security/prison) +"mcA" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) +"meb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"mgF" = ( +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"miN" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "mjr" = ( /obj/structure/reagent_dispensers/keg/milk, /turf/open/floor/wood, /area/crew_quarters/bar) -"mjL" = ( +"mjw" = ( /turf/open/floor/plasteel/yellowsiding, /area/crew_quarters/fitness/pool) +"mko" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "mkv" = ( /obj/machinery/camera{ c_tag = "Gravity Generator Room"; @@ -55778,14 +55816,6 @@ }, /turf/open/pool, /area/crew_quarters/fitness/pool) -"mtr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/machinery/camera{ - c_tag = "Pool East"; - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "mvt" = ( /obj/machinery/airalarm{ dir = 1; @@ -55793,10 +55823,13 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"mwT" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 +"mwU" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/crew_quarters/fitness/pool) "myh" = ( /obj/structure/piano, @@ -55812,9 +55845,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"mzR" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "mAH" = ( /obj/machinery/atmospherics/components/unary/tank/air{ dir = 8 @@ -55835,20 +55865,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"mIg" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"mIR" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "mIZ" = ( /obj/structure/falsewall, /turf/open/floor/plating, @@ -55947,14 +55963,6 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"mPz" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "mPE" = ( /obj/machinery/chem_dispenser/drinks, /obj/structure/table/wood, @@ -55996,15 +56004,8 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) -"mVB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"mZJ" = ( -/turf/open/pool, +"mWU" = ( +/turf/open/floor/plasteel/yellowsiding, /area/crew_quarters/fitness/pool) "nbT" = ( /obj/structure/cable{ @@ -56028,14 +56029,6 @@ /obj/item/instrument/piano_synth, /turf/open/floor/wood, /area/crew_quarters/theatre) -"nfj" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "nfm" = ( /obj/machinery/vending/autodrobe, /turf/open/floor/wood, @@ -56059,6 +56052,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"nji" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "nkP" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance{ @@ -56083,6 +56079,9 @@ "nsA" = ( /turf/closed/wall, /area/crew_quarters/abandoned_gambling_den) +"ntF" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "nuw" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ @@ -56091,14 +56090,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"nvN" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "nwX" = ( /obj/structure/grille/broken, /turf/open/floor/plating/airless, @@ -56114,8 +56105,8 @@ }, /turf/open/floor/plating, /area/construction) -"nBS" = ( -/turf/open/floor/plasteel, +"nFm" = ( +/turf/open/pool, /area/crew_quarters/fitness/pool) "nGf" = ( /obj/machinery/hydroponics/constructable, @@ -56192,9 +56183,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"nTF" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "nUV" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -56205,9 +56193,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel/dark, /area/hallway/primary/central) -"nXZ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "nYe" = ( /obj/structure/safe, /obj/item/clothing/head/bearpelt, @@ -56260,6 +56245,9 @@ "obc" = ( /turf/open/pool, /area/crew_quarters/fitness/pool) +"obd" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "oce" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 @@ -56280,13 +56268,11 @@ /obj/machinery/vending/kink, /turf/open/floor/plating, /area/maintenance/bar) -"oeE" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, +"oer" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) +"ofa" = ( +/turf/open/pool, /area/crew_quarters/fitness/pool) "ofU" = ( /obj/structure/chair/comfy/black{ @@ -56294,13 +56280,20 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"oiP" = ( +"ogc" = ( /obj/structure/pool/ladder{ dir = 2; pixel_y = 24 }, /turf/open/pool, /area/crew_quarters/fitness/pool) +"ohq" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -22 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "old" = ( /obj/effect/turf_decal/tile/red{ dir = 8 @@ -56315,12 +56308,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/science/circuit) -"omt" = ( -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "omY" = ( /obj/item/flashlight/lamp/green{ pixel_x = -3; @@ -56333,14 +56320,6 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"opx" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "oqj" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -56382,6 +56361,9 @@ /obj/effect/spawner/structure/window, /turf/open/floor/grass, /area/crew_quarters/bar) +"oxp" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "oyl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -56432,12 +56414,6 @@ /obj/structure/fireplace, /turf/open/floor/carpet, /area/crew_quarters/dorms) -"oBi" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) -"oCK" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "oDN" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56453,8 +56429,10 @@ /obj/effect/spawner/lootdrop/keg, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"oGU" = ( -/turf/open/pool, +"oFi" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, /area/crew_quarters/fitness/pool) "oHB" = ( /turf/open/floor/plasteel/dark, @@ -56486,9 +56464,6 @@ }, /turf/open/floor/wood, /area/maintenance/bar) -"oKR" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "oLl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -56499,9 +56474,6 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "oLn" = ( -/obj/machinery/light/small{ - dir = 4 - }, /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance{ lootcount = 2; @@ -56527,6 +56499,13 @@ /obj/machinery/disposal/bin, /turf/open/floor/plasteel/white, /area/science/circuit) +"oVo" = ( +/obj/structure/pool/ladder, +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"oWT" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "oZl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/closet/wardrobe/pjs, @@ -56569,6 +56548,14 @@ }, /turf/open/floor/plating, /area/security/prison) +"pkF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "plm" = ( /obj/structure/reagent_dispensers/watertank/high, /obj/effect/turf_decal/tile/yellow{ @@ -56664,6 +56651,14 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"pHa" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "pHl" = ( /obj/structure/table, /obj/item/storage/box/beakers{ @@ -56722,6 +56717,9 @@ }, /turf/open/floor/plating, /area/maintenance/disposal) +"pNf" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "pPi" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56760,6 +56758,15 @@ }, /turf/open/floor/plating, /area/crew_quarters/fitness) +"pSl" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"pSK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "pTB" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -56796,6 +56803,16 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"qeA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/public/glass{ + name = "Pool" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "qeQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -56829,46 +56846,17 @@ /obj/effect/spawner/structure/window, /turf/open/floor/wood, /area/library) -"qie" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/bed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) -"qiC" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "qje" = ( /obj/structure/sign/mining{ pixel_y = 7 }, /turf/closed/wall, /area/quartermaster/miningdock) -"qkh" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"qlq" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) "qmn" = ( /obj/machinery/computer/libraryconsole/bookmanagement, /obj/structure/table, /turf/open/floor/plasteel, /area/security/prison) -"qmX" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 8 - }, -/area/crew_quarters/fitness/pool) "qqs" = ( /obj/structure/mirror{ pixel_y = 32 @@ -56879,9 +56867,6 @@ }, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/toilet) -"qtZ" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "qus" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -56906,9 +56891,6 @@ /obj/structure/lattice, /turf/closed/wall/r_wall, /area/crew_quarters/heads/captain) -"qDJ" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "qIw" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56922,15 +56904,8 @@ }, /turf/open/space, /area/solar/port/aft) -"qJU" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"qLL" = ( -/obj/structure/closet/athletic_mixed, -/obj/item/toy/poolnoodle/red, -/obj/item/toy/poolnoodle/blue, -/obj/item/toy/poolnoodle/yellow, -/turf/open/floor/plasteel, +"qLk" = ( +/turf/open/pool, /area/crew_quarters/fitness/pool) "qLR" = ( /obj/structure/mirror{ @@ -56965,9 +56940,6 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) -"qSb" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "qTG" = ( /obj/machinery/light{ dir = 8 @@ -56987,6 +56959,12 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"qWV" = ( +/obj/machinery/pool/filter{ + pixel_y = 24 + }, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "qXg" = ( /obj/structure/chair/sofa/left, /turf/open/floor/plasteel, @@ -57016,33 +56994,25 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"rfr" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "rfW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"rik" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" +"rgW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"rje" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "rjQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/crew_quarters/theatre) -"rlx" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "rmN" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -57070,12 +57040,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"rpl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "rqf" = ( /obj/machinery/light{ dir = 1 @@ -57193,11 +57157,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"rAB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/bed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "rBq" = ( /obj/item/clothing/head/kitty, /obj/item/clothing/under/maid, @@ -57215,10 +57174,10 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) -"rHe" = ( -/obj/structure/closet/secure_closet/personal, -/obj/item/toy/poolnoodle/red, -/turf/open/floor/plasteel, +"rHr" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, /area/crew_quarters/fitness/pool) "rIA" = ( /obj/machinery/light{ @@ -57226,6 +57185,11 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) +"rKg" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/crew_quarters/fitness/pool) "rKP" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 @@ -57259,14 +57223,6 @@ dir = 4 }, /area/crew_quarters/theatre) -"rQq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/extinguisher_cabinet{ - pixel_x = -27; - pixel_y = 1 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "rTu" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57277,6 +57233,9 @@ }, /turf/open/floor/plasteel/dark, /area/bridge/meeting_room) +"rTT" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "rXl" = ( /obj/structure/chair/office/light, /obj/machinery/firealarm{ @@ -57325,9 +57284,6 @@ dir = 4 }, /area/crew_quarters/fitness) -"scx" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "seP" = ( /obj/structure/cable{ icon_state = "0-4" @@ -57363,6 +57319,9 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/maintenance/department/medical/morgue) +"soq" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "spu" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -57390,9 +57349,6 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"srJ" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "ssB" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -57405,10 +57361,20 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"stv" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 +"sth" = ( +/obj/structure/table/glass, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"str" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 }, +/turf/closed/wall, +/area/crew_quarters/fitness/pool) +"stF" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/yellow, +/turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) "sxs" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57486,6 +57452,9 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"sGo" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "sHx" = ( /obj/structure/table, /obj/item/book/manual/hydroponics_pod_people{ @@ -57550,6 +57519,9 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"sNo" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "sNK" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /obj/structure/cable{ @@ -57604,10 +57576,6 @@ /obj/structure/chair/office/light, /turf/open/floor/plasteel/white, /area/science/circuit) -"sUM" = ( -/obj/structure/bed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "sWR" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57638,10 +57606,19 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/crew_quarters/bar) +"sZG" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "tal" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/hallway/secondary/service) +"tbG" = ( +/obj/structure/bed, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "tgH" = ( /obj/structure/filingcabinet/employment, /turf/open/floor/wood, @@ -57743,6 +57720,9 @@ /obj/item/crowbar/red, /turf/open/floor/plating, /area/maintenance/port) +"tyd" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tyX" = ( /obj/structure/cable{ icon_state = "4-8" @@ -57759,6 +57739,25 @@ /obj/item/soap, /turf/open/floor/mineral/titanium/blue, /area/crew_quarters/dorms) +"tAC" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"tAH" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) +"tAN" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tCa" = ( /obj/structure/table/wood, /obj/item/instrument/guitar{ @@ -57781,6 +57780,9 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) +"tFa" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "tJi" = ( /obj/machinery/airalarm{ dir = 4; @@ -57836,15 +57838,13 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"tKR" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "tMl" = ( /obj/effect/turf_decal/loading_area, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) +"tMM" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/crew_quarters/fitness/pool) "tNF" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -57878,8 +57878,8 @@ }, /turf/open/floor/wood, /area/maintenance/bar) -"tWb" = ( -/obj/structure/table/glass, +"tSh" = ( +/obj/structure/bed, /turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) "tWj" = ( @@ -57895,9 +57895,6 @@ }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) -"tYO" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "tZe" = ( /obj/effect/turf_decal/bot, /obj/structure/sign/poster/official/pda_ad{ @@ -57905,12 +57902,10 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"tZp" = ( -/obj/structure/pool/ladder{ - dir = 1; - pixel_y = -24 +"tZk" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 }, -/turf/open/pool, /area/crew_quarters/fitness/pool) "uaj" = ( /obj/effect/turf_decal/tile/red{ @@ -57959,6 +57954,12 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) +"uei" = ( +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fore/secondary) "ufD" = ( /obj/machinery/vr_sleeper{ dir = 4 @@ -57974,9 +57975,6 @@ dir = 4 }, /area/crew_quarters/fitness) -"ufG" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "ugu" = ( /obj/structure/cable{ icon_state = "1-4" @@ -58006,12 +58004,22 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) +"ulM" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/red, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "unA" = ( /obj/machinery/light{ dir = 8 }, /turf/open/floor/wood, /area/crew_quarters/bar) +"unR" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "unW" = ( /obj/effect/landmark/event_spawn, /obj/structure/cable{ @@ -58041,6 +58049,9 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) +"upW" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "usO" = ( /obj/machinery/vending/snack/random, /obj/machinery/light/small{ @@ -58071,6 +58082,9 @@ /obj/structure/mineral_door/wood, /turf/open/floor/wood, /area/maintenance/bar) +"uxe" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "uxY" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable{ @@ -58083,6 +58097,16 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/dorms) +"uzs" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 4 + }, +/area/crew_quarters/fitness/pool) +"uAH" = ( +/turf/open/floor/plasteel/yellowsiding/corner{ + dir = 8 + }, +/area/crew_quarters/fitness/pool) "uBa" = ( /obj/structure/table, /obj/item/reagent_containers/food/drinks/soda_cans/starkist{ @@ -58102,6 +58126,14 @@ }, /turf/open/space, /area/solar/port/fore) +"uEx" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "uEI" = ( /obj/structure/chair/comfy/brown{ dir = 8 @@ -58117,13 +58149,6 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) -"uGB" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -22 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "uGI" = ( /turf/open/floor/grass, /area/security/prison) @@ -58202,6 +58227,9 @@ /obj/machinery/power/terminal, /turf/closed/wall/r_wall, /area/engine/gravity_generator) +"uRu" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uRS" = ( /obj/structure/chair/stool{ pixel_y = 8 @@ -58210,6 +58238,10 @@ icon_state = "carpetsymbol" }, /area/crew_quarters/theatre) +"uSC" = ( +/obj/machinery/pool/drain, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "uVS" = ( /obj/structure/cable{ icon_state = "4-8" @@ -58222,16 +58254,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"uXr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Pool" - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "vae" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -58291,8 +58313,11 @@ }, /turf/open/floor/wood, /area/security/vacantoffice) -"vgo" = ( -/turf/open/pool, +"veS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, /area/crew_quarters/fitness/pool) "vhb" = ( /obj/effect/turf_decal/tile/blue{ @@ -58306,6 +58331,9 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/locker) +"vie" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "viF" = ( /obj/structure/table/wood, /obj/item/instrument/trumpet, @@ -58353,6 +58381,10 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) +"voW" = ( +/obj/structure/pool/Lboard, +/turf/open/pool, +/area/crew_quarters/fitness/pool) "vpY" = ( /obj/structure/closet/lasertag/blue, /obj/item/clothing/under/pj/blue, @@ -58391,12 +58423,6 @@ }, /turf/open/floor/wood, /area/library) -"vvc" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "vxh" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ @@ -58405,12 +58431,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"vxW" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) "vyp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, @@ -58431,12 +58451,14 @@ }, /turf/open/floor/wood, /area/maintenance/bar) -"vAW" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 +"vAl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/machinery/camera{ + c_tag = "Pool East"; + dir = 8 }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "vBa" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -58513,9 +58535,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"vGJ" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) "vHj" = ( /obj/machinery/door/airlock/public/glass{ name = "Cryogenics " @@ -58563,11 +58582,6 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/locker) -"vOO" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "vPs" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -58581,13 +58595,8 @@ }, /turf/open/floor/plasteel/white, /area/science/circuit) -"vST" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, +"vSu" = ( +/turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) "vZA" = ( /obj/structure/lattice/catwalk, @@ -58600,13 +58609,9 @@ }, /turf/open/floor/wood, /area/library) -"waB" = ( -/obj/structure/closet/secure_closet/personal, -/obj/item/toy/poolnoodle/yellow, -/obj/machinery/button/door{ - id = "PoolShut"; - name = "Pool Shutters"; - pixel_y = 24 +"wag" = ( +/obj/structure/chair/comfy/black{ + dir = 8 }, /turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) @@ -58635,15 +58640,9 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/captain) -"wdn" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) +"wcR" = ( +/turf/open/floor/plasteel/yellowsiding/corner, +/area/crew_quarters/fitness/pool) "wdv" = ( /obj/structure/fans/tiny/invisible, /turf/open/space/basic, @@ -58666,14 +58665,6 @@ "wkN" = ( /turf/closed/wall, /area/science/circuit) -"wmd" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "PoolShut"; - name = "Pool Shutters" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/crew_quarters/fitness/pool) "woR" = ( /obj/machinery/cryopod{ dir = 1 @@ -58694,6 +58685,9 @@ }, /turf/open/floor/plating, /area/construction/mining/aux_base) +"wpR" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "wql" = ( /obj/structure/extinguisher_cabinet, /turf/closed/wall/r_wall, @@ -58724,10 +58718,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/service) -"wsf" = ( -/obj/structure/bed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "wvX" = ( /obj/structure/table/reinforced, /obj/machinery/light, @@ -58747,12 +58737,21 @@ }, /turf/closed/wall, /area/hallway/secondary/service) +"wHk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "wHz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) +"wHU" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/pool) "wIG" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -58771,26 +58770,12 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"wMw" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"wRp" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) -"wTe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 +"wQg" = ( +/obj/structure/pool/ladder{ + dir = 2; + pixel_y = 24 }, -/obj/structure/table/glass, -/obj/structure/bedsheetbin/towel, -/obj/structure/extinguisher_cabinet{ - pixel_x = 27 - }, -/obj/machinery/light{ - dir = 4; - light_color = "#c1caff" - }, -/turf/open/floor/plasteel, +/turf/open/pool, /area/crew_quarters/fitness/pool) "wTf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -58832,6 +58817,24 @@ /obj/effect/landmark/start/roboticist, /turf/open/floor/plasteel/white, /area/science/robotics/lab) +"wWW" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/button/door{ + id = "PoolShut"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) +"wXa" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "PoolShut"; + name = "Pool Shutters" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/crew_quarters/fitness/pool) "wXl" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /obj/machinery/camera{ @@ -58846,12 +58849,6 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"wYI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/pool) "wZI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -58861,6 +58858,22 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) +"xaB" = ( +/obj/structure/closet/athletic_mixed, +/obj/item/toy/poolnoodle/red, +/obj/item/toy/poolnoodle/blue, +/obj/item/toy/poolnoodle/yellow, +/obj/machinery/button/door{ + id = "PoolShut"; + name = "Pool Shutters"; + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "xbn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 @@ -58892,6 +58905,9 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) +"xgo" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "xgC" = ( /obj/structure/cable{ icon_state = "0-4" @@ -59018,18 +59034,11 @@ /obj/machinery/light, /turf/open/floor/plasteel, /area/crew_quarters/dorms) -"xrT" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/fore/secondary) -"xsJ" = ( -/turf/open/floor/plasteel/yellowsiding/corner{ - dir = 1 - }, +"xsO" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"xtO" = ( +/turf/open/pool, /area/crew_quarters/fitness/pool) "xtP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -59049,11 +59058,8 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"xyV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, +"xyT" = ( +/turf/open/pool, /area/crew_quarters/fitness/pool) "xzd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -59142,27 +59148,14 @@ /obj/machinery/vending/wardrobe/curator_wardrobe, /turf/open/floor/carpet, /area/library) -"xHg" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 4 - }, -/area/crew_quarters/fitness/pool) -"xHX" = ( -/turf/open/floor/plasteel/yellowsiding/corner, +"xFB" = ( +/turf/closed/wall, /area/crew_quarters/fitness/pool) "xIa" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/starboard/aft) -"xIu" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/pool) -"xKs" = ( -/turf/open/floor/plasteel/yellowsiding{ - dir = 1 - }, -/area/crew_quarters/fitness/pool) "xLX" = ( /obj/structure/lattice/catwalk, /obj/item/stack/marker_beacon{ @@ -59176,9 +59169,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"xOw" = ( -/turf/open/floor/plasteel/yellowsiding, -/area/crew_quarters/fitness/pool) "xOx" = ( /obj/structure/chair/comfy/brown{ color = "#596479"; @@ -59216,9 +59206,6 @@ }, /turf/open/floor/plating, /area/hallway/secondary/entry) -"xSS" = ( -/turf/open/pool, -/area/crew_quarters/fitness/pool) "xTy" = ( /obj/structure/cable{ icon_state = "1-2" @@ -59254,6 +59241,13 @@ /obj/item/clothing/under/pj/red, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"xZL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness/pool) "ybj" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -59298,6 +59292,12 @@ /obj/machinery/suit_storage_unit/rd, /turf/open/floor/plasteel, /area/science/mixing) +"yfk" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) +"yfL" = ( +/turf/open/pool, +/area/crew_quarters/fitness/pool) "yhz" = ( /obj/structure/table, /obj/item/folder/blue, @@ -93834,7 +93834,7 @@ aif aif aif aif -qlq +fpz bkV jKP alK @@ -94090,8 +94090,8 @@ ahn aiA ahn ahn -oLn -vxW +grc +ccS aod ahn apx @@ -94344,11 +94344,11 @@ abp nQi ahn ahn -vAW +uei ahn ahn -rik -vxW +grc +ccS aod aoK oyX @@ -94601,10 +94601,10 @@ adR ahn ahn ahn -wdn +tAH ahn ahn -rik +eMs anG aoe aoL @@ -94863,7 +94863,7 @@ gJi ahn ahn khB -xIu +dFX ahn ahn ahn @@ -95117,17 +95117,17 @@ aaa aaa aaa aaa -xIu -waB -gBj -cMv -uGB +dFX +wWW +iwv +lCo +ohq wXl iou -rQq -mVB +pkF +xZL wig -ilb +str rrM clO asZ @@ -95374,17 +95374,17 @@ aaa aaa aaa aaa -nvN -rHe -xHX -deZ -deZ -deZ -deZ -deZ -fXd +miN +ulM +wcR +oFi +oFi +oFi +oFi +oFi +ecg jLT -erC +hul arm fHG aya @@ -95631,15 +95631,15 @@ aaa aaa aaa aaa -nvN -hky -cRS -bgx -fkK -cFI -fkK -fkK -eBg +miN +azm +oer +qWV +ekE +oVo +ekE +ekE +tZk ujS aqs coh @@ -95888,17 +95888,17 @@ aaa aaa aaa aaa -nvN -dFj -cRS -fkK -fkK -fkK -fkK -fkK -eBg -gBj -uXr +miN +stF +oer +ekE +ekE +ekE +ekE +ekE +tZk +iwv +qeA lXE pFX mOO @@ -96145,17 +96145,17 @@ aaa aaa aaa aaa -xIu -omt -cRS -fyM -fkK -fkK -fkK -tZp -eBg -gBj -erC +dFX +lnk +oer +ogc +ekE +ekE +ekE +fyS +tZk +iwv +hul xzd sJI jJg @@ -96402,17 +96402,17 @@ aaa aaa aaa aaa -nvN -gBj -cRS -fkK -fkK -fkK -fkK -fkK -eBg -cDM -vvc +miN +iwv +oer +ekE +ekE +ekE +ekE +ekE +tZk +iBv +lZK fZm jmV epD @@ -96659,16 +96659,16 @@ aaa aaa aaa aaa -nvN -gBj -aGp -fkK -fkK -jRz -fkK -fkK -eBg -wYI +miN +iwv +kdO +ekE +ekE +uSC +ekE +ekE +tZk +pSK ewu pQp pQp @@ -96916,16 +96916,16 @@ aaa aaa aaa aaa -nvN -gBj -cRS -fkK -fkK -fkK -fkK -fkK -eBg -wYI +miN +iwv +oer +ekE +ekE +ekE +ekE +ekE +tZk +pSK aqu aro aro @@ -97173,16 +97173,16 @@ aaa aaa aaa aaa -xIu -eBs -cRS -fyM -fkK -fkK -fkK -tZp -eBg -wYI +dFX +jMW +oer +ogc +ekE +ekE +ekE +fyS +tZk +pSK aqu aro aro @@ -97430,16 +97430,16 @@ aaa aaa aaa aaa -nvN -tWb -cRS -fkK -fkK -fkK -fkK -fkK -eBg -wYI +miN +sth +oer +ekE +ekE +ekE +ekE +ekE +tZk +pSK aqu aro aro @@ -97687,16 +97687,16 @@ aaa aaa aaa aaa -nvN -enm -cRS -fkK -fkK -eqv -fkK -fkK -eBg -wYI +miN +wag +oer +ekE +ekE +voW +ekE +ekE +tZk +pSK aqu aro aro @@ -97944,16 +97944,16 @@ aaa aaa aaa aaa -nvN -qLL -fGM -hOk -hOk -jYk -hOk -hOk -xsJ -lao +miN +tAC +uAH +ffy +ffy +dCr +ffy +ffy +hzK +iYE aqu aro aro @@ -98201,16 +98201,16 @@ aaa aaa aaa aaa -xIu -eXn -wsf -wsf -wsf -mtr -qie -qie -qie -wTe +dFX +xaB +mgF +mgF +mgF +vAl +rje +rje +rje +iMv vmQ pQp pQp @@ -98458,17 +98458,17 @@ aaS aaS aaS aaa -xIu -xIu -nvN -nvN -nvN -xIu -nvN -nvN -nvN -xIu -xIu +dFX +dFX +miN +miN +miN +dFX +miN +miN +miN +dFX +dFX aaa aaa arj From a9a167b9d3531702ca417040b4854f8bd54be185 Mon Sep 17 00:00:00 2001 From: Artur Date: Tue, 11 Feb 2020 20:18:32 +0200 Subject: [PATCH 066/137] Suffering and co --- code/__DEFINES/components.dm | 7 +- code/__DEFINES/mobs.dm | 2 +- code/__DEFINES/nanites.dm | 45 ++- code/__DEFINES/traits.dm | 1 + code/datums/components/nanites.dm | 134 +++++-- code/game/objects/items/defib.dm | 17 +- code/modules/mob/living/carbon/carbon.dm | 16 + .../research/designs/nanite_designs.dm | 75 +++- .../nanites/extra_settings/_extra_setting.dm | 20 + .../nanites/extra_settings/boolean.dm | 27 ++ .../research/nanites/extra_settings/number.dm | 32 ++ .../research/nanites/extra_settings/text.dm | 18 + .../research/nanites/extra_settings/type.dm | 18 + .../research/nanites/nanite_chamber.dm | 90 ++--- .../nanites/nanite_chamber_computer.dm | 100 +---- .../nanites/nanite_cloud_controller.dm | 104 +++-- .../research/nanites/nanite_hijacker.dm | 4 +- .../research/nanites/nanite_misc_items.dm | 2 +- .../research/nanites/nanite_program_hub.dm | 61 +-- .../research/nanites/nanite_programmer.dm | 106 +++--- .../research/nanites/nanite_programs.dm | 206 ++++++---- .../nanites/nanite_programs/buffing.dm | 18 +- .../nanites/nanite_programs/healing.dm | 81 ++-- .../nanites/nanite_programs/protocols.dm | 107 ++++++ .../nanites/nanite_programs/sensor.dm | 358 ++++++------------ .../nanites/nanite_programs/suppression.dm | 295 +++++---------- .../nanites/nanite_programs/utility.dm | 321 ++++++---------- .../nanites/nanite_programs/weapon.dm | 72 ++-- .../modules/research/nanites/nanite_remote.dm | 106 ++---- .../modules/research/nanites/program_disks.dm | 13 +- .../research/nanites/public_chamber.dm | 84 ++-- code/modules/research/nanites/rules.dm | 151 ++++++++ tgstation.dme | 6 + tgui-next/packages/tgui/public/tgui.bundle.js | 4 +- tgui-next/packages/tgui/routes.js | 25 ++ 35 files changed, 1445 insertions(+), 1281 deletions(-) create mode 100644 code/modules/research/nanites/extra_settings/_extra_setting.dm create mode 100644 code/modules/research/nanites/extra_settings/boolean.dm create mode 100644 code/modules/research/nanites/extra_settings/number.dm create mode 100644 code/modules/research/nanites/extra_settings/text.dm create mode 100644 code/modules/research/nanites/extra_settings/type.dm create mode 100644 code/modules/research/nanites/nanite_programs/protocols.dm create mode 100644 code/modules/research/nanites/rules.dm diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index c4c9d815a0..cf3a3c1faf 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -295,11 +295,14 @@ //Nanites #define COMSIG_HAS_NANITES "has_nanites" //() returns TRUE if nanites are found #define COMSIG_NANITE_IS_STEALTHY "nanite_is_stealthy" //() returns TRUE if nanites have stealth +#define COMSIG_NANITE_DELETE "nanite_delete" //() deletes the nanite component #define COMSIG_NANITE_GET_PROGRAMS "nanite_get_programs" //(list/nanite_programs) - makes the input list a copy the nanites' program list +#define COMSIG_NANITE_GET_VOLUME "nanite_get_volume" //(amount) Returns nanite amount #define COMSIG_NANITE_SET_VOLUME "nanite_set_volume" //(amount) Sets current nanite volume to the given amount #define COMSIG_NANITE_ADJUST_VOLUME "nanite_adjust" //(amount) Adjusts nanite volume by the given amount #define COMSIG_NANITE_SET_MAX_VOLUME "nanite_set_max_volume" //(amount) Sets maximum nanite volume to the given amount #define COMSIG_NANITE_SET_CLOUD "nanite_set_cloud" //(amount(0-100)) Sets cloud ID to the given amount +#define COMSIG_NANITE_SET_CLOUD_SYNC "nanite_set_cloud_sync" //(method) Modify cloud sync status. Method can be toggle, enable or disable #define COMSIG_NANITE_SET_SAFETY "nanite_set_safety" //(amount) Sets safety threshold to the given amount #define COMSIG_NANITE_SET_REGEN "nanite_set_regen" //(amount) Sets regeneration rate to the given amount #define COMSIG_NANITE_SIGNAL "nanite_signal" //(code(1-9999)) Called when sending a nanite signal to a mob. @@ -307,8 +310,8 @@ #define COMSIG_NANITE_SCAN "nanite_scan" //(mob/user, full_scan) - sends to chat a scan of the nanites to the user, returns TRUE if nanites are detected #define COMSIG_NANITE_UI_DATA "nanite_ui_data" //(list/data, scan_level) - adds nanite data to the given data list - made for ui_data procs #define COMSIG_NANITE_ADD_PROGRAM "nanite_add_program" //(datum/nanite_program/new_program, datum/nanite_program/source_program) Called when adding a program to a nanite component - #define COMPONENT_PROGRAM_INSTALLED 1 //Installation successful - #define COMPONENT_PROGRAM_NOT_INSTALLED 2 //Installation failed, but there are still nanites +#define COMPONENT_PROGRAM_INSTALLED 1 //Installation successful +#define COMPONENT_PROGRAM_NOT_INSTALLED 2 //Installation failed, but there are still nanites #define COMSIG_NANITE_SYNC "nanite_sync" //(datum/component/nanites, full_overwrite, copy_activation) Called to sync the target's nanites to a given nanite component // /datum/component/storage signals diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index a7d6056ab9..f89c11d91b 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -276,4 +276,4 @@ #define HUMAN_FIRE_STACK_ICON_NUM 3 #define PULL_PRONE_SLOWDOWN 0.6 -#define HUMAN_CARRY_SLOWDOWN 0 \ No newline at end of file +#define HUMAN_CARRY_SLOWDOWN 0 diff --git a/code/__DEFINES/nanites.dm b/code/__DEFINES/nanites.dm index 45455a81c2..ed15e972ab 100644 --- a/code/__DEFINES/nanites.dm +++ b/code/__DEFINES/nanites.dm @@ -1,11 +1,44 @@ -#define NANITE_TIMER_DEACTIVATE 1 -#define NANITE_TIMER_SELFDELETE 2 -#define NANITE_TIMER_TRIGGER 3 -#define NANITE_TIMER_RESET 4 - #define NANITE_SYNC_DELAY 300 #define NANITE_SHOCK_IMMUNE 1 #define NANITE_EMP_IMMUNE 2 -#define NANITE_PROGRAM_LIMIT 20 \ No newline at end of file +#define NANITE_PROGRAM_LIMIT 20 + + +#define NANITE_BASE_RESEARCH 3.5 + +#define NANITE_CLOUD_TOGGLE 1 +#define NANITE_CLOUD_DISABLE 2 +#define NANITE_CLOUD_ENABLE 3 + +///Nanite extra settings types: used to help uis know what type an extra setting is +#define NESTYPE_TEXT "text" +#define NESTYPE_NUMBER "number" +#define NESTYPE_TYPE "type" +#define NESTYPE_BOOLEAN "boolean" + +///Nanite Extra Settings - Note that these will also be the names displayed in the UI +#define NES_SENT_CODE "Sent Code" +#define NES_DELAY "Delay" +#define NES_MODE "Mode" +#define NES_COMM_CODE "Comm Code" +#define NES_RELAY_CHANNEL "Relay Channel" +#define NES_HEALTH_PERCENT "Health Percent" +#define NES_DIRECTION "Direction" +#define NES_NANITE_PERCENT "Nanite Percent" +#define NES_DAMAGE_TYPE "Damage Type" +#define NES_DAMAGE "Damage" +#define NES_SENTENCE "Sentence" +#define NES_MESSAGE "Message" +#define NES_DIRECTIVE "Directive" +#define NES_INCLUSIVE_MODE "Inclusive Mode" +#define NES_HALLUCINATION_TYPE "Hallucination Type" +#define NES_HALLUCINATION_DETAIL "Hallucination Detail" +#define NES_MOOD_MESSAGE "Mood Message" +#define NES_PROGRAM_OVERWRITE "Program Overwrite" +#define NES_CLOUD_OVERWRITE "Cloud Overwrite" +#define NES_SCAN_TYPE "Scan Type" +#define NES_BUTTON_NAME "Button Name" +#define NES_ICON "Icon" +#define NES_COLOR "Color" diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index d144254a50..145f879b90 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -55,6 +55,7 @@ } while (0) #define HAS_TRAIT(target, trait) (target.status_traits ? (target.status_traits[trait] ? TRUE : FALSE) : FALSE) #define HAS_TRAIT_FROM(target, trait, source) (target.status_traits ? (target.status_traits[trait] ? (source in target.status_traits[trait]) : FALSE) : FALSE) +#define HAS_TRAIT_NOT_FROM(target, trait, source) (target.status_traits ? (target.status_traits[trait] ? (length(target.status_traits[trait] - source) > 0) : FALSE) : FALSE) //mob traits #define TRAIT_BLIND "blind" diff --git a/code/datums/components/nanites.dm b/code/datums/components/nanites.dm index e1c96121c7..49b2e437d4 100644 --- a/code/datums/components/nanites.dm +++ b/code/datums/components/nanites.dm @@ -7,13 +7,16 @@ var/regen_rate = 0.5 //nanites generated per second var/safety_threshold = 25 //how low nanites will get before they stop processing/triggering var/cloud_id = 0 //0 if not connected to the cloud, 1-100 to set a determined cloud backup to draw from + var/cloud_active = TRUE //if false, won't sync to the cloud var/next_sync = 0 var/list/datum/nanite_program/programs = list() var/max_programs = NANITE_PROGRAM_LIMIT + var/list/datum/nanite_program/protocol/protocols = list() ///Separate list of protocol programs, to avoid looping through the whole programs list when cheking for conflicts + var/start_time = 0 ///Timestamp to when the nanites were first inserted in the host var/stealth = FALSE //if TRUE, does not appear on HUDs and health scans var/diagnostics = TRUE //if TRUE, displays program list when scanned by nanite scanners - + /datum/component/nanites/Initialize(amount = 100, cloud = 0) if(!isliving(parent) && !istype(parent, /datum/nanite_cloud_backup)) return COMPONENT_INCOMPATIBLE @@ -25,33 +28,36 @@ if(isliving(parent)) host_mob = parent - if(!(MOB_ORGANIC in host_mob.mob_biotypes) && !(MOB_UNDEAD in host_mob.mob_biotypes)) //Shouldn't happen, but this avoids HUD runtimes in case a silicon gets them somehow. + if(!(host_mob.mob_biotypes & (MOB_ORGANIC|MOB_UNDEAD))) //Shouldn't happen, but this avoids HUD runtimes in case a silicon gets them somehow. return COMPONENT_INCOMPATIBLE + start_time = world.time + host_mob.hud_set_nanite_indicator() START_PROCESSING(SSnanites, src) - if(cloud_id) + if(cloud_id && cloud_active) cloud_sync() /datum/component/nanites/RegisterWithParent() - . = ..() RegisterSignal(parent, COMSIG_HAS_NANITES, .proc/confirm_nanites) RegisterSignal(parent, COMSIG_NANITE_IS_STEALTHY, .proc/check_stealth) + RegisterSignal(parent, COMSIG_NANITE_DELETE, .proc/delete_nanites) RegisterSignal(parent, COMSIG_NANITE_UI_DATA, .proc/nanite_ui_data) RegisterSignal(parent, COMSIG_NANITE_GET_PROGRAMS, .proc/get_programs) RegisterSignal(parent, COMSIG_NANITE_SET_VOLUME, .proc/set_volume) RegisterSignal(parent, COMSIG_NANITE_ADJUST_VOLUME, .proc/adjust_nanites) RegisterSignal(parent, COMSIG_NANITE_SET_MAX_VOLUME, .proc/set_max_volume) RegisterSignal(parent, COMSIG_NANITE_SET_CLOUD, .proc/set_cloud) + RegisterSignal(parent, COMSIG_NANITE_SET_CLOUD_SYNC, .proc/set_cloud_sync) RegisterSignal(parent, COMSIG_NANITE_SET_SAFETY, .proc/set_safety) RegisterSignal(parent, COMSIG_NANITE_SET_REGEN, .proc/set_regen) RegisterSignal(parent, COMSIG_NANITE_ADD_PROGRAM, .proc/add_program) RegisterSignal(parent, COMSIG_NANITE_SCAN, .proc/nanite_scan) RegisterSignal(parent, COMSIG_NANITE_SYNC, .proc/sync) - RegisterSignal(parent, COMSIG_ATOM_EMP_ACT, .proc/on_emp) if(isliving(parent)) + RegisterSignal(parent, COMSIG_ATOM_EMP_ACT, .proc/on_emp) RegisterSignal(parent, COMSIG_MOB_DEATH, .proc/on_death) RegisterSignal(parent, COMSIG_MOB_ALLOWED, .proc/check_access) RegisterSignal(parent, COMSIG_LIVING_ELECTROCUTE_ACT, .proc/on_shock) @@ -61,15 +67,16 @@ RegisterSignal(parent, COMSIG_NANITE_COMM_SIGNAL, .proc/receive_comm_signal) /datum/component/nanites/UnregisterFromParent() - . = ..() UnregisterSignal(parent, list(COMSIG_HAS_NANITES, COMSIG_NANITE_IS_STEALTHY, + COMSIG_NANITE_DELETE, COMSIG_NANITE_UI_DATA, COMSIG_NANITE_GET_PROGRAMS, COMSIG_NANITE_SET_VOLUME, COMSIG_NANITE_ADJUST_VOLUME, COMSIG_NANITE_SET_MAX_VOLUME, COMSIG_NANITE_SET_CLOUD, + COMSIG_NANITE_SET_CLOUD_SYNC, COMSIG_NANITE_SET_SAFETY, COMSIG_NANITE_SET_REGEN, COMSIG_NANITE_ADD_PROGRAM, @@ -87,9 +94,9 @@ /datum/component/nanites/Destroy() STOP_PROCESSING(SSnanites, src) - set_nanite_bar(TRUE) QDEL_LIST(programs) if(host_mob) + set_nanite_bar(TRUE) host_mob.hud_set_nanite_indicator() host_mob = null return ..() @@ -102,13 +109,18 @@ /datum/component/nanites/process() adjust_nanites(null, regen_rate) + add_research() for(var/X in programs) var/datum/nanite_program/NP = X NP.on_process() - set_nanite_bar() - if(cloud_id && world.time > next_sync) + if(cloud_id && cloud_active && world.time > next_sync) cloud_sync() next_sync = world.time + NANITE_SYNC_DELAY + set_nanite_bar() + + +/datum/component/nanites/proc/delete_nanites() + qdel(src) //Syncs the nanite component to another, making it so programs are the same with the same programming (except activation status) /datum/component/nanites/proc/sync(datum/signal_source, datum/component/nanites/source, full_overwrite = TRUE, copy_activation = FALSE) @@ -131,13 +143,17 @@ add_program(null, SNP.copy()) /datum/component/nanites/proc/cloud_sync() - if(!cloud_id) - return - var/datum/nanite_cloud_backup/backup = SSnanites.get_cloud_backup(cloud_id) - if(backup) - var/datum/component/nanites/cloud_copy = backup.nanites - if(cloud_copy) - sync(null, cloud_copy) + if(cloud_id) + var/datum/nanite_cloud_backup/backup = SSnanites.get_cloud_backup(cloud_id) + if(backup) + var/datum/component/nanites/cloud_copy = backup.nanites + if(cloud_copy) + sync(null, cloud_copy) + return + //Without cloud syncing nanites can accumulate errors and/or defects + if(prob(8) && programs.len) + var/datum/nanite_program/NP = pick(programs) + NP.software_error() /datum/component/nanites/proc/add_program(datum/source, datum/nanite_program/new_program, datum/nanite_program/source_program) for(var/X in programs) @@ -175,19 +191,28 @@ holder.icon_state = "nanites[nanite_percent]" /datum/component/nanites/proc/on_emp(datum/source, severity) - adjust_nanites(null, -(nanite_volume * 0.3 + 50)) //Lose 30% variable and 50 flat nanite volume. + nanite_volume *= (rand(60, 90) * 0.01) //Lose 10-40% of nanites + adjust_nanites(null, -(rand(5, 50))) //Lose 5-50 flat nanite volume + if(prob(40/severity)) + cloud_id = 0 for(var/X in programs) var/datum/nanite_program/NP = X NP.on_emp(severity) -/datum/component/nanites/proc/on_shock(datum/source, shock_damage) - adjust_nanites(null, -(nanite_volume * (shock_damage * 0.005) + shock_damage)) //0.5% of shock damage (@ 50 damage it'd drain 25%) + shock damage flat volume - for(var/X in programs) - var/datum/nanite_program/NP = X - NP.on_shock(shock_damage) + +/datum/component/nanites/proc/on_shock(datum/source, shock_damage, siemens_coeff = 1, flags = NONE) + if(shock_damage < 1) + return + + if(!HAS_TRAIT_NOT_FROM(host_mob, TRAIT_SHOCKIMMUNE, "nanites"))//Another shock protection must protect nanites too, but nanites protect only host + nanite_volume *= (rand(45, 80) * 0.01) //Lose 20-55% of nanites + adjust_nanites(null, -(rand(5, 50))) //Lose 5-50 flat nanite volume + for(var/X in programs) + var/datum/nanite_program/NP = X + NP.on_shock(shock_damage) /datum/component/nanites/proc/on_minor_shock(datum/source) - adjust_nanites(null, -25) + adjust_nanites(null, -(rand(5, 15))) //Lose 5-15 flat nanite volume for(var/X in programs) var/datum/nanite_program/NP = X NP.on_minor_shock() @@ -207,16 +232,16 @@ /datum/component/nanites/proc/receive_comm_signal(datum/source, comm_code, comm_message, comm_source = "an unidentified source") for(var/X in programs) - if(istype(X, /datum/nanite_program/triggered/comm)) - var/datum/nanite_program/triggered/comm/NP = X + if(istype(X, /datum/nanite_program/comm)) + var/datum/nanite_program/comm/NP = X NP.receive_comm_signal(comm_code, comm_message, comm_source) /datum/component/nanites/proc/check_viable_biotype() - if(!(MOB_ORGANIC in host_mob.mob_biotypes) && !(MOB_UNDEAD in host_mob.mob_biotypes)) + if(!(host_mob.mob_biotypes & (MOB_ORGANIC|MOB_UNDEAD))) qdel(src) //bodytype no longer sustains nanites /datum/component/nanites/proc/check_access(datum/source, obj/O) - for(var/datum/nanite_program/triggered/access/access_program in programs) + for(var/datum/nanite_program/access/access_program in programs) if(access_program.activated) return O.check_access_list(access_program.access) else @@ -232,6 +257,15 @@ /datum/component/nanites/proc/set_cloud(datum/source, amount) cloud_id = CLAMP(amount, 0, 100) +/datum/component/nanites/proc/set_cloud_sync(datum/source, method) + switch(method) + if(NANITE_CLOUD_TOGGLE) + cloud_active = !cloud_active + if(NANITE_CLOUD_DISABLE) + cloud_active = FALSE + if(NANITE_CLOUD_ENABLE) + cloud_active = TRUE + /datum/component/nanites/proc/set_safety(datum/source, amount) safety_threshold = CLAMP(amount, 0, max_nanites) @@ -252,6 +286,19 @@ /datum/component/nanites/proc/get_programs(datum/source, list/nanite_programs) nanite_programs |= programs +/datum/component/nanites/proc/add_research() + var/research_value = NANITE_BASE_RESEARCH + if(!ishuman(host_mob)) + if(!iscarbon(host_mob)) + research_value *= 0.4 + else + research_value *= 0.8 + if(!host_mob.client) + research_value *= 0.5 + if(host_mob.stat == DEAD) + research_value *= 0.75 + SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_NANITES = research_value)) + /datum/component/nanites/proc/nanite_scan(datum/source, mob/user, full_scan) if(!full_scan) if(!stealth) @@ -263,7 +310,8 @@ to_chat(user, "================") to_chat(user, "Saturation: [nanite_volume]/[max_nanites]") to_chat(user, "Safety Threshold: [safety_threshold]") - to_chat(user, "Cloud ID: [cloud_id ? cloud_id : "Disabled"]") + to_chat(user, "Cloud ID: [cloud_id ? cloud_id : "None"]") + to_chat(user, "Cloud Sync: [cloud_active ? "Active" : "Disabled"]") to_chat(user, "================") to_chat(user, "Program List:") if(!diagnostics) @@ -280,6 +328,7 @@ data["regen_rate"] = regen_rate data["safety_threshold"] = safety_threshold data["cloud_id"] = cloud_id + data["cloud_active"] = cloud_active var/list/mob_programs = list() var/id = 1 for(var/X in programs) @@ -297,24 +346,35 @@ mob_program["trigger_cooldown"] = P.trigger_cooldown / 10 if(scan_level >= 3) - mob_program["activation_delay"] = P.activation_delay - mob_program["timer"] = P.timer - mob_program["timer_type"] = P.get_timer_type_text() - var/list/extra_settings = list() - for(var/Y in P.extra_settings) - var/list/setting = list() - setting["name"] = Y - setting["value"] = P.get_extra_setting(Y) - extra_settings += list(setting) + mob_program["timer_restart"] = P.timer_restart / 10 + mob_program["timer_shutdown"] = P.timer_shutdown / 10 + mob_program["timer_trigger"] = P.timer_trigger / 10 + mob_program["timer_trigger_delay"] = P.timer_trigger_delay / 10 + var/list/extra_settings = P.get_extra_settings_frontend() mob_program["extra_settings"] = extra_settings if(LAZYLEN(extra_settings)) mob_program["has_extra_settings"] = TRUE + else + mob_program["has_extra_settings"] = FALSE if(scan_level >= 4) mob_program["activation_code"] = P.activation_code mob_program["deactivation_code"] = P.deactivation_code mob_program["kill_code"] = P.kill_code mob_program["trigger_code"] = P.trigger_code + var/list/rules = list() + var/rule_id = 1 + for(var/Z in P.rules) + var/datum/nanite_rule/nanite_rule = Z + var/list/rule = list() + rule["display"] = nanite_rule.display() + rule["program_id"] = id + rule["id"] = rule_id + rules += list(rule) + rule_id++ + mob_program["rules"] = rules + if(LAZYLEN(rules)) + mob_program["has_rules"] = TRUE id++ mob_programs += list(mob_program) data["mob_programs"] = mob_programs diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index 386b1fe668..3a2470e5e0 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -431,26 +431,11 @@ if((!req_defib && grab_ghost) || (req_defib && defib.grab_ghost)) H.notify_ghost_cloning("Your heart is being defibrillated!") H.grab_ghost() // Shove them back in their body. - else if(can_defib(H)) + else if(H.can_defib()) H.notify_ghost_cloning("Your heart is being defibrillated. Re-enter your corpse if you want to be revived!", source = src) do_help(H, user) -/obj/item/twohanded/shockpaddles/proc/can_defib(mob/living/carbon/H) //Our code here is different than tg, if it breaks in testing; BUG_PROBABLE_CAUSE - var/obj/item/organ/heart = H.getorgan(/obj/item/organ/heart) - if(H.suiciding || H.hellbound || HAS_TRAIT(H, TRAIT_HUSK)) - return - if((world.time - H.timeofdeath) > tlimit) - return - if((H.getBruteLoss() >= MAX_REVIVE_BRUTE_DAMAGE) || (H.getFireLoss() >= MAX_REVIVE_FIRE_DAMAGE)) - return - if(!heart || (heart.organ_flags & ORGAN_FAILING)) - return - var/obj/item/organ/brain/BR = H.getorgan(/obj/item/organ/brain) - if(QDELETED(BR) || BR.brain_death || (BR.organ_flags & ORGAN_FAILING) || H.suiciding) - return - return TRUE - /obj/item/twohanded/shockpaddles/proc/shock_touching(dmg, mob/H) if(!H.pulledby || !isliving(H.pulledby)) return diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index ef33afec25..d8977803ed 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -834,6 +834,22 @@ update_inv_handcuffed() update_hud_handcuffed() +/mob/living/carbon/proc/can_defib() + var/tlimit = DEFIB_TIME_LIMIT * 10 + var/obj/item/organ/heart = getorgan(/obj/item/organ/heart) + if(suiciding || hellbound || HAS_TRAIT(src, TRAIT_HUSK)) + return + if((world.time - timeofdeath) > tlimit) + return + if((getBruteLoss() >= MAX_REVIVE_BRUTE_DAMAGE) || (getFireLoss() >= MAX_REVIVE_FIRE_DAMAGE)) + return + if(!heart || (heart.organ_flags & ORGAN_FAILING)) + return + var/obj/item/organ/brain/BR = getorgan(/obj/item/organ/brain) + if(QDELETED(BR) || BR.brain_death || (BR.organ_flags & ORGAN_FAILING) || suiciding) + return + return TRUE + /mob/living/carbon/fully_heal(admin_revive = FALSE) if(reagents) reagents.clear_reagents() diff --git a/code/modules/research/designs/nanite_designs.dm b/code/modules/research/designs/nanite_designs.dm index 13668ba570..c72ee4fb8c 100644 --- a/code/modules/research/designs/nanite_designs.dm +++ b/code/modules/research/designs/nanite_designs.dm @@ -50,7 +50,7 @@ name = "Host Scan" desc = "The nanites display a detailed readout of a body scan to the host." id = "selfscan_nanites" - program_type = /datum/nanite_program/triggered/self_scan + program_type = /datum/nanite_program/self_scan category = list("Utility Nanites") /datum/design/nanites/dermal_button @@ -67,7 +67,6 @@ program_type = /datum/nanite_program/stealth category = list("Utility Nanites") - /datum/design/nanites/reduced_diagnostics name = "Reduced Diagnostics" desc = "Disables some high-cost diagnostics in the nanites, making them unable to communicate their program list to portable scanners. \ @@ -80,7 +79,7 @@ name = "Subdermal ID" desc = "The nanites store the host's ID access rights in a subdermal magnetic strip. Updates when triggered, copying the host's current access." id = "access_nanites" - program_type = /datum/nanite_program/triggered/access + program_type = /datum/nanite_program/access category = list("Utility Nanites") /datum/design/nanites/relay @@ -106,9 +105,9 @@ /datum/design/nanites/emp name = "Electromagnetic Resonance" - desc = "The nanites cause an elctromagnetic pulse around the host when triggered. Will corrupt other nanite programs!" + desc = "The nanites cause an electromagnetic pulse around the host when triggered. Will corrupt other nanite programs!" id = "emp_nanites" - program_type = /datum/nanite_program/triggered/emp + program_type = /datum/nanite_program/emp category = list("Utility Nanites") /datum/design/nanites/spreading @@ -119,6 +118,13 @@ program_type = /datum/nanite_program/spreading category = list("Utility Nanites") +/datum/design/nanites/nanite_sting + name = "Nanite Sting" + desc = "When triggered, projects a nearly invisible spike of nanites that attempts to infect a nearby non-host with a copy of the host's nanites cluster." + id = "nanite_sting_nanites" + program_type = /datum/nanite_program/nanite_sting + category = list("Utility Nanites") + /datum/design/nanites/mitosis name = "Mitosis" desc = "The nanites gain the ability to self-replicate, using bluespace to power the process, instead of drawing from a template. This rapidly speeds up the replication rate,\ @@ -197,7 +203,7 @@ name = "Defibrillation" desc = "The nanites, when triggered, send a defibrillating shock to the host's heart." id = "defib_nanites" - program_type = /datum/nanite_program/triggered/defib + program_type = /datum/nanite_program/defib category = list("Medical Nanites") @@ -242,7 +248,7 @@ name = "Adrenaline Burst" desc = "The nanites cause a burst of adrenaline when triggered, waking the host from stuns and temporarily increasing their speed." id = "adrenaline_nanites" - program_type = /datum/nanite_program/triggered/adrenaline + program_type = /datum/nanite_program/adrenaline category = list("Augmentation Nanites") /datum/design/nanites/mindshield @@ -366,21 +372,21 @@ name = "Heart-Stopper" desc = "Stops the host's heart when triggered; restarts it if triggered again." id = "heartstop_nanites" - program_type = /datum/nanite_program/triggered/heart_stop + program_type = /datum/nanite_program/heart_stop category = list("Weaponized Nanites") /datum/design/nanites/explosive name = "Chain Detonation" desc = "Blows up all the nanites inside the host in a chain reaction when triggered." id = "explosive_nanites" - program_type = /datum/nanite_program/triggered/explosive + program_type = /datum/nanite_program/explosive category = list("Weaponized Nanites") /datum/design/nanites/mind_control name = "Mind Control" desc = "The nanites imprint an absolute directive onto the host's brain while they're active." id = "mindcontrol_nanites" - program_type = /datum/nanite_program/triggered/comm/mind_control + program_type = /datum/nanite_program/comm/mind_control category = list("Weaponized Nanites") ////////////////////SUPPRESSION NANITES////////////////////////////////////// @@ -389,21 +395,21 @@ name = "Electric Shock" desc = "The nanites shock the host when triggered. Destroys a large amount of nanites!" id = "shock_nanites" - program_type = /datum/nanite_program/triggered/shocking + program_type = /datum/nanite_program/shocking category = list("Suppression Nanites") /datum/design/nanites/stun name = "Neural Shock" desc = "The nanites pulse the host's nerves when triggered, inapacitating them for a short period." id = "stun_nanites" - program_type = /datum/nanite_program/triggered/stun + program_type = /datum/nanite_program/stun category = list("Suppression Nanites") /datum/design/nanites/sleepy name = "Sleep Induction" desc = "The nanites cause rapid narcolepsy when triggered." id = "sleep_nanites" - program_type = /datum/nanite_program/triggered/sleepy + program_type = /datum/nanite_program/sleepy category = list("Suppression Nanites") /datum/design/nanites/paralyzing @@ -445,21 +451,21 @@ name = "Skull Echo" desc = "The nanites echo a synthesized message inside the host's skull." id = "voice_nanites" - program_type = /datum/nanite_program/triggered/comm/voice + program_type = /datum/nanite_program/comm/voice category = list("Suppression Nanites") /datum/design/nanites/speech name = "Forced Speech" desc = "The nanites force the host to say a pre-programmed sentence when triggered." id = "speech_nanites" - program_type = /datum/nanite_program/triggered/comm/speech + program_type = /datum/nanite_program/comm/speech category = list("Suppression Nanites") /datum/design/nanites/hallucination name = "Hallucination" desc = "The nanites make the host see and hear things that aren't real." id = "hallucination_nanites" - program_type = /datum/nanite_program/triggered/comm/hallucination + program_type = /datum/nanite_program/comm/hallucination category = list("Suppression Nanites") /datum/design/nanites/good_mood @@ -513,9 +519,42 @@ program_type = /datum/nanite_program/sensor/voice category = list("Sensor Nanites") -/datum/design/nanites/sensor__nanite_volume +/datum/design/nanites/sensor_nanite_volume name = "Nanite Volume Sensor" desc = "The nanites receive a signal when the nanite supply is above/below a certain percentage." id = "sensor_nanite_volume" program_type = /datum/nanite_program/sensor/nanite_volume - category = list("Sensor Nanites") \ No newline at end of file + category = list("Sensor Nanites") + +////////////////////NANITE PROTOCOLS////////////////////////////////////// +//Note about the category name: The UI cuts the last 8 characters from the category name to remove the " Nanites" in the other categories +//Because of this, Protocols was getting cut down to "P", so i had to add some padding +/* +/datum/design/nanites/kickstart + name = "Kickstart Protocol" + desc = "Replication Protocol: the nanites focus on early growth, heavily boosting replication rate for a few minutes after the initial implantation." + id = "kickstart_nanites" + program_type = /datum/nanite_program/protocol/kickstart + category = list("Protocols_Nanites") + +/datum/design/nanites/factory + name = "Factory Protocol" + desc = "Replication Protocol: the nanites build a factory matrix within the host, gradually increasing replication speed over time. The factory decays if the protocol is not active." + id = "factory_nanites" + program_type = /datum/nanite_program/protocol/factory + category = list("Protocols_Nanites") + +/datum/design/nanites/tinker + name = "Tinker Protocol" + desc = "Replication Protocol: the nanites learn to use metallic material in the host's bloodstream to speed up the replication process." + id = "tinker_nanites" + program_type = /datum/nanite_program/protocol/tinker + category = list("Protocols_Nanites") + +/datum/design/nanites/offline + name = "Offline Production Protocol" + desc = "Replication Protocol: while the host is asleep or otherwise unconcious, the nanites exploit the reduced interference to replicate more quickly." + id = "offline_nanites" + program_type = /datum/nanite_program/protocol/offline + category = list("Protocols_Nanites") +*/ diff --git a/code/modules/research/nanites/extra_settings/_extra_setting.dm b/code/modules/research/nanites/extra_settings/_extra_setting.dm new file mode 100644 index 0000000000..b3bef77eb4 --- /dev/null +++ b/code/modules/research/nanites/extra_settings/_extra_setting.dm @@ -0,0 +1,20 @@ +/datum/nanite_extra_setting + var/setting_type + var/value + +/datum/nanite_extra_setting/proc/get_value() + return value + +/datum/nanite_extra_setting/proc/set_value(value) + src.value = value + +/datum/nanite_extra_setting/proc/get_copy() + return + +//I made the choice to send the name as part of the parameter instead of storing it directly on +//this datum as a way of avoiding duplication of data between the containing assoc list +//and this datum. +//Also make sure to double wrap the list when implementing this as +//+= is interpreted as a combine on lists, so the outer list gets unwrapped +/datum/nanite_extra_setting/proc/get_frontend_list(name) + return diff --git a/code/modules/research/nanites/extra_settings/boolean.dm b/code/modules/research/nanites/extra_settings/boolean.dm new file mode 100644 index 0000000000..7d66eb988e --- /dev/null +++ b/code/modules/research/nanites/extra_settings/boolean.dm @@ -0,0 +1,27 @@ +/datum/nanite_extra_setting/boolean + setting_type = NESTYPE_BOOLEAN + var/true_text + var/false_text + +/datum/nanite_extra_setting/boolean/New(initial, true_text, false_text) + value = initial + src.true_text = true_text + src.false_text = false_text + +/datum/nanite_extra_setting/boolean/set_value(value) + if(isnull(value)) + src.value = !src.value + return + . = ..() + +/datum/nanite_extra_setting/boolean/get_copy() + return new /datum/nanite_extra_setting/boolean(value, true_text, false_text) + +/datum/nanite_extra_setting/boolean/get_frontend_list(name) + return list(list( + "name" = name, + "type" = setting_type, + "value" = value, + "true_text" = true_text, + "false_text" = false_text + )) diff --git a/code/modules/research/nanites/extra_settings/number.dm b/code/modules/research/nanites/extra_settings/number.dm new file mode 100644 index 0000000000..6e63ae067e --- /dev/null +++ b/code/modules/research/nanites/extra_settings/number.dm @@ -0,0 +1,32 @@ +/datum/nanite_extra_setting/number + setting_type = NESTYPE_NUMBER + var/min + var/max + var/unit = "" + +/datum/nanite_extra_setting/number/New(initial, min, max, unit) + value = initial + src.min = min + src.max = max + if(unit) + src.unit = unit + +/datum/nanite_extra_setting/number/set_value(value) + if(istext(value)) + value = text2num(value) + if(!value || !isnum(value)) + return + src.value = CLAMP(value, min, max) + +/datum/nanite_extra_setting/number/get_copy() + return new /datum/nanite_extra_setting/number(value, min, max, unit) + +/datum/nanite_extra_setting/number/get_frontend_list(name) + return list(list( + "name" = name, + "type" = setting_type, + "value" = value, + "min" = min, + "max" = max, + "unit" = unit + )) diff --git a/code/modules/research/nanites/extra_settings/text.dm b/code/modules/research/nanites/extra_settings/text.dm new file mode 100644 index 0000000000..56aa3dd07f --- /dev/null +++ b/code/modules/research/nanites/extra_settings/text.dm @@ -0,0 +1,18 @@ +/datum/nanite_extra_setting/text + setting_type = NESTYPE_TEXT + +/datum/nanite_extra_setting/text/New(initial) + value = initial + +/datum/nanite_extra_setting/text/set_value(value) + src.value = trim(value) + +/datum/nanite_extra_setting/text/get_copy() + return new /datum/nanite_extra_setting/text(value) + +/datum/nanite_extra_setting/text/get_frontend_list(name) + return list(list( + "name" = name, + "type" = setting_type, + "value" = value + )) diff --git a/code/modules/research/nanites/extra_settings/type.dm b/code/modules/research/nanites/extra_settings/type.dm new file mode 100644 index 0000000000..2085ba510c --- /dev/null +++ b/code/modules/research/nanites/extra_settings/type.dm @@ -0,0 +1,18 @@ +/datum/nanite_extra_setting/type + setting_type = NESTYPE_TYPE + var/list/types + +/datum/nanite_extra_setting/type/New(initial, types) + value = initial + src.types = types + +/datum/nanite_extra_setting/type/get_copy() + return new /datum/nanite_extra_setting/type(value, types) + +/datum/nanite_extra_setting/type/get_frontend_list(name) + return list(list( + "name" = name, + "type" = setting_type, + "value" = value, + "types" = types + )) diff --git a/code/modules/research/nanites/nanite_chamber.dm b/code/modules/research/nanites/nanite_chamber.dm index 515231c24c..4a980a0436 100644 --- a/code/modules/research/nanites/nanite_chamber.dm +++ b/code/modules/research/nanites/nanite_chamber.dm @@ -77,7 +77,7 @@ return occupant.AddComponent(/datum/component/nanites, 100) -/obj/machinery/nanite_chamber/proc/install_program(datum/nanite_program/NP) +/obj/machinery/nanite_chamber/proc/remove_nanites(datum/nanite_program/NP) if(stat & (NOPOWER|BROKEN)) return if((stat & MAINT) || panel_open) @@ -88,74 +88,46 @@ var/locked_state = locked locked = TRUE - //TODO COMPUTERY MACHINE SOUNDS - set_busy(TRUE, "Initializing installation protocol...", "[initial(icon_state)]_raising") - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Connecting to nanite framework...", "[initial(icon_state)]_active"),20) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Installing program...", "[initial(icon_state)]_falling"),35) - addtimer(CALLBACK(src, .proc/complete_installation, locked_state, NP),55) + //TODO OMINOUS MACHINE SOUNDS + set_busy(TRUE, "Initializing cleanup protocol...", "[initial(icon_state)]_raising") + addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Analyzing host bio-structure...", "[initial(icon_state)]_active"),20) + addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Pinging nanites...", "[initial(icon_state)]_active"),40) + addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Initiating graceful self-destruct sequence...", "[initial(icon_state)]_active"),70) + addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Removing debris...", "[initial(icon_state)]_falling"),110) + addtimer(CALLBACK(src, .proc/complete_removal, locked_state),130) -/obj/machinery/nanite_chamber/proc/complete_installation(locked_state, datum/nanite_program/NP) +/obj/machinery/nanite_chamber/proc/complete_removal(locked_state) //TODO MACHINE DING locked = locked_state set_busy(FALSE) if(!occupant) return + SEND_SIGNAL(occupant, COMSIG_NANITE_DELETE) - SEND_SIGNAL(occupant, COMSIG_NANITE_ADD_PROGRAM, NP.copy()) - -/obj/machinery/nanite_chamber/proc/uninstall_program(datum/nanite_program/NP) - if(stat & (NOPOWER|BROKEN)) - return - if((stat & MAINT) || panel_open) - return - if(!occupant || busy) - return - - var/locked_state = locked - locked = TRUE - - //TODO COMPUTERY MACHINE SOUNDS - set_busy(TRUE, "Initializing uninstallation protocol...", "[initial(icon_state)]_raising") - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Connecting to nanite framework...", "[initial(icon_state)]_active"),20) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Uninstalling program...", "[initial(icon_state)]_falling"),35) - addtimer(CALLBACK(src, .proc/complete_uninstallation, locked_state, NP),55) - -/obj/machinery/nanite_chamber/proc/complete_uninstallation(locked_state, datum/nanite_program/NP) - //TODO MACHINE DING - locked = locked_state - set_busy(FALSE) - if(!occupant) - return - qdel(NP) - -/obj/machinery/nanite_chamber/update_icon() - cut_overlays() - - if((stat & MAINT) || panel_open) - add_overlay("maint") - - else if(!(stat & (NOPOWER|BROKEN))) - if(busy || locked) - add_overlay("red") - if(locked) - add_overlay("bolted") - else - add_overlay("green") - +/obj/machinery/nanite_chamber/update_icon_state() //running and someone in there if(occupant) if(busy) icon_state = busy_icon_state else - icon_state = initial(icon_state)+ "_occupied" - return + icon_state = initial(icon_state) + "_occupied" + else + //running + icon_state = initial(icon_state) + (state_open ? "_open" : "") - //running - icon_state = initial(icon_state)+ (state_open ? "_open" : "") +/obj/machinery/nanite_chamber/update_overlays() + . = ..() -/obj/machinery/nanite_chamber/power_change() - ..() - update_icon() + if((stat & MAINT) || panel_open) + . += "maint" + + else if(!(stat & (NOPOWER|BROKEN))) + if(busy || locked) + . += "red" + if(locked) + . += "bolted" + else + . += "green" /obj/machinery/nanite_chamber/proc/toggle_open(mob/user) if(panel_open) @@ -182,7 +154,7 @@ user.last_special = world.time + CLICK_CD_BREAKOUT user.visible_message("You see [user] kicking against the door of [src]!", \ "You lean on the back of [src] and start pushing the door open... (this will take about [DisplayTimeText(breakout_time)].)", \ - "You hear a metallic creaking from [src].") + "You hear a metallic creaking from [src].") if(do_after(user,(breakout_time), target = src)) if(!user || user.stat != CONSCIOUS || user.loc != src || state_open || !locked || busy) return @@ -231,6 +203,8 @@ toggle_open(user) /obj/machinery/nanite_chamber/MouseDrop_T(mob/target, mob/user) - if(user.stat || user.lying || !Adjacent(user) || !user.Adjacent(target) || !iscarbon(target) || !user.IsAdvancedToolUser()) + if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK) || !Adjacent(target) || !user.Adjacent(target) || !iscarbon(target)) return - close_machine(target) + if(close_machine(target)) + log_combat(user, target, "inserted", null, "into [src].") + add_fingerprint(user) diff --git a/code/modules/research/nanites/nanite_chamber_computer.dm b/code/modules/research/nanites/nanite_chamber_computer.dm index f9d931b3de..0750d3d268 100644 --- a/code/modules/research/nanites/nanite_chamber_computer.dm +++ b/code/modules/research/nanites/nanite_chamber_computer.dm @@ -5,30 +5,13 @@ var/obj/item/disk/nanite_program/disk circuit = /obj/item/circuitboard/computer/nanite_chamber_control icon_screen = "nanite_chamber_control" + ui_x = 380 + ui_y = 570 /obj/machinery/computer/nanite_chamber_control/Initialize() . = ..() find_chamber() -/obj/machinery/computer/nanite_chamber_control/attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/disk/nanite_program)) - var/obj/item/disk/nanite_program/N = I - if(disk) - eject(user) - if(user.transferItemToLoc(N, src)) - to_chat(user, "You insert [N] into [src]") - playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) - disk = N - else - ..() - -/obj/machinery/computer/nanite_chamber_control/proc/eject(mob/living/user) - if(!disk) - return - if(!istype(user) || !Adjacent(user) || !user.put_in_active_hand(disk)) - disk.forceMove(drop_location()) - disk = null - /obj/machinery/computer/nanite_chamber_control/proc/find_chamber() for(var/direction in GLOB.cardinals) var/C = locate(/obj/machinery/nanite_chamber, get_step(src, direction)) @@ -43,41 +26,13 @@ ..() /obj/machinery/computer/nanite_chamber_control/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "nanite_chamber_control", name, 550, 800, master_ui, state) + ui = new(user, src, ui_key, "nanite_chamber_control", name, ui_x, ui_y, master_ui, state) ui.open() /obj/machinery/computer/nanite_chamber_control/ui_data() var/list/data = list() - if(disk) - data["has_disk"] = TRUE - var/list/disk_data = list() - var/datum/nanite_program/P = disk.program - if(P) - data["has_program"] = TRUE - disk_data["name"] = P.name - disk_data["desc"] = P.desc - - disk_data["activated"] = P.activated - disk_data["activation_delay"] = P.activation_delay - disk_data["timer"] = P.timer - disk_data["activation_code"] = P.activation_code - disk_data["deactivation_code"] = P.deactivation_code - disk_data["kill_code"] = P.kill_code - disk_data["trigger_code"] = P.trigger_code - disk_data["timer_type"] = P.get_timer_type_text() - - var/list/extra_settings = list() - for(var/X in P.extra_settings) - var/list/setting = list() - setting["name"] = X - setting["value"] = P.get_extra_setting(X) - extra_settings += list(setting) - disk_data["extra_settings"] = extra_settings - if(LAZYLEN(extra_settings)) - disk_data["has_extra_settings"] = TRUE - data["disk"] = disk_data if(!chamber) data["status_msg"] = "No chamber detected." @@ -89,7 +44,7 @@ var/mob/living/L = chamber.occupant - if(!(MOB_ORGANIC in L.mob_biotypes) && !(MOB_UNDEAD in L.mob_biotypes)) + if(!(L.mob_biotypes & (MOB_ORGANIC|MOB_UNDEAD))) data["status_msg"] = "Occupant not compatible with nanites." return data @@ -97,6 +52,7 @@ data["status_msg"] = chamber.busy_message return data + data["status_msg"] = null data["scan_level"] = chamber.scan_level data["locked"] = chamber.locked data["occupant_name"] = chamber.occupant.name @@ -113,46 +69,32 @@ chamber.locked = !chamber.locked chamber.update_icon() . = TRUE - if("eject") - eject(usr) - . = TRUE if("set_safety") - var/threshold = input("Set safety threshold (0-500):", name, null) as null|num + var/threshold = text2num(params["value"]) if(!isnull(threshold)) chamber.set_safety(CLAMP(round(threshold, 1),0,500)) - playsound(src, "terminal_type", 25, 0) - investigate_log("[key_name(chamber.occupant)]'s nanites' safety threshold was set to [threshold] by [key_name(usr)].", INVESTIGATE_NANITES) + playsound(src, "terminal_type", 25, FALSE) + chamber.occupant.investigate_log("'s nanites' safety threshold was set to [threshold] by [key_name(usr)] via [src] at [AREACOORD(src)].", INVESTIGATE_NANITES) . = TRUE if("set_cloud") - var/cloud_id = input("Set cloud ID (1-100, 0 to disable):", name, null) as null|num + var/cloud_id = text2num(params["value"]) if(!isnull(cloud_id)) chamber.set_cloud(CLAMP(round(cloud_id, 1),0,100)) - playsound(src, "terminal_type", 25, 0) - investigate_log("[key_name(chamber.occupant)]'s nanites' cloud id was set to [cloud_id] by [key_name(usr)].", INVESTIGATE_NANITES) + playsound(src, "terminal_type", 25, FALSE) + chamber.occupant.investigate_log("'s nanites' cloud id was set to [cloud_id] by [key_name(usr)] via [src] at [AREACOORD(src)].", INVESTIGATE_NANITES) . = TRUE if("connect_chamber") find_chamber() . = TRUE + if("remove_nanites") + playsound(src, 'sound/machines/terminal_prompt.ogg', 25, FALSE) + chamber.remove_nanites() + log_combat(usr, chamber.occupant, "cleared nanites from", null, "via [src]") + chamber.occupant.investigate_log("'s nanites were cleared by [key_name(usr)] via [src] at [AREACOORD(src)].", INVESTIGATE_NANITES) + . = TRUE if("nanite_injection") - playsound(src, 'sound/machines/terminal_prompt.ogg', 25, 0) + playsound(src, 'sound/machines/terminal_prompt.ogg', 25, FALSE) chamber.inject_nanites() - investigate_log("[key_name(chamber.occupant)] was injected with nanites by [key_name(usr)] using a nanite chamber.", INVESTIGATE_NANITES) + log_combat(usr, chamber.occupant, "injected", null, "with nanites via [src]") + chamber.occupant.investigate_log("was injected with nanites by [key_name(usr)] via [src] at [AREACOORD(src)].", INVESTIGATE_NANITES) . = TRUE - if("add_program") - if(!disk || !chamber || !chamber.occupant) - return - playsound(src, 'sound/machines/terminal_prompt.ogg', 25, 0) - chamber.install_program(disk.program) - investigate_log("Program of type [disk.program.type] was installed into [key_name(chamber.occupant)]'s nanites with a nanite chamber by [key_name(usr)].", INVESTIGATE_NANITES) - . = TRUE - if("remove_program") - if(!chamber || !chamber.occupant) - return - playsound(src, 'sound/machines/terminal_prompt.ogg', 25, 0) - var/list/nanite_programs = list() - SEND_SIGNAL(chamber.occupant, COMSIG_NANITE_GET_PROGRAMS, nanite_programs) - if(LAZYLEN(nanite_programs)) - var/datum/nanite_program/P = nanite_programs[text2num(params["program_id"])] - chamber.uninstall_program(P) - investigate_log("Program of type [P.type] was uninstalled from [key_name(chamber.occupant)]'s nanites with a nanite chamber by [key_name(usr)].", INVESTIGATE_NANITES) - . = TRUE \ No newline at end of file diff --git a/code/modules/research/nanites/nanite_cloud_controller.dm b/code/modules/research/nanites/nanite_cloud_controller.dm index 081b1a7a4c..0731d3067c 100644 --- a/code/modules/research/nanites/nanite_cloud_controller.dm +++ b/code/modules/research/nanites/nanite_cloud_controller.dm @@ -4,9 +4,13 @@ circuit = /obj/item/circuitboard/computer/nanite_cloud_controller icon = 'icons/obj/machines/research.dmi' icon_state = "nanite_cloud_controller" + ui_x = 375 + ui_y = 700 + var/obj/item/disk/nanite_program/disk var/list/datum/nanite_cloud_backup/cloud_backups = list() var/current_view = 0 //0 is the main menu, any other number is the page of the backup with that ID + var/new_backup_id = 1 /obj/machinery/computer/nanite_cloud_controller/Destroy() QDEL_LIST(cloud_backups) //rip backups @@ -19,8 +23,8 @@ if(disk) eject(user) if(user.transferItemToLoc(N, src)) - to_chat(user, "You insert [N] into [src]") - playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) + to_chat(user, "You insert [N] into [src].") + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, FALSE) disk = N else ..() @@ -50,13 +54,14 @@ investigate_log("[key_name(user)] created a new nanite cloud backup with id #[cloud_id]", INVESTIGATE_NANITES) /obj/machinery/computer/nanite_cloud_controller/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "nanite_cloud_control", name, 600, 800, master_ui, state) + ui = new(user, src, ui_key, "nanite_cloud_control", name, ui_x, ui_y, master_ui, state) ui.open() /obj/machinery/computer/nanite_cloud_controller/ui_data() var/list/data = list() + if(disk) data["has_disk"] = TRUE var/list/disk_data = list() @@ -71,24 +76,28 @@ disk_data["trigger_cooldown"] = P.trigger_cooldown / 10 disk_data["activated"] = P.activated - disk_data["activation_delay"] = P.activation_delay - disk_data["timer"] = P.timer disk_data["activation_code"] = P.activation_code disk_data["deactivation_code"] = P.deactivation_code disk_data["kill_code"] = P.kill_code disk_data["trigger_code"] = P.trigger_code - disk_data["timer_type"] = P.get_timer_type_text() + disk_data["timer_restart"] = P.timer_restart / 10 + disk_data["timer_shutdown"] = P.timer_shutdown / 10 + disk_data["timer_trigger"] = P.timer_trigger / 10 + disk_data["timer_trigger_delay"] = P.timer_trigger_delay / 10 - var/list/extra_settings = list() - for(var/X in P.extra_settings) - var/list/setting = list() - setting["name"] = X - setting["value"] = P.get_extra_setting(X) - extra_settings += list(setting) + var/list/extra_settings = P.get_extra_settings_frontend() disk_data["extra_settings"] = extra_settings if(LAZYLEN(extra_settings)) disk_data["has_extra_settings"] = TRUE + if(istype(P, /datum/nanite_program/sensor)) + var/datum/nanite_program/sensor/sensor = P + if(sensor.can_rule) + disk_data["can_rule"] = TRUE data["disk"] = disk_data + else + data["has_disk"] = FALSE + + data["new_backup_id"] = new_backup_id data["current_view"] = current_view if(current_view) @@ -108,19 +117,30 @@ cloud_program["trigger_cost"] = P.trigger_cost cloud_program["trigger_cooldown"] = P.trigger_cooldown / 10 cloud_program["activated"] = P.activated - cloud_program["activation_delay"] = P.activation_delay - cloud_program["timer"] = P.timer - cloud_program["timer_type"] = P.get_timer_type_text() + cloud_program["timer_restart"] = P.timer_restart / 10 + cloud_program["timer_shutdown"] = P.timer_shutdown / 10 + cloud_program["timer_trigger"] = P.timer_trigger / 10 + cloud_program["timer_trigger_delay"] = P.timer_trigger_delay / 10 + cloud_program["activation_code"] = P.activation_code cloud_program["deactivation_code"] = P.deactivation_code cloud_program["kill_code"] = P.kill_code cloud_program["trigger_code"] = P.trigger_code - var/list/extra_settings = list() - for(var/X in P.extra_settings) - var/list/setting = list() - setting["name"] = X - setting["value"] = P.get_extra_setting(X) - extra_settings += list(setting) + var/list/rules = list() + var/rule_id = 1 + for(var/X in P.rules) + var/datum/nanite_rule/nanite_rule = X + var/list/rule = list() + rule["display"] = nanite_rule.display() + rule["program_id"] = id + rule["id"] = rule_id + rules += list(rule) + rule_id++ + cloud_program["rules"] = rules + if(LAZYLEN(rules)) + cloud_program["has_rules"] = TRUE + + var/list/extra_settings = P.get_extra_settings_frontend() cloud_program["extra_settings"] = extra_settings if(LAZYLEN(extra_settings)) cloud_program["has_extra_settings"] = TRUE @@ -147,17 +167,20 @@ if("set_view") current_view = text2num(params["view"]) . = TRUE + if("update_new_backup_value") + var/backup_value = text2num(params["value"]) + new_backup_id = backup_value if("create_backup") - var/cloud_id = input("Choose a cloud ID (1-100):", name, null) as null|num + var/cloud_id = new_backup_id if(!isnull(cloud_id)) - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_prompt.ogg', 50, FALSE) cloud_id = CLAMP(round(cloud_id, 1),1,100) generate_backup(cloud_id, usr) . = TRUE if("delete_backup") var/datum/nanite_cloud_backup/backup = get_backup(current_view) if(backup) - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_prompt.ogg', 50, FALSE) qdel(backup) investigate_log("[key_name(usr)] deleted the nanite cloud backup #[current_view]", INVESTIGATE_NANITES) . = TRUE @@ -165,7 +188,7 @@ if(disk && disk.program) var/datum/nanite_cloud_backup/backup = get_backup(current_view) if(backup) - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_prompt.ogg', 50, FALSE) var/datum/component/nanites/nanites = backup.nanites nanites.add_program(null, disk.program.copy()) investigate_log("[key_name(usr)] uploaded program [disk.program.name] to cloud #[current_view]", INVESTIGATE_NANITES) @@ -173,12 +196,37 @@ if("remove_program") var/datum/nanite_cloud_backup/backup = get_backup(current_view) if(backup) - playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_prompt.ogg', 50, FALSE) var/datum/component/nanites/nanites = backup.nanites var/datum/nanite_program/P = nanites.programs[text2num(params["program_id"])] investigate_log("[key_name(usr)] deleted program [P.name] from cloud #[current_view]", INVESTIGATE_NANITES) qdel(P) . = TRUE + if("add_rule") + if(disk && disk.program && istype(disk.program, /datum/nanite_program/sensor)) + var/datum/nanite_program/sensor/rule_template = disk.program + if(!rule_template.can_rule) + return + var/datum/nanite_cloud_backup/backup = get_backup(current_view) + if(backup) + playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + var/datum/component/nanites/nanites = backup.nanites + var/datum/nanite_program/P = nanites.programs[text2num(params["program_id"])] + var/datum/nanite_rule/rule = rule_template.make_rule(P) + + investigate_log("[key_name(usr)] added rule [rule.display()] to program [P.name] in cloud #[current_view]", INVESTIGATE_NANITES) + . = TRUE + if("remove_rule") + var/datum/nanite_cloud_backup/backup = get_backup(current_view) + if(backup) + playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) + var/datum/component/nanites/nanites = backup.nanites + var/datum/nanite_program/P = nanites.programs[text2num(params["program_id"])] + var/datum/nanite_rule/rule = P.rules[text2num(params["rule_id"])] + rule.remove() + + investigate_log("[key_name(usr)] removed rule [rule.display()] from program [P.name] in cloud #[current_view]", INVESTIGATE_NANITES) + . = TRUE /datum/nanite_cloud_backup var/cloud_id = 0 @@ -193,4 +241,4 @@ /datum/nanite_cloud_backup/Destroy() storage.cloud_backups -= src SSnanites.cloud_backups -= src - return ..() \ No newline at end of file + return ..() diff --git a/code/modules/research/nanites/nanite_hijacker.dm b/code/modules/research/nanites/nanite_hijacker.dm index 920c42b411..8e5e68dd18 100644 --- a/code/modules/research/nanites/nanite_hijacker.dm +++ b/code/modules/research/nanites/nanite_hijacker.dm @@ -1,3 +1,4 @@ +/* Doesnt work anymore due to code updates, was unused anyways. /obj/item/nanite_hijacker name = "nanite remote control" //fake name desc = "A device that can load nanite programming disks, edit them at will, and imprint them to nanites remotely." @@ -154,4 +155,5 @@ program.timer_type = NANITE_TIMER_TRIGGER if("Reset Activation Timer") program.timer_type = NANITE_TIMER_RESET - . = TRUE \ No newline at end of file + . = TRUE +*/ diff --git a/code/modules/research/nanites/nanite_misc_items.dm b/code/modules/research/nanites/nanite_misc_items.dm index cbcdfb0f9f..6837543d11 100644 --- a/code/modules/research/nanites/nanite_misc_items.dm +++ b/code/modules/research/nanites/nanite_misc_items.dm @@ -6,4 +6,4 @@ icon_state = "nanite_remote" /obj/item/nanite_injector/attack_self(mob/user) - user.AddComponent(/datum/component/nanites, 150) \ No newline at end of file + user.AddComponent(/datum/component/nanites, 150) diff --git a/code/modules/research/nanites/nanite_program_hub.dm b/code/modules/research/nanites/nanite_program_hub.dm index d6e0bbdabb..ea4392f236 100644 --- a/code/modules/research/nanites/nanite_program_hub.dm +++ b/code/modules/research/nanites/nanite_program_hub.dm @@ -7,18 +7,21 @@ use_power = IDLE_POWER_USE anchored = TRUE density = TRUE + ui_x = 500 + ui_y = 700 var/obj/item/disk/nanite_program/disk var/datum/techweb/linked_techweb var/current_category = "Main" - var/detail_view = FALSE + var/detail_view = TRUE var/categories = list( list(name = "Utility Nanites"), list(name = "Medical Nanites"), list(name = "Sensor Nanites"), list(name = "Augmentation Nanites"), list(name = "Suppression Nanites"), - list(name = "Weaponized Nanites") + list(name = "Weaponized Nanites"), + //list(name = "Protocols") B.E.P.I.S Content, which we dont have ) /obj/machinery/nanite_program_hub/Initialize() @@ -31,8 +34,8 @@ if(disk) eject(user) if(user.transferItemToLoc(N, src)) - to_chat(user, "You insert [N] into [src]") - playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) + to_chat(user, "You insert [N] into [src].") + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, FALSE) disk = N else ..() @@ -45,10 +48,9 @@ disk = null /obj/machinery/nanite_program_hub/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "nanite_program_hub", name, 500, 700, master_ui, state) - ui.set_autoupdate(FALSE) //to avoid making the whole program list every second + ui = new(user, src, ui_key, "nanite_program_hub", name, ui_x, ui_y, master_ui, state) ui.open() /obj/machinery/nanite_program_hub/ui_data() @@ -62,25 +64,31 @@ disk_data["name"] = P.name disk_data["desc"] = P.desc data["disk"] = disk_data + else + data["has_disk"] = FALSE data["detail_view"] = detail_view - data["category"] = current_category - if(current_category != "Main") - var/list/program_list = list() - for(var/i in linked_techweb.researched_designs) - var/datum/design/nanites/D = SSresearch.techweb_design_by_id(i) - if(!istype(D)) - continue - if(current_category in D.category) - var/list/program_design = list() - program_design["id"] = D.id - program_design["name"] = D.name - program_design["desc"] = D.desc - program_list += list(program_design) - data["program_list"] = program_list - else - data["categories"] = categories + return data + +/obj/machinery/nanite_program_hub/ui_static_data(mob/user) + var/list/data = list() + data["programs"] = list() + for(var/i in linked_techweb.researched_designs) + var/datum/design/nanites/D = SSresearch.techweb_design_by_id(i) + if(!istype(D)) + continue + var/cat_name = D.category[1] //just put them in the first category fuck it + if(isnull(data["programs"][cat_name])) + data["programs"][cat_name] = list() + var/list/program_design = list() + program_design["id"] = D.id + program_design["name"] = D.name + program_design["desc"] = D.desc + data["programs"][cat_name] += list(program_design) + + if(!length(data["programs"])) + data["programs"] = null return data @@ -101,11 +109,10 @@ qdel(disk.program) disk.program = new downloaded.program_type disk.name = "[initial(disk.name)] \[[disk.program.name]\]" - playsound(src, 'sound/machines/terminal_prompt.ogg', 25, 0) + playsound(src, 'sound/machines/terminal_prompt.ogg', 25, FALSE) . = TRUE - if("set_category") - var/new_category = params["category"] - current_category = new_category + if("refresh") + update_static_data(usr) . = TRUE if("toggle_details") detail_view = !detail_view diff --git a/code/modules/research/nanites/nanite_programmer.dm b/code/modules/research/nanites/nanite_programmer.dm index fd22fbf4b1..e61f58c81e 100644 --- a/code/modules/research/nanites/nanite_programmer.dm +++ b/code/modules/research/nanites/nanite_programmer.dm @@ -9,6 +9,9 @@ use_power = IDLE_POWER_USE anchored = TRUE density = TRUE + flags_1 = HEAR_1 + ui_x = 420 + ui_y = 550 /obj/machinery/nanite_programmer/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/disk/nanite_program)) @@ -17,7 +20,7 @@ eject(user) if(user.transferItemToLoc(N, src)) to_chat(user, "You insert [N] into [src]") - playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) + playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, FALSE) disk = N program = N.program else @@ -32,9 +35,9 @@ program = null /obj/machinery/nanite_programmer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "nanite_programmer", name, 600, 800, master_ui, state) + ui = new(user, src, ui_key, "nanite_programmer", name, ui_x, ui_y, master_ui, state) ui.open() /obj/machinery/nanite_programmer/ui_data() @@ -50,20 +53,16 @@ data["trigger_cooldown"] = program.trigger_cooldown / 10 data["activated"] = program.activated - data["activation_delay"] = program.activation_delay - data["timer"] = program.timer data["activation_code"] = program.activation_code data["deactivation_code"] = program.deactivation_code data["kill_code"] = program.kill_code data["trigger_code"] = program.trigger_code - data["timer_type"] = program.get_timer_type_text() + data["timer_restart"] = program.timer_restart / 10 + data["timer_shutdown"] = program.timer_shutdown / 10 + data["timer_trigger"] = program.timer_trigger / 10 + data["timer_trigger_delay"] = program.timer_trigger_delay / 10 - var/list/extra_settings = list() - for(var/X in program.extra_settings) - var/list/setting = list() - setting["name"] = X - setting["value"] = program.get_extra_setting(X) - extra_settings += list(setting) + var/list/extra_settings = program.get_extra_settings_frontend() data["extra_settings"] = extra_settings if(LAZYLEN(extra_settings)) data["has_extra_settings"] = TRUE @@ -78,20 +77,12 @@ eject(usr) . = TRUE if("toggle_active") - playsound(src, "terminal_type", 25, 0) + playsound(src, "terminal_type", 25, FALSE) program.activated = !program.activated //we don't use the activation procs since we aren't in a mob - if(program.activated) - program.activation_delay = 0 . = TRUE if("set_code") - var/new_code = input("Set code (0000-9999):", name, null) as null|num - if(!isnull(new_code)) - playsound(src, "terminal_type", 25, 0) - new_code = CLAMP(round(new_code, 1),0,9999) - else - return - - playsound(src, "terminal_type", 25, 0) + var/new_code = text2num(params["code"]) + playsound(src, "terminal_type", 25, FALSE) var/target_code = params["target_code"] switch(target_code) if("activation") @@ -104,37 +95,44 @@ program.trigger_code = CLAMP(round(new_code, 1),0,9999) . = TRUE if("set_extra_setting") - program.set_extra_setting(usr, params["target_setting"]) - playsound(src, "terminal_type", 25, 0) + program.set_extra_setting(params["target_setting"], params["value"]) + playsound(src, "terminal_type", 25, FALSE) . = TRUE - if("set_activation_delay") - var/delay = input("Set activation delay in seconds (0-1800):", name, program.activation_delay) as null|num - if(!isnull(delay)) - playsound(src, "terminal_type", 25, 0) - delay = CLAMP(round(delay, 1),0,1800) - program.activation_delay = delay - if(delay) - program.activated = FALSE - . = TRUE - if("set_timer") - var/timer = input("Set timer in seconds (10-3600):", name, program.timer) as null|num + if("set_restart_timer") + var/timer = text2num(params["delay"]) if(!isnull(timer)) - playsound(src, "terminal_type", 25, 0) - if(!timer == 0) - timer = CLAMP(round(timer, 1),10,3600) - program.timer = timer + playsound(src, "terminal_type", 25, FALSE) + timer = CLAMP(round(timer, 1), 0, 3600) + timer *= 10 //convert to deciseconds + program.timer_restart = timer . = TRUE - if("set_timer_type") - var/new_type = input("Choose the timer effect","Timer Effect") as null|anything in list("Deactivate","Self-Delete","Trigger","Reset Activation Timer") - if(new_type) - playsound(src, "terminal_type", 25, 0) - switch(new_type) - if("Deactivate") - program.timer_type = NANITE_TIMER_DEACTIVATE - if("Self-Delete") - program.timer_type = NANITE_TIMER_SELFDELETE - if("Trigger") - program.timer_type = NANITE_TIMER_TRIGGER - if("Reset Activation Timer") - program.timer_type = NANITE_TIMER_RESET - . = TRUE \ No newline at end of file + if("set_shutdown_timer") + var/timer = text2num(params["delay"]) + if(!isnull(timer)) + playsound(src, "terminal_type", 25, FALSE) + timer = CLAMP(round(timer, 1), 0, 3600) + timer *= 10 //convert to deciseconds + program.timer_shutdown = timer + . = TRUE + if("set_trigger_timer") + var/timer = text2num(params["delay"]) + if(!isnull(timer)) + playsound(src, "terminal_type", 25, FALSE) + timer = CLAMP(round(timer, 1), 0, 3600) + timer *= 10 //convert to deciseconds + program.timer_trigger = timer + . = TRUE + if("set_timer_trigger_delay") + var/timer = text2num(params["delay"]) + if(!isnull(timer)) + playsound(src, "terminal_type", 25, FALSE) + timer = CLAMP(round(timer, 1), 0, 3600) + timer *= 10 //convert to deciseconds + program.timer_trigger_delay = timer + . = TRUE + +/obj/machinery/nanite_programmer/Hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode) + . = ..() + var/static/regex/when = regex("(?:^\\W*when|when\\W*$)", "i") //starts or ends with when + if(findtext(raw_message, when) && !istype(speaker, /obj/machinery/nanite_programmer)) + say("When you code it!!") diff --git a/code/modules/research/nanites/nanite_programs.dm b/code/modules/research/nanites/nanite_programs.dm index 0d27d7ba0d..72f969a77e 100644 --- a/code/modules/research/nanites/nanite_programs.dm +++ b/code/modules/research/nanites/nanite_programs.dm @@ -11,7 +11,7 @@ var/trigger_cost = 0 //Amount of nanites required to trigger var/trigger_cooldown = 50 //Deciseconds required between each trigger activation var/next_trigger = 0 //World time required for the next trigger activation - var/timer_counter = 0 //Counts up while active. Used for the timer and the activation delay. + var/program_flags = NONE var/passive_enabled = FALSE //If the nanites have an on/off-style effect, it's tracked by this var @@ -28,9 +28,17 @@ //The following vars are customizable var/activated = TRUE //If FALSE, the program won't process, disables passive effects, can't trigger and doesn't consume nanites - var/activation_delay = 0 //Seconds before the program self-activates. - var/timer = 0 //Seconds before the timer effect activates. Starts counting AFTER the activation delay - var/timer_type = NANITE_TIMER_DEACTIVATE //What happens when the timer runs out + + var/timer_restart = 0 //When deactivated, the program will wait X deciseconds before self-reactivating. Also works if the program begins deactivated. + var/timer_shutdown = 0 //When activated, the program will wait X deciseconds before self-deactivating. Also works if the program begins activated. + var/timer_trigger = 0 //[Trigger only] While active, the program will attempt to trigger once every x deciseconds. + var/timer_trigger_delay = 0 //[Trigger only] While active, the program will delay trigger signals by X deciseconds. + + //Indicates the next world.time tick where these timers will act + var/timer_restart_next = 0 + var/timer_shutdown_next = 0 + var/timer_trigger_next = 0 + var/timer_trigger_delay_next = 0 //Signal codes, these handle remote input to the nanites. If set to 0 they'll ignore signals. var/activation_code = 0 //Code that activates the program [1-9999] @@ -39,19 +47,19 @@ var/trigger_code = 0 //Code that triggers the program (if available) [1-9999] //Extra settings - //Must be listed in text form, with the same title they'll be displayed in the programmer UI - //Changing these values is handled by set_extra_setting() - //Viewing these values is handled by get_extra_setting() - //Copying these values is handled by copy_extra_settings_to() + ///Don't ever override this or I will come to your house and stand menacingly behind a bush var/list/extra_settings = list() -/datum/nanite_program/triggered - use_rate = 0 - trigger_cost = 5 - trigger_cooldown = 50 - can_trigger = TRUE + //Rules + //Rules that automatically manage if the program's active without requiring separate sensor programs + var/list/datum/nanite_rule/rules = list() + +/datum/nanite_program/New() + . = ..() + register_extra_settings() /datum/nanite_program/Destroy() + extra_settings = null if(host_mob) if(activated) deactivate() @@ -64,39 +72,60 @@ /datum/nanite_program/proc/copy() var/datum/nanite_program/new_program = new type() - - new_program.activated = activated - new_program.activation_delay = activation_delay - new_program.timer = timer - new_program.timer_type = timer_type - new_program.activation_code = activation_code - new_program.deactivation_code = deactivation_code - new_program.kill_code = kill_code - new_program.trigger_code = trigger_code - copy_extra_settings_to(new_program) + copy_programming(new_program, TRUE) return new_program /datum/nanite_program/proc/copy_programming(datum/nanite_program/target, copy_activated = TRUE) if(copy_activated) target.activated = activated - target.activation_delay = activation_delay - target.timer = timer - target.timer_type = timer_type + target.timer_restart = timer_restart + target.timer_shutdown = timer_shutdown + target.timer_trigger = timer_trigger + target.timer_trigger_delay = timer_trigger_delay target.activation_code = activation_code target.deactivation_code = deactivation_code target.kill_code = kill_code target.trigger_code = trigger_code - copy_extra_settings_to(target) -/datum/nanite_program/proc/set_extra_setting(user, setting) + target.rules = list() + for(var/R in rules) + var/datum/nanite_rule/rule = R + rule.copy_to(target) + + if(istype(target,src)) + copy_extra_settings_to(target) + +///Register extra settings by overriding this. +///extra_settings[name] = new typepath() for each extra setting +/datum/nanite_program/proc/register_extra_settings() return -/datum/nanite_program/proc/get_extra_setting(setting) - return +///You can override this if you need to have special behavior after setting certain settings. +/datum/nanite_program/proc/set_extra_setting(setting, value) + var/datum/nanite_extra_setting/ES = extra_settings[setting] + return ES.set_value(value) +///You probably shouldn't be overriding this one, but I'm not a cop. +/datum/nanite_program/proc/get_extra_setting_value(setting) + var/datum/nanite_extra_setting/ES = extra_settings[setting] + return ES.get_value() + +///Used for getting information about the extra settings to the frontend +/datum/nanite_program/proc/get_extra_settings_frontend() + var/list/out = list() + for(var/name in extra_settings) + var/datum/nanite_extra_setting/ES = extra_settings[name] + out += ES.get_frontend_list(name) + return out + +///Copy of the list instead of direct reference for obvious reasons /datum/nanite_program/proc/copy_extra_settings_to(datum/nanite_program/target) - return + var/list/copy_list = list() + for(var/ns_name in extra_settings) + var/datum/nanite_extra_setting/extra_setting = extra_settings[ns_name] + copy_list[ns_name] = extra_setting.get_copy() + target.extra_settings = copy_list /datum/nanite_program/proc/on_add(datum/component/nanites/_nanites) nanites = _nanites @@ -105,10 +134,12 @@ /datum/nanite_program/proc/on_mob_add() host_mob = nanites.host_mob - if(activated) //apply activation effects if it starts active + if(activated) //apply activation effects depending on initial status; starts the restart and shutdown timers activate() + else + deactivate() -datum/nanite_program/proc/on_mob_remove() +/datum/nanite_program/proc/on_mob_remove() return /datum/nanite_program/proc/toggle() @@ -119,36 +150,35 @@ datum/nanite_program/proc/on_mob_remove() /datum/nanite_program/proc/activate() activated = TRUE - timer_counter = activation_delay + if(timer_shutdown) + timer_shutdown_next = world.time + timer_shutdown /datum/nanite_program/proc/deactivate() if(passive_enabled) disable_passive_effect() activated = FALSE + if(timer_restart) + timer_restart_next = world.time + timer_restart /datum/nanite_program/proc/on_process() - timer_counter++ - - if(activation_delay) - if(activated && timer_counter < activation_delay) - deactivate() - else if(!activated && timer_counter >= activation_delay) - activate() if(!activated) + if(timer_restart_next && world.time > timer_restart_next) + activate() + timer_restart_next = 0 return - if(timer && timer_counter > timer) - if(timer_type == NANITE_TIMER_DEACTIVATE) - deactivate() - return - else if(timer_type == NANITE_TIMER_SELFDELETE) - qdel(src) - return - else if(can_trigger && timer_type == NANITE_TIMER_TRIGGER) - trigger() - timer_counter = activation_delay - else if(timer_type == NANITE_TIMER_RESET) - timer_counter = 0 + if(timer_shutdown_next && world.time > timer_shutdown_next) + deactivate() + timer_shutdown_next = 0 + + if(timer_trigger && world.time > timer_trigger_next) + trigger() + timer_trigger_next = world.time + timer_trigger + + if(timer_trigger_delay_next && world.time > timer_trigger_delay_next) + trigger(delayed = TRUE) + timer_trigger_delay_next = 0 + if(check_conditions() && consume_nanites(use_rate)) if(!passive_enabled) enable_passive_effect() @@ -160,6 +190,10 @@ datum/nanite_program/proc/on_mob_remove() //If false, disables active and passive effects, but doesn't consume nanites //Can be used to avoid consuming nanites for nothing /datum/nanite_program/proc/check_conditions() + for(var/R in rules) + var/datum/nanite_rule/rule = R + if(!rule.check_rule()) + return FALSE return TRUE //Constantly procs as long as the program is active @@ -174,15 +208,25 @@ datum/nanite_program/proc/on_mob_remove() /datum/nanite_program/proc/disable_passive_effect() passive_enabled = FALSE -/datum/nanite_program/proc/trigger() +//Checks conditions then fires the nanite trigger effect +/datum/nanite_program/proc/trigger(delayed = FALSE, comm_message) + if(!can_trigger) + return if(!activated) - return FALSE + return + if(timer_trigger_delay && !delayed) + timer_trigger_delay_next = world.time + timer_trigger_delay + return if(world.time < next_trigger) - return FALSE + return if(!consume_nanites(trigger_cost)) - return FALSE + return next_trigger = world.time + trigger_cooldown - return TRUE + on_trigger(comm_message) + +//Nanite trigger effect, requires can_trigger to be used +/datum/nanite_program/proc/on_trigger(comm_message) + return /datum/nanite_program/proc/consume_nanites(amount, force = FALSE) return nanites.consume_nanites(amount, force) @@ -234,24 +278,36 @@ datum/nanite_program/proc/on_mob_remove() /datum/nanite_program/proc/receive_signal(code, source) if(activation_code && code == activation_code && !activated) activate() - host_mob.investigate_log("[host_mob]'s [name] nanite program was activated by [source] with code [code].", INVESTIGATE_NANITES) + host_mob.investigate_log("'s [name] nanite program was activated by [source] with code [code].", INVESTIGATE_NANITES) else if(deactivation_code && code == deactivation_code && activated) deactivate() - host_mob.investigate_log("[host_mob]'s [name] nanite program was deactivated by [source] with code [code].", INVESTIGATE_NANITES) - if(kill_code && code == kill_code) - host_mob.investigate_log("[host_mob]'s [name] nanite program was deleted by [source] with code [code].", INVESTIGATE_NANITES) - qdel(src) - else if(can_trigger && trigger_code && code == trigger_code) + host_mob.investigate_log("'s [name] nanite program was deactivated by [source] with code [code].", INVESTIGATE_NANITES) + if(can_trigger && trigger_code && code == trigger_code) trigger() - host_mob.investigate_log("[host_mob]'s [name] nanite program was triggered by [source] with code [code].", INVESTIGATE_NANITES) + host_mob.investigate_log("'s [name] nanite program was triggered by [source] with code [code].", INVESTIGATE_NANITES) + if(kill_code && code == kill_code) + host_mob.investigate_log("'s [name] nanite program was deleted by [source] with code [code].", INVESTIGATE_NANITES) + qdel(src) + +///A nanite program containing a behaviour protocol. Only one protocol of each class can be active at once. +//Currently unused due to us lacking the B.E.P.I.S +/datum/nanite_program/protocol + name = "Nanite Protocol" + var/protocol_class = NONE + +/datum/nanite_program/protocol/check_conditions() + . = ..() + for(var/protocol in nanites.protocols) + var/datum/nanite_program/protocol/P = protocol + if(P != src && P.activated && P.protocol_class == protocol_class) + return FALSE + +/datum/nanite_program/protocol/on_add(datum/component/nanites/_nanites) + ..() + nanites.protocols += src + +/datum/nanite_program/protocol/Destroy() + if(nanites) + nanites.protocols -= src + return ..() -/datum/nanite_program/proc/get_timer_type_text() - switch(timer_type) - if(NANITE_TIMER_DEACTIVATE) - return "Deactivate" - if(NANITE_TIMER_SELFDELETE) - return "Self-Delete" - if(NANITE_TIMER_TRIGGER) - return "Trigger" - if(NANITE_TIMER_RESET) - return "Reset Activation Timer" diff --git a/code/modules/research/nanites/nanite_programs/buffing.dm b/code/modules/research/nanites/nanite_programs/buffing.dm index dde61ec378..ed3f420091 100644 --- a/code/modules/research/nanites/nanite_programs/buffing.dm +++ b/code/modules/research/nanites/nanite_programs/buffing.dm @@ -18,24 +18,16 @@ var/mob/living/carbon/human/H = host_mob H.physiology.stun_mod *= 2 -/datum/nanite_program/triggered/adrenaline +/datum/nanite_program/adrenaline name = "Adrenaline Burst" desc = "The nanites cause a burst of adrenaline when triggered, waking the host from stuns and temporarily increasing their speed." + can_trigger = TRUE trigger_cost = 25 trigger_cooldown = 1200 rogue_types = list(/datum/nanite_program/toxic, /datum/nanite_program/nerve_decay) -/datum/nanite_program/triggered/adrenaline/trigger() - if(!..()) - return - to_chat(host_mob, "You feel a sudden surge of energy!") - host_mob.SetStun(0) - host_mob.SetKnockdown(0) - host_mob.SetUnconscious(0) - host_mob.adjustStaminaLoss(-10) //stimulants give stamina heal now - host_mob.lying = 0 - host_mob.update_canmove() - host_mob.reagents.add_reagent(/datum/reagent/medicine/stimulants, 1.5) +/datum/nanite_program/adrenaline/on_trigger() + host_mob.do_adrenaline(-10, TRUE, TRUE, FALSE, TRUE, /datum/reagent/medicine/stimulants = 1.5, "You feel a sudden surge of energy!", FALSE, FALSE, FALSE) /datum/nanite_program/hardening name = "Dermal Hardening" @@ -120,7 +112,7 @@ /datum/nanite_program/mindshield/enable_passive_effect() . = ..() - if(!host_mob.mind.has_antag_datum(/datum/antagonist/rev)) //won't work if on a rev, to avoid having implanted revs + if(!host_mob.mind.has_antag_datum(/datum/antagonist/rev, TRUE)) //won't work if on a rev, to avoid having implanted revs. ADD_TRAIT(host_mob, TRAIT_MINDSHIELD, "nanites") host_mob.sec_hud_set_implants() diff --git a/code/modules/research/nanites/nanite_programs/healing.dm b/code/modules/research/nanites/nanite_programs/healing.dm index df439e4496..5114e156d8 100644 --- a/code/modules/research/nanites/nanite_programs/healing.dm +++ b/code/modules/research/nanites/nanite_programs/healing.dm @@ -48,12 +48,12 @@ /datum/nanite_program/purging name = "Blood Purification" - desc = "The nanites purge toxins and chemicals from the host's bloodstream, however it is dangerous to slimepeople biology due to inaccuracy." + desc = "The nanites purge toxins and chemicals from the host's bloodstream, however it is dangerous to slime biology due to inaccuracy." use_rate = 1 rogue_types = list(/datum/nanite_program/suffocating, /datum/nanite_program/necrotic) /datum/nanite_program/purging/check_conditions() - var/foreign_reagent = LAZYLEN(host_mob.reagents.reagent_list) + var/foreign_reagent = length(host_mob.reagents?.reagent_list) if(!host_mob.getToxLoss() && !foreign_reagent) return FALSE return ..() @@ -73,18 +73,17 @@ rogue_types = list(/datum/nanite_program/brain_decay) /datum/nanite_program/brain_heal/check_conditions() + var/problems = FALSE if(iscarbon(host_mob)) var/mob/living/carbon/C = host_mob - for(var/X in C.get_traumas()) - var/datum/brain_trauma/BT = X - if(BT.resilience <= TRAUMA_RESILIENCE_BASIC) - return ..() - if(host_mob.getOrganLoss(ORGAN_SLOT_BRAIN)) - return ..() - return FALSE + if(length(C.get_traumas())) + problems = TRUE + if(host_mob.getOrganLoss(ORGAN_SLOT_BRAIN) > 0) + problems = TRUE + return problems ? ..() : FALSE /datum/nanite_program/brain_heal/active_effect() - host_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, -1, TRUE) + host_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, -1) if(iscarbon(host_mob) && prob(10)) var/mob/living/carbon/C = host_mob C.cure_trauma_type(resilience = TRAUMA_RESILIENCE_BASIC) @@ -125,7 +124,7 @@ if(!parts.len) return FALSE else - if(!(MOB_ROBOTIC in host_mob.mob_biotypes)) + if(!(host_mob.mob_biotypes & MOB_ROBOTIC)) return FALSE return ..() @@ -148,7 +147,7 @@ /datum/nanite_program/purging_advanced name = "Selective Blood Purification" desc = "The nanites purge toxins and dangerous chemicals from the host's bloodstream, while ignoring beneficial chemicals. \ - The added processing power required to analyze the chemicals severely increases the nanite consumption rate. Due to added complexity, it is safe with slimepeople biology." + The added processing power required to analyze the chemicals severely increases the nanite consumption rate. This program is safe with slime biology due to the increased precision." use_rate = 2 rogue_types = list(/datum/nanite_program/suffocating, /datum/nanite_program/necrotic) @@ -181,7 +180,7 @@ return var/update = FALSE for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(3/parts.len, 3/parts.len)) + if(L.heal_damage(3/parts.len, 3/parts.len, null, BODYPART_ORGANIC)) update = TRUE if(update) host_mob.update_damage_overlays() @@ -196,70 +195,54 @@ rogue_types = list(/datum/nanite_program/brain_decay, /datum/nanite_program/brain_misfire) /datum/nanite_program/brain_heal_advanced/check_conditions() + var/problems = FALSE if(iscarbon(host_mob)) var/mob/living/carbon/C = host_mob - for(var/X in C.get_traumas()) - var/datum/brain_trauma/BT = X - if(BT.resilience <= TRAUMA_RESILIENCE_LOBOTOMY) - return ..() - if(host_mob.getOrganLoss(ORGAN_SLOT_BRAIN)) - return ..() - return FALSE + if(length(C.get_traumas())) + problems = TRUE + if(host_mob.getOrganLoss(ORGAN_SLOT_BRAIN) > 0) + problems = TRUE + return problems ? ..() : FALSE /datum/nanite_program/brain_heal_advanced/active_effect() - host_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, -2, TRUE) + host_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, -2) if(iscarbon(host_mob) && prob(10)) var/mob/living/carbon/C = host_mob C.cure_trauma_type(resilience = TRAUMA_RESILIENCE_LOBOTOMY) -/datum/nanite_program/triggered/defib +/datum/nanite_program/defib name = "Defibrillation" desc = "The nanites shock the host's heart when triggered, bringing them back to life if the body can sustain it." + can_trigger = TRUE trigger_cost = 25 trigger_cooldown = 120 - rogue_types = list(/datum/nanite_program/triggered/shocking) - -/datum/nanite_program/triggered/defib/trigger() - if(!..()) - return + rogue_types = list(/datum/nanite_program/shocking) +/datum/nanite_program/defib/on_trigger(comm_message) host_mob.notify_ghost_cloning("Your heart is being defibrillated by nanites. Re-enter your corpse if you want to be revived!") addtimer(CALLBACK(src, .proc/zap), 50) -/datum/nanite_program/triggered/defib/proc/check_revivable() +/datum/nanite_program/defib/proc/check_revivable() if(!iscarbon(host_mob)) //nonstandard biology return FALSE var/mob/living/carbon/C = host_mob - if(C.suiciding || HAS_TRAIT(C, TRAIT_NOCLONE) || C.hellbound) //can't revive - return FALSE - if((world.time - C.timeofdeath) > 1800) //too late - return FALSE - if((C.getBruteLoss() > 180) || (C.getFireLoss() > 180) || !C.can_be_revived()) //too damaged - return FALSE - if(!C.getorgan(/obj/item/organ/heart)) //what are we even shocking - return FALSE - var/obj/item/organ/brain/BR = C.getorgan(/obj/item/organ/brain) - if(QDELETED(BR) || BR.brain_death || (BR.organ_flags & ORGAN_FAILING) || C.suiciding) - return FALSE if(C.get_ghost()) return FALSE - return TRUE + return C.can_defib() -/datum/nanite_program/triggered/defib/proc/zap() +/datum/nanite_program/defib/proc/zap() var/mob/living/carbon/C = host_mob - playsound(C, 'sound/machines/defib_charge.ogg', 50, 0) + playsound(C, 'sound/machines/defib_charge.ogg', 50, FALSE) sleep(30) - playsound(C, 'sound/machines/defib_zap.ogg', 50, 0) + playsound(C, 'sound/machines/defib_zap.ogg', 50, FALSE) if(check_revivable()) - playsound(C, 'sound/machines/defib_success.ogg', 50, 0) + playsound(C, 'sound/machines/defib_success.ogg', 50, FALSE) C.set_heartattack(FALSE) - C.revive() + C.revive(full_heal = FALSE, admin_revive = FALSE) C.emote("gasp") C.Jitter(100) SEND_SIGNAL(C, COMSIG_LIVING_MINOR_SHOCK) - var/tplus = world.time - C.timeofdeath - if(tplus > 600) - C.adjustOrganLoss(ORGAN_SLOT_BRAIN, max(0, ((1800 - tplus) / 1800 * 150)), 150) log_game("[C] has been successfully defibrillated by nanites.") else - playsound(C, 'sound/machines/defib_failed.ogg', 50, 0) + playsound(C, 'sound/machines/defib_failed.ogg', 50, FALSE) + diff --git a/code/modules/research/nanites/nanite_programs/protocols.dm b/code/modules/research/nanites/nanite_programs/protocols.dm new file mode 100644 index 0000000000..73976abe09 --- /dev/null +++ b/code/modules/research/nanites/nanite_programs/protocols.dm @@ -0,0 +1,107 @@ +//Replication Protocols +/datum/nanite_program/protocol/kickstart + name = "Kickstart Protocol" + desc = "Replication Protocol: the nanites focus on early growth, heavily boosting replication rate for a few minutes after the initial implantation." + use_rate = 0 + rogue_types = list(/datum/nanite_program/necrotic) + protocol_class = NANITE_PROTOCOL_REPLICATION + var/boost_duration = 1200 + +/datum/nanite_program/protocol/kickstart/check_conditions() + if(!(world.time < nanites.start_time + boost_duration)) + return FALSE + return ..() + +/datum/nanite_program/protocol/kickstart/active_effect() + nanites.adjust_nanites(null, 3.5) + +/datum/nanite_program/protocol/factory + name = "Factory Protocol" + desc = "Replication Protocol: the nanites build a factory matrix within the host, gradually increasing replication speed over time. \ + The factory decays if the protocol is not active, or if the nanites are disrupted by shocks or EMPs." + use_rate = 0 + rogue_types = list(/datum/nanite_program/necrotic) + protocol_class = NANITE_PROTOCOL_REPLICATION + var/factory_efficiency = 0 + var/max_efficiency = 1000 //Goes up to 2 bonus regen per tick after 16 minutes and 40 seconds + +/datum/nanite_program/protocol/factory/on_process() + if(!activated || !check_conditions()) + factory_efficiency = max(0, factory_efficiency - 5) + ..() + +/datum/nanite_program/protocol/factory/on_emp(severity) + ..() + factory_efficiency = max(0, factory_efficiency - 300) + +/datum/nanite_program/protocol/factory/on_shock(shock_damage) + ..() + factory_efficiency = max(0, factory_efficiency - 200) + +/datum/nanite_program/protocol/factory/on_minor_shock() + ..() + factory_efficiency = max(0, factory_efficiency - 100) + +/datum/nanite_program/protocol/factory/active_effect() + factory_efficiency = min(factory_efficiency + 1, max_efficiency) + nanites.adjust_nanites(null, round(0.002 * factory_efficiency, 0.1)) + +/datum/nanite_program/protocol/tinker + name = "Tinker Protocol" + desc = "Replication Protocol: the nanites learn to use metallic material in the host's bloodstream to speed up the replication process." + use_rate = 0 + rogue_types = list(/datum/nanite_program/necrotic) + protocol_class = NANITE_PROTOCOL_REPLICATION + var/boost = 2 + var/list/valid_reagents = list( + /datum/reagent/iron, + /datum/reagent/copper, + /datum/reagent/gold, + /datum/reagent/silver, + /datum/reagent/mercury, + /datum/reagent/aluminium, + /datum/reagent/silicon) + +/datum/nanite_program/protocol/tinker/check_conditions() + if(!nanites.host_mob.reagents) + return FALSE + + var/found_reagent = FALSE + + var/datum/reagents/R = nanites.host_mob.reagents + for(var/VR in valid_reagents) + if(R.has_reagent(VR, 0.5)) + R.remove_reagent(VR, 0.5) + found_reagent = TRUE + break + if(!found_reagent) + return FALSE + return ..() + +/datum/nanite_program/protocol/tinker/active_effect() + nanites.adjust_nanites(null, boost) + +/datum/nanite_program/protocol/offline + name = "Offline Production Protocol" + desc = "Replication Protocol: while the host is asleep or otherwise unconcious, the nanites exploit the reduced interference to replicate more quickly." + use_rate = 0 + rogue_types = list(/datum/nanite_program/necrotic) + protocol_class = NANITE_PROTOCOL_REPLICATION + var/boost = 3 + +/datum/nanite_program/protocol/offline/check_conditions() + var/is_offline = FALSE + if(nanites.host_mob.IsSleeping() || nanites.host_mob.IsUnconscious()) + is_offline = TRUE + if(nanites.host_mob.stat == DEAD || HAS_TRAIT(nanites.host_mob, TRAIT_DEATHCOMA)) + is_offline = TRUE + if(nanites.host_mob.InCritical() && !HAS_TRAIT(nanites.host_mob, TRAIT_NOSOFTCRIT)) + is_offline = TRUE + if(nanites.host_mob.InFullCritical() && !HAS_TRAIT(nanites.host_mob, TRAIT_NOHARDCRIT)) + is_offline = TRUE + if(!is_offline) + return FALSE + return ..() + +/datum/nanite_program/protocol/offline/active_effect() + nanites.adjust_nanites(null, boost) diff --git a/code/modules/research/nanites/nanite_programs/sensor.dm b/code/modules/research/nanites/nanite_programs/sensor.dm index 535b92c6e1..260811445b 100644 --- a/code/modules/research/nanites/nanite_programs/sensor.dm +++ b/code/modules/research/nanites/nanite_programs/sensor.dm @@ -2,71 +2,41 @@ name = "Sensor Nanites" desc = "These nanites send a signal code when a certain condition is met." unique = FALSE - extra_settings = list("Sent Code") + var/can_rule = FALSE - var/sent_code = 0 - -/datum/nanite_program/sensor/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - -/datum/nanite_program/sensor/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - -/datum/nanite_program/sensor/copy_extra_settings_to(datum/nanite_program/sensor/target) - target.sent_code = sent_code +/datum/nanite_program/sensor/register_extra_settings() + extra_settings[NES_SENT_CODE] = new /datum/nanite_extra_setting/number(0, 1, 9999) /datum/nanite_program/sensor/proc/check_event() return FALSE /datum/nanite_program/sensor/proc/send_code() if(activated) - SEND_SIGNAL(host_mob, COMSIG_NANITE_SIGNAL, sent_code, "a [name] program") + var/datum/nanite_extra_setting/ES = extra_settings[NES_SENT_CODE] + SEND_SIGNAL(host_mob, COMSIG_NANITE_SIGNAL, ES.value, "a [name] program") /datum/nanite_program/sensor/active_effect() - if(sent_code && check_event()) + if(check_event()) send_code() +/datum/nanite_program/sensor/proc/make_rule(datum/nanite_program/target) + return + /datum/nanite_program/sensor/repeat name = "Signal Repeater" desc = "When triggered, sends another signal to the nanites, optionally with a delay." can_trigger = TRUE trigger_cost = 0 trigger_cooldown = 10 - extra_settings = list("Sent Code","Delay") var/spent = FALSE - var/delay = 0 -/datum/nanite_program/sensor/repeat/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Delay") - var/new_delay = input(user, "Set the delay in seconds:", name, null) as null|num - if(isnull(new_delay)) - return - delay = (CLAMP(round(new_delay, 1), 0, 3600)) * 10 //max 1 hour +/datum/nanite_program/sensor/repeat/register_extra_settings() + . = ..() + extra_settings[NES_DELAY] = new /datum/nanite_extra_setting/number(0, 0, 3600, "s") -/datum/nanite_program/sensor/repeat/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Delay") - return "[delay/10] seconds" - -/datum/nanite_program/sensor/repeat/copy_extra_settings_to(datum/nanite_program/sensor/repeat/target) - target.sent_code = sent_code - target.delay = delay - -/datum/nanite_program/sensor/repeat/trigger() - if(!..()) - return - addtimer(CALLBACK(src, .proc/send_code), delay) +/datum/nanite_program/sensor/repeat/on_trigger(comm_message) + var/datum/nanite_extra_setting/ES = extra_settings[NES_DELAY] + addtimer(CALLBACK(src, .proc/send_code), ES.get_value() * 10) /datum/nanite_program/sensor/relay_repeat name = "Relay Signal Repeater" @@ -74,98 +44,46 @@ can_trigger = TRUE trigger_cost = 0 trigger_cooldown = 10 - extra_settings = list("Sent Code","Relay Channel","Delay") var/spent = FALSE - var/delay = 0 - var/relay_channel = 0 -/datum/nanite_program/sensor/relay_repeat/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Relay Channel") - var/new_channel = input(user, "Set the relay channel (1-9999):", name, null) as null|num - if(isnull(new_channel)) - return - relay_channel = CLAMP(round(new_channel, 1), 1, 9999) - if(setting == "Delay") - var/new_delay = input(user, "Set the delay in seconds:", name, null) as null|num - if(isnull(new_delay)) - return - delay = (CLAMP(round(new_delay, 1), 0, 3600)) * 10 //max 1 hour +/datum/nanite_program/sensor/relay_repeat/register_extra_settings() + . = ..() + extra_settings[NES_RELAY_CHANNEL] = new /datum/nanite_extra_setting/number(1, 1, 9999) + extra_settings[NES_DELAY] = new /datum/nanite_extra_setting/number(0, 0, 3600, "s") -/datum/nanite_program/sensor/relay_repeat/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Relay Channel") - return relay_channel - if(setting == "Delay") - return "[delay/10] seconds" - -/datum/nanite_program/sensor/relay_repeat/copy_extra_settings_to(datum/nanite_program/sensor/relay_repeat/target) - target.sent_code = sent_code - target.delay = delay - target.relay_channel = relay_channel - -/datum/nanite_program/sensor/relay_repeat/trigger() - if(!..()) - return - addtimer(CALLBACK(src, .proc/send_code), delay) +/datum/nanite_program/sensor/relay_repeat/on_trigger(comm_message) + var/datum/nanite_extra_setting/ES = extra_settings[NES_DELAY] + addtimer(CALLBACK(src, .proc/send_code), ES.get_value() * 10) /datum/nanite_program/sensor/relay_repeat/send_code() - if(activated && relay_channel) + var/datum/nanite_extra_setting/relay = extra_settings[NES_RELAY_CHANNEL] + if(activated && relay.get_value()) for(var/X in SSnanites.nanite_relays) var/datum/nanite_program/relay/N = X - N.relay_signal(sent_code, relay_channel, "a [name] program") + var/datum/nanite_extra_setting/code = extra_settings[NES_SENT_CODE] + N.relay_signal(code.get_value(), relay.get_value(), "a [name] program") /datum/nanite_program/sensor/health name = "Health Sensor" desc = "The nanites receive a signal when the host's health is above/below a target percentage." - extra_settings = list("Sent Code","Health Percent","Direction") + can_rule = TRUE var/spent = FALSE - var/percent = 50 - var/direction = "Above" -/datum/nanite_program/sensor/health/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Health Percent") - var/new_percent = input(user, "Set the health percentage:", name, null) as null|num - if(isnull(new_percent)) - return - percent = CLAMP(round(new_percent, 1), -99, 100) - if(setting == "Direction") - if(direction == "Above") - direction = "Below" - else - direction = "Above" - -/datum/nanite_program/sensor/health/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Health Percent") - return "[percent]%" - if(setting == "Direction") - return direction - -/datum/nanite_program/sensor/health/copy_extra_settings_to(datum/nanite_program/sensor/health/target) - target.sent_code = sent_code - target.percent = percent - target.direction = direction +/datum/nanite_program/sensor/health/register_extra_settings() + . = ..() + extra_settings[NES_HEALTH_PERCENT] = new /datum/nanite_extra_setting/number(50, -99, 100, "%") + extra_settings[NES_DIRECTION] = new /datum/nanite_extra_setting/boolean(TRUE, "Above", "Below") /datum/nanite_program/sensor/health/check_event() var/health_percent = host_mob.health / host_mob.maxHealth * 100 + var/datum/nanite_extra_setting/percent = extra_settings[NES_HEALTH_PERCENT] + var/datum/nanite_extra_setting/direction = extra_settings[NES_DIRECTION] var/detected = FALSE - if(direction == "Above") - if(health_percent >= percent) + if(direction.get_value()) + if(health_percent >= percent.get_value()) detected = TRUE else - if(health_percent < percent) + if(health_percent < percent.get_value()) detected = TRUE if(detected) @@ -177,9 +95,18 @@ spent = FALSE return FALSE +/datum/nanite_program/sensor/health/make_rule(datum/nanite_program/target) + var/datum/nanite_rule/health/rule = new(target) + var/datum/nanite_extra_setting/direction = extra_settings[NES_DIRECTION] + var/datum/nanite_extra_setting/percent = extra_settings[NES_HEALTH_PERCENT] + rule.above = direction.get_value() + rule.threshold = percent.get_value() + return rule + /datum/nanite_program/sensor/crit name = "Critical Health Sensor" desc = "The nanites receive a signal when the host first reaches critical health." + can_rule = TRUE var/spent = FALSE /datum/nanite_program/sensor/crit/check_event() @@ -192,61 +119,44 @@ spent = FALSE return FALSE +/datum/nanite_program/sensor/crit/make_rule(datum/nanite_program/target) + var/datum/nanite_rule/crit/rule = new(target) + return rule + /datum/nanite_program/sensor/death name = "Death Sensor" desc = "The nanites receive a signal when they detect the host is dead." + can_rule = TRUE var/spent = FALSE /datum/nanite_program/sensor/death/on_death() send_code() +/datum/nanite_program/sensor/death/make_rule(datum/nanite_program/target) + var/datum/nanite_rule/death/rule = new(target) + return rule + /datum/nanite_program/sensor/nanite_volume name = "Nanite Volume Sensor" desc = "The nanites receive a signal when the nanite supply is above/below a certain percentage." - extra_settings = list("Sent Code","Nanite Percent","Direction") + can_rule = TRUE var/spent = FALSE - var/percent = 50 - var/direction = "Above" -/datum/nanite_program/sensor/nanite_volume/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Nanite Percent") - var/new_percent = input(user, "Set the nanite percentage:", name, null) as null|num - if(isnull(new_percent)) - return - percent = CLAMP(round(new_percent, 1), 1, 100) - if(setting == "Direction") - if(direction == "Above") - direction = "Below" - else - direction = "Above" - -/datum/nanite_program/sensor/nanite_volume/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Nanite Percent") - return "[percent]%" - if(setting == "Direction") - return direction - -/datum/nanite_program/sensor/nanite_volume/copy_extra_settings_to(datum/nanite_program/sensor/nanite_volume/target) - target.sent_code = sent_code - target.percent = percent - target.direction = direction +/datum/nanite_program/sensor/nanite_volume/register_extra_settings() + . = ..() + extra_settings[NES_NANITE_PERCENT] = new /datum/nanite_extra_setting/number(50, -99, 100, "%") + extra_settings[NES_DIRECTION] = new /datum/nanite_extra_setting/boolean(TRUE, "Above", "Below") /datum/nanite_program/sensor/nanite_volume/check_event() var/nanite_percent = (nanites.nanite_volume - nanites.safety_threshold)/(nanites.max_nanites - nanites.safety_threshold)*100 + var/datum/nanite_extra_setting/percent = extra_settings[NES_NANITE_PERCENT] + var/datum/nanite_extra_setting/direction = extra_settings[NES_DIRECTION] var/detected = FALSE - - if(direction == "Above") - if(nanite_percent >= percent) + if(direction.get_value()) + if(nanite_percent >= percent.get_value()) detected = TRUE else - if(nanite_percent < percent) + if(nanite_percent < percent.get_value()) detected = TRUE if(detected) @@ -258,75 +168,51 @@ spent = FALSE return FALSE +/datum/nanite_program/sensor/nanite_volume/make_rule(datum/nanite_program/target) + var/datum/nanite_rule/nanites/rule = new(target) + var/datum/nanite_extra_setting/direction = extra_settings[NES_DIRECTION] + var/datum/nanite_extra_setting/percent = extra_settings[NES_NANITE_PERCENT] + rule.above = direction.get_value() + rule.threshold = percent.get_value() + return rule + /datum/nanite_program/sensor/damage name = "Damage Sensor" desc = "The nanites receive a signal when a host's specific damage type is above/below a target value." - extra_settings = list("Sent Code","Damage Type","Damage","Direction") + can_rule = TRUE var/spent = FALSE - var/damage_type = "Brute" - var/damage = 50 - var/direction = "Above" -/datum/nanite_program/sensor/damage/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Damage") - var/new_damage = input(user, "Set the damage threshold:", name, null) as null|num - if(isnull(new_damage)) - return - damage = CLAMP(round(new_damage, 1), 0, 500) - if(setting == "Damage Type") - var/list/damage_types = list("Brute","Burn","Toxin","Oxygen","Cellular") - var/new_damage_type = input("Choose the damage type", name) as null|anything in damage_types - if(!new_damage_type) - return - damage_type = new_damage_type - if(setting == "Direction") - if(direction == "Above") - direction = "Below" - else - direction = "Above" - -/datum/nanite_program/sensor/damage/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Damage") - return damage - if(setting == "Damage Type") - return damage_type - if(setting == "Direction") - return direction - -/datum/nanite_program/sensor/damage/copy_extra_settings_to(datum/nanite_program/sensor/damage/target) - target.sent_code = sent_code - target.damage = damage - target.damage_type = damage_type - target.direction = direction +/datum/nanite_program/sensor/damage/register_extra_settings() + . = ..() + extra_settings[NES_DAMAGE_TYPE] = new /datum/nanite_extra_setting/type(BRUTE, list(BRUTE, BURN, TOX, OXY, CLONE)) + extra_settings[NES_DAMAGE] = new /datum/nanite_extra_setting/number(50, 0, 500) + extra_settings[NES_DIRECTION] = new /datum/nanite_extra_setting/boolean(TRUE, "Above", "Below") /datum/nanite_program/sensor/damage/check_event() var/reached_threshold = FALSE - var/check_above = (direction == "Above") + var/datum/nanite_extra_setting/type = extra_settings[NES_DAMAGE_TYPE] + var/datum/nanite_extra_setting/damage = extra_settings[NES_DAMAGE] + var/datum/nanite_extra_setting/direction = extra_settings[NES_DIRECTION] + var/check_above = direction.get_value() var/damage_amt = 0 - switch(damage_type) - if("Brute") + switch(type.get_value()) + if(BRUTE) damage_amt = host_mob.getBruteLoss() - if("Burn") + if(BURN) damage_amt = host_mob.getFireLoss() - if("Toxin") + if(TOX) damage_amt = host_mob.getToxLoss() - if("Oxygen") + if(OXY) damage_amt = host_mob.getOxyLoss() - if("Cellular") + if(CLONE) damage_amt = host_mob.getCloneLoss() - if(damage_amt >= damage) - if(check_above) + if(check_above) + if(damage_amt >= damage.get_value()) + reached_threshold = TRUE + else + if(damage_amt < damage.get_value()) reached_threshold = TRUE - else if(!check_above) - reached_threshold = TRUE if(reached_threshold) if(!spent) @@ -337,14 +223,25 @@ spent = FALSE return FALSE +/datum/nanite_program/sensor/damage/make_rule(datum/nanite_program/target) + var/datum/nanite_rule/damage/rule = new(target) + var/datum/nanite_extra_setting/direction = extra_settings[NES_DIRECTION] + var/datum/nanite_extra_setting/damage_type = extra_settings[NES_DAMAGE_TYPE] + var/datum/nanite_extra_setting/damage = extra_settings[NES_DAMAGE] + rule.above = direction.get_value() + rule.threshold = damage.get_value() + rule.damage_type = damage_type.get_value() + return rule + /datum/nanite_program/sensor/voice name = "Voice Sensor" desc = "Sends a signal when the nanites hear a determined word or sentence." - extra_settings = list("Sent Code","Sentence","Inclusive Mode") var/spent = FALSE - var/sentence = "" - var/inclusive = TRUE +/datum/nanite_program/sensor/voice/register_extra_settings() + . = ..() + extra_settings[NES_SENTENCE] = new /datum/nanite_extra_setting/text("") + extra_settings[NES_INCLUSIVE_MODE] = new /datum/nanite_extra_setting/boolean(TRUE, "Inclusive", "Exclusive") /datum/nanite_program/sensor/voice/on_mob_add() . = ..() @@ -353,45 +250,14 @@ /datum/nanite_program/sensor/voice/on_mob_remove() UnregisterSignal(host_mob, COMSIG_MOVABLE_HEAR, .proc/on_hear) -/datum/nanite_program/sensor/voice/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Sentence") - var/new_sentence = stripped_input(user, "Choose the sentence that triggers the sensor.", "Sentence", sentence, MAX_MESSAGE_LEN) - if(!new_sentence) - return - sentence = new_sentence - if(setting == "Inclusive Mode") - var/new_inclusive = input("Should the sensor detect the sentence if contained within another sentence?", name) as null|anything in list("Inclusive","Exclusive") - if(!new_inclusive) - return - inclusive = (new_inclusive == "Inclusive") - -/datum/nanite_program/sensor/voice/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Sentence") - return sentence - if(setting == "Inclusive Mode") - if(inclusive) - return "Inclusive" - else - return "Exclusive" - -/datum/nanite_program/sensor/voice/copy_extra_settings_to(datum/nanite_program/sensor/voice/target) - target.sent_code = sent_code - target.sentence = sentence - target.inclusive = inclusive - /datum/nanite_program/sensor/voice/proc/on_hear(datum/source, list/hearing_args) - if(!sentence) + var/datum/nanite_extra_setting/sentence = extra_settings[NES_SENTENCE] + var/datum/nanite_extra_setting/inclusive = extra_settings[NES_INCLUSIVE_MODE] + if(!sentence.get_value()) return - if(inclusive) + if(inclusive.get_value()) if(findtextEx(hearing_args[HEARING_RAW_MESSAGE], sentence)) send_code() else if(hearing_args[HEARING_RAW_MESSAGE] == sentence) - send_code() \ No newline at end of file + send_code() diff --git a/code/modules/research/nanites/nanite_programs/suppression.dm b/code/modules/research/nanites/nanite_programs/suppression.dm index e4b250ad61..56fd7fa044 100644 --- a/code/modules/research/nanites/nanite_programs/suppression.dm +++ b/code/modules/research/nanites/nanite_programs/suppression.dm @@ -1,15 +1,14 @@ //Programs that are generally useful for population control and non-harmful suppression. -/datum/nanite_program/triggered/sleepy +/datum/nanite_program/sleepy name = "Sleep Induction" desc = "The nanites cause rapid narcolepsy when triggered." + can_trigger = TRUE trigger_cost = 15 trigger_cooldown = 1200 rogue_types = list(/datum/nanite_program/brain_misfire, /datum/nanite_program/brain_decay) -/datum/nanite_program/triggered/sleepy/trigger() - if(!..()) - return +/datum/nanite_program/sleepy/on_trigger(comm_message) to_chat(host_mob, "You start to feel very sleepy...") host_mob.drowsyness += 20 addtimer(CALLBACK(host_mob, /mob/living.proc/Sleeping, 200), rand(60,200)) @@ -31,30 +30,28 @@ . = ..() to_chat(host_mob, "Your muscles relax, and you can move again.") -/datum/nanite_program/triggered/shocking +/datum/nanite_program/shocking name = "Electric Shock" desc = "The nanites shock the host when triggered. Destroys a large amount of nanites!" + can_trigger = TRUE trigger_cost = 10 trigger_cooldown = 300 program_flags = NANITE_SHOCK_IMMUNE rogue_types = list(/datum/nanite_program/toxic) -/datum/nanite_program/triggered/shocking/trigger() - if(!..()) - return +/datum/nanite_program/shocking/on_trigger(comm_message) host_mob.electrocute_act(rand(5,10), "shock nanites", TRUE, TRUE) -/datum/nanite_program/triggered/stun +/datum/nanite_program/stun name = "Neural Shock" desc = "The nanites pulse the host's nerves when triggered, inapacitating them for a short period." + can_trigger = TRUE trigger_cost = 4 trigger_cooldown = 300 - rogue_types = list(/datum/nanite_program/triggered/shocking, /datum/nanite_program/nerve_decay) + rogue_types = list(/datum/nanite_program/shocking, /datum/nanite_program/nerve_decay) -/datum/nanite_program/triggered/stun/trigger() - if(!..()) - return - playsound(host_mob, "sparks", 75, 1, -1) +/datum/nanite_program/stun/on_trigger(comm_message) + playsound(host_mob, "sparks", 75, TRUE, -1) host_mob.Knockdown(80) /datum/nanite_program/pacifying @@ -115,64 +112,50 @@ host_mob.cure_fakedeath("nanites") //Can receive transmissions from a nanite communication remote for customized messages -/datum/nanite_program/triggered/comm +/datum/nanite_program/comm + can_trigger = TRUE var/comm_code = 0 var/comm_message = "" -/datum/nanite_program/triggered/comm/proc/receive_comm_signal(signal_comm_code, comm_message, comm_source) +/datum/nanite_program/comm/register_extra_settings() + extra_settings[NES_COMM_CODE] = new /datum/nanite_extra_setting/number(0, 0, 9999) + +/datum/nanite_program/comm/proc/receive_comm_signal(signal_comm_code, comm_message, comm_source) if(!activated || !comm_code) return if(signal_comm_code == comm_code) host_mob.investigate_log("'s [name] nanite program was messaged by [comm_source] with comm code [signal_comm_code] and message '[comm_message]'.", INVESTIGATE_NANITES) trigger(comm_message) -/datum/nanite_program/triggered/comm/speech +/datum/nanite_program/comm/speech name = "Forced Speech" desc = "The nanites force the host to say a pre-programmed sentence when triggered." unique = FALSE trigger_cost = 3 trigger_cooldown = 20 rogue_types = list(/datum/nanite_program/brain_misfire, /datum/nanite_program/brain_decay) + var/static/list/blacklist = list( + "*surrender", + "*collapse" + ) - extra_settings = list("Sentence","Comm Code") - var/sentence = "" +/datum/nanite_program/comm/speech/register_extra_settings() + . = ..() + extra_settings[NES_SENTENCE] = new /datum/nanite_extra_setting/text("") -/datum/nanite_program/triggered/comm/speech/set_extra_setting(user, setting) - if(setting == "Sentence") - var/new_sentence = stripped_input(user, "Choose the sentence that the host will be forced to say.", "Sentence", sentence, MAX_MESSAGE_LEN) - if(!new_sentence) - return - if(new_sentence[1] == "*") //emotes are abusable, like surrender - return - sentence = new_sentence - if(setting == "Comm Code") - var/new_code = input(user, "Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num - if(isnull(new_code)) - return - comm_code = CLAMP(round(new_code, 1), 0, 9999) - -/datum/nanite_program/triggered/comm/speech/get_extra_setting(setting) - if(setting == "Sentence") - return sentence - if(setting == "Comm Code") - return comm_code - -/datum/nanite_program/triggered/comm/speech/copy_extra_settings_to(datum/nanite_program/triggered/comm/speech/target) - target.sentence = sentence - target.comm_code = comm_code - -/datum/nanite_program/triggered/comm/speech/trigger(comm_message) - if(!..()) - return +/datum/nanite_program/comm/speech/on_trigger(comm_message) var/sent_message = comm_message if(!comm_message) - sent_message = sentence + var/datum/nanite_extra_setting/sentence = extra_settings[NES_SENTENCE] + sent_message = sentence.get_value() + if(sent_message in blacklist) + return if(host_mob.stat == DEAD) return to_chat(host_mob, "You feel compelled to speak...") host_mob.say(sent_message, forced = "nanite speech") -/datum/nanite_program/triggered/comm/voice +/datum/nanite_program/comm/voice name = "Skull Echo" desc = "The nanites echo a synthesized message inside the host's skull." unique = FALSE @@ -180,56 +163,50 @@ trigger_cooldown = 20 rogue_types = list(/datum/nanite_program/brain_misfire, /datum/nanite_program/brain_decay) - extra_settings = list("Message","Comm Code") - var/message = "" +/datum/nanite_program/comm/voice/register_extra_settings() + . = ..() + extra_settings[NES_MESSAGE] = new /datum/nanite_extra_setting/text("") -/datum/nanite_program/triggered/comm/voice/set_extra_setting(user, setting) - if(setting == "Message") - var/new_message = stripped_input(user, "Choose the message sent to the host.", "Message", message, MAX_MESSAGE_LEN) - if(!new_message) - return - message = new_message - if(setting == "Comm Code") - var/new_code = input(user, "Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num - if(isnull(new_code)) - return - comm_code = CLAMP(round(new_code, 1), 0, 9999) - -/datum/nanite_program/triggered/comm/voice/get_extra_setting(setting) - if(setting == "Message") - return message - if(setting == "Comm Code") - return comm_code - -/datum/nanite_program/triggered/comm/voice/copy_extra_settings_to(datum/nanite_program/triggered/comm/voice/target) - target.message = message - target.comm_code = comm_code - -/datum/nanite_program/triggered/comm/voice/trigger(comm_message) - if(!..()) - return +/datum/nanite_program/comm/voice/on_trigger(comm_message) var/sent_message = comm_message if(!comm_message) - sent_message = message + var/datum/nanite_extra_setting/message_setting = extra_settings[NES_MESSAGE] + sent_message = message_setting.get_value() if(host_mob.stat == DEAD) return to_chat(host_mob, "You hear a strange, robotic voice in your head... \"[sent_message]\"") -/datum/nanite_program/triggered/comm/hallucination +/datum/nanite_program/comm/hallucination name = "Hallucination" desc = "The nanites make the host hallucinate something when triggered." trigger_cost = 4 trigger_cooldown = 80 unique = FALSE rogue_types = list(/datum/nanite_program/brain_misfire) - extra_settings = list("Hallucination Type", "Comm Code") - var/hal_type - var/hal_details -/datum/nanite_program/triggered/comm/hallucination/trigger(comm_message) - if(!..()) - return +/datum/nanite_program/comm/hallucination/register_extra_settings() + . = ..() + var/list/options = list( + "Message", + "Battle", + "Sound", + "Weird Sound", + "Station Message", + "Health", + "Alert", + "Fire", + "Shock", + "Plasma Flood", + "Random" + ) + extra_settings[NES_HALLUCINATION_TYPE] = new /datum/nanite_extra_setting/type("Message", options) + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/text("") +/datum/nanite_program/comm/hallucination/on_trigger(comm_message) + var/datum/nanite_extra_setting/hal_setting = extra_settings[NES_HALLUCINATION_TYPE] + var/hal_type = hal_setting.get_value() + var/datum/nanite_extra_setting/hal_detail_setting = extra_settings[NES_HALLUCINATION_DETAIL] + var/hal_details = hal_detail_setting.get_value() if(comm_message && (hal_type != "Message")) //Triggered via comm remote, but not set to a message hallucination return var/sent_message = comm_message //Comm remotes can send custom hallucination messages for the chat hallucination @@ -239,7 +216,9 @@ if(!iscarbon(host_mob)) return var/mob/living/carbon/C = host_mob - if(!hal_type) + if(hal_details == "random") + hal_details = null + if(hal_type == "Random") C.hallucination += 15 else switch(hal_type) @@ -254,6 +233,13 @@ if("Station Message") new /datum/hallucination/stationmessage(C, TRUE, hal_details) if("Health") + switch(hal_details) + if("critical") + hal_details = SCREWYHUD_CRIT + if("dead") + hal_details = SCREWYHUD_DEAD + if("healthy") + hal_details = SCREWYHUD_HEALTHY new /datum/hallucination/hudscrew(C, TRUE, hal_details) if("Alert") new /datum/hallucination/fake_alert(C, TRUE, hal_details) @@ -264,127 +250,40 @@ if("Plasma Flood") new /datum/hallucination/fake_flood(C, TRUE) -/datum/nanite_program/triggered/comm/hallucination/set_extra_setting(user, setting) - if(setting == "Comm Code") - var/new_code = input(user, "(Only for Message) Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num - if(isnull(new_code)) - return - comm_code = CLAMP(round(new_code, 1), 0, 9999) - - if(setting == "Hallucination Type") - var/list/possible_hallucinations = list("Random","Message","Battle","Sound","Weird Sound","Station Message","Health","Alert","Fire","Shock","Plasma Flood") - var/hal_type_choice = input("Choose the hallucination type", name) as null|anything in possible_hallucinations - if(!hal_type_choice) - return - switch(hal_type_choice) - if("Random") - hal_type = null - hal_details = null +/datum/nanite_program/comm/hallucination/set_extra_setting(setting, value) + . = ..() + if(setting == NES_HALLUCINATION_TYPE) + switch(value) if("Message") - hal_type = "Message" - var/hal_chat = stripped_input(user, "Choose the message the host will hear, or leave empty for random messages.", "Message", hal_details, MAX_MESSAGE_LEN) - if(hal_chat) - hal_details = hal_chat + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/text("") if("Battle") - hal_type = "Battle" - var/sound_list = list("random","laser","disabler","esword","gun","stunprod","harmbaton","bomb") - var/hal_choice = input("Choose the hallucination battle type", name) as null|anything in sound_list - if(!hal_choice || hal_choice == "random") - hal_details = null - else - hal_details = hal_choice + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/type("random", list("random","laser","disabler","esword","gun","stunprod","harmbaton","bomb")) if("Sound") - hal_type = "Sound" - var/sound_list = list("random","airlock","airlock pry","console","explosion","far explosion","mech","glass","alarm","beepsky","mech","wall decon","door hack") - var/hal_choice = input("Choose the hallucination sound", name) as null|anything in sound_list - if(!hal_choice || hal_choice == "random") - hal_details = null - else - hal_details = hal_choice + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/type("random", list("random","airlock","airlock pry","console","explosion","far explosion","mech","glass","alarm","beepsky","mech","wall decon","door hack")) if("Weird Sound") - hal_type = "Weird Sound" - var/sound_list = list("random","phone","hallelujah","highlander","laughter","hyperspace","game over","creepy","tesla") - var/hal_choice = input("Choose the hallucination sound", name) as null|anything in sound_list - if(!hal_choice || hal_choice == "random") - hal_details = null - else - hal_details = hal_choice + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/type("random", list("random","phone","hallelujah","highlander","laughter","hyperspace","game over","creepy","tesla")) if("Station Message") - hal_type = "Station Message" - var/msg_list = list("random","ratvar","shuttle dock","blob alert","malf ai","meteors","supermatter") - var/hal_choice = input("Choose the hallucination station message", name) as null|anything in msg_list - if(!hal_choice || hal_choice == "random") - hal_details = null - else - hal_details = hal_choice + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/type("random", list("random","ratvar","shuttle dock","blob alert","malf ai","meteors","supermatter")) if("Health") - hal_type = "Health" - var/health_list = list("random","critical","dead","healthy") - var/hal_choice = input("Choose the health status", name) as null|anything in health_list - if(!hal_choice || hal_choice == "random") - hal_details = null - else - switch(hal_choice) - if("critical") - hal_details = SCREWYHUD_CRIT - if("dead") - hal_details = SCREWYHUD_DEAD - if("healthy") - hal_details = SCREWYHUD_HEALTHY + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/type("random", list("random","critical","dead","healthy")) if("Alert") - hal_type = "Alert" - var/alert_list = list("random","not_enough_oxy","not_enough_tox","not_enough_co2","too_much_oxy","too_much_co2","too_much_tox","newlaw","nutrition","charge","gravity","fire","locked","hacked","temphot","tempcold","pressure") - var/hal_choice = input("Choose the alert", name) as null|anything in alert_list - if(!hal_choice || hal_choice == "random") - hal_details = null - else - hal_details = hal_choice - if("Fire") - hal_type = "Fire" - if("Shock") - hal_type = "Shock" - if("Plasma Flood") - hal_type = "Plasma Flood" - -/datum/nanite_program/triggered/comm/hallucination/get_extra_setting(setting) - if(setting == "Hallucination Type") - if(!hal_type) - return "Random" - else - return hal_type - if(setting == "Comm Code") - return comm_code - -/datum/nanite_program/triggered/comm/hallucination/copy_extra_settings_to(datum/nanite_program/triggered/comm/hallucination/target) - target.hal_type = hal_type - target.hal_details = hal_details - target.comm_code = comm_code + extra_settings[NES_HALLUCINATION_DETAIL] = new /datum/nanite_extra_setting/type("random", list("random","not_enough_oxy","not_enough_tox","not_enough_co2","too_much_oxy","too_much_co2","too_much_tox","newlaw","nutrition","charge","gravity","fire","locked","hacked","temphot","tempcold","pressure")) + else + extra_settings.Remove(NES_HALLUCINATION_DETAIL) /datum/nanite_program/good_mood name = "Happiness Enhancer" desc = "The nanites synthesize serotonin inside the host's brain, creating an artificial sense of happiness." use_rate = 0.1 rogue_types = list(/datum/nanite_program/brain_decay) - extra_settings = list("Mood Message") - var/message = "HAPPINESS ENHANCEMENT" -/datum/nanite_program/good_mood/set_extra_setting(user, setting) - if(setting == "Mood Message") - var/new_message = stripped_input(user, "Choose the message visible on the mood effect.", "Message", message, MAX_NAME_LEN) - if(!new_message) - return - message = new_message - -/datum/nanite_program/good_mood/get_extra_setting(setting) - if(setting == "Mood Message") - return message - -/datum/nanite_program/good_mood/copy_extra_settings_to(datum/nanite_program/good_mood/target) - target.message = message +/datum/nanite_program/good_mood/register_extra_settings() + . = ..() + extra_settings[NES_MOOD_MESSAGE] = new /datum/nanite_extra_setting/text("HAPPINESS ENHANCEMENT") /datum/nanite_program/good_mood/enable_passive_effect() . = ..() - SEND_SIGNAL(host_mob, COMSIG_ADD_MOOD_EVENT, "nanite_happy", /datum/mood_event/nanite_happiness, message) + SEND_SIGNAL(host_mob, COMSIG_ADD_MOOD_EVENT, "nanite_happy", /datum/mood_event/nanite_happiness, get_extra_setting_value(NES_MOOD_MESSAGE)) /datum/nanite_program/good_mood/disable_passive_effect() . = ..() @@ -395,26 +294,14 @@ desc = "The nanites suppress the production of serotonin inside the host's brain, creating an artificial state of depression." use_rate = 0.1 rogue_types = list(/datum/nanite_program/brain_decay) - extra_settings = list("Mood Message") - var/message = "HAPPINESS SUPPRESSION" -/datum/nanite_program/bad_mood/set_extra_setting(user, setting) - if(setting == "Mood Message") - var/new_message = stripped_input(user, "Choose the message visible on the mood effect.", "Message", message, MAX_NAME_LEN) - if(!new_message) - return - message = new_message - -/datum/nanite_program/bad_mood/get_extra_setting(setting) - if(setting == "Mood Message") - return message - -/datum/nanite_program/bad_mood/copy_extra_settings_to(datum/nanite_program/bad_mood/target) - target.message = message +/datum/nanite_program/bad_mood/register_extra_settings() + . = ..() + extra_settings[NES_MOOD_MESSAGE] = new /datum/nanite_extra_setting/text("HAPPINESS SUPPRESSION") /datum/nanite_program/bad_mood/enable_passive_effect() . = ..() - SEND_SIGNAL(host_mob, COMSIG_ADD_MOOD_EVENT, "nanite_sadness", /datum/mood_event/nanite_sadness, message) + SEND_SIGNAL(host_mob, COMSIG_ADD_MOOD_EVENT, "nanite_sadness", /datum/mood_event/nanite_sadness, get_extra_setting_value(NES_MOOD_MESSAGE)) /datum/nanite_program/bad_mood/disable_passive_effect() . = ..() diff --git a/code/modules/research/nanites/nanite_programs/utility.dm b/code/modules/research/nanites/nanite_programs/utility.dm index deafbcd02c..6352f50b8b 100644 --- a/code/modules/research/nanites/nanite_programs/utility.dm +++ b/code/modules/research/nanites/nanite_programs/utility.dm @@ -1,82 +1,29 @@ //Programs that interact with other programs or nanites directly, or have other special purposes. /datum/nanite_program/viral name = "Viral Replica" - desc = "The nanites constantly send encrypted signals attempting to forcefully copy their own programming into other nanite clusters." + desc = "The nanites constantly send encrypted signals attempting to forcefully copy their own programming into other nanite clusters, also overriding or disabling their cloud sync." use_rate = 0.5 rogue_types = list(/datum/nanite_program/toxic) - extra_settings = list("Program Overwrite","Cloud Overwrite") - var/pulse_cooldown = 0 - var/sync_programs = TRUE - var/sync_overwrite = FALSE - var/overwrite_cloud = FALSE - var/set_cloud = 0 -/datum/nanite_program/viral/set_extra_setting(user, setting) - if(setting == "Program Overwrite") - var/overwrite_type = input("Choose what to do with the target's programs", name) as null|anything in list("Overwrite","Add To","Ignore") - if(!overwrite_type) - return - switch(overwrite_type) - if("Ignore") //Do not affect programs (if you only want to set the cloud ID) - sync_programs = FALSE - sync_overwrite = FALSE - if("Add To") //Add to existing programs (so the target does not notice theirs are missing) - sync_programs = TRUE - sync_overwrite = FALSE - if("Overwrite") //Replace target's programs with the source - sync_programs = TRUE - sync_overwrite = TRUE - if(setting == "Cloud Overwrite") - var/overwrite_type = input("Choose what to do with the target's Cloud ID", name) as null|anything in list("Overwrite","Disable","Keep") - if(!overwrite_type) - return - switch(overwrite_type) - if("Keep") //Don't change the cloud ID - overwrite_cloud = FALSE - set_cloud = 0 - if("Disable") //Set the cloud ID to disabled - overwrite_cloud = TRUE - set_cloud = 0 - if("Overwrite") //Set the cloud ID to what we choose - var/new_cloud = input(user, "Choose the Cloud ID to set on infected nanites (1-100)", name, null) as null|num - if(isnull(new_cloud)) - return - overwrite_cloud = TRUE - set_cloud = CLAMP(round(new_cloud, 1), 1, 100) - -/datum/nanite_program/viral/get_extra_setting(setting) - if(setting == "Program Overwrite") - if(!sync_programs) - return "Ignore" - else if(sync_overwrite) - return "Overwrite" - else - return "Add To" - if(setting == "Cloud Overwrite") - if(!overwrite_cloud) - return "None" - else if(set_cloud == 0) - return "Disable" - else - return set_cloud - -/datum/nanite_program/viral/copy_extra_settings_to(datum/nanite_program/viral/target) - target.overwrite_cloud = overwrite_cloud - target.set_cloud = set_cloud - target.sync_programs = sync_programs - target.sync_overwrite = sync_overwrite +/datum/nanite_program/viral/register_extra_settings() + extra_settings[NES_PROGRAM_OVERWRITE] = new /datum/nanite_extra_setting/type("Add To", list("Overwrite", "Add To", "Ignore")) + extra_settings[NES_CLOUD_OVERWRITE] = new /datum/nanite_extra_setting/number(0, 0, 100) /datum/nanite_program/viral/active_effect() if(world.time < pulse_cooldown) return + var/datum/nanite_extra_setting/program = extra_settings[NES_PROGRAM_OVERWRITE] + var/datum/nanite_extra_setting/cloud = extra_settings[NES_CLOUD_OVERWRITE] for(var/mob/M in orange(host_mob, 5)) if(SEND_SIGNAL(M, COMSIG_NANITE_IS_STEALTHY)) continue - if(sync_programs) - SEND_SIGNAL(M, COMSIG_NANITE_SYNC, nanites, sync_overwrite) - if(overwrite_cloud) - SEND_SIGNAL(M, COMSIG_NANITE_SET_CLOUD, set_cloud) + switch(program.get_value()) + if("Overwrite") + SEND_SIGNAL(M, COMSIG_NANITE_SYNC, nanites, TRUE) + if("Add To") + SEND_SIGNAL(M, COMSIG_NANITE_SYNC, nanites, FALSE) + SEND_SIGNAL(M, COMSIG_NANITE_SET_CLOUD, cloud.get_value()) pulse_cooldown = world.time + 75 /datum/nanite_program/monitoring @@ -94,38 +41,23 @@ SSnanites.nanite_monitored_mobs -= host_mob host_mob.hud_set_nanite_indicator() -/datum/nanite_program/triggered/self_scan +/datum/nanite_program/self_scan name = "Host Scan" desc = "The nanites display a detailed readout of a body scan to the host." unique = FALSE + can_trigger = TRUE trigger_cost = 3 trigger_cooldown = 50 rogue_types = list(/datum/nanite_program/toxic) - extra_settings = list("Scan Type") - var/scan_type = "Medical" +/datum/nanite_program/self_scan/register_extra_settings() + extra_settings[NES_SCAN_TYPE] = new /datum/nanite_extra_setting/type("Medical", list("Medical", "Chemical", "Nanite")) -/datum/nanite_program/triggered/self_scan/set_extra_setting(user, setting) - if(setting == "Scan Type") - var/list/scan_types = list("Medical","Chemical","Nanite") - var/new_scan_type = input("Choose the scan type", name) as null|anything in scan_types - if(!new_scan_type) - return - scan_type = new_scan_type - -/datum/nanite_program/triggered/self_scan/get_extra_setting(setting) - if(setting == "Scan Type") - return scan_type - -/datum/nanite_program/triggered/self_scan/copy_extra_settings_to(datum/nanite_program/triggered/self_scan/target) - target.scan_type = scan_type - -/datum/nanite_program/triggered/self_scan/trigger() - if(!..()) - return +/datum/nanite_program/self_scan/on_trigger(comm_message) if(host_mob.stat == DEAD) return - switch(scan_type) + var/datum/nanite_extra_setting/NS = extra_settings[NES_SCAN_TYPE] + switch(NS.get_value()) if("Medical") healthscan(host_mob, host_mob) if("Chemical") @@ -162,28 +94,13 @@ . = ..() nanites.diagnostics = TRUE - /datum/nanite_program/relay name = "Relay" desc = "The nanites receive and relay long-range nanite signals." rogue_types = list(/datum/nanite_program/toxic) - extra_settings = list("Relay Channel") - var/relay_channel = 1 - -/datum/nanite_program/relay/set_extra_setting(user, setting) - if(setting == "Relay Channel") - var/new_channel = input(user, "Set the relay channel (1-9999):", name, null) as null|num - if(isnull(new_channel)) - return - relay_channel = CLAMP(round(new_channel, 1), 1, 9999) - -/datum/nanite_program/relay/get_extra_setting(setting) - if(setting == "Relay Channel") - return relay_channel - -/datum/nanite_program/relay/copy_extra_settings_to(datum/nanite_program/relay/target) - target.relay_channel = relay_channel +/datum/nanite_program/relay/register_extra_settings() + extra_settings[NES_RELAY_CHANNEL] = new /datum/nanite_extra_setting/number(1, 1, 9999) /datum/nanite_program/relay/enable_passive_effect() . = ..() @@ -198,7 +115,8 @@ return if(!host_mob) return - if(relay_code != relay_channel) + var/datum/nanite_extra_setting/NS = extra_settings[NES_RELAY_CHANNEL] + if(relay_code != NS.get_value()) return SEND_SIGNAL(host_mob, COMSIG_NANITE_SIGNAL, code, source) @@ -207,7 +125,8 @@ return if(!host_mob) return - if(relay_code != relay_channel) + var/datum/nanite_extra_setting/NS = extra_settings[NES_RELAY_CHANNEL] + if(relay_code != NS.get_value()) return SEND_SIGNAL(host_mob, COMSIG_NANITE_COMM_SIGNAL, comm_code, comm_message) @@ -228,14 +147,64 @@ host_mob.nutrition -= 0.5 nanites.adjust_nanites(src, 0.5) -/datum/nanite_program/triggered/access +/datum/nanite_program/research + name = "Distributed Computing" + desc = "The nanites aid the research servers by performing a portion of its calculations, increasing research point generation." + use_rate = 0.2 + rogue_types = list(/datum/nanite_program/toxic) + +/datum/nanite_program/research/active_effect() + if(!iscarbon(host_mob)) + return + var/points = 1 + if(!host_mob.client) //less brainpower + points *= 0.25 + SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_GENERIC = points)) + +/datum/nanite_program/researchplus + name = "Neural Network" + desc = "The nanites link the host's brains together forming a neural research network, that becomes more efficient with the amount of total hosts." + use_rate = 0.3 + rogue_types = list(/datum/nanite_program/brain_decay) + +/datum/nanite_program/researchplus/enable_passive_effect() + . = ..() + if(!iscarbon(host_mob)) + return + if(host_mob.client) + SSnanites.neural_network_count++ + else + SSnanites.neural_network_count += 0.25 + +/datum/nanite_program/researchplus/disable_passive_effect() + . = ..() + if(!iscarbon(host_mob)) + return + if(host_mob.client) + SSnanites.neural_network_count-- + else + SSnanites.neural_network_count -= 0.25 + +/datum/nanite_program/researchplus/active_effect() + if(!iscarbon(host_mob)) + return + var/mob/living/carbon/C = host_mob + var/points = round(SSnanites.neural_network_count / 12, 0.1) + if(!C.client) //less brainpower + points *= 0.25 + SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_GENERIC = points)) + +/datum/nanite_program/access name = "Subdermal ID" desc = "The nanites store the host's ID access rights in a subdermal magnetic strip. Updates when triggered, copying the host's current access." + can_trigger = TRUE + trigger_cost = 3 + trigger_cooldown = 30 rogue_types = list(/datum/nanite_program/skin_decay) var/access = list() //Syncs the nanites with the cumulative current mob's access level. Can potentially wipe existing access. -/datum/nanite_program/triggered/access/trigger() +/datum/nanite_program/access/on_trigger(comm_message) var/list/new_access = list() var/obj/item/current_item current_item = host_mob.get_active_held_item() @@ -284,19 +253,42 @@ SEND_SIGNAL(infectee, COMSIG_NANITE_SYNC, nanites) infectee.investigate_log("was infected by spreading nanites by [key_name(host_mob)] at [AREACOORD(infectee)].", INVESTIGATE_NANITES) +/datum/nanite_program/nanite_sting + name = "Nanite Sting" + desc = "When triggered, projects a nearly invisible spike of nanites that attempts to infect a nearby non-host with a copy of the host's nanites cluster." + can_trigger = TRUE + trigger_cost = 5 + trigger_cooldown = 100 + rogue_types = list(/datum/nanite_program/glitch, /datum/nanite_program/toxic) + +/datum/nanite_program/nanite_sting/on_trigger(comm_message) + var/list/mob/living/target_hosts = list() + for(var/mob/living/L in oview(1, host_mob)) + if(!(L.mob_biotypes & (MOB_ORGANIC|MOB_UNDEAD)) || SEND_SIGNAL(L, COMSIG_HAS_NANITES) || !L.Adjacent(host_mob)) + continue + target_hosts += L + if(!target_hosts.len) + consume_nanites(-5) + return + var/mob/living/infectee = pick(target_hosts) + if(prob(100 - (infectee.get_permeability_protection() * 100))) + //unlike with Infective Exo-Locomotion, this can't take over existing nanites, because Nanite Sting only targets non-hosts. + infectee.AddComponent(/datum/component/nanites, 5) + SEND_SIGNAL(infectee, COMSIG_NANITE_SYNC, nanites) + infectee.investigate_log("was infected by a nanite cluster by [key_name(host_mob)] at [AREACOORD(infectee)].", INVESTIGATE_NANITES) + to_chat(infectee, "You feel a tiny prick.") + /datum/nanite_program/mitosis name = "Mitosis" - desc = "The nanites gain the ability to self-replicate, using bluespace to power the process, instead of drawing from a template. This rapidly speeds up the replication rate,\ - but it causes occasional software errors due to faulty copies. Not compatible with cloud sync." + desc = "The nanites gain the ability to self-replicate, using bluespace to power the process. Becomes more effective the more nanites are already in the host.\ + The replication has also a chance to corrupt the nanite programming due to copy faults - cloud sync is highly recommended." use_rate = 0 rogue_types = list(/datum/nanite_program/toxic) /datum/nanite_program/mitosis/active_effect() - if(nanites.cloud_id) - return var/rep_rate = round(nanites.nanite_volume / 50, 1) //0.5 per 50 nanite volume rep_rate *= 0.5 - nanites.adjust_nanites(rep_rate) + nanites.adjust_nanites(null, rep_rate) if(prob(rep_rate)) var/datum/nanite_program/fault = pick(nanites.programs) if(fault == src) @@ -306,56 +298,22 @@ /datum/nanite_program/dermal_button name = "Dermal Button" desc = "Displays a button on the host's skin, which can be used to send a signal to the nanites." - extra_settings = list("Sent Code","Button Name","Icon","Color") unique = FALSE var/datum/action/innate/nanite_button/button - var/button_name = "Button" - var/icon = "power" - var/color = "green" - var/sent_code = 0 -/datum/nanite_program/dermal_button/set_extra_setting(user, setting) - if(setting == "Sent Code") - var/new_code = input(user, "Set the sent code (1-9999):", name, null) as null|num - if(isnull(new_code)) - return - sent_code = CLAMP(round(new_code, 1), 1, 9999) - if(setting == "Button Name") - var/new_button_name = stripped_input(user, "Choose the name for the button.", "Button Name", button_name, MAX_NAME_LEN) - if(!new_button_name) - return - button_name = new_button_name - if(setting == "Icon") - var/new_icon = input("Select the icon to display on the button:", name) as null|anything in list("one","two","three","four","five","plus","minus","power") - if(!new_icon) - return - icon = new_icon - if(setting == "Color") - var/new_color = input("Select the color of the button's icon:", name) as null|anything in list("green","red","yellow","blue") - if(!new_color) - return - color = new_color - -/datum/nanite_program/dermal_button/get_extra_setting(setting) - if(setting == "Sent Code") - return sent_code - if(setting == "Button Name") - return button_name - if(setting == "Icon") - return capitalize(icon) - if(setting == "Color") - return capitalize(color) - -/datum/nanite_program/dermal_button/copy_extra_settings_to(datum/nanite_program/dermal_button/target) - target.sent_code = sent_code - target.button_name = button_name - target.icon = icon - target.color = color +/datum/nanite_program/dermal_button/register_extra_settings() + extra_settings[NES_SENT_CODE] = new /datum/nanite_extra_setting/number(1, 1, 9999) + extra_settings[NES_BUTTON_NAME] = new /datum/nanite_extra_setting/text("Button") + extra_settings[NES_ICON] = new /datum/nanite_extra_setting/type("power", list("one","two","three","four","five","plus","minus","power")) + extra_settings[NES_COLOR] = new /datum/nanite_extra_setting/type("green", list("green","red","yellow","blue")) /datum/nanite_program/dermal_button/enable_passive_effect() . = ..() + var/datum/nanite_extra_setting/bn_name = extra_settings[NES_BUTTON_NAME] + var/datum/nanite_extra_setting/bn_icon = extra_settings[NES_ICON] + var/datum/nanite_extra_setting/bn_color = extra_settings[NES_COLOR] if(!button) - button = new(src, button_name, icon, color) + button = new(src, bn_name.get_value(), bn_icon.get_value(), bn_color.get_value()) button.target = host_mob button.Grant(host_mob) @@ -372,7 +330,8 @@ if(activated) host_mob.visible_message("[host_mob] presses a button on [host_mob.p_their()] forearm.", "You press the nanite button on your forearm.", null, 2) - SEND_SIGNAL(host_mob, COMSIG_NANITE_SIGNAL, sent_code, "a [name] program") + var/datum/nanite_extra_setting/sent_code = extra_settings[NES_SENT_CODE] + SEND_SIGNAL(host_mob, COMSIG_NANITE_SIGNAL, sent_code.get_value(), "a [name] program") /datum/action/innate/nanite_button name = "Button" @@ -389,51 +348,3 @@ /datum/action/innate/nanite_button/Activate() program.press() - -/datum/nanite_program/research - name = "Distributed Computing" - desc = "The nanites aid the research servers by performing a portion of its calculations, increasing research point generation." - use_rate = 0.2 - rogue_types = list(/datum/nanite_program/toxic) - -/datum/nanite_program/research/active_effect() - if(!iscarbon(host_mob)) - return - var/points = 1 - if(!host_mob.client) //less brainpower - points *= 0.25 - SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_GENERIC = points)) - -/datum/nanite_program/researchplus - name = "Neural Network" - desc = "The nanites link the host's brains together forming a neural research network, that becomes more efficient with the amount of total hosts." - use_rate = 0.3 - rogue_types = list(/datum/nanite_program/brain_decay) - -/datum/nanite_program/researchplus/enable_passive_effect() - . = ..() - if(!iscarbon(host_mob)) - return - if(host_mob.client) - SSnanites.neural_network_count++ - else - SSnanites.neural_network_count += 0.25 - -/datum/nanite_program/researchplus/disable_passive_effect() - . = ..() - if(!iscarbon(host_mob)) - return - if(host_mob.client) - SSnanites.neural_network_count-- - else - SSnanites.neural_network_count -= 0.25 - -/datum/nanite_program/researchplus/active_effect() - if(!iscarbon(host_mob)) - return - var/mob/living/carbon/C = host_mob - var/points = round(SSnanites.neural_network_count / 12, 0.1) - if(!C.client) //less brainpower - points *= 0.25 - SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_GENERIC = points)) - diff --git a/code/modules/research/nanites/nanite_programs/weapon.dm b/code/modules/research/nanites/nanite_programs/weapon.dm index f634b2088c..bd2b9618de 100644 --- a/code/modules/research/nanites/nanite_programs/weapon.dm +++ b/code/modules/research/nanites/nanite_programs/weapon.dm @@ -73,21 +73,20 @@ . = ..() to_chat(host_mob, "Your blood cools down, and the pain gradually fades.") -/datum/nanite_program/triggered/explosive +/datum/nanite_program/explosive name = "Chain Detonation" desc = "Detonates all the nanites inside the host in a chain reaction when triggered." + can_trigger = TRUE trigger_cost = 25 //plus every idle nanite left afterwards trigger_cooldown = 100 //Just to avoid double-triggering rogue_types = list(/datum/nanite_program/toxic) -/datum/nanite_program/triggered/explosive/trigger() - if(!..()) - return +/datum/nanite_program/explosive/on_trigger(comm_message) host_mob.visible_message("[host_mob] starts emitting a high-pitched buzzing, and [host_mob.p_their()] skin begins to glow...",\ "You start emitting a high-pitched buzzing, and your skin begins to glow...") addtimer(CALLBACK(src, .proc/boom), CLAMP((nanites.nanite_volume * 0.35), 25, 150)) -/datum/nanite_program/triggered/explosive/proc/boom() +/datum/nanite_program/explosive/proc/boom() var/nanite_amount = nanites.nanite_volume var/heavy_range = FLOOR(nanite_amount/100, 1) - 1 var/light_range = FLOOR(nanite_amount/50, 1) - 1 @@ -96,16 +95,15 @@ //TODO make it defuse if triggered again -/datum/nanite_program/triggered/heart_stop +/datum/nanite_program/heart_stop name = "Heart-Stopper" desc = "Stops the host's heart when triggered; restarts it if triggered again." + can_trigger = TRUE trigger_cost = 12 trigger_cooldown = 10 rogue_types = list(/datum/nanite_program/nerve_decay) -/datum/nanite_program/triggered/heart_stop/trigger() - if(!..()) - return +/datum/nanite_program/heart_stop/on_trigger(comm_message) if(iscarbon(host_mob)) var/mob/living/carbon/C = host_mob var/obj/item/organ/heart/heart = C.getorganslot(ORGAN_SLOT_HEART) @@ -115,16 +113,16 @@ else heart.Restart() -/datum/nanite_program/triggered/emp +/datum/nanite_program/emp name = "Electromagnetic Resonance" - desc = "The nanites cause an elctromagnetic pulse around the host when triggered. Will corrupt other nanite programs!" + desc = "The nanites cause an electromagnetic pulse around the host when triggered. Will corrupt other nanite programs!" + can_trigger = TRUE trigger_cost = 10 + trigger_cooldown = 50 program_flags = NANITE_EMP_IMMUNE rogue_types = list(/datum/nanite_program/toxic) -/datum/nanite_program/triggered/emp/trigger() - if(!..()) - return +/datum/nanite_program/emp/on_trigger(comm_message) empulse(host_mob, 1, 2) /datum/nanite_program/pyro/active_effect() @@ -148,7 +146,7 @@ /datum/nanite_program/cryo name = "Cryogenic Treatment" - desc = "The nanites rapidly skin heat through the host's skin, lowering their temperature." + desc = "The nanites rapidly sink heat through the host's skin, lowering their temperature." use_rate = 1 rogue_types = list(/datum/nanite_program/skin_decay, /datum/nanite_program/pyro) @@ -160,55 +158,33 @@ /datum/nanite_program/cryo/active_effect() host_mob.adjust_bodytemperature(-rand(15,25), 50) -/datum/nanite_program/triggered/comm/mind_control +/datum/nanite_program/comm/mind_control name = "Mind Control" desc = "The nanites imprint an absolute directive onto the host's brain for one minute when triggered." trigger_cost = 30 trigger_cooldown = 1800 rogue_types = list(/datum/nanite_program/brain_decay, /datum/nanite_program/brain_misfire) - extra_settings = list("Directive","Comm Code") - var/directive = "..." +/datum/nanite_program/comm/mind_control/register_extra_settings() + . = ..() + extra_settings[NES_DIRECTIVE] = new /datum/nanite_extra_setting/text("...") -/datum/nanite_program/triggered/comm/mind_control/set_extra_setting(user, setting) - if(setting == "Directive") - var/new_directive = stripped_input(user, "Choose the directive to imprint with mind control.", "Directive", directive, MAX_MESSAGE_LEN) - if(!new_directive) - return - directive = new_directive - if(setting == "Comm Code") - var/new_code = input(user, "Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num - if(isnull(new_code)) - return - comm_code = CLAMP(round(new_code, 1), 0, 9999) - -/datum/nanite_program/triggered/comm/mind_control/get_extra_setting(setting) - if(setting == "Directive") - return directive - if(setting == "Comm Code") - return comm_code - -/datum/nanite_program/triggered/comm/mind_control/copy_extra_settings_to(datum/nanite_program/triggered/comm/mind_control/target) - target.directive = directive - target.comm_code = comm_code - -/datum/nanite_program/triggered/comm/mind_control/trigger(comm_message) - if(!..()) - return +/datum/nanite_program/comm/mind_control/on_trigger(comm_message) if(host_mob.stat == DEAD) return var/sent_directive = comm_message if(!comm_message) - sent_directive = directive + var/datum/nanite_extra_setting/ES = extra_settings[NES_DIRECTIVE] + sent_directive = ES.get_value() brainwash(host_mob, sent_directive) - log_game("A mind control nanite program brainwashed [key_name(host_mob)] with the objective '[directive]'.") + log_game("A mind control nanite program brainwashed [key_name(host_mob)] with the objective '[sent_directive]'.") addtimer(CALLBACK(src, .proc/end_brainwashing), 600) -/datum/nanite_program/triggered/comm/mind_control/proc/end_brainwashing() +/datum/nanite_program/comm/mind_control/proc/end_brainwashing() if(host_mob.mind && host_mob.mind.has_antag_datum(/datum/antagonist/brainwashed)) host_mob.mind.remove_antag_datum(/datum/antagonist/brainwashed) log_game("[key_name(host_mob)] is no longer brainwashed by nanites.") - -/datum/nanite_program/triggered/comm/mind_control/disable_passive_effect() + +/datum/nanite_program/comm/mind_control/disable_passive_effect() . = ..() end_brainwashing() diff --git a/code/modules/research/nanites/nanite_remote.dm b/code/modules/research/nanites/nanite_remote.dm index e10d8f8c4b..71aecc8f2c 100644 --- a/code/modules/research/nanites/nanite_remote.dm +++ b/code/modules/research/nanites/nanite_remote.dm @@ -18,6 +18,7 @@ var/last_id = 0 var/code = 0 var/relay_code = 0 + var/current_program_name = "Program" /obj/item/nanite_remote/examine(mob/user) . = ..() @@ -35,10 +36,8 @@ update_icon() else to_chat(user, "Access denied.") - return TRUE /obj/item/nanite_remote/emag_act(mob/user) - . = ..() if(obj_flags & EMAGGED) return to_chat(user, "You override [src]'s ID lock.") @@ -46,33 +45,31 @@ if(locked) locked = FALSE update_icon() - return TRUE -/obj/item/nanite_remote/update_icon() +/obj/item/nanite_remote/update_overlays() . = ..() - cut_overlays() if(obj_flags & EMAGGED) - add_overlay("nanite_remote_emagged") + . += "nanite_remote_emagged" if(locked) - add_overlay("nanite_remote_locked") + . += "nanite_remote_locked" /obj/item/nanite_remote/afterattack(atom/target, mob/user, etc) switch(mode) if(REMOTE_MODE_OFF) return if(REMOTE_MODE_SELF) - to_chat(user, "You activate [src], signaling the nanites in your bloodstream.") + to_chat(user, "You activate [src], signaling the nanites in your bloodstream.") signal_mob(user, code, key_name(user)) if(REMOTE_MODE_TARGET) if(isliving(target) && (get_dist(target, get_turf(src)) <= 7)) - to_chat(user, "You activate [src], signaling the nanites inside [target].") + to_chat(user, "You activate [src], signaling the nanites inside [target].") signal_mob(target, code, key_name(user)) if(REMOTE_MODE_AOE) - to_chat(user, "You activate [src], signaling the nanites inside every host around you.") + to_chat(user, "You activate [src], signaling the nanites inside every host around you.") for(var/mob/living/L in view(user, 7)) signal_mob(L, code, key_name(user)) if(REMOTE_MODE_RELAY) - to_chat(user, "You activate [src], signaling all connected relay nanites.") + to_chat(user, "You activate [src], signaling all connected relay nanites.") signal_relay(code, relay_code, key_name(user)) /obj/item/nanite_remote/proc/signal_mob(mob/living/M, code, source) @@ -84,9 +81,9 @@ N.relay_signal(code, relay_code, source) /obj/item/nanite_remote/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) - ui = new(user, src, ui_key, "nanite_remote", name, 420, 800, master_ui, state) + ui = new(user, src, ui_key, "nanite_remote", name, 420, 500, master_ui, state) ui.open() /obj/item/nanite_remote/ui_data() @@ -96,6 +93,7 @@ data["mode"] = mode data["locked"] = locked data["saved_settings"] = saved_settings + data["program_name"] = current_program_name return data @@ -106,7 +104,7 @@ if("set_code") if(locked) return - var/new_code = input("Set code (0000-9999):", name, code) as null|num + var/new_code = text2num(params["code"]) if(!isnull(new_code)) new_code = CLAMP(round(new_code, 1),0,9999) code = new_code @@ -114,21 +112,21 @@ if("set_relay_code") if(locked) return - var/new_code = input("Set relay code (0000-9999):", name, code) as null|num + var/new_code = text2num(params["code"]) if(!isnull(new_code)) new_code = CLAMP(round(new_code, 1),0,9999) relay_code = new_code . = TRUE + if("update_name") + current_program_name = params["name"] + . = TRUE if("save") if(locked) return - var/code_name = stripped_input(usr, "Set the setting name", "Set Name", null , 15) - if(!code_name) - return var/new_save = list() new_save["id"] = last_id + 1 last_id++ - new_save["name"] = code_name + new_save["name"] = current_program_name new_save["code"] = code new_save["mode"] = mode new_save["relay_code"] = relay_code @@ -172,7 +170,6 @@ name = "nanite communication remote" desc = "A device that can send text messages to specific programs." icon_state = "nanite_comm_remote" - var/comm_code = 0 var/comm_message = "" /obj/item/nanite_remote/comm/afterattack(atom/target, mob/user, etc) @@ -180,42 +177,38 @@ if(REMOTE_MODE_OFF) return if(REMOTE_MODE_SELF) - to_chat(user, "You activate [src], signaling the nanites in your bloodstream.") - signal_mob(user, comm_code, comm_message) + to_chat(user, "You activate [src], signaling the nanites in your bloodstream.") + signal_mob(user, code, comm_message) if(REMOTE_MODE_TARGET) if(isliving(target) && (get_dist(target, get_turf(src)) <= 7)) - to_chat(user, "You activate [src], signaling the nanites inside [target].") + to_chat(user, "You activate [src], signaling the nanites inside [target].") signal_mob(target, code, comm_message, key_name(user)) if(REMOTE_MODE_AOE) - to_chat(user, "You activate [src], signaling the nanites inside every host around you.") + to_chat(user, "You activate [src], signaling the nanites inside every host around you.") for(var/mob/living/L in view(user, 7)) signal_mob(L, code, comm_message, key_name(user)) if(REMOTE_MODE_RELAY) - to_chat(user, "You activate [src], signaling all connected relay nanites.") + to_chat(user, "You activate [src], signaling all connected relay nanites.") signal_relay(code, relay_code, comm_message, key_name(user)) /obj/item/nanite_remote/comm/signal_mob(mob/living/M, code, source) - SEND_SIGNAL(M, COMSIG_NANITE_COMM_SIGNAL, comm_code, comm_message) + SEND_SIGNAL(M, COMSIG_NANITE_COMM_SIGNAL, code, comm_message) /obj/item/nanite_remote/comm/signal_relay(code, relay_code, source) for(var/X in SSnanites.nanite_relays) var/datum/nanite_program/relay/N = X - N.relay_comm_signal(comm_code, relay_code, comm_message) - -/obj/item/nanite_remote/comm/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "nanite_comm_remote", name, 420, 800, master_ui, state) - ui.open() + N.relay_comm_signal(code, relay_code, comm_message) /obj/item/nanite_remote/comm/ui_data() var/list/data = list() - data["comm_code"] = comm_code + data["comms"] = TRUE + data["code"] = code data["relay_code"] = relay_code - data["comm_message"] = comm_message + data["message"] = comm_message data["mode"] = mode data["locked"] = locked data["saved_settings"] = saved_settings + data["program_name"] = current_program_name return data @@ -223,56 +216,17 @@ if(..()) return switch(action) - if("set_comm_code") - if(locked) - return - var/new_code = input("Set comm code (0000-9999):", name, code) as null|num - if(!isnull(new_code)) - new_code = CLAMP(round(new_code, 1),0,9999) - comm_code = new_code - . = TRUE if("set_message") if(locked) return - var/new_message = stripped_input(usr, "Set the message (Max 300 characters):", "Set Message", null , 300) + var/new_message = html_encode(params["value"]) if(!new_message) return comm_message = new_message . = TRUE - if("comm_save") - if(locked) - return - var/code_name = stripped_input(usr, "Set the setting name", "Set Name", null , 15) - if(!code_name) - return - var/new_save = list() - new_save["id"] = last_id + 1 - last_id++ - new_save["name"] = code_name - new_save["code"] = comm_code - new_save["mode"] = mode - new_save["relay_code"] = relay_code - new_save["message"] = comm_message - - saved_settings += list(new_save) - . = TRUE - if("comm_load") - var/code_id = params["save_id"] - var/list/setting - for(var/list/X in saved_settings) - if(X["id"] == text2num(code_id)) - setting = X - break - if(setting) - comm_code = setting["code"] - mode = setting["mode"] - relay_code = setting["relay_code"] - comm_message = setting["message"] - . = TRUE - #undef REMOTE_MODE_OFF #undef REMOTE_MODE_SELF #undef REMOTE_MODE_TARGET #undef REMOTE_MODE_AOE -#undef REMOTE_MODE_RELAY \ No newline at end of file +#undef REMOTE_MODE_RELAY diff --git a/code/modules/research/nanites/program_disks.dm b/code/modules/research/nanites/program_disks.dm index 6444ebc025..667618173c 100644 --- a/code/modules/research/nanites/program_disks.dm +++ b/code/modules/research/nanites/program_disks.dm @@ -31,7 +31,7 @@ program_type = /datum/nanite_program/relay /obj/item/disk/nanite_program/emp - program_type = /datum/nanite_program/triggered/emp + program_type = /datum/nanite_program/emp /obj/item/disk/nanite_program/spreading program_type = /datum/nanite_program/spreading @@ -91,16 +91,16 @@ program_type = /datum/nanite_program/suffocating /obj/item/disk/nanite_program/heart_stop - program_type = /datum/nanite_program/triggered/heart_stop + program_type = /datum/nanite_program/heart_stop /obj/item/disk/nanite_program/explosive - program_type = /datum/nanite_program/triggered/explosive + program_type = /datum/nanite_program/explosive /obj/item/disk/nanite_program/shock - program_type = /datum/nanite_program/triggered/shocking + program_type = /datum/nanite_program/shocking /obj/item/disk/nanite_program/sleepy - program_type = /datum/nanite_program/triggered/sleepy + program_type = /datum/nanite_program/sleepy /obj/item/disk/nanite_program/paralyzing program_type = /datum/nanite_program/paralyzing @@ -130,7 +130,7 @@ program_type = /datum/nanite_program/pacifying /obj/item/disk/nanite_program/stun - program_type = /datum/nanite_program/triggered/stun + program_type = /datum/nanite_program/stun /obj/item/disk/nanite_program/dermal_button program_type = /datum/nanite_program/dermal_button @@ -149,3 +149,4 @@ /obj/item/disk/nanite_program/bad_mood program_type = /datum/nanite_program/bad_mood + diff --git a/code/modules/research/nanites/public_chamber.dm b/code/modules/research/nanites/public_chamber.dm index c0d19e0375..76392c66e9 100644 --- a/code/modules/research/nanites/public_chamber.dm +++ b/code/modules/research/nanites/public_chamber.dm @@ -32,7 +32,7 @@ busy_icon_state = working_icon update_icon() -/obj/machinery/public_nanite_chamber/proc/inject_nanites() +/obj/machinery/public_nanite_chamber/proc/inject_nanites(mob/living/attacker) if(stat & (NOPOWER|BROKEN)) return if((stat & MAINT) || panel_open) @@ -47,46 +47,67 @@ set_busy(TRUE, "[initial(icon_state)]_raising") addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_active"),20) addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_falling"),60) - addtimer(CALLBACK(src, .proc/complete_injection, locked_state),80) + addtimer(CALLBACK(src, .proc/complete_injection, locked_state, attacker),80) -/obj/machinery/public_nanite_chamber/proc/complete_injection(locked_state) +/obj/machinery/public_nanite_chamber/proc/complete_injection(locked_state, mob/living/attacker) //TODO MACHINE DING locked = locked_state set_busy(FALSE) if(!occupant) return + if(attacker) + occupant.investigate_log("was injected with nanites by [key_name(attacker)] using [src] at [AREACOORD(src)].", INVESTIGATE_NANITES) + log_combat(attacker, occupant, "injected", null, "with nanites via [src]") occupant.AddComponent(/datum/component/nanites, 75, cloud_id) -/obj/machinery/public_nanite_chamber/update_icon() - cut_overlays() - +/obj/machinery/public_nanite_chamber/proc/change_cloud(mob/living/attacker) + if(stat & (NOPOWER|BROKEN)) + return if((stat & MAINT) || panel_open) - add_overlay("maint") + return + if(!occupant || busy) + return - else if(!(stat & (NOPOWER|BROKEN))) - if(busy || locked) - add_overlay("red") - if(locked) - add_overlay("bolted") - else - add_overlay("green") + var/locked_state = locked + locked = TRUE + set_busy(TRUE, "[initial(icon_state)]_raising") + addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_active"),20) + addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_falling"),40) + addtimer(CALLBACK(src, .proc/complete_cloud_change, locked_state, attacker),60) +/obj/machinery/public_nanite_chamber/proc/complete_cloud_change(locked_state, mob/living/attacker) + locked = locked_state + set_busy(FALSE) + if(!occupant) + return + if(attacker) + occupant.investigate_log("had their nanite cloud ID changed into [cloud_id] by [key_name(attacker)] using [src] at [AREACOORD(src)].", INVESTIGATE_NANITES) + SEND_SIGNAL(occupant, COMSIG_NANITE_SET_CLOUD, cloud_id) +/obj/machinery/public_nanite_chamber/update_icon_state() //running and someone in there if(occupant) if(busy) icon_state = busy_icon_state else icon_state = initial(icon_state)+ "_occupied" - return + else + //running + icon_state = initial(icon_state)+ (state_open ? "_open" : "") - //running - icon_state = initial(icon_state)+ (state_open ? "_open" : "") - -/obj/machinery/public_nanite_chamber/power_change() +/obj/machinery/public_nanite_chamber/update_overlays() . = ..() - update_icon() + if((stat & MAINT) || panel_open) + . += "maint" + + else if(!(stat & (NOPOWER|BROKEN))) + if(busy || locked) + . += "red" + if(locked) + . += "bolted" + else + . += "green" /obj/machinery/public_nanite_chamber/proc/toggle_open(mob/user) if(panel_open) @@ -94,7 +115,7 @@ return if(state_open) - close_machine() + close_machine(null, user) return else if(locked) @@ -113,7 +134,7 @@ user.last_special = world.time + CLICK_CD_BREAKOUT user.visible_message("You see [user] kicking against the door of [src]!", \ "You lean on the back of [src] and start pushing the door open... (this will take about [DisplayTimeText(breakout_time)].)", \ - "You hear a metallic creaking from [src].") + "You hear a metallic creaking from [src].") if(do_after(user,(breakout_time), target = src)) if(!user || user.stat != CONSCIOUS || user.loc != src || state_open || !locked || busy) return @@ -122,7 +143,7 @@ "You successfully break out of [src]!") open_machine() -/obj/machinery/public_nanite_chamber/close_machine(mob/living/carbon/user) +/obj/machinery/public_nanite_chamber/close_machine(mob/living/carbon/user, mob/living/attacker) if(!state_open) return FALSE @@ -130,15 +151,18 @@ . = TRUE - addtimer(CALLBACK(src, .proc/try_inject_nanites), 30) //If someone is shoved in give them a chance to get out before the injection starts + addtimer(CALLBACK(src, .proc/try_inject_nanites, attacker), 30) //If someone is shoved in give them a chance to get out before the injection starts -/obj/machinery/public_nanite_chamber/proc/try_inject_nanites() +/obj/machinery/public_nanite_chamber/proc/try_inject_nanites(mob/living/attacker) if(occupant) var/mob/living/L = occupant if(SEND_SIGNAL(L, COMSIG_HAS_NANITES)) + var/datum/component/nanites/nanites = L.GetComponent(/datum/component/nanites) + if(nanites && nanites.cloud_id != cloud_id) + change_cloud(attacker) return - if((MOB_ORGANIC in L.mob_biotypes) || (MOB_UNDEAD in L.mob_biotypes)) - inject_nanites() + if(L.mob_biotypes & (MOB_ORGANIC | MOB_UNDEAD)) + inject_nanites(attacker) /obj/machinery/public_nanite_chamber/open_machine() if(state_open) @@ -173,6 +197,8 @@ toggle_open(user) /obj/machinery/public_nanite_chamber/MouseDrop_T(mob/target, mob/user) - if(user.stat || user.lying || !Adjacent(user) || !user.Adjacent(target) || !iscarbon(target) || !user.IsAdvancedToolUser()) + if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK) || !Adjacent(target) || !user.Adjacent(target) || !iscarbon(target)) return - close_machine(target) + if(close_machine(target, user)) + log_combat(user, target, "inserted", null, "into [src].") + add_fingerprint(user) diff --git a/code/modules/research/nanites/rules.dm b/code/modules/research/nanites/rules.dm new file mode 100644 index 0000000000..f496abe6e1 --- /dev/null +++ b/code/modules/research/nanites/rules.dm @@ -0,0 +1,151 @@ +/datum/nanite_rule + var/name = "Generic Condition" + var/desc = "When triggered, the program is active" + var/datum/nanite_program/program + +/datum/nanite_rule/New(datum/nanite_program/new_program) + program = new_program + if(LAZYLEN(new_program.rules) <= 5) //Avoid infinite stacking rules + new_program.rules += src + else + qdel(src) + +/datum/nanite_rule/proc/remove() + program.rules -= src + program = null + qdel(src) + +/datum/nanite_rule/proc/check_rule() + return TRUE + +/datum/nanite_rule/proc/display() + return name + +/datum/nanite_rule/proc/copy_to(datum/nanite_program/new_program) + new type(new_program) + +/datum/nanite_rule/health + name = "Health" + desc = "Checks the host's health status." + + var/threshold = 50 + var/above = TRUE + +/datum/nanite_rule/health/check_rule() + var/health_percent = program.host_mob.health / program.host_mob.maxHealth * 100 + if(above) + if(health_percent >= threshold) + return TRUE + else + if(health_percent < threshold) + return TRUE + return FALSE + +/datum/nanite_rule/health/display() + return "[name] [above ? ">" : "<"] [threshold]%" + +/datum/nanite_rule/health/copy_to(datum/nanite_program/new_program) + var/datum/nanite_rule/health/rule = new(new_program) + rule.above = above + rule.threshold = threshold + +//TODO allow inversion +/datum/nanite_rule/crit + name = "Crit" + desc = "Checks if the host is in critical condition." + +/datum/nanite_rule/crit/check_rule() + if(program.host_mob.InCritical()) + return TRUE + return FALSE + +/datum/nanite_rule/death + name = "Death" + desc = "Checks if the host is dead." + +/datum/nanite_rule/death/check_rule() + if(program.host_mob.stat == DEAD || HAS_TRAIT(program.host_mob, TRAIT_FAKEDEATH)) + return TRUE + return FALSE + +/datum/nanite_rule/cloud_sync + name = "Cloud Sync" + desc = "Checks if the nanites have cloud sync enabled or disabled." + var/check_type = "Enabled" + +/datum/nanite_rule/cloud_sync/check_rule() + if(check_type == "Enabled") + return program.nanites.cloud_active + else + return !program.nanites.cloud_active + +/datum/nanite_rule/cloud_sync/copy_to(datum/nanite_program/new_program) + var/datum/nanite_rule/cloud_sync/rule = new(new_program) + rule.check_type = check_type + +/datum/nanite_rule/cloud_sync/display() + return "[name]:[check_type]" + +/datum/nanite_rule/nanites + name = "Nanite Volume" + desc = "Checks the host's nanite volume." + + var/threshold = 50 + var/above = TRUE + +/datum/nanite_rule/nanites/check_rule() + var/nanite_percent = (program.nanites.nanite_volume - program.nanites.safety_threshold)/(program.nanites.max_nanites - program.nanites.safety_threshold)*100 + if(above) + if(nanite_percent >= threshold) + return TRUE + else + if(nanite_percent < threshold) + return TRUE + return FALSE + +/datum/nanite_rule/nanites/copy_to(datum/nanite_program/new_program) + var/datum/nanite_rule/nanites/rule = new(new_program) + rule.above = above + rule.threshold = threshold + +/datum/nanite_rule/nanites/display() + return "[name] [above ? ">" : "<"] [threshold]%" + +/datum/nanite_rule/damage + name = "Damage" + desc = "Checks the host's damage." + + var/threshold = 50 + var/above = TRUE + var/damage_type = BRUTE + +/datum/nanite_rule/damage/check_rule() + var/damage_amt = 0 + switch(damage_type) + if(BRUTE) + damage_amt = program.host_mob.getBruteLoss() + if(BURN) + damage_amt = program.host_mob.getFireLoss() + if(TOX) + damage_amt = program.host_mob.getToxLoss() + if(OXY) + damage_amt = program.host_mob.getOxyLoss() + if(CLONE) + damage_amt = program.host_mob.getCloneLoss() + + if(above) + if(damage_amt >= threshold) + return TRUE + else + if(damage_amt < threshold) + return TRUE + return FALSE + +/datum/nanite_rule/damage/copy_to(datum/nanite_program/new_program) + var/datum/nanite_rule/damage/rule = new(new_program) + rule.above = above + rule.threshold = threshold + rule.damage_type = damage_type + +/datum/nanite_rule/damage/display() + return "[damage_type] [above ? ">" : "<"] [threshold]" diff --git a/tgstation.dme b/tgstation.dme index a747c823db..4aaa8f477d 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2809,6 +2809,12 @@ #include "code\modules\research\nanites\nanite_remote.dm" #include "code\modules\research\nanites\program_disks.dm" #include "code\modules\research\nanites\public_chamber.dm" +#include "code\modules\research\nanites\rules.dm" +#include "code\modules\research\nanites\extra_settings\_extra_setting.dm" +#include "code\modules\research\nanites\extra_settings\boolean.dm" +#include "code\modules\research\nanites\extra_settings\number.dm" +#include "code\modules\research\nanites\extra_settings\text.dm" +#include "code\modules\research\nanites\extra_settings\type.dm" #include "code\modules\research\nanites\nanite_programs\buffing.dm" #include "code\modules\research\nanites\nanite_programs\healing.dm" #include "code\modules\research\nanites\nanite_programs\rogue.dm" diff --git a/tgui-next/packages/tgui/public/tgui.bundle.js b/tgui-next/packages/tgui/public/tgui.bundle.js index 7089db7a98..692f038458 100644 --- a/tgui-next/packages/tgui/public/tgui.bundle.js +++ b/tgui-next/packages/tgui/public/tgui.bundle.js @@ -1,3 +1,3 @@ -!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=164)}([function(e,t,n){"use strict";var o=n(5),r=n(18).f,a=n(24),i=n(22),c=n(89),l=n(122),u=n(61);e.exports=function(e,t){var n,s,d,p,f,m=e.target,h=e.global,C=e.stat;if(n=h?o:C?o[m]||c(m,{}):(o[m]||{}).prototype)for(s in t){if(p=t[s],d=e.noTargetGet?(f=r(n,s))&&f.value:n[s],!u(h?s:m+(C?".":"#")+s,e.forced)&&d!==undefined){if(typeof p==typeof d)continue;l(p,d)}(e.sham||d&&d.sham)&&a(p,"sham",!0),i(n,s,p,e)}}},function(e,t,n){"use strict";t.__esModule=!0;var o=n(386);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(t[e]=o[e])}))},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=t.Tooltip=t.Toast=t.TitleBar=t.Tabs=t.Table=t.Section=t.ProgressBar=t.NumberInput=t.NoticeBox=t.LabeledList=t.Input=t.Icon=t.Grid=t.Flex=t.Dropdown=t.Dimmer=t.Collapsible=t.ColorBox=t.Button=t.Box=t.BlockQuote=t.AnimatedNumber=void 0;var o=n(158);t.AnimatedNumber=o.AnimatedNumber;var r=n(391);t.BlockQuote=r.BlockQuote;var a=n(17);t.Box=a.Box;var i=n(114);t.Button=i.Button;var c=n(393);t.ColorBox=c.ColorBox;var l=n(394);t.Collapsible=l.Collapsible;var u=n(395);t.Dimmer=u.Dimmer;var s=n(396);t.Dropdown=s.Dropdown;var d=n(397);t.Flex=d.Flex;var p=n(161);t.Grid=p.Grid;var f=n(87);t.Icon=f.Icon;var m=n(160);t.Input=m.Input;var h=n(163);t.LabeledList=h.LabeledList;var C=n(398);t.NoticeBox=C.NoticeBox;var g=n(399);t.NumberInput=g.NumberInput;var b=n(400);t.ProgressBar=b.ProgressBar;var v=n(401);t.Section=v.Section;var N=n(162);t.Table=N.Table;var V=n(402);t.Tabs=V.Tabs;var y=n(403);t.TitleBar=y.TitleBar;var _=n(117);t.Toast=_.Toast;var x=n(159);t.Tooltip=x.Tooltip;var k=n(404);t.Chart=k.Chart},function(e,t,n){"use strict";t.__esModule=!0,t.useBackend=t.backendReducer=t.backendUpdate=void 0;var o=n(37),r=n(19);t.backendUpdate=function(e){return{type:"backendUpdate",payload:e}};t.backendReducer=function(e,t){var n=t.type,r=t.payload;if("backendUpdate"===n){var a=Object.assign({},e.config,{},r.config),i=Object.assign({},e.data,{},r.static_data,{},r.data),c=a.status!==o.UI_DISABLED,l=a.status===o.UI_INTERACTIVE;return Object.assign({},e,{config:a,data:i,visible:c,interactive:l})}return e};t.useBackend=function(e){var t=e.state,n=(e.dispatch,t.config.ref);return Object.assign({},t,{act:function(e,t){return void 0===t&&(t={}),(0,r.act)(n,e,t)}})}},function(e,t,n){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},function(e,t,n){"use strict";(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n(118))},function(e,t,n){"use strict";e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";var o,r=n(9),a=n(5),i=n(6),c=n(15),l=n(74),u=n(24),s=n(22),d=n(13).f,p=n(36),f=n(53),m=n(11),h=n(58),C=a.DataView,g=C&&C.prototype,b=a.Int8Array,v=b&&b.prototype,N=a.Uint8ClampedArray,V=N&&N.prototype,y=b&&p(b),_=v&&p(v),x=Object.prototype,k=x.isPrototypeOf,w=m("toStringTag"),L=h("TYPED_ARRAY_TAG"),B=!(!a.ArrayBuffer||!C),S=B&&!!f&&"Opera"!==l(a.opera),I=!1,T={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},A=function(e){var t=l(e);return"DataView"===t||c(T,t)},E=function(e){return i(e)&&c(T,l(e))};for(o in T)a[o]||(S=!1);if((!S||"function"!=typeof y||y===Function.prototype)&&(y=function(){throw TypeError("Incorrect invocation")},S))for(o in T)a[o]&&f(a[o],y);if((!S||!_||_===x)&&(_=y.prototype,S))for(o in T)a[o]&&f(a[o].prototype,_);if(S&&p(V)!==_&&f(V,_),r&&!c(_,w))for(o in I=!0,d(_,w,{get:function(){return i(this)?this[L]:undefined}}),T)a[o]&&u(a[o],L,o);B&&f&&p(g)!==x&&f(g,x),e.exports={NATIVE_ARRAY_BUFFER:B,NATIVE_ARRAY_BUFFER_VIEWS:S,TYPED_ARRAY_TAG:I&&L,aTypedArray:function(e){if(E(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(f){if(k.call(y,e))return e}else for(var t in T)if(c(T,o)){var n=a[t];if(n&&(e===n||k.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(r){if(n)for(var o in T){var i=a[o];i&&c(i.prototype,e)&&delete i.prototype[e]}_[e]&&!n||s(_,e,n?t:S&&v[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var o,i;if(r){if(f){if(n)for(o in T)(i=a[o])&&c(i,e)&&delete i[e];if(y[e]&&!n)return;try{return s(y,e,n?t:S&&b[e]||t)}catch(l){}}for(o in T)!(i=a[o])||i[e]&&!n||s(i,e,t)}},isView:A,isTypedArray:E,TypedArray:y,TypedArrayPrototype:_}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(29),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(5),r=n(91),a=n(15),i=n(58),c=n(95),l=n(125),u=r("wks"),s=o.Symbol,d=l?s:i;e.exports=function(e){return a(u,e)||(c&&a(s,e)?u[e]=s[e]:u[e]=d("Symbol."+e)),u[e]}},function(e,t,n){"use strict";t.__esModule=!0,t.isFalsy=t.pureComponentHooks=t.shallowDiffers=t.normalizeChildren=t.classes=void 0;t.classes=function(e){for(var t="",n=0;n_;_++)if((p||_ in N)&&(b=V(g=N[_],_,v),e))if(t)k[_]=b;else if(b)switch(e){case 3:return!0;case 5:return g;case 6:return _;case 2:l.call(k,g)}else if(s)return!1;return d?-1:u||s?s:k}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},function(e,t,n){"use strict";t.__esModule=!0,t.Box=t.computeBoxProps=t.unit=void 0;var o=n(1),r=n(12),a=n(392),i=n(37);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){return"string"==typeof e?e:"number"==typeof e?6*e+"px":void 0};t.unit=l;var u=function(e){return"string"==typeof e&&i.CSS_COLORS.includes(e)},s=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=n)}},d=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=l(n))}},p=function(e,t){return function(n,o){(0,r.isFalsy)(o)||(n[e]=t)}},f=function(e,t){return function(n,o){if(!(0,r.isFalsy)(o))for(var a=0;a0&&(t.style=l),t};t.computeBoxProps=C;var g=function(e){var t=e.as,n=void 0===t?"div":t,i=e.className,l=e.content,s=e.children,d=c(e,["as","className","content","children"]),p=e.textColor||e.color,f=e.backgroundColor;if("function"==typeof s)return s(C(e));var m=C(d);return(0,o.createVNode)(a.VNodeFlags.HtmlElement,n,(0,r.classes)([i,u(p)&&"color-"+p,u(f)&&"color-bg-"+f]),l||s,a.ChildFlags.UnknownChildren,m)};t.Box=g,g.defaultHooks=r.pureComponentHooks;var b=function(e){var t=e.children,n=c(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({position:"relative"},n,{children:(0,o.createComponentVNode)(2,g,{fillPositionedParent:!0,children:t})})))};b.defaultHooks=r.pureComponentHooks,g.Forced=b},function(e,t,n){"use strict";var o=n(9),r=n(71),a=n(46),i=n(23),c=n(33),l=n(15),u=n(119),s=Object.getOwnPropertyDescriptor;t.f=o?s:function(e,t){if(e=i(e),t=c(t,!0),u)try{return s(e,t)}catch(n){}if(l(e,t))return a(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";t.__esModule=!0,t.winset=t.winget=t.act=t.runCommand=t.callByondAsync=t.callByond=t.tridentVersion=void 0;var o,r=n(31),a=(o=navigator.userAgent.match(/Trident\/(\d+).+?;/i)[1])?parseInt(o,10):null;t.tridentVersion=a;var i=function(e,t){return void 0===t&&(t={}),"byond://"+e+"?"+(0,r.buildQueryString)(t)},c=function(e,t){void 0===t&&(t={}),window.location.href=i(e,t)};t.callByond=c;var l=function(e,t){void 0===t&&(t={}),window.__callbacks__=window.__callbacks__||[];var n=window.__callbacks__.length,o=new Promise((function(e){window.__callbacks__.push(e)}));return window.location.href=i(e,Object.assign({},t,{callback:"__callbacks__["+n+"]"})),o};t.callByondAsync=l;t.runCommand=function(e){return c("winset",{command:e})};t.act=function(e,t,n){return void 0===n&&(n={}),c("",Object.assign({src:e,action:t},n))};var u=function(e,t){var n;return regeneratorRuntime.async((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,regeneratorRuntime.awrap(l("winget",{id:e,property:t}));case 2:return n=o.sent,o.abrupt("return",n[t]);case 4:case"end":return o.stop()}}))};t.winget=u;t.winset=function(e,t,n){var o;return c("winset",((o={})[e+"."+t]=n,o))}},function(e,t,n){"use strict";t.__esModule=!0,t.toFixed=t.round=t.clamp=void 0;t.clamp=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),Math.max(t,Math.min(e,n))};t.round=function(e){return Math.round(e)};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(t)}},function(e,t,n){"use strict";e.exports=function(e){if(e==undefined)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){"use strict";var o=n(5),r=n(24),a=n(15),i=n(89),c=n(90),l=n(34),u=l.get,s=l.enforce,d=String(String).split("String");(e.exports=function(e,t,n,c){var l=!!c&&!!c.unsafe,u=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||r(n,"name",t),s(n).source=d.join("string"==typeof t?t:"")),e!==o?(l?!p&&e[t]&&(u=!0):delete e[t],u?e[t]=n:r(e,t,n)):u?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},function(e,t,n){"use strict";var o=n(57),r=n(21);e.exports=function(e){return o(r(e))}},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(46);e.exports=o?function(e,t,n){return r.f(e,t,a(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){"use strict";var o=n(123),r=n(15),a=n(129),i=n(13).f;e.exports=function(e){var t=o.Symbol||(o.Symbol={});r(t,e)||i(t,e,{value:a.f(e)})}},function(e,t,n){"use strict";var o=n(21),r=/"/g;e.exports=function(e,t,n,a){var i=String(o(e)),c="<"+t;return""!==n&&(c+=" "+n+'="'+String(a).replace(r,""")+'"'),c+">"+i+""}},function(e,t,n){"use strict";var o=n(4);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.reduce=t.sortBy=t.map=t.toArray=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};var o=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oc)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;n0?r:o)(e)}},function(e,t,n){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){"use strict";t.__esModule=!0,t.buildQueryString=t.decodeHtmlEntities=t.toTitleCase=t.capitalize=t.testGlobPattern=t.multiline=void 0;t.multiline=function o(e){if(Array.isArray(e))return o(e.join(""));var t,n=e.split("\n"),r=n,a=Array.isArray(r),i=0;for(r=a?r:r[Symbol.iterator]();;){var c;if(a){if(i>=r.length)break;c=r[i++]}else{if((i=r.next()).done)break;c=i.value}for(var l=c,u=0;u",apos:"'"};return e.replace(/
/gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/&#?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/&#x?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){"use strict";var o,r,a,i=n(121),c=n(5),l=n(6),u=n(24),s=n(15),d=n(72),p=n(59),f=c.WeakMap;if(i){var m=new f,h=m.get,C=m.has,g=m.set;o=function(e,t){return g.call(m,e,t),t},r=function(e){return h.call(m,e)||{}},a=function(e){return C.call(m,e)}}else{var b=d("state");p[b]=!0,o=function(e,t){return u(e,b,t),t},r=function(e){return s(e,b)?e[b]:{}},a=function(e){return s(e,b)}}e.exports={set:o,get:r,has:a,enforce:function(e){return a(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=n(123),r=n(5),a=function(e){return"function"==typeof e?e:undefined};e.exports=function(e,t){return arguments.length<2?a(o[e])||a(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t,n){"use strict";var o=n(15),r=n(14),a=n(72),i=n(102),c=a("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),o(e,c)?e[c]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){"use strict";t.__esModule=!0,t.getGasColor=t.getGasLabel=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=t.UI_CLOSE=t.UI_DISABLED=t.UI_UPDATE=t.UI_INTERACTIVE=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{captain:"#c06616",security:"#e74c3c",medbay:"#3498db",science:"#9b59b6",engineering:"#f1c40f",cargo:"#f39c12",centcom:"#00c100",other:"#c38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"CentCom",freq:1337,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"AI Private",freq:1447,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(4);e.exports=function(e,t){var n=[][e];return!n||!o((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(9),i=n(113),c=n(7),l=n(77),u=n(55),s=n(46),d=n(24),p=n(10),f=n(137),m=n(151),h=n(33),C=n(15),g=n(74),b=n(6),v=n(42),N=n(53),V=n(47).f,y=n(152),_=n(16).forEach,x=n(54),k=n(13),w=n(18),L=n(34),B=n(79),S=L.get,I=L.set,T=k.f,A=w.f,E=Math.round,P=r.RangeError,O=l.ArrayBuffer,M=l.DataView,R=c.NATIVE_ARRAY_BUFFER_VIEWS,F=c.TYPED_ARRAY_TAG,D=c.TypedArray,j=c.TypedArrayPrototype,z=c.aTypedArrayConstructor,H=c.isTypedArray,G=function(e,t){for(var n=0,o=t.length,r=new(z(e))(o);o>n;)r[n]=t[n++];return r},U=function(e,t){T(e,t,{get:function(){return S(this)[t]}})},K=function(e){var t;return e instanceof O||"ArrayBuffer"==(t=g(e))||"SharedArrayBuffer"==t},Y=function(e,t){return H(e)&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},q=function(e,t){return Y(e,t=h(t,!0))?s(2,e[t]):A(e,t)},W=function(e,t,n){return!(Y(e,t=h(t,!0))&&b(n)&&C(n,"value"))||C(n,"get")||C(n,"set")||n.configurable||C(n,"writable")&&!n.writable||C(n,"enumerable")&&!n.enumerable?T(e,t,n):(e[t]=n.value,e)};a?(R||(w.f=q,k.f=W,U(j,"buffer"),U(j,"byteOffset"),U(j,"byteLength"),U(j,"length")),o({target:"Object",stat:!0,forced:!R},{getOwnPropertyDescriptor:q,defineProperty:W}),e.exports=function(e,t,n){var a=e.match(/\d+$/)[0]/8,c=e+(n?"Clamped":"")+"Array",l="get"+e,s="set"+e,h=r[c],C=h,g=C&&C.prototype,k={},w=function(e,t){var n=S(e);return n.view[l](t*a+n.byteOffset,!0)},L=function(e,t,o){var r=S(e);n&&(o=(o=E(o))<0?0:o>255?255:255&o),r.view[s](t*a+r.byteOffset,o,!0)},A=function(e,t){T(e,t,{get:function(){return w(this,t)},set:function(e){return L(this,t,e)},enumerable:!0})};R?i&&(C=t((function(e,t,n,o){return u(e,C,c),B(b(t)?K(t)?o!==undefined?new h(t,m(n,a),o):n!==undefined?new h(t,m(n,a)):new h(t):H(t)?G(C,t):y.call(C,t):new h(f(t)),e,C)})),N&&N(C,D),_(V(h),(function(e){e in C||d(C,e,h[e])})),C.prototype=g):(C=t((function(e,t,n,o){u(e,C,c);var r,i,l,s=0,d=0;if(b(t)){if(!K(t))return H(t)?G(C,t):y.call(C,t);r=t,d=m(n,a);var h=t.byteLength;if(o===undefined){if(h%a)throw P("Wrong length");if((i=h-d)<0)throw P("Wrong length")}else if((i=p(o)*a)+d>h)throw P("Wrong length");l=i/a}else l=f(t),r=new O(i=l*a);for(I(e,{buffer:r,byteOffset:d,byteLength:i,length:l,view:new M(r)});sdocument.F=Object<\/script>"),e.close(),p=e.F;n--;)delete p[s][a[n]];return p()};e.exports=Object.create||function(e,t){var n;return null!==e?(d[s]=o(e),n=new d,d[s]=null,n[u]=e):n=p(),t===undefined?n:r(n,t)},i[u]=!0},function(e,t,n){"use strict";var o=n(13).f,r=n(15),a=n(11)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,a)&&o(e,a,{configurable:!0,value:t})}},function(e,t,n){"use strict";var o=n(11),r=n(42),a=n(24),i=o("unscopables"),c=Array.prototype;c[i]==undefined&&a(c,i,r(null)),e.exports=function(e){c[i][e]=!0}},function(e,t,n){"use strict";var o=n(8),r=n(30),a=n(11)("species");e.exports=function(e,t){var n,i=o(e).constructor;return i===undefined||(n=o(i)[a])==undefined?t:r(n)}},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var o=n(124),r=n(93).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(30);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";var o=n(33),r=n(13),a=n(46);e.exports=function(e,t,n){var i=o(t);i in e?r.f(e,i,a(0,n)):e[i]=n}},function(e,t,n){"use strict";var o=n(59),r=n(6),a=n(15),i=n(13).f,c=n(58),l=n(67),u=c("meta"),s=0,d=Object.isExtensible||function(){return!0},p=function(e){i(e,u,{value:{objectID:"O"+ ++s,weakData:{}}})},f=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,u)){if(!d(e))return"F";if(!t)return"E";p(e)}return e[u].objectID},getWeakData:function(e,t){if(!a(e,u)){if(!d(e))return!0;if(!t)return!1;p(e)}return e[u].weakData},onFreeze:function(e){return l&&f.REQUIRED&&d(e)&&!a(e,u)&&p(e),e}};o[u]=!0},function(e,t,n){"use strict";t.__esModule=!0,t.createLogger=void 0;n(154);var o=n(19),r=0,a=1,i=2,c=3,l=4,u=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),a=2;a=i){var c=[t].concat(r).map((function(e){return"string"==typeof e?e:e instanceof Error?e.stack||String(e):JSON.stringify(e)})).filter((function(e){return e})).join(" ")+"\nUser Agent: "+navigator.userAgent;(0,o.act)(window.__ref__,"tgui:log",{log:c})}};t.createLogger=function(e){return{debug:function(){for(var t=arguments.length,n=new Array(t),o=0;os;)if((c=l[s++])!=c)return!0}else for(;u>s;s++)if((e||s in l)&&l[s]===n)return e||s||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){"use strict";var o=n(4),r=/#|\.prototype\./,a=function(e,t){var n=c[i(e)];return n==u||n!=l&&("function"==typeof t?o(t):!!t)},i=a.normalize=function(e){return String(e).replace(r,".").toLowerCase()},c=a.data={},l=a.NATIVE="N",u=a.POLYFILL="P";e.exports=a},function(e,t,n){"use strict";var o=n(124),r=n(93);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(6),r=n(52),a=n(11)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?o(n)&&null===(n=n[a])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},function(e,t,n){"use strict";var o=n(4),r=n(11),a=n(96),i=r("species");e.exports=function(e){return a>=51||!o((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(22);e.exports=function(e,t,n){for(var r in t)o(e,r,t[r],n);return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){"use strict";var o=n(8),r=n(98),a=n(10),i=n(48),c=n(99),l=n(132),u=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,s,d){var p,f,m,h,C,g,b,v=i(t,n,s?2:1);if(d)p=e;else{if("function"!=typeof(f=c(e)))throw TypeError("Target is not iterable");if(r(f)){for(m=0,h=a(e.length);h>m;m++)if((C=s?v(o(b=e[m])[0],b[1]):v(e[m]))&&C instanceof u)return C;return new u(!1)}p=f.call(e)}for(g=p.next;!(b=g.call(p)).done;)if("object"==typeof(C=l(p,v,b.value,s))&&C&&C instanceof u)return C;return new u(!1)}).stop=function(e){return new u(!0,e)}},function(e,t,n){"use strict";t.__esModule=!0,t.InterfaceLockNoticeBox=void 0;var o=n(1),r=n(2);t.InterfaceLockNoticeBox=function(e){var t=e.siliconUser,n=e.locked,a=e.onLockStatusChange,i=e.accessText;return t?(0,o.createComponentVNode)(2,r.NoticeBox,{children:(0,o.createComponentVNode)(2,r.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,r.Flex.Item,{children:"Interface lock status:"}),(0,o.createComponentVNode)(2,r.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,r.Flex.Item,{children:(0,o.createComponentVNode)(2,r.Button,{m:0,color:"gray",icon:n?"lock":"unlock",content:n?"Locked":"Unlocked",onClick:function(){a&&a(!n)}})})]})}):(0,o.createComponentVNode)(2,r.NoticeBox,{children:["Swipe ",i||"an ID card"," ","to ",n?"unlock":"lock"," this interface."]})}},function(e,t,n){"use strict";t.__esModule=!0,t.compose=t.flow=void 0;t.flow=function o(){for(var e=arguments.length,t=new Array(e),n=0;n1?r-1:0),i=1;i=c.length)break;s=c[u++]}else{if((u=c.next()).done)break;s=u.value}var d=s;Array.isArray(d)?n=o.apply(void 0,d).apply(void 0,[n].concat(a)):d&&(n=d.apply(void 0,[n].concat(a)))}return n}};t.compose=function(){for(var e=arguments.length,t=new Array(e),n=0;n1?o-1:0),a=1;a=0:d>p;p+=f)p in s&&(l=n(l,s[p],p,u));return l}};e.exports={left:c(!1),right:c(!0)}},function(e,t,n){"use strict";var o=n(5),r=n(9),a=n(7).NATIVE_ARRAY_BUFFER,i=n(24),c=n(66),l=n(4),u=n(55),s=n(29),d=n(10),p=n(137),f=n(217),m=n(47).f,h=n(13).f,C=n(97),g=n(43),b=n(34),v=b.get,N=b.set,V="ArrayBuffer",y="DataView",_="Wrong length",x=o[V],k=x,w=o[y],L=o.RangeError,B=f.pack,S=f.unpack,I=function(e){return[255&e]},T=function(e){return[255&e,e>>8&255]},A=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},E=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return B(e,23,4)},O=function(e){return B(e,52,8)},M=function(e,t){h(e.prototype,t,{get:function(){return v(this)[t]}})},R=function(e,t,n,o){var r=p(n),a=v(e);if(r+t>a.byteLength)throw L("Wrong index");var i=v(a.buffer).bytes,c=r+a.byteOffset,l=i.slice(c,c+t);return o?l:l.reverse()},F=function(e,t,n,o,r,a){var i=p(n),c=v(e);if(i+t>c.byteLength)throw L("Wrong index");for(var l=v(c.buffer).bytes,u=i+c.byteOffset,s=o(+r),d=0;dH;)(D=z[H++])in k||i(k,D,x[D]);j.constructor=k}var G=new w(new k(2)),U=w.prototype.setInt8;G.setInt8(0,2147483648),G.setInt8(1,2147483649),!G.getInt8(0)&&G.getInt8(1)||c(w.prototype,{setInt8:function(e,t){U.call(this,e,t<<24>>24)},setUint8:function(e,t){U.call(this,e,t<<24>>24)}},{unsafe:!0})}else k=function(e){u(this,k,V);var t=p(e);N(this,{bytes:C.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},w=function(e,t,n){u(this,w,y),u(e,k,y);var o=v(e).byteLength,a=s(t);if(a<0||a>o)throw L("Wrong offset");if(a+(n=n===undefined?o-a:d(n))>o)throw L(_);N(this,{buffer:e,byteLength:n,byteOffset:a}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=a)},r&&(M(k,"byteLength"),M(w,"buffer"),M(w,"byteLength"),M(w,"byteOffset")),c(w.prototype,{getInt8:function(e){return R(this,1,e)[0]<<24>>24},getUint8:function(e){return R(this,1,e)[0]},getInt16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return S(R(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return S(R(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){F(this,1,e,I,t)},setUint8:function(e,t){F(this,1,e,I,t)},setInt16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){F(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){F(this,8,e,O,t,arguments.length>2?arguments[2]:undefined)}});g(k,V),g(w,y),e.exports={ArrayBuffer:k,DataView:w}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(61),i=n(22),c=n(50),l=n(68),u=n(55),s=n(6),d=n(4),p=n(75),f=n(43),m=n(79);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],v=b&&b.prototype,N=b,V={},y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!s(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!s(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!s(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(a(e,"function"!=typeof b||!(C||v.forEach&&!d((function(){(new b).entries().next()})))))N=n.getConstructor(t,e,h,g),c.REQUIRED=!0;else if(a(e,!0)){var _=new N,x=_[g](C?{}:-0,1)!=_,k=d((function(){_.has(1)})),w=p((function(e){new b(e)})),L=!C&&d((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));w||((N=t((function(t,n){u(t,N,e);var o=m(new b,t,N);return n!=undefined&&l(n,o[g],o,h),o}))).prototype=v,v.constructor=N),(k||L)&&(y("delete"),y("has"),h&&y("get")),(L||x)&&y(g),C&&v.clear&&delete v.clear}return V[e]=N,o({global:!0,forced:N!=b},V),f(N,e),C||n.setStrong(N,e,h),N}},function(e,t,n){"use strict";var o=n(6),r=n(53);e.exports=function(e,t,n){var a,i;return r&&"function"==typeof(a=t.constructor)&&a!==n&&o(i=a.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var o=Math.expm1,r=Math.exp;e.exports=!o||o(10)>22025.465794806718||o(10)<22025.465794806718||-2e-17!=o(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:r(e)-1}:o},function(e,t,n){"use strict";e.exports="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},function(e,t,n){"use strict";var o=n(38),r=n(5),a=n(4);e.exports=o||!a((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r[e]}))},function(e,t,n){"use strict";var o=n(8);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var o,r,a=n(83),i=RegExp.prototype.exec,c=String.prototype.replace,l=i,u=(o=/a/,r=/b*/g,i.call(o,"a"),i.call(r,"a"),0!==o.lastIndex||0!==r.lastIndex),s=/()??/.exec("")[1]!==undefined;(u||s)&&(l=function(e){var t,n,o,r,l=this;return s&&(n=new RegExp("^"+l.source+"$(?!\\s)",a.call(l))),u&&(t=l.lastIndex),o=i.call(l,e),u&&o&&(l.lastIndex=l.global?o.index+o[0].length:t),s&&o&&o.length>1&&c.call(o[0],n,(function(){for(r=1;r")})),s=!a((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,d){var p=i(e),f=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),m=f&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!f||!m||"replace"===e&&!u||"split"===e&&!s){var h=/./[p],C=n(p,""[e],(function(e,t,n,o,r){return t.exec===c?f&&!r?{done:!0,value:h.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}})),g=C[0],b=C[1];r(String.prototype,e,g),r(RegExp.prototype,p,2==t?function(e,t){return b.call(e,this,t)}:function(e){return b.call(e,this)}),d&&o(RegExp.prototype[p],"sham",!0)}}},function(e,t,n){"use strict";var o=n(32),r=n(84);e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==o(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},function(e,t,n){"use strict";t.__esModule=!0,t.Icon=void 0;var o=n(1),r=n(12),a=n(17);var i=/-o$/,c=function(e){var t=e.name,n=e.size,c=e.spin,l=e.className,u=e.style,s=void 0===u?{}:u,d=e.rotation,p=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["name","size","spin","className","style","rotation"]);n&&(s["font-size"]=100*n+"%"),"number"==typeof d&&(s.transform="rotate("+d+"deg)");var f=i.test(t),m=t.replace(i,"");return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"i",className:(0,r.classes)([l,f?"far":"fas","fa-"+m,c&&"fa-spin"]),style:s},p)))};t.Icon=c,c.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";var o=n(5),r=n(6),a=o.document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},function(e,t,n){"use strict";var o=n(5),r=n(24);e.exports=function(e,t){try{r(o,e,t)}catch(n){o[e]=t}return t}},function(e,t,n){"use strict";var o=n(120),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},function(e,t,n){"use strict";var o=n(38),r=n(120);(e.exports=function(e,t){return r[e]||(r[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.4.8",mode:o?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){"use strict";var o=n(35),r=n(47),a=n(94),i=n(8);e.exports=o("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=a.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var o=n(4);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())}))},function(e,t,n){"use strict";var o,r,a=n(5),i=n(73),c=a.process,l=c&&c.versions,u=l&&l.v8;u?r=(o=u.split("."))[0]+o[1]:i&&(!(o=i.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=i.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10);e.exports=function(e){for(var t=o(this),n=a(t.length),i=arguments.length,c=r(i>1?arguments[1]:undefined,n),l=i>2?arguments[2]:undefined,u=l===undefined?n:r(l,n);u>c;)t[c++]=e;return t}},function(e,t,n){"use strict";var o=n(11),r=n(65),a=o("iterator"),i=Array.prototype;e.exports=function(e){return e!==undefined&&(r.Array===e||i[a]===e)}},function(e,t,n){"use strict";var o=n(74),r=n(65),a=n(11)("iterator");e.exports=function(e){if(e!=undefined)return e[a]||e["@@iterator"]||r[o(e)]}},function(e,t,n){"use strict";var o={};o[n(11)("toStringTag")]="z",e.exports="[object z]"===String(o)},function(e,t,n){"use strict";var o=n(0),r=n(202),a=n(36),i=n(53),c=n(43),l=n(24),u=n(22),s=n(11),d=n(38),p=n(65),f=n(134),m=f.IteratorPrototype,h=f.BUGGY_SAFARI_ITERATORS,C=s("iterator"),g=function(){return this};e.exports=function(e,t,n,s,f,b,v){r(n,t,s);var N,V,y,_=function(e){if(e===f&&B)return B;if(!h&&e in w)return w[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",k=!1,w=e.prototype,L=w[C]||w["@@iterator"]||f&&w[f],B=!h&&L||_(f),S="Array"==t&&w.entries||L;if(S&&(N=a(S.call(new e)),m!==Object.prototype&&N.next&&(d||a(N)===m||(i?i(N,m):"function"!=typeof N[C]&&l(N,C,g)),c(N,x,!0,!0),d&&(p[x]=g))),"values"==f&&L&&"values"!==L.name&&(k=!0,B=function(){return L.call(this)}),d&&!v||w[C]===B||l(w,C,B),p[t]=B,f)if(V={values:_("values"),keys:b?B:_("keys"),entries:_("entries")},v)for(y in V)!h&&!k&&y in w||u(w,y,V[y]);else o({target:t,proto:!0,forced:h||k},V);return V}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){"use strict";var o=n(10),r=n(104),a=n(21),i=Math.ceil,c=function(e){return function(t,n,c){var l,u,s=String(a(t)),d=s.length,p=c===undefined?" ":String(c),f=o(n);return f<=d||""==p?s:(l=f-d,(u=r.call(p,i(l/p.length))).length>l&&(u=u.slice(0,l)),e?s+u:u+s)}};e.exports={start:c(!1),end:c(!0)}},function(e,t,n){"use strict";var o=n(29),r=n(21);e.exports="".repeat||function(e){var t=String(r(this)),n="",a=o(e);if(a<0||a==Infinity)throw RangeError("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))1&a&&(n+=t);return n}},function(e,t,n){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t,n){"use strict";var o,r,a,i=n(5),c=n(4),l=n(32),u=n(48),s=n(127),d=n(88),p=n(146),f=i.location,m=i.setImmediate,h=i.clearImmediate,C=i.process,g=i.MessageChannel,b=i.Dispatch,v=0,N={},V=function(e){if(N.hasOwnProperty(e)){var t=N[e];delete N[e],t()}},y=function(e){return function(){V(e)}},_=function(e){V(e.data)},x=function(e){i.postMessage(e+"",f.protocol+"//"+f.host)};m&&h||(m=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return N[++v]=function(){("function"==typeof e?e:Function(e)).apply(undefined,t)},o(v),v},h=function(e){delete N[e]},"process"==l(C)?o=function(e){C.nextTick(y(e))}:b&&b.now?o=function(e){b.now(y(e))}:g&&!p?(a=(r=new g).port2,r.port1.onmessage=_,o=u(a.postMessage,a,1)):!i.addEventListener||"function"!=typeof postMessage||i.importScripts||c(x)?o="onreadystatechange"in d("script")?function(e){s.appendChild(d("script")).onreadystatechange=function(){s.removeChild(this),V(e)}}:function(e){setTimeout(y(e),0)}:(o=x,i.addEventListener("message",_,!1))),e.exports={set:m,clear:h}},function(e,t,n){"use strict";var o=n(6),r=n(32),a=n(11)("match");e.exports=function(e){var t;return o(e)&&((t=e[a])!==undefined?!!t:"RegExp"==r(e))}},function(e,t,n){"use strict";var o=n(29),r=n(21),a=function(e){return function(t,n){var a,i,c=String(r(t)),l=o(n),u=c.length;return l<0||l>=u?e?"":undefined:(a=c.charCodeAt(l))<55296||a>56319||l+1===u||(i=c.charCodeAt(l+1))<56320||i>57343?e?c.charAt(l):a:e?c.slice(l,l+2):i-56320+(a-55296<<10)+65536}};e.exports={codeAt:a(!1),charAt:a(!0)}},function(e,t,n){"use strict";var o=n(107);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){"use strict";var o=n(11)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[o]=!1,"/./"[e](t)}catch(r){}}return!1}},function(e,t,n){"use strict";var o=n(108).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},function(e,t,n){"use strict";var o=n(4),r=n(81);e.exports=function(e){return o((function(){return!!r[e]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[e]()||r[e].name!==e}))}},function(e,t,n){"use strict";var o=n(5),r=n(4),a=n(75),i=n(7).NATIVE_ARRAY_BUFFER_VIEWS,c=o.ArrayBuffer,l=o.Int8Array;e.exports=!i||!r((function(){l(1)}))||!r((function(){new l(-1)}))||!a((function(e){new l,new l(null),new l(1.5),new l(e)}),!0)||r((function(){return 1!==new l(new c(2),1,undefined).length}))},function(e,t,n){"use strict";t.__esModule=!0,t.ButtonInput=t.ButtonConfirm=t.ButtonCheckbox=t.Button=void 0;var o=n(1),r=n(12),a=n(19),i=n(115),c=n(51),l=n(116),u=n(17),s=n(87),d=n(159);n(160),n(161);function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function f(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var m=(0,c.createLogger)("Button"),h=function(e){var t=e.className,n=e.fluid,c=e.icon,p=e.color,h=e.disabled,C=e.selected,g=e.tooltip,b=e.tooltipPosition,v=e.ellipsis,N=e.content,V=e.iconRotation,y=e.iconSpin,_=e.children,x=e.onclick,k=e.onClick,w=f(e,["className","fluid","icon","color","disabled","selected","tooltip","tooltipPosition","ellipsis","content","iconRotation","iconSpin","children","onclick","onClick"]),L=!(!N&&!_);return x&&m.warn("Lowercase 'onclick' is not supported on Button and lowercase prop names are discouraged in general. Please use a camelCase'onClick' instead and read: https://infernojs.org/docs/guides/event-handling"),(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({as:"span",className:(0,r.classes)(["Button",n&&"Button--fluid",h&&"Button--disabled",C&&"Button--selected",L&&"Button--hasContent",v&&"Button--ellipsis",p&&"string"==typeof p?"Button--color--"+p:"Button--color--default",t]),tabIndex:!h&&"0",unselectable:a.tridentVersion<=4,onclick:function(e){(0,l.refocusLayout)(),!h&&k&&k(e)},onKeyDown:function(e){var t=window.event?e.which:e.keyCode;return t===i.KEY_SPACE||t===i.KEY_ENTER?(e.preventDefault(),void(!h&&k&&k(e))):t===i.KEY_ESCAPE?(e.preventDefault(),void(0,l.refocusLayout)()):void 0}},w,{children:[c&&(0,o.createComponentVNode)(2,s.Icon,{name:c,rotation:V,spin:y}),N,_,g&&(0,o.createComponentVNode)(2,d.Tooltip,{content:g,position:b})]})))};t.Button=h,h.defaultHooks=r.pureComponentHooks;var C=function(e){var t=e.checked,n=f(e,["checked"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({color:"transparent",icon:t?"check-square-o":"square-o",selected:t},n)))};t.ButtonCheckbox=C,h.Checkbox=C;var g=function(e){function t(){var t;return(t=e.call(this)||this).state={clickedOnce:!1},t.handleClick=function(){t.state.clickedOnce&&t.setClickedOnce(!1)},t}p(t,e);var n=t.prototype;return n.setClickedOnce=function(e){var t=this;this.setState({clickedOnce:e}),e?setTimeout((function(){return window.addEventListener("click",t.handleClick)})):window.removeEventListener("click",this.handleClick)},n.render=function(){var e=this,t=this.props,n=t.confirmMessage,r=void 0===n?"Confirm?":n,a=t.confirmColor,i=void 0===a?"bad":a,c=t.color,l=t.content,u=t.onClick,s=f(t,["confirmMessage","confirmColor","color","content","onClick"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({content:this.state.clickedOnce?r:l,color:this.state.clickedOnce?i:c,onClick:function(){return e.state.clickedOnce?u():e.setClickedOnce(!0)}},s)))},t}(o.Component);t.ButtonConfirm=g,h.Confirm=g;var b=function(e){function t(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={inInput:!1},t}p(t,e);var n=t.prototype;return n.setInInput=function(e){if(this.setState({inInput:e}),this.inputRef){var t=this.inputRef.current;if(e){t.value=this.props.currentValue||"";try{t.focus(),t.select()}catch(n){}}}},n.commitResult=function(e){if(this.inputRef){var t=this.inputRef.current;if(""!==t.value)return void this.props.onCommit(e,t.value);if(!this.props.defaultValue)return;this.props.onCommit(e,this.props.defaultValue)}},n.render=function(){var e=this,t=this.props,n=t.fluid,a=t.content,c=t.color,l=void 0===c?"default":c,s=(t.placeholder,t.maxLength,f(t,["fluid","content","color","placeholder","maxLength"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid","Button--color--"+l])},s,{onClick:function(){return e.setInInput(!0)},children:[(0,o.createVNode)(1,"div",null,a,0),(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:this.state.inInput?undefined:"none","text-align":"left"},onBlur:function(t){e.state.inInput&&(e.setInInput(!1),e.commitResult(t))},onKeyDown:function(t){if(t.keyCode===i.KEY_ENTER)return e.setInInput(!1),void e.commitResult(t);t.keyCode===i.KEY_ESCAPE&&e.setInInput(!1)}},null,this.inputRef)]})))},t}(o.Component);t.ButtonInput=b,h.Input=b},function(e,t,n){"use strict";t.__esModule=!0,t.hotKeyReducer=t.hotKeyMiddleware=t.releaseHeldKeys=t.KEY_MINUS=t.KEY_EQUAL=t.KEY_Z=t.KEY_Y=t.KEY_X=t.KEY_W=t.KEY_V=t.KEY_U=t.KEY_T=t.KEY_S=t.KEY_R=t.KEY_Q=t.KEY_P=t.KEY_O=t.KEY_N=t.KEY_M=t.KEY_L=t.KEY_K=t.KEY_J=t.KEY_I=t.KEY_H=t.KEY_G=t.KEY_F=t.KEY_E=t.KEY_D=t.KEY_C=t.KEY_B=t.KEY_A=t.KEY_9=t.KEY_8=t.KEY_7=t.KEY_6=t.KEY_5=t.KEY_4=t.KEY_3=t.KEY_2=t.KEY_1=t.KEY_0=t.KEY_SPACE=t.KEY_ESCAPE=t.KEY_ALT=t.KEY_CTRL=t.KEY_SHIFT=t.KEY_ENTER=t.KEY_TAB=t.KEY_BACKSPACE=void 0;var o=n(51),r=n(19),a=(0,o.createLogger)("hotkeys");t.KEY_BACKSPACE=8;t.KEY_TAB=9;t.KEY_ENTER=13;t.KEY_SHIFT=16;t.KEY_CTRL=17;t.KEY_ALT=18;t.KEY_ESCAPE=27;t.KEY_SPACE=32;t.KEY_0=48;t.KEY_1=49;t.KEY_2=50;t.KEY_3=51;t.KEY_4=52;t.KEY_5=53;t.KEY_6=54;t.KEY_7=55;t.KEY_8=56;t.KEY_9=57;t.KEY_A=65;t.KEY_B=66;t.KEY_C=67;t.KEY_D=68;t.KEY_E=69;t.KEY_F=70;t.KEY_G=71;t.KEY_H=72;t.KEY_I=73;t.KEY_J=74;t.KEY_K=75;t.KEY_L=76;t.KEY_M=77;t.KEY_N=78;t.KEY_O=79;t.KEY_P=80;t.KEY_Q=81;t.KEY_R=82;t.KEY_S=83;t.KEY_T=84;t.KEY_U=85;t.KEY_V=86;t.KEY_W=87;t.KEY_X=88;t.KEY_Y=89;t.KEY_Z=90;t.KEY_EQUAL=187;t.KEY_MINUS=189;var i=[17,18,16],c=[27,13,32,9,17,16],l={},u=function(e,t,n,o){var r="";return e&&(r+="Ctrl+"),t&&(r+="Alt+"),n&&(r+="Shift+"),r+=o>=48&&o<=90?String.fromCharCode(o):"["+o+"]"},s=function(e){var t=window.event?e.which:e.keyCode,n=e.ctrlKey,o=e.altKey,r=e.shiftKey;return{keyCode:t,ctrlKey:n,altKey:o,shiftKey:r,hasModifierKeys:n||o||r,keyString:u(n,o,r,t)}},d=function(){for(var e=0,t=Object.keys(l);e4&&function(e,t){if(!e.defaultPrevented){var n=e.target&&e.target.localName;if("input"!==n&&"textarea"!==n){var o=s(e),i=o.keyCode,u=o.ctrlKey,d=o.shiftKey;u||d||c.includes(i)||("keydown"!==t||l[i]?"keyup"===t&&l[i]&&(a.debug("passthrough",t,o),(0,r.callByond)("",{__keyup:i})):(a.debug("passthrough",t,o),(0,r.callByond)("",{__keydown:i})))}}}(e,t),function(e,t,n){if("keyup"===t){var o=s(e),r=o.ctrlKey,c=o.altKey,l=o.keyCode,u=o.hasModifierKeys,d=o.keyString;u&&!i.includes(l)&&(a.log(d),r&&c&&8===l&&setTimeout((function(){throw new Error("OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle fucko boingo! The code monkeys at our headquarters are working VEWY HAWD to fix this!")})),n({type:"hotKey",payload:o}))}}(e,t,n)},document.addEventListener("keydown",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keydown"),l[n]=!0})),document.addEventListener("keyup",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keyup"),l[n]=!1})),r.tridentVersion>4&&function(e){var t;document.addEventListener("focusout",(function(){t=setTimeout(e)})),document.addEventListener("focusin",(function(){clearTimeout(t)})),window.addEventListener("beforeunload",e)}((function(){d()})),function(e){return function(t){return e(t)}}};t.hotKeyReducer=function(e,t){var n=t.type,o=t.payload;if("hotKey"===n){var r=o.ctrlKey,a=o.altKey,i=o.keyCode;return r&&a&&187===i?Object.assign({},e,{showKitchenSink:!e.showKitchenSink}):e}return e}},function(e,t,n){"use strict";t.__esModule=!0,t.refocusLayout=void 0;var o=n(19);t.refocusLayout=function(){if(!(o.tridentVersion<=4)){var e=document.getElementById("Layout__content");e&&e.focus()}}},function(e,t,n){"use strict";t.__esModule=!0,t.toastReducer=t.showToast=t.Toast=void 0;var o,r=n(1),a=n(12),i=function(e){var t=e.content,n=e.children;return(0,r.createVNode)(1,"div","Layout__toast",[t,n],0)};t.Toast=i,i.defaultHooks=a.pureComponentHooks;t.showToast=function(e,t){o&&clearTimeout(o),o=setTimeout((function(){o=undefined,e({type:"hideToast"})}),5e3),e({type:"showToast",payload:{text:t}})};t.toastReducer=function(e,t){var n=t.type,o=t.payload;if("showToast"===n){var r=o.text;return Object.assign({},e,{toastText:r})}return"hideToast"===n?Object.assign({},e,{toastText:null}):e}},function(e,t,n){"use strict";var o;o=function(){return this}();try{o=o||new Function("return this")()}catch(r){"object"==typeof window&&(o=window)}e.exports=o},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(88);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(5),r=n(89),a=o["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=a},function(e,t,n){"use strict";var o=n(5),r=n(90),a=o.WeakMap;e.exports="function"==typeof a&&/native code/.test(r(a))},function(e,t,n){"use strict";var o=n(15),r=n(92),a=n(18),i=n(13);e.exports=function(e,t){for(var n=r(t),c=i.f,l=a.f,u=0;ul;)o(c,n=t[l++])&&(~a(u,n)||u.push(n));return u}},function(e,t,n){"use strict";var o=n(95);e.exports=o&&!Symbol.sham&&"symbol"==typeof Symbol()},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(8),i=n(62);e.exports=o?Object.defineProperties:function(e,t){a(e);for(var n,o=i(t),c=o.length,l=0;c>l;)r.f(e,n=o[l++],t[n]);return e}},function(e,t,n){"use strict";var o=n(35);e.exports=o("document","documentElement")},function(e,t,n){"use strict";var o=n(23),r=n(47).f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(e){try{return r(e)}catch(t){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?c(e):r(o(e))}},function(e,t,n){"use strict";var o=n(11);t.f=o},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10),i=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=a(n.length),l=r(e,c),u=r(t,c),s=arguments.length>2?arguments[2]:undefined,d=i((s===undefined?c:r(s,c))-u,c-l),p=1;for(u0;)u in n?n[l]=n[u]:delete n[l],l+=p,u+=p;return n}},function(e,t,n){"use strict";var o=n(52),r=n(10),a=n(48);e.exports=function i(e,t,n,c,l,u,s,d){for(var p,f=l,m=0,h=!!s&&a(s,d,3);m0&&o(p))f=i(e,t,p,r(p.length),f,u-1)-1;else{if(f>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[f]=p}f++}m++}return f}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e,t,n,r){try{return r?t(o(n)[0],n[1]):t(n)}catch(i){var a=e["return"];throw a!==undefined&&o(a.call(e)),i}}},function(e,t,n){"use strict";var o=n(23),r=n(44),a=n(65),i=n(34),c=n(101),l=i.set,u=i.getterFor("Array Iterator");e.exports=c(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:o(e),index:0,kind:t})}),(function(){var e=u(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?(e.target=undefined,{value:undefined,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var o,r,a,i=n(36),c=n(24),l=n(15),u=n(11),s=n(38),d=u("iterator"),p=!1;[].keys&&("next"in(a=[].keys())?(r=i(i(a)))!==Object.prototype&&(o=r):p=!0),o==undefined&&(o={}),s||l(o,d)||c(o,d,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:p}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var o=n(23),r=n(29),a=n(10),i=n(39),c=Math.min,l=[].lastIndexOf,u=!!l&&1/[1].lastIndexOf(1,-0)<0,s=i("lastIndexOf");e.exports=u||s?function(e){if(u)return l.apply(this,arguments)||0;var t=o(this),n=a(t.length),i=n-1;for(arguments.length>1&&(i=c(i,r(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:l},function(e,t,n){"use strict";var o=n(29),r=n(10);e.exports=function(e){if(e===undefined)return 0;var t=o(e),n=r(t);if(t!==n)throw RangeError("Wrong length or index");return n}},function(e,t,n){"use strict";var o=n(30),r=n(6),a=[].slice,i={},c=function(e,t,n){if(!(t in i)){for(var o=[],r=0;r1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),a(s.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),d&&o(s.prototype,"size",{get:function(){return f(this).size}}),s},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),a=h(o);u(e,t,(function(e,t){m(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=a(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),s(t)}}},function(e,t,n){"use strict";var o=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:o(1+e)}},function(e,t,n){"use strict";var o=n(6),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseInt,c=/^[+-]?0[Xx]/,l=8!==i(a+"08")||22!==i(a+"0x16");e.exports=l?function(e,t){var n=r(String(e));return i(n,t>>>0||(c.test(n)?16:10))}:i},function(e,t,n){"use strict";var o=n(9),r=n(62),a=n(23),i=n(71).f,c=function(e){return function(t){for(var n,c=a(t),l=r(c),u=l.length,s=0,d=[];u>s;)n=l[s++],o&&!i.call(c,n)||d.push(e?[n,c[n]]:c[n]);return d}};e.exports={entries:c(!0),values:c(!1)}},function(e,t,n){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){"use strict";var o=n(5);e.exports=o.Promise},function(e,t,n){"use strict";var o=n(73);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(o)},function(e,t,n){"use strict";var o,r,a,i,c,l,u,s,d=n(5),p=n(18).f,f=n(32),m=n(106).set,h=n(146),C=d.MutationObserver||d.WebKitMutationObserver,g=d.process,b=d.Promise,v="process"==f(g),N=p(d,"queueMicrotask"),V=N&&N.value;V||(o=function(){var e,t;for(v&&(e=g.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?i():a=undefined,n}}a=undefined,e&&e.enter()},v?i=function(){g.nextTick(o)}:C&&!h?(c=!0,l=document.createTextNode(""),new C(o).observe(l,{characterData:!0}),i=function(){l.data=c=!c}):b&&b.resolve?(u=b.resolve(undefined),s=u.then,i=function(){s.call(u,o)}):i=function(){m.call(d,o)}),e.exports=V||function(e){var t={fn:e,next:undefined};a&&(a.next=t),r||(r=t,i()),a=t}},function(e,t,n){"use strict";var o=n(8),r=n(6),a=n(149);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;var n=a.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var o=n(30),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},function(e,t,n){"use strict";var o=n(73);e.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o)},function(e,t,n){"use strict";var o=n(347);e.exports=function(e,t){var n=o(e);if(n%t)throw RangeError("Wrong offset");return n}},function(e,t,n){"use strict";var o=n(14),r=n(10),a=n(99),i=n(98),c=n(48),l=n(7).aTypedArrayConstructor;e.exports=function(e){var t,n,u,s,d,p,f=o(e),m=arguments.length,h=m>1?arguments[1]:undefined,C=h!==undefined,g=a(f);if(g!=undefined&&!i(g))for(p=(d=g.call(f)).next,f=[];!(s=p.call(d)).done;)f.push(s.value);for(C&&m>2&&(h=c(h,arguments[2],2)),n=r(f.length),u=new(l(this))(n),t=0;n>t;t++)u[t]=C?h(f[t],t):f[t];return u}},function(e,t,n){"use strict";var o=n(66),r=n(50).getWeakData,a=n(8),i=n(6),c=n(55),l=n(68),u=n(16),s=n(15),d=n(34),p=d.set,f=d.getterFor,m=u.find,h=u.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},v=function(e,t){return m(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=v(this,e);if(t)return t[1]},has:function(e){return!!v(this,e)},set:function(e,t){var n=v(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,u){var d=e((function(e,o){c(e,d,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[u],e,n)})),m=f(t),h=function(e,t,n){var o=m(e),i=r(a(t),!0);return!0===i?g(o).set(t,n):i[o.id]=n,e};return o(d.prototype,{"delete":function(e){var t=m(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&s(n,t.id)&&delete n[t.id]},has:function(e){var t=m(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&s(n,t.id)}}),o(d.prototype,n?{get:function(e){var t=m(this);if(i(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),d}}},function(e,t,n){"use strict";t.__esModule=!0,t.setupHotReloading=t.sendLogEntry=void 0;t.sendLogEntry=function(e,t){};t.setupHotReloading=function(){0}},function(e,t,n){"use strict";t.__esModule=!0,t.resizeStartHandler=t.dragStartHandler=t.setupDrag=void 0;var o,r,a,i,c,l=n(156),u=n(19),s=(0,n(51).createLogger)("drag"),d=!1,p=!1,f=[0,0],m=function(e){return(0,u.winget)(e,"pos").then((function(e){return[e.x,e.y]}))},h=function(e,t){return(0,u.winset)(e,"pos",t[0]+","+t[1])},C=function(e){var t,n,r,a;return regeneratorRuntime.async((function(i){for(;;)switch(i.prev=i.next){case 0:return s.log("setting up"),o=e.config.window,i.next=4,regeneratorRuntime.awrap(m(o));case 4:t=i.sent,f=[t[0]-window.screenLeft,t[1]-window.screenTop],n=g(t),r=n[0],a=n[1],r&&h(o,a),s.debug("current state",{ref:o,screenOffset:f});case 9:case"end":return i.stop()}}))};t.setupDrag=C;var g=function(e){var t=e[0],n=e[1],o=!1;return t<0?(t=0,o=!0):t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth,o=!0),n<0?(n=0,o=!0):n+window.innerHeight>window.screen.availHeight&&(n=window.screen.availHeight-window.innerHeight,o=!0),[o,[t,n]]};t.dragStartHandler=function(e){s.log("drag start"),d=!0,r=[window.screenLeft-e.screenX,window.screenTop-e.screenY],document.addEventListener("mousemove",v),document.addEventListener("mouseup",b),v(e)};var b=function y(e){s.log("drag end"),v(e),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",y),d=!1},v=function(e){d&&(e.preventDefault(),h(o,(0,l.vecAdd)([e.screenX,e.screenY],f,r)))};t.resizeStartHandler=function(e,t){return function(n){a=[e,t],s.log("resize start",a),p=!0,r=[window.screenLeft-n.screenX,window.screenTop-n.screenY],i=[window.innerWidth,window.innerHeight],document.addEventListener("mousemove",V),document.addEventListener("mouseup",N),V(n)}};var N=function _(e){s.log("resize end",c),V(e),document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",_),p=!1},V=function(e){p&&(e.preventDefault(),(c=(0,l.vecAdd)(i,(0,l.vecMultiply)(a,(0,l.vecAdd)([e.screenX,e.screenY],(0,l.vecInverse)([window.screenLeft,window.screenTop]),r,[1,1]))))[0]=Math.max(c[0],250),c[1]=Math.max(c[1],120),function(e,t){(0,u.winset)(e,"size",t[0]+","+t[1])}(o,c))}},function(e,t,n){"use strict";t.__esModule=!0,t.vecNormalize=t.vecLength=t.vecInverse=t.vecScale=t.vecDivide=t.vecMultiply=t.vecSubtract=t.vecAdd=t.vecCreate=void 0;var o=n(28);t.vecCreate=function(){for(var e=arguments.length,t=new Array(e),n=0;n35;return(0,o.createVNode)(1,"div",(0,r.classes)(["Tooltip",i&&"Tooltip--long",a&&"Tooltip--"+a]),null,1,{"data-tooltip":t})}},function(e,t,n){"use strict";t.__esModule=!0,t.Input=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={editing:!1},t.handleInput=function(e){var n=t.state.editing,o=t.props.onInput;n||t.setEditing(!0),o&&o(e,e.target.value)},t.handleFocus=function(e){t.state.editing||t.setEditing(!0)},t.handleBlur=function(e){var n=t.state.editing,o=t.props.onChange;n&&(t.setEditing(!1),o&&o(e,e.target.value))},t.handleKeyDown=function(e){var n=t.props,o=n.onInput,r=n.onChange,a=n.onEnter;return 13===e.keyCode?(t.setEditing(!1),r&&r(e,e.target.value),o&&o(e,e.target.value),a&&a(e,e.target.value),void(t.props.selfClear?e.target.value="":e.target.blur())):27===e.keyCode?(t.setEditing(!1),e.target.value=c(t.props.value),void e.target.blur()):void 0},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentDidMount=function(){var e=this.props.value,t=this.inputRef.current;t&&(t.value=c(e))},u.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,a=this.inputRef.current;a&&!n&&o!==r&&(a.value=c(r))},u.setEditing=function(e){this.setState({editing:e})},u.render=function(){var e=this.props,t=(e.selfClear,e.onInput,e.onChange,e.onEnter,e.value,e.maxLength),n=e.placeholder,c=i(e,["selfClear","onInput","onChange","onEnter","value","maxLength","placeholder"]),l=c.className,u=c.fluid,s=i(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Input",u&&"Input--fluid",l])},s,{children:[(0,o.createVNode)(1,"div","Input__baseline",".",16),(0,o.createVNode)(64,"input","Input__input",null,1,{placeholder:n,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,maxLength:t},null,this.inputRef)]})))},l}(o.Component);t.Input=l},function(e,t,n){"use strict";t.__esModule=!0,t.GridColumn=t.Grid=void 0;var o=n(1),r=n(162),a=n(12);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.children,n=i(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table,Object.assign({},n,{children:(0,o.createComponentVNode)(2,r.Table.Row,{children:t})})))};t.Grid=c,c.defaultHooks=a.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t,a=e.style,c=i(e,["size","style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table.Cell,Object.assign({style:Object.assign({width:n+"%"},a)},c)))};t.GridColumn=l,c.defaultHooks=a.pureComponentHooks,c.Column=l},function(e,t,n){"use strict";t.__esModule=!0,t.TableCell=t.TableRow=t.Table=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.collapsing,n=e.className,c=e.content,l=e.children,u=i(e,["collapsing","className","content","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"table",className:(0,r.classes)(["Table",t&&"Table--collapsing",n])},u,{children:(0,o.createVNode)(1,"tbody",null,[c,l],0)})))};t.Table=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.header,c=i(e,["className","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"tr",className:(0,r.classes)(["Table__row",n&&"Table__row--header",t])},c)))};t.TableRow=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.collapsing,c=e.header,l=i(e,["className","collapsing","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"td",className:(0,r.classes)(["Table__cell",n&&"Table__cell--collapsing",c&&"Table__cell--header",t])},l)))};t.TableCell=u,u.defaultHooks=r.pureComponentHooks,c.Row=l,c.Cell=u},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListDivider=t.LabeledListItem=t.LabeledList=void 0;var o=n(1),r=n(12),a=n(17),i=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=i,i.defaultHooks=r.pureComponentHooks;var c=function(e){var t=e.className,n=e.label,i=e.labelColor,c=void 0===i?"label":i,l=e.color,u=e.buttons,s=e.content,d=e.children;return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:c,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),content:n+":"}),(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:u?undefined:2,children:[s,d]}),u&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",u,0)],0)};t.LabeledListItem=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,null,1,{style:{"padding-bottom":(0,a.unit)(n)}}),2)};t.LabeledListDivider=l,l.defaultHooks=r.pureComponentHooks,i.Item=c,i.Divider=l},function(e,t,n){n(165),n(166),n(167),n(168),n(169),n(170),e.exports=n(171)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";n(172),n(173),n(174),n(175),n(176),n(177),n(178),n(179),n(180),n(181),n(182),n(183),n(184),n(185),n(186),n(187),n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(197),n(199),n(200),n(201),n(133),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(210),n(211),n(212),n(213),n(214),n(215),n(216),n(218),n(219),n(220),n(221),n(222),n(224),n(225),n(227),n(228),n(229),n(230),n(231),n(232),n(233),n(234),n(235),n(236),n(237),n(238),n(239),n(240),n(242),n(243),n(244),n(245),n(246),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(254),n(256),n(257),n(258),n(259),n(260),n(261),n(263),n(264),n(266),n(268),n(269),n(270),n(271),n(272),n(273),n(274),n(275),n(276),n(277),n(278),n(279),n(280),n(281),n(282),n(283),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(292),n(293),n(294),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(305),n(306),n(307),n(308),n(309),n(310),n(311),n(312),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(326),n(327),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),n(360),n(361),n(362),n(363),n(364),n(365),n(366),n(367),n(368),n(369),n(370),n(371),n(372),n(373),n(374),n(375),n(376),n(377),n(378),n(379),n(380),n(381),n(382),n(383),n(384),n(385);var o=n(1);n(387),n(388);var r=n(389),a=(n(154),n(3)),i=n(19),c=n(155),l=n(51),u=n(157),s=n(496),d=(0,l.createLogger)(),p=(0,s.createStore)(),f=document.getElementById("react-root"),m=!0,h=!1,C=function(){for(p.subscribe((function(){!function(){if(!h){0;try{var e=p.getState();if(m){if(d.log("initial render",e),!(0,u.getRoute)(e)){if(d.info("loading old tgui"),h=!0,window.update=window.initialize=function(){},i.tridentVersion<=4)return void setTimeout((function(){location.href="tgui-fallback.html?ref="+window.__ref__}),10);document.getElementById("data").textContent=JSON.stringify(e),(0,r.loadCSS)("v4shim.css"),(0,r.loadCSS)("tgui.css");var t=document.getElementsByTagName("head")[0],a=document.createElement("script");return a.type="text/javascript",a.src="tgui.js",void t.appendChild(a)}(0,c.setupDrag)(e)}var l=n(498).Layout,s=(0,o.createComponentVNode)(2,l,{state:e,dispatch:p.dispatch});(0,o.render)(s,f)}catch(C){d.error("rendering error",C)}m&&(m=!1)}}()})),window.update=window.initialize=function(e){var t=function(e){var t=function(e,t){return"object"==typeof t&&null!==t&&t.__number__?parseFloat(t.__number__):t};i.tridentVersion<=4&&(t=undefined);try{return JSON.parse(e,t)}catch(o){d.log(o),d.log("What we got:",e);var n=o&&o.message;throw new Error("JSON parsing error: "+n)}}(e);p.dispatch((0,a.backendUpdate)(t))};;){var e=window.__updateQueue__.shift();if(!e)break;window.update(e)}(0,r.loadCSS)("font-awesome.css")};i.tridentVersion<=4&&"loading"===document.readyState?document.addEventListener("DOMContentLoaded",C):C()},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(35),i=n(38),c=n(9),l=n(95),u=n(125),s=n(4),d=n(15),p=n(52),f=n(6),m=n(8),h=n(14),C=n(23),g=n(33),b=n(46),v=n(42),N=n(62),V=n(47),y=n(128),_=n(94),x=n(18),k=n(13),w=n(71),L=n(24),B=n(22),S=n(91),I=n(72),T=n(59),A=n(58),E=n(11),P=n(129),O=n(25),M=n(43),R=n(34),F=n(16).forEach,D=I("hidden"),j=E("toPrimitive"),z=R.set,H=R.getterFor("Symbol"),G=Object.prototype,U=r.Symbol,K=a("JSON","stringify"),Y=x.f,q=k.f,W=y.f,$=w.f,Q=S("symbols"),X=S("op-symbols"),J=S("string-to-symbol-registry"),Z=S("symbol-to-string-registry"),ee=S("wks"),te=r.QObject,ne=!te||!te.prototype||!te.prototype.findChild,oe=c&&s((function(){return 7!=v(q({},"a",{get:function(){return q(this,"a",{value:7}).a}})).a}))?function(e,t,n){var o=Y(G,t);o&&delete G[t],q(e,t,n),o&&e!==G&&q(G,t,o)}:q,re=function(e,t){var n=Q[e]=v(U.prototype);return z(n,{type:"Symbol",tag:e,description:t}),c||(n.description=t),n},ae=l&&"symbol"==typeof U.iterator?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof U},ie=function(e,t,n){e===G&&ie(X,t,n),m(e);var o=g(t,!0);return m(n),d(Q,o)?(n.enumerable?(d(e,D)&&e[D][o]&&(e[D][o]=!1),n=v(n,{enumerable:b(0,!1)})):(d(e,D)||q(e,D,b(1,{})),e[D][o]=!0),oe(e,o,n)):q(e,o,n)},ce=function(e,t){m(e);var n=C(t),o=N(n).concat(pe(n));return F(o,(function(t){c&&!ue.call(n,t)||ie(e,t,n[t])})),e},le=function(e,t){return t===undefined?v(e):ce(v(e),t)},ue=function(e){var t=g(e,!0),n=$.call(this,t);return!(this===G&&d(Q,t)&&!d(X,t))&&(!(n||!d(this,t)||!d(Q,t)||d(this,D)&&this[D][t])||n)},se=function(e,t){var n=C(e),o=g(t,!0);if(n!==G||!d(Q,o)||d(X,o)){var r=Y(n,o);return!r||!d(Q,o)||d(n,D)&&n[D][o]||(r.enumerable=!0),r}},de=function(e){var t=W(C(e)),n=[];return F(t,(function(e){d(Q,e)||d(T,e)||n.push(e)})),n},pe=function(e){var t=e===G,n=W(t?X:C(e)),o=[];return F(n,(function(e){!d(Q,e)||t&&!d(G,e)||o.push(Q[e])})),o};(l||(B((U=function(){if(this instanceof U)throw TypeError("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?String(arguments[0]):undefined,t=A(e),n=function o(e){this===G&&o.call(X,e),d(this,D)&&d(this[D],t)&&(this[D][t]=!1),oe(this,t,b(1,e))};return c&&ne&&oe(G,t,{configurable:!0,set:n}),re(t,e)}).prototype,"toString",(function(){return H(this).tag})),w.f=ue,k.f=ie,x.f=se,V.f=y.f=de,_.f=pe,c&&(q(U.prototype,"description",{configurable:!0,get:function(){return H(this).description}}),i||B(G,"propertyIsEnumerable",ue,{unsafe:!0}))),u||(P.f=function(e){return re(E(e),e)}),o({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:U}),F(N(ee),(function(e){O(e)})),o({target:"Symbol",stat:!0,forced:!l},{"for":function(e){var t=String(e);if(d(J,t))return J[t];var n=U(t);return J[t]=n,Z[n]=t,n},keyFor:function(e){if(!ae(e))throw TypeError(e+" is not a symbol");if(d(Z,e))return Z[e]},useSetter:function(){ne=!0},useSimple:function(){ne=!1}}),o({target:"Object",stat:!0,forced:!l,sham:!c},{create:le,defineProperty:ie,defineProperties:ce,getOwnPropertyDescriptor:se}),o({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:de,getOwnPropertySymbols:pe}),o({target:"Object",stat:!0,forced:s((function(){_.f(1)}))},{getOwnPropertySymbols:function(e){return _.f(h(e))}}),K)&&o({target:"JSON",stat:!0,forced:!l||s((function(){var e=U();return"[null]"!=K([e])||"{}"!=K({a:e})||"{}"!=K(Object(e))}))},{stringify:function(e,t,n){for(var o,r=[e],a=1;arguments.length>a;)r.push(arguments[a++]);if(o=t,(f(t)||e!==undefined)&&!ae(e))return p(t)||(t=function(e,t){if("function"==typeof o&&(t=o.call(this,e,t)),!ae(t))return t}),r[1]=t,K.apply(null,r)}});U.prototype[j]||L(U.prototype,j,U.prototype.valueOf),M(U,"Symbol"),T[D]=!0},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(5),i=n(15),c=n(6),l=n(13).f,u=n(122),s=a.Symbol;if(r&&"function"==typeof s&&(!("description"in s.prototype)||s().description!==undefined)){var d={},p=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:String(arguments[0]),t=this instanceof p?new s(e):e===undefined?s():s(e);return""===e&&(d[t]=!0),t};u(p,s);var f=p.prototype=s.prototype;f.constructor=p;var m=f.toString,h="Symbol(test)"==String(s("test")),C=/^Symbol\((.*)\)[^)]+$/;l(f,"description",{configurable:!0,get:function(){var e=c(this)?this.valueOf():this,t=m.call(e);if(i(d,e))return"";var n=h?t.slice(7,-1):t.replace(C,"$1");return""===n?undefined:n}}),o({global:!0,forced:!0},{Symbol:p})}},function(e,t,n){"use strict";n(25)("asyncIterator")},function(e,t,n){"use strict";n(25)("hasInstance")},function(e,t,n){"use strict";n(25)("isConcatSpreadable")},function(e,t,n){"use strict";n(25)("iterator")},function(e,t,n){"use strict";n(25)("match")},function(e,t,n){"use strict";n(25)("replace")},function(e,t,n){"use strict";n(25)("search")},function(e,t,n){"use strict";n(25)("species")},function(e,t,n){"use strict";n(25)("split")},function(e,t,n){"use strict";n(25)("toPrimitive")},function(e,t,n){"use strict";n(25)("toStringTag")},function(e,t,n){"use strict";n(25)("unscopables")},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(52),i=n(6),c=n(14),l=n(10),u=n(49),s=n(63),d=n(64),p=n(11),f=n(96),m=p("isConcatSpreadable"),h=9007199254740991,C="Maximum allowed index exceeded",g=f>=51||!r((function(){var e=[];return e[m]=!1,e.concat()[0]!==e})),b=d("concat"),v=function(e){if(!i(e))return!1;var t=e[m];return t!==undefined?!!t:a(e)};o({target:"Array",proto:!0,forced:!g||!b},{concat:function(e){var t,n,o,r,a,i=c(this),d=s(i,0),p=0;for(t=-1,o=arguments.length;th)throw TypeError(C);for(n=0;n=h)throw TypeError(C);u(d,p++,a)}return d.length=p,d}})},function(e,t,n){"use strict";var o=n(0),r=n(130),a=n(44);o({target:"Array",proto:!0},{copyWithin:r}),a("copyWithin")},function(e,t,n){"use strict";var o=n(0),r=n(16).every;o({target:"Array",proto:!0,forced:n(39)("every")},{every:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(97),a=n(44);o({target:"Array",proto:!0},{fill:r}),a("fill")},function(e,t,n){"use strict";var o=n(0),r=n(16).filter,a=n(4),i=n(64)("filter"),c=i&&!a((function(){[].filter.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(16).find,a=n(44),i=!0;"find"in[]&&Array(1).find((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("find")},function(e,t,n){"use strict";var o=n(0),r=n(16).findIndex,a=n(44),i=!0;"findIndex"in[]&&Array(1).findIndex((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{findIndex:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("findIndex")},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(29),l=n(63);o({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=a(this),n=i(t.length),o=l(t,0);return o.length=r(o,t,t,n,0,e===undefined?1:c(e)),o}})},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(30),l=n(63);o({target:"Array",proto:!0},{flatMap:function(e){var t,n=a(this),o=i(n.length);return c(e),(t=l(n,0)).length=r(t,n,n,o,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},function(e,t,n){"use strict";var o=n(0),r=n(196);o({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var o=n(16).forEach,r=n(39);e.exports=r("forEach")?function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}:[].forEach},function(e,t,n){"use strict";var o=n(0),r=n(198);o({target:"Array",stat:!0,forced:!n(75)((function(e){Array.from(e)}))},{from:r})},function(e,t,n){"use strict";var o=n(48),r=n(14),a=n(132),i=n(98),c=n(10),l=n(49),u=n(99);e.exports=function(e){var t,n,s,d,p,f=r(e),m="function"==typeof this?this:Array,h=arguments.length,C=h>1?arguments[1]:undefined,g=C!==undefined,b=0,v=u(f);if(g&&(C=o(C,h>2?arguments[2]:undefined,2)),v==undefined||m==Array&&i(v))for(n=new m(t=c(f.length));t>b;b++)l(n,b,g?C(f[b],b):f[b]);else for(p=(d=v.call(f)).next,n=new m;!(s=p.call(d)).done;b++)l(n,b,g?a(d,C,[s.value,b],!0):s.value);return n.length=b,n}},function(e,t,n){"use strict";var o=n(0),r=n(60).includes,a=n(44);o({target:"Array",proto:!0},{includes:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("includes")},function(e,t,n){"use strict";var o=n(0),r=n(60).indexOf,a=n(39),i=[].indexOf,c=!!i&&1/[1].indexOf(1,-0)<0,l=a("indexOf");o({target:"Array",proto:!0,forced:c||l},{indexOf:function(e){return c?i.apply(this,arguments)||0:r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";n(0)({target:"Array",stat:!0},{isArray:n(52)})},function(e,t,n){"use strict";var o=n(134).IteratorPrototype,r=n(42),a=n(46),i=n(43),c=n(65),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(o,{next:a(1,n)}),i(e,u,!1,!0),c[u]=l,e}},function(e,t,n){"use strict";var o=n(0),r=n(57),a=n(23),i=n(39),c=[].join,l=r!=Object,u=i("join",",");o({target:"Array",proto:!0,forced:l||u},{join:function(e){return c.call(a(this),e===undefined?",":e)}})},function(e,t,n){"use strict";var o=n(0),r=n(136);o({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(e,t,n){"use strict";var o=n(0),r=n(16).map,a=n(4),i=n(64)("map"),c=i&&!a((function(){[].map.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{map:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(49);o({target:"Array",stat:!0,forced:r((function(){function e(){}return!(Array.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)a(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(0),r=n(76).left;o({target:"Array",proto:!0,forced:n(39)("reduce")},{reduce:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(76).right;o({target:"Array",proto:!0,forced:n(39)("reduceRight")},{reduceRight:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(52),i=n(41),c=n(10),l=n(23),u=n(49),s=n(64),d=n(11)("species"),p=[].slice,f=Math.max;o({target:"Array",proto:!0,forced:!s("slice")},{slice:function(e,t){var n,o,s,m=l(this),h=c(m.length),C=i(e,h),g=i(t===undefined?h:t,h);if(a(m)&&("function"!=typeof(n=m.constructor)||n!==Array&&!a(n.prototype)?r(n)&&null===(n=n[d])&&(n=undefined):n=undefined,n===Array||n===undefined))return p.call(m,C,g);for(o=new(n===undefined?Array:n)(f(g-C,0)),s=0;C1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(30),a=n(14),i=n(4),c=n(39),l=[],u=l.sort,s=i((function(){l.sort(undefined)})),d=i((function(){l.sort(null)})),p=c("sort");o({target:"Array",proto:!0,forced:s||!d||p},{sort:function(e){return e===undefined?u.call(a(this)):u.call(a(this),r(e))}})},function(e,t,n){"use strict";n(54)("Array")},function(e,t,n){"use strict";var o=n(0),r=n(41),a=n(29),i=n(10),c=n(14),l=n(63),u=n(49),s=n(64),d=Math.max,p=Math.min,f=9007199254740991,m="Maximum allowed length exceeded";o({target:"Array",proto:!0,forced:!s("splice")},{splice:function(e,t){var n,o,s,h,C,g,b=c(this),v=i(b.length),N=r(e,v),V=arguments.length;if(0===V?n=o=0:1===V?(n=0,o=v-N):(n=V-2,o=p(d(a(t),0),v-N)),v+n-o>f)throw TypeError(m);for(s=l(b,o),h=0;hv-o+n;h--)delete b[h-1]}else if(n>o)for(h=v-o;h>N;h--)g=h+n-1,(C=h+o-1)in b?b[g]=b[C]:delete b[g];for(h=0;h>1,h=23===t?r(2,-24)-r(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=o(e))!=e||e===1/0?(u=e!=e?1:0,l=f):(l=a(i(e)/c),e*(s=r(2,-l))<1&&(l--,s*=2),(e+=l+m>=1?h/s:h*r(2,1-m))*s>=2&&(l++,s/=2),l+m>=f?(u=0,l=f):l+m>=1?(u=(e*s-1)*r(2,t),l+=m):(u=e*r(2,m-1)*r(2,t),l=0));t>=8;d[g++]=255&u,u/=256,t-=8);for(l=l<0;d[g++]=255&l,l/=256,p-=8);return d[--g]|=128*C,d},unpack:function(e,t){var n,o=e.length,a=8*o-t-1,i=(1<>1,l=a-7,u=o-1,s=e[u--],d=127&s;for(s>>=7;l>0;d=256*d+e[u],u--,l-=8);for(n=d&(1<<-l)-1,d>>=-l,l+=t;l>0;n=256*n+e[u],u--,l-=8);if(0===d)d=1-c;else{if(d===i)return n?NaN:s?-1/0:1/0;n+=r(2,t),d-=c}return(s?-1:1)*n*r(2,d-t)}}},function(e,t,n){"use strict";var o=n(0),r=n(7);o({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(77),i=n(8),c=n(41),l=n(10),u=n(45),s=a.ArrayBuffer,d=a.DataView,p=s.prototype.slice;o({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r((function(){return!new s(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(p!==undefined&&t===undefined)return p.call(i(this),e);for(var n=i(this).byteLength,o=c(e,n),r=c(t===undefined?n:t,n),a=new(u(this,s))(l(r-o)),f=new d(this),m=new d(a),h=0;o9999?"+":"";return n+r(a(e),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(t,3,0)+"Z"}:l},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(33);o({target:"Date",proto:!0,forced:r((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(e){var t=a(this),n=i(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){"use strict";var o=n(24),r=n(226),a=n(11)("toPrimitive"),i=Date.prototype;a in i||o(i,a,r)},function(e,t,n){"use strict";var o=n(8),r=n(33);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!==e)}},function(e,t,n){"use strict";var o=n(22),r=Date.prototype,a="Invalid Date",i=r.toString,c=r.getTime;new Date(NaN)+""!=a&&o(r,"toString",(function(){var e=c.call(this);return e==e?i.call(this):a}))},function(e,t,n){"use strict";n(0)({target:"Function",proto:!0},{bind:n(138)})},function(e,t,n){"use strict";var o=n(6),r=n(13),a=n(36),i=n(11)("hasInstance"),c=Function.prototype;i in c||r.f(c,i,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=a(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){"use strict";var o=n(9),r=n(13).f,a=Function.prototype,i=a.toString,c=/^\s*function ([^ (]*)/;!o||"name"in a||r(a,"name",{configurable:!0,get:function(){try{return i.call(this).match(c)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(5);n(43)(o.JSON,"JSON",!0)},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(140),a=Math.acosh,i=Math.log,c=Math.sqrt,l=Math.LN2;o({target:"Math",stat:!0,forced:!a||710!=Math.floor(a(Number.MAX_VALUE))||a(Infinity)!=Infinity},{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?i(e)+l:r(e-1+c(e-1)*c(e+1))}})},function(e,t,n){"use strict";var o=n(0),r=Math.asinh,a=Math.log,i=Math.sqrt;o({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function c(e){return isFinite(e=+e)&&0!=e?e<0?-c(-e):a(e+i(e*e+1)):e}})},function(e,t,n){"use strict";var o=n(0),r=Math.atanh,a=Math.log;o({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(e){return 0==(e=+e)?e:a((1+e)/(1-e))/2}})},function(e,t,n){"use strict";var o=n(0),r=n(105),a=Math.abs,i=Math.pow;o({target:"Math",stat:!0},{cbrt:function(e){return r(e=+e)*i(a(e),1/3)}})},function(e,t,n){"use strict";var o=n(0),r=Math.floor,a=Math.log,i=Math.LOG2E;o({target:"Math",stat:!0},{clz32:function(e){return(e>>>=0)?31-r(a(e+.5)*i):32}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.cosh,i=Math.abs,c=Math.E;o({target:"Math",stat:!0,forced:!a||a(710)===Infinity},{cosh:function(e){var t=r(i(e)-1)+1;return(t+1/(t*c*c))*(c/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80);o({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{fround:n(241)})},function(e,t,n){"use strict";var o=n(105),r=Math.abs,a=Math.pow,i=a(2,-52),c=a(2,-23),l=a(2,127)*(2-c),u=a(2,-126),s=function(e){return e+1/i-1/i};e.exports=Math.fround||function(e){var t,n,a=r(e),d=o(e);return al||n!=n?d*Infinity:d*n}},function(e,t,n){"use strict";var o=n(0),r=Math.hypot,a=Math.abs,i=Math.sqrt;o({target:"Math",stat:!0,forced:!!r&&r(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,o,r=0,c=0,l=arguments.length,u=0;c0?(o=n/u)*o:n;return u===Infinity?Infinity:u*i(r)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=Math.imul;o({target:"Math",stat:!0,forced:r((function(){return-5!=a(4294967295,5)||2!=a.length}))},{imul:function(e,t){var n=+e,o=+t,r=65535&n,a=65535&o;return 0|r*a+((65535&n>>>16)*a+r*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LOG10E;o({target:"Math",stat:!0},{log10:function(e){return r(e)*a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{log1p:n(140)})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LN2;o({target:"Math",stat:!0},{log2:function(e){return r(e)/a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{sign:n(105)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(80),i=Math.abs,c=Math.exp,l=Math.E;o({target:"Math",stat:!0,forced:r((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){return i(e=+e)<1?(a(e)-a(-e))/2:(c(e-1)-c(-e-1))*(l/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.exp;o({target:"Math",stat:!0},{tanh:function(e){var t=r(e=+e),n=r(-e);return t==Infinity?1:n==Infinity?-1:(t-n)/(a(e)+a(-e))}})},function(e,t,n){"use strict";n(43)(Math,"Math",!0)},function(e,t,n){"use strict";var o=n(0),r=Math.ceil,a=Math.floor;o({target:"Math",stat:!0},{trunc:function(e){return(e>0?a:r)(e)}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(22),c=n(15),l=n(32),u=n(79),s=n(33),d=n(4),p=n(42),f=n(47).f,m=n(18).f,h=n(13).f,C=n(56).trim,g="Number",b=r[g],v=b.prototype,N=l(p(v))==g,V=function(e){var t,n,o,r,a,i,c,l,u=s(e,!1);if("string"==typeof u&&u.length>2)if(43===(t=(u=C(u)).charCodeAt(0))||45===t){if(88===(n=u.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(u.charCodeAt(1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(i=(a=u.slice(2)).length,c=0;cr)return NaN;return parseInt(a,o)}return+u};if(a(g,!b(" 0o1")||!b("0b1")||b("+0x1"))){for(var y,_=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof _&&(N?d((function(){v.valueOf.call(n)})):l(n)!=g)?u(new b(V(t)),n,_):V(t)},x=o?f(b):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),k=0;x.length>k;k++)c(b,y=x[k])&&!c(_,y)&&h(_,y,m(b,y));_.prototype=v,v.constructor=_,i(r,g,_)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isFinite:n(255)})},function(e,t,n){"use strict";var o=n(5).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isInteger:n(141)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},function(e,t,n){"use strict";var o=n(0),r=n(141),a=Math.abs;o({target:"Number",stat:!0},{isSafeInteger:function(e){return r(e)&&a(e)<=9007199254740991}})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){"use strict";var o=n(0),r=n(262);o({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseFloat,c=1/i(a+"-0")!=-Infinity;e.exports=c?function(e){var t=r(String(e)),n=i(t);return 0===n&&"-"==t.charAt(0)?-0:n}:i},function(e,t,n){"use strict";var o=n(0),r=n(142);o({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o=n(0),r=n(29),a=n(265),i=n(104),c=n(4),l=1..toFixed,u=Math.floor,s=function p(e,t,n){return 0===t?n:t%2==1?p(e,t-1,n*e):p(e*e,t/2,n)},d=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t};o({target:"Number",proto:!0,forced:l&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!c((function(){l.call({})}))},{toFixed:function(e){var t,n,o,c,l=a(this),p=r(e),f=[0,0,0,0,0,0],m="",h="0",C=function(e,t){for(var n=-1,o=t;++n<6;)o+=e*f[n],f[n]=o%1e7,o=u(o/1e7)},g=function(e){for(var t=6,n=0;--t>=0;)n+=f[t],f[t]=u(n/e),n=n%e*1e7},b=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==f[e]){var n=String(f[e]);t=""===t?n:t+i.call("0",7-n.length)+n}return t};if(p<0||p>20)throw RangeError("Incorrect fraction digits");if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(m="-",l=-l),l>1e-21)if(n=(t=d(l*s(2,69,1))-69)<0?l*s(2,-t,1):l/s(2,t,1),n*=4503599627370496,(t=52-t)>0){for(C(0,n),o=p;o>=7;)C(1e7,0),o-=7;for(C(s(10,o,1),0),o=t-1;o>=23;)g(1<<23),o-=23;g(1<0?m+((c=h.length)<=p?"0."+i.call("0",p-c)+h:h.slice(0,c-p)+"."+h.slice(c-p)):m+h}})},function(e,t,n){"use strict";var o=n(32);e.exports=function(e){if("number"!=typeof e&&"Number"!=o(e))throw TypeError("Incorrect invocation");return+e}},function(e,t,n){"use strict";var o=n(0),r=n(267);o({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(62),i=n(94),c=n(71),l=n(14),u=n(57),s=Object.assign,d=Object.defineProperty;e.exports=!s||r((function(){if(o&&1!==s({b:1},s(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=s({},e)[n]||"abcdefghijklmnopqrst"!=a(s({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,s=1,d=i.f,p=c.f;r>s;)for(var f,m=u(arguments[s++]),h=d?a(m).concat(d(m)):a(m),C=h.length,g=0;C>g;)f=h[g++],o&&!p.call(m,f)||(n[f]=m[f]);return n}:s},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0,sham:!n(9)},{create:n(42)})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(30),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineGetter__:function(e,t){l.f(i(this),e,{get:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(126)})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(13).f})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(30),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineSetter__:function(e,t){l.f(i(this),e,{set:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(143).entries;o({target:"Object",stat:!0},{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(67),a=n(4),i=n(6),c=n(50).onFreeze,l=Object.freeze;o({target:"Object",stat:!0,forced:a((function(){l(1)})),sham:!r},{freeze:function(e){return l&&i(e)?l(c(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(68),a=n(49);o({target:"Object",stat:!0},{fromEntries:function(e){var t={};return r(e,(function(e,n){a(t,e,n)}),undefined,!0),t}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(23),i=n(18).f,c=n(9),l=r((function(){i(1)}));o({target:"Object",stat:!0,forced:!c||l,sham:!c},{getOwnPropertyDescriptor:function(e,t){return i(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(92),i=n(23),c=n(18),l=n(49);o({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(e){for(var t,n,o=i(e),r=c.f,u=a(o),s={},d=0;u.length>d;)(n=r(o,t=u[d++]))!==undefined&&l(s,t,n);return s}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(128).f;o({target:"Object",stat:!0,forced:r((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:a})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(36),c=n(102);o({target:"Object",stat:!0,forced:r((function(){i(1)})),sham:!c},{getPrototypeOf:function(e){return i(a(e))}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{is:n(144)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isExtensible;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isExtensible:function(e){return!!a(e)&&(!i||i(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isFrozen;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isFrozen:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isSealed;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isSealed:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(14),a=n(62);o({target:"Object",stat:!0,forced:n(4)((function(){a(1)}))},{keys:function(e){return a(r(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupGetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.get}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupSetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.set}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.preventExtensions;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{preventExtensions:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.seal;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{seal:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{setPrototypeOf:n(53)})},function(e,t,n){"use strict";var o=n(100),r=n(22),a=n(291);o||r(Object.prototype,"toString",a,{unsafe:!0})},function(e,t,n){"use strict";var o=n(100),r=n(74);e.exports=o?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var o=n(0),r=n(143).values;o({target:"Object",stat:!0},{values:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(142);o({global:!0,forced:parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o,r,a,i,c=n(0),l=n(38),u=n(5),s=n(35),d=n(145),p=n(22),f=n(66),m=n(43),h=n(54),C=n(6),g=n(30),b=n(55),v=n(32),N=n(90),V=n(68),y=n(75),_=n(45),x=n(106).set,k=n(147),w=n(148),L=n(295),B=n(149),S=n(296),I=n(34),T=n(61),A=n(11),E=n(96),P=A("species"),O="Promise",M=I.get,R=I.set,F=I.getterFor(O),D=d,j=u.TypeError,z=u.document,H=u.process,G=s("fetch"),U=B.f,K=U,Y="process"==v(H),q=!!(z&&z.createEvent&&u.dispatchEvent),W=0,$=T(O,(function(){if(!(N(D)!==String(D))){if(66===E)return!0;if(!Y&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!D.prototype["finally"])return!0;if(E>=51&&/native code/.test(D))return!1;var e=D.resolve(1),t=function(e){e((function(){}),(function(){}))};return(e.constructor={})[P]=t,!(e.then((function(){}))instanceof t)})),Q=$||!y((function(e){D.all(e)["catch"]((function(){}))})),X=function(e){var t;return!(!C(e)||"function"!=typeof(t=e.then))&&t},J=function(e,t,n){if(!t.notified){t.notified=!0;var o=t.reactions;k((function(){for(var r=t.value,a=1==t.state,i=0;o.length>i;){var c,l,u,s=o[i++],d=a?s.ok:s.fail,p=s.resolve,f=s.reject,m=s.domain;try{d?(a||(2===t.rejection&&ne(e,t),t.rejection=1),!0===d?c=r:(m&&m.enter(),c=d(r),m&&(m.exit(),u=!0)),c===s.promise?f(j("Promise-chain cycle")):(l=X(c))?l.call(c,p,f):p(c)):f(r)}catch(h){m&&!u&&m.exit(),f(h)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&ee(e,t)}))}},Z=function(e,t,n){var o,r;q?((o=z.createEvent("Event")).promise=t,o.reason=n,o.initEvent(e,!1,!0),u.dispatchEvent(o)):o={promise:t,reason:n},(r=u["on"+e])?r(o):"unhandledrejection"===e&&L("Unhandled promise rejection",n)},ee=function(e,t){x.call(u,(function(){var n,o=t.value;if(te(t)&&(n=S((function(){Y?H.emit("unhandledRejection",o,e):Z("unhandledrejection",e,o)})),t.rejection=Y||te(t)?2:1,n.error))throw n.value}))},te=function(e){return 1!==e.rejection&&!e.parent},ne=function(e,t){x.call(u,(function(){Y?H.emit("rejectionHandled",e):Z("rejectionhandled",e,t.value)}))},oe=function(e,t,n,o){return function(r){e(t,n,r,o)}},re=function(e,t,n,o){t.done||(t.done=!0,o&&(t=o),t.value=n,t.state=2,J(e,t,!0))},ae=function ie(e,t,n,o){if(!t.done){t.done=!0,o&&(t=o);try{if(e===n)throw j("Promise can't be resolved itself");var r=X(n);r?k((function(){var o={done:!1};try{r.call(n,oe(ie,e,o,t),oe(re,e,o,t))}catch(a){re(e,o,a,t)}})):(t.value=n,t.state=1,J(e,t,!1))}catch(a){re(e,{done:!1},a,t)}}};$&&(D=function(e){b(this,D,O),g(e),o.call(this);var t=M(this);try{e(oe(ae,this,t),oe(re,this,t))}catch(n){re(this,t,n)}},(o=function(e){R(this,{type:O,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:W,value:undefined})}).prototype=f(D.prototype,{then:function(e,t){var n=F(this),o=U(_(this,D));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=Y?H.domain:undefined,n.parent=!0,n.reactions.push(o),n.state!=W&&J(this,n,!1),o.promise},"catch":function(e){return this.then(undefined,e)}}),r=function(){var e=new o,t=M(e);this.promise=e,this.resolve=oe(ae,e,t),this.reject=oe(re,e,t)},B.f=U=function(e){return e===D||e===a?new r(e):K(e)},l||"function"!=typeof d||(i=d.prototype.then,p(d.prototype,"then",(function(e,t){var n=this;return new D((function(e,t){i.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof G&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return w(D,G.apply(u,arguments))}}))),c({global:!0,wrap:!0,forced:$},{Promise:D}),m(D,O,!1,!0),h(O),a=s(O),c({target:O,stat:!0,forced:$},{reject:function(e){var t=U(this);return t.reject.call(undefined,e),t.promise}}),c({target:O,stat:!0,forced:l||$},{resolve:function(e){return w(l&&this===a?D:this,e)}}),c({target:O,stat:!0,forced:Q},{all:function(e){var t=this,n=U(t),o=n.resolve,r=n.reject,a=S((function(){var n=g(t.resolve),a=[],i=0,c=1;V(e,(function(e){var l=i++,u=!1;a.push(undefined),c++,n.call(t,e).then((function(e){u||(u=!0,a[l]=e,--c||o(a))}),r)})),--c||o(a)}));return a.error&&r(a.value),n.promise},race:function(e){var t=this,n=U(t),o=n.reject,r=S((function(){var r=g(t.resolve);V(e,(function(e){r.call(t,e).then(n.resolve,o)}))}));return r.error&&o(r.value),n.promise}})},function(e,t,n){"use strict";var o=n(5);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},function(e,t,n){"use strict";var o=n(0),r=n(38),a=n(145),i=n(4),c=n(35),l=n(45),u=n(148),s=n(22);o({target:"Promise",proto:!0,real:!0,forced:!!a&&i((function(){a.prototype["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=l(this,c("Promise")),n="function"==typeof e;return this.then(n?function(n){return u(t,e()).then((function(){return n}))}:e,n?function(n){return u(t,e()).then((function(){throw n}))}:e)}}),r||"function"!=typeof a||a.prototype["finally"]||s(a.prototype,"finally",c("Promise").prototype["finally"])},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(30),i=n(8),c=n(4),l=r("Reflect","apply"),u=Function.apply;o({target:"Reflect",stat:!0,forced:!c((function(){l((function(){}))}))},{apply:function(e,t,n){return a(e),i(n),l?l(e,t,n):u.call(e,t,n)}})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(30),i=n(8),c=n(6),l=n(42),u=n(138),s=n(4),d=r("Reflect","construct"),p=s((function(){function e(){}return!(d((function(){}),[],e)instanceof e)})),f=!s((function(){d((function(){}))})),m=p||f;o({target:"Reflect",stat:!0,forced:m,sham:m},{construct:function(e,t){a(e),i(t);var n=arguments.length<3?e:a(arguments[2]);if(f&&!p)return d(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(u.apply(e,o))}var r=n.prototype,s=l(c(r)?r:Object.prototype),m=Function.apply.call(e,s,t);return c(m)?m:s}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(33),c=n(13);o({target:"Reflect",stat:!0,forced:n(4)((function(){Reflect.defineProperty(c.f({},1,{value:1}),1,{value:2})})),sham:!r},{defineProperty:function(e,t,n){a(e);var o=i(t,!0);a(n);try{return c.f(e,o,n),!0}catch(r){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(18).f;o({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=a(r(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(8),i=n(15),c=n(18),l=n(36);o({target:"Reflect",stat:!0},{get:function u(e,t){var n,o,s=arguments.length<3?e:arguments[2];return a(e)===s?e[t]:(n=c.f(e,t))?i(n,"value")?n.value:n.get===undefined?undefined:n.get.call(s):r(o=l(e))?u(o,t,s):void 0}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(18);o({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(e,t){return i.f(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(36);o({target:"Reflect",stat:!0,sham:!n(102)},{getPrototypeOf:function(e){return a(r(e))}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=Object.isExtensible;o({target:"Reflect",stat:!0},{isExtensible:function(e){return r(e),!a||a(e)}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{ownKeys:n(92)})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(8);o({target:"Reflect",stat:!0,sham:!n(67)},{preventExtensions:function(e){a(e);try{var t=r("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(6),i=n(15),c=n(4),l=n(13),u=n(18),s=n(36),d=n(46);o({target:"Reflect",stat:!0,forced:c((function(){var e=l.f({},"a",{configurable:!0});return!1!==Reflect.set(s(e),"a",1,e)}))},{set:function p(e,t,n){var o,c,f=arguments.length<4?e:arguments[3],m=u.f(r(e),t);if(!m){if(a(c=s(e)))return p(c,t,n,f);m=d(0)}if(i(m,"value")){if(!1===m.writable||!a(f))return!1;if(o=u.f(f,t)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,l.f(f,t,o)}else l.f(f,t,d(0,n));return!0}return m.set!==undefined&&(m.set.call(f,n),!0)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(135),i=n(53);i&&o({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){r(e),a(t);try{return i(e,t),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(79),c=n(13).f,l=n(47).f,u=n(107),s=n(83),d=n(22),p=n(4),f=n(54),m=n(11)("match"),h=r.RegExp,C=h.prototype,g=/a/g,b=/a/g,v=new h(g)!==g;if(o&&a("RegExp",!v||p((function(){return b[m]=!1,h(g)!=g||h(b)==b||"/a/i"!=h(g,"i")})))){for(var N=function(e,t){var n=this instanceof N,o=u(e),r=t===undefined;return!n&&o&&e.constructor===N&&r?e:i(v?new h(o&&!r?e.source:e,t):h((o=e instanceof N)?e.source:e,o&&r?s.call(e):t),n?this:C,N)},V=function(e){e in N||c(N,e,{configurable:!0,get:function(){return h[e]},set:function(t){h[e]=t}})},y=l(h),_=0;y.length>_;)V(y[_++]);C.constructor=N,N.prototype=C,d(r,"RegExp",N)}f("RegExp")},function(e,t,n){"use strict";var o=n(0),r=n(84);o({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(83);o&&"g"!=/./g.flags&&r.f(RegExp.prototype,"flags",{configurable:!0,get:a})},function(e,t,n){"use strict";var o=n(22),r=n(8),a=n(4),i=n(83),c=RegExp.prototype,l=c.toString,u=a((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),s="toString"!=l.name;(u||s)&&o(RegExp.prototype,"toString",(function(){var e=r(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(n===undefined&&e instanceof RegExp&&!("flags"in c)?i.call(e):n)}),{unsafe:!0})},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(108).codeAt;o({target:"String",proto:!0},{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o,r=n(0),a=n(18).f,i=n(10),c=n(109),l=n(21),u=n(110),s=n(38),d="".endsWith,p=Math.min,f=u("endsWith");r({target:"String",proto:!0,forced:!!(s||f||(o=a(String.prototype,"endsWith"),!o||o.writable))&&!f},{endsWith:function(e){var t=String(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,o=i(t.length),r=n===undefined?o:p(i(n),o),a=String(e);return d?d.call(t,a,r):t.slice(r-a.length,r)===a}})},function(e,t,n){"use strict";var o=n(0),r=n(41),a=String.fromCharCode,i=String.fromCodePoint;o({target:"String",stat:!0,forced:!!i&&1!=i.length},{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,i=0;o>i;){if(t=+arguments[i++],r(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){"use strict";var o=n(0),r=n(109),a=n(21);o({target:"String",proto:!0,forced:!n(110)("includes")},{includes:function(e){return!!~String(a(this)).indexOf(r(e),arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(108).charAt,r=n(34),a=n(101),i=r.set,c=r.getterFor("String Iterator");a(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=c(this),n=t.string,r=t.index;return r>=n.length?{value:undefined,done:!0}:(e=o(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(10),i=n(21),c=n(111),l=n(86);o("match",1,(function(e,t,n){return[function(t){var n=i(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var i=r(e),u=String(this);if(!i.global)return l(i,u);var s=i.unicode;i.lastIndex=0;for(var d,p=[],f=0;null!==(d=l(i,u));){var m=String(d[0]);p[f]=m,""===m&&(i.lastIndex=c(u,a(i.lastIndex),s)),f++}return 0===f?null:p}]}))},function(e,t,n){"use strict";var o=n(0),r=n(103).end;o({target:"String",proto:!0,forced:n(150)},{padEnd:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(103).start;o({target:"String",proto:!0,forced:n(150)},{padStart:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(23),a=n(10);o({target:"String",stat:!0},{raw:function(e){for(var t=r(e.raw),n=a(t.length),o=arguments.length,i=[],c=0;n>c;)i.push(String(t[c++])),c]*>)/g,h=/\$([$&'`]|\d\d?)/g;o("replace",2,(function(e,t,n){return[function(n,o){var r=l(this),a=n==undefined?undefined:n[e];return a!==undefined?a.call(n,r,o):t.call(String(r),n,o)},function(e,a){var l=n(t,e,this,a);if(l.done)return l.value;var f=r(e),m=String(this),h="function"==typeof a;h||(a=String(a));var C=f.global;if(C){var g=f.unicode;f.lastIndex=0}for(var b=[];;){var v=s(f,m);if(null===v)break;if(b.push(v),!C)break;""===String(v[0])&&(f.lastIndex=u(m,i(f.lastIndex),g))}for(var N,V="",y=0,_=0;_=y&&(V+=m.slice(y,k)+I,y=k+x.length)}return V+m.slice(y)}];function o(e,n,o,r,i,c){var l=o+e.length,u=r.length,s=h;return i!==undefined&&(i=a(i),s=m),t.call(c,s,(function(t,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,o);case"'":return n.slice(l);case"<":c=i[a.slice(1,-1)];break;default:var s=+a;if(0===s)return t;if(s>u){var d=f(s/10);return 0===d?t:d<=u?r[d-1]===undefined?a.charAt(1):r[d-1]+a.charAt(1):t}c=r[s-1]}return c===undefined?"":c}))}}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(21),i=n(144),c=n(86);o("search",1,(function(e,t,n){return[function(t){var n=a(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var a=r(e),l=String(this),u=a.lastIndex;i(u,0)||(a.lastIndex=0);var s=c(a,l);return i(a.lastIndex,u)||(a.lastIndex=u),null===s?-1:s.index}]}))},function(e,t,n){"use strict";var o=n(85),r=n(107),a=n(8),i=n(21),c=n(45),l=n(111),u=n(10),s=n(86),d=n(84),p=n(4),f=[].push,m=Math.min,h=!p((function(){return!RegExp(4294967295,"y")}));o("split",2,(function(e,t,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var o=String(i(this)),a=n===undefined?4294967295:n>>>0;if(0===a)return[];if(e===undefined)return[o];if(!r(e))return t.call(o,e,a);for(var c,l,u,s=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),m=0,h=new RegExp(e.source,p+"g");(c=d.call(h,o))&&!((l=h.lastIndex)>m&&(s.push(o.slice(m,c.index)),c.length>1&&c.index=a));)h.lastIndex===c.index&&h.lastIndex++;return m===o.length?!u&&h.test("")||s.push(""):s.push(o.slice(m)),s.length>a?s.slice(0,a):s}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=i(this),a=t==undefined?undefined:t[e];return a!==undefined?a.call(t,r,n):o.call(String(r),t,n)},function(e,r){var i=n(o,e,this,r,o!==t);if(i.done)return i.value;var d=a(e),p=String(this),f=c(d,RegExp),C=d.unicode,g=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(h?"y":"g"),b=new f(h?d:"^(?:"+d.source+")",g),v=r===undefined?4294967295:r>>>0;if(0===v)return[];if(0===p.length)return null===s(b,p)?[p]:[];for(var N=0,V=0,y=[];V1?arguments[1]:undefined,t.length)),o=String(e);return d?d.call(t,o,n):t.slice(n,n+o.length)===o}})},function(e,t,n){"use strict";var o=n(0),r=n(56).trim;o({target:"String",proto:!0,forced:n(112)("trim")},{trim:function(){return r(this)}})},function(e,t,n){"use strict";var o=n(0),r=n(56).end,a=n(112)("trimEnd"),i=a?function(){return r(this)}:"".trimEnd;o({target:"String",proto:!0,forced:a},{trimEnd:i,trimRight:i})},function(e,t,n){"use strict";var o=n(0),r=n(56).start,a=n(112)("trimStart"),i=a?function(){return r(this)}:"".trimStart;o({target:"String",proto:!0,forced:a},{trimStart:i,trimLeft:i})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("anchor")},{anchor:function(e){return r(this,"a","name",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("big")},{big:function(){return r(this,"big","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("blink")},{blink:function(){return r(this,"blink","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("bold")},{bold:function(){return r(this,"b","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("fontcolor")},{fontcolor:function(e){return r(this,"font","color",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("fontsize")},{fontsize:function(e){return r(this,"font","size",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("italics")},{italics:function(){return r(this,"i","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("link")},{link:function(e){return r(this,"a","href",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("small")},{small:function(){return r(this,"small","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("strike")},{strike:function(){return r(this,"strike","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("sub")},{sub:function(){return r(this,"sub","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(26);o({target:"String",proto:!0,forced:n(27)("sup")},{sup:function(){return r(this,"sup","","")}})},function(e,t,n){"use strict";n(40)("Float32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(29);e.exports=function(e){var t=o(e);if(t<0)throw RangeError("The argument can't be less than 0");return t}},function(e,t,n){"use strict";n(40)("Float64",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}),!0)},function(e,t,n){"use strict";n(40)("Uint16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(7),r=n(130),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return r.call(a(this),e,t,arguments.length>2?arguments[2]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).every,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("every",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(97),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("fill",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).filter,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("filter",(function(e){for(var t=r(i(this),e,arguments.length>1?arguments[1]:undefined),n=a(this,this.constructor),o=0,l=t.length,u=new(c(n))(l);l>o;)u[o]=t[o++];return u}))},function(e,t,n){"use strict";var o=n(7),r=n(16).find,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("find",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).findIndex,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("findIndex",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).forEach,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("forEach",(function(e){r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(113);(0,n(7).exportTypedArrayStaticMethod)("from",n(152),o)},function(e,t,n){"use strict";var o=n(7),r=n(60).includes,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("includes",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(60).indexOf,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("indexOf",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(133),i=n(11)("iterator"),c=o.Uint8Array,l=a.values,u=a.keys,s=a.entries,d=r.aTypedArray,p=r.exportTypedArrayMethod,f=c&&c.prototype[i],m=!!f&&("values"==f.name||f.name==undefined),h=function(){return l.call(d(this))};p("entries",(function(){return s.call(d(this))})),p("keys",(function(){return u.call(d(this))})),p("values",h,!m),p(i,h,!m)},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].join;a("join",(function(e){return i.apply(r(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(136),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("lastIndexOf",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).map,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("map",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(c(a(e,e.constructor)))(t)}))}))},function(e,t,n){"use strict";var o=n(7),r=n(113),a=o.aTypedArrayConstructor;(0,o.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(a(this))(t);t>e;)n[e]=arguments[e++];return n}),r)},function(e,t,n){"use strict";var o=n(7),r=n(76).left,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduce",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(76).right,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduceRight",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=Math.floor;a("reverse",(function(){for(var e,t=r(this).length,n=i(t/2),o=0;o1?arguments[1]:undefined,1),n=this.length,o=i(e),c=r(o.length),u=0;if(c+t>n)throw RangeError("Wrong length");for(;ua;)s[a]=n[a++];return s}),a((function(){new Int8Array(1).slice()})))},function(e,t,n){"use strict";var o=n(7),r=n(16).some,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("some",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].sort;a("sort",(function(e){return i.call(r(this),e)}))},function(e,t,n){"use strict";var o=n(7),r=n(10),a=n(41),i=n(45),c=o.aTypedArray;(0,o.exportTypedArrayMethod)("subarray",(function(e,t){var n=c(this),o=n.length,l=a(e,o);return new(i(n,n.constructor))(n.buffer,n.byteOffset+l*n.BYTES_PER_ELEMENT,r((t===undefined?o:a(t,o))-l))}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(4),i=o.Int8Array,c=r.aTypedArray,l=r.exportTypedArrayMethod,u=[].toLocaleString,s=[].slice,d=!!i&&a((function(){u.call(new i(1))}));l("toLocaleString",(function(){return u.apply(d?s.call(c(this)):c(this),arguments)}),a((function(){return[1,2].toLocaleString()!=new i([1,2]).toLocaleString()}))||!a((function(){i.prototype.toLocaleString.call([1,2])})))},function(e,t,n){"use strict";var o=n(7).exportTypedArrayMethod,r=n(4),a=n(5).Uint8Array,i=a&&a.prototype||{},c=[].toString,l=[].join;r((function(){c.call({})}))&&(c=function(){return l.call(this)});var u=i.toString!=c;o("toString",c,u)},function(e,t,n){"use strict";var o,r=n(5),a=n(66),i=n(50),c=n(78),l=n(153),u=n(6),s=n(34).enforce,d=n(121),p=!r.ActiveXObject&&"ActiveXObject"in r,f=Object.isExtensible,m=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},h=e.exports=c("WeakMap",m,l);if(d&&p){o=l.getConstructor(m,"WeakMap",!0),i.REQUIRED=!0;var C=h.prototype,g=C["delete"],b=C.has,v=C.get,N=C.set;a(C,{"delete":function(e){if(u(e)&&!f(e)){var t=s(this);return t.frozen||(t.frozen=new o),g.call(this,e)||t.frozen["delete"](e)}return g.call(this,e)},has:function(e){if(u(e)&&!f(e)){var t=s(this);return t.frozen||(t.frozen=new o),b.call(this,e)||t.frozen.has(e)}return b.call(this,e)},get:function(e){if(u(e)&&!f(e)){var t=s(this);return t.frozen||(t.frozen=new o),b.call(this,e)?v.call(this,e):t.frozen.get(e)}return v.call(this,e)},set:function(e,t){if(u(e)&&!f(e)){var n=s(this);n.frozen||(n.frozen=new o),b.call(this,e)?N.call(this,e,t):n.frozen.set(e,t)}else N.call(this,e,t);return this}})}},function(e,t,n){"use strict";n(78)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(153))},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(106);o({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:a.set,clearImmediate:a.clear})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(147),i=n(32),c=r.process,l="process"==i(c);o({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(e){var t=l&&c.domain;a(t?t.bind(e):e)}})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(73),i=[].slice,c=function(e){return function(t,n){var o=arguments.length>2,r=o?i.call(arguments,2):undefined;return e(o?function(){("function"==typeof t?t:Function(t)).apply(this,r)}:t,n)}};o({global:!0,bind:!0,forced:/MSIE .\./.test(a)},{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},function(e,t,n){"use strict";t.__esModule=!0,t._CI=Ie,t._HI=D,t._M=Te,t._MCCC=Oe,t._ME=Ee,t._MFCC=Me,t._MP=Be,t._MR=Ne,t.__render=ze,t.createComponentVNode=function(e,t,n,o,r){var i=new T(1,null,null,e=function(e,t){if(12&e)return e;if(t.prototype&&t.prototype.render)return 4;if(t.render)return 32776;return 8}(e,t),o,function(e,t,n){var o=(32768&e?t.render:t).defaultProps;if(a(o))return n;if(a(n))return s(o,null);return B(n,o)}(e,t,n),function(e,t,n){if(4&e)return n;var o=(32768&e?t.render:t).defaultHooks;if(a(o))return n;if(a(n))return o;return B(n,o)}(e,t,r),t);k.createVNode&&k.createVNode(i);return i},t.createFragment=P,t.createPortal=function(e,t){var n=D(e);return A(1024,1024,null,n,0,null,n.key,t)},t.createRef=function(){return{current:null}},t.createRenderer=function(e){return function(t,n,o,r){e||(e=t),He(n,e,o,r)}},t.createTextVNode=E,t.createVNode=A,t.directClone=O,t.findDOMfromVNode=N,t.forwardRef=function(e){return{render:e}},t.getFlagsForElementVnode=function(e){switch(e){case"svg":return 32;case"input":return 64;case"select":return 256;case"textarea":return 128;case f:return 8192;default:return 1}},t.linkEvent=function(e,t){if(c(t))return{data:e,event:t};return null},t.normalizeProps=function(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&a(e.children)&&F(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=undefined)),void 0!==t.key&&(e.key=t.key,t.key=undefined),void 0!==t.ref&&(e.ref=8&n?s(e.ref,t.ref):t.ref,t.ref=undefined)}return e},t.render=He,t.rerender=We,t.version=t.options=t.Fragment=t.EMPTY_OBJ=t.Component=void 0;var o=Array.isArray;function r(e){var t=typeof e;return"string"===t||"number"===t}function a(e){return null==e}function i(e){return null===e||!1===e||!0===e||void 0===e}function c(e){return"function"==typeof e}function l(e){return"string"==typeof e}function u(e){return null===e}function s(e,t){var n={};if(e)for(var o in e)n[o]=e[o];if(t)for(var r in t)n[r]=t[r];return n}function d(e){return!u(e)&&"object"==typeof e}var p={};t.EMPTY_OBJ=p;var f="$F";function m(e){return e.substr(2).toLowerCase()}function h(e,t){e.appendChild(t)}function C(e,t,n){u(n)?h(e,t):e.insertBefore(t,n)}function g(e,t){e.removeChild(t)}function b(e){for(var t;(t=e.shift())!==undefined;)t()}function v(e,t,n){var o=e.children;return 4&n?o.$LI:8192&n?2===e.childFlags?o:o[t?0:o.length-1]:o}function N(e,t){for(var n;e;){if(2033&(n=e.flags))return e.dom;e=v(e,t,n)}return null}function V(e,t){do{var n=e.flags;if(2033&n)return void g(t,e.dom);var o=e.children;if(4&n&&(e=o.$LI),8&n&&(e=o),8192&n){if(2!==e.childFlags){for(var r=0,a=o.length;r0,m=u(p),h=l(p)&&p[0]===I;f||m||h?(n=n||t.slice(0,s),(f||h)&&(d=O(d)),(m||h)&&(d.key=I+s),n.push(d)):n&&n.push(d),d.flags|=65536}}a=0===(n=n||t).length?1:8}else(n=t).flags|=65536,81920&t.flags&&(n=O(t)),a=2;return e.children=n,e.childFlags=a,e}function D(e){return i(e)||r(e)?E(e,null):o(e)?P(e,0,null):16384&e.flags?O(e):e}var j="http://www.w3.org/1999/xlink",z="http://www.w3.org/XML/1998/namespace",H={"xlink:actuate":j,"xlink:arcrole":j,"xlink:href":j,"xlink:role":j,"xlink:show":j,"xlink:title":j,"xlink:type":j,"xml:base":z,"xml:lang":z,"xml:space":z};function G(e){return{onClick:e,onDblClick:e,onFocusIn:e,onFocusOut:e,onKeyDown:e,onKeyPress:e,onKeyUp:e,onMouseDown:e,onMouseMove:e,onMouseUp:e,onTouchEnd:e,onTouchMove:e,onTouchStart:e}}var U=G(0),K=G(null),Y=G(!0);function q(e,t){var n=t.$EV;return n||(n=t.$EV=G(null)),n[e]||1==++U[e]&&(K[e]=function(e){var t="onClick"===e||"onDblClick"===e?function(e){return function(t){0===t.button?$(t,!0,e,Z(t)):t.stopPropagation()}}(e):function(e){return function(t){$(t,!1,e,Z(t))}}(e);return document.addEventListener(m(e),t),t}(e)),n}function W(e,t){var n=t.$EV;n&&n[e]&&(0==--U[e]&&(document.removeEventListener(m(e),K[e]),K[e]=null),n[e]=null)}function $(e,t,n,o){var r=function(e){return c(e.composedPath)?e.composedPath()[0]:e.target}(e);do{if(t&&r.disabled)return;var a=r.$EV;if(a){var i=a[n];if(i&&(o.dom=r,i.event?i.event(i.data,e):i(e),e.cancelBubble))return}r=r.parentNode}while(!u(r))}function Q(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function X(){return this.defaultPrevented}function J(){return this.cancelBubble}function Z(e){var t={dom:document};return e.isDefaultPrevented=X,e.isPropagationStopped=J,e.stopPropagation=Q,Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),t}function ee(e,t,n){if(e[t]){var o=e[t];o.event?o.event(o.data,n):o(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function te(e,t){var n=function(n){var o=this.$V;if(o){var r=o.props||p,a=o.dom;if(l(e))ee(r,e,n);else for(var i=0;i-1&&t.options[i]&&(c=t.options[i].value),n&&a(c)&&(c=e.defaultValue),le(o,c)}}var de,pe,fe=te("onInput",he),me=te("onChange");function he(e,t,n){var o=e.value,r=t.value;if(a(o)){if(n){var i=e.defaultValue;a(i)||i===r||(t.defaultValue=i,t.value=i)}}else r!==o&&(t.defaultValue=o,t.value=o)}function Ce(e,t,n,o,r,a){64&e?ce(o,n):256&e?se(o,n,r,t):128&e&&he(o,n,r),a&&(n.$V=t)}function ge(e,t,n){64&e?function(e,t){oe(t.type)?(ne(e,"change",ae),ne(e,"click",ie)):ne(e,"input",re)}(t,n):256&e?function(e){ne(e,"change",ue)}(t):128&e&&function(e,t){ne(e,"input",fe),t.onChange&&ne(e,"change",me)}(t,n)}function be(e){return e.type&&oe(e.type)?!a(e.checked):!a(e.value)}function ve(e){e&&!S(e,null)&&e.current&&(e.current=null)}function Ne(e,t,n){e&&(c(e)||void 0!==e.current)&&n.push((function(){S(e,t)||void 0===e.current||(e.current=t)}))}function Ve(e,t){ye(e),V(e,t)}function ye(e){var t,n=e.flags,o=e.children;if(481&n){t=e.ref;var r=e.props;ve(t);var i=e.childFlags;if(!u(r))for(var l=Object.keys(r),s=0,d=l.length;s0;for(var c in i&&(a=be(n))&&ge(t,o,n),n)Le(c,null,n[c],o,r,a,null);i&&Ce(t,e,o,n,!0,a)}function Se(e,t,n){var o=D(e.render(t,e.state,n)),r=n;return c(e.getChildContext)&&(r=s(n,e.getChildContext())),e.$CX=r,o}function Ie(e,t,n,o,r,a){var i=new t(n,o),l=i.$N=Boolean(t.getDerivedStateFromProps||i.getSnapshotBeforeUpdate);if(i.$SVG=r,i.$L=a,e.children=i,i.$BS=!1,i.context=o,i.props===p&&(i.props=n),l)i.state=_(i,n,i.state);else if(c(i.componentWillMount)){i.$BR=!0,i.componentWillMount();var s=i.$PS;if(!u(s)){var d=i.state;if(u(d))i.state=s;else for(var f in s)d[f]=s[f];i.$PS=null}i.$BR=!1}return i.$LI=Se(i,n,o),i}function Te(e,t,n,o,r,a){var i=e.flags|=16384;481&i?Ee(e,t,n,o,r,a):4&i?function(e,t,n,o,r,a){var i=Ie(e,e.type,e.props||p,n,o,a);Te(i.$LI,t,i.$CX,o,r,a),Oe(e.ref,i,a)}(e,t,n,o,r,a):8&i?(!function(e,t,n,o,r,a){Te(e.children=D(function(e,t){return 32768&e.flags?e.type.render(e.props||p,e.ref,t):e.type(e.props||p,t)}(e,n)),t,n,o,r,a)}(e,t,n,o,r,a),Me(e,a)):512&i||16&i?Ae(e,t,r):8192&i?function(e,t,n,o,r,a){var i=e.children,c=e.childFlags;12&c&&0===i.length&&(c=e.childFlags=2,i=e.children=M());2===c?Te(i,n,r,o,r,a):Pe(i,n,t,o,r,a)}(e,n,t,o,r,a):1024&i&&function(e,t,n,o,r){Te(e.children,e.ref,t,!1,null,r);var a=M();Ae(a,n,o),e.dom=a.dom}(e,n,t,r,a)}function Ae(e,t,n){var o=e.dom=document.createTextNode(e.children);u(t)||C(t,o,n)}function Ee(e,t,n,o,r,i){var c=e.flags,l=e.props,s=e.className,d=e.children,p=e.childFlags,f=e.dom=function(e,t){return t?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}(e.type,o=o||(32&c)>0);if(a(s)||""===s||(o?f.setAttribute("class",s):f.className=s),16===p)w(f,d);else if(1!==p){var m=o&&"foreignObject"!==e.type;2===p?(16384&d.flags&&(e.children=d=O(d)),Te(d,f,n,m,null,i)):8!==p&&4!==p||Pe(d,f,n,m,null,i)}u(t)||C(t,f,r),u(l)||Be(e,c,l,f,o),Ne(e.ref,f,i)}function Pe(e,t,n,o,r,a){for(var i=0;i0,u!==s){var m=u||p;if((c=s||p)!==p)for(var h in(d=(448&r)>0)&&(f=be(c)),c){var C=m[h],g=c[h];C!==g&&Le(h,C,g,l,o,f,e)}if(m!==p)for(var b in m)a(c[b])&&!a(m[b])&&Le(b,m[b],null,l,o,f,e)}var v=t.children,N=t.className;e.className!==N&&(a(N)?l.removeAttribute("class"):o?l.setAttribute("class",N):l.className=N);4096&r?function(e,t){e.textContent!==t&&(e.textContent=t)}(l,v):Fe(e.childFlags,t.childFlags,e.children,v,l,n,o&&"foreignObject"!==t.type,null,e,i);d&&Ce(r,t,l,c,!1,f);var V=t.ref,y=e.ref;y!==V&&(ve(y),Ne(V,l,i))}(e,t,o,r,f,d):4&f?function(e,t,n,o,r,a,i){var l=t.children=e.children;if(u(l))return;l.$L=i;var d=t.props||p,f=t.ref,m=e.ref,h=l.state;if(!l.$N){if(c(l.componentWillReceiveProps)){if(l.$BR=!0,l.componentWillReceiveProps(d,o),l.$UN)return;l.$BR=!1}u(l.$PS)||(h=s(h,l.$PS),l.$PS=null)}De(l,h,d,n,o,r,!1,a,i),m!==f&&(ve(m),Ne(f,l,i))}(e,t,n,o,r,l,d):8&f?function(e,t,n,o,r,i,l){var u=!0,s=t.props||p,d=t.ref,f=e.props,m=!a(d),h=e.children;m&&c(d.onComponentShouldUpdate)&&(u=d.onComponentShouldUpdate(f,s));if(!1!==u){m&&c(d.onComponentWillUpdate)&&d.onComponentWillUpdate(f,s);var C=t.type,g=D(32768&t.flags?C.render(s,d,o):C(s,o));Re(h,g,n,o,r,i,l),t.children=g,m&&c(d.onComponentDidUpdate)&&d.onComponentDidUpdate(f,s)}else t.children=h}(e,t,n,o,r,l,d):16&f?function(e,t){var n=t.children,o=t.dom=e.dom;n!==e.children&&(o.nodeValue=n)}(e,t):512&f?t.dom=e.dom:8192&f?function(e,t,n,o,r,a){var i=e.children,c=t.children,l=e.childFlags,u=t.childFlags,s=null;12&u&&0===c.length&&(u=t.childFlags=2,c=t.children=M());var d=0!=(2&u);if(12&l){var p=i.length;(8&l&&8&u||d||!d&&c.length>p)&&(s=N(i[p-1],!1).nextSibling)}Fe(l,u,i,c,n,o,r,s,e,a)}(e,t,n,o,r,d):function(e,t,n,o){var r=e.ref,a=t.ref,c=t.children;if(Fe(e.childFlags,t.childFlags,e.children,c,r,n,!1,null,e,o),t.dom=e.dom,r!==a&&!i(c)){var l=c.dom;g(r,l),h(a,l)}}(e,t,o,d)}function Fe(e,t,n,o,r,a,i,c,l,u){switch(e){case 2:switch(t){case 2:Re(n,o,r,a,i,c,u);break;case 1:Ve(n,r);break;case 16:ye(n),w(r,o);break;default:!function(e,t,n,o,r,a){ye(e),Pe(t,n,o,r,N(e,!0),a),V(e,n)}(n,o,r,a,i,u)}break;case 1:switch(t){case 2:Te(o,r,a,i,c,u);break;case 1:break;case 16:w(r,o);break;default:Pe(o,r,a,i,c,u)}break;case 16:switch(t){case 16:!function(e,t,n){e!==t&&(""!==e?n.firstChild.nodeValue=t:w(n,t))}(n,o,r);break;case 2:xe(r),Te(o,r,a,i,c,u);break;case 1:xe(r);break;default:xe(r),Pe(o,r,a,i,c,u)}break;default:switch(t){case 16:_e(n),w(r,o);break;case 2:ke(r,l,n),Te(o,r,a,i,c,u);break;case 1:ke(r,l,n);break;default:var s=0|n.length,d=0|o.length;0===s?d>0&&Pe(o,r,a,i,c,u):0===d?ke(r,l,n):8===t&&8===e?function(e,t,n,o,r,a,i,c,l,u){var s,d,p=a-1,f=i-1,m=0,h=e[m],C=t[m];e:{for(;h.key===C.key;){if(16384&C.flags&&(t[m]=C=O(C)),Re(h,C,n,o,r,c,u),e[m]=C,++m>p||m>f)break e;h=e[m],C=t[m]}for(h=e[p],C=t[f];h.key===C.key;){if(16384&C.flags&&(t[f]=C=O(C)),Re(h,C,n,o,r,c,u),e[p]=C,p--,f--,m>p||m>f)break e;h=e[p],C=t[f]}}if(m>p){if(m<=f)for(d=(s=f+1)f)for(;m<=p;)Ve(e[m++],n);else!function(e,t,n,o,r,a,i,c,l,u,s,d,p){var f,m,h,C=0,g=c,b=c,v=a-c+1,V=i-c+1,_=new Int32Array(V+1),x=v===o,k=!1,w=0,L=0;if(r<4||(v|V)<32)for(C=g;C<=a;++C)if(f=e[C],Lc?k=!0:w=c,16384&m.flags&&(t[c]=m=O(m)),Re(f,m,l,n,u,s,p),++L;break}!x&&c>i&&Ve(f,l)}else x||Ve(f,l);else{var B={};for(C=b;C<=i;++C)B[t[C].key]=C;for(C=g;C<=a;++C)if(f=e[C],Lg;)Ve(e[g++],l);_[c-b]=C+1,w>c?k=!0:w=c,16384&(m=t[c]).flags&&(t[c]=m=O(m)),Re(f,m,l,n,u,s,p),++L}else x||Ve(f,l);else x||Ve(f,l)}if(x)ke(l,d,e),Pe(t,l,n,u,s,p);else if(k){var S=function(e){var t=0,n=0,o=0,r=0,a=0,i=0,c=0,l=e.length;l>je&&(je=l,de=new Int32Array(l),pe=new Int32Array(l));for(;n>1]]0&&(pe[n]=de[a-1]),de[a]=n)}a=r+1;var u=new Int32Array(a);i=de[a-1];for(;a-- >0;)u[a]=i,i=pe[i],de[a]=0;return u}(_);for(c=S.length-1,C=V-1;C>=0;C--)0===_[C]?(16384&(m=t[w=C+b]).flags&&(t[w]=m=O(m)),Te(m,l,n,u,(h=w+1)=0;C--)0===_[C]&&(16384&(m=t[w=C+b]).flags&&(t[w]=m=O(m)),Te(m,l,n,u,(h=w+1)i?i:a,p=0;pi)for(p=d;p0&&b(r),x.v=!1,c(n)&&n(),c(k.renderComplete)&&k.renderComplete(i,t)}function He(e,t,n,o){void 0===n&&(n=null),void 0===o&&(o=p),ze(e,t,n,o)}"undefined"!=typeof document&&window.Node&&(Node.prototype.$EV=null,Node.prototype.$V=null);var Ge=[],Ue="undefined"!=typeof Promise?Promise.resolve().then.bind(Promise.resolve()):function(e){window.setTimeout(e,0)},Ke=!1;function Ye(e,t,n,o){var r=e.$PS;if(c(t)&&(t=t(r?s(e.state,r):e.state,e.props,e.context)),a(r))e.$PS=t;else for(var i in t)r[i]=t[i];if(e.$BR)c(n)&&e.$L.push(n.bind(e));else{if(!x.v&&0===Ge.length)return void $e(e,o,n);if(-1===Ge.indexOf(e)&&Ge.push(e),Ke||(Ke=!0,Ue(We)),c(n)){var l=e.$QU;l||(l=e.$QU=[]),l.push(n)}}}function qe(e){for(var t=e.$QU,n=0,o=t.length;n0&&b(r),x.v=!1}else e.state=e.$PS,e.$PS=null;c(n)&&n.call(e)}}var Qe=function(e,t){this.state=null,this.$BR=!1,this.$BS=!0,this.$PS=null,this.$LI=null,this.$UN=!1,this.$CX=null,this.$QU=null,this.$N=!1,this.$L=null,this.$SVG=!1,this.props=e||p,this.context=t||p};t.Component=Qe,Qe.prototype.forceUpdate=function(e){this.$UN||Ye(this,{},e,!0)},Qe.prototype.setState=function(e,t){this.$UN||this.$BS||Ye(this,e,t,!1)},Qe.prototype.render=function(e,t,n){return null};t.version="7.3.3"},function(e,t,n){"use strict";var o=function(e){var t,n=Object.prototype,o=n.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",i=r.asyncIterator||"@@asyncIterator",c=r.toStringTag||"@@toStringTag";function l(e,t,n,o){var r=t&&t.prototype instanceof h?t:h,a=Object.create(r.prototype),i=new L(o||[]);return a._invoke=function(e,t,n){var o=s;return function(r,a){if(o===p)throw new Error("Generator is already running");if(o===f){if("throw"===r)throw a;return S()}for(n.method=r,n.arg=a;;){var i=n.delegate;if(i){var c=x(i,n);if(c){if(c===m)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===s)throw o=f,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=u(e,t,n);if("normal"===l.type){if(o=n.done?f:d,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=f,n.method="throw",n.arg=l.arg)}}}(e,n,i),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(o){return{type:"throw",arg:o}}}e.wrap=l;var s="suspendedStart",d="suspendedYield",p="executing",f="completed",m={};function h(){}function C(){}function g(){}var b={};b[a]=function(){return this};var v=Object.getPrototypeOf,N=v&&v(v(B([])));N&&N!==n&&o.call(N,a)&&(b=N);var V=g.prototype=h.prototype=Object.create(b);function y(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function _(e){var t;this._invoke=function(n,r){function a(){return new Promise((function(t,a){!function i(t,n,r,a){var c=u(e[t],e,n);if("throw"!==c.type){var l=c.arg,s=l.value;return s&&"object"==typeof s&&o.call(s,"__await")?Promise.resolve(s.__await).then((function(e){i("next",e,r,a)}),(function(e){i("throw",e,r,a)})):Promise.resolve(s).then((function(e){l.value=e,r(l)}),(function(e){return i("throw",e,r,a)}))}a(c.arg)}(n,r,t,a)}))}return t=t?t.then(a,a):a()}}function x(e,n){var o=e.iterator[n.method];if(o===t){if(n.delegate=null,"throw"===n.method){if(e.iterator["return"]&&(n.method="return",n.arg=t,x(e,n),"throw"===n.method))return m;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var r=u(o,e.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,m;var a=r.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,m):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,m)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function w(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function L(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function B(e){if(e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function n(){for(;++r=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var l=o.call(i,"catchLoc"),u=o.call(i,"finallyLoc");if(l&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),w(n),m}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o=n.completion;if("throw"===o.type){var r=o.arg;w(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,o){return this.delegate={iterator:B(e),resultName:n,nextLoc:o},"next"===this.method&&(this.arg=t),m}},e}(e.exports);try{regeneratorRuntime=o}catch(r){Function("r","regeneratorRuntime = r")(o)}},function(e,t,n){"use strict";window.Int32Array||(window.Int32Array=Array)},function(e,t,n){"use strict";(function(e){ +!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=164)}([function(e,t,n){"use strict";var o=n(5),r=n(18).f,a=n(25),i=n(22),c=n(89),l=n(122),u=n(61);e.exports=function(e,t){var n,d,s,p,m,f=e.target,h=e.global,C=e.stat;if(n=h?o:C?o[f]||c(f,{}):(o[f]||{}).prototype)for(d in t){if(p=t[d],s=e.noTargetGet?(m=r(n,d))&&m.value:n[d],!u(h?d:f+(C?".":"#")+d,e.forced)&&s!==undefined){if(typeof p==typeof s)continue;l(p,s)}(e.sham||s&&s.sham)&&a(p,"sham",!0),i(n,d,p,e)}}},function(e,t,n){"use strict";t.__esModule=!0;var o=n(386);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(t[e]=o[e])}))},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=t.Tooltip=t.Toast=t.TitleBar=t.Tabs=t.Table=t.Section=t.ProgressBar=t.NumberInput=t.NoticeBox=t.LabeledList=t.Input=t.Icon=t.Grid=t.Flex=t.Dropdown=t.Dimmer=t.Collapsible=t.ColorBox=t.Button=t.Box=t.BlockQuote=t.AnimatedNumber=void 0;var o=n(158);t.AnimatedNumber=o.AnimatedNumber;var r=n(391);t.BlockQuote=r.BlockQuote;var a=n(17);t.Box=a.Box;var i=n(114);t.Button=i.Button;var c=n(393);t.ColorBox=c.ColorBox;var l=n(394);t.Collapsible=l.Collapsible;var u=n(395);t.Dimmer=u.Dimmer;var d=n(396);t.Dropdown=d.Dropdown;var s=n(397);t.Flex=s.Flex;var p=n(161);t.Grid=p.Grid;var m=n(87);t.Icon=m.Icon;var f=n(160);t.Input=f.Input;var h=n(163);t.LabeledList=h.LabeledList;var C=n(398);t.NoticeBox=C.NoticeBox;var g=n(399);t.NumberInput=g.NumberInput;var b=n(400);t.ProgressBar=b.ProgressBar;var v=n(401);t.Section=v.Section;var N=n(162);t.Table=N.Table;var V=n(402);t.Tabs=V.Tabs;var y=n(403);t.TitleBar=y.TitleBar;var _=n(117);t.Toast=_.Toast;var x=n(159);t.Tooltip=x.Tooltip;var k=n(404);t.Chart=k.Chart},function(e,t,n){"use strict";t.__esModule=!0,t.useBackend=t.backendReducer=t.backendUpdate=void 0;var o=n(37),r=n(19);t.backendUpdate=function(e){return{type:"backendUpdate",payload:e}};t.backendReducer=function(e,t){var n=t.type,r=t.payload;if("backendUpdate"===n){var a=Object.assign({},e.config,{},r.config),i=Object.assign({},e.data,{},r.static_data,{},r.data),c=a.status!==o.UI_DISABLED,l=a.status===o.UI_INTERACTIVE;return Object.assign({},e,{config:a,data:i,visible:c,interactive:l})}return e};t.useBackend=function(e){var t=e.state,n=(e.dispatch,t.config.ref);return Object.assign({},t,{act:function(e,t){return void 0===t&&(t={}),(0,r.act)(n,e,t)}})}},function(e,t,n){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},function(e,t,n){"use strict";(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n(118))},function(e,t,n){"use strict";e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";var o,r=n(9),a=n(5),i=n(6),c=n(15),l=n(74),u=n(25),d=n(22),s=n(13).f,p=n(36),m=n(53),f=n(11),h=n(58),C=a.DataView,g=C&&C.prototype,b=a.Int8Array,v=b&&b.prototype,N=a.Uint8ClampedArray,V=N&&N.prototype,y=b&&p(b),_=v&&p(v),x=Object.prototype,k=x.isPrototypeOf,L=f("toStringTag"),w=h("TYPED_ARRAY_TAG"),B=!(!a.ArrayBuffer||!C),S=B&&!!m&&"Opera"!==l(a.opera),I=!1,T={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},A=function(e){var t=l(e);return"DataView"===t||c(T,t)},E=function(e){return i(e)&&c(T,l(e))};for(o in T)a[o]||(S=!1);if((!S||"function"!=typeof y||y===Function.prototype)&&(y=function(){throw TypeError("Incorrect invocation")},S))for(o in T)a[o]&&m(a[o],y);if((!S||!_||_===x)&&(_=y.prototype,S))for(o in T)a[o]&&m(a[o].prototype,_);if(S&&p(V)!==_&&m(V,_),r&&!c(_,L))for(o in I=!0,s(_,L,{get:function(){return i(this)?this[w]:undefined}}),T)a[o]&&u(a[o],w,o);B&&m&&p(g)!==x&&m(g,x),e.exports={NATIVE_ARRAY_BUFFER:B,NATIVE_ARRAY_BUFFER_VIEWS:S,TYPED_ARRAY_TAG:I&&w,aTypedArray:function(e){if(E(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(m){if(k.call(y,e))return e}else for(var t in T)if(c(T,o)){var n=a[t];if(n&&(e===n||k.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(r){if(n)for(var o in T){var i=a[o];i&&c(i.prototype,e)&&delete i.prototype[e]}_[e]&&!n||d(_,e,n?t:S&&v[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var o,i;if(r){if(m){if(n)for(o in T)(i=a[o])&&c(i,e)&&delete i[e];if(y[e]&&!n)return;try{return d(y,e,n?t:S&&b[e]||t)}catch(l){}}for(o in T)!(i=a[o])||i[e]&&!n||d(i,e,t)}},isView:A,isTypedArray:E,TypedArray:y,TypedArrayPrototype:_}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(29),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(5),r=n(91),a=n(15),i=n(58),c=n(95),l=n(125),u=r("wks"),d=o.Symbol,s=l?d:i;e.exports=function(e){return a(u,e)||(c&&a(d,e)?u[e]=d[e]:u[e]=s("Symbol."+e)),u[e]}},function(e,t,n){"use strict";t.__esModule=!0,t.isFalsy=t.pureComponentHooks=t.shallowDiffers=t.normalizeChildren=t.classes=void 0;t.classes=function(e){for(var t="",n=0;n_;_++)if((p||_ in N)&&(b=V(g=N[_],_,v),e))if(t)k[_]=b;else if(b)switch(e){case 3:return!0;case 5:return g;case 6:return _;case 2:l.call(k,g)}else if(d)return!1;return s?-1:u||d?d:k}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},function(e,t,n){"use strict";t.__esModule=!0,t.Box=t.computeBoxProps=t.unit=void 0;var o=n(1),r=n(12),a=n(392),i=n(37);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){return"string"==typeof e?e:"number"==typeof e?6*e+"px":void 0};t.unit=l;var u=function(e){return"string"==typeof e&&i.CSS_COLORS.includes(e)},d=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=n)}},s=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=l(n))}},p=function(e,t){return function(n,o){(0,r.isFalsy)(o)||(n[e]=t)}},m=function(e,t){return function(n,o){if(!(0,r.isFalsy)(o))for(var a=0;a0&&(t.style=l),t};t.computeBoxProps=C;var g=function(e){var t=e.as,n=void 0===t?"div":t,i=e.className,l=e.content,d=e.children,s=c(e,["as","className","content","children"]),p=e.textColor||e.color,m=e.backgroundColor;if("function"==typeof d)return d(C(e));var f=C(s);return(0,o.createVNode)(a.VNodeFlags.HtmlElement,n,(0,r.classes)([i,u(p)&&"color-"+p,u(m)&&"color-bg-"+m]),l||d,a.ChildFlags.UnknownChildren,f)};t.Box=g,g.defaultHooks=r.pureComponentHooks;var b=function(e){var t=e.children,n=c(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({position:"relative"},n,{children:(0,o.createComponentVNode)(2,g,{fillPositionedParent:!0,children:t})})))};b.defaultHooks=r.pureComponentHooks,g.Forced=b},function(e,t,n){"use strict";var o=n(9),r=n(71),a=n(46),i=n(24),c=n(33),l=n(15),u=n(119),d=Object.getOwnPropertyDescriptor;t.f=o?d:function(e,t){if(e=i(e),t=c(t,!0),u)try{return d(e,t)}catch(n){}if(l(e,t))return a(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";t.__esModule=!0,t.winset=t.winget=t.act=t.runCommand=t.callByondAsync=t.callByond=t.tridentVersion=void 0;var o,r=n(31),a=(o=navigator.userAgent.match(/Trident\/(\d+).+?;/i)[1])?parseInt(o,10):null;t.tridentVersion=a;var i=function(e,t){return void 0===t&&(t={}),"byond://"+e+"?"+(0,r.buildQueryString)(t)},c=function(e,t){void 0===t&&(t={}),window.location.href=i(e,t)};t.callByond=c;var l=function(e,t){void 0===t&&(t={}),window.__callbacks__=window.__callbacks__||[];var n=window.__callbacks__.length,o=new Promise((function(e){window.__callbacks__.push(e)}));return window.location.href=i(e,Object.assign({},t,{callback:"__callbacks__["+n+"]"})),o};t.callByondAsync=l;t.runCommand=function(e){return c("winset",{command:e})};t.act=function(e,t,n){return void 0===n&&(n={}),c("",Object.assign({src:e,action:t},n))};var u=function(e,t){var n;return regeneratorRuntime.async((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,regeneratorRuntime.awrap(l("winget",{id:e,property:t}));case 2:return n=o.sent,o.abrupt("return",n[t]);case 4:case"end":return o.stop()}}))};t.winget=u;t.winset=function(e,t,n){var o;return c("winset",((o={})[e+"."+t]=n,o))}},function(e,t,n){"use strict";t.__esModule=!0,t.toFixed=t.round=t.clamp=void 0;t.clamp=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),Math.max(t,Math.min(e,n))};t.round=function(e){return Math.round(e)};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(t)}},function(e,t,n){"use strict";e.exports=function(e){if(e==undefined)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){"use strict";var o=n(5),r=n(25),a=n(15),i=n(89),c=n(90),l=n(34),u=l.get,d=l.enforce,s=String(String).split("String");(e.exports=function(e,t,n,c){var l=!!c&&!!c.unsafe,u=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||r(n,"name",t),d(n).source=s.join("string"==typeof t?t:"")),e!==o?(l?!p&&e[t]&&(u=!0):delete e[t],u?e[t]=n:r(e,t,n)):u?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.reduce=t.sortBy=t.map=t.toArray=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};var o=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oc)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;n"+i+""}},function(e,t,n){"use strict";var o=n(4);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";var o=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:o)(e)}},function(e,t,n){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){"use strict";t.__esModule=!0,t.buildQueryString=t.decodeHtmlEntities=t.toTitleCase=t.capitalize=t.testGlobPattern=t.multiline=void 0;t.multiline=function o(e){if(Array.isArray(e))return o(e.join(""));var t,n=e.split("\n"),r=n,a=Array.isArray(r),i=0;for(r=a?r:r[Symbol.iterator]();;){var c;if(a){if(i>=r.length)break;c=r[i++]}else{if((i=r.next()).done)break;c=i.value}for(var l=c,u=0;u",apos:"'"};return e.replace(/
/gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/&#?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/&#x?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){"use strict";var o,r,a,i=n(121),c=n(5),l=n(6),u=n(25),d=n(15),s=n(72),p=n(59),m=c.WeakMap;if(i){var f=new m,h=f.get,C=f.has,g=f.set;o=function(e,t){return g.call(f,e,t),t},r=function(e){return h.call(f,e)||{}},a=function(e){return C.call(f,e)}}else{var b=s("state");p[b]=!0,o=function(e,t){return u(e,b,t),t},r=function(e){return d(e,b)?e[b]:{}},a=function(e){return d(e,b)}}e.exports={set:o,get:r,has:a,enforce:function(e){return a(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=n(123),r=n(5),a=function(e){return"function"==typeof e?e:undefined};e.exports=function(e,t){return arguments.length<2?a(o[e])||a(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t,n){"use strict";var o=n(15),r=n(14),a=n(72),i=n(102),c=a("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),o(e,c)?e[c]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){"use strict";t.__esModule=!0,t.getGasColor=t.getGasLabel=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=t.UI_CLOSE=t.UI_DISABLED=t.UI_UPDATE=t.UI_INTERACTIVE=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{captain:"#c06616",security:"#e74c3c",medbay:"#3498db",science:"#9b59b6",engineering:"#f1c40f",cargo:"#f39c12",centcom:"#00c100",other:"#c38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"CentCom",freq:1337,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"AI Private",freq:1447,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(4);e.exports=function(e,t){var n=[][e];return!n||!o((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(9),i=n(113),c=n(7),l=n(77),u=n(55),d=n(46),s=n(25),p=n(10),m=n(137),f=n(151),h=n(33),C=n(15),g=n(74),b=n(6),v=n(42),N=n(53),V=n(47).f,y=n(152),_=n(16).forEach,x=n(54),k=n(13),L=n(18),w=n(34),B=n(79),S=w.get,I=w.set,T=k.f,A=L.f,E=Math.round,P=r.RangeError,M=l.ArrayBuffer,O=l.DataView,R=c.NATIVE_ARRAY_BUFFER_VIEWS,F=c.TYPED_ARRAY_TAG,D=c.TypedArray,j=c.TypedArrayPrototype,z=c.aTypedArrayConstructor,G=c.isTypedArray,H=function(e,t){for(var n=0,o=t.length,r=new(z(e))(o);o>n;)r[n]=t[n++];return r},U=function(e,t){T(e,t,{get:function(){return S(this)[t]}})},K=function(e){var t;return e instanceof M||"ArrayBuffer"==(t=g(e))||"SharedArrayBuffer"==t},Y=function(e,t){return G(e)&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},q=function(e,t){return Y(e,t=h(t,!0))?d(2,e[t]):A(e,t)},W=function(e,t,n){return!(Y(e,t=h(t,!0))&&b(n)&&C(n,"value"))||C(n,"get")||C(n,"set")||n.configurable||C(n,"writable")&&!n.writable||C(n,"enumerable")&&!n.enumerable?T(e,t,n):(e[t]=n.value,e)};a?(R||(L.f=q,k.f=W,U(j,"buffer"),U(j,"byteOffset"),U(j,"byteLength"),U(j,"length")),o({target:"Object",stat:!0,forced:!R},{getOwnPropertyDescriptor:q,defineProperty:W}),e.exports=function(e,t,n){var a=e.match(/\d+$/)[0]/8,c=e+(n?"Clamped":"")+"Array",l="get"+e,d="set"+e,h=r[c],C=h,g=C&&C.prototype,k={},L=function(e,t){var n=S(e);return n.view[l](t*a+n.byteOffset,!0)},w=function(e,t,o){var r=S(e);n&&(o=(o=E(o))<0?0:o>255?255:255&o),r.view[d](t*a+r.byteOffset,o,!0)},A=function(e,t){T(e,t,{get:function(){return L(this,t)},set:function(e){return w(this,t,e)},enumerable:!0})};R?i&&(C=t((function(e,t,n,o){return u(e,C,c),B(b(t)?K(t)?o!==undefined?new h(t,f(n,a),o):n!==undefined?new h(t,f(n,a)):new h(t):G(t)?H(C,t):y.call(C,t):new h(m(t)),e,C)})),N&&N(C,D),_(V(h),(function(e){e in C||s(C,e,h[e])})),C.prototype=g):(C=t((function(e,t,n,o){u(e,C,c);var r,i,l,d=0,s=0;if(b(t)){if(!K(t))return G(t)?H(C,t):y.call(C,t);r=t,s=f(n,a);var h=t.byteLength;if(o===undefined){if(h%a)throw P("Wrong length");if((i=h-s)<0)throw P("Wrong length")}else if((i=p(o)*a)+s>h)throw P("Wrong length");l=i/a}else l=m(t),r=new M(i=l*a);for(I(e,{buffer:r,byteOffset:s,byteLength:i,length:l,view:new O(r)});ddocument.F=Object<\/script>"),e.close(),p=e.F;n--;)delete p[d][a[n]];return p()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[d]=o(e),n=new s,s[d]=null,n[u]=e):n=p(),t===undefined?n:r(n,t)},i[u]=!0},function(e,t,n){"use strict";var o=n(13).f,r=n(15),a=n(11)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,a)&&o(e,a,{configurable:!0,value:t})}},function(e,t,n){"use strict";var o=n(11),r=n(42),a=n(25),i=o("unscopables"),c=Array.prototype;c[i]==undefined&&a(c,i,r(null)),e.exports=function(e){c[i][e]=!0}},function(e,t,n){"use strict";var o=n(8),r=n(30),a=n(11)("species");e.exports=function(e,t){var n,i=o(e).constructor;return i===undefined||(n=o(i)[a])==undefined?t:r(n)}},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var o=n(124),r=n(93).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(30);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";var o=n(33),r=n(13),a=n(46);e.exports=function(e,t,n){var i=o(t);i in e?r.f(e,i,a(0,n)):e[i]=n}},function(e,t,n){"use strict";var o=n(59),r=n(6),a=n(15),i=n(13).f,c=n(58),l=n(67),u=c("meta"),d=0,s=Object.isExtensible||function(){return!0},p=function(e){i(e,u,{value:{objectID:"O"+ ++d,weakData:{}}})},m=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,u)){if(!s(e))return"F";if(!t)return"E";p(e)}return e[u].objectID},getWeakData:function(e,t){if(!a(e,u)){if(!s(e))return!0;if(!t)return!1;p(e)}return e[u].weakData},onFreeze:function(e){return l&&m.REQUIRED&&s(e)&&!a(e,u)&&p(e),e}};o[u]=!0},function(e,t,n){"use strict";t.__esModule=!0,t.createLogger=void 0;n(154);var o=n(19),r=0,a=1,i=2,c=3,l=4,u=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),a=2;a=i){var c=[t].concat(r).map((function(e){return"string"==typeof e?e:e instanceof Error?e.stack||String(e):JSON.stringify(e)})).filter((function(e){return e})).join(" ")+"\nUser Agent: "+navigator.userAgent;(0,o.act)(window.__ref__,"tgui:log",{log:c})}};t.createLogger=function(e){return{debug:function(){for(var t=arguments.length,n=new Array(t),o=0;od;)if((c=l[d++])!=c)return!0}else for(;u>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){"use strict";var o=n(4),r=/#|\.prototype\./,a=function(e,t){var n=c[i(e)];return n==u||n!=l&&("function"==typeof t?o(t):!!t)},i=a.normalize=function(e){return String(e).replace(r,".").toLowerCase()},c=a.data={},l=a.NATIVE="N",u=a.POLYFILL="P";e.exports=a},function(e,t,n){"use strict";var o=n(124),r=n(93);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(6),r=n(52),a=n(11)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?o(n)&&null===(n=n[a])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},function(e,t,n){"use strict";var o=n(4),r=n(11),a=n(96),i=r("species");e.exports=function(e){return a>=51||!o((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(22);e.exports=function(e,t,n){for(var r in t)o(e,r,t[r],n);return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){"use strict";var o=n(8),r=n(98),a=n(10),i=n(48),c=n(99),l=n(132),u=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,d,s){var p,m,f,h,C,g,b,v=i(t,n,d?2:1);if(s)p=e;else{if("function"!=typeof(m=c(e)))throw TypeError("Target is not iterable");if(r(m)){for(f=0,h=a(e.length);h>f;f++)if((C=d?v(o(b=e[f])[0],b[1]):v(e[f]))&&C instanceof u)return C;return new u(!1)}p=m.call(e)}for(g=p.next;!(b=g.call(p)).done;)if("object"==typeof(C=l(p,v,b.value,d))&&C&&C instanceof u)return C;return new u(!1)}).stop=function(e){return new u(!0,e)}},function(e,t,n){"use strict";t.__esModule=!0,t.InterfaceLockNoticeBox=void 0;var o=n(1),r=n(2);t.InterfaceLockNoticeBox=function(e){var t=e.siliconUser,n=e.locked,a=e.onLockStatusChange,i=e.accessText;return t?(0,o.createComponentVNode)(2,r.NoticeBox,{children:(0,o.createComponentVNode)(2,r.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,r.Flex.Item,{children:"Interface lock status:"}),(0,o.createComponentVNode)(2,r.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,r.Flex.Item,{children:(0,o.createComponentVNode)(2,r.Button,{m:0,color:"gray",icon:n?"lock":"unlock",content:n?"Locked":"Unlocked",onClick:function(){a&&a(!n)}})})]})}):(0,o.createComponentVNode)(2,r.NoticeBox,{children:["Swipe ",i||"an ID card"," ","to ",n?"unlock":"lock"," this interface."]})}},function(e,t,n){"use strict";t.__esModule=!0,t.compose=t.flow=void 0;t.flow=function o(){for(var e=arguments.length,t=new Array(e),n=0;n1?r-1:0),i=1;i=c.length)break;d=c[u++]}else{if((u=c.next()).done)break;d=u.value}var s=d;Array.isArray(s)?n=o.apply(void 0,s).apply(void 0,[n].concat(a)):s&&(n=s.apply(void 0,[n].concat(a)))}return n}};t.compose=function(){for(var e=arguments.length,t=new Array(e),n=0;n1?o-1:0),a=1;a=0:s>p;p+=m)p in d&&(l=n(l,d[p],p,u));return l}};e.exports={left:c(!1),right:c(!0)}},function(e,t,n){"use strict";var o=n(5),r=n(9),a=n(7).NATIVE_ARRAY_BUFFER,i=n(25),c=n(66),l=n(4),u=n(55),d=n(29),s=n(10),p=n(137),m=n(217),f=n(47).f,h=n(13).f,C=n(97),g=n(43),b=n(34),v=b.get,N=b.set,V="ArrayBuffer",y="DataView",_="Wrong length",x=o[V],k=x,L=o[y],w=o.RangeError,B=m.pack,S=m.unpack,I=function(e){return[255&e]},T=function(e){return[255&e,e>>8&255]},A=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},E=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return B(e,23,4)},M=function(e){return B(e,52,8)},O=function(e,t){h(e.prototype,t,{get:function(){return v(this)[t]}})},R=function(e,t,n,o){var r=p(n),a=v(e);if(r+t>a.byteLength)throw w("Wrong index");var i=v(a.buffer).bytes,c=r+a.byteOffset,l=i.slice(c,c+t);return o?l:l.reverse()},F=function(e,t,n,o,r,a){var i=p(n),c=v(e);if(i+t>c.byteLength)throw w("Wrong index");for(var l=v(c.buffer).bytes,u=i+c.byteOffset,d=o(+r),s=0;sG;)(D=z[G++])in k||i(k,D,x[D]);j.constructor=k}var H=new L(new k(2)),U=L.prototype.setInt8;H.setInt8(0,2147483648),H.setInt8(1,2147483649),!H.getInt8(0)&&H.getInt8(1)||c(L.prototype,{setInt8:function(e,t){U.call(this,e,t<<24>>24)},setUint8:function(e,t){U.call(this,e,t<<24>>24)}},{unsafe:!0})}else k=function(e){u(this,k,V);var t=p(e);N(this,{bytes:C.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},L=function(e,t,n){u(this,L,y),u(e,k,y);var o=v(e).byteLength,a=d(t);if(a<0||a>o)throw w("Wrong offset");if(a+(n=n===undefined?o-a:s(n))>o)throw w(_);N(this,{buffer:e,byteLength:n,byteOffset:a}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=a)},r&&(O(k,"byteLength"),O(L,"buffer"),O(L,"byteLength"),O(L,"byteOffset")),c(L.prototype,{getInt8:function(e){return R(this,1,e)[0]<<24>>24},getUint8:function(e){return R(this,1,e)[0]},getInt16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return S(R(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return S(R(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){F(this,1,e,I,t)},setUint8:function(e,t){F(this,1,e,I,t)},setInt16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){F(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){F(this,8,e,M,t,arguments.length>2?arguments[2]:undefined)}});g(k,V),g(L,y),e.exports={ArrayBuffer:k,DataView:L}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(61),i=n(22),c=n(50),l=n(68),u=n(55),d=n(6),s=n(4),p=n(75),m=n(43),f=n(79);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],v=b&&b.prototype,N=b,V={},y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!d(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(a(e,"function"!=typeof b||!(C||v.forEach&&!s((function(){(new b).entries().next()})))))N=n.getConstructor(t,e,h,g),c.REQUIRED=!0;else if(a(e,!0)){var _=new N,x=_[g](C?{}:-0,1)!=_,k=s((function(){_.has(1)})),L=p((function(e){new b(e)})),w=!C&&s((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));L||((N=t((function(t,n){u(t,N,e);var o=f(new b,t,N);return n!=undefined&&l(n,o[g],o,h),o}))).prototype=v,v.constructor=N),(k||w)&&(y("delete"),y("has"),h&&y("get")),(w||x)&&y(g),C&&v.clear&&delete v.clear}return V[e]=N,o({global:!0,forced:N!=b},V),m(N,e),C||n.setStrong(N,e,h),N}},function(e,t,n){"use strict";var o=n(6),r=n(53);e.exports=function(e,t,n){var a,i;return r&&"function"==typeof(a=t.constructor)&&a!==n&&o(i=a.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var o=Math.expm1,r=Math.exp;e.exports=!o||o(10)>22025.465794806718||o(10)<22025.465794806718||-2e-17!=o(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:r(e)-1}:o},function(e,t,n){"use strict";e.exports="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},function(e,t,n){"use strict";var o=n(38),r=n(5),a=n(4);e.exports=o||!a((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r[e]}))},function(e,t,n){"use strict";var o=n(8);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var o,r,a=n(83),i=RegExp.prototype.exec,c=String.prototype.replace,l=i,u=(o=/a/,r=/b*/g,i.call(o,"a"),i.call(r,"a"),0!==o.lastIndex||0!==r.lastIndex),d=/()??/.exec("")[1]!==undefined;(u||d)&&(l=function(e){var t,n,o,r,l=this;return d&&(n=new RegExp("^"+l.source+"$(?!\\s)",a.call(l))),u&&(t=l.lastIndex),o=i.call(l,e),u&&o&&(l.lastIndex=l.global?o.index+o[0].length:t),d&&o&&o.length>1&&c.call(o[0],n,(function(){for(r=1;r")})),d=!a((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,s){var p=i(e),m=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),f=m&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!m||!f||"replace"===e&&!u||"split"===e&&!d){var h=/./[p],C=n(p,""[e],(function(e,t,n,o,r){return t.exec===c?m&&!r?{done:!0,value:h.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}})),g=C[0],b=C[1];r(String.prototype,e,g),r(RegExp.prototype,p,2==t?function(e,t){return b.call(e,this,t)}:function(e){return b.call(e,this)}),s&&o(RegExp.prototype[p],"sham",!0)}}},function(e,t,n){"use strict";var o=n(32),r=n(84);e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==o(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},function(e,t,n){"use strict";t.__esModule=!0,t.Icon=void 0;var o=n(1),r=n(12),a=n(17);var i=/-o$/,c=function(e){var t=e.name,n=e.size,c=e.spin,l=e.className,u=e.style,d=void 0===u?{}:u,s=e.rotation,p=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["name","size","spin","className","style","rotation"]);n&&(d["font-size"]=100*n+"%"),"number"==typeof s&&(d.transform="rotate("+s+"deg)");var m=i.test(t),f=t.replace(i,"");return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"i",className:(0,r.classes)([l,m?"far":"fas","fa-"+f,c&&"fa-spin"]),style:d},p)))};t.Icon=c,c.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";var o=n(5),r=n(6),a=o.document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},function(e,t,n){"use strict";var o=n(5),r=n(25);e.exports=function(e,t){try{r(o,e,t)}catch(n){o[e]=t}return t}},function(e,t,n){"use strict";var o=n(120),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},function(e,t,n){"use strict";var o=n(38),r=n(120);(e.exports=function(e,t){return r[e]||(r[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.4.8",mode:o?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){"use strict";var o=n(35),r=n(47),a=n(94),i=n(8);e.exports=o("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=a.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var o=n(4);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())}))},function(e,t,n){"use strict";var o,r,a=n(5),i=n(73),c=a.process,l=c&&c.versions,u=l&&l.v8;u?r=(o=u.split("."))[0]+o[1]:i&&(!(o=i.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=i.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10);e.exports=function(e){for(var t=o(this),n=a(t.length),i=arguments.length,c=r(i>1?arguments[1]:undefined,n),l=i>2?arguments[2]:undefined,u=l===undefined?n:r(l,n);u>c;)t[c++]=e;return t}},function(e,t,n){"use strict";var o=n(11),r=n(65),a=o("iterator"),i=Array.prototype;e.exports=function(e){return e!==undefined&&(r.Array===e||i[a]===e)}},function(e,t,n){"use strict";var o=n(74),r=n(65),a=n(11)("iterator");e.exports=function(e){if(e!=undefined)return e[a]||e["@@iterator"]||r[o(e)]}},function(e,t,n){"use strict";var o={};o[n(11)("toStringTag")]="z",e.exports="[object z]"===String(o)},function(e,t,n){"use strict";var o=n(0),r=n(202),a=n(36),i=n(53),c=n(43),l=n(25),u=n(22),d=n(11),s=n(38),p=n(65),m=n(134),f=m.IteratorPrototype,h=m.BUGGY_SAFARI_ITERATORS,C=d("iterator"),g=function(){return this};e.exports=function(e,t,n,d,m,b,v){r(n,t,d);var N,V,y,_=function(e){if(e===m&&B)return B;if(!h&&e in L)return L[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",k=!1,L=e.prototype,w=L[C]||L["@@iterator"]||m&&L[m],B=!h&&w||_(m),S="Array"==t&&L.entries||w;if(S&&(N=a(S.call(new e)),f!==Object.prototype&&N.next&&(s||a(N)===f||(i?i(N,f):"function"!=typeof N[C]&&l(N,C,g)),c(N,x,!0,!0),s&&(p[x]=g))),"values"==m&&w&&"values"!==w.name&&(k=!0,B=function(){return w.call(this)}),s&&!v||L[C]===B||l(L,C,B),p[t]=B,m)if(V={values:_("values"),keys:b?B:_("keys"),entries:_("entries")},v)for(y in V)!h&&!k&&y in L||u(L,y,V[y]);else o({target:t,proto:!0,forced:h||k},V);return V}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){"use strict";var o=n(10),r=n(104),a=n(21),i=Math.ceil,c=function(e){return function(t,n,c){var l,u,d=String(a(t)),s=d.length,p=c===undefined?" ":String(c),m=o(n);return m<=s||""==p?d:(l=m-s,(u=r.call(p,i(l/p.length))).length>l&&(u=u.slice(0,l)),e?d+u:u+d)}};e.exports={start:c(!1),end:c(!0)}},function(e,t,n){"use strict";var o=n(29),r=n(21);e.exports="".repeat||function(e){var t=String(r(this)),n="",a=o(e);if(a<0||a==Infinity)throw RangeError("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))1&a&&(n+=t);return n}},function(e,t,n){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t,n){"use strict";var o,r,a,i=n(5),c=n(4),l=n(32),u=n(48),d=n(127),s=n(88),p=n(146),m=i.location,f=i.setImmediate,h=i.clearImmediate,C=i.process,g=i.MessageChannel,b=i.Dispatch,v=0,N={},V=function(e){if(N.hasOwnProperty(e)){var t=N[e];delete N[e],t()}},y=function(e){return function(){V(e)}},_=function(e){V(e.data)},x=function(e){i.postMessage(e+"",m.protocol+"//"+m.host)};f&&h||(f=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return N[++v]=function(){("function"==typeof e?e:Function(e)).apply(undefined,t)},o(v),v},h=function(e){delete N[e]},"process"==l(C)?o=function(e){C.nextTick(y(e))}:b&&b.now?o=function(e){b.now(y(e))}:g&&!p?(a=(r=new g).port2,r.port1.onmessage=_,o=u(a.postMessage,a,1)):!i.addEventListener||"function"!=typeof postMessage||i.importScripts||c(x)?o="onreadystatechange"in s("script")?function(e){d.appendChild(s("script")).onreadystatechange=function(){d.removeChild(this),V(e)}}:function(e){setTimeout(y(e),0)}:(o=x,i.addEventListener("message",_,!1))),e.exports={set:f,clear:h}},function(e,t,n){"use strict";var o=n(6),r=n(32),a=n(11)("match");e.exports=function(e){var t;return o(e)&&((t=e[a])!==undefined?!!t:"RegExp"==r(e))}},function(e,t,n){"use strict";var o=n(29),r=n(21),a=function(e){return function(t,n){var a,i,c=String(r(t)),l=o(n),u=c.length;return l<0||l>=u?e?"":undefined:(a=c.charCodeAt(l))<55296||a>56319||l+1===u||(i=c.charCodeAt(l+1))<56320||i>57343?e?c.charAt(l):a:e?c.slice(l,l+2):i-56320+(a-55296<<10)+65536}};e.exports={codeAt:a(!1),charAt:a(!0)}},function(e,t,n){"use strict";var o=n(107);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){"use strict";var o=n(11)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[o]=!1,"/./"[e](t)}catch(r){}}return!1}},function(e,t,n){"use strict";var o=n(108).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},function(e,t,n){"use strict";var o=n(4),r=n(81);e.exports=function(e){return o((function(){return!!r[e]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[e]()||r[e].name!==e}))}},function(e,t,n){"use strict";var o=n(5),r=n(4),a=n(75),i=n(7).NATIVE_ARRAY_BUFFER_VIEWS,c=o.ArrayBuffer,l=o.Int8Array;e.exports=!i||!r((function(){l(1)}))||!r((function(){new l(-1)}))||!a((function(e){new l,new l(null),new l(1.5),new l(e)}),!0)||r((function(){return 1!==new l(new c(2),1,undefined).length}))},function(e,t,n){"use strict";t.__esModule=!0,t.ButtonInput=t.ButtonConfirm=t.ButtonCheckbox=t.Button=void 0;var o=n(1),r=n(12),a=n(19),i=n(115),c=n(51),l=n(116),u=n(17),d=n(87),s=n(159);n(160),n(161);function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function m(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var f=(0,c.createLogger)("Button"),h=function(e){var t=e.className,n=e.fluid,c=e.icon,p=e.color,h=e.disabled,C=e.selected,g=e.tooltip,b=e.tooltipPosition,v=e.ellipsis,N=e.content,V=e.iconRotation,y=e.iconSpin,_=e.children,x=e.onclick,k=e.onClick,L=m(e,["className","fluid","icon","color","disabled","selected","tooltip","tooltipPosition","ellipsis","content","iconRotation","iconSpin","children","onclick","onClick"]),w=!(!N&&!_);return x&&f.warn("Lowercase 'onclick' is not supported on Button and lowercase prop names are discouraged in general. Please use a camelCase'onClick' instead and read: https://infernojs.org/docs/guides/event-handling"),(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({as:"span",className:(0,r.classes)(["Button",n&&"Button--fluid",h&&"Button--disabled",C&&"Button--selected",w&&"Button--hasContent",v&&"Button--ellipsis",p&&"string"==typeof p?"Button--color--"+p:"Button--color--default",t]),tabIndex:!h&&"0",unselectable:a.tridentVersion<=4,onclick:function(e){(0,l.refocusLayout)(),!h&&k&&k(e)},onKeyDown:function(e){var t=window.event?e.which:e.keyCode;return t===i.KEY_SPACE||t===i.KEY_ENTER?(e.preventDefault(),void(!h&&k&&k(e))):t===i.KEY_ESCAPE?(e.preventDefault(),void(0,l.refocusLayout)()):void 0}},L,{children:[c&&(0,o.createComponentVNode)(2,d.Icon,{name:c,rotation:V,spin:y}),N,_,g&&(0,o.createComponentVNode)(2,s.Tooltip,{content:g,position:b})]})))};t.Button=h,h.defaultHooks=r.pureComponentHooks;var C=function(e){var t=e.checked,n=m(e,["checked"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({color:"transparent",icon:t?"check-square-o":"square-o",selected:t},n)))};t.ButtonCheckbox=C,h.Checkbox=C;var g=function(e){function t(){var t;return(t=e.call(this)||this).state={clickedOnce:!1},t.handleClick=function(){t.state.clickedOnce&&t.setClickedOnce(!1)},t}p(t,e);var n=t.prototype;return n.setClickedOnce=function(e){var t=this;this.setState({clickedOnce:e}),e?setTimeout((function(){return window.addEventListener("click",t.handleClick)})):window.removeEventListener("click",this.handleClick)},n.render=function(){var e=this,t=this.props,n=t.confirmMessage,r=void 0===n?"Confirm?":n,a=t.confirmColor,i=void 0===a?"bad":a,c=t.color,l=t.content,u=t.onClick,d=m(t,["confirmMessage","confirmColor","color","content","onClick"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({content:this.state.clickedOnce?r:l,color:this.state.clickedOnce?i:c,onClick:function(){return e.state.clickedOnce?u():e.setClickedOnce(!0)}},d)))},t}(o.Component);t.ButtonConfirm=g,h.Confirm=g;var b=function(e){function t(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={inInput:!1},t}p(t,e);var n=t.prototype;return n.setInInput=function(e){if(this.setState({inInput:e}),this.inputRef){var t=this.inputRef.current;if(e){t.value=this.props.currentValue||"";try{t.focus(),t.select()}catch(n){}}}},n.commitResult=function(e){if(this.inputRef){var t=this.inputRef.current;if(""!==t.value)return void this.props.onCommit(e,t.value);if(!this.props.defaultValue)return;this.props.onCommit(e,this.props.defaultValue)}},n.render=function(){var e=this,t=this.props,n=t.fluid,a=t.content,c=t.color,l=void 0===c?"default":c,d=(t.placeholder,t.maxLength,m(t,["fluid","content","color","placeholder","maxLength"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid","Button--color--"+l])},d,{onClick:function(){return e.setInInput(!0)},children:[(0,o.createVNode)(1,"div",null,a,0),(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:this.state.inInput?undefined:"none","text-align":"left"},onBlur:function(t){e.state.inInput&&(e.setInInput(!1),e.commitResult(t))},onKeyDown:function(t){if(t.keyCode===i.KEY_ENTER)return e.setInInput(!1),void e.commitResult(t);t.keyCode===i.KEY_ESCAPE&&e.setInInput(!1)}},null,this.inputRef)]})))},t}(o.Component);t.ButtonInput=b,h.Input=b},function(e,t,n){"use strict";t.__esModule=!0,t.hotKeyReducer=t.hotKeyMiddleware=t.releaseHeldKeys=t.KEY_MINUS=t.KEY_EQUAL=t.KEY_Z=t.KEY_Y=t.KEY_X=t.KEY_W=t.KEY_V=t.KEY_U=t.KEY_T=t.KEY_S=t.KEY_R=t.KEY_Q=t.KEY_P=t.KEY_O=t.KEY_N=t.KEY_M=t.KEY_L=t.KEY_K=t.KEY_J=t.KEY_I=t.KEY_H=t.KEY_G=t.KEY_F=t.KEY_E=t.KEY_D=t.KEY_C=t.KEY_B=t.KEY_A=t.KEY_9=t.KEY_8=t.KEY_7=t.KEY_6=t.KEY_5=t.KEY_4=t.KEY_3=t.KEY_2=t.KEY_1=t.KEY_0=t.KEY_SPACE=t.KEY_ESCAPE=t.KEY_ALT=t.KEY_CTRL=t.KEY_SHIFT=t.KEY_ENTER=t.KEY_TAB=t.KEY_BACKSPACE=void 0;var o=n(51),r=n(19),a=(0,o.createLogger)("hotkeys");t.KEY_BACKSPACE=8;t.KEY_TAB=9;t.KEY_ENTER=13;t.KEY_SHIFT=16;t.KEY_CTRL=17;t.KEY_ALT=18;t.KEY_ESCAPE=27;t.KEY_SPACE=32;t.KEY_0=48;t.KEY_1=49;t.KEY_2=50;t.KEY_3=51;t.KEY_4=52;t.KEY_5=53;t.KEY_6=54;t.KEY_7=55;t.KEY_8=56;t.KEY_9=57;t.KEY_A=65;t.KEY_B=66;t.KEY_C=67;t.KEY_D=68;t.KEY_E=69;t.KEY_F=70;t.KEY_G=71;t.KEY_H=72;t.KEY_I=73;t.KEY_J=74;t.KEY_K=75;t.KEY_L=76;t.KEY_M=77;t.KEY_N=78;t.KEY_O=79;t.KEY_P=80;t.KEY_Q=81;t.KEY_R=82;t.KEY_S=83;t.KEY_T=84;t.KEY_U=85;t.KEY_V=86;t.KEY_W=87;t.KEY_X=88;t.KEY_Y=89;t.KEY_Z=90;t.KEY_EQUAL=187;t.KEY_MINUS=189;var i=[17,18,16],c=[27,13,32,9,17,16],l={},u=function(e,t,n,o){var r="";return e&&(r+="Ctrl+"),t&&(r+="Alt+"),n&&(r+="Shift+"),r+=o>=48&&o<=90?String.fromCharCode(o):"["+o+"]"},d=function(e){var t=window.event?e.which:e.keyCode,n=e.ctrlKey,o=e.altKey,r=e.shiftKey;return{keyCode:t,ctrlKey:n,altKey:o,shiftKey:r,hasModifierKeys:n||o||r,keyString:u(n,o,r,t)}},s=function(){for(var e=0,t=Object.keys(l);e4&&function(e,t){if(!e.defaultPrevented){var n=e.target&&e.target.localName;if("input"!==n&&"textarea"!==n){var o=d(e),i=o.keyCode,u=o.ctrlKey,s=o.shiftKey;u||s||c.includes(i)||("keydown"!==t||l[i]?"keyup"===t&&l[i]&&(a.debug("passthrough",t,o),(0,r.callByond)("",{__keyup:i})):(a.debug("passthrough",t,o),(0,r.callByond)("",{__keydown:i})))}}}(e,t),function(e,t,n){if("keyup"===t){var o=d(e),r=o.ctrlKey,c=o.altKey,l=o.keyCode,u=o.hasModifierKeys,s=o.keyString;u&&!i.includes(l)&&(a.log(s),r&&c&&8===l&&setTimeout((function(){throw new Error("OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle fucko boingo! The code monkeys at our headquarters are working VEWY HAWD to fix this!")})),n({type:"hotKey",payload:o}))}}(e,t,n)},document.addEventListener("keydown",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keydown"),l[n]=!0})),document.addEventListener("keyup",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keyup"),l[n]=!1})),r.tridentVersion>4&&function(e){var t;document.addEventListener("focusout",(function(){t=setTimeout(e)})),document.addEventListener("focusin",(function(){clearTimeout(t)})),window.addEventListener("beforeunload",e)}((function(){s()})),function(e){return function(t){return e(t)}}};t.hotKeyReducer=function(e,t){var n=t.type,o=t.payload;if("hotKey"===n){var r=o.ctrlKey,a=o.altKey,i=o.keyCode;return r&&a&&187===i?Object.assign({},e,{showKitchenSink:!e.showKitchenSink}):e}return e}},function(e,t,n){"use strict";t.__esModule=!0,t.refocusLayout=void 0;var o=n(19);t.refocusLayout=function(){if(!(o.tridentVersion<=4)){var e=document.getElementById("Layout__content");e&&e.focus()}}},function(e,t,n){"use strict";t.__esModule=!0,t.toastReducer=t.showToast=t.Toast=void 0;var o,r=n(1),a=n(12),i=function(e){var t=e.content,n=e.children;return(0,r.createVNode)(1,"div","Layout__toast",[t,n],0)};t.Toast=i,i.defaultHooks=a.pureComponentHooks;t.showToast=function(e,t){o&&clearTimeout(o),o=setTimeout((function(){o=undefined,e({type:"hideToast"})}),5e3),e({type:"showToast",payload:{text:t}})};t.toastReducer=function(e,t){var n=t.type,o=t.payload;if("showToast"===n){var r=o.text;return Object.assign({},e,{toastText:r})}return"hideToast"===n?Object.assign({},e,{toastText:null}):e}},function(e,t,n){"use strict";var o;o=function(){return this}();try{o=o||new Function("return this")()}catch(r){"object"==typeof window&&(o=window)}e.exports=o},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(88);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(5),r=n(89),a=o["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=a},function(e,t,n){"use strict";var o=n(5),r=n(90),a=o.WeakMap;e.exports="function"==typeof a&&/native code/.test(r(a))},function(e,t,n){"use strict";var o=n(15),r=n(92),a=n(18),i=n(13);e.exports=function(e,t){for(var n=r(t),c=i.f,l=a.f,u=0;ul;)o(c,n=t[l++])&&(~a(u,n)||u.push(n));return u}},function(e,t,n){"use strict";var o=n(95);e.exports=o&&!Symbol.sham&&"symbol"==typeof Symbol()},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(8),i=n(62);e.exports=o?Object.defineProperties:function(e,t){a(e);for(var n,o=i(t),c=o.length,l=0;c>l;)r.f(e,n=o[l++],t[n]);return e}},function(e,t,n){"use strict";var o=n(35);e.exports=o("document","documentElement")},function(e,t,n){"use strict";var o=n(24),r=n(47).f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(e){try{return r(e)}catch(t){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?c(e):r(o(e))}},function(e,t,n){"use strict";var o=n(11);t.f=o},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10),i=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=a(n.length),l=r(e,c),u=r(t,c),d=arguments.length>2?arguments[2]:undefined,s=i((d===undefined?c:r(d,c))-u,c-l),p=1;for(u0;)u in n?n[l]=n[u]:delete n[l],l+=p,u+=p;return n}},function(e,t,n){"use strict";var o=n(52),r=n(10),a=n(48);e.exports=function i(e,t,n,c,l,u,d,s){for(var p,m=l,f=0,h=!!d&&a(d,s,3);f0&&o(p))m=i(e,t,p,r(p.length),m,u-1)-1;else{if(m>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[m]=p}m++}f++}return m}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e,t,n,r){try{return r?t(o(n)[0],n[1]):t(n)}catch(i){var a=e["return"];throw a!==undefined&&o(a.call(e)),i}}},function(e,t,n){"use strict";var o=n(24),r=n(44),a=n(65),i=n(34),c=n(101),l=i.set,u=i.getterFor("Array Iterator");e.exports=c(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:o(e),index:0,kind:t})}),(function(){var e=u(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?(e.target=undefined,{value:undefined,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var o,r,a,i=n(36),c=n(25),l=n(15),u=n(11),d=n(38),s=u("iterator"),p=!1;[].keys&&("next"in(a=[].keys())?(r=i(i(a)))!==Object.prototype&&(o=r):p=!0),o==undefined&&(o={}),d||l(o,s)||c(o,s,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:p}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var o=n(24),r=n(29),a=n(10),i=n(39),c=Math.min,l=[].lastIndexOf,u=!!l&&1/[1].lastIndexOf(1,-0)<0,d=i("lastIndexOf");e.exports=u||d?function(e){if(u)return l.apply(this,arguments)||0;var t=o(this),n=a(t.length),i=n-1;for(arguments.length>1&&(i=c(i,r(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:l},function(e,t,n){"use strict";var o=n(29),r=n(10);e.exports=function(e){if(e===undefined)return 0;var t=o(e),n=r(t);if(t!==n)throw RangeError("Wrong length or index");return n}},function(e,t,n){"use strict";var o=n(30),r=n(6),a=[].slice,i={},c=function(e,t,n){if(!(t in i)){for(var o=[],r=0;r1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),a(d.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),s&&o(d.prototype,"size",{get:function(){return m(this).size}}),d},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),a=h(o);u(e,t,(function(e,t){f(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=a(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),d(t)}}},function(e,t,n){"use strict";var o=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:o(1+e)}},function(e,t,n){"use strict";var o=n(6),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseInt,c=/^[+-]?0[Xx]/,l=8!==i(a+"08")||22!==i(a+"0x16");e.exports=l?function(e,t){var n=r(String(e));return i(n,t>>>0||(c.test(n)?16:10))}:i},function(e,t,n){"use strict";var o=n(9),r=n(62),a=n(24),i=n(71).f,c=function(e){return function(t){for(var n,c=a(t),l=r(c),u=l.length,d=0,s=[];u>d;)n=l[d++],o&&!i.call(c,n)||s.push(e?[n,c[n]]:c[n]);return s}};e.exports={entries:c(!0),values:c(!1)}},function(e,t,n){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){"use strict";var o=n(5);e.exports=o.Promise},function(e,t,n){"use strict";var o=n(73);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(o)},function(e,t,n){"use strict";var o,r,a,i,c,l,u,d,s=n(5),p=n(18).f,m=n(32),f=n(106).set,h=n(146),C=s.MutationObserver||s.WebKitMutationObserver,g=s.process,b=s.Promise,v="process"==m(g),N=p(s,"queueMicrotask"),V=N&&N.value;V||(o=function(){var e,t;for(v&&(e=g.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?i():a=undefined,n}}a=undefined,e&&e.enter()},v?i=function(){g.nextTick(o)}:C&&!h?(c=!0,l=document.createTextNode(""),new C(o).observe(l,{characterData:!0}),i=function(){l.data=c=!c}):b&&b.resolve?(u=b.resolve(undefined),d=u.then,i=function(){d.call(u,o)}):i=function(){f.call(s,o)}),e.exports=V||function(e){var t={fn:e,next:undefined};a&&(a.next=t),r||(r=t,i()),a=t}},function(e,t,n){"use strict";var o=n(8),r=n(6),a=n(149);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;var n=a.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var o=n(30),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},function(e,t,n){"use strict";var o=n(73);e.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o)},function(e,t,n){"use strict";var o=n(347);e.exports=function(e,t){var n=o(e);if(n%t)throw RangeError("Wrong offset");return n}},function(e,t,n){"use strict";var o=n(14),r=n(10),a=n(99),i=n(98),c=n(48),l=n(7).aTypedArrayConstructor;e.exports=function(e){var t,n,u,d,s,p,m=o(e),f=arguments.length,h=f>1?arguments[1]:undefined,C=h!==undefined,g=a(m);if(g!=undefined&&!i(g))for(p=(s=g.call(m)).next,m=[];!(d=p.call(s)).done;)m.push(d.value);for(C&&f>2&&(h=c(h,arguments[2],2)),n=r(m.length),u=new(l(this))(n),t=0;n>t;t++)u[t]=C?h(m[t],t):m[t];return u}},function(e,t,n){"use strict";var o=n(66),r=n(50).getWeakData,a=n(8),i=n(6),c=n(55),l=n(68),u=n(16),d=n(15),s=n(34),p=s.set,m=s.getterFor,f=u.find,h=u.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},v=function(e,t){return f(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=v(this,e);if(t)return t[1]},has:function(e){return!!v(this,e)},set:function(e,t){var n=v(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,u){var s=e((function(e,o){c(e,s,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[u],e,n)})),f=m(t),h=function(e,t,n){var o=f(e),i=r(a(t),!0);return!0===i?g(o).set(t,n):i[o.id]=n,e};return o(s.prototype,{"delete":function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&d(n,t.id)&&delete n[t.id]},has:function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&d(n,t.id)}}),o(s.prototype,n?{get:function(e){var t=f(this);if(i(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),s}}},function(e,t,n){"use strict";t.__esModule=!0,t.setupHotReloading=t.sendLogEntry=void 0;t.sendLogEntry=function(e,t){};t.setupHotReloading=function(){0}},function(e,t,n){"use strict";t.__esModule=!0,t.resizeStartHandler=t.dragStartHandler=t.setupDrag=void 0;var o,r,a,i,c,l=n(156),u=n(19),d=(0,n(51).createLogger)("drag"),s=!1,p=!1,m=[0,0],f=function(e){return(0,u.winget)(e,"pos").then((function(e){return[e.x,e.y]}))},h=function(e,t){return(0,u.winset)(e,"pos",t[0]+","+t[1])},C=function(e){var t,n,r,a;return regeneratorRuntime.async((function(i){for(;;)switch(i.prev=i.next){case 0:return d.log("setting up"),o=e.config.window,i.next=4,regeneratorRuntime.awrap(f(o));case 4:t=i.sent,m=[t[0]-window.screenLeft,t[1]-window.screenTop],n=g(t),r=n[0],a=n[1],r&&h(o,a),d.debug("current state",{ref:o,screenOffset:m});case 9:case"end":return i.stop()}}))};t.setupDrag=C;var g=function(e){var t=e[0],n=e[1],o=!1;return t<0?(t=0,o=!0):t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth,o=!0),n<0?(n=0,o=!0):n+window.innerHeight>window.screen.availHeight&&(n=window.screen.availHeight-window.innerHeight,o=!0),[o,[t,n]]};t.dragStartHandler=function(e){d.log("drag start"),s=!0,r=[window.screenLeft-e.screenX,window.screenTop-e.screenY],document.addEventListener("mousemove",v),document.addEventListener("mouseup",b),v(e)};var b=function y(e){d.log("drag end"),v(e),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",y),s=!1},v=function(e){s&&(e.preventDefault(),h(o,(0,l.vecAdd)([e.screenX,e.screenY],m,r)))};t.resizeStartHandler=function(e,t){return function(n){a=[e,t],d.log("resize start",a),p=!0,r=[window.screenLeft-n.screenX,window.screenTop-n.screenY],i=[window.innerWidth,window.innerHeight],document.addEventListener("mousemove",V),document.addEventListener("mouseup",N),V(n)}};var N=function _(e){d.log("resize end",c),V(e),document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",_),p=!1},V=function(e){p&&(e.preventDefault(),(c=(0,l.vecAdd)(i,(0,l.vecMultiply)(a,(0,l.vecAdd)([e.screenX,e.screenY],(0,l.vecInverse)([window.screenLeft,window.screenTop]),r,[1,1]))))[0]=Math.max(c[0],250),c[1]=Math.max(c[1],120),function(e,t){(0,u.winset)(e,"size",t[0]+","+t[1])}(o,c))}},function(e,t,n){"use strict";t.__esModule=!0,t.vecNormalize=t.vecLength=t.vecInverse=t.vecScale=t.vecDivide=t.vecMultiply=t.vecSubtract=t.vecAdd=t.vecCreate=void 0;var o=n(23);t.vecCreate=function(){for(var e=arguments.length,t=new Array(e),n=0;n35;return(0,o.createVNode)(1,"div",(0,r.classes)(["Tooltip",i&&"Tooltip--long",a&&"Tooltip--"+a]),null,1,{"data-tooltip":t})}},function(e,t,n){"use strict";t.__esModule=!0,t.Input=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={editing:!1},t.handleInput=function(e){var n=t.state.editing,o=t.props.onInput;n||t.setEditing(!0),o&&o(e,e.target.value)},t.handleFocus=function(e){t.state.editing||t.setEditing(!0)},t.handleBlur=function(e){var n=t.state.editing,o=t.props.onChange;n&&(t.setEditing(!1),o&&o(e,e.target.value))},t.handleKeyDown=function(e){var n=t.props,o=n.onInput,r=n.onChange,a=n.onEnter;return 13===e.keyCode?(t.setEditing(!1),r&&r(e,e.target.value),o&&o(e,e.target.value),a&&a(e,e.target.value),void(t.props.selfClear?e.target.value="":e.target.blur())):27===e.keyCode?(t.setEditing(!1),e.target.value=c(t.props.value),void e.target.blur()):void 0},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentDidMount=function(){var e=this.props.value,t=this.inputRef.current;t&&(t.value=c(e))},u.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,a=this.inputRef.current;a&&!n&&o!==r&&(a.value=c(r))},u.setEditing=function(e){this.setState({editing:e})},u.render=function(){var e=this.props,t=(e.selfClear,e.onInput,e.onChange,e.onEnter,e.value,e.maxLength),n=e.placeholder,c=i(e,["selfClear","onInput","onChange","onEnter","value","maxLength","placeholder"]),l=c.className,u=c.fluid,d=i(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Input",u&&"Input--fluid",l])},d,{children:[(0,o.createVNode)(1,"div","Input__baseline",".",16),(0,o.createVNode)(64,"input","Input__input",null,1,{placeholder:n,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,maxLength:t},null,this.inputRef)]})))},l}(o.Component);t.Input=l},function(e,t,n){"use strict";t.__esModule=!0,t.GridColumn=t.Grid=void 0;var o=n(1),r=n(162),a=n(12);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.children,n=i(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table,Object.assign({},n,{children:(0,o.createComponentVNode)(2,r.Table.Row,{children:t})})))};t.Grid=c,c.defaultHooks=a.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t,a=e.style,c=i(e,["size","style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table.Cell,Object.assign({style:Object.assign({width:n+"%"},a)},c)))};t.GridColumn=l,c.defaultHooks=a.pureComponentHooks,c.Column=l},function(e,t,n){"use strict";t.__esModule=!0,t.TableCell=t.TableRow=t.Table=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.collapsing,n=e.className,c=e.content,l=e.children,u=i(e,["collapsing","className","content","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"table",className:(0,r.classes)(["Table",t&&"Table--collapsing",n])},u,{children:(0,o.createVNode)(1,"tbody",null,[c,l],0)})))};t.Table=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.header,c=i(e,["className","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"tr",className:(0,r.classes)(["Table__row",n&&"Table__row--header",t])},c)))};t.TableRow=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.collapsing,c=e.header,l=i(e,["className","collapsing","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"td",className:(0,r.classes)(["Table__cell",n&&"Table__cell--collapsing",c&&"Table__cell--header",t])},l)))};t.TableCell=u,u.defaultHooks=r.pureComponentHooks,c.Row=l,c.Cell=u},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListDivider=t.LabeledListItem=t.LabeledList=void 0;var o=n(1),r=n(12),a=n(17),i=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=i,i.defaultHooks=r.pureComponentHooks;var c=function(e){var t=e.className,n=e.label,i=e.labelColor,c=void 0===i?"label":i,l=e.color,u=e.buttons,d=e.content,s=e.children;return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:c,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),content:n+":"}),(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:u?undefined:2,children:[d,s]}),u&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",u,0)],0)};t.LabeledListItem=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,null,1,{style:{"padding-bottom":(0,a.unit)(n)}}),2)};t.LabeledListDivider=l,l.defaultHooks=r.pureComponentHooks,i.Item=c,i.Divider=l},function(e,t,n){n(165),n(166),n(167),n(168),n(169),n(170),e.exports=n(171)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";n(172),n(173),n(174),n(175),n(176),n(177),n(178),n(179),n(180),n(181),n(182),n(183),n(184),n(185),n(186),n(187),n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(197),n(199),n(200),n(201),n(133),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(210),n(211),n(212),n(213),n(214),n(215),n(216),n(218),n(219),n(220),n(221),n(222),n(224),n(225),n(227),n(228),n(229),n(230),n(231),n(232),n(233),n(234),n(235),n(236),n(237),n(238),n(239),n(240),n(242),n(243),n(244),n(245),n(246),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(254),n(256),n(257),n(258),n(259),n(260),n(261),n(263),n(264),n(266),n(268),n(269),n(270),n(271),n(272),n(273),n(274),n(275),n(276),n(277),n(278),n(279),n(280),n(281),n(282),n(283),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(292),n(293),n(294),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(305),n(306),n(307),n(308),n(309),n(310),n(311),n(312),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(326),n(327),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),n(360),n(361),n(362),n(363),n(364),n(365),n(366),n(367),n(368),n(369),n(370),n(371),n(372),n(373),n(374),n(375),n(376),n(377),n(378),n(379),n(380),n(381),n(382),n(383),n(384),n(385);var o=n(1);n(387),n(388);var r=n(389),a=(n(154),n(3)),i=n(19),c=n(155),l=n(51),u=n(157),d=n(501),s=(0,l.createLogger)(),p=(0,d.createStore)(),m=document.getElementById("react-root"),f=!0,h=!1,C=function(){for(p.subscribe((function(){!function(){if(!h){0;try{var e=p.getState();if(f){if(s.log("initial render",e),!(0,u.getRoute)(e)){if(s.info("loading old tgui"),h=!0,window.update=window.initialize=function(){},i.tridentVersion<=4)return void setTimeout((function(){location.href="tgui-fallback.html?ref="+window.__ref__}),10);document.getElementById("data").textContent=JSON.stringify(e),(0,r.loadCSS)("v4shim.css"),(0,r.loadCSS)("tgui.css");var t=document.getElementsByTagName("head")[0],a=document.createElement("script");return a.type="text/javascript",a.src="tgui.js",void t.appendChild(a)}(0,c.setupDrag)(e)}var l=n(503).Layout,d=(0,o.createComponentVNode)(2,l,{state:e,dispatch:p.dispatch});(0,o.render)(d,m)}catch(C){s.error("rendering error",C)}f&&(f=!1)}}()})),window.update=window.initialize=function(e){var t=function(e){var t=function(e,t){return"object"==typeof t&&null!==t&&t.__number__?parseFloat(t.__number__):t};i.tridentVersion<=4&&(t=undefined);try{return JSON.parse(e,t)}catch(o){s.log(o),s.log("What we got:",e);var n=o&&o.message;throw new Error("JSON parsing error: "+n)}}(e);p.dispatch((0,a.backendUpdate)(t))};;){var e=window.__updateQueue__.shift();if(!e)break;window.update(e)}(0,r.loadCSS)("font-awesome.css")};i.tridentVersion<=4&&"loading"===document.readyState?document.addEventListener("DOMContentLoaded",C):C()},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(35),i=n(38),c=n(9),l=n(95),u=n(125),d=n(4),s=n(15),p=n(52),m=n(6),f=n(8),h=n(14),C=n(24),g=n(33),b=n(46),v=n(42),N=n(62),V=n(47),y=n(128),_=n(94),x=n(18),k=n(13),L=n(71),w=n(25),B=n(22),S=n(91),I=n(72),T=n(59),A=n(58),E=n(11),P=n(129),M=n(26),O=n(43),R=n(34),F=n(16).forEach,D=I("hidden"),j=E("toPrimitive"),z=R.set,G=R.getterFor("Symbol"),H=Object.prototype,U=r.Symbol,K=a("JSON","stringify"),Y=x.f,q=k.f,W=y.f,$=L.f,Q=S("symbols"),X=S("op-symbols"),J=S("string-to-symbol-registry"),Z=S("symbol-to-string-registry"),ee=S("wks"),te=r.QObject,ne=!te||!te.prototype||!te.prototype.findChild,oe=c&&d((function(){return 7!=v(q({},"a",{get:function(){return q(this,"a",{value:7}).a}})).a}))?function(e,t,n){var o=Y(H,t);o&&delete H[t],q(e,t,n),o&&e!==H&&q(H,t,o)}:q,re=function(e,t){var n=Q[e]=v(U.prototype);return z(n,{type:"Symbol",tag:e,description:t}),c||(n.description=t),n},ae=l&&"symbol"==typeof U.iterator?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof U},ie=function(e,t,n){e===H&&ie(X,t,n),f(e);var o=g(t,!0);return f(n),s(Q,o)?(n.enumerable?(s(e,D)&&e[D][o]&&(e[D][o]=!1),n=v(n,{enumerable:b(0,!1)})):(s(e,D)||q(e,D,b(1,{})),e[D][o]=!0),oe(e,o,n)):q(e,o,n)},ce=function(e,t){f(e);var n=C(t),o=N(n).concat(pe(n));return F(o,(function(t){c&&!ue.call(n,t)||ie(e,t,n[t])})),e},le=function(e,t){return t===undefined?v(e):ce(v(e),t)},ue=function(e){var t=g(e,!0),n=$.call(this,t);return!(this===H&&s(Q,t)&&!s(X,t))&&(!(n||!s(this,t)||!s(Q,t)||s(this,D)&&this[D][t])||n)},de=function(e,t){var n=C(e),o=g(t,!0);if(n!==H||!s(Q,o)||s(X,o)){var r=Y(n,o);return!r||!s(Q,o)||s(n,D)&&n[D][o]||(r.enumerable=!0),r}},se=function(e){var t=W(C(e)),n=[];return F(t,(function(e){s(Q,e)||s(T,e)||n.push(e)})),n},pe=function(e){var t=e===H,n=W(t?X:C(e)),o=[];return F(n,(function(e){!s(Q,e)||t&&!s(H,e)||o.push(Q[e])})),o};(l||(B((U=function(){if(this instanceof U)throw TypeError("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?String(arguments[0]):undefined,t=A(e),n=function o(e){this===H&&o.call(X,e),s(this,D)&&s(this[D],t)&&(this[D][t]=!1),oe(this,t,b(1,e))};return c&&ne&&oe(H,t,{configurable:!0,set:n}),re(t,e)}).prototype,"toString",(function(){return G(this).tag})),L.f=ue,k.f=ie,x.f=de,V.f=y.f=se,_.f=pe,c&&(q(U.prototype,"description",{configurable:!0,get:function(){return G(this).description}}),i||B(H,"propertyIsEnumerable",ue,{unsafe:!0}))),u||(P.f=function(e){return re(E(e),e)}),o({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:U}),F(N(ee),(function(e){M(e)})),o({target:"Symbol",stat:!0,forced:!l},{"for":function(e){var t=String(e);if(s(J,t))return J[t];var n=U(t);return J[t]=n,Z[n]=t,n},keyFor:function(e){if(!ae(e))throw TypeError(e+" is not a symbol");if(s(Z,e))return Z[e]},useSetter:function(){ne=!0},useSimple:function(){ne=!1}}),o({target:"Object",stat:!0,forced:!l,sham:!c},{create:le,defineProperty:ie,defineProperties:ce,getOwnPropertyDescriptor:de}),o({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:se,getOwnPropertySymbols:pe}),o({target:"Object",stat:!0,forced:d((function(){_.f(1)}))},{getOwnPropertySymbols:function(e){return _.f(h(e))}}),K)&&o({target:"JSON",stat:!0,forced:!l||d((function(){var e=U();return"[null]"!=K([e])||"{}"!=K({a:e})||"{}"!=K(Object(e))}))},{stringify:function(e,t,n){for(var o,r=[e],a=1;arguments.length>a;)r.push(arguments[a++]);if(o=t,(m(t)||e!==undefined)&&!ae(e))return p(t)||(t=function(e,t){if("function"==typeof o&&(t=o.call(this,e,t)),!ae(t))return t}),r[1]=t,K.apply(null,r)}});U.prototype[j]||w(U.prototype,j,U.prototype.valueOf),O(U,"Symbol"),T[D]=!0},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(5),i=n(15),c=n(6),l=n(13).f,u=n(122),d=a.Symbol;if(r&&"function"==typeof d&&(!("description"in d.prototype)||d().description!==undefined)){var s={},p=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:String(arguments[0]),t=this instanceof p?new d(e):e===undefined?d():d(e);return""===e&&(s[t]=!0),t};u(p,d);var m=p.prototype=d.prototype;m.constructor=p;var f=m.toString,h="Symbol(test)"==String(d("test")),C=/^Symbol\((.*)\)[^)]+$/;l(m,"description",{configurable:!0,get:function(){var e=c(this)?this.valueOf():this,t=f.call(e);if(i(s,e))return"";var n=h?t.slice(7,-1):t.replace(C,"$1");return""===n?undefined:n}}),o({global:!0,forced:!0},{Symbol:p})}},function(e,t,n){"use strict";n(26)("asyncIterator")},function(e,t,n){"use strict";n(26)("hasInstance")},function(e,t,n){"use strict";n(26)("isConcatSpreadable")},function(e,t,n){"use strict";n(26)("iterator")},function(e,t,n){"use strict";n(26)("match")},function(e,t,n){"use strict";n(26)("replace")},function(e,t,n){"use strict";n(26)("search")},function(e,t,n){"use strict";n(26)("species")},function(e,t,n){"use strict";n(26)("split")},function(e,t,n){"use strict";n(26)("toPrimitive")},function(e,t,n){"use strict";n(26)("toStringTag")},function(e,t,n){"use strict";n(26)("unscopables")},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(52),i=n(6),c=n(14),l=n(10),u=n(49),d=n(63),s=n(64),p=n(11),m=n(96),f=p("isConcatSpreadable"),h=9007199254740991,C="Maximum allowed index exceeded",g=m>=51||!r((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),b=s("concat"),v=function(e){if(!i(e))return!1;var t=e[f];return t!==undefined?!!t:a(e)};o({target:"Array",proto:!0,forced:!g||!b},{concat:function(e){var t,n,o,r,a,i=c(this),s=d(i,0),p=0;for(t=-1,o=arguments.length;th)throw TypeError(C);for(n=0;n=h)throw TypeError(C);u(s,p++,a)}return s.length=p,s}})},function(e,t,n){"use strict";var o=n(0),r=n(130),a=n(44);o({target:"Array",proto:!0},{copyWithin:r}),a("copyWithin")},function(e,t,n){"use strict";var o=n(0),r=n(16).every;o({target:"Array",proto:!0,forced:n(39)("every")},{every:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(97),a=n(44);o({target:"Array",proto:!0},{fill:r}),a("fill")},function(e,t,n){"use strict";var o=n(0),r=n(16).filter,a=n(4),i=n(64)("filter"),c=i&&!a((function(){[].filter.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(16).find,a=n(44),i=!0;"find"in[]&&Array(1).find((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("find")},function(e,t,n){"use strict";var o=n(0),r=n(16).findIndex,a=n(44),i=!0;"findIndex"in[]&&Array(1).findIndex((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{findIndex:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("findIndex")},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(29),l=n(63);o({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=a(this),n=i(t.length),o=l(t,0);return o.length=r(o,t,t,n,0,e===undefined?1:c(e)),o}})},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(30),l=n(63);o({target:"Array",proto:!0},{flatMap:function(e){var t,n=a(this),o=i(n.length);return c(e),(t=l(n,0)).length=r(t,n,n,o,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},function(e,t,n){"use strict";var o=n(0),r=n(196);o({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var o=n(16).forEach,r=n(39);e.exports=r("forEach")?function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}:[].forEach},function(e,t,n){"use strict";var o=n(0),r=n(198);o({target:"Array",stat:!0,forced:!n(75)((function(e){Array.from(e)}))},{from:r})},function(e,t,n){"use strict";var o=n(48),r=n(14),a=n(132),i=n(98),c=n(10),l=n(49),u=n(99);e.exports=function(e){var t,n,d,s,p,m=r(e),f="function"==typeof this?this:Array,h=arguments.length,C=h>1?arguments[1]:undefined,g=C!==undefined,b=0,v=u(m);if(g&&(C=o(C,h>2?arguments[2]:undefined,2)),v==undefined||f==Array&&i(v))for(n=new f(t=c(m.length));t>b;b++)l(n,b,g?C(m[b],b):m[b]);else for(p=(s=v.call(m)).next,n=new f;!(d=p.call(s)).done;b++)l(n,b,g?a(s,C,[d.value,b],!0):d.value);return n.length=b,n}},function(e,t,n){"use strict";var o=n(0),r=n(60).includes,a=n(44);o({target:"Array",proto:!0},{includes:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("includes")},function(e,t,n){"use strict";var o=n(0),r=n(60).indexOf,a=n(39),i=[].indexOf,c=!!i&&1/[1].indexOf(1,-0)<0,l=a("indexOf");o({target:"Array",proto:!0,forced:c||l},{indexOf:function(e){return c?i.apply(this,arguments)||0:r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";n(0)({target:"Array",stat:!0},{isArray:n(52)})},function(e,t,n){"use strict";var o=n(134).IteratorPrototype,r=n(42),a=n(46),i=n(43),c=n(65),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(o,{next:a(1,n)}),i(e,u,!1,!0),c[u]=l,e}},function(e,t,n){"use strict";var o=n(0),r=n(57),a=n(24),i=n(39),c=[].join,l=r!=Object,u=i("join",",");o({target:"Array",proto:!0,forced:l||u},{join:function(e){return c.call(a(this),e===undefined?",":e)}})},function(e,t,n){"use strict";var o=n(0),r=n(136);o({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(e,t,n){"use strict";var o=n(0),r=n(16).map,a=n(4),i=n(64)("map"),c=i&&!a((function(){[].map.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{map:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(49);o({target:"Array",stat:!0,forced:r((function(){function e(){}return!(Array.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)a(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(0),r=n(76).left;o({target:"Array",proto:!0,forced:n(39)("reduce")},{reduce:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(76).right;o({target:"Array",proto:!0,forced:n(39)("reduceRight")},{reduceRight:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(52),i=n(41),c=n(10),l=n(24),u=n(49),d=n(64),s=n(11)("species"),p=[].slice,m=Math.max;o({target:"Array",proto:!0,forced:!d("slice")},{slice:function(e,t){var n,o,d,f=l(this),h=c(f.length),C=i(e,h),g=i(t===undefined?h:t,h);if(a(f)&&("function"!=typeof(n=f.constructor)||n!==Array&&!a(n.prototype)?r(n)&&null===(n=n[s])&&(n=undefined):n=undefined,n===Array||n===undefined))return p.call(f,C,g);for(o=new(n===undefined?Array:n)(m(g-C,0)),d=0;C1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(30),a=n(14),i=n(4),c=n(39),l=[],u=l.sort,d=i((function(){l.sort(undefined)})),s=i((function(){l.sort(null)})),p=c("sort");o({target:"Array",proto:!0,forced:d||!s||p},{sort:function(e){return e===undefined?u.call(a(this)):u.call(a(this),r(e))}})},function(e,t,n){"use strict";n(54)("Array")},function(e,t,n){"use strict";var o=n(0),r=n(41),a=n(29),i=n(10),c=n(14),l=n(63),u=n(49),d=n(64),s=Math.max,p=Math.min,m=9007199254740991,f="Maximum allowed length exceeded";o({target:"Array",proto:!0,forced:!d("splice")},{splice:function(e,t){var n,o,d,h,C,g,b=c(this),v=i(b.length),N=r(e,v),V=arguments.length;if(0===V?n=o=0:1===V?(n=0,o=v-N):(n=V-2,o=p(s(a(t),0),v-N)),v+n-o>m)throw TypeError(f);for(d=l(b,o),h=0;hv-o+n;h--)delete b[h-1]}else if(n>o)for(h=v-o;h>N;h--)g=h+n-1,(C=h+o-1)in b?b[g]=b[C]:delete b[g];for(h=0;h>1,h=23===t?r(2,-24)-r(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=o(e))!=e||e===1/0?(u=e!=e?1:0,l=m):(l=a(i(e)/c),e*(d=r(2,-l))<1&&(l--,d*=2),(e+=l+f>=1?h/d:h*r(2,1-f))*d>=2&&(l++,d/=2),l+f>=m?(u=0,l=m):l+f>=1?(u=(e*d-1)*r(2,t),l+=f):(u=e*r(2,f-1)*r(2,t),l=0));t>=8;s[g++]=255&u,u/=256,t-=8);for(l=l<0;s[g++]=255&l,l/=256,p-=8);return s[--g]|=128*C,s},unpack:function(e,t){var n,o=e.length,a=8*o-t-1,i=(1<>1,l=a-7,u=o-1,d=e[u--],s=127&d;for(d>>=7;l>0;s=256*s+e[u],u--,l-=8);for(n=s&(1<<-l)-1,s>>=-l,l+=t;l>0;n=256*n+e[u],u--,l-=8);if(0===s)s=1-c;else{if(s===i)return n?NaN:d?-1/0:1/0;n+=r(2,t),s-=c}return(d?-1:1)*n*r(2,s-t)}}},function(e,t,n){"use strict";var o=n(0),r=n(7);o({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(77),i=n(8),c=n(41),l=n(10),u=n(45),d=a.ArrayBuffer,s=a.DataView,p=d.prototype.slice;o({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r((function(){return!new d(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(p!==undefined&&t===undefined)return p.call(i(this),e);for(var n=i(this).byteLength,o=c(e,n),r=c(t===undefined?n:t,n),a=new(u(this,d))(l(r-o)),m=new s(this),f=new s(a),h=0;o9999?"+":"";return n+r(a(e),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(t,3,0)+"Z"}:l},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(33);o({target:"Date",proto:!0,forced:r((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(e){var t=a(this),n=i(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){"use strict";var o=n(25),r=n(226),a=n(11)("toPrimitive"),i=Date.prototype;a in i||o(i,a,r)},function(e,t,n){"use strict";var o=n(8),r=n(33);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!==e)}},function(e,t,n){"use strict";var o=n(22),r=Date.prototype,a="Invalid Date",i=r.toString,c=r.getTime;new Date(NaN)+""!=a&&o(r,"toString",(function(){var e=c.call(this);return e==e?i.call(this):a}))},function(e,t,n){"use strict";n(0)({target:"Function",proto:!0},{bind:n(138)})},function(e,t,n){"use strict";var o=n(6),r=n(13),a=n(36),i=n(11)("hasInstance"),c=Function.prototype;i in c||r.f(c,i,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=a(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){"use strict";var o=n(9),r=n(13).f,a=Function.prototype,i=a.toString,c=/^\s*function ([^ (]*)/;!o||"name"in a||r(a,"name",{configurable:!0,get:function(){try{return i.call(this).match(c)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(5);n(43)(o.JSON,"JSON",!0)},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(140),a=Math.acosh,i=Math.log,c=Math.sqrt,l=Math.LN2;o({target:"Math",stat:!0,forced:!a||710!=Math.floor(a(Number.MAX_VALUE))||a(Infinity)!=Infinity},{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?i(e)+l:r(e-1+c(e-1)*c(e+1))}})},function(e,t,n){"use strict";var o=n(0),r=Math.asinh,a=Math.log,i=Math.sqrt;o({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function c(e){return isFinite(e=+e)&&0!=e?e<0?-c(-e):a(e+i(e*e+1)):e}})},function(e,t,n){"use strict";var o=n(0),r=Math.atanh,a=Math.log;o({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(e){return 0==(e=+e)?e:a((1+e)/(1-e))/2}})},function(e,t,n){"use strict";var o=n(0),r=n(105),a=Math.abs,i=Math.pow;o({target:"Math",stat:!0},{cbrt:function(e){return r(e=+e)*i(a(e),1/3)}})},function(e,t,n){"use strict";var o=n(0),r=Math.floor,a=Math.log,i=Math.LOG2E;o({target:"Math",stat:!0},{clz32:function(e){return(e>>>=0)?31-r(a(e+.5)*i):32}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.cosh,i=Math.abs,c=Math.E;o({target:"Math",stat:!0,forced:!a||a(710)===Infinity},{cosh:function(e){var t=r(i(e)-1)+1;return(t+1/(t*c*c))*(c/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80);o({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{fround:n(241)})},function(e,t,n){"use strict";var o=n(105),r=Math.abs,a=Math.pow,i=a(2,-52),c=a(2,-23),l=a(2,127)*(2-c),u=a(2,-126),d=function(e){return e+1/i-1/i};e.exports=Math.fround||function(e){var t,n,a=r(e),s=o(e);return al||n!=n?s*Infinity:s*n}},function(e,t,n){"use strict";var o=n(0),r=Math.hypot,a=Math.abs,i=Math.sqrt;o({target:"Math",stat:!0,forced:!!r&&r(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,o,r=0,c=0,l=arguments.length,u=0;c0?(o=n/u)*o:n;return u===Infinity?Infinity:u*i(r)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=Math.imul;o({target:"Math",stat:!0,forced:r((function(){return-5!=a(4294967295,5)||2!=a.length}))},{imul:function(e,t){var n=+e,o=+t,r=65535&n,a=65535&o;return 0|r*a+((65535&n>>>16)*a+r*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LOG10E;o({target:"Math",stat:!0},{log10:function(e){return r(e)*a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{log1p:n(140)})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LN2;o({target:"Math",stat:!0},{log2:function(e){return r(e)/a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{sign:n(105)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(80),i=Math.abs,c=Math.exp,l=Math.E;o({target:"Math",stat:!0,forced:r((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){return i(e=+e)<1?(a(e)-a(-e))/2:(c(e-1)-c(-e-1))*(l/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.exp;o({target:"Math",stat:!0},{tanh:function(e){var t=r(e=+e),n=r(-e);return t==Infinity?1:n==Infinity?-1:(t-n)/(a(e)+a(-e))}})},function(e,t,n){"use strict";n(43)(Math,"Math",!0)},function(e,t,n){"use strict";var o=n(0),r=Math.ceil,a=Math.floor;o({target:"Math",stat:!0},{trunc:function(e){return(e>0?a:r)(e)}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(22),c=n(15),l=n(32),u=n(79),d=n(33),s=n(4),p=n(42),m=n(47).f,f=n(18).f,h=n(13).f,C=n(56).trim,g="Number",b=r[g],v=b.prototype,N=l(p(v))==g,V=function(e){var t,n,o,r,a,i,c,l,u=d(e,!1);if("string"==typeof u&&u.length>2)if(43===(t=(u=C(u)).charCodeAt(0))||45===t){if(88===(n=u.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(u.charCodeAt(1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(i=(a=u.slice(2)).length,c=0;cr)return NaN;return parseInt(a,o)}return+u};if(a(g,!b(" 0o1")||!b("0b1")||b("+0x1"))){for(var y,_=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof _&&(N?s((function(){v.valueOf.call(n)})):l(n)!=g)?u(new b(V(t)),n,_):V(t)},x=o?m(b):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),k=0;x.length>k;k++)c(b,y=x[k])&&!c(_,y)&&h(_,y,f(b,y));_.prototype=v,v.constructor=_,i(r,g,_)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isFinite:n(255)})},function(e,t,n){"use strict";var o=n(5).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isInteger:n(141)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},function(e,t,n){"use strict";var o=n(0),r=n(141),a=Math.abs;o({target:"Number",stat:!0},{isSafeInteger:function(e){return r(e)&&a(e)<=9007199254740991}})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){"use strict";var o=n(0),r=n(262);o({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseFloat,c=1/i(a+"-0")!=-Infinity;e.exports=c?function(e){var t=r(String(e)),n=i(t);return 0===n&&"-"==t.charAt(0)?-0:n}:i},function(e,t,n){"use strict";var o=n(0),r=n(142);o({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o=n(0),r=n(29),a=n(265),i=n(104),c=n(4),l=1..toFixed,u=Math.floor,d=function p(e,t,n){return 0===t?n:t%2==1?p(e,t-1,n*e):p(e*e,t/2,n)},s=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t};o({target:"Number",proto:!0,forced:l&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!c((function(){l.call({})}))},{toFixed:function(e){var t,n,o,c,l=a(this),p=r(e),m=[0,0,0,0,0,0],f="",h="0",C=function(e,t){for(var n=-1,o=t;++n<6;)o+=e*m[n],m[n]=o%1e7,o=u(o/1e7)},g=function(e){for(var t=6,n=0;--t>=0;)n+=m[t],m[t]=u(n/e),n=n%e*1e7},b=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==m[e]){var n=String(m[e]);t=""===t?n:t+i.call("0",7-n.length)+n}return t};if(p<0||p>20)throw RangeError("Incorrect fraction digits");if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(f="-",l=-l),l>1e-21)if(n=(t=s(l*d(2,69,1))-69)<0?l*d(2,-t,1):l/d(2,t,1),n*=4503599627370496,(t=52-t)>0){for(C(0,n),o=p;o>=7;)C(1e7,0),o-=7;for(C(d(10,o,1),0),o=t-1;o>=23;)g(1<<23),o-=23;g(1<0?f+((c=h.length)<=p?"0."+i.call("0",p-c)+h:h.slice(0,c-p)+"."+h.slice(c-p)):f+h}})},function(e,t,n){"use strict";var o=n(32);e.exports=function(e){if("number"!=typeof e&&"Number"!=o(e))throw TypeError("Incorrect invocation");return+e}},function(e,t,n){"use strict";var o=n(0),r=n(267);o({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(62),i=n(94),c=n(71),l=n(14),u=n(57),d=Object.assign,s=Object.defineProperty;e.exports=!d||r((function(){if(o&&1!==d({b:1},d(s({},"a",{enumerable:!0,get:function(){s(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||"abcdefghijklmnopqrst"!=a(d({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,d=1,s=i.f,p=c.f;r>d;)for(var m,f=u(arguments[d++]),h=s?a(f).concat(s(f)):a(f),C=h.length,g=0;C>g;)m=h[g++],o&&!p.call(f,m)||(n[m]=f[m]);return n}:d},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0,sham:!n(9)},{create:n(42)})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(30),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineGetter__:function(e,t){l.f(i(this),e,{get:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(126)})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(13).f})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(30),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineSetter__:function(e,t){l.f(i(this),e,{set:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(143).entries;o({target:"Object",stat:!0},{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(67),a=n(4),i=n(6),c=n(50).onFreeze,l=Object.freeze;o({target:"Object",stat:!0,forced:a((function(){l(1)})),sham:!r},{freeze:function(e){return l&&i(e)?l(c(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(68),a=n(49);o({target:"Object",stat:!0},{fromEntries:function(e){var t={};return r(e,(function(e,n){a(t,e,n)}),undefined,!0),t}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(24),i=n(18).f,c=n(9),l=r((function(){i(1)}));o({target:"Object",stat:!0,forced:!c||l,sham:!c},{getOwnPropertyDescriptor:function(e,t){return i(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(92),i=n(24),c=n(18),l=n(49);o({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(e){for(var t,n,o=i(e),r=c.f,u=a(o),d={},s=0;u.length>s;)(n=r(o,t=u[s++]))!==undefined&&l(d,t,n);return d}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(128).f;o({target:"Object",stat:!0,forced:r((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:a})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(36),c=n(102);o({target:"Object",stat:!0,forced:r((function(){i(1)})),sham:!c},{getPrototypeOf:function(e){return i(a(e))}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{is:n(144)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isExtensible;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isExtensible:function(e){return!!a(e)&&(!i||i(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isFrozen;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isFrozen:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isSealed;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isSealed:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(14),a=n(62);o({target:"Object",stat:!0,forced:n(4)((function(){a(1)}))},{keys:function(e){return a(r(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupGetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.get}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupSetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.set}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.preventExtensions;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{preventExtensions:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.seal;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{seal:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{setPrototypeOf:n(53)})},function(e,t,n){"use strict";var o=n(100),r=n(22),a=n(291);o||r(Object.prototype,"toString",a,{unsafe:!0})},function(e,t,n){"use strict";var o=n(100),r=n(74);e.exports=o?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var o=n(0),r=n(143).values;o({target:"Object",stat:!0},{values:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(142);o({global:!0,forced:parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o,r,a,i,c=n(0),l=n(38),u=n(5),d=n(35),s=n(145),p=n(22),m=n(66),f=n(43),h=n(54),C=n(6),g=n(30),b=n(55),v=n(32),N=n(90),V=n(68),y=n(75),_=n(45),x=n(106).set,k=n(147),L=n(148),w=n(295),B=n(149),S=n(296),I=n(34),T=n(61),A=n(11),E=n(96),P=A("species"),M="Promise",O=I.get,R=I.set,F=I.getterFor(M),D=s,j=u.TypeError,z=u.document,G=u.process,H=d("fetch"),U=B.f,K=U,Y="process"==v(G),q=!!(z&&z.createEvent&&u.dispatchEvent),W=0,$=T(M,(function(){if(!(N(D)!==String(D))){if(66===E)return!0;if(!Y&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!D.prototype["finally"])return!0;if(E>=51&&/native code/.test(D))return!1;var e=D.resolve(1),t=function(e){e((function(){}),(function(){}))};return(e.constructor={})[P]=t,!(e.then((function(){}))instanceof t)})),Q=$||!y((function(e){D.all(e)["catch"]((function(){}))})),X=function(e){var t;return!(!C(e)||"function"!=typeof(t=e.then))&&t},J=function(e,t,n){if(!t.notified){t.notified=!0;var o=t.reactions;k((function(){for(var r=t.value,a=1==t.state,i=0;o.length>i;){var c,l,u,d=o[i++],s=a?d.ok:d.fail,p=d.resolve,m=d.reject,f=d.domain;try{s?(a||(2===t.rejection&&ne(e,t),t.rejection=1),!0===s?c=r:(f&&f.enter(),c=s(r),f&&(f.exit(),u=!0)),c===d.promise?m(j("Promise-chain cycle")):(l=X(c))?l.call(c,p,m):p(c)):m(r)}catch(h){f&&!u&&f.exit(),m(h)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&ee(e,t)}))}},Z=function(e,t,n){var o,r;q?((o=z.createEvent("Event")).promise=t,o.reason=n,o.initEvent(e,!1,!0),u.dispatchEvent(o)):o={promise:t,reason:n},(r=u["on"+e])?r(o):"unhandledrejection"===e&&w("Unhandled promise rejection",n)},ee=function(e,t){x.call(u,(function(){var n,o=t.value;if(te(t)&&(n=S((function(){Y?G.emit("unhandledRejection",o,e):Z("unhandledrejection",e,o)})),t.rejection=Y||te(t)?2:1,n.error))throw n.value}))},te=function(e){return 1!==e.rejection&&!e.parent},ne=function(e,t){x.call(u,(function(){Y?G.emit("rejectionHandled",e):Z("rejectionhandled",e,t.value)}))},oe=function(e,t,n,o){return function(r){e(t,n,r,o)}},re=function(e,t,n,o){t.done||(t.done=!0,o&&(t=o),t.value=n,t.state=2,J(e,t,!0))},ae=function ie(e,t,n,o){if(!t.done){t.done=!0,o&&(t=o);try{if(e===n)throw j("Promise can't be resolved itself");var r=X(n);r?k((function(){var o={done:!1};try{r.call(n,oe(ie,e,o,t),oe(re,e,o,t))}catch(a){re(e,o,a,t)}})):(t.value=n,t.state=1,J(e,t,!1))}catch(a){re(e,{done:!1},a,t)}}};$&&(D=function(e){b(this,D,M),g(e),o.call(this);var t=O(this);try{e(oe(ae,this,t),oe(re,this,t))}catch(n){re(this,t,n)}},(o=function(e){R(this,{type:M,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:W,value:undefined})}).prototype=m(D.prototype,{then:function(e,t){var n=F(this),o=U(_(this,D));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=Y?G.domain:undefined,n.parent=!0,n.reactions.push(o),n.state!=W&&J(this,n,!1),o.promise},"catch":function(e){return this.then(undefined,e)}}),r=function(){var e=new o,t=O(e);this.promise=e,this.resolve=oe(ae,e,t),this.reject=oe(re,e,t)},B.f=U=function(e){return e===D||e===a?new r(e):K(e)},l||"function"!=typeof s||(i=s.prototype.then,p(s.prototype,"then",(function(e,t){var n=this;return new D((function(e,t){i.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof H&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return L(D,H.apply(u,arguments))}}))),c({global:!0,wrap:!0,forced:$},{Promise:D}),f(D,M,!1,!0),h(M),a=d(M),c({target:M,stat:!0,forced:$},{reject:function(e){var t=U(this);return t.reject.call(undefined,e),t.promise}}),c({target:M,stat:!0,forced:l||$},{resolve:function(e){return L(l&&this===a?D:this,e)}}),c({target:M,stat:!0,forced:Q},{all:function(e){var t=this,n=U(t),o=n.resolve,r=n.reject,a=S((function(){var n=g(t.resolve),a=[],i=0,c=1;V(e,(function(e){var l=i++,u=!1;a.push(undefined),c++,n.call(t,e).then((function(e){u||(u=!0,a[l]=e,--c||o(a))}),r)})),--c||o(a)}));return a.error&&r(a.value),n.promise},race:function(e){var t=this,n=U(t),o=n.reject,r=S((function(){var r=g(t.resolve);V(e,(function(e){r.call(t,e).then(n.resolve,o)}))}));return r.error&&o(r.value),n.promise}})},function(e,t,n){"use strict";var o=n(5);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},function(e,t,n){"use strict";var o=n(0),r=n(38),a=n(145),i=n(4),c=n(35),l=n(45),u=n(148),d=n(22);o({target:"Promise",proto:!0,real:!0,forced:!!a&&i((function(){a.prototype["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=l(this,c("Promise")),n="function"==typeof e;return this.then(n?function(n){return u(t,e()).then((function(){return n}))}:e,n?function(n){return u(t,e()).then((function(){throw n}))}:e)}}),r||"function"!=typeof a||a.prototype["finally"]||d(a.prototype,"finally",c("Promise").prototype["finally"])},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(30),i=n(8),c=n(4),l=r("Reflect","apply"),u=Function.apply;o({target:"Reflect",stat:!0,forced:!c((function(){l((function(){}))}))},{apply:function(e,t,n){return a(e),i(n),l?l(e,t,n):u.call(e,t,n)}})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(30),i=n(8),c=n(6),l=n(42),u=n(138),d=n(4),s=r("Reflect","construct"),p=d((function(){function e(){}return!(s((function(){}),[],e)instanceof e)})),m=!d((function(){s((function(){}))})),f=p||m;o({target:"Reflect",stat:!0,forced:f,sham:f},{construct:function(e,t){a(e),i(t);var n=arguments.length<3?e:a(arguments[2]);if(m&&!p)return s(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(u.apply(e,o))}var r=n.prototype,d=l(c(r)?r:Object.prototype),f=Function.apply.call(e,d,t);return c(f)?f:d}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(33),c=n(13);o({target:"Reflect",stat:!0,forced:n(4)((function(){Reflect.defineProperty(c.f({},1,{value:1}),1,{value:2})})),sham:!r},{defineProperty:function(e,t,n){a(e);var o=i(t,!0);a(n);try{return c.f(e,o,n),!0}catch(r){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(18).f;o({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=a(r(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(8),i=n(15),c=n(18),l=n(36);o({target:"Reflect",stat:!0},{get:function u(e,t){var n,o,d=arguments.length<3?e:arguments[2];return a(e)===d?e[t]:(n=c.f(e,t))?i(n,"value")?n.value:n.get===undefined?undefined:n.get.call(d):r(o=l(e))?u(o,t,d):void 0}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(18);o({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(e,t){return i.f(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(36);o({target:"Reflect",stat:!0,sham:!n(102)},{getPrototypeOf:function(e){return a(r(e))}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=Object.isExtensible;o({target:"Reflect",stat:!0},{isExtensible:function(e){return r(e),!a||a(e)}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{ownKeys:n(92)})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(8);o({target:"Reflect",stat:!0,sham:!n(67)},{preventExtensions:function(e){a(e);try{var t=r("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(6),i=n(15),c=n(4),l=n(13),u=n(18),d=n(36),s=n(46);o({target:"Reflect",stat:!0,forced:c((function(){var e=l.f({},"a",{configurable:!0});return!1!==Reflect.set(d(e),"a",1,e)}))},{set:function p(e,t,n){var o,c,m=arguments.length<4?e:arguments[3],f=u.f(r(e),t);if(!f){if(a(c=d(e)))return p(c,t,n,m);f=s(0)}if(i(f,"value")){if(!1===f.writable||!a(m))return!1;if(o=u.f(m,t)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,l.f(m,t,o)}else l.f(m,t,s(0,n));return!0}return f.set!==undefined&&(f.set.call(m,n),!0)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(135),i=n(53);i&&o({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){r(e),a(t);try{return i(e,t),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(79),c=n(13).f,l=n(47).f,u=n(107),d=n(83),s=n(22),p=n(4),m=n(54),f=n(11)("match"),h=r.RegExp,C=h.prototype,g=/a/g,b=/a/g,v=new h(g)!==g;if(o&&a("RegExp",!v||p((function(){return b[f]=!1,h(g)!=g||h(b)==b||"/a/i"!=h(g,"i")})))){for(var N=function(e,t){var n=this instanceof N,o=u(e),r=t===undefined;return!n&&o&&e.constructor===N&&r?e:i(v?new h(o&&!r?e.source:e,t):h((o=e instanceof N)?e.source:e,o&&r?d.call(e):t),n?this:C,N)},V=function(e){e in N||c(N,e,{configurable:!0,get:function(){return h[e]},set:function(t){h[e]=t}})},y=l(h),_=0;y.length>_;)V(y[_++]);C.constructor=N,N.prototype=C,s(r,"RegExp",N)}m("RegExp")},function(e,t,n){"use strict";var o=n(0),r=n(84);o({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(83);o&&"g"!=/./g.flags&&r.f(RegExp.prototype,"flags",{configurable:!0,get:a})},function(e,t,n){"use strict";var o=n(22),r=n(8),a=n(4),i=n(83),c=RegExp.prototype,l=c.toString,u=a((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),d="toString"!=l.name;(u||d)&&o(RegExp.prototype,"toString",(function(){var e=r(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(n===undefined&&e instanceof RegExp&&!("flags"in c)?i.call(e):n)}),{unsafe:!0})},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(108).codeAt;o({target:"String",proto:!0},{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o,r=n(0),a=n(18).f,i=n(10),c=n(109),l=n(21),u=n(110),d=n(38),s="".endsWith,p=Math.min,m=u("endsWith");r({target:"String",proto:!0,forced:!!(d||m||(o=a(String.prototype,"endsWith"),!o||o.writable))&&!m},{endsWith:function(e){var t=String(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,o=i(t.length),r=n===undefined?o:p(i(n),o),a=String(e);return s?s.call(t,a,r):t.slice(r-a.length,r)===a}})},function(e,t,n){"use strict";var o=n(0),r=n(41),a=String.fromCharCode,i=String.fromCodePoint;o({target:"String",stat:!0,forced:!!i&&1!=i.length},{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,i=0;o>i;){if(t=+arguments[i++],r(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){"use strict";var o=n(0),r=n(109),a=n(21);o({target:"String",proto:!0,forced:!n(110)("includes")},{includes:function(e){return!!~String(a(this)).indexOf(r(e),arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(108).charAt,r=n(34),a=n(101),i=r.set,c=r.getterFor("String Iterator");a(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=c(this),n=t.string,r=t.index;return r>=n.length?{value:undefined,done:!0}:(e=o(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(10),i=n(21),c=n(111),l=n(86);o("match",1,(function(e,t,n){return[function(t){var n=i(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var i=r(e),u=String(this);if(!i.global)return l(i,u);var d=i.unicode;i.lastIndex=0;for(var s,p=[],m=0;null!==(s=l(i,u));){var f=String(s[0]);p[m]=f,""===f&&(i.lastIndex=c(u,a(i.lastIndex),d)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var o=n(0),r=n(103).end;o({target:"String",proto:!0,forced:n(150)},{padEnd:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(103).start;o({target:"String",proto:!0,forced:n(150)},{padStart:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(24),a=n(10);o({target:"String",stat:!0},{raw:function(e){for(var t=r(e.raw),n=a(t.length),o=arguments.length,i=[],c=0;n>c;)i.push(String(t[c++])),c]*>)/g,h=/\$([$&'`]|\d\d?)/g;o("replace",2,(function(e,t,n){return[function(n,o){var r=l(this),a=n==undefined?undefined:n[e];return a!==undefined?a.call(n,r,o):t.call(String(r),n,o)},function(e,a){var l=n(t,e,this,a);if(l.done)return l.value;var m=r(e),f=String(this),h="function"==typeof a;h||(a=String(a));var C=m.global;if(C){var g=m.unicode;m.lastIndex=0}for(var b=[];;){var v=d(m,f);if(null===v)break;if(b.push(v),!C)break;""===String(v[0])&&(m.lastIndex=u(f,i(m.lastIndex),g))}for(var N,V="",y=0,_=0;_=y&&(V+=f.slice(y,k)+I,y=k+x.length)}return V+f.slice(y)}];function o(e,n,o,r,i,c){var l=o+e.length,u=r.length,d=h;return i!==undefined&&(i=a(i),d=f),t.call(c,d,(function(t,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,o);case"'":return n.slice(l);case"<":c=i[a.slice(1,-1)];break;default:var d=+a;if(0===d)return t;if(d>u){var s=m(d/10);return 0===s?t:s<=u?r[s-1]===undefined?a.charAt(1):r[s-1]+a.charAt(1):t}c=r[d-1]}return c===undefined?"":c}))}}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(21),i=n(144),c=n(86);o("search",1,(function(e,t,n){return[function(t){var n=a(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var a=r(e),l=String(this),u=a.lastIndex;i(u,0)||(a.lastIndex=0);var d=c(a,l);return i(a.lastIndex,u)||(a.lastIndex=u),null===d?-1:d.index}]}))},function(e,t,n){"use strict";var o=n(85),r=n(107),a=n(8),i=n(21),c=n(45),l=n(111),u=n(10),d=n(86),s=n(84),p=n(4),m=[].push,f=Math.min,h=!p((function(){return!RegExp(4294967295,"y")}));o("split",2,(function(e,t,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var o=String(i(this)),a=n===undefined?4294967295:n>>>0;if(0===a)return[];if(e===undefined)return[o];if(!r(e))return t.call(o,e,a);for(var c,l,u,d=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,h=new RegExp(e.source,p+"g");(c=s.call(h,o))&&!((l=h.lastIndex)>f&&(d.push(o.slice(f,c.index)),c.length>1&&c.index=a));)h.lastIndex===c.index&&h.lastIndex++;return f===o.length?!u&&h.test("")||d.push(""):d.push(o.slice(f)),d.length>a?d.slice(0,a):d}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=i(this),a=t==undefined?undefined:t[e];return a!==undefined?a.call(t,r,n):o.call(String(r),t,n)},function(e,r){var i=n(o,e,this,r,o!==t);if(i.done)return i.value;var s=a(e),p=String(this),m=c(s,RegExp),C=s.unicode,g=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(h?"y":"g"),b=new m(h?s:"^(?:"+s.source+")",g),v=r===undefined?4294967295:r>>>0;if(0===v)return[];if(0===p.length)return null===d(b,p)?[p]:[];for(var N=0,V=0,y=[];V1?arguments[1]:undefined,t.length)),o=String(e);return s?s.call(t,o,n):t.slice(n,n+o.length)===o}})},function(e,t,n){"use strict";var o=n(0),r=n(56).trim;o({target:"String",proto:!0,forced:n(112)("trim")},{trim:function(){return r(this)}})},function(e,t,n){"use strict";var o=n(0),r=n(56).end,a=n(112)("trimEnd"),i=a?function(){return r(this)}:"".trimEnd;o({target:"String",proto:!0,forced:a},{trimEnd:i,trimRight:i})},function(e,t,n){"use strict";var o=n(0),r=n(56).start,a=n(112)("trimStart"),i=a?function(){return r(this)}:"".trimStart;o({target:"String",proto:!0,forced:a},{trimStart:i,trimLeft:i})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("anchor")},{anchor:function(e){return r(this,"a","name",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("big")},{big:function(){return r(this,"big","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("blink")},{blink:function(){return r(this,"blink","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("bold")},{bold:function(){return r(this,"b","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fontcolor")},{fontcolor:function(e){return r(this,"font","color",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fontsize")},{fontsize:function(e){return r(this,"font","size",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("italics")},{italics:function(){return r(this,"i","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("link")},{link:function(e){return r(this,"a","href",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("small")},{small:function(){return r(this,"small","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("strike")},{strike:function(){return r(this,"strike","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("sub")},{sub:function(){return r(this,"sub","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("sup")},{sup:function(){return r(this,"sup","","")}})},function(e,t,n){"use strict";n(40)("Float32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(29);e.exports=function(e){var t=o(e);if(t<0)throw RangeError("The argument can't be less than 0");return t}},function(e,t,n){"use strict";n(40)("Float64",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}),!0)},function(e,t,n){"use strict";n(40)("Uint16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(7),r=n(130),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return r.call(a(this),e,t,arguments.length>2?arguments[2]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).every,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("every",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(97),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("fill",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).filter,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("filter",(function(e){for(var t=r(i(this),e,arguments.length>1?arguments[1]:undefined),n=a(this,this.constructor),o=0,l=t.length,u=new(c(n))(l);l>o;)u[o]=t[o++];return u}))},function(e,t,n){"use strict";var o=n(7),r=n(16).find,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("find",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).findIndex,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("findIndex",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).forEach,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("forEach",(function(e){r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(113);(0,n(7).exportTypedArrayStaticMethod)("from",n(152),o)},function(e,t,n){"use strict";var o=n(7),r=n(60).includes,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("includes",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(60).indexOf,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("indexOf",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(133),i=n(11)("iterator"),c=o.Uint8Array,l=a.values,u=a.keys,d=a.entries,s=r.aTypedArray,p=r.exportTypedArrayMethod,m=c&&c.prototype[i],f=!!m&&("values"==m.name||m.name==undefined),h=function(){return l.call(s(this))};p("entries",(function(){return d.call(s(this))})),p("keys",(function(){return u.call(s(this))})),p("values",h,!f),p(i,h,!f)},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].join;a("join",(function(e){return i.apply(r(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(136),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("lastIndexOf",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).map,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("map",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(c(a(e,e.constructor)))(t)}))}))},function(e,t,n){"use strict";var o=n(7),r=n(113),a=o.aTypedArrayConstructor;(0,o.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(a(this))(t);t>e;)n[e]=arguments[e++];return n}),r)},function(e,t,n){"use strict";var o=n(7),r=n(76).left,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduce",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(76).right,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduceRight",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=Math.floor;a("reverse",(function(){for(var e,t=r(this).length,n=i(t/2),o=0;o1?arguments[1]:undefined,1),n=this.length,o=i(e),c=r(o.length),u=0;if(c+t>n)throw RangeError("Wrong length");for(;ua;)d[a]=n[a++];return d}),a((function(){new Int8Array(1).slice()})))},function(e,t,n){"use strict";var o=n(7),r=n(16).some,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("some",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].sort;a("sort",(function(e){return i.call(r(this),e)}))},function(e,t,n){"use strict";var o=n(7),r=n(10),a=n(41),i=n(45),c=o.aTypedArray;(0,o.exportTypedArrayMethod)("subarray",(function(e,t){var n=c(this),o=n.length,l=a(e,o);return new(i(n,n.constructor))(n.buffer,n.byteOffset+l*n.BYTES_PER_ELEMENT,r((t===undefined?o:a(t,o))-l))}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(4),i=o.Int8Array,c=r.aTypedArray,l=r.exportTypedArrayMethod,u=[].toLocaleString,d=[].slice,s=!!i&&a((function(){u.call(new i(1))}));l("toLocaleString",(function(){return u.apply(s?d.call(c(this)):c(this),arguments)}),a((function(){return[1,2].toLocaleString()!=new i([1,2]).toLocaleString()}))||!a((function(){i.prototype.toLocaleString.call([1,2])})))},function(e,t,n){"use strict";var o=n(7).exportTypedArrayMethod,r=n(4),a=n(5).Uint8Array,i=a&&a.prototype||{},c=[].toString,l=[].join;r((function(){c.call({})}))&&(c=function(){return l.call(this)});var u=i.toString!=c;o("toString",c,u)},function(e,t,n){"use strict";var o,r=n(5),a=n(66),i=n(50),c=n(78),l=n(153),u=n(6),d=n(34).enforce,s=n(121),p=!r.ActiveXObject&&"ActiveXObject"in r,m=Object.isExtensible,f=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},h=e.exports=c("WeakMap",f,l);if(s&&p){o=l.getConstructor(f,"WeakMap",!0),i.REQUIRED=!0;var C=h.prototype,g=C["delete"],b=C.has,v=C.get,N=C.set;a(C,{"delete":function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),g.call(this,e)||t.frozen["delete"](e)}return g.call(this,e)},has:function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),b.call(this,e)||t.frozen.has(e)}return b.call(this,e)},get:function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),b.call(this,e)?v.call(this,e):t.frozen.get(e)}return v.call(this,e)},set:function(e,t){if(u(e)&&!m(e)){var n=d(this);n.frozen||(n.frozen=new o),b.call(this,e)?N.call(this,e,t):n.frozen.set(e,t)}else N.call(this,e,t);return this}})}},function(e,t,n){"use strict";n(78)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(153))},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(106);o({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:a.set,clearImmediate:a.clear})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(147),i=n(32),c=r.process,l="process"==i(c);o({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(e){var t=l&&c.domain;a(t?t.bind(e):e)}})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(73),i=[].slice,c=function(e){return function(t,n){var o=arguments.length>2,r=o?i.call(arguments,2):undefined;return e(o?function(){("function"==typeof t?t:Function(t)).apply(this,r)}:t,n)}};o({global:!0,bind:!0,forced:/MSIE .\./.test(a)},{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},function(e,t,n){"use strict";t.__esModule=!0,t._CI=Ie,t._HI=D,t._M=Te,t._MCCC=Me,t._ME=Ee,t._MFCC=Oe,t._MP=Be,t._MR=Ne,t.__render=ze,t.createComponentVNode=function(e,t,n,o,r){var i=new T(1,null,null,e=function(e,t){if(12&e)return e;if(t.prototype&&t.prototype.render)return 4;if(t.render)return 32776;return 8}(e,t),o,function(e,t,n){var o=(32768&e?t.render:t).defaultProps;if(a(o))return n;if(a(n))return d(o,null);return B(n,o)}(e,t,n),function(e,t,n){if(4&e)return n;var o=(32768&e?t.render:t).defaultHooks;if(a(o))return n;if(a(n))return o;return B(n,o)}(e,t,r),t);k.createVNode&&k.createVNode(i);return i},t.createFragment=P,t.createPortal=function(e,t){var n=D(e);return A(1024,1024,null,n,0,null,n.key,t)},t.createRef=function(){return{current:null}},t.createRenderer=function(e){return function(t,n,o,r){e||(e=t),Ge(n,e,o,r)}},t.createTextVNode=E,t.createVNode=A,t.directClone=M,t.findDOMfromVNode=N,t.forwardRef=function(e){return{render:e}},t.getFlagsForElementVnode=function(e){switch(e){case"svg":return 32;case"input":return 64;case"select":return 256;case"textarea":return 128;case m:return 8192;default:return 1}},t.linkEvent=function(e,t){if(c(t))return{data:e,event:t};return null},t.normalizeProps=function(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&a(e.children)&&F(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=undefined)),void 0!==t.key&&(e.key=t.key,t.key=undefined),void 0!==t.ref&&(e.ref=8&n?d(e.ref,t.ref):t.ref,t.ref=undefined)}return e},t.render=Ge,t.rerender=We,t.version=t.options=t.Fragment=t.EMPTY_OBJ=t.Component=void 0;var o=Array.isArray;function r(e){var t=typeof e;return"string"===t||"number"===t}function a(e){return null==e}function i(e){return null===e||!1===e||!0===e||void 0===e}function c(e){return"function"==typeof e}function l(e){return"string"==typeof e}function u(e){return null===e}function d(e,t){var n={};if(e)for(var o in e)n[o]=e[o];if(t)for(var r in t)n[r]=t[r];return n}function s(e){return!u(e)&&"object"==typeof e}var p={};t.EMPTY_OBJ=p;var m="$F";function f(e){return e.substr(2).toLowerCase()}function h(e,t){e.appendChild(t)}function C(e,t,n){u(n)?h(e,t):e.insertBefore(t,n)}function g(e,t){e.removeChild(t)}function b(e){for(var t;(t=e.shift())!==undefined;)t()}function v(e,t,n){var o=e.children;return 4&n?o.$LI:8192&n?2===e.childFlags?o:o[t?0:o.length-1]:o}function N(e,t){for(var n;e;){if(2033&(n=e.flags))return e.dom;e=v(e,t,n)}return null}function V(e,t){do{var n=e.flags;if(2033&n)return void g(t,e.dom);var o=e.children;if(4&n&&(e=o.$LI),8&n&&(e=o),8192&n){if(2!==e.childFlags){for(var r=0,a=o.length;r0,f=u(p),h=l(p)&&p[0]===I;m||f||h?(n=n||t.slice(0,d),(m||h)&&(s=M(s)),(f||h)&&(s.key=I+d),n.push(s)):n&&n.push(s),s.flags|=65536}}a=0===(n=n||t).length?1:8}else(n=t).flags|=65536,81920&t.flags&&(n=M(t)),a=2;return e.children=n,e.childFlags=a,e}function D(e){return i(e)||r(e)?E(e,null):o(e)?P(e,0,null):16384&e.flags?M(e):e}var j="http://www.w3.org/1999/xlink",z="http://www.w3.org/XML/1998/namespace",G={"xlink:actuate":j,"xlink:arcrole":j,"xlink:href":j,"xlink:role":j,"xlink:show":j,"xlink:title":j,"xlink:type":j,"xml:base":z,"xml:lang":z,"xml:space":z};function H(e){return{onClick:e,onDblClick:e,onFocusIn:e,onFocusOut:e,onKeyDown:e,onKeyPress:e,onKeyUp:e,onMouseDown:e,onMouseMove:e,onMouseUp:e,onTouchEnd:e,onTouchMove:e,onTouchStart:e}}var U=H(0),K=H(null),Y=H(!0);function q(e,t){var n=t.$EV;return n||(n=t.$EV=H(null)),n[e]||1==++U[e]&&(K[e]=function(e){var t="onClick"===e||"onDblClick"===e?function(e){return function(t){0===t.button?$(t,!0,e,Z(t)):t.stopPropagation()}}(e):function(e){return function(t){$(t,!1,e,Z(t))}}(e);return document.addEventListener(f(e),t),t}(e)),n}function W(e,t){var n=t.$EV;n&&n[e]&&(0==--U[e]&&(document.removeEventListener(f(e),K[e]),K[e]=null),n[e]=null)}function $(e,t,n,o){var r=function(e){return c(e.composedPath)?e.composedPath()[0]:e.target}(e);do{if(t&&r.disabled)return;var a=r.$EV;if(a){var i=a[n];if(i&&(o.dom=r,i.event?i.event(i.data,e):i(e),e.cancelBubble))return}r=r.parentNode}while(!u(r))}function Q(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function X(){return this.defaultPrevented}function J(){return this.cancelBubble}function Z(e){var t={dom:document};return e.isDefaultPrevented=X,e.isPropagationStopped=J,e.stopPropagation=Q,Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),t}function ee(e,t,n){if(e[t]){var o=e[t];o.event?o.event(o.data,n):o(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function te(e,t){var n=function(n){var o=this.$V;if(o){var r=o.props||p,a=o.dom;if(l(e))ee(r,e,n);else for(var i=0;i-1&&t.options[i]&&(c=t.options[i].value),n&&a(c)&&(c=e.defaultValue),le(o,c)}}var se,pe,me=te("onInput",he),fe=te("onChange");function he(e,t,n){var o=e.value,r=t.value;if(a(o)){if(n){var i=e.defaultValue;a(i)||i===r||(t.defaultValue=i,t.value=i)}}else r!==o&&(t.defaultValue=o,t.value=o)}function Ce(e,t,n,o,r,a){64&e?ce(o,n):256&e?de(o,n,r,t):128&e&&he(o,n,r),a&&(n.$V=t)}function ge(e,t,n){64&e?function(e,t){oe(t.type)?(ne(e,"change",ae),ne(e,"click",ie)):ne(e,"input",re)}(t,n):256&e?function(e){ne(e,"change",ue)}(t):128&e&&function(e,t){ne(e,"input",me),t.onChange&&ne(e,"change",fe)}(t,n)}function be(e){return e.type&&oe(e.type)?!a(e.checked):!a(e.value)}function ve(e){e&&!S(e,null)&&e.current&&(e.current=null)}function Ne(e,t,n){e&&(c(e)||void 0!==e.current)&&n.push((function(){S(e,t)||void 0===e.current||(e.current=t)}))}function Ve(e,t){ye(e),V(e,t)}function ye(e){var t,n=e.flags,o=e.children;if(481&n){t=e.ref;var r=e.props;ve(t);var i=e.childFlags;if(!u(r))for(var l=Object.keys(r),d=0,s=l.length;d0;for(var c in i&&(a=be(n))&&ge(t,o,n),n)we(c,null,n[c],o,r,a,null);i&&Ce(t,e,o,n,!0,a)}function Se(e,t,n){var o=D(e.render(t,e.state,n)),r=n;return c(e.getChildContext)&&(r=d(n,e.getChildContext())),e.$CX=r,o}function Ie(e,t,n,o,r,a){var i=new t(n,o),l=i.$N=Boolean(t.getDerivedStateFromProps||i.getSnapshotBeforeUpdate);if(i.$SVG=r,i.$L=a,e.children=i,i.$BS=!1,i.context=o,i.props===p&&(i.props=n),l)i.state=_(i,n,i.state);else if(c(i.componentWillMount)){i.$BR=!0,i.componentWillMount();var d=i.$PS;if(!u(d)){var s=i.state;if(u(s))i.state=d;else for(var m in d)s[m]=d[m];i.$PS=null}i.$BR=!1}return i.$LI=Se(i,n,o),i}function Te(e,t,n,o,r,a){var i=e.flags|=16384;481&i?Ee(e,t,n,o,r,a):4&i?function(e,t,n,o,r,a){var i=Ie(e,e.type,e.props||p,n,o,a);Te(i.$LI,t,i.$CX,o,r,a),Me(e.ref,i,a)}(e,t,n,o,r,a):8&i?(!function(e,t,n,o,r,a){Te(e.children=D(function(e,t){return 32768&e.flags?e.type.render(e.props||p,e.ref,t):e.type(e.props||p,t)}(e,n)),t,n,o,r,a)}(e,t,n,o,r,a),Oe(e,a)):512&i||16&i?Ae(e,t,r):8192&i?function(e,t,n,o,r,a){var i=e.children,c=e.childFlags;12&c&&0===i.length&&(c=e.childFlags=2,i=e.children=O());2===c?Te(i,n,r,o,r,a):Pe(i,n,t,o,r,a)}(e,n,t,o,r,a):1024&i&&function(e,t,n,o,r){Te(e.children,e.ref,t,!1,null,r);var a=O();Ae(a,n,o),e.dom=a.dom}(e,n,t,r,a)}function Ae(e,t,n){var o=e.dom=document.createTextNode(e.children);u(t)||C(t,o,n)}function Ee(e,t,n,o,r,i){var c=e.flags,l=e.props,d=e.className,s=e.children,p=e.childFlags,m=e.dom=function(e,t){return t?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}(e.type,o=o||(32&c)>0);if(a(d)||""===d||(o?m.setAttribute("class",d):m.className=d),16===p)L(m,s);else if(1!==p){var f=o&&"foreignObject"!==e.type;2===p?(16384&s.flags&&(e.children=s=M(s)),Te(s,m,n,f,null,i)):8!==p&&4!==p||Pe(s,m,n,f,null,i)}u(t)||C(t,m,r),u(l)||Be(e,c,l,m,o),Ne(e.ref,m,i)}function Pe(e,t,n,o,r,a){for(var i=0;i0,u!==d){var f=u||p;if((c=d||p)!==p)for(var h in(s=(448&r)>0)&&(m=be(c)),c){var C=f[h],g=c[h];C!==g&&we(h,C,g,l,o,m,e)}if(f!==p)for(var b in f)a(c[b])&&!a(f[b])&&we(b,f[b],null,l,o,m,e)}var v=t.children,N=t.className;e.className!==N&&(a(N)?l.removeAttribute("class"):o?l.setAttribute("class",N):l.className=N);4096&r?function(e,t){e.textContent!==t&&(e.textContent=t)}(l,v):Fe(e.childFlags,t.childFlags,e.children,v,l,n,o&&"foreignObject"!==t.type,null,e,i);s&&Ce(r,t,l,c,!1,m);var V=t.ref,y=e.ref;y!==V&&(ve(y),Ne(V,l,i))}(e,t,o,r,m,s):4&m?function(e,t,n,o,r,a,i){var l=t.children=e.children;if(u(l))return;l.$L=i;var s=t.props||p,m=t.ref,f=e.ref,h=l.state;if(!l.$N){if(c(l.componentWillReceiveProps)){if(l.$BR=!0,l.componentWillReceiveProps(s,o),l.$UN)return;l.$BR=!1}u(l.$PS)||(h=d(h,l.$PS),l.$PS=null)}De(l,h,s,n,o,r,!1,a,i),f!==m&&(ve(f),Ne(m,l,i))}(e,t,n,o,r,l,s):8&m?function(e,t,n,o,r,i,l){var u=!0,d=t.props||p,s=t.ref,m=e.props,f=!a(s),h=e.children;f&&c(s.onComponentShouldUpdate)&&(u=s.onComponentShouldUpdate(m,d));if(!1!==u){f&&c(s.onComponentWillUpdate)&&s.onComponentWillUpdate(m,d);var C=t.type,g=D(32768&t.flags?C.render(d,s,o):C(d,o));Re(h,g,n,o,r,i,l),t.children=g,f&&c(s.onComponentDidUpdate)&&s.onComponentDidUpdate(m,d)}else t.children=h}(e,t,n,o,r,l,s):16&m?function(e,t){var n=t.children,o=t.dom=e.dom;n!==e.children&&(o.nodeValue=n)}(e,t):512&m?t.dom=e.dom:8192&m?function(e,t,n,o,r,a){var i=e.children,c=t.children,l=e.childFlags,u=t.childFlags,d=null;12&u&&0===c.length&&(u=t.childFlags=2,c=t.children=O());var s=0!=(2&u);if(12&l){var p=i.length;(8&l&&8&u||s||!s&&c.length>p)&&(d=N(i[p-1],!1).nextSibling)}Fe(l,u,i,c,n,o,r,d,e,a)}(e,t,n,o,r,s):function(e,t,n,o){var r=e.ref,a=t.ref,c=t.children;if(Fe(e.childFlags,t.childFlags,e.children,c,r,n,!1,null,e,o),t.dom=e.dom,r!==a&&!i(c)){var l=c.dom;g(r,l),h(a,l)}}(e,t,o,s)}function Fe(e,t,n,o,r,a,i,c,l,u){switch(e){case 2:switch(t){case 2:Re(n,o,r,a,i,c,u);break;case 1:Ve(n,r);break;case 16:ye(n),L(r,o);break;default:!function(e,t,n,o,r,a){ye(e),Pe(t,n,o,r,N(e,!0),a),V(e,n)}(n,o,r,a,i,u)}break;case 1:switch(t){case 2:Te(o,r,a,i,c,u);break;case 1:break;case 16:L(r,o);break;default:Pe(o,r,a,i,c,u)}break;case 16:switch(t){case 16:!function(e,t,n){e!==t&&(""!==e?n.firstChild.nodeValue=t:L(n,t))}(n,o,r);break;case 2:xe(r),Te(o,r,a,i,c,u);break;case 1:xe(r);break;default:xe(r),Pe(o,r,a,i,c,u)}break;default:switch(t){case 16:_e(n),L(r,o);break;case 2:ke(r,l,n),Te(o,r,a,i,c,u);break;case 1:ke(r,l,n);break;default:var d=0|n.length,s=0|o.length;0===d?s>0&&Pe(o,r,a,i,c,u):0===s?ke(r,l,n):8===t&&8===e?function(e,t,n,o,r,a,i,c,l,u){var d,s,p=a-1,m=i-1,f=0,h=e[f],C=t[f];e:{for(;h.key===C.key;){if(16384&C.flags&&(t[f]=C=M(C)),Re(h,C,n,o,r,c,u),e[f]=C,++f>p||f>m)break e;h=e[f],C=t[f]}for(h=e[p],C=t[m];h.key===C.key;){if(16384&C.flags&&(t[m]=C=M(C)),Re(h,C,n,o,r,c,u),e[p]=C,p--,m--,f>p||f>m)break e;h=e[p],C=t[m]}}if(f>p){if(f<=m)for(s=(d=m+1)m)for(;f<=p;)Ve(e[f++],n);else!function(e,t,n,o,r,a,i,c,l,u,d,s,p){var m,f,h,C=0,g=c,b=c,v=a-c+1,V=i-c+1,_=new Int32Array(V+1),x=v===o,k=!1,L=0,w=0;if(r<4||(v|V)<32)for(C=g;C<=a;++C)if(m=e[C],wc?k=!0:L=c,16384&f.flags&&(t[c]=f=M(f)),Re(m,f,l,n,u,d,p),++w;break}!x&&c>i&&Ve(m,l)}else x||Ve(m,l);else{var B={};for(C=b;C<=i;++C)B[t[C].key]=C;for(C=g;C<=a;++C)if(m=e[C],wg;)Ve(e[g++],l);_[c-b]=C+1,L>c?k=!0:L=c,16384&(f=t[c]).flags&&(t[c]=f=M(f)),Re(m,f,l,n,u,d,p),++w}else x||Ve(m,l);else x||Ve(m,l)}if(x)ke(l,s,e),Pe(t,l,n,u,d,p);else if(k){var S=function(e){var t=0,n=0,o=0,r=0,a=0,i=0,c=0,l=e.length;l>je&&(je=l,se=new Int32Array(l),pe=new Int32Array(l));for(;n>1]]0&&(pe[n]=se[a-1]),se[a]=n)}a=r+1;var u=new Int32Array(a);i=se[a-1];for(;a-- >0;)u[a]=i,i=pe[i],se[a]=0;return u}(_);for(c=S.length-1,C=V-1;C>=0;C--)0===_[C]?(16384&(f=t[L=C+b]).flags&&(t[L]=f=M(f)),Te(f,l,n,u,(h=L+1)=0;C--)0===_[C]&&(16384&(f=t[L=C+b]).flags&&(t[L]=f=M(f)),Te(f,l,n,u,(h=L+1)i?i:a,p=0;pi)for(p=s;p0&&b(r),x.v=!1,c(n)&&n(),c(k.renderComplete)&&k.renderComplete(i,t)}function Ge(e,t,n,o){void 0===n&&(n=null),void 0===o&&(o=p),ze(e,t,n,o)}"undefined"!=typeof document&&window.Node&&(Node.prototype.$EV=null,Node.prototype.$V=null);var He=[],Ue="undefined"!=typeof Promise?Promise.resolve().then.bind(Promise.resolve()):function(e){window.setTimeout(e,0)},Ke=!1;function Ye(e,t,n,o){var r=e.$PS;if(c(t)&&(t=t(r?d(e.state,r):e.state,e.props,e.context)),a(r))e.$PS=t;else for(var i in t)r[i]=t[i];if(e.$BR)c(n)&&e.$L.push(n.bind(e));else{if(!x.v&&0===He.length)return void $e(e,o,n);if(-1===He.indexOf(e)&&He.push(e),Ke||(Ke=!0,Ue(We)),c(n)){var l=e.$QU;l||(l=e.$QU=[]),l.push(n)}}}function qe(e){for(var t=e.$QU,n=0,o=t.length;n0&&b(r),x.v=!1}else e.state=e.$PS,e.$PS=null;c(n)&&n.call(e)}}var Qe=function(e,t){this.state=null,this.$BR=!1,this.$BS=!0,this.$PS=null,this.$LI=null,this.$UN=!1,this.$CX=null,this.$QU=null,this.$N=!1,this.$L=null,this.$SVG=!1,this.props=e||p,this.context=t||p};t.Component=Qe,Qe.prototype.forceUpdate=function(e){this.$UN||Ye(this,{},e,!0)},Qe.prototype.setState=function(e,t){this.$UN||this.$BS||Ye(this,e,t,!1)},Qe.prototype.render=function(e,t,n){return null};t.version="7.3.3"},function(e,t,n){"use strict";var o=function(e){var t,n=Object.prototype,o=n.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",i=r.asyncIterator||"@@asyncIterator",c=r.toStringTag||"@@toStringTag";function l(e,t,n,o){var r=t&&t.prototype instanceof h?t:h,a=Object.create(r.prototype),i=new w(o||[]);return a._invoke=function(e,t,n){var o=d;return function(r,a){if(o===p)throw new Error("Generator is already running");if(o===m){if("throw"===r)throw a;return S()}for(n.method=r,n.arg=a;;){var i=n.delegate;if(i){var c=x(i,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===d)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=u(e,t,n);if("normal"===l.type){if(o=n.done?m:s,l.arg===f)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=m,n.method="throw",n.arg=l.arg)}}}(e,n,i),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(o){return{type:"throw",arg:o}}}e.wrap=l;var d="suspendedStart",s="suspendedYield",p="executing",m="completed",f={};function h(){}function C(){}function g(){}var b={};b[a]=function(){return this};var v=Object.getPrototypeOf,N=v&&v(v(B([])));N&&N!==n&&o.call(N,a)&&(b=N);var V=g.prototype=h.prototype=Object.create(b);function y(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function _(e){var t;this._invoke=function(n,r){function a(){return new Promise((function(t,a){!function i(t,n,r,a){var c=u(e[t],e,n);if("throw"!==c.type){var l=c.arg,d=l.value;return d&&"object"==typeof d&&o.call(d,"__await")?Promise.resolve(d.__await).then((function(e){i("next",e,r,a)}),(function(e){i("throw",e,r,a)})):Promise.resolve(d).then((function(e){l.value=e,r(l)}),(function(e){return i("throw",e,r,a)}))}a(c.arg)}(n,r,t,a)}))}return t=t?t.then(a,a):a()}}function x(e,n){var o=e.iterator[n.method];if(o===t){if(n.delegate=null,"throw"===n.method){if(e.iterator["return"]&&(n.method="return",n.arg=t,x(e,n),"throw"===n.method))return f;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=u(o,e.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,f;var a=r.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,f):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,f)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function w(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function B(e){if(e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function n(){for(;++r=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var l=o.call(i,"catchLoc"),u=o.call(i,"finallyLoc");if(l&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),L(n),f}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o=n.completion;if("throw"===o.type){var r=o.arg;L(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,o){return this.delegate={iterator:B(e),resultName:n,nextLoc:o},"next"===this.method&&(this.arg=t),f}},e}(e.exports);try{regeneratorRuntime=o}catch(r){Function("r","regeneratorRuntime = r")(o)}},function(e,t,n){"use strict";window.Int32Array||(window.Int32Array=Array)},function(e,t,n){"use strict";(function(e){ /*! loadCSS. [c]2017 Filament Group, Inc. MIT License */ -var n;n=void 0!==e?e:void 0,t.loadCSS=function(e,t,o,r){var a,i=n.document,c=i.createElement("link");if(t)a=t;else{var l=(i.body||i.getElementsByTagName("head")[0]).childNodes;a=l[l.length-1]}var u=i.styleSheets;if(r)for(var s in r)r.hasOwnProperty(s)&&c.setAttribute(s,r[s]);c.rel="stylesheet",c.href=e,c.media="only x",function f(e){if(i.body)return e();setTimeout((function(){f(e)}))}((function(){a.parentNode.insertBefore(c,t?a:a.nextSibling)}));var d=function m(e){for(var t=c.href,n=u.length;n--;)if(u[n].href===t)return e();setTimeout((function(){m(e)}))};function p(){c.addEventListener&&c.removeEventListener("load",p),c.media=o||"all"}return c.addEventListener&&c.addEventListener("load",p),c.onloadcssdefined=d,d(p),c}}).call(this,n(118))},function(e,t,n){"use strict";t.__esModule=!0,t.Achievements=t.Score=t.Achievement=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.name,n=e.desc,r=e.icon_class,i=e.value;return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Box,{className:r}),2,{style:{padding:"6px"}}),(0,o.createVNode)(1,"td",null,[(0,o.createVNode)(1,"h1",null,t,0),n,(0,o.createComponentVNode)(2,a.Box,{color:i?"good":"bad",content:i?"Unlocked":"Locked"})],0,{style:{"vertical-align":"top"}})],4,null,t)};t.Achievement=i;var c=function(e){var t=e.name,n=e.desc,r=e.icon_class,i=e.value;return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Box,{className:r}),2,{style:{padding:"6px"}}),(0,o.createVNode)(1,"td",null,[(0,o.createVNode)(1,"h1",null,t,0),n,(0,o.createComponentVNode)(2,a.Box,{color:i>0?"good":"bad",content:i>0?"Earned "+i+" times":"Locked"})],0,{style:{"vertical-align":"top"}})],4,null,t)};t.Score=c;t.Achievements=function(e){var t=(0,r.useBackend)(e).data;return(0,o.createComponentVNode)(2,a.Tabs,{children:[t.categories.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e,children:(0,o.createComponentVNode)(2,a.Box,{as:"Table",children:t.achievements.filter((function(t){return t.category===e})).map((function(e){return e.score?(0,o.createComponentVNode)(2,c,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name):(0,o.createComponentVNode)(2,i,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name)}))})},e)})),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"High Scores",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:t.highscore.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e.name,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"#"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Key"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Score"})]}),Object.keys(e.scores).map((function(n,r){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",m:2,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:r+1}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:n===t.user_ckey&&"green",textAlign:"center",children:[0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",mr:2}),n,0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",ml:2})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:e.scores[n]})]},n)}))]})},e.name)}))})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BlockQuote=void 0;var o=n(1),r=n(12),a=n(17);t.BlockQuote=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["BlockQuote",t])},n)))}},function(e,t,n){"use strict";var o,r;t.__esModule=!0,t.VNodeFlags=t.ChildFlags=void 0,t.VNodeFlags=o,function(e){e[e.HtmlElement=1]="HtmlElement",e[e.ComponentUnknown=2]="ComponentUnknown",e[e.ComponentClass=4]="ComponentClass",e[e.ComponentFunction=8]="ComponentFunction",e[e.Text=16]="Text",e[e.SvgElement=32]="SvgElement",e[e.InputElement=64]="InputElement",e[e.TextareaElement=128]="TextareaElement",e[e.SelectElement=256]="SelectElement",e[e.Void=512]="Void",e[e.Portal=1024]="Portal",e[e.ReCreate=2048]="ReCreate",e[e.ContentEditable=4096]="ContentEditable",e[e.Fragment=8192]="Fragment",e[e.InUse=16384]="InUse",e[e.ForwardRef=32768]="ForwardRef",e[e.Normalized=65536]="Normalized",e[e.ForwardRefComponent=32776]="ForwardRefComponent",e[e.FormElement=448]="FormElement",e[e.Element=481]="Element",e[e.Component=14]="Component",e[e.DOMRef=2033]="DOMRef",e[e.InUseOrNormalized=81920]="InUseOrNormalized",e[e.ClearInUse=-16385]="ClearInUse",e[e.ComponentKnown=12]="ComponentKnown"}(o||(t.VNodeFlags=o={})),t.ChildFlags=r,function(e){e[e.UnknownChildren=0]="UnknownChildren",e[e.HasInvalidChildren=1]="HasInvalidChildren",e[e.HasVNodeChildren=2]="HasVNodeChildren",e[e.HasNonKeyedChildren=4]="HasNonKeyedChildren",e[e.HasKeyedChildren=8]="HasKeyedChildren",e[e.HasTextChildren=16]="HasTextChildren",e[e.MultipleChildren=12]="MultipleChildren"}(r||(t.ChildFlags=r={}))},function(e,t,n){"use strict";t.__esModule=!0,t.ColorBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.color,n=e.content,i=e.className,c=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["color","content","className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["ColorBox",i]),color:n?null:"transparent",backgroundColor:t,content:n||"."},c)))};t.ColorBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Collapsible=void 0;var o=n(1),r=n(17),a=n(114);var i=function(e){var t,n;function i(t){var n;n=e.call(this,t)||this;var o=t.open;return n.state={open:o||!1},n}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.prototype.render=function(){var e=this,t=this.props,n=this.state.open,i=t.children,c=t.color,l=void 0===c?"default":c,u=t.title,s=t.buttons,d=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(t,["children","color","title","buttons"]);return(0,o.createComponentVNode)(2,r.Box,{mb:1,children:[(0,o.createVNode)(1,"div","Table",[(0,o.createVNode)(1,"div","Table__cell",(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Button,Object.assign({fluid:!0,color:l,icon:n?"chevron-down":"chevron-right",onClick:function(){return e.setState({open:!n})}},d,{children:u}))),2),s&&(0,o.createVNode)(1,"div","Table__cell Table__cell--collapsing",s,0)],0),n&&(0,o.createComponentVNode)(2,r.Box,{mt:1,children:i})]})},i}(o.Component);t.Collapsible=i},function(e,t,n){"use strict";t.__esModule=!0,t.Dimmer=void 0;var o=n(1),r=n(17);t.Dimmer=function(e){var t=e.style,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Box,Object.assign({style:Object.assign({position:"absolute",top:0,bottom:0,left:0,right:0,"background-color":"rgba(0, 0, 0, 0.75)","z-index":1},t)},n)))}},function(e,t,n){"use strict";t.__esModule=!0,t.Dropdown=void 0;var o=n(1),r=n(12),a=n(17),i=n(87);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t,n;function l(t){var n;return(n=e.call(this,t)||this).state={selected:t.selected,open:!1},n.handleClick=function(){n.state.open&&n.setOpen(!1)},n}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentWillUnmount=function(){window.removeEventListener("click",this.handleClick)},u.setOpen=function(e){var t=this;this.setState({open:e}),e?(setTimeout((function(){return window.addEventListener("click",t.handleClick)})),this.menuRef.focus()):window.removeEventListener("click",this.handleClick)},u.setSelected=function(e){this.setState({selected:e}),this.setOpen(!1),this.props.onSelected(e)},u.buildMenu=function(){var e=this,t=this.props.options,n=(void 0===t?[]:t).map((function(t){return(0,o.createVNode)(1,"div","Dropdown__menuentry",t,0,{onClick:function(n){e.setSelected(t)}},t)}));return n.length?n:"No Options Found"},u.render=function(){var e=this,t=this.props,n=t.color,l=void 0===n?"default":n,u=t.over,s=t.width,d=(t.onClick,t.selected,c(t,["color","over","width","onClick","selected"])),p=d.className,f=c(d,["className"]),m=u?!this.state.open:this.state.open,h=this.state.open?(0,o.createVNode)(1,"div",(0,r.classes)(["Dropdown__menu",u&&"Dropdown__over"]),this.buildMenu(),0,{tabIndex:"-1",style:{width:s}},null,(function(t){e.menuRef=t})):null;return(0,o.createVNode)(1,"div","Dropdown",[(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({width:s,className:(0,r.classes)(["Dropdown__control","Button","Button--color--"+l,p])},f,{onClick:function(t){e.setOpen(!e.state.open)},children:[(0,o.createVNode)(1,"span","Dropdown__selected-text",this.state.selected,0),(0,o.createVNode)(1,"span","Dropdown__arrow-button",(0,o.createComponentVNode)(2,i.Icon,{name:m?"chevron-up":"chevron-down"}),2)]}))),h],0)},l}(o.Component);t.Dropdown=l},function(e,t,n){"use strict";t.__esModule=!0,t.FlexItem=t.computeFlexItemProps=t.Flex=t.computeFlexProps=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.direction,o=e.wrap,a=e.align,c=e.justify,l=e.spacing,u=void 0===l?0:l,s=i(e,["className","direction","wrap","align","justify","spacing"]);return Object.assign({className:(0,r.classes)(["Flex",u>0&&"Flex--spacing--"+u,t]),style:Object.assign({},s.style,{"flex-direction":n,"flex-wrap":o,"align-items":a,"justify-content":c})},s)};t.computeFlexProps=c;var l=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},c(e))))};t.Flex=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.grow,o=e.order,a=e.align,c=i(e,["className","grow","order","align"]);return Object.assign({className:(0,r.classes)(["Flex__item",t]),style:Object.assign({},c.style,{"flex-grow":n,order:o,"align-self":a})},c)};t.computeFlexItemProps=u;var s=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},u(e))))};t.FlexItem=s,s.defaultHooks=r.pureComponentHooks,l.Item=s},function(e,t,n){"use strict";t.__esModule=!0,t.NoticeBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["NoticeBox",t])},n)))};t.NoticeBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.NumberInput=void 0;var o=n(1),r=n(20),a=n(12),i=n(19),c=n(158),l=n(17);var u=function(e){var t,n;function u(t){var n;n=e.call(this,t)||this;var a=t.value;return n.inputRef=(0,o.createRef)(),n.state={value:a,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props.value;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:e.screenY,value:t,internalValue:t}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,a=n.props.onDrag;o&&a&&a(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,a=t.maxValue,i=t.step,c=t.stepPixelSize;n.setState((function(t){var n=Object.assign({},t),l=n.origin-e.screenY;if(t.dragging){var u=Number.isFinite(o)?o%i:0;n.internalValue=(0,r.clamp)(n.internalValue+l*i/c,o-i,a+i),n.value=(0,r.clamp)(n.internalValue-n.internalValue%i+u,o,a),n.origin=e.screenY}else Math.abs(l)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,a=n.state,i=a.dragging,c=a.value,l=a.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!i,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),i)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var u=n.inputRef.current;u.value=l;try{u.focus(),u.select()}catch(s){}}},n}return n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,u.prototype.render=function(){var e=this,t=this.state,n=t.dragging,u=t.editing,s=t.value,d=t.suppressingFlicker,p=this.props,f=p.className,m=p.fluid,h=p.animated,C=p.value,g=p.unit,b=p.minValue,v=p.maxValue,N=p.height,V=p.width,y=p.lineHeight,_=p.fontSize,x=p.format,k=p.onChange,w=p.onDrag,L=C;(n||d)&&(L=s);var B=function(e){return(0,o.createVNode)(1,"div","NumberInput__content",e+(g?" "+g:""),0,{unselectable:i.tridentVersion<=4})},S=h&&!n&&!d&&(0,o.createComponentVNode)(2,c.AnimatedNumber,{value:L,format:x,children:B})||B(x?x(L):L);return(0,o.createComponentVNode)(2,l.Box,{className:(0,a.classes)(["NumberInput",m&&"NumberInput--fluid",f]),minWidth:V,minHeight:N,lineHeight:y,fontSize:_,onMouseDown:this.handleDragStart,children:[(0,o.createVNode)(1,"div","NumberInput__barContainer",(0,o.createVNode)(1,"div","NumberInput__bar",null,1,{style:{height:(0,r.clamp)((L-b)/(v-b)*100,0,100)+"%"}}),2),S,(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:u?undefined:"none",height:N,"line-height":y,"font-size":_},onBlur:function(t){if(u){var n=(0,r.clamp)(t.target.value,b,v);e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),w&&w(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,b,v);return e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),void(w&&w(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef)]})},u}(o.Component);t.NumberInput=u,u.defaultHooks=a.pureComponentHooks,u.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50}},function(e,t,n){"use strict";t.__esModule=!0,t.ProgressBar=void 0;var o=n(1),r=n(12),a=n(20),i=function(e){var t=e.value,n=e.minValue,i=void 0===n?0:n,c=e.maxValue,l=void 0===c?1:c,u=e.ranges,s=void 0===u?{}:u,d=e.content,p=e.children,f=(t-i)/(l-i),m=d!==undefined||p!==undefined,h=e.color;if(!h)for(var C=0,g=Object.keys(s);C=v[0]&&t<=v[1]){h=b;break}}return h||(h="default"),(0,o.createVNode)(1,"div",(0,r.classes)(["ProgressBar","ProgressBar--color--"+h]),[(0,o.createVNode)(1,"div","ProgressBar__fill",null,1,{style:{width:100*(0,a.clamp)(f,0,1)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",[m&&d,m&&p,!m&&(0,a.toFixed)(100*f)+"%"],0)],4)};t.ProgressBar=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Section=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=e.title,i=e.level,c=void 0===i?1:i,l=e.buttons,u=e.content,s=e.children,d=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","title","level","buttons","content","children"]),p=!(0,r.isFalsy)(n)||!(0,r.isFalsy)(l),f=!(0,r.isFalsy)(u)||!(0,r.isFalsy)(s);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Section","Section--level--"+c,t])},d,{children:[p&&(0,o.createVNode)(1,"div","Section__title",[(0,o.createVNode)(1,"span","Section__titleText",n,0),(0,o.createVNode)(1,"div","Section__buttons",l,0)],4),f&&(0,o.createVNode)(1,"div","Section__content",[u,s],0)]})))};t.Section=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Tab=t.Tabs=void 0;var o=n(1),r=n(12),a=n(17),i=n(114);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t=e,n=Array.isArray(t),o=0;for(t=n?t:t[Symbol.iterator]();;){var r;if(n){if(o>=t.length)break;r=t[o++]}else{if((o=t.next()).done)break;r=o.value}var a=r;if(!a.props||"Tab"!==a.props.__type__){var i=JSON.stringify(a,null,2);throw new Error(" only accepts children of type .This is what we received: "+i)}}},u=function(e){var t,n;function u(t){var n;return(n=e.call(this,t)||this).state={activeTabKey:null},n}n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var s=u.prototype;return s.getActiveTab=function(){var e=this.state,t=this.props,n=(0,r.normalizeChildren)(t.children);l(n);var o=t.activeTab||e.activeTabKey,a=n.find((function(e){return(e.key||e.props.label)===o}));return a||(a=n[0],o=a&&(a.key||a.props.label)),{tabs:n,activeTab:a,activeTabKey:o}},s.render=function(){var e=this,t=this.props,n=t.className,l=t.vertical,u=(t.children,c(t,["className","vertical","children"])),s=this.getActiveTab(),d=s.tabs,p=s.activeTab,f=s.activeTabKey,m=null;return p&&(m=p.props.content||p.props.children),"function"==typeof m&&(m=m(f)),(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Tabs",l&&"Tabs--vertical",n])},u,{children:[(0,o.createVNode)(1,"div","Tabs__tabBox",d.map((function(t){var n=t.props,a=n.className,l=n.label,u=(n.content,n.children,n.onClick),s=n.highlight,d=c(n,["className","label","content","children","onClick","highlight"]),p=t.key||t.props.label,m=t.active||p===f;return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Button,Object.assign({className:(0,r.classes)(["Tabs__tab",m&&"Tabs__tab--active",s&&!m&&"color-yellow",a]),selected:m,color:"transparent",onClick:function(n){e.setState({activeTabKey:p}),u&&u(n,t)}},d,{children:l}),p))})),0),(0,o.createVNode)(1,"div","Tabs__content",m||null,0)]})))},u}(o.Component);t.Tabs=u;var s=function(e){return null};t.Tab=s,s.defaultProps={__type__:"Tab"},u.Tab=s},function(e,t,n){"use strict";t.__esModule=!0,t.TitleBar=void 0;var o=n(1),r=n(12),a=n(31),i=n(19),c=n(37),l=n(87),u=function(e){switch(e){case c.UI_INTERACTIVE:return"good";case c.UI_UPDATE:return"average";case c.UI_DISABLED:default:return"bad"}},s=function(e){var t=e.className,n=e.title,c=e.status,s=e.fancy,d=e.onDragStart,p=e.onClose;return(0,o.createVNode)(1,"div",(0,r.classes)(["TitleBar",t]),[(0,o.createComponentVNode)(2,l.Icon,{className:"TitleBar__statusIcon",color:u(c),name:"eye"}),(0,o.createVNode)(1,"div","TitleBar__title",n===n.toLowerCase()?(0,a.toTitleCase)(n):n,0),(0,o.createVNode)(1,"div","TitleBar__dragZone",null,1,{onMousedown:function(e){return s&&d(e)}}),!!s&&(0,o.createVNode)(1,"div","TitleBar__close TitleBar__clickable",i.tridentVersion<=4?"x":"\xd7",0,{onclick:p})],0)};t.TitleBar=s,s.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=void 0;var o=n(1),r=n(28),a=n(17),i=n(12),c=n(19);var l=function(e,t,n,o){if(0===e.length)return[];var a=(0,r.zipWith)(Math.min).apply(void 0,e),i=(0,r.zipWith)(Math.max).apply(void 0,e);return n!==undefined&&(a[0]=n[0],i[0]=n[1]),o!==undefined&&(a[1]=o[0],i[1]=o[1]),(0,r.map)((function(e){return(0,r.zipWith)((function(e,t,n,o){return(e-t)/(n-t)*o}))(e,a,i,t)}))(e)},u=function(e){for(var t="",n=0;n=0||(r[n]=e[n]);return r}(t,["data","rangeX","rangeY","fillColor","strokeColor","strokeWidth"]),g=this.state.viewBox,b=l(r,g,i,c);if(b.length>0){var v=b[0],N=b[b.length-1];b.push([g[0]+h,N[1]]),b.push([g[0]+h,-h]),b.push([-h,-h]),b.push([-h,v[1]])}var V=u(b);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({position:"relative"},C,{children:function(t){return(0,o.normalizeProps)((0,o.createVNode)(1,"div",null,(0,o.createVNode)(32,"svg",null,(0,o.createVNode)(32,"polyline",null,null,1,{transform:"scale(1, -1) translate(0, -"+g[1]+")",fill:d,stroke:f,"stroke-width":h,points:V}),2,{viewBox:"0 0 "+g[0]+" "+g[1],preserveAspectRatio:"none",style:{position:"absolute",top:0,left:0,right:0,bottom:0,overflow:"hidden"}}),2,Object.assign({},t),null,e.ref))}})))},r}(o.Component);s.defaultHooks=i.pureComponentHooks;var d={Line:c.tridentVersion<=4?function(e){return null}:s};t.Chart=d},function(e,t,n){"use strict";t.__esModule=!0,t.AiAirlock=void 0;var o=n(1),r=n(3),a=n(2);t.AiAirlock=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c={2:{color:"good",localStatusText:"Offline"},1:{color:"average",localStatusText:"Caution"},0:{color:"bad",localStatusText:"Optimal"}},l=c[i.power.main]||c[0],u=c[i.power.backup]||c[0],s=c[i.shock]||c[0];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main",color:l.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.main,content:"Disrupt",onClick:function(){return n("disrupt-main")}}),children:[i.power.main?"Online":"Offline"," ",i.wires.main_1&&i.wires.main_2?i.power.main_timeleft>0&&"["+i.power.main_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Backup",color:u.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.backup,content:"Disrupt",onClick:function(){return n("disrupt-backup")}}),children:[i.power.backup?"Online":"Offline"," ",i.wires.backup_1&&i.wires.backup_2?i.power.backup_timeleft>0&&"["+i.power.backup_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Electrify",color:s.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",disabled:!(i.wires.shock&&0===i.shock),content:"Restore",onClick:function(){return n("shock-restore")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Temporary",onClick:function(){return n("shock-temp")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Permanent",onClick:function(){return n("shock-perm")}})],4),children:[2===i.shock?"Safe":"Electrified"," ",(i.wires.shock?i.shock_timeleft>0&&"["+i.shock_timeleft+"s]":"[Wires have been cut!]")||-1===i.shock_timeleft&&"[Permanent]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access and Door Control",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID Scan",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.id_scanner?"power-off":"times",content:i.id_scanner?"Enabled":"Disabled",selected:i.id_scanner,disabled:!i.wires.id_scanner,onClick:function(){return n("idscan-toggle")}}),children:!i.wires.id_scanner&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Access",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.emergency?"power-off":"times",content:i.emergency?"Enabled":"Disabled",selected:i.emergency,onClick:function(){return n("emergency-toggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolts",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.locked?"lock":"unlock",content:i.locked?"Lowered":"Raised",selected:i.locked,disabled:!i.wires.bolts,onClick:function(){return n("bolt-toggle")}}),children:!i.wires.bolts&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolt Lights",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.lights?"power-off":"times",content:i.lights?"Enabled":"Disabled",selected:i.lights,disabled:!i.wires.lights,onClick:function(){return n("light-toggle")}}),children:!i.wires.lights&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Force Sensors",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.safe?"power-off":"times",content:i.safe?"Enabled":"Disabled",selected:i.safe,disabled:!i.wires.safe,onClick:function(){return n("safe-toggle")}}),children:!i.wires.safe&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Timing Safety",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.speed?"power-off":"times",content:i.speed?"Enabled":"Disabled",selected:i.speed,disabled:!i.wires.timing,onClick:function(){return n("speed-toggle")}}),children:!i.wires.timing&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Control",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.opened?"sign-out-alt":"sign-in-alt",content:i.opened?"Open":"Closed",selected:i.opened,disabled:i.locked||i.welded,onClick:function(){return n("open-close")}}),children:!(!i.locked&&!i.welded)&&(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("[Door is "),i.locked?"bolted":"",i.locked&&i.welded?" and ":"",i.welded?"welded":"",(0,o.createTextVNode)("!]")],0)})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.AirAlarm=void 0;var o=n(1),r=n(20),a=n(31),i=n(3),c=n(2),l=n(37),u=n(69);t.AirAlarm=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.data,c=a.locked&&!a.siliconUser;return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.InterfaceLockNoticeBox,{siliconUser:a.siliconUser,locked:a.locked,onLockStatusChange:function(){return r("lock")}}),(0,o.createComponentVNode)(2,s,{state:t}),!c&&(0,o.createComponentVNode)(2,p,{state:t})],0)};var s=function(e){var t=(0,i.useBackend)(e).data,n=(t.environment_data||[]).filter((function(e){return e.value>=.01})),a={0:{color:"good",localStatusText:"Optimal"},1:{color:"average",localStatusText:"Caution"},2:{color:"bad",localStatusText:"Danger (Internals Required)"}},l=a[t.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.Section,{title:"Air Status",children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[n.length>0&&(0,o.createFragment)([n.map((function(e){var t=a[e.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:e.name,color:t.color,children:[(0,r.toFixed)(e.value,2),e.unit]},e.name)})),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Local status",color:l.color,children:l.localStatusText}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Area status",color:t.atmos_alarm||t.fire_alarm?"bad":"good",children:(t.atmos_alarm?"Atmosphere Alarm":t.fire_alarm&&"Fire Alarm")||"Nominal"})],0)||(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Cannot obtain air sample for analysis."}),!!t.emagged&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Safety measures offline. Device may exhibit abnormal behavior."})]})})},d={home:{title:"Air Controls",component:function(){return f}},vents:{title:"Vent Controls",component:function(){return m}},scrubbers:{title:"Scrubber Controls",component:function(){return C}},modes:{title:"Operating Mode",component:function(){return b}},thresholds:{title:"Alarm Thresholds",component:function(){return v}}},p=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.config,l=d[a.screen]||d.home,u=l.component();return(0,o.createComponentVNode)(2,c.Section,{title:l.title,buttons:"home"!==a.screen&&(0,o.createComponentVNode)(2,c.Button,{icon:"arrow-left",content:"Back",onClick:function(){return r("tgui:view",{screen:"home"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},f=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data,a=r.mode,l=r.atmos_alarm;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:l?"exclamation-triangle":"exclamation",color:l&&"caution",content:"Area Atmosphere Alarm",onClick:function(){return n(l?"reset":"alarm")}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:3===a?"exclamation-triangle":"exclamation",color:3===a&&"danger",content:"Panic Siphon",onClick:function(){return n("mode",{mode:3===a?1:3})}}),(0,o.createComponentVNode)(2,c.Box,{mt:2}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"Vent Controls",onClick:function(){return n("tgui:view",{screen:"vents"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"filter",content:"Scrubber Controls",onClick:function(){return n("tgui:view",{screen:"scrubbers"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"cog",content:"Operating Mode",onClick:function(){return n("tgui:view",{screen:"modes"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"chart-bar",content:"Alarm Thresholds",onClick:function(){return n("tgui:view",{screen:"thresholds"})}})],4)},m=function(e){var t=e.state,n=(0,i.useBackend)(e).data.vents;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},h=function(e){var t=e.id_tag,n=e.long_name,r=e.power,l=e.checks,u=e.excheck,s=e.incheck,d=e.direction,p=e.external,f=e.internal,m=e.extdefault,h=e.intdefault,C=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(n),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:r?"power-off":"times",selected:r,content:r?"On":"Off",onClick:function(){return C("power",{id_tag:t,val:Number(!r)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:"release"===d?"Pressurizing":"Releasing"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,c.Button,{icon:"sign-in-alt",content:"Internal",selected:s,onClick:function(){return C("incheck",{id_tag:t,val:l})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"External",selected:u,onClick:function(){return C("excheck",{id_tag:t,val:l})}})]}),!!s&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Internal Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(f),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_internal_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:h,content:"Reset",onClick:function(){return C("reset_internal_pressure",{id_tag:t})}})]}),!!u&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"External Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(p),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_external_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:m,content:"Reset",onClick:function(){return C("reset_external_pressure",{id_tag:t})}})]})]})})},C=function(e){var t=e.state,n=(0,i.useBackend)(e).data.scrubbers;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},g=function(e){var t=e.long_name,n=e.power,r=e.scrubbing,u=e.id_tag,s=e.widenet,d=e.filter_types,p=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(t),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:n?"power-off":"times",content:n?"On":"Off",selected:n,onClick:function(){return p("power",{id_tag:u,val:Number(!n)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,c.Button,{icon:r?"filter":"sign-in-alt",color:r||"danger",content:r?"Scrubbing":"Siphoning",onClick:function(){return p("scrubbing",{id_tag:u,val:Number(!r)})}}),(0,o.createComponentVNode)(2,c.Button,{icon:s?"expand":"compress",selected:s,content:s?"Expanded range":"Normal range",onClick:function(){return p("widenet",{id_tag:u,val:Number(!s)})}})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Filters",children:r&&d.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,l.getGasLabel)(e.gas_id,e.gas_name),title:e.gas_name,selected:e.enabled,onClick:function(){return p("toggle_filter",{id_tag:u,val:e.gas_id})}},e.gas_id)}))||"N/A"})]})})},b=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data.modes;return r&&0!==r.length?r.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:e.selected?"check-square-o":"square-o",selected:e.selected,color:e.selected&&e.danger&&"danger",content:e.name,onClick:function(){return n("mode",{mode:e.mode})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1})],4,e.mode)})):"Nothing to show"},v=function(e){var t=(0,i.useBackend)(e),n=t.act,a=t.data.thresholds;return(0,o.createVNode)(1,"table","LabeledList",[(0,o.createVNode)(1,"thead",null,(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","color-bad","min2",16),(0,o.createVNode)(1,"td","color-average","min1",16),(0,o.createVNode)(1,"td","color-average","max1",16),(0,o.createVNode)(1,"td","color-bad","max2",16)],4),2),(0,o.createVNode)(1,"tbody",null,a.map((function(e){return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","LabeledList__label",e.name,0),e.settings.map((function(e){return(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,c.Button,{content:(0,r.toFixed)(e.selected,2),onClick:function(){return n("threshold",{env:e.env,"var":e.val})}}),2,null,e.val)}))],0,null,e.name)})),0)],4,{style:{width:"100%"}})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirlockElectronics=void 0;var o=n(1),r=n(3),a=n(2);t.AirlockElectronics=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.regions||[],l={0:{icon:"times-circle"},1:{icon:"stop-circle"},2:{icon:"check-circle"}};return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Main",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access Required",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.oneAccess?"unlock":"lock",content:i.oneAccess?"One":"All",onClick:function(){return n("one_access")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mass Modify",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"check-double",content:"Grant All",onClick:function(){return n("grant_all")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Clear All",onClick:function(){return n("clear_all")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Unrestricted Access",children:[(0,o.createComponentVNode)(2,a.Button,{icon:1&i.unres_direction?"check-square-o":"square-o",content:"North",selected:1&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"1"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:2&i.unres_direction?"check-square-o":"square-o",content:"East",selected:2&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"2"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:4&i.unres_direction?"check-square-o":"square-o",content:"South",selected:4&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"4"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:8&i.unres_direction?"check-square-o":"square-o",content:"West",selected:8&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"8"})}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access",children:(0,o.createComponentVNode)(2,a.Box,{height:"261px",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:c.map((function(e){var t=e.name,r=e.accesses||[],i=l[function(e){var t=!1,n=!1;return e.forEach((function(e){e.req?t=!0:n=!0})),!t&&n?0:t&&n?1:2}(r)].icon;return(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:i,label:t,children:function(){return r.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:e.req?"check-square-o":"square-o",content:e.name,selected:e.req,onClick:function(){return n("set",{access:e.id})}})},e.id)}))}},t)}))})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Apc=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Apc=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u={2:{color:"good",externalPowerText:"External Power",chargingText:"Fully Charged"},1:{color:"average",externalPowerText:"Low External Power",chargingText:"Charging"},0:{color:"bad",externalPowerText:"No External Power",chargingText:"Not Charging"}},s={1:{icon:"terminal",content:"Override Programming",action:"hack"},2:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"},3:{icon:"caret-square-left",content:"Return to Main Core",action:"deoccupy"},4:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"}},d=u[c.externalPower]||u[0],p=u[c.chargingStatus]||u[0],f=c.powerChannels||[],m=s[c.malfStatus]||s[0],h=c.powerCellStatus/100;return c.failTime>0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createVNode)(1,"b",null,(0,o.createVNode)(1,"h3",null,"SYSTEM FAILURE",16),2),(0,o.createVNode)(1,"i",null,"I/O regulators malfunction detected! Waiting for system reboot...",16),(0,o.createVNode)(1,"br"),"Automatic reboot in ",c.failTime," seconds...",(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reboot Now",onClick:function(){return n("reboot")}})]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:c.siliconUser,locked:c.locked,onLockStatusChange:function(){return n("lock")}}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main Breaker",color:d.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",content:c.isOperating?"On":"Off",selected:c.isOperating&&!l,disabled:l,onClick:function(){return n("breaker")}}),children:["[ ",d.externalPowerText," ]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power Cell",children:(0,o.createComponentVNode)(2,a.ProgressBar,{color:"good",value:h})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",color:p.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.chargeMode?"sync":"close",content:c.chargeMode?"Auto":"Off",disabled:l,onClick:function(){return n("charge")}}),children:["[ ",p.chargingText," ]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Channels",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[f.map((function(e){var t=e.topicParams;return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.title,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,mx:2,color:e.status>=2?"good":"bad",children:e.status>=2?"On":"Off"}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:!l&&(1===e.status||3===e.status),disabled:l,onClick:function(){return n("channel",t.auto)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:"On",selected:!l&&2===e.status,disabled:l,onClick:function(){return n("channel",t.on)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:!l&&0===e.status,disabled:l,onClick:function(){return n("channel",t.off)}})],4),children:e.powerLoad},e.title)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Total Load",children:(0,o.createVNode)(1,"b",null,c.totalLoad,0)})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Misc",buttons:!!c.siliconUser&&(0,o.createFragment)([!!c.malfStatus&&(0,o.createComponentVNode)(2,a.Button,{icon:m.icon,content:m.content,color:"bad",onClick:function(){return n(m.action)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Overload",onClick:function(){return n("overload")}})],0),children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cover Lock",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.coverLocked?"lock":"unlock",content:c.coverLocked?"Engaged":"Disengaged",disabled:l,onClick:function(){return n("cover")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.emergencyLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("emergency_lighting")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Night Shift Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.nightshiftLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("toggle_nightshift")}})})]}),c.hijackable&&(0,o.createComponentVNode)(2,a.Section,{title:"Hijacking",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"unlock",content:"Hijack",disabled:c.hijacker,onClick:function(){return n("hijack")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lockdown",disabled:!c.lockdownavail,onClick:function(){return n("lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Drain",disabled:!c.drainavail,onClick:function(){return n("drain")}})],4)})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosAlertConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.priority||[],l=i.minor||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Alarms",children:(0,o.createVNode)(1,"ul",null,[c.length>0?c.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"bad",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Priority Alerts",16),l.length>0?l.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"average",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Minor Alerts",16)],0)})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosControlConsole=void 0;var o=n(1),r=n(28),a=n(20),i=n(3),c=n(2);t.AtmosControlConsole=function(e){var t=(0,i.useBackend)(e),n=t.act,l=t.data,u=l.sensors||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Section,{title:!!l.tank&&u[0].long_name,children:u.map((function(e){var t=e.gases||{};return(0,o.createComponentVNode)(2,c.Section,{title:!l.tank&&e.long_name,level:2,children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure",children:(0,a.toFixed)(e.pressure,2)+" kPa"}),!!e.temperature&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Temperature",children:(0,a.toFixed)(e.temperature,2)+" K"}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,children:(0,a.toFixed)(e,2)+"%"})}))(t)]})},e.id_tag)}))}),l.tank&&(0,o.createComponentVNode)(2,c.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"undo",content:"Reconnect",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Injector",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.inputting?"power-off":"times",content:l.inputting?"Injecting":"Off",selected:l.inputting,onClick:function(){return n("input")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Rate",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:l.inputRate,unit:"L/s",width:"63px",minValue:0,maxValue:200,suppressFlicker:2e3,onChange:function(e,t){return n("rate",{rate:t})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Regulator",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.outputting?"power-off":"times",content:l.outputting?"Open":"Closed",selected:l.outputting,onClick:function(){return n("output")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Pressure",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:parseFloat(l.outputPressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,suppressFlicker:2e3,onChange:function(e,t){return n("pressure",{pressure:t})}})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosFilter=void 0;var o=n(1),r=n(3),a=n(2),i=n(37);t.AtmosFilter=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.filter_types||[];return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(c.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onDrag:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:c.rate===c.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Filter",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:e.selected,content:(0,i.getGasLabel)(e.id,e.name),onClick:function(){return n("filter",{mode:e.id})}},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosMixer=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosMixer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.set_pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.set_pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 1",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node1_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node1",{concentration:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 2",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node2_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node2",{concentration:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosPump=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosPump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),i.max_rate?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onChange:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.rate===i.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}):(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BankMachine=void 0;var o=n(1),r=n(3),a=n(2);t.BankMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.current_balance,l=i.siphoning,u=i.station_name;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:u+" Vault",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Balance",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"times":"sync",content:l?"Stop Siphoning":"Siphon Credits",selected:l,onClick:function(){return n(l?"halt":"siphon")}}),children:c+" cr"})})}),(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Authorized personnel only"})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BluespaceArtillery=void 0;var o=n(1),r=n(3),a=n(2);t.BluespaceArtillery=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.notice,l=i.connected,u=i.unlocked,s=i.target;return(0,o.createFragment)([!!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:c}),l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"crosshairs",disabled:!u,onClick:function(){return n("recalibrate")}}),children:(0,o.createComponentVNode)(2,a.Box,{color:s?"average":"bad",fontSize:"25px",children:s||"No Target Set"})}),(0,o.createComponentVNode)(2,a.Section,{children:u?(0,o.createComponentVNode)(2,a.Box,{style:{margin:"auto"},children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"FIRE",color:"bad",disabled:!s,fontSize:"30px",textAlign:"center",lineHeight:"46px",onClick:function(){return n("fire")}})}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{color:"bad",fontSize:"18px",children:"Bluespace artillery is currently locked."}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"Awaiting authorization via keycard reader from at minimum two station heads."})],4)})],4):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Maintenance",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:"Complete Deployment",onClick:function(){return n("build")}})})})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Bepis=void 0;var o=n(1),r=(n(31),n(19)),a=n(2);t.Bepis=function(e){var t=e.state,n=t.config,i=t.data,c=n.ref,l=i.amount;return(0,o.createComponentVNode)(2,a.Section,{title:"Business Exploration Protocol Incubation Sink",children:[(0,o.createComponentVNode)(2,a.Section,{title:"Information",backgroundColor:"#450F44",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.manual_power?"Off":"On",selected:!i.manual_power,onClick:function(){return(0,r.act)(c,"toggle_power")}}),children:"All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. performs hundreds of tests a second using electrical and financial resources to invent new products, or discover new technologies otherwise overlooked for being too risky or too niche to produce!"}),(0,o.createComponentVNode)(2,a.Section,{title:"Payer's Account",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"redo-alt",content:"Reset Account",onClick:function(){return(0,r.act)(c,"account_reset")}}),children:["Console is currently being operated by ",i.account_owner?i.account_owner:"no one","."]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Stored Data and Statistics",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposited Credits",children:i.stored_cash}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Investment Variability",children:[i.accuracy_percentage,"%"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Innovation Bonus",children:i.positive_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Risk Offset",color:"bad",children:i.negative_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposit Amount",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l,unit:"Credits",minValue:100,maxValue:3e4,step:100,stepPixelSize:2,onChange:function(e,t){return(0,r.act)(c,"amount",{amount:t})}})})]})}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"donate",content:"Deposit Credits",disabled:1===i.manual_power||1===i.silicon_check,onClick:function(){return(0,r.act)(c,"deposit_cash")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Withdraw Credits",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"withdraw_cash")}})]})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Market Data and Analysis",children:[(0,o.createComponentVNode)(2,a.Box,{children:["Average technology cost: ",i.mean_value]}),i.error_name&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Previous Failure Reason: Deposited cash value too low. Please insert more money for future success."}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"microscope",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"begin_experiment")},content:"Begin Testing"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BorgPanel=void 0;var o=n(1),r=n(3),a=n(2);t.BorgPanel=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.borg||{},l=i.cell||{},u=l.charge/l.maxcharge,s=i.channels||[],d=i.modules||[],p=i.upgrades||[],f=i.ais||[],m=i.laws||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:c.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Rename",onClick:function(){return n("rename")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.emagged?"check-square-o":"square-o",content:"Emagged",selected:c.emagged,onClick:function(){return n("toggle_emagged")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.lockdown?"check-square-o":"square-o",content:"Locked Down",selected:c.lockdown,onClick:function(){return n("toggle_lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.scrambledcodes?"check-square-o":"square-o",content:"Scrambled Codes",selected:c.scrambledcodes,onClick:function(){return n("toggle_scrambledcodes")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:[l.missing?(0,o.createVNode)(1,"span","color-bad","No cell installed",16):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,content:l.charge+" / "+l.maxcharge}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("set_charge")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Change",onClick:function(){return n("change_cell")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Remove",color:"bad",onClick:function(){return n("remove_cell")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radio Channels",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_radio",{channel:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Module",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:c.active_module===e.type?"check-square-o":"square-o",content:e.name,selected:c.active_module===e.type,onClick:function(){return n("setmodule",{module:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Upgrades",children:p.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_upgrade",{upgrade:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Master AI",children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.connected?"check-square-o":"square-o",content:e.name,selected:e.connected,onClick:function(){return n("slavetoai",{slavetoai:e.ref})}},e.ref)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Laws",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.lawupdate?"check-square-o":"square-o",content:"Lawsync",selected:c.lawupdate,onClick:function(){return n("toggle_lawupdate")}}),children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e},e)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BrigTimer=void 0;var o=n(1),r=n(3),a=n(2);t.BrigTimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Cell Timer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:i.timing?"Stop":"Start",selected:i.timing,onClick:function(){return n(i.timing?"stop":"start")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:i.flash_charging?"Recharging":"Flash",disabled:i.flash_charging,onClick:function(){return n("flash")}})],4),children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",onClick:function(){return n("time",{adjust:-600})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",onClick:function(){return n("time",{adjust:-100})}})," ",String(i.minutes).padStart(2,"0"),":",String(i.seconds).padStart(2,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",onClick:function(){return n("time",{adjust:100})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",onClick:function(){return n("time",{adjust:600})}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Short",onClick:function(){return n("preset",{preset:"short"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Medium",onClick:function(){return n("preset",{preset:"medium"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Long",onClick:function(){return n("preset",{preset:"long"})}})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Canister=void 0;var o=n(1),r=n(3),a=n(2);t.Canister=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:["The regulator ",i.hasHoldingTank?"is":"is not"," connected to a tank."]}),(0,o.createComponentVNode)(2,a.Section,{title:"Canister",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Relabel",onClick:function(){return n("relabel")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.tankPressure})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:i.portConnected?"good":"average",content:i.portConnected?"Connected":"Not Connected"}),!!i.isPrototype&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.restricted?"lock":"unlock",color:"caution",content:i.restricted?"Restricted to Engineering":"Public",onClick:function(){return n("restricted")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Valve",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Release Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.releasePressure/(i.maxReleasePressure-i.minReleasePressure),children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.releasePressure})," kPa"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"undo",disabled:i.releasePressure===i.defaultReleasePressure,content:"Reset",onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:i.releasePressure<=i.minReleasePressure,content:"Min",onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("pressure",{pressure:"input"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:i.releasePressure>=i.maxReleasePressure,content:"Max",onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Valve",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.valveOpen?"unlock":"lock",color:i.valveOpen?i.hasHoldingTank?"caution":"danger":null,content:i.valveOpen?"Open":"Closed",onClick:function(){return n("valve")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",buttons:!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",color:i.valveOpen&&"danger",content:"Eject",onClick:function(){return n("eject")}}),children:[!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:i.holdingTank.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.holdingTank.tankPressure})," kPa"]})]}),!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Holding Tank"})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoExpress=t.Cargo=void 0;var o=n(1),r=n(28),a=n(19),i=n(2),c=n(69);t.Cargo=function(e){var t=e.state,n=t.config,r=t.data,c=n.ref,d=r.supplies||{},p=r.requests||[],f=r.cart||[],m=f.reduce((function(e,t){return e+t.cost}),0),h=!r.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:1,children:[0===f.length&&"Cart is empty",1===f.length&&"1 item",f.length>=2&&f.length+" items"," ",m>0&&"("+m+" cr)"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"transparent",content:"Clear",onClick:function(){return(0,a.act)(c,"clear")}})],4);return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle",children:r.docked&&!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{content:r.location,onClick:function(){return(0,a.act)(c,"send")}})||r.location}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"CentCom Message",children:r.message}),r.loan&&!r.requestonly?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Loan",children:r.loan_dispatched?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Loaned to Centcom"}):(0,o.createComponentVNode)(2,i.Button,{content:"Loan Shuttle",disabled:!(r.away&&r.docked),onClick:function(){return(0,a.act)(c,"loan")}})}):""]})}),(0,o.createComponentVNode)(2,i.Tabs,{mt:2,children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Catalog",icon:"list",lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Catalog",buttons:h,children:(0,o.createComponentVNode)(2,l,{state:t,supplies:d})})}},"catalog"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Requests ("+p.length+")",icon:"envelope",highlight:p.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Active Requests",buttons:!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Clear",color:"transparent",onClick:function(){return(0,a.act)(c,"denyall")}}),children:(0,o.createComponentVNode)(2,u,{state:t,requests:p})})}},"requests"),!r.requestonly&&(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Checkout ("+f.length+")",icon:"shopping-cart",highlight:f.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Current Cart",buttons:h,children:(0,o.createComponentVNode)(2,s,{state:t,cart:f})})}},"cart")]})],4)};var l=function(e){var t=e.state,n=e.supplies,c=t.config,l=t.data,u=c.ref,s=function(e){var t=n[e].packs;return(0,o.createVNode)(1,"table","LabeledList",t.map((function(e){return(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[e.name,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.small_item&&(0,o.createFragment)([(0,o.createTextVNode)("Small Item")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.access&&(0,o.createFragment)([(0,o.createTextVNode)("Restrictions Apply")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:(l.self_paid?Math.round(1.1*e.cost):e.cost)+" credits",tooltip:e.desc,tooltipPosition:"left",onClick:function(){return(0,a.act)(u,"add",{id:e.id})}}),2)],4,null,e.name)})),0)};return(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e){var t=e.name;return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:t,children:s},t)}))(n)})},u=function(e){var t=e.state,n=e.requests,r=t.config,c=t.data,l=r.ref;return 0===n.length?(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"No Requests"}):(0,o.createVNode)(1,"table","LabeledList",n.map((function(e){return(0,o.createFragment)([(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[(0,o.createTextVNode)("#"),e.id,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__content",e.object,0),(0,o.createVNode)(1,"td","LabeledList__cell",[(0,o.createTextVNode)("By "),(0,o.createVNode)(1,"b",null,e.orderer,0)],4),(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createVNode)(1,"i",null,e.reason,0),2),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",[e.cost,(0,o.createTextVNode)(" credits"),(0,o.createTextVNode)(" "),!c.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"check",color:"good",onClick:function(){return(0,a.act)(l,"approve",{id:e.id})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"bad",onClick:function(){return(0,a.act)(l,"deny",{id:e.id})}})],4)],0)],4)],4,e.id)})),0)},s=function(e){var t=e.state,n=e.cart,r=t.config,c=t.data,l=r.ref;return(0,o.createFragment)([0===n.length&&"Nothing in cart",n.length>0&&(0,o.createComponentVNode)(2,i.LabeledList,{children:n.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:"#"+e.id,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:2,children:[!!e.paid&&(0,o.createVNode)(1,"b",null,"[Paid Privately]",16)," ",e.cost," credits"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus",onClick:function(){return(0,a.act)(l,"remove",{id:e.id})}})],4),children:e.object},e.id)}))}),n.length>0&&!c.requestonly&&(0,o.createComponentVNode)(2,i.Box,{mt:2,children:1===c.away&&1===c.docked&&(0,o.createComponentVNode)(2,i.Button,{color:"green",style:{"line-height":"28px",padding:"0 12px"},content:"Confirm the order",onClick:function(){return(0,a.act)(l,"send")}})||(0,o.createComponentVNode)(2,i.Box,{opacity:.5,children:["Shuttle in ",c.location,"."]})})],0)};t.CargoExpress=function(e){var t=e.state,n=t.config,r=t.data,u=n.ref,s=r.supplies||{};return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox,{siliconUser:r.siliconUser,locked:r.locked,onLockStatusChange:function(){return(0,a.act)(u,"lock")},accessText:"a QM-level ID card"}),!r.locked&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo Express",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Landing Location",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Cargo Bay",selected:!r.usingBeacon,onClick:function(){return(0,a.act)(u,"LZCargo")}}),(0,o.createComponentVNode)(2,i.Button,{selected:r.usingBeacon,disabled:!r.hasBeacon,onClick:function(){return(0,a.act)(u,"LZBeacon")},children:[r.beaconzone," (",r.beaconName,")"]}),(0,o.createComponentVNode)(2,i.Button,{content:r.printMsg,disabled:!r.canBuyBeacon,onClick:function(){return(0,a.act)(u,"printBeacon")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Notice",children:r.message})]})}),(0,o.createComponentVNode)(2,l,{state:t,supplies:s})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.CellularEmporium=void 0;var o=n(1),r=n(3),a=n(2);t.CellularEmporium=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.abilities;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Genetic Points",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Readapt",disabled:!i.can_readapt,onClick:function(){return n("readapt")}}),children:i.genetic_points_remaining})})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.name,buttons:(0,o.createFragment)([e.dna_cost," ",(0,o.createComponentVNode)(2,a.Button,{content:e.owned?"Evolved":"Evolve",selected:e.owned,onClick:function(){return n("evolve",{name:e.name})}})],0),children:[e.desc,(0,o.createComponentVNode)(2,a.Box,{color:"good",children:e.helptext})]},e.name)}))})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CentcomPodLauncher=void 0;var o=n(1),r=(n(31),n(3)),a=n(2);t.CentcomPodLauncher=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:"To use this, simply spawn the atoms you want in one of the five Centcom Supplypod Bays. Items in the bay will then be launched inside your supplypod, one turf-full at a time! You can optionally use the following buttons to configure how the supplypod acts."}),(0,o.createComponentVNode)(2,a.Section,{title:"Centcom Pod Customization (To be used against Helen Weinstein)",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Supply Bay",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bay #1",selected:1===i.bayNumber,onClick:function(){return n("bay1")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #2",selected:2===i.bayNumber,onClick:function(){return n("bay2")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #3",selected:3===i.bayNumber,onClick:function(){return n("bay3")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #4",selected:4===i.bayNumber,onClick:function(){return n("bay4")}}),(0,o.createComponentVNode)(2,a.Button,{content:"ERT Bay",selected:5===i.bayNumber,tooltip:"This bay is located on the western edge of CentCom. Its the\nglass room directly west of where ERT spawn, and south of the\nCentCom ferry. Useful for launching ERT/Deathsquads/etc. onto\nthe station via drop pods.",onClick:function(){return n("bay5")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleport to",children:[(0,o.createComponentVNode)(2,a.Button,{content:i.bay,onClick:function(){return n("teleportCentcom")}}),(0,o.createComponentVNode)(2,a.Button,{content:i.oldArea?i.oldArea:"Where you were",disabled:!i.oldArea,onClick:function(){return n("teleportBack")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Clone Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:"Launch Clones",selected:i.launchClone,tooltip:"Choosing this will create a duplicate of the item to be\nlaunched in Centcom, allowing you to send one type of item\nmultiple times. Either way, the atoms are forceMoved into\nthe supplypod after it lands (but before it opens).",onClick:function(){return n("launchClone")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Launch style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Ordered",selected:1===i.launchChoice,tooltip:'Instead of launching everything in the bay at once, this\nwill "scan" things (one turf-full at a time) in order, left\nto right and top to bottom. undoing will reset the "scanner"\nto the top-leftmost position.',onClick:function(){return n("launchOrdered")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Random",selected:2===i.launchChoice,tooltip:"Instead of launching everything in the bay at once, this\nwill launch one random turf of items at a time.",onClick:function(){return n("launchRandom")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Explosion",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Size",selected:1===i.explosionChoice,tooltip:"This will cause an explosion of whatever size you like\n(including flame range) to occur as soon as the supplypod\nlands. Dont worry, supply-pods are explosion-proof!",onClick:function(){return n("explosionCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Adminbus",selected:2===i.explosionChoice,tooltip:"This will cause a maxcap explosion (dependent on server\nconfig) to occur as soon as the supplypod lands. Dont worry,\nsupply-pods are explosion-proof!",onClick:function(){return n("explosionBus")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Damage",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Damage",selected:1===i.damageChoice,tooltip:"Anyone caught under the pod when it lands will be dealt\nthis amount of brute damage. Sucks to be them!",onClick:function(){return n("damageCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gib",selected:2===i.damageChoice,tooltip:"This will attempt to gib any mob caught under the pod when\nit lands, as well as dealing a nice 5000 brute damage. Ya\nknow, just to be sure!",onClick:function(){return n("damageGib")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Effects",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Stun",selected:i.effectStun,tooltip:"Anyone who is on the turf when the supplypod is launched\nwill be stunned until the supplypod lands. They cant get\naway that easy!",onClick:function(){return n("effectStun")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Delimb",selected:i.effectLimb,tooltip:"This will cause anyone caught under the pod to lose a limb,\nexcluding their head.",onClick:function(){return n("effectLimb")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Yeet Organs",selected:i.effectOrgans,tooltip:"This will cause anyone caught under the pod to lose all\ntheir limbs and organs in a spectacular fashion.",onClick:function(){return n("effectOrgans")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Movement",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bluespace",selected:i.effectBluespace,tooltip:"Gives the supplypod an advanced Bluespace Recyling Device.\nAfter opening, the supplypod will be warped directly to the\nsurface of a nearby NT-designated trash planet (/r/ss13).",onClick:function(){return n("effectBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Stealth",selected:i.effectStealth,tooltip:'This hides the red target icon from appearing when you\nlaunch the supplypod. Combos well with the "Invisible"\nstyle. Sneak attack, go!',onClick:function(){return n("effectStealth")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Quiet",selected:i.effectQuiet,tooltip:"This will keep the supplypod from making any sounds, except\nfor those specifically set by admins in the Sound section.",onClick:function(){return n("effectQuiet")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Reverse Mode",selected:i.effectReverse,tooltip:"This pod will not send any items. Instead, after landing,\nthe supplypod will close (similar to a normal closet closing),\nand then launch back to the right centcom bay to drop off any\nnew contents.",onClick:function(){return n("effectReverse")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile Mode",selected:i.effectMissile,tooltip:"This pod will not send any items. Instead, it will immediately\ndelete after landing (Similar visually to setting openDelay\n& departDelay to 0, but this looks nicer). Useful if you just\nwanna fuck some shit up. Combos well with the Missile style.",onClick:function(){return n("effectMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Any Descent Angle",selected:i.effectCircle,tooltip:"This will make the supplypod come in from any angle. Im not\nsure why this feature exists, but here it is.",onClick:function(){return n("effectCircle")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Machine Gun Mode",selected:i.effectBurst,tooltip:"This will make each click launch 5 supplypods inaccuratly\naround the target turf (a 3x3 area). Combos well with the\nMissile Mode if you dont want shit lying everywhere after.",onClick:function(){return n("effectBurst")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Specific Target",selected:i.effectTarget,tooltip:"This will make the supplypod target a specific atom, instead\nof the mouses position. Smiting does this automatically!",onClick:function(){return n("effectTarget")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name/Desc",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Name/Desc",selected:i.effectName,tooltip:"Allows you to add a custom name and description.",onClick:function(){return n("effectName")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Alert Ghosts",selected:i.effectAnnounce,tooltip:"Alerts ghosts when a pod is launched. Useful if some dumb\nshit is aboutta come outta the pod.",onClick:function(){return n("effectAnnounce")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Sound",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Sound",selected:i.fallingSound,tooltip:"Choose a sound to play as the pod falls. Note that for this\nto work right you should know the exact length of the sound,\nin seconds.",onClick:function(){return n("fallSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Sound",selected:i.landingSound,tooltip:"Choose a sound to play when the pod lands.",onClick:function(){return n("landingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Sound",selected:i.openingSound,tooltip:"Choose a sound to play when the pod opens.",onClick:function(){return n("openingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Sound",selected:i.leavingSound,tooltip:"Choose a sound to play when the pod departs (whether that be\ndelection in the case of a bluespace pod, or leaving for\ncentcom for a reversing pod).",onClick:function(){return n("leavingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Admin Sound Volume",selected:i.soundVolume,tooltip:"Choose the volume for the sound to play at. Default values\nare between 1 and 100, but hey, do whatever. Im a tooltip,\nnot a cop.",onClick:function(){return n("soundVolume")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Timers",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Duration",selected:4!==i.fallDuration,tooltip:"Set how long the animation for the pod falling lasts. Create\ndramatic, slow falling pods!",onClick:function(){return n("fallDuration")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Time",selected:20!==i.landingDelay,tooltip:"Choose the amount of time it takes for the supplypod to hit\nthe station. By default this value is 0.5 seconds.",onClick:function(){return n("landingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Time",selected:30!==i.openingDelay,tooltip:"Choose the amount of time it takes for the supplypod to open\nafter landing. Useful for giving whatevers inside the pod a\nnice dramatic entrance! By default this value is 3 seconds.",onClick:function(){return n("openingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Time",selected:30!==i.departureDelay,tooltip:"Choose the amount of time it takes for the supplypod to leave\nafter landing. By default this value is 3 seconds.",onClick:function(){return n("departureDelay")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.styleChoice,tooltip:"Same color scheme as the normal station-used supplypods",onClick:function(){return n("styleStandard")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.styleChoice,tooltip:"The same as the stations upgraded blue-and-white\nBluespace Supplypods",onClick:function(){return n("styleBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate",selected:4===i.styleChoice,tooltip:"A menacing black and blood-red. Great for sending meme-ops\nin style!",onClick:function(){return n("styleSyndie")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Deathsquad",selected:5===i.styleChoice,tooltip:"A menacing black and dark blue. Great for sending deathsquads\nin style!",onClick:function(){return n("styleBlue")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Cult Pod",selected:6===i.styleChoice,tooltip:"A blood and rune covered cult pod!",onClick:function(){return n("styleCult")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile",selected:7===i.styleChoice,tooltip:"A large missile. Combos well with a missile mode, so the\nmissile doesnt stick around after landing.",onClick:function(){return n("styleMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate Missile",selected:8===i.styleChoice,tooltip:"A large blood-red missile. Combos well with missile mode,\nso the missile doesnt stick around after landing.",onClick:function(){return n("styleSMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Supply Crate",selected:9===i.styleChoice,tooltip:"A large, dark-green military supply crate.",onClick:function(){return n("styleBox")}}),(0,o.createComponentVNode)(2,a.Button,{content:"HONK",selected:10===i.styleChoice,tooltip:"A colorful, clown inspired look.",onClick:function(){return n("styleHONK")}}),(0,o.createComponentVNode)(2,a.Button,{content:"~Fruit",selected:11===i.styleChoice,tooltip:"For when an orange is angry",onClick:function(){return n("styleFruit")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Invisible",selected:12===i.styleChoice,tooltip:'Makes the supplypod invisible! Useful for when you want to\nuse this feature with a gateway or something. Combos well\nwith the "Stealth" and "Quiet Landing" effects.',onClick:function(){return n("styleInvisible")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gondola",selected:13===i.styleChoice,tooltip:"This gondola can control when he wants to deliver his supplies\nif he has a smart enough mind, so offer up his body to ghosts\nfor maximum enjoyment. (Make sure to turn off bluespace and\nset a arbitrarily high open-time if you do!",onClick:function(){return n("styleGondola")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Show Contents (See Through Pod)",selected:14===i.styleChoice,tooltip:"By selecting this, the pod will instead look like whatevers\ninside it (as if it were the contents falling by themselves,\nwithout a pod). Useful for launching mechs at the station\nand standing tall as they soar in from the heavens.",onClick:function(){return n("styleSeeThrough")}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:i.numObjects+" turfs in "+i.bay,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"undo Pody Bay",tooltip:"Manually undoes the possible things to launch in the\npod bay.",onClick:function(){return n("undo")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Enter Launch Mode",selected:i.giveLauncher,tooltip:"THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN",onClick:function(){return n("giveLauncher")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Clear Selected Bay",color:"bad",tooltip:"This will delete all objs and mobs from the selected bay.",tooltipPosition:"left",onClick:function(){return n("clearBay")}})],4)})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemAcclimator=void 0;var o=n(1),r=n(3),a=n(2);t.ChemAcclimator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Acclimator",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:[i.chem_temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.target_temperature,unit:"K",width:"59px",minValue:0,maxValue:1e3,step:5,stepPixelSize:2,onChange:function(e,t){return n("set_target_temperature",{temperature:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Acceptable Temp. Difference",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.allowed_temperature_difference,unit:"K",width:"59px",minValue:1,maxValue:i.target_temperature,stepPixelSize:2,onChange:function(e,t){n("set_allowed_temperature_difference",{temperature:t})}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.enabled?"On":"Off",selected:i.enabled,onClick:function(){return n("toggle_power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.max_volume,unit:"u",width:"50px",minValue:i.reagent_volume,maxValue:200,step:2,stepPixelSize:2,onChange:function(e,t){return n("change_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Operation",children:i.acclimate_state}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current State",children:i.emptying?"Emptying":"Filling"})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDebugSynthesizer=void 0;var o=n(1),r=n(3),a=n(2);t.ChemDebugSynthesizer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.amount,l=i.beakerCurrentVolume,u=i.beakerMaxVolume,s=i.isBeakerLoaded,d=i.beakerContents,p=void 0===d?[]:d;return(0,o.createComponentVNode)(2,a.Section,{title:"Recipient",buttons:s?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("ejectBeaker")}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",minValue:1,maxValue:u,step:1,stepPixelSize:2,onChange:function(e,t){return n("amount",{amount:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Input",onClick:function(){return n("input")}})],4):(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Create Beaker",onClick:function(){return n("makecup")}}),children:s?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l})," / "+u+" u"]}),p.length>0?(0,o.createComponentVNode)(2,a.LabeledList,{children:p.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:[e.volume," u"]},e.name)}))}):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Recipient Empty"})],0):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Recipient"})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemFilter=t.ChemFilterPane=void 0;var o=n(1),r=n(3),a=n(2);var i=function(e){var t=(0,r.useBackend)(e).act,n=e.title,i=e.list,c=e.reagentName,l=e.onReagentInput,u=n.toLowerCase();return(0,o.createComponentVNode)(2,a.Section,{title:n,minHeight:40,ml:.5,mr:.5,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Input,{placeholder:"Reagent",width:"140px",onInput:function(e,t){return l(t)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return t("add",{which:u,name:c})}})],4),children:i.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"minus",content:e,onClick:function(){return t("remove",{which:u,reagent:e})}})],4,e)}))})};t.ChemFilterPane=i;var c=function(e){var t,n;function r(){var t;return(t=e.call(this)||this).state={leftReagentName:"",rightReagentName:""},t}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var c=r.prototype;return c.setLeftReagentName=function(e){this.setState({leftReagentName:e})},c.setRightReagentName=function(e){this.setState({rightReagentName:e})},c.render=function(){var e=this,t=this.props.state,n=t.data,r=n.left,c=void 0===r?[]:r,l=n.right,u=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Left",list:c,reagentName:this.state.leftReagentName,onReagentInput:function(t){return e.setLeftReagentName(t)},state:t})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Right",list:u,reagentName:this.state.rightReagentName,onReagentInput:function(t){return e.setRightReagentName(t)},state:t})})]})},r}(o.Component);t.ChemFilter=c},function(e,t,n){"use strict";t.__esModule=!0,t.ChemPress=void 0;var o=n(1),r=n(3),a=n(2);t.ChemPress=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.pill_size,l=i.pill_name,u=i.pill_style,s=i.pill_styles,d=void 0===s?[]:s;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",width:"43px",minValue:5,maxValue:50,step:1,stepPixelSize:2,onChange:function(e,t){return n("change_pill_size",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Name",children:(0,o.createComponentVNode)(2,a.Input,{value:l,onChange:function(e,t){return n("change_pill_name",{name:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Style",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:5,selected:e.id===u,textAlign:"center",color:"transparent",onClick:function(){return n("change_pill_style",{id:e.id})},children:(0,o.createComponentVNode)(2,a.Box,{mx:-1,className:e.class_name})},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemReactionChamber=void 0;var o=n(1),r=n(19),a=n(2),i=n(28),c=n(12);var l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).state={reagentName:"",reagentQuantity:1},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.setReagentName=function(e){this.setState({reagentName:e})},u.setReagentQuantity=function(e){this.setState({reagentQuantity:e})},u.render=function(){var e=this,t=this.props.state,n=t.config,l=t.data,u=n.ref,s=l.emptying,d=l.reagents||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Reagents",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:s?"bad":"good",children:s?"Emptying":"Filling"}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createVNode)(1,"tr","LabledList__row",[(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createComponentVNode)(2,a.Input,{fluid:!0,value:"",placeholder:"Reagent Name",onInput:function(t,n){return e.setReagentName(n)}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td",(0,c.classes)(["LabeledList__buttons","LabeledList__cell"]),[(0,o.createComponentVNode)(2,a.NumberInput,{value:this.state.reagentQuantity,minValue:1,maxValue:100,step:1,stepPixelSize:3,width:"39px",onDrag:function(t,n){return e.setReagentQuantity(n)}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return(0,r.act)(u,"add",{chem:e.state.reagentName,amount:e.state.reagentQuantity})}})],4)],4),(0,i.map)((function(e,t){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:t,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return(0,r.act)(u,"remove",{chem:t})}}),children:e},t)}))(d)]})})},l}(o.Component);t.ChemReactionChamber=l},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSplitter=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSplitter=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.straight,u=c.side,s=c.max_transfer;return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Straight",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l,unit:"u",width:"55px",minValue:1,maxValue:s,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"straight",amount:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Side",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:u,unit:"u",width:"55px",minValue:1,maxValue:s,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"side",amount:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSynthesizer=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSynthesizer=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.amount,u=c.current_reagent,s=c.chemicals,d=void 0===s?[]:s,p=c.possible_amounts,f=void 0===p?[]:p;return(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:(0,r.toFixed)(e,0),selected:e===l,onClick:function(){return n("amount",{target:e})}},(0,r.toFixed)(e,0))}))}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"tint",content:e.title,width:"129px",selected:e.id===u,onClick:function(){return n("select",{reagent:e.id})}},e.id)}))})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.CodexGigas=void 0;var o=n(1),r=n(3),a=n(2);t.CodexGigas=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[i.name,(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prefix",children:["Dark","Hellish","Fallen","Fiery","Sinful","Blood","Fluffy"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:1!==i.currentSection,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Title",children:["Lord","Prelate","Count","Viscount","Vizier","Elder","Adept"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>2,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:["hal","ve","odr","neit","ci","quon","mya","folth","wren","geyr","hil","niet","twou","phi","coa"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>4,onClick:function(){return n(e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suffix",children:["the Red","the Soulless","the Master","the Lord of all things","Jr."].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:4!==i.currentSection,onClick:function(){return n(" "+e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Submit",children:(0,o.createComponentVNode)(2,a.Button,{content:"Search",disabled:i.currentSection<4,onClick:function(){return n("search")}})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.ComputerFabricator=void 0;var o=n(1),r=(n(31),n(3)),a=n(2);t.ComputerFabricator=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{italic:!0,fontSize:"20px",children:"Your perfect device, only three steps away..."}),0!==l.state&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mb:1,icon:"circle",content:"Clear Order",onClick:function(){return c("clean_order")}}),(0,o.createComponentVNode)(2,i,{state:t})],0)};var i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return 0===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 1",minHeight:51,children:[(0,o.createComponentVNode)(2,a.Box,{mt:5,bold:!0,textAlign:"center",fontSize:"40px",children:"Choose your Device"}),(0,o.createComponentVNode)(2,a.Box,{mt:3,children:(0,o.createComponentVNode)(2,a.Grid,{width:"100%",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"laptop",content:"Laptop",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"1"})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"tablet-alt",content:"Tablet",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"2"})}})})]})})]}):1===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 2: Customize your device",minHeight:47,buttons:(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"good",children:[i.totalprice," cr"]}),children:[(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Battery:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to operate without external utility power\nsource. Advanced batteries increase battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Hard Drive:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Stores file on your device. Advanced drives can store more\nfiles, but use more power, shortening battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Network Card:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to wirelessly connect to stationwide NTNet\nnetwork. Basic cards are limited to on-station use, while\nadvanced cards can operate anywhere near the station, which\nincludes asteroid outposts",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Nano Printer:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A device that allows for various paperwork manipulations,\nsuch as, scanning of documents or printing new ones.\nThis device was certified EcoFriendlyPlus and is capable of\nrecycling existing paper for printing purposes.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"1"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Card Reader:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Adds a slot that allows you to manipulate RFID cards.\nPlease note that this is not necessary to allow the device\nto read your identification, it is just necessary to\nmanipulate other cards.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_card,onClick:function(){return n("hw_card",{card:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_card,onClick:function(){return n("hw_card",{card:"1"})}})})]}),2!==i.devtype&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Processor Unit:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A component critical for your device's functionality.\nIt allows you to run programs from your hard drive.\nAdvanced CPUs use more power, but allow you to run\nmore programs on background at once.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Tesla Relay:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"An advanced wireless power relay that allows your device\nto connect to nearby area power controller to provide\nalternative power source. This component is currently\nunavailable on tablet computers due to size restrictions.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"1"})}})})]})],4)]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mt:3,content:"Confirm Order",color:"good",textAlign:"center",fontSize:"18px",lineHeight:"26px",onClick:function(){return n("confirm_order")}})]}):2===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 3: Payment",minHeight:47,children:[(0,o.createComponentVNode)(2,a.Box,{italic:!0,textAlign:"center",fontSize:"20px",children:"Your device is ready for fabrication..."}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:2,textAlign:"center",fontSize:"16px",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:"Please insert the required"})," ",(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:[i.totalprice," cr"]})]}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:1,textAlign:"center",fontSize:"18px",children:"Current:"}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:.5,textAlign:"center",fontSize:"18px",color:i.credits>=i.totalprice?"good":"bad",children:[i.credits," cr"]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Purchase",disabled:i.credits=10&&e<20?i.COLORS.department.security:e>=20&&e<30?i.COLORS.department.medbay:e>=30&&e<40?i.COLORS.department.science:e>=40&&e<50?i.COLORS.department.engineering:e>=50&&e<60?i.COLORS.department.cargo:e>=200&&e<230?i.COLORS.department.centcom:i.COLORS.department.other},u=function(e){var t=e.type,n=e.value;return(0,o.createComponentVNode)(2,a.Box,{inline:!0,width:4,color:i.COLORS.damageType[t],textAlign:"center",children:n})};t.CrewConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,s=i.sensors||[];return(0,o.createComponentVNode)(2,a.Section,{minHeight:90,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,textAlign:"center",children:"Vitals"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Position"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,children:"Tracking"})]}),s.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:(m=e.ijob,m%10==0),color:l(e.ijob),children:[e.name," (",e.assignment,")"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,a.ColorBox,{color:(t=e.oxydam,r=e.toxdam,s=e.burndam,d=e.brutedam,p=t+r+s+d,f=Math.min(Math.max(Math.ceil(p/25),0),5),c[f])})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:null!==e.oxydam?(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:[(0,o.createComponentVNode)(2,u,{type:"oxy",value:e.oxydam}),"/",(0,o.createComponentVNode)(2,u,{type:"toxin",value:e.toxdam}),"/",(0,o.createComponentVNode)(2,u,{type:"burn",value:e.burndam}),"/",(0,o.createComponentVNode)(2,u,{type:"brute",value:e.brutedam})]}):e.life_status?"Alive":"Dead"}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:null!==e.pos_x?e.area:"N/A"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{content:"Track",disabled:!e.can_track,onClick:function(){return n("select_person",{name:e.name})}})})]},e.name);var t,r,s,d,p,f,m}))]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Cryo=void 0;var o=n(1),r=n(3),a=n(2),i=n(435);t.Cryo=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",content:c.occupant.name?c.occupant.name:"No Occupant"}),!!c.hasOccupant&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",content:c.occupant.stat,color:c.occupant.statstate}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",color:c.occupant.temperaturestatus,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.bodyTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant.health/c.occupant.maxHealth,color:c.occupant.health>0?"good":"average",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant[e.type]/100,children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant[e.type]})})},e.id)}))],0)]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cell",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",content:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",disabled:c.isOpen,onClick:function(){return n("power")},color:c.isOperating&&"green",children:c.isOperating?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.cellTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.isOpen?"unlock":"lock",onClick:function(){return n("door")},content:c.isOpen?"Open":"Closed"}),(0,o.createComponentVNode)(2,a.Button,{icon:c.autoEject?"sign-out-alt":"sign-in-alt",onClick:function(){return n("autoeject")},content:c.autoEject?"Auto":"Manual"})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",disabled:!c.isBeakerLoaded,onClick:function(){return n("ejectbeaker")},content:"Eject"}),children:(0,o.createComponentVNode)(2,i.BeakerContents,{beakerLoaded:c.isBeakerLoaded,beakerContents:c.beakerContents})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BeakerContents=void 0;var o=n(1),r=n(2);t.BeakerContents=function(e){var t=e.beakerLoaded,n=e.beakerContents;return(0,o.createComponentVNode)(2,r.Box,{children:[!t&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"No beaker loaded."})||0===n.length&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"Beaker is empty."}),n.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{color:"label",children:[e.volume," units of ",e.name]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.PersonalCrafting=void 0;var o=n(1),r=n(28),a=n(3),i=n(2),c=function(e){var t=e.craftables,n=void 0===t?[]:t,r=(0,a.useBackend)(e),c=r.act,l=r.data,u=l.craftability,s=void 0===u?{}:u,d=l.display_compact,p=l.display_craftable_only;return n.map((function(e){return p&&!s[e.ref]?null:d?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,className:"candystripe",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!s[e.ref],tooltip:e.tool_text&&"Tools needed: "+e.tool_text,tooltipPosition:"left",onClick:function(){return c("make",{recipe:e.ref})}}),children:e.req_text},e.name):(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!s[e.ref],onClick:function(){return c("make",{recipe:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.req_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Required",children:e.req_text}),!!e.catalyst_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Catalyst",children:e.catalyst_text}),!!e.tool_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Tools",children:e.tool_text})]})},e.name)}))};t.PersonalCrafting=function(e){var t=e.state,n=(0,a.useBackend)(e),l=n.act,u=n.data,s=u.busy,d=u.display_craftable_only,p=u.display_compact,f=(0,r.map)((function(e,t){return{category:t,subcategory:e,hasSubcats:"has_subcats"in e,firstSubcatName:Object.keys(e).find((function(e){return"has_subcats"!==e}))}}))(u.crafting_recipes||{}),m=!!s&&(0,o.createComponentVNode)(2,i.Dimmer,{fontSize:"40px",textAlign:"center",children:(0,o.createComponentVNode)(2,i.Box,{mt:30,children:[(0,o.createComponentVNode)(2,i.Icon,{name:"cog",spin:1})," Crafting..."]})});return(0,o.createFragment)([m,(0,o.createComponentVNode)(2,i.Section,{title:"Personal Crafting",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:p?"check-square-o":"square-o",content:"Compact",selected:p,onClick:function(){return l("toggle_compact")}}),(0,o.createComponentVNode)(2,i.Button,{icon:d?"check-square-o":"square-o",content:"Craftable Only",selected:d,onClick:function(){return l("toggle_recipes")}})],4),children:(0,o.createComponentVNode)(2,i.Tabs,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.category,onClick:function(){return l("set_category",{category:e.category,subcategory:e.firstSubcatName})},children:function(){return!e.hasSubcats&&(0,o.createComponentVNode)(2,c,{craftables:e.subcategory,state:t})||(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,n){if("has_subcats"!==n)return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:n,onClick:function(){return l("set_category",{subcategory:n})},children:function(){return(0,o.createComponentVNode)(2,c,{craftables:e,state:t})}})}))(e.subcategory)})}},e.category)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.DecalPainter=void 0;var o=n(1),r=n(3),a=n(2);t.DecalPainter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.decal_list||[],l=i.color_list||[],u=i.dir_list||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Decal Type",children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name,selected:e.decal===i.decal_style,onClick:function(){return n("select decal",{decals:e.decal})}},e.decal)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Color",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:"red"===e.colors?"Red":"white"===e.colors?"White":"Yellow",selected:e.colors===i.decal_color,onClick:function(){return n("select color",{colors:e.colors})}},e.colors)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Direction",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:1===e.dirs?"North":2===e.dirs?"South":4===e.dirs?"East":"West",selected:e.dirs===i.decal_direction,onClick:function(){return n("selected direction",{dirs:e.dirs})}},e.dirs)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.DisposalUnit=void 0;var o=n(1),r=n(3),a=n(2);t.DisposalUnit=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return l.full_pressure?(t="good",n="Ready"):l.panel_open?(t="bad",n="Power Disabled"):l.pressure_charging?(t="average",n="Pressurizing"):(t="bad",n="Off"),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:t,children:n}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.per,color:"good"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Handle",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.flush?"toggle-on":"toggle-off",disabled:l.isai||l.panel_open,content:l.flush?"Disengage":"Engage",onClick:function(){return c(l.flush?"handle-0":"handle-1")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Eject",children:(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",disabled:l.isai,content:"Eject Contents",onClick:function(){return c("eject")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",disabled:l.panel_open,selected:l.pressure_charging,onClick:function(){return c(l.pressure_charging?"pump-0":"pump-1")}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaVault=void 0;var o=n(1),r=n(3),a=n(2);t.DnaVault=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.completed,l=i.used,u=i.choiceA,s=i.choiceB,d=i.dna,p=i.dna_max,f=i.plants,m=i.plants_max,h=i.animals,C=i.animals_max;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"DNA Vault Database",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Human DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d/p,content:d+" / "+p+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plant DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:f/m,content:f+" / "+m+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Animal DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:h/h,content:h+" / "+C+" Samples"})})]})}),!(!c||l)&&(0,o.createComponentVNode)(2,a.Section,{title:"Personal Gene Therapy",children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",mb:1,children:"Applicable Gene Therapy Treatments"}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:u,textAlign:"center",onClick:function(){return n("gene",{choice:u})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:s,textAlign:"center",onClick:function(){return n("gene",{choice:s})}})})]})]})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.EightBallVote=void 0;var o=n(1),r=n(3),a=n(2),i=n(31);t.EightBallVote=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.question,u=c.shaking,s=c.answers,d=void 0===s?[]:s;return u?(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"16px",m:1,children:['"',l,'"']}),(0,o.createComponentVNode)(2,a.Grid,{children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:(0,i.toTitleCase)(e.answer),selected:e.selected,fontSize:"16px",lineHeight:"24px",textAlign:"center",mb:1,onClick:function(){return n("vote",{answer:e.answer})}}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"30px",children:e.amount})]},e.answer)}))})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No question is currently being asked."})}},function(e,t,n){"use strict";t.__esModule=!0,t.EmergencyShuttleConsole=void 0;var o=n(1),r=n(2),a=n(3);t.EmergencyShuttleConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,i=t.data,c=i.timer_str,l=i.enabled,u=i.emagged,s=i.engines_started,d=i.authorizations_remaining,p=i.authorizations,f=void 0===p?[]:p;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"40px",textAlign:"center",fontFamily:"monospace",children:c}),(0,o.createComponentVNode)(2,r.Box,{textAlign:"center",fontSize:"16px",mb:1,children:[(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,children:"ENGINES:"}),(0,o.createComponentVNode)(2,r.Box,{inline:!0,color:s?"good":"average",ml:1,children:s?"Online":"Idle"})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Early Launch Authorization",level:2,buttons:(0,o.createComponentVNode)(2,r.Button,{icon:"times",content:"Repeal All",color:"bad",disabled:!l,onClick:function(){return n("abort")}}),children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"exclamation-triangle",color:"good",content:"AUTHORIZE",disabled:!l,onClick:function(){return n("authorize")}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"minus",content:"REPEAL",disabled:!l,onClick:function(){return n("repeal")}})})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Authorizations",level:3,minHeight:"150px",buttons:(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,color:u?"bad":"good",children:u?"ERROR":"Remaining: "+d}),children:[f.length>0?f.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)})):(0,o.createComponentVNode)(2,r.Box,{bold:!0,textAlign:"center",fontSize:"16px",color:"average",children:"No Active Authorizations"}),f.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)}))]})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.EngravedMessage=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.EngravedMessage=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.admin_mode,u=c.creator_key,s=c.creator_name,d=c.has_liked,p=c.has_disliked,f=c.hidden_message,m=c.is_creator,h=c.num_likes,C=c.num_dislikes,g=c.realdate;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",mb:2,children:(0,r.decodeHtmlEntities)(f)}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",content:" "+h,disabled:m,selected:d,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("like")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"circle",disabled:m,selected:!p&&!d,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("neutral")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",content:" "+C,disabled:m,selected:p,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("dislike")}})})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Created On",children:g})})}),(0,o.createComponentVNode)(2,i.Section),!!l&&(0,o.createComponentVNode)(2,i.Section,{title:"Admin Panel",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Delete",color:"bad",onClick:function(){return n("delete")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Ckey",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Character Name",children:s})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Gps=void 0;var o=n(1),r=n(28),a=n(70),i=n(20),c=n(156),l=n(3),u=n(2),s=function(e){return(0,r.map)(parseFloat)(e.split(", "))};t.Gps=function(e){var t=(0,l.useBackend)(e),n=t.act,d=t.data,p=d.currentArea,f=d.currentCoords,m=d.globalmode,h=d.power,C=d.tag,g=d.updating,b=(0,a.flow)([(0,r.map)((function(e,t){var n=e.dist&&Math.round((0,c.vecLength)((0,c.vecSubtract)(s(f),s(e.coords))));return Object.assign({},e,{dist:n,index:t})})),(0,r.sortBy)((function(e){return e.dist===undefined}),(function(e){return e.entrytag}))])(d.signals||[]);return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Control",buttons:(0,o.createComponentVNode)(2,u.Button,{icon:"power-off",content:h?"On":"Off",selected:h,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,u.LabeledList,{children:[(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Tag",children:(0,o.createComponentVNode)(2,u.Button,{icon:"pencil-alt",content:C,onClick:function(){return n("rename")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,u.Button,{icon:g?"unlock":"lock",content:g?"AUTO":"MANUAL",color:!g&&"bad",onClick:function(){return n("updating")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Range",children:(0,o.createComponentVNode)(2,u.Button,{icon:"sync",content:m?"MAXIMUM":"LOCAL",selected:!m,onClick:function(){return n("globalmode")}})})]})}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Current Location",children:(0,o.createComponentVNode)(2,u.Box,{fontSize:"18px",children:[p," (",f,")"]})}),(0,o.createComponentVNode)(2,u.Section,{title:"Detected Signals",children:(0,o.createComponentVNode)(2,u.Table,{children:[(0,o.createComponentVNode)(2,u.Table.Row,{bold:!0,children:[(0,o.createComponentVNode)(2,u.Table.Cell,{content:"Name"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Direction"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Coordinates"})]}),b.map((function(e){return(0,o.createComponentVNode)(2,u.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,u.Table.Cell,{bold:!0,color:"label",children:e.entrytag}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,opacity:e.dist!==undefined&&(0,i.clamp)(1.2/Math.log(Math.E+e.dist/20),.4,1),children:[e.degrees!==undefined&&(0,o.createComponentVNode)(2,u.Icon,{mr:1,size:1.2,name:"arrow-up",rotation:e.degrees}),e.dist!==undefined&&e.dist+"m"]}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,children:e.coords})]},e.entrytag+e.coords+e.index)}))]})})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GravityGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.GravityGenerator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.breaker,l=i.charge_count,u=i.charging_state,s=i.on,d=i.operational;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:!d&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No data available"})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Breaker",children:(0,o.createComponentVNode)(2,a.Button,{icon:c?"power-off":"times",content:c?"On":"Off",selected:c,disabled:!d,onClick:function(){return n("gentoggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Gravity Charge",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/100,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",children:[0===u&&(s&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Fully Charged"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Not Charging"})),1===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Charging"}),2===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Discharging"})]})]})}),d&&0!==u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"WARNING - Radiation detected"}),d&&0===u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No radiation detected"})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagTeleporterConsole=void 0;var o=n(1),r=n(3),a=n(2);t.GulagTeleporterConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.teleporter,l=i.teleporter_lock,u=i.teleporter_state_open,s=i.teleporter_location,d=i.beacon,p=i.beacon_location,f=i.id,m=i.id_name,h=i.can_teleport,C=i.goal,g=void 0===C?0:C,b=i.prisoner,v=void 0===b?{}:b;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Teleporter Console",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:u?"Open":"Closed",disabled:l,selected:u,onClick:function(){return n("toggle_open")}}),(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"unlock",content:l?"Locked":"Unlocked",selected:l,disabled:u,onClick:function(){return n("teleporter_lock")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleporter Unit",color:c?"good":"bad",buttons:!c&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_teleporter")}}),children:c?s:"Not Connected"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Receiver Beacon",color:d?"good":"bad",buttons:!d&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_beacon")}}),children:d?p:"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Prisoner Details",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prisoner ID",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:f?m:"No ID",onClick:function(){return n("handle_id")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Point Goal",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:g,width:"48px",minValue:1,maxValue:1e3,onChange:function(e,t){return n("set_goal",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",children:v.name?v.name:"No Occupant"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Criminal Status",children:v.crimstat?v.crimstat:"No Status"})]})}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Process Prisoner",disabled:!h,textAlign:"center",color:"bad",onClick:function(){return n("teleport")}})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagItemReclaimer=void 0;var o=n(1),r=n(3),a=n(2);t.GulagItemReclaimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.mobs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Stored Items",children:(0,o.createComponentVNode)(2,a.Table,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{content:"Retrieve Items",disabled:!i.can_reclaim,onClick:function(){return n("release_items",{mobref:e.mob})}})})]},e.mob)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holodeck=void 0;var o=n(1),r=n(3),a=n(2);t.Holodeck=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_toggle_safety,l=i.default_programs,u=void 0===l?[]:l,s=i.emag_programs,d=void 0===s?[]:s,p=i.emagged,f=i.program;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Default Programs",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"unlock":"lock",content:"Safeties",color:"bad",disabled:!c,selected:!p,onClick:function(){return n("safety")}}),children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),textAlign:"center",selected:e.type===f,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))}),!!p&&(0,o.createComponentVNode)(2,a.Section,{title:"Dangerous Programs",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),color:"bad",textAlign:"center",selected:e.type===f,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ImplantChair=void 0;var o=n(1),r=n(3),a=n(2);t.ImplantChair=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:i.occupant.name?i.occupant.name:"No Occupant"}),!!i.occupied&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:0===i.occupant.stat?"good":1===i.occupant.stat?"average":"bad",children:0===i.occupant.stat?"Conscious":1===i.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.open?"unlock":"lock",color:i.open?"default":"red",content:i.open?"Open":"Closed",onClick:function(){return n("door")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implant Occupant",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"code-branch",content:i.ready?i.special_name||"Implant":"Recharging",onClick:function(){return n("implant")}}),0===i.ready&&(0,o.createComponentVNode)(2,a.Icon,{name:"cog",color:"orange",spin:!0})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implants Remaining",children:[i.ready_implants,1===i.replenishing&&(0,o.createComponentVNode)(2,a.Icon,{name:"sync",color:"red",spin:!0})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Intellicard=void 0;var o=n(1),r=n(3),a=n(2);t.Intellicard=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=u||s,l=i.name,u=i.isDead,s=i.isBraindead,d=i.health,p=i.wireless,f=i.radio,m=i.wiping,h=i.laws,C=void 0===h?[]:h;return(0,o.createComponentVNode)(2,a.Section,{title:l||"Empty Card",buttons:!!l&&(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:m?"Stop Wiping":"Wipe",disabled:u,onClick:function(){return n("wipe")}}),children:!!l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:c?"bad":"good",children:c?"Offline":"Operation"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Software Integrity",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"Wireless Activity",selected:p,onClick:function(){return n("wireless")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"microphone",content:"Subspace Radio",selected:f,onClick:function(){return n("radio")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laws",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.BlockQuote,{children:e},e)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.KeycardAuth=void 0;var o=n(1),r=n(3),a=n(2);t.KeycardAuth=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{children:1===i.waiting&&(0,o.createVNode)(1,"span",null,"Waiting for another device to confirm your request...",16)}),(0,o.createComponentVNode)(2,a.Box,{children:0===i.waiting&&(0,o.createFragment)([!!i.auth_required&&(0,o.createComponentVNode)(2,a.Button,{icon:"check-square",color:"red",textAlign:"center",lineHeight:"60px",fluid:!0,onClick:function(){return n("auth_swipe")},content:"Authorize"}),0===i.auth_required&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",fluid:!0,onClick:function(){return n("red_alert")},content:"Red Alert"}),(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",fluid:!0,onClick:function(){return n("emergency_maint")},content:"Emergency Maintenance Access"}),(0,o.createComponentVNode)(2,a.Button,{icon:"meteor",fluid:!0,onClick:function(){return n("bsa_unlock")},content:"Bluespace Artillery Unlock"})],4)],0)})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaborClaimConsole=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.LaborClaimConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.can_go_home,u=c.id_points,s=c.ores,d=c.status_info,p=c.unclaimed_points;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:d}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle controls",children:(0,o.createComponentVNode)(2,i.Button,{content:"Move shuttle",disabled:!l,onClick:function(){return n("move_shuttle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Points",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Unclaimed points",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Claim points",disabled:!p,onClick:function(){return n("claim_points")}}),children:p})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Material values",children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Material"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Value"})]}),s.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.ore)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.value})})]},e.ore)}))]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.LanguageMenu=void 0;var o=n(1),r=n(3),a=n(2);t.LanguageMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.admin_mode,l=i.is_living,u=i.omnitongue,s=i.languages,d=void 0===s?[]:s,p=i.unknown_languages,f=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Known Languages",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:d.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createFragment)([!!l&&(0,o.createComponentVNode)(2,a.Button,{content:e.is_default?"Default Language":"Select as Default",disabled:!e.can_speak,selected:e.is_default,onClick:function(){return n("select_default",{language_name:e.name})}}),!!c&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Remove",onClick:function(){return n("remove_language",{language_name:e.name})}})],4)],0),children:[e.desc," ","Key: ,",e.key," ",e.can_understand?"Can understand.":"Cannot understand."," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})}),!!c&&(0,o.createComponentVNode)(2,a.Section,{title:"Unknown Languages",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Omnitongue "+(u?"Enabled":"Disabled"),selected:u,onClick:function(){return n("toggle_omnitongue")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),children:[e.desc," ","Key: ,",e.key," ",!!e.shadow&&"(gained from mob)"," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadConsole=t.LaunchpadRemote=t.LaunchpadControl=t.LaunchpadButtonPad=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createComponentVNode)(2,a.Grid,{width:"1px",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",mb:1,onClick:function(){return t("move_pos",{x:-1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",mb:1,onClick:function(){return t("move_pos",{y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"R",mb:1,onClick:function(){return t("set_pos",{x:0,y:0})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",mb:1,onClick:function(){return t("move_pos",{y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",mb:1,onClick:function(){return t("move_pos",{x:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:-1})}})]})]})};t.LaunchpadButtonPad=i;var c=function(e){var t=e.topLevel,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.x,s=l.y,d=l.pad_name,p=l.range;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Input,{value:d,width:"170px",onChange:function(e,t){return c("rename",{name:t})}}),level:t?1:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Remove",color:"bad",onClick:function(){return c("remove")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Controls",level:2,children:(0,o.createComponentVNode)(2,i,{state:e.state})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Target",level:2,children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"26px",children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"X:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:u,minValue:-p,maxValue:p,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",stepPixelSize:10,onChange:function(e,t){return c("set_pos",{x:t})}})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"Y:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:s,minValue:-p,maxValue:p,stepPixelSize:10,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",onChange:function(e,t){return c("set_pos",{y:t})}})]})]})})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"upload",content:"Launch",textAlign:"center",onClick:function(){return c("launch")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Pull",textAlign:"center",onClick:function(){return c("pull")}})})]})]})};t.LaunchpadControl=c;t.LaunchpadRemote=function(e){var t=(0,r.useBackend)(e).data,n=t.has_pad,i=t.pad_closed;return n?i?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Launchpad Closed"}):(0,o.createComponentVNode)(2,c,{topLevel:!0,state:e.state}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Launchpad Connected"})};t.LaunchpadConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.launchpads,u=void 0===l?[]:l,s=i.selected_id;return u.length<=0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Pads Connected"}):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.Box,{style:{"border-right":"2px solid rgba(255, 255, 255, 0.1)"},minHeight:"190px",mr:1,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name,selected:s===e.id,color:"transparent",onClick:function(){return n("select_pad",{id:e.id})}},e.name)}))})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:s?(0,o.createComponentVNode)(2,c,{state:e.state}):(0,o.createComponentVNode)(2,a.Box,{children:"Please select a pad"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MechBayPowerConsole=void 0;var o=n(1),r=n(3),a=n(2);t.MechBayPowerConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.recharge_port,c=i&&i.mech,l=c&&c.cell;return(0,o.createComponentVNode)(2,a.Section,{title:"Mech status",textAlign:"center",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Sync",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Integrity",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.health/c.maxhealth,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cell is installed."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.charge/l.maxcharge,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.charge})," / "+l.maxcharge]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Mule=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Mule=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u=c.siliconUser,s=c.on,d=c.cell,p=c.cellPercent,f=c.load,m=c.mode,h=c.modeStatus,C=c.haspai,g=c.autoReturn,b=c.autoPickup,v=c.reportDelivery,N=c.destination,V=c.home,y=c.id,_=c.destinations,x=void 0===_?[]:_;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:u,locked:l}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",minHeight:"110px",buttons:!l&&(0,o.createComponentVNode)(2,a.Button,{icon:s?"power-off":"times",content:s?"On":"Off",selected:s,onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:d?p/100:0,color:d?"good":"bad"}),(0,o.createComponentVNode)(2,a.Grid,{mt:1,children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",color:h,children:m})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Load",color:f?"good":"average",children:f||"None"})})})]})]}),!l&&(0,o.createComponentVNode)(2,a.Section,{title:"Controls",buttons:(0,o.createFragment)([!!f&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Unload",onClick:function(){return n("unload")}}),!!C&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject PAI",onClick:function(){return n("ejectpai")}})],0),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID",children:(0,o.createComponentVNode)(2,a.Input,{value:y,onChange:function(e,t){return n("setid",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Destination",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:N||"None",options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"stop",content:"Stop",onClick:function(){return n("stop")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"play",content:"Go",onClick:function(){return n("go")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Home",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:V,options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",content:"Go Home",onClick:function(){return n("home")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:g,content:"Auto-Return",onClick:function(){return n("autored")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:b,content:"Auto-Pickup",onClick:function(){return n("autopick")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:v,content:"Report Delivery",onClick:function(){return n("report")}})]})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NotificationPreferences=void 0;var o=n(1),r=n(3),a=n(2);t.NotificationPreferences=function(e){var t=(0,r.useBackend)(e),n=t.act,i=(t.data.ignore||[]).sort((function(e,t){var n=e.desc.toLowerCase(),o=t.desc.toLowerCase();return no?1:0}));return(0,o.createComponentVNode)(2,a.Section,{title:"Ghost Role Notifications",children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:e.enabled?"times":"check",content:e.desc,color:e.enabled?"bad":"good",onClick:function(){return n("toggle_ignore",{key:e.key})}},e.key)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtnetRelay=void 0;var o=n(1),r=n(3),a=n(2);t.NtnetRelay=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.enabled,l=i.dos_capacity,u=i.dos_overload,s=i.dos_crashed;return(0,o.createComponentVNode)(2,a.Section,{title:"Network Buffer",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",selected:c,content:c?"ENABLED":"DISABLED",onClick:function(){return n("toggle")}}),children:s?(0,o.createComponentVNode)(2,a.Box,{fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",children:"NETWORK BUFFER OVERFLOW"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",children:"OVERLOAD RECOVERY MODE"}),(0,o.createComponentVNode)(2,a.Box,{children:"This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",color:"bad",children:"ADMINISTRATOR OVERRIDE"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",color:"bad",children:"CAUTION - DATA LOSS MAY OCCUR"}),(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"PURGE BUFFER",mt:1,color:"bad",onClick:function(){return n("restart")}})]}):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,minValue:0,maxValue:l,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})," GQ"," / ",l," GQ"]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosArcade=void 0;var o=n(1),r=n(3),a=n(2);t.NtosArcade=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Outbomb Cuban Pete Ultra",textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:2,children:[(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerHitpoints,minValue:0,maxValue:30,ranges:{olive:[31,Infinity],good:[20,31],average:[10,20],bad:[-Infinity,10]},children:[i.PlayerHitpoints,"HP"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Magic",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerMP,minValue:0,maxValue:10,ranges:{purple:[11,Infinity],violet:[3,11],bad:[-Infinity,3]},children:[i.PlayerMP,"MP"]})})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Section,{backgroundColor:1===i.PauseState?"#1b3622":"#471915",children:i.Status})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.Hitpoints/45,minValue:0,maxValue:45,ranges:{good:[30,Infinity],average:[5,30],bad:[-Infinity,5]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.Hitpoints}),"HP"]}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Section,{inline:!0,width:26,textAlign:"center",children:(0,o.createVNode)(1,"img",null,null,1,{src:i.BossID})})]})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Button,{icon:"fist-raised",tooltip:"Go in for the kill!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Attack")},content:"Attack!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"band-aid",tooltip:"Heal yourself!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Heal")},content:"Heal!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"magic",tooltip:"Recharge your magic!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Recharge_Power")},content:"Recharge!"})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"sync-alt",tooltip:"One more game couldn't hurt.",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Start_Game")},content:"Begin Game"}),(0,o.createComponentVNode)(2,a.Button,{icon:"ticket-alt",tooltip:"Claim at your local Arcade Computer for Prizes!",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Dispense_Tickets")},content:"Claim Tickets"})]}),(0,o.createComponentVNode)(2,a.Box,{color:i.TicketCount>=1?"good":"normal",children:["Earned Tickets: ",i.TicketCount]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosConfiguration=void 0;var o=n(1),r=n(3),a=n(2);t.NtosConfiguration=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.power_usage,l=i.battery_exists,u=i.battery,s=void 0===u?{}:u,d=i.disk_size,p=i.disk_used,f=i.hardware,m=void 0===f?[]:f;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Supply",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Draw: ",c,"W"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Battery Status",color:!l&&"average",children:l?(0,o.createComponentVNode)(2,a.ProgressBar,{value:s.charge,minValue:0,maxValue:s.max,ranges:{good:[s.max/2,Infinity],average:[s.max/4,s.max/2],bad:[-Infinity,s.max/4]},children:[s.charge," / ",s.max]}):"Not Available"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"File System",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p,minValue:0,maxValue:d,color:"good",children:[p," GQ / ",d," GQ"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Hardware Components",children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createFragment)([!e.critical&&(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Enabled",checked:e.enabled,mr:1,onClick:function(){return n("PC_toggle_component",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Usage: ",e.powerusage,"W"]})],0),children:e.desc},e.name)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosMain=void 0;var o=n(1),r=n(3),a=n(2),i={compconfig:"cog",ntndownloader:"download",filemanager:"folder",smmonitor:"radiation",alarmmonitor:"bell",cardmod:"id-card",arcade:"gamepad",ntnrc_client:"comment-alt",nttransfer:"exchange-alt",powermonitor:"plug"};t.NtosMain=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.programs,u=void 0===l?[]:l,s=c.has_light,d=c.light_on,p=c.comp_light_color;return(0,o.createFragment)([!!s&&(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Button,{width:"144px",icon:"lightbulb",selected:d,onClick:function(){return n("PC_toggle_light")},children:["Flashlight: ",d?"ON":"OFF"]}),(0,o.createComponentVNode)(2,a.Button,{ml:1,onClick:function(){return n("PC_light_color")},children:["Color:",(0,o.createComponentVNode)(2,a.ColorBox,{ml:1,color:p})]})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",children:(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,lineHeight:"24px",color:"transparent",icon:i[e.name]||"window-maximize-o",content:e.desc,onClick:function(){return n("PC_runprogram",{name:e.name})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,width:3,children:!!e.running&&(0,o.createComponentVNode)(2,a.Button,{lineHeight:"24px",color:"transparent",icon:"times",tooltip:"Close program",tooltipPosition:"left",onClick:function(){return n("PC_killprogram",{name:e.name})}})})]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetChat=void 0;var o=n(1),r=n(3),a=n(2);(0,n(51).createLogger)("ntos chat");t.NtosNetChat=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_admin,l=i.adminmode,u=i.authed,s=i.username,d=i.active_channel,p=i.is_operator,f=i.all_channels,m=void 0===f?[]:f,h=i.clients,C=void 0===h?[]:h,g=i.messages,b=void 0===g?[]:g,v=null!==d,N=u||l;return(0,o.createComponentVNode)(2,a.Section,{height:"600px",children:(0,o.createComponentVNode)(2,a.Table,{height:"580px",children:(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"200px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"537px",overflowY:"scroll",children:[(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"New Channel...",onCommit:function(e,t){return n("PRG_newchannel",{new_channel_name:t})}}),m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.chan,selected:e.id===d,color:"transparent",onClick:function(){return n("PRG_joinchannel",{id:e.id})}},e.chan)}))]}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,mt:1,content:s+"...",currentValue:s,onCommit:function(e,t){return n("PRG_changename",{new_name:t})}}),!!c&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ADMIN MODE: "+(l?"ON":"OFF"),color:l?"bad":"good",onClick:function(){return n("PRG_toggleadmin")}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:[(0,o.createComponentVNode)(2,a.Box,{height:"560px",overflowY:"scroll",children:v&&(N?b.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.msg},e.msg)})):(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Icon,{name:"exclamation-triangle",mt:4,fontSize:"40px"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,fontSize:"18px",children:"THIS CHANNEL IS PASSWORD PROTECTED"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"INPUT PASSWORD TO ACCESS"})]}))}),(0,o.createComponentVNode)(2,a.Input,{fluid:!0,selfClear:!0,mt:1,onEnter:function(e,t){return n("PRG_speak",{message:t})}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"150px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"477px",overflowY:"scroll",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.name},e.name)}))}),v&&N&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Save log...",defaultValue:"new_log",onCommit:function(e,t){return n("PRG_savelog",{log_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Leave Channel",onClick:function(){return n("PRG_leavechannel")}})],4),!!p&&u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Delete Channel",onClick:function(){return n("PRG_deletechannel")}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Rename Channel...",onCommit:function(e,t){return n("PRG_renamechannel",{new_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Set Password...",onCommit:function(e,t){return n("PRG_setpassword",{new_password:t})}})],4)]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDownloader=void 0;var o=n(1),r=n(3),a=n(2);t.NtosNetDownloader=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.disk_size,s=l.disk_used,d=l.downloadable_programs,p=void 0===d?[]:d,f=l.error,m=l.hacked_programs,h=void 0===m?[]:m,C=l.hackedavailable;return(0,o.createFragment)([!!f&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:f}),(0,o.createComponentVNode)(2,a.Button,{content:"Reset",onClick:function(){return c("PRG_reseterror")}})]}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disk usage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s,minValue:0,maxValue:u,children:s+" GQ / "+u+" GQ"})})})}),(0,o.createComponentVNode)(2,a.Section,{children:p.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))}),!!C&&(0,o.createComponentVNode)(2,a.Section,{title:"UNKNOWN Software Repository",children:[(0,o.createComponentVNode)(2,a.NoticeBox,{mb:1,children:"Please note that Nanotrasen does not recommend download of software from non-official servers."}),h.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))]})],0)};var i=function(e){var t=e.program,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.disk_size,u=c.disk_used,s=c.downloadcompletion,d=c.downloading,p=c.downloadname,f=c.downloadsize,m=l-u;return(0,o.createComponentVNode)(2,a.Box,{mb:3,children:[(0,o.createComponentVNode)(2,a.Flex,{align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{bold:!0,grow:1,children:t.filedesc}),(0,o.createComponentVNode)(2,a.Flex.Item,{color:"label",nowrap:!0,children:[t.size," GQ"]}),(0,o.createComponentVNode)(2,a.Flex.Item,{ml:2,width:"94px",textAlign:"center",children:t.filename===p&&(0,o.createComponentVNode)(2,a.ProgressBar,{color:"green",minValue:0,maxValue:f,value:s})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Download",disabled:d||t.size>m,onClick:function(){return i("PRG_downloadfile",{filename:t.filename})}})})]}),"Compatible"!==t.compatibility&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Incompatible!"]}),t.size>m&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Not enough disk space!"]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,color:"label",fontSize:"12px",children:t.fileinfo})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosSupermatterMonitor=void 0;var o=n(1),r=n(28),a=n(70),i=n(20),c=n(3),l=n(2),u=n(37),s=function(e){return Math.log2(16+Math.max(0,e))-4};t.NtosSupermatterMonitor=function(e){var t=e.state,n=(0,c.useBackend)(e),p=n.act,f=n.data,m=f.active,h=f.SM_integrity,C=f.SM_power,g=f.SM_ambienttemp,b=f.SM_ambientpressure;if(!m)return(0,o.createComponentVNode)(2,d,{state:t});var v=(0,a.flow)([function(e){return e.filter((function(e){return e.amount>=.01}))},(0,r.sortBy)((function(e){return-e.amount}))])(f.gases||[]),N=Math.max.apply(Math,[1].concat(v.map((function(e){return e.amount}))));return(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"270px",children:(0,o.createComponentVNode)(2,l.Section,{title:"Metrics",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:h/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Relative EER",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:C,minValue:0,maxValue:5e3,ranges:{good:[-Infinity,5e3],average:[5e3,7e3],bad:[7e3,Infinity]},children:(0,i.toFixed)(C)+" MeV/cm3"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s(g),minValue:0,maxValue:s(1e4),ranges:{teal:[-Infinity,s(80)],good:[s(80),s(373)],average:[s(373),s(1e3)],bad:[s(1e3),Infinity]},children:(0,i.toFixed)(g)+" K"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s(b),minValue:0,maxValue:s(5e4),ranges:{good:[s(1),s(300)],average:[-Infinity,s(1e3)],bad:[s(1e3),+Infinity]},children:(0,i.toFixed)(b)+" kPa"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{title:"Gases",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"arrow-left",content:"Back",onClick:function(){return p("PRG_clear")}}),children:(0,o.createComponentVNode)(2,l.Box.Forced,{height:24*v.length+"px",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:v.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,u.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,u.getGasColor)(e.name),value:e.amount,minValue:0,maxValue:N,children:(0,i.toFixed)(e.amount,2)+"%"})},e.name)}))})})})})]})};var d=function(e){var t=(0,c.useBackend)(e),n=t.act,r=t.data.supermatters,a=void 0===r?[]:r;return(0,o.createComponentVNode)(2,l.Section,{title:"Detected Supermatters",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"sync",content:"Refresh",onClick:function(){return n("PRG_refresh")}}),children:(0,o.createComponentVNode)(2,l.Table,{children:a.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.uid+". "+e.area_name}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,color:"label",children:"Integrity:"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,width:"120px",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:e.integrity/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,l.Button,{content:"Details",onClick:function(){return n("PRG_set",{target:e.uid})}})})]},e.uid)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosWrapper=void 0;var o=n(1),r=n(3),a=n(2),i=n(116);t.NtosWrapper=function(e){var t=e.children,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.PC_batteryicon,s=l.PC_showbatteryicon,d=l.PC_batterypercent,p=l.PC_ntneticon,f=l.PC_apclinkicon,m=l.PC_stationtime,h=l.PC_programheaders,C=void 0===h?[]:h,g=l.PC_showexitprogram;return(0,o.createVNode)(1,"div","NtosWrapper",[(0,o.createVNode)(1,"div","NtosWrapper__header NtosHeader",[(0,o.createVNode)(1,"div","NtosHeader__left",[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:2,children:m}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,italic:!0,mr:2,opacity:.33,children:"NtOS"})],4),(0,o.createVNode)(1,"div","NtosHeader__right",[C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:e.icon})},e.icon)})),(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:p&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:p})}),!!s&&u&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:[u&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:u}),d&&d]}),f&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:f})}),!!g&&(0,o.createComponentVNode)(2,a.Button,{width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-minimize-o",tooltip:"Minimize",tooltipPosition:"bottom",onClick:function(){return c("PC_minimize")}}),!!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-close-o",tooltip:"Close",tooltipPosition:"bottom-left",onClick:function(){return c("PC_exit")}}),!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"power-off",tooltip:"Power off",tooltipPosition:"bottom-left",onClick:function(){return c("PC_shutdown")}})],0)],4,{onMouseDown:function(){(0,i.refocusLayout)()}}),(0,o.createVNode)(1,"div","NtosWrapper__content",t,0)],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NuclearBomb=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e).act;return(0,o.createComponentVNode)(2,i.Box,{width:"185px",children:(0,o.createComponentVNode)(2,i.Grid,{width:"1px",children:[["1","4","7","C"],["2","5","8","0"],["3","6","9","E"]].map((function(e){return(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,mb:1,content:e,textAlign:"center",fontSize:"40px",lineHeight:"50px",width:"55px",className:(0,r.classes)(["NuclearBomb__Button","NuclearBomb__Button--keypad","NuclearBomb__Button--"+e]),onClick:function(){return t("keypad",{digit:e})}},e)}))},e[0])}))})})};t.NuclearBomb=function(e){var t=e.state,n=(0,a.useBackend)(e),r=n.act,l=n.data,u=(l.anchored,l.disk_present,l.status1),s=l.status2;return(0,o.createComponentVNode)(2,i.Box,{m:1,children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,className:"NuclearBomb__displayBox",children:u}),(0,o.createComponentVNode)(2,i.Flex,{mb:1.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,i.Box,{className:"NuclearBomb__displayBox",children:s})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",fontSize:"24px",lineHeight:"23px",textAlign:"center",width:"43px",ml:1,mr:"3px",mt:"3px",className:"NuclearBomb__Button NuclearBomb__Button--keypad",onClick:function(){return r("eject_disk")}})})]}),(0,o.createComponentVNode)(2,i.Flex,{ml:"3px",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,c,{state:t})}),(0,o.createComponentVNode)(2,i.Flex.Item,{ml:1,width:"129px",children:(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ARM",textAlign:"center",fontSize:"28px",lineHeight:"32px",mb:1,className:"NuclearBomb__Button NuclearBomb__Button--C",onClick:function(){return r("arm")}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ANCHOR",textAlign:"center",fontSize:"28px",lineHeight:"32px",className:"NuclearBomb__Button NuclearBomb__Button--E",onClick:function(){return r("anchor")}}),(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",color:"#9C9987",fontSize:"80px",children:(0,o.createComponentVNode)(2,i.Icon,{name:"radiation"})}),(0,o.createComponentVNode)(2,i.Box,{height:"80px",className:"NuclearBomb__NTIcon"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OperatingComputer=void 0;var o=n(1),r=n(3),a=n(2);t.OperatingComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.table,l=i.surgeries,u=void 0===l?[]:l,s=i.procedures,d=void 0===s?[]:s,p=i.patient,f=void 0===p?{}:p;return(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Patient State",children:[!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Table Detected"}),(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Patient State",level:2,children:f?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:f.statstate,children:f.stat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Type",children:f.blood_type}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:f.health,minValue:f.minHealth,maxValue:f.maxHealth,color:f.health>=0?"good":"average",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:f.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Respiratory",type:"oxyLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:f[e.type]/f.maxHealth,color:"bad",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:f[e.type]})})},e.type)}))]}):"No Patient Detected"}),(0,o.createComponentVNode)(2,a.Section,{title:"Initiated Procedures",level:2,children:d.length?d.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Next Step",children:[e.next_step,e.chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.chems_needed],0)]}),!!i.alternative_step&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Alternative Step",children:[e.alternative_step,e.alt_chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.alt_chems_needed],0)]})]})},e.name)})):"No Active Procedures"})]})]},"state"),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Surgery Procedures",children:(0,o.createComponentVNode)(2,a.Section,{title:"Advanced Surgery Procedures",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Sync Research Database",onClick:function(){return n("sync")}}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,children:e.desc},e.name)}))]})},"procedures")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreBox=void 0;var o=n(1),r=n(31),a=n(19),i=n(2);t.OreBox=function(e){var t=e.state,n=t.config,c=t.data,l=n.ref,u=c.materials;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Ores",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Empty",onClick:function(){return(0,a.act)(l,"removeall")}}),children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Ore"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Amount"})]}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.name)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.amount})})]},e.type)}))]})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Box,{children:["All ores will be placed in here when you are wearing a mining stachel on your belt or in a pocket while dragging the ore box.",(0,o.createVNode)(1,"br"),"Gibtonite is not accepted."]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.OreRedemptionMachine=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.OreRedemptionMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,l=r.unclaimedPoints,u=r.materials,s=r.alloys,d=r.diskDesigns,p=r.hasDisk;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.BlockQuote,{mb:1,children:["This machine only accepts ore.",(0,o.createVNode)(1,"br"),"Gibtonite and Slag are not accepted."]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Unclaimed points:"}),l,(0,o.createComponentVNode)(2,i.Button,{ml:2,content:"Claim",disabled:0===l,onClick:function(){return n("Claim")}})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:1,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject design disk",onClick:function(){return n("diskEject")}})}),(0,o.createComponentVNode)(2,i.Table,{children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:["File ",e.index,": ",e.name]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{disabled:!e.canupload,content:"Upload",onClick:function(){return n("diskUpload",{design:e.index})}})})]},e.index)}))})],4)||(0,o.createComponentVNode)(2,i.Button,{icon:"save",content:"Insert design disk",onClick:function(){return n("diskInsert")}})}),(0,o.createComponentVNode)(2,i.Section,{title:"Materials",children:(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Release",{id:e.id,sheets:t})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Alloys",children:(0,o.createComponentVNode)(2,i.Table,{children:s.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Smelt",{id:e.id,sheets:t})}},e.id)}))})})],4)};var c=function(e){var t,n;function a(){var t;return(t=e.call(this)||this).state={amount:1},t}return n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,a.prototype.render=function(){var e=this,t=this.state.amount,n=this.props,a=n.material,c=n.onRelease,l=Math.floor(a.amount);return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(a.name).replace("Alloy","")}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:a.value&&a.value+" cr"})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:[l," sheets"]})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.NumberInput,{width:"32px",step:1,stepPixelSize:5,minValue:1,maxValue:50,value:t,onChange:function(t,n){return e.setState({amount:n})}}),(0,o.createComponentVNode)(2,i.Button,{disabled:l<1,content:"Release",onClick:function(){return c(t)}})]})]})},a}(o.Component)},function(e,t,n){"use strict";t.__esModule=!0,t.Pandemic=t.PandemicAntibodyDisplay=t.PandemicSymptomDisplay=t.PandemicDiseaseDisplay=t.PandemicBeakerDisplay=void 0;var o=n(1),r=n(28),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.has_beaker,l=r.beaker_empty,u=r.has_blood,s=r.blood,d=!c||l;return(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Empty and Eject",color:"bad",disabled:d,onClick:function(){return n("empty_eject_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Empty",disabled:d,onClick:function(){return n("empty_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!c,onClick:function(){return n("eject_beaker")}})],4),children:c?l?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Beaker is empty"}):u?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood DNA",children:s&&s.dna||"Unknown"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Type",children:s&&s.type||"Unknown"})]}):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"No blood detected"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No beaker loaded"})})};t.PandemicBeakerDisplay=c;var l=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.is_ready;return(r.viruses||[]).map((function(e){var t=e.symptoms||[];return(0,o.createComponentVNode)(2,i.Section,{title:e.can_rename?(0,o.createComponentVNode)(2,i.Input,{value:e.name,onChange:function(t,o){return n("rename_disease",{index:e.index,name:o})}}):e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"flask",content:"Create culture bottle",disabled:!c,onClick:function(){return n("create_culture_bottle",{index:e.index})}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.description}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Agent",children:e.agent}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Spread",children:e.spread}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Possible Cure",children:e.cure})]})})]}),!!e.is_adv&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Statistics",level:2,children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:e.resistance}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:e.stealth})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage speed",children:e.stage_speed}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmissibility",children:e.transmission})]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Symptoms",level:2,children:t.map((function(e){return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,u,{symptom:e})})},e.name)}))})],4)]},e.name)}))};t.PandemicDiseaseDisplay=l;var u=function(e){var t=e.symptom,n=t.name,a=t.desc,c=t.stealth,l=t.resistance,u=t.stage_speed,s=t.transmission,d=t.level,p=t.neutered,f=(0,r.map)((function(e,t){return{desc:e,label:t}}))(t.threshold_desc||{});return(0,o.createComponentVNode)(2,i.Section,{title:n,level:2,buttons:!!p&&(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",children:"Neutered"}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:2,children:a}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Level",children:d}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:c}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage Speed",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmission",children:s})]})})]}),f.length>0&&(0,o.createComponentVNode)(2,i.Section,{title:"Thresholds",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:e.desc},e.label)}))})})]})};t.PandemicSymptomDisplay=u;var s=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.resistances||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Antibodies",children:c.length>0?(0,o.createComponentVNode)(2,i.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eye-dropper",content:"Create vaccine bottle",disabled:!r.is_ready,onClick:function(){return n("create_vaccine_bottle",{index:e.id})}})},e.name)}))}):(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",mt:1,children:"No antibodies detected."})})};t.PandemicAntibodyDisplay=s;t.Pandemic=function(e){var t=(0,a.useBackend)(e).data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),!!t.has_blood&&(0,o.createFragment)([(0,o.createComponentVNode)(2,l,{state:e.state}),(0,o.createComponentVNode)(2,s,{state:e.state})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.PortableGenerator=function(e){var t,n=(0,r.useBackend)(e),i=n.act,c=n.data;return t=c.stack_percent>50?"good":c.stack_percent>15?"average":"bad",(0,o.createFragment)([!c.anchored&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Generator not anchored."}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power switch",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.active?"power-off":"times",onClick:function(){return i("toggle_power")},disabled:!c.ready_to_boot,children:c.active?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:c.sheet_name+" sheets",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t,children:c.sheets}),c.sheets>=1&&(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"eject",disabled:c.active,onClick:function(){return i("eject")},children:"Eject"})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current sheet level",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.stack_percent/100,ranges:{good:[.1,Infinity],average:[.01,.1],bad:[-Infinity,.01]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Heat level",children:c.current_heat<100?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:"Nominal"}):c.current_heat<200?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"average",children:"Caution"}):(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"bad",children:"DANGER"})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current output",children:c.power_output}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",onClick:function(){return i("lower_power")},children:c.power_generated}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return i("higher_power")},children:c.power_generated})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power available",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:!c.connected&&"bad",children:c.connected?c.power_available:"Unconnected"})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableScrubber=t.PortablePump=t.PortableBasicInfo=void 0;var o=n(1),r=n(3),a=n(2),i=n(37),c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.connected,l=i.holding,u=i.on,s=i.pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:s})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:c?"good":"average",children:c?"Connected":"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",minHeight:"82px",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!l,onClick:function(){return n("eject")}}),children:l?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:l.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.pressure})," kPa"]})]}):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No holding tank"})})],4)};t.PortableBasicInfo=c;t.PortablePump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.direction,u=(i.holding,i.target_pressure),s=i.default_pressure,d=i.min_pressure,p=i.max_pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Pump",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-in-alt":"sign-out-alt",content:l?"In":"Out",selected:l,onClick:function(){return n("direction")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,unit:"kPa",width:"75px",minValue:d,maxValue:p,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:u===d,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",disabled:u===s,onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:u===p,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})],4)};t.PortableScrubber=function(e){var t=(0,r.useBackend)(e),n=t.act,l=t.data.filter_types||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Filters",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,i.getGasLabel)(e.gas_id,e.gas_name),selected:e.enabled,onClick:function(){return n("toggle_filter",{val:e.gas_id})}},e.id)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.PowerMonitor=void 0;var o=n(1),r=n(28),a=n(70),i=n(20),c=n(12),l=n(2);var u=5e5,s=function(e){var t=String(e.split(" ")[1]).toLowerCase();return["w","kw","mw","gw"].indexOf(t)},d=function(e){var t,n;function c(){var t;return(t=e.call(this)||this).state={sortByField:null},t}return n=e,(t=c).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,c.prototype.render=function(){var e=this,t=this.props.state.data,n=t.history,c=this.state.sortByField,d=n.supply[n.supply.length-1]||0,m=n.demand[n.demand.length-1]||0,h=n.supply.map((function(e,t){return[t,e]})),C=n.demand.map((function(e,t){return[t,e]})),g=Math.max.apply(Math,[u].concat(n.supply,n.demand)),b=(0,a.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===c&&(0,r.sortBy)((function(e){return e.name})),"charge"===c&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===c&&(0,r.sortBy)((function(e){return-s(e.load)}),(function(e){return-parseFloat(e.load)}))])(t.areas);return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"200px",children:(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Supply",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d,minValue:0,maxValue:g,color:"teal",content:(0,i.toFixed)(d/1e3)+" kW"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Draw",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:m,minValue:0,maxValue:g,color:"pink",content:(0,i.toFixed)(m/1e3)+" kW"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{position:"relative",height:"100%",children:[(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:h,rangeX:[0,h.length-1],rangeY:[0,g],strokeColor:"rgba(0, 181, 173, 1)",fillColor:"rgba(0, 181, 173, 0.25)"}),(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:C,rangeX:[0,C.length-1],rangeY:[0,g],strokeColor:"rgba(224, 57, 151, 1)",fillColor:"rgba(224, 57, 151, 0.25)"})]})})]}),(0,o.createComponentVNode)(2,l.Section,{children:[(0,o.createComponentVNode)(2,l.Box,{mb:1,children:[(0,o.createComponentVNode)(2,l.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"name"===c,content:"Name",onClick:function(){return e.setState({sortByField:"name"!==c&&"name"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"charge"===c,content:"Charge",onClick:function(){return e.setState({sortByField:"charge"!==c&&"charge"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"draw"===c,content:"Draw",onClick:function(){return e.setState({sortByField:"draw"!==c&&"draw"})}})]}),(0,o.createComponentVNode)(2,l.Table,{children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,l.Table.Cell,{textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),b.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,e.name,0),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,p,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,f,{status:e.eqp}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,f,{status:e.lgt}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,f,{status:e.env}),2)],4,null,e.id)}))]})]})],4)},c}(o.Component);t.PowerMonitor=d;var p=function(e){var t=e.charging,n=e.charge;return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Icon,{width:"18px",textAlign:"center",name:0===t&&(n>50?"battery-half":"battery-quarter")||1===t&&"bolt"||2===t&&"battery-full",color:0===t&&(n>50?"yellow":"red")||1===t&&"yellow"||2===t&&"green"}),(0,o.createComponentVNode)(2,l.Box,{inline:!0,width:"36px",textAlign:"right",children:(0,i.toFixed)(n)+"%"})],4)};p.defaultHooks=c.pureComponentHooks;var f=function(e){var t=e.status,n=Boolean(2&t),r=Boolean(1&t),a=(n?"On":"Off")+" ["+(r?"auto":"manual")+"]";return(0,o.createComponentVNode)(2,l.ColorBox,{color:n?"good":"bad",content:r?undefined:"M",title:a})};f.defaultHooks=c.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Radio=void 0;var o=n(1),r=n(28),a=n(20),i=n(3),c=n(2),l=n(37);t.Radio=function(e){var t=(0,i.useBackend)(e),n=t.act,u=t.data,s=u.freqlock,d=u.frequency,p=u.minFrequency,f=u.maxFrequency,m=u.listening,h=u.broadcasting,C=u.command,g=u.useCommand,b=u.subspace,v=u.subspaceSwitchable,N=l.RADIO_CHANNELS.find((function(e){return e.freq===d})),V=(0,r.map)((function(e,t){return{name:t,status:!!e}}))(u.channels);return(0,o.createComponentVNode)(2,c.Section,{children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Frequency",children:[s&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"light-gray",children:(0,a.toFixed)(d/10,1)+" kHz"})||(0,o.createComponentVNode)(2,c.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:10,minValue:p/10,maxValue:f/10,value:d/10,format:function(e){return(0,a.toFixed)(e,1)},onDrag:function(e,t){return n("frequency",{adjust:t-d/10})}}),N&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:N.color,ml:2,children:["[",N.name,"]"]})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Audio",children:[(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:m?"volume-up":"volume-mute",selected:m,onClick:function(){return n("listen")}}),(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:h?"microphone":"microphone-slash",selected:h,onClick:function(){return n("broadcast")}}),!!C&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:g,content:"High volume "+(g?"ON":"OFF"),onClick:function(){return n("command")}}),!!v&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:b,content:"Subspace Tx "+(b?"ON":"OFF"),onClick:function(){return n("subspace")}})]}),!!b&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Channels",children:[0===V.length&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"bad",children:"No encryption keys installed."}),V.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{children:(0,o.createComponentVNode)(2,c.Button,{icon:e.status?"check-square-o":"square-o",selected:e.status,content:e.name,onClick:function(){return n("channel",{channel:e.name})}})},e.name)}))]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RapidPipeDispenser=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=["Atmospherics","Disposals","Transit Tubes"],l={Atmospherics:"wrench",Disposals:"trash-alt","Transit Tubes":"bus",Pipes:"grip-lines","Disposal Pipes":"grip-lines",Devices:"microchip","Heat Exchange":"thermometer-half","Station Equipment":"microchip"},u={grey:"#bbbbbb",amethyst:"#a365ff",blue:"#4466ff",brown:"#b26438",cyan:"#48eae8",dark:"#808080",green:"#1edd00",orange:"#ffa030",purple:"#b535ea",red:"#ff3333",violet:"#6e00f6",yellow:"#ffce26"},s=[{name:"Dispense",bitmask:1},{name:"Connect",bitmask:2},{name:"Destroy",bitmask:4},{name:"Paint",bitmask:8}];t.RapidPipeDispenser=function(e){var t=(0,a.useBackend)(e),n=t.act,d=t.data,p=d.category,f=d.categories,m=void 0===f?[]:f,h=d.selected_color,C=d.piping_layer,g=d.mode,b=d.preview_rows.flatMap((function(e){return e.previews}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Category",children:c.map((function(e,t){return(0,o.createComponentVNode)(2,i.Button,{selected:p===t,icon:l[e],color:"transparent",content:e,onClick:function(){return n("category",{category:t})}},e)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Modes",children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:g&e.bitmask,content:e.name,onClick:function(){return n("mode",{mode:e.bitmask})}},e.bitmask)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,width:"64px",color:u[h],content:h}),Object.keys(u).map((function(e){return(0,o.createComponentVNode)(2,i.ColorBox,{ml:1,color:u[e],onClick:function(){return n("color",{paint_color:e})}},e)}))]})]})}),(0,o.createComponentVNode)(2,i.Flex,{m:-.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,children:(0,o.createComponentVNode)(2,i.Section,{children:[0===p&&(0,o.createComponentVNode)(2,i.Box,{mb:1,children:[1,2,3].map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:e===C,content:"Layer "+e,onClick:function(){return n("piping_layer",{piping_layer:e})}},e)}))}),(0,o.createComponentVNode)(2,i.Box,{width:"108px",children:b.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{title:e.dir_name,selected:e.selected,style:{width:"48px",height:"48px",padding:0},onClick:function(){return n("setdir",{dir:e.dir,flipped:e.flipped})},children:(0,o.createComponentVNode)(2,i.Box,{className:(0,r.classes)(["pipes32x32",e.dir+"-"+e.icon_state]),style:{transform:"scale(1.5) translate(17%, 17%)"}})},e.dir)}))})]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,grow:1,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{fluid:!0,icon:l[e.cat_name],label:e.cat_name,children:function(){return e.recipes.map((function(t){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,ellipsis:!0,checked:t.selected,content:t.pipe_name,title:t.pipe_name,onClick:function(){return n("pipe_type",{pipe_type:t.pipe_index,category:e.cat_name})}},t.pipe_index)}))}},e.cat_name)}))})})})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SatelliteControl=void 0;var o=n(1),r=n(3),a=n(2),i=n(163);t.SatelliteControl=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.satellites||[];return(0,o.createFragment)([c.meteor_shield&&(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledListItem,{label:"Coverage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.meteor_shield_coverage/c.meteor_shield_coverage_max,content:100*c.meteor_shield_coverage/c.meteor_shield_coverage_max+"%",ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Satellite Controls",children:(0,o.createComponentVNode)(2,a.Box,{mr:-1,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.active,content:"#"+e.id+" "+e.mode,onClick:function(){return n("toggle",{id:e.id})}},e.id)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ScannerGate=void 0;var o=n(1),r=n(3),a=n(2),i=n(69),c=["Positive","Harmless","Minor","Medium","Harmful","Dangerous","BIOHAZARD"],l=[{name:"Human",value:"human"},{name:"Lizardperson",value:"lizard"},{name:"Flyperson",value:"fly"},{name:"Felinid",value:"felinid"},{name:"Plasmaman",value:"plasma"},{name:"Mothperson",value:"moth"},{name:"Jellyperson",value:"jelly"},{name:"Podperson",value:"pod"},{name:"Golem",value:"golem"},{name:"Zombie",value:"zombie"}],u=[{name:"Starving",value:150},{name:"Obese",value:600}];t.ScannerGate=function(e){var t=e.state,n=(0,r.useBackend)(e),a=n.act,c=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{locked:c.locked,onLockedStatusChange:function(){return a("toggle_lock")}}),!c.locked&&(0,o.createComponentVNode)(2,d,{state:t})],0)};var s={Off:{title:"Scanner Mode: Off",component:function(){return p}},Wanted:{title:"Scanner Mode: Wanted",component:function(){return f}},Guns:{title:"Scanner Mode: Guns",component:function(){return m}},Mindshield:{title:"Scanner Mode: Mindshield",component:function(){return h}},Disease:{title:"Scanner Mode: Disease",component:function(){return C}},Species:{title:"Scanner Mode: Species",component:function(){return g}},Nutrition:{title:"Scanner Mode: Nutrition",component:function(){return b}},Nanites:{title:"Scanner Mode: Nanites",component:function(){return v}}},d=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data.scan_mode,l=s[c]||s.off,u=l.component();return(0,o.createComponentVNode)(2,a.Section,{title:l.title,buttons:"Off"!==c&&(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"back",onClick:function(){return i("set_mode",{new_mode:"Off"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},p=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:"Select a scanning mode below."}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{content:"Wanted",onClick:function(){return t("set_mode",{new_mode:"Wanted"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Guns",onClick:function(){return t("set_mode",{new_mode:"Guns"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Mindshield",onClick:function(){return t("set_mode",{new_mode:"Mindshield"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Disease",onClick:function(){return t("set_mode",{new_mode:"Disease"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Species",onClick:function(){return t("set_mode",{new_mode:"Species"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nutrition",onClick:function(){return t("set_mode",{new_mode:"Nutrition"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nanites",onClick:function(){return t("set_mode",{new_mode:"Nanites"})}})]})],4)},f=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any warrants for their arrest."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},m=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any guns."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},h=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","a mindshield."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},C=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,l=n.data,u=l.reverse,s=l.disease_threshold;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",u?"does not have":"has"," ","a disease equal or worse than ",s,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e===s,content:e,onClick:function(){return i("set_disease_threshold",{new_threshold:e})}},e)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},g=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,u=c.reverse,s=c.target_species,d=l.find((function(e){return e.value===s}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned is ",u?"not":""," ","of the ",d.name," species.","zombie"===s&&" All zombie types will be detected, including dormant zombies."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===s,content:e.name,onClick:function(){return i("set_target_species",{new_species:e.value})}},e.value)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},b=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,s=c.target_nutrition,d=u.find((function(e){return e.value===s}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","the ",d.name," nutrition level."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===s,content:e.name,onClick:function(){return i("set_target_nutrition",{new_nutrition:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},v=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,u=c.nanite_cloud;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","nanite cloud ",u,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,width:"65px",minValue:1,maxValue:100,stepPixelSize:2,onChange:function(e,t){return i("set_nanite_cloud",{new_cloud:t})}})})})}),(0,o.createComponentVNode)(2,N,{state:t})],4)},N=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.reverse;return(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Scanning Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:i?"Inverted":"Default",icon:i?"random":"long-arrow-alt-right",onClick:function(){return n("toggle_reverse")},color:i?"bad":"good"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ShuttleManipulator=void 0;var o=n(1),r=n(28),a=n(3),i=n(2);t.ShuttleManipulator=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.shuttles||[],u=c.templates||{},s=c.selected||{},d=c.existing_shuttle||{};return(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Status",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Table,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"JMP",onClick:function(){return n("jump_to",{type:"mobile",id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Fly",disabled:!e.can_fly,onClick:function(){return n("fly",{id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.id}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.status}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:[e.mode,!!e.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),e.timeleft,(0,o.createTextVNode)(")"),(0,o.createComponentVNode)(2,i.Button,{content:"Fast Travel",disabled:!e.can_fast_travel,onClick:function(){return n("fast_travel",{id:e.id})}},e.id)],0)]})]},e.id)}))})})}},"status"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Templates",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:(0,r.map)((function(e,t){var r=e.templates||[];return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.port_id,children:r.map((function(e){var t=e.shuttle_id===s.shuttle_id;return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{content:t?"Selected":"Select",selected:t,onClick:function(){return n("select_template",{shuttle_id:e.shuttle_id})}}),children:(!!e.description||!!e.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:e.description}),!!e.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:e.admin_notes})]})},e.shuttle_id)}))},t)}))(u)})})}},"templates"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Modification",children:(0,o.createComponentVNode)(2,i.Section,{children:s?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{level:2,title:s.name,children:(!!s.description||!!s.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!s.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:s.description}),!!s.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:s.admin_notes})]})}),d?(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: "+d.name,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Jump To",onClick:function(){return n("jump_to",{type:"mobile",id:d.id})}}),children:[d.status,!!d.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),d.timeleft,(0,o.createTextVNode)(")")],0)]})})}):(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: None"}),(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Status",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Preview",onClick:function(){return n("preview",{shuttle_id:s.shuttle_id})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Load",color:"bad",onClick:function(){return n("load",{shuttle_id:s.shuttle_id})}})]})],0):"No shuttle selected"})},"modification")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SlimeBodySwapper=t.BodyEntry=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.body,n=e.swapFunc;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t.htmlcolor,children:t.name}),level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:{owner:"You Are Here",stranger:"Occupied",available:"Swap"}[t.occupied],selected:"owner"===t.occupied,color:"stranger"===t.occupied&&"bad",onClick:function(){return n()}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",bold:!0,color:{Dead:"bad",Unconscious:"average",Conscious:"good"}[t.status],children:t.status}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Jelly",children:t.exoticblood}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:t.area})]})})};t.BodyEntry=i;t.SlimeBodySwapper=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data.bodies,l=void 0===c?[]:c;return(0,o.createComponentVNode)(2,a.Section,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i,{body:e,swapFunc:function(){return n("swap",{ref:e.ref})}},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.Signaler=void 0;var o=n(1),r=n(2),a=n(3),i=n(20);t.Signaler=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.code,u=c.frequency,s=c.minFrequency,d=c.maxFrequency;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Frequency:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:s/10,maxValue:d/10,value:u/10,format:function(e){return(0,i.toFixed)(e,1)},width:13,onDrag:function(e,t){return n("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"freq"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.6,children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Code:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:l,width:13,onDrag:function(e,t){return n("code",{code:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"code"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.8,children:(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{mb:-.1,fluid:!0,icon:"arrow-up",content:"Send Signal",textAlign:"center",onClick:function(){return n("signal")}})})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmartVend=void 0;var o=n(1),r=n(28),a=n(3),i=n(2);t.SmartVend=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Storage",buttons:!!c.isdryer&&(0,o.createComponentVNode)(2,i.Button,{icon:c.drying?"stop":"tint",onClick:function(){return n("Dry")},children:c.drying?"Stop drying":"Dry"}),children:0===c.contents.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Unfortunately, this ",c.name," is empty."]})||(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Item"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:c.verb?c.verb:"Dispense"})]}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:e.amount}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"One",disabled:e.amount<1,onClick:function(){return n("Release",{name:e.name,amount:1})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Many",disabled:e.amount<=1,onClick:function(){return n("Release",{name:e.name})}})]})]},t)}))(c.contents)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Smes=void 0;var o=n(1),r=n(3),a=n(2);t.Smes=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return t=l.capacityPercent>=100?"good":l.inputting?"average":"bad",n=l.outputting?"good":l.charge>0?"average":"bad",(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Stored Energy",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:.01*l.capacityPercent,ranges:{good:[.5,Infinity],average:[.15,.5],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.Section,{title:"Input",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.inputAttempt?"sync-alt":"times",selected:l.inputAttempt,onClick:function(){return c("tryinput")},children:l.inputAttempt?"Auto":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:t,children:l.capacityPercent>=100?"Fully Charged":l.inputting?"Charging":"Not Charging"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Input",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.inputLevel/l.inputLevelMax,content:l.inputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Input",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.inputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.inputLevelMax/1e3,onChange:function(e,t){return c("input",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Available",children:l.inputAvailable})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.outputAttempt?"power-off":"times",selected:l.outputAttempt,onClick:function(){return c("tryoutput")},children:l.outputAttempt?"On":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:n,children:l.outputting?"Sending":l.charge>0?"Not Sending":"No Charge"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.outputLevel/l.outputLevelMax,content:l.outputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.outputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.outputLevelMax/1e3,onChange:function(e,t){return c("output",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Outputting",children:l.outputUsed})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SmokeMachine=void 0;var o=n(1),r=n(3),a=n(2);t.SmokeMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.TankContents,l=(i.isTankLoaded,i.TankCurrentVolume),u=i.TankMaxVolume,s=i.active,d=i.setting,p=(i.screen,i.maxSetting),f=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Dispersal Tank",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:s?"power-off":"times",selected:s,content:s?"On":"Off",onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/u,ranges:{bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:l||0})," / "+u]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Range",children:[1,2,3,4,5].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:d===e,icon:"plus",content:3*e,disabled:f0?"good":"bad",children:f})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{ranges:{good:[.66,Infinity],average:[.33,.66],bad:[-Infinity,.33]},minValue:0,maxValue:1,value:l,content:c+" W"})})})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Tracking",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:0===p,onClick:function(){return n("tracking",{mode:0})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:"Timed",selected:1===p,onClick:function(){return n("tracking",{mode:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:2===p,disabled:!m,onClick:function(){return n("tracking",{mode:2})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Azimuth",children:[(0===p||1===p)&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"52px",unit:"\xb0",step:1,stepPixelSize:2,minValue:-360,maxValue:720,value:u,onDrag:function(e,t){return n("azimuth",{value:t})}}),1===p&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"80px",unit:"\xb0/m",step:.01,stepPixelSize:1,minValue:-d-.01,maxValue:d+.01,value:s,format:function(e){return(Math.sign(e)>0?"+":"-")+Math.abs(e)},onDrag:function(e,t){return n("azimuth_rate",{value:t})}}),2===p&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mt:"3px",children:[u+" \xb0"," (auto)"]})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpaceHeater=void 0;var o=n(1),r=n(3),a=n(2);t.SpaceHeater=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Cell",disabled:!i.hasPowercell||!i.open,onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,disabled:!i.hasPowercell,onClick:function(){return n("power")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cell",color:!i.hasPowercell&&"bad",children:i.hasPowercell&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.powerLevel/100,content:i.powerLevel+"%",ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]}})||"None"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Thermostat",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"18px",color:Math.abs(i.targetTemp-i.currentTemp)>50?"bad":Math.abs(i.targetTemp-i.currentTemp)>20?"average":"good",children:[i.currentTemp,"\xb0C"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:i.open&&(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.targetTemp),width:"65px",unit:"\xb0C",minValue:i.minTemp,maxValue:i.maxTemp,onChange:function(e,t){return n("target",{target:t})}})||i.targetTemp+"\xb0C"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:i.open?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"thermometer-half",content:"Auto",selected:"auto"===i.mode,onClick:function(){return n("mode",{mode:"auto"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fire-alt",content:"Heat",selected:"heat"===i.mode,onClick:function(){return n("mode",{mode:"heat"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fan",content:"Cool",selected:"cool"===i.mode,onClick:function(){return n("mode",{mode:"cool"})}})],4):"Auto"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider)]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpawnersMenu=void 0;var o=n(1),r=n(3),a=n(2);t.SpawnersMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.spawners||[];return(0,o.createComponentVNode)(2,a.Section,{children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" ("+e.amount_left+" left)",level:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Jump",onClick:function(){return n("jump",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Spawn",onClick:function(){return n("spawn",{name:e.name})}})],4),children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mb:1,fontSize:"20px",children:e.short_desc}),(0,o.createComponentVNode)(2,a.Box,{children:e.flavor_text}),!!e.important_info&&(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,color:"bad",fontSize:"26px",children:e.important_info})]},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.StationAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.StationAlertConsole=function(e){var t=(0,r.useBackend)(e).data.alarms||[],n=t.Fire||[],i=t.Atmosphere||[],c=t.Power||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Fire Alarms",children:(0,o.createVNode)(1,"ul",null,[0===n.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),n.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Atmospherics Alarms",children:(0,o.createVNode)(1,"ul",null,[0===i.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),i.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Alarms",children:(0,o.createVNode)(1,"ul",null,[0===c.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),c.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SuitStorageUnit=void 0;var o=n(1),r=n(3),a=n(2);t.SuitStorageUnit=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.locked,l=i.open,u=i.safeties,s=i.uv_active,d=i.occupied,p=i.suit,f=i.helmet,m=i.mask,h=i.storage;return(0,o.createFragment)([!(!d||!u)&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Biological entity detected in suit chamber. Please remove before continuing with operation."}),s&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Contents are currently being decontaminated. Please wait."})||(0,o.createComponentVNode)(2,a.Section,{title:"Storage",minHeight:"260px",buttons:(0,o.createFragment)([!l&&(0,o.createComponentVNode)(2,a.Button,{icon:c?"unlock":"lock",content:c?"Unlock":"Lock",onClick:function(){return n("lock")}}),!c&&(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-out-alt":"sign-in-alt",content:l?"Close":"Open",onClick:function(){return n("door")}})],0),children:c&&(0,o.createComponentVNode)(2,a.Box,{mt:6,bold:!0,textAlign:"center",fontSize:"40px",children:[(0,o.createComponentVNode)(2,a.Box,{children:"Unit Locked"}),(0,o.createComponentVNode)(2,a.Icon,{name:"lock"})]})||l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Helmet",children:(0,o.createComponentVNode)(2,a.Button,{icon:f?"square":"square-o",content:f||"Empty",disabled:!f,onClick:function(){return n("dispense",{item:"helmet"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suit",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"square":"square-o",content:p||"Empty",disabled:!p,onClick:function(){return n("dispense",{item:"suit"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mask",children:(0,o.createComponentVNode)(2,a.Button,{icon:m?"square":"square-o",content:m||"Empty",disabled:!m,onClick:function(){return n("dispense",{item:"mask"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Storage",children:(0,o.createComponentVNode)(2,a.Button,{icon:h?"square":"square-o",content:h||"Empty",disabled:!h,onClick:function(){return n("dispense",{item:"storage"})}})})]})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"recycle",content:"Decontaminate",disabled:d&&u,textAlign:"center",onClick:function(){return n("uv")}})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Tank=void 0;var o=n(1),r=n(3),a=n(2);t.Tank=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.tankPressure/1013,content:i.tankPressure+" kPa",ranges:{good:[.35,Infinity],average:[.15,.35],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:i.ReleasePressure===i.minReleasePressure,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.releasePressure),width:"65px",unit:"kPa",minValue:i.minReleasePressure,maxValue:i.maxReleasePressure,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:i.ReleasePressure===i.maxReleasePressure,onClick:function(){return n("pressure",{pressure:"max"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"",disabled:i.ReleasePressure===i.defaultReleasePressure,onClick:function(){return n("pressure",{pressure:"reset"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TankDispenser=void 0;var o=n(1),r=n(3),a=n(2);t.TankDispenser=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plasma",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.plasma?"square":"square-o",content:"Dispense",disabled:!i.plasma,onClick:function(){return n("plasma")}}),children:i.plasma}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Oxygen",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.oxygen?"square":"square-o",content:"Dispense",disabled:!i.oxygen,onClick:function(){return n("oxygen")}}),children:i.oxygen})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Teleporter=void 0;var o=n(1),r=n(3),a=n(2);t.Teleporter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.calibrated,l=i.calibrating,u=i.power_station,s=i.regime_set,d=i.teleporter_hub,p=i.target;return(0,o.createComponentVNode)(2,a.Section,{children:!u&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No power station linked."})||!d&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No hub linked."})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Regime",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Change Regime",onClick:function(){return n("regimeset")}}),children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Set Target",onClick:function(){return n("settarget")}}),children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Calibration",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Calibrate Hub",onClick:function(){return n("calibrate")}}),children:l&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"In Progress"})||c&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Optimal"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Sub-Optimal"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ThermoMachine=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ThermoMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.temperature,format:function(e){return(0,r.toFixed)(e,2)}})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.pressure,format:function(e){return(0,r.toFixed)(e,2)}})," kPa"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:Math.round(c.target),unit:"K",width:"62px",minValue:Math.round(c.min),maxValue:Math.round(c.max),step:5,stepPixelSize:3,onDrag:function(e,t){return n("target",{target:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:c.target===c.min,title:"Minimum temperature",onClick:function(){return n("target",{target:c.min})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",disabled:c.target===c.initial,title:"Room Temperature",onClick:function(){return n("target",{target:c.initial})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:c.target===c.max,title:"Maximum Temperature",onClick:function(){return n("target",{target:c.max})}})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.TurbineComputer=void 0;var o=n(1),r=n(3),a=n(2);t.TurbineComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=Boolean(i.compressor&&!i.compressor_broke&&i.turbine&&!i.turbine_broke);return(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:i.online?"power-off":"times",content:i.online?"Online":"Offline",selected:i.online,disabled:!c,onClick:function(){return n("toggle_power")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reconnect",onClick:function(){return n("reconnect")}})],4),children:!c&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Compressor Status",color:!i.compressor||i.compressor_broke?"bad":"good",children:i.compressor_broke?i.compressor?"Offline":"Missing":"Online"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Status",color:!i.turbine||i.turbine_broke?"bad":"good",children:i.turbine_broke?i.turbine?"Offline":"Missing":"Online"})]})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Speed",children:[i.rpm," RPM"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Internal Temp",children:[i.temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Generated Power",children:i.power})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.VaultController=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.VaultController=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Lock Status: ",buttons:(0,o.createComponentVNode)(2,i.Button,{content:c.doorstatus?"Locked":"Unlocked",icon:c.doorstatus?"lock":"unlock",disabled:c.stored1?r-1:0),i=1;i1?t-1:0),o=1;o0?"good":"bad",content:i>0?"Earned "+i+" times":"Locked"})],0,{style:{"vertical-align":"top"}})],4,null,t)};t.Score=c;t.Achievements=function(e){var t=(0,r.useBackend)(e).data;return(0,o.createComponentVNode)(2,a.Tabs,{children:[t.categories.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e,children:(0,o.createComponentVNode)(2,a.Box,{as:"Table",children:t.achievements.filter((function(t){return t.category===e})).map((function(e){return e.score?(0,o.createComponentVNode)(2,c,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name):(0,o.createComponentVNode)(2,i,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name)}))})},e)})),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"High Scores",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:t.highscore.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e.name,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"#"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Key"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Score"})]}),Object.keys(e.scores).map((function(n,r){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",m:2,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:r+1}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:n===t.user_ckey&&"green",textAlign:"center",children:[0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",mr:2}),n,0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",ml:2})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:e.scores[n]})]},n)}))]})},e.name)}))})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BlockQuote=void 0;var o=n(1),r=n(12),a=n(17);t.BlockQuote=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["BlockQuote",t])},n)))}},function(e,t,n){"use strict";var o,r;t.__esModule=!0,t.VNodeFlags=t.ChildFlags=void 0,t.VNodeFlags=o,function(e){e[e.HtmlElement=1]="HtmlElement",e[e.ComponentUnknown=2]="ComponentUnknown",e[e.ComponentClass=4]="ComponentClass",e[e.ComponentFunction=8]="ComponentFunction",e[e.Text=16]="Text",e[e.SvgElement=32]="SvgElement",e[e.InputElement=64]="InputElement",e[e.TextareaElement=128]="TextareaElement",e[e.SelectElement=256]="SelectElement",e[e.Void=512]="Void",e[e.Portal=1024]="Portal",e[e.ReCreate=2048]="ReCreate",e[e.ContentEditable=4096]="ContentEditable",e[e.Fragment=8192]="Fragment",e[e.InUse=16384]="InUse",e[e.ForwardRef=32768]="ForwardRef",e[e.Normalized=65536]="Normalized",e[e.ForwardRefComponent=32776]="ForwardRefComponent",e[e.FormElement=448]="FormElement",e[e.Element=481]="Element",e[e.Component=14]="Component",e[e.DOMRef=2033]="DOMRef",e[e.InUseOrNormalized=81920]="InUseOrNormalized",e[e.ClearInUse=-16385]="ClearInUse",e[e.ComponentKnown=12]="ComponentKnown"}(o||(t.VNodeFlags=o={})),t.ChildFlags=r,function(e){e[e.UnknownChildren=0]="UnknownChildren",e[e.HasInvalidChildren=1]="HasInvalidChildren",e[e.HasVNodeChildren=2]="HasVNodeChildren",e[e.HasNonKeyedChildren=4]="HasNonKeyedChildren",e[e.HasKeyedChildren=8]="HasKeyedChildren",e[e.HasTextChildren=16]="HasTextChildren",e[e.MultipleChildren=12]="MultipleChildren"}(r||(t.ChildFlags=r={}))},function(e,t,n){"use strict";t.__esModule=!0,t.ColorBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.color,n=e.content,i=e.className,c=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["color","content","className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["ColorBox",i]),color:n?null:"transparent",backgroundColor:t,content:n||"."},c)))};t.ColorBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Collapsible=void 0;var o=n(1),r=n(17),a=n(114);var i=function(e){var t,n;function i(t){var n;n=e.call(this,t)||this;var o=t.open;return n.state={open:o||!1},n}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.prototype.render=function(){var e=this,t=this.props,n=this.state.open,i=t.children,c=t.color,l=void 0===c?"default":c,u=t.title,d=t.buttons,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(t,["children","color","title","buttons"]);return(0,o.createComponentVNode)(2,r.Box,{mb:1,children:[(0,o.createVNode)(1,"div","Table",[(0,o.createVNode)(1,"div","Table__cell",(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Button,Object.assign({fluid:!0,color:l,icon:n?"chevron-down":"chevron-right",onClick:function(){return e.setState({open:!n})}},s,{children:u}))),2),d&&(0,o.createVNode)(1,"div","Table__cell Table__cell--collapsing",d,0)],0),n&&(0,o.createComponentVNode)(2,r.Box,{mt:1,children:i})]})},i}(o.Component);t.Collapsible=i},function(e,t,n){"use strict";t.__esModule=!0,t.Dimmer=void 0;var o=n(1),r=n(17);t.Dimmer=function(e){var t=e.style,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Box,Object.assign({style:Object.assign({position:"absolute",top:0,bottom:0,left:0,right:0,"background-color":"rgba(0, 0, 0, 0.75)","z-index":1},t)},n)))}},function(e,t,n){"use strict";t.__esModule=!0,t.Dropdown=void 0;var o=n(1),r=n(12),a=n(17),i=n(87);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t,n;function l(t){var n;return(n=e.call(this,t)||this).state={selected:t.selected,open:!1},n.handleClick=function(){n.state.open&&n.setOpen(!1)},n}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentWillUnmount=function(){window.removeEventListener("click",this.handleClick)},u.setOpen=function(e){var t=this;this.setState({open:e}),e?(setTimeout((function(){return window.addEventListener("click",t.handleClick)})),this.menuRef.focus()):window.removeEventListener("click",this.handleClick)},u.setSelected=function(e){this.setState({selected:e}),this.setOpen(!1),this.props.onSelected(e)},u.buildMenu=function(){var e=this,t=this.props.options,n=(void 0===t?[]:t).map((function(t){return(0,o.createVNode)(1,"div","Dropdown__menuentry",t,0,{onClick:function(n){e.setSelected(t)}},t)}));return n.length?n:"No Options Found"},u.render=function(){var e=this,t=this.props,n=t.color,l=void 0===n?"default":n,u=t.over,d=t.width,s=(t.onClick,t.selected,c(t,["color","over","width","onClick","selected"])),p=s.className,m=c(s,["className"]),f=u?!this.state.open:this.state.open,h=this.state.open?(0,o.createVNode)(1,"div",(0,r.classes)(["Dropdown__menu",u&&"Dropdown__over"]),this.buildMenu(),0,{tabIndex:"-1",style:{width:d}},null,(function(t){e.menuRef=t})):null;return(0,o.createVNode)(1,"div","Dropdown",[(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({width:d,className:(0,r.classes)(["Dropdown__control","Button","Button--color--"+l,p])},m,{onClick:function(t){e.setOpen(!e.state.open)},children:[(0,o.createVNode)(1,"span","Dropdown__selected-text",this.state.selected,0),(0,o.createVNode)(1,"span","Dropdown__arrow-button",(0,o.createComponentVNode)(2,i.Icon,{name:f?"chevron-up":"chevron-down"}),2)]}))),h],0)},l}(o.Component);t.Dropdown=l},function(e,t,n){"use strict";t.__esModule=!0,t.FlexItem=t.computeFlexItemProps=t.Flex=t.computeFlexProps=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.direction,o=e.wrap,a=e.align,c=e.justify,l=e.spacing,u=void 0===l?0:l,d=i(e,["className","direction","wrap","align","justify","spacing"]);return Object.assign({className:(0,r.classes)(["Flex",u>0&&"Flex--spacing--"+u,t]),style:Object.assign({},d.style,{"flex-direction":n,"flex-wrap":o,"align-items":a,"justify-content":c})},d)};t.computeFlexProps=c;var l=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},c(e))))};t.Flex=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.grow,o=e.order,a=e.align,c=i(e,["className","grow","order","align"]);return Object.assign({className:(0,r.classes)(["Flex__item",t]),style:Object.assign({},c.style,{"flex-grow":n,order:o,"align-self":a})},c)};t.computeFlexItemProps=u;var d=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},u(e))))};t.FlexItem=d,d.defaultHooks=r.pureComponentHooks,l.Item=d},function(e,t,n){"use strict";t.__esModule=!0,t.NoticeBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["NoticeBox",t])},n)))};t.NoticeBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.NumberInput=void 0;var o=n(1),r=n(20),a=n(12),i=n(19),c=n(158),l=n(17);var u=function(e){var t,n;function u(t){var n;n=e.call(this,t)||this;var a=t.value;return n.inputRef=(0,o.createRef)(),n.state={value:a,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props.value;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:e.screenY,value:t,internalValue:t}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,a=n.props.onDrag;o&&a&&a(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,a=t.maxValue,i=t.step,c=t.stepPixelSize;n.setState((function(t){var n=Object.assign({},t),l=n.origin-e.screenY;if(t.dragging){var u=Number.isFinite(o)?o%i:0;n.internalValue=(0,r.clamp)(n.internalValue+l*i/c,o-i,a+i),n.value=(0,r.clamp)(n.internalValue-n.internalValue%i+u,o,a),n.origin=e.screenY}else Math.abs(l)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,a=n.state,i=a.dragging,c=a.value,l=a.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!i,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),i)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var u=n.inputRef.current;u.value=l;try{u.focus(),u.select()}catch(d){}}},n}return n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,u.prototype.render=function(){var e=this,t=this.state,n=t.dragging,u=t.editing,d=t.value,s=t.suppressingFlicker,p=this.props,m=p.className,f=p.fluid,h=p.animated,C=p.value,g=p.unit,b=p.minValue,v=p.maxValue,N=p.height,V=p.width,y=p.lineHeight,_=p.fontSize,x=p.format,k=p.onChange,L=p.onDrag,w=C;(n||s)&&(w=d);var B=function(e){return(0,o.createVNode)(1,"div","NumberInput__content",e+(g?" "+g:""),0,{unselectable:i.tridentVersion<=4})},S=h&&!n&&!s&&(0,o.createComponentVNode)(2,c.AnimatedNumber,{value:w,format:x,children:B})||B(x?x(w):w);return(0,o.createComponentVNode)(2,l.Box,{className:(0,a.classes)(["NumberInput",f&&"NumberInput--fluid",m]),minWidth:V,minHeight:N,lineHeight:y,fontSize:_,onMouseDown:this.handleDragStart,children:[(0,o.createVNode)(1,"div","NumberInput__barContainer",(0,o.createVNode)(1,"div","NumberInput__bar",null,1,{style:{height:(0,r.clamp)((w-b)/(v-b)*100,0,100)+"%"}}),2),S,(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:u?undefined:"none",height:N,"line-height":y,"font-size":_},onBlur:function(t){if(u){var n=(0,r.clamp)(t.target.value,b,v);e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),L&&L(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,b,v);return e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),void(L&&L(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef)]})},u}(o.Component);t.NumberInput=u,u.defaultHooks=a.pureComponentHooks,u.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50}},function(e,t,n){"use strict";t.__esModule=!0,t.ProgressBar=void 0;var o=n(1),r=n(12),a=n(20),i=function(e){var t=e.value,n=e.minValue,i=void 0===n?0:n,c=e.maxValue,l=void 0===c?1:c,u=e.ranges,d=void 0===u?{}:u,s=e.content,p=e.children,m=(t-i)/(l-i),f=s!==undefined||p!==undefined,h=e.color;if(!h)for(var C=0,g=Object.keys(d);C=v[0]&&t<=v[1]){h=b;break}}return h||(h="default"),(0,o.createVNode)(1,"div",(0,r.classes)(["ProgressBar","ProgressBar--color--"+h]),[(0,o.createVNode)(1,"div","ProgressBar__fill",null,1,{style:{width:100*(0,a.clamp)(m,0,1)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",[f&&s,f&&p,!f&&(0,a.toFixed)(100*m)+"%"],0)],4)};t.ProgressBar=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Section=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=e.title,i=e.level,c=void 0===i?1:i,l=e.buttons,u=e.content,d=e.children,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","title","level","buttons","content","children"]),p=!(0,r.isFalsy)(n)||!(0,r.isFalsy)(l),m=!(0,r.isFalsy)(u)||!(0,r.isFalsy)(d);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Section","Section--level--"+c,t])},s,{children:[p&&(0,o.createVNode)(1,"div","Section__title",[(0,o.createVNode)(1,"span","Section__titleText",n,0),(0,o.createVNode)(1,"div","Section__buttons",l,0)],4),m&&(0,o.createVNode)(1,"div","Section__content",[u,d],0)]})))};t.Section=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Tab=t.Tabs=void 0;var o=n(1),r=n(12),a=n(17),i=n(114);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t=e,n=Array.isArray(t),o=0;for(t=n?t:t[Symbol.iterator]();;){var r;if(n){if(o>=t.length)break;r=t[o++]}else{if((o=t.next()).done)break;r=o.value}var a=r;if(!a.props||"Tab"!==a.props.__type__){var i=JSON.stringify(a,null,2);throw new Error(" only accepts children of type .This is what we received: "+i)}}},u=function(e){var t,n;function u(t){var n;return(n=e.call(this,t)||this).state={activeTabKey:null},n}n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=u.prototype;return d.getActiveTab=function(){var e=this.state,t=this.props,n=(0,r.normalizeChildren)(t.children);l(n);var o=t.activeTab||e.activeTabKey,a=n.find((function(e){return(e.key||e.props.label)===o}));return a||(a=n[0],o=a&&(a.key||a.props.label)),{tabs:n,activeTab:a,activeTabKey:o}},d.render=function(){var e=this,t=this.props,n=t.className,l=t.vertical,u=(t.children,c(t,["className","vertical","children"])),d=this.getActiveTab(),s=d.tabs,p=d.activeTab,m=d.activeTabKey,f=null;return p&&(f=p.props.content||p.props.children),"function"==typeof f&&(f=f(m)),(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Tabs",l&&"Tabs--vertical",n])},u,{children:[(0,o.createVNode)(1,"div","Tabs__tabBox",s.map((function(t){var n=t.props,a=n.className,l=n.label,u=(n.content,n.children,n.onClick),d=n.highlight,s=c(n,["className","label","content","children","onClick","highlight"]),p=t.key||t.props.label,f=t.active||p===m;return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Button,Object.assign({className:(0,r.classes)(["Tabs__tab",f&&"Tabs__tab--active",d&&!f&&"color-yellow",a]),selected:f,color:"transparent",onClick:function(n){e.setState({activeTabKey:p}),u&&u(n,t)}},s,{children:l}),p))})),0),(0,o.createVNode)(1,"div","Tabs__content",f||null,0)]})))},u}(o.Component);t.Tabs=u;var d=function(e){return null};t.Tab=d,d.defaultProps={__type__:"Tab"},u.Tab=d},function(e,t,n){"use strict";t.__esModule=!0,t.TitleBar=void 0;var o=n(1),r=n(12),a=n(31),i=n(19),c=n(37),l=n(87),u=function(e){switch(e){case c.UI_INTERACTIVE:return"good";case c.UI_UPDATE:return"average";case c.UI_DISABLED:default:return"bad"}},d=function(e){var t=e.className,n=e.title,c=e.status,d=e.fancy,s=e.onDragStart,p=e.onClose;return(0,o.createVNode)(1,"div",(0,r.classes)(["TitleBar",t]),[(0,o.createComponentVNode)(2,l.Icon,{className:"TitleBar__statusIcon",color:u(c),name:"eye"}),(0,o.createVNode)(1,"div","TitleBar__title",n===n.toLowerCase()?(0,a.toTitleCase)(n):n,0),(0,o.createVNode)(1,"div","TitleBar__dragZone",null,1,{onMousedown:function(e){return d&&s(e)}}),!!d&&(0,o.createVNode)(1,"div","TitleBar__close TitleBar__clickable",i.tridentVersion<=4?"x":"\xd7",0,{onclick:p})],0)};t.TitleBar=d,d.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=void 0;var o=n(1),r=n(23),a=n(17),i=n(12),c=n(19);var l=function(e,t,n,o){if(0===e.length)return[];var a=(0,r.zipWith)(Math.min).apply(void 0,e),i=(0,r.zipWith)(Math.max).apply(void 0,e);return n!==undefined&&(a[0]=n[0],i[0]=n[1]),o!==undefined&&(a[1]=o[0],i[1]=o[1]),(0,r.map)((function(e){return(0,r.zipWith)((function(e,t,n,o){return(e-t)/(n-t)*o}))(e,a,i,t)}))(e)},u=function(e){for(var t="",n=0;n=0||(r[n]=e[n]);return r}(t,["data","rangeX","rangeY","fillColor","strokeColor","strokeWidth"]),g=this.state.viewBox,b=l(r,g,i,c);if(b.length>0){var v=b[0],N=b[b.length-1];b.push([g[0]+h,N[1]]),b.push([g[0]+h,-h]),b.push([-h,-h]),b.push([-h,v[1]])}var V=u(b);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({position:"relative"},C,{children:function(t){return(0,o.normalizeProps)((0,o.createVNode)(1,"div",null,(0,o.createVNode)(32,"svg",null,(0,o.createVNode)(32,"polyline",null,null,1,{transform:"scale(1, -1) translate(0, -"+g[1]+")",fill:s,stroke:m,"stroke-width":h,points:V}),2,{viewBox:"0 0 "+g[0]+" "+g[1],preserveAspectRatio:"none",style:{position:"absolute",top:0,left:0,right:0,bottom:0,overflow:"hidden"}}),2,Object.assign({},t),null,e.ref))}})))},r}(o.Component);d.defaultHooks=i.pureComponentHooks;var s={Line:c.tridentVersion<=4?function(e){return null}:d};t.Chart=s},function(e,t,n){"use strict";t.__esModule=!0,t.AiAirlock=void 0;var o=n(1),r=n(3),a=n(2);t.AiAirlock=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c={2:{color:"good",localStatusText:"Offline"},1:{color:"average",localStatusText:"Caution"},0:{color:"bad",localStatusText:"Optimal"}},l=c[i.power.main]||c[0],u=c[i.power.backup]||c[0],d=c[i.shock]||c[0];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main",color:l.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.main,content:"Disrupt",onClick:function(){return n("disrupt-main")}}),children:[i.power.main?"Online":"Offline"," ",i.wires.main_1&&i.wires.main_2?i.power.main_timeleft>0&&"["+i.power.main_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Backup",color:u.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.backup,content:"Disrupt",onClick:function(){return n("disrupt-backup")}}),children:[i.power.backup?"Online":"Offline"," ",i.wires.backup_1&&i.wires.backup_2?i.power.backup_timeleft>0&&"["+i.power.backup_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Electrify",color:d.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",disabled:!(i.wires.shock&&0===i.shock),content:"Restore",onClick:function(){return n("shock-restore")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Temporary",onClick:function(){return n("shock-temp")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Permanent",onClick:function(){return n("shock-perm")}})],4),children:[2===i.shock?"Safe":"Electrified"," ",(i.wires.shock?i.shock_timeleft>0&&"["+i.shock_timeleft+"s]":"[Wires have been cut!]")||-1===i.shock_timeleft&&"[Permanent]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access and Door Control",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID Scan",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.id_scanner?"power-off":"times",content:i.id_scanner?"Enabled":"Disabled",selected:i.id_scanner,disabled:!i.wires.id_scanner,onClick:function(){return n("idscan-toggle")}}),children:!i.wires.id_scanner&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Access",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.emergency?"power-off":"times",content:i.emergency?"Enabled":"Disabled",selected:i.emergency,onClick:function(){return n("emergency-toggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolts",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.locked?"lock":"unlock",content:i.locked?"Lowered":"Raised",selected:i.locked,disabled:!i.wires.bolts,onClick:function(){return n("bolt-toggle")}}),children:!i.wires.bolts&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolt Lights",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.lights?"power-off":"times",content:i.lights?"Enabled":"Disabled",selected:i.lights,disabled:!i.wires.lights,onClick:function(){return n("light-toggle")}}),children:!i.wires.lights&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Force Sensors",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.safe?"power-off":"times",content:i.safe?"Enabled":"Disabled",selected:i.safe,disabled:!i.wires.safe,onClick:function(){return n("safe-toggle")}}),children:!i.wires.safe&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Timing Safety",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.speed?"power-off":"times",content:i.speed?"Enabled":"Disabled",selected:i.speed,disabled:!i.wires.timing,onClick:function(){return n("speed-toggle")}}),children:!i.wires.timing&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Control",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.opened?"sign-out-alt":"sign-in-alt",content:i.opened?"Open":"Closed",selected:i.opened,disabled:i.locked||i.welded,onClick:function(){return n("open-close")}}),children:!(!i.locked&&!i.welded)&&(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("[Door is "),i.locked?"bolted":"",i.locked&&i.welded?" and ":"",i.welded?"welded":"",(0,o.createTextVNode)("!]")],0)})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.AirAlarm=void 0;var o=n(1),r=n(20),a=n(31),i=n(3),c=n(2),l=n(37),u=n(69);t.AirAlarm=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.data,c=a.locked&&!a.siliconUser;return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.InterfaceLockNoticeBox,{siliconUser:a.siliconUser,locked:a.locked,onLockStatusChange:function(){return r("lock")}}),(0,o.createComponentVNode)(2,d,{state:t}),!c&&(0,o.createComponentVNode)(2,p,{state:t})],0)};var d=function(e){var t=(0,i.useBackend)(e).data,n=(t.environment_data||[]).filter((function(e){return e.value>=.01})),a={0:{color:"good",localStatusText:"Optimal"},1:{color:"average",localStatusText:"Caution"},2:{color:"bad",localStatusText:"Danger (Internals Required)"}},l=a[t.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.Section,{title:"Air Status",children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[n.length>0&&(0,o.createFragment)([n.map((function(e){var t=a[e.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:e.name,color:t.color,children:[(0,r.toFixed)(e.value,2),e.unit]},e.name)})),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Local status",color:l.color,children:l.localStatusText}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Area status",color:t.atmos_alarm||t.fire_alarm?"bad":"good",children:(t.atmos_alarm?"Atmosphere Alarm":t.fire_alarm&&"Fire Alarm")||"Nominal"})],0)||(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Cannot obtain air sample for analysis."}),!!t.emagged&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Safety measures offline. Device may exhibit abnormal behavior."})]})})},s={home:{title:"Air Controls",component:function(){return m}},vents:{title:"Vent Controls",component:function(){return f}},scrubbers:{title:"Scrubber Controls",component:function(){return C}},modes:{title:"Operating Mode",component:function(){return b}},thresholds:{title:"Alarm Thresholds",component:function(){return v}}},p=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.config,l=s[a.screen]||s.home,u=l.component();return(0,o.createComponentVNode)(2,c.Section,{title:l.title,buttons:"home"!==a.screen&&(0,o.createComponentVNode)(2,c.Button,{icon:"arrow-left",content:"Back",onClick:function(){return r("tgui:view",{screen:"home"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},m=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data,a=r.mode,l=r.atmos_alarm;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:l?"exclamation-triangle":"exclamation",color:l&&"caution",content:"Area Atmosphere Alarm",onClick:function(){return n(l?"reset":"alarm")}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:3===a?"exclamation-triangle":"exclamation",color:3===a&&"danger",content:"Panic Siphon",onClick:function(){return n("mode",{mode:3===a?1:3})}}),(0,o.createComponentVNode)(2,c.Box,{mt:2}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"Vent Controls",onClick:function(){return n("tgui:view",{screen:"vents"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"filter",content:"Scrubber Controls",onClick:function(){return n("tgui:view",{screen:"scrubbers"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"cog",content:"Operating Mode",onClick:function(){return n("tgui:view",{screen:"modes"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"chart-bar",content:"Alarm Thresholds",onClick:function(){return n("tgui:view",{screen:"thresholds"})}})],4)},f=function(e){var t=e.state,n=(0,i.useBackend)(e).data.vents;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},h=function(e){var t=e.id_tag,n=e.long_name,r=e.power,l=e.checks,u=e.excheck,d=e.incheck,s=e.direction,p=e.external,m=e.internal,f=e.extdefault,h=e.intdefault,C=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(n),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:r?"power-off":"times",selected:r,content:r?"On":"Off",onClick:function(){return C("power",{id_tag:t,val:Number(!r)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:"release"===s?"Pressurizing":"Releasing"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,c.Button,{icon:"sign-in-alt",content:"Internal",selected:d,onClick:function(){return C("incheck",{id_tag:t,val:l})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"External",selected:u,onClick:function(){return C("excheck",{id_tag:t,val:l})}})]}),!!d&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Internal Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(m),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_internal_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:h,content:"Reset",onClick:function(){return C("reset_internal_pressure",{id_tag:t})}})]}),!!u&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"External Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(p),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_external_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:f,content:"Reset",onClick:function(){return C("reset_external_pressure",{id_tag:t})}})]})]})})},C=function(e){var t=e.state,n=(0,i.useBackend)(e).data.scrubbers;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},g=function(e){var t=e.long_name,n=e.power,r=e.scrubbing,u=e.id_tag,d=e.widenet,s=e.filter_types,p=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(t),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:n?"power-off":"times",content:n?"On":"Off",selected:n,onClick:function(){return p("power",{id_tag:u,val:Number(!n)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,c.Button,{icon:r?"filter":"sign-in-alt",color:r||"danger",content:r?"Scrubbing":"Siphoning",onClick:function(){return p("scrubbing",{id_tag:u,val:Number(!r)})}}),(0,o.createComponentVNode)(2,c.Button,{icon:d?"expand":"compress",selected:d,content:d?"Expanded range":"Normal range",onClick:function(){return p("widenet",{id_tag:u,val:Number(!d)})}})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Filters",children:r&&s.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,l.getGasLabel)(e.gas_id,e.gas_name),title:e.gas_name,selected:e.enabled,onClick:function(){return p("toggle_filter",{id_tag:u,val:e.gas_id})}},e.gas_id)}))||"N/A"})]})})},b=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data.modes;return r&&0!==r.length?r.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:e.selected?"check-square-o":"square-o",selected:e.selected,color:e.selected&&e.danger&&"danger",content:e.name,onClick:function(){return n("mode",{mode:e.mode})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1})],4,e.mode)})):"Nothing to show"},v=function(e){var t=(0,i.useBackend)(e),n=t.act,a=t.data.thresholds;return(0,o.createVNode)(1,"table","LabeledList",[(0,o.createVNode)(1,"thead",null,(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","color-bad","min2",16),(0,o.createVNode)(1,"td","color-average","min1",16),(0,o.createVNode)(1,"td","color-average","max1",16),(0,o.createVNode)(1,"td","color-bad","max2",16)],4),2),(0,o.createVNode)(1,"tbody",null,a.map((function(e){return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","LabeledList__label",e.name,0),e.settings.map((function(e){return(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,c.Button,{content:(0,r.toFixed)(e.selected,2),onClick:function(){return n("threshold",{env:e.env,"var":e.val})}}),2,null,e.val)}))],0,null,e.name)})),0)],4,{style:{width:"100%"}})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirlockElectronics=void 0;var o=n(1),r=n(3),a=n(2);t.AirlockElectronics=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.regions||[],l={0:{icon:"times-circle"},1:{icon:"stop-circle"},2:{icon:"check-circle"}};return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Main",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access Required",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.oneAccess?"unlock":"lock",content:i.oneAccess?"One":"All",onClick:function(){return n("one_access")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mass Modify",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"check-double",content:"Grant All",onClick:function(){return n("grant_all")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Clear All",onClick:function(){return n("clear_all")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Unrestricted Access",children:[(0,o.createComponentVNode)(2,a.Button,{icon:1&i.unres_direction?"check-square-o":"square-o",content:"North",selected:1&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"1"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:2&i.unres_direction?"check-square-o":"square-o",content:"East",selected:2&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"2"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:4&i.unres_direction?"check-square-o":"square-o",content:"South",selected:4&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"4"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:8&i.unres_direction?"check-square-o":"square-o",content:"West",selected:8&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"8"})}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access",children:(0,o.createComponentVNode)(2,a.Box,{height:"261px",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:c.map((function(e){var t=e.name,r=e.accesses||[],i=l[function(e){var t=!1,n=!1;return e.forEach((function(e){e.req?t=!0:n=!0})),!t&&n?0:t&&n?1:2}(r)].icon;return(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:i,label:t,children:function(){return r.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:e.req?"check-square-o":"square-o",content:e.name,selected:e.req,onClick:function(){return n("set",{access:e.id})}})},e.id)}))}},t)}))})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Apc=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Apc=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u={2:{color:"good",externalPowerText:"External Power",chargingText:"Fully Charged"},1:{color:"average",externalPowerText:"Low External Power",chargingText:"Charging"},0:{color:"bad",externalPowerText:"No External Power",chargingText:"Not Charging"}},d={1:{icon:"terminal",content:"Override Programming",action:"hack"},2:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"},3:{icon:"caret-square-left",content:"Return to Main Core",action:"deoccupy"},4:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"}},s=u[c.externalPower]||u[0],p=u[c.chargingStatus]||u[0],m=c.powerChannels||[],f=d[c.malfStatus]||d[0],h=c.powerCellStatus/100;return c.failTime>0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createVNode)(1,"b",null,(0,o.createVNode)(1,"h3",null,"SYSTEM FAILURE",16),2),(0,o.createVNode)(1,"i",null,"I/O regulators malfunction detected! Waiting for system reboot...",16),(0,o.createVNode)(1,"br"),"Automatic reboot in ",c.failTime," seconds...",(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reboot Now",onClick:function(){return n("reboot")}})]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:c.siliconUser,locked:c.locked,onLockStatusChange:function(){return n("lock")}}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main Breaker",color:s.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",content:c.isOperating?"On":"Off",selected:c.isOperating&&!l,disabled:l,onClick:function(){return n("breaker")}}),children:["[ ",s.externalPowerText," ]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power Cell",children:(0,o.createComponentVNode)(2,a.ProgressBar,{color:"good",value:h})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",color:p.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.chargeMode?"sync":"close",content:c.chargeMode?"Auto":"Off",disabled:l,onClick:function(){return n("charge")}}),children:["[ ",p.chargingText," ]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Channels",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[m.map((function(e){var t=e.topicParams;return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.title,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,mx:2,color:e.status>=2?"good":"bad",children:e.status>=2?"On":"Off"}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:!l&&(1===e.status||3===e.status),disabled:l,onClick:function(){return n("channel",t.auto)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:"On",selected:!l&&2===e.status,disabled:l,onClick:function(){return n("channel",t.on)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:!l&&0===e.status,disabled:l,onClick:function(){return n("channel",t.off)}})],4),children:e.powerLoad},e.title)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Total Load",children:(0,o.createVNode)(1,"b",null,c.totalLoad,0)})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Misc",buttons:!!c.siliconUser&&(0,o.createFragment)([!!c.malfStatus&&(0,o.createComponentVNode)(2,a.Button,{icon:f.icon,content:f.content,color:"bad",onClick:function(){return n(f.action)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Overload",onClick:function(){return n("overload")}})],0),children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cover Lock",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.coverLocked?"lock":"unlock",content:c.coverLocked?"Engaged":"Disengaged",disabled:l,onClick:function(){return n("cover")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.emergencyLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("emergency_lighting")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Night Shift Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.nightshiftLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("toggle_nightshift")}})})]}),c.hijackable&&(0,o.createComponentVNode)(2,a.Section,{title:"Hijacking",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"unlock",content:"Hijack",disabled:c.hijacker,onClick:function(){return n("hijack")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lockdown",disabled:!c.lockdownavail,onClick:function(){return n("lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Drain",disabled:!c.drainavail,onClick:function(){return n("drain")}})],4)})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosAlertConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.priority||[],l=i.minor||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Alarms",children:(0,o.createVNode)(1,"ul",null,[c.length>0?c.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"bad",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Priority Alerts",16),l.length>0?l.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"average",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Minor Alerts",16)],0)})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosControlConsole=void 0;var o=n(1),r=n(23),a=n(20),i=n(3),c=n(2);t.AtmosControlConsole=function(e){var t=(0,i.useBackend)(e),n=t.act,l=t.data,u=l.sensors||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Section,{title:!!l.tank&&u[0].long_name,children:u.map((function(e){var t=e.gases||{};return(0,o.createComponentVNode)(2,c.Section,{title:!l.tank&&e.long_name,level:2,children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure",children:(0,a.toFixed)(e.pressure,2)+" kPa"}),!!e.temperature&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Temperature",children:(0,a.toFixed)(e.temperature,2)+" K"}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,children:(0,a.toFixed)(e,2)+"%"})}))(t)]})},e.id_tag)}))}),l.tank&&(0,o.createComponentVNode)(2,c.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"undo",content:"Reconnect",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Injector",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.inputting?"power-off":"times",content:l.inputting?"Injecting":"Off",selected:l.inputting,onClick:function(){return n("input")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Rate",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:l.inputRate,unit:"L/s",width:"63px",minValue:0,maxValue:200,suppressFlicker:2e3,onChange:function(e,t){return n("rate",{rate:t})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Regulator",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.outputting?"power-off":"times",content:l.outputting?"Open":"Closed",selected:l.outputting,onClick:function(){return n("output")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Pressure",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:parseFloat(l.outputPressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,suppressFlicker:2e3,onChange:function(e,t){return n("pressure",{pressure:t})}})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosFilter=void 0;var o=n(1),r=n(3),a=n(2),i=n(37);t.AtmosFilter=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.filter_types||[];return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(c.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onDrag:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:c.rate===c.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Filter",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:e.selected,content:(0,i.getGasLabel)(e.id,e.name),onClick:function(){return n("filter",{mode:e.id})}},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosMixer=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosMixer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.set_pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.set_pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 1",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node1_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node1",{concentration:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 2",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node2_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node2",{concentration:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosPump=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosPump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),i.max_rate?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onChange:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.rate===i.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}):(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BankMachine=void 0;var o=n(1),r=n(3),a=n(2);t.BankMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.current_balance,l=i.siphoning,u=i.station_name;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:u+" Vault",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Balance",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"times":"sync",content:l?"Stop Siphoning":"Siphon Credits",selected:l,onClick:function(){return n(l?"halt":"siphon")}}),children:c+" cr"})})}),(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Authorized personnel only"})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BluespaceArtillery=void 0;var o=n(1),r=n(3),a=n(2);t.BluespaceArtillery=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.notice,l=i.connected,u=i.unlocked,d=i.target;return(0,o.createFragment)([!!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:c}),l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"crosshairs",disabled:!u,onClick:function(){return n("recalibrate")}}),children:(0,o.createComponentVNode)(2,a.Box,{color:d?"average":"bad",fontSize:"25px",children:d||"No Target Set"})}),(0,o.createComponentVNode)(2,a.Section,{children:u?(0,o.createComponentVNode)(2,a.Box,{style:{margin:"auto"},children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"FIRE",color:"bad",disabled:!d,fontSize:"30px",textAlign:"center",lineHeight:"46px",onClick:function(){return n("fire")}})}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{color:"bad",fontSize:"18px",children:"Bluespace artillery is currently locked."}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"Awaiting authorization via keycard reader from at minimum two station heads."})],4)})],4):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Maintenance",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:"Complete Deployment",onClick:function(){return n("build")}})})})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Bepis=void 0;var o=n(1),r=(n(31),n(19)),a=n(2);t.Bepis=function(e){var t=e.state,n=t.config,i=t.data,c=n.ref,l=i.amount;return(0,o.createComponentVNode)(2,a.Section,{title:"Business Exploration Protocol Incubation Sink",children:[(0,o.createComponentVNode)(2,a.Section,{title:"Information",backgroundColor:"#450F44",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.manual_power?"Off":"On",selected:!i.manual_power,onClick:function(){return(0,r.act)(c,"toggle_power")}}),children:"All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. performs hundreds of tests a second using electrical and financial resources to invent new products, or discover new technologies otherwise overlooked for being too risky or too niche to produce!"}),(0,o.createComponentVNode)(2,a.Section,{title:"Payer's Account",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"redo-alt",content:"Reset Account",onClick:function(){return(0,r.act)(c,"account_reset")}}),children:["Console is currently being operated by ",i.account_owner?i.account_owner:"no one","."]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Stored Data and Statistics",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposited Credits",children:i.stored_cash}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Investment Variability",children:[i.accuracy_percentage,"%"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Innovation Bonus",children:i.positive_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Risk Offset",color:"bad",children:i.negative_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposit Amount",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l,unit:"Credits",minValue:100,maxValue:3e4,step:100,stepPixelSize:2,onChange:function(e,t){return(0,r.act)(c,"amount",{amount:t})}})})]})}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"donate",content:"Deposit Credits",disabled:1===i.manual_power||1===i.silicon_check,onClick:function(){return(0,r.act)(c,"deposit_cash")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Withdraw Credits",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"withdraw_cash")}})]})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Market Data and Analysis",children:[(0,o.createComponentVNode)(2,a.Box,{children:["Average technology cost: ",i.mean_value]}),i.error_name&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Previous Failure Reason: Deposited cash value too low. Please insert more money for future success."}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"microscope",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"begin_experiment")},content:"Begin Testing"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BorgPanel=void 0;var o=n(1),r=n(3),a=n(2);t.BorgPanel=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.borg||{},l=i.cell||{},u=l.charge/l.maxcharge,d=i.channels||[],s=i.modules||[],p=i.upgrades||[],m=i.ais||[],f=i.laws||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:c.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Rename",onClick:function(){return n("rename")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.emagged?"check-square-o":"square-o",content:"Emagged",selected:c.emagged,onClick:function(){return n("toggle_emagged")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.lockdown?"check-square-o":"square-o",content:"Locked Down",selected:c.lockdown,onClick:function(){return n("toggle_lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.scrambledcodes?"check-square-o":"square-o",content:"Scrambled Codes",selected:c.scrambledcodes,onClick:function(){return n("toggle_scrambledcodes")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:[l.missing?(0,o.createVNode)(1,"span","color-bad","No cell installed",16):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,content:l.charge+" / "+l.maxcharge}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("set_charge")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Change",onClick:function(){return n("change_cell")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Remove",color:"bad",onClick:function(){return n("remove_cell")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radio Channels",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_radio",{channel:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Module",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:c.active_module===e.type?"check-square-o":"square-o",content:e.name,selected:c.active_module===e.type,onClick:function(){return n("setmodule",{module:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Upgrades",children:p.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_upgrade",{upgrade:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Master AI",children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.connected?"check-square-o":"square-o",content:e.name,selected:e.connected,onClick:function(){return n("slavetoai",{slavetoai:e.ref})}},e.ref)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Laws",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.lawupdate?"check-square-o":"square-o",content:"Lawsync",selected:c.lawupdate,onClick:function(){return n("toggle_lawupdate")}}),children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e},e)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BrigTimer=void 0;var o=n(1),r=n(3),a=n(2);t.BrigTimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Cell Timer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:i.timing?"Stop":"Start",selected:i.timing,onClick:function(){return n(i.timing?"stop":"start")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:i.flash_charging?"Recharging":"Flash",disabled:i.flash_charging,onClick:function(){return n("flash")}})],4),children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",onClick:function(){return n("time",{adjust:-600})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",onClick:function(){return n("time",{adjust:-100})}})," ",String(i.minutes).padStart(2,"0"),":",String(i.seconds).padStart(2,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",onClick:function(){return n("time",{adjust:100})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",onClick:function(){return n("time",{adjust:600})}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Short",onClick:function(){return n("preset",{preset:"short"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Medium",onClick:function(){return n("preset",{preset:"medium"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Long",onClick:function(){return n("preset",{preset:"long"})}})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Canister=void 0;var o=n(1),r=n(3),a=n(2);t.Canister=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:["The regulator ",i.hasHoldingTank?"is":"is not"," connected to a tank."]}),(0,o.createComponentVNode)(2,a.Section,{title:"Canister",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Relabel",onClick:function(){return n("relabel")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.tankPressure})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:i.portConnected?"good":"average",content:i.portConnected?"Connected":"Not Connected"}),!!i.isPrototype&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.restricted?"lock":"unlock",color:"caution",content:i.restricted?"Restricted to Engineering":"Public",onClick:function(){return n("restricted")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Valve",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Release Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.releasePressure/(i.maxReleasePressure-i.minReleasePressure),children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.releasePressure})," kPa"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"undo",disabled:i.releasePressure===i.defaultReleasePressure,content:"Reset",onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:i.releasePressure<=i.minReleasePressure,content:"Min",onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("pressure",{pressure:"input"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:i.releasePressure>=i.maxReleasePressure,content:"Max",onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Valve",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.valveOpen?"unlock":"lock",color:i.valveOpen?i.hasHoldingTank?"caution":"danger":null,content:i.valveOpen?"Open":"Closed",onClick:function(){return n("valve")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",buttons:!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",color:i.valveOpen&&"danger",content:"Eject",onClick:function(){return n("eject")}}),children:[!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:i.holdingTank.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.holdingTank.tankPressure})," kPa"]})]}),!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Holding Tank"})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoExpress=t.Cargo=void 0;var o=n(1),r=n(23),a=n(19),i=n(2),c=n(69);t.Cargo=function(e){var t=e.state,n=t.config,r=t.data,c=n.ref,s=r.supplies||{},p=r.requests||[],m=r.cart||[],f=m.reduce((function(e,t){return e+t.cost}),0),h=!r.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:1,children:[0===m.length&&"Cart is empty",1===m.length&&"1 item",m.length>=2&&m.length+" items"," ",f>0&&"("+f+" cr)"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"transparent",content:"Clear",onClick:function(){return(0,a.act)(c,"clear")}})],4);return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle",children:r.docked&&!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{content:r.location,onClick:function(){return(0,a.act)(c,"send")}})||r.location}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"CentCom Message",children:r.message}),r.loan&&!r.requestonly?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Loan",children:r.loan_dispatched?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Loaned to Centcom"}):(0,o.createComponentVNode)(2,i.Button,{content:"Loan Shuttle",disabled:!(r.away&&r.docked),onClick:function(){return(0,a.act)(c,"loan")}})}):""]})}),(0,o.createComponentVNode)(2,i.Tabs,{mt:2,children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Catalog",icon:"list",lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Catalog",buttons:h,children:(0,o.createComponentVNode)(2,l,{state:t,supplies:s})})}},"catalog"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Requests ("+p.length+")",icon:"envelope",highlight:p.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Active Requests",buttons:!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Clear",color:"transparent",onClick:function(){return(0,a.act)(c,"denyall")}}),children:(0,o.createComponentVNode)(2,u,{state:t,requests:p})})}},"requests"),!r.requestonly&&(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Checkout ("+m.length+")",icon:"shopping-cart",highlight:m.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Current Cart",buttons:h,children:(0,o.createComponentVNode)(2,d,{state:t,cart:m})})}},"cart")]})],4)};var l=function(e){var t=e.state,n=e.supplies,c=t.config,l=t.data,u=c.ref,d=function(e){var t=n[e].packs;return(0,o.createVNode)(1,"table","LabeledList",t.map((function(e){return(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[e.name,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.small_item&&(0,o.createFragment)([(0,o.createTextVNode)("Small Item")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.access&&(0,o.createFragment)([(0,o.createTextVNode)("Restrictions Apply")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:(l.self_paid?Math.round(1.1*e.cost):e.cost)+" credits",tooltip:e.desc,tooltipPosition:"left",onClick:function(){return(0,a.act)(u,"add",{id:e.id})}}),2)],4,null,e.name)})),0)};return(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e){var t=e.name;return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:t,children:d},t)}))(n)})},u=function(e){var t=e.state,n=e.requests,r=t.config,c=t.data,l=r.ref;return 0===n.length?(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"No Requests"}):(0,o.createVNode)(1,"table","LabeledList",n.map((function(e){return(0,o.createFragment)([(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[(0,o.createTextVNode)("#"),e.id,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__content",e.object,0),(0,o.createVNode)(1,"td","LabeledList__cell",[(0,o.createTextVNode)("By "),(0,o.createVNode)(1,"b",null,e.orderer,0)],4),(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createVNode)(1,"i",null,e.reason,0),2),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",[e.cost,(0,o.createTextVNode)(" credits"),(0,o.createTextVNode)(" "),!c.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"check",color:"good",onClick:function(){return(0,a.act)(l,"approve",{id:e.id})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"bad",onClick:function(){return(0,a.act)(l,"deny",{id:e.id})}})],4)],0)],4)],4,e.id)})),0)},d=function(e){var t=e.state,n=e.cart,r=t.config,c=t.data,l=r.ref;return(0,o.createFragment)([0===n.length&&"Nothing in cart",n.length>0&&(0,o.createComponentVNode)(2,i.LabeledList,{children:n.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:"#"+e.id,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:2,children:[!!e.paid&&(0,o.createVNode)(1,"b",null,"[Paid Privately]",16)," ",e.cost," credits"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus",onClick:function(){return(0,a.act)(l,"remove",{id:e.id})}})],4),children:e.object},e.id)}))}),n.length>0&&!c.requestonly&&(0,o.createComponentVNode)(2,i.Box,{mt:2,children:1===c.away&&1===c.docked&&(0,o.createComponentVNode)(2,i.Button,{color:"green",style:{"line-height":"28px",padding:"0 12px"},content:"Confirm the order",onClick:function(){return(0,a.act)(l,"send")}})||(0,o.createComponentVNode)(2,i.Box,{opacity:.5,children:["Shuttle in ",c.location,"."]})})],0)};t.CargoExpress=function(e){var t=e.state,n=t.config,r=t.data,u=n.ref,d=r.supplies||{};return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox,{siliconUser:r.siliconUser,locked:r.locked,onLockStatusChange:function(){return(0,a.act)(u,"lock")},accessText:"a QM-level ID card"}),!r.locked&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo Express",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Landing Location",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Cargo Bay",selected:!r.usingBeacon,onClick:function(){return(0,a.act)(u,"LZCargo")}}),(0,o.createComponentVNode)(2,i.Button,{selected:r.usingBeacon,disabled:!r.hasBeacon,onClick:function(){return(0,a.act)(u,"LZBeacon")},children:[r.beaconzone," (",r.beaconName,")"]}),(0,o.createComponentVNode)(2,i.Button,{content:r.printMsg,disabled:!r.canBuyBeacon,onClick:function(){return(0,a.act)(u,"printBeacon")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Notice",children:r.message})]})}),(0,o.createComponentVNode)(2,l,{state:t,supplies:d})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.CellularEmporium=void 0;var o=n(1),r=n(3),a=n(2);t.CellularEmporium=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.abilities;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Genetic Points",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Readapt",disabled:!i.can_readapt,onClick:function(){return n("readapt")}}),children:i.genetic_points_remaining})})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.name,buttons:(0,o.createFragment)([e.dna_cost," ",(0,o.createComponentVNode)(2,a.Button,{content:e.owned?"Evolved":"Evolve",selected:e.owned,onClick:function(){return n("evolve",{name:e.name})}})],0),children:[e.desc,(0,o.createComponentVNode)(2,a.Box,{color:"good",children:e.helptext})]},e.name)}))})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CentcomPodLauncher=void 0;var o=n(1),r=(n(31),n(3)),a=n(2);t.CentcomPodLauncher=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:"To use this, simply spawn the atoms you want in one of the five Centcom Supplypod Bays. Items in the bay will then be launched inside your supplypod, one turf-full at a time! You can optionally use the following buttons to configure how the supplypod acts."}),(0,o.createComponentVNode)(2,a.Section,{title:"Centcom Pod Customization (To be used against Helen Weinstein)",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Supply Bay",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bay #1",selected:1===i.bayNumber,onClick:function(){return n("bay1")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #2",selected:2===i.bayNumber,onClick:function(){return n("bay2")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #3",selected:3===i.bayNumber,onClick:function(){return n("bay3")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #4",selected:4===i.bayNumber,onClick:function(){return n("bay4")}}),(0,o.createComponentVNode)(2,a.Button,{content:"ERT Bay",selected:5===i.bayNumber,tooltip:"This bay is located on the western edge of CentCom. Its the\nglass room directly west of where ERT spawn, and south of the\nCentCom ferry. Useful for launching ERT/Deathsquads/etc. onto\nthe station via drop pods.",onClick:function(){return n("bay5")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleport to",children:[(0,o.createComponentVNode)(2,a.Button,{content:i.bay,onClick:function(){return n("teleportCentcom")}}),(0,o.createComponentVNode)(2,a.Button,{content:i.oldArea?i.oldArea:"Where you were",disabled:!i.oldArea,onClick:function(){return n("teleportBack")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Clone Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:"Launch Clones",selected:i.launchClone,tooltip:"Choosing this will create a duplicate of the item to be\nlaunched in Centcom, allowing you to send one type of item\nmultiple times. Either way, the atoms are forceMoved into\nthe supplypod after it lands (but before it opens).",onClick:function(){return n("launchClone")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Launch style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Ordered",selected:1===i.launchChoice,tooltip:'Instead of launching everything in the bay at once, this\nwill "scan" things (one turf-full at a time) in order, left\nto right and top to bottom. undoing will reset the "scanner"\nto the top-leftmost position.',onClick:function(){return n("launchOrdered")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Random",selected:2===i.launchChoice,tooltip:"Instead of launching everything in the bay at once, this\nwill launch one random turf of items at a time.",onClick:function(){return n("launchRandom")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Explosion",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Size",selected:1===i.explosionChoice,tooltip:"This will cause an explosion of whatever size you like\n(including flame range) to occur as soon as the supplypod\nlands. Dont worry, supply-pods are explosion-proof!",onClick:function(){return n("explosionCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Adminbus",selected:2===i.explosionChoice,tooltip:"This will cause a maxcap explosion (dependent on server\nconfig) to occur as soon as the supplypod lands. Dont worry,\nsupply-pods are explosion-proof!",onClick:function(){return n("explosionBus")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Damage",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Damage",selected:1===i.damageChoice,tooltip:"Anyone caught under the pod when it lands will be dealt\nthis amount of brute damage. Sucks to be them!",onClick:function(){return n("damageCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gib",selected:2===i.damageChoice,tooltip:"This will attempt to gib any mob caught under the pod when\nit lands, as well as dealing a nice 5000 brute damage. Ya\nknow, just to be sure!",onClick:function(){return n("damageGib")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Effects",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Stun",selected:i.effectStun,tooltip:"Anyone who is on the turf when the supplypod is launched\nwill be stunned until the supplypod lands. They cant get\naway that easy!",onClick:function(){return n("effectStun")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Delimb",selected:i.effectLimb,tooltip:"This will cause anyone caught under the pod to lose a limb,\nexcluding their head.",onClick:function(){return n("effectLimb")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Yeet Organs",selected:i.effectOrgans,tooltip:"This will cause anyone caught under the pod to lose all\ntheir limbs and organs in a spectacular fashion.",onClick:function(){return n("effectOrgans")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Movement",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bluespace",selected:i.effectBluespace,tooltip:"Gives the supplypod an advanced Bluespace Recyling Device.\nAfter opening, the supplypod will be warped directly to the\nsurface of a nearby NT-designated trash planet (/r/ss13).",onClick:function(){return n("effectBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Stealth",selected:i.effectStealth,tooltip:'This hides the red target icon from appearing when you\nlaunch the supplypod. Combos well with the "Invisible"\nstyle. Sneak attack, go!',onClick:function(){return n("effectStealth")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Quiet",selected:i.effectQuiet,tooltip:"This will keep the supplypod from making any sounds, except\nfor those specifically set by admins in the Sound section.",onClick:function(){return n("effectQuiet")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Reverse Mode",selected:i.effectReverse,tooltip:"This pod will not send any items. Instead, after landing,\nthe supplypod will close (similar to a normal closet closing),\nand then launch back to the right centcom bay to drop off any\nnew contents.",onClick:function(){return n("effectReverse")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile Mode",selected:i.effectMissile,tooltip:"This pod will not send any items. Instead, it will immediately\ndelete after landing (Similar visually to setting openDelay\n& departDelay to 0, but this looks nicer). Useful if you just\nwanna fuck some shit up. Combos well with the Missile style.",onClick:function(){return n("effectMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Any Descent Angle",selected:i.effectCircle,tooltip:"This will make the supplypod come in from any angle. Im not\nsure why this feature exists, but here it is.",onClick:function(){return n("effectCircle")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Machine Gun Mode",selected:i.effectBurst,tooltip:"This will make each click launch 5 supplypods inaccuratly\naround the target turf (a 3x3 area). Combos well with the\nMissile Mode if you dont want shit lying everywhere after.",onClick:function(){return n("effectBurst")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Specific Target",selected:i.effectTarget,tooltip:"This will make the supplypod target a specific atom, instead\nof the mouses position. Smiting does this automatically!",onClick:function(){return n("effectTarget")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name/Desc",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Name/Desc",selected:i.effectName,tooltip:"Allows you to add a custom name and description.",onClick:function(){return n("effectName")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Alert Ghosts",selected:i.effectAnnounce,tooltip:"Alerts ghosts when a pod is launched. Useful if some dumb\nshit is aboutta come outta the pod.",onClick:function(){return n("effectAnnounce")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Sound",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Sound",selected:i.fallingSound,tooltip:"Choose a sound to play as the pod falls. Note that for this\nto work right you should know the exact length of the sound,\nin seconds.",onClick:function(){return n("fallSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Sound",selected:i.landingSound,tooltip:"Choose a sound to play when the pod lands.",onClick:function(){return n("landingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Sound",selected:i.openingSound,tooltip:"Choose a sound to play when the pod opens.",onClick:function(){return n("openingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Sound",selected:i.leavingSound,tooltip:"Choose a sound to play when the pod departs (whether that be\ndelection in the case of a bluespace pod, or leaving for\ncentcom for a reversing pod).",onClick:function(){return n("leavingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Admin Sound Volume",selected:i.soundVolume,tooltip:"Choose the volume for the sound to play at. Default values\nare between 1 and 100, but hey, do whatever. Im a tooltip,\nnot a cop.",onClick:function(){return n("soundVolume")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Timers",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Duration",selected:4!==i.fallDuration,tooltip:"Set how long the animation for the pod falling lasts. Create\ndramatic, slow falling pods!",onClick:function(){return n("fallDuration")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Time",selected:20!==i.landingDelay,tooltip:"Choose the amount of time it takes for the supplypod to hit\nthe station. By default this value is 0.5 seconds.",onClick:function(){return n("landingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Time",selected:30!==i.openingDelay,tooltip:"Choose the amount of time it takes for the supplypod to open\nafter landing. Useful for giving whatevers inside the pod a\nnice dramatic entrance! By default this value is 3 seconds.",onClick:function(){return n("openingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Time",selected:30!==i.departureDelay,tooltip:"Choose the amount of time it takes for the supplypod to leave\nafter landing. By default this value is 3 seconds.",onClick:function(){return n("departureDelay")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.styleChoice,tooltip:"Same color scheme as the normal station-used supplypods",onClick:function(){return n("styleStandard")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.styleChoice,tooltip:"The same as the stations upgraded blue-and-white\nBluespace Supplypods",onClick:function(){return n("styleBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate",selected:4===i.styleChoice,tooltip:"A menacing black and blood-red. Great for sending meme-ops\nin style!",onClick:function(){return n("styleSyndie")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Deathsquad",selected:5===i.styleChoice,tooltip:"A menacing black and dark blue. Great for sending deathsquads\nin style!",onClick:function(){return n("styleBlue")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Cult Pod",selected:6===i.styleChoice,tooltip:"A blood and rune covered cult pod!",onClick:function(){return n("styleCult")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile",selected:7===i.styleChoice,tooltip:"A large missile. Combos well with a missile mode, so the\nmissile doesnt stick around after landing.",onClick:function(){return n("styleMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate Missile",selected:8===i.styleChoice,tooltip:"A large blood-red missile. Combos well with missile mode,\nso the missile doesnt stick around after landing.",onClick:function(){return n("styleSMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Supply Crate",selected:9===i.styleChoice,tooltip:"A large, dark-green military supply crate.",onClick:function(){return n("styleBox")}}),(0,o.createComponentVNode)(2,a.Button,{content:"HONK",selected:10===i.styleChoice,tooltip:"A colorful, clown inspired look.",onClick:function(){return n("styleHONK")}}),(0,o.createComponentVNode)(2,a.Button,{content:"~Fruit",selected:11===i.styleChoice,tooltip:"For when an orange is angry",onClick:function(){return n("styleFruit")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Invisible",selected:12===i.styleChoice,tooltip:'Makes the supplypod invisible! Useful for when you want to\nuse this feature with a gateway or something. Combos well\nwith the "Stealth" and "Quiet Landing" effects.',onClick:function(){return n("styleInvisible")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gondola",selected:13===i.styleChoice,tooltip:"This gondola can control when he wants to deliver his supplies\nif he has a smart enough mind, so offer up his body to ghosts\nfor maximum enjoyment. (Make sure to turn off bluespace and\nset a arbitrarily high open-time if you do!",onClick:function(){return n("styleGondola")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Show Contents (See Through Pod)",selected:14===i.styleChoice,tooltip:"By selecting this, the pod will instead look like whatevers\ninside it (as if it were the contents falling by themselves,\nwithout a pod). Useful for launching mechs at the station\nand standing tall as they soar in from the heavens.",onClick:function(){return n("styleSeeThrough")}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:i.numObjects+" turfs in "+i.bay,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"undo Pody Bay",tooltip:"Manually undoes the possible things to launch in the\npod bay.",onClick:function(){return n("undo")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Enter Launch Mode",selected:i.giveLauncher,tooltip:"THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN",onClick:function(){return n("giveLauncher")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Clear Selected Bay",color:"bad",tooltip:"This will delete all objs and mobs from the selected bay.",tooltipPosition:"left",onClick:function(){return n("clearBay")}})],4)})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemAcclimator=void 0;var o=n(1),r=n(3),a=n(2);t.ChemAcclimator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Acclimator",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:[i.chem_temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.target_temperature,unit:"K",width:"59px",minValue:0,maxValue:1e3,step:5,stepPixelSize:2,onChange:function(e,t){return n("set_target_temperature",{temperature:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Acceptable Temp. Difference",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.allowed_temperature_difference,unit:"K",width:"59px",minValue:1,maxValue:i.target_temperature,stepPixelSize:2,onChange:function(e,t){n("set_allowed_temperature_difference",{temperature:t})}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.enabled?"On":"Off",selected:i.enabled,onClick:function(){return n("toggle_power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.max_volume,unit:"u",width:"50px",minValue:i.reagent_volume,maxValue:200,step:2,stepPixelSize:2,onChange:function(e,t){return n("change_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Operation",children:i.acclimate_state}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current State",children:i.emptying?"Emptying":"Filling"})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDebugSynthesizer=void 0;var o=n(1),r=n(3),a=n(2);t.ChemDebugSynthesizer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.amount,l=i.beakerCurrentVolume,u=i.beakerMaxVolume,d=i.isBeakerLoaded,s=i.beakerContents,p=void 0===s?[]:s;return(0,o.createComponentVNode)(2,a.Section,{title:"Recipient",buttons:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("ejectBeaker")}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",minValue:1,maxValue:u,step:1,stepPixelSize:2,onChange:function(e,t){return n("amount",{amount:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Input",onClick:function(){return n("input")}})],4):(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Create Beaker",onClick:function(){return n("makecup")}}),children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l})," / "+u+" u"]}),p.length>0?(0,o.createComponentVNode)(2,a.LabeledList,{children:p.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:[e.volume," u"]},e.name)}))}):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Recipient Empty"})],0):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Recipient"})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemFilter=t.ChemFilterPane=void 0;var o=n(1),r=n(3),a=n(2);var i=function(e){var t=(0,r.useBackend)(e).act,n=e.title,i=e.list,c=e.reagentName,l=e.onReagentInput,u=n.toLowerCase();return(0,o.createComponentVNode)(2,a.Section,{title:n,minHeight:40,ml:.5,mr:.5,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Input,{placeholder:"Reagent",width:"140px",onInput:function(e,t){return l(t)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return t("add",{which:u,name:c})}})],4),children:i.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"minus",content:e,onClick:function(){return t("remove",{which:u,reagent:e})}})],4,e)}))})};t.ChemFilterPane=i;var c=function(e){var t,n;function r(){var t;return(t=e.call(this)||this).state={leftReagentName:"",rightReagentName:""},t}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var c=r.prototype;return c.setLeftReagentName=function(e){this.setState({leftReagentName:e})},c.setRightReagentName=function(e){this.setState({rightReagentName:e})},c.render=function(){var e=this,t=this.props.state,n=t.data,r=n.left,c=void 0===r?[]:r,l=n.right,u=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Left",list:c,reagentName:this.state.leftReagentName,onReagentInput:function(t){return e.setLeftReagentName(t)},state:t})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Right",list:u,reagentName:this.state.rightReagentName,onReagentInput:function(t){return e.setRightReagentName(t)},state:t})})]})},r}(o.Component);t.ChemFilter=c},function(e,t,n){"use strict";t.__esModule=!0,t.ChemPress=void 0;var o=n(1),r=n(3),a=n(2);t.ChemPress=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.pill_size,l=i.pill_name,u=i.pill_style,d=i.pill_styles,s=void 0===d?[]:d;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",width:"43px",minValue:5,maxValue:50,step:1,stepPixelSize:2,onChange:function(e,t){return n("change_pill_size",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Name",children:(0,o.createComponentVNode)(2,a.Input,{value:l,onChange:function(e,t){return n("change_pill_name",{name:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Style",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:5,selected:e.id===u,textAlign:"center",color:"transparent",onClick:function(){return n("change_pill_style",{id:e.id})},children:(0,o.createComponentVNode)(2,a.Box,{mx:-1,className:e.class_name})},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemReactionChamber=void 0;var o=n(1),r=n(19),a=n(2),i=n(23),c=n(12);var l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).state={reagentName:"",reagentQuantity:1},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.setReagentName=function(e){this.setState({reagentName:e})},u.setReagentQuantity=function(e){this.setState({reagentQuantity:e})},u.render=function(){var e=this,t=this.props.state,n=t.config,l=t.data,u=n.ref,d=l.emptying,s=l.reagents||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Reagents",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:d?"bad":"good",children:d?"Emptying":"Filling"}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createVNode)(1,"tr","LabledList__row",[(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createComponentVNode)(2,a.Input,{fluid:!0,value:"",placeholder:"Reagent Name",onInput:function(t,n){return e.setReagentName(n)}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td",(0,c.classes)(["LabeledList__buttons","LabeledList__cell"]),[(0,o.createComponentVNode)(2,a.NumberInput,{value:this.state.reagentQuantity,minValue:1,maxValue:100,step:1,stepPixelSize:3,width:"39px",onDrag:function(t,n){return e.setReagentQuantity(n)}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return(0,r.act)(u,"add",{chem:e.state.reagentName,amount:e.state.reagentQuantity})}})],4)],4),(0,i.map)((function(e,t){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:t,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return(0,r.act)(u,"remove",{chem:t})}}),children:e},t)}))(s)]})})},l}(o.Component);t.ChemReactionChamber=l},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSplitter=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSplitter=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.straight,u=c.side,d=c.max_transfer;return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Straight",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l,unit:"u",width:"55px",minValue:1,maxValue:d,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"straight",amount:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Side",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:u,unit:"u",width:"55px",minValue:1,maxValue:d,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"side",amount:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSynthesizer=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSynthesizer=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.amount,u=c.current_reagent,d=c.chemicals,s=void 0===d?[]:d,p=c.possible_amounts,m=void 0===p?[]:p;return(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:(0,r.toFixed)(e,0),selected:e===l,onClick:function(){return n("amount",{target:e})}},(0,r.toFixed)(e,0))}))}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"tint",content:e.title,width:"129px",selected:e.id===u,onClick:function(){return n("select",{reagent:e.id})}},e.id)}))})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.CodexGigas=void 0;var o=n(1),r=n(3),a=n(2);t.CodexGigas=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[i.name,(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prefix",children:["Dark","Hellish","Fallen","Fiery","Sinful","Blood","Fluffy"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:1!==i.currentSection,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Title",children:["Lord","Prelate","Count","Viscount","Vizier","Elder","Adept"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>2,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:["hal","ve","odr","neit","ci","quon","mya","folth","wren","geyr","hil","niet","twou","phi","coa"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>4,onClick:function(){return n(e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suffix",children:["the Red","the Soulless","the Master","the Lord of all things","Jr."].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:4!==i.currentSection,onClick:function(){return n(" "+e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Submit",children:(0,o.createComponentVNode)(2,a.Button,{content:"Search",disabled:i.currentSection<4,onClick:function(){return n("search")}})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.ComputerFabricator=void 0;var o=n(1),r=(n(31),n(3)),a=n(2);t.ComputerFabricator=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{italic:!0,fontSize:"20px",children:"Your perfect device, only three steps away..."}),0!==l.state&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mb:1,icon:"circle",content:"Clear Order",onClick:function(){return c("clean_order")}}),(0,o.createComponentVNode)(2,i,{state:t})],0)};var i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return 0===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 1",minHeight:51,children:[(0,o.createComponentVNode)(2,a.Box,{mt:5,bold:!0,textAlign:"center",fontSize:"40px",children:"Choose your Device"}),(0,o.createComponentVNode)(2,a.Box,{mt:3,children:(0,o.createComponentVNode)(2,a.Grid,{width:"100%",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"laptop",content:"Laptop",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"1"})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"tablet-alt",content:"Tablet",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"2"})}})})]})})]}):1===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 2: Customize your device",minHeight:47,buttons:(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"good",children:[i.totalprice," cr"]}),children:[(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Battery:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to operate without external utility power\nsource. Advanced batteries increase battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Hard Drive:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Stores file on your device. Advanced drives can store more\nfiles, but use more power, shortening battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Network Card:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to wirelessly connect to stationwide NTNet\nnetwork. Basic cards are limited to on-station use, while\nadvanced cards can operate anywhere near the station, which\nincludes asteroid outposts",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Nano Printer:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A device that allows for various paperwork manipulations,\nsuch as, scanning of documents or printing new ones.\nThis device was certified EcoFriendlyPlus and is capable of\nrecycling existing paper for printing purposes.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"1"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Card Reader:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Adds a slot that allows you to manipulate RFID cards.\nPlease note that this is not necessary to allow the device\nto read your identification, it is just necessary to\nmanipulate other cards.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_card,onClick:function(){return n("hw_card",{card:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_card,onClick:function(){return n("hw_card",{card:"1"})}})})]}),2!==i.devtype&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Processor Unit:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A component critical for your device's functionality.\nIt allows you to run programs from your hard drive.\nAdvanced CPUs use more power, but allow you to run\nmore programs on background at once.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Tesla Relay:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"An advanced wireless power relay that allows your device\nto connect to nearby area power controller to provide\nalternative power source. This component is currently\nunavailable on tablet computers due to size restrictions.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"1"})}})})]})],4)]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mt:3,content:"Confirm Order",color:"good",textAlign:"center",fontSize:"18px",lineHeight:"26px",onClick:function(){return n("confirm_order")}})]}):2===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 3: Payment",minHeight:47,children:[(0,o.createComponentVNode)(2,a.Box,{italic:!0,textAlign:"center",fontSize:"20px",children:"Your device is ready for fabrication..."}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:2,textAlign:"center",fontSize:"16px",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:"Please insert the required"})," ",(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:[i.totalprice," cr"]})]}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:1,textAlign:"center",fontSize:"18px",children:"Current:"}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:.5,textAlign:"center",fontSize:"18px",color:i.credits>=i.totalprice?"good":"bad",children:[i.credits," cr"]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Purchase",disabled:i.credits=10&&e<20?i.COLORS.department.security:e>=20&&e<30?i.COLORS.department.medbay:e>=30&&e<40?i.COLORS.department.science:e>=40&&e<50?i.COLORS.department.engineering:e>=50&&e<60?i.COLORS.department.cargo:e>=200&&e<230?i.COLORS.department.centcom:i.COLORS.department.other},u=function(e){var t=e.type,n=e.value;return(0,o.createComponentVNode)(2,a.Box,{inline:!0,width:4,color:i.COLORS.damageType[t],textAlign:"center",children:n})};t.CrewConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,d=i.sensors||[];return(0,o.createComponentVNode)(2,a.Section,{minHeight:90,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,textAlign:"center",children:"Vitals"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Position"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,children:"Tracking"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:(f=e.ijob,f%10==0),color:l(e.ijob),children:[e.name," (",e.assignment,")"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,a.ColorBox,{color:(t=e.oxydam,r=e.toxdam,d=e.burndam,s=e.brutedam,p=t+r+d+s,m=Math.min(Math.max(Math.ceil(p/25),0),5),c[m])})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:null!==e.oxydam?(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:[(0,o.createComponentVNode)(2,u,{type:"oxy",value:e.oxydam}),"/",(0,o.createComponentVNode)(2,u,{type:"toxin",value:e.toxdam}),"/",(0,o.createComponentVNode)(2,u,{type:"burn",value:e.burndam}),"/",(0,o.createComponentVNode)(2,u,{type:"brute",value:e.brutedam})]}):e.life_status?"Alive":"Dead"}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:null!==e.pos_x?e.area:"N/A"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{content:"Track",disabled:!e.can_track,onClick:function(){return n("select_person",{name:e.name})}})})]},e.name);var t,r,d,s,p,m,f}))]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Cryo=void 0;var o=n(1),r=n(3),a=n(2),i=n(435);t.Cryo=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",content:c.occupant.name?c.occupant.name:"No Occupant"}),!!c.hasOccupant&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",content:c.occupant.stat,color:c.occupant.statstate}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",color:c.occupant.temperaturestatus,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.bodyTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant.health/c.occupant.maxHealth,color:c.occupant.health>0?"good":"average",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant[e.type]/100,children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant[e.type]})})},e.id)}))],0)]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cell",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",content:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",disabled:c.isOpen,onClick:function(){return n("power")},color:c.isOperating&&"green",children:c.isOperating?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.cellTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.isOpen?"unlock":"lock",onClick:function(){return n("door")},content:c.isOpen?"Open":"Closed"}),(0,o.createComponentVNode)(2,a.Button,{icon:c.autoEject?"sign-out-alt":"sign-in-alt",onClick:function(){return n("autoeject")},content:c.autoEject?"Auto":"Manual"})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",disabled:!c.isBeakerLoaded,onClick:function(){return n("ejectbeaker")},content:"Eject"}),children:(0,o.createComponentVNode)(2,i.BeakerContents,{beakerLoaded:c.isBeakerLoaded,beakerContents:c.beakerContents})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BeakerContents=void 0;var o=n(1),r=n(2);t.BeakerContents=function(e){var t=e.beakerLoaded,n=e.beakerContents;return(0,o.createComponentVNode)(2,r.Box,{children:[!t&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"No beaker loaded."})||0===n.length&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"Beaker is empty."}),n.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{color:"label",children:[e.volume," units of ",e.name]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.PersonalCrafting=void 0;var o=n(1),r=n(23),a=n(3),i=n(2),c=function(e){var t=e.craftables,n=void 0===t?[]:t,r=(0,a.useBackend)(e),c=r.act,l=r.data,u=l.craftability,d=void 0===u?{}:u,s=l.display_compact,p=l.display_craftable_only;return n.map((function(e){return p&&!d[e.ref]?null:s?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,className:"candystripe",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!d[e.ref],tooltip:e.tool_text&&"Tools needed: "+e.tool_text,tooltipPosition:"left",onClick:function(){return c("make",{recipe:e.ref})}}),children:e.req_text},e.name):(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!d[e.ref],onClick:function(){return c("make",{recipe:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.req_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Required",children:e.req_text}),!!e.catalyst_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Catalyst",children:e.catalyst_text}),!!e.tool_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Tools",children:e.tool_text})]})},e.name)}))};t.PersonalCrafting=function(e){var t=e.state,n=(0,a.useBackend)(e),l=n.act,u=n.data,d=u.busy,s=u.display_craftable_only,p=u.display_compact,m=(0,r.map)((function(e,t){return{category:t,subcategory:e,hasSubcats:"has_subcats"in e,firstSubcatName:Object.keys(e).find((function(e){return"has_subcats"!==e}))}}))(u.crafting_recipes||{}),f=!!d&&(0,o.createComponentVNode)(2,i.Dimmer,{fontSize:"40px",textAlign:"center",children:(0,o.createComponentVNode)(2,i.Box,{mt:30,children:[(0,o.createComponentVNode)(2,i.Icon,{name:"cog",spin:1})," Crafting..."]})});return(0,o.createFragment)([f,(0,o.createComponentVNode)(2,i.Section,{title:"Personal Crafting",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:p?"check-square-o":"square-o",content:"Compact",selected:p,onClick:function(){return l("toggle_compact")}}),(0,o.createComponentVNode)(2,i.Button,{icon:s?"check-square-o":"square-o",content:"Craftable Only",selected:s,onClick:function(){return l("toggle_recipes")}})],4),children:(0,o.createComponentVNode)(2,i.Tabs,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.category,onClick:function(){return l("set_category",{category:e.category,subcategory:e.firstSubcatName})},children:function(){return!e.hasSubcats&&(0,o.createComponentVNode)(2,c,{craftables:e.subcategory,state:t})||(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,n){if("has_subcats"!==n)return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:n,onClick:function(){return l("set_category",{subcategory:n})},children:function(){return(0,o.createComponentVNode)(2,c,{craftables:e,state:t})}})}))(e.subcategory)})}},e.category)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.DecalPainter=void 0;var o=n(1),r=n(3),a=n(2);t.DecalPainter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.decal_list||[],l=i.color_list||[],u=i.dir_list||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Decal Type",children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name,selected:e.decal===i.decal_style,onClick:function(){return n("select decal",{decals:e.decal})}},e.decal)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Color",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:"red"===e.colors?"Red":"white"===e.colors?"White":"Yellow",selected:e.colors===i.decal_color,onClick:function(){return n("select color",{colors:e.colors})}},e.colors)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Direction",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:1===e.dirs?"North":2===e.dirs?"South":4===e.dirs?"East":"West",selected:e.dirs===i.decal_direction,onClick:function(){return n("selected direction",{dirs:e.dirs})}},e.dirs)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.DisposalUnit=void 0;var o=n(1),r=n(3),a=n(2);t.DisposalUnit=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return l.full_pressure?(t="good",n="Ready"):l.panel_open?(t="bad",n="Power Disabled"):l.pressure_charging?(t="average",n="Pressurizing"):(t="bad",n="Off"),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:t,children:n}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.per,color:"good"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Handle",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.flush?"toggle-on":"toggle-off",disabled:l.isai||l.panel_open,content:l.flush?"Disengage":"Engage",onClick:function(){return c(l.flush?"handle-0":"handle-1")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Eject",children:(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",disabled:l.isai,content:"Eject Contents",onClick:function(){return c("eject")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",disabled:l.panel_open,selected:l.pressure_charging,onClick:function(){return c(l.pressure_charging?"pump-0":"pump-1")}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaVault=void 0;var o=n(1),r=n(3),a=n(2);t.DnaVault=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.completed,l=i.used,u=i.choiceA,d=i.choiceB,s=i.dna,p=i.dna_max,m=i.plants,f=i.plants_max,h=i.animals,C=i.animals_max;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"DNA Vault Database",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Human DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s/p,content:s+" / "+p+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plant DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m/f,content:m+" / "+f+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Animal DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:h/h,content:h+" / "+C+" Samples"})})]})}),!(!c||l)&&(0,o.createComponentVNode)(2,a.Section,{title:"Personal Gene Therapy",children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",mb:1,children:"Applicable Gene Therapy Treatments"}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:u,textAlign:"center",onClick:function(){return n("gene",{choice:u})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:d,textAlign:"center",onClick:function(){return n("gene",{choice:d})}})})]})]})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.EightBallVote=void 0;var o=n(1),r=n(3),a=n(2),i=n(31);t.EightBallVote=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.question,u=c.shaking,d=c.answers,s=void 0===d?[]:d;return u?(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"16px",m:1,children:['"',l,'"']}),(0,o.createComponentVNode)(2,a.Grid,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:(0,i.toTitleCase)(e.answer),selected:e.selected,fontSize:"16px",lineHeight:"24px",textAlign:"center",mb:1,onClick:function(){return n("vote",{answer:e.answer})}}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"30px",children:e.amount})]},e.answer)}))})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No question is currently being asked."})}},function(e,t,n){"use strict";t.__esModule=!0,t.EmergencyShuttleConsole=void 0;var o=n(1),r=n(2),a=n(3);t.EmergencyShuttleConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,i=t.data,c=i.timer_str,l=i.enabled,u=i.emagged,d=i.engines_started,s=i.authorizations_remaining,p=i.authorizations,m=void 0===p?[]:p;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"40px",textAlign:"center",fontFamily:"monospace",children:c}),(0,o.createComponentVNode)(2,r.Box,{textAlign:"center",fontSize:"16px",mb:1,children:[(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,children:"ENGINES:"}),(0,o.createComponentVNode)(2,r.Box,{inline:!0,color:d?"good":"average",ml:1,children:d?"Online":"Idle"})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Early Launch Authorization",level:2,buttons:(0,o.createComponentVNode)(2,r.Button,{icon:"times",content:"Repeal All",color:"bad",disabled:!l,onClick:function(){return n("abort")}}),children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"exclamation-triangle",color:"good",content:"AUTHORIZE",disabled:!l,onClick:function(){return n("authorize")}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"minus",content:"REPEAL",disabled:!l,onClick:function(){return n("repeal")}})})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Authorizations",level:3,minHeight:"150px",buttons:(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,color:u?"bad":"good",children:u?"ERROR":"Remaining: "+s}),children:[m.length>0?m.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)})):(0,o.createComponentVNode)(2,r.Box,{bold:!0,textAlign:"center",fontSize:"16px",color:"average",children:"No Active Authorizations"}),m.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)}))]})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.EngravedMessage=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.EngravedMessage=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.admin_mode,u=c.creator_key,d=c.creator_name,s=c.has_liked,p=c.has_disliked,m=c.hidden_message,f=c.is_creator,h=c.num_likes,C=c.num_dislikes,g=c.realdate;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",mb:2,children:(0,r.decodeHtmlEntities)(m)}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",content:" "+h,disabled:f,selected:s,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("like")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"circle",disabled:f,selected:!p&&!s,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("neutral")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",content:" "+C,disabled:f,selected:p,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("dislike")}})})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Created On",children:g})})}),(0,o.createComponentVNode)(2,i.Section),!!l&&(0,o.createComponentVNode)(2,i.Section,{title:"Admin Panel",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Delete",color:"bad",onClick:function(){return n("delete")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Ckey",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Character Name",children:d})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Gps=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(156),l=n(3),u=n(2),d=function(e){return(0,r.map)(parseFloat)(e.split(", "))};t.Gps=function(e){var t=(0,l.useBackend)(e),n=t.act,s=t.data,p=s.currentArea,m=s.currentCoords,f=s.globalmode,h=s.power,C=s.tag,g=s.updating,b=(0,a.flow)([(0,r.map)((function(e,t){var n=e.dist&&Math.round((0,c.vecLength)((0,c.vecSubtract)(d(m),d(e.coords))));return Object.assign({},e,{dist:n,index:t})})),(0,r.sortBy)((function(e){return e.dist===undefined}),(function(e){return e.entrytag}))])(s.signals||[]);return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Control",buttons:(0,o.createComponentVNode)(2,u.Button,{icon:"power-off",content:h?"On":"Off",selected:h,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,u.LabeledList,{children:[(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Tag",children:(0,o.createComponentVNode)(2,u.Button,{icon:"pencil-alt",content:C,onClick:function(){return n("rename")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,u.Button,{icon:g?"unlock":"lock",content:g?"AUTO":"MANUAL",color:!g&&"bad",onClick:function(){return n("updating")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Range",children:(0,o.createComponentVNode)(2,u.Button,{icon:"sync",content:f?"MAXIMUM":"LOCAL",selected:!f,onClick:function(){return n("globalmode")}})})]})}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Current Location",children:(0,o.createComponentVNode)(2,u.Box,{fontSize:"18px",children:[p," (",m,")"]})}),(0,o.createComponentVNode)(2,u.Section,{title:"Detected Signals",children:(0,o.createComponentVNode)(2,u.Table,{children:[(0,o.createComponentVNode)(2,u.Table.Row,{bold:!0,children:[(0,o.createComponentVNode)(2,u.Table.Cell,{content:"Name"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Direction"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Coordinates"})]}),b.map((function(e){return(0,o.createComponentVNode)(2,u.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,u.Table.Cell,{bold:!0,color:"label",children:e.entrytag}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,opacity:e.dist!==undefined&&(0,i.clamp)(1.2/Math.log(Math.E+e.dist/20),.4,1),children:[e.degrees!==undefined&&(0,o.createComponentVNode)(2,u.Icon,{mr:1,size:1.2,name:"arrow-up",rotation:e.degrees}),e.dist!==undefined&&e.dist+"m"]}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,children:e.coords})]},e.entrytag+e.coords+e.index)}))]})})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GravityGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.GravityGenerator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.breaker,l=i.charge_count,u=i.charging_state,d=i.on,s=i.operational;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:!s&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No data available"})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Breaker",children:(0,o.createComponentVNode)(2,a.Button,{icon:c?"power-off":"times",content:c?"On":"Off",selected:c,disabled:!s,onClick:function(){return n("gentoggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Gravity Charge",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/100,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",children:[0===u&&(d&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Fully Charged"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Not Charging"})),1===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Charging"}),2===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Discharging"})]})]})}),s&&0!==u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"WARNING - Radiation detected"}),s&&0===u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No radiation detected"})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagTeleporterConsole=void 0;var o=n(1),r=n(3),a=n(2);t.GulagTeleporterConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.teleporter,l=i.teleporter_lock,u=i.teleporter_state_open,d=i.teleporter_location,s=i.beacon,p=i.beacon_location,m=i.id,f=i.id_name,h=i.can_teleport,C=i.goal,g=void 0===C?0:C,b=i.prisoner,v=void 0===b?{}:b;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Teleporter Console",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:u?"Open":"Closed",disabled:l,selected:u,onClick:function(){return n("toggle_open")}}),(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"unlock",content:l?"Locked":"Unlocked",selected:l,disabled:u,onClick:function(){return n("teleporter_lock")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleporter Unit",color:c?"good":"bad",buttons:!c&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_teleporter")}}),children:c?d:"Not Connected"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Receiver Beacon",color:s?"good":"bad",buttons:!s&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_beacon")}}),children:s?p:"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Prisoner Details",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prisoner ID",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:m?f:"No ID",onClick:function(){return n("handle_id")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Point Goal",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:g,width:"48px",minValue:1,maxValue:1e3,onChange:function(e,t){return n("set_goal",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",children:v.name?v.name:"No Occupant"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Criminal Status",children:v.crimstat?v.crimstat:"No Status"})]})}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Process Prisoner",disabled:!h,textAlign:"center",color:"bad",onClick:function(){return n("teleport")}})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagItemReclaimer=void 0;var o=n(1),r=n(3),a=n(2);t.GulagItemReclaimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.mobs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Stored Items",children:(0,o.createComponentVNode)(2,a.Table,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{content:"Retrieve Items",disabled:!i.can_reclaim,onClick:function(){return n("release_items",{mobref:e.mob})}})})]},e.mob)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holodeck=void 0;var o=n(1),r=n(3),a=n(2);t.Holodeck=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_toggle_safety,l=i.default_programs,u=void 0===l?[]:l,d=i.emag_programs,s=void 0===d?[]:d,p=i.emagged,m=i.program;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Default Programs",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"unlock":"lock",content:"Safeties",color:"bad",disabled:!c,selected:!p,onClick:function(){return n("safety")}}),children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),textAlign:"center",selected:e.type===m,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))}),!!p&&(0,o.createComponentVNode)(2,a.Section,{title:"Dangerous Programs",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),color:"bad",textAlign:"center",selected:e.type===m,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ImplantChair=void 0;var o=n(1),r=n(3),a=n(2);t.ImplantChair=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:i.occupant.name?i.occupant.name:"No Occupant"}),!!i.occupied&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:0===i.occupant.stat?"good":1===i.occupant.stat?"average":"bad",children:0===i.occupant.stat?"Conscious":1===i.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.open?"unlock":"lock",color:i.open?"default":"red",content:i.open?"Open":"Closed",onClick:function(){return n("door")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implant Occupant",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"code-branch",content:i.ready?i.special_name||"Implant":"Recharging",onClick:function(){return n("implant")}}),0===i.ready&&(0,o.createComponentVNode)(2,a.Icon,{name:"cog",color:"orange",spin:!0})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implants Remaining",children:[i.ready_implants,1===i.replenishing&&(0,o.createComponentVNode)(2,a.Icon,{name:"sync",color:"red",spin:!0})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Intellicard=void 0;var o=n(1),r=n(3),a=n(2);t.Intellicard=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=u||d,l=i.name,u=i.isDead,d=i.isBraindead,s=i.health,p=i.wireless,m=i.radio,f=i.wiping,h=i.laws,C=void 0===h?[]:h;return(0,o.createComponentVNode)(2,a.Section,{title:l||"Empty Card",buttons:!!l&&(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:f?"Stop Wiping":"Wipe",disabled:u,onClick:function(){return n("wipe")}}),children:!!l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:c?"bad":"good",children:c?"Offline":"Operation"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Software Integrity",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"Wireless Activity",selected:p,onClick:function(){return n("wireless")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"microphone",content:"Subspace Radio",selected:m,onClick:function(){return n("radio")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laws",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.BlockQuote,{children:e},e)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.KeycardAuth=void 0;var o=n(1),r=n(3),a=n(2);t.KeycardAuth=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{children:1===i.waiting&&(0,o.createVNode)(1,"span",null,"Waiting for another device to confirm your request...",16)}),(0,o.createComponentVNode)(2,a.Box,{children:0===i.waiting&&(0,o.createFragment)([!!i.auth_required&&(0,o.createComponentVNode)(2,a.Button,{icon:"check-square",color:"red",textAlign:"center",lineHeight:"60px",fluid:!0,onClick:function(){return n("auth_swipe")},content:"Authorize"}),0===i.auth_required&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",fluid:!0,onClick:function(){return n("red_alert")},content:"Red Alert"}),(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",fluid:!0,onClick:function(){return n("emergency_maint")},content:"Emergency Maintenance Access"}),(0,o.createComponentVNode)(2,a.Button,{icon:"meteor",fluid:!0,onClick:function(){return n("bsa_unlock")},content:"Bluespace Artillery Unlock"})],4)],0)})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaborClaimConsole=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.LaborClaimConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.can_go_home,u=c.id_points,d=c.ores,s=c.status_info,p=c.unclaimed_points;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle controls",children:(0,o.createComponentVNode)(2,i.Button,{content:"Move shuttle",disabled:!l,onClick:function(){return n("move_shuttle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Points",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Unclaimed points",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Claim points",disabled:!p,onClick:function(){return n("claim_points")}}),children:p})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Material values",children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Material"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Value"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.ore)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.value})})]},e.ore)}))]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.LanguageMenu=void 0;var o=n(1),r=n(3),a=n(2);t.LanguageMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.admin_mode,l=i.is_living,u=i.omnitongue,d=i.languages,s=void 0===d?[]:d,p=i.unknown_languages,m=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Known Languages",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createFragment)([!!l&&(0,o.createComponentVNode)(2,a.Button,{content:e.is_default?"Default Language":"Select as Default",disabled:!e.can_speak,selected:e.is_default,onClick:function(){return n("select_default",{language_name:e.name})}}),!!c&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Remove",onClick:function(){return n("remove_language",{language_name:e.name})}})],4)],0),children:[e.desc," ","Key: ,",e.key," ",e.can_understand?"Can understand.":"Cannot understand."," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})}),!!c&&(0,o.createComponentVNode)(2,a.Section,{title:"Unknown Languages",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Omnitongue "+(u?"Enabled":"Disabled"),selected:u,onClick:function(){return n("toggle_omnitongue")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),children:[e.desc," ","Key: ,",e.key," ",!!e.shadow&&"(gained from mob)"," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadConsole=t.LaunchpadRemote=t.LaunchpadControl=t.LaunchpadButtonPad=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createComponentVNode)(2,a.Grid,{width:"1px",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",mb:1,onClick:function(){return t("move_pos",{x:-1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",mb:1,onClick:function(){return t("move_pos",{y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"R",mb:1,onClick:function(){return t("set_pos",{x:0,y:0})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",mb:1,onClick:function(){return t("move_pos",{y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",mb:1,onClick:function(){return t("move_pos",{x:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:-1})}})]})]})};t.LaunchpadButtonPad=i;var c=function(e){var t=e.topLevel,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.x,d=l.y,s=l.pad_name,p=l.range;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Input,{value:s,width:"170px",onChange:function(e,t){return c("rename",{name:t})}}),level:t?1:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Remove",color:"bad",onClick:function(){return c("remove")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Controls",level:2,children:(0,o.createComponentVNode)(2,i,{state:e.state})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Target",level:2,children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"26px",children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"X:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:u,minValue:-p,maxValue:p,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",stepPixelSize:10,onChange:function(e,t){return c("set_pos",{x:t})}})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"Y:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:d,minValue:-p,maxValue:p,stepPixelSize:10,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",onChange:function(e,t){return c("set_pos",{y:t})}})]})]})})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"upload",content:"Launch",textAlign:"center",onClick:function(){return c("launch")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Pull",textAlign:"center",onClick:function(){return c("pull")}})})]})]})};t.LaunchpadControl=c;t.LaunchpadRemote=function(e){var t=(0,r.useBackend)(e).data,n=t.has_pad,i=t.pad_closed;return n?i?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Launchpad Closed"}):(0,o.createComponentVNode)(2,c,{topLevel:!0,state:e.state}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Launchpad Connected"})};t.LaunchpadConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.launchpads,u=void 0===l?[]:l,d=i.selected_id;return u.length<=0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Pads Connected"}):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.Box,{style:{"border-right":"2px solid rgba(255, 255, 255, 0.1)"},minHeight:"190px",mr:1,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name,selected:d===e.id,color:"transparent",onClick:function(){return n("select_pad",{id:e.id})}},e.name)}))})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:d?(0,o.createComponentVNode)(2,c,{state:e.state}):(0,o.createComponentVNode)(2,a.Box,{children:"Please select a pad"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MechBayPowerConsole=void 0;var o=n(1),r=n(3),a=n(2);t.MechBayPowerConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.recharge_port,c=i&&i.mech,l=c&&c.cell;return(0,o.createComponentVNode)(2,a.Section,{title:"Mech status",textAlign:"center",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Sync",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Integrity",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.health/c.maxhealth,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cell is installed."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.charge/l.maxcharge,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.charge})," / "+l.maxcharge]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteChamberControl=void 0;var o=n(1),r=n(3),a=n(2);t.NaniteChamberControl=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.status_msg,l=i.locked,u=i.occupant_name,d=i.has_nanites,s=i.nanite_volume,p=i.regen_rate,m=i.safety_threshold,f=i.cloud_id,h=i.scan_level;if(c)return(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:c});var C=i.mob_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Chamber: "+u,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"lock-open",content:l?"Locked":"Unlocked",color:l?"bad":"default",onClick:function(){return n("toggle_lock")}}),children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",content:"Destroy Nanites",color:"bad",onClick:function(){return n("remove_nanites")}}),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanite Volume",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Growth Rate",children:p})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Safety Threshold",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:m,minValue:0,maxValue:500,width:"39px",onChange:function(e,t){return n("set_safety",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:f,minValue:0,maxValue:100,step:1,stepPixelSize:3,width:"39px",onChange:function(e,t){return n("set_cloud",{value:t})}})})]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",level:2,children:C.map((function(e){var t=e.extra_settings||[],n=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.desc}),h>=2&&(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.activated?"good":"bad",children:e.activated?"Active":"Inactive"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanites Consumed",children:[e.use_rate,"/s"]})]})})]}),h>=2&&(0,o.createComponentVNode)(2,a.Grid,{children:[!!e.can_trigger&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Triggers",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:e.trigger_cost}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:e.trigger_cooldown}),!!e.timer_trigger_delay&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[e.timer_trigger_delay," s"]}),!!e.timer_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:[e.timer_trigger," s"]})]})})}),!(!e.timer_restart&&!e.timer_shutdown)&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[e.timer_restart&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:[e.timer_restart," s"]}),e.timer_shutdown&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:[e.timer_shutdown," s"]})]})})})]}),h>=3&&!!e.has_extra_settings&&(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:t.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:e.value},e.name)}))})}),h>=4&&(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!e.activation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:e.activation_code}),!!e.deactivation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:e.deactivation_code}),!!e.kill_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:e.kill_code}),!!e.can_trigger&&!!e.trigger_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:e.trigger_code})]})})}),e.has_rules&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Rules",level:2,children:n.map((function(e){return(0,o.createFragment)([e.display,(0,o.createVNode)(1,"br")],0,e.display)}))})})]})]})},e.name)}))})],4):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"bad",textAlign:"center",fontSize:"30px",mb:1,children:"No Nanites Detected"}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,icon:"syringe",content:" Implant Nanites",color:"green",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("nanite_injection")}})],4)})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteCloudControl=t.NaniteCloudBackupDetails=t.NaniteCloudBackupList=t.NaniteInfoBox=t.NaniteDiskBox=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.state.data,n=t.has_disk,r=t.has_program,i=t.disk;return n?r?(0,o.createComponentVNode)(2,c,{program:i}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Inserted disk has no program"}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No disk inserted"})};t.NaniteDiskBox=i;var c=function(e){var t=e.program,n=t.name,r=t.desc,i=t.activated,c=t.use_rate,l=t.can_trigger,u=t.trigger_cost,d=t.trigger_cooldown,s=t.activation_code,p=t.deactivation_code,m=t.kill_code,f=t.trigger_code,h=t.timer_restart,C=t.timer_shutdown,g=t.timer_trigger,b=t.timer_trigger_delay,v=t.extra_settings||[];return(0,o.createComponentVNode)(2,a.Section,{title:n,level:2,buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:i?"good":"bad",children:i?"Activated":"Deactivated"}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{mr:1,children:r}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:c}),!!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:u}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:d})],4)]})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:m}),!!l&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:f})]})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart",children:[h," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown",children:[C," s"]}),!!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:[g," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[b," s"]})],4)]})})})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:v.map((function(e){var t={number:(0,o.createFragment)([e.value,e.unit],0),text:e.value,type:e.value,boolean:e.value?e.true_text:e.false_text};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:t[e.type]},e.name)}))})})]})};t.NaniteInfoBox=c;var l=function(e){var t=(0,r.useBackend)(e),n=t.act;return(t.data.cloud_backups||[]).map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Backup #"+e.cloud_id,textAlign:"center",onClick:function(){return n("set_view",{view:e.cloud_id})}},e.cloud_id)}))};t.NaniteCloudBackupList=l;var u=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.current_view,u=i.disk,d=i.has_program,s=i.cloud_backup,p=u&&u.can_rule||!1;if(!s)return(0,o.createComponentVNode)(2,a.NoticeBox,{children:"ERROR: Backup not found"});var m=i.cloud_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Backup #"+l,level:2,buttons:!!d&&(0,o.createComponentVNode)(2,a.Button,{icon:"upload",content:"Upload From Disk",color:"good",onClick:function(){return n("upload_program")}}),children:m.map((function(e){var t=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return n("remove_program",{program_id:e.id})}}),children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,c,{program:e}),!!p&&(0,o.createComponentVNode)(2,a.Section,{mt:-2,title:"Rules",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Add Rule from Disk",color:"good",onClick:function(){return n("add_rule",{program_id:e.id})}}),children:e.has_rules?t.map((function(t){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return n("remove_rule",{program_id:e.id,rule_id:t.id})}}),t.display],0,t.display)})):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"No Active Rules"})})]})},e.name)}))})};t.NaniteCloudBackupDetails=u;t.NaniteCloudControl=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,d=n.data,s=d.has_disk,p=d.current_view,m=d.new_backup_id;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Program Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!s,onClick:function(){return c("eject")}}),children:(0,o.createComponentVNode)(2,i,{state:t})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cloud Storage",buttons:p?(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Return",onClick:function(){return c("set_view",{view:0})}}):(0,o.createFragment)(["New Backup: ",(0,o.createComponentVNode)(2,a.NumberInput,{value:m,minValue:1,maxValue:100,stepPixelSize:4,width:"39px",onChange:function(e,t){return c("update_new_backup_value",{value:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return c("create_backup")}})],0),children:d.current_view?(0,o.createComponentVNode)(2,u,{state:t}):(0,o.createComponentVNode)(2,l,{state:t})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgramHub=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.NaniteProgramHub=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.detail_view,u=c.disk,d=c.has_disk,s=c.has_program,p=c.programs,m=void 0===p?{}:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Program Disk",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus-circle",content:"Delete Program",onClick:function(){return n("clear")}})],4),children:d?s?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Program Name",children:u.name}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:u.desc})]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Program Installed"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Insert Disk"})}),(0,o.createComponentVNode)(2,i.Section,{title:"Programs",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:l?"info":"list",content:l?"Detailed":"Compact",onClick:function(){return n("toggle_details")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Sync Research",onClick:function(){return n("refresh")}})],4),children:null!==m?(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){var r=e||[],a=t.substring(0,t.length-8);return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:a,children:l?r.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!d,onClick:function(){return n("download",{program_id:e.id})}}),children:e.desc},e.id)})):(0,o.createComponentVNode)(2,i.LabeledList,{children:r.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!d,onClick:function(){return n("download",{program_id:e.id})}})},e.id)}))})},t)}))(m)}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No nanite programs are currently researched."})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgrammer=t.NaniteExtraBoolean=t.NaniteExtraType=t.NaniteExtraText=t.NaniteExtraNumber=t.NaniteExtraEntry=t.NaniteDelays=t.NaniteCodes=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.activation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"activation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.deactivation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"deactivation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.kill_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"kill",code:t})}})}),!!i.can_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.trigger_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"trigger",code:t})}})})]})})};t.NaniteCodes=i;var c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,ml:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_restart,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_restart_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_shutdown,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_shutdown_timer",{delay:t})}})}),!!i.can_trigger&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_trigger,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_trigger_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_trigger_delay,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_timer_trigger_delay",{delay:t})}})})],4)]})})};t.NaniteDelays=c;var l=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.type,c={number:(0,o.createComponentVNode)(2,u,{act:t,extra_setting:n}),text:(0,o.createComponentVNode)(2,d,{act:t,extra_setting:n}),type:(0,o.createComponentVNode)(2,s,{act:t,extra_setting:n}),boolean:(0,o.createComponentVNode)(2,p,{act:t,extra_setting:n})};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:r,children:c[i]})};t.NaniteExtraEntry=l;var u=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.min,l=n.max,u=n.unit;return(0,o.createComponentVNode)(2,a.NumberInput,{value:i,width:"64px",minValue:c,maxValue:l,unit:u,onChange:function(e,n){return t("set_extra_setting",{target_setting:r,value:n})}})};t.NaniteExtraNumber=u;var d=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value;return(0,o.createComponentVNode)(2,a.Input,{value:i,width:"200px",onInput:function(e,n){return t("set_extra_setting",{target_setting:r,value:n})}})};t.NaniteExtraText=d;var s=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.types;return(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:i,width:"150px",options:c,onSelected:function(e){return t("set_extra_setting",{target_setting:r,value:e})}})};t.NaniteExtraType=s;var p=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.true_text,l=n.false_text;return(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:i?c:l,checked:i,onClick:function(){return t("set_extra_setting",{target_setting:r})}})};t.NaniteExtraBoolean=p;t.NaniteProgrammer=function(e){var t=(0,r.useBackend)(e),n=t.act,u=t.data,d=u.has_disk,s=u.has_program,p=u.name,m=u.desc,f=u.use_rate,h=u.can_trigger,C=u.trigger_cost,g=u.trigger_cooldown,b=u.activated,v=u.has_extra_settings,N=u.extra_settings,V=void 0===N?{}:N;return d?s?(0,o.createComponentVNode)(2,a.Section,{title:p,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}}),children:[(0,o.createComponentVNode)(2,a.Section,{title:"Info",level:2,children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:m}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.7,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:f}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:C}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:g})],4)]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Settings",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:b?"power-off":"times",content:b?"Active":"Inactive",selected:b,color:"bad",bold:!0,onClick:function(){return n("toggle_active")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{state:e.state})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,c,{state:e.state})})]}),!!v&&(0,o.createComponentVNode)(2,a.Section,{title:"Special",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:V.map((function(e){return(0,o.createComponentVNode)(2,l,{act:n,extra_setting:e},e.name)}))})})]})]}):(0,o.createComponentVNode)(2,a.Section,{title:"Blank Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert a nanite program disk"})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteRemote=void 0;var o=n(1),r=n(3),a=n(2);t.NaniteRemote=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.code,l=i.locked,u=i.mode,d=i.program_name,s=i.relay_code,p=i.comms,m=i.message,f=i.saved_settings,h=void 0===f?[]:f;return l?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"This interface is locked."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Nanite Control",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lock Interface",onClick:function(){return n("lock")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,a.Input,{value:d,maxLength:14,width:"130px",onChange:function(e,t){return n("update_name",{name:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"save",content:"Save",onClick:function(){return n("save")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:p?"Comm Code":"Signal Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return n("set_code",{code:t})}})}),!!p&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Message",children:(0,o.createComponentVNode)(2,a.Input,{value:m,width:"270px",onChange:function(e,t){return n("set_message",{value:t})}})}),"Relay"===u&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Relay Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:s,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return n("set_relay_code",{code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Signal Mode",children:["Off","Local","Targeted","Area","Relay"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,selected:u===e,onClick:function(){return n("select_mode",{mode:e})}},e)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Saved Settings",children:h.length>0?(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{width:"35%",children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{width:"20%",children:"Mode"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Code"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Relay"})]}),h.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,color:"label",children:[e.name,":"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.mode}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.code}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Relay"===e.mode&&e.relay_code}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"upload",color:"good",onClick:function(){return n("load",{save_id:e.id})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return n("remove_save",{save_id:e.id})}})]})]},e.id)}))]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No settings currently saved"})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Mule=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Mule=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u=c.siliconUser,d=c.on,s=c.cell,p=c.cellPercent,m=c.load,f=c.mode,h=c.modeStatus,C=c.haspai,g=c.autoReturn,b=c.autoPickup,v=c.reportDelivery,N=c.destination,V=c.home,y=c.id,_=c.destinations,x=void 0===_?[]:_;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:u,locked:l}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",minHeight:"110px",buttons:!l&&(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:s?p/100:0,color:s?"good":"bad"}),(0,o.createComponentVNode)(2,a.Grid,{mt:1,children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",color:h,children:f})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Load",color:m?"good":"average",children:m||"None"})})})]})]}),!l&&(0,o.createComponentVNode)(2,a.Section,{title:"Controls",buttons:(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Unload",onClick:function(){return n("unload")}}),!!C&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject PAI",onClick:function(){return n("ejectpai")}})],0),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID",children:(0,o.createComponentVNode)(2,a.Input,{value:y,onChange:function(e,t){return n("setid",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Destination",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:N||"None",options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"stop",content:"Stop",onClick:function(){return n("stop")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"play",content:"Go",onClick:function(){return n("go")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Home",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:V,options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",content:"Go Home",onClick:function(){return n("home")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:g,content:"Auto-Return",onClick:function(){return n("autored")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:b,content:"Auto-Pickup",onClick:function(){return n("autopick")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:v,content:"Report Delivery",onClick:function(){return n("report")}})]})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NotificationPreferences=void 0;var o=n(1),r=n(3),a=n(2);t.NotificationPreferences=function(e){var t=(0,r.useBackend)(e),n=t.act,i=(t.data.ignore||[]).sort((function(e,t){var n=e.desc.toLowerCase(),o=t.desc.toLowerCase();return no?1:0}));return(0,o.createComponentVNode)(2,a.Section,{title:"Ghost Role Notifications",children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:e.enabled?"times":"check",content:e.desc,color:e.enabled?"bad":"good",onClick:function(){return n("toggle_ignore",{key:e.key})}},e.key)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtnetRelay=void 0;var o=n(1),r=n(3),a=n(2);t.NtnetRelay=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.enabled,l=i.dos_capacity,u=i.dos_overload,d=i.dos_crashed;return(0,o.createComponentVNode)(2,a.Section,{title:"Network Buffer",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",selected:c,content:c?"ENABLED":"DISABLED",onClick:function(){return n("toggle")}}),children:d?(0,o.createComponentVNode)(2,a.Box,{fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",children:"NETWORK BUFFER OVERFLOW"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",children:"OVERLOAD RECOVERY MODE"}),(0,o.createComponentVNode)(2,a.Box,{children:"This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",color:"bad",children:"ADMINISTRATOR OVERRIDE"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",color:"bad",children:"CAUTION - DATA LOSS MAY OCCUR"}),(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"PURGE BUFFER",mt:1,color:"bad",onClick:function(){return n("restart")}})]}):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,minValue:0,maxValue:l,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})," GQ"," / ",l," GQ"]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosArcade=void 0;var o=n(1),r=n(3),a=n(2);t.NtosArcade=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Outbomb Cuban Pete Ultra",textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:2,children:[(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerHitpoints,minValue:0,maxValue:30,ranges:{olive:[31,Infinity],good:[20,31],average:[10,20],bad:[-Infinity,10]},children:[i.PlayerHitpoints,"HP"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Magic",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerMP,minValue:0,maxValue:10,ranges:{purple:[11,Infinity],violet:[3,11],bad:[-Infinity,3]},children:[i.PlayerMP,"MP"]})})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Section,{backgroundColor:1===i.PauseState?"#1b3622":"#471915",children:i.Status})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.Hitpoints/45,minValue:0,maxValue:45,ranges:{good:[30,Infinity],average:[5,30],bad:[-Infinity,5]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.Hitpoints}),"HP"]}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Section,{inline:!0,width:26,textAlign:"center",children:(0,o.createVNode)(1,"img",null,null,1,{src:i.BossID})})]})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Button,{icon:"fist-raised",tooltip:"Go in for the kill!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Attack")},content:"Attack!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"band-aid",tooltip:"Heal yourself!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Heal")},content:"Heal!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"magic",tooltip:"Recharge your magic!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Recharge_Power")},content:"Recharge!"})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"sync-alt",tooltip:"One more game couldn't hurt.",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Start_Game")},content:"Begin Game"}),(0,o.createComponentVNode)(2,a.Button,{icon:"ticket-alt",tooltip:"Claim at your local Arcade Computer for Prizes!",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Dispense_Tickets")},content:"Claim Tickets"})]}),(0,o.createComponentVNode)(2,a.Box,{color:i.TicketCount>=1?"good":"normal",children:["Earned Tickets: ",i.TicketCount]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosConfiguration=void 0;var o=n(1),r=n(3),a=n(2);t.NtosConfiguration=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.power_usage,l=i.battery_exists,u=i.battery,d=void 0===u?{}:u,s=i.disk_size,p=i.disk_used,m=i.hardware,f=void 0===m?[]:m;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Supply",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Draw: ",c,"W"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Battery Status",color:!l&&"average",children:l?(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.charge,minValue:0,maxValue:d.max,ranges:{good:[d.max/2,Infinity],average:[d.max/4,d.max/2],bad:[-Infinity,d.max/4]},children:[d.charge," / ",d.max]}):"Not Available"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"File System",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p,minValue:0,maxValue:s,color:"good",children:[p," GQ / ",s," GQ"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Hardware Components",children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createFragment)([!e.critical&&(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Enabled",checked:e.enabled,mr:1,onClick:function(){return n("PC_toggle_component",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Usage: ",e.powerusage,"W"]})],0),children:e.desc},e.name)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosMain=void 0;var o=n(1),r=n(3),a=n(2),i={compconfig:"cog",ntndownloader:"download",filemanager:"folder",smmonitor:"radiation",alarmmonitor:"bell",cardmod:"id-card",arcade:"gamepad",ntnrc_client:"comment-alt",nttransfer:"exchange-alt",powermonitor:"plug"};t.NtosMain=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.programs,u=void 0===l?[]:l,d=c.has_light,s=c.light_on,p=c.comp_light_color;return(0,o.createFragment)([!!d&&(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Button,{width:"144px",icon:"lightbulb",selected:s,onClick:function(){return n("PC_toggle_light")},children:["Flashlight: ",s?"ON":"OFF"]}),(0,o.createComponentVNode)(2,a.Button,{ml:1,onClick:function(){return n("PC_light_color")},children:["Color:",(0,o.createComponentVNode)(2,a.ColorBox,{ml:1,color:p})]})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",children:(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,lineHeight:"24px",color:"transparent",icon:i[e.name]||"window-maximize-o",content:e.desc,onClick:function(){return n("PC_runprogram",{name:e.name})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,width:3,children:!!e.running&&(0,o.createComponentVNode)(2,a.Button,{lineHeight:"24px",color:"transparent",icon:"times",tooltip:"Close program",tooltipPosition:"left",onClick:function(){return n("PC_killprogram",{name:e.name})}})})]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetChat=void 0;var o=n(1),r=n(3),a=n(2);(0,n(51).createLogger)("ntos chat");t.NtosNetChat=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_admin,l=i.adminmode,u=i.authed,d=i.username,s=i.active_channel,p=i.is_operator,m=i.all_channels,f=void 0===m?[]:m,h=i.clients,C=void 0===h?[]:h,g=i.messages,b=void 0===g?[]:g,v=null!==s,N=u||l;return(0,o.createComponentVNode)(2,a.Section,{height:"600px",children:(0,o.createComponentVNode)(2,a.Table,{height:"580px",children:(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"200px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"537px",overflowY:"scroll",children:[(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"New Channel...",onCommit:function(e,t){return n("PRG_newchannel",{new_channel_name:t})}}),f.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.chan,selected:e.id===s,color:"transparent",onClick:function(){return n("PRG_joinchannel",{id:e.id})}},e.chan)}))]}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,mt:1,content:d+"...",currentValue:d,onCommit:function(e,t){return n("PRG_changename",{new_name:t})}}),!!c&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ADMIN MODE: "+(l?"ON":"OFF"),color:l?"bad":"good",onClick:function(){return n("PRG_toggleadmin")}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:[(0,o.createComponentVNode)(2,a.Box,{height:"560px",overflowY:"scroll",children:v&&(N?b.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.msg},e.msg)})):(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Icon,{name:"exclamation-triangle",mt:4,fontSize:"40px"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,fontSize:"18px",children:"THIS CHANNEL IS PASSWORD PROTECTED"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"INPUT PASSWORD TO ACCESS"})]}))}),(0,o.createComponentVNode)(2,a.Input,{fluid:!0,selfClear:!0,mt:1,onEnter:function(e,t){return n("PRG_speak",{message:t})}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"150px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"477px",overflowY:"scroll",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.name},e.name)}))}),v&&N&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Save log...",defaultValue:"new_log",onCommit:function(e,t){return n("PRG_savelog",{log_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Leave Channel",onClick:function(){return n("PRG_leavechannel")}})],4),!!p&&u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Delete Channel",onClick:function(){return n("PRG_deletechannel")}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Rename Channel...",onCommit:function(e,t){return n("PRG_renamechannel",{new_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Set Password...",onCommit:function(e,t){return n("PRG_setpassword",{new_password:t})}})],4)]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDownloader=void 0;var o=n(1),r=n(3),a=n(2);t.NtosNetDownloader=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.disk_size,d=l.disk_used,s=l.downloadable_programs,p=void 0===s?[]:s,m=l.error,f=l.hacked_programs,h=void 0===f?[]:f,C=l.hackedavailable;return(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:m}),(0,o.createComponentVNode)(2,a.Button,{content:"Reset",onClick:function(){return c("PRG_reseterror")}})]}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disk usage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d,minValue:0,maxValue:u,children:d+" GQ / "+u+" GQ"})})})}),(0,o.createComponentVNode)(2,a.Section,{children:p.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))}),!!C&&(0,o.createComponentVNode)(2,a.Section,{title:"UNKNOWN Software Repository",children:[(0,o.createComponentVNode)(2,a.NoticeBox,{mb:1,children:"Please note that Nanotrasen does not recommend download of software from non-official servers."}),h.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))]})],0)};var i=function(e){var t=e.program,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.disk_size,u=c.disk_used,d=c.downloadcompletion,s=c.downloading,p=c.downloadname,m=c.downloadsize,f=l-u;return(0,o.createComponentVNode)(2,a.Box,{mb:3,children:[(0,o.createComponentVNode)(2,a.Flex,{align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{bold:!0,grow:1,children:t.filedesc}),(0,o.createComponentVNode)(2,a.Flex.Item,{color:"label",nowrap:!0,children:[t.size," GQ"]}),(0,o.createComponentVNode)(2,a.Flex.Item,{ml:2,width:"94px",textAlign:"center",children:t.filename===p&&(0,o.createComponentVNode)(2,a.ProgressBar,{color:"green",minValue:0,maxValue:m,value:d})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Download",disabled:s||t.size>f,onClick:function(){return i("PRG_downloadfile",{filename:t.filename})}})})]}),"Compatible"!==t.compatibility&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Incompatible!"]}),t.size>f&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Not enough disk space!"]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,color:"label",fontSize:"12px",children:t.fileinfo})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosSupermatterMonitor=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(3),l=n(2),u=n(37),d=function(e){return Math.log2(16+Math.max(0,e))-4};t.NtosSupermatterMonitor=function(e){var t=e.state,n=(0,c.useBackend)(e),p=n.act,m=n.data,f=m.active,h=m.SM_integrity,C=m.SM_power,g=m.SM_ambienttemp,b=m.SM_ambientpressure;if(!f)return(0,o.createComponentVNode)(2,s,{state:t});var v=(0,a.flow)([function(e){return e.filter((function(e){return e.amount>=.01}))},(0,r.sortBy)((function(e){return-e.amount}))])(m.gases||[]),N=Math.max.apply(Math,[1].concat(v.map((function(e){return e.amount}))));return(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"270px",children:(0,o.createComponentVNode)(2,l.Section,{title:"Metrics",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:h/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Relative EER",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:C,minValue:0,maxValue:5e3,ranges:{good:[-Infinity,5e3],average:[5e3,7e3],bad:[7e3,Infinity]},children:(0,i.toFixed)(C)+" MeV/cm3"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d(g),minValue:0,maxValue:d(1e4),ranges:{teal:[-Infinity,d(80)],good:[d(80),d(373)],average:[d(373),d(1e3)],bad:[d(1e3),Infinity]},children:(0,i.toFixed)(g)+" K"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d(b),minValue:0,maxValue:d(5e4),ranges:{good:[d(1),d(300)],average:[-Infinity,d(1e3)],bad:[d(1e3),+Infinity]},children:(0,i.toFixed)(b)+" kPa"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{title:"Gases",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"arrow-left",content:"Back",onClick:function(){return p("PRG_clear")}}),children:(0,o.createComponentVNode)(2,l.Box.Forced,{height:24*v.length+"px",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:v.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,u.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,u.getGasColor)(e.name),value:e.amount,minValue:0,maxValue:N,children:(0,i.toFixed)(e.amount,2)+"%"})},e.name)}))})})})})]})};var s=function(e){var t=(0,c.useBackend)(e),n=t.act,r=t.data.supermatters,a=void 0===r?[]:r;return(0,o.createComponentVNode)(2,l.Section,{title:"Detected Supermatters",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"sync",content:"Refresh",onClick:function(){return n("PRG_refresh")}}),children:(0,o.createComponentVNode)(2,l.Table,{children:a.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.uid+". "+e.area_name}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,color:"label",children:"Integrity:"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,width:"120px",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:e.integrity/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,l.Button,{content:"Details",onClick:function(){return n("PRG_set",{target:e.uid})}})})]},e.uid)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosWrapper=void 0;var o=n(1),r=n(3),a=n(2),i=n(116);t.NtosWrapper=function(e){var t=e.children,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.PC_batteryicon,d=l.PC_showbatteryicon,s=l.PC_batterypercent,p=l.PC_ntneticon,m=l.PC_apclinkicon,f=l.PC_stationtime,h=l.PC_programheaders,C=void 0===h?[]:h,g=l.PC_showexitprogram;return(0,o.createVNode)(1,"div","NtosWrapper",[(0,o.createVNode)(1,"div","NtosWrapper__header NtosHeader",[(0,o.createVNode)(1,"div","NtosHeader__left",[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:2,children:f}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,italic:!0,mr:2,opacity:.33,children:"NtOS"})],4),(0,o.createVNode)(1,"div","NtosHeader__right",[C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:e.icon})},e.icon)})),(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:p&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:p})}),!!d&&u&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:[u&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:u}),s&&s]}),m&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:m})}),!!g&&(0,o.createComponentVNode)(2,a.Button,{width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-minimize-o",tooltip:"Minimize",tooltipPosition:"bottom",onClick:function(){return c("PC_minimize")}}),!!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-close-o",tooltip:"Close",tooltipPosition:"bottom-left",onClick:function(){return c("PC_exit")}}),!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"power-off",tooltip:"Power off",tooltipPosition:"bottom-left",onClick:function(){return c("PC_shutdown")}})],0)],4,{onMouseDown:function(){(0,i.refocusLayout)()}}),(0,o.createVNode)(1,"div","NtosWrapper__content",t,0)],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NuclearBomb=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e).act;return(0,o.createComponentVNode)(2,i.Box,{width:"185px",children:(0,o.createComponentVNode)(2,i.Grid,{width:"1px",children:[["1","4","7","C"],["2","5","8","0"],["3","6","9","E"]].map((function(e){return(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,mb:1,content:e,textAlign:"center",fontSize:"40px",lineHeight:"50px",width:"55px",className:(0,r.classes)(["NuclearBomb__Button","NuclearBomb__Button--keypad","NuclearBomb__Button--"+e]),onClick:function(){return t("keypad",{digit:e})}},e)}))},e[0])}))})})};t.NuclearBomb=function(e){var t=e.state,n=(0,a.useBackend)(e),r=n.act,l=n.data,u=(l.anchored,l.disk_present,l.status1),d=l.status2;return(0,o.createComponentVNode)(2,i.Box,{m:1,children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,className:"NuclearBomb__displayBox",children:u}),(0,o.createComponentVNode)(2,i.Flex,{mb:1.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,i.Box,{className:"NuclearBomb__displayBox",children:d})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",fontSize:"24px",lineHeight:"23px",textAlign:"center",width:"43px",ml:1,mr:"3px",mt:"3px",className:"NuclearBomb__Button NuclearBomb__Button--keypad",onClick:function(){return r("eject_disk")}})})]}),(0,o.createComponentVNode)(2,i.Flex,{ml:"3px",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,c,{state:t})}),(0,o.createComponentVNode)(2,i.Flex.Item,{ml:1,width:"129px",children:(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ARM",textAlign:"center",fontSize:"28px",lineHeight:"32px",mb:1,className:"NuclearBomb__Button NuclearBomb__Button--C",onClick:function(){return r("arm")}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ANCHOR",textAlign:"center",fontSize:"28px",lineHeight:"32px",className:"NuclearBomb__Button NuclearBomb__Button--E",onClick:function(){return r("anchor")}}),(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",color:"#9C9987",fontSize:"80px",children:(0,o.createComponentVNode)(2,i.Icon,{name:"radiation"})}),(0,o.createComponentVNode)(2,i.Box,{height:"80px",className:"NuclearBomb__NTIcon"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OperatingComputer=void 0;var o=n(1),r=n(3),a=n(2);t.OperatingComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.table,l=i.surgeries,u=void 0===l?[]:l,d=i.procedures,s=void 0===d?[]:d,p=i.patient,m=void 0===p?{}:p;return(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Patient State",children:[!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Table Detected"}),(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Patient State",level:2,children:m?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:m.statstate,children:m.stat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Type",children:m.blood_type}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m.health,minValue:m.minHealth,maxValue:m.maxHealth,color:m.health>=0?"good":"average",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:m.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Respiratory",type:"oxyLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m[e.type]/m.maxHealth,color:"bad",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:m[e.type]})})},e.type)}))]}):"No Patient Detected"}),(0,o.createComponentVNode)(2,a.Section,{title:"Initiated Procedures",level:2,children:s.length?s.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Next Step",children:[e.next_step,e.chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.chems_needed],0)]}),!!i.alternative_step&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Alternative Step",children:[e.alternative_step,e.alt_chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.alt_chems_needed],0)]})]})},e.name)})):"No Active Procedures"})]})]},"state"),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Surgery Procedures",children:(0,o.createComponentVNode)(2,a.Section,{title:"Advanced Surgery Procedures",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Sync Research Database",onClick:function(){return n("sync")}}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,children:e.desc},e.name)}))]})},"procedures")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreBox=void 0;var o=n(1),r=n(31),a=n(19),i=n(2);t.OreBox=function(e){var t=e.state,n=t.config,c=t.data,l=n.ref,u=c.materials;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Ores",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Empty",onClick:function(){return(0,a.act)(l,"removeall")}}),children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Ore"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Amount"})]}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.name)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.amount})})]},e.type)}))]})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Box,{children:["All ores will be placed in here when you are wearing a mining stachel on your belt or in a pocket while dragging the ore box.",(0,o.createVNode)(1,"br"),"Gibtonite is not accepted."]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.OreRedemptionMachine=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.OreRedemptionMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,l=r.unclaimedPoints,u=r.materials,d=r.alloys,s=r.diskDesigns,p=r.hasDisk;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.BlockQuote,{mb:1,children:["This machine only accepts ore.",(0,o.createVNode)(1,"br"),"Gibtonite and Slag are not accepted."]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Unclaimed points:"}),l,(0,o.createComponentVNode)(2,i.Button,{ml:2,content:"Claim",disabled:0===l,onClick:function(){return n("Claim")}})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:1,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject design disk",onClick:function(){return n("diskEject")}})}),(0,o.createComponentVNode)(2,i.Table,{children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:["File ",e.index,": ",e.name]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{disabled:!e.canupload,content:"Upload",onClick:function(){return n("diskUpload",{design:e.index})}})})]},e.index)}))})],4)||(0,o.createComponentVNode)(2,i.Button,{icon:"save",content:"Insert design disk",onClick:function(){return n("diskInsert")}})}),(0,o.createComponentVNode)(2,i.Section,{title:"Materials",children:(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Release",{id:e.id,sheets:t})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Alloys",children:(0,o.createComponentVNode)(2,i.Table,{children:d.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Smelt",{id:e.id,sheets:t})}},e.id)}))})})],4)};var c=function(e){var t,n;function a(){var t;return(t=e.call(this)||this).state={amount:1},t}return n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,a.prototype.render=function(){var e=this,t=this.state.amount,n=this.props,a=n.material,c=n.onRelease,l=Math.floor(a.amount);return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(a.name).replace("Alloy","")}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:a.value&&a.value+" cr"})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:[l," sheets"]})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.NumberInput,{width:"32px",step:1,stepPixelSize:5,minValue:1,maxValue:50,value:t,onChange:function(t,n){return e.setState({amount:n})}}),(0,o.createComponentVNode)(2,i.Button,{disabled:l<1,content:"Release",onClick:function(){return c(t)}})]})]})},a}(o.Component)},function(e,t,n){"use strict";t.__esModule=!0,t.Pandemic=t.PandemicAntibodyDisplay=t.PandemicSymptomDisplay=t.PandemicDiseaseDisplay=t.PandemicBeakerDisplay=void 0;var o=n(1),r=n(23),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.has_beaker,l=r.beaker_empty,u=r.has_blood,d=r.blood,s=!c||l;return(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Empty and Eject",color:"bad",disabled:s,onClick:function(){return n("empty_eject_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Empty",disabled:s,onClick:function(){return n("empty_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!c,onClick:function(){return n("eject_beaker")}})],4),children:c?l?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Beaker is empty"}):u?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood DNA",children:d&&d.dna||"Unknown"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Type",children:d&&d.type||"Unknown"})]}):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"No blood detected"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No beaker loaded"})})};t.PandemicBeakerDisplay=c;var l=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.is_ready;return(r.viruses||[]).map((function(e){var t=e.symptoms||[];return(0,o.createComponentVNode)(2,i.Section,{title:e.can_rename?(0,o.createComponentVNode)(2,i.Input,{value:e.name,onChange:function(t,o){return n("rename_disease",{index:e.index,name:o})}}):e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"flask",content:"Create culture bottle",disabled:!c,onClick:function(){return n("create_culture_bottle",{index:e.index})}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.description}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Agent",children:e.agent}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Spread",children:e.spread}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Possible Cure",children:e.cure})]})})]}),!!e.is_adv&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Statistics",level:2,children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:e.resistance}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:e.stealth})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage speed",children:e.stage_speed}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmissibility",children:e.transmission})]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Symptoms",level:2,children:t.map((function(e){return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,u,{symptom:e})})},e.name)}))})],4)]},e.name)}))};t.PandemicDiseaseDisplay=l;var u=function(e){var t=e.symptom,n=t.name,a=t.desc,c=t.stealth,l=t.resistance,u=t.stage_speed,d=t.transmission,s=t.level,p=t.neutered,m=(0,r.map)((function(e,t){return{desc:e,label:t}}))(t.threshold_desc||{});return(0,o.createComponentVNode)(2,i.Section,{title:n,level:2,buttons:!!p&&(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",children:"Neutered"}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:2,children:a}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Level",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:c}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage Speed",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmission",children:d})]})})]}),m.length>0&&(0,o.createComponentVNode)(2,i.Section,{title:"Thresholds",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:e.desc},e.label)}))})})]})};t.PandemicSymptomDisplay=u;var d=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.resistances||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Antibodies",children:c.length>0?(0,o.createComponentVNode)(2,i.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eye-dropper",content:"Create vaccine bottle",disabled:!r.is_ready,onClick:function(){return n("create_vaccine_bottle",{index:e.id})}})},e.name)}))}):(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",mt:1,children:"No antibodies detected."})})};t.PandemicAntibodyDisplay=d;t.Pandemic=function(e){var t=(0,a.useBackend)(e).data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),!!t.has_blood&&(0,o.createFragment)([(0,o.createComponentVNode)(2,l,{state:e.state}),(0,o.createComponentVNode)(2,d,{state:e.state})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.PortableGenerator=function(e){var t,n=(0,r.useBackend)(e),i=n.act,c=n.data;return t=c.stack_percent>50?"good":c.stack_percent>15?"average":"bad",(0,o.createFragment)([!c.anchored&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Generator not anchored."}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power switch",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.active?"power-off":"times",onClick:function(){return i("toggle_power")},disabled:!c.ready_to_boot,children:c.active?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:c.sheet_name+" sheets",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t,children:c.sheets}),c.sheets>=1&&(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"eject",disabled:c.active,onClick:function(){return i("eject")},children:"Eject"})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current sheet level",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.stack_percent/100,ranges:{good:[.1,Infinity],average:[.01,.1],bad:[-Infinity,.01]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Heat level",children:c.current_heat<100?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:"Nominal"}):c.current_heat<200?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"average",children:"Caution"}):(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"bad",children:"DANGER"})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current output",children:c.power_output}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",onClick:function(){return i("lower_power")},children:c.power_generated}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return i("higher_power")},children:c.power_generated})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power available",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:!c.connected&&"bad",children:c.connected?c.power_available:"Unconnected"})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableScrubber=t.PortablePump=t.PortableBasicInfo=void 0;var o=n(1),r=n(3),a=n(2),i=n(37),c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.connected,l=i.holding,u=i.on,d=i.pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:c?"good":"average",children:c?"Connected":"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",minHeight:"82px",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!l,onClick:function(){return n("eject")}}),children:l?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:l.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.pressure})," kPa"]})]}):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No holding tank"})})],4)};t.PortableBasicInfo=c;t.PortablePump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.direction,u=(i.holding,i.target_pressure),d=i.default_pressure,s=i.min_pressure,p=i.max_pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Pump",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-in-alt":"sign-out-alt",content:l?"In":"Out",selected:l,onClick:function(){return n("direction")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,unit:"kPa",width:"75px",minValue:s,maxValue:p,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:u===s,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",disabled:u===d,onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:u===p,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})],4)};t.PortableScrubber=function(e){var t=(0,r.useBackend)(e),n=t.act,l=t.data.filter_types||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Filters",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,i.getGasLabel)(e.gas_id,e.gas_name),selected:e.enabled,onClick:function(){return n("toggle_filter",{val:e.gas_id})}},e.id)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.PowerMonitor=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(12),l=n(2);var u=5e5,d=function(e){var t=String(e.split(" ")[1]).toLowerCase();return["w","kw","mw","gw"].indexOf(t)},s=function(e){var t,n;function c(){var t;return(t=e.call(this)||this).state={sortByField:null},t}return n=e,(t=c).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,c.prototype.render=function(){var e=this,t=this.props.state.data,n=t.history,c=this.state.sortByField,s=n.supply[n.supply.length-1]||0,f=n.demand[n.demand.length-1]||0,h=n.supply.map((function(e,t){return[t,e]})),C=n.demand.map((function(e,t){return[t,e]})),g=Math.max.apply(Math,[u].concat(n.supply,n.demand)),b=(0,a.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===c&&(0,r.sortBy)((function(e){return e.name})),"charge"===c&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===c&&(0,r.sortBy)((function(e){return-d(e.load)}),(function(e){return-parseFloat(e.load)}))])(t.areas);return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"200px",children:(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Supply",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s,minValue:0,maxValue:g,color:"teal",content:(0,i.toFixed)(s/1e3)+" kW"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Draw",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:f,minValue:0,maxValue:g,color:"pink",content:(0,i.toFixed)(f/1e3)+" kW"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{position:"relative",height:"100%",children:[(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:h,rangeX:[0,h.length-1],rangeY:[0,g],strokeColor:"rgba(0, 181, 173, 1)",fillColor:"rgba(0, 181, 173, 0.25)"}),(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:C,rangeX:[0,C.length-1],rangeY:[0,g],strokeColor:"rgba(224, 57, 151, 1)",fillColor:"rgba(224, 57, 151, 0.25)"})]})})]}),(0,o.createComponentVNode)(2,l.Section,{children:[(0,o.createComponentVNode)(2,l.Box,{mb:1,children:[(0,o.createComponentVNode)(2,l.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"name"===c,content:"Name",onClick:function(){return e.setState({sortByField:"name"!==c&&"name"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"charge"===c,content:"Charge",onClick:function(){return e.setState({sortByField:"charge"!==c&&"charge"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"draw"===c,content:"Draw",onClick:function(){return e.setState({sortByField:"draw"!==c&&"draw"})}})]}),(0,o.createComponentVNode)(2,l.Table,{children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,l.Table.Cell,{textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),b.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,e.name,0),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,p,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.eqp}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.lgt}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.env}),2)],4,null,e.id)}))]})]})],4)},c}(o.Component);t.PowerMonitor=s;var p=function(e){var t=e.charging,n=e.charge;return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Icon,{width:"18px",textAlign:"center",name:0===t&&(n>50?"battery-half":"battery-quarter")||1===t&&"bolt"||2===t&&"battery-full",color:0===t&&(n>50?"yellow":"red")||1===t&&"yellow"||2===t&&"green"}),(0,o.createComponentVNode)(2,l.Box,{inline:!0,width:"36px",textAlign:"right",children:(0,i.toFixed)(n)+"%"})],4)};p.defaultHooks=c.pureComponentHooks;var m=function(e){var t=e.status,n=Boolean(2&t),r=Boolean(1&t),a=(n?"On":"Off")+" ["+(r?"auto":"manual")+"]";return(0,o.createComponentVNode)(2,l.ColorBox,{color:n?"good":"bad",content:r?undefined:"M",title:a})};m.defaultHooks=c.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Radio=void 0;var o=n(1),r=n(23),a=n(20),i=n(3),c=n(2),l=n(37);t.Radio=function(e){var t=(0,i.useBackend)(e),n=t.act,u=t.data,d=u.freqlock,s=u.frequency,p=u.minFrequency,m=u.maxFrequency,f=u.listening,h=u.broadcasting,C=u.command,g=u.useCommand,b=u.subspace,v=u.subspaceSwitchable,N=l.RADIO_CHANNELS.find((function(e){return e.freq===s})),V=(0,r.map)((function(e,t){return{name:t,status:!!e}}))(u.channels);return(0,o.createComponentVNode)(2,c.Section,{children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Frequency",children:[d&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"light-gray",children:(0,a.toFixed)(s/10,1)+" kHz"})||(0,o.createComponentVNode)(2,c.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:10,minValue:p/10,maxValue:m/10,value:s/10,format:function(e){return(0,a.toFixed)(e,1)},onDrag:function(e,t){return n("frequency",{adjust:t-s/10})}}),N&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:N.color,ml:2,children:["[",N.name,"]"]})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Audio",children:[(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:f?"volume-up":"volume-mute",selected:f,onClick:function(){return n("listen")}}),(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:h?"microphone":"microphone-slash",selected:h,onClick:function(){return n("broadcast")}}),!!C&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:g,content:"High volume "+(g?"ON":"OFF"),onClick:function(){return n("command")}}),!!v&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:b,content:"Subspace Tx "+(b?"ON":"OFF"),onClick:function(){return n("subspace")}})]}),!!b&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Channels",children:[0===V.length&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"bad",children:"No encryption keys installed."}),V.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{children:(0,o.createComponentVNode)(2,c.Button,{icon:e.status?"check-square-o":"square-o",selected:e.status,content:e.name,onClick:function(){return n("channel",{channel:e.name})}})},e.name)}))]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RapidPipeDispenser=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=["Atmospherics","Disposals","Transit Tubes"],l={Atmospherics:"wrench",Disposals:"trash-alt","Transit Tubes":"bus",Pipes:"grip-lines","Disposal Pipes":"grip-lines",Devices:"microchip","Heat Exchange":"thermometer-half","Station Equipment":"microchip"},u={grey:"#bbbbbb",amethyst:"#a365ff",blue:"#4466ff",brown:"#b26438",cyan:"#48eae8",dark:"#808080",green:"#1edd00",orange:"#ffa030",purple:"#b535ea",red:"#ff3333",violet:"#6e00f6",yellow:"#ffce26"},d=[{name:"Dispense",bitmask:1},{name:"Connect",bitmask:2},{name:"Destroy",bitmask:4},{name:"Paint",bitmask:8}];t.RapidPipeDispenser=function(e){var t=(0,a.useBackend)(e),n=t.act,s=t.data,p=s.category,m=s.categories,f=void 0===m?[]:m,h=s.selected_color,C=s.piping_layer,g=s.mode,b=s.preview_rows.flatMap((function(e){return e.previews}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Category",children:c.map((function(e,t){return(0,o.createComponentVNode)(2,i.Button,{selected:p===t,icon:l[e],color:"transparent",content:e,onClick:function(){return n("category",{category:t})}},e)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Modes",children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:g&e.bitmask,content:e.name,onClick:function(){return n("mode",{mode:e.bitmask})}},e.bitmask)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,width:"64px",color:u[h],content:h}),Object.keys(u).map((function(e){return(0,o.createComponentVNode)(2,i.ColorBox,{ml:1,color:u[e],onClick:function(){return n("color",{paint_color:e})}},e)}))]})]})}),(0,o.createComponentVNode)(2,i.Flex,{m:-.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,children:(0,o.createComponentVNode)(2,i.Section,{children:[0===p&&(0,o.createComponentVNode)(2,i.Box,{mb:1,children:[1,2,3].map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:e===C,content:"Layer "+e,onClick:function(){return n("piping_layer",{piping_layer:e})}},e)}))}),(0,o.createComponentVNode)(2,i.Box,{width:"108px",children:b.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{title:e.dir_name,selected:e.selected,style:{width:"48px",height:"48px",padding:0},onClick:function(){return n("setdir",{dir:e.dir,flipped:e.flipped})},children:(0,o.createComponentVNode)(2,i.Box,{className:(0,r.classes)(["pipes32x32",e.dir+"-"+e.icon_state]),style:{transform:"scale(1.5) translate(17%, 17%)"}})},e.dir)}))})]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,grow:1,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{fluid:!0,icon:l[e.cat_name],label:e.cat_name,children:function(){return e.recipes.map((function(t){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,ellipsis:!0,checked:t.selected,content:t.pipe_name,title:t.pipe_name,onClick:function(){return n("pipe_type",{pipe_type:t.pipe_index,category:e.cat_name})}},t.pipe_index)}))}},e.cat_name)}))})})})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SatelliteControl=void 0;var o=n(1),r=n(3),a=n(2),i=n(163);t.SatelliteControl=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.satellites||[];return(0,o.createFragment)([c.meteor_shield&&(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledListItem,{label:"Coverage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.meteor_shield_coverage/c.meteor_shield_coverage_max,content:100*c.meteor_shield_coverage/c.meteor_shield_coverage_max+"%",ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Satellite Controls",children:(0,o.createComponentVNode)(2,a.Box,{mr:-1,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.active,content:"#"+e.id+" "+e.mode,onClick:function(){return n("toggle",{id:e.id})}},e.id)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ScannerGate=void 0;var o=n(1),r=n(3),a=n(2),i=n(69),c=["Positive","Harmless","Minor","Medium","Harmful","Dangerous","BIOHAZARD"],l=[{name:"Human",value:"human"},{name:"Lizardperson",value:"lizard"},{name:"Flyperson",value:"fly"},{name:"Felinid",value:"felinid"},{name:"Plasmaman",value:"plasma"},{name:"Mothperson",value:"moth"},{name:"Jellyperson",value:"jelly"},{name:"Podperson",value:"pod"},{name:"Golem",value:"golem"},{name:"Zombie",value:"zombie"}],u=[{name:"Starving",value:150},{name:"Obese",value:600}];t.ScannerGate=function(e){var t=e.state,n=(0,r.useBackend)(e),a=n.act,c=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{locked:c.locked,onLockedStatusChange:function(){return a("toggle_lock")}}),!c.locked&&(0,o.createComponentVNode)(2,s,{state:t})],0)};var d={Off:{title:"Scanner Mode: Off",component:function(){return p}},Wanted:{title:"Scanner Mode: Wanted",component:function(){return m}},Guns:{title:"Scanner Mode: Guns",component:function(){return f}},Mindshield:{title:"Scanner Mode: Mindshield",component:function(){return h}},Disease:{title:"Scanner Mode: Disease",component:function(){return C}},Species:{title:"Scanner Mode: Species",component:function(){return g}},Nutrition:{title:"Scanner Mode: Nutrition",component:function(){return b}},Nanites:{title:"Scanner Mode: Nanites",component:function(){return v}}},s=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data.scan_mode,l=d[c]||d.off,u=l.component();return(0,o.createComponentVNode)(2,a.Section,{title:l.title,buttons:"Off"!==c&&(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"back",onClick:function(){return i("set_mode",{new_mode:"Off"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},p=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:"Select a scanning mode below."}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{content:"Wanted",onClick:function(){return t("set_mode",{new_mode:"Wanted"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Guns",onClick:function(){return t("set_mode",{new_mode:"Guns"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Mindshield",onClick:function(){return t("set_mode",{new_mode:"Mindshield"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Disease",onClick:function(){return t("set_mode",{new_mode:"Disease"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Species",onClick:function(){return t("set_mode",{new_mode:"Species"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nutrition",onClick:function(){return t("set_mode",{new_mode:"Nutrition"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nanites",onClick:function(){return t("set_mode",{new_mode:"Nanites"})}})]})],4)},m=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any warrants for their arrest."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},f=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any guns."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},h=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","a mindshield."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},C=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,l=n.data,u=l.reverse,d=l.disease_threshold;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",u?"does not have":"has"," ","a disease equal or worse than ",d,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e===d,content:e,onClick:function(){return i("set_disease_threshold",{new_threshold:e})}},e)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},g=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,u=c.reverse,d=c.target_species,s=l.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned is ",u?"not":""," ","of the ",s.name," species.","zombie"===d&&" All zombie types will be detected, including dormant zombies."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_species",{new_species:e.value})}},e.value)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},b=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,d=c.target_nutrition,s=u.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","the ",s.name," nutrition level."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_nutrition",{new_nutrition:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},v=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,u=c.nanite_cloud;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","nanite cloud ",u,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,width:"65px",minValue:1,maxValue:100,stepPixelSize:2,onChange:function(e,t){return i("set_nanite_cloud",{new_cloud:t})}})})})}),(0,o.createComponentVNode)(2,N,{state:t})],4)},N=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.reverse;return(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Scanning Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:i?"Inverted":"Default",icon:i?"random":"long-arrow-alt-right",onClick:function(){return n("toggle_reverse")},color:i?"bad":"good"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ShuttleManipulator=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.ShuttleManipulator=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.shuttles||[],u=c.templates||{},d=c.selected||{},s=c.existing_shuttle||{};return(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Status",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Table,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"JMP",onClick:function(){return n("jump_to",{type:"mobile",id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Fly",disabled:!e.can_fly,onClick:function(){return n("fly",{id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.id}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.status}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:[e.mode,!!e.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),e.timeleft,(0,o.createTextVNode)(")"),(0,o.createComponentVNode)(2,i.Button,{content:"Fast Travel",disabled:!e.can_fast_travel,onClick:function(){return n("fast_travel",{id:e.id})}},e.id)],0)]})]},e.id)}))})})}},"status"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Templates",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:(0,r.map)((function(e,t){var r=e.templates||[];return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.port_id,children:r.map((function(e){var t=e.shuttle_id===d.shuttle_id;return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{content:t?"Selected":"Select",selected:t,onClick:function(){return n("select_template",{shuttle_id:e.shuttle_id})}}),children:(!!e.description||!!e.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:e.description}),!!e.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:e.admin_notes})]})},e.shuttle_id)}))},t)}))(u)})})}},"templates"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Modification",children:(0,o.createComponentVNode)(2,i.Section,{children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{level:2,title:d.name,children:(!!d.description||!!d.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!d.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:d.description}),!!d.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:d.admin_notes})]})}),s?(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: "+s.name,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Jump To",onClick:function(){return n("jump_to",{type:"mobile",id:s.id})}}),children:[s.status,!!s.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),s.timeleft,(0,o.createTextVNode)(")")],0)]})})}):(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: None"}),(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Status",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Preview",onClick:function(){return n("preview",{shuttle_id:d.shuttle_id})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Load",color:"bad",onClick:function(){return n("load",{shuttle_id:d.shuttle_id})}})]})],0):"No shuttle selected"})},"modification")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SlimeBodySwapper=t.BodyEntry=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.body,n=e.swapFunc;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t.htmlcolor,children:t.name}),level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:{owner:"You Are Here",stranger:"Occupied",available:"Swap"}[t.occupied],selected:"owner"===t.occupied,color:"stranger"===t.occupied&&"bad",onClick:function(){return n()}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",bold:!0,color:{Dead:"bad",Unconscious:"average",Conscious:"good"}[t.status],children:t.status}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Jelly",children:t.exoticblood}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:t.area})]})})};t.BodyEntry=i;t.SlimeBodySwapper=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data.bodies,l=void 0===c?[]:c;return(0,o.createComponentVNode)(2,a.Section,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i,{body:e,swapFunc:function(){return n("swap",{ref:e.ref})}},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.Signaler=void 0;var o=n(1),r=n(2),a=n(3),i=n(20);t.Signaler=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.code,u=c.frequency,d=c.minFrequency,s=c.maxFrequency;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Frequency:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:d/10,maxValue:s/10,value:u/10,format:function(e){return(0,i.toFixed)(e,1)},width:13,onDrag:function(e,t){return n("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"freq"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.6,children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Code:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:l,width:13,onDrag:function(e,t){return n("code",{code:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"code"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.8,children:(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{mb:-.1,fluid:!0,icon:"arrow-up",content:"Send Signal",textAlign:"center",onClick:function(){return n("signal")}})})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmartVend=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.SmartVend=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Storage",buttons:!!c.isdryer&&(0,o.createComponentVNode)(2,i.Button,{icon:c.drying?"stop":"tint",onClick:function(){return n("Dry")},children:c.drying?"Stop drying":"Dry"}),children:0===c.contents.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Unfortunately, this ",c.name," is empty."]})||(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Item"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:c.verb?c.verb:"Dispense"})]}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:e.amount}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"One",disabled:e.amount<1,onClick:function(){return n("Release",{name:e.name,amount:1})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Many",disabled:e.amount<=1,onClick:function(){return n("Release",{name:e.name})}})]})]},t)}))(c.contents)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Smes=void 0;var o=n(1),r=n(3),a=n(2);t.Smes=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return t=l.capacityPercent>=100?"good":l.inputting?"average":"bad",n=l.outputting?"good":l.charge>0?"average":"bad",(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Stored Energy",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:.01*l.capacityPercent,ranges:{good:[.5,Infinity],average:[.15,.5],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.Section,{title:"Input",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.inputAttempt?"sync-alt":"times",selected:l.inputAttempt,onClick:function(){return c("tryinput")},children:l.inputAttempt?"Auto":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:t,children:l.capacityPercent>=100?"Fully Charged":l.inputting?"Charging":"Not Charging"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Input",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.inputLevel/l.inputLevelMax,content:l.inputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Input",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.inputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.inputLevelMax/1e3,onChange:function(e,t){return c("input",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Available",children:l.inputAvailable})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.outputAttempt?"power-off":"times",selected:l.outputAttempt,onClick:function(){return c("tryoutput")},children:l.outputAttempt?"On":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:n,children:l.outputting?"Sending":l.charge>0?"Not Sending":"No Charge"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.outputLevel/l.outputLevelMax,content:l.outputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.outputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.outputLevelMax/1e3,onChange:function(e,t){return c("output",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Outputting",children:l.outputUsed})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SmokeMachine=void 0;var o=n(1),r=n(3),a=n(2);t.SmokeMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.TankContents,l=(i.isTankLoaded,i.TankCurrentVolume),u=i.TankMaxVolume,d=i.active,s=i.setting,p=(i.screen,i.maxSetting),m=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Dispersal Tank",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",selected:d,content:d?"On":"Off",onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/u,ranges:{bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:l||0})," / "+u]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Range",children:[1,2,3,4,5].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:s===e,icon:"plus",content:3*e,disabled:m0?"good":"bad",children:m})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{ranges:{good:[.66,Infinity],average:[.33,.66],bad:[-Infinity,.33]},minValue:0,maxValue:1,value:l,content:c+" W"})})})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Tracking",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:0===p,onClick:function(){return n("tracking",{mode:0})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:"Timed",selected:1===p,onClick:function(){return n("tracking",{mode:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:2===p,disabled:!f,onClick:function(){return n("tracking",{mode:2})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Azimuth",children:[(0===p||1===p)&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"52px",unit:"\xb0",step:1,stepPixelSize:2,minValue:-360,maxValue:720,value:u,onDrag:function(e,t){return n("azimuth",{value:t})}}),1===p&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"80px",unit:"\xb0/m",step:.01,stepPixelSize:1,minValue:-s-.01,maxValue:s+.01,value:d,format:function(e){return(Math.sign(e)>0?"+":"-")+Math.abs(e)},onDrag:function(e,t){return n("azimuth_rate",{value:t})}}),2===p&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mt:"3px",children:[u+" \xb0"," (auto)"]})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpaceHeater=void 0;var o=n(1),r=n(3),a=n(2);t.SpaceHeater=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Cell",disabled:!i.hasPowercell||!i.open,onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,disabled:!i.hasPowercell,onClick:function(){return n("power")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cell",color:!i.hasPowercell&&"bad",children:i.hasPowercell&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.powerLevel/100,content:i.powerLevel+"%",ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]}})||"None"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Thermostat",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"18px",color:Math.abs(i.targetTemp-i.currentTemp)>50?"bad":Math.abs(i.targetTemp-i.currentTemp)>20?"average":"good",children:[i.currentTemp,"\xb0C"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:i.open&&(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.targetTemp),width:"65px",unit:"\xb0C",minValue:i.minTemp,maxValue:i.maxTemp,onChange:function(e,t){return n("target",{target:t})}})||i.targetTemp+"\xb0C"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:i.open?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"thermometer-half",content:"Auto",selected:"auto"===i.mode,onClick:function(){return n("mode",{mode:"auto"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fire-alt",content:"Heat",selected:"heat"===i.mode,onClick:function(){return n("mode",{mode:"heat"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fan",content:"Cool",selected:"cool"===i.mode,onClick:function(){return n("mode",{mode:"cool"})}})],4):"Auto"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider)]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpawnersMenu=void 0;var o=n(1),r=n(3),a=n(2);t.SpawnersMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.spawners||[];return(0,o.createComponentVNode)(2,a.Section,{children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" ("+e.amount_left+" left)",level:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Jump",onClick:function(){return n("jump",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Spawn",onClick:function(){return n("spawn",{name:e.name})}})],4),children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mb:1,fontSize:"20px",children:e.short_desc}),(0,o.createComponentVNode)(2,a.Box,{children:e.flavor_text}),!!e.important_info&&(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,color:"bad",fontSize:"26px",children:e.important_info})]},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.StationAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.StationAlertConsole=function(e){var t=(0,r.useBackend)(e).data.alarms||[],n=t.Fire||[],i=t.Atmosphere||[],c=t.Power||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Fire Alarms",children:(0,o.createVNode)(1,"ul",null,[0===n.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),n.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Atmospherics Alarms",children:(0,o.createVNode)(1,"ul",null,[0===i.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),i.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Alarms",children:(0,o.createVNode)(1,"ul",null,[0===c.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),c.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SuitStorageUnit=void 0;var o=n(1),r=n(3),a=n(2);t.SuitStorageUnit=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.locked,l=i.open,u=i.safeties,d=i.uv_active,s=i.occupied,p=i.suit,m=i.helmet,f=i.mask,h=i.storage;return(0,o.createFragment)([!(!s||!u)&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Biological entity detected in suit chamber. Please remove before continuing with operation."}),d&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Contents are currently being decontaminated. Please wait."})||(0,o.createComponentVNode)(2,a.Section,{title:"Storage",minHeight:"260px",buttons:(0,o.createFragment)([!l&&(0,o.createComponentVNode)(2,a.Button,{icon:c?"unlock":"lock",content:c?"Unlock":"Lock",onClick:function(){return n("lock")}}),!c&&(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-out-alt":"sign-in-alt",content:l?"Close":"Open",onClick:function(){return n("door")}})],0),children:c&&(0,o.createComponentVNode)(2,a.Box,{mt:6,bold:!0,textAlign:"center",fontSize:"40px",children:[(0,o.createComponentVNode)(2,a.Box,{children:"Unit Locked"}),(0,o.createComponentVNode)(2,a.Icon,{name:"lock"})]})||l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Helmet",children:(0,o.createComponentVNode)(2,a.Button,{icon:m?"square":"square-o",content:m||"Empty",disabled:!m,onClick:function(){return n("dispense",{item:"helmet"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suit",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"square":"square-o",content:p||"Empty",disabled:!p,onClick:function(){return n("dispense",{item:"suit"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mask",children:(0,o.createComponentVNode)(2,a.Button,{icon:f?"square":"square-o",content:f||"Empty",disabled:!f,onClick:function(){return n("dispense",{item:"mask"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Storage",children:(0,o.createComponentVNode)(2,a.Button,{icon:h?"square":"square-o",content:h||"Empty",disabled:!h,onClick:function(){return n("dispense",{item:"storage"})}})})]})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"recycle",content:"Decontaminate",disabled:s&&u,textAlign:"center",onClick:function(){return n("uv")}})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Tank=void 0;var o=n(1),r=n(3),a=n(2);t.Tank=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.tankPressure/1013,content:i.tankPressure+" kPa",ranges:{good:[.35,Infinity],average:[.15,.35],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:i.ReleasePressure===i.minReleasePressure,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.releasePressure),width:"65px",unit:"kPa",minValue:i.minReleasePressure,maxValue:i.maxReleasePressure,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:i.ReleasePressure===i.maxReleasePressure,onClick:function(){return n("pressure",{pressure:"max"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"",disabled:i.ReleasePressure===i.defaultReleasePressure,onClick:function(){return n("pressure",{pressure:"reset"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TankDispenser=void 0;var o=n(1),r=n(3),a=n(2);t.TankDispenser=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plasma",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.plasma?"square":"square-o",content:"Dispense",disabled:!i.plasma,onClick:function(){return n("plasma")}}),children:i.plasma}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Oxygen",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.oxygen?"square":"square-o",content:"Dispense",disabled:!i.oxygen,onClick:function(){return n("oxygen")}}),children:i.oxygen})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Teleporter=void 0;var o=n(1),r=n(3),a=n(2);t.Teleporter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.calibrated,l=i.calibrating,u=i.power_station,d=i.regime_set,s=i.teleporter_hub,p=i.target;return(0,o.createComponentVNode)(2,a.Section,{children:!u&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No power station linked."})||!s&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No hub linked."})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Regime",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Change Regime",onClick:function(){return n("regimeset")}}),children:d}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Set Target",onClick:function(){return n("settarget")}}),children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Calibration",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Calibrate Hub",onClick:function(){return n("calibrate")}}),children:l&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"In Progress"})||c&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Optimal"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Sub-Optimal"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ThermoMachine=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ThermoMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.temperature,format:function(e){return(0,r.toFixed)(e,2)}})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.pressure,format:function(e){return(0,r.toFixed)(e,2)}})," kPa"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:Math.round(c.target),unit:"K",width:"62px",minValue:Math.round(c.min),maxValue:Math.round(c.max),step:5,stepPixelSize:3,onDrag:function(e,t){return n("target",{target:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:c.target===c.min,title:"Minimum temperature",onClick:function(){return n("target",{target:c.min})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",disabled:c.target===c.initial,title:"Room Temperature",onClick:function(){return n("target",{target:c.initial})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:c.target===c.max,title:"Maximum Temperature",onClick:function(){return n("target",{target:c.max})}})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.TurbineComputer=void 0;var o=n(1),r=n(3),a=n(2);t.TurbineComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=Boolean(i.compressor&&!i.compressor_broke&&i.turbine&&!i.turbine_broke);return(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:i.online?"power-off":"times",content:i.online?"Online":"Offline",selected:i.online,disabled:!c,onClick:function(){return n("toggle_power")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reconnect",onClick:function(){return n("reconnect")}})],4),children:!c&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Compressor Status",color:!i.compressor||i.compressor_broke?"bad":"good",children:i.compressor_broke?i.compressor?"Offline":"Missing":"Online"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Status",color:!i.turbine||i.turbine_broke?"bad":"good",children:i.turbine_broke?i.turbine?"Offline":"Missing":"Online"})]})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Speed",children:[i.rpm," RPM"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Internal Temp",children:[i.temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Generated Power",children:i.power})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.VaultController=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.VaultController=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Lock Status: ",buttons:(0,o.createComponentVNode)(2,i.Button,{content:c.doorstatus?"Locked":"Unlocked",icon:c.doorstatus?"lock":"unlock",disabled:c.stored1?r-1:0),i=1;i1?t-1:0),o=1;o MechBayPowerConsole, scrollable: false, }, + nanite_chamber_control: { + component: () => NaniteChamberControl, + scrollable: true, + }, + nanite_cloud_control: { + component: () => NaniteCloudControl, + scrollable: true, + }, + nanite_program_hub: { + component: () => NaniteProgramHub, + scrollable: true, + }, + nanite_programmer: { + component: () => NaniteProgrammer, + scrollable: true, + }, + nanite_remote: { + component: () => NaniteRemote, + scrollable: true, + }, mulebot: { component: () => Mule, scrollable: false, From 9cb4c3c0626a4b310eae7794d659ace3a52d4452 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 11 Feb 2020 23:25:18 -0700 Subject: [PATCH 067/137] replace can_start --- code/modules/surgery/advanced/bioware/bioware_surgery.dm | 2 +- code/modules/surgery/advanced/brainwashing.dm | 2 +- code/modules/surgery/advanced/lobotomy.dm | 2 +- code/modules/surgery/advanced/necrotic_revival.dm | 2 +- code/modules/surgery/advanced/pacification.dm | 2 +- code/modules/surgery/advanced/revival.dm | 2 +- code/modules/surgery/advanced/viral_bonding.dm | 2 +- code/modules/surgery/brain_surgery.dm | 2 +- code/modules/surgery/core_removal.dm | 2 +- code/modules/surgery/coronary_bypass.dm | 2 +- code/modules/surgery/experimental_dissection.dm | 2 +- code/modules/surgery/eye_surgery.dm | 2 +- code/modules/surgery/lipoplasty.dm | 2 +- code/modules/surgery/lobectomy.dm | 2 +- code/modules/surgery/prosthetic_replacement.dm | 2 +- code/modules/surgery/surgery.dm | 2 +- 16 files changed, 16 insertions(+), 16 deletions(-) diff --git a/code/modules/surgery/advanced/bioware/bioware_surgery.dm b/code/modules/surgery/advanced/bioware/bioware_surgery.dm index eb8f739193..a68ac6eb1c 100644 --- a/code/modules/surgery/advanced/bioware/bioware_surgery.dm +++ b/code/modules/surgery/advanced/bioware/bioware_surgery.dm @@ -2,7 +2,7 @@ name = "enhancement surgery" var/bioware_target = BIOWARE_GENERIC -/datum/surgery/advanced/bioware/can_start(mob/user, mob/living/carbon/human/target) +/datum/surgery/advanced/bioware/can_start(mob/user, mob/living/carbon/human/target, obj/item/tool) if(!..()) return FALSE if(!istype(target)) diff --git a/code/modules/surgery/advanced/brainwashing.dm b/code/modules/surgery/advanced/brainwashing.dm index b067cce56b..28103f7f97 100644 --- a/code/modules/surgery/advanced/brainwashing.dm +++ b/code/modules/surgery/advanced/brainwashing.dm @@ -16,7 +16,7 @@ target_mobtypes = list(/mob/living/carbon/human) possible_locs = list(BODY_ZONE_HEAD) -/datum/surgery/advanced/brainwashing/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/advanced/brainwashing/can_start(mob/user, mob/living/carbon/target, obj/item/tool) if(!..()) return FALSE var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) diff --git a/code/modules/surgery/advanced/lobotomy.dm b/code/modules/surgery/advanced/lobotomy.dm index 0149fc6c27..a41e72b76d 100644 --- a/code/modules/surgery/advanced/lobotomy.dm +++ b/code/modules/surgery/advanced/lobotomy.dm @@ -12,7 +12,7 @@ target_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey) possible_locs = list(BODY_ZONE_HEAD) requires_bodypart_type = 0 -/datum/surgery/advanced/lobotomy/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/advanced/lobotomy/can_start(mob/user, mob/living/carbon/target, obj/item/tool) if(!..()) return FALSE var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) diff --git a/code/modules/surgery/advanced/necrotic_revival.dm b/code/modules/surgery/advanced/necrotic_revival.dm index d95d0a3ac7..bae2bc064b 100644 --- a/code/modules/surgery/advanced/necrotic_revival.dm +++ b/code/modules/surgery/advanced/necrotic_revival.dm @@ -8,7 +8,7 @@ /datum/surgery_step/bionecrosis, /datum/surgery_step/close) possible_locs = list(BODY_ZONE_HEAD) -/datum/surgery/advanced/necrotic_revival/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/advanced/necrotic_revival/can_start(mob/user, mob/living/carbon/target, obj/item/tool) . = ..() var/obj/item/organ/zombie_infection/ZI = target.getorganslot(ORGAN_SLOT_ZOMBIE) if(ZI) diff --git a/code/modules/surgery/advanced/pacification.dm b/code/modules/surgery/advanced/pacification.dm index 866c85842b..7b85015420 100644 --- a/code/modules/surgery/advanced/pacification.dm +++ b/code/modules/surgery/advanced/pacification.dm @@ -11,7 +11,7 @@ target_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey) possible_locs = list(BODY_ZONE_HEAD) requires_bodypart_type = 0 -/datum/surgery/advanced/pacify/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/advanced/pacify/can_start(mob/user, mob/living/carbon/target, obj/item/tool) . = ..() var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) if(!B) diff --git a/code/modules/surgery/advanced/revival.dm b/code/modules/surgery/advanced/revival.dm index fbfec404b2..e9f8ff4446 100644 --- a/code/modules/surgery/advanced/revival.dm +++ b/code/modules/surgery/advanced/revival.dm @@ -12,7 +12,7 @@ target_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey) possible_locs = list(BODY_ZONE_HEAD) requires_bodypart_type = 0 -/datum/surgery/advanced/revival/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/advanced/revival/can_start(mob/user, mob/living/carbon/target, obj/item/tool) if(!..()) return FALSE if(target.stat != DEAD) diff --git a/code/modules/surgery/advanced/viral_bonding.dm b/code/modules/surgery/advanced/viral_bonding.dm index 86832602e8..1cb06d1560 100644 --- a/code/modules/surgery/advanced/viral_bonding.dm +++ b/code/modules/surgery/advanced/viral_bonding.dm @@ -10,7 +10,7 @@ target_mobtypes = list(/mob/living/carbon/human, /mob/living/carbon/monkey) possible_locs = list(BODY_ZONE_CHEST) -/datum/surgery/advanced/viral_bonding/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/advanced/viral_bonding/can_start(mob/user, mob/living/carbon/target, obj/item/tool) if(!..()) return FALSE if(!LAZYLEN(target.diseases)) diff --git a/code/modules/surgery/brain_surgery.dm b/code/modules/surgery/brain_surgery.dm index d86f5731c7..afaa66dae9 100644 --- a/code/modules/surgery/brain_surgery.dm +++ b/code/modules/surgery/brain_surgery.dm @@ -15,7 +15,7 @@ name = "fix brain" implements = list(TOOL_HEMOSTAT = 85, TOOL_SCREWDRIVER = 35, /obj/item/pen = 15) //don't worry, pouring some alcohol on their open brain will get that chance to 100 time = 120 //long and complicated -/datum/surgery/brain_surgery/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/brain_surgery/can_start(mob/user, mob/living/carbon/target, obj/item/tool) var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) if(!B) return FALSE diff --git a/code/modules/surgery/core_removal.dm b/code/modules/surgery/core_removal.dm index 07b762bd2f..683663c241 100644 --- a/code/modules/surgery/core_removal.dm +++ b/code/modules/surgery/core_removal.dm @@ -6,7 +6,7 @@ lying_required = FALSE ignore_clothes = TRUE -/datum/surgery/core_removal/can_start(mob/user, mob/living/target) +/datum/surgery/core_removal/can_start(mob/user, mob/living/target, obj/item/tool) if(target.stat == DEAD) return 1 return 0 diff --git a/code/modules/surgery/coronary_bypass.dm b/code/modules/surgery/coronary_bypass.dm index 71a48ae68c..af736e393c 100644 --- a/code/modules/surgery/coronary_bypass.dm +++ b/code/modules/surgery/coronary_bypass.dm @@ -4,7 +4,7 @@ /datum/surgery_step/incise_heart, /datum/surgery_step/coronary_bypass, /datum/surgery_step/close) possible_locs = list(BODY_ZONE_CHEST) -/datum/surgery/coronary_bypass/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/coronary_bypass/can_start(mob/user, mob/living/carbon/target, obj/item/tool) var/obj/item/organ/heart/H = target.getorganslot(ORGAN_SLOT_HEART) if(H) if(H.damage > 60 && !H.operated) diff --git a/code/modules/surgery/experimental_dissection.dm b/code/modules/surgery/experimental_dissection.dm index 40fe90a829..cc94cc23c4 100644 --- a/code/modules/surgery/experimental_dissection.dm +++ b/code/modules/surgery/experimental_dissection.dm @@ -15,7 +15,7 @@ requires_tech = FALSE var/value_multiplier = 1 -/datum/surgery/advanced/experimental_dissection/can_start(mob/user, mob/living/target) +/datum/surgery/advanced/experimental_dissection/can_start(mob/user, mob/living/target, obj/item/tool) . = ..() if(HAS_TRAIT_FROM(target, TRAIT_DISSECTED,"[name]")) return FALSE diff --git a/code/modules/surgery/eye_surgery.dm b/code/modules/surgery/eye_surgery.dm index c104afd25a..006dbe2af1 100644 --- a/code/modules/surgery/eye_surgery.dm +++ b/code/modules/surgery/eye_surgery.dm @@ -9,7 +9,7 @@ name = "fix eyes" implements = list(TOOL_HEMOSTAT = 100, TOOL_SCREWDRIVER = 45, /obj/item/pen = 25) time = 64 -/datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target, obj/item/tool) var/obj/item/organ/eyes/E = target.getorganslot(ORGAN_SLOT_EYES) if(!E) to_chat(user, "It's hard to do surgery on someone's eyes when [target.p_they()] [target.p_do()]n't have any.") diff --git a/code/modules/surgery/lipoplasty.dm b/code/modules/surgery/lipoplasty.dm index b774883528..63e828d3c9 100644 --- a/code/modules/surgery/lipoplasty.dm +++ b/code/modules/surgery/lipoplasty.dm @@ -2,7 +2,7 @@ name = "Lipoplasty" steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/cut_fat, /datum/surgery_step/remove_fat, /datum/surgery_step/close) possible_locs = list(BODY_ZONE_CHEST) -/datum/surgery/lipoplasty/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/lipoplasty/can_start(mob/user, mob/living/carbon/target, obj/item/tool) if(HAS_TRAIT(target, TRAIT_FAT)) return 1 return 0 diff --git a/code/modules/surgery/lobectomy.dm b/code/modules/surgery/lobectomy.dm index 297be175a0..7ef7e4cd7f 100644 --- a/code/modules/surgery/lobectomy.dm +++ b/code/modules/surgery/lobectomy.dm @@ -4,7 +4,7 @@ /datum/surgery_step/lobectomy, /datum/surgery_step/close) possible_locs = list(BODY_ZONE_CHEST) -/datum/surgery/lobectomy/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/lobectomy/can_start(mob/user, mob/living/carbon/target, obj/item/tool) var/obj/item/organ/lungs/L = target.getorganslot(ORGAN_SLOT_LUNGS) if(L) if(L.damage > 60 && !L.operated) diff --git a/code/modules/surgery/prosthetic_replacement.dm b/code/modules/surgery/prosthetic_replacement.dm index 8efa40a70a..62ce16e7e6 100644 --- a/code/modules/surgery/prosthetic_replacement.dm +++ b/code/modules/surgery/prosthetic_replacement.dm @@ -5,7 +5,7 @@ possible_locs = list(BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG, BODY_ZONE_HEAD) requires_bodypart = FALSE //need a missing limb requires_bodypart_type = 0 -/datum/surgery/prosthetic_replacement/can_start(mob/user, mob/living/carbon/target) +/datum/surgery/prosthetic_replacement/can_start(mob/user, mob/living/carbon/target, obj/item/tool) if(!iscarbon(target)) return 0 var/mob/living/carbon/C = target diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index a920ea765a..292984ac3e 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -37,7 +37,7 @@ return ..() -/datum/surgery/proc/can_start(mob/user, mob/living/patient) //FALSE to not show in list +/datum/surgery/proc/can_start(mob/user, mob/living/patient, obj/item/tool) //FALSE to not show in list . = TRUE if(replaced_by == /datum/surgery) return FALSE From 70e752dbc9d46bc2a657133aac037106aeb9ac22 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 11 Feb 2020 23:45:22 -0700 Subject: [PATCH 068/137] this is totally not laggy --- code/game/objects/items/storage/belt.dm | 10 +++++-- .../crates_lockers/closets/secure/medical.dm | 2 +- code/modules/surgery/helpers.dm | 4 +-- code/modules/surgery/surgery.dm | 27 +++++++++---------- code/modules/surgery/tools.dm | 20 ++++++++++++++ 5 files changed, 44 insertions(+), 19 deletions(-) diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index 082cbe245d..70a41c3d21 100755 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -179,17 +179,23 @@ /obj/item/pinpointer/crew )) - /obj/item/storage/belt/medical/surgery_belt_adv name = "surgical supply belt" desc = "A specialized belt designed for holding surgical equipment. It seems to have specific pockets for each and every surgical tool you can think of." content_overlays = FALSE + var/advanced_drapes = FALSE /obj/item/storage/belt/medical/surgery_belt_adv/PopulateContents() new /obj/item/scalpel/advanced(src) new /obj/item/retractor/advanced(src) new /obj/item/surgicaldrill/advanced(src) - new /obj/item/surgical_drapes(src) + if(advanced_drapes) + new /obj/item/surgical_drapes/advanced(src) + else + new /obj/item/surgical_drapes(src) + +/obj/item/storage/belt/medical/surgery_belt_adv/cmo + advanced_drapes = TRUE /obj/item/storage/belt/security name = "security belt" diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index 3167d8ac18..90b57471b4 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -76,7 +76,7 @@ new /obj/item/door_remote/chief_medical_officer(src) new /obj/item/clothing/neck/petcollar(src) new /obj/item/pet_carrier(src) - new /obj/item/storage/belt/medical/surgery_belt_adv(src) + new /obj/item/storage/belt/medical/surgery_belt_adv/cmo(src) new /obj/item/wallframe/defib_mount(src) new /obj/item/circuitboard/machine/techfab/department/medical(src) new /obj/item/storage/photo_album/CMO(src) diff --git a/code/modules/surgery/helpers.dm b/code/modules/surgery/helpers.dm index cdae1aea48..773048f838 100644 --- a/code/modules/surgery/helpers.dm +++ b/code/modules/surgery/helpers.dm @@ -34,7 +34,7 @@ continue if(S.lying_required && !(M.lying)) continue - if(!S.can_start(user, M)) + if(!S.can_start(user, M, I)) continue for(var/path in S.target_mobtypes) if(istype(M, path)) @@ -64,7 +64,7 @@ return if(S.lying_required && !(M.lying)) return - if(!S.can_start(user, M)) + if(!S.can_start(user, M, I)) return if(S.ignore_clothes || get_location_accessible(M, selected_zone)) diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index 292984ac3e..a289f25d8b 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -55,27 +55,26 @@ if(requires_tech) . = FALSE + var/list/advanced_surgeries = list() if(iscyborg(user)) var/mob/living/silicon/robot/R = user var/obj/item/surgical_processor/SP = locate() in R.module.modules if(SP) - if (replaced_by in SP.advanced_surgeries) - return . - if(type in SP.advanced_surgeries) - return TRUE - + advanced_surgeries |= SP.advanced_surgeries var/turf/T = get_turf(patient) var/obj/structure/table/optable/table = locate(/obj/structure/table/optable, T) - if(table) - if(!table.computer) - return . - if(table.computer.stat & (NOPOWER|BROKEN)) - return . - if(replaced_by in table.computer.advanced_surgeries) - return FALSE - if(type in table.computer.advanced_surgeries) - return TRUE + if(table?.computer && !CHECK_BITFIELD(table.computer.stat, NOPOWER|BROKEN)) + advanced_surgeries |= table.computer.advanced_surgeries + + if(istype(tool, /obj/item/surgical_drapes/advanced)) + var/obj/item/surgical_drapes/advanced/A = tool + advanced_surgeries |= A.get_advanced_surgeries() + + if(replaced_by in advanced_surgeries) + return FALSE + if(type in advanced_surgeries) + return TRUE /datum/surgery/proc/next_step(mob/user, intent) if(step_in_progress) diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm index c8fe7597da..1a56a510c5 100644 --- a/code/modules/surgery/tools.dm +++ b/code/modules/surgery/tools.dm @@ -287,6 +287,26 @@ if(!attempt_initiate_surgery(src, M, user)) ..() +/obj/item/surgical_drapes/advanced + name = "smart surgical drapes" + desc = "A quite quirky set of drapes with wireless synchronization to the station's research networks, with an integrated display allowing users to execute advanced surgeries without the aid of an operating computer." + var/datum/techweb/linked_techweb + +/obj/item/surgical_drapes/advanced/Initialize(mapload) + . = ..() + linked_techweb = SSresearch.science_tech + +/obj/item/surgical_drapes/advanced/proc/get_advanced_surgeries() + . = list() + if(!linked_techweb) + return + for(var/subtype in subtypesof(/datum/design/surgery)) + var/datum/design/surgery/prototype = subtype + var/id = initial(prototype.id) + if(id in linked_techweb.researched_designs) + prototype = SSresearch.techweb_design_by_id(id) + . |= prototype.surgery + /obj/item/organ_storage //allows medical cyborgs to manipulate organs without hands name = "organ storage bag" desc = "A container for holding body parts." From 5c102d4da0d3d85aaecb776097685e014b23f162 Mon Sep 17 00:00:00 2001 From: Artur Date: Wed, 12 Feb 2020 11:30:55 +0200 Subject: [PATCH 069/137] Ghommies suggestions --- .../research/nanites/nanite_hijacker.dm | 159 ------------------ .../research/nanites/nanite_programmer.dm | 2 +- .../nanites/nanite_programs/buffing.dm | 2 +- 3 files changed, 2 insertions(+), 161 deletions(-) delete mode 100644 code/modules/research/nanites/nanite_hijacker.dm diff --git a/code/modules/research/nanites/nanite_hijacker.dm b/code/modules/research/nanites/nanite_hijacker.dm deleted file mode 100644 index 8e5e68dd18..0000000000 --- a/code/modules/research/nanites/nanite_hijacker.dm +++ /dev/null @@ -1,159 +0,0 @@ -/* Doesnt work anymore due to code updates, was unused anyways. -/obj/item/nanite_hijacker - name = "nanite remote control" //fake name - desc = "A device that can load nanite programming disks, edit them at will, and imprint them to nanites remotely." - w_class = WEIGHT_CLASS_SMALL - icon = 'icons/obj/device.dmi' - icon_state = "nanite_remote" - item_flags = NOBLUDGEON - var/obj/item/disk/nanite_program/disk - var/datum/nanite_program/program - -/obj/item/nanite_hijacker/AltClick(mob/user) - . = ..() - if(!user.canUseTopic(src, BE_CLOSE)) - return - if(disk) - eject() - return TRUE - -/obj/item/nanite_hijacker/examine(mob/user) - . = ..() - if(disk) - . += "Alt-click [src] to eject the disk." - -/obj/item/nanite_hijacker/attackby(obj/item/I, mob/user) - if(istype(I, /obj/item/disk/nanite_program)) - var/obj/item/disk/nanite_program/N = I - if(disk) - eject() - if(user.transferItemToLoc(N, src)) - to_chat(user, "You insert [N] into [src]") - disk = N - program = N.program - else - ..() - -/obj/item/nanite_hijacker/proc/eject(mob/living/user) - if(!disk) - return - if(!istype(user) || !Adjacent(user) || !user.put_in_hand(disk)) - disk.forceMove(drop_location()) - disk = null - program = null - -/obj/item/nanite_hijacker/afterattack(atom/target, mob/user, etc) - if(!disk || !disk.program) - return - if(isliving(target)) - var/success = SEND_SIGNAL(target, COMSIG_NANITE_ADD_PROGRAM, program.copy()) - switch(success) - if(NONE) - to_chat(user, "You don't detect any nanites in [target].") - if(COMPONENT_PROGRAM_INSTALLED) - to_chat(user, "You insert the currently loaded program into [target]'s nanites.") - if(COMPONENT_PROGRAM_NOT_INSTALLED) - to_chat(user, "You try to insert the currently loaded program into [target]'s nanites, but the installation fails.") - -//Same UI as the nanite programmer, as it pretty much does the same -/obj/item/nanite_hijacker/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) - SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "nanite_programmer", "Internal Nanite Programmer", 420, 800, master_ui, state) - ui.open() - -/obj/item/nanite_hijacker/ui_data() - var/list/data = list() - data["has_disk"] = istype(disk) - data["has_program"] = istype(program) - if(program) - data["name"] = program.name - data["desc"] = program.desc - data["use_rate"] = program.use_rate - data["can_trigger"] = program.can_trigger - data["trigger_cost"] = program.trigger_cost - data["trigger_cooldown"] = program.trigger_cooldown / 10 - - data["activated"] = program.activated - data["activation_delay"] = program.activation_delay - data["timer"] = program.timer - data["activation_code"] = program.activation_code - data["deactivation_code"] = program.deactivation_code - data["kill_code"] = program.kill_code - data["trigger_code"] = program.trigger_code - data["timer_type"] = program.get_timer_type_text() - - var/list/extra_settings = list() - for(var/X in program.extra_settings) - var/list/setting = list() - setting["name"] = X - setting["value"] = program.get_extra_setting(X) - extra_settings += list(setting) - data["extra_settings"] = extra_settings - if(LAZYLEN(extra_settings)) - data["has_extra_settings"] = TRUE - - return data - -/obj/item/nanite_hijacker/ui_act(action, params) - if(..()) - return - switch(action) - if("eject") - eject(usr) - . = TRUE - if("toggle_active") - program.activated = !program.activated //we don't use the activation procs since we aren't in a mob - if(program.activated) - program.activation_delay = 0 - . = TRUE - if("set_code") - var/new_code = input("Set code (0000-9999):", name, null) as null|num - if(!isnull(new_code)) - new_code = CLAMP(round(new_code, 1),0,9999) - else - return - - var/target_code = params["target_code"] - switch(target_code) - if("activation") - program.activation_code = CLAMP(round(new_code, 1),0,9999) - if("deactivation") - program.deactivation_code = CLAMP(round(new_code, 1),0,9999) - if("kill") - program.kill_code = CLAMP(round(new_code, 1),0,9999) - if("trigger") - program.trigger_code = CLAMP(round(new_code, 1),0,9999) - . = TRUE - if("set_extra_setting") - program.set_extra_setting(usr, params["target_setting"]) - . = TRUE - if("set_activation_delay") - var/delay = input("Set activation delay in seconds (0-1800):", name, program.activation_delay) as null|num - if(!isnull(delay)) - delay = CLAMP(round(delay, 1),0,1800) - program.activation_delay = delay - if(delay) - program.activated = FALSE - . = TRUE - if("set_timer") - var/timer = input("Set timer in seconds (10-3600):", name, program.timer) as null|num - if(!isnull(timer)) - if(!timer == 0) - timer = CLAMP(round(timer, 1),10,3600) - program.timer = timer - . = TRUE - if("set_timer_type") - var/new_type = input("Choose the timer effect","Timer Effect") as null|anything in list("Deactivate","Self-Delete","Trigger","Reset Activation Timer") - if(new_type) - switch(new_type) - if("Deactivate") - program.timer_type = NANITE_TIMER_DEACTIVATE - if("Self-Delete") - program.timer_type = NANITE_TIMER_SELFDELETE - if("Trigger") - program.timer_type = NANITE_TIMER_TRIGGER - if("Reset Activation Timer") - program.timer_type = NANITE_TIMER_RESET - . = TRUE -*/ diff --git a/code/modules/research/nanites/nanite_programmer.dm b/code/modules/research/nanites/nanite_programmer.dm index e61f58c81e..d81880c6d9 100644 --- a/code/modules/research/nanites/nanite_programmer.dm +++ b/code/modules/research/nanites/nanite_programmer.dm @@ -131,7 +131,7 @@ program.timer_trigger_delay = timer . = TRUE -/obj/machinery/nanite_programmer/Hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode) +/obj/machinery/nanite_programmer/Hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode, atom/movable/source) . = ..() var/static/regex/when = regex("(?:^\\W*when|when\\W*$)", "i") //starts or ends with when if(findtext(raw_message, when) && !istype(speaker, /obj/machinery/nanite_programmer)) diff --git a/code/modules/research/nanites/nanite_programs/buffing.dm b/code/modules/research/nanites/nanite_programs/buffing.dm index ed3f420091..f52ae4843a 100644 --- a/code/modules/research/nanites/nanite_programs/buffing.dm +++ b/code/modules/research/nanites/nanite_programs/buffing.dm @@ -27,7 +27,7 @@ rogue_types = list(/datum/nanite_program/toxic, /datum/nanite_program/nerve_decay) /datum/nanite_program/adrenaline/on_trigger() - host_mob.do_adrenaline(-10, TRUE, TRUE, FALSE, TRUE, /datum/reagent/medicine/stimulants = 1.5, "You feel a sudden surge of energy!", FALSE, FALSE, FALSE) + host_mob.do_adrenaline(-10, TRUE, TRUE, FALSE, TRUE, list(/datum/reagent/medicine/stimulants = 1.5), "You feel a sudden surge of energy!", FALSE, FALSE, FALSE) /datum/nanite_program/hardening name = "Dermal Hardening" From 63482e397a76783c50804214ae053a719110a285 Mon Sep 17 00:00:00 2001 From: Artur Date: Wed, 12 Feb 2020 11:39:08 +0200 Subject: [PATCH 070/137] How could i forget. --- tgstation.dme | 1 - 1 file changed, 1 deletion(-) diff --git a/tgstation.dme b/tgstation.dme index 4aaa8f477d..ac66fb7d12 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2801,7 +2801,6 @@ #include "code\modules\research\nanites\nanite_chamber.dm" #include "code\modules\research\nanites\nanite_chamber_computer.dm" #include "code\modules\research\nanites\nanite_cloud_controller.dm" -#include "code\modules\research\nanites\nanite_hijacker.dm" #include "code\modules\research\nanites\nanite_misc_items.dm" #include "code\modules\research\nanites\nanite_program_hub.dm" #include "code\modules\research\nanites\nanite_programmer.dm" From 25c677942abb7b0cc5cf408a41ddf6f4bef89066 Mon Sep 17 00:00:00 2001 From: Detective-Google <48196179+Detective-Google@users.noreply.github.com> Date: Wed, 12 Feb 2020 23:43:10 -0600 Subject: [PATCH 071/137] Update code/modules/pool/pool_main.dm as per ghom suggestion Co-Authored-By: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/modules/pool/pool_main.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 9d37bd5fd5..e3965dd1e5 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -72,7 +72,7 @@ /turf/open/pool/Exit(atom/movable/AM, atom/newloc) if(!AM.has_gravity(src)) return ..() - if(isliving(AM) || istype(AM, /obj/structure)) + if(isliving(AM) || isstructure(AM)) if(AM.throwing) return ..() //WHEEEEEEEEEEE if(istype(AM, /obj/structure) && isliving(AM.pulledby)) From a8aa9ac24b1bb65243a93030a5781ef1eee70bfe Mon Sep 17 00:00:00 2001 From: Detective-Google <48196179+Detective-Google@users.noreply.github.com> Date: Wed, 12 Feb 2020 23:43:32 -0600 Subject: [PATCH 072/137] Update code/modules/pool/pool_drain.dm as per ghom suggestion 2 Co-Authored-By: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/modules/pool/pool_drain.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 2fa89742c0..ef6818e809 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -94,7 +94,7 @@ H.adjustBruteLoss(2) to_chat(H, "You're caught in the drain!") else - H.apply_damage(2.5, BRUTE, pick("l_leg", "r_leg")) //drain should only target the legs + H.apply_damage(2.5, BRUTE, pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG)) //drain should only target the legs to_chat(H, "Your legs are caught in the drain!") else for(var/turf/open/pool/P in controller.linked_turfs) From b6cbb3f50571753665d7e02c163cae53d092023f Mon Sep 17 00:00:00 2001 From: Detective Google <48196179+Detective-Google@users.noreply.github.com> Date: Thu, 13 Feb 2020 00:12:11 -0600 Subject: [PATCH 073/137] woo yeah yeah woo --- code/__DEFINES/components.dm | 2 -- code/modules/pool/pool_controller.dm | 51 ++++++++++++++-------------- code/modules/pool/pool_drain.dm | 4 +++ code/modules/pool/pool_main.dm | 4 ++- 4 files changed, 33 insertions(+), 28 deletions(-) diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index 22e74f58be..0efd5a1f79 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -330,8 +330,6 @@ #define COMSIG_ACTION_TRIGGER "action_trigger" //from base of datum/action/proc/Trigger(): (datum/action) #define COMPONENT_ACTION_BLOCK_TRIGGER 1 -/*******Element signals*******/ - /*******Non-Signal Component Related Defines*******/ //Redirection component init flags diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index 9c6d976343..a4a4980180 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -225,31 +225,32 @@ process_reagents() /obj/machinery/pool/controller/proc/process_pool() - if(!drained) - for(var/mob/living/M in mobs_in_pool) - switch(temperature) //Apply different effects based on what the temperature is set to. - if(POOL_SCALDING) //Scalding - M.adjust_bodytemperature(50,0,500) - if(POOL_WARM) //Warm - M.adjust_bodytemperature(20,0,360) //Heats up mobs till the termometer shows up - //Normal temp does nothing, because it's just room temperature water. - if(POOL_COOL) - M.adjust_bodytemperature(-20,250) //Cools mobs till the termometer shows up - if(POOL_FRIGID) //Freezing - M.adjust_bodytemperature(-60) //cool mob at -35k per cycle, less would not affect the mob enough. - if(M.bodytemperature <= 50 && !M.stat) - M.apply_status_effect(/datum/status_effect/freon) - if(ishuman(M)) - var/mob/living/carbon/human/drownee = M - if(!drownee || drownee.stat == DEAD) - return - if(drownee.resting && !drownee.internal) - if(drownee.stat != CONSCIOUS) - drownee.adjustOxyLoss(9) - else - drownee.adjustOxyLoss(4) - if(prob(35)) - to_chat(drownee, "You're drowning!") + if(drained) + return + for(var/mob/living/M in mobs_in_pool) + switch(temperature) //Apply different effects based on what the temperature is set to. + if(POOL_SCALDING) //Scalding + M.adjust_bodytemperature(50,0,500) + if(POOL_WARM) //Warm + M.adjust_bodytemperature(20,0,360) //Heats up mobs till the termometer shows up + //Normal temp does nothing, because it's just room temperature water. + if(POOL_COOL) + M.adjust_bodytemperature(-20,250) //Cools mobs till the termometer shows up + if(POOL_FRIGID) //Freezing + M.adjust_bodytemperature(-60) //cool mob at -35k per cycle, less would not affect the mob enough. + if(M.bodytemperature <= 50 && !M.stat) + M.apply_status_effect(/datum/status_effect/freon) + if(ishuman(M)) + var/mob/living/carbon/human/drownee = M + if(!drownee || drownee.stat == DEAD) + return + if(drownee.resting && !drownee.internal) + if(drownee.stat != CONSCIOUS) + drownee.adjustOxyLoss(9) + else + drownee.adjustOxyLoss(4) + if(prob(35)) + to_chat(drownee, "You're drowning!") /obj/machinery/pool/controller/proc/set_bloody(state) if(bloody == state) diff --git a/code/modules/pool/pool_drain.dm b/code/modules/pool/pool_drain.dm index 2fa89742c0..440cd42cff 100644 --- a/code/modules/pool/pool_drain.dm +++ b/code/modules/pool/pool_drain.dm @@ -116,6 +116,10 @@ for(var/i in 1 to min(duration, 100)) L.setDir(turn(L.dir, 90)) sleep(delay) + if(QDELETED(L)) + break + if(QDELETED(src)) + return whirling_mobs -= L /obj/machinery/pool/filter diff --git a/code/modules/pool/pool_main.dm b/code/modules/pool/pool_main.dm index 9d37bd5fd5..ca1c788c9d 100644 --- a/code/modules/pool/pool_main.dm +++ b/code/modules/pool/pool_main.dm @@ -15,7 +15,9 @@ update_icon() /turf/open/pool/Destroy() - controller = null + if(controller) + controller.linked_turfs -= src + controller = null QDEL_NULL(watereffect) QDEL_NULL(watertop) return ..() From 7332fe97b8e1bc119092ee346bc945ab4497cd35 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 13 Feb 2020 02:06:32 -0700 Subject: [PATCH 074/137] Update pool_controller.dm --- code/modules/pool/pool_controller.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/pool/pool_controller.dm b/code/modules/pool/pool_controller.dm index a4a4980180..681adb0ef3 100644 --- a/code/modules/pool/pool_controller.dm +++ b/code/modules/pool/pool_controller.dm @@ -354,15 +354,15 @@ /obj/machinery/pool/controller/proc/temp2text() switch(temperature) if(POOL_FRIGID) - return "Frigid" + return "Frigid" if(POOL_COOL) - return "Cool" + return "Cool" if(POOL_NORMAL) - return "Normal" + return "Normal" if(POOL_WARM) - return "Warm" + return "Warm" if(POOL_SCALDING) - return "Scalding" + return "Scalding" else return "Outside of possible range." From 0e4d4811dbc601dc826fddbaaec3275e44b3b450 Mon Sep 17 00:00:00 2001 From: Artur Date: Thu, 13 Feb 2020 17:53:21 +0200 Subject: [PATCH 075/137] Rebuild --- tgui-next/packages/tgui/public/tgui.bundle.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tgui-next/packages/tgui/public/tgui.bundle.js b/tgui-next/packages/tgui/public/tgui.bundle.js index 692f038458..cbc23ebda0 100644 --- a/tgui-next/packages/tgui/public/tgui.bundle.js +++ b/tgui-next/packages/tgui/public/tgui.bundle.js @@ -1,3 +1,3 @@ -!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=164)}([function(e,t,n){"use strict";var o=n(5),r=n(18).f,a=n(25),i=n(22),c=n(89),l=n(122),u=n(61);e.exports=function(e,t){var n,d,s,p,m,f=e.target,h=e.global,C=e.stat;if(n=h?o:C?o[f]||c(f,{}):(o[f]||{}).prototype)for(d in t){if(p=t[d],s=e.noTargetGet?(m=r(n,d))&&m.value:n[d],!u(h?d:f+(C?".":"#")+d,e.forced)&&s!==undefined){if(typeof p==typeof s)continue;l(p,s)}(e.sham||s&&s.sham)&&a(p,"sham",!0),i(n,d,p,e)}}},function(e,t,n){"use strict";t.__esModule=!0;var o=n(386);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(t[e]=o[e])}))},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=t.Tooltip=t.Toast=t.TitleBar=t.Tabs=t.Table=t.Section=t.ProgressBar=t.NumberInput=t.NoticeBox=t.LabeledList=t.Input=t.Icon=t.Grid=t.Flex=t.Dropdown=t.Dimmer=t.Collapsible=t.ColorBox=t.Button=t.Box=t.BlockQuote=t.AnimatedNumber=void 0;var o=n(158);t.AnimatedNumber=o.AnimatedNumber;var r=n(391);t.BlockQuote=r.BlockQuote;var a=n(17);t.Box=a.Box;var i=n(114);t.Button=i.Button;var c=n(393);t.ColorBox=c.ColorBox;var l=n(394);t.Collapsible=l.Collapsible;var u=n(395);t.Dimmer=u.Dimmer;var d=n(396);t.Dropdown=d.Dropdown;var s=n(397);t.Flex=s.Flex;var p=n(161);t.Grid=p.Grid;var m=n(87);t.Icon=m.Icon;var f=n(160);t.Input=f.Input;var h=n(163);t.LabeledList=h.LabeledList;var C=n(398);t.NoticeBox=C.NoticeBox;var g=n(399);t.NumberInput=g.NumberInput;var b=n(400);t.ProgressBar=b.ProgressBar;var v=n(401);t.Section=v.Section;var N=n(162);t.Table=N.Table;var V=n(402);t.Tabs=V.Tabs;var y=n(403);t.TitleBar=y.TitleBar;var _=n(117);t.Toast=_.Toast;var x=n(159);t.Tooltip=x.Tooltip;var k=n(404);t.Chart=k.Chart},function(e,t,n){"use strict";t.__esModule=!0,t.useBackend=t.backendReducer=t.backendUpdate=void 0;var o=n(37),r=n(19);t.backendUpdate=function(e){return{type:"backendUpdate",payload:e}};t.backendReducer=function(e,t){var n=t.type,r=t.payload;if("backendUpdate"===n){var a=Object.assign({},e.config,{},r.config),i=Object.assign({},e.data,{},r.static_data,{},r.data),c=a.status!==o.UI_DISABLED,l=a.status===o.UI_INTERACTIVE;return Object.assign({},e,{config:a,data:i,visible:c,interactive:l})}return e};t.useBackend=function(e){var t=e.state,n=(e.dispatch,t.config.ref);return Object.assign({},t,{act:function(e,t){return void 0===t&&(t={}),(0,r.act)(n,e,t)}})}},function(e,t,n){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},function(e,t,n){"use strict";(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n(118))},function(e,t,n){"use strict";e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";var o,r=n(9),a=n(5),i=n(6),c=n(15),l=n(74),u=n(25),d=n(22),s=n(13).f,p=n(36),m=n(53),f=n(11),h=n(58),C=a.DataView,g=C&&C.prototype,b=a.Int8Array,v=b&&b.prototype,N=a.Uint8ClampedArray,V=N&&N.prototype,y=b&&p(b),_=v&&p(v),x=Object.prototype,k=x.isPrototypeOf,L=f("toStringTag"),w=h("TYPED_ARRAY_TAG"),B=!(!a.ArrayBuffer||!C),S=B&&!!m&&"Opera"!==l(a.opera),I=!1,T={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},A=function(e){var t=l(e);return"DataView"===t||c(T,t)},E=function(e){return i(e)&&c(T,l(e))};for(o in T)a[o]||(S=!1);if((!S||"function"!=typeof y||y===Function.prototype)&&(y=function(){throw TypeError("Incorrect invocation")},S))for(o in T)a[o]&&m(a[o],y);if((!S||!_||_===x)&&(_=y.prototype,S))for(o in T)a[o]&&m(a[o].prototype,_);if(S&&p(V)!==_&&m(V,_),r&&!c(_,L))for(o in I=!0,s(_,L,{get:function(){return i(this)?this[w]:undefined}}),T)a[o]&&u(a[o],w,o);B&&m&&p(g)!==x&&m(g,x),e.exports={NATIVE_ARRAY_BUFFER:B,NATIVE_ARRAY_BUFFER_VIEWS:S,TYPED_ARRAY_TAG:I&&w,aTypedArray:function(e){if(E(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(m){if(k.call(y,e))return e}else for(var t in T)if(c(T,o)){var n=a[t];if(n&&(e===n||k.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(r){if(n)for(var o in T){var i=a[o];i&&c(i.prototype,e)&&delete i.prototype[e]}_[e]&&!n||d(_,e,n?t:S&&v[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var o,i;if(r){if(m){if(n)for(o in T)(i=a[o])&&c(i,e)&&delete i[e];if(y[e]&&!n)return;try{return d(y,e,n?t:S&&b[e]||t)}catch(l){}}for(o in T)!(i=a[o])||i[e]&&!n||d(i,e,t)}},isView:A,isTypedArray:E,TypedArray:y,TypedArrayPrototype:_}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(29),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(5),r=n(91),a=n(15),i=n(58),c=n(95),l=n(125),u=r("wks"),d=o.Symbol,s=l?d:i;e.exports=function(e){return a(u,e)||(c&&a(d,e)?u[e]=d[e]:u[e]=s("Symbol."+e)),u[e]}},function(e,t,n){"use strict";t.__esModule=!0,t.isFalsy=t.pureComponentHooks=t.shallowDiffers=t.normalizeChildren=t.classes=void 0;t.classes=function(e){for(var t="",n=0;n_;_++)if((p||_ in N)&&(b=V(g=N[_],_,v),e))if(t)k[_]=b;else if(b)switch(e){case 3:return!0;case 5:return g;case 6:return _;case 2:l.call(k,g)}else if(d)return!1;return s?-1:u||d?d:k}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},function(e,t,n){"use strict";t.__esModule=!0,t.Box=t.computeBoxProps=t.unit=void 0;var o=n(1),r=n(12),a=n(392),i=n(37);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){return"string"==typeof e?e:"number"==typeof e?6*e+"px":void 0};t.unit=l;var u=function(e){return"string"==typeof e&&i.CSS_COLORS.includes(e)},d=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=n)}},s=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=l(n))}},p=function(e,t){return function(n,o){(0,r.isFalsy)(o)||(n[e]=t)}},m=function(e,t){return function(n,o){if(!(0,r.isFalsy)(o))for(var a=0;a0&&(t.style=l),t};t.computeBoxProps=C;var g=function(e){var t=e.as,n=void 0===t?"div":t,i=e.className,l=e.content,d=e.children,s=c(e,["as","className","content","children"]),p=e.textColor||e.color,m=e.backgroundColor;if("function"==typeof d)return d(C(e));var f=C(s);return(0,o.createVNode)(a.VNodeFlags.HtmlElement,n,(0,r.classes)([i,u(p)&&"color-"+p,u(m)&&"color-bg-"+m]),l||d,a.ChildFlags.UnknownChildren,f)};t.Box=g,g.defaultHooks=r.pureComponentHooks;var b=function(e){var t=e.children,n=c(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({position:"relative"},n,{children:(0,o.createComponentVNode)(2,g,{fillPositionedParent:!0,children:t})})))};b.defaultHooks=r.pureComponentHooks,g.Forced=b},function(e,t,n){"use strict";var o=n(9),r=n(71),a=n(46),i=n(24),c=n(33),l=n(15),u=n(119),d=Object.getOwnPropertyDescriptor;t.f=o?d:function(e,t){if(e=i(e),t=c(t,!0),u)try{return d(e,t)}catch(n){}if(l(e,t))return a(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";t.__esModule=!0,t.winset=t.winget=t.act=t.runCommand=t.callByondAsync=t.callByond=t.tridentVersion=void 0;var o,r=n(31),a=(o=navigator.userAgent.match(/Trident\/(\d+).+?;/i)[1])?parseInt(o,10):null;t.tridentVersion=a;var i=function(e,t){return void 0===t&&(t={}),"byond://"+e+"?"+(0,r.buildQueryString)(t)},c=function(e,t){void 0===t&&(t={}),window.location.href=i(e,t)};t.callByond=c;var l=function(e,t){void 0===t&&(t={}),window.__callbacks__=window.__callbacks__||[];var n=window.__callbacks__.length,o=new Promise((function(e){window.__callbacks__.push(e)}));return window.location.href=i(e,Object.assign({},t,{callback:"__callbacks__["+n+"]"})),o};t.callByondAsync=l;t.runCommand=function(e){return c("winset",{command:e})};t.act=function(e,t,n){return void 0===n&&(n={}),c("",Object.assign({src:e,action:t},n))};var u=function(e,t){var n;return regeneratorRuntime.async((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,regeneratorRuntime.awrap(l("winget",{id:e,property:t}));case 2:return n=o.sent,o.abrupt("return",n[t]);case 4:case"end":return o.stop()}}))};t.winget=u;t.winset=function(e,t,n){var o;return c("winset",((o={})[e+"."+t]=n,o))}},function(e,t,n){"use strict";t.__esModule=!0,t.toFixed=t.round=t.clamp=void 0;t.clamp=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),Math.max(t,Math.min(e,n))};t.round=function(e){return Math.round(e)};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(t)}},function(e,t,n){"use strict";e.exports=function(e){if(e==undefined)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){"use strict";var o=n(5),r=n(25),a=n(15),i=n(89),c=n(90),l=n(34),u=l.get,d=l.enforce,s=String(String).split("String");(e.exports=function(e,t,n,c){var l=!!c&&!!c.unsafe,u=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||r(n,"name",t),d(n).source=s.join("string"==typeof t?t:"")),e!==o?(l?!p&&e[t]&&(u=!0):delete e[t],u?e[t]=n:r(e,t,n)):u?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.reduce=t.sortBy=t.map=t.toArray=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};var o=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oc)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;n"+i+""}},function(e,t,n){"use strict";var o=n(4);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";var o=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:o)(e)}},function(e,t,n){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){"use strict";t.__esModule=!0,t.buildQueryString=t.decodeHtmlEntities=t.toTitleCase=t.capitalize=t.testGlobPattern=t.multiline=void 0;t.multiline=function o(e){if(Array.isArray(e))return o(e.join(""));var t,n=e.split("\n"),r=n,a=Array.isArray(r),i=0;for(r=a?r:r[Symbol.iterator]();;){var c;if(a){if(i>=r.length)break;c=r[i++]}else{if((i=r.next()).done)break;c=i.value}for(var l=c,u=0;u",apos:"'"};return e.replace(/
/gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/&#?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/&#x?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){"use strict";var o,r,a,i=n(121),c=n(5),l=n(6),u=n(25),d=n(15),s=n(72),p=n(59),m=c.WeakMap;if(i){var f=new m,h=f.get,C=f.has,g=f.set;o=function(e,t){return g.call(f,e,t),t},r=function(e){return h.call(f,e)||{}},a=function(e){return C.call(f,e)}}else{var b=s("state");p[b]=!0,o=function(e,t){return u(e,b,t),t},r=function(e){return d(e,b)?e[b]:{}},a=function(e){return d(e,b)}}e.exports={set:o,get:r,has:a,enforce:function(e){return a(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=n(123),r=n(5),a=function(e){return"function"==typeof e?e:undefined};e.exports=function(e,t){return arguments.length<2?a(o[e])||a(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t,n){"use strict";var o=n(15),r=n(14),a=n(72),i=n(102),c=a("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),o(e,c)?e[c]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){"use strict";t.__esModule=!0,t.getGasColor=t.getGasLabel=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=t.UI_CLOSE=t.UI_DISABLED=t.UI_UPDATE=t.UI_INTERACTIVE=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{captain:"#c06616",security:"#e74c3c",medbay:"#3498db",science:"#9b59b6",engineering:"#f1c40f",cargo:"#f39c12",centcom:"#00c100",other:"#c38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"CentCom",freq:1337,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"AI Private",freq:1447,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(4);e.exports=function(e,t){var n=[][e];return!n||!o((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(9),i=n(113),c=n(7),l=n(77),u=n(55),d=n(46),s=n(25),p=n(10),m=n(137),f=n(151),h=n(33),C=n(15),g=n(74),b=n(6),v=n(42),N=n(53),V=n(47).f,y=n(152),_=n(16).forEach,x=n(54),k=n(13),L=n(18),w=n(34),B=n(79),S=w.get,I=w.set,T=k.f,A=L.f,E=Math.round,P=r.RangeError,M=l.ArrayBuffer,O=l.DataView,R=c.NATIVE_ARRAY_BUFFER_VIEWS,F=c.TYPED_ARRAY_TAG,D=c.TypedArray,j=c.TypedArrayPrototype,z=c.aTypedArrayConstructor,G=c.isTypedArray,H=function(e,t){for(var n=0,o=t.length,r=new(z(e))(o);o>n;)r[n]=t[n++];return r},U=function(e,t){T(e,t,{get:function(){return S(this)[t]}})},K=function(e){var t;return e instanceof M||"ArrayBuffer"==(t=g(e))||"SharedArrayBuffer"==t},Y=function(e,t){return G(e)&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},q=function(e,t){return Y(e,t=h(t,!0))?d(2,e[t]):A(e,t)},W=function(e,t,n){return!(Y(e,t=h(t,!0))&&b(n)&&C(n,"value"))||C(n,"get")||C(n,"set")||n.configurable||C(n,"writable")&&!n.writable||C(n,"enumerable")&&!n.enumerable?T(e,t,n):(e[t]=n.value,e)};a?(R||(L.f=q,k.f=W,U(j,"buffer"),U(j,"byteOffset"),U(j,"byteLength"),U(j,"length")),o({target:"Object",stat:!0,forced:!R},{getOwnPropertyDescriptor:q,defineProperty:W}),e.exports=function(e,t,n){var a=e.match(/\d+$/)[0]/8,c=e+(n?"Clamped":"")+"Array",l="get"+e,d="set"+e,h=r[c],C=h,g=C&&C.prototype,k={},L=function(e,t){var n=S(e);return n.view[l](t*a+n.byteOffset,!0)},w=function(e,t,o){var r=S(e);n&&(o=(o=E(o))<0?0:o>255?255:255&o),r.view[d](t*a+r.byteOffset,o,!0)},A=function(e,t){T(e,t,{get:function(){return L(this,t)},set:function(e){return w(this,t,e)},enumerable:!0})};R?i&&(C=t((function(e,t,n,o){return u(e,C,c),B(b(t)?K(t)?o!==undefined?new h(t,f(n,a),o):n!==undefined?new h(t,f(n,a)):new h(t):G(t)?H(C,t):y.call(C,t):new h(m(t)),e,C)})),N&&N(C,D),_(V(h),(function(e){e in C||s(C,e,h[e])})),C.prototype=g):(C=t((function(e,t,n,o){u(e,C,c);var r,i,l,d=0,s=0;if(b(t)){if(!K(t))return G(t)?H(C,t):y.call(C,t);r=t,s=f(n,a);var h=t.byteLength;if(o===undefined){if(h%a)throw P("Wrong length");if((i=h-s)<0)throw P("Wrong length")}else if((i=p(o)*a)+s>h)throw P("Wrong length");l=i/a}else l=m(t),r=new M(i=l*a);for(I(e,{buffer:r,byteOffset:s,byteLength:i,length:l,view:new O(r)});ddocument.F=Object<\/script>"),e.close(),p=e.F;n--;)delete p[d][a[n]];return p()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[d]=o(e),n=new s,s[d]=null,n[u]=e):n=p(),t===undefined?n:r(n,t)},i[u]=!0},function(e,t,n){"use strict";var o=n(13).f,r=n(15),a=n(11)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,a)&&o(e,a,{configurable:!0,value:t})}},function(e,t,n){"use strict";var o=n(11),r=n(42),a=n(25),i=o("unscopables"),c=Array.prototype;c[i]==undefined&&a(c,i,r(null)),e.exports=function(e){c[i][e]=!0}},function(e,t,n){"use strict";var o=n(8),r=n(30),a=n(11)("species");e.exports=function(e,t){var n,i=o(e).constructor;return i===undefined||(n=o(i)[a])==undefined?t:r(n)}},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var o=n(124),r=n(93).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(30);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";var o=n(33),r=n(13),a=n(46);e.exports=function(e,t,n){var i=o(t);i in e?r.f(e,i,a(0,n)):e[i]=n}},function(e,t,n){"use strict";var o=n(59),r=n(6),a=n(15),i=n(13).f,c=n(58),l=n(67),u=c("meta"),d=0,s=Object.isExtensible||function(){return!0},p=function(e){i(e,u,{value:{objectID:"O"+ ++d,weakData:{}}})},m=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,u)){if(!s(e))return"F";if(!t)return"E";p(e)}return e[u].objectID},getWeakData:function(e,t){if(!a(e,u)){if(!s(e))return!0;if(!t)return!1;p(e)}return e[u].weakData},onFreeze:function(e){return l&&m.REQUIRED&&s(e)&&!a(e,u)&&p(e),e}};o[u]=!0},function(e,t,n){"use strict";t.__esModule=!0,t.createLogger=void 0;n(154);var o=n(19),r=0,a=1,i=2,c=3,l=4,u=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),a=2;a=i){var c=[t].concat(r).map((function(e){return"string"==typeof e?e:e instanceof Error?e.stack||String(e):JSON.stringify(e)})).filter((function(e){return e})).join(" ")+"\nUser Agent: "+navigator.userAgent;(0,o.act)(window.__ref__,"tgui:log",{log:c})}};t.createLogger=function(e){return{debug:function(){for(var t=arguments.length,n=new Array(t),o=0;od;)if((c=l[d++])!=c)return!0}else for(;u>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){"use strict";var o=n(4),r=/#|\.prototype\./,a=function(e,t){var n=c[i(e)];return n==u||n!=l&&("function"==typeof t?o(t):!!t)},i=a.normalize=function(e){return String(e).replace(r,".").toLowerCase()},c=a.data={},l=a.NATIVE="N",u=a.POLYFILL="P";e.exports=a},function(e,t,n){"use strict";var o=n(124),r=n(93);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(6),r=n(52),a=n(11)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?o(n)&&null===(n=n[a])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},function(e,t,n){"use strict";var o=n(4),r=n(11),a=n(96),i=r("species");e.exports=function(e){return a>=51||!o((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(22);e.exports=function(e,t,n){for(var r in t)o(e,r,t[r],n);return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){"use strict";var o=n(8),r=n(98),a=n(10),i=n(48),c=n(99),l=n(132),u=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,d,s){var p,m,f,h,C,g,b,v=i(t,n,d?2:1);if(s)p=e;else{if("function"!=typeof(m=c(e)))throw TypeError("Target is not iterable");if(r(m)){for(f=0,h=a(e.length);h>f;f++)if((C=d?v(o(b=e[f])[0],b[1]):v(e[f]))&&C instanceof u)return C;return new u(!1)}p=m.call(e)}for(g=p.next;!(b=g.call(p)).done;)if("object"==typeof(C=l(p,v,b.value,d))&&C&&C instanceof u)return C;return new u(!1)}).stop=function(e){return new u(!0,e)}},function(e,t,n){"use strict";t.__esModule=!0,t.InterfaceLockNoticeBox=void 0;var o=n(1),r=n(2);t.InterfaceLockNoticeBox=function(e){var t=e.siliconUser,n=e.locked,a=e.onLockStatusChange,i=e.accessText;return t?(0,o.createComponentVNode)(2,r.NoticeBox,{children:(0,o.createComponentVNode)(2,r.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,r.Flex.Item,{children:"Interface lock status:"}),(0,o.createComponentVNode)(2,r.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,r.Flex.Item,{children:(0,o.createComponentVNode)(2,r.Button,{m:0,color:"gray",icon:n?"lock":"unlock",content:n?"Locked":"Unlocked",onClick:function(){a&&a(!n)}})})]})}):(0,o.createComponentVNode)(2,r.NoticeBox,{children:["Swipe ",i||"an ID card"," ","to ",n?"unlock":"lock"," this interface."]})}},function(e,t,n){"use strict";t.__esModule=!0,t.compose=t.flow=void 0;t.flow=function o(){for(var e=arguments.length,t=new Array(e),n=0;n1?r-1:0),i=1;i=c.length)break;d=c[u++]}else{if((u=c.next()).done)break;d=u.value}var s=d;Array.isArray(s)?n=o.apply(void 0,s).apply(void 0,[n].concat(a)):s&&(n=s.apply(void 0,[n].concat(a)))}return n}};t.compose=function(){for(var e=arguments.length,t=new Array(e),n=0;n1?o-1:0),a=1;a=0:s>p;p+=m)p in d&&(l=n(l,d[p],p,u));return l}};e.exports={left:c(!1),right:c(!0)}},function(e,t,n){"use strict";var o=n(5),r=n(9),a=n(7).NATIVE_ARRAY_BUFFER,i=n(25),c=n(66),l=n(4),u=n(55),d=n(29),s=n(10),p=n(137),m=n(217),f=n(47).f,h=n(13).f,C=n(97),g=n(43),b=n(34),v=b.get,N=b.set,V="ArrayBuffer",y="DataView",_="Wrong length",x=o[V],k=x,L=o[y],w=o.RangeError,B=m.pack,S=m.unpack,I=function(e){return[255&e]},T=function(e){return[255&e,e>>8&255]},A=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},E=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return B(e,23,4)},M=function(e){return B(e,52,8)},O=function(e,t){h(e.prototype,t,{get:function(){return v(this)[t]}})},R=function(e,t,n,o){var r=p(n),a=v(e);if(r+t>a.byteLength)throw w("Wrong index");var i=v(a.buffer).bytes,c=r+a.byteOffset,l=i.slice(c,c+t);return o?l:l.reverse()},F=function(e,t,n,o,r,a){var i=p(n),c=v(e);if(i+t>c.byteLength)throw w("Wrong index");for(var l=v(c.buffer).bytes,u=i+c.byteOffset,d=o(+r),s=0;sG;)(D=z[G++])in k||i(k,D,x[D]);j.constructor=k}var H=new L(new k(2)),U=L.prototype.setInt8;H.setInt8(0,2147483648),H.setInt8(1,2147483649),!H.getInt8(0)&&H.getInt8(1)||c(L.prototype,{setInt8:function(e,t){U.call(this,e,t<<24>>24)},setUint8:function(e,t){U.call(this,e,t<<24>>24)}},{unsafe:!0})}else k=function(e){u(this,k,V);var t=p(e);N(this,{bytes:C.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},L=function(e,t,n){u(this,L,y),u(e,k,y);var o=v(e).byteLength,a=d(t);if(a<0||a>o)throw w("Wrong offset");if(a+(n=n===undefined?o-a:s(n))>o)throw w(_);N(this,{buffer:e,byteLength:n,byteOffset:a}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=a)},r&&(O(k,"byteLength"),O(L,"buffer"),O(L,"byteLength"),O(L,"byteOffset")),c(L.prototype,{getInt8:function(e){return R(this,1,e)[0]<<24>>24},getUint8:function(e){return R(this,1,e)[0]},getInt16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return S(R(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return S(R(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){F(this,1,e,I,t)},setUint8:function(e,t){F(this,1,e,I,t)},setInt16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){F(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){F(this,8,e,M,t,arguments.length>2?arguments[2]:undefined)}});g(k,V),g(L,y),e.exports={ArrayBuffer:k,DataView:L}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(61),i=n(22),c=n(50),l=n(68),u=n(55),d=n(6),s=n(4),p=n(75),m=n(43),f=n(79);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],v=b&&b.prototype,N=b,V={},y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!d(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(a(e,"function"!=typeof b||!(C||v.forEach&&!s((function(){(new b).entries().next()})))))N=n.getConstructor(t,e,h,g),c.REQUIRED=!0;else if(a(e,!0)){var _=new N,x=_[g](C?{}:-0,1)!=_,k=s((function(){_.has(1)})),L=p((function(e){new b(e)})),w=!C&&s((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));L||((N=t((function(t,n){u(t,N,e);var o=f(new b,t,N);return n!=undefined&&l(n,o[g],o,h),o}))).prototype=v,v.constructor=N),(k||w)&&(y("delete"),y("has"),h&&y("get")),(w||x)&&y(g),C&&v.clear&&delete v.clear}return V[e]=N,o({global:!0,forced:N!=b},V),m(N,e),C||n.setStrong(N,e,h),N}},function(e,t,n){"use strict";var o=n(6),r=n(53);e.exports=function(e,t,n){var a,i;return r&&"function"==typeof(a=t.constructor)&&a!==n&&o(i=a.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var o=Math.expm1,r=Math.exp;e.exports=!o||o(10)>22025.465794806718||o(10)<22025.465794806718||-2e-17!=o(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:r(e)-1}:o},function(e,t,n){"use strict";e.exports="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},function(e,t,n){"use strict";var o=n(38),r=n(5),a=n(4);e.exports=o||!a((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r[e]}))},function(e,t,n){"use strict";var o=n(8);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var o,r,a=n(83),i=RegExp.prototype.exec,c=String.prototype.replace,l=i,u=(o=/a/,r=/b*/g,i.call(o,"a"),i.call(r,"a"),0!==o.lastIndex||0!==r.lastIndex),d=/()??/.exec("")[1]!==undefined;(u||d)&&(l=function(e){var t,n,o,r,l=this;return d&&(n=new RegExp("^"+l.source+"$(?!\\s)",a.call(l))),u&&(t=l.lastIndex),o=i.call(l,e),u&&o&&(l.lastIndex=l.global?o.index+o[0].length:t),d&&o&&o.length>1&&c.call(o[0],n,(function(){for(r=1;r")})),d=!a((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,s){var p=i(e),m=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),f=m&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!m||!f||"replace"===e&&!u||"split"===e&&!d){var h=/./[p],C=n(p,""[e],(function(e,t,n,o,r){return t.exec===c?m&&!r?{done:!0,value:h.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}})),g=C[0],b=C[1];r(String.prototype,e,g),r(RegExp.prototype,p,2==t?function(e,t){return b.call(e,this,t)}:function(e){return b.call(e,this)}),s&&o(RegExp.prototype[p],"sham",!0)}}},function(e,t,n){"use strict";var o=n(32),r=n(84);e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==o(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},function(e,t,n){"use strict";t.__esModule=!0,t.Icon=void 0;var o=n(1),r=n(12),a=n(17);var i=/-o$/,c=function(e){var t=e.name,n=e.size,c=e.spin,l=e.className,u=e.style,d=void 0===u?{}:u,s=e.rotation,p=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["name","size","spin","className","style","rotation"]);n&&(d["font-size"]=100*n+"%"),"number"==typeof s&&(d.transform="rotate("+s+"deg)");var m=i.test(t),f=t.replace(i,"");return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"i",className:(0,r.classes)([l,m?"far":"fas","fa-"+f,c&&"fa-spin"]),style:d},p)))};t.Icon=c,c.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";var o=n(5),r=n(6),a=o.document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},function(e,t,n){"use strict";var o=n(5),r=n(25);e.exports=function(e,t){try{r(o,e,t)}catch(n){o[e]=t}return t}},function(e,t,n){"use strict";var o=n(120),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},function(e,t,n){"use strict";var o=n(38),r=n(120);(e.exports=function(e,t){return r[e]||(r[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.4.8",mode:o?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){"use strict";var o=n(35),r=n(47),a=n(94),i=n(8);e.exports=o("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=a.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var o=n(4);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())}))},function(e,t,n){"use strict";var o,r,a=n(5),i=n(73),c=a.process,l=c&&c.versions,u=l&&l.v8;u?r=(o=u.split("."))[0]+o[1]:i&&(!(o=i.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=i.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10);e.exports=function(e){for(var t=o(this),n=a(t.length),i=arguments.length,c=r(i>1?arguments[1]:undefined,n),l=i>2?arguments[2]:undefined,u=l===undefined?n:r(l,n);u>c;)t[c++]=e;return t}},function(e,t,n){"use strict";var o=n(11),r=n(65),a=o("iterator"),i=Array.prototype;e.exports=function(e){return e!==undefined&&(r.Array===e||i[a]===e)}},function(e,t,n){"use strict";var o=n(74),r=n(65),a=n(11)("iterator");e.exports=function(e){if(e!=undefined)return e[a]||e["@@iterator"]||r[o(e)]}},function(e,t,n){"use strict";var o={};o[n(11)("toStringTag")]="z",e.exports="[object z]"===String(o)},function(e,t,n){"use strict";var o=n(0),r=n(202),a=n(36),i=n(53),c=n(43),l=n(25),u=n(22),d=n(11),s=n(38),p=n(65),m=n(134),f=m.IteratorPrototype,h=m.BUGGY_SAFARI_ITERATORS,C=d("iterator"),g=function(){return this};e.exports=function(e,t,n,d,m,b,v){r(n,t,d);var N,V,y,_=function(e){if(e===m&&B)return B;if(!h&&e in L)return L[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",k=!1,L=e.prototype,w=L[C]||L["@@iterator"]||m&&L[m],B=!h&&w||_(m),S="Array"==t&&L.entries||w;if(S&&(N=a(S.call(new e)),f!==Object.prototype&&N.next&&(s||a(N)===f||(i?i(N,f):"function"!=typeof N[C]&&l(N,C,g)),c(N,x,!0,!0),s&&(p[x]=g))),"values"==m&&w&&"values"!==w.name&&(k=!0,B=function(){return w.call(this)}),s&&!v||L[C]===B||l(L,C,B),p[t]=B,m)if(V={values:_("values"),keys:b?B:_("keys"),entries:_("entries")},v)for(y in V)!h&&!k&&y in L||u(L,y,V[y]);else o({target:t,proto:!0,forced:h||k},V);return V}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){"use strict";var o=n(10),r=n(104),a=n(21),i=Math.ceil,c=function(e){return function(t,n,c){var l,u,d=String(a(t)),s=d.length,p=c===undefined?" ":String(c),m=o(n);return m<=s||""==p?d:(l=m-s,(u=r.call(p,i(l/p.length))).length>l&&(u=u.slice(0,l)),e?d+u:u+d)}};e.exports={start:c(!1),end:c(!0)}},function(e,t,n){"use strict";var o=n(29),r=n(21);e.exports="".repeat||function(e){var t=String(r(this)),n="",a=o(e);if(a<0||a==Infinity)throw RangeError("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))1&a&&(n+=t);return n}},function(e,t,n){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t,n){"use strict";var o,r,a,i=n(5),c=n(4),l=n(32),u=n(48),d=n(127),s=n(88),p=n(146),m=i.location,f=i.setImmediate,h=i.clearImmediate,C=i.process,g=i.MessageChannel,b=i.Dispatch,v=0,N={},V=function(e){if(N.hasOwnProperty(e)){var t=N[e];delete N[e],t()}},y=function(e){return function(){V(e)}},_=function(e){V(e.data)},x=function(e){i.postMessage(e+"",m.protocol+"//"+m.host)};f&&h||(f=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return N[++v]=function(){("function"==typeof e?e:Function(e)).apply(undefined,t)},o(v),v},h=function(e){delete N[e]},"process"==l(C)?o=function(e){C.nextTick(y(e))}:b&&b.now?o=function(e){b.now(y(e))}:g&&!p?(a=(r=new g).port2,r.port1.onmessage=_,o=u(a.postMessage,a,1)):!i.addEventListener||"function"!=typeof postMessage||i.importScripts||c(x)?o="onreadystatechange"in s("script")?function(e){d.appendChild(s("script")).onreadystatechange=function(){d.removeChild(this),V(e)}}:function(e){setTimeout(y(e),0)}:(o=x,i.addEventListener("message",_,!1))),e.exports={set:f,clear:h}},function(e,t,n){"use strict";var o=n(6),r=n(32),a=n(11)("match");e.exports=function(e){var t;return o(e)&&((t=e[a])!==undefined?!!t:"RegExp"==r(e))}},function(e,t,n){"use strict";var o=n(29),r=n(21),a=function(e){return function(t,n){var a,i,c=String(r(t)),l=o(n),u=c.length;return l<0||l>=u?e?"":undefined:(a=c.charCodeAt(l))<55296||a>56319||l+1===u||(i=c.charCodeAt(l+1))<56320||i>57343?e?c.charAt(l):a:e?c.slice(l,l+2):i-56320+(a-55296<<10)+65536}};e.exports={codeAt:a(!1),charAt:a(!0)}},function(e,t,n){"use strict";var o=n(107);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){"use strict";var o=n(11)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[o]=!1,"/./"[e](t)}catch(r){}}return!1}},function(e,t,n){"use strict";var o=n(108).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},function(e,t,n){"use strict";var o=n(4),r=n(81);e.exports=function(e){return o((function(){return!!r[e]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[e]()||r[e].name!==e}))}},function(e,t,n){"use strict";var o=n(5),r=n(4),a=n(75),i=n(7).NATIVE_ARRAY_BUFFER_VIEWS,c=o.ArrayBuffer,l=o.Int8Array;e.exports=!i||!r((function(){l(1)}))||!r((function(){new l(-1)}))||!a((function(e){new l,new l(null),new l(1.5),new l(e)}),!0)||r((function(){return 1!==new l(new c(2),1,undefined).length}))},function(e,t,n){"use strict";t.__esModule=!0,t.ButtonInput=t.ButtonConfirm=t.ButtonCheckbox=t.Button=void 0;var o=n(1),r=n(12),a=n(19),i=n(115),c=n(51),l=n(116),u=n(17),d=n(87),s=n(159);n(160),n(161);function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function m(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var f=(0,c.createLogger)("Button"),h=function(e){var t=e.className,n=e.fluid,c=e.icon,p=e.color,h=e.disabled,C=e.selected,g=e.tooltip,b=e.tooltipPosition,v=e.ellipsis,N=e.content,V=e.iconRotation,y=e.iconSpin,_=e.children,x=e.onclick,k=e.onClick,L=m(e,["className","fluid","icon","color","disabled","selected","tooltip","tooltipPosition","ellipsis","content","iconRotation","iconSpin","children","onclick","onClick"]),w=!(!N&&!_);return x&&f.warn("Lowercase 'onclick' is not supported on Button and lowercase prop names are discouraged in general. Please use a camelCase'onClick' instead and read: https://infernojs.org/docs/guides/event-handling"),(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({as:"span",className:(0,r.classes)(["Button",n&&"Button--fluid",h&&"Button--disabled",C&&"Button--selected",w&&"Button--hasContent",v&&"Button--ellipsis",p&&"string"==typeof p?"Button--color--"+p:"Button--color--default",t]),tabIndex:!h&&"0",unselectable:a.tridentVersion<=4,onclick:function(e){(0,l.refocusLayout)(),!h&&k&&k(e)},onKeyDown:function(e){var t=window.event?e.which:e.keyCode;return t===i.KEY_SPACE||t===i.KEY_ENTER?(e.preventDefault(),void(!h&&k&&k(e))):t===i.KEY_ESCAPE?(e.preventDefault(),void(0,l.refocusLayout)()):void 0}},L,{children:[c&&(0,o.createComponentVNode)(2,d.Icon,{name:c,rotation:V,spin:y}),N,_,g&&(0,o.createComponentVNode)(2,s.Tooltip,{content:g,position:b})]})))};t.Button=h,h.defaultHooks=r.pureComponentHooks;var C=function(e){var t=e.checked,n=m(e,["checked"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({color:"transparent",icon:t?"check-square-o":"square-o",selected:t},n)))};t.ButtonCheckbox=C,h.Checkbox=C;var g=function(e){function t(){var t;return(t=e.call(this)||this).state={clickedOnce:!1},t.handleClick=function(){t.state.clickedOnce&&t.setClickedOnce(!1)},t}p(t,e);var n=t.prototype;return n.setClickedOnce=function(e){var t=this;this.setState({clickedOnce:e}),e?setTimeout((function(){return window.addEventListener("click",t.handleClick)})):window.removeEventListener("click",this.handleClick)},n.render=function(){var e=this,t=this.props,n=t.confirmMessage,r=void 0===n?"Confirm?":n,a=t.confirmColor,i=void 0===a?"bad":a,c=t.color,l=t.content,u=t.onClick,d=m(t,["confirmMessage","confirmColor","color","content","onClick"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({content:this.state.clickedOnce?r:l,color:this.state.clickedOnce?i:c,onClick:function(){return e.state.clickedOnce?u():e.setClickedOnce(!0)}},d)))},t}(o.Component);t.ButtonConfirm=g,h.Confirm=g;var b=function(e){function t(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={inInput:!1},t}p(t,e);var n=t.prototype;return n.setInInput=function(e){if(this.setState({inInput:e}),this.inputRef){var t=this.inputRef.current;if(e){t.value=this.props.currentValue||"";try{t.focus(),t.select()}catch(n){}}}},n.commitResult=function(e){if(this.inputRef){var t=this.inputRef.current;if(""!==t.value)return void this.props.onCommit(e,t.value);if(!this.props.defaultValue)return;this.props.onCommit(e,this.props.defaultValue)}},n.render=function(){var e=this,t=this.props,n=t.fluid,a=t.content,c=t.color,l=void 0===c?"default":c,d=(t.placeholder,t.maxLength,m(t,["fluid","content","color","placeholder","maxLength"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid","Button--color--"+l])},d,{onClick:function(){return e.setInInput(!0)},children:[(0,o.createVNode)(1,"div",null,a,0),(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:this.state.inInput?undefined:"none","text-align":"left"},onBlur:function(t){e.state.inInput&&(e.setInInput(!1),e.commitResult(t))},onKeyDown:function(t){if(t.keyCode===i.KEY_ENTER)return e.setInInput(!1),void e.commitResult(t);t.keyCode===i.KEY_ESCAPE&&e.setInInput(!1)}},null,this.inputRef)]})))},t}(o.Component);t.ButtonInput=b,h.Input=b},function(e,t,n){"use strict";t.__esModule=!0,t.hotKeyReducer=t.hotKeyMiddleware=t.releaseHeldKeys=t.KEY_MINUS=t.KEY_EQUAL=t.KEY_Z=t.KEY_Y=t.KEY_X=t.KEY_W=t.KEY_V=t.KEY_U=t.KEY_T=t.KEY_S=t.KEY_R=t.KEY_Q=t.KEY_P=t.KEY_O=t.KEY_N=t.KEY_M=t.KEY_L=t.KEY_K=t.KEY_J=t.KEY_I=t.KEY_H=t.KEY_G=t.KEY_F=t.KEY_E=t.KEY_D=t.KEY_C=t.KEY_B=t.KEY_A=t.KEY_9=t.KEY_8=t.KEY_7=t.KEY_6=t.KEY_5=t.KEY_4=t.KEY_3=t.KEY_2=t.KEY_1=t.KEY_0=t.KEY_SPACE=t.KEY_ESCAPE=t.KEY_ALT=t.KEY_CTRL=t.KEY_SHIFT=t.KEY_ENTER=t.KEY_TAB=t.KEY_BACKSPACE=void 0;var o=n(51),r=n(19),a=(0,o.createLogger)("hotkeys");t.KEY_BACKSPACE=8;t.KEY_TAB=9;t.KEY_ENTER=13;t.KEY_SHIFT=16;t.KEY_CTRL=17;t.KEY_ALT=18;t.KEY_ESCAPE=27;t.KEY_SPACE=32;t.KEY_0=48;t.KEY_1=49;t.KEY_2=50;t.KEY_3=51;t.KEY_4=52;t.KEY_5=53;t.KEY_6=54;t.KEY_7=55;t.KEY_8=56;t.KEY_9=57;t.KEY_A=65;t.KEY_B=66;t.KEY_C=67;t.KEY_D=68;t.KEY_E=69;t.KEY_F=70;t.KEY_G=71;t.KEY_H=72;t.KEY_I=73;t.KEY_J=74;t.KEY_K=75;t.KEY_L=76;t.KEY_M=77;t.KEY_N=78;t.KEY_O=79;t.KEY_P=80;t.KEY_Q=81;t.KEY_R=82;t.KEY_S=83;t.KEY_T=84;t.KEY_U=85;t.KEY_V=86;t.KEY_W=87;t.KEY_X=88;t.KEY_Y=89;t.KEY_Z=90;t.KEY_EQUAL=187;t.KEY_MINUS=189;var i=[17,18,16],c=[27,13,32,9,17,16],l={},u=function(e,t,n,o){var r="";return e&&(r+="Ctrl+"),t&&(r+="Alt+"),n&&(r+="Shift+"),r+=o>=48&&o<=90?String.fromCharCode(o):"["+o+"]"},d=function(e){var t=window.event?e.which:e.keyCode,n=e.ctrlKey,o=e.altKey,r=e.shiftKey;return{keyCode:t,ctrlKey:n,altKey:o,shiftKey:r,hasModifierKeys:n||o||r,keyString:u(n,o,r,t)}},s=function(){for(var e=0,t=Object.keys(l);e4&&function(e,t){if(!e.defaultPrevented){var n=e.target&&e.target.localName;if("input"!==n&&"textarea"!==n){var o=d(e),i=o.keyCode,u=o.ctrlKey,s=o.shiftKey;u||s||c.includes(i)||("keydown"!==t||l[i]?"keyup"===t&&l[i]&&(a.debug("passthrough",t,o),(0,r.callByond)("",{__keyup:i})):(a.debug("passthrough",t,o),(0,r.callByond)("",{__keydown:i})))}}}(e,t),function(e,t,n){if("keyup"===t){var o=d(e),r=o.ctrlKey,c=o.altKey,l=o.keyCode,u=o.hasModifierKeys,s=o.keyString;u&&!i.includes(l)&&(a.log(s),r&&c&&8===l&&setTimeout((function(){throw new Error("OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle fucko boingo! The code monkeys at our headquarters are working VEWY HAWD to fix this!")})),n({type:"hotKey",payload:o}))}}(e,t,n)},document.addEventListener("keydown",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keydown"),l[n]=!0})),document.addEventListener("keyup",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keyup"),l[n]=!1})),r.tridentVersion>4&&function(e){var t;document.addEventListener("focusout",(function(){t=setTimeout(e)})),document.addEventListener("focusin",(function(){clearTimeout(t)})),window.addEventListener("beforeunload",e)}((function(){s()})),function(e){return function(t){return e(t)}}};t.hotKeyReducer=function(e,t){var n=t.type,o=t.payload;if("hotKey"===n){var r=o.ctrlKey,a=o.altKey,i=o.keyCode;return r&&a&&187===i?Object.assign({},e,{showKitchenSink:!e.showKitchenSink}):e}return e}},function(e,t,n){"use strict";t.__esModule=!0,t.refocusLayout=void 0;var o=n(19);t.refocusLayout=function(){if(!(o.tridentVersion<=4)){var e=document.getElementById("Layout__content");e&&e.focus()}}},function(e,t,n){"use strict";t.__esModule=!0,t.toastReducer=t.showToast=t.Toast=void 0;var o,r=n(1),a=n(12),i=function(e){var t=e.content,n=e.children;return(0,r.createVNode)(1,"div","Layout__toast",[t,n],0)};t.Toast=i,i.defaultHooks=a.pureComponentHooks;t.showToast=function(e,t){o&&clearTimeout(o),o=setTimeout((function(){o=undefined,e({type:"hideToast"})}),5e3),e({type:"showToast",payload:{text:t}})};t.toastReducer=function(e,t){var n=t.type,o=t.payload;if("showToast"===n){var r=o.text;return Object.assign({},e,{toastText:r})}return"hideToast"===n?Object.assign({},e,{toastText:null}):e}},function(e,t,n){"use strict";var o;o=function(){return this}();try{o=o||new Function("return this")()}catch(r){"object"==typeof window&&(o=window)}e.exports=o},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(88);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(5),r=n(89),a=o["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=a},function(e,t,n){"use strict";var o=n(5),r=n(90),a=o.WeakMap;e.exports="function"==typeof a&&/native code/.test(r(a))},function(e,t,n){"use strict";var o=n(15),r=n(92),a=n(18),i=n(13);e.exports=function(e,t){for(var n=r(t),c=i.f,l=a.f,u=0;ul;)o(c,n=t[l++])&&(~a(u,n)||u.push(n));return u}},function(e,t,n){"use strict";var o=n(95);e.exports=o&&!Symbol.sham&&"symbol"==typeof Symbol()},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(8),i=n(62);e.exports=o?Object.defineProperties:function(e,t){a(e);for(var n,o=i(t),c=o.length,l=0;c>l;)r.f(e,n=o[l++],t[n]);return e}},function(e,t,n){"use strict";var o=n(35);e.exports=o("document","documentElement")},function(e,t,n){"use strict";var o=n(24),r=n(47).f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(e){try{return r(e)}catch(t){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?c(e):r(o(e))}},function(e,t,n){"use strict";var o=n(11);t.f=o},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10),i=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=a(n.length),l=r(e,c),u=r(t,c),d=arguments.length>2?arguments[2]:undefined,s=i((d===undefined?c:r(d,c))-u,c-l),p=1;for(u0;)u in n?n[l]=n[u]:delete n[l],l+=p,u+=p;return n}},function(e,t,n){"use strict";var o=n(52),r=n(10),a=n(48);e.exports=function i(e,t,n,c,l,u,d,s){for(var p,m=l,f=0,h=!!d&&a(d,s,3);f0&&o(p))m=i(e,t,p,r(p.length),m,u-1)-1;else{if(m>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[m]=p}m++}f++}return m}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e,t,n,r){try{return r?t(o(n)[0],n[1]):t(n)}catch(i){var a=e["return"];throw a!==undefined&&o(a.call(e)),i}}},function(e,t,n){"use strict";var o=n(24),r=n(44),a=n(65),i=n(34),c=n(101),l=i.set,u=i.getterFor("Array Iterator");e.exports=c(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:o(e),index:0,kind:t})}),(function(){var e=u(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?(e.target=undefined,{value:undefined,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var o,r,a,i=n(36),c=n(25),l=n(15),u=n(11),d=n(38),s=u("iterator"),p=!1;[].keys&&("next"in(a=[].keys())?(r=i(i(a)))!==Object.prototype&&(o=r):p=!0),o==undefined&&(o={}),d||l(o,s)||c(o,s,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:p}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var o=n(24),r=n(29),a=n(10),i=n(39),c=Math.min,l=[].lastIndexOf,u=!!l&&1/[1].lastIndexOf(1,-0)<0,d=i("lastIndexOf");e.exports=u||d?function(e){if(u)return l.apply(this,arguments)||0;var t=o(this),n=a(t.length),i=n-1;for(arguments.length>1&&(i=c(i,r(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:l},function(e,t,n){"use strict";var o=n(29),r=n(10);e.exports=function(e){if(e===undefined)return 0;var t=o(e),n=r(t);if(t!==n)throw RangeError("Wrong length or index");return n}},function(e,t,n){"use strict";var o=n(30),r=n(6),a=[].slice,i={},c=function(e,t,n){if(!(t in i)){for(var o=[],r=0;r1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),a(d.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),s&&o(d.prototype,"size",{get:function(){return m(this).size}}),d},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),a=h(o);u(e,t,(function(e,t){f(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=a(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),d(t)}}},function(e,t,n){"use strict";var o=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:o(1+e)}},function(e,t,n){"use strict";var o=n(6),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseInt,c=/^[+-]?0[Xx]/,l=8!==i(a+"08")||22!==i(a+"0x16");e.exports=l?function(e,t){var n=r(String(e));return i(n,t>>>0||(c.test(n)?16:10))}:i},function(e,t,n){"use strict";var o=n(9),r=n(62),a=n(24),i=n(71).f,c=function(e){return function(t){for(var n,c=a(t),l=r(c),u=l.length,d=0,s=[];u>d;)n=l[d++],o&&!i.call(c,n)||s.push(e?[n,c[n]]:c[n]);return s}};e.exports={entries:c(!0),values:c(!1)}},function(e,t,n){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){"use strict";var o=n(5);e.exports=o.Promise},function(e,t,n){"use strict";var o=n(73);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(o)},function(e,t,n){"use strict";var o,r,a,i,c,l,u,d,s=n(5),p=n(18).f,m=n(32),f=n(106).set,h=n(146),C=s.MutationObserver||s.WebKitMutationObserver,g=s.process,b=s.Promise,v="process"==m(g),N=p(s,"queueMicrotask"),V=N&&N.value;V||(o=function(){var e,t;for(v&&(e=g.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?i():a=undefined,n}}a=undefined,e&&e.enter()},v?i=function(){g.nextTick(o)}:C&&!h?(c=!0,l=document.createTextNode(""),new C(o).observe(l,{characterData:!0}),i=function(){l.data=c=!c}):b&&b.resolve?(u=b.resolve(undefined),d=u.then,i=function(){d.call(u,o)}):i=function(){f.call(s,o)}),e.exports=V||function(e){var t={fn:e,next:undefined};a&&(a.next=t),r||(r=t,i()),a=t}},function(e,t,n){"use strict";var o=n(8),r=n(6),a=n(149);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;var n=a.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var o=n(30),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},function(e,t,n){"use strict";var o=n(73);e.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o)},function(e,t,n){"use strict";var o=n(347);e.exports=function(e,t){var n=o(e);if(n%t)throw RangeError("Wrong offset");return n}},function(e,t,n){"use strict";var o=n(14),r=n(10),a=n(99),i=n(98),c=n(48),l=n(7).aTypedArrayConstructor;e.exports=function(e){var t,n,u,d,s,p,m=o(e),f=arguments.length,h=f>1?arguments[1]:undefined,C=h!==undefined,g=a(m);if(g!=undefined&&!i(g))for(p=(s=g.call(m)).next,m=[];!(d=p.call(s)).done;)m.push(d.value);for(C&&f>2&&(h=c(h,arguments[2],2)),n=r(m.length),u=new(l(this))(n),t=0;n>t;t++)u[t]=C?h(m[t],t):m[t];return u}},function(e,t,n){"use strict";var o=n(66),r=n(50).getWeakData,a=n(8),i=n(6),c=n(55),l=n(68),u=n(16),d=n(15),s=n(34),p=s.set,m=s.getterFor,f=u.find,h=u.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},v=function(e,t){return f(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=v(this,e);if(t)return t[1]},has:function(e){return!!v(this,e)},set:function(e,t){var n=v(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,u){var s=e((function(e,o){c(e,s,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[u],e,n)})),f=m(t),h=function(e,t,n){var o=f(e),i=r(a(t),!0);return!0===i?g(o).set(t,n):i[o.id]=n,e};return o(s.prototype,{"delete":function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&d(n,t.id)&&delete n[t.id]},has:function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&d(n,t.id)}}),o(s.prototype,n?{get:function(e){var t=f(this);if(i(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),s}}},function(e,t,n){"use strict";t.__esModule=!0,t.setupHotReloading=t.sendLogEntry=void 0;t.sendLogEntry=function(e,t){};t.setupHotReloading=function(){0}},function(e,t,n){"use strict";t.__esModule=!0,t.resizeStartHandler=t.dragStartHandler=t.setupDrag=void 0;var o,r,a,i,c,l=n(156),u=n(19),d=(0,n(51).createLogger)("drag"),s=!1,p=!1,m=[0,0],f=function(e){return(0,u.winget)(e,"pos").then((function(e){return[e.x,e.y]}))},h=function(e,t){return(0,u.winset)(e,"pos",t[0]+","+t[1])},C=function(e){var t,n,r,a;return regeneratorRuntime.async((function(i){for(;;)switch(i.prev=i.next){case 0:return d.log("setting up"),o=e.config.window,i.next=4,regeneratorRuntime.awrap(f(o));case 4:t=i.sent,m=[t[0]-window.screenLeft,t[1]-window.screenTop],n=g(t),r=n[0],a=n[1],r&&h(o,a),d.debug("current state",{ref:o,screenOffset:m});case 9:case"end":return i.stop()}}))};t.setupDrag=C;var g=function(e){var t=e[0],n=e[1],o=!1;return t<0?(t=0,o=!0):t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth,o=!0),n<0?(n=0,o=!0):n+window.innerHeight>window.screen.availHeight&&(n=window.screen.availHeight-window.innerHeight,o=!0),[o,[t,n]]};t.dragStartHandler=function(e){d.log("drag start"),s=!0,r=[window.screenLeft-e.screenX,window.screenTop-e.screenY],document.addEventListener("mousemove",v),document.addEventListener("mouseup",b),v(e)};var b=function y(e){d.log("drag end"),v(e),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",y),s=!1},v=function(e){s&&(e.preventDefault(),h(o,(0,l.vecAdd)([e.screenX,e.screenY],m,r)))};t.resizeStartHandler=function(e,t){return function(n){a=[e,t],d.log("resize start",a),p=!0,r=[window.screenLeft-n.screenX,window.screenTop-n.screenY],i=[window.innerWidth,window.innerHeight],document.addEventListener("mousemove",V),document.addEventListener("mouseup",N),V(n)}};var N=function _(e){d.log("resize end",c),V(e),document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",_),p=!1},V=function(e){p&&(e.preventDefault(),(c=(0,l.vecAdd)(i,(0,l.vecMultiply)(a,(0,l.vecAdd)([e.screenX,e.screenY],(0,l.vecInverse)([window.screenLeft,window.screenTop]),r,[1,1]))))[0]=Math.max(c[0],250),c[1]=Math.max(c[1],120),function(e,t){(0,u.winset)(e,"size",t[0]+","+t[1])}(o,c))}},function(e,t,n){"use strict";t.__esModule=!0,t.vecNormalize=t.vecLength=t.vecInverse=t.vecScale=t.vecDivide=t.vecMultiply=t.vecSubtract=t.vecAdd=t.vecCreate=void 0;var o=n(23);t.vecCreate=function(){for(var e=arguments.length,t=new Array(e),n=0;n35;return(0,o.createVNode)(1,"div",(0,r.classes)(["Tooltip",i&&"Tooltip--long",a&&"Tooltip--"+a]),null,1,{"data-tooltip":t})}},function(e,t,n){"use strict";t.__esModule=!0,t.Input=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={editing:!1},t.handleInput=function(e){var n=t.state.editing,o=t.props.onInput;n||t.setEditing(!0),o&&o(e,e.target.value)},t.handleFocus=function(e){t.state.editing||t.setEditing(!0)},t.handleBlur=function(e){var n=t.state.editing,o=t.props.onChange;n&&(t.setEditing(!1),o&&o(e,e.target.value))},t.handleKeyDown=function(e){var n=t.props,o=n.onInput,r=n.onChange,a=n.onEnter;return 13===e.keyCode?(t.setEditing(!1),r&&r(e,e.target.value),o&&o(e,e.target.value),a&&a(e,e.target.value),void(t.props.selfClear?e.target.value="":e.target.blur())):27===e.keyCode?(t.setEditing(!1),e.target.value=c(t.props.value),void e.target.blur()):void 0},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentDidMount=function(){var e=this.props.value,t=this.inputRef.current;t&&(t.value=c(e))},u.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,a=this.inputRef.current;a&&!n&&o!==r&&(a.value=c(r))},u.setEditing=function(e){this.setState({editing:e})},u.render=function(){var e=this.props,t=(e.selfClear,e.onInput,e.onChange,e.onEnter,e.value,e.maxLength),n=e.placeholder,c=i(e,["selfClear","onInput","onChange","onEnter","value","maxLength","placeholder"]),l=c.className,u=c.fluid,d=i(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Input",u&&"Input--fluid",l])},d,{children:[(0,o.createVNode)(1,"div","Input__baseline",".",16),(0,o.createVNode)(64,"input","Input__input",null,1,{placeholder:n,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,maxLength:t},null,this.inputRef)]})))},l}(o.Component);t.Input=l},function(e,t,n){"use strict";t.__esModule=!0,t.GridColumn=t.Grid=void 0;var o=n(1),r=n(162),a=n(12);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.children,n=i(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table,Object.assign({},n,{children:(0,o.createComponentVNode)(2,r.Table.Row,{children:t})})))};t.Grid=c,c.defaultHooks=a.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t,a=e.style,c=i(e,["size","style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table.Cell,Object.assign({style:Object.assign({width:n+"%"},a)},c)))};t.GridColumn=l,c.defaultHooks=a.pureComponentHooks,c.Column=l},function(e,t,n){"use strict";t.__esModule=!0,t.TableCell=t.TableRow=t.Table=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.collapsing,n=e.className,c=e.content,l=e.children,u=i(e,["collapsing","className","content","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"table",className:(0,r.classes)(["Table",t&&"Table--collapsing",n])},u,{children:(0,o.createVNode)(1,"tbody",null,[c,l],0)})))};t.Table=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.header,c=i(e,["className","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"tr",className:(0,r.classes)(["Table__row",n&&"Table__row--header",t])},c)))};t.TableRow=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.collapsing,c=e.header,l=i(e,["className","collapsing","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"td",className:(0,r.classes)(["Table__cell",n&&"Table__cell--collapsing",c&&"Table__cell--header",t])},l)))};t.TableCell=u,u.defaultHooks=r.pureComponentHooks,c.Row=l,c.Cell=u},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListDivider=t.LabeledListItem=t.LabeledList=void 0;var o=n(1),r=n(12),a=n(17),i=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=i,i.defaultHooks=r.pureComponentHooks;var c=function(e){var t=e.className,n=e.label,i=e.labelColor,c=void 0===i?"label":i,l=e.color,u=e.buttons,d=e.content,s=e.children;return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:c,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),content:n+":"}),(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:u?undefined:2,children:[d,s]}),u&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",u,0)],0)};t.LabeledListItem=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,null,1,{style:{"padding-bottom":(0,a.unit)(n)}}),2)};t.LabeledListDivider=l,l.defaultHooks=r.pureComponentHooks,i.Item=c,i.Divider=l},function(e,t,n){n(165),n(166),n(167),n(168),n(169),n(170),e.exports=n(171)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";n(172),n(173),n(174),n(175),n(176),n(177),n(178),n(179),n(180),n(181),n(182),n(183),n(184),n(185),n(186),n(187),n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(197),n(199),n(200),n(201),n(133),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(210),n(211),n(212),n(213),n(214),n(215),n(216),n(218),n(219),n(220),n(221),n(222),n(224),n(225),n(227),n(228),n(229),n(230),n(231),n(232),n(233),n(234),n(235),n(236),n(237),n(238),n(239),n(240),n(242),n(243),n(244),n(245),n(246),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(254),n(256),n(257),n(258),n(259),n(260),n(261),n(263),n(264),n(266),n(268),n(269),n(270),n(271),n(272),n(273),n(274),n(275),n(276),n(277),n(278),n(279),n(280),n(281),n(282),n(283),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(292),n(293),n(294),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(305),n(306),n(307),n(308),n(309),n(310),n(311),n(312),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(326),n(327),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),n(360),n(361),n(362),n(363),n(364),n(365),n(366),n(367),n(368),n(369),n(370),n(371),n(372),n(373),n(374),n(375),n(376),n(377),n(378),n(379),n(380),n(381),n(382),n(383),n(384),n(385);var o=n(1);n(387),n(388);var r=n(389),a=(n(154),n(3)),i=n(19),c=n(155),l=n(51),u=n(157),d=n(501),s=(0,l.createLogger)(),p=(0,d.createStore)(),m=document.getElementById("react-root"),f=!0,h=!1,C=function(){for(p.subscribe((function(){!function(){if(!h){0;try{var e=p.getState();if(f){if(s.log("initial render",e),!(0,u.getRoute)(e)){if(s.info("loading old tgui"),h=!0,window.update=window.initialize=function(){},i.tridentVersion<=4)return void setTimeout((function(){location.href="tgui-fallback.html?ref="+window.__ref__}),10);document.getElementById("data").textContent=JSON.stringify(e),(0,r.loadCSS)("v4shim.css"),(0,r.loadCSS)("tgui.css");var t=document.getElementsByTagName("head")[0],a=document.createElement("script");return a.type="text/javascript",a.src="tgui.js",void t.appendChild(a)}(0,c.setupDrag)(e)}var l=n(503).Layout,d=(0,o.createComponentVNode)(2,l,{state:e,dispatch:p.dispatch});(0,o.render)(d,m)}catch(C){s.error("rendering error",C)}f&&(f=!1)}}()})),window.update=window.initialize=function(e){var t=function(e){var t=function(e,t){return"object"==typeof t&&null!==t&&t.__number__?parseFloat(t.__number__):t};i.tridentVersion<=4&&(t=undefined);try{return JSON.parse(e,t)}catch(o){s.log(o),s.log("What we got:",e);var n=o&&o.message;throw new Error("JSON parsing error: "+n)}}(e);p.dispatch((0,a.backendUpdate)(t))};;){var e=window.__updateQueue__.shift();if(!e)break;window.update(e)}(0,r.loadCSS)("font-awesome.css")};i.tridentVersion<=4&&"loading"===document.readyState?document.addEventListener("DOMContentLoaded",C):C()},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(35),i=n(38),c=n(9),l=n(95),u=n(125),d=n(4),s=n(15),p=n(52),m=n(6),f=n(8),h=n(14),C=n(24),g=n(33),b=n(46),v=n(42),N=n(62),V=n(47),y=n(128),_=n(94),x=n(18),k=n(13),L=n(71),w=n(25),B=n(22),S=n(91),I=n(72),T=n(59),A=n(58),E=n(11),P=n(129),M=n(26),O=n(43),R=n(34),F=n(16).forEach,D=I("hidden"),j=E("toPrimitive"),z=R.set,G=R.getterFor("Symbol"),H=Object.prototype,U=r.Symbol,K=a("JSON","stringify"),Y=x.f,q=k.f,W=y.f,$=L.f,Q=S("symbols"),X=S("op-symbols"),J=S("string-to-symbol-registry"),Z=S("symbol-to-string-registry"),ee=S("wks"),te=r.QObject,ne=!te||!te.prototype||!te.prototype.findChild,oe=c&&d((function(){return 7!=v(q({},"a",{get:function(){return q(this,"a",{value:7}).a}})).a}))?function(e,t,n){var o=Y(H,t);o&&delete H[t],q(e,t,n),o&&e!==H&&q(H,t,o)}:q,re=function(e,t){var n=Q[e]=v(U.prototype);return z(n,{type:"Symbol",tag:e,description:t}),c||(n.description=t),n},ae=l&&"symbol"==typeof U.iterator?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof U},ie=function(e,t,n){e===H&&ie(X,t,n),f(e);var o=g(t,!0);return f(n),s(Q,o)?(n.enumerable?(s(e,D)&&e[D][o]&&(e[D][o]=!1),n=v(n,{enumerable:b(0,!1)})):(s(e,D)||q(e,D,b(1,{})),e[D][o]=!0),oe(e,o,n)):q(e,o,n)},ce=function(e,t){f(e);var n=C(t),o=N(n).concat(pe(n));return F(o,(function(t){c&&!ue.call(n,t)||ie(e,t,n[t])})),e},le=function(e,t){return t===undefined?v(e):ce(v(e),t)},ue=function(e){var t=g(e,!0),n=$.call(this,t);return!(this===H&&s(Q,t)&&!s(X,t))&&(!(n||!s(this,t)||!s(Q,t)||s(this,D)&&this[D][t])||n)},de=function(e,t){var n=C(e),o=g(t,!0);if(n!==H||!s(Q,o)||s(X,o)){var r=Y(n,o);return!r||!s(Q,o)||s(n,D)&&n[D][o]||(r.enumerable=!0),r}},se=function(e){var t=W(C(e)),n=[];return F(t,(function(e){s(Q,e)||s(T,e)||n.push(e)})),n},pe=function(e){var t=e===H,n=W(t?X:C(e)),o=[];return F(n,(function(e){!s(Q,e)||t&&!s(H,e)||o.push(Q[e])})),o};(l||(B((U=function(){if(this instanceof U)throw TypeError("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?String(arguments[0]):undefined,t=A(e),n=function o(e){this===H&&o.call(X,e),s(this,D)&&s(this[D],t)&&(this[D][t]=!1),oe(this,t,b(1,e))};return c&&ne&&oe(H,t,{configurable:!0,set:n}),re(t,e)}).prototype,"toString",(function(){return G(this).tag})),L.f=ue,k.f=ie,x.f=de,V.f=y.f=se,_.f=pe,c&&(q(U.prototype,"description",{configurable:!0,get:function(){return G(this).description}}),i||B(H,"propertyIsEnumerable",ue,{unsafe:!0}))),u||(P.f=function(e){return re(E(e),e)}),o({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:U}),F(N(ee),(function(e){M(e)})),o({target:"Symbol",stat:!0,forced:!l},{"for":function(e){var t=String(e);if(s(J,t))return J[t];var n=U(t);return J[t]=n,Z[n]=t,n},keyFor:function(e){if(!ae(e))throw TypeError(e+" is not a symbol");if(s(Z,e))return Z[e]},useSetter:function(){ne=!0},useSimple:function(){ne=!1}}),o({target:"Object",stat:!0,forced:!l,sham:!c},{create:le,defineProperty:ie,defineProperties:ce,getOwnPropertyDescriptor:de}),o({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:se,getOwnPropertySymbols:pe}),o({target:"Object",stat:!0,forced:d((function(){_.f(1)}))},{getOwnPropertySymbols:function(e){return _.f(h(e))}}),K)&&o({target:"JSON",stat:!0,forced:!l||d((function(){var e=U();return"[null]"!=K([e])||"{}"!=K({a:e})||"{}"!=K(Object(e))}))},{stringify:function(e,t,n){for(var o,r=[e],a=1;arguments.length>a;)r.push(arguments[a++]);if(o=t,(m(t)||e!==undefined)&&!ae(e))return p(t)||(t=function(e,t){if("function"==typeof o&&(t=o.call(this,e,t)),!ae(t))return t}),r[1]=t,K.apply(null,r)}});U.prototype[j]||w(U.prototype,j,U.prototype.valueOf),O(U,"Symbol"),T[D]=!0},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(5),i=n(15),c=n(6),l=n(13).f,u=n(122),d=a.Symbol;if(r&&"function"==typeof d&&(!("description"in d.prototype)||d().description!==undefined)){var s={},p=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:String(arguments[0]),t=this instanceof p?new d(e):e===undefined?d():d(e);return""===e&&(s[t]=!0),t};u(p,d);var m=p.prototype=d.prototype;m.constructor=p;var f=m.toString,h="Symbol(test)"==String(d("test")),C=/^Symbol\((.*)\)[^)]+$/;l(m,"description",{configurable:!0,get:function(){var e=c(this)?this.valueOf():this,t=f.call(e);if(i(s,e))return"";var n=h?t.slice(7,-1):t.replace(C,"$1");return""===n?undefined:n}}),o({global:!0,forced:!0},{Symbol:p})}},function(e,t,n){"use strict";n(26)("asyncIterator")},function(e,t,n){"use strict";n(26)("hasInstance")},function(e,t,n){"use strict";n(26)("isConcatSpreadable")},function(e,t,n){"use strict";n(26)("iterator")},function(e,t,n){"use strict";n(26)("match")},function(e,t,n){"use strict";n(26)("replace")},function(e,t,n){"use strict";n(26)("search")},function(e,t,n){"use strict";n(26)("species")},function(e,t,n){"use strict";n(26)("split")},function(e,t,n){"use strict";n(26)("toPrimitive")},function(e,t,n){"use strict";n(26)("toStringTag")},function(e,t,n){"use strict";n(26)("unscopables")},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(52),i=n(6),c=n(14),l=n(10),u=n(49),d=n(63),s=n(64),p=n(11),m=n(96),f=p("isConcatSpreadable"),h=9007199254740991,C="Maximum allowed index exceeded",g=m>=51||!r((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),b=s("concat"),v=function(e){if(!i(e))return!1;var t=e[f];return t!==undefined?!!t:a(e)};o({target:"Array",proto:!0,forced:!g||!b},{concat:function(e){var t,n,o,r,a,i=c(this),s=d(i,0),p=0;for(t=-1,o=arguments.length;th)throw TypeError(C);for(n=0;n=h)throw TypeError(C);u(s,p++,a)}return s.length=p,s}})},function(e,t,n){"use strict";var o=n(0),r=n(130),a=n(44);o({target:"Array",proto:!0},{copyWithin:r}),a("copyWithin")},function(e,t,n){"use strict";var o=n(0),r=n(16).every;o({target:"Array",proto:!0,forced:n(39)("every")},{every:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(97),a=n(44);o({target:"Array",proto:!0},{fill:r}),a("fill")},function(e,t,n){"use strict";var o=n(0),r=n(16).filter,a=n(4),i=n(64)("filter"),c=i&&!a((function(){[].filter.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(16).find,a=n(44),i=!0;"find"in[]&&Array(1).find((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("find")},function(e,t,n){"use strict";var o=n(0),r=n(16).findIndex,a=n(44),i=!0;"findIndex"in[]&&Array(1).findIndex((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{findIndex:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("findIndex")},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(29),l=n(63);o({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=a(this),n=i(t.length),o=l(t,0);return o.length=r(o,t,t,n,0,e===undefined?1:c(e)),o}})},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(30),l=n(63);o({target:"Array",proto:!0},{flatMap:function(e){var t,n=a(this),o=i(n.length);return c(e),(t=l(n,0)).length=r(t,n,n,o,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},function(e,t,n){"use strict";var o=n(0),r=n(196);o({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var o=n(16).forEach,r=n(39);e.exports=r("forEach")?function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}:[].forEach},function(e,t,n){"use strict";var o=n(0),r=n(198);o({target:"Array",stat:!0,forced:!n(75)((function(e){Array.from(e)}))},{from:r})},function(e,t,n){"use strict";var o=n(48),r=n(14),a=n(132),i=n(98),c=n(10),l=n(49),u=n(99);e.exports=function(e){var t,n,d,s,p,m=r(e),f="function"==typeof this?this:Array,h=arguments.length,C=h>1?arguments[1]:undefined,g=C!==undefined,b=0,v=u(m);if(g&&(C=o(C,h>2?arguments[2]:undefined,2)),v==undefined||f==Array&&i(v))for(n=new f(t=c(m.length));t>b;b++)l(n,b,g?C(m[b],b):m[b]);else for(p=(s=v.call(m)).next,n=new f;!(d=p.call(s)).done;b++)l(n,b,g?a(s,C,[d.value,b],!0):d.value);return n.length=b,n}},function(e,t,n){"use strict";var o=n(0),r=n(60).includes,a=n(44);o({target:"Array",proto:!0},{includes:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("includes")},function(e,t,n){"use strict";var o=n(0),r=n(60).indexOf,a=n(39),i=[].indexOf,c=!!i&&1/[1].indexOf(1,-0)<0,l=a("indexOf");o({target:"Array",proto:!0,forced:c||l},{indexOf:function(e){return c?i.apply(this,arguments)||0:r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";n(0)({target:"Array",stat:!0},{isArray:n(52)})},function(e,t,n){"use strict";var o=n(134).IteratorPrototype,r=n(42),a=n(46),i=n(43),c=n(65),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(o,{next:a(1,n)}),i(e,u,!1,!0),c[u]=l,e}},function(e,t,n){"use strict";var o=n(0),r=n(57),a=n(24),i=n(39),c=[].join,l=r!=Object,u=i("join",",");o({target:"Array",proto:!0,forced:l||u},{join:function(e){return c.call(a(this),e===undefined?",":e)}})},function(e,t,n){"use strict";var o=n(0),r=n(136);o({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(e,t,n){"use strict";var o=n(0),r=n(16).map,a=n(4),i=n(64)("map"),c=i&&!a((function(){[].map.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{map:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(49);o({target:"Array",stat:!0,forced:r((function(){function e(){}return!(Array.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)a(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(0),r=n(76).left;o({target:"Array",proto:!0,forced:n(39)("reduce")},{reduce:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(76).right;o({target:"Array",proto:!0,forced:n(39)("reduceRight")},{reduceRight:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(52),i=n(41),c=n(10),l=n(24),u=n(49),d=n(64),s=n(11)("species"),p=[].slice,m=Math.max;o({target:"Array",proto:!0,forced:!d("slice")},{slice:function(e,t){var n,o,d,f=l(this),h=c(f.length),C=i(e,h),g=i(t===undefined?h:t,h);if(a(f)&&("function"!=typeof(n=f.constructor)||n!==Array&&!a(n.prototype)?r(n)&&null===(n=n[s])&&(n=undefined):n=undefined,n===Array||n===undefined))return p.call(f,C,g);for(o=new(n===undefined?Array:n)(m(g-C,0)),d=0;C1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(30),a=n(14),i=n(4),c=n(39),l=[],u=l.sort,d=i((function(){l.sort(undefined)})),s=i((function(){l.sort(null)})),p=c("sort");o({target:"Array",proto:!0,forced:d||!s||p},{sort:function(e){return e===undefined?u.call(a(this)):u.call(a(this),r(e))}})},function(e,t,n){"use strict";n(54)("Array")},function(e,t,n){"use strict";var o=n(0),r=n(41),a=n(29),i=n(10),c=n(14),l=n(63),u=n(49),d=n(64),s=Math.max,p=Math.min,m=9007199254740991,f="Maximum allowed length exceeded";o({target:"Array",proto:!0,forced:!d("splice")},{splice:function(e,t){var n,o,d,h,C,g,b=c(this),v=i(b.length),N=r(e,v),V=arguments.length;if(0===V?n=o=0:1===V?(n=0,o=v-N):(n=V-2,o=p(s(a(t),0),v-N)),v+n-o>m)throw TypeError(f);for(d=l(b,o),h=0;hv-o+n;h--)delete b[h-1]}else if(n>o)for(h=v-o;h>N;h--)g=h+n-1,(C=h+o-1)in b?b[g]=b[C]:delete b[g];for(h=0;h>1,h=23===t?r(2,-24)-r(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=o(e))!=e||e===1/0?(u=e!=e?1:0,l=m):(l=a(i(e)/c),e*(d=r(2,-l))<1&&(l--,d*=2),(e+=l+f>=1?h/d:h*r(2,1-f))*d>=2&&(l++,d/=2),l+f>=m?(u=0,l=m):l+f>=1?(u=(e*d-1)*r(2,t),l+=f):(u=e*r(2,f-1)*r(2,t),l=0));t>=8;s[g++]=255&u,u/=256,t-=8);for(l=l<0;s[g++]=255&l,l/=256,p-=8);return s[--g]|=128*C,s},unpack:function(e,t){var n,o=e.length,a=8*o-t-1,i=(1<>1,l=a-7,u=o-1,d=e[u--],s=127&d;for(d>>=7;l>0;s=256*s+e[u],u--,l-=8);for(n=s&(1<<-l)-1,s>>=-l,l+=t;l>0;n=256*n+e[u],u--,l-=8);if(0===s)s=1-c;else{if(s===i)return n?NaN:d?-1/0:1/0;n+=r(2,t),s-=c}return(d?-1:1)*n*r(2,s-t)}}},function(e,t,n){"use strict";var o=n(0),r=n(7);o({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(77),i=n(8),c=n(41),l=n(10),u=n(45),d=a.ArrayBuffer,s=a.DataView,p=d.prototype.slice;o({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r((function(){return!new d(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(p!==undefined&&t===undefined)return p.call(i(this),e);for(var n=i(this).byteLength,o=c(e,n),r=c(t===undefined?n:t,n),a=new(u(this,d))(l(r-o)),m=new s(this),f=new s(a),h=0;o9999?"+":"";return n+r(a(e),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(t,3,0)+"Z"}:l},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(33);o({target:"Date",proto:!0,forced:r((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(e){var t=a(this),n=i(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){"use strict";var o=n(25),r=n(226),a=n(11)("toPrimitive"),i=Date.prototype;a in i||o(i,a,r)},function(e,t,n){"use strict";var o=n(8),r=n(33);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!==e)}},function(e,t,n){"use strict";var o=n(22),r=Date.prototype,a="Invalid Date",i=r.toString,c=r.getTime;new Date(NaN)+""!=a&&o(r,"toString",(function(){var e=c.call(this);return e==e?i.call(this):a}))},function(e,t,n){"use strict";n(0)({target:"Function",proto:!0},{bind:n(138)})},function(e,t,n){"use strict";var o=n(6),r=n(13),a=n(36),i=n(11)("hasInstance"),c=Function.prototype;i in c||r.f(c,i,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=a(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){"use strict";var o=n(9),r=n(13).f,a=Function.prototype,i=a.toString,c=/^\s*function ([^ (]*)/;!o||"name"in a||r(a,"name",{configurable:!0,get:function(){try{return i.call(this).match(c)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(5);n(43)(o.JSON,"JSON",!0)},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(140),a=Math.acosh,i=Math.log,c=Math.sqrt,l=Math.LN2;o({target:"Math",stat:!0,forced:!a||710!=Math.floor(a(Number.MAX_VALUE))||a(Infinity)!=Infinity},{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?i(e)+l:r(e-1+c(e-1)*c(e+1))}})},function(e,t,n){"use strict";var o=n(0),r=Math.asinh,a=Math.log,i=Math.sqrt;o({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function c(e){return isFinite(e=+e)&&0!=e?e<0?-c(-e):a(e+i(e*e+1)):e}})},function(e,t,n){"use strict";var o=n(0),r=Math.atanh,a=Math.log;o({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(e){return 0==(e=+e)?e:a((1+e)/(1-e))/2}})},function(e,t,n){"use strict";var o=n(0),r=n(105),a=Math.abs,i=Math.pow;o({target:"Math",stat:!0},{cbrt:function(e){return r(e=+e)*i(a(e),1/3)}})},function(e,t,n){"use strict";var o=n(0),r=Math.floor,a=Math.log,i=Math.LOG2E;o({target:"Math",stat:!0},{clz32:function(e){return(e>>>=0)?31-r(a(e+.5)*i):32}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.cosh,i=Math.abs,c=Math.E;o({target:"Math",stat:!0,forced:!a||a(710)===Infinity},{cosh:function(e){var t=r(i(e)-1)+1;return(t+1/(t*c*c))*(c/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80);o({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{fround:n(241)})},function(e,t,n){"use strict";var o=n(105),r=Math.abs,a=Math.pow,i=a(2,-52),c=a(2,-23),l=a(2,127)*(2-c),u=a(2,-126),d=function(e){return e+1/i-1/i};e.exports=Math.fround||function(e){var t,n,a=r(e),s=o(e);return al||n!=n?s*Infinity:s*n}},function(e,t,n){"use strict";var o=n(0),r=Math.hypot,a=Math.abs,i=Math.sqrt;o({target:"Math",stat:!0,forced:!!r&&r(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,o,r=0,c=0,l=arguments.length,u=0;c0?(o=n/u)*o:n;return u===Infinity?Infinity:u*i(r)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=Math.imul;o({target:"Math",stat:!0,forced:r((function(){return-5!=a(4294967295,5)||2!=a.length}))},{imul:function(e,t){var n=+e,o=+t,r=65535&n,a=65535&o;return 0|r*a+((65535&n>>>16)*a+r*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LOG10E;o({target:"Math",stat:!0},{log10:function(e){return r(e)*a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{log1p:n(140)})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LN2;o({target:"Math",stat:!0},{log2:function(e){return r(e)/a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{sign:n(105)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(80),i=Math.abs,c=Math.exp,l=Math.E;o({target:"Math",stat:!0,forced:r((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){return i(e=+e)<1?(a(e)-a(-e))/2:(c(e-1)-c(-e-1))*(l/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.exp;o({target:"Math",stat:!0},{tanh:function(e){var t=r(e=+e),n=r(-e);return t==Infinity?1:n==Infinity?-1:(t-n)/(a(e)+a(-e))}})},function(e,t,n){"use strict";n(43)(Math,"Math",!0)},function(e,t,n){"use strict";var o=n(0),r=Math.ceil,a=Math.floor;o({target:"Math",stat:!0},{trunc:function(e){return(e>0?a:r)(e)}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(22),c=n(15),l=n(32),u=n(79),d=n(33),s=n(4),p=n(42),m=n(47).f,f=n(18).f,h=n(13).f,C=n(56).trim,g="Number",b=r[g],v=b.prototype,N=l(p(v))==g,V=function(e){var t,n,o,r,a,i,c,l,u=d(e,!1);if("string"==typeof u&&u.length>2)if(43===(t=(u=C(u)).charCodeAt(0))||45===t){if(88===(n=u.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(u.charCodeAt(1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(i=(a=u.slice(2)).length,c=0;cr)return NaN;return parseInt(a,o)}return+u};if(a(g,!b(" 0o1")||!b("0b1")||b("+0x1"))){for(var y,_=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof _&&(N?s((function(){v.valueOf.call(n)})):l(n)!=g)?u(new b(V(t)),n,_):V(t)},x=o?m(b):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),k=0;x.length>k;k++)c(b,y=x[k])&&!c(_,y)&&h(_,y,f(b,y));_.prototype=v,v.constructor=_,i(r,g,_)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isFinite:n(255)})},function(e,t,n){"use strict";var o=n(5).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isInteger:n(141)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},function(e,t,n){"use strict";var o=n(0),r=n(141),a=Math.abs;o({target:"Number",stat:!0},{isSafeInteger:function(e){return r(e)&&a(e)<=9007199254740991}})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){"use strict";var o=n(0),r=n(262);o({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseFloat,c=1/i(a+"-0")!=-Infinity;e.exports=c?function(e){var t=r(String(e)),n=i(t);return 0===n&&"-"==t.charAt(0)?-0:n}:i},function(e,t,n){"use strict";var o=n(0),r=n(142);o({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o=n(0),r=n(29),a=n(265),i=n(104),c=n(4),l=1..toFixed,u=Math.floor,d=function p(e,t,n){return 0===t?n:t%2==1?p(e,t-1,n*e):p(e*e,t/2,n)},s=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t};o({target:"Number",proto:!0,forced:l&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!c((function(){l.call({})}))},{toFixed:function(e){var t,n,o,c,l=a(this),p=r(e),m=[0,0,0,0,0,0],f="",h="0",C=function(e,t){for(var n=-1,o=t;++n<6;)o+=e*m[n],m[n]=o%1e7,o=u(o/1e7)},g=function(e){for(var t=6,n=0;--t>=0;)n+=m[t],m[t]=u(n/e),n=n%e*1e7},b=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==m[e]){var n=String(m[e]);t=""===t?n:t+i.call("0",7-n.length)+n}return t};if(p<0||p>20)throw RangeError("Incorrect fraction digits");if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(f="-",l=-l),l>1e-21)if(n=(t=s(l*d(2,69,1))-69)<0?l*d(2,-t,1):l/d(2,t,1),n*=4503599627370496,(t=52-t)>0){for(C(0,n),o=p;o>=7;)C(1e7,0),o-=7;for(C(d(10,o,1),0),o=t-1;o>=23;)g(1<<23),o-=23;g(1<0?f+((c=h.length)<=p?"0."+i.call("0",p-c)+h:h.slice(0,c-p)+"."+h.slice(c-p)):f+h}})},function(e,t,n){"use strict";var o=n(32);e.exports=function(e){if("number"!=typeof e&&"Number"!=o(e))throw TypeError("Incorrect invocation");return+e}},function(e,t,n){"use strict";var o=n(0),r=n(267);o({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(62),i=n(94),c=n(71),l=n(14),u=n(57),d=Object.assign,s=Object.defineProperty;e.exports=!d||r((function(){if(o&&1!==d({b:1},d(s({},"a",{enumerable:!0,get:function(){s(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||"abcdefghijklmnopqrst"!=a(d({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,d=1,s=i.f,p=c.f;r>d;)for(var m,f=u(arguments[d++]),h=s?a(f).concat(s(f)):a(f),C=h.length,g=0;C>g;)m=h[g++],o&&!p.call(f,m)||(n[m]=f[m]);return n}:d},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0,sham:!n(9)},{create:n(42)})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(30),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineGetter__:function(e,t){l.f(i(this),e,{get:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(126)})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(13).f})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(30),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineSetter__:function(e,t){l.f(i(this),e,{set:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(143).entries;o({target:"Object",stat:!0},{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(67),a=n(4),i=n(6),c=n(50).onFreeze,l=Object.freeze;o({target:"Object",stat:!0,forced:a((function(){l(1)})),sham:!r},{freeze:function(e){return l&&i(e)?l(c(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(68),a=n(49);o({target:"Object",stat:!0},{fromEntries:function(e){var t={};return r(e,(function(e,n){a(t,e,n)}),undefined,!0),t}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(24),i=n(18).f,c=n(9),l=r((function(){i(1)}));o({target:"Object",stat:!0,forced:!c||l,sham:!c},{getOwnPropertyDescriptor:function(e,t){return i(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(92),i=n(24),c=n(18),l=n(49);o({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(e){for(var t,n,o=i(e),r=c.f,u=a(o),d={},s=0;u.length>s;)(n=r(o,t=u[s++]))!==undefined&&l(d,t,n);return d}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(128).f;o({target:"Object",stat:!0,forced:r((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:a})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(36),c=n(102);o({target:"Object",stat:!0,forced:r((function(){i(1)})),sham:!c},{getPrototypeOf:function(e){return i(a(e))}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{is:n(144)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isExtensible;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isExtensible:function(e){return!!a(e)&&(!i||i(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isFrozen;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isFrozen:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isSealed;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isSealed:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(14),a=n(62);o({target:"Object",stat:!0,forced:n(4)((function(){a(1)}))},{keys:function(e){return a(r(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupGetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.get}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupSetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.set}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.preventExtensions;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{preventExtensions:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.seal;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{seal:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{setPrototypeOf:n(53)})},function(e,t,n){"use strict";var o=n(100),r=n(22),a=n(291);o||r(Object.prototype,"toString",a,{unsafe:!0})},function(e,t,n){"use strict";var o=n(100),r=n(74);e.exports=o?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var o=n(0),r=n(143).values;o({target:"Object",stat:!0},{values:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(142);o({global:!0,forced:parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o,r,a,i,c=n(0),l=n(38),u=n(5),d=n(35),s=n(145),p=n(22),m=n(66),f=n(43),h=n(54),C=n(6),g=n(30),b=n(55),v=n(32),N=n(90),V=n(68),y=n(75),_=n(45),x=n(106).set,k=n(147),L=n(148),w=n(295),B=n(149),S=n(296),I=n(34),T=n(61),A=n(11),E=n(96),P=A("species"),M="Promise",O=I.get,R=I.set,F=I.getterFor(M),D=s,j=u.TypeError,z=u.document,G=u.process,H=d("fetch"),U=B.f,K=U,Y="process"==v(G),q=!!(z&&z.createEvent&&u.dispatchEvent),W=0,$=T(M,(function(){if(!(N(D)!==String(D))){if(66===E)return!0;if(!Y&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!D.prototype["finally"])return!0;if(E>=51&&/native code/.test(D))return!1;var e=D.resolve(1),t=function(e){e((function(){}),(function(){}))};return(e.constructor={})[P]=t,!(e.then((function(){}))instanceof t)})),Q=$||!y((function(e){D.all(e)["catch"]((function(){}))})),X=function(e){var t;return!(!C(e)||"function"!=typeof(t=e.then))&&t},J=function(e,t,n){if(!t.notified){t.notified=!0;var o=t.reactions;k((function(){for(var r=t.value,a=1==t.state,i=0;o.length>i;){var c,l,u,d=o[i++],s=a?d.ok:d.fail,p=d.resolve,m=d.reject,f=d.domain;try{s?(a||(2===t.rejection&&ne(e,t),t.rejection=1),!0===s?c=r:(f&&f.enter(),c=s(r),f&&(f.exit(),u=!0)),c===d.promise?m(j("Promise-chain cycle")):(l=X(c))?l.call(c,p,m):p(c)):m(r)}catch(h){f&&!u&&f.exit(),m(h)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&ee(e,t)}))}},Z=function(e,t,n){var o,r;q?((o=z.createEvent("Event")).promise=t,o.reason=n,o.initEvent(e,!1,!0),u.dispatchEvent(o)):o={promise:t,reason:n},(r=u["on"+e])?r(o):"unhandledrejection"===e&&w("Unhandled promise rejection",n)},ee=function(e,t){x.call(u,(function(){var n,o=t.value;if(te(t)&&(n=S((function(){Y?G.emit("unhandledRejection",o,e):Z("unhandledrejection",e,o)})),t.rejection=Y||te(t)?2:1,n.error))throw n.value}))},te=function(e){return 1!==e.rejection&&!e.parent},ne=function(e,t){x.call(u,(function(){Y?G.emit("rejectionHandled",e):Z("rejectionhandled",e,t.value)}))},oe=function(e,t,n,o){return function(r){e(t,n,r,o)}},re=function(e,t,n,o){t.done||(t.done=!0,o&&(t=o),t.value=n,t.state=2,J(e,t,!0))},ae=function ie(e,t,n,o){if(!t.done){t.done=!0,o&&(t=o);try{if(e===n)throw j("Promise can't be resolved itself");var r=X(n);r?k((function(){var o={done:!1};try{r.call(n,oe(ie,e,o,t),oe(re,e,o,t))}catch(a){re(e,o,a,t)}})):(t.value=n,t.state=1,J(e,t,!1))}catch(a){re(e,{done:!1},a,t)}}};$&&(D=function(e){b(this,D,M),g(e),o.call(this);var t=O(this);try{e(oe(ae,this,t),oe(re,this,t))}catch(n){re(this,t,n)}},(o=function(e){R(this,{type:M,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:W,value:undefined})}).prototype=m(D.prototype,{then:function(e,t){var n=F(this),o=U(_(this,D));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=Y?G.domain:undefined,n.parent=!0,n.reactions.push(o),n.state!=W&&J(this,n,!1),o.promise},"catch":function(e){return this.then(undefined,e)}}),r=function(){var e=new o,t=O(e);this.promise=e,this.resolve=oe(ae,e,t),this.reject=oe(re,e,t)},B.f=U=function(e){return e===D||e===a?new r(e):K(e)},l||"function"!=typeof s||(i=s.prototype.then,p(s.prototype,"then",(function(e,t){var n=this;return new D((function(e,t){i.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof H&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return L(D,H.apply(u,arguments))}}))),c({global:!0,wrap:!0,forced:$},{Promise:D}),f(D,M,!1,!0),h(M),a=d(M),c({target:M,stat:!0,forced:$},{reject:function(e){var t=U(this);return t.reject.call(undefined,e),t.promise}}),c({target:M,stat:!0,forced:l||$},{resolve:function(e){return L(l&&this===a?D:this,e)}}),c({target:M,stat:!0,forced:Q},{all:function(e){var t=this,n=U(t),o=n.resolve,r=n.reject,a=S((function(){var n=g(t.resolve),a=[],i=0,c=1;V(e,(function(e){var l=i++,u=!1;a.push(undefined),c++,n.call(t,e).then((function(e){u||(u=!0,a[l]=e,--c||o(a))}),r)})),--c||o(a)}));return a.error&&r(a.value),n.promise},race:function(e){var t=this,n=U(t),o=n.reject,r=S((function(){var r=g(t.resolve);V(e,(function(e){r.call(t,e).then(n.resolve,o)}))}));return r.error&&o(r.value),n.promise}})},function(e,t,n){"use strict";var o=n(5);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},function(e,t,n){"use strict";var o=n(0),r=n(38),a=n(145),i=n(4),c=n(35),l=n(45),u=n(148),d=n(22);o({target:"Promise",proto:!0,real:!0,forced:!!a&&i((function(){a.prototype["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=l(this,c("Promise")),n="function"==typeof e;return this.then(n?function(n){return u(t,e()).then((function(){return n}))}:e,n?function(n){return u(t,e()).then((function(){throw n}))}:e)}}),r||"function"!=typeof a||a.prototype["finally"]||d(a.prototype,"finally",c("Promise").prototype["finally"])},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(30),i=n(8),c=n(4),l=r("Reflect","apply"),u=Function.apply;o({target:"Reflect",stat:!0,forced:!c((function(){l((function(){}))}))},{apply:function(e,t,n){return a(e),i(n),l?l(e,t,n):u.call(e,t,n)}})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(30),i=n(8),c=n(6),l=n(42),u=n(138),d=n(4),s=r("Reflect","construct"),p=d((function(){function e(){}return!(s((function(){}),[],e)instanceof e)})),m=!d((function(){s((function(){}))})),f=p||m;o({target:"Reflect",stat:!0,forced:f,sham:f},{construct:function(e,t){a(e),i(t);var n=arguments.length<3?e:a(arguments[2]);if(m&&!p)return s(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(u.apply(e,o))}var r=n.prototype,d=l(c(r)?r:Object.prototype),f=Function.apply.call(e,d,t);return c(f)?f:d}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(33),c=n(13);o({target:"Reflect",stat:!0,forced:n(4)((function(){Reflect.defineProperty(c.f({},1,{value:1}),1,{value:2})})),sham:!r},{defineProperty:function(e,t,n){a(e);var o=i(t,!0);a(n);try{return c.f(e,o,n),!0}catch(r){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(18).f;o({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=a(r(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(8),i=n(15),c=n(18),l=n(36);o({target:"Reflect",stat:!0},{get:function u(e,t){var n,o,d=arguments.length<3?e:arguments[2];return a(e)===d?e[t]:(n=c.f(e,t))?i(n,"value")?n.value:n.get===undefined?undefined:n.get.call(d):r(o=l(e))?u(o,t,d):void 0}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(18);o({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(e,t){return i.f(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(36);o({target:"Reflect",stat:!0,sham:!n(102)},{getPrototypeOf:function(e){return a(r(e))}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=Object.isExtensible;o({target:"Reflect",stat:!0},{isExtensible:function(e){return r(e),!a||a(e)}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{ownKeys:n(92)})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(8);o({target:"Reflect",stat:!0,sham:!n(67)},{preventExtensions:function(e){a(e);try{var t=r("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(6),i=n(15),c=n(4),l=n(13),u=n(18),d=n(36),s=n(46);o({target:"Reflect",stat:!0,forced:c((function(){var e=l.f({},"a",{configurable:!0});return!1!==Reflect.set(d(e),"a",1,e)}))},{set:function p(e,t,n){var o,c,m=arguments.length<4?e:arguments[3],f=u.f(r(e),t);if(!f){if(a(c=d(e)))return p(c,t,n,m);f=s(0)}if(i(f,"value")){if(!1===f.writable||!a(m))return!1;if(o=u.f(m,t)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,l.f(m,t,o)}else l.f(m,t,s(0,n));return!0}return f.set!==undefined&&(f.set.call(m,n),!0)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(135),i=n(53);i&&o({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){r(e),a(t);try{return i(e,t),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(79),c=n(13).f,l=n(47).f,u=n(107),d=n(83),s=n(22),p=n(4),m=n(54),f=n(11)("match"),h=r.RegExp,C=h.prototype,g=/a/g,b=/a/g,v=new h(g)!==g;if(o&&a("RegExp",!v||p((function(){return b[f]=!1,h(g)!=g||h(b)==b||"/a/i"!=h(g,"i")})))){for(var N=function(e,t){var n=this instanceof N,o=u(e),r=t===undefined;return!n&&o&&e.constructor===N&&r?e:i(v?new h(o&&!r?e.source:e,t):h((o=e instanceof N)?e.source:e,o&&r?d.call(e):t),n?this:C,N)},V=function(e){e in N||c(N,e,{configurable:!0,get:function(){return h[e]},set:function(t){h[e]=t}})},y=l(h),_=0;y.length>_;)V(y[_++]);C.constructor=N,N.prototype=C,s(r,"RegExp",N)}m("RegExp")},function(e,t,n){"use strict";var o=n(0),r=n(84);o({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(83);o&&"g"!=/./g.flags&&r.f(RegExp.prototype,"flags",{configurable:!0,get:a})},function(e,t,n){"use strict";var o=n(22),r=n(8),a=n(4),i=n(83),c=RegExp.prototype,l=c.toString,u=a((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),d="toString"!=l.name;(u||d)&&o(RegExp.prototype,"toString",(function(){var e=r(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(n===undefined&&e instanceof RegExp&&!("flags"in c)?i.call(e):n)}),{unsafe:!0})},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(108).codeAt;o({target:"String",proto:!0},{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o,r=n(0),a=n(18).f,i=n(10),c=n(109),l=n(21),u=n(110),d=n(38),s="".endsWith,p=Math.min,m=u("endsWith");r({target:"String",proto:!0,forced:!!(d||m||(o=a(String.prototype,"endsWith"),!o||o.writable))&&!m},{endsWith:function(e){var t=String(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,o=i(t.length),r=n===undefined?o:p(i(n),o),a=String(e);return s?s.call(t,a,r):t.slice(r-a.length,r)===a}})},function(e,t,n){"use strict";var o=n(0),r=n(41),a=String.fromCharCode,i=String.fromCodePoint;o({target:"String",stat:!0,forced:!!i&&1!=i.length},{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,i=0;o>i;){if(t=+arguments[i++],r(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){"use strict";var o=n(0),r=n(109),a=n(21);o({target:"String",proto:!0,forced:!n(110)("includes")},{includes:function(e){return!!~String(a(this)).indexOf(r(e),arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(108).charAt,r=n(34),a=n(101),i=r.set,c=r.getterFor("String Iterator");a(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=c(this),n=t.string,r=t.index;return r>=n.length?{value:undefined,done:!0}:(e=o(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(10),i=n(21),c=n(111),l=n(86);o("match",1,(function(e,t,n){return[function(t){var n=i(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var i=r(e),u=String(this);if(!i.global)return l(i,u);var d=i.unicode;i.lastIndex=0;for(var s,p=[],m=0;null!==(s=l(i,u));){var f=String(s[0]);p[m]=f,""===f&&(i.lastIndex=c(u,a(i.lastIndex),d)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var o=n(0),r=n(103).end;o({target:"String",proto:!0,forced:n(150)},{padEnd:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(103).start;o({target:"String",proto:!0,forced:n(150)},{padStart:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(24),a=n(10);o({target:"String",stat:!0},{raw:function(e){for(var t=r(e.raw),n=a(t.length),o=arguments.length,i=[],c=0;n>c;)i.push(String(t[c++])),c]*>)/g,h=/\$([$&'`]|\d\d?)/g;o("replace",2,(function(e,t,n){return[function(n,o){var r=l(this),a=n==undefined?undefined:n[e];return a!==undefined?a.call(n,r,o):t.call(String(r),n,o)},function(e,a){var l=n(t,e,this,a);if(l.done)return l.value;var m=r(e),f=String(this),h="function"==typeof a;h||(a=String(a));var C=m.global;if(C){var g=m.unicode;m.lastIndex=0}for(var b=[];;){var v=d(m,f);if(null===v)break;if(b.push(v),!C)break;""===String(v[0])&&(m.lastIndex=u(f,i(m.lastIndex),g))}for(var N,V="",y=0,_=0;_=y&&(V+=f.slice(y,k)+I,y=k+x.length)}return V+f.slice(y)}];function o(e,n,o,r,i,c){var l=o+e.length,u=r.length,d=h;return i!==undefined&&(i=a(i),d=f),t.call(c,d,(function(t,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,o);case"'":return n.slice(l);case"<":c=i[a.slice(1,-1)];break;default:var d=+a;if(0===d)return t;if(d>u){var s=m(d/10);return 0===s?t:s<=u?r[s-1]===undefined?a.charAt(1):r[s-1]+a.charAt(1):t}c=r[d-1]}return c===undefined?"":c}))}}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(21),i=n(144),c=n(86);o("search",1,(function(e,t,n){return[function(t){var n=a(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var a=r(e),l=String(this),u=a.lastIndex;i(u,0)||(a.lastIndex=0);var d=c(a,l);return i(a.lastIndex,u)||(a.lastIndex=u),null===d?-1:d.index}]}))},function(e,t,n){"use strict";var o=n(85),r=n(107),a=n(8),i=n(21),c=n(45),l=n(111),u=n(10),d=n(86),s=n(84),p=n(4),m=[].push,f=Math.min,h=!p((function(){return!RegExp(4294967295,"y")}));o("split",2,(function(e,t,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var o=String(i(this)),a=n===undefined?4294967295:n>>>0;if(0===a)return[];if(e===undefined)return[o];if(!r(e))return t.call(o,e,a);for(var c,l,u,d=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,h=new RegExp(e.source,p+"g");(c=s.call(h,o))&&!((l=h.lastIndex)>f&&(d.push(o.slice(f,c.index)),c.length>1&&c.index=a));)h.lastIndex===c.index&&h.lastIndex++;return f===o.length?!u&&h.test("")||d.push(""):d.push(o.slice(f)),d.length>a?d.slice(0,a):d}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=i(this),a=t==undefined?undefined:t[e];return a!==undefined?a.call(t,r,n):o.call(String(r),t,n)},function(e,r){var i=n(o,e,this,r,o!==t);if(i.done)return i.value;var s=a(e),p=String(this),m=c(s,RegExp),C=s.unicode,g=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(h?"y":"g"),b=new m(h?s:"^(?:"+s.source+")",g),v=r===undefined?4294967295:r>>>0;if(0===v)return[];if(0===p.length)return null===d(b,p)?[p]:[];for(var N=0,V=0,y=[];V1?arguments[1]:undefined,t.length)),o=String(e);return s?s.call(t,o,n):t.slice(n,n+o.length)===o}})},function(e,t,n){"use strict";var o=n(0),r=n(56).trim;o({target:"String",proto:!0,forced:n(112)("trim")},{trim:function(){return r(this)}})},function(e,t,n){"use strict";var o=n(0),r=n(56).end,a=n(112)("trimEnd"),i=a?function(){return r(this)}:"".trimEnd;o({target:"String",proto:!0,forced:a},{trimEnd:i,trimRight:i})},function(e,t,n){"use strict";var o=n(0),r=n(56).start,a=n(112)("trimStart"),i=a?function(){return r(this)}:"".trimStart;o({target:"String",proto:!0,forced:a},{trimStart:i,trimLeft:i})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("anchor")},{anchor:function(e){return r(this,"a","name",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("big")},{big:function(){return r(this,"big","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("blink")},{blink:function(){return r(this,"blink","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("bold")},{bold:function(){return r(this,"b","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fontcolor")},{fontcolor:function(e){return r(this,"font","color",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fontsize")},{fontsize:function(e){return r(this,"font","size",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("italics")},{italics:function(){return r(this,"i","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("link")},{link:function(e){return r(this,"a","href",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("small")},{small:function(){return r(this,"small","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("strike")},{strike:function(){return r(this,"strike","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("sub")},{sub:function(){return r(this,"sub","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("sup")},{sup:function(){return r(this,"sup","","")}})},function(e,t,n){"use strict";n(40)("Float32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(29);e.exports=function(e){var t=o(e);if(t<0)throw RangeError("The argument can't be less than 0");return t}},function(e,t,n){"use strict";n(40)("Float64",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}),!0)},function(e,t,n){"use strict";n(40)("Uint16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(7),r=n(130),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return r.call(a(this),e,t,arguments.length>2?arguments[2]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).every,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("every",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(97),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("fill",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).filter,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("filter",(function(e){for(var t=r(i(this),e,arguments.length>1?arguments[1]:undefined),n=a(this,this.constructor),o=0,l=t.length,u=new(c(n))(l);l>o;)u[o]=t[o++];return u}))},function(e,t,n){"use strict";var o=n(7),r=n(16).find,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("find",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).findIndex,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("findIndex",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).forEach,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("forEach",(function(e){r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(113);(0,n(7).exportTypedArrayStaticMethod)("from",n(152),o)},function(e,t,n){"use strict";var o=n(7),r=n(60).includes,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("includes",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(60).indexOf,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("indexOf",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(133),i=n(11)("iterator"),c=o.Uint8Array,l=a.values,u=a.keys,d=a.entries,s=r.aTypedArray,p=r.exportTypedArrayMethod,m=c&&c.prototype[i],f=!!m&&("values"==m.name||m.name==undefined),h=function(){return l.call(s(this))};p("entries",(function(){return d.call(s(this))})),p("keys",(function(){return u.call(s(this))})),p("values",h,!f),p(i,h,!f)},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].join;a("join",(function(e){return i.apply(r(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(136),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("lastIndexOf",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).map,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("map",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(c(a(e,e.constructor)))(t)}))}))},function(e,t,n){"use strict";var o=n(7),r=n(113),a=o.aTypedArrayConstructor;(0,o.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(a(this))(t);t>e;)n[e]=arguments[e++];return n}),r)},function(e,t,n){"use strict";var o=n(7),r=n(76).left,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduce",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(76).right,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduceRight",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=Math.floor;a("reverse",(function(){for(var e,t=r(this).length,n=i(t/2),o=0;o1?arguments[1]:undefined,1),n=this.length,o=i(e),c=r(o.length),u=0;if(c+t>n)throw RangeError("Wrong length");for(;ua;)d[a]=n[a++];return d}),a((function(){new Int8Array(1).slice()})))},function(e,t,n){"use strict";var o=n(7),r=n(16).some,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("some",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].sort;a("sort",(function(e){return i.call(r(this),e)}))},function(e,t,n){"use strict";var o=n(7),r=n(10),a=n(41),i=n(45),c=o.aTypedArray;(0,o.exportTypedArrayMethod)("subarray",(function(e,t){var n=c(this),o=n.length,l=a(e,o);return new(i(n,n.constructor))(n.buffer,n.byteOffset+l*n.BYTES_PER_ELEMENT,r((t===undefined?o:a(t,o))-l))}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(4),i=o.Int8Array,c=r.aTypedArray,l=r.exportTypedArrayMethod,u=[].toLocaleString,d=[].slice,s=!!i&&a((function(){u.call(new i(1))}));l("toLocaleString",(function(){return u.apply(s?d.call(c(this)):c(this),arguments)}),a((function(){return[1,2].toLocaleString()!=new i([1,2]).toLocaleString()}))||!a((function(){i.prototype.toLocaleString.call([1,2])})))},function(e,t,n){"use strict";var o=n(7).exportTypedArrayMethod,r=n(4),a=n(5).Uint8Array,i=a&&a.prototype||{},c=[].toString,l=[].join;r((function(){c.call({})}))&&(c=function(){return l.call(this)});var u=i.toString!=c;o("toString",c,u)},function(e,t,n){"use strict";var o,r=n(5),a=n(66),i=n(50),c=n(78),l=n(153),u=n(6),d=n(34).enforce,s=n(121),p=!r.ActiveXObject&&"ActiveXObject"in r,m=Object.isExtensible,f=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},h=e.exports=c("WeakMap",f,l);if(s&&p){o=l.getConstructor(f,"WeakMap",!0),i.REQUIRED=!0;var C=h.prototype,g=C["delete"],b=C.has,v=C.get,N=C.set;a(C,{"delete":function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),g.call(this,e)||t.frozen["delete"](e)}return g.call(this,e)},has:function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),b.call(this,e)||t.frozen.has(e)}return b.call(this,e)},get:function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),b.call(this,e)?v.call(this,e):t.frozen.get(e)}return v.call(this,e)},set:function(e,t){if(u(e)&&!m(e)){var n=d(this);n.frozen||(n.frozen=new o),b.call(this,e)?N.call(this,e,t):n.frozen.set(e,t)}else N.call(this,e,t);return this}})}},function(e,t,n){"use strict";n(78)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(153))},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(106);o({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:a.set,clearImmediate:a.clear})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(147),i=n(32),c=r.process,l="process"==i(c);o({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(e){var t=l&&c.domain;a(t?t.bind(e):e)}})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(73),i=[].slice,c=function(e){return function(t,n){var o=arguments.length>2,r=o?i.call(arguments,2):undefined;return e(o?function(){("function"==typeof t?t:Function(t)).apply(this,r)}:t,n)}};o({global:!0,bind:!0,forced:/MSIE .\./.test(a)},{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},function(e,t,n){"use strict";t.__esModule=!0,t._CI=Ie,t._HI=D,t._M=Te,t._MCCC=Me,t._ME=Ee,t._MFCC=Oe,t._MP=Be,t._MR=Ne,t.__render=ze,t.createComponentVNode=function(e,t,n,o,r){var i=new T(1,null,null,e=function(e,t){if(12&e)return e;if(t.prototype&&t.prototype.render)return 4;if(t.render)return 32776;return 8}(e,t),o,function(e,t,n){var o=(32768&e?t.render:t).defaultProps;if(a(o))return n;if(a(n))return d(o,null);return B(n,o)}(e,t,n),function(e,t,n){if(4&e)return n;var o=(32768&e?t.render:t).defaultHooks;if(a(o))return n;if(a(n))return o;return B(n,o)}(e,t,r),t);k.createVNode&&k.createVNode(i);return i},t.createFragment=P,t.createPortal=function(e,t){var n=D(e);return A(1024,1024,null,n,0,null,n.key,t)},t.createRef=function(){return{current:null}},t.createRenderer=function(e){return function(t,n,o,r){e||(e=t),Ge(n,e,o,r)}},t.createTextVNode=E,t.createVNode=A,t.directClone=M,t.findDOMfromVNode=N,t.forwardRef=function(e){return{render:e}},t.getFlagsForElementVnode=function(e){switch(e){case"svg":return 32;case"input":return 64;case"select":return 256;case"textarea":return 128;case m:return 8192;default:return 1}},t.linkEvent=function(e,t){if(c(t))return{data:e,event:t};return null},t.normalizeProps=function(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&a(e.children)&&F(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=undefined)),void 0!==t.key&&(e.key=t.key,t.key=undefined),void 0!==t.ref&&(e.ref=8&n?d(e.ref,t.ref):t.ref,t.ref=undefined)}return e},t.render=Ge,t.rerender=We,t.version=t.options=t.Fragment=t.EMPTY_OBJ=t.Component=void 0;var o=Array.isArray;function r(e){var t=typeof e;return"string"===t||"number"===t}function a(e){return null==e}function i(e){return null===e||!1===e||!0===e||void 0===e}function c(e){return"function"==typeof e}function l(e){return"string"==typeof e}function u(e){return null===e}function d(e,t){var n={};if(e)for(var o in e)n[o]=e[o];if(t)for(var r in t)n[r]=t[r];return n}function s(e){return!u(e)&&"object"==typeof e}var p={};t.EMPTY_OBJ=p;var m="$F";function f(e){return e.substr(2).toLowerCase()}function h(e,t){e.appendChild(t)}function C(e,t,n){u(n)?h(e,t):e.insertBefore(t,n)}function g(e,t){e.removeChild(t)}function b(e){for(var t;(t=e.shift())!==undefined;)t()}function v(e,t,n){var o=e.children;return 4&n?o.$LI:8192&n?2===e.childFlags?o:o[t?0:o.length-1]:o}function N(e,t){for(var n;e;){if(2033&(n=e.flags))return e.dom;e=v(e,t,n)}return null}function V(e,t){do{var n=e.flags;if(2033&n)return void g(t,e.dom);var o=e.children;if(4&n&&(e=o.$LI),8&n&&(e=o),8192&n){if(2!==e.childFlags){for(var r=0,a=o.length;r0,f=u(p),h=l(p)&&p[0]===I;m||f||h?(n=n||t.slice(0,d),(m||h)&&(s=M(s)),(f||h)&&(s.key=I+d),n.push(s)):n&&n.push(s),s.flags|=65536}}a=0===(n=n||t).length?1:8}else(n=t).flags|=65536,81920&t.flags&&(n=M(t)),a=2;return e.children=n,e.childFlags=a,e}function D(e){return i(e)||r(e)?E(e,null):o(e)?P(e,0,null):16384&e.flags?M(e):e}var j="http://www.w3.org/1999/xlink",z="http://www.w3.org/XML/1998/namespace",G={"xlink:actuate":j,"xlink:arcrole":j,"xlink:href":j,"xlink:role":j,"xlink:show":j,"xlink:title":j,"xlink:type":j,"xml:base":z,"xml:lang":z,"xml:space":z};function H(e){return{onClick:e,onDblClick:e,onFocusIn:e,onFocusOut:e,onKeyDown:e,onKeyPress:e,onKeyUp:e,onMouseDown:e,onMouseMove:e,onMouseUp:e,onTouchEnd:e,onTouchMove:e,onTouchStart:e}}var U=H(0),K=H(null),Y=H(!0);function q(e,t){var n=t.$EV;return n||(n=t.$EV=H(null)),n[e]||1==++U[e]&&(K[e]=function(e){var t="onClick"===e||"onDblClick"===e?function(e){return function(t){0===t.button?$(t,!0,e,Z(t)):t.stopPropagation()}}(e):function(e){return function(t){$(t,!1,e,Z(t))}}(e);return document.addEventListener(f(e),t),t}(e)),n}function W(e,t){var n=t.$EV;n&&n[e]&&(0==--U[e]&&(document.removeEventListener(f(e),K[e]),K[e]=null),n[e]=null)}function $(e,t,n,o){var r=function(e){return c(e.composedPath)?e.composedPath()[0]:e.target}(e);do{if(t&&r.disabled)return;var a=r.$EV;if(a){var i=a[n];if(i&&(o.dom=r,i.event?i.event(i.data,e):i(e),e.cancelBubble))return}r=r.parentNode}while(!u(r))}function Q(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function X(){return this.defaultPrevented}function J(){return this.cancelBubble}function Z(e){var t={dom:document};return e.isDefaultPrevented=X,e.isPropagationStopped=J,e.stopPropagation=Q,Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),t}function ee(e,t,n){if(e[t]){var o=e[t];o.event?o.event(o.data,n):o(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function te(e,t){var n=function(n){var o=this.$V;if(o){var r=o.props||p,a=o.dom;if(l(e))ee(r,e,n);else for(var i=0;i-1&&t.options[i]&&(c=t.options[i].value),n&&a(c)&&(c=e.defaultValue),le(o,c)}}var se,pe,me=te("onInput",he),fe=te("onChange");function he(e,t,n){var o=e.value,r=t.value;if(a(o)){if(n){var i=e.defaultValue;a(i)||i===r||(t.defaultValue=i,t.value=i)}}else r!==o&&(t.defaultValue=o,t.value=o)}function Ce(e,t,n,o,r,a){64&e?ce(o,n):256&e?de(o,n,r,t):128&e&&he(o,n,r),a&&(n.$V=t)}function ge(e,t,n){64&e?function(e,t){oe(t.type)?(ne(e,"change",ae),ne(e,"click",ie)):ne(e,"input",re)}(t,n):256&e?function(e){ne(e,"change",ue)}(t):128&e&&function(e,t){ne(e,"input",me),t.onChange&&ne(e,"change",fe)}(t,n)}function be(e){return e.type&&oe(e.type)?!a(e.checked):!a(e.value)}function ve(e){e&&!S(e,null)&&e.current&&(e.current=null)}function Ne(e,t,n){e&&(c(e)||void 0!==e.current)&&n.push((function(){S(e,t)||void 0===e.current||(e.current=t)}))}function Ve(e,t){ye(e),V(e,t)}function ye(e){var t,n=e.flags,o=e.children;if(481&n){t=e.ref;var r=e.props;ve(t);var i=e.childFlags;if(!u(r))for(var l=Object.keys(r),d=0,s=l.length;d0;for(var c in i&&(a=be(n))&&ge(t,o,n),n)we(c,null,n[c],o,r,a,null);i&&Ce(t,e,o,n,!0,a)}function Se(e,t,n){var o=D(e.render(t,e.state,n)),r=n;return c(e.getChildContext)&&(r=d(n,e.getChildContext())),e.$CX=r,o}function Ie(e,t,n,o,r,a){var i=new t(n,o),l=i.$N=Boolean(t.getDerivedStateFromProps||i.getSnapshotBeforeUpdate);if(i.$SVG=r,i.$L=a,e.children=i,i.$BS=!1,i.context=o,i.props===p&&(i.props=n),l)i.state=_(i,n,i.state);else if(c(i.componentWillMount)){i.$BR=!0,i.componentWillMount();var d=i.$PS;if(!u(d)){var s=i.state;if(u(s))i.state=d;else for(var m in d)s[m]=d[m];i.$PS=null}i.$BR=!1}return i.$LI=Se(i,n,o),i}function Te(e,t,n,o,r,a){var i=e.flags|=16384;481&i?Ee(e,t,n,o,r,a):4&i?function(e,t,n,o,r,a){var i=Ie(e,e.type,e.props||p,n,o,a);Te(i.$LI,t,i.$CX,o,r,a),Me(e.ref,i,a)}(e,t,n,o,r,a):8&i?(!function(e,t,n,o,r,a){Te(e.children=D(function(e,t){return 32768&e.flags?e.type.render(e.props||p,e.ref,t):e.type(e.props||p,t)}(e,n)),t,n,o,r,a)}(e,t,n,o,r,a),Oe(e,a)):512&i||16&i?Ae(e,t,r):8192&i?function(e,t,n,o,r,a){var i=e.children,c=e.childFlags;12&c&&0===i.length&&(c=e.childFlags=2,i=e.children=O());2===c?Te(i,n,r,o,r,a):Pe(i,n,t,o,r,a)}(e,n,t,o,r,a):1024&i&&function(e,t,n,o,r){Te(e.children,e.ref,t,!1,null,r);var a=O();Ae(a,n,o),e.dom=a.dom}(e,n,t,r,a)}function Ae(e,t,n){var o=e.dom=document.createTextNode(e.children);u(t)||C(t,o,n)}function Ee(e,t,n,o,r,i){var c=e.flags,l=e.props,d=e.className,s=e.children,p=e.childFlags,m=e.dom=function(e,t){return t?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}(e.type,o=o||(32&c)>0);if(a(d)||""===d||(o?m.setAttribute("class",d):m.className=d),16===p)L(m,s);else if(1!==p){var f=o&&"foreignObject"!==e.type;2===p?(16384&s.flags&&(e.children=s=M(s)),Te(s,m,n,f,null,i)):8!==p&&4!==p||Pe(s,m,n,f,null,i)}u(t)||C(t,m,r),u(l)||Be(e,c,l,m,o),Ne(e.ref,m,i)}function Pe(e,t,n,o,r,a){for(var i=0;i0,u!==d){var f=u||p;if((c=d||p)!==p)for(var h in(s=(448&r)>0)&&(m=be(c)),c){var C=f[h],g=c[h];C!==g&&we(h,C,g,l,o,m,e)}if(f!==p)for(var b in f)a(c[b])&&!a(f[b])&&we(b,f[b],null,l,o,m,e)}var v=t.children,N=t.className;e.className!==N&&(a(N)?l.removeAttribute("class"):o?l.setAttribute("class",N):l.className=N);4096&r?function(e,t){e.textContent!==t&&(e.textContent=t)}(l,v):Fe(e.childFlags,t.childFlags,e.children,v,l,n,o&&"foreignObject"!==t.type,null,e,i);s&&Ce(r,t,l,c,!1,m);var V=t.ref,y=e.ref;y!==V&&(ve(y),Ne(V,l,i))}(e,t,o,r,m,s):4&m?function(e,t,n,o,r,a,i){var l=t.children=e.children;if(u(l))return;l.$L=i;var s=t.props||p,m=t.ref,f=e.ref,h=l.state;if(!l.$N){if(c(l.componentWillReceiveProps)){if(l.$BR=!0,l.componentWillReceiveProps(s,o),l.$UN)return;l.$BR=!1}u(l.$PS)||(h=d(h,l.$PS),l.$PS=null)}De(l,h,s,n,o,r,!1,a,i),f!==m&&(ve(f),Ne(m,l,i))}(e,t,n,o,r,l,s):8&m?function(e,t,n,o,r,i,l){var u=!0,d=t.props||p,s=t.ref,m=e.props,f=!a(s),h=e.children;f&&c(s.onComponentShouldUpdate)&&(u=s.onComponentShouldUpdate(m,d));if(!1!==u){f&&c(s.onComponentWillUpdate)&&s.onComponentWillUpdate(m,d);var C=t.type,g=D(32768&t.flags?C.render(d,s,o):C(d,o));Re(h,g,n,o,r,i,l),t.children=g,f&&c(s.onComponentDidUpdate)&&s.onComponentDidUpdate(m,d)}else t.children=h}(e,t,n,o,r,l,s):16&m?function(e,t){var n=t.children,o=t.dom=e.dom;n!==e.children&&(o.nodeValue=n)}(e,t):512&m?t.dom=e.dom:8192&m?function(e,t,n,o,r,a){var i=e.children,c=t.children,l=e.childFlags,u=t.childFlags,d=null;12&u&&0===c.length&&(u=t.childFlags=2,c=t.children=O());var s=0!=(2&u);if(12&l){var p=i.length;(8&l&&8&u||s||!s&&c.length>p)&&(d=N(i[p-1],!1).nextSibling)}Fe(l,u,i,c,n,o,r,d,e,a)}(e,t,n,o,r,s):function(e,t,n,o){var r=e.ref,a=t.ref,c=t.children;if(Fe(e.childFlags,t.childFlags,e.children,c,r,n,!1,null,e,o),t.dom=e.dom,r!==a&&!i(c)){var l=c.dom;g(r,l),h(a,l)}}(e,t,o,s)}function Fe(e,t,n,o,r,a,i,c,l,u){switch(e){case 2:switch(t){case 2:Re(n,o,r,a,i,c,u);break;case 1:Ve(n,r);break;case 16:ye(n),L(r,o);break;default:!function(e,t,n,o,r,a){ye(e),Pe(t,n,o,r,N(e,!0),a),V(e,n)}(n,o,r,a,i,u)}break;case 1:switch(t){case 2:Te(o,r,a,i,c,u);break;case 1:break;case 16:L(r,o);break;default:Pe(o,r,a,i,c,u)}break;case 16:switch(t){case 16:!function(e,t,n){e!==t&&(""!==e?n.firstChild.nodeValue=t:L(n,t))}(n,o,r);break;case 2:xe(r),Te(o,r,a,i,c,u);break;case 1:xe(r);break;default:xe(r),Pe(o,r,a,i,c,u)}break;default:switch(t){case 16:_e(n),L(r,o);break;case 2:ke(r,l,n),Te(o,r,a,i,c,u);break;case 1:ke(r,l,n);break;default:var d=0|n.length,s=0|o.length;0===d?s>0&&Pe(o,r,a,i,c,u):0===s?ke(r,l,n):8===t&&8===e?function(e,t,n,o,r,a,i,c,l,u){var d,s,p=a-1,m=i-1,f=0,h=e[f],C=t[f];e:{for(;h.key===C.key;){if(16384&C.flags&&(t[f]=C=M(C)),Re(h,C,n,o,r,c,u),e[f]=C,++f>p||f>m)break e;h=e[f],C=t[f]}for(h=e[p],C=t[m];h.key===C.key;){if(16384&C.flags&&(t[m]=C=M(C)),Re(h,C,n,o,r,c,u),e[p]=C,p--,m--,f>p||f>m)break e;h=e[p],C=t[m]}}if(f>p){if(f<=m)for(s=(d=m+1)m)for(;f<=p;)Ve(e[f++],n);else!function(e,t,n,o,r,a,i,c,l,u,d,s,p){var m,f,h,C=0,g=c,b=c,v=a-c+1,V=i-c+1,_=new Int32Array(V+1),x=v===o,k=!1,L=0,w=0;if(r<4||(v|V)<32)for(C=g;C<=a;++C)if(m=e[C],wc?k=!0:L=c,16384&f.flags&&(t[c]=f=M(f)),Re(m,f,l,n,u,d,p),++w;break}!x&&c>i&&Ve(m,l)}else x||Ve(m,l);else{var B={};for(C=b;C<=i;++C)B[t[C].key]=C;for(C=g;C<=a;++C)if(m=e[C],wg;)Ve(e[g++],l);_[c-b]=C+1,L>c?k=!0:L=c,16384&(f=t[c]).flags&&(t[c]=f=M(f)),Re(m,f,l,n,u,d,p),++w}else x||Ve(m,l);else x||Ve(m,l)}if(x)ke(l,s,e),Pe(t,l,n,u,d,p);else if(k){var S=function(e){var t=0,n=0,o=0,r=0,a=0,i=0,c=0,l=e.length;l>je&&(je=l,se=new Int32Array(l),pe=new Int32Array(l));for(;n>1]]0&&(pe[n]=se[a-1]),se[a]=n)}a=r+1;var u=new Int32Array(a);i=se[a-1];for(;a-- >0;)u[a]=i,i=pe[i],se[a]=0;return u}(_);for(c=S.length-1,C=V-1;C>=0;C--)0===_[C]?(16384&(f=t[L=C+b]).flags&&(t[L]=f=M(f)),Te(f,l,n,u,(h=L+1)=0;C--)0===_[C]&&(16384&(f=t[L=C+b]).flags&&(t[L]=f=M(f)),Te(f,l,n,u,(h=L+1)i?i:a,p=0;pi)for(p=s;p0&&b(r),x.v=!1,c(n)&&n(),c(k.renderComplete)&&k.renderComplete(i,t)}function Ge(e,t,n,o){void 0===n&&(n=null),void 0===o&&(o=p),ze(e,t,n,o)}"undefined"!=typeof document&&window.Node&&(Node.prototype.$EV=null,Node.prototype.$V=null);var He=[],Ue="undefined"!=typeof Promise?Promise.resolve().then.bind(Promise.resolve()):function(e){window.setTimeout(e,0)},Ke=!1;function Ye(e,t,n,o){var r=e.$PS;if(c(t)&&(t=t(r?d(e.state,r):e.state,e.props,e.context)),a(r))e.$PS=t;else for(var i in t)r[i]=t[i];if(e.$BR)c(n)&&e.$L.push(n.bind(e));else{if(!x.v&&0===He.length)return void $e(e,o,n);if(-1===He.indexOf(e)&&He.push(e),Ke||(Ke=!0,Ue(We)),c(n)){var l=e.$QU;l||(l=e.$QU=[]),l.push(n)}}}function qe(e){for(var t=e.$QU,n=0,o=t.length;n0&&b(r),x.v=!1}else e.state=e.$PS,e.$PS=null;c(n)&&n.call(e)}}var Qe=function(e,t){this.state=null,this.$BR=!1,this.$BS=!0,this.$PS=null,this.$LI=null,this.$UN=!1,this.$CX=null,this.$QU=null,this.$N=!1,this.$L=null,this.$SVG=!1,this.props=e||p,this.context=t||p};t.Component=Qe,Qe.prototype.forceUpdate=function(e){this.$UN||Ye(this,{},e,!0)},Qe.prototype.setState=function(e,t){this.$UN||this.$BS||Ye(this,e,t,!1)},Qe.prototype.render=function(e,t,n){return null};t.version="7.3.3"},function(e,t,n){"use strict";var o=function(e){var t,n=Object.prototype,o=n.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",i=r.asyncIterator||"@@asyncIterator",c=r.toStringTag||"@@toStringTag";function l(e,t,n,o){var r=t&&t.prototype instanceof h?t:h,a=Object.create(r.prototype),i=new w(o||[]);return a._invoke=function(e,t,n){var o=d;return function(r,a){if(o===p)throw new Error("Generator is already running");if(o===m){if("throw"===r)throw a;return S()}for(n.method=r,n.arg=a;;){var i=n.delegate;if(i){var c=x(i,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===d)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=u(e,t,n);if("normal"===l.type){if(o=n.done?m:s,l.arg===f)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=m,n.method="throw",n.arg=l.arg)}}}(e,n,i),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(o){return{type:"throw",arg:o}}}e.wrap=l;var d="suspendedStart",s="suspendedYield",p="executing",m="completed",f={};function h(){}function C(){}function g(){}var b={};b[a]=function(){return this};var v=Object.getPrototypeOf,N=v&&v(v(B([])));N&&N!==n&&o.call(N,a)&&(b=N);var V=g.prototype=h.prototype=Object.create(b);function y(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function _(e){var t;this._invoke=function(n,r){function a(){return new Promise((function(t,a){!function i(t,n,r,a){var c=u(e[t],e,n);if("throw"!==c.type){var l=c.arg,d=l.value;return d&&"object"==typeof d&&o.call(d,"__await")?Promise.resolve(d.__await).then((function(e){i("next",e,r,a)}),(function(e){i("throw",e,r,a)})):Promise.resolve(d).then((function(e){l.value=e,r(l)}),(function(e){return i("throw",e,r,a)}))}a(c.arg)}(n,r,t,a)}))}return t=t?t.then(a,a):a()}}function x(e,n){var o=e.iterator[n.method];if(o===t){if(n.delegate=null,"throw"===n.method){if(e.iterator["return"]&&(n.method="return",n.arg=t,x(e,n),"throw"===n.method))return f;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=u(o,e.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,f;var a=r.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,f):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,f)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function w(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function B(e){if(e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function n(){for(;++r=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var l=o.call(i,"catchLoc"),u=o.call(i,"finallyLoc");if(l&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),L(n),f}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o=n.completion;if("throw"===o.type){var r=o.arg;L(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,o){return this.delegate={iterator:B(e),resultName:n,nextLoc:o},"next"===this.method&&(this.arg=t),f}},e}(e.exports);try{regeneratorRuntime=o}catch(r){Function("r","regeneratorRuntime = r")(o)}},function(e,t,n){"use strict";window.Int32Array||(window.Int32Array=Array)},function(e,t,n){"use strict";(function(e){ +!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=164)}([function(e,t,n){"use strict";var o=n(5),r=n(18).f,a=n(25),i=n(22),c=n(89),l=n(122),u=n(61);e.exports=function(e,t){var n,d,s,p,m,f=e.target,h=e.global,C=e.stat;if(n=h?o:C?o[f]||c(f,{}):(o[f]||{}).prototype)for(d in t){if(p=t[d],s=e.noTargetGet?(m=r(n,d))&&m.value:n[d],!u(h?d:f+(C?".":"#")+d,e.forced)&&s!==undefined){if(typeof p==typeof s)continue;l(p,s)}(e.sham||s&&s.sham)&&a(p,"sham",!0),i(n,d,p,e)}}},function(e,t,n){"use strict";t.__esModule=!0;var o=n(386);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(t[e]=o[e])}))},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=t.Tooltip=t.Toast=t.TitleBar=t.Tabs=t.Table=t.Section=t.ProgressBar=t.NumberInput=t.NoticeBox=t.LabeledList=t.Input=t.Icon=t.Grid=t.Flex=t.Dropdown=t.Dimmer=t.Collapsible=t.ColorBox=t.Button=t.Box=t.BlockQuote=t.AnimatedNumber=void 0;var o=n(158);t.AnimatedNumber=o.AnimatedNumber;var r=n(391);t.BlockQuote=r.BlockQuote;var a=n(17);t.Box=a.Box;var i=n(114);t.Button=i.Button;var c=n(393);t.ColorBox=c.ColorBox;var l=n(394);t.Collapsible=l.Collapsible;var u=n(395);t.Dimmer=u.Dimmer;var d=n(396);t.Dropdown=d.Dropdown;var s=n(397);t.Flex=s.Flex;var p=n(161);t.Grid=p.Grid;var m=n(87);t.Icon=m.Icon;var f=n(160);t.Input=f.Input;var h=n(163);t.LabeledList=h.LabeledList;var C=n(398);t.NoticeBox=C.NoticeBox;var g=n(399);t.NumberInput=g.NumberInput;var b=n(400);t.ProgressBar=b.ProgressBar;var v=n(401);t.Section=v.Section;var N=n(162);t.Table=N.Table;var V=n(402);t.Tabs=V.Tabs;var y=n(403);t.TitleBar=y.TitleBar;var _=n(117);t.Toast=_.Toast;var x=n(159);t.Tooltip=x.Tooltip;var k=n(404);t.Chart=k.Chart},function(e,t,n){"use strict";t.__esModule=!0,t.useBackend=t.backendReducer=t.backendUpdate=void 0;var o=n(37),r=n(19);t.backendUpdate=function(e){return{type:"backendUpdate",payload:e}};t.backendReducer=function(e,t){var n=t.type,r=t.payload;if("backendUpdate"===n){var a=Object.assign({},e.config,{},r.config),i=Object.assign({},e.data,{},r.static_data,{},r.data),c=a.status!==o.UI_DISABLED,l=a.status===o.UI_INTERACTIVE;return Object.assign({},e,{config:a,data:i,visible:c,interactive:l})}return e};t.useBackend=function(e){var t=e.state,n=(e.dispatch,t.config.ref);return Object.assign({},t,{act:function(e,t){return void 0===t&&(t={}),(0,r.act)(n,e,t)}})}},function(e,t,n){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},function(e,t,n){"use strict";(function(t){var n=function(e){return e&&e.Math==Math&&e};e.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof t&&t)||Function("return this")()}).call(this,n(118))},function(e,t,n){"use strict";e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){"use strict";var o,r=n(9),a=n(5),i=n(6),c=n(15),l=n(74),u=n(25),d=n(22),s=n(13).f,p=n(36),m=n(53),f=n(11),h=n(58),C=a.DataView,g=C&&C.prototype,b=a.Int8Array,v=b&&b.prototype,N=a.Uint8ClampedArray,V=N&&N.prototype,y=b&&p(b),_=v&&p(v),x=Object.prototype,k=x.isPrototypeOf,L=f("toStringTag"),w=h("TYPED_ARRAY_TAG"),B=!(!a.ArrayBuffer||!C),S=B&&!!m&&"Opera"!==l(a.opera),I=!1,T={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},A=function(e){var t=l(e);return"DataView"===t||c(T,t)},E=function(e){return i(e)&&c(T,l(e))};for(o in T)a[o]||(S=!1);if((!S||"function"!=typeof y||y===Function.prototype)&&(y=function(){throw TypeError("Incorrect invocation")},S))for(o in T)a[o]&&m(a[o],y);if((!S||!_||_===x)&&(_=y.prototype,S))for(o in T)a[o]&&m(a[o].prototype,_);if(S&&p(V)!==_&&m(V,_),r&&!c(_,L))for(o in I=!0,s(_,L,{get:function(){return i(this)?this[w]:undefined}}),T)a[o]&&u(a[o],w,o);B&&m&&p(g)!==x&&m(g,x),e.exports={NATIVE_ARRAY_BUFFER:B,NATIVE_ARRAY_BUFFER_VIEWS:S,TYPED_ARRAY_TAG:I&&w,aTypedArray:function(e){if(E(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(m){if(k.call(y,e))return e}else for(var t in T)if(c(T,o)){var n=a[t];if(n&&(e===n||k.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(r){if(n)for(var o in T){var i=a[o];i&&c(i.prototype,e)&&delete i.prototype[e]}_[e]&&!n||d(_,e,n?t:S&&v[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var o,i;if(r){if(m){if(n)for(o in T)(i=a[o])&&c(i,e)&&delete i[e];if(y[e]&&!n)return;try{return d(y,e,n?t:S&&b[e]||t)}catch(l){}}for(o in T)!(i=a[o])||i[e]&&!n||d(i,e,t)}},isView:A,isTypedArray:E,TypedArray:y,TypedArrayPrototype:_}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e))throw TypeError(String(e)+" is not an object");return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(30),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(5),r=n(91),a=n(15),i=n(58),c=n(95),l=n(125),u=r("wks"),d=o.Symbol,s=l?d:i;e.exports=function(e){return a(u,e)||(c&&a(d,e)?u[e]=d[e]:u[e]=s("Symbol."+e)),u[e]}},function(e,t,n){"use strict";t.__esModule=!0,t.isFalsy=t.pureComponentHooks=t.shallowDiffers=t.normalizeChildren=t.classes=void 0;t.classes=function(e){for(var t="",n=0;n_;_++)if((p||_ in N)&&(b=V(g=N[_],_,v),e))if(t)k[_]=b;else if(b)switch(e){case 3:return!0;case 5:return g;case 6:return _;case 2:l.call(k,g)}else if(d)return!1;return s?-1:u||d?d:k}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},function(e,t,n){"use strict";t.__esModule=!0,t.Box=t.computeBoxProps=t.unit=void 0;var o=n(1),r=n(12),a=n(392),i=n(37);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){return"string"==typeof e?e:"number"==typeof e?6*e+"px":void 0};t.unit=l;var u=function(e){return"string"==typeof e&&i.CSS_COLORS.includes(e)},d=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=n)}},s=function(e){return function(t,n){(0,r.isFalsy)(n)||(t[e]=l(n))}},p=function(e,t){return function(n,o){(0,r.isFalsy)(o)||(n[e]=t)}},m=function(e,t){return function(n,o){if(!(0,r.isFalsy)(o))for(var a=0;a0&&(t.style=l),t};t.computeBoxProps=C;var g=function(e){var t=e.as,n=void 0===t?"div":t,i=e.className,l=e.content,d=e.children,s=c(e,["as","className","content","children"]),p=e.textColor||e.color,m=e.backgroundColor;if("function"==typeof d)return d(C(e));var f=C(s);return(0,o.createVNode)(a.VNodeFlags.HtmlElement,n,(0,r.classes)([i,u(p)&&"color-"+p,u(m)&&"color-bg-"+m]),l||d,a.ChildFlags.UnknownChildren,f)};t.Box=g,g.defaultHooks=r.pureComponentHooks;var b=function(e){var t=e.children,n=c(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({position:"relative"},n,{children:(0,o.createComponentVNode)(2,g,{fillPositionedParent:!0,children:t})})))};b.defaultHooks=r.pureComponentHooks,g.Forced=b},function(e,t,n){"use strict";var o=n(9),r=n(71),a=n(46),i=n(24),c=n(33),l=n(15),u=n(119),d=Object.getOwnPropertyDescriptor;t.f=o?d:function(e,t){if(e=i(e),t=c(t,!0),u)try{return d(e,t)}catch(n){}if(l(e,t))return a(!r.f.call(e,t),e[t])}},function(e,t,n){"use strict";t.__esModule=!0,t.winset=t.winget=t.act=t.runCommand=t.callByondAsync=t.callByond=t.tridentVersion=void 0;var o,r=n(29),a=(o=navigator.userAgent.match(/Trident\/(\d+).+?;/i)[1])?parseInt(o,10):null;t.tridentVersion=a;var i=function(e,t){return void 0===t&&(t={}),"byond://"+e+"?"+(0,r.buildQueryString)(t)},c=function(e,t){void 0===t&&(t={}),window.location.href=i(e,t)};t.callByond=c;var l=function(e,t){void 0===t&&(t={}),window.__callbacks__=window.__callbacks__||[];var n=window.__callbacks__.length,o=new Promise((function(e){window.__callbacks__.push(e)}));return window.location.href=i(e,Object.assign({},t,{callback:"__callbacks__["+n+"]"})),o};t.callByondAsync=l;t.runCommand=function(e){return c("winset",{command:e})};t.act=function(e,t,n){return void 0===n&&(n={}),c("",Object.assign({src:e,action:t},n))};var u=function(e,t){var n;return regeneratorRuntime.async((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,regeneratorRuntime.awrap(l("winget",{id:e,property:t}));case 2:return n=o.sent,o.abrupt("return",n[t]);case 4:case"end":return o.stop()}}))};t.winget=u;t.winset=function(e,t,n){var o;return c("winset",((o={})[e+"."+t]=n,o))}},function(e,t,n){"use strict";t.__esModule=!0,t.toFixed=t.round=t.clamp=void 0;t.clamp=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),Math.max(t,Math.min(e,n))};t.round=function(e){return Math.round(e)};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(t)}},function(e,t,n){"use strict";e.exports=function(e){if(e==undefined)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){"use strict";var o=n(5),r=n(25),a=n(15),i=n(89),c=n(90),l=n(34),u=l.get,d=l.enforce,s=String(String).split("String");(e.exports=function(e,t,n,c){var l=!!c&&!!c.unsafe,u=!!c&&!!c.enumerable,p=!!c&&!!c.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||r(n,"name",t),d(n).source=s.join("string"==typeof t?t:"")),e!==o?(l?!p&&e[t]&&(u=!0):delete e[t],u?e[t]=n:r(e,t,n)):u?e[t]=n:i(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||c(this)}))},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.reduce=t.sortBy=t.map=t.toArray=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};var o=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oc)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;n"+i+""}},function(e,t,n){"use strict";var o=n(4);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";t.__esModule=!0,t.buildQueryString=t.decodeHtmlEntities=t.toTitleCase=t.capitalize=t.testGlobPattern=t.multiline=void 0;t.multiline=function o(e){if(Array.isArray(e))return o(e.join(""));var t,n=e.split("\n"),r=n,a=Array.isArray(r),i=0;for(r=a?r:r[Symbol.iterator]();;){var c;if(a){if(i>=r.length)break;c=r[i++]}else{if((i=r.next()).done)break;c=i.value}for(var l=c,u=0;u",apos:"'"};return e.replace(/
/gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/&#?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/&#x?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";var o=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:o)(e)}},function(e,t,n){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,t,n){"use strict";var o={}.toString;e.exports=function(e){return o.call(e).slice(8,-1)}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e,t){if(!o(e))return e;var n,r;if(t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;if("function"==typeof(n=e.valueOf)&&!o(r=n.call(e)))return r;if(!t&&"function"==typeof(n=e.toString)&&!o(r=n.call(e)))return r;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){"use strict";var o,r,a,i=n(121),c=n(5),l=n(6),u=n(25),d=n(15),s=n(72),p=n(59),m=c.WeakMap;if(i){var f=new m,h=f.get,C=f.has,g=f.set;o=function(e,t){return g.call(f,e,t),t},r=function(e){return h.call(f,e)||{}},a=function(e){return C.call(f,e)}}else{var b=s("state");p[b]=!0,o=function(e,t){return u(e,b,t),t},r=function(e){return d(e,b)?e[b]:{}},a=function(e){return d(e,b)}}e.exports={set:o,get:r,has:a,enforce:function(e){return a(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=r(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=n(123),r=n(5),a=function(e){return"function"==typeof e?e:undefined};e.exports=function(e,t){return arguments.length<2?a(o[e])||a(r[e]):o[e]&&o[e][t]||r[e]&&r[e][t]}},function(e,t,n){"use strict";var o=n(15),r=n(14),a=n(72),i=n(102),c=a("IE_PROTO"),l=Object.prototype;e.exports=i?Object.getPrototypeOf:function(e){return e=r(e),o(e,c)?e[c]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?l:null}},function(e,t,n){"use strict";t.__esModule=!0,t.getGasColor=t.getGasLabel=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=t.UI_CLOSE=t.UI_DISABLED=t.UI_UPDATE=t.UI_INTERACTIVE=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{captain:"#c06616",security:"#e74c3c",medbay:"#3498db",science:"#9b59b6",engineering:"#f1c40f",cargo:"#f39c12",centcom:"#00c100",other:"#c38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"CentCom",freq:1337,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"AI Private",freq:1447,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color}},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(4);e.exports=function(e,t){var n=[][e];return!n||!o((function(){n.call(null,t||function(){throw 1},1)}))}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(9),i=n(113),c=n(7),l=n(77),u=n(55),d=n(46),s=n(25),p=n(10),m=n(137),f=n(151),h=n(33),C=n(15),g=n(74),b=n(6),v=n(42),N=n(53),V=n(47).f,y=n(152),_=n(16).forEach,x=n(54),k=n(13),L=n(18),w=n(34),B=n(79),S=w.get,I=w.set,T=k.f,A=L.f,E=Math.round,P=r.RangeError,M=l.ArrayBuffer,O=l.DataView,R=c.NATIVE_ARRAY_BUFFER_VIEWS,F=c.TYPED_ARRAY_TAG,D=c.TypedArray,j=c.TypedArrayPrototype,z=c.aTypedArrayConstructor,H=c.isTypedArray,G=function(e,t){for(var n=0,o=t.length,r=new(z(e))(o);o>n;)r[n]=t[n++];return r},U=function(e,t){T(e,t,{get:function(){return S(this)[t]}})},K=function(e){var t;return e instanceof M||"ArrayBuffer"==(t=g(e))||"SharedArrayBuffer"==t},Y=function(e,t){return H(e)&&"symbol"!=typeof t&&t in e&&String(+t)==String(t)},q=function(e,t){return Y(e,t=h(t,!0))?d(2,e[t]):A(e,t)},W=function(e,t,n){return!(Y(e,t=h(t,!0))&&b(n)&&C(n,"value"))||C(n,"get")||C(n,"set")||n.configurable||C(n,"writable")&&!n.writable||C(n,"enumerable")&&!n.enumerable?T(e,t,n):(e[t]=n.value,e)};a?(R||(L.f=q,k.f=W,U(j,"buffer"),U(j,"byteOffset"),U(j,"byteLength"),U(j,"length")),o({target:"Object",stat:!0,forced:!R},{getOwnPropertyDescriptor:q,defineProperty:W}),e.exports=function(e,t,n){var a=e.match(/\d+$/)[0]/8,c=e+(n?"Clamped":"")+"Array",l="get"+e,d="set"+e,h=r[c],C=h,g=C&&C.prototype,k={},L=function(e,t){var n=S(e);return n.view[l](t*a+n.byteOffset,!0)},w=function(e,t,o){var r=S(e);n&&(o=(o=E(o))<0?0:o>255?255:255&o),r.view[d](t*a+r.byteOffset,o,!0)},A=function(e,t){T(e,t,{get:function(){return L(this,t)},set:function(e){return w(this,t,e)},enumerable:!0})};R?i&&(C=t((function(e,t,n,o){return u(e,C,c),B(b(t)?K(t)?o!==undefined?new h(t,f(n,a),o):n!==undefined?new h(t,f(n,a)):new h(t):H(t)?G(C,t):y.call(C,t):new h(m(t)),e,C)})),N&&N(C,D),_(V(h),(function(e){e in C||s(C,e,h[e])})),C.prototype=g):(C=t((function(e,t,n,o){u(e,C,c);var r,i,l,d=0,s=0;if(b(t)){if(!K(t))return H(t)?G(C,t):y.call(C,t);r=t,s=f(n,a);var h=t.byteLength;if(o===undefined){if(h%a)throw P("Wrong length");if((i=h-s)<0)throw P("Wrong length")}else if((i=p(o)*a)+s>h)throw P("Wrong length");l=i/a}else l=m(t),r=new M(i=l*a);for(I(e,{buffer:r,byteOffset:s,byteLength:i,length:l,view:new O(r)});ddocument.F=Object<\/script>"),e.close(),p=e.F;n--;)delete p[d][a[n]];return p()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[d]=o(e),n=new s,s[d]=null,n[u]=e):n=p(),t===undefined?n:r(n,t)},i[u]=!0},function(e,t,n){"use strict";var o=n(13).f,r=n(15),a=n(11)("toStringTag");e.exports=function(e,t,n){e&&!r(e=n?e:e.prototype,a)&&o(e,a,{configurable:!0,value:t})}},function(e,t,n){"use strict";var o=n(11),r=n(42),a=n(25),i=o("unscopables"),c=Array.prototype;c[i]==undefined&&a(c,i,r(null)),e.exports=function(e){c[i][e]=!0}},function(e,t,n){"use strict";var o=n(8),r=n(31),a=n(11)("species");e.exports=function(e,t){var n,i=o(e).constructor;return i===undefined||(n=o(i)[a])==undefined?t:r(n)}},function(e,t,n){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t,n){"use strict";var o=n(124),r=n(93).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(31);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";var o=n(33),r=n(13),a=n(46);e.exports=function(e,t,n){var i=o(t);i in e?r.f(e,i,a(0,n)):e[i]=n}},function(e,t,n){"use strict";var o=n(59),r=n(6),a=n(15),i=n(13).f,c=n(58),l=n(67),u=c("meta"),d=0,s=Object.isExtensible||function(){return!0},p=function(e){i(e,u,{value:{objectID:"O"+ ++d,weakData:{}}})},m=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!r(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,u)){if(!s(e))return"F";if(!t)return"E";p(e)}return e[u].objectID},getWeakData:function(e,t){if(!a(e,u)){if(!s(e))return!0;if(!t)return!1;p(e)}return e[u].weakData},onFreeze:function(e){return l&&m.REQUIRED&&s(e)&&!a(e,u)&&p(e),e}};o[u]=!0},function(e,t,n){"use strict";t.__esModule=!0,t.createLogger=void 0;n(154);var o=n(19),r=0,a=1,i=2,c=3,l=4,u=function(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),a=2;a=i){var c=[t].concat(r).map((function(e){return"string"==typeof e?e:e instanceof Error?e.stack||String(e):JSON.stringify(e)})).filter((function(e){return e})).join(" ")+"\nUser Agent: "+navigator.userAgent;(0,o.act)(window.__ref__,"tgui:log",{log:c})}};t.createLogger=function(e){return{debug:function(){for(var t=arguments.length,n=new Array(t),o=0;od;)if((c=l[d++])!=c)return!0}else for(;u>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},function(e,t,n){"use strict";var o=n(4),r=/#|\.prototype\./,a=function(e,t){var n=c[i(e)];return n==u||n!=l&&("function"==typeof t?o(t):!!t)},i=a.normalize=function(e){return String(e).replace(r,".").toLowerCase()},c=a.data={},l=a.NATIVE="N",u=a.POLYFILL="P";e.exports=a},function(e,t,n){"use strict";var o=n(124),r=n(93);e.exports=Object.keys||function(e){return o(e,r)}},function(e,t,n){"use strict";var o=n(6),r=n(52),a=n(11)("species");e.exports=function(e,t){var n;return r(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!r(n.prototype)?o(n)&&null===(n=n[a])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},function(e,t,n){"use strict";var o=n(4),r=n(11),a=n(96),i=r("species");e.exports=function(e){return a>=51||!o((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";var o=n(22);e.exports=function(e,t,n){for(var r in t)o(e,r,t[r],n);return e}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},function(e,t,n){"use strict";var o=n(8),r=n(98),a=n(10),i=n(48),c=n(99),l=n(132),u=function(e,t){this.stopped=e,this.result=t};(e.exports=function(e,t,n,d,s){var p,m,f,h,C,g,b,v=i(t,n,d?2:1);if(s)p=e;else{if("function"!=typeof(m=c(e)))throw TypeError("Target is not iterable");if(r(m)){for(f=0,h=a(e.length);h>f;f++)if((C=d?v(o(b=e[f])[0],b[1]):v(e[f]))&&C instanceof u)return C;return new u(!1)}p=m.call(e)}for(g=p.next;!(b=g.call(p)).done;)if("object"==typeof(C=l(p,v,b.value,d))&&C&&C instanceof u)return C;return new u(!1)}).stop=function(e){return new u(!0,e)}},function(e,t,n){"use strict";t.__esModule=!0,t.InterfaceLockNoticeBox=void 0;var o=n(1),r=n(2);t.InterfaceLockNoticeBox=function(e){var t=e.siliconUser,n=e.locked,a=e.onLockStatusChange,i=e.accessText;return t?(0,o.createComponentVNode)(2,r.NoticeBox,{children:(0,o.createComponentVNode)(2,r.Flex,{align:"center",children:[(0,o.createComponentVNode)(2,r.Flex.Item,{children:"Interface lock status:"}),(0,o.createComponentVNode)(2,r.Flex.Item,{grow:1}),(0,o.createComponentVNode)(2,r.Flex.Item,{children:(0,o.createComponentVNode)(2,r.Button,{m:0,color:"gray",icon:n?"lock":"unlock",content:n?"Locked":"Unlocked",onClick:function(){a&&a(!n)}})})]})}):(0,o.createComponentVNode)(2,r.NoticeBox,{children:["Swipe ",i||"an ID card"," ","to ",n?"unlock":"lock"," this interface."]})}},function(e,t,n){"use strict";t.__esModule=!0,t.compose=t.flow=void 0;t.flow=function o(){for(var e=arguments.length,t=new Array(e),n=0;n1?r-1:0),i=1;i=c.length)break;d=c[u++]}else{if((u=c.next()).done)break;d=u.value}var s=d;Array.isArray(s)?n=o.apply(void 0,s).apply(void 0,[n].concat(a)):s&&(n=s.apply(void 0,[n].concat(a)))}return n}};t.compose=function(){for(var e=arguments.length,t=new Array(e),n=0;n1?o-1:0),a=1;a=0:s>p;p+=m)p in d&&(l=n(l,d[p],p,u));return l}};e.exports={left:c(!1),right:c(!0)}},function(e,t,n){"use strict";var o=n(5),r=n(9),a=n(7).NATIVE_ARRAY_BUFFER,i=n(25),c=n(66),l=n(4),u=n(55),d=n(30),s=n(10),p=n(137),m=n(217),f=n(47).f,h=n(13).f,C=n(97),g=n(43),b=n(34),v=b.get,N=b.set,V="ArrayBuffer",y="DataView",_="Wrong length",x=o[V],k=x,L=o[y],w=o.RangeError,B=m.pack,S=m.unpack,I=function(e){return[255&e]},T=function(e){return[255&e,e>>8&255]},A=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},E=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return B(e,23,4)},M=function(e){return B(e,52,8)},O=function(e,t){h(e.prototype,t,{get:function(){return v(this)[t]}})},R=function(e,t,n,o){var r=p(n),a=v(e);if(r+t>a.byteLength)throw w("Wrong index");var i=v(a.buffer).bytes,c=r+a.byteOffset,l=i.slice(c,c+t);return o?l:l.reverse()},F=function(e,t,n,o,r,a){var i=p(n),c=v(e);if(i+t>c.byteLength)throw w("Wrong index");for(var l=v(c.buffer).bytes,u=i+c.byteOffset,d=o(+r),s=0;sH;)(D=z[H++])in k||i(k,D,x[D]);j.constructor=k}var G=new L(new k(2)),U=L.prototype.setInt8;G.setInt8(0,2147483648),G.setInt8(1,2147483649),!G.getInt8(0)&&G.getInt8(1)||c(L.prototype,{setInt8:function(e,t){U.call(this,e,t<<24>>24)},setUint8:function(e,t){U.call(this,e,t<<24>>24)}},{unsafe:!0})}else k=function(e){u(this,k,V);var t=p(e);N(this,{bytes:C.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},L=function(e,t,n){u(this,L,y),u(e,k,y);var o=v(e).byteLength,a=d(t);if(a<0||a>o)throw w("Wrong offset");if(a+(n=n===undefined?o-a:s(n))>o)throw w(_);N(this,{buffer:e,byteLength:n,byteOffset:a}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=a)},r&&(O(k,"byteLength"),O(L,"buffer"),O(L,"byteLength"),O(L,"byteOffset")),c(L.prototype,{getInt8:function(e){return R(this,1,e)[0]<<24>>24},getUint8:function(e){return R(this,1,e)[0]},getInt16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=R(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return E(R(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return S(R(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return S(R(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){F(this,1,e,I,t)},setUint8:function(e,t){F(this,1,e,I,t)},setInt16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){F(this,2,e,T,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){F(this,4,e,A,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){F(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){F(this,8,e,M,t,arguments.length>2?arguments[2]:undefined)}});g(k,V),g(L,y),e.exports={ArrayBuffer:k,DataView:L}},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(61),i=n(22),c=n(50),l=n(68),u=n(55),d=n(6),s=n(4),p=n(75),m=n(43),f=n(79);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],v=b&&b.prototype,N=b,V={},y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!d(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(a(e,"function"!=typeof b||!(C||v.forEach&&!s((function(){(new b).entries().next()})))))N=n.getConstructor(t,e,h,g),c.REQUIRED=!0;else if(a(e,!0)){var _=new N,x=_[g](C?{}:-0,1)!=_,k=s((function(){_.has(1)})),L=p((function(e){new b(e)})),w=!C&&s((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));L||((N=t((function(t,n){u(t,N,e);var o=f(new b,t,N);return n!=undefined&&l(n,o[g],o,h),o}))).prototype=v,v.constructor=N),(k||w)&&(y("delete"),y("has"),h&&y("get")),(w||x)&&y(g),C&&v.clear&&delete v.clear}return V[e]=N,o({global:!0,forced:N!=b},V),m(N,e),C||n.setStrong(N,e,h),N}},function(e,t,n){"use strict";var o=n(6),r=n(53);e.exports=function(e,t,n){var a,i;return r&&"function"==typeof(a=t.constructor)&&a!==n&&o(i=a.prototype)&&i!==n.prototype&&r(e,i),e}},function(e,t,n){"use strict";var o=Math.expm1,r=Math.exp;e.exports=!o||o(10)>22025.465794806718||o(10)<22025.465794806718||-2e-17!=o(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:r(e)-1}:o},function(e,t,n){"use strict";e.exports="\t\n\x0B\f\r \xa0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029\ufeff"},function(e,t,n){"use strict";var o=n(38),r=n(5),a=n(4);e.exports=o||!a((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r[e]}))},function(e,t,n){"use strict";var o=n(8);e.exports=function(){var e=o(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},function(e,t,n){"use strict";var o,r,a=n(83),i=RegExp.prototype.exec,c=String.prototype.replace,l=i,u=(o=/a/,r=/b*/g,i.call(o,"a"),i.call(r,"a"),0!==o.lastIndex||0!==r.lastIndex),d=/()??/.exec("")[1]!==undefined;(u||d)&&(l=function(e){var t,n,o,r,l=this;return d&&(n=new RegExp("^"+l.source+"$(?!\\s)",a.call(l))),u&&(t=l.lastIndex),o=i.call(l,e),u&&o&&(l.lastIndex=l.global?o.index+o[0].length:t),d&&o&&o.length>1&&c.call(o[0],n,(function(){for(r=1;r")})),d=!a((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,s){var p=i(e),m=!a((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),f=m&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!m||!f||"replace"===e&&!u||"split"===e&&!d){var h=/./[p],C=n(p,""[e],(function(e,t,n,o,r){return t.exec===c?m&&!r?{done:!0,value:h.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}})),g=C[0],b=C[1];r(String.prototype,e,g),r(RegExp.prototype,p,2==t?function(e,t){return b.call(e,this,t)}:function(e){return b.call(e,this)}),s&&o(RegExp.prototype[p],"sham",!0)}}},function(e,t,n){"use strict";var o=n(32),r=n(84);e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==o(e))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(e,t)}},function(e,t,n){"use strict";t.__esModule=!0,t.Icon=void 0;var o=n(1),r=n(12),a=n(17);var i=/-o$/,c=function(e){var t=e.name,n=e.size,c=e.spin,l=e.className,u=e.style,d=void 0===u?{}:u,s=e.rotation,p=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["name","size","spin","className","style","rotation"]);n&&(d["font-size"]=100*n+"%"),"number"==typeof s&&(d.transform="rotate("+s+"deg)");var m=i.test(t),f=t.replace(i,"");return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"i",className:(0,r.classes)([l,m?"far":"fas","fa-"+f,c&&"fa-spin"]),style:d},p)))};t.Icon=c,c.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";var o=n(5),r=n(6),a=o.document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},function(e,t,n){"use strict";var o=n(5),r=n(25);e.exports=function(e,t){try{r(o,e,t)}catch(n){o[e]=t}return t}},function(e,t,n){"use strict";var o=n(120),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},function(e,t,n){"use strict";var o=n(38),r=n(120);(e.exports=function(e,t){return r[e]||(r[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.4.8",mode:o?"pure":"global",copyright:"\xa9 2019 Denis Pushkarev (zloirock.ru)"})},function(e,t,n){"use strict";var o=n(35),r=n(47),a=n(94),i=n(8);e.exports=o("Reflect","ownKeys")||function(e){var t=r.f(i(e)),n=a.f;return n?t.concat(n(e)):t}},function(e,t,n){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(e,t,n){"use strict";t.f=Object.getOwnPropertySymbols},function(e,t,n){"use strict";var o=n(4);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){return!String(Symbol())}))},function(e,t,n){"use strict";var o,r,a=n(5),i=n(73),c=a.process,l=c&&c.versions,u=l&&l.v8;u?r=(o=u.split("."))[0]+o[1]:i&&(!(o=i.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=i.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10);e.exports=function(e){for(var t=o(this),n=a(t.length),i=arguments.length,c=r(i>1?arguments[1]:undefined,n),l=i>2?arguments[2]:undefined,u=l===undefined?n:r(l,n);u>c;)t[c++]=e;return t}},function(e,t,n){"use strict";var o=n(11),r=n(65),a=o("iterator"),i=Array.prototype;e.exports=function(e){return e!==undefined&&(r.Array===e||i[a]===e)}},function(e,t,n){"use strict";var o=n(74),r=n(65),a=n(11)("iterator");e.exports=function(e){if(e!=undefined)return e[a]||e["@@iterator"]||r[o(e)]}},function(e,t,n){"use strict";var o={};o[n(11)("toStringTag")]="z",e.exports="[object z]"===String(o)},function(e,t,n){"use strict";var o=n(0),r=n(202),a=n(36),i=n(53),c=n(43),l=n(25),u=n(22),d=n(11),s=n(38),p=n(65),m=n(134),f=m.IteratorPrototype,h=m.BUGGY_SAFARI_ITERATORS,C=d("iterator"),g=function(){return this};e.exports=function(e,t,n,d,m,b,v){r(n,t,d);var N,V,y,_=function(e){if(e===m&&B)return B;if(!h&&e in L)return L[e];switch(e){case"keys":case"values":case"entries":return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",k=!1,L=e.prototype,w=L[C]||L["@@iterator"]||m&&L[m],B=!h&&w||_(m),S="Array"==t&&L.entries||w;if(S&&(N=a(S.call(new e)),f!==Object.prototype&&N.next&&(s||a(N)===f||(i?i(N,f):"function"!=typeof N[C]&&l(N,C,g)),c(N,x,!0,!0),s&&(p[x]=g))),"values"==m&&w&&"values"!==w.name&&(k=!0,B=function(){return w.call(this)}),s&&!v||L[C]===B||l(L,C,B),p[t]=B,m)if(V={values:_("values"),keys:b?B:_("keys"),entries:_("entries")},v)for(y in V)!h&&!k&&y in L||u(L,y,V[y]);else o({target:t,proto:!0,forced:h||k},V);return V}},function(e,t,n){"use strict";var o=n(4);e.exports=!o((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},function(e,t,n){"use strict";var o=n(10),r=n(104),a=n(21),i=Math.ceil,c=function(e){return function(t,n,c){var l,u,d=String(a(t)),s=d.length,p=c===undefined?" ":String(c),m=o(n);return m<=s||""==p?d:(l=m-s,(u=r.call(p,i(l/p.length))).length>l&&(u=u.slice(0,l)),e?d+u:u+d)}};e.exports={start:c(!1),end:c(!0)}},function(e,t,n){"use strict";var o=n(30),r=n(21);e.exports="".repeat||function(e){var t=String(r(this)),n="",a=o(e);if(a<0||a==Infinity)throw RangeError("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))1&a&&(n+=t);return n}},function(e,t,n){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t,n){"use strict";var o,r,a,i=n(5),c=n(4),l=n(32),u=n(48),d=n(127),s=n(88),p=n(146),m=i.location,f=i.setImmediate,h=i.clearImmediate,C=i.process,g=i.MessageChannel,b=i.Dispatch,v=0,N={},V=function(e){if(N.hasOwnProperty(e)){var t=N[e];delete N[e],t()}},y=function(e){return function(){V(e)}},_=function(e){V(e.data)},x=function(e){i.postMessage(e+"",m.protocol+"//"+m.host)};f&&h||(f=function(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return N[++v]=function(){("function"==typeof e?e:Function(e)).apply(undefined,t)},o(v),v},h=function(e){delete N[e]},"process"==l(C)?o=function(e){C.nextTick(y(e))}:b&&b.now?o=function(e){b.now(y(e))}:g&&!p?(a=(r=new g).port2,r.port1.onmessage=_,o=u(a.postMessage,a,1)):!i.addEventListener||"function"!=typeof postMessage||i.importScripts||c(x)?o="onreadystatechange"in s("script")?function(e){d.appendChild(s("script")).onreadystatechange=function(){d.removeChild(this),V(e)}}:function(e){setTimeout(y(e),0)}:(o=x,i.addEventListener("message",_,!1))),e.exports={set:f,clear:h}},function(e,t,n){"use strict";var o=n(6),r=n(32),a=n(11)("match");e.exports=function(e){var t;return o(e)&&((t=e[a])!==undefined?!!t:"RegExp"==r(e))}},function(e,t,n){"use strict";var o=n(30),r=n(21),a=function(e){return function(t,n){var a,i,c=String(r(t)),l=o(n),u=c.length;return l<0||l>=u?e?"":undefined:(a=c.charCodeAt(l))<55296||a>56319||l+1===u||(i=c.charCodeAt(l+1))<56320||i>57343?e?c.charAt(l):a:e?c.slice(l,l+2):i-56320+(a-55296<<10)+65536}};e.exports={codeAt:a(!1),charAt:a(!0)}},function(e,t,n){"use strict";var o=n(107);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},function(e,t,n){"use strict";var o=n(11)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[o]=!1,"/./"[e](t)}catch(r){}}return!1}},function(e,t,n){"use strict";var o=n(108).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},function(e,t,n){"use strict";var o=n(4),r=n(81);e.exports=function(e){return o((function(){return!!r[e]()||"\u200b\x85\u180e"!="\u200b\x85\u180e"[e]()||r[e].name!==e}))}},function(e,t,n){"use strict";var o=n(5),r=n(4),a=n(75),i=n(7).NATIVE_ARRAY_BUFFER_VIEWS,c=o.ArrayBuffer,l=o.Int8Array;e.exports=!i||!r((function(){l(1)}))||!r((function(){new l(-1)}))||!a((function(e){new l,new l(null),new l(1.5),new l(e)}),!0)||r((function(){return 1!==new l(new c(2),1,undefined).length}))},function(e,t,n){"use strict";t.__esModule=!0,t.ButtonInput=t.ButtonConfirm=t.ButtonCheckbox=t.Button=void 0;var o=n(1),r=n(12),a=n(19),i=n(115),c=n(51),l=n(116),u=n(17),d=n(87),s=n(159);n(160),n(161);function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function m(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var f=(0,c.createLogger)("Button"),h=function(e){var t=e.className,n=e.fluid,c=e.icon,p=e.color,h=e.disabled,C=e.selected,g=e.tooltip,b=e.tooltipPosition,v=e.ellipsis,N=e.content,V=e.iconRotation,y=e.iconSpin,_=e.children,x=e.onclick,k=e.onClick,L=m(e,["className","fluid","icon","color","disabled","selected","tooltip","tooltipPosition","ellipsis","content","iconRotation","iconSpin","children","onclick","onClick"]),w=!(!N&&!_);return x&&f.warn("Lowercase 'onclick' is not supported on Button and lowercase prop names are discouraged in general. Please use a camelCase'onClick' instead and read: https://infernojs.org/docs/guides/event-handling"),(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({as:"span",className:(0,r.classes)(["Button",n&&"Button--fluid",h&&"Button--disabled",C&&"Button--selected",w&&"Button--hasContent",v&&"Button--ellipsis",p&&"string"==typeof p?"Button--color--"+p:"Button--color--default",t]),tabIndex:!h&&"0",unselectable:a.tridentVersion<=4,onclick:function(e){(0,l.refocusLayout)(),!h&&k&&k(e)},onKeyDown:function(e){var t=window.event?e.which:e.keyCode;return t===i.KEY_SPACE||t===i.KEY_ENTER?(e.preventDefault(),void(!h&&k&&k(e))):t===i.KEY_ESCAPE?(e.preventDefault(),void(0,l.refocusLayout)()):void 0}},L,{children:[c&&(0,o.createComponentVNode)(2,d.Icon,{name:c,rotation:V,spin:y}),N,_,g&&(0,o.createComponentVNode)(2,s.Tooltip,{content:g,position:b})]})))};t.Button=h,h.defaultHooks=r.pureComponentHooks;var C=function(e){var t=e.checked,n=m(e,["checked"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({color:"transparent",icon:t?"check-square-o":"square-o",selected:t},n)))};t.ButtonCheckbox=C,h.Checkbox=C;var g=function(e){function t(){var t;return(t=e.call(this)||this).state={clickedOnce:!1},t.handleClick=function(){t.state.clickedOnce&&t.setClickedOnce(!1)},t}p(t,e);var n=t.prototype;return n.setClickedOnce=function(e){var t=this;this.setState({clickedOnce:e}),e?setTimeout((function(){return window.addEventListener("click",t.handleClick)})):window.removeEventListener("click",this.handleClick)},n.render=function(){var e=this,t=this.props,n=t.confirmMessage,r=void 0===n?"Confirm?":n,a=t.confirmColor,i=void 0===a?"bad":a,c=t.color,l=t.content,u=t.onClick,d=m(t,["confirmMessage","confirmColor","color","content","onClick"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({content:this.state.clickedOnce?r:l,color:this.state.clickedOnce?i:c,onClick:function(){return e.state.clickedOnce?u():e.setClickedOnce(!0)}},d)))},t}(o.Component);t.ButtonConfirm=g,h.Confirm=g;var b=function(e){function t(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={inInput:!1},t}p(t,e);var n=t.prototype;return n.setInInput=function(e){if(this.setState({inInput:e}),this.inputRef){var t=this.inputRef.current;if(e){t.value=this.props.currentValue||"";try{t.focus(),t.select()}catch(n){}}}},n.commitResult=function(e){if(this.inputRef){var t=this.inputRef.current;if(""!==t.value)return void this.props.onCommit(e,t.value);if(!this.props.defaultValue)return;this.props.onCommit(e,this.props.defaultValue)}},n.render=function(){var e=this,t=this.props,n=t.fluid,a=t.content,c=t.color,l=void 0===c?"default":c,d=(t.placeholder,t.maxLength,m(t,["fluid","content","color","placeholder","maxLength"]));return(0,o.normalizeProps)((0,o.createComponentVNode)(2,u.Box,Object.assign({className:(0,r.classes)(["Button",n&&"Button--fluid","Button--color--"+l])},d,{onClick:function(){return e.setInInput(!0)},children:[(0,o.createVNode)(1,"div",null,a,0),(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:this.state.inInput?undefined:"none","text-align":"left"},onBlur:function(t){e.state.inInput&&(e.setInInput(!1),e.commitResult(t))},onKeyDown:function(t){if(t.keyCode===i.KEY_ENTER)return e.setInInput(!1),void e.commitResult(t);t.keyCode===i.KEY_ESCAPE&&e.setInInput(!1)}},null,this.inputRef)]})))},t}(o.Component);t.ButtonInput=b,h.Input=b},function(e,t,n){"use strict";t.__esModule=!0,t.hotKeyReducer=t.hotKeyMiddleware=t.releaseHeldKeys=t.KEY_MINUS=t.KEY_EQUAL=t.KEY_Z=t.KEY_Y=t.KEY_X=t.KEY_W=t.KEY_V=t.KEY_U=t.KEY_T=t.KEY_S=t.KEY_R=t.KEY_Q=t.KEY_P=t.KEY_O=t.KEY_N=t.KEY_M=t.KEY_L=t.KEY_K=t.KEY_J=t.KEY_I=t.KEY_H=t.KEY_G=t.KEY_F=t.KEY_E=t.KEY_D=t.KEY_C=t.KEY_B=t.KEY_A=t.KEY_9=t.KEY_8=t.KEY_7=t.KEY_6=t.KEY_5=t.KEY_4=t.KEY_3=t.KEY_2=t.KEY_1=t.KEY_0=t.KEY_SPACE=t.KEY_ESCAPE=t.KEY_ALT=t.KEY_CTRL=t.KEY_SHIFT=t.KEY_ENTER=t.KEY_TAB=t.KEY_BACKSPACE=void 0;var o=n(51),r=n(19),a=(0,o.createLogger)("hotkeys");t.KEY_BACKSPACE=8;t.KEY_TAB=9;t.KEY_ENTER=13;t.KEY_SHIFT=16;t.KEY_CTRL=17;t.KEY_ALT=18;t.KEY_ESCAPE=27;t.KEY_SPACE=32;t.KEY_0=48;t.KEY_1=49;t.KEY_2=50;t.KEY_3=51;t.KEY_4=52;t.KEY_5=53;t.KEY_6=54;t.KEY_7=55;t.KEY_8=56;t.KEY_9=57;t.KEY_A=65;t.KEY_B=66;t.KEY_C=67;t.KEY_D=68;t.KEY_E=69;t.KEY_F=70;t.KEY_G=71;t.KEY_H=72;t.KEY_I=73;t.KEY_J=74;t.KEY_K=75;t.KEY_L=76;t.KEY_M=77;t.KEY_N=78;t.KEY_O=79;t.KEY_P=80;t.KEY_Q=81;t.KEY_R=82;t.KEY_S=83;t.KEY_T=84;t.KEY_U=85;t.KEY_V=86;t.KEY_W=87;t.KEY_X=88;t.KEY_Y=89;t.KEY_Z=90;t.KEY_EQUAL=187;t.KEY_MINUS=189;var i=[17,18,16],c=[27,13,32,9,17,16],l={},u=function(e,t,n,o){var r="";return e&&(r+="Ctrl+"),t&&(r+="Alt+"),n&&(r+="Shift+"),r+=o>=48&&o<=90?String.fromCharCode(o):"["+o+"]"},d=function(e){var t=window.event?e.which:e.keyCode,n=e.ctrlKey,o=e.altKey,r=e.shiftKey;return{keyCode:t,ctrlKey:n,altKey:o,shiftKey:r,hasModifierKeys:n||o||r,keyString:u(n,o,r,t)}},s=function(){for(var e=0,t=Object.keys(l);e4&&function(e,t){if(!e.defaultPrevented){var n=e.target&&e.target.localName;if("input"!==n&&"textarea"!==n){var o=d(e),i=o.keyCode,u=o.ctrlKey,s=o.shiftKey;u||s||c.includes(i)||("keydown"!==t||l[i]?"keyup"===t&&l[i]&&(a.debug("passthrough",t,o),(0,r.callByond)("",{__keyup:i})):(a.debug("passthrough",t,o),(0,r.callByond)("",{__keydown:i})))}}}(e,t),function(e,t,n){if("keyup"===t){var o=d(e),r=o.ctrlKey,c=o.altKey,l=o.keyCode,u=o.hasModifierKeys,s=o.keyString;u&&!i.includes(l)&&(a.log(s),r&&c&&8===l&&setTimeout((function(){throw new Error("OOPSIE WOOPSIE!! UwU We made a fucky wucky!! A wittle fucko boingo! The code monkeys at our headquarters are working VEWY HAWD to fix this!")})),n({type:"hotKey",payload:o}))}}(e,t,n)},document.addEventListener("keydown",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keydown"),l[n]=!0})),document.addEventListener("keyup",(function(e){var n=window.event?e.which:e.keyCode;t(e,"keyup"),l[n]=!1})),r.tridentVersion>4&&function(e){var t;document.addEventListener("focusout",(function(){t=setTimeout(e)})),document.addEventListener("focusin",(function(){clearTimeout(t)})),window.addEventListener("beforeunload",e)}((function(){s()})),function(e){return function(t){return e(t)}}};t.hotKeyReducer=function(e,t){var n=t.type,o=t.payload;if("hotKey"===n){var r=o.ctrlKey,a=o.altKey,i=o.keyCode;return r&&a&&187===i?Object.assign({},e,{showKitchenSink:!e.showKitchenSink}):e}return e}},function(e,t,n){"use strict";t.__esModule=!0,t.refocusLayout=void 0;var o=n(19);t.refocusLayout=function(){if(!(o.tridentVersion<=4)){var e=document.getElementById("Layout__content");e&&e.focus()}}},function(e,t,n){"use strict";t.__esModule=!0,t.toastReducer=t.showToast=t.Toast=void 0;var o,r=n(1),a=n(12),i=function(e){var t=e.content,n=e.children;return(0,r.createVNode)(1,"div","Layout__toast",[t,n],0)};t.Toast=i,i.defaultHooks=a.pureComponentHooks;t.showToast=function(e,t){o&&clearTimeout(o),o=setTimeout((function(){o=undefined,e({type:"hideToast"})}),5e3),e({type:"showToast",payload:{text:t}})};t.toastReducer=function(e,t){var n=t.type,o=t.payload;if("showToast"===n){var r=o.text;return Object.assign({},e,{toastText:r})}return"hideToast"===n?Object.assign({},e,{toastText:null}):e}},function(e,t,n){"use strict";var o;o=function(){return this}();try{o=o||new Function("return this")()}catch(r){"object"==typeof window&&(o=window)}e.exports=o},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(88);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},function(e,t,n){"use strict";var o=n(5),r=n(89),a=o["__core-js_shared__"]||r("__core-js_shared__",{});e.exports=a},function(e,t,n){"use strict";var o=n(5),r=n(90),a=o.WeakMap;e.exports="function"==typeof a&&/native code/.test(r(a))},function(e,t,n){"use strict";var o=n(15),r=n(92),a=n(18),i=n(13);e.exports=function(e,t){for(var n=r(t),c=i.f,l=a.f,u=0;ul;)o(c,n=t[l++])&&(~a(u,n)||u.push(n));return u}},function(e,t,n){"use strict";var o=n(95);e.exports=o&&!Symbol.sham&&"symbol"==typeof Symbol()},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(8),i=n(62);e.exports=o?Object.defineProperties:function(e,t){a(e);for(var n,o=i(t),c=o.length,l=0;c>l;)r.f(e,n=o[l++],t[n]);return e}},function(e,t,n){"use strict";var o=n(35);e.exports=o("document","documentElement")},function(e,t,n){"use strict";var o=n(24),r=n(47).f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(e){try{return r(e)}catch(t){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?c(e):r(o(e))}},function(e,t,n){"use strict";var o=n(11);t.f=o},function(e,t,n){"use strict";var o=n(14),r=n(41),a=n(10),i=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=a(n.length),l=r(e,c),u=r(t,c),d=arguments.length>2?arguments[2]:undefined,s=i((d===undefined?c:r(d,c))-u,c-l),p=1;for(u0;)u in n?n[l]=n[u]:delete n[l],l+=p,u+=p;return n}},function(e,t,n){"use strict";var o=n(52),r=n(10),a=n(48);e.exports=function i(e,t,n,c,l,u,d,s){for(var p,m=l,f=0,h=!!d&&a(d,s,3);f0&&o(p))m=i(e,t,p,r(p.length),m,u-1)-1;else{if(m>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[m]=p}m++}f++}return m}},function(e,t,n){"use strict";var o=n(8);e.exports=function(e,t,n,r){try{return r?t(o(n)[0],n[1]):t(n)}catch(i){var a=e["return"];throw a!==undefined&&o(a.call(e)),i}}},function(e,t,n){"use strict";var o=n(24),r=n(44),a=n(65),i=n(34),c=n(101),l=i.set,u=i.getterFor("Array Iterator");e.exports=c(Array,"Array",(function(e,t){l(this,{type:"Array Iterator",target:o(e),index:0,kind:t})}),(function(){var e=u(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?(e.target=undefined,{value:undefined,done:!0}):"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},function(e,t,n){"use strict";var o,r,a,i=n(36),c=n(25),l=n(15),u=n(11),d=n(38),s=u("iterator"),p=!1;[].keys&&("next"in(a=[].keys())?(r=i(i(a)))!==Object.prototype&&(o=r):p=!0),o==undefined&&(o={}),d||l(o,s)||c(o,s,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:p}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},function(e,t,n){"use strict";var o=n(24),r=n(30),a=n(10),i=n(39),c=Math.min,l=[].lastIndexOf,u=!!l&&1/[1].lastIndexOf(1,-0)<0,d=i("lastIndexOf");e.exports=u||d?function(e){if(u)return l.apply(this,arguments)||0;var t=o(this),n=a(t.length),i=n-1;for(arguments.length>1&&(i=c(i,r(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:l},function(e,t,n){"use strict";var o=n(30),r=n(10);e.exports=function(e){if(e===undefined)return 0;var t=o(e),n=r(t);if(t!==n)throw RangeError("Wrong length or index");return n}},function(e,t,n){"use strict";var o=n(31),r=n(6),a=[].slice,i={},c=function(e,t,n){if(!(t in i)){for(var o=[],r=0;r1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),a(d.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),s&&o(d.prototype,"size",{get:function(){return m(this).size}}),d},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),a=h(o);u(e,t,(function(e,t){f(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=a(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),d(t)}}},function(e,t,n){"use strict";var o=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:o(1+e)}},function(e,t,n){"use strict";var o=n(6),r=Math.floor;e.exports=function(e){return!o(e)&&isFinite(e)&&r(e)===e}},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseInt,c=/^[+-]?0[Xx]/,l=8!==i(a+"08")||22!==i(a+"0x16");e.exports=l?function(e,t){var n=r(String(e));return i(n,t>>>0||(c.test(n)?16:10))}:i},function(e,t,n){"use strict";var o=n(9),r=n(62),a=n(24),i=n(71).f,c=function(e){return function(t){for(var n,c=a(t),l=r(c),u=l.length,d=0,s=[];u>d;)n=l[d++],o&&!i.call(c,n)||s.push(e?[n,c[n]]:c[n]);return s}};e.exports={entries:c(!0),values:c(!1)}},function(e,t,n){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,n){"use strict";var o=n(5);e.exports=o.Promise},function(e,t,n){"use strict";var o=n(73);e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(o)},function(e,t,n){"use strict";var o,r,a,i,c,l,u,d,s=n(5),p=n(18).f,m=n(32),f=n(106).set,h=n(146),C=s.MutationObserver||s.WebKitMutationObserver,g=s.process,b=s.Promise,v="process"==m(g),N=p(s,"queueMicrotask"),V=N&&N.value;V||(o=function(){var e,t;for(v&&(e=g.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?i():a=undefined,n}}a=undefined,e&&e.enter()},v?i=function(){g.nextTick(o)}:C&&!h?(c=!0,l=document.createTextNode(""),new C(o).observe(l,{characterData:!0}),i=function(){l.data=c=!c}):b&&b.resolve?(u=b.resolve(undefined),d=u.then,i=function(){d.call(u,o)}):i=function(){f.call(s,o)}),e.exports=V||function(e){var t={fn:e,next:undefined};a&&(a.next=t),r||(r=t,i()),a=t}},function(e,t,n){"use strict";var o=n(8),r=n(6),a=n(149);e.exports=function(e,t){if(o(e),r(t)&&t.constructor===e)return t;var n=a.f(e);return(0,n.resolve)(t),n.promise}},function(e,t,n){"use strict";var o=n(31),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},function(e,t,n){"use strict";var o=n(73);e.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(o)},function(e,t,n){"use strict";var o=n(347);e.exports=function(e,t){var n=o(e);if(n%t)throw RangeError("Wrong offset");return n}},function(e,t,n){"use strict";var o=n(14),r=n(10),a=n(99),i=n(98),c=n(48),l=n(7).aTypedArrayConstructor;e.exports=function(e){var t,n,u,d,s,p,m=o(e),f=arguments.length,h=f>1?arguments[1]:undefined,C=h!==undefined,g=a(m);if(g!=undefined&&!i(g))for(p=(s=g.call(m)).next,m=[];!(d=p.call(s)).done;)m.push(d.value);for(C&&f>2&&(h=c(h,arguments[2],2)),n=r(m.length),u=new(l(this))(n),t=0;n>t;t++)u[t]=C?h(m[t],t):m[t];return u}},function(e,t,n){"use strict";var o=n(66),r=n(50).getWeakData,a=n(8),i=n(6),c=n(55),l=n(68),u=n(16),d=n(15),s=n(34),p=s.set,m=s.getterFor,f=u.find,h=u.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},v=function(e,t){return f(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=v(this,e);if(t)return t[1]},has:function(e){return!!v(this,e)},set:function(e,t){var n=v(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,u){var s=e((function(e,o){c(e,s,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[u],e,n)})),f=m(t),h=function(e,t,n){var o=f(e),i=r(a(t),!0);return!0===i?g(o).set(t,n):i[o.id]=n,e};return o(s.prototype,{"delete":function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&d(n,t.id)&&delete n[t.id]},has:function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&d(n,t.id)}}),o(s.prototype,n?{get:function(e){var t=f(this);if(i(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),s}}},function(e,t,n){"use strict";t.__esModule=!0,t.setupHotReloading=t.sendLogEntry=void 0;t.sendLogEntry=function(e,t){};t.setupHotReloading=function(){0}},function(e,t,n){"use strict";t.__esModule=!0,t.resizeStartHandler=t.dragStartHandler=t.setupDrag=void 0;var o,r,a,i,c,l=n(156),u=n(19),d=(0,n(51).createLogger)("drag"),s=!1,p=!1,m=[0,0],f=function(e){return(0,u.winget)(e,"pos").then((function(e){return[e.x,e.y]}))},h=function(e,t){return(0,u.winset)(e,"pos",t[0]+","+t[1])},C=function(e){var t,n,r,a;return regeneratorRuntime.async((function(i){for(;;)switch(i.prev=i.next){case 0:return d.log("setting up"),o=e.config.window,i.next=4,regeneratorRuntime.awrap(f(o));case 4:t=i.sent,m=[t[0]-window.screenLeft,t[1]-window.screenTop],n=g(t),r=n[0],a=n[1],r&&h(o,a),d.debug("current state",{ref:o,screenOffset:m});case 9:case"end":return i.stop()}}))};t.setupDrag=C;var g=function(e){var t=e[0],n=e[1],o=!1;return t<0?(t=0,o=!0):t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth,o=!0),n<0?(n=0,o=!0):n+window.innerHeight>window.screen.availHeight&&(n=window.screen.availHeight-window.innerHeight,o=!0),[o,[t,n]]};t.dragStartHandler=function(e){d.log("drag start"),s=!0,r=[window.screenLeft-e.screenX,window.screenTop-e.screenY],document.addEventListener("mousemove",v),document.addEventListener("mouseup",b),v(e)};var b=function y(e){d.log("drag end"),v(e),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",y),s=!1},v=function(e){s&&(e.preventDefault(),h(o,(0,l.vecAdd)([e.screenX,e.screenY],m,r)))};t.resizeStartHandler=function(e,t){return function(n){a=[e,t],d.log("resize start",a),p=!0,r=[window.screenLeft-n.screenX,window.screenTop-n.screenY],i=[window.innerWidth,window.innerHeight],document.addEventListener("mousemove",V),document.addEventListener("mouseup",N),V(n)}};var N=function _(e){d.log("resize end",c),V(e),document.removeEventListener("mousemove",V),document.removeEventListener("mouseup",_),p=!1},V=function(e){p&&(e.preventDefault(),(c=(0,l.vecAdd)(i,(0,l.vecMultiply)(a,(0,l.vecAdd)([e.screenX,e.screenY],(0,l.vecInverse)([window.screenLeft,window.screenTop]),r,[1,1]))))[0]=Math.max(c[0],250),c[1]=Math.max(c[1],120),function(e,t){(0,u.winset)(e,"size",t[0]+","+t[1])}(o,c))}},function(e,t,n){"use strict";t.__esModule=!0,t.vecNormalize=t.vecLength=t.vecInverse=t.vecScale=t.vecDivide=t.vecMultiply=t.vecSubtract=t.vecAdd=t.vecCreate=void 0;var o=n(23);t.vecCreate=function(){for(var e=arguments.length,t=new Array(e),n=0;n35;return(0,o.createVNode)(1,"div",(0,r.classes)(["Tooltip",i&&"Tooltip--long",a&&"Tooltip--"+a]),null,1,{"data-tooltip":t})}},function(e,t,n){"use strict";t.__esModule=!0,t.Input=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){return(0,r.isFalsy)(e)?"":e},l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).inputRef=(0,o.createRef)(),t.state={editing:!1},t.handleInput=function(e){var n=t.state.editing,o=t.props.onInput;n||t.setEditing(!0),o&&o(e,e.target.value)},t.handleFocus=function(e){t.state.editing||t.setEditing(!0)},t.handleBlur=function(e){var n=t.state.editing,o=t.props.onChange;n&&(t.setEditing(!1),o&&o(e,e.target.value))},t.handleKeyDown=function(e){var n=t.props,o=n.onInput,r=n.onChange,a=n.onEnter;return 13===e.keyCode?(t.setEditing(!1),r&&r(e,e.target.value),o&&o(e,e.target.value),a&&a(e,e.target.value),void(t.props.selfClear?e.target.value="":e.target.blur())):27===e.keyCode?(t.setEditing(!1),e.target.value=c(t.props.value),void e.target.blur()):void 0},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentDidMount=function(){var e=this.props.value,t=this.inputRef.current;t&&(t.value=c(e))},u.componentDidUpdate=function(e,t){var n=this.state.editing,o=e.value,r=this.props.value,a=this.inputRef.current;a&&!n&&o!==r&&(a.value=c(r))},u.setEditing=function(e){this.setState({editing:e})},u.render=function(){var e=this.props,t=(e.selfClear,e.onInput,e.onChange,e.onEnter,e.value,e.maxLength),n=e.placeholder,c=i(e,["selfClear","onInput","onChange","onEnter","value","maxLength","placeholder"]),l=c.className,u=c.fluid,d=i(c,["className","fluid"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Input",u&&"Input--fluid",l])},d,{children:[(0,o.createVNode)(1,"div","Input__baseline",".",16),(0,o.createVNode)(64,"input","Input__input",null,1,{placeholder:n,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,maxLength:t},null,this.inputRef)]})))},l}(o.Component);t.Input=l},function(e,t,n){"use strict";t.__esModule=!0,t.GridColumn=t.Grid=void 0;var o=n(1),r=n(162),a=n(12);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.children,n=i(e,["children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table,Object.assign({},n,{children:(0,o.createComponentVNode)(2,r.Table.Row,{children:t})})))};t.Grid=c,c.defaultHooks=a.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t,a=e.style,c=i(e,["size","style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Table.Cell,Object.assign({style:Object.assign({width:n+"%"},a)},c)))};t.GridColumn=l,c.defaultHooks=a.pureComponentHooks,c.Column=l},function(e,t,n){"use strict";t.__esModule=!0,t.TableCell=t.TableRow=t.Table=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.collapsing,n=e.className,c=e.content,l=e.children,u=i(e,["collapsing","className","content","children"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"table",className:(0,r.classes)(["Table",t&&"Table--collapsing",n])},u,{children:(0,o.createVNode)(1,"tbody",null,[c,l],0)})))};t.Table=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.className,n=e.header,c=i(e,["className","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"tr",className:(0,r.classes)(["Table__row",n&&"Table__row--header",t])},c)))};t.TableRow=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.collapsing,c=e.header,l=i(e,["className","collapsing","header"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"td",className:(0,r.classes)(["Table__cell",n&&"Table__cell--collapsing",c&&"Table__cell--header",t])},l)))};t.TableCell=u,u.defaultHooks=r.pureComponentHooks,c.Row=l,c.Cell=u},function(e,t,n){"use strict";t.__esModule=!0,t.LabeledListDivider=t.LabeledListItem=t.LabeledList=void 0;var o=n(1),r=n(12),a=n(17),i=function(e){var t=e.children;return(0,o.createVNode)(1,"table","LabeledList",t,0)};t.LabeledList=i,i.defaultHooks=r.pureComponentHooks;var c=function(e){var t=e.className,n=e.label,i=e.labelColor,c=void 0===i?"label":i,l=e.color,u=e.buttons,d=e.content,s=e.children;return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:c,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),content:n+":"}),(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:u?undefined:2,children:[d,s]}),u&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",u,0)],0)};t.LabeledListItem=c,c.defaultHooks=r.pureComponentHooks;var l=function(e){var t=e.size,n=void 0===t?1:t;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,null,1,{style:{"padding-bottom":(0,a.unit)(n)}}),2)};t.LabeledListDivider=l,l.defaultHooks=r.pureComponentHooks,i.Item=c,i.Divider=l},function(e,t,n){n(165),n(166),n(167),n(168),n(169),n(170),e.exports=n(171)},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";n(172),n(173),n(174),n(175),n(176),n(177),n(178),n(179),n(180),n(181),n(182),n(183),n(184),n(185),n(186),n(187),n(188),n(189),n(190),n(191),n(192),n(193),n(194),n(195),n(197),n(199),n(200),n(201),n(133),n(203),n(204),n(205),n(206),n(207),n(208),n(209),n(210),n(211),n(212),n(213),n(214),n(215),n(216),n(218),n(219),n(220),n(221),n(222),n(224),n(225),n(227),n(228),n(229),n(230),n(231),n(232),n(233),n(234),n(235),n(236),n(237),n(238),n(239),n(240),n(242),n(243),n(244),n(245),n(246),n(247),n(248),n(249),n(250),n(251),n(252),n(253),n(254),n(256),n(257),n(258),n(259),n(260),n(261),n(263),n(264),n(266),n(268),n(269),n(270),n(271),n(272),n(273),n(274),n(275),n(276),n(277),n(278),n(279),n(280),n(281),n(282),n(283),n(284),n(285),n(286),n(287),n(288),n(289),n(290),n(292),n(293),n(294),n(297),n(298),n(299),n(300),n(301),n(302),n(303),n(304),n(305),n(306),n(307),n(308),n(309),n(310),n(311),n(312),n(313),n(314),n(315),n(316),n(317),n(318),n(319),n(320),n(321),n(322),n(323),n(324),n(325),n(326),n(327),n(328),n(329),n(330),n(331),n(332),n(333),n(334),n(335),n(336),n(337),n(338),n(339),n(340),n(341),n(342),n(343),n(344),n(345),n(346),n(348),n(349),n(350),n(351),n(352),n(353),n(354),n(355),n(356),n(357),n(358),n(359),n(360),n(361),n(362),n(363),n(364),n(365),n(366),n(367),n(368),n(369),n(370),n(371),n(372),n(373),n(374),n(375),n(376),n(377),n(378),n(379),n(380),n(381),n(382),n(383),n(384),n(385);var o=n(1);n(387),n(388);var r=n(389),a=(n(154),n(3)),i=n(19),c=n(155),l=n(51),u=n(157),d=n(502),s=(0,l.createLogger)(),p=(0,d.createStore)(),m=document.getElementById("react-root"),f=!0,h=!1,C=function(){for(p.subscribe((function(){!function(){if(!h){0;try{var e=p.getState();if(f){if(s.log("initial render",e),!(0,u.getRoute)(e)){if(s.info("loading old tgui"),h=!0,window.update=window.initialize=function(){},i.tridentVersion<=4)return void setTimeout((function(){location.href="tgui-fallback.html?ref="+window.__ref__}),10);document.getElementById("data").textContent=JSON.stringify(e),(0,r.loadCSS)("v4shim.css"),(0,r.loadCSS)("tgui.css");var t=document.getElementsByTagName("head")[0],a=document.createElement("script");return a.type="text/javascript",a.src="tgui.js",void t.appendChild(a)}(0,c.setupDrag)(e)}var l=n(504).Layout,d=(0,o.createComponentVNode)(2,l,{state:e,dispatch:p.dispatch});(0,o.render)(d,m)}catch(C){s.error("rendering error",C)}f&&(f=!1)}}()})),window.update=window.initialize=function(e){var t=function(e){var t=function(e,t){return"object"==typeof t&&null!==t&&t.__number__?parseFloat(t.__number__):t};i.tridentVersion<=4&&(t=undefined);try{return JSON.parse(e,t)}catch(o){s.log(o),s.log("What we got:",e);var n=o&&o.message;throw new Error("JSON parsing error: "+n)}}(e);p.dispatch((0,a.backendUpdate)(t))};;){var e=window.__updateQueue__.shift();if(!e)break;window.update(e)}(0,r.loadCSS)("font-awesome.css")};i.tridentVersion<=4&&"loading"===document.readyState?document.addEventListener("DOMContentLoaded",C):C()},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(35),i=n(38),c=n(9),l=n(95),u=n(125),d=n(4),s=n(15),p=n(52),m=n(6),f=n(8),h=n(14),C=n(24),g=n(33),b=n(46),v=n(42),N=n(62),V=n(47),y=n(128),_=n(94),x=n(18),k=n(13),L=n(71),w=n(25),B=n(22),S=n(91),I=n(72),T=n(59),A=n(58),E=n(11),P=n(129),M=n(26),O=n(43),R=n(34),F=n(16).forEach,D=I("hidden"),j=E("toPrimitive"),z=R.set,H=R.getterFor("Symbol"),G=Object.prototype,U=r.Symbol,K=a("JSON","stringify"),Y=x.f,q=k.f,W=y.f,$=L.f,Q=S("symbols"),X=S("op-symbols"),J=S("string-to-symbol-registry"),Z=S("symbol-to-string-registry"),ee=S("wks"),te=r.QObject,ne=!te||!te.prototype||!te.prototype.findChild,oe=c&&d((function(){return 7!=v(q({},"a",{get:function(){return q(this,"a",{value:7}).a}})).a}))?function(e,t,n){var o=Y(G,t);o&&delete G[t],q(e,t,n),o&&e!==G&&q(G,t,o)}:q,re=function(e,t){var n=Q[e]=v(U.prototype);return z(n,{type:"Symbol",tag:e,description:t}),c||(n.description=t),n},ae=l&&"symbol"==typeof U.iterator?function(e){return"symbol"==typeof e}:function(e){return Object(e)instanceof U},ie=function(e,t,n){e===G&&ie(X,t,n),f(e);var o=g(t,!0);return f(n),s(Q,o)?(n.enumerable?(s(e,D)&&e[D][o]&&(e[D][o]=!1),n=v(n,{enumerable:b(0,!1)})):(s(e,D)||q(e,D,b(1,{})),e[D][o]=!0),oe(e,o,n)):q(e,o,n)},ce=function(e,t){f(e);var n=C(t),o=N(n).concat(pe(n));return F(o,(function(t){c&&!ue.call(n,t)||ie(e,t,n[t])})),e},le=function(e,t){return t===undefined?v(e):ce(v(e),t)},ue=function(e){var t=g(e,!0),n=$.call(this,t);return!(this===G&&s(Q,t)&&!s(X,t))&&(!(n||!s(this,t)||!s(Q,t)||s(this,D)&&this[D][t])||n)},de=function(e,t){var n=C(e),o=g(t,!0);if(n!==G||!s(Q,o)||s(X,o)){var r=Y(n,o);return!r||!s(Q,o)||s(n,D)&&n[D][o]||(r.enumerable=!0),r}},se=function(e){var t=W(C(e)),n=[];return F(t,(function(e){s(Q,e)||s(T,e)||n.push(e)})),n},pe=function(e){var t=e===G,n=W(t?X:C(e)),o=[];return F(n,(function(e){!s(Q,e)||t&&!s(G,e)||o.push(Q[e])})),o};(l||(B((U=function(){if(this instanceof U)throw TypeError("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?String(arguments[0]):undefined,t=A(e),n=function o(e){this===G&&o.call(X,e),s(this,D)&&s(this[D],t)&&(this[D][t]=!1),oe(this,t,b(1,e))};return c&&ne&&oe(G,t,{configurable:!0,set:n}),re(t,e)}).prototype,"toString",(function(){return H(this).tag})),L.f=ue,k.f=ie,x.f=de,V.f=y.f=se,_.f=pe,c&&(q(U.prototype,"description",{configurable:!0,get:function(){return H(this).description}}),i||B(G,"propertyIsEnumerable",ue,{unsafe:!0}))),u||(P.f=function(e){return re(E(e),e)}),o({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:U}),F(N(ee),(function(e){M(e)})),o({target:"Symbol",stat:!0,forced:!l},{"for":function(e){var t=String(e);if(s(J,t))return J[t];var n=U(t);return J[t]=n,Z[n]=t,n},keyFor:function(e){if(!ae(e))throw TypeError(e+" is not a symbol");if(s(Z,e))return Z[e]},useSetter:function(){ne=!0},useSimple:function(){ne=!1}}),o({target:"Object",stat:!0,forced:!l,sham:!c},{create:le,defineProperty:ie,defineProperties:ce,getOwnPropertyDescriptor:de}),o({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:se,getOwnPropertySymbols:pe}),o({target:"Object",stat:!0,forced:d((function(){_.f(1)}))},{getOwnPropertySymbols:function(e){return _.f(h(e))}}),K)&&o({target:"JSON",stat:!0,forced:!l||d((function(){var e=U();return"[null]"!=K([e])||"{}"!=K({a:e})||"{}"!=K(Object(e))}))},{stringify:function(e,t,n){for(var o,r=[e],a=1;arguments.length>a;)r.push(arguments[a++]);if(o=t,(m(t)||e!==undefined)&&!ae(e))return p(t)||(t=function(e,t){if("function"==typeof o&&(t=o.call(this,e,t)),!ae(t))return t}),r[1]=t,K.apply(null,r)}});U.prototype[j]||w(U.prototype,j,U.prototype.valueOf),O(U,"Symbol"),T[D]=!0},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(5),i=n(15),c=n(6),l=n(13).f,u=n(122),d=a.Symbol;if(r&&"function"==typeof d&&(!("description"in d.prototype)||d().description!==undefined)){var s={},p=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:String(arguments[0]),t=this instanceof p?new d(e):e===undefined?d():d(e);return""===e&&(s[t]=!0),t};u(p,d);var m=p.prototype=d.prototype;m.constructor=p;var f=m.toString,h="Symbol(test)"==String(d("test")),C=/^Symbol\((.*)\)[^)]+$/;l(m,"description",{configurable:!0,get:function(){var e=c(this)?this.valueOf():this,t=f.call(e);if(i(s,e))return"";var n=h?t.slice(7,-1):t.replace(C,"$1");return""===n?undefined:n}}),o({global:!0,forced:!0},{Symbol:p})}},function(e,t,n){"use strict";n(26)("asyncIterator")},function(e,t,n){"use strict";n(26)("hasInstance")},function(e,t,n){"use strict";n(26)("isConcatSpreadable")},function(e,t,n){"use strict";n(26)("iterator")},function(e,t,n){"use strict";n(26)("match")},function(e,t,n){"use strict";n(26)("replace")},function(e,t,n){"use strict";n(26)("search")},function(e,t,n){"use strict";n(26)("species")},function(e,t,n){"use strict";n(26)("split")},function(e,t,n){"use strict";n(26)("toPrimitive")},function(e,t,n){"use strict";n(26)("toStringTag")},function(e,t,n){"use strict";n(26)("unscopables")},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(52),i=n(6),c=n(14),l=n(10),u=n(49),d=n(63),s=n(64),p=n(11),m=n(96),f=p("isConcatSpreadable"),h=9007199254740991,C="Maximum allowed index exceeded",g=m>=51||!r((function(){var e=[];return e[f]=!1,e.concat()[0]!==e})),b=s("concat"),v=function(e){if(!i(e))return!1;var t=e[f];return t!==undefined?!!t:a(e)};o({target:"Array",proto:!0,forced:!g||!b},{concat:function(e){var t,n,o,r,a,i=c(this),s=d(i,0),p=0;for(t=-1,o=arguments.length;th)throw TypeError(C);for(n=0;n=h)throw TypeError(C);u(s,p++,a)}return s.length=p,s}})},function(e,t,n){"use strict";var o=n(0),r=n(130),a=n(44);o({target:"Array",proto:!0},{copyWithin:r}),a("copyWithin")},function(e,t,n){"use strict";var o=n(0),r=n(16).every;o({target:"Array",proto:!0,forced:n(39)("every")},{every:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(97),a=n(44);o({target:"Array",proto:!0},{fill:r}),a("fill")},function(e,t,n){"use strict";var o=n(0),r=n(16).filter,a=n(4),i=n(64)("filter"),c=i&&!a((function(){[].filter.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{filter:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(16).find,a=n(44),i=!0;"find"in[]&&Array(1).find((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{find:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("find")},function(e,t,n){"use strict";var o=n(0),r=n(16).findIndex,a=n(44),i=!0;"findIndex"in[]&&Array(1).findIndex((function(){i=!1})),o({target:"Array",proto:!0,forced:i},{findIndex:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("findIndex")},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(30),l=n(63);o({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=a(this),n=i(t.length),o=l(t,0);return o.length=r(o,t,t,n,0,e===undefined?1:c(e)),o}})},function(e,t,n){"use strict";var o=n(0),r=n(131),a=n(14),i=n(10),c=n(31),l=n(63);o({target:"Array",proto:!0},{flatMap:function(e){var t,n=a(this),o=i(n.length);return c(e),(t=l(n,0)).length=r(t,n,n,o,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},function(e,t,n){"use strict";var o=n(0),r=n(196);o({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(e,t,n){"use strict";var o=n(16).forEach,r=n(39);e.exports=r("forEach")?function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}:[].forEach},function(e,t,n){"use strict";var o=n(0),r=n(198);o({target:"Array",stat:!0,forced:!n(75)((function(e){Array.from(e)}))},{from:r})},function(e,t,n){"use strict";var o=n(48),r=n(14),a=n(132),i=n(98),c=n(10),l=n(49),u=n(99);e.exports=function(e){var t,n,d,s,p,m=r(e),f="function"==typeof this?this:Array,h=arguments.length,C=h>1?arguments[1]:undefined,g=C!==undefined,b=0,v=u(m);if(g&&(C=o(C,h>2?arguments[2]:undefined,2)),v==undefined||f==Array&&i(v))for(n=new f(t=c(m.length));t>b;b++)l(n,b,g?C(m[b],b):m[b]);else for(p=(s=v.call(m)).next,n=new f;!(d=p.call(s)).done;b++)l(n,b,g?a(s,C,[d.value,b],!0):d.value);return n.length=b,n}},function(e,t,n){"use strict";var o=n(0),r=n(60).includes,a=n(44);o({target:"Array",proto:!0},{includes:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}}),a("includes")},function(e,t,n){"use strict";var o=n(0),r=n(60).indexOf,a=n(39),i=[].indexOf,c=!!i&&1/[1].indexOf(1,-0)<0,l=a("indexOf");o({target:"Array",proto:!0,forced:c||l},{indexOf:function(e){return c?i.apply(this,arguments)||0:r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";n(0)({target:"Array",stat:!0},{isArray:n(52)})},function(e,t,n){"use strict";var o=n(134).IteratorPrototype,r=n(42),a=n(46),i=n(43),c=n(65),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(o,{next:a(1,n)}),i(e,u,!1,!0),c[u]=l,e}},function(e,t,n){"use strict";var o=n(0),r=n(57),a=n(24),i=n(39),c=[].join,l=r!=Object,u=i("join",",");o({target:"Array",proto:!0,forced:l||u},{join:function(e){return c.call(a(this),e===undefined?",":e)}})},function(e,t,n){"use strict";var o=n(0),r=n(136);o({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(e,t,n){"use strict";var o=n(0),r=n(16).map,a=n(4),i=n(64)("map"),c=i&&!a((function(){[].map.call({length:-1,0:1},(function(e){throw e}))}));o({target:"Array",proto:!0,forced:!i||!c},{map:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(49);o({target:"Array",stat:!0,forced:r((function(){function e(){}return!(Array.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new("function"==typeof this?this:Array)(t);t>e;)a(n,e,arguments[e++]);return n.length=t,n}})},function(e,t,n){"use strict";var o=n(0),r=n(76).left;o({target:"Array",proto:!0,forced:n(39)("reduce")},{reduce:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(76).right;o({target:"Array",proto:!0,forced:n(39)("reduceRight")},{reduceRight:function(e){return r(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(52),i=n(41),c=n(10),l=n(24),u=n(49),d=n(64),s=n(11)("species"),p=[].slice,m=Math.max;o({target:"Array",proto:!0,forced:!d("slice")},{slice:function(e,t){var n,o,d,f=l(this),h=c(f.length),C=i(e,h),g=i(t===undefined?h:t,h);if(a(f)&&("function"!=typeof(n=f.constructor)||n!==Array&&!a(n.prototype)?r(n)&&null===(n=n[s])&&(n=undefined):n=undefined,n===Array||n===undefined))return p.call(f,C,g);for(o=new(n===undefined?Array:n)(m(g-C,0)),d=0;C1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(31),a=n(14),i=n(4),c=n(39),l=[],u=l.sort,d=i((function(){l.sort(undefined)})),s=i((function(){l.sort(null)})),p=c("sort");o({target:"Array",proto:!0,forced:d||!s||p},{sort:function(e){return e===undefined?u.call(a(this)):u.call(a(this),r(e))}})},function(e,t,n){"use strict";n(54)("Array")},function(e,t,n){"use strict";var o=n(0),r=n(41),a=n(30),i=n(10),c=n(14),l=n(63),u=n(49),d=n(64),s=Math.max,p=Math.min,m=9007199254740991,f="Maximum allowed length exceeded";o({target:"Array",proto:!0,forced:!d("splice")},{splice:function(e,t){var n,o,d,h,C,g,b=c(this),v=i(b.length),N=r(e,v),V=arguments.length;if(0===V?n=o=0:1===V?(n=0,o=v-N):(n=V-2,o=p(s(a(t),0),v-N)),v+n-o>m)throw TypeError(f);for(d=l(b,o),h=0;hv-o+n;h--)delete b[h-1]}else if(n>o)for(h=v-o;h>N;h--)g=h+n-1,(C=h+o-1)in b?b[g]=b[C]:delete b[g];for(h=0;h>1,h=23===t?r(2,-24)-r(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=o(e))!=e||e===1/0?(u=e!=e?1:0,l=m):(l=a(i(e)/c),e*(d=r(2,-l))<1&&(l--,d*=2),(e+=l+f>=1?h/d:h*r(2,1-f))*d>=2&&(l++,d/=2),l+f>=m?(u=0,l=m):l+f>=1?(u=(e*d-1)*r(2,t),l+=f):(u=e*r(2,f-1)*r(2,t),l=0));t>=8;s[g++]=255&u,u/=256,t-=8);for(l=l<0;s[g++]=255&l,l/=256,p-=8);return s[--g]|=128*C,s},unpack:function(e,t){var n,o=e.length,a=8*o-t-1,i=(1<>1,l=a-7,u=o-1,d=e[u--],s=127&d;for(d>>=7;l>0;s=256*s+e[u],u--,l-=8);for(n=s&(1<<-l)-1,s>>=-l,l+=t;l>0;n=256*n+e[u],u--,l-=8);if(0===s)s=1-c;else{if(s===i)return n?NaN:d?-1/0:1/0;n+=r(2,t),s-=c}return(d?-1:1)*n*r(2,s-t)}}},function(e,t,n){"use strict";var o=n(0),r=n(7);o({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(77),i=n(8),c=n(41),l=n(10),u=n(45),d=a.ArrayBuffer,s=a.DataView,p=d.prototype.slice;o({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r((function(){return!new d(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(p!==undefined&&t===undefined)return p.call(i(this),e);for(var n=i(this).byteLength,o=c(e,n),r=c(t===undefined?n:t,n),a=new(u(this,d))(l(r-o)),m=new s(this),f=new s(a),h=0;o9999?"+":"";return n+r(a(e),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(t,3,0)+"Z"}:l},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(33);o({target:"Date",proto:!0,forced:r((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(e){var t=a(this),n=i(t);return"number"!=typeof n||isFinite(n)?t.toISOString():null}})},function(e,t,n){"use strict";var o=n(25),r=n(226),a=n(11)("toPrimitive"),i=Date.prototype;a in i||o(i,a,r)},function(e,t,n){"use strict";var o=n(8),r=n(33);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return r(o(this),"number"!==e)}},function(e,t,n){"use strict";var o=n(22),r=Date.prototype,a="Invalid Date",i=r.toString,c=r.getTime;new Date(NaN)+""!=a&&o(r,"toString",(function(){var e=c.call(this);return e==e?i.call(this):a}))},function(e,t,n){"use strict";n(0)({target:"Function",proto:!0},{bind:n(138)})},function(e,t,n){"use strict";var o=n(6),r=n(13),a=n(36),i=n(11)("hasInstance"),c=Function.prototype;i in c||r.f(c,i,{value:function(e){if("function"!=typeof this||!o(e))return!1;if(!o(this.prototype))return e instanceof this;for(;e=a(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,n){"use strict";var o=n(9),r=n(13).f,a=Function.prototype,i=a.toString,c=/^\s*function ([^ (]*)/;!o||"name"in a||r(a,"name",{configurable:!0,get:function(){try{return i.call(this).match(c)[1]}catch(e){return""}}})},function(e,t,n){"use strict";var o=n(5);n(43)(o.JSON,"JSON",!0)},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Map",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(140),a=Math.acosh,i=Math.log,c=Math.sqrt,l=Math.LN2;o({target:"Math",stat:!0,forced:!a||710!=Math.floor(a(Number.MAX_VALUE))||a(Infinity)!=Infinity},{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?i(e)+l:r(e-1+c(e-1)*c(e+1))}})},function(e,t,n){"use strict";var o=n(0),r=Math.asinh,a=Math.log,i=Math.sqrt;o({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function c(e){return isFinite(e=+e)&&0!=e?e<0?-c(-e):a(e+i(e*e+1)):e}})},function(e,t,n){"use strict";var o=n(0),r=Math.atanh,a=Math.log;o({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(e){return 0==(e=+e)?e:a((1+e)/(1-e))/2}})},function(e,t,n){"use strict";var o=n(0),r=n(105),a=Math.abs,i=Math.pow;o({target:"Math",stat:!0},{cbrt:function(e){return r(e=+e)*i(a(e),1/3)}})},function(e,t,n){"use strict";var o=n(0),r=Math.floor,a=Math.log,i=Math.LOG2E;o({target:"Math",stat:!0},{clz32:function(e){return(e>>>=0)?31-r(a(e+.5)*i):32}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.cosh,i=Math.abs,c=Math.E;o({target:"Math",stat:!0,forced:!a||a(710)===Infinity},{cosh:function(e){var t=r(i(e)-1)+1;return(t+1/(t*c*c))*(c/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80);o({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{fround:n(241)})},function(e,t,n){"use strict";var o=n(105),r=Math.abs,a=Math.pow,i=a(2,-52),c=a(2,-23),l=a(2,127)*(2-c),u=a(2,-126),d=function(e){return e+1/i-1/i};e.exports=Math.fround||function(e){var t,n,a=r(e),s=o(e);return al||n!=n?s*Infinity:s*n}},function(e,t,n){"use strict";var o=n(0),r=Math.hypot,a=Math.abs,i=Math.sqrt;o({target:"Math",stat:!0,forced:!!r&&r(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,o,r=0,c=0,l=arguments.length,u=0;c0?(o=n/u)*o:n;return u===Infinity?Infinity:u*i(r)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=Math.imul;o({target:"Math",stat:!0,forced:r((function(){return-5!=a(4294967295,5)||2!=a.length}))},{imul:function(e,t){var n=+e,o=+t,r=65535&n,a=65535&o;return 0|r*a+((65535&n>>>16)*a+r*(65535&o>>>16)<<16>>>0)}})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LOG10E;o({target:"Math",stat:!0},{log10:function(e){return r(e)*a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{log1p:n(140)})},function(e,t,n){"use strict";var o=n(0),r=Math.log,a=Math.LN2;o({target:"Math",stat:!0},{log2:function(e){return r(e)/a}})},function(e,t,n){"use strict";n(0)({target:"Math",stat:!0},{sign:n(105)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(80),i=Math.abs,c=Math.exp,l=Math.E;o({target:"Math",stat:!0,forced:r((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){return i(e=+e)<1?(a(e)-a(-e))/2:(c(e-1)-c(-e-1))*(l/2)}})},function(e,t,n){"use strict";var o=n(0),r=n(80),a=Math.exp;o({target:"Math",stat:!0},{tanh:function(e){var t=r(e=+e),n=r(-e);return t==Infinity?1:n==Infinity?-1:(t-n)/(a(e)+a(-e))}})},function(e,t,n){"use strict";n(43)(Math,"Math",!0)},function(e,t,n){"use strict";var o=n(0),r=Math.ceil,a=Math.floor;o({target:"Math",stat:!0},{trunc:function(e){return(e>0?a:r)(e)}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(22),c=n(15),l=n(32),u=n(79),d=n(33),s=n(4),p=n(42),m=n(47).f,f=n(18).f,h=n(13).f,C=n(56).trim,g="Number",b=r[g],v=b.prototype,N=l(p(v))==g,V=function(e){var t,n,o,r,a,i,c,l,u=d(e,!1);if("string"==typeof u&&u.length>2)if(43===(t=(u=C(u)).charCodeAt(0))||45===t){if(88===(n=u.charCodeAt(2))||120===n)return NaN}else if(48===t){switch(u.charCodeAt(1)){case 66:case 98:o=2,r=49;break;case 79:case 111:o=8,r=55;break;default:return+u}for(i=(a=u.slice(2)).length,c=0;cr)return NaN;return parseInt(a,o)}return+u};if(a(g,!b(" 0o1")||!b("0b1")||b("+0x1"))){for(var y,_=function(e){var t=arguments.length<1?0:e,n=this;return n instanceof _&&(N?s((function(){v.valueOf.call(n)})):l(n)!=g)?u(new b(V(t)),n,_):V(t)},x=o?m(b):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),k=0;x.length>k;k++)c(b,y=x[k])&&!c(_,y)&&h(_,y,f(b,y));_.prototype=v,v.constructor=_,i(r,g,_)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isFinite:n(255)})},function(e,t,n){"use strict";var o=n(5).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isInteger:n(141)})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},function(e,t,n){"use strict";var o=n(0),r=n(141),a=Math.abs;o({target:"Number",stat:!0},{isSafeInteger:function(e){return r(e)&&a(e)<=9007199254740991}})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,n){"use strict";n(0)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,n){"use strict";var o=n(0),r=n(262);o({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(e,t,n){"use strict";var o=n(5),r=n(56).trim,a=n(81),i=o.parseFloat,c=1/i(a+"-0")!=-Infinity;e.exports=c?function(e){var t=r(String(e)),n=i(t);return 0===n&&"-"==t.charAt(0)?-0:n}:i},function(e,t,n){"use strict";var o=n(0),r=n(142);o({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o=n(0),r=n(30),a=n(265),i=n(104),c=n(4),l=1..toFixed,u=Math.floor,d=function p(e,t,n){return 0===t?n:t%2==1?p(e,t-1,n*e):p(e*e,t/2,n)},s=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t};o({target:"Number",proto:!0,forced:l&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!c((function(){l.call({})}))},{toFixed:function(e){var t,n,o,c,l=a(this),p=r(e),m=[0,0,0,0,0,0],f="",h="0",C=function(e,t){for(var n=-1,o=t;++n<6;)o+=e*m[n],m[n]=o%1e7,o=u(o/1e7)},g=function(e){for(var t=6,n=0;--t>=0;)n+=m[t],m[t]=u(n/e),n=n%e*1e7},b=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==m[e]){var n=String(m[e]);t=""===t?n:t+i.call("0",7-n.length)+n}return t};if(p<0||p>20)throw RangeError("Incorrect fraction digits");if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(f="-",l=-l),l>1e-21)if(n=(t=s(l*d(2,69,1))-69)<0?l*d(2,-t,1):l/d(2,t,1),n*=4503599627370496,(t=52-t)>0){for(C(0,n),o=p;o>=7;)C(1e7,0),o-=7;for(C(d(10,o,1),0),o=t-1;o>=23;)g(1<<23),o-=23;g(1<0?f+((c=h.length)<=p?"0."+i.call("0",p-c)+h:h.slice(0,c-p)+"."+h.slice(c-p)):f+h}})},function(e,t,n){"use strict";var o=n(32);e.exports=function(e){if("number"!=typeof e&&"Number"!=o(e))throw TypeError("Incorrect invocation");return+e}},function(e,t,n){"use strict";var o=n(0),r=n(267);o({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(e,t,n){"use strict";var o=n(9),r=n(4),a=n(62),i=n(94),c=n(71),l=n(14),u=n(57),d=Object.assign,s=Object.defineProperty;e.exports=!d||r((function(){if(o&&1!==d({b:1},d(s({},"a",{enumerable:!0,get:function(){s(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol();return e[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||"abcdefghijklmnopqrst"!=a(d({},t)).join("")}))?function(e,t){for(var n=l(e),r=arguments.length,d=1,s=i.f,p=c.f;r>d;)for(var m,f=u(arguments[d++]),h=s?a(f).concat(s(f)):a(f),C=h.length,g=0;C>g;)m=h[g++],o&&!p.call(f,m)||(n[m]=f[m]);return n}:d},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0,sham:!n(9)},{create:n(42)})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(31),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineGetter__:function(e,t){l.f(i(this),e,{get:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(126)})},function(e,t,n){"use strict";var o=n(0),r=n(9);o({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(13).f})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(31),l=n(13);r&&o({target:"Object",proto:!0,forced:a},{__defineSetter__:function(e,t){l.f(i(this),e,{set:c(t),enumerable:!0,configurable:!0})}})},function(e,t,n){"use strict";var o=n(0),r=n(143).entries;o({target:"Object",stat:!0},{entries:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(67),a=n(4),i=n(6),c=n(50).onFreeze,l=Object.freeze;o({target:"Object",stat:!0,forced:a((function(){l(1)})),sham:!r},{freeze:function(e){return l&&i(e)?l(c(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(68),a=n(49);o({target:"Object",stat:!0},{fromEntries:function(e){var t={};return r(e,(function(e,n){a(t,e,n)}),undefined,!0),t}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(24),i=n(18).f,c=n(9),l=r((function(){i(1)}));o({target:"Object",stat:!0,forced:!c||l,sham:!c},{getOwnPropertyDescriptor:function(e,t){return i(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(92),i=n(24),c=n(18),l=n(49);o({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(e){for(var t,n,o=i(e),r=c.f,u=a(o),d={},s=0;u.length>s;)(n=r(o,t=u[s++]))!==undefined&&l(d,t,n);return d}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(128).f;o({target:"Object",stat:!0,forced:r((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:a})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(14),i=n(36),c=n(102);o({target:"Object",stat:!0,forced:r((function(){i(1)})),sham:!c},{getPrototypeOf:function(e){return i(a(e))}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{is:n(144)})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isExtensible;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isExtensible:function(e){return!!a(e)&&(!i||i(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isFrozen;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isFrozen:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(4),a=n(6),i=Object.isSealed;o({target:"Object",stat:!0,forced:r((function(){i(1)}))},{isSealed:function(e){return!a(e)||!!i&&i(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(14),a=n(62);o({target:"Object",stat:!0,forced:n(4)((function(){a(1)}))},{keys:function(e){return a(r(e))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupGetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.get}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(82),i=n(14),c=n(33),l=n(36),u=n(18).f;r&&o({target:"Object",proto:!0,forced:a},{__lookupSetter__:function(e){var t,n=i(this),o=c(e,!0);do{if(t=u(n,o))return t.set}while(n=l(n))}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.preventExtensions;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{preventExtensions:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(50).onFreeze,i=n(67),c=n(4),l=Object.seal;o({target:"Object",stat:!0,forced:c((function(){l(1)})),sham:!i},{seal:function(e){return l&&r(e)?l(a(e)):e}})},function(e,t,n){"use strict";n(0)({target:"Object",stat:!0},{setPrototypeOf:n(53)})},function(e,t,n){"use strict";var o=n(100),r=n(22),a=n(291);o||r(Object.prototype,"toString",a,{unsafe:!0})},function(e,t,n){"use strict";var o=n(100),r=n(74);e.exports=o?{}.toString:function(){return"[object "+r(this)+"]"}},function(e,t,n){"use strict";var o=n(0),r=n(143).values;o({target:"Object",stat:!0},{values:function(e){return r(e)}})},function(e,t,n){"use strict";var o=n(0),r=n(142);o({global:!0,forced:parseInt!=r},{parseInt:r})},function(e,t,n){"use strict";var o,r,a,i,c=n(0),l=n(38),u=n(5),d=n(35),s=n(145),p=n(22),m=n(66),f=n(43),h=n(54),C=n(6),g=n(31),b=n(55),v=n(32),N=n(90),V=n(68),y=n(75),_=n(45),x=n(106).set,k=n(147),L=n(148),w=n(295),B=n(149),S=n(296),I=n(34),T=n(61),A=n(11),E=n(96),P=A("species"),M="Promise",O=I.get,R=I.set,F=I.getterFor(M),D=s,j=u.TypeError,z=u.document,H=u.process,G=d("fetch"),U=B.f,K=U,Y="process"==v(H),q=!!(z&&z.createEvent&&u.dispatchEvent),W=0,$=T(M,(function(){if(!(N(D)!==String(D))){if(66===E)return!0;if(!Y&&"function"!=typeof PromiseRejectionEvent)return!0}if(l&&!D.prototype["finally"])return!0;if(E>=51&&/native code/.test(D))return!1;var e=D.resolve(1),t=function(e){e((function(){}),(function(){}))};return(e.constructor={})[P]=t,!(e.then((function(){}))instanceof t)})),Q=$||!y((function(e){D.all(e)["catch"]((function(){}))})),X=function(e){var t;return!(!C(e)||"function"!=typeof(t=e.then))&&t},J=function(e,t,n){if(!t.notified){t.notified=!0;var o=t.reactions;k((function(){for(var r=t.value,a=1==t.state,i=0;o.length>i;){var c,l,u,d=o[i++],s=a?d.ok:d.fail,p=d.resolve,m=d.reject,f=d.domain;try{s?(a||(2===t.rejection&&ne(e,t),t.rejection=1),!0===s?c=r:(f&&f.enter(),c=s(r),f&&(f.exit(),u=!0)),c===d.promise?m(j("Promise-chain cycle")):(l=X(c))?l.call(c,p,m):p(c)):m(r)}catch(h){f&&!u&&f.exit(),m(h)}}t.reactions=[],t.notified=!1,n&&!t.rejection&&ee(e,t)}))}},Z=function(e,t,n){var o,r;q?((o=z.createEvent("Event")).promise=t,o.reason=n,o.initEvent(e,!1,!0),u.dispatchEvent(o)):o={promise:t,reason:n},(r=u["on"+e])?r(o):"unhandledrejection"===e&&w("Unhandled promise rejection",n)},ee=function(e,t){x.call(u,(function(){var n,o=t.value;if(te(t)&&(n=S((function(){Y?H.emit("unhandledRejection",o,e):Z("unhandledrejection",e,o)})),t.rejection=Y||te(t)?2:1,n.error))throw n.value}))},te=function(e){return 1!==e.rejection&&!e.parent},ne=function(e,t){x.call(u,(function(){Y?H.emit("rejectionHandled",e):Z("rejectionhandled",e,t.value)}))},oe=function(e,t,n,o){return function(r){e(t,n,r,o)}},re=function(e,t,n,o){t.done||(t.done=!0,o&&(t=o),t.value=n,t.state=2,J(e,t,!0))},ae=function ie(e,t,n,o){if(!t.done){t.done=!0,o&&(t=o);try{if(e===n)throw j("Promise can't be resolved itself");var r=X(n);r?k((function(){var o={done:!1};try{r.call(n,oe(ie,e,o,t),oe(re,e,o,t))}catch(a){re(e,o,a,t)}})):(t.value=n,t.state=1,J(e,t,!1))}catch(a){re(e,{done:!1},a,t)}}};$&&(D=function(e){b(this,D,M),g(e),o.call(this);var t=O(this);try{e(oe(ae,this,t),oe(re,this,t))}catch(n){re(this,t,n)}},(o=function(e){R(this,{type:M,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:W,value:undefined})}).prototype=m(D.prototype,{then:function(e,t){var n=F(this),o=U(_(this,D));return o.ok="function"!=typeof e||e,o.fail="function"==typeof t&&t,o.domain=Y?H.domain:undefined,n.parent=!0,n.reactions.push(o),n.state!=W&&J(this,n,!1),o.promise},"catch":function(e){return this.then(undefined,e)}}),r=function(){var e=new o,t=O(e);this.promise=e,this.resolve=oe(ae,e,t),this.reject=oe(re,e,t)},B.f=U=function(e){return e===D||e===a?new r(e):K(e)},l||"function"!=typeof s||(i=s.prototype.then,p(s.prototype,"then",(function(e,t){var n=this;return new D((function(e,t){i.call(n,e,t)})).then(e,t)}),{unsafe:!0}),"function"==typeof G&&c({global:!0,enumerable:!0,forced:!0},{fetch:function(e){return L(D,G.apply(u,arguments))}}))),c({global:!0,wrap:!0,forced:$},{Promise:D}),f(D,M,!1,!0),h(M),a=d(M),c({target:M,stat:!0,forced:$},{reject:function(e){var t=U(this);return t.reject.call(undefined,e),t.promise}}),c({target:M,stat:!0,forced:l||$},{resolve:function(e){return L(l&&this===a?D:this,e)}}),c({target:M,stat:!0,forced:Q},{all:function(e){var t=this,n=U(t),o=n.resolve,r=n.reject,a=S((function(){var n=g(t.resolve),a=[],i=0,c=1;V(e,(function(e){var l=i++,u=!1;a.push(undefined),c++,n.call(t,e).then((function(e){u||(u=!0,a[l]=e,--c||o(a))}),r)})),--c||o(a)}));return a.error&&r(a.value),n.promise},race:function(e){var t=this,n=U(t),o=n.reject,r=S((function(){var r=g(t.resolve);V(e,(function(e){r.call(t,e).then(n.resolve,o)}))}));return r.error&&o(r.value),n.promise}})},function(e,t,n){"use strict";var o=n(5);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},function(e,t,n){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},function(e,t,n){"use strict";var o=n(0),r=n(38),a=n(145),i=n(4),c=n(35),l=n(45),u=n(148),d=n(22);o({target:"Promise",proto:!0,real:!0,forced:!!a&&i((function(){a.prototype["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=l(this,c("Promise")),n="function"==typeof e;return this.then(n?function(n){return u(t,e()).then((function(){return n}))}:e,n?function(n){return u(t,e()).then((function(){throw n}))}:e)}}),r||"function"!=typeof a||a.prototype["finally"]||d(a.prototype,"finally",c("Promise").prototype["finally"])},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(31),i=n(8),c=n(4),l=r("Reflect","apply"),u=Function.apply;o({target:"Reflect",stat:!0,forced:!c((function(){l((function(){}))}))},{apply:function(e,t,n){return a(e),i(n),l?l(e,t,n):u.call(e,t,n)}})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(31),i=n(8),c=n(6),l=n(42),u=n(138),d=n(4),s=r("Reflect","construct"),p=d((function(){function e(){}return!(s((function(){}),[],e)instanceof e)})),m=!d((function(){s((function(){}))})),f=p||m;o({target:"Reflect",stat:!0,forced:f,sham:f},{construct:function(e,t){a(e),i(t);var n=arguments.length<3?e:a(arguments[2]);if(m&&!p)return s(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var o=[null];return o.push.apply(o,t),new(u.apply(e,o))}var r=n.prototype,d=l(c(r)?r:Object.prototype),f=Function.apply.call(e,d,t);return c(f)?f:d}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(33),c=n(13);o({target:"Reflect",stat:!0,forced:n(4)((function(){Reflect.defineProperty(c.f({},1,{value:1}),1,{value:2})})),sham:!r},{defineProperty:function(e,t,n){a(e);var o=i(t,!0);a(n);try{return c.f(e,o,n),!0}catch(r){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(18).f;o({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=a(r(e),t);return!(n&&!n.configurable)&&delete e[t]}})},function(e,t,n){"use strict";var o=n(0),r=n(6),a=n(8),i=n(15),c=n(18),l=n(36);o({target:"Reflect",stat:!0},{get:function u(e,t){var n,o,d=arguments.length<3?e:arguments[2];return a(e)===d?e[t]:(n=c.f(e,t))?i(n,"value")?n.value:n.get===undefined?undefined:n.get.call(d):r(o=l(e))?u(o,t,d):void 0}})},function(e,t,n){"use strict";var o=n(0),r=n(9),a=n(8),i=n(18);o({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(e,t){return i.f(a(e),t)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(36);o({target:"Reflect",stat:!0,sham:!n(102)},{getPrototypeOf:function(e){return a(r(e))}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=Object.isExtensible;o({target:"Reflect",stat:!0},{isExtensible:function(e){return r(e),!a||a(e)}})},function(e,t,n){"use strict";n(0)({target:"Reflect",stat:!0},{ownKeys:n(92)})},function(e,t,n){"use strict";var o=n(0),r=n(35),a=n(8);o({target:"Reflect",stat:!0,sham:!n(67)},{preventExtensions:function(e){a(e);try{var t=r("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(6),i=n(15),c=n(4),l=n(13),u=n(18),d=n(36),s=n(46);o({target:"Reflect",stat:!0,forced:c((function(){var e=l.f({},"a",{configurable:!0});return!1!==Reflect.set(d(e),"a",1,e)}))},{set:function p(e,t,n){var o,c,m=arguments.length<4?e:arguments[3],f=u.f(r(e),t);if(!f){if(a(c=d(e)))return p(c,t,n,m);f=s(0)}if(i(f,"value")){if(!1===f.writable||!a(m))return!1;if(o=u.f(m,t)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,l.f(m,t,o)}else l.f(m,t,s(0,n));return!0}return f.set!==undefined&&(f.set.call(m,n),!0)}})},function(e,t,n){"use strict";var o=n(0),r=n(8),a=n(135),i=n(53);i&&o({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){r(e),a(t);try{return i(e,t),!0}catch(n){return!1}}})},function(e,t,n){"use strict";var o=n(9),r=n(5),a=n(61),i=n(79),c=n(13).f,l=n(47).f,u=n(107),d=n(83),s=n(22),p=n(4),m=n(54),f=n(11)("match"),h=r.RegExp,C=h.prototype,g=/a/g,b=/a/g,v=new h(g)!==g;if(o&&a("RegExp",!v||p((function(){return b[f]=!1,h(g)!=g||h(b)==b||"/a/i"!=h(g,"i")})))){for(var N=function(e,t){var n=this instanceof N,o=u(e),r=t===undefined;return!n&&o&&e.constructor===N&&r?e:i(v?new h(o&&!r?e.source:e,t):h((o=e instanceof N)?e.source:e,o&&r?d.call(e):t),n?this:C,N)},V=function(e){e in N||c(N,e,{configurable:!0,get:function(){return h[e]},set:function(t){h[e]=t}})},y=l(h),_=0;y.length>_;)V(y[_++]);C.constructor=N,N.prototype=C,s(r,"RegExp",N)}m("RegExp")},function(e,t,n){"use strict";var o=n(0),r=n(84);o({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(e,t,n){"use strict";var o=n(9),r=n(13),a=n(83);o&&"g"!=/./g.flags&&r.f(RegExp.prototype,"flags",{configurable:!0,get:a})},function(e,t,n){"use strict";var o=n(22),r=n(8),a=n(4),i=n(83),c=RegExp.prototype,l=c.toString,u=a((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),d="toString"!=l.name;(u||d)&&o(RegExp.prototype,"toString",(function(){var e=r(this),t=String(e.source),n=e.flags;return"/"+t+"/"+String(n===undefined&&e instanceof RegExp&&!("flags"in c)?i.call(e):n)}),{unsafe:!0})},function(e,t,n){"use strict";var o=n(78),r=n(139);e.exports=o("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),r)},function(e,t,n){"use strict";var o=n(0),r=n(108).codeAt;o({target:"String",proto:!0},{codePointAt:function(e){return r(this,e)}})},function(e,t,n){"use strict";var o,r=n(0),a=n(18).f,i=n(10),c=n(109),l=n(21),u=n(110),d=n(38),s="".endsWith,p=Math.min,m=u("endsWith");r({target:"String",proto:!0,forced:!!(d||m||(o=a(String.prototype,"endsWith"),!o||o.writable))&&!m},{endsWith:function(e){var t=String(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,o=i(t.length),r=n===undefined?o:p(i(n),o),a=String(e);return s?s.call(t,a,r):t.slice(r-a.length,r)===a}})},function(e,t,n){"use strict";var o=n(0),r=n(41),a=String.fromCharCode,i=String.fromCodePoint;o({target:"String",stat:!0,forced:!!i&&1!=i.length},{fromCodePoint:function(e){for(var t,n=[],o=arguments.length,i=0;o>i;){if(t=+arguments[i++],r(t,1114111)!==t)throw RangeError(t+" is not a valid code point");n.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return n.join("")}})},function(e,t,n){"use strict";var o=n(0),r=n(109),a=n(21);o({target:"String",proto:!0,forced:!n(110)("includes")},{includes:function(e){return!!~String(a(this)).indexOf(r(e),arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(108).charAt,r=n(34),a=n(101),i=r.set,c=r.getterFor("String Iterator");a(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,t=c(this),n=t.string,r=t.index;return r>=n.length?{value:undefined,done:!0}:(e=o(n,r),t.index+=e.length,{value:e,done:!1})}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(10),i=n(21),c=n(111),l=n(86);o("match",1,(function(e,t,n){return[function(t){var n=i(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var i=r(e),u=String(this);if(!i.global)return l(i,u);var d=i.unicode;i.lastIndex=0;for(var s,p=[],m=0;null!==(s=l(i,u));){var f=String(s[0]);p[m]=f,""===f&&(i.lastIndex=c(u,a(i.lastIndex),d)),m++}return 0===m?null:p}]}))},function(e,t,n){"use strict";var o=n(0),r=n(103).end;o({target:"String",proto:!0,forced:n(150)},{padEnd:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(103).start;o({target:"String",proto:!0,forced:n(150)},{padStart:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}})},function(e,t,n){"use strict";var o=n(0),r=n(24),a=n(10);o({target:"String",stat:!0},{raw:function(e){for(var t=r(e.raw),n=a(t.length),o=arguments.length,i=[],c=0;n>c;)i.push(String(t[c++])),c]*>)/g,h=/\$([$&'`]|\d\d?)/g;o("replace",2,(function(e,t,n){return[function(n,o){var r=l(this),a=n==undefined?undefined:n[e];return a!==undefined?a.call(n,r,o):t.call(String(r),n,o)},function(e,a){var l=n(t,e,this,a);if(l.done)return l.value;var m=r(e),f=String(this),h="function"==typeof a;h||(a=String(a));var C=m.global;if(C){var g=m.unicode;m.lastIndex=0}for(var b=[];;){var v=d(m,f);if(null===v)break;if(b.push(v),!C)break;""===String(v[0])&&(m.lastIndex=u(f,i(m.lastIndex),g))}for(var N,V="",y=0,_=0;_=y&&(V+=f.slice(y,k)+I,y=k+x.length)}return V+f.slice(y)}];function o(e,n,o,r,i,c){var l=o+e.length,u=r.length,d=h;return i!==undefined&&(i=a(i),d=f),t.call(c,d,(function(t,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return e;case"`":return n.slice(0,o);case"'":return n.slice(l);case"<":c=i[a.slice(1,-1)];break;default:var d=+a;if(0===d)return t;if(d>u){var s=m(d/10);return 0===s?t:s<=u?r[s-1]===undefined?a.charAt(1):r[s-1]+a.charAt(1):t}c=r[d-1]}return c===undefined?"":c}))}}))},function(e,t,n){"use strict";var o=n(85),r=n(8),a=n(21),i=n(144),c=n(86);o("search",1,(function(e,t,n){return[function(t){var n=a(this),o=t==undefined?undefined:t[e];return o!==undefined?o.call(t,n):new RegExp(t)[e](String(n))},function(e){var o=n(t,e,this);if(o.done)return o.value;var a=r(e),l=String(this),u=a.lastIndex;i(u,0)||(a.lastIndex=0);var d=c(a,l);return i(a.lastIndex,u)||(a.lastIndex=u),null===d?-1:d.index}]}))},function(e,t,n){"use strict";var o=n(85),r=n(107),a=n(8),i=n(21),c=n(45),l=n(111),u=n(10),d=n(86),s=n(84),p=n(4),m=[].push,f=Math.min,h=!p((function(){return!RegExp(4294967295,"y")}));o("split",2,(function(e,t,n){var o;return o="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var o=String(i(this)),a=n===undefined?4294967295:n>>>0;if(0===a)return[];if(e===undefined)return[o];if(!r(e))return t.call(o,e,a);for(var c,l,u,d=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,h=new RegExp(e.source,p+"g");(c=s.call(h,o))&&!((l=h.lastIndex)>f&&(d.push(o.slice(f,c.index)),c.length>1&&c.index=a));)h.lastIndex===c.index&&h.lastIndex++;return f===o.length?!u&&h.test("")||d.push(""):d.push(o.slice(f)),d.length>a?d.slice(0,a):d}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=i(this),a=t==undefined?undefined:t[e];return a!==undefined?a.call(t,r,n):o.call(String(r),t,n)},function(e,r){var i=n(o,e,this,r,o!==t);if(i.done)return i.value;var s=a(e),p=String(this),m=c(s,RegExp),C=s.unicode,g=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(h?"y":"g"),b=new m(h?s:"^(?:"+s.source+")",g),v=r===undefined?4294967295:r>>>0;if(0===v)return[];if(0===p.length)return null===d(b,p)?[p]:[];for(var N=0,V=0,y=[];V1?arguments[1]:undefined,t.length)),o=String(e);return s?s.call(t,o,n):t.slice(n,n+o.length)===o}})},function(e,t,n){"use strict";var o=n(0),r=n(56).trim;o({target:"String",proto:!0,forced:n(112)("trim")},{trim:function(){return r(this)}})},function(e,t,n){"use strict";var o=n(0),r=n(56).end,a=n(112)("trimEnd"),i=a?function(){return r(this)}:"".trimEnd;o({target:"String",proto:!0,forced:a},{trimEnd:i,trimRight:i})},function(e,t,n){"use strict";var o=n(0),r=n(56).start,a=n(112)("trimStart"),i=a?function(){return r(this)}:"".trimStart;o({target:"String",proto:!0,forced:a},{trimStart:i,trimLeft:i})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("anchor")},{anchor:function(e){return r(this,"a","name",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("big")},{big:function(){return r(this,"big","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("blink")},{blink:function(){return r(this,"blink","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("bold")},{bold:function(){return r(this,"b","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fontcolor")},{fontcolor:function(e){return r(this,"font","color",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("fontsize")},{fontsize:function(e){return r(this,"font","size",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("italics")},{italics:function(){return r(this,"i","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("link")},{link:function(e){return r(this,"a","href",e)}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("small")},{small:function(){return r(this,"small","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("strike")},{strike:function(){return r(this,"strike","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("sub")},{sub:function(){return r(this,"sub","","")}})},function(e,t,n){"use strict";var o=n(0),r=n(27);o({target:"String",proto:!0,forced:n(28)("sup")},{sup:function(){return r(this,"sup","","")}})},function(e,t,n){"use strict";n(40)("Float32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(30);e.exports=function(e){var t=o(e);if(t<0)throw RangeError("The argument can't be less than 0");return t}},function(e,t,n){"use strict";n(40)("Float64",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Int32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint8",(function(e){return function(t,n,o){return e(this,t,n,o)}}),!0)},function(e,t,n){"use strict";n(40)("Uint16",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";n(40)("Uint32",(function(e){return function(t,n,o){return e(this,t,n,o)}}))},function(e,t,n){"use strict";var o=n(7),r=n(130),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return r.call(a(this),e,t,arguments.length>2?arguments[2]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).every,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("every",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(97),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("fill",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).filter,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("filter",(function(e){for(var t=r(i(this),e,arguments.length>1?arguments[1]:undefined),n=a(this,this.constructor),o=0,l=t.length,u=new(c(n))(l);l>o;)u[o]=t[o++];return u}))},function(e,t,n){"use strict";var o=n(7),r=n(16).find,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("find",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).findIndex,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("findIndex",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).forEach,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("forEach",(function(e){r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(113);(0,n(7).exportTypedArrayStaticMethod)("from",n(152),o)},function(e,t,n){"use strict";var o=n(7),r=n(60).includes,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("includes",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(60).indexOf,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("indexOf",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(133),i=n(11)("iterator"),c=o.Uint8Array,l=a.values,u=a.keys,d=a.entries,s=r.aTypedArray,p=r.exportTypedArrayMethod,m=c&&c.prototype[i],f=!!m&&("values"==m.name||m.name==undefined),h=function(){return l.call(s(this))};p("entries",(function(){return d.call(s(this))})),p("keys",(function(){return u.call(s(this))})),p("values",h,!f),p(i,h,!f)},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].join;a("join",(function(e){return i.apply(r(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(136),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("lastIndexOf",(function(e){return r.apply(a(this),arguments)}))},function(e,t,n){"use strict";var o=n(7),r=n(16).map,a=n(45),i=o.aTypedArray,c=o.aTypedArrayConstructor;(0,o.exportTypedArrayMethod)("map",(function(e){return r(i(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(c(a(e,e.constructor)))(t)}))}))},function(e,t,n){"use strict";var o=n(7),r=n(113),a=o.aTypedArrayConstructor;(0,o.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(a(this))(t);t>e;)n[e]=arguments[e++];return n}),r)},function(e,t,n){"use strict";var o=n(7),r=n(76).left,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduce",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=n(76).right,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("reduceRight",(function(e){return r(a(this),e,arguments.length,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=Math.floor;a("reverse",(function(){for(var e,t=r(this).length,n=i(t/2),o=0;o1?arguments[1]:undefined,1),n=this.length,o=i(e),c=r(o.length),u=0;if(c+t>n)throw RangeError("Wrong length");for(;ua;)d[a]=n[a++];return d}),a((function(){new Int8Array(1).slice()})))},function(e,t,n){"use strict";var o=n(7),r=n(16).some,a=o.aTypedArray;(0,o.exportTypedArrayMethod)("some",(function(e){return r(a(this),e,arguments.length>1?arguments[1]:undefined)}))},function(e,t,n){"use strict";var o=n(7),r=o.aTypedArray,a=o.exportTypedArrayMethod,i=[].sort;a("sort",(function(e){return i.call(r(this),e)}))},function(e,t,n){"use strict";var o=n(7),r=n(10),a=n(41),i=n(45),c=o.aTypedArray;(0,o.exportTypedArrayMethod)("subarray",(function(e,t){var n=c(this),o=n.length,l=a(e,o);return new(i(n,n.constructor))(n.buffer,n.byteOffset+l*n.BYTES_PER_ELEMENT,r((t===undefined?o:a(t,o))-l))}))},function(e,t,n){"use strict";var o=n(5),r=n(7),a=n(4),i=o.Int8Array,c=r.aTypedArray,l=r.exportTypedArrayMethod,u=[].toLocaleString,d=[].slice,s=!!i&&a((function(){u.call(new i(1))}));l("toLocaleString",(function(){return u.apply(s?d.call(c(this)):c(this),arguments)}),a((function(){return[1,2].toLocaleString()!=new i([1,2]).toLocaleString()}))||!a((function(){i.prototype.toLocaleString.call([1,2])})))},function(e,t,n){"use strict";var o=n(7).exportTypedArrayMethod,r=n(4),a=n(5).Uint8Array,i=a&&a.prototype||{},c=[].toString,l=[].join;r((function(){c.call({})}))&&(c=function(){return l.call(this)});var u=i.toString!=c;o("toString",c,u)},function(e,t,n){"use strict";var o,r=n(5),a=n(66),i=n(50),c=n(78),l=n(153),u=n(6),d=n(34).enforce,s=n(121),p=!r.ActiveXObject&&"ActiveXObject"in r,m=Object.isExtensible,f=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},h=e.exports=c("WeakMap",f,l);if(s&&p){o=l.getConstructor(f,"WeakMap",!0),i.REQUIRED=!0;var C=h.prototype,g=C["delete"],b=C.has,v=C.get,N=C.set;a(C,{"delete":function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),g.call(this,e)||t.frozen["delete"](e)}return g.call(this,e)},has:function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),b.call(this,e)||t.frozen.has(e)}return b.call(this,e)},get:function(e){if(u(e)&&!m(e)){var t=d(this);return t.frozen||(t.frozen=new o),b.call(this,e)?v.call(this,e):t.frozen.get(e)}return v.call(this,e)},set:function(e,t){if(u(e)&&!m(e)){var n=d(this);n.frozen||(n.frozen=new o),b.call(this,e)?N.call(this,e,t):n.frozen.set(e,t)}else N.call(this,e,t);return this}})}},function(e,t,n){"use strict";n(78)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(153))},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(106);o({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:a.set,clearImmediate:a.clear})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(147),i=n(32),c=r.process,l="process"==i(c);o({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(e){var t=l&&c.domain;a(t?t.bind(e):e)}})},function(e,t,n){"use strict";var o=n(0),r=n(5),a=n(73),i=[].slice,c=function(e){return function(t,n){var o=arguments.length>2,r=o?i.call(arguments,2):undefined;return e(o?function(){("function"==typeof t?t:Function(t)).apply(this,r)}:t,n)}};o({global:!0,bind:!0,forced:/MSIE .\./.test(a)},{setTimeout:c(r.setTimeout),setInterval:c(r.setInterval)})},function(e,t,n){"use strict";t.__esModule=!0,t._CI=Ie,t._HI=D,t._M=Te,t._MCCC=Me,t._ME=Ee,t._MFCC=Oe,t._MP=Be,t._MR=Ne,t.__render=ze,t.createComponentVNode=function(e,t,n,o,r){var i=new T(1,null,null,e=function(e,t){if(12&e)return e;if(t.prototype&&t.prototype.render)return 4;if(t.render)return 32776;return 8}(e,t),o,function(e,t,n){var o=(32768&e?t.render:t).defaultProps;if(a(o))return n;if(a(n))return d(o,null);return B(n,o)}(e,t,n),function(e,t,n){if(4&e)return n;var o=(32768&e?t.render:t).defaultHooks;if(a(o))return n;if(a(n))return o;return B(n,o)}(e,t,r),t);k.createVNode&&k.createVNode(i);return i},t.createFragment=P,t.createPortal=function(e,t){var n=D(e);return A(1024,1024,null,n,0,null,n.key,t)},t.createRef=function(){return{current:null}},t.createRenderer=function(e){return function(t,n,o,r){e||(e=t),He(n,e,o,r)}},t.createTextVNode=E,t.createVNode=A,t.directClone=M,t.findDOMfromVNode=N,t.forwardRef=function(e){return{render:e}},t.getFlagsForElementVnode=function(e){switch(e){case"svg":return 32;case"input":return 64;case"select":return 256;case"textarea":return 128;case m:return 8192;default:return 1}},t.linkEvent=function(e,t){if(c(t))return{data:e,event:t};return null},t.normalizeProps=function(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&a(e.children)&&F(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=undefined)),void 0!==t.key&&(e.key=t.key,t.key=undefined),void 0!==t.ref&&(e.ref=8&n?d(e.ref,t.ref):t.ref,t.ref=undefined)}return e},t.render=He,t.rerender=We,t.version=t.options=t.Fragment=t.EMPTY_OBJ=t.Component=void 0;var o=Array.isArray;function r(e){var t=typeof e;return"string"===t||"number"===t}function a(e){return null==e}function i(e){return null===e||!1===e||!0===e||void 0===e}function c(e){return"function"==typeof e}function l(e){return"string"==typeof e}function u(e){return null===e}function d(e,t){var n={};if(e)for(var o in e)n[o]=e[o];if(t)for(var r in t)n[r]=t[r];return n}function s(e){return!u(e)&&"object"==typeof e}var p={};t.EMPTY_OBJ=p;var m="$F";function f(e){return e.substr(2).toLowerCase()}function h(e,t){e.appendChild(t)}function C(e,t,n){u(n)?h(e,t):e.insertBefore(t,n)}function g(e,t){e.removeChild(t)}function b(e){for(var t;(t=e.shift())!==undefined;)t()}function v(e,t,n){var o=e.children;return 4&n?o.$LI:8192&n?2===e.childFlags?o:o[t?0:o.length-1]:o}function N(e,t){for(var n;e;){if(2033&(n=e.flags))return e.dom;e=v(e,t,n)}return null}function V(e,t){do{var n=e.flags;if(2033&n)return void g(t,e.dom);var o=e.children;if(4&n&&(e=o.$LI),8&n&&(e=o),8192&n){if(2!==e.childFlags){for(var r=0,a=o.length;r0,f=u(p),h=l(p)&&p[0]===I;m||f||h?(n=n||t.slice(0,d),(m||h)&&(s=M(s)),(f||h)&&(s.key=I+d),n.push(s)):n&&n.push(s),s.flags|=65536}}a=0===(n=n||t).length?1:8}else(n=t).flags|=65536,81920&t.flags&&(n=M(t)),a=2;return e.children=n,e.childFlags=a,e}function D(e){return i(e)||r(e)?E(e,null):o(e)?P(e,0,null):16384&e.flags?M(e):e}var j="http://www.w3.org/1999/xlink",z="http://www.w3.org/XML/1998/namespace",H={"xlink:actuate":j,"xlink:arcrole":j,"xlink:href":j,"xlink:role":j,"xlink:show":j,"xlink:title":j,"xlink:type":j,"xml:base":z,"xml:lang":z,"xml:space":z};function G(e){return{onClick:e,onDblClick:e,onFocusIn:e,onFocusOut:e,onKeyDown:e,onKeyPress:e,onKeyUp:e,onMouseDown:e,onMouseMove:e,onMouseUp:e,onTouchEnd:e,onTouchMove:e,onTouchStart:e}}var U=G(0),K=G(null),Y=G(!0);function q(e,t){var n=t.$EV;return n||(n=t.$EV=G(null)),n[e]||1==++U[e]&&(K[e]=function(e){var t="onClick"===e||"onDblClick"===e?function(e){return function(t){0===t.button?$(t,!0,e,Z(t)):t.stopPropagation()}}(e):function(e){return function(t){$(t,!1,e,Z(t))}}(e);return document.addEventListener(f(e),t),t}(e)),n}function W(e,t){var n=t.$EV;n&&n[e]&&(0==--U[e]&&(document.removeEventListener(f(e),K[e]),K[e]=null),n[e]=null)}function $(e,t,n,o){var r=function(e){return c(e.composedPath)?e.composedPath()[0]:e.target}(e);do{if(t&&r.disabled)return;var a=r.$EV;if(a){var i=a[n];if(i&&(o.dom=r,i.event?i.event(i.data,e):i(e),e.cancelBubble))return}r=r.parentNode}while(!u(r))}function Q(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function X(){return this.defaultPrevented}function J(){return this.cancelBubble}function Z(e){var t={dom:document};return e.isDefaultPrevented=X,e.isPropagationStopped=J,e.stopPropagation=Q,Object.defineProperty(e,"currentTarget",{configurable:!0,get:function(){return t.dom}}),t}function ee(e,t,n){if(e[t]){var o=e[t];o.event?o.event(o.data,n):o(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function te(e,t){var n=function(n){var o=this.$V;if(o){var r=o.props||p,a=o.dom;if(l(e))ee(r,e,n);else for(var i=0;i-1&&t.options[i]&&(c=t.options[i].value),n&&a(c)&&(c=e.defaultValue),le(o,c)}}var se,pe,me=te("onInput",he),fe=te("onChange");function he(e,t,n){var o=e.value,r=t.value;if(a(o)){if(n){var i=e.defaultValue;a(i)||i===r||(t.defaultValue=i,t.value=i)}}else r!==o&&(t.defaultValue=o,t.value=o)}function Ce(e,t,n,o,r,a){64&e?ce(o,n):256&e?de(o,n,r,t):128&e&&he(o,n,r),a&&(n.$V=t)}function ge(e,t,n){64&e?function(e,t){oe(t.type)?(ne(e,"change",ae),ne(e,"click",ie)):ne(e,"input",re)}(t,n):256&e?function(e){ne(e,"change",ue)}(t):128&e&&function(e,t){ne(e,"input",me),t.onChange&&ne(e,"change",fe)}(t,n)}function be(e){return e.type&&oe(e.type)?!a(e.checked):!a(e.value)}function ve(e){e&&!S(e,null)&&e.current&&(e.current=null)}function Ne(e,t,n){e&&(c(e)||void 0!==e.current)&&n.push((function(){S(e,t)||void 0===e.current||(e.current=t)}))}function Ve(e,t){ye(e),V(e,t)}function ye(e){var t,n=e.flags,o=e.children;if(481&n){t=e.ref;var r=e.props;ve(t);var i=e.childFlags;if(!u(r))for(var l=Object.keys(r),d=0,s=l.length;d0;for(var c in i&&(a=be(n))&&ge(t,o,n),n)we(c,null,n[c],o,r,a,null);i&&Ce(t,e,o,n,!0,a)}function Se(e,t,n){var o=D(e.render(t,e.state,n)),r=n;return c(e.getChildContext)&&(r=d(n,e.getChildContext())),e.$CX=r,o}function Ie(e,t,n,o,r,a){var i=new t(n,o),l=i.$N=Boolean(t.getDerivedStateFromProps||i.getSnapshotBeforeUpdate);if(i.$SVG=r,i.$L=a,e.children=i,i.$BS=!1,i.context=o,i.props===p&&(i.props=n),l)i.state=_(i,n,i.state);else if(c(i.componentWillMount)){i.$BR=!0,i.componentWillMount();var d=i.$PS;if(!u(d)){var s=i.state;if(u(s))i.state=d;else for(var m in d)s[m]=d[m];i.$PS=null}i.$BR=!1}return i.$LI=Se(i,n,o),i}function Te(e,t,n,o,r,a){var i=e.flags|=16384;481&i?Ee(e,t,n,o,r,a):4&i?function(e,t,n,o,r,a){var i=Ie(e,e.type,e.props||p,n,o,a);Te(i.$LI,t,i.$CX,o,r,a),Me(e.ref,i,a)}(e,t,n,o,r,a):8&i?(!function(e,t,n,o,r,a){Te(e.children=D(function(e,t){return 32768&e.flags?e.type.render(e.props||p,e.ref,t):e.type(e.props||p,t)}(e,n)),t,n,o,r,a)}(e,t,n,o,r,a),Oe(e,a)):512&i||16&i?Ae(e,t,r):8192&i?function(e,t,n,o,r,a){var i=e.children,c=e.childFlags;12&c&&0===i.length&&(c=e.childFlags=2,i=e.children=O());2===c?Te(i,n,r,o,r,a):Pe(i,n,t,o,r,a)}(e,n,t,o,r,a):1024&i&&function(e,t,n,o,r){Te(e.children,e.ref,t,!1,null,r);var a=O();Ae(a,n,o),e.dom=a.dom}(e,n,t,r,a)}function Ae(e,t,n){var o=e.dom=document.createTextNode(e.children);u(t)||C(t,o,n)}function Ee(e,t,n,o,r,i){var c=e.flags,l=e.props,d=e.className,s=e.children,p=e.childFlags,m=e.dom=function(e,t){return t?document.createElementNS("http://www.w3.org/2000/svg",e):document.createElement(e)}(e.type,o=o||(32&c)>0);if(a(d)||""===d||(o?m.setAttribute("class",d):m.className=d),16===p)L(m,s);else if(1!==p){var f=o&&"foreignObject"!==e.type;2===p?(16384&s.flags&&(e.children=s=M(s)),Te(s,m,n,f,null,i)):8!==p&&4!==p||Pe(s,m,n,f,null,i)}u(t)||C(t,m,r),u(l)||Be(e,c,l,m,o),Ne(e.ref,m,i)}function Pe(e,t,n,o,r,a){for(var i=0;i0,u!==d){var f=u||p;if((c=d||p)!==p)for(var h in(s=(448&r)>0)&&(m=be(c)),c){var C=f[h],g=c[h];C!==g&&we(h,C,g,l,o,m,e)}if(f!==p)for(var b in f)a(c[b])&&!a(f[b])&&we(b,f[b],null,l,o,m,e)}var v=t.children,N=t.className;e.className!==N&&(a(N)?l.removeAttribute("class"):o?l.setAttribute("class",N):l.className=N);4096&r?function(e,t){e.textContent!==t&&(e.textContent=t)}(l,v):Fe(e.childFlags,t.childFlags,e.children,v,l,n,o&&"foreignObject"!==t.type,null,e,i);s&&Ce(r,t,l,c,!1,m);var V=t.ref,y=e.ref;y!==V&&(ve(y),Ne(V,l,i))}(e,t,o,r,m,s):4&m?function(e,t,n,o,r,a,i){var l=t.children=e.children;if(u(l))return;l.$L=i;var s=t.props||p,m=t.ref,f=e.ref,h=l.state;if(!l.$N){if(c(l.componentWillReceiveProps)){if(l.$BR=!0,l.componentWillReceiveProps(s,o),l.$UN)return;l.$BR=!1}u(l.$PS)||(h=d(h,l.$PS),l.$PS=null)}De(l,h,s,n,o,r,!1,a,i),f!==m&&(ve(f),Ne(m,l,i))}(e,t,n,o,r,l,s):8&m?function(e,t,n,o,r,i,l){var u=!0,d=t.props||p,s=t.ref,m=e.props,f=!a(s),h=e.children;f&&c(s.onComponentShouldUpdate)&&(u=s.onComponentShouldUpdate(m,d));if(!1!==u){f&&c(s.onComponentWillUpdate)&&s.onComponentWillUpdate(m,d);var C=t.type,g=D(32768&t.flags?C.render(d,s,o):C(d,o));Re(h,g,n,o,r,i,l),t.children=g,f&&c(s.onComponentDidUpdate)&&s.onComponentDidUpdate(m,d)}else t.children=h}(e,t,n,o,r,l,s):16&m?function(e,t){var n=t.children,o=t.dom=e.dom;n!==e.children&&(o.nodeValue=n)}(e,t):512&m?t.dom=e.dom:8192&m?function(e,t,n,o,r,a){var i=e.children,c=t.children,l=e.childFlags,u=t.childFlags,d=null;12&u&&0===c.length&&(u=t.childFlags=2,c=t.children=O());var s=0!=(2&u);if(12&l){var p=i.length;(8&l&&8&u||s||!s&&c.length>p)&&(d=N(i[p-1],!1).nextSibling)}Fe(l,u,i,c,n,o,r,d,e,a)}(e,t,n,o,r,s):function(e,t,n,o){var r=e.ref,a=t.ref,c=t.children;if(Fe(e.childFlags,t.childFlags,e.children,c,r,n,!1,null,e,o),t.dom=e.dom,r!==a&&!i(c)){var l=c.dom;g(r,l),h(a,l)}}(e,t,o,s)}function Fe(e,t,n,o,r,a,i,c,l,u){switch(e){case 2:switch(t){case 2:Re(n,o,r,a,i,c,u);break;case 1:Ve(n,r);break;case 16:ye(n),L(r,o);break;default:!function(e,t,n,o,r,a){ye(e),Pe(t,n,o,r,N(e,!0),a),V(e,n)}(n,o,r,a,i,u)}break;case 1:switch(t){case 2:Te(o,r,a,i,c,u);break;case 1:break;case 16:L(r,o);break;default:Pe(o,r,a,i,c,u)}break;case 16:switch(t){case 16:!function(e,t,n){e!==t&&(""!==e?n.firstChild.nodeValue=t:L(n,t))}(n,o,r);break;case 2:xe(r),Te(o,r,a,i,c,u);break;case 1:xe(r);break;default:xe(r),Pe(o,r,a,i,c,u)}break;default:switch(t){case 16:_e(n),L(r,o);break;case 2:ke(r,l,n),Te(o,r,a,i,c,u);break;case 1:ke(r,l,n);break;default:var d=0|n.length,s=0|o.length;0===d?s>0&&Pe(o,r,a,i,c,u):0===s?ke(r,l,n):8===t&&8===e?function(e,t,n,o,r,a,i,c,l,u){var d,s,p=a-1,m=i-1,f=0,h=e[f],C=t[f];e:{for(;h.key===C.key;){if(16384&C.flags&&(t[f]=C=M(C)),Re(h,C,n,o,r,c,u),e[f]=C,++f>p||f>m)break e;h=e[f],C=t[f]}for(h=e[p],C=t[m];h.key===C.key;){if(16384&C.flags&&(t[m]=C=M(C)),Re(h,C,n,o,r,c,u),e[p]=C,p--,m--,f>p||f>m)break e;h=e[p],C=t[m]}}if(f>p){if(f<=m)for(s=(d=m+1)m)for(;f<=p;)Ve(e[f++],n);else!function(e,t,n,o,r,a,i,c,l,u,d,s,p){var m,f,h,C=0,g=c,b=c,v=a-c+1,V=i-c+1,_=new Int32Array(V+1),x=v===o,k=!1,L=0,w=0;if(r<4||(v|V)<32)for(C=g;C<=a;++C)if(m=e[C],wc?k=!0:L=c,16384&f.flags&&(t[c]=f=M(f)),Re(m,f,l,n,u,d,p),++w;break}!x&&c>i&&Ve(m,l)}else x||Ve(m,l);else{var B={};for(C=b;C<=i;++C)B[t[C].key]=C;for(C=g;C<=a;++C)if(m=e[C],wg;)Ve(e[g++],l);_[c-b]=C+1,L>c?k=!0:L=c,16384&(f=t[c]).flags&&(t[c]=f=M(f)),Re(m,f,l,n,u,d,p),++w}else x||Ve(m,l);else x||Ve(m,l)}if(x)ke(l,s,e),Pe(t,l,n,u,d,p);else if(k){var S=function(e){var t=0,n=0,o=0,r=0,a=0,i=0,c=0,l=e.length;l>je&&(je=l,se=new Int32Array(l),pe=new Int32Array(l));for(;n>1]]0&&(pe[n]=se[a-1]),se[a]=n)}a=r+1;var u=new Int32Array(a);i=se[a-1];for(;a-- >0;)u[a]=i,i=pe[i],se[a]=0;return u}(_);for(c=S.length-1,C=V-1;C>=0;C--)0===_[C]?(16384&(f=t[L=C+b]).flags&&(t[L]=f=M(f)),Te(f,l,n,u,(h=L+1)=0;C--)0===_[C]&&(16384&(f=t[L=C+b]).flags&&(t[L]=f=M(f)),Te(f,l,n,u,(h=L+1)i?i:a,p=0;pi)for(p=s;p0&&b(r),x.v=!1,c(n)&&n(),c(k.renderComplete)&&k.renderComplete(i,t)}function He(e,t,n,o){void 0===n&&(n=null),void 0===o&&(o=p),ze(e,t,n,o)}"undefined"!=typeof document&&window.Node&&(Node.prototype.$EV=null,Node.prototype.$V=null);var Ge=[],Ue="undefined"!=typeof Promise?Promise.resolve().then.bind(Promise.resolve()):function(e){window.setTimeout(e,0)},Ke=!1;function Ye(e,t,n,o){var r=e.$PS;if(c(t)&&(t=t(r?d(e.state,r):e.state,e.props,e.context)),a(r))e.$PS=t;else for(var i in t)r[i]=t[i];if(e.$BR)c(n)&&e.$L.push(n.bind(e));else{if(!x.v&&0===Ge.length)return void $e(e,o,n);if(-1===Ge.indexOf(e)&&Ge.push(e),Ke||(Ke=!0,Ue(We)),c(n)){var l=e.$QU;l||(l=e.$QU=[]),l.push(n)}}}function qe(e){for(var t=e.$QU,n=0,o=t.length;n0&&b(r),x.v=!1}else e.state=e.$PS,e.$PS=null;c(n)&&n.call(e)}}var Qe=function(e,t){this.state=null,this.$BR=!1,this.$BS=!0,this.$PS=null,this.$LI=null,this.$UN=!1,this.$CX=null,this.$QU=null,this.$N=!1,this.$L=null,this.$SVG=!1,this.props=e||p,this.context=t||p};t.Component=Qe,Qe.prototype.forceUpdate=function(e){this.$UN||Ye(this,{},e,!0)},Qe.prototype.setState=function(e,t){this.$UN||this.$BS||Ye(this,e,t,!1)},Qe.prototype.render=function(e,t,n){return null};t.version="7.3.3"},function(e,t,n){"use strict";var o=function(e){var t,n=Object.prototype,o=n.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",i=r.asyncIterator||"@@asyncIterator",c=r.toStringTag||"@@toStringTag";function l(e,t,n,o){var r=t&&t.prototype instanceof h?t:h,a=Object.create(r.prototype),i=new w(o||[]);return a._invoke=function(e,t,n){var o=d;return function(r,a){if(o===p)throw new Error("Generator is already running");if(o===m){if("throw"===r)throw a;return S()}for(n.method=r,n.arg=a;;){var i=n.delegate;if(i){var c=x(i,n);if(c){if(c===f)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===d)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var l=u(e,t,n);if("normal"===l.type){if(o=n.done?m:s,l.arg===f)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=m,n.method="throw",n.arg=l.arg)}}}(e,n,i),a}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(o){return{type:"throw",arg:o}}}e.wrap=l;var d="suspendedStart",s="suspendedYield",p="executing",m="completed",f={};function h(){}function C(){}function g(){}var b={};b[a]=function(){return this};var v=Object.getPrototypeOf,N=v&&v(v(B([])));N&&N!==n&&o.call(N,a)&&(b=N);var V=g.prototype=h.prototype=Object.create(b);function y(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function _(e){var t;this._invoke=function(n,r){function a(){return new Promise((function(t,a){!function i(t,n,r,a){var c=u(e[t],e,n);if("throw"!==c.type){var l=c.arg,d=l.value;return d&&"object"==typeof d&&o.call(d,"__await")?Promise.resolve(d.__await).then((function(e){i("next",e,r,a)}),(function(e){i("throw",e,r,a)})):Promise.resolve(d).then((function(e){l.value=e,r(l)}),(function(e){return i("throw",e,r,a)}))}a(c.arg)}(n,r,t,a)}))}return t=t?t.then(a,a):a()}}function x(e,n){var o=e.iterator[n.method];if(o===t){if(n.delegate=null,"throw"===n.method){if(e.iterator["return"]&&(n.method="return",n.arg=t,x(e,n),"throw"===n.method))return f;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=u(o,e.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,f;var a=r.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,f):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,f)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function w(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function B(e){if(e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function n(){for(;++r=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var l=o.call(i,"catchLoc"),u=o.call(i,"finallyLoc");if(l&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&o.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),L(n),f}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var o=n.completion;if("throw"===o.type){var r=o.arg;L(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,o){return this.delegate={iterator:B(e),resultName:n,nextLoc:o},"next"===this.method&&(this.arg=t),f}},e}(e.exports);try{regeneratorRuntime=o}catch(r){Function("r","regeneratorRuntime = r")(o)}},function(e,t,n){"use strict";window.Int32Array||(window.Int32Array=Array)},function(e,t,n){"use strict";(function(e){ /*! loadCSS. [c]2017 Filament Group, Inc. MIT License */ -var n;n=void 0!==e?e:void 0,t.loadCSS=function(e,t,o,r){var a,i=n.document,c=i.createElement("link");if(t)a=t;else{var l=(i.body||i.getElementsByTagName("head")[0]).childNodes;a=l[l.length-1]}var u=i.styleSheets;if(r)for(var d in r)r.hasOwnProperty(d)&&c.setAttribute(d,r[d]);c.rel="stylesheet",c.href=e,c.media="only x",function m(e){if(i.body)return e();setTimeout((function(){m(e)}))}((function(){a.parentNode.insertBefore(c,t?a:a.nextSibling)}));var s=function f(e){for(var t=c.href,n=u.length;n--;)if(u[n].href===t)return e();setTimeout((function(){f(e)}))};function p(){c.addEventListener&&c.removeEventListener("load",p),c.media=o||"all"}return c.addEventListener&&c.addEventListener("load",p),c.onloadcssdefined=s,s(p),c}}).call(this,n(118))},function(e,t,n){"use strict";t.__esModule=!0,t.Achievements=t.Score=t.Achievement=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.name,n=e.desc,r=e.icon_class,i=e.value;return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Box,{className:r}),2,{style:{padding:"6px"}}),(0,o.createVNode)(1,"td",null,[(0,o.createVNode)(1,"h1",null,t,0),n,(0,o.createComponentVNode)(2,a.Box,{color:i?"good":"bad",content:i?"Unlocked":"Locked"})],0,{style:{"vertical-align":"top"}})],4,null,t)};t.Achievement=i;var c=function(e){var t=e.name,n=e.desc,r=e.icon_class,i=e.value;return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,a.Box,{className:r}),2,{style:{padding:"6px"}}),(0,o.createVNode)(1,"td",null,[(0,o.createVNode)(1,"h1",null,t,0),n,(0,o.createComponentVNode)(2,a.Box,{color:i>0?"good":"bad",content:i>0?"Earned "+i+" times":"Locked"})],0,{style:{"vertical-align":"top"}})],4,null,t)};t.Score=c;t.Achievements=function(e){var t=(0,r.useBackend)(e).data;return(0,o.createComponentVNode)(2,a.Tabs,{children:[t.categories.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e,children:(0,o.createComponentVNode)(2,a.Box,{as:"Table",children:t.achievements.filter((function(t){return t.category===e})).map((function(e){return e.score?(0,o.createComponentVNode)(2,c,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name):(0,o.createComponentVNode)(2,i,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name)}))})},e)})),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"High Scores",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:t.highscore.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e.name,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"#"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Key"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Score"})]}),Object.keys(e.scores).map((function(n,r){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",m:2,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:r+1}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:n===t.user_ckey&&"green",textAlign:"center",children:[0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",mr:2}),n,0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",ml:2})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:e.scores[n]})]},n)}))]})},e.name)}))})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BlockQuote=void 0;var o=n(1),r=n(12),a=n(17);t.BlockQuote=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["BlockQuote",t])},n)))}},function(e,t,n){"use strict";var o,r;t.__esModule=!0,t.VNodeFlags=t.ChildFlags=void 0,t.VNodeFlags=o,function(e){e[e.HtmlElement=1]="HtmlElement",e[e.ComponentUnknown=2]="ComponentUnknown",e[e.ComponentClass=4]="ComponentClass",e[e.ComponentFunction=8]="ComponentFunction",e[e.Text=16]="Text",e[e.SvgElement=32]="SvgElement",e[e.InputElement=64]="InputElement",e[e.TextareaElement=128]="TextareaElement",e[e.SelectElement=256]="SelectElement",e[e.Void=512]="Void",e[e.Portal=1024]="Portal",e[e.ReCreate=2048]="ReCreate",e[e.ContentEditable=4096]="ContentEditable",e[e.Fragment=8192]="Fragment",e[e.InUse=16384]="InUse",e[e.ForwardRef=32768]="ForwardRef",e[e.Normalized=65536]="Normalized",e[e.ForwardRefComponent=32776]="ForwardRefComponent",e[e.FormElement=448]="FormElement",e[e.Element=481]="Element",e[e.Component=14]="Component",e[e.DOMRef=2033]="DOMRef",e[e.InUseOrNormalized=81920]="InUseOrNormalized",e[e.ClearInUse=-16385]="ClearInUse",e[e.ComponentKnown=12]="ComponentKnown"}(o||(t.VNodeFlags=o={})),t.ChildFlags=r,function(e){e[e.UnknownChildren=0]="UnknownChildren",e[e.HasInvalidChildren=1]="HasInvalidChildren",e[e.HasVNodeChildren=2]="HasVNodeChildren",e[e.HasNonKeyedChildren=4]="HasNonKeyedChildren",e[e.HasKeyedChildren=8]="HasKeyedChildren",e[e.HasTextChildren=16]="HasTextChildren",e[e.MultipleChildren=12]="MultipleChildren"}(r||(t.ChildFlags=r={}))},function(e,t,n){"use strict";t.__esModule=!0,t.ColorBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.color,n=e.content,i=e.className,c=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["color","content","className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["ColorBox",i]),color:n?null:"transparent",backgroundColor:t,content:n||"."},c)))};t.ColorBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Collapsible=void 0;var o=n(1),r=n(17),a=n(114);var i=function(e){var t,n;function i(t){var n;n=e.call(this,t)||this;var o=t.open;return n.state={open:o||!1},n}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.prototype.render=function(){var e=this,t=this.props,n=this.state.open,i=t.children,c=t.color,l=void 0===c?"default":c,u=t.title,d=t.buttons,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(t,["children","color","title","buttons"]);return(0,o.createComponentVNode)(2,r.Box,{mb:1,children:[(0,o.createVNode)(1,"div","Table",[(0,o.createVNode)(1,"div","Table__cell",(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Button,Object.assign({fluid:!0,color:l,icon:n?"chevron-down":"chevron-right",onClick:function(){return e.setState({open:!n})}},s,{children:u}))),2),d&&(0,o.createVNode)(1,"div","Table__cell Table__cell--collapsing",d,0)],0),n&&(0,o.createComponentVNode)(2,r.Box,{mt:1,children:i})]})},i}(o.Component);t.Collapsible=i},function(e,t,n){"use strict";t.__esModule=!0,t.Dimmer=void 0;var o=n(1),r=n(17);t.Dimmer=function(e){var t=e.style,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Box,Object.assign({style:Object.assign({position:"absolute",top:0,bottom:0,left:0,right:0,"background-color":"rgba(0, 0, 0, 0.75)","z-index":1},t)},n)))}},function(e,t,n){"use strict";t.__esModule=!0,t.Dropdown=void 0;var o=n(1),r=n(12),a=n(17),i=n(87);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t,n;function l(t){var n;return(n=e.call(this,t)||this).state={selected:t.selected,open:!1},n.handleClick=function(){n.state.open&&n.setOpen(!1)},n}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentWillUnmount=function(){window.removeEventListener("click",this.handleClick)},u.setOpen=function(e){var t=this;this.setState({open:e}),e?(setTimeout((function(){return window.addEventListener("click",t.handleClick)})),this.menuRef.focus()):window.removeEventListener("click",this.handleClick)},u.setSelected=function(e){this.setState({selected:e}),this.setOpen(!1),this.props.onSelected(e)},u.buildMenu=function(){var e=this,t=this.props.options,n=(void 0===t?[]:t).map((function(t){return(0,o.createVNode)(1,"div","Dropdown__menuentry",t,0,{onClick:function(n){e.setSelected(t)}},t)}));return n.length?n:"No Options Found"},u.render=function(){var e=this,t=this.props,n=t.color,l=void 0===n?"default":n,u=t.over,d=t.width,s=(t.onClick,t.selected,c(t,["color","over","width","onClick","selected"])),p=s.className,m=c(s,["className"]),f=u?!this.state.open:this.state.open,h=this.state.open?(0,o.createVNode)(1,"div",(0,r.classes)(["Dropdown__menu",u&&"Dropdown__over"]),this.buildMenu(),0,{tabIndex:"-1",style:{width:d}},null,(function(t){e.menuRef=t})):null;return(0,o.createVNode)(1,"div","Dropdown",[(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({width:d,className:(0,r.classes)(["Dropdown__control","Button","Button--color--"+l,p])},m,{onClick:function(t){e.setOpen(!e.state.open)},children:[(0,o.createVNode)(1,"span","Dropdown__selected-text",this.state.selected,0),(0,o.createVNode)(1,"span","Dropdown__arrow-button",(0,o.createComponentVNode)(2,i.Icon,{name:f?"chevron-up":"chevron-down"}),2)]}))),h],0)},l}(o.Component);t.Dropdown=l},function(e,t,n){"use strict";t.__esModule=!0,t.FlexItem=t.computeFlexItemProps=t.Flex=t.computeFlexProps=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.direction,o=e.wrap,a=e.align,c=e.justify,l=e.spacing,u=void 0===l?0:l,d=i(e,["className","direction","wrap","align","justify","spacing"]);return Object.assign({className:(0,r.classes)(["Flex",u>0&&"Flex--spacing--"+u,t]),style:Object.assign({},d.style,{"flex-direction":n,"flex-wrap":o,"align-items":a,"justify-content":c})},d)};t.computeFlexProps=c;var l=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},c(e))))};t.Flex=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.grow,o=e.order,a=e.align,c=i(e,["className","grow","order","align"]);return Object.assign({className:(0,r.classes)(["Flex__item",t]),style:Object.assign({},c.style,{"flex-grow":n,order:o,"align-self":a})},c)};t.computeFlexItemProps=u;var d=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},u(e))))};t.FlexItem=d,d.defaultHooks=r.pureComponentHooks,l.Item=d},function(e,t,n){"use strict";t.__esModule=!0,t.NoticeBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["NoticeBox",t])},n)))};t.NoticeBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.NumberInput=void 0;var o=n(1),r=n(20),a=n(12),i=n(19),c=n(158),l=n(17);var u=function(e){var t,n;function u(t){var n;n=e.call(this,t)||this;var a=t.value;return n.inputRef=(0,o.createRef)(),n.state={value:a,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props.value;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:e.screenY,value:t,internalValue:t}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,a=n.props.onDrag;o&&a&&a(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,a=t.maxValue,i=t.step,c=t.stepPixelSize;n.setState((function(t){var n=Object.assign({},t),l=n.origin-e.screenY;if(t.dragging){var u=Number.isFinite(o)?o%i:0;n.internalValue=(0,r.clamp)(n.internalValue+l*i/c,o-i,a+i),n.value=(0,r.clamp)(n.internalValue-n.internalValue%i+u,o,a),n.origin=e.screenY}else Math.abs(l)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,a=n.state,i=a.dragging,c=a.value,l=a.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!i,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),i)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var u=n.inputRef.current;u.value=l;try{u.focus(),u.select()}catch(d){}}},n}return n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,u.prototype.render=function(){var e=this,t=this.state,n=t.dragging,u=t.editing,d=t.value,s=t.suppressingFlicker,p=this.props,m=p.className,f=p.fluid,h=p.animated,C=p.value,g=p.unit,b=p.minValue,v=p.maxValue,N=p.height,V=p.width,y=p.lineHeight,_=p.fontSize,x=p.format,k=p.onChange,L=p.onDrag,w=C;(n||s)&&(w=d);var B=function(e){return(0,o.createVNode)(1,"div","NumberInput__content",e+(g?" "+g:""),0,{unselectable:i.tridentVersion<=4})},S=h&&!n&&!s&&(0,o.createComponentVNode)(2,c.AnimatedNumber,{value:w,format:x,children:B})||B(x?x(w):w);return(0,o.createComponentVNode)(2,l.Box,{className:(0,a.classes)(["NumberInput",f&&"NumberInput--fluid",m]),minWidth:V,minHeight:N,lineHeight:y,fontSize:_,onMouseDown:this.handleDragStart,children:[(0,o.createVNode)(1,"div","NumberInput__barContainer",(0,o.createVNode)(1,"div","NumberInput__bar",null,1,{style:{height:(0,r.clamp)((w-b)/(v-b)*100,0,100)+"%"}}),2),S,(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:u?undefined:"none",height:N,"line-height":y,"font-size":_},onBlur:function(t){if(u){var n=(0,r.clamp)(t.target.value,b,v);e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),L&&L(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,b,v);return e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),void(L&&L(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef)]})},u}(o.Component);t.NumberInput=u,u.defaultHooks=a.pureComponentHooks,u.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50}},function(e,t,n){"use strict";t.__esModule=!0,t.ProgressBar=void 0;var o=n(1),r=n(12),a=n(20),i=function(e){var t=e.value,n=e.minValue,i=void 0===n?0:n,c=e.maxValue,l=void 0===c?1:c,u=e.ranges,d=void 0===u?{}:u,s=e.content,p=e.children,m=(t-i)/(l-i),f=s!==undefined||p!==undefined,h=e.color;if(!h)for(var C=0,g=Object.keys(d);C=v[0]&&t<=v[1]){h=b;break}}return h||(h="default"),(0,o.createVNode)(1,"div",(0,r.classes)(["ProgressBar","ProgressBar--color--"+h]),[(0,o.createVNode)(1,"div","ProgressBar__fill",null,1,{style:{width:100*(0,a.clamp)(m,0,1)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",[f&&s,f&&p,!f&&(0,a.toFixed)(100*m)+"%"],0)],4)};t.ProgressBar=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Section=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=e.title,i=e.level,c=void 0===i?1:i,l=e.buttons,u=e.content,d=e.children,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","title","level","buttons","content","children"]),p=!(0,r.isFalsy)(n)||!(0,r.isFalsy)(l),m=!(0,r.isFalsy)(u)||!(0,r.isFalsy)(d);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Section","Section--level--"+c,t])},s,{children:[p&&(0,o.createVNode)(1,"div","Section__title",[(0,o.createVNode)(1,"span","Section__titleText",n,0),(0,o.createVNode)(1,"div","Section__buttons",l,0)],4),m&&(0,o.createVNode)(1,"div","Section__content",[u,d],0)]})))};t.Section=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Tab=t.Tabs=void 0;var o=n(1),r=n(12),a=n(17),i=n(114);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t=e,n=Array.isArray(t),o=0;for(t=n?t:t[Symbol.iterator]();;){var r;if(n){if(o>=t.length)break;r=t[o++]}else{if((o=t.next()).done)break;r=o.value}var a=r;if(!a.props||"Tab"!==a.props.__type__){var i=JSON.stringify(a,null,2);throw new Error(" only accepts children of type .This is what we received: "+i)}}},u=function(e){var t,n;function u(t){var n;return(n=e.call(this,t)||this).state={activeTabKey:null},n}n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=u.prototype;return d.getActiveTab=function(){var e=this.state,t=this.props,n=(0,r.normalizeChildren)(t.children);l(n);var o=t.activeTab||e.activeTabKey,a=n.find((function(e){return(e.key||e.props.label)===o}));return a||(a=n[0],o=a&&(a.key||a.props.label)),{tabs:n,activeTab:a,activeTabKey:o}},d.render=function(){var e=this,t=this.props,n=t.className,l=t.vertical,u=(t.children,c(t,["className","vertical","children"])),d=this.getActiveTab(),s=d.tabs,p=d.activeTab,m=d.activeTabKey,f=null;return p&&(f=p.props.content||p.props.children),"function"==typeof f&&(f=f(m)),(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Tabs",l&&"Tabs--vertical",n])},u,{children:[(0,o.createVNode)(1,"div","Tabs__tabBox",s.map((function(t){var n=t.props,a=n.className,l=n.label,u=(n.content,n.children,n.onClick),d=n.highlight,s=c(n,["className","label","content","children","onClick","highlight"]),p=t.key||t.props.label,f=t.active||p===m;return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Button,Object.assign({className:(0,r.classes)(["Tabs__tab",f&&"Tabs__tab--active",d&&!f&&"color-yellow",a]),selected:f,color:"transparent",onClick:function(n){e.setState({activeTabKey:p}),u&&u(n,t)}},s,{children:l}),p))})),0),(0,o.createVNode)(1,"div","Tabs__content",f||null,0)]})))},u}(o.Component);t.Tabs=u;var d=function(e){return null};t.Tab=d,d.defaultProps={__type__:"Tab"},u.Tab=d},function(e,t,n){"use strict";t.__esModule=!0,t.TitleBar=void 0;var o=n(1),r=n(12),a=n(31),i=n(19),c=n(37),l=n(87),u=function(e){switch(e){case c.UI_INTERACTIVE:return"good";case c.UI_UPDATE:return"average";case c.UI_DISABLED:default:return"bad"}},d=function(e){var t=e.className,n=e.title,c=e.status,d=e.fancy,s=e.onDragStart,p=e.onClose;return(0,o.createVNode)(1,"div",(0,r.classes)(["TitleBar",t]),[(0,o.createComponentVNode)(2,l.Icon,{className:"TitleBar__statusIcon",color:u(c),name:"eye"}),(0,o.createVNode)(1,"div","TitleBar__title",n===n.toLowerCase()?(0,a.toTitleCase)(n):n,0),(0,o.createVNode)(1,"div","TitleBar__dragZone",null,1,{onMousedown:function(e){return d&&s(e)}}),!!d&&(0,o.createVNode)(1,"div","TitleBar__close TitleBar__clickable",i.tridentVersion<=4?"x":"\xd7",0,{onclick:p})],0)};t.TitleBar=d,d.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=void 0;var o=n(1),r=n(23),a=n(17),i=n(12),c=n(19);var l=function(e,t,n,o){if(0===e.length)return[];var a=(0,r.zipWith)(Math.min).apply(void 0,e),i=(0,r.zipWith)(Math.max).apply(void 0,e);return n!==undefined&&(a[0]=n[0],i[0]=n[1]),o!==undefined&&(a[1]=o[0],i[1]=o[1]),(0,r.map)((function(e){return(0,r.zipWith)((function(e,t,n,o){return(e-t)/(n-t)*o}))(e,a,i,t)}))(e)},u=function(e){for(var t="",n=0;n=0||(r[n]=e[n]);return r}(t,["data","rangeX","rangeY","fillColor","strokeColor","strokeWidth"]),g=this.state.viewBox,b=l(r,g,i,c);if(b.length>0){var v=b[0],N=b[b.length-1];b.push([g[0]+h,N[1]]),b.push([g[0]+h,-h]),b.push([-h,-h]),b.push([-h,v[1]])}var V=u(b);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({position:"relative"},C,{children:function(t){return(0,o.normalizeProps)((0,o.createVNode)(1,"div",null,(0,o.createVNode)(32,"svg",null,(0,o.createVNode)(32,"polyline",null,null,1,{transform:"scale(1, -1) translate(0, -"+g[1]+")",fill:s,stroke:m,"stroke-width":h,points:V}),2,{viewBox:"0 0 "+g[0]+" "+g[1],preserveAspectRatio:"none",style:{position:"absolute",top:0,left:0,right:0,bottom:0,overflow:"hidden"}}),2,Object.assign({},t),null,e.ref))}})))},r}(o.Component);d.defaultHooks=i.pureComponentHooks;var s={Line:c.tridentVersion<=4?function(e){return null}:d};t.Chart=s},function(e,t,n){"use strict";t.__esModule=!0,t.AiAirlock=void 0;var o=n(1),r=n(3),a=n(2);t.AiAirlock=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c={2:{color:"good",localStatusText:"Offline"},1:{color:"average",localStatusText:"Caution"},0:{color:"bad",localStatusText:"Optimal"}},l=c[i.power.main]||c[0],u=c[i.power.backup]||c[0],d=c[i.shock]||c[0];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main",color:l.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.main,content:"Disrupt",onClick:function(){return n("disrupt-main")}}),children:[i.power.main?"Online":"Offline"," ",i.wires.main_1&&i.wires.main_2?i.power.main_timeleft>0&&"["+i.power.main_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Backup",color:u.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.backup,content:"Disrupt",onClick:function(){return n("disrupt-backup")}}),children:[i.power.backup?"Online":"Offline"," ",i.wires.backup_1&&i.wires.backup_2?i.power.backup_timeleft>0&&"["+i.power.backup_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Electrify",color:d.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",disabled:!(i.wires.shock&&0===i.shock),content:"Restore",onClick:function(){return n("shock-restore")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Temporary",onClick:function(){return n("shock-temp")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Permanent",onClick:function(){return n("shock-perm")}})],4),children:[2===i.shock?"Safe":"Electrified"," ",(i.wires.shock?i.shock_timeleft>0&&"["+i.shock_timeleft+"s]":"[Wires have been cut!]")||-1===i.shock_timeleft&&"[Permanent]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access and Door Control",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID Scan",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.id_scanner?"power-off":"times",content:i.id_scanner?"Enabled":"Disabled",selected:i.id_scanner,disabled:!i.wires.id_scanner,onClick:function(){return n("idscan-toggle")}}),children:!i.wires.id_scanner&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Access",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.emergency?"power-off":"times",content:i.emergency?"Enabled":"Disabled",selected:i.emergency,onClick:function(){return n("emergency-toggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolts",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.locked?"lock":"unlock",content:i.locked?"Lowered":"Raised",selected:i.locked,disabled:!i.wires.bolts,onClick:function(){return n("bolt-toggle")}}),children:!i.wires.bolts&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolt Lights",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.lights?"power-off":"times",content:i.lights?"Enabled":"Disabled",selected:i.lights,disabled:!i.wires.lights,onClick:function(){return n("light-toggle")}}),children:!i.wires.lights&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Force Sensors",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.safe?"power-off":"times",content:i.safe?"Enabled":"Disabled",selected:i.safe,disabled:!i.wires.safe,onClick:function(){return n("safe-toggle")}}),children:!i.wires.safe&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Timing Safety",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.speed?"power-off":"times",content:i.speed?"Enabled":"Disabled",selected:i.speed,disabled:!i.wires.timing,onClick:function(){return n("speed-toggle")}}),children:!i.wires.timing&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Control",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.opened?"sign-out-alt":"sign-in-alt",content:i.opened?"Open":"Closed",selected:i.opened,disabled:i.locked||i.welded,onClick:function(){return n("open-close")}}),children:!(!i.locked&&!i.welded)&&(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("[Door is "),i.locked?"bolted":"",i.locked&&i.welded?" and ":"",i.welded?"welded":"",(0,o.createTextVNode)("!]")],0)})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.AirAlarm=void 0;var o=n(1),r=n(20),a=n(31),i=n(3),c=n(2),l=n(37),u=n(69);t.AirAlarm=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.data,c=a.locked&&!a.siliconUser;return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.InterfaceLockNoticeBox,{siliconUser:a.siliconUser,locked:a.locked,onLockStatusChange:function(){return r("lock")}}),(0,o.createComponentVNode)(2,d,{state:t}),!c&&(0,o.createComponentVNode)(2,p,{state:t})],0)};var d=function(e){var t=(0,i.useBackend)(e).data,n=(t.environment_data||[]).filter((function(e){return e.value>=.01})),a={0:{color:"good",localStatusText:"Optimal"},1:{color:"average",localStatusText:"Caution"},2:{color:"bad",localStatusText:"Danger (Internals Required)"}},l=a[t.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.Section,{title:"Air Status",children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[n.length>0&&(0,o.createFragment)([n.map((function(e){var t=a[e.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:e.name,color:t.color,children:[(0,r.toFixed)(e.value,2),e.unit]},e.name)})),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Local status",color:l.color,children:l.localStatusText}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Area status",color:t.atmos_alarm||t.fire_alarm?"bad":"good",children:(t.atmos_alarm?"Atmosphere Alarm":t.fire_alarm&&"Fire Alarm")||"Nominal"})],0)||(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Cannot obtain air sample for analysis."}),!!t.emagged&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Safety measures offline. Device may exhibit abnormal behavior."})]})})},s={home:{title:"Air Controls",component:function(){return m}},vents:{title:"Vent Controls",component:function(){return f}},scrubbers:{title:"Scrubber Controls",component:function(){return C}},modes:{title:"Operating Mode",component:function(){return b}},thresholds:{title:"Alarm Thresholds",component:function(){return v}}},p=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.config,l=s[a.screen]||s.home,u=l.component();return(0,o.createComponentVNode)(2,c.Section,{title:l.title,buttons:"home"!==a.screen&&(0,o.createComponentVNode)(2,c.Button,{icon:"arrow-left",content:"Back",onClick:function(){return r("tgui:view",{screen:"home"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},m=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data,a=r.mode,l=r.atmos_alarm;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:l?"exclamation-triangle":"exclamation",color:l&&"caution",content:"Area Atmosphere Alarm",onClick:function(){return n(l?"reset":"alarm")}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:3===a?"exclamation-triangle":"exclamation",color:3===a&&"danger",content:"Panic Siphon",onClick:function(){return n("mode",{mode:3===a?1:3})}}),(0,o.createComponentVNode)(2,c.Box,{mt:2}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"Vent Controls",onClick:function(){return n("tgui:view",{screen:"vents"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"filter",content:"Scrubber Controls",onClick:function(){return n("tgui:view",{screen:"scrubbers"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"cog",content:"Operating Mode",onClick:function(){return n("tgui:view",{screen:"modes"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"chart-bar",content:"Alarm Thresholds",onClick:function(){return n("tgui:view",{screen:"thresholds"})}})],4)},f=function(e){var t=e.state,n=(0,i.useBackend)(e).data.vents;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},h=function(e){var t=e.id_tag,n=e.long_name,r=e.power,l=e.checks,u=e.excheck,d=e.incheck,s=e.direction,p=e.external,m=e.internal,f=e.extdefault,h=e.intdefault,C=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(n),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:r?"power-off":"times",selected:r,content:r?"On":"Off",onClick:function(){return C("power",{id_tag:t,val:Number(!r)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:"release"===s?"Pressurizing":"Releasing"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,c.Button,{icon:"sign-in-alt",content:"Internal",selected:d,onClick:function(){return C("incheck",{id_tag:t,val:l})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"External",selected:u,onClick:function(){return C("excheck",{id_tag:t,val:l})}})]}),!!d&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Internal Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(m),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_internal_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:h,content:"Reset",onClick:function(){return C("reset_internal_pressure",{id_tag:t})}})]}),!!u&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"External Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(p),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_external_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:f,content:"Reset",onClick:function(){return C("reset_external_pressure",{id_tag:t})}})]})]})})},C=function(e){var t=e.state,n=(0,i.useBackend)(e).data.scrubbers;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},g=function(e){var t=e.long_name,n=e.power,r=e.scrubbing,u=e.id_tag,d=e.widenet,s=e.filter_types,p=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(t),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:n?"power-off":"times",content:n?"On":"Off",selected:n,onClick:function(){return p("power",{id_tag:u,val:Number(!n)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,c.Button,{icon:r?"filter":"sign-in-alt",color:r||"danger",content:r?"Scrubbing":"Siphoning",onClick:function(){return p("scrubbing",{id_tag:u,val:Number(!r)})}}),(0,o.createComponentVNode)(2,c.Button,{icon:d?"expand":"compress",selected:d,content:d?"Expanded range":"Normal range",onClick:function(){return p("widenet",{id_tag:u,val:Number(!d)})}})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Filters",children:r&&s.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,l.getGasLabel)(e.gas_id,e.gas_name),title:e.gas_name,selected:e.enabled,onClick:function(){return p("toggle_filter",{id_tag:u,val:e.gas_id})}},e.gas_id)}))||"N/A"})]})})},b=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data.modes;return r&&0!==r.length?r.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:e.selected?"check-square-o":"square-o",selected:e.selected,color:e.selected&&e.danger&&"danger",content:e.name,onClick:function(){return n("mode",{mode:e.mode})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1})],4,e.mode)})):"Nothing to show"},v=function(e){var t=(0,i.useBackend)(e),n=t.act,a=t.data.thresholds;return(0,o.createVNode)(1,"table","LabeledList",[(0,o.createVNode)(1,"thead",null,(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","color-bad","min2",16),(0,o.createVNode)(1,"td","color-average","min1",16),(0,o.createVNode)(1,"td","color-average","max1",16),(0,o.createVNode)(1,"td","color-bad","max2",16)],4),2),(0,o.createVNode)(1,"tbody",null,a.map((function(e){return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","LabeledList__label",e.name,0),e.settings.map((function(e){return(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,c.Button,{content:(0,r.toFixed)(e.selected,2),onClick:function(){return n("threshold",{env:e.env,"var":e.val})}}),2,null,e.val)}))],0,null,e.name)})),0)],4,{style:{width:"100%"}})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirlockElectronics=void 0;var o=n(1),r=n(3),a=n(2);t.AirlockElectronics=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.regions||[],l={0:{icon:"times-circle"},1:{icon:"stop-circle"},2:{icon:"check-circle"}};return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Main",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access Required",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.oneAccess?"unlock":"lock",content:i.oneAccess?"One":"All",onClick:function(){return n("one_access")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mass Modify",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"check-double",content:"Grant All",onClick:function(){return n("grant_all")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Clear All",onClick:function(){return n("clear_all")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Unrestricted Access",children:[(0,o.createComponentVNode)(2,a.Button,{icon:1&i.unres_direction?"check-square-o":"square-o",content:"North",selected:1&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"1"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:2&i.unres_direction?"check-square-o":"square-o",content:"East",selected:2&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"2"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:4&i.unres_direction?"check-square-o":"square-o",content:"South",selected:4&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"4"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:8&i.unres_direction?"check-square-o":"square-o",content:"West",selected:8&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"8"})}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access",children:(0,o.createComponentVNode)(2,a.Box,{height:"261px",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:c.map((function(e){var t=e.name,r=e.accesses||[],i=l[function(e){var t=!1,n=!1;return e.forEach((function(e){e.req?t=!0:n=!0})),!t&&n?0:t&&n?1:2}(r)].icon;return(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:i,label:t,children:function(){return r.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:e.req?"check-square-o":"square-o",content:e.name,selected:e.req,onClick:function(){return n("set",{access:e.id})}})},e.id)}))}},t)}))})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Apc=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Apc=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u={2:{color:"good",externalPowerText:"External Power",chargingText:"Fully Charged"},1:{color:"average",externalPowerText:"Low External Power",chargingText:"Charging"},0:{color:"bad",externalPowerText:"No External Power",chargingText:"Not Charging"}},d={1:{icon:"terminal",content:"Override Programming",action:"hack"},2:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"},3:{icon:"caret-square-left",content:"Return to Main Core",action:"deoccupy"},4:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"}},s=u[c.externalPower]||u[0],p=u[c.chargingStatus]||u[0],m=c.powerChannels||[],f=d[c.malfStatus]||d[0],h=c.powerCellStatus/100;return c.failTime>0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createVNode)(1,"b",null,(0,o.createVNode)(1,"h3",null,"SYSTEM FAILURE",16),2),(0,o.createVNode)(1,"i",null,"I/O regulators malfunction detected! Waiting for system reboot...",16),(0,o.createVNode)(1,"br"),"Automatic reboot in ",c.failTime," seconds...",(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reboot Now",onClick:function(){return n("reboot")}})]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:c.siliconUser,locked:c.locked,onLockStatusChange:function(){return n("lock")}}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main Breaker",color:s.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",content:c.isOperating?"On":"Off",selected:c.isOperating&&!l,disabled:l,onClick:function(){return n("breaker")}}),children:["[ ",s.externalPowerText," ]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power Cell",children:(0,o.createComponentVNode)(2,a.ProgressBar,{color:"good",value:h})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",color:p.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.chargeMode?"sync":"close",content:c.chargeMode?"Auto":"Off",disabled:l,onClick:function(){return n("charge")}}),children:["[ ",p.chargingText," ]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Channels",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[m.map((function(e){var t=e.topicParams;return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.title,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,mx:2,color:e.status>=2?"good":"bad",children:e.status>=2?"On":"Off"}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:!l&&(1===e.status||3===e.status),disabled:l,onClick:function(){return n("channel",t.auto)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:"On",selected:!l&&2===e.status,disabled:l,onClick:function(){return n("channel",t.on)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:!l&&0===e.status,disabled:l,onClick:function(){return n("channel",t.off)}})],4),children:e.powerLoad},e.title)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Total Load",children:(0,o.createVNode)(1,"b",null,c.totalLoad,0)})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Misc",buttons:!!c.siliconUser&&(0,o.createFragment)([!!c.malfStatus&&(0,o.createComponentVNode)(2,a.Button,{icon:f.icon,content:f.content,color:"bad",onClick:function(){return n(f.action)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Overload",onClick:function(){return n("overload")}})],0),children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cover Lock",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.coverLocked?"lock":"unlock",content:c.coverLocked?"Engaged":"Disengaged",disabled:l,onClick:function(){return n("cover")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.emergencyLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("emergency_lighting")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Night Shift Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.nightshiftLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("toggle_nightshift")}})})]}),c.hijackable&&(0,o.createComponentVNode)(2,a.Section,{title:"Hijacking",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"unlock",content:"Hijack",disabled:c.hijacker,onClick:function(){return n("hijack")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lockdown",disabled:!c.lockdownavail,onClick:function(){return n("lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Drain",disabled:!c.drainavail,onClick:function(){return n("drain")}})],4)})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosAlertConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.priority||[],l=i.minor||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Alarms",children:(0,o.createVNode)(1,"ul",null,[c.length>0?c.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"bad",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Priority Alerts",16),l.length>0?l.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"average",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Minor Alerts",16)],0)})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosControlConsole=void 0;var o=n(1),r=n(23),a=n(20),i=n(3),c=n(2);t.AtmosControlConsole=function(e){var t=(0,i.useBackend)(e),n=t.act,l=t.data,u=l.sensors||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Section,{title:!!l.tank&&u[0].long_name,children:u.map((function(e){var t=e.gases||{};return(0,o.createComponentVNode)(2,c.Section,{title:!l.tank&&e.long_name,level:2,children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure",children:(0,a.toFixed)(e.pressure,2)+" kPa"}),!!e.temperature&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Temperature",children:(0,a.toFixed)(e.temperature,2)+" K"}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,children:(0,a.toFixed)(e,2)+"%"})}))(t)]})},e.id_tag)}))}),l.tank&&(0,o.createComponentVNode)(2,c.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"undo",content:"Reconnect",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Injector",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.inputting?"power-off":"times",content:l.inputting?"Injecting":"Off",selected:l.inputting,onClick:function(){return n("input")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Rate",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:l.inputRate,unit:"L/s",width:"63px",minValue:0,maxValue:200,suppressFlicker:2e3,onChange:function(e,t){return n("rate",{rate:t})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Regulator",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.outputting?"power-off":"times",content:l.outputting?"Open":"Closed",selected:l.outputting,onClick:function(){return n("output")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Pressure",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:parseFloat(l.outputPressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,suppressFlicker:2e3,onChange:function(e,t){return n("pressure",{pressure:t})}})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosFilter=void 0;var o=n(1),r=n(3),a=n(2),i=n(37);t.AtmosFilter=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.filter_types||[];return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(c.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onDrag:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:c.rate===c.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Filter",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:e.selected,content:(0,i.getGasLabel)(e.id,e.name),onClick:function(){return n("filter",{mode:e.id})}},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosMixer=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosMixer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.set_pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.set_pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 1",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node1_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node1",{concentration:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 2",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node2_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node2",{concentration:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosPump=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosPump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),i.max_rate?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onChange:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.rate===i.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}):(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BankMachine=void 0;var o=n(1),r=n(3),a=n(2);t.BankMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.current_balance,l=i.siphoning,u=i.station_name;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:u+" Vault",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Balance",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"times":"sync",content:l?"Stop Siphoning":"Siphon Credits",selected:l,onClick:function(){return n(l?"halt":"siphon")}}),children:c+" cr"})})}),(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Authorized personnel only"})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BluespaceArtillery=void 0;var o=n(1),r=n(3),a=n(2);t.BluespaceArtillery=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.notice,l=i.connected,u=i.unlocked,d=i.target;return(0,o.createFragment)([!!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:c}),l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"crosshairs",disabled:!u,onClick:function(){return n("recalibrate")}}),children:(0,o.createComponentVNode)(2,a.Box,{color:d?"average":"bad",fontSize:"25px",children:d||"No Target Set"})}),(0,o.createComponentVNode)(2,a.Section,{children:u?(0,o.createComponentVNode)(2,a.Box,{style:{margin:"auto"},children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"FIRE",color:"bad",disabled:!d,fontSize:"30px",textAlign:"center",lineHeight:"46px",onClick:function(){return n("fire")}})}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{color:"bad",fontSize:"18px",children:"Bluespace artillery is currently locked."}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"Awaiting authorization via keycard reader from at minimum two station heads."})],4)})],4):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Maintenance",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:"Complete Deployment",onClick:function(){return n("build")}})})})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Bepis=void 0;var o=n(1),r=(n(31),n(19)),a=n(2);t.Bepis=function(e){var t=e.state,n=t.config,i=t.data,c=n.ref,l=i.amount;return(0,o.createComponentVNode)(2,a.Section,{title:"Business Exploration Protocol Incubation Sink",children:[(0,o.createComponentVNode)(2,a.Section,{title:"Information",backgroundColor:"#450F44",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.manual_power?"Off":"On",selected:!i.manual_power,onClick:function(){return(0,r.act)(c,"toggle_power")}}),children:"All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. performs hundreds of tests a second using electrical and financial resources to invent new products, or discover new technologies otherwise overlooked for being too risky or too niche to produce!"}),(0,o.createComponentVNode)(2,a.Section,{title:"Payer's Account",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"redo-alt",content:"Reset Account",onClick:function(){return(0,r.act)(c,"account_reset")}}),children:["Console is currently being operated by ",i.account_owner?i.account_owner:"no one","."]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Stored Data and Statistics",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposited Credits",children:i.stored_cash}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Investment Variability",children:[i.accuracy_percentage,"%"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Innovation Bonus",children:i.positive_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Risk Offset",color:"bad",children:i.negative_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposit Amount",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l,unit:"Credits",minValue:100,maxValue:3e4,step:100,stepPixelSize:2,onChange:function(e,t){return(0,r.act)(c,"amount",{amount:t})}})})]})}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"donate",content:"Deposit Credits",disabled:1===i.manual_power||1===i.silicon_check,onClick:function(){return(0,r.act)(c,"deposit_cash")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Withdraw Credits",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"withdraw_cash")}})]})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Market Data and Analysis",children:[(0,o.createComponentVNode)(2,a.Box,{children:["Average technology cost: ",i.mean_value]}),i.error_name&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Previous Failure Reason: Deposited cash value too low. Please insert more money for future success."}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"microscope",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"begin_experiment")},content:"Begin Testing"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BorgPanel=void 0;var o=n(1),r=n(3),a=n(2);t.BorgPanel=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.borg||{},l=i.cell||{},u=l.charge/l.maxcharge,d=i.channels||[],s=i.modules||[],p=i.upgrades||[],m=i.ais||[],f=i.laws||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:c.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Rename",onClick:function(){return n("rename")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.emagged?"check-square-o":"square-o",content:"Emagged",selected:c.emagged,onClick:function(){return n("toggle_emagged")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.lockdown?"check-square-o":"square-o",content:"Locked Down",selected:c.lockdown,onClick:function(){return n("toggle_lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.scrambledcodes?"check-square-o":"square-o",content:"Scrambled Codes",selected:c.scrambledcodes,onClick:function(){return n("toggle_scrambledcodes")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:[l.missing?(0,o.createVNode)(1,"span","color-bad","No cell installed",16):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,content:l.charge+" / "+l.maxcharge}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("set_charge")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Change",onClick:function(){return n("change_cell")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Remove",color:"bad",onClick:function(){return n("remove_cell")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radio Channels",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_radio",{channel:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Module",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:c.active_module===e.type?"check-square-o":"square-o",content:e.name,selected:c.active_module===e.type,onClick:function(){return n("setmodule",{module:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Upgrades",children:p.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_upgrade",{upgrade:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Master AI",children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.connected?"check-square-o":"square-o",content:e.name,selected:e.connected,onClick:function(){return n("slavetoai",{slavetoai:e.ref})}},e.ref)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Laws",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.lawupdate?"check-square-o":"square-o",content:"Lawsync",selected:c.lawupdate,onClick:function(){return n("toggle_lawupdate")}}),children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e},e)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BrigTimer=void 0;var o=n(1),r=n(3),a=n(2);t.BrigTimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Cell Timer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:i.timing?"Stop":"Start",selected:i.timing,onClick:function(){return n(i.timing?"stop":"start")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:i.flash_charging?"Recharging":"Flash",disabled:i.flash_charging,onClick:function(){return n("flash")}})],4),children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",onClick:function(){return n("time",{adjust:-600})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",onClick:function(){return n("time",{adjust:-100})}})," ",String(i.minutes).padStart(2,"0"),":",String(i.seconds).padStart(2,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",onClick:function(){return n("time",{adjust:100})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",onClick:function(){return n("time",{adjust:600})}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Short",onClick:function(){return n("preset",{preset:"short"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Medium",onClick:function(){return n("preset",{preset:"medium"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Long",onClick:function(){return n("preset",{preset:"long"})}})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Canister=void 0;var o=n(1),r=n(3),a=n(2);t.Canister=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:["The regulator ",i.hasHoldingTank?"is":"is not"," connected to a tank."]}),(0,o.createComponentVNode)(2,a.Section,{title:"Canister",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Relabel",onClick:function(){return n("relabel")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.tankPressure})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:i.portConnected?"good":"average",content:i.portConnected?"Connected":"Not Connected"}),!!i.isPrototype&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.restricted?"lock":"unlock",color:"caution",content:i.restricted?"Restricted to Engineering":"Public",onClick:function(){return n("restricted")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Valve",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Release Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.releasePressure/(i.maxReleasePressure-i.minReleasePressure),children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.releasePressure})," kPa"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"undo",disabled:i.releasePressure===i.defaultReleasePressure,content:"Reset",onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:i.releasePressure<=i.minReleasePressure,content:"Min",onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("pressure",{pressure:"input"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:i.releasePressure>=i.maxReleasePressure,content:"Max",onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Valve",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.valveOpen?"unlock":"lock",color:i.valveOpen?i.hasHoldingTank?"caution":"danger":null,content:i.valveOpen?"Open":"Closed",onClick:function(){return n("valve")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",buttons:!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",color:i.valveOpen&&"danger",content:"Eject",onClick:function(){return n("eject")}}),children:[!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:i.holdingTank.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.holdingTank.tankPressure})," kPa"]})]}),!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Holding Tank"})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoExpress=t.Cargo=void 0;var o=n(1),r=n(23),a=n(19),i=n(2),c=n(69);t.Cargo=function(e){var t=e.state,n=t.config,r=t.data,c=n.ref,s=r.supplies||{},p=r.requests||[],m=r.cart||[],f=m.reduce((function(e,t){return e+t.cost}),0),h=!r.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:1,children:[0===m.length&&"Cart is empty",1===m.length&&"1 item",m.length>=2&&m.length+" items"," ",f>0&&"("+f+" cr)"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"transparent",content:"Clear",onClick:function(){return(0,a.act)(c,"clear")}})],4);return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle",children:r.docked&&!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{content:r.location,onClick:function(){return(0,a.act)(c,"send")}})||r.location}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"CentCom Message",children:r.message}),r.loan&&!r.requestonly?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Loan",children:r.loan_dispatched?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Loaned to Centcom"}):(0,o.createComponentVNode)(2,i.Button,{content:"Loan Shuttle",disabled:!(r.away&&r.docked),onClick:function(){return(0,a.act)(c,"loan")}})}):""]})}),(0,o.createComponentVNode)(2,i.Tabs,{mt:2,children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Catalog",icon:"list",lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Catalog",buttons:h,children:(0,o.createComponentVNode)(2,l,{state:t,supplies:s})})}},"catalog"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Requests ("+p.length+")",icon:"envelope",highlight:p.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Active Requests",buttons:!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Clear",color:"transparent",onClick:function(){return(0,a.act)(c,"denyall")}}),children:(0,o.createComponentVNode)(2,u,{state:t,requests:p})})}},"requests"),!r.requestonly&&(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Checkout ("+m.length+")",icon:"shopping-cart",highlight:m.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Current Cart",buttons:h,children:(0,o.createComponentVNode)(2,d,{state:t,cart:m})})}},"cart")]})],4)};var l=function(e){var t=e.state,n=e.supplies,c=t.config,l=t.data,u=c.ref,d=function(e){var t=n[e].packs;return(0,o.createVNode)(1,"table","LabeledList",t.map((function(e){return(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[e.name,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.small_item&&(0,o.createFragment)([(0,o.createTextVNode)("Small Item")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.access&&(0,o.createFragment)([(0,o.createTextVNode)("Restrictions Apply")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:(l.self_paid?Math.round(1.1*e.cost):e.cost)+" credits",tooltip:e.desc,tooltipPosition:"left",onClick:function(){return(0,a.act)(u,"add",{id:e.id})}}),2)],4,null,e.name)})),0)};return(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e){var t=e.name;return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:t,children:d},t)}))(n)})},u=function(e){var t=e.state,n=e.requests,r=t.config,c=t.data,l=r.ref;return 0===n.length?(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"No Requests"}):(0,o.createVNode)(1,"table","LabeledList",n.map((function(e){return(0,o.createFragment)([(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[(0,o.createTextVNode)("#"),e.id,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__content",e.object,0),(0,o.createVNode)(1,"td","LabeledList__cell",[(0,o.createTextVNode)("By "),(0,o.createVNode)(1,"b",null,e.orderer,0)],4),(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createVNode)(1,"i",null,e.reason,0),2),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",[e.cost,(0,o.createTextVNode)(" credits"),(0,o.createTextVNode)(" "),!c.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"check",color:"good",onClick:function(){return(0,a.act)(l,"approve",{id:e.id})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"bad",onClick:function(){return(0,a.act)(l,"deny",{id:e.id})}})],4)],0)],4)],4,e.id)})),0)},d=function(e){var t=e.state,n=e.cart,r=t.config,c=t.data,l=r.ref;return(0,o.createFragment)([0===n.length&&"Nothing in cart",n.length>0&&(0,o.createComponentVNode)(2,i.LabeledList,{children:n.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:"#"+e.id,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:2,children:[!!e.paid&&(0,o.createVNode)(1,"b",null,"[Paid Privately]",16)," ",e.cost," credits"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus",onClick:function(){return(0,a.act)(l,"remove",{id:e.id})}})],4),children:e.object},e.id)}))}),n.length>0&&!c.requestonly&&(0,o.createComponentVNode)(2,i.Box,{mt:2,children:1===c.away&&1===c.docked&&(0,o.createComponentVNode)(2,i.Button,{color:"green",style:{"line-height":"28px",padding:"0 12px"},content:"Confirm the order",onClick:function(){return(0,a.act)(l,"send")}})||(0,o.createComponentVNode)(2,i.Box,{opacity:.5,children:["Shuttle in ",c.location,"."]})})],0)};t.CargoExpress=function(e){var t=e.state,n=t.config,r=t.data,u=n.ref,d=r.supplies||{};return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox,{siliconUser:r.siliconUser,locked:r.locked,onLockStatusChange:function(){return(0,a.act)(u,"lock")},accessText:"a QM-level ID card"}),!r.locked&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo Express",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Landing Location",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Cargo Bay",selected:!r.usingBeacon,onClick:function(){return(0,a.act)(u,"LZCargo")}}),(0,o.createComponentVNode)(2,i.Button,{selected:r.usingBeacon,disabled:!r.hasBeacon,onClick:function(){return(0,a.act)(u,"LZBeacon")},children:[r.beaconzone," (",r.beaconName,")"]}),(0,o.createComponentVNode)(2,i.Button,{content:r.printMsg,disabled:!r.canBuyBeacon,onClick:function(){return(0,a.act)(u,"printBeacon")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Notice",children:r.message})]})}),(0,o.createComponentVNode)(2,l,{state:t,supplies:d})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.CellularEmporium=void 0;var o=n(1),r=n(3),a=n(2);t.CellularEmporium=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.abilities;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Genetic Points",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Readapt",disabled:!i.can_readapt,onClick:function(){return n("readapt")}}),children:i.genetic_points_remaining})})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.name,buttons:(0,o.createFragment)([e.dna_cost," ",(0,o.createComponentVNode)(2,a.Button,{content:e.owned?"Evolved":"Evolve",selected:e.owned,onClick:function(){return n("evolve",{name:e.name})}})],0),children:[e.desc,(0,o.createComponentVNode)(2,a.Box,{color:"good",children:e.helptext})]},e.name)}))})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CentcomPodLauncher=void 0;var o=n(1),r=(n(31),n(3)),a=n(2);t.CentcomPodLauncher=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:"To use this, simply spawn the atoms you want in one of the five Centcom Supplypod Bays. Items in the bay will then be launched inside your supplypod, one turf-full at a time! You can optionally use the following buttons to configure how the supplypod acts."}),(0,o.createComponentVNode)(2,a.Section,{title:"Centcom Pod Customization (To be used against Helen Weinstein)",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Supply Bay",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bay #1",selected:1===i.bayNumber,onClick:function(){return n("bay1")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #2",selected:2===i.bayNumber,onClick:function(){return n("bay2")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #3",selected:3===i.bayNumber,onClick:function(){return n("bay3")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #4",selected:4===i.bayNumber,onClick:function(){return n("bay4")}}),(0,o.createComponentVNode)(2,a.Button,{content:"ERT Bay",selected:5===i.bayNumber,tooltip:"This bay is located on the western edge of CentCom. Its the\nglass room directly west of where ERT spawn, and south of the\nCentCom ferry. Useful for launching ERT/Deathsquads/etc. onto\nthe station via drop pods.",onClick:function(){return n("bay5")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleport to",children:[(0,o.createComponentVNode)(2,a.Button,{content:i.bay,onClick:function(){return n("teleportCentcom")}}),(0,o.createComponentVNode)(2,a.Button,{content:i.oldArea?i.oldArea:"Where you were",disabled:!i.oldArea,onClick:function(){return n("teleportBack")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Clone Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:"Launch Clones",selected:i.launchClone,tooltip:"Choosing this will create a duplicate of the item to be\nlaunched in Centcom, allowing you to send one type of item\nmultiple times. Either way, the atoms are forceMoved into\nthe supplypod after it lands (but before it opens).",onClick:function(){return n("launchClone")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Launch style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Ordered",selected:1===i.launchChoice,tooltip:'Instead of launching everything in the bay at once, this\nwill "scan" things (one turf-full at a time) in order, left\nto right and top to bottom. undoing will reset the "scanner"\nto the top-leftmost position.',onClick:function(){return n("launchOrdered")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Random",selected:2===i.launchChoice,tooltip:"Instead of launching everything in the bay at once, this\nwill launch one random turf of items at a time.",onClick:function(){return n("launchRandom")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Explosion",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Size",selected:1===i.explosionChoice,tooltip:"This will cause an explosion of whatever size you like\n(including flame range) to occur as soon as the supplypod\nlands. Dont worry, supply-pods are explosion-proof!",onClick:function(){return n("explosionCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Adminbus",selected:2===i.explosionChoice,tooltip:"This will cause a maxcap explosion (dependent on server\nconfig) to occur as soon as the supplypod lands. Dont worry,\nsupply-pods are explosion-proof!",onClick:function(){return n("explosionBus")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Damage",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Damage",selected:1===i.damageChoice,tooltip:"Anyone caught under the pod when it lands will be dealt\nthis amount of brute damage. Sucks to be them!",onClick:function(){return n("damageCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gib",selected:2===i.damageChoice,tooltip:"This will attempt to gib any mob caught under the pod when\nit lands, as well as dealing a nice 5000 brute damage. Ya\nknow, just to be sure!",onClick:function(){return n("damageGib")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Effects",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Stun",selected:i.effectStun,tooltip:"Anyone who is on the turf when the supplypod is launched\nwill be stunned until the supplypod lands. They cant get\naway that easy!",onClick:function(){return n("effectStun")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Delimb",selected:i.effectLimb,tooltip:"This will cause anyone caught under the pod to lose a limb,\nexcluding their head.",onClick:function(){return n("effectLimb")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Yeet Organs",selected:i.effectOrgans,tooltip:"This will cause anyone caught under the pod to lose all\ntheir limbs and organs in a spectacular fashion.",onClick:function(){return n("effectOrgans")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Movement",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bluespace",selected:i.effectBluespace,tooltip:"Gives the supplypod an advanced Bluespace Recyling Device.\nAfter opening, the supplypod will be warped directly to the\nsurface of a nearby NT-designated trash planet (/r/ss13).",onClick:function(){return n("effectBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Stealth",selected:i.effectStealth,tooltip:'This hides the red target icon from appearing when you\nlaunch the supplypod. Combos well with the "Invisible"\nstyle. Sneak attack, go!',onClick:function(){return n("effectStealth")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Quiet",selected:i.effectQuiet,tooltip:"This will keep the supplypod from making any sounds, except\nfor those specifically set by admins in the Sound section.",onClick:function(){return n("effectQuiet")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Reverse Mode",selected:i.effectReverse,tooltip:"This pod will not send any items. Instead, after landing,\nthe supplypod will close (similar to a normal closet closing),\nand then launch back to the right centcom bay to drop off any\nnew contents.",onClick:function(){return n("effectReverse")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile Mode",selected:i.effectMissile,tooltip:"This pod will not send any items. Instead, it will immediately\ndelete after landing (Similar visually to setting openDelay\n& departDelay to 0, but this looks nicer). Useful if you just\nwanna fuck some shit up. Combos well with the Missile style.",onClick:function(){return n("effectMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Any Descent Angle",selected:i.effectCircle,tooltip:"This will make the supplypod come in from any angle. Im not\nsure why this feature exists, but here it is.",onClick:function(){return n("effectCircle")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Machine Gun Mode",selected:i.effectBurst,tooltip:"This will make each click launch 5 supplypods inaccuratly\naround the target turf (a 3x3 area). Combos well with the\nMissile Mode if you dont want shit lying everywhere after.",onClick:function(){return n("effectBurst")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Specific Target",selected:i.effectTarget,tooltip:"This will make the supplypod target a specific atom, instead\nof the mouses position. Smiting does this automatically!",onClick:function(){return n("effectTarget")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name/Desc",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Name/Desc",selected:i.effectName,tooltip:"Allows you to add a custom name and description.",onClick:function(){return n("effectName")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Alert Ghosts",selected:i.effectAnnounce,tooltip:"Alerts ghosts when a pod is launched. Useful if some dumb\nshit is aboutta come outta the pod.",onClick:function(){return n("effectAnnounce")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Sound",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Sound",selected:i.fallingSound,tooltip:"Choose a sound to play as the pod falls. Note that for this\nto work right you should know the exact length of the sound,\nin seconds.",onClick:function(){return n("fallSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Sound",selected:i.landingSound,tooltip:"Choose a sound to play when the pod lands.",onClick:function(){return n("landingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Sound",selected:i.openingSound,tooltip:"Choose a sound to play when the pod opens.",onClick:function(){return n("openingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Sound",selected:i.leavingSound,tooltip:"Choose a sound to play when the pod departs (whether that be\ndelection in the case of a bluespace pod, or leaving for\ncentcom for a reversing pod).",onClick:function(){return n("leavingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Admin Sound Volume",selected:i.soundVolume,tooltip:"Choose the volume for the sound to play at. Default values\nare between 1 and 100, but hey, do whatever. Im a tooltip,\nnot a cop.",onClick:function(){return n("soundVolume")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Timers",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Duration",selected:4!==i.fallDuration,tooltip:"Set how long the animation for the pod falling lasts. Create\ndramatic, slow falling pods!",onClick:function(){return n("fallDuration")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Time",selected:20!==i.landingDelay,tooltip:"Choose the amount of time it takes for the supplypod to hit\nthe station. By default this value is 0.5 seconds.",onClick:function(){return n("landingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Time",selected:30!==i.openingDelay,tooltip:"Choose the amount of time it takes for the supplypod to open\nafter landing. Useful for giving whatevers inside the pod a\nnice dramatic entrance! By default this value is 3 seconds.",onClick:function(){return n("openingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Time",selected:30!==i.departureDelay,tooltip:"Choose the amount of time it takes for the supplypod to leave\nafter landing. By default this value is 3 seconds.",onClick:function(){return n("departureDelay")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.styleChoice,tooltip:"Same color scheme as the normal station-used supplypods",onClick:function(){return n("styleStandard")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.styleChoice,tooltip:"The same as the stations upgraded blue-and-white\nBluespace Supplypods",onClick:function(){return n("styleBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate",selected:4===i.styleChoice,tooltip:"A menacing black and blood-red. Great for sending meme-ops\nin style!",onClick:function(){return n("styleSyndie")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Deathsquad",selected:5===i.styleChoice,tooltip:"A menacing black and dark blue. Great for sending deathsquads\nin style!",onClick:function(){return n("styleBlue")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Cult Pod",selected:6===i.styleChoice,tooltip:"A blood and rune covered cult pod!",onClick:function(){return n("styleCult")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile",selected:7===i.styleChoice,tooltip:"A large missile. Combos well with a missile mode, so the\nmissile doesnt stick around after landing.",onClick:function(){return n("styleMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate Missile",selected:8===i.styleChoice,tooltip:"A large blood-red missile. Combos well with missile mode,\nso the missile doesnt stick around after landing.",onClick:function(){return n("styleSMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Supply Crate",selected:9===i.styleChoice,tooltip:"A large, dark-green military supply crate.",onClick:function(){return n("styleBox")}}),(0,o.createComponentVNode)(2,a.Button,{content:"HONK",selected:10===i.styleChoice,tooltip:"A colorful, clown inspired look.",onClick:function(){return n("styleHONK")}}),(0,o.createComponentVNode)(2,a.Button,{content:"~Fruit",selected:11===i.styleChoice,tooltip:"For when an orange is angry",onClick:function(){return n("styleFruit")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Invisible",selected:12===i.styleChoice,tooltip:'Makes the supplypod invisible! Useful for when you want to\nuse this feature with a gateway or something. Combos well\nwith the "Stealth" and "Quiet Landing" effects.',onClick:function(){return n("styleInvisible")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gondola",selected:13===i.styleChoice,tooltip:"This gondola can control when he wants to deliver his supplies\nif he has a smart enough mind, so offer up his body to ghosts\nfor maximum enjoyment. (Make sure to turn off bluespace and\nset a arbitrarily high open-time if you do!",onClick:function(){return n("styleGondola")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Show Contents (See Through Pod)",selected:14===i.styleChoice,tooltip:"By selecting this, the pod will instead look like whatevers\ninside it (as if it were the contents falling by themselves,\nwithout a pod). Useful for launching mechs at the station\nand standing tall as they soar in from the heavens.",onClick:function(){return n("styleSeeThrough")}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:i.numObjects+" turfs in "+i.bay,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"undo Pody Bay",tooltip:"Manually undoes the possible things to launch in the\npod bay.",onClick:function(){return n("undo")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Enter Launch Mode",selected:i.giveLauncher,tooltip:"THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN",onClick:function(){return n("giveLauncher")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Clear Selected Bay",color:"bad",tooltip:"This will delete all objs and mobs from the selected bay.",tooltipPosition:"left",onClick:function(){return n("clearBay")}})],4)})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemAcclimator=void 0;var o=n(1),r=n(3),a=n(2);t.ChemAcclimator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Acclimator",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:[i.chem_temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.target_temperature,unit:"K",width:"59px",minValue:0,maxValue:1e3,step:5,stepPixelSize:2,onChange:function(e,t){return n("set_target_temperature",{temperature:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Acceptable Temp. Difference",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.allowed_temperature_difference,unit:"K",width:"59px",minValue:1,maxValue:i.target_temperature,stepPixelSize:2,onChange:function(e,t){n("set_allowed_temperature_difference",{temperature:t})}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.enabled?"On":"Off",selected:i.enabled,onClick:function(){return n("toggle_power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.max_volume,unit:"u",width:"50px",minValue:i.reagent_volume,maxValue:200,step:2,stepPixelSize:2,onChange:function(e,t){return n("change_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Operation",children:i.acclimate_state}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current State",children:i.emptying?"Emptying":"Filling"})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDebugSynthesizer=void 0;var o=n(1),r=n(3),a=n(2);t.ChemDebugSynthesizer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.amount,l=i.beakerCurrentVolume,u=i.beakerMaxVolume,d=i.isBeakerLoaded,s=i.beakerContents,p=void 0===s?[]:s;return(0,o.createComponentVNode)(2,a.Section,{title:"Recipient",buttons:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("ejectBeaker")}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",minValue:1,maxValue:u,step:1,stepPixelSize:2,onChange:function(e,t){return n("amount",{amount:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Input",onClick:function(){return n("input")}})],4):(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Create Beaker",onClick:function(){return n("makecup")}}),children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l})," / "+u+" u"]}),p.length>0?(0,o.createComponentVNode)(2,a.LabeledList,{children:p.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:[e.volume," u"]},e.name)}))}):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Recipient Empty"})],0):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Recipient"})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemFilter=t.ChemFilterPane=void 0;var o=n(1),r=n(3),a=n(2);var i=function(e){var t=(0,r.useBackend)(e).act,n=e.title,i=e.list,c=e.reagentName,l=e.onReagentInput,u=n.toLowerCase();return(0,o.createComponentVNode)(2,a.Section,{title:n,minHeight:40,ml:.5,mr:.5,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Input,{placeholder:"Reagent",width:"140px",onInput:function(e,t){return l(t)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return t("add",{which:u,name:c})}})],4),children:i.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"minus",content:e,onClick:function(){return t("remove",{which:u,reagent:e})}})],4,e)}))})};t.ChemFilterPane=i;var c=function(e){var t,n;function r(){var t;return(t=e.call(this)||this).state={leftReagentName:"",rightReagentName:""},t}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var c=r.prototype;return c.setLeftReagentName=function(e){this.setState({leftReagentName:e})},c.setRightReagentName=function(e){this.setState({rightReagentName:e})},c.render=function(){var e=this,t=this.props.state,n=t.data,r=n.left,c=void 0===r?[]:r,l=n.right,u=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Left",list:c,reagentName:this.state.leftReagentName,onReagentInput:function(t){return e.setLeftReagentName(t)},state:t})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Right",list:u,reagentName:this.state.rightReagentName,onReagentInput:function(t){return e.setRightReagentName(t)},state:t})})]})},r}(o.Component);t.ChemFilter=c},function(e,t,n){"use strict";t.__esModule=!0,t.ChemPress=void 0;var o=n(1),r=n(3),a=n(2);t.ChemPress=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.pill_size,l=i.pill_name,u=i.pill_style,d=i.pill_styles,s=void 0===d?[]:d;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",width:"43px",minValue:5,maxValue:50,step:1,stepPixelSize:2,onChange:function(e,t){return n("change_pill_size",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Name",children:(0,o.createComponentVNode)(2,a.Input,{value:l,onChange:function(e,t){return n("change_pill_name",{name:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Style",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:5,selected:e.id===u,textAlign:"center",color:"transparent",onClick:function(){return n("change_pill_style",{id:e.id})},children:(0,o.createComponentVNode)(2,a.Box,{mx:-1,className:e.class_name})},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemReactionChamber=void 0;var o=n(1),r=n(19),a=n(2),i=n(23),c=n(12);var l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).state={reagentName:"",reagentQuantity:1},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.setReagentName=function(e){this.setState({reagentName:e})},u.setReagentQuantity=function(e){this.setState({reagentQuantity:e})},u.render=function(){var e=this,t=this.props.state,n=t.config,l=t.data,u=n.ref,d=l.emptying,s=l.reagents||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Reagents",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:d?"bad":"good",children:d?"Emptying":"Filling"}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createVNode)(1,"tr","LabledList__row",[(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createComponentVNode)(2,a.Input,{fluid:!0,value:"",placeholder:"Reagent Name",onInput:function(t,n){return e.setReagentName(n)}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td",(0,c.classes)(["LabeledList__buttons","LabeledList__cell"]),[(0,o.createComponentVNode)(2,a.NumberInput,{value:this.state.reagentQuantity,minValue:1,maxValue:100,step:1,stepPixelSize:3,width:"39px",onDrag:function(t,n){return e.setReagentQuantity(n)}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return(0,r.act)(u,"add",{chem:e.state.reagentName,amount:e.state.reagentQuantity})}})],4)],4),(0,i.map)((function(e,t){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:t,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return(0,r.act)(u,"remove",{chem:t})}}),children:e},t)}))(s)]})})},l}(o.Component);t.ChemReactionChamber=l},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSplitter=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSplitter=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.straight,u=c.side,d=c.max_transfer;return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Straight",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l,unit:"u",width:"55px",minValue:1,maxValue:d,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"straight",amount:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Side",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:u,unit:"u",width:"55px",minValue:1,maxValue:d,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"side",amount:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSynthesizer=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSynthesizer=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.amount,u=c.current_reagent,d=c.chemicals,s=void 0===d?[]:d,p=c.possible_amounts,m=void 0===p?[]:p;return(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:(0,r.toFixed)(e,0),selected:e===l,onClick:function(){return n("amount",{target:e})}},(0,r.toFixed)(e,0))}))}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"tint",content:e.title,width:"129px",selected:e.id===u,onClick:function(){return n("select",{reagent:e.id})}},e.id)}))})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.CodexGigas=void 0;var o=n(1),r=n(3),a=n(2);t.CodexGigas=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[i.name,(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prefix",children:["Dark","Hellish","Fallen","Fiery","Sinful","Blood","Fluffy"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:1!==i.currentSection,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Title",children:["Lord","Prelate","Count","Viscount","Vizier","Elder","Adept"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>2,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:["hal","ve","odr","neit","ci","quon","mya","folth","wren","geyr","hil","niet","twou","phi","coa"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>4,onClick:function(){return n(e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suffix",children:["the Red","the Soulless","the Master","the Lord of all things","Jr."].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:4!==i.currentSection,onClick:function(){return n(" "+e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Submit",children:(0,o.createComponentVNode)(2,a.Button,{content:"Search",disabled:i.currentSection<4,onClick:function(){return n("search")}})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.ComputerFabricator=void 0;var o=n(1),r=(n(31),n(3)),a=n(2);t.ComputerFabricator=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{italic:!0,fontSize:"20px",children:"Your perfect device, only three steps away..."}),0!==l.state&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mb:1,icon:"circle",content:"Clear Order",onClick:function(){return c("clean_order")}}),(0,o.createComponentVNode)(2,i,{state:t})],0)};var i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return 0===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 1",minHeight:51,children:[(0,o.createComponentVNode)(2,a.Box,{mt:5,bold:!0,textAlign:"center",fontSize:"40px",children:"Choose your Device"}),(0,o.createComponentVNode)(2,a.Box,{mt:3,children:(0,o.createComponentVNode)(2,a.Grid,{width:"100%",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"laptop",content:"Laptop",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"1"})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"tablet-alt",content:"Tablet",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"2"})}})})]})})]}):1===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 2: Customize your device",minHeight:47,buttons:(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"good",children:[i.totalprice," cr"]}),children:[(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Battery:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to operate without external utility power\nsource. Advanced batteries increase battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Hard Drive:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Stores file on your device. Advanced drives can store more\nfiles, but use more power, shortening battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Network Card:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to wirelessly connect to stationwide NTNet\nnetwork. Basic cards are limited to on-station use, while\nadvanced cards can operate anywhere near the station, which\nincludes asteroid outposts",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Nano Printer:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A device that allows for various paperwork manipulations,\nsuch as, scanning of documents or printing new ones.\nThis device was certified EcoFriendlyPlus and is capable of\nrecycling existing paper for printing purposes.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"1"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Card Reader:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Adds a slot that allows you to manipulate RFID cards.\nPlease note that this is not necessary to allow the device\nto read your identification, it is just necessary to\nmanipulate other cards.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_card,onClick:function(){return n("hw_card",{card:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_card,onClick:function(){return n("hw_card",{card:"1"})}})})]}),2!==i.devtype&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Processor Unit:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A component critical for your device's functionality.\nIt allows you to run programs from your hard drive.\nAdvanced CPUs use more power, but allow you to run\nmore programs on background at once.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Tesla Relay:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"An advanced wireless power relay that allows your device\nto connect to nearby area power controller to provide\nalternative power source. This component is currently\nunavailable on tablet computers due to size restrictions.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"1"})}})})]})],4)]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mt:3,content:"Confirm Order",color:"good",textAlign:"center",fontSize:"18px",lineHeight:"26px",onClick:function(){return n("confirm_order")}})]}):2===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 3: Payment",minHeight:47,children:[(0,o.createComponentVNode)(2,a.Box,{italic:!0,textAlign:"center",fontSize:"20px",children:"Your device is ready for fabrication..."}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:2,textAlign:"center",fontSize:"16px",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:"Please insert the required"})," ",(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:[i.totalprice," cr"]})]}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:1,textAlign:"center",fontSize:"18px",children:"Current:"}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:.5,textAlign:"center",fontSize:"18px",color:i.credits>=i.totalprice?"good":"bad",children:[i.credits," cr"]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Purchase",disabled:i.credits=10&&e<20?i.COLORS.department.security:e>=20&&e<30?i.COLORS.department.medbay:e>=30&&e<40?i.COLORS.department.science:e>=40&&e<50?i.COLORS.department.engineering:e>=50&&e<60?i.COLORS.department.cargo:e>=200&&e<230?i.COLORS.department.centcom:i.COLORS.department.other},u=function(e){var t=e.type,n=e.value;return(0,o.createComponentVNode)(2,a.Box,{inline:!0,width:4,color:i.COLORS.damageType[t],textAlign:"center",children:n})};t.CrewConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,d=i.sensors||[];return(0,o.createComponentVNode)(2,a.Section,{minHeight:90,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,textAlign:"center",children:"Vitals"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Position"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,children:"Tracking"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:(f=e.ijob,f%10==0),color:l(e.ijob),children:[e.name," (",e.assignment,")"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,a.ColorBox,{color:(t=e.oxydam,r=e.toxdam,d=e.burndam,s=e.brutedam,p=t+r+d+s,m=Math.min(Math.max(Math.ceil(p/25),0),5),c[m])})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:null!==e.oxydam?(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:[(0,o.createComponentVNode)(2,u,{type:"oxy",value:e.oxydam}),"/",(0,o.createComponentVNode)(2,u,{type:"toxin",value:e.toxdam}),"/",(0,o.createComponentVNode)(2,u,{type:"burn",value:e.burndam}),"/",(0,o.createComponentVNode)(2,u,{type:"brute",value:e.brutedam})]}):e.life_status?"Alive":"Dead"}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:null!==e.pos_x?e.area:"N/A"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{content:"Track",disabled:!e.can_track,onClick:function(){return n("select_person",{name:e.name})}})})]},e.name);var t,r,d,s,p,m,f}))]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Cryo=void 0;var o=n(1),r=n(3),a=n(2),i=n(435);t.Cryo=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",content:c.occupant.name?c.occupant.name:"No Occupant"}),!!c.hasOccupant&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",content:c.occupant.stat,color:c.occupant.statstate}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",color:c.occupant.temperaturestatus,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.bodyTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant.health/c.occupant.maxHealth,color:c.occupant.health>0?"good":"average",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant[e.type]/100,children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant[e.type]})})},e.id)}))],0)]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cell",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",content:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",disabled:c.isOpen,onClick:function(){return n("power")},color:c.isOperating&&"green",children:c.isOperating?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.cellTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.isOpen?"unlock":"lock",onClick:function(){return n("door")},content:c.isOpen?"Open":"Closed"}),(0,o.createComponentVNode)(2,a.Button,{icon:c.autoEject?"sign-out-alt":"sign-in-alt",onClick:function(){return n("autoeject")},content:c.autoEject?"Auto":"Manual"})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",disabled:!c.isBeakerLoaded,onClick:function(){return n("ejectbeaker")},content:"Eject"}),children:(0,o.createComponentVNode)(2,i.BeakerContents,{beakerLoaded:c.isBeakerLoaded,beakerContents:c.beakerContents})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BeakerContents=void 0;var o=n(1),r=n(2);t.BeakerContents=function(e){var t=e.beakerLoaded,n=e.beakerContents;return(0,o.createComponentVNode)(2,r.Box,{children:[!t&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"No beaker loaded."})||0===n.length&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"Beaker is empty."}),n.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{color:"label",children:[e.volume," units of ",e.name]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.PersonalCrafting=void 0;var o=n(1),r=n(23),a=n(3),i=n(2),c=function(e){var t=e.craftables,n=void 0===t?[]:t,r=(0,a.useBackend)(e),c=r.act,l=r.data,u=l.craftability,d=void 0===u?{}:u,s=l.display_compact,p=l.display_craftable_only;return n.map((function(e){return p&&!d[e.ref]?null:s?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,className:"candystripe",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!d[e.ref],tooltip:e.tool_text&&"Tools needed: "+e.tool_text,tooltipPosition:"left",onClick:function(){return c("make",{recipe:e.ref})}}),children:e.req_text},e.name):(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!d[e.ref],onClick:function(){return c("make",{recipe:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.req_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Required",children:e.req_text}),!!e.catalyst_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Catalyst",children:e.catalyst_text}),!!e.tool_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Tools",children:e.tool_text})]})},e.name)}))};t.PersonalCrafting=function(e){var t=e.state,n=(0,a.useBackend)(e),l=n.act,u=n.data,d=u.busy,s=u.display_craftable_only,p=u.display_compact,m=(0,r.map)((function(e,t){return{category:t,subcategory:e,hasSubcats:"has_subcats"in e,firstSubcatName:Object.keys(e).find((function(e){return"has_subcats"!==e}))}}))(u.crafting_recipes||{}),f=!!d&&(0,o.createComponentVNode)(2,i.Dimmer,{fontSize:"40px",textAlign:"center",children:(0,o.createComponentVNode)(2,i.Box,{mt:30,children:[(0,o.createComponentVNode)(2,i.Icon,{name:"cog",spin:1})," Crafting..."]})});return(0,o.createFragment)([f,(0,o.createComponentVNode)(2,i.Section,{title:"Personal Crafting",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:p?"check-square-o":"square-o",content:"Compact",selected:p,onClick:function(){return l("toggle_compact")}}),(0,o.createComponentVNode)(2,i.Button,{icon:s?"check-square-o":"square-o",content:"Craftable Only",selected:s,onClick:function(){return l("toggle_recipes")}})],4),children:(0,o.createComponentVNode)(2,i.Tabs,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.category,onClick:function(){return l("set_category",{category:e.category,subcategory:e.firstSubcatName})},children:function(){return!e.hasSubcats&&(0,o.createComponentVNode)(2,c,{craftables:e.subcategory,state:t})||(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,n){if("has_subcats"!==n)return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:n,onClick:function(){return l("set_category",{subcategory:n})},children:function(){return(0,o.createComponentVNode)(2,c,{craftables:e,state:t})}})}))(e.subcategory)})}},e.category)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.DecalPainter=void 0;var o=n(1),r=n(3),a=n(2);t.DecalPainter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.decal_list||[],l=i.color_list||[],u=i.dir_list||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Decal Type",children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name,selected:e.decal===i.decal_style,onClick:function(){return n("select decal",{decals:e.decal})}},e.decal)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Color",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:"red"===e.colors?"Red":"white"===e.colors?"White":"Yellow",selected:e.colors===i.decal_color,onClick:function(){return n("select color",{colors:e.colors})}},e.colors)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Direction",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:1===e.dirs?"North":2===e.dirs?"South":4===e.dirs?"East":"West",selected:e.dirs===i.decal_direction,onClick:function(){return n("selected direction",{dirs:e.dirs})}},e.dirs)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.DisposalUnit=void 0;var o=n(1),r=n(3),a=n(2);t.DisposalUnit=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return l.full_pressure?(t="good",n="Ready"):l.panel_open?(t="bad",n="Power Disabled"):l.pressure_charging?(t="average",n="Pressurizing"):(t="bad",n="Off"),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:t,children:n}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.per,color:"good"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Handle",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.flush?"toggle-on":"toggle-off",disabled:l.isai||l.panel_open,content:l.flush?"Disengage":"Engage",onClick:function(){return c(l.flush?"handle-0":"handle-1")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Eject",children:(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",disabled:l.isai,content:"Eject Contents",onClick:function(){return c("eject")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",disabled:l.panel_open,selected:l.pressure_charging,onClick:function(){return c(l.pressure_charging?"pump-0":"pump-1")}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaVault=void 0;var o=n(1),r=n(3),a=n(2);t.DnaVault=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.completed,l=i.used,u=i.choiceA,d=i.choiceB,s=i.dna,p=i.dna_max,m=i.plants,f=i.plants_max,h=i.animals,C=i.animals_max;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"DNA Vault Database",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Human DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s/p,content:s+" / "+p+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plant DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m/f,content:m+" / "+f+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Animal DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:h/h,content:h+" / "+C+" Samples"})})]})}),!(!c||l)&&(0,o.createComponentVNode)(2,a.Section,{title:"Personal Gene Therapy",children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",mb:1,children:"Applicable Gene Therapy Treatments"}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:u,textAlign:"center",onClick:function(){return n("gene",{choice:u})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:d,textAlign:"center",onClick:function(){return n("gene",{choice:d})}})})]})]})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.EightBallVote=void 0;var o=n(1),r=n(3),a=n(2),i=n(31);t.EightBallVote=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.question,u=c.shaking,d=c.answers,s=void 0===d?[]:d;return u?(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"16px",m:1,children:['"',l,'"']}),(0,o.createComponentVNode)(2,a.Grid,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:(0,i.toTitleCase)(e.answer),selected:e.selected,fontSize:"16px",lineHeight:"24px",textAlign:"center",mb:1,onClick:function(){return n("vote",{answer:e.answer})}}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"30px",children:e.amount})]},e.answer)}))})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No question is currently being asked."})}},function(e,t,n){"use strict";t.__esModule=!0,t.EmergencyShuttleConsole=void 0;var o=n(1),r=n(2),a=n(3);t.EmergencyShuttleConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,i=t.data,c=i.timer_str,l=i.enabled,u=i.emagged,d=i.engines_started,s=i.authorizations_remaining,p=i.authorizations,m=void 0===p?[]:p;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"40px",textAlign:"center",fontFamily:"monospace",children:c}),(0,o.createComponentVNode)(2,r.Box,{textAlign:"center",fontSize:"16px",mb:1,children:[(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,children:"ENGINES:"}),(0,o.createComponentVNode)(2,r.Box,{inline:!0,color:d?"good":"average",ml:1,children:d?"Online":"Idle"})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Early Launch Authorization",level:2,buttons:(0,o.createComponentVNode)(2,r.Button,{icon:"times",content:"Repeal All",color:"bad",disabled:!l,onClick:function(){return n("abort")}}),children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"exclamation-triangle",color:"good",content:"AUTHORIZE",disabled:!l,onClick:function(){return n("authorize")}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"minus",content:"REPEAL",disabled:!l,onClick:function(){return n("repeal")}})})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Authorizations",level:3,minHeight:"150px",buttons:(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,color:u?"bad":"good",children:u?"ERROR":"Remaining: "+s}),children:[m.length>0?m.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)})):(0,o.createComponentVNode)(2,r.Box,{bold:!0,textAlign:"center",fontSize:"16px",color:"average",children:"No Active Authorizations"}),m.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)}))]})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.EngravedMessage=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.EngravedMessage=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.admin_mode,u=c.creator_key,d=c.creator_name,s=c.has_liked,p=c.has_disliked,m=c.hidden_message,f=c.is_creator,h=c.num_likes,C=c.num_dislikes,g=c.realdate;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",mb:2,children:(0,r.decodeHtmlEntities)(m)}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",content:" "+h,disabled:f,selected:s,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("like")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"circle",disabled:f,selected:!p&&!s,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("neutral")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",content:" "+C,disabled:f,selected:p,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("dislike")}})})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Created On",children:g})})}),(0,o.createComponentVNode)(2,i.Section),!!l&&(0,o.createComponentVNode)(2,i.Section,{title:"Admin Panel",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Delete",color:"bad",onClick:function(){return n("delete")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Ckey",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Character Name",children:d})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Gps=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(156),l=n(3),u=n(2),d=function(e){return(0,r.map)(parseFloat)(e.split(", "))};t.Gps=function(e){var t=(0,l.useBackend)(e),n=t.act,s=t.data,p=s.currentArea,m=s.currentCoords,f=s.globalmode,h=s.power,C=s.tag,g=s.updating,b=(0,a.flow)([(0,r.map)((function(e,t){var n=e.dist&&Math.round((0,c.vecLength)((0,c.vecSubtract)(d(m),d(e.coords))));return Object.assign({},e,{dist:n,index:t})})),(0,r.sortBy)((function(e){return e.dist===undefined}),(function(e){return e.entrytag}))])(s.signals||[]);return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Control",buttons:(0,o.createComponentVNode)(2,u.Button,{icon:"power-off",content:h?"On":"Off",selected:h,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,u.LabeledList,{children:[(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Tag",children:(0,o.createComponentVNode)(2,u.Button,{icon:"pencil-alt",content:C,onClick:function(){return n("rename")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,u.Button,{icon:g?"unlock":"lock",content:g?"AUTO":"MANUAL",color:!g&&"bad",onClick:function(){return n("updating")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Range",children:(0,o.createComponentVNode)(2,u.Button,{icon:"sync",content:f?"MAXIMUM":"LOCAL",selected:!f,onClick:function(){return n("globalmode")}})})]})}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Current Location",children:(0,o.createComponentVNode)(2,u.Box,{fontSize:"18px",children:[p," (",m,")"]})}),(0,o.createComponentVNode)(2,u.Section,{title:"Detected Signals",children:(0,o.createComponentVNode)(2,u.Table,{children:[(0,o.createComponentVNode)(2,u.Table.Row,{bold:!0,children:[(0,o.createComponentVNode)(2,u.Table.Cell,{content:"Name"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Direction"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Coordinates"})]}),b.map((function(e){return(0,o.createComponentVNode)(2,u.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,u.Table.Cell,{bold:!0,color:"label",children:e.entrytag}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,opacity:e.dist!==undefined&&(0,i.clamp)(1.2/Math.log(Math.E+e.dist/20),.4,1),children:[e.degrees!==undefined&&(0,o.createComponentVNode)(2,u.Icon,{mr:1,size:1.2,name:"arrow-up",rotation:e.degrees}),e.dist!==undefined&&e.dist+"m"]}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,children:e.coords})]},e.entrytag+e.coords+e.index)}))]})})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GravityGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.GravityGenerator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.breaker,l=i.charge_count,u=i.charging_state,d=i.on,s=i.operational;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:!s&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No data available"})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Breaker",children:(0,o.createComponentVNode)(2,a.Button,{icon:c?"power-off":"times",content:c?"On":"Off",selected:c,disabled:!s,onClick:function(){return n("gentoggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Gravity Charge",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/100,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",children:[0===u&&(d&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Fully Charged"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Not Charging"})),1===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Charging"}),2===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Discharging"})]})]})}),s&&0!==u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"WARNING - Radiation detected"}),s&&0===u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No radiation detected"})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagTeleporterConsole=void 0;var o=n(1),r=n(3),a=n(2);t.GulagTeleporterConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.teleporter,l=i.teleporter_lock,u=i.teleporter_state_open,d=i.teleporter_location,s=i.beacon,p=i.beacon_location,m=i.id,f=i.id_name,h=i.can_teleport,C=i.goal,g=void 0===C?0:C,b=i.prisoner,v=void 0===b?{}:b;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Teleporter Console",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:u?"Open":"Closed",disabled:l,selected:u,onClick:function(){return n("toggle_open")}}),(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"unlock",content:l?"Locked":"Unlocked",selected:l,disabled:u,onClick:function(){return n("teleporter_lock")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleporter Unit",color:c?"good":"bad",buttons:!c&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_teleporter")}}),children:c?d:"Not Connected"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Receiver Beacon",color:s?"good":"bad",buttons:!s&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_beacon")}}),children:s?p:"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Prisoner Details",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prisoner ID",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:m?f:"No ID",onClick:function(){return n("handle_id")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Point Goal",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:g,width:"48px",minValue:1,maxValue:1e3,onChange:function(e,t){return n("set_goal",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",children:v.name?v.name:"No Occupant"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Criminal Status",children:v.crimstat?v.crimstat:"No Status"})]})}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Process Prisoner",disabled:!h,textAlign:"center",color:"bad",onClick:function(){return n("teleport")}})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagItemReclaimer=void 0;var o=n(1),r=n(3),a=n(2);t.GulagItemReclaimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.mobs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Stored Items",children:(0,o.createComponentVNode)(2,a.Table,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{content:"Retrieve Items",disabled:!i.can_reclaim,onClick:function(){return n("release_items",{mobref:e.mob})}})})]},e.mob)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holodeck=void 0;var o=n(1),r=n(3),a=n(2);t.Holodeck=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_toggle_safety,l=i.default_programs,u=void 0===l?[]:l,d=i.emag_programs,s=void 0===d?[]:d,p=i.emagged,m=i.program;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Default Programs",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"unlock":"lock",content:"Safeties",color:"bad",disabled:!c,selected:!p,onClick:function(){return n("safety")}}),children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),textAlign:"center",selected:e.type===m,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))}),!!p&&(0,o.createComponentVNode)(2,a.Section,{title:"Dangerous Programs",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),color:"bad",textAlign:"center",selected:e.type===m,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ImplantChair=void 0;var o=n(1),r=n(3),a=n(2);t.ImplantChair=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:i.occupant.name?i.occupant.name:"No Occupant"}),!!i.occupied&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:0===i.occupant.stat?"good":1===i.occupant.stat?"average":"bad",children:0===i.occupant.stat?"Conscious":1===i.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.open?"unlock":"lock",color:i.open?"default":"red",content:i.open?"Open":"Closed",onClick:function(){return n("door")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implant Occupant",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"code-branch",content:i.ready?i.special_name||"Implant":"Recharging",onClick:function(){return n("implant")}}),0===i.ready&&(0,o.createComponentVNode)(2,a.Icon,{name:"cog",color:"orange",spin:!0})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implants Remaining",children:[i.ready_implants,1===i.replenishing&&(0,o.createComponentVNode)(2,a.Icon,{name:"sync",color:"red",spin:!0})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Intellicard=void 0;var o=n(1),r=n(3),a=n(2);t.Intellicard=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=u||d,l=i.name,u=i.isDead,d=i.isBraindead,s=i.health,p=i.wireless,m=i.radio,f=i.wiping,h=i.laws,C=void 0===h?[]:h;return(0,o.createComponentVNode)(2,a.Section,{title:l||"Empty Card",buttons:!!l&&(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:f?"Stop Wiping":"Wipe",disabled:u,onClick:function(){return n("wipe")}}),children:!!l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:c?"bad":"good",children:c?"Offline":"Operation"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Software Integrity",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"Wireless Activity",selected:p,onClick:function(){return n("wireless")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"microphone",content:"Subspace Radio",selected:m,onClick:function(){return n("radio")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laws",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.BlockQuote,{children:e},e)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.KeycardAuth=void 0;var o=n(1),r=n(3),a=n(2);t.KeycardAuth=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{children:1===i.waiting&&(0,o.createVNode)(1,"span",null,"Waiting for another device to confirm your request...",16)}),(0,o.createComponentVNode)(2,a.Box,{children:0===i.waiting&&(0,o.createFragment)([!!i.auth_required&&(0,o.createComponentVNode)(2,a.Button,{icon:"check-square",color:"red",textAlign:"center",lineHeight:"60px",fluid:!0,onClick:function(){return n("auth_swipe")},content:"Authorize"}),0===i.auth_required&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",fluid:!0,onClick:function(){return n("red_alert")},content:"Red Alert"}),(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",fluid:!0,onClick:function(){return n("emergency_maint")},content:"Emergency Maintenance Access"}),(0,o.createComponentVNode)(2,a.Button,{icon:"meteor",fluid:!0,onClick:function(){return n("bsa_unlock")},content:"Bluespace Artillery Unlock"})],4)],0)})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaborClaimConsole=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.LaborClaimConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.can_go_home,u=c.id_points,d=c.ores,s=c.status_info,p=c.unclaimed_points;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle controls",children:(0,o.createComponentVNode)(2,i.Button,{content:"Move shuttle",disabled:!l,onClick:function(){return n("move_shuttle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Points",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Unclaimed points",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Claim points",disabled:!p,onClick:function(){return n("claim_points")}}),children:p})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Material values",children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Material"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Value"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.ore)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.value})})]},e.ore)}))]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.LanguageMenu=void 0;var o=n(1),r=n(3),a=n(2);t.LanguageMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.admin_mode,l=i.is_living,u=i.omnitongue,d=i.languages,s=void 0===d?[]:d,p=i.unknown_languages,m=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Known Languages",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createFragment)([!!l&&(0,o.createComponentVNode)(2,a.Button,{content:e.is_default?"Default Language":"Select as Default",disabled:!e.can_speak,selected:e.is_default,onClick:function(){return n("select_default",{language_name:e.name})}}),!!c&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Remove",onClick:function(){return n("remove_language",{language_name:e.name})}})],4)],0),children:[e.desc," ","Key: ,",e.key," ",e.can_understand?"Can understand.":"Cannot understand."," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})}),!!c&&(0,o.createComponentVNode)(2,a.Section,{title:"Unknown Languages",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Omnitongue "+(u?"Enabled":"Disabled"),selected:u,onClick:function(){return n("toggle_omnitongue")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),children:[e.desc," ","Key: ,",e.key," ",!!e.shadow&&"(gained from mob)"," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadConsole=t.LaunchpadRemote=t.LaunchpadControl=t.LaunchpadButtonPad=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createComponentVNode)(2,a.Grid,{width:"1px",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",mb:1,onClick:function(){return t("move_pos",{x:-1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",mb:1,onClick:function(){return t("move_pos",{y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"R",mb:1,onClick:function(){return t("set_pos",{x:0,y:0})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",mb:1,onClick:function(){return t("move_pos",{y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",mb:1,onClick:function(){return t("move_pos",{x:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:-1})}})]})]})};t.LaunchpadButtonPad=i;var c=function(e){var t=e.topLevel,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.x,d=l.y,s=l.pad_name,p=l.range;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Input,{value:s,width:"170px",onChange:function(e,t){return c("rename",{name:t})}}),level:t?1:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Remove",color:"bad",onClick:function(){return c("remove")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Controls",level:2,children:(0,o.createComponentVNode)(2,i,{state:e.state})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Target",level:2,children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"26px",children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"X:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:u,minValue:-p,maxValue:p,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",stepPixelSize:10,onChange:function(e,t){return c("set_pos",{x:t})}})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"Y:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:d,minValue:-p,maxValue:p,stepPixelSize:10,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",onChange:function(e,t){return c("set_pos",{y:t})}})]})]})})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"upload",content:"Launch",textAlign:"center",onClick:function(){return c("launch")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Pull",textAlign:"center",onClick:function(){return c("pull")}})})]})]})};t.LaunchpadControl=c;t.LaunchpadRemote=function(e){var t=(0,r.useBackend)(e).data,n=t.has_pad,i=t.pad_closed;return n?i?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Launchpad Closed"}):(0,o.createComponentVNode)(2,c,{topLevel:!0,state:e.state}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Launchpad Connected"})};t.LaunchpadConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.launchpads,u=void 0===l?[]:l,d=i.selected_id;return u.length<=0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Pads Connected"}):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.Box,{style:{"border-right":"2px solid rgba(255, 255, 255, 0.1)"},minHeight:"190px",mr:1,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name,selected:d===e.id,color:"transparent",onClick:function(){return n("select_pad",{id:e.id})}},e.name)}))})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:d?(0,o.createComponentVNode)(2,c,{state:e.state}):(0,o.createComponentVNode)(2,a.Box,{children:"Please select a pad"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MechBayPowerConsole=void 0;var o=n(1),r=n(3),a=n(2);t.MechBayPowerConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.recharge_port,c=i&&i.mech,l=c&&c.cell;return(0,o.createComponentVNode)(2,a.Section,{title:"Mech status",textAlign:"center",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Sync",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Integrity",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.health/c.maxhealth,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cell is installed."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.charge/l.maxcharge,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.charge})," / "+l.maxcharge]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteChamberControl=void 0;var o=n(1),r=n(3),a=n(2);t.NaniteChamberControl=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.status_msg,l=i.locked,u=i.occupant_name,d=i.has_nanites,s=i.nanite_volume,p=i.regen_rate,m=i.safety_threshold,f=i.cloud_id,h=i.scan_level;if(c)return(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:c});var C=i.mob_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Chamber: "+u,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"lock-open",content:l?"Locked":"Unlocked",color:l?"bad":"default",onClick:function(){return n("toggle_lock")}}),children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",content:"Destroy Nanites",color:"bad",onClick:function(){return n("remove_nanites")}}),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanite Volume",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Growth Rate",children:p})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Safety Threshold",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:m,minValue:0,maxValue:500,width:"39px",onChange:function(e,t){return n("set_safety",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:f,minValue:0,maxValue:100,step:1,stepPixelSize:3,width:"39px",onChange:function(e,t){return n("set_cloud",{value:t})}})})]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",level:2,children:C.map((function(e){var t=e.extra_settings||[],n=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.desc}),h>=2&&(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.activated?"good":"bad",children:e.activated?"Active":"Inactive"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanites Consumed",children:[e.use_rate,"/s"]})]})})]}),h>=2&&(0,o.createComponentVNode)(2,a.Grid,{children:[!!e.can_trigger&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Triggers",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:e.trigger_cost}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:e.trigger_cooldown}),!!e.timer_trigger_delay&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[e.timer_trigger_delay," s"]}),!!e.timer_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:[e.timer_trigger," s"]})]})})}),!(!e.timer_restart&&!e.timer_shutdown)&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[e.timer_restart&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:[e.timer_restart," s"]}),e.timer_shutdown&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:[e.timer_shutdown," s"]})]})})})]}),h>=3&&!!e.has_extra_settings&&(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:t.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:e.value},e.name)}))})}),h>=4&&(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!e.activation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:e.activation_code}),!!e.deactivation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:e.deactivation_code}),!!e.kill_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:e.kill_code}),!!e.can_trigger&&!!e.trigger_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:e.trigger_code})]})})}),e.has_rules&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Rules",level:2,children:n.map((function(e){return(0,o.createFragment)([e.display,(0,o.createVNode)(1,"br")],0,e.display)}))})})]})]})},e.name)}))})],4):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"bad",textAlign:"center",fontSize:"30px",mb:1,children:"No Nanites Detected"}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,icon:"syringe",content:" Implant Nanites",color:"green",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("nanite_injection")}})],4)})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteCloudControl=t.NaniteCloudBackupDetails=t.NaniteCloudBackupList=t.NaniteInfoBox=t.NaniteDiskBox=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.state.data,n=t.has_disk,r=t.has_program,i=t.disk;return n?r?(0,o.createComponentVNode)(2,c,{program:i}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Inserted disk has no program"}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No disk inserted"})};t.NaniteDiskBox=i;var c=function(e){var t=e.program,n=t.name,r=t.desc,i=t.activated,c=t.use_rate,l=t.can_trigger,u=t.trigger_cost,d=t.trigger_cooldown,s=t.activation_code,p=t.deactivation_code,m=t.kill_code,f=t.trigger_code,h=t.timer_restart,C=t.timer_shutdown,g=t.timer_trigger,b=t.timer_trigger_delay,v=t.extra_settings||[];return(0,o.createComponentVNode)(2,a.Section,{title:n,level:2,buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:i?"good":"bad",children:i?"Activated":"Deactivated"}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{mr:1,children:r}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:c}),!!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:u}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:d})],4)]})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:m}),!!l&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:f})]})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart",children:[h," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown",children:[C," s"]}),!!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:[g," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[b," s"]})],4)]})})})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:v.map((function(e){var t={number:(0,o.createFragment)([e.value,e.unit],0),text:e.value,type:e.value,boolean:e.value?e.true_text:e.false_text};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:t[e.type]},e.name)}))})})]})};t.NaniteInfoBox=c;var l=function(e){var t=(0,r.useBackend)(e),n=t.act;return(t.data.cloud_backups||[]).map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Backup #"+e.cloud_id,textAlign:"center",onClick:function(){return n("set_view",{view:e.cloud_id})}},e.cloud_id)}))};t.NaniteCloudBackupList=l;var u=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.current_view,u=i.disk,d=i.has_program,s=i.cloud_backup,p=u&&u.can_rule||!1;if(!s)return(0,o.createComponentVNode)(2,a.NoticeBox,{children:"ERROR: Backup not found"});var m=i.cloud_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Backup #"+l,level:2,buttons:!!d&&(0,o.createComponentVNode)(2,a.Button,{icon:"upload",content:"Upload From Disk",color:"good",onClick:function(){return n("upload_program")}}),children:m.map((function(e){var t=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return n("remove_program",{program_id:e.id})}}),children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,c,{program:e}),!!p&&(0,o.createComponentVNode)(2,a.Section,{mt:-2,title:"Rules",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Add Rule from Disk",color:"good",onClick:function(){return n("add_rule",{program_id:e.id})}}),children:e.has_rules?t.map((function(t){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return n("remove_rule",{program_id:e.id,rule_id:t.id})}}),t.display],0,t.display)})):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"No Active Rules"})})]})},e.name)}))})};t.NaniteCloudBackupDetails=u;t.NaniteCloudControl=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,d=n.data,s=d.has_disk,p=d.current_view,m=d.new_backup_id;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Program Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!s,onClick:function(){return c("eject")}}),children:(0,o.createComponentVNode)(2,i,{state:t})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cloud Storage",buttons:p?(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Return",onClick:function(){return c("set_view",{view:0})}}):(0,o.createFragment)(["New Backup: ",(0,o.createComponentVNode)(2,a.NumberInput,{value:m,minValue:1,maxValue:100,stepPixelSize:4,width:"39px",onChange:function(e,t){return c("update_new_backup_value",{value:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return c("create_backup")}})],0),children:d.current_view?(0,o.createComponentVNode)(2,u,{state:t}):(0,o.createComponentVNode)(2,l,{state:t})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgramHub=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.NaniteProgramHub=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.detail_view,u=c.disk,d=c.has_disk,s=c.has_program,p=c.programs,m=void 0===p?{}:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Program Disk",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus-circle",content:"Delete Program",onClick:function(){return n("clear")}})],4),children:d?s?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Program Name",children:u.name}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:u.desc})]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Program Installed"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Insert Disk"})}),(0,o.createComponentVNode)(2,i.Section,{title:"Programs",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:l?"info":"list",content:l?"Detailed":"Compact",onClick:function(){return n("toggle_details")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Sync Research",onClick:function(){return n("refresh")}})],4),children:null!==m?(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){var r=e||[],a=t.substring(0,t.length-8);return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:a,children:l?r.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!d,onClick:function(){return n("download",{program_id:e.id})}}),children:e.desc},e.id)})):(0,o.createComponentVNode)(2,i.LabeledList,{children:r.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!d,onClick:function(){return n("download",{program_id:e.id})}})},e.id)}))})},t)}))(m)}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No nanite programs are currently researched."})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgrammer=t.NaniteExtraBoolean=t.NaniteExtraType=t.NaniteExtraText=t.NaniteExtraNumber=t.NaniteExtraEntry=t.NaniteDelays=t.NaniteCodes=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.activation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"activation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.deactivation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"deactivation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.kill_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"kill",code:t})}})}),!!i.can_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.trigger_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"trigger",code:t})}})})]})})};t.NaniteCodes=i;var c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,ml:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_restart,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_restart_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_shutdown,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_shutdown_timer",{delay:t})}})}),!!i.can_trigger&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_trigger,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_trigger_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_trigger_delay,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_timer_trigger_delay",{delay:t})}})})],4)]})})};t.NaniteDelays=c;var l=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.type,c={number:(0,o.createComponentVNode)(2,u,{act:t,extra_setting:n}),text:(0,o.createComponentVNode)(2,d,{act:t,extra_setting:n}),type:(0,o.createComponentVNode)(2,s,{act:t,extra_setting:n}),boolean:(0,o.createComponentVNode)(2,p,{act:t,extra_setting:n})};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:r,children:c[i]})};t.NaniteExtraEntry=l;var u=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.min,l=n.max,u=n.unit;return(0,o.createComponentVNode)(2,a.NumberInput,{value:i,width:"64px",minValue:c,maxValue:l,unit:u,onChange:function(e,n){return t("set_extra_setting",{target_setting:r,value:n})}})};t.NaniteExtraNumber=u;var d=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value;return(0,o.createComponentVNode)(2,a.Input,{value:i,width:"200px",onInput:function(e,n){return t("set_extra_setting",{target_setting:r,value:n})}})};t.NaniteExtraText=d;var s=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.types;return(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:i,width:"150px",options:c,onSelected:function(e){return t("set_extra_setting",{target_setting:r,value:e})}})};t.NaniteExtraType=s;var p=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.true_text,l=n.false_text;return(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:i?c:l,checked:i,onClick:function(){return t("set_extra_setting",{target_setting:r})}})};t.NaniteExtraBoolean=p;t.NaniteProgrammer=function(e){var t=(0,r.useBackend)(e),n=t.act,u=t.data,d=u.has_disk,s=u.has_program,p=u.name,m=u.desc,f=u.use_rate,h=u.can_trigger,C=u.trigger_cost,g=u.trigger_cooldown,b=u.activated,v=u.has_extra_settings,N=u.extra_settings,V=void 0===N?{}:N;return d?s?(0,o.createComponentVNode)(2,a.Section,{title:p,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}}),children:[(0,o.createComponentVNode)(2,a.Section,{title:"Info",level:2,children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:m}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.7,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:f}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:C}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:g})],4)]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Settings",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:b?"power-off":"times",content:b?"Active":"Inactive",selected:b,color:"bad",bold:!0,onClick:function(){return n("toggle_active")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{state:e.state})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,c,{state:e.state})})]}),!!v&&(0,o.createComponentVNode)(2,a.Section,{title:"Special",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:V.map((function(e){return(0,o.createComponentVNode)(2,l,{act:n,extra_setting:e},e.name)}))})})]})]}):(0,o.createComponentVNode)(2,a.Section,{title:"Blank Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert a nanite program disk"})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteRemote=void 0;var o=n(1),r=n(3),a=n(2);t.NaniteRemote=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.code,l=i.locked,u=i.mode,d=i.program_name,s=i.relay_code,p=i.comms,m=i.message,f=i.saved_settings,h=void 0===f?[]:f;return l?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"This interface is locked."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Nanite Control",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lock Interface",onClick:function(){return n("lock")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,a.Input,{value:d,maxLength:14,width:"130px",onChange:function(e,t){return n("update_name",{name:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"save",content:"Save",onClick:function(){return n("save")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:p?"Comm Code":"Signal Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return n("set_code",{code:t})}})}),!!p&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Message",children:(0,o.createComponentVNode)(2,a.Input,{value:m,width:"270px",onChange:function(e,t){return n("set_message",{value:t})}})}),"Relay"===u&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Relay Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:s,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return n("set_relay_code",{code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Signal Mode",children:["Off","Local","Targeted","Area","Relay"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,selected:u===e,onClick:function(){return n("select_mode",{mode:e})}},e)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Saved Settings",children:h.length>0?(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{width:"35%",children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{width:"20%",children:"Mode"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Code"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Relay"})]}),h.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,color:"label",children:[e.name,":"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.mode}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.code}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Relay"===e.mode&&e.relay_code}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"upload",color:"good",onClick:function(){return n("load",{save_id:e.id})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return n("remove_save",{save_id:e.id})}})]})]},e.id)}))]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No settings currently saved"})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Mule=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Mule=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u=c.siliconUser,d=c.on,s=c.cell,p=c.cellPercent,m=c.load,f=c.mode,h=c.modeStatus,C=c.haspai,g=c.autoReturn,b=c.autoPickup,v=c.reportDelivery,N=c.destination,V=c.home,y=c.id,_=c.destinations,x=void 0===_?[]:_;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:u,locked:l}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",minHeight:"110px",buttons:!l&&(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:s?p/100:0,color:s?"good":"bad"}),(0,o.createComponentVNode)(2,a.Grid,{mt:1,children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",color:h,children:f})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Load",color:m?"good":"average",children:m||"None"})})})]})]}),!l&&(0,o.createComponentVNode)(2,a.Section,{title:"Controls",buttons:(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Unload",onClick:function(){return n("unload")}}),!!C&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject PAI",onClick:function(){return n("ejectpai")}})],0),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID",children:(0,o.createComponentVNode)(2,a.Input,{value:y,onChange:function(e,t){return n("setid",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Destination",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:N||"None",options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"stop",content:"Stop",onClick:function(){return n("stop")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"play",content:"Go",onClick:function(){return n("go")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Home",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:V,options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",content:"Go Home",onClick:function(){return n("home")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:g,content:"Auto-Return",onClick:function(){return n("autored")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:b,content:"Auto-Pickup",onClick:function(){return n("autopick")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:v,content:"Report Delivery",onClick:function(){return n("report")}})]})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NotificationPreferences=void 0;var o=n(1),r=n(3),a=n(2);t.NotificationPreferences=function(e){var t=(0,r.useBackend)(e),n=t.act,i=(t.data.ignore||[]).sort((function(e,t){var n=e.desc.toLowerCase(),o=t.desc.toLowerCase();return no?1:0}));return(0,o.createComponentVNode)(2,a.Section,{title:"Ghost Role Notifications",children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:e.enabled?"times":"check",content:e.desc,color:e.enabled?"bad":"good",onClick:function(){return n("toggle_ignore",{key:e.key})}},e.key)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtnetRelay=void 0;var o=n(1),r=n(3),a=n(2);t.NtnetRelay=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.enabled,l=i.dos_capacity,u=i.dos_overload,d=i.dos_crashed;return(0,o.createComponentVNode)(2,a.Section,{title:"Network Buffer",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",selected:c,content:c?"ENABLED":"DISABLED",onClick:function(){return n("toggle")}}),children:d?(0,o.createComponentVNode)(2,a.Box,{fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",children:"NETWORK BUFFER OVERFLOW"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",children:"OVERLOAD RECOVERY MODE"}),(0,o.createComponentVNode)(2,a.Box,{children:"This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",color:"bad",children:"ADMINISTRATOR OVERRIDE"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",color:"bad",children:"CAUTION - DATA LOSS MAY OCCUR"}),(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"PURGE BUFFER",mt:1,color:"bad",onClick:function(){return n("restart")}})]}):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,minValue:0,maxValue:l,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})," GQ"," / ",l," GQ"]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosArcade=void 0;var o=n(1),r=n(3),a=n(2);t.NtosArcade=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Outbomb Cuban Pete Ultra",textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:2,children:[(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerHitpoints,minValue:0,maxValue:30,ranges:{olive:[31,Infinity],good:[20,31],average:[10,20],bad:[-Infinity,10]},children:[i.PlayerHitpoints,"HP"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Magic",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerMP,minValue:0,maxValue:10,ranges:{purple:[11,Infinity],violet:[3,11],bad:[-Infinity,3]},children:[i.PlayerMP,"MP"]})})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Section,{backgroundColor:1===i.PauseState?"#1b3622":"#471915",children:i.Status})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.Hitpoints/45,minValue:0,maxValue:45,ranges:{good:[30,Infinity],average:[5,30],bad:[-Infinity,5]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.Hitpoints}),"HP"]}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Section,{inline:!0,width:26,textAlign:"center",children:(0,o.createVNode)(1,"img",null,null,1,{src:i.BossID})})]})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Button,{icon:"fist-raised",tooltip:"Go in for the kill!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Attack")},content:"Attack!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"band-aid",tooltip:"Heal yourself!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Heal")},content:"Heal!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"magic",tooltip:"Recharge your magic!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Recharge_Power")},content:"Recharge!"})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"sync-alt",tooltip:"One more game couldn't hurt.",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Start_Game")},content:"Begin Game"}),(0,o.createComponentVNode)(2,a.Button,{icon:"ticket-alt",tooltip:"Claim at your local Arcade Computer for Prizes!",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Dispense_Tickets")},content:"Claim Tickets"})]}),(0,o.createComponentVNode)(2,a.Box,{color:i.TicketCount>=1?"good":"normal",children:["Earned Tickets: ",i.TicketCount]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosConfiguration=void 0;var o=n(1),r=n(3),a=n(2);t.NtosConfiguration=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.power_usage,l=i.battery_exists,u=i.battery,d=void 0===u?{}:u,s=i.disk_size,p=i.disk_used,m=i.hardware,f=void 0===m?[]:m;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Supply",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Draw: ",c,"W"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Battery Status",color:!l&&"average",children:l?(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.charge,minValue:0,maxValue:d.max,ranges:{good:[d.max/2,Infinity],average:[d.max/4,d.max/2],bad:[-Infinity,d.max/4]},children:[d.charge," / ",d.max]}):"Not Available"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"File System",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p,minValue:0,maxValue:s,color:"good",children:[p," GQ / ",s," GQ"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Hardware Components",children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createFragment)([!e.critical&&(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Enabled",checked:e.enabled,mr:1,onClick:function(){return n("PC_toggle_component",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Usage: ",e.powerusage,"W"]})],0),children:e.desc},e.name)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosMain=void 0;var o=n(1),r=n(3),a=n(2),i={compconfig:"cog",ntndownloader:"download",filemanager:"folder",smmonitor:"radiation",alarmmonitor:"bell",cardmod:"id-card",arcade:"gamepad",ntnrc_client:"comment-alt",nttransfer:"exchange-alt",powermonitor:"plug"};t.NtosMain=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.programs,u=void 0===l?[]:l,d=c.has_light,s=c.light_on,p=c.comp_light_color;return(0,o.createFragment)([!!d&&(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Button,{width:"144px",icon:"lightbulb",selected:s,onClick:function(){return n("PC_toggle_light")},children:["Flashlight: ",s?"ON":"OFF"]}),(0,o.createComponentVNode)(2,a.Button,{ml:1,onClick:function(){return n("PC_light_color")},children:["Color:",(0,o.createComponentVNode)(2,a.ColorBox,{ml:1,color:p})]})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",children:(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,lineHeight:"24px",color:"transparent",icon:i[e.name]||"window-maximize-o",content:e.desc,onClick:function(){return n("PC_runprogram",{name:e.name})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,width:3,children:!!e.running&&(0,o.createComponentVNode)(2,a.Button,{lineHeight:"24px",color:"transparent",icon:"times",tooltip:"Close program",tooltipPosition:"left",onClick:function(){return n("PC_killprogram",{name:e.name})}})})]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetChat=void 0;var o=n(1),r=n(3),a=n(2);(0,n(51).createLogger)("ntos chat");t.NtosNetChat=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_admin,l=i.adminmode,u=i.authed,d=i.username,s=i.active_channel,p=i.is_operator,m=i.all_channels,f=void 0===m?[]:m,h=i.clients,C=void 0===h?[]:h,g=i.messages,b=void 0===g?[]:g,v=null!==s,N=u||l;return(0,o.createComponentVNode)(2,a.Section,{height:"600px",children:(0,o.createComponentVNode)(2,a.Table,{height:"580px",children:(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"200px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"537px",overflowY:"scroll",children:[(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"New Channel...",onCommit:function(e,t){return n("PRG_newchannel",{new_channel_name:t})}}),f.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.chan,selected:e.id===s,color:"transparent",onClick:function(){return n("PRG_joinchannel",{id:e.id})}},e.chan)}))]}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,mt:1,content:d+"...",currentValue:d,onCommit:function(e,t){return n("PRG_changename",{new_name:t})}}),!!c&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ADMIN MODE: "+(l?"ON":"OFF"),color:l?"bad":"good",onClick:function(){return n("PRG_toggleadmin")}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:[(0,o.createComponentVNode)(2,a.Box,{height:"560px",overflowY:"scroll",children:v&&(N?b.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.msg},e.msg)})):(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Icon,{name:"exclamation-triangle",mt:4,fontSize:"40px"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,fontSize:"18px",children:"THIS CHANNEL IS PASSWORD PROTECTED"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"INPUT PASSWORD TO ACCESS"})]}))}),(0,o.createComponentVNode)(2,a.Input,{fluid:!0,selfClear:!0,mt:1,onEnter:function(e,t){return n("PRG_speak",{message:t})}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"150px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"477px",overflowY:"scroll",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.name},e.name)}))}),v&&N&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Save log...",defaultValue:"new_log",onCommit:function(e,t){return n("PRG_savelog",{log_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Leave Channel",onClick:function(){return n("PRG_leavechannel")}})],4),!!p&&u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Delete Channel",onClick:function(){return n("PRG_deletechannel")}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Rename Channel...",onCommit:function(e,t){return n("PRG_renamechannel",{new_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Set Password...",onCommit:function(e,t){return n("PRG_setpassword",{new_password:t})}})],4)]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDownloader=void 0;var o=n(1),r=n(3),a=n(2);t.NtosNetDownloader=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.disk_size,d=l.disk_used,s=l.downloadable_programs,p=void 0===s?[]:s,m=l.error,f=l.hacked_programs,h=void 0===f?[]:f,C=l.hackedavailable;return(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:m}),(0,o.createComponentVNode)(2,a.Button,{content:"Reset",onClick:function(){return c("PRG_reseterror")}})]}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disk usage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d,minValue:0,maxValue:u,children:d+" GQ / "+u+" GQ"})})})}),(0,o.createComponentVNode)(2,a.Section,{children:p.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))}),!!C&&(0,o.createComponentVNode)(2,a.Section,{title:"UNKNOWN Software Repository",children:[(0,o.createComponentVNode)(2,a.NoticeBox,{mb:1,children:"Please note that Nanotrasen does not recommend download of software from non-official servers."}),h.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))]})],0)};var i=function(e){var t=e.program,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.disk_size,u=c.disk_used,d=c.downloadcompletion,s=c.downloading,p=c.downloadname,m=c.downloadsize,f=l-u;return(0,o.createComponentVNode)(2,a.Box,{mb:3,children:[(0,o.createComponentVNode)(2,a.Flex,{align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{bold:!0,grow:1,children:t.filedesc}),(0,o.createComponentVNode)(2,a.Flex.Item,{color:"label",nowrap:!0,children:[t.size," GQ"]}),(0,o.createComponentVNode)(2,a.Flex.Item,{ml:2,width:"94px",textAlign:"center",children:t.filename===p&&(0,o.createComponentVNode)(2,a.ProgressBar,{color:"green",minValue:0,maxValue:m,value:d})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Download",disabled:s||t.size>f,onClick:function(){return i("PRG_downloadfile",{filename:t.filename})}})})]}),"Compatible"!==t.compatibility&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Incompatible!"]}),t.size>f&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Not enough disk space!"]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,color:"label",fontSize:"12px",children:t.fileinfo})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosSupermatterMonitor=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(3),l=n(2),u=n(37),d=function(e){return Math.log2(16+Math.max(0,e))-4};t.NtosSupermatterMonitor=function(e){var t=e.state,n=(0,c.useBackend)(e),p=n.act,m=n.data,f=m.active,h=m.SM_integrity,C=m.SM_power,g=m.SM_ambienttemp,b=m.SM_ambientpressure;if(!f)return(0,o.createComponentVNode)(2,s,{state:t});var v=(0,a.flow)([function(e){return e.filter((function(e){return e.amount>=.01}))},(0,r.sortBy)((function(e){return-e.amount}))])(m.gases||[]),N=Math.max.apply(Math,[1].concat(v.map((function(e){return e.amount}))));return(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"270px",children:(0,o.createComponentVNode)(2,l.Section,{title:"Metrics",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:h/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Relative EER",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:C,minValue:0,maxValue:5e3,ranges:{good:[-Infinity,5e3],average:[5e3,7e3],bad:[7e3,Infinity]},children:(0,i.toFixed)(C)+" MeV/cm3"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d(g),minValue:0,maxValue:d(1e4),ranges:{teal:[-Infinity,d(80)],good:[d(80),d(373)],average:[d(373),d(1e3)],bad:[d(1e3),Infinity]},children:(0,i.toFixed)(g)+" K"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d(b),minValue:0,maxValue:d(5e4),ranges:{good:[d(1),d(300)],average:[-Infinity,d(1e3)],bad:[d(1e3),+Infinity]},children:(0,i.toFixed)(b)+" kPa"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{title:"Gases",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"arrow-left",content:"Back",onClick:function(){return p("PRG_clear")}}),children:(0,o.createComponentVNode)(2,l.Box.Forced,{height:24*v.length+"px",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:v.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,u.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,u.getGasColor)(e.name),value:e.amount,minValue:0,maxValue:N,children:(0,i.toFixed)(e.amount,2)+"%"})},e.name)}))})})})})]})};var s=function(e){var t=(0,c.useBackend)(e),n=t.act,r=t.data.supermatters,a=void 0===r?[]:r;return(0,o.createComponentVNode)(2,l.Section,{title:"Detected Supermatters",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"sync",content:"Refresh",onClick:function(){return n("PRG_refresh")}}),children:(0,o.createComponentVNode)(2,l.Table,{children:a.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.uid+". "+e.area_name}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,color:"label",children:"Integrity:"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,width:"120px",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:e.integrity/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,l.Button,{content:"Details",onClick:function(){return n("PRG_set",{target:e.uid})}})})]},e.uid)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosWrapper=void 0;var o=n(1),r=n(3),a=n(2),i=n(116);t.NtosWrapper=function(e){var t=e.children,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.PC_batteryicon,d=l.PC_showbatteryicon,s=l.PC_batterypercent,p=l.PC_ntneticon,m=l.PC_apclinkicon,f=l.PC_stationtime,h=l.PC_programheaders,C=void 0===h?[]:h,g=l.PC_showexitprogram;return(0,o.createVNode)(1,"div","NtosWrapper",[(0,o.createVNode)(1,"div","NtosWrapper__header NtosHeader",[(0,o.createVNode)(1,"div","NtosHeader__left",[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:2,children:f}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,italic:!0,mr:2,opacity:.33,children:"NtOS"})],4),(0,o.createVNode)(1,"div","NtosHeader__right",[C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:e.icon})},e.icon)})),(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:p&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:p})}),!!d&&u&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:[u&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:u}),s&&s]}),m&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:m})}),!!g&&(0,o.createComponentVNode)(2,a.Button,{width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-minimize-o",tooltip:"Minimize",tooltipPosition:"bottom",onClick:function(){return c("PC_minimize")}}),!!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-close-o",tooltip:"Close",tooltipPosition:"bottom-left",onClick:function(){return c("PC_exit")}}),!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"power-off",tooltip:"Power off",tooltipPosition:"bottom-left",onClick:function(){return c("PC_shutdown")}})],0)],4,{onMouseDown:function(){(0,i.refocusLayout)()}}),(0,o.createVNode)(1,"div","NtosWrapper__content",t,0)],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NuclearBomb=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e).act;return(0,o.createComponentVNode)(2,i.Box,{width:"185px",children:(0,o.createComponentVNode)(2,i.Grid,{width:"1px",children:[["1","4","7","C"],["2","5","8","0"],["3","6","9","E"]].map((function(e){return(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,mb:1,content:e,textAlign:"center",fontSize:"40px",lineHeight:"50px",width:"55px",className:(0,r.classes)(["NuclearBomb__Button","NuclearBomb__Button--keypad","NuclearBomb__Button--"+e]),onClick:function(){return t("keypad",{digit:e})}},e)}))},e[0])}))})})};t.NuclearBomb=function(e){var t=e.state,n=(0,a.useBackend)(e),r=n.act,l=n.data,u=(l.anchored,l.disk_present,l.status1),d=l.status2;return(0,o.createComponentVNode)(2,i.Box,{m:1,children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,className:"NuclearBomb__displayBox",children:u}),(0,o.createComponentVNode)(2,i.Flex,{mb:1.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,i.Box,{className:"NuclearBomb__displayBox",children:d})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",fontSize:"24px",lineHeight:"23px",textAlign:"center",width:"43px",ml:1,mr:"3px",mt:"3px",className:"NuclearBomb__Button NuclearBomb__Button--keypad",onClick:function(){return r("eject_disk")}})})]}),(0,o.createComponentVNode)(2,i.Flex,{ml:"3px",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,c,{state:t})}),(0,o.createComponentVNode)(2,i.Flex.Item,{ml:1,width:"129px",children:(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ARM",textAlign:"center",fontSize:"28px",lineHeight:"32px",mb:1,className:"NuclearBomb__Button NuclearBomb__Button--C",onClick:function(){return r("arm")}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ANCHOR",textAlign:"center",fontSize:"28px",lineHeight:"32px",className:"NuclearBomb__Button NuclearBomb__Button--E",onClick:function(){return r("anchor")}}),(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",color:"#9C9987",fontSize:"80px",children:(0,o.createComponentVNode)(2,i.Icon,{name:"radiation"})}),(0,o.createComponentVNode)(2,i.Box,{height:"80px",className:"NuclearBomb__NTIcon"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OperatingComputer=void 0;var o=n(1),r=n(3),a=n(2);t.OperatingComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.table,l=i.surgeries,u=void 0===l?[]:l,d=i.procedures,s=void 0===d?[]:d,p=i.patient,m=void 0===p?{}:p;return(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Patient State",children:[!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Table Detected"}),(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Patient State",level:2,children:m?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:m.statstate,children:m.stat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Type",children:m.blood_type}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m.health,minValue:m.minHealth,maxValue:m.maxHealth,color:m.health>=0?"good":"average",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:m.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Respiratory",type:"oxyLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m[e.type]/m.maxHealth,color:"bad",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:m[e.type]})})},e.type)}))]}):"No Patient Detected"}),(0,o.createComponentVNode)(2,a.Section,{title:"Initiated Procedures",level:2,children:s.length?s.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Next Step",children:[e.next_step,e.chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.chems_needed],0)]}),!!i.alternative_step&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Alternative Step",children:[e.alternative_step,e.alt_chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.alt_chems_needed],0)]})]})},e.name)})):"No Active Procedures"})]})]},"state"),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Surgery Procedures",children:(0,o.createComponentVNode)(2,a.Section,{title:"Advanced Surgery Procedures",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Sync Research Database",onClick:function(){return n("sync")}}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,children:e.desc},e.name)}))]})},"procedures")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreBox=void 0;var o=n(1),r=n(31),a=n(19),i=n(2);t.OreBox=function(e){var t=e.state,n=t.config,c=t.data,l=n.ref,u=c.materials;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Ores",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Empty",onClick:function(){return(0,a.act)(l,"removeall")}}),children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Ore"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Amount"})]}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.name)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.amount})})]},e.type)}))]})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Box,{children:["All ores will be placed in here when you are wearing a mining stachel on your belt or in a pocket while dragging the ore box.",(0,o.createVNode)(1,"br"),"Gibtonite is not accepted."]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.OreRedemptionMachine=void 0;var o=n(1),r=n(31),a=n(3),i=n(2);t.OreRedemptionMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,l=r.unclaimedPoints,u=r.materials,d=r.alloys,s=r.diskDesigns,p=r.hasDisk;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.BlockQuote,{mb:1,children:["This machine only accepts ore.",(0,o.createVNode)(1,"br"),"Gibtonite and Slag are not accepted."]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Unclaimed points:"}),l,(0,o.createComponentVNode)(2,i.Button,{ml:2,content:"Claim",disabled:0===l,onClick:function(){return n("Claim")}})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:1,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject design disk",onClick:function(){return n("diskEject")}})}),(0,o.createComponentVNode)(2,i.Table,{children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:["File ",e.index,": ",e.name]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{disabled:!e.canupload,content:"Upload",onClick:function(){return n("diskUpload",{design:e.index})}})})]},e.index)}))})],4)||(0,o.createComponentVNode)(2,i.Button,{icon:"save",content:"Insert design disk",onClick:function(){return n("diskInsert")}})}),(0,o.createComponentVNode)(2,i.Section,{title:"Materials",children:(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Release",{id:e.id,sheets:t})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Alloys",children:(0,o.createComponentVNode)(2,i.Table,{children:d.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Smelt",{id:e.id,sheets:t})}},e.id)}))})})],4)};var c=function(e){var t,n;function a(){var t;return(t=e.call(this)||this).state={amount:1},t}return n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,a.prototype.render=function(){var e=this,t=this.state.amount,n=this.props,a=n.material,c=n.onRelease,l=Math.floor(a.amount);return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(a.name).replace("Alloy","")}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:a.value&&a.value+" cr"})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:[l," sheets"]})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.NumberInput,{width:"32px",step:1,stepPixelSize:5,minValue:1,maxValue:50,value:t,onChange:function(t,n){return e.setState({amount:n})}}),(0,o.createComponentVNode)(2,i.Button,{disabled:l<1,content:"Release",onClick:function(){return c(t)}})]})]})},a}(o.Component)},function(e,t,n){"use strict";t.__esModule=!0,t.Pandemic=t.PandemicAntibodyDisplay=t.PandemicSymptomDisplay=t.PandemicDiseaseDisplay=t.PandemicBeakerDisplay=void 0;var o=n(1),r=n(23),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.has_beaker,l=r.beaker_empty,u=r.has_blood,d=r.blood,s=!c||l;return(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Empty and Eject",color:"bad",disabled:s,onClick:function(){return n("empty_eject_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Empty",disabled:s,onClick:function(){return n("empty_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!c,onClick:function(){return n("eject_beaker")}})],4),children:c?l?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Beaker is empty"}):u?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood DNA",children:d&&d.dna||"Unknown"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Type",children:d&&d.type||"Unknown"})]}):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"No blood detected"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No beaker loaded"})})};t.PandemicBeakerDisplay=c;var l=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.is_ready;return(r.viruses||[]).map((function(e){var t=e.symptoms||[];return(0,o.createComponentVNode)(2,i.Section,{title:e.can_rename?(0,o.createComponentVNode)(2,i.Input,{value:e.name,onChange:function(t,o){return n("rename_disease",{index:e.index,name:o})}}):e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"flask",content:"Create culture bottle",disabled:!c,onClick:function(){return n("create_culture_bottle",{index:e.index})}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.description}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Agent",children:e.agent}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Spread",children:e.spread}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Possible Cure",children:e.cure})]})})]}),!!e.is_adv&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Statistics",level:2,children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:e.resistance}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:e.stealth})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage speed",children:e.stage_speed}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmissibility",children:e.transmission})]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Symptoms",level:2,children:t.map((function(e){return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,u,{symptom:e})})},e.name)}))})],4)]},e.name)}))};t.PandemicDiseaseDisplay=l;var u=function(e){var t=e.symptom,n=t.name,a=t.desc,c=t.stealth,l=t.resistance,u=t.stage_speed,d=t.transmission,s=t.level,p=t.neutered,m=(0,r.map)((function(e,t){return{desc:e,label:t}}))(t.threshold_desc||{});return(0,o.createComponentVNode)(2,i.Section,{title:n,level:2,buttons:!!p&&(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",children:"Neutered"}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:2,children:a}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Level",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:c}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage Speed",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmission",children:d})]})})]}),m.length>0&&(0,o.createComponentVNode)(2,i.Section,{title:"Thresholds",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:e.desc},e.label)}))})})]})};t.PandemicSymptomDisplay=u;var d=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.resistances||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Antibodies",children:c.length>0?(0,o.createComponentVNode)(2,i.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eye-dropper",content:"Create vaccine bottle",disabled:!r.is_ready,onClick:function(){return n("create_vaccine_bottle",{index:e.id})}})},e.name)}))}):(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",mt:1,children:"No antibodies detected."})})};t.PandemicAntibodyDisplay=d;t.Pandemic=function(e){var t=(0,a.useBackend)(e).data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),!!t.has_blood&&(0,o.createFragment)([(0,o.createComponentVNode)(2,l,{state:e.state}),(0,o.createComponentVNode)(2,d,{state:e.state})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.PortableGenerator=function(e){var t,n=(0,r.useBackend)(e),i=n.act,c=n.data;return t=c.stack_percent>50?"good":c.stack_percent>15?"average":"bad",(0,o.createFragment)([!c.anchored&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Generator not anchored."}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power switch",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.active?"power-off":"times",onClick:function(){return i("toggle_power")},disabled:!c.ready_to_boot,children:c.active?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:c.sheet_name+" sheets",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t,children:c.sheets}),c.sheets>=1&&(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"eject",disabled:c.active,onClick:function(){return i("eject")},children:"Eject"})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current sheet level",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.stack_percent/100,ranges:{good:[.1,Infinity],average:[.01,.1],bad:[-Infinity,.01]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Heat level",children:c.current_heat<100?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:"Nominal"}):c.current_heat<200?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"average",children:"Caution"}):(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"bad",children:"DANGER"})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current output",children:c.power_output}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",onClick:function(){return i("lower_power")},children:c.power_generated}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return i("higher_power")},children:c.power_generated})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power available",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:!c.connected&&"bad",children:c.connected?c.power_available:"Unconnected"})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableScrubber=t.PortablePump=t.PortableBasicInfo=void 0;var o=n(1),r=n(3),a=n(2),i=n(37),c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.connected,l=i.holding,u=i.on,d=i.pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:c?"good":"average",children:c?"Connected":"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",minHeight:"82px",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!l,onClick:function(){return n("eject")}}),children:l?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:l.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.pressure})," kPa"]})]}):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No holding tank"})})],4)};t.PortableBasicInfo=c;t.PortablePump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.direction,u=(i.holding,i.target_pressure),d=i.default_pressure,s=i.min_pressure,p=i.max_pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Pump",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-in-alt":"sign-out-alt",content:l?"In":"Out",selected:l,onClick:function(){return n("direction")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,unit:"kPa",width:"75px",minValue:s,maxValue:p,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:u===s,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",disabled:u===d,onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:u===p,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})],4)};t.PortableScrubber=function(e){var t=(0,r.useBackend)(e),n=t.act,l=t.data.filter_types||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Filters",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,i.getGasLabel)(e.gas_id,e.gas_name),selected:e.enabled,onClick:function(){return n("toggle_filter",{val:e.gas_id})}},e.id)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.PowerMonitor=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(12),l=n(2);var u=5e5,d=function(e){var t=String(e.split(" ")[1]).toLowerCase();return["w","kw","mw","gw"].indexOf(t)},s=function(e){var t,n;function c(){var t;return(t=e.call(this)||this).state={sortByField:null},t}return n=e,(t=c).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,c.prototype.render=function(){var e=this,t=this.props.state.data,n=t.history,c=this.state.sortByField,s=n.supply[n.supply.length-1]||0,f=n.demand[n.demand.length-1]||0,h=n.supply.map((function(e,t){return[t,e]})),C=n.demand.map((function(e,t){return[t,e]})),g=Math.max.apply(Math,[u].concat(n.supply,n.demand)),b=(0,a.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===c&&(0,r.sortBy)((function(e){return e.name})),"charge"===c&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===c&&(0,r.sortBy)((function(e){return-d(e.load)}),(function(e){return-parseFloat(e.load)}))])(t.areas);return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"200px",children:(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Supply",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s,minValue:0,maxValue:g,color:"teal",content:(0,i.toFixed)(s/1e3)+" kW"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Draw",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:f,minValue:0,maxValue:g,color:"pink",content:(0,i.toFixed)(f/1e3)+" kW"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{position:"relative",height:"100%",children:[(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:h,rangeX:[0,h.length-1],rangeY:[0,g],strokeColor:"rgba(0, 181, 173, 1)",fillColor:"rgba(0, 181, 173, 0.25)"}),(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:C,rangeX:[0,C.length-1],rangeY:[0,g],strokeColor:"rgba(224, 57, 151, 1)",fillColor:"rgba(224, 57, 151, 0.25)"})]})})]}),(0,o.createComponentVNode)(2,l.Section,{children:[(0,o.createComponentVNode)(2,l.Box,{mb:1,children:[(0,o.createComponentVNode)(2,l.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"name"===c,content:"Name",onClick:function(){return e.setState({sortByField:"name"!==c&&"name"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"charge"===c,content:"Charge",onClick:function(){return e.setState({sortByField:"charge"!==c&&"charge"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"draw"===c,content:"Draw",onClick:function(){return e.setState({sortByField:"draw"!==c&&"draw"})}})]}),(0,o.createComponentVNode)(2,l.Table,{children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,l.Table.Cell,{textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),b.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,e.name,0),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,p,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.eqp}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.lgt}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.env}),2)],4,null,e.id)}))]})]})],4)},c}(o.Component);t.PowerMonitor=s;var p=function(e){var t=e.charging,n=e.charge;return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Icon,{width:"18px",textAlign:"center",name:0===t&&(n>50?"battery-half":"battery-quarter")||1===t&&"bolt"||2===t&&"battery-full",color:0===t&&(n>50?"yellow":"red")||1===t&&"yellow"||2===t&&"green"}),(0,o.createComponentVNode)(2,l.Box,{inline:!0,width:"36px",textAlign:"right",children:(0,i.toFixed)(n)+"%"})],4)};p.defaultHooks=c.pureComponentHooks;var m=function(e){var t=e.status,n=Boolean(2&t),r=Boolean(1&t),a=(n?"On":"Off")+" ["+(r?"auto":"manual")+"]";return(0,o.createComponentVNode)(2,l.ColorBox,{color:n?"good":"bad",content:r?undefined:"M",title:a})};m.defaultHooks=c.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Radio=void 0;var o=n(1),r=n(23),a=n(20),i=n(3),c=n(2),l=n(37);t.Radio=function(e){var t=(0,i.useBackend)(e),n=t.act,u=t.data,d=u.freqlock,s=u.frequency,p=u.minFrequency,m=u.maxFrequency,f=u.listening,h=u.broadcasting,C=u.command,g=u.useCommand,b=u.subspace,v=u.subspaceSwitchable,N=l.RADIO_CHANNELS.find((function(e){return e.freq===s})),V=(0,r.map)((function(e,t){return{name:t,status:!!e}}))(u.channels);return(0,o.createComponentVNode)(2,c.Section,{children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Frequency",children:[d&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"light-gray",children:(0,a.toFixed)(s/10,1)+" kHz"})||(0,o.createComponentVNode)(2,c.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:10,minValue:p/10,maxValue:m/10,value:s/10,format:function(e){return(0,a.toFixed)(e,1)},onDrag:function(e,t){return n("frequency",{adjust:t-s/10})}}),N&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:N.color,ml:2,children:["[",N.name,"]"]})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Audio",children:[(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:f?"volume-up":"volume-mute",selected:f,onClick:function(){return n("listen")}}),(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:h?"microphone":"microphone-slash",selected:h,onClick:function(){return n("broadcast")}}),!!C&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:g,content:"High volume "+(g?"ON":"OFF"),onClick:function(){return n("command")}}),!!v&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:b,content:"Subspace Tx "+(b?"ON":"OFF"),onClick:function(){return n("subspace")}})]}),!!b&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Channels",children:[0===V.length&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"bad",children:"No encryption keys installed."}),V.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{children:(0,o.createComponentVNode)(2,c.Button,{icon:e.status?"check-square-o":"square-o",selected:e.status,content:e.name,onClick:function(){return n("channel",{channel:e.name})}})},e.name)}))]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RapidPipeDispenser=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=["Atmospherics","Disposals","Transit Tubes"],l={Atmospherics:"wrench",Disposals:"trash-alt","Transit Tubes":"bus",Pipes:"grip-lines","Disposal Pipes":"grip-lines",Devices:"microchip","Heat Exchange":"thermometer-half","Station Equipment":"microchip"},u={grey:"#bbbbbb",amethyst:"#a365ff",blue:"#4466ff",brown:"#b26438",cyan:"#48eae8",dark:"#808080",green:"#1edd00",orange:"#ffa030",purple:"#b535ea",red:"#ff3333",violet:"#6e00f6",yellow:"#ffce26"},d=[{name:"Dispense",bitmask:1},{name:"Connect",bitmask:2},{name:"Destroy",bitmask:4},{name:"Paint",bitmask:8}];t.RapidPipeDispenser=function(e){var t=(0,a.useBackend)(e),n=t.act,s=t.data,p=s.category,m=s.categories,f=void 0===m?[]:m,h=s.selected_color,C=s.piping_layer,g=s.mode,b=s.preview_rows.flatMap((function(e){return e.previews}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Category",children:c.map((function(e,t){return(0,o.createComponentVNode)(2,i.Button,{selected:p===t,icon:l[e],color:"transparent",content:e,onClick:function(){return n("category",{category:t})}},e)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Modes",children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:g&e.bitmask,content:e.name,onClick:function(){return n("mode",{mode:e.bitmask})}},e.bitmask)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,width:"64px",color:u[h],content:h}),Object.keys(u).map((function(e){return(0,o.createComponentVNode)(2,i.ColorBox,{ml:1,color:u[e],onClick:function(){return n("color",{paint_color:e})}},e)}))]})]})}),(0,o.createComponentVNode)(2,i.Flex,{m:-.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,children:(0,o.createComponentVNode)(2,i.Section,{children:[0===p&&(0,o.createComponentVNode)(2,i.Box,{mb:1,children:[1,2,3].map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:e===C,content:"Layer "+e,onClick:function(){return n("piping_layer",{piping_layer:e})}},e)}))}),(0,o.createComponentVNode)(2,i.Box,{width:"108px",children:b.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{title:e.dir_name,selected:e.selected,style:{width:"48px",height:"48px",padding:0},onClick:function(){return n("setdir",{dir:e.dir,flipped:e.flipped})},children:(0,o.createComponentVNode)(2,i.Box,{className:(0,r.classes)(["pipes32x32",e.dir+"-"+e.icon_state]),style:{transform:"scale(1.5) translate(17%, 17%)"}})},e.dir)}))})]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,grow:1,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{fluid:!0,icon:l[e.cat_name],label:e.cat_name,children:function(){return e.recipes.map((function(t){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,ellipsis:!0,checked:t.selected,content:t.pipe_name,title:t.pipe_name,onClick:function(){return n("pipe_type",{pipe_type:t.pipe_index,category:e.cat_name})}},t.pipe_index)}))}},e.cat_name)}))})})})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SatelliteControl=void 0;var o=n(1),r=n(3),a=n(2),i=n(163);t.SatelliteControl=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.satellites||[];return(0,o.createFragment)([c.meteor_shield&&(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledListItem,{label:"Coverage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.meteor_shield_coverage/c.meteor_shield_coverage_max,content:100*c.meteor_shield_coverage/c.meteor_shield_coverage_max+"%",ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Satellite Controls",children:(0,o.createComponentVNode)(2,a.Box,{mr:-1,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.active,content:"#"+e.id+" "+e.mode,onClick:function(){return n("toggle",{id:e.id})}},e.id)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ScannerGate=void 0;var o=n(1),r=n(3),a=n(2),i=n(69),c=["Positive","Harmless","Minor","Medium","Harmful","Dangerous","BIOHAZARD"],l=[{name:"Human",value:"human"},{name:"Lizardperson",value:"lizard"},{name:"Flyperson",value:"fly"},{name:"Felinid",value:"felinid"},{name:"Plasmaman",value:"plasma"},{name:"Mothperson",value:"moth"},{name:"Jellyperson",value:"jelly"},{name:"Podperson",value:"pod"},{name:"Golem",value:"golem"},{name:"Zombie",value:"zombie"}],u=[{name:"Starving",value:150},{name:"Obese",value:600}];t.ScannerGate=function(e){var t=e.state,n=(0,r.useBackend)(e),a=n.act,c=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{locked:c.locked,onLockedStatusChange:function(){return a("toggle_lock")}}),!c.locked&&(0,o.createComponentVNode)(2,s,{state:t})],0)};var d={Off:{title:"Scanner Mode: Off",component:function(){return p}},Wanted:{title:"Scanner Mode: Wanted",component:function(){return m}},Guns:{title:"Scanner Mode: Guns",component:function(){return f}},Mindshield:{title:"Scanner Mode: Mindshield",component:function(){return h}},Disease:{title:"Scanner Mode: Disease",component:function(){return C}},Species:{title:"Scanner Mode: Species",component:function(){return g}},Nutrition:{title:"Scanner Mode: Nutrition",component:function(){return b}},Nanites:{title:"Scanner Mode: Nanites",component:function(){return v}}},s=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data.scan_mode,l=d[c]||d.off,u=l.component();return(0,o.createComponentVNode)(2,a.Section,{title:l.title,buttons:"Off"!==c&&(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"back",onClick:function(){return i("set_mode",{new_mode:"Off"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},p=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:"Select a scanning mode below."}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{content:"Wanted",onClick:function(){return t("set_mode",{new_mode:"Wanted"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Guns",onClick:function(){return t("set_mode",{new_mode:"Guns"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Mindshield",onClick:function(){return t("set_mode",{new_mode:"Mindshield"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Disease",onClick:function(){return t("set_mode",{new_mode:"Disease"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Species",onClick:function(){return t("set_mode",{new_mode:"Species"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nutrition",onClick:function(){return t("set_mode",{new_mode:"Nutrition"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nanites",onClick:function(){return t("set_mode",{new_mode:"Nanites"})}})]})],4)},m=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any warrants for their arrest."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},f=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any guns."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},h=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","a mindshield."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},C=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,l=n.data,u=l.reverse,d=l.disease_threshold;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",u?"does not have":"has"," ","a disease equal or worse than ",d,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e===d,content:e,onClick:function(){return i("set_disease_threshold",{new_threshold:e})}},e)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},g=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,u=c.reverse,d=c.target_species,s=l.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned is ",u?"not":""," ","of the ",s.name," species.","zombie"===d&&" All zombie types will be detected, including dormant zombies."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_species",{new_species:e.value})}},e.value)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},b=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,d=c.target_nutrition,s=u.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","the ",s.name," nutrition level."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_nutrition",{new_nutrition:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},v=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,u=c.nanite_cloud;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","nanite cloud ",u,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,width:"65px",minValue:1,maxValue:100,stepPixelSize:2,onChange:function(e,t){return i("set_nanite_cloud",{new_cloud:t})}})})})}),(0,o.createComponentVNode)(2,N,{state:t})],4)},N=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.reverse;return(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Scanning Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:i?"Inverted":"Default",icon:i?"random":"long-arrow-alt-right",onClick:function(){return n("toggle_reverse")},color:i?"bad":"good"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ShuttleManipulator=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.ShuttleManipulator=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.shuttles||[],u=c.templates||{},d=c.selected||{},s=c.existing_shuttle||{};return(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Status",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Table,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"JMP",onClick:function(){return n("jump_to",{type:"mobile",id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Fly",disabled:!e.can_fly,onClick:function(){return n("fly",{id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.id}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.status}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:[e.mode,!!e.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),e.timeleft,(0,o.createTextVNode)(")"),(0,o.createComponentVNode)(2,i.Button,{content:"Fast Travel",disabled:!e.can_fast_travel,onClick:function(){return n("fast_travel",{id:e.id})}},e.id)],0)]})]},e.id)}))})})}},"status"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Templates",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:(0,r.map)((function(e,t){var r=e.templates||[];return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.port_id,children:r.map((function(e){var t=e.shuttle_id===d.shuttle_id;return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{content:t?"Selected":"Select",selected:t,onClick:function(){return n("select_template",{shuttle_id:e.shuttle_id})}}),children:(!!e.description||!!e.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:e.description}),!!e.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:e.admin_notes})]})},e.shuttle_id)}))},t)}))(u)})})}},"templates"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Modification",children:(0,o.createComponentVNode)(2,i.Section,{children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{level:2,title:d.name,children:(!!d.description||!!d.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!d.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:d.description}),!!d.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:d.admin_notes})]})}),s?(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: "+s.name,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Jump To",onClick:function(){return n("jump_to",{type:"mobile",id:s.id})}}),children:[s.status,!!s.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),s.timeleft,(0,o.createTextVNode)(")")],0)]})})}):(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: None"}),(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Status",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Preview",onClick:function(){return n("preview",{shuttle_id:d.shuttle_id})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Load",color:"bad",onClick:function(){return n("load",{shuttle_id:d.shuttle_id})}})]})],0):"No shuttle selected"})},"modification")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SlimeBodySwapper=t.BodyEntry=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.body,n=e.swapFunc;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t.htmlcolor,children:t.name}),level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:{owner:"You Are Here",stranger:"Occupied",available:"Swap"}[t.occupied],selected:"owner"===t.occupied,color:"stranger"===t.occupied&&"bad",onClick:function(){return n()}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",bold:!0,color:{Dead:"bad",Unconscious:"average",Conscious:"good"}[t.status],children:t.status}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Jelly",children:t.exoticblood}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:t.area})]})})};t.BodyEntry=i;t.SlimeBodySwapper=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data.bodies,l=void 0===c?[]:c;return(0,o.createComponentVNode)(2,a.Section,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i,{body:e,swapFunc:function(){return n("swap",{ref:e.ref})}},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.Signaler=void 0;var o=n(1),r=n(2),a=n(3),i=n(20);t.Signaler=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.code,u=c.frequency,d=c.minFrequency,s=c.maxFrequency;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Frequency:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:d/10,maxValue:s/10,value:u/10,format:function(e){return(0,i.toFixed)(e,1)},width:13,onDrag:function(e,t){return n("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"freq"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.6,children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Code:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:l,width:13,onDrag:function(e,t){return n("code",{code:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"code"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.8,children:(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{mb:-.1,fluid:!0,icon:"arrow-up",content:"Send Signal",textAlign:"center",onClick:function(){return n("signal")}})})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmartVend=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.SmartVend=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Storage",buttons:!!c.isdryer&&(0,o.createComponentVNode)(2,i.Button,{icon:c.drying?"stop":"tint",onClick:function(){return n("Dry")},children:c.drying?"Stop drying":"Dry"}),children:0===c.contents.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Unfortunately, this ",c.name," is empty."]})||(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Item"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:c.verb?c.verb:"Dispense"})]}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:e.amount}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"One",disabled:e.amount<1,onClick:function(){return n("Release",{name:e.name,amount:1})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Many",disabled:e.amount<=1,onClick:function(){return n("Release",{name:e.name})}})]})]},t)}))(c.contents)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Smes=void 0;var o=n(1),r=n(3),a=n(2);t.Smes=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return t=l.capacityPercent>=100?"good":l.inputting?"average":"bad",n=l.outputting?"good":l.charge>0?"average":"bad",(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Stored Energy",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:.01*l.capacityPercent,ranges:{good:[.5,Infinity],average:[.15,.5],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.Section,{title:"Input",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.inputAttempt?"sync-alt":"times",selected:l.inputAttempt,onClick:function(){return c("tryinput")},children:l.inputAttempt?"Auto":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:t,children:l.capacityPercent>=100?"Fully Charged":l.inputting?"Charging":"Not Charging"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Input",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.inputLevel/l.inputLevelMax,content:l.inputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Input",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.inputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.inputLevelMax/1e3,onChange:function(e,t){return c("input",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Available",children:l.inputAvailable})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.outputAttempt?"power-off":"times",selected:l.outputAttempt,onClick:function(){return c("tryoutput")},children:l.outputAttempt?"On":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:n,children:l.outputting?"Sending":l.charge>0?"Not Sending":"No Charge"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.outputLevel/l.outputLevelMax,content:l.outputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.outputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.outputLevelMax/1e3,onChange:function(e,t){return c("output",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Outputting",children:l.outputUsed})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SmokeMachine=void 0;var o=n(1),r=n(3),a=n(2);t.SmokeMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.TankContents,l=(i.isTankLoaded,i.TankCurrentVolume),u=i.TankMaxVolume,d=i.active,s=i.setting,p=(i.screen,i.maxSetting),m=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Dispersal Tank",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",selected:d,content:d?"On":"Off",onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/u,ranges:{bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:l||0})," / "+u]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Range",children:[1,2,3,4,5].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:s===e,icon:"plus",content:3*e,disabled:m0?"good":"bad",children:m})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{ranges:{good:[.66,Infinity],average:[.33,.66],bad:[-Infinity,.33]},minValue:0,maxValue:1,value:l,content:c+" W"})})})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Tracking",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:0===p,onClick:function(){return n("tracking",{mode:0})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:"Timed",selected:1===p,onClick:function(){return n("tracking",{mode:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:2===p,disabled:!f,onClick:function(){return n("tracking",{mode:2})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Azimuth",children:[(0===p||1===p)&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"52px",unit:"\xb0",step:1,stepPixelSize:2,minValue:-360,maxValue:720,value:u,onDrag:function(e,t){return n("azimuth",{value:t})}}),1===p&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"80px",unit:"\xb0/m",step:.01,stepPixelSize:1,minValue:-s-.01,maxValue:s+.01,value:d,format:function(e){return(Math.sign(e)>0?"+":"-")+Math.abs(e)},onDrag:function(e,t){return n("azimuth_rate",{value:t})}}),2===p&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mt:"3px",children:[u+" \xb0"," (auto)"]})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpaceHeater=void 0;var o=n(1),r=n(3),a=n(2);t.SpaceHeater=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Cell",disabled:!i.hasPowercell||!i.open,onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,disabled:!i.hasPowercell,onClick:function(){return n("power")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cell",color:!i.hasPowercell&&"bad",children:i.hasPowercell&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.powerLevel/100,content:i.powerLevel+"%",ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]}})||"None"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Thermostat",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"18px",color:Math.abs(i.targetTemp-i.currentTemp)>50?"bad":Math.abs(i.targetTemp-i.currentTemp)>20?"average":"good",children:[i.currentTemp,"\xb0C"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:i.open&&(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.targetTemp),width:"65px",unit:"\xb0C",minValue:i.minTemp,maxValue:i.maxTemp,onChange:function(e,t){return n("target",{target:t})}})||i.targetTemp+"\xb0C"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:i.open?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"thermometer-half",content:"Auto",selected:"auto"===i.mode,onClick:function(){return n("mode",{mode:"auto"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fire-alt",content:"Heat",selected:"heat"===i.mode,onClick:function(){return n("mode",{mode:"heat"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fan",content:"Cool",selected:"cool"===i.mode,onClick:function(){return n("mode",{mode:"cool"})}})],4):"Auto"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider)]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpawnersMenu=void 0;var o=n(1),r=n(3),a=n(2);t.SpawnersMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.spawners||[];return(0,o.createComponentVNode)(2,a.Section,{children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" ("+e.amount_left+" left)",level:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Jump",onClick:function(){return n("jump",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Spawn",onClick:function(){return n("spawn",{name:e.name})}})],4),children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mb:1,fontSize:"20px",children:e.short_desc}),(0,o.createComponentVNode)(2,a.Box,{children:e.flavor_text}),!!e.important_info&&(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,color:"bad",fontSize:"26px",children:e.important_info})]},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.StationAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.StationAlertConsole=function(e){var t=(0,r.useBackend)(e).data.alarms||[],n=t.Fire||[],i=t.Atmosphere||[],c=t.Power||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Fire Alarms",children:(0,o.createVNode)(1,"ul",null,[0===n.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),n.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Atmospherics Alarms",children:(0,o.createVNode)(1,"ul",null,[0===i.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),i.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Alarms",children:(0,o.createVNode)(1,"ul",null,[0===c.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),c.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SuitStorageUnit=void 0;var o=n(1),r=n(3),a=n(2);t.SuitStorageUnit=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.locked,l=i.open,u=i.safeties,d=i.uv_active,s=i.occupied,p=i.suit,m=i.helmet,f=i.mask,h=i.storage;return(0,o.createFragment)([!(!s||!u)&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Biological entity detected in suit chamber. Please remove before continuing with operation."}),d&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Contents are currently being decontaminated. Please wait."})||(0,o.createComponentVNode)(2,a.Section,{title:"Storage",minHeight:"260px",buttons:(0,o.createFragment)([!l&&(0,o.createComponentVNode)(2,a.Button,{icon:c?"unlock":"lock",content:c?"Unlock":"Lock",onClick:function(){return n("lock")}}),!c&&(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-out-alt":"sign-in-alt",content:l?"Close":"Open",onClick:function(){return n("door")}})],0),children:c&&(0,o.createComponentVNode)(2,a.Box,{mt:6,bold:!0,textAlign:"center",fontSize:"40px",children:[(0,o.createComponentVNode)(2,a.Box,{children:"Unit Locked"}),(0,o.createComponentVNode)(2,a.Icon,{name:"lock"})]})||l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Helmet",children:(0,o.createComponentVNode)(2,a.Button,{icon:m?"square":"square-o",content:m||"Empty",disabled:!m,onClick:function(){return n("dispense",{item:"helmet"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suit",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"square":"square-o",content:p||"Empty",disabled:!p,onClick:function(){return n("dispense",{item:"suit"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mask",children:(0,o.createComponentVNode)(2,a.Button,{icon:f?"square":"square-o",content:f||"Empty",disabled:!f,onClick:function(){return n("dispense",{item:"mask"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Storage",children:(0,o.createComponentVNode)(2,a.Button,{icon:h?"square":"square-o",content:h||"Empty",disabled:!h,onClick:function(){return n("dispense",{item:"storage"})}})})]})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"recycle",content:"Decontaminate",disabled:s&&u,textAlign:"center",onClick:function(){return n("uv")}})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Tank=void 0;var o=n(1),r=n(3),a=n(2);t.Tank=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.tankPressure/1013,content:i.tankPressure+" kPa",ranges:{good:[.35,Infinity],average:[.15,.35],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:i.ReleasePressure===i.minReleasePressure,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.releasePressure),width:"65px",unit:"kPa",minValue:i.minReleasePressure,maxValue:i.maxReleasePressure,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:i.ReleasePressure===i.maxReleasePressure,onClick:function(){return n("pressure",{pressure:"max"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"",disabled:i.ReleasePressure===i.defaultReleasePressure,onClick:function(){return n("pressure",{pressure:"reset"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TankDispenser=void 0;var o=n(1),r=n(3),a=n(2);t.TankDispenser=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plasma",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.plasma?"square":"square-o",content:"Dispense",disabled:!i.plasma,onClick:function(){return n("plasma")}}),children:i.plasma}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Oxygen",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.oxygen?"square":"square-o",content:"Dispense",disabled:!i.oxygen,onClick:function(){return n("oxygen")}}),children:i.oxygen})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Teleporter=void 0;var o=n(1),r=n(3),a=n(2);t.Teleporter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.calibrated,l=i.calibrating,u=i.power_station,d=i.regime_set,s=i.teleporter_hub,p=i.target;return(0,o.createComponentVNode)(2,a.Section,{children:!u&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No power station linked."})||!s&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No hub linked."})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Regime",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Change Regime",onClick:function(){return n("regimeset")}}),children:d}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Set Target",onClick:function(){return n("settarget")}}),children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Calibration",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Calibrate Hub",onClick:function(){return n("calibrate")}}),children:l&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"In Progress"})||c&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Optimal"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Sub-Optimal"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ThermoMachine=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ThermoMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.temperature,format:function(e){return(0,r.toFixed)(e,2)}})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.pressure,format:function(e){return(0,r.toFixed)(e,2)}})," kPa"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:Math.round(c.target),unit:"K",width:"62px",minValue:Math.round(c.min),maxValue:Math.round(c.max),step:5,stepPixelSize:3,onDrag:function(e,t){return n("target",{target:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:c.target===c.min,title:"Minimum temperature",onClick:function(){return n("target",{target:c.min})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",disabled:c.target===c.initial,title:"Room Temperature",onClick:function(){return n("target",{target:c.initial})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:c.target===c.max,title:"Maximum Temperature",onClick:function(){return n("target",{target:c.max})}})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.TurbineComputer=void 0;var o=n(1),r=n(3),a=n(2);t.TurbineComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=Boolean(i.compressor&&!i.compressor_broke&&i.turbine&&!i.turbine_broke);return(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:i.online?"power-off":"times",content:i.online?"Online":"Offline",selected:i.online,disabled:!c,onClick:function(){return n("toggle_power")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reconnect",onClick:function(){return n("reconnect")}})],4),children:!c&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Compressor Status",color:!i.compressor||i.compressor_broke?"bad":"good",children:i.compressor_broke?i.compressor?"Offline":"Missing":"Online"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Status",color:!i.turbine||i.turbine_broke?"bad":"good",children:i.turbine_broke?i.turbine?"Offline":"Missing":"Online"})]})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Speed",children:[i.rpm," RPM"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Internal Temp",children:[i.temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Generated Power",children:i.power})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.VaultController=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.VaultController=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Lock Status: ",buttons:(0,o.createComponentVNode)(2,i.Button,{content:c.doorstatus?"Locked":"Unlocked",icon:c.doorstatus?"lock":"unlock",disabled:c.stored1?r-1:0),i=1;i1?t-1:0),o=1;o0?"good":"bad",content:i>0?"Earned "+i+" times":"Locked"})],0,{style:{"vertical-align":"top"}})],4,null,t)};t.Score=c;t.Achievements=function(e){var t=(0,r.useBackend)(e).data;return(0,o.createComponentVNode)(2,a.Tabs,{children:[t.categories.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e,children:(0,o.createComponentVNode)(2,a.Box,{as:"Table",children:t.achievements.filter((function(t){return t.category===e})).map((function(e){return e.score?(0,o.createComponentVNode)(2,c,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name):(0,o.createComponentVNode)(2,i,{name:e.name,desc:e.desc,icon_class:e.icon_class,value:e.value},e.name)}))})},e)})),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"High Scores",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:t.highscore.map((function(e){return(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:e.name,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"#"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Key"}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:"Score"})]}),Object.keys(e.scores).map((function(n,r){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",m:2,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{color:"label",textAlign:"center",children:r+1}),(0,o.createComponentVNode)(2,a.Table.Cell,{color:n===t.user_ckey&&"green",textAlign:"center",children:[0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",mr:2}),n,0===r&&(0,o.createComponentVNode)(2,a.Icon,{name:"crown",color:"gold",ml:2})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"center",children:e.scores[n]})]},n)}))]})},e.name)}))})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BlockQuote=void 0;var o=n(1),r=n(12),a=n(17);t.BlockQuote=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["BlockQuote",t])},n)))}},function(e,t,n){"use strict";var o,r;t.__esModule=!0,t.VNodeFlags=t.ChildFlags=void 0,t.VNodeFlags=o,function(e){e[e.HtmlElement=1]="HtmlElement",e[e.ComponentUnknown=2]="ComponentUnknown",e[e.ComponentClass=4]="ComponentClass",e[e.ComponentFunction=8]="ComponentFunction",e[e.Text=16]="Text",e[e.SvgElement=32]="SvgElement",e[e.InputElement=64]="InputElement",e[e.TextareaElement=128]="TextareaElement",e[e.SelectElement=256]="SelectElement",e[e.Void=512]="Void",e[e.Portal=1024]="Portal",e[e.ReCreate=2048]="ReCreate",e[e.ContentEditable=4096]="ContentEditable",e[e.Fragment=8192]="Fragment",e[e.InUse=16384]="InUse",e[e.ForwardRef=32768]="ForwardRef",e[e.Normalized=65536]="Normalized",e[e.ForwardRefComponent=32776]="ForwardRefComponent",e[e.FormElement=448]="FormElement",e[e.Element=481]="Element",e[e.Component=14]="Component",e[e.DOMRef=2033]="DOMRef",e[e.InUseOrNormalized=81920]="InUseOrNormalized",e[e.ClearInUse=-16385]="ClearInUse",e[e.ComponentKnown=12]="ComponentKnown"}(o||(t.VNodeFlags=o={})),t.ChildFlags=r,function(e){e[e.UnknownChildren=0]="UnknownChildren",e[e.HasInvalidChildren=1]="HasInvalidChildren",e[e.HasVNodeChildren=2]="HasVNodeChildren",e[e.HasNonKeyedChildren=4]="HasNonKeyedChildren",e[e.HasKeyedChildren=8]="HasKeyedChildren",e[e.HasTextChildren=16]="HasTextChildren",e[e.MultipleChildren=12]="MultipleChildren"}(r||(t.ChildFlags=r={}))},function(e,t,n){"use strict";t.__esModule=!0,t.ColorBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.color,n=e.content,i=e.className,c=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["color","content","className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["ColorBox",i]),color:n?null:"transparent",backgroundColor:t,content:n||"."},c)))};t.ColorBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Collapsible=void 0;var o=n(1),r=n(17),a=n(114);var i=function(e){var t,n;function i(t){var n;n=e.call(this,t)||this;var o=t.open;return n.state={open:o||!1},n}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.prototype.render=function(){var e=this,t=this.props,n=this.state.open,i=t.children,c=t.color,l=void 0===c?"default":c,u=t.title,d=t.buttons,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(t,["children","color","title","buttons"]);return(0,o.createComponentVNode)(2,r.Box,{mb:1,children:[(0,o.createVNode)(1,"div","Table",[(0,o.createVNode)(1,"div","Table__cell",(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Button,Object.assign({fluid:!0,color:l,icon:n?"chevron-down":"chevron-right",onClick:function(){return e.setState({open:!n})}},s,{children:u}))),2),d&&(0,o.createVNode)(1,"div","Table__cell Table__cell--collapsing",d,0)],0),n&&(0,o.createComponentVNode)(2,r.Box,{mt:1,children:i})]})},i}(o.Component);t.Collapsible=i},function(e,t,n){"use strict";t.__esModule=!0,t.Dimmer=void 0;var o=n(1),r=n(17);t.Dimmer=function(e){var t=e.style,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["style"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,r.Box,Object.assign({style:Object.assign({position:"absolute",top:0,bottom:0,left:0,right:0,"background-color":"rgba(0, 0, 0, 0.75)","z-index":1},t)},n)))}},function(e,t,n){"use strict";t.__esModule=!0,t.Dropdown=void 0;var o=n(1),r=n(12),a=n(17),i=n(87);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t,n;function l(t){var n;return(n=e.call(this,t)||this).state={selected:t.selected,open:!1},n.handleClick=function(){n.state.open&&n.setOpen(!1)},n}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.componentWillUnmount=function(){window.removeEventListener("click",this.handleClick)},u.setOpen=function(e){var t=this;this.setState({open:e}),e?(setTimeout((function(){return window.addEventListener("click",t.handleClick)})),this.menuRef.focus()):window.removeEventListener("click",this.handleClick)},u.setSelected=function(e){this.setState({selected:e}),this.setOpen(!1),this.props.onSelected(e)},u.buildMenu=function(){var e=this,t=this.props.options,n=(void 0===t?[]:t).map((function(t){return(0,o.createVNode)(1,"div","Dropdown__menuentry",t,0,{onClick:function(n){e.setSelected(t)}},t)}));return n.length?n:"No Options Found"},u.render=function(){var e=this,t=this.props,n=t.color,l=void 0===n?"default":n,u=t.over,d=t.width,s=(t.onClick,t.selected,c(t,["color","over","width","onClick","selected"])),p=s.className,m=c(s,["className"]),f=u?!this.state.open:this.state.open,h=this.state.open?(0,o.createVNode)(1,"div",(0,r.classes)(["Dropdown__menu",u&&"Dropdown__over"]),this.buildMenu(),0,{tabIndex:"-1",style:{width:d}},null,(function(t){e.menuRef=t})):null;return(0,o.createVNode)(1,"div","Dropdown",[(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({width:d,className:(0,r.classes)(["Dropdown__control","Button","Button--color--"+l,p])},m,{onClick:function(t){e.setOpen(!e.state.open)},children:[(0,o.createVNode)(1,"span","Dropdown__selected-text",this.state.selected,0),(0,o.createVNode)(1,"span","Dropdown__arrow-button",(0,o.createComponentVNode)(2,i.Icon,{name:f?"chevron-up":"chevron-down"}),2)]}))),h],0)},l}(o.Component);t.Dropdown=l},function(e,t,n){"use strict";t.__esModule=!0,t.FlexItem=t.computeFlexItemProps=t.Flex=t.computeFlexProps=void 0;var o=n(1),r=n(12),a=n(17);function i(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var c=function(e){var t=e.className,n=e.direction,o=e.wrap,a=e.align,c=e.justify,l=e.spacing,u=void 0===l?0:l,d=i(e,["className","direction","wrap","align","justify","spacing"]);return Object.assign({className:(0,r.classes)(["Flex",u>0&&"Flex--spacing--"+u,t]),style:Object.assign({},d.style,{"flex-direction":n,"flex-wrap":o,"align-items":a,"justify-content":c})},d)};t.computeFlexProps=c;var l=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},c(e))))};t.Flex=l,l.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.className,n=e.grow,o=e.order,a=e.align,c=i(e,["className","grow","order","align"]);return Object.assign({className:(0,r.classes)(["Flex__item",t]),style:Object.assign({},c.style,{"flex-grow":n,order:o,"align-self":a})},c)};t.computeFlexItemProps=u;var d=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({},u(e))))};t.FlexItem=d,d.defaultHooks=r.pureComponentHooks,l.Item=d},function(e,t,n){"use strict";t.__esModule=!0,t.NoticeBox=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className"]);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["NoticeBox",t])},n)))};t.NoticeBox=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.NumberInput=void 0;var o=n(1),r=n(20),a=n(12),i=n(19),c=n(158),l=n(17);var u=function(e){var t,n;function u(t){var n;n=e.call(this,t)||this;var a=t.value;return n.inputRef=(0,o.createRef)(),n.state={value:a,dragging:!1,editing:!1,internalValue:null,origin:null,suppressingFlicker:!1},n.flickerTimer=null,n.suppressFlicker=function(){var e=n.props.suppressFlicker;e>0&&(n.setState({suppressingFlicker:!0}),clearTimeout(n.flickerTimer),n.flickerTimer=setTimeout((function(){return n.setState({suppressingFlicker:!1})}),e))},n.handleDragStart=function(e){var t=n.props.value;n.state.editing||(document.body.style["pointer-events"]="none",n.ref=e.target,n.setState({dragging:!1,origin:e.screenY,value:t,internalValue:t}),n.timer=setTimeout((function(){n.setState({dragging:!0})}),250),n.dragInterval=setInterval((function(){var t=n.state,o=t.dragging,r=t.value,a=n.props.onDrag;o&&a&&a(e,r)}),500),document.addEventListener("mousemove",n.handleDragMove),document.addEventListener("mouseup",n.handleDragEnd))},n.handleDragMove=function(e){var t=n.props,o=t.minValue,a=t.maxValue,i=t.step,c=t.stepPixelSize;n.setState((function(t){var n=Object.assign({},t),l=n.origin-e.screenY;if(t.dragging){var u=Number.isFinite(o)?o%i:0;n.internalValue=(0,r.clamp)(n.internalValue+l*i/c,o-i,a+i),n.value=(0,r.clamp)(n.internalValue-n.internalValue%i+u,o,a),n.origin=e.screenY}else Math.abs(l)>4&&(n.dragging=!0);return n}))},n.handleDragEnd=function(e){var t=n.props,o=t.onChange,r=t.onDrag,a=n.state,i=a.dragging,c=a.value,l=a.internalValue;if(document.body.style["pointer-events"]="auto",clearTimeout(n.timer),clearInterval(n.dragInterval),n.setState({dragging:!1,editing:!i,origin:null}),document.removeEventListener("mousemove",n.handleDragMove),document.removeEventListener("mouseup",n.handleDragEnd),i)n.suppressFlicker(),o&&o(e,c),r&&r(e,c);else if(n.inputRef){var u=n.inputRef.current;u.value=l;try{u.focus(),u.select()}catch(d){}}},n}return n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,u.prototype.render=function(){var e=this,t=this.state,n=t.dragging,u=t.editing,d=t.value,s=t.suppressingFlicker,p=this.props,m=p.className,f=p.fluid,h=p.animated,C=p.value,g=p.unit,b=p.minValue,v=p.maxValue,N=p.height,V=p.width,y=p.lineHeight,_=p.fontSize,x=p.format,k=p.onChange,L=p.onDrag,w=C;(n||s)&&(w=d);var B=function(e){return(0,o.createVNode)(1,"div","NumberInput__content",e+(g?" "+g:""),0,{unselectable:i.tridentVersion<=4})},S=h&&!n&&!s&&(0,o.createComponentVNode)(2,c.AnimatedNumber,{value:w,format:x,children:B})||B(x?x(w):w);return(0,o.createComponentVNode)(2,l.Box,{className:(0,a.classes)(["NumberInput",f&&"NumberInput--fluid",m]),minWidth:V,minHeight:N,lineHeight:y,fontSize:_,onMouseDown:this.handleDragStart,children:[(0,o.createVNode)(1,"div","NumberInput__barContainer",(0,o.createVNode)(1,"div","NumberInput__bar",null,1,{style:{height:(0,r.clamp)((w-b)/(v-b)*100,0,100)+"%"}}),2),S,(0,o.createVNode)(64,"input","NumberInput__input",null,1,{style:{display:u?undefined:"none",height:N,"line-height":y,"font-size":_},onBlur:function(t){if(u){var n=(0,r.clamp)(t.target.value,b,v);e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),L&&L(t,n)}},onKeyDown:function(t){if(13===t.keyCode){var n=(0,r.clamp)(t.target.value,b,v);return e.setState({editing:!1,value:n}),e.suppressFlicker(),k&&k(t,n),void(L&&L(t,n))}27!==t.keyCode||e.setState({editing:!1})}},null,this.inputRef)]})},u}(o.Component);t.NumberInput=u,u.defaultHooks=a.pureComponentHooks,u.defaultProps={minValue:-Infinity,maxValue:+Infinity,step:1,stepPixelSize:1,suppressFlicker:50}},function(e,t,n){"use strict";t.__esModule=!0,t.ProgressBar=void 0;var o=n(1),r=n(12),a=n(20),i=function(e){var t=e.value,n=e.minValue,i=void 0===n?0:n,c=e.maxValue,l=void 0===c?1:c,u=e.ranges,d=void 0===u?{}:u,s=e.content,p=e.children,m=(t-i)/(l-i),f=s!==undefined||p!==undefined,h=e.color;if(!h)for(var C=0,g=Object.keys(d);C=v[0]&&t<=v[1]){h=b;break}}return h||(h="default"),(0,o.createVNode)(1,"div",(0,r.classes)(["ProgressBar","ProgressBar--color--"+h]),[(0,o.createVNode)(1,"div","ProgressBar__fill",null,1,{style:{width:100*(0,a.clamp)(m,0,1)+"%"}}),(0,o.createVNode)(1,"div","ProgressBar__content",[f&&s,f&&p,!f&&(0,a.toFixed)(100*m)+"%"],0)],4)};t.ProgressBar=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Section=void 0;var o=n(1),r=n(12),a=n(17);var i=function(e){var t=e.className,n=e.title,i=e.level,c=void 0===i?1:i,l=e.buttons,u=e.content,d=e.children,s=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,["className","title","level","buttons","content","children"]),p=!(0,r.isFalsy)(n)||!(0,r.isFalsy)(l),m=!(0,r.isFalsy)(u)||!(0,r.isFalsy)(d);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Section","Section--level--"+c,t])},s,{children:[p&&(0,o.createVNode)(1,"div","Section__title",[(0,o.createVNode)(1,"span","Section__titleText",n,0),(0,o.createVNode)(1,"div","Section__buttons",l,0)],4),m&&(0,o.createVNode)(1,"div","Section__content",[u,d],0)]})))};t.Section=i,i.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Tab=t.Tabs=void 0;var o=n(1),r=n(12),a=n(17),i=n(114);function c(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}var l=function(e){var t=e,n=Array.isArray(t),o=0;for(t=n?t:t[Symbol.iterator]();;){var r;if(n){if(o>=t.length)break;r=t[o++]}else{if((o=t.next()).done)break;r=o.value}var a=r;if(!a.props||"Tab"!==a.props.__type__){var i=JSON.stringify(a,null,2);throw new Error(" only accepts children of type .This is what we received: "+i)}}},u=function(e){var t,n;function u(t){var n;return(n=e.call(this,t)||this).state={activeTabKey:null},n}n=e,(t=u).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var d=u.prototype;return d.getActiveTab=function(){var e=this.state,t=this.props,n=(0,r.normalizeChildren)(t.children);l(n);var o=t.activeTab||e.activeTabKey,a=n.find((function(e){return(e.key||e.props.label)===o}));return a||(a=n[0],o=a&&(a.key||a.props.label)),{tabs:n,activeTab:a,activeTabKey:o}},d.render=function(){var e=this,t=this.props,n=t.className,l=t.vertical,u=(t.children,c(t,["className","vertical","children"])),d=this.getActiveTab(),s=d.tabs,p=d.activeTab,m=d.activeTabKey,f=null;return p&&(f=p.props.content||p.props.children),"function"==typeof f&&(f=f(m)),(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({className:(0,r.classes)(["Tabs",l&&"Tabs--vertical",n])},u,{children:[(0,o.createVNode)(1,"div","Tabs__tabBox",s.map((function(t){var n=t.props,a=n.className,l=n.label,u=(n.content,n.children,n.onClick),d=n.highlight,s=c(n,["className","label","content","children","onClick","highlight"]),p=t.key||t.props.label,f=t.active||p===m;return(0,o.normalizeProps)((0,o.createComponentVNode)(2,i.Button,Object.assign({className:(0,r.classes)(["Tabs__tab",f&&"Tabs__tab--active",d&&!f&&"color-yellow",a]),selected:f,color:"transparent",onClick:function(n){e.setState({activeTabKey:p}),u&&u(n,t)}},s,{children:l}),p))})),0),(0,o.createVNode)(1,"div","Tabs__content",f||null,0)]})))},u}(o.Component);t.Tabs=u;var d=function(e){return null};t.Tab=d,d.defaultProps={__type__:"Tab"},u.Tab=d},function(e,t,n){"use strict";t.__esModule=!0,t.TitleBar=void 0;var o=n(1),r=n(12),a=n(29),i=n(19),c=n(37),l=n(87),u=function(e){switch(e){case c.UI_INTERACTIVE:return"good";case c.UI_UPDATE:return"average";case c.UI_DISABLED:default:return"bad"}},d=function(e){var t=e.className,n=e.title,c=e.status,d=e.fancy,s=e.onDragStart,p=e.onClose;return(0,o.createVNode)(1,"div",(0,r.classes)(["TitleBar",t]),[(0,o.createComponentVNode)(2,l.Icon,{className:"TitleBar__statusIcon",color:u(c),name:"eye"}),(0,o.createVNode)(1,"div","TitleBar__title",n===n.toLowerCase()?(0,a.toTitleCase)(n):n,0),(0,o.createVNode)(1,"div","TitleBar__dragZone",null,1,{onMousedown:function(e){return d&&s(e)}}),!!d&&(0,o.createVNode)(1,"div","TitleBar__close TitleBar__clickable",i.tridentVersion<=4?"x":"\xd7",0,{onclick:p})],0)};t.TitleBar=d,d.defaultHooks=r.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Chart=void 0;var o=n(1),r=n(23),a=n(17),i=n(12),c=n(19);var l=function(e,t,n,o){if(0===e.length)return[];var a=(0,r.zipWith)(Math.min).apply(void 0,e),i=(0,r.zipWith)(Math.max).apply(void 0,e);return n!==undefined&&(a[0]=n[0],i[0]=n[1]),o!==undefined&&(a[1]=o[0],i[1]=o[1]),(0,r.map)((function(e){return(0,r.zipWith)((function(e,t,n,o){return(e-t)/(n-t)*o}))(e,a,i,t)}))(e)},u=function(e){for(var t="",n=0;n=0||(r[n]=e[n]);return r}(t,["data","rangeX","rangeY","fillColor","strokeColor","strokeWidth"]),g=this.state.viewBox,b=l(r,g,i,c);if(b.length>0){var v=b[0],N=b[b.length-1];b.push([g[0]+h,N[1]]),b.push([g[0]+h,-h]),b.push([-h,-h]),b.push([-h,v[1]])}var V=u(b);return(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({position:"relative"},C,{children:function(t){return(0,o.normalizeProps)((0,o.createVNode)(1,"div",null,(0,o.createVNode)(32,"svg",null,(0,o.createVNode)(32,"polyline",null,null,1,{transform:"scale(1, -1) translate(0, -"+g[1]+")",fill:s,stroke:m,"stroke-width":h,points:V}),2,{viewBox:"0 0 "+g[0]+" "+g[1],preserveAspectRatio:"none",style:{position:"absolute",top:0,left:0,right:0,bottom:0,overflow:"hidden"}}),2,Object.assign({},t),null,e.ref))}})))},r}(o.Component);d.defaultHooks=i.pureComponentHooks;var s={Line:c.tridentVersion<=4?function(e){return null}:d};t.Chart=s},function(e,t,n){"use strict";t.__esModule=!0,t.AiAirlock=void 0;var o=n(1),r=n(3),a=n(2);t.AiAirlock=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c={2:{color:"good",localStatusText:"Offline"},1:{color:"average",localStatusText:"Caution"},0:{color:"bad",localStatusText:"Optimal"}},l=c[i.power.main]||c[0],u=c[i.power.backup]||c[0],d=c[i.shock]||c[0];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main",color:l.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.main,content:"Disrupt",onClick:function(){return n("disrupt-main")}}),children:[i.power.main?"Online":"Offline"," ",i.wires.main_1&&i.wires.main_2?i.power.main_timeleft>0&&"["+i.power.main_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Backup",color:u.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",disabled:!i.power.backup,content:"Disrupt",onClick:function(){return n("disrupt-backup")}}),children:[i.power.backup?"Online":"Offline"," ",i.wires.backup_1&&i.wires.backup_2?i.power.backup_timeleft>0&&"["+i.power.backup_timeleft+"s]":"[Wires have been cut!]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Electrify",color:d.color,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",disabled:!(i.wires.shock&&0===i.shock),content:"Restore",onClick:function(){return n("shock-restore")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Temporary",onClick:function(){return n("shock-temp")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"bolt",disabled:!i.wires.shock,content:"Permanent",onClick:function(){return n("shock-perm")}})],4),children:[2===i.shock?"Safe":"Electrified"," ",(i.wires.shock?i.shock_timeleft>0&&"["+i.shock_timeleft+"s]":"[Wires have been cut!]")||-1===i.shock_timeleft&&"[Permanent]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access and Door Control",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID Scan",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.id_scanner?"power-off":"times",content:i.id_scanner?"Enabled":"Disabled",selected:i.id_scanner,disabled:!i.wires.id_scanner,onClick:function(){return n("idscan-toggle")}}),children:!i.wires.id_scanner&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Access",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.emergency?"power-off":"times",content:i.emergency?"Enabled":"Disabled",selected:i.emergency,onClick:function(){return n("emergency-toggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolts",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.locked?"lock":"unlock",content:i.locked?"Lowered":"Raised",selected:i.locked,disabled:!i.wires.bolts,onClick:function(){return n("bolt-toggle")}}),children:!i.wires.bolts&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Bolt Lights",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.lights?"power-off":"times",content:i.lights?"Enabled":"Disabled",selected:i.lights,disabled:!i.wires.lights,onClick:function(){return n("light-toggle")}}),children:!i.wires.lights&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Force Sensors",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.safe?"power-off":"times",content:i.safe?"Enabled":"Disabled",selected:i.safe,disabled:!i.wires.safe,onClick:function(){return n("safe-toggle")}}),children:!i.wires.safe&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Timing Safety",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.speed?"power-off":"times",content:i.speed?"Enabled":"Disabled",selected:i.speed,disabled:!i.wires.timing,onClick:function(){return n("speed-toggle")}}),children:!i.wires.timing&&"[Wires have been cut!]"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door Control",color:"bad",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.opened?"sign-out-alt":"sign-in-alt",content:i.opened?"Open":"Closed",selected:i.opened,disabled:i.locked||i.welded,onClick:function(){return n("open-close")}}),children:!(!i.locked&&!i.welded)&&(0,o.createVNode)(1,"span",null,[(0,o.createTextVNode)("[Door is "),i.locked?"bolted":"",i.locked&&i.welded?" and ":"",i.welded?"welded":"",(0,o.createTextVNode)("!]")],0)})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.AirAlarm=void 0;var o=n(1),r=n(20),a=n(29),i=n(3),c=n(2),l=n(37),u=n(69);t.AirAlarm=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.data,c=a.locked&&!a.siliconUser;return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.InterfaceLockNoticeBox,{siliconUser:a.siliconUser,locked:a.locked,onLockStatusChange:function(){return r("lock")}}),(0,o.createComponentVNode)(2,d,{state:t}),!c&&(0,o.createComponentVNode)(2,p,{state:t})],0)};var d=function(e){var t=(0,i.useBackend)(e).data,n=(t.environment_data||[]).filter((function(e){return e.value>=.01})),a={0:{color:"good",localStatusText:"Optimal"},1:{color:"average",localStatusText:"Caution"},2:{color:"bad",localStatusText:"Danger (Internals Required)"}},l=a[t.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.Section,{title:"Air Status",children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[n.length>0&&(0,o.createFragment)([n.map((function(e){var t=a[e.danger_level]||a[0];return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:e.name,color:t.color,children:[(0,r.toFixed)(e.value,2),e.unit]},e.name)})),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Local status",color:l.color,children:l.localStatusText}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Area status",color:t.atmos_alarm||t.fire_alarm?"bad":"good",children:(t.atmos_alarm?"Atmosphere Alarm":t.fire_alarm&&"Fire Alarm")||"Nominal"})],0)||(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Cannot obtain air sample for analysis."}),!!t.emagged&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Warning",color:"bad",children:"Safety measures offline. Device may exhibit abnormal behavior."})]})})},s={home:{title:"Air Controls",component:function(){return m}},vents:{title:"Vent Controls",component:function(){return f}},scrubbers:{title:"Scrubber Controls",component:function(){return C}},modes:{title:"Operating Mode",component:function(){return b}},thresholds:{title:"Alarm Thresholds",component:function(){return v}}},p=function(e){var t=e.state,n=(0,i.useBackend)(e),r=n.act,a=n.config,l=s[a.screen]||s.home,u=l.component();return(0,o.createComponentVNode)(2,c.Section,{title:l.title,buttons:"home"!==a.screen&&(0,o.createComponentVNode)(2,c.Button,{icon:"arrow-left",content:"Back",onClick:function(){return r("tgui:view",{screen:"home"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},m=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data,a=r.mode,l=r.atmos_alarm;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:l?"exclamation-triangle":"exclamation",color:l&&"caution",content:"Area Atmosphere Alarm",onClick:function(){return n(l?"reset":"alarm")}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:3===a?"exclamation-triangle":"exclamation",color:3===a&&"danger",content:"Panic Siphon",onClick:function(){return n("mode",{mode:3===a?1:3})}}),(0,o.createComponentVNode)(2,c.Box,{mt:2}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"Vent Controls",onClick:function(){return n("tgui:view",{screen:"vents"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"filter",content:"Scrubber Controls",onClick:function(){return n("tgui:view",{screen:"scrubbers"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"cog",content:"Operating Mode",onClick:function(){return n("tgui:view",{screen:"modes"})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1}),(0,o.createComponentVNode)(2,c.Button,{icon:"chart-bar",content:"Alarm Thresholds",onClick:function(){return n("tgui:view",{screen:"thresholds"})}})],4)},f=function(e){var t=e.state,n=(0,i.useBackend)(e).data.vents;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,h,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},h=function(e){var t=e.id_tag,n=e.long_name,r=e.power,l=e.checks,u=e.excheck,d=e.incheck,s=e.direction,p=e.external,m=e.internal,f=e.extdefault,h=e.intdefault,C=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(n),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:r?"power-off":"times",selected:r,content:r?"On":"Off",onClick:function(){return C("power",{id_tag:t,val:Number(!r)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:"release"===s?"Pressurizing":"Releasing"}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,c.Button,{icon:"sign-in-alt",content:"Internal",selected:d,onClick:function(){return C("incheck",{id_tag:t,val:l})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"sign-out-alt",content:"External",selected:u,onClick:function(){return C("excheck",{id_tag:t,val:l})}})]}),!!d&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Internal Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(m),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_internal_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:h,content:"Reset",onClick:function(){return C("reset_internal_pressure",{id_tag:t})}})]}),!!u&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"External Target",children:[(0,o.createComponentVNode)(2,c.NumberInput,{value:Math.round(p),unit:"kPa",width:"75px",minValue:0,step:10,maxValue:5066,onChange:function(e,n){return C("set_external_pressure",{id_tag:t,value:n})}}),(0,o.createComponentVNode)(2,c.Button,{icon:"undo",disabled:f,content:"Reset",onClick:function(){return C("reset_external_pressure",{id_tag:t})}})]})]})})},C=function(e){var t=e.state,n=(0,i.useBackend)(e).data.scrubbers;return n&&0!==n.length?n.map((function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,g,Object.assign({state:t},e),e.id_tag))})):"Nothing to show"},g=function(e){var t=e.long_name,n=e.power,r=e.scrubbing,u=e.id_tag,d=e.widenet,s=e.filter_types,p=(0,i.useBackend)(e).act;return(0,o.createComponentVNode)(2,c.Section,{level:2,title:(0,a.decodeHtmlEntities)(t),buttons:(0,o.createComponentVNode)(2,c.Button,{icon:n?"power-off":"times",content:n?"On":"Off",selected:n,onClick:function(){return p("power",{id_tag:u,val:Number(!n)})}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Mode",children:[(0,o.createComponentVNode)(2,c.Button,{icon:r?"filter":"sign-in-alt",color:r||"danger",content:r?"Scrubbing":"Siphoning",onClick:function(){return p("scrubbing",{id_tag:u,val:Number(!r)})}}),(0,o.createComponentVNode)(2,c.Button,{icon:d?"expand":"compress",selected:d,content:d?"Expanded range":"Normal range",onClick:function(){return p("widenet",{id_tag:u,val:Number(!d)})}})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Filters",children:r&&s.map((function(e){return(0,o.createComponentVNode)(2,c.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,l.getGasLabel)(e.gas_id,e.gas_name),title:e.gas_name,selected:e.enabled,onClick:function(){return p("toggle_filter",{id_tag:u,val:e.gas_id})}},e.gas_id)}))||"N/A"})]})})},b=function(e){var t=(0,i.useBackend)(e),n=t.act,r=t.data.modes;return r&&0!==r.length?r.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Button,{icon:e.selected?"check-square-o":"square-o",selected:e.selected,color:e.selected&&e.danger&&"danger",content:e.name,onClick:function(){return n("mode",{mode:e.mode})}}),(0,o.createComponentVNode)(2,c.Box,{mt:1})],4,e.mode)})):"Nothing to show"},v=function(e){var t=(0,i.useBackend)(e),n=t.act,a=t.data.thresholds;return(0,o.createVNode)(1,"table","LabeledList",[(0,o.createVNode)(1,"thead",null,(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td"),(0,o.createVNode)(1,"td","color-bad","min2",16),(0,o.createVNode)(1,"td","color-average","min1",16),(0,o.createVNode)(1,"td","color-average","max1",16),(0,o.createVNode)(1,"td","color-bad","max2",16)],4),2),(0,o.createVNode)(1,"tbody",null,a.map((function(e){return(0,o.createVNode)(1,"tr",null,[(0,o.createVNode)(1,"td","LabeledList__label",e.name,0),e.settings.map((function(e){return(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,c.Button,{content:(0,r.toFixed)(e.selected,2),onClick:function(){return n("threshold",{env:e.env,"var":e.val})}}),2,null,e.val)}))],0,null,e.name)})),0)],4,{style:{width:"100%"}})}},function(e,t,n){"use strict";t.__esModule=!0,t.AirlockElectronics=void 0;var o=n(1),r=n(3),a=n(2);t.AirlockElectronics=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.regions||[],l={0:{icon:"times-circle"},1:{icon:"stop-circle"},2:{icon:"check-circle"}};return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Main",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access Required",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.oneAccess?"unlock":"lock",content:i.oneAccess?"One":"All",onClick:function(){return n("one_access")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mass Modify",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"check-double",content:"Grant All",onClick:function(){return n("grant_all")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Clear All",onClick:function(){return n("clear_all")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Unrestricted Access",children:[(0,o.createComponentVNode)(2,a.Button,{icon:1&i.unres_direction?"check-square-o":"square-o",content:"North",selected:1&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"1"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:2&i.unres_direction?"check-square-o":"square-o",content:"East",selected:2&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"2"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:4&i.unres_direction?"check-square-o":"square-o",content:"South",selected:4&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"4"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:8&i.unres_direction?"check-square-o":"square-o",content:"West",selected:8&i.unres_direction,onClick:function(){return n("direc_set",{unres_direction:"8"})}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Access",children:(0,o.createComponentVNode)(2,a.Box,{height:"261px",children:(0,o.createComponentVNode)(2,a.Tabs,{vertical:!0,children:c.map((function(e){var t=e.name,r=e.accesses||[],i=l[function(e){var t=!1,n=!1;return e.forEach((function(e){e.req?t=!0:n=!0})),!t&&n?0:t&&n?1:2}(r)].icon;return(0,o.createComponentVNode)(2,a.Tabs.Tab,{icon:i,label:t,children:function(){return r.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:(0,o.createComponentVNode)(2,a.Button,{icon:e.req?"check-square-o":"square-o",content:e.name,selected:e.req,onClick:function(){return n("set",{access:e.id})}})},e.id)}))}},t)}))})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Apc=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Apc=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u={2:{color:"good",externalPowerText:"External Power",chargingText:"Fully Charged"},1:{color:"average",externalPowerText:"Low External Power",chargingText:"Charging"},0:{color:"bad",externalPowerText:"No External Power",chargingText:"Not Charging"}},d={1:{icon:"terminal",content:"Override Programming",action:"hack"},2:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"},3:{icon:"caret-square-left",content:"Return to Main Core",action:"deoccupy"},4:{icon:"caret-square-down",content:"Shunt Core Process",action:"occupy"}},s=u[c.externalPower]||u[0],p=u[c.chargingStatus]||u[0],m=c.powerChannels||[],f=d[c.malfStatus]||d[0],h=c.powerCellStatus/100;return c.failTime>0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createVNode)(1,"b",null,(0,o.createVNode)(1,"h3",null,"SYSTEM FAILURE",16),2),(0,o.createVNode)(1,"i",null,"I/O regulators malfunction detected! Waiting for system reboot...",16),(0,o.createVNode)(1,"br"),"Automatic reboot in ",c.failTime," seconds...",(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reboot Now",onClick:function(){return n("reboot")}})]}):(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:c.siliconUser,locked:c.locked,onLockStatusChange:function(){return n("lock")}}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Main Breaker",color:s.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",content:c.isOperating?"On":"Off",selected:c.isOperating&&!l,disabled:l,onClick:function(){return n("breaker")}}),children:["[ ",s.externalPowerText," ]"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power Cell",children:(0,o.createComponentVNode)(2,a.ProgressBar,{color:"good",value:h})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",color:p.color,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.chargeMode?"sync":"close",content:c.chargeMode?"Auto":"Off",disabled:l,onClick:function(){return n("charge")}}),children:["[ ",p.chargingText," ]"]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Channels",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[m.map((function(e){var t=e.topicParams;return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.title,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{inline:!0,mx:2,color:e.status>=2?"good":"bad",children:e.status>=2?"On":"Off"}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:!l&&(1===e.status||3===e.status),disabled:l,onClick:function(){return n("channel",t.auto)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:"On",selected:!l&&2===e.status,disabled:l,onClick:function(){return n("channel",t.on)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:!l&&0===e.status,disabled:l,onClick:function(){return n("channel",t.off)}})],4),children:e.powerLoad},e.title)})),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Total Load",children:(0,o.createVNode)(1,"b",null,c.totalLoad,0)})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Misc",buttons:!!c.siliconUser&&(0,o.createFragment)([!!c.malfStatus&&(0,o.createComponentVNode)(2,a.Button,{icon:f.icon,content:f.content,color:"bad",onClick:function(){return n(f.action)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Overload",onClick:function(){return n("overload")}})],0),children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cover Lock",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.coverLocked?"lock":"unlock",content:c.coverLocked?"Engaged":"Disengaged",disabled:l,onClick:function(){return n("cover")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Emergency Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.emergencyLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("emergency_lighting")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Night Shift Lighting",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:c.nightshiftLights?"Enabled":"Disabled",disabled:l,onClick:function(){return n("toggle_nightshift")}})})]}),c.hijackable&&(0,o.createComponentVNode)(2,a.Section,{title:"Hijacking",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"unlock",content:"Hijack",disabled:c.hijacker,onClick:function(){return n("hijack")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lockdown",disabled:!c.lockdownavail,onClick:function(){return n("lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:"Drain",disabled:!c.drainavail,onClick:function(){return n("drain")}})],4)})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosAlertConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.priority||[],l=i.minor||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Alarms",children:(0,o.createVNode)(1,"ul",null,[c.length>0?c.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"bad",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Priority Alerts",16),l.length>0?l.map((function(e){return(0,o.createVNode)(1,"li",null,(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:e,color:"average",onClick:function(){return n("clear",{zone:e})}}),2,null,e)})):(0,o.createVNode)(1,"li","color-good","No Minor Alerts",16)],0)})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosControlConsole=void 0;var o=n(1),r=n(23),a=n(20),i=n(3),c=n(2);t.AtmosControlConsole=function(e){var t=(0,i.useBackend)(e),n=t.act,l=t.data,u=l.sensors||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.Section,{title:!!l.tank&&u[0].long_name,children:u.map((function(e){var t=e.gases||{};return(0,o.createComponentVNode)(2,c.Section,{title:!l.tank&&e.long_name,level:2,children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Pressure",children:(0,a.toFixed)(e.pressure,2)+" kPa"}),!!e.temperature&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Temperature",children:(0,a.toFixed)(e.temperature,2)+" K"}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:t,children:(0,a.toFixed)(e,2)+"%"})}))(t)]})},e.id_tag)}))}),l.tank&&(0,o.createComponentVNode)(2,c.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,c.Button,{icon:"undo",content:"Reconnect",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Injector",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.inputting?"power-off":"times",content:l.inputting?"Injecting":"Off",selected:l.inputting,onClick:function(){return n("input")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Input Rate",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:l.inputRate,unit:"L/s",width:"63px",minValue:0,maxValue:200,suppressFlicker:2e3,onChange:function(e,t){return n("rate",{rate:t})}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Regulator",children:(0,o.createComponentVNode)(2,c.Button,{icon:l.outputting?"power-off":"times",content:l.outputting?"Open":"Closed",selected:l.outputting,onClick:function(){return n("output")}})}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Output Pressure",children:(0,o.createComponentVNode)(2,c.NumberInput,{value:parseFloat(l.outputPressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,suppressFlicker:2e3,onChange:function(e,t){return n("pressure",{pressure:t})}})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosFilter=void 0;var o=n(1),r=n(3),a=n(2),i=n(37);t.AtmosFilter=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.filter_types||[];return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(c.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onDrag:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:c.rate===c.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Filter",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:e.selected,content:(0,i.getGasLabel)(e.id,e.name),onClick:function(){return n("filter",{mode:e.id})}},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosMixer=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosMixer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.set_pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.set_pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 1",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node1_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node1",{concentration:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Node 2",children:(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:i.node2_concentration,unit:"%",width:"60px",minValue:0,maxValue:100,stepPixelSize:2,onDrag:function(e,t){return n("node2",{concentration:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.AtmosPump=void 0;var o=n(1),r=n(3),a=n(2);t.AtmosPump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,onClick:function(){return n("power")}})}),i.max_rate?(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Transfer Rate",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.rate),width:"63px",unit:"L/s",minValue:0,maxValue:200,onChange:function(e,t){return n("rate",{rate:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.rate===i.max_rate,onClick:function(){return n("rate",{rate:"max"})}})]}):(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Pressure",children:[(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.pressure),unit:"kPa",width:"75px",minValue:0,maxValue:4500,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"plus",content:"Max",disabled:i.pressure===i.max_pressure,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.BankMachine=void 0;var o=n(1),r=n(3),a=n(2);t.BankMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.current_balance,l=i.siphoning,u=i.station_name;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:u+" Vault",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Balance",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"times":"sync",content:l?"Stop Siphoning":"Siphon Credits",selected:l,onClick:function(){return n(l?"halt":"siphon")}}),children:c+" cr"})})}),(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Authorized personnel only"})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BluespaceArtillery=void 0;var o=n(1),r=n(3),a=n(2);t.BluespaceArtillery=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.notice,l=i.connected,u=i.unlocked,d=i.target;return(0,o.createFragment)([!!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:c}),l?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"crosshairs",disabled:!u,onClick:function(){return n("recalibrate")}}),children:(0,o.createComponentVNode)(2,a.Box,{color:d?"average":"bad",fontSize:"25px",children:d||"No Target Set"})}),(0,o.createComponentVNode)(2,a.Section,{children:u?(0,o.createComponentVNode)(2,a.Box,{style:{margin:"auto"},children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"FIRE",color:"bad",disabled:!d,fontSize:"30px",textAlign:"center",lineHeight:"46px",onClick:function(){return n("fire")}})}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{color:"bad",fontSize:"18px",children:"Bluespace artillery is currently locked."}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"Awaiting authorization via keycard reader from at minimum two station heads."})],4)})],4):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Maintenance",children:(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",content:"Complete Deployment",onClick:function(){return n("build")}})})})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Bepis=void 0;var o=n(1),r=(n(29),n(19)),a=n(2);t.Bepis=function(e){var t=e.state,n=t.config,i=t.data,c=n.ref,l=i.amount;return(0,o.createComponentVNode)(2,a.Section,{title:"Business Exploration Protocol Incubation Sink",children:[(0,o.createComponentVNode)(2,a.Section,{title:"Information",backgroundColor:"#450F44",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.manual_power?"Off":"On",selected:!i.manual_power,onClick:function(){return(0,r.act)(c,"toggle_power")}}),children:"All you need to know about the B.E.P.I.S. and you! The B.E.P.I.S. performs hundreds of tests a second using electrical and financial resources to invent new products, or discover new technologies otherwise overlooked for being too risky or too niche to produce!"}),(0,o.createComponentVNode)(2,a.Section,{title:"Payer's Account",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"redo-alt",content:"Reset Account",onClick:function(){return(0,r.act)(c,"account_reset")}}),children:["Console is currently being operated by ",i.account_owner?i.account_owner:"no one","."]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:[(0,o.createComponentVNode)(2,a.Section,{title:"Stored Data and Statistics",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposited Credits",children:i.stored_cash}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Investment Variability",children:[i.accuracy_percentage,"%"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Innovation Bonus",children:i.positive_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Risk Offset",color:"bad",children:i.negative_cash_offset}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deposit Amount",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:l,unit:"Credits",minValue:100,maxValue:3e4,step:100,stepPixelSize:2,onChange:function(e,t){return(0,r.act)(c,"amount",{amount:t})}})})]})}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"donate",content:"Deposit Credits",disabled:1===i.manual_power||1===i.silicon_check,onClick:function(){return(0,r.act)(c,"deposit_cash")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Withdraw Credits",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"withdraw_cash")}})]})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Market Data and Analysis",children:[(0,o.createComponentVNode)(2,a.Box,{children:["Average technology cost: ",i.mean_value]}),i.error_name&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Previous Failure Reason: Deposited cash value too low. Please insert more money for future success."}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"microscope",disabled:1===i.manual_power,onClick:function(){return(0,r.act)(c,"begin_experiment")},content:"Begin Testing"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.BorgPanel=void 0;var o=n(1),r=n(3),a=n(2);t.BorgPanel=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.borg||{},l=i.cell||{},u=l.charge/l.maxcharge,d=i.channels||[],s=i.modules||[],p=i.upgrades||[],m=i.ais||[],f=i.laws||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:c.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Rename",onClick:function(){return n("rename")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.emagged?"check-square-o":"square-o",content:"Emagged",selected:c.emagged,onClick:function(){return n("toggle_emagged")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.lockdown?"check-square-o":"square-o",content:"Locked Down",selected:c.lockdown,onClick:function(){return n("toggle_lockdown")}}),(0,o.createComponentVNode)(2,a.Button,{icon:c.scrambledcodes?"check-square-o":"square-o",content:"Scrambled Codes",selected:c.scrambledcodes,onClick:function(){return n("toggle_scrambledcodes")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge",children:[l.missing?(0,o.createVNode)(1,"span","color-bad","No cell installed",16):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,content:l.charge+" / "+l.maxcharge}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("set_charge")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Change",onClick:function(){return n("change_cell")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:"Remove",color:"bad",onClick:function(){return n("remove_cell")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Radio Channels",children:d.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_radio",{channel:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Module",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:c.active_module===e.type?"check-square-o":"square-o",content:e.name,selected:c.active_module===e.type,onClick:function(){return n("setmodule",{module:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Upgrades",children:p.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.installed?"check-square-o":"square-o",content:e.name,selected:e.installed,onClick:function(){return n("toggle_upgrade",{upgrade:e.type})}},e.type)}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Master AI",children:m.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.connected?"check-square-o":"square-o",content:e.name,selected:e.connected,onClick:function(){return n("slavetoai",{slavetoai:e.ref})}},e.ref)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Laws",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:c.lawupdate?"check-square-o":"square-o",content:"Lawsync",selected:c.lawupdate,onClick:function(){return n("toggle_lawupdate")}}),children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e},e)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BrigTimer=void 0;var o=n(1),r=n(3),a=n(2);t.BrigTimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Cell Timer",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:i.timing?"Stop":"Start",selected:i.timing,onClick:function(){return n(i.timing?"stop":"start")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"lightbulb-o",content:i.flash_charging?"Recharging":"Flash",disabled:i.flash_charging,onClick:function(){return n("flash")}})],4),children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",onClick:function(){return n("time",{adjust:-600})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",onClick:function(){return n("time",{adjust:-100})}})," ",String(i.minutes).padStart(2,"0"),":",String(i.seconds).padStart(2,"0")," ",(0,o.createComponentVNode)(2,a.Button,{icon:"forward",onClick:function(){return n("time",{adjust:100})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",onClick:function(){return n("time",{adjust:600})}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Short",onClick:function(){return n("preset",{preset:"short"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Medium",onClick:function(){return n("preset",{preset:"medium"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"hourglass-start",content:"Long",onClick:function(){return n("preset",{preset:"long"})}})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.Canister=void 0;var o=n(1),r=n(3),a=n(2);t.Canister=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:["The regulator ",i.hasHoldingTank?"is":"is not"," connected to a tank."]}),(0,o.createComponentVNode)(2,a.Section,{title:"Canister",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Relabel",onClick:function(){return n("relabel")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.tankPressure})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:i.portConnected?"good":"average",content:i.portConnected?"Connected":"Not Connected"}),!!i.isPrototype&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Access",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.restricted?"lock":"unlock",color:"caution",content:i.restricted?"Restricted to Engineering":"Public",onClick:function(){return n("restricted")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Valve",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Release Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.releasePressure/(i.maxReleasePressure-i.minReleasePressure),children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.releasePressure})," kPa"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"undo",disabled:i.releasePressure===i.defaultReleasePressure,content:"Reset",onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:i.releasePressure<=i.minReleasePressure,content:"Min",onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"pencil-alt",content:"Set",onClick:function(){return n("pressure",{pressure:"input"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:i.releasePressure>=i.maxReleasePressure,content:"Max",onClick:function(){return n("pressure",{pressure:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Valve",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.valveOpen?"unlock":"lock",color:i.valveOpen?i.hasHoldingTank?"caution":"danger":null,content:i.valveOpen?"Open":"Closed",onClick:function(){return n("valve")}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",buttons:!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",color:i.valveOpen&&"danger",content:"Eject",onClick:function(){return n("eject")}}),children:[!!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:i.holdingTank.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.holdingTank.tankPressure})," kPa"]})]}),!i.hasHoldingTank&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Holding Tank"})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CargoExpress=t.Cargo=void 0;var o=n(1),r=n(23),a=n(19),i=n(2),c=n(69);t.Cargo=function(e){var t=e.state,n=t.config,r=t.data,c=n.ref,s=r.supplies||{},p=r.requests||[],m=r.cart||[],f=m.reduce((function(e,t){return e+t.cost}),0),h=!r.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:1,children:[0===m.length&&"Cart is empty",1===m.length&&"1 item",m.length>=2&&m.length+" items"," ",f>0&&"("+f+" cr)"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"transparent",content:"Clear",onClick:function(){return(0,a.act)(c,"clear")}})],4);return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle",children:r.docked&&!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{content:r.location,onClick:function(){return(0,a.act)(c,"send")}})||r.location}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"CentCom Message",children:r.message}),r.loan&&!r.requestonly?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Loan",children:r.loan_dispatched?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Loaned to Centcom"}):(0,o.createComponentVNode)(2,i.Button,{content:"Loan Shuttle",disabled:!(r.away&&r.docked),onClick:function(){return(0,a.act)(c,"loan")}})}):""]})}),(0,o.createComponentVNode)(2,i.Tabs,{mt:2,children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Catalog",icon:"list",lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Catalog",buttons:h,children:(0,o.createComponentVNode)(2,l,{state:t,supplies:s})})}},"catalog"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Requests ("+p.length+")",icon:"envelope",highlight:p.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Active Requests",buttons:!r.requestonly&&(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Clear",color:"transparent",onClick:function(){return(0,a.act)(c,"denyall")}}),children:(0,o.createComponentVNode)(2,u,{state:t,requests:p})})}},"requests"),!r.requestonly&&(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Checkout ("+m.length+")",icon:"shopping-cart",highlight:m.length>0,lineHeight:"23px",children:function(){return(0,o.createComponentVNode)(2,i.Section,{title:"Current Cart",buttons:h,children:(0,o.createComponentVNode)(2,d,{state:t,cart:m})})}},"cart")]})],4)};var l=function(e){var t=e.state,n=e.supplies,c=t.config,l=t.data,u=c.ref,d=function(e){var t=n[e].packs;return(0,o.createVNode)(1,"table","LabeledList",t.map((function(e){return(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[e.name,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.small_item&&(0,o.createFragment)([(0,o.createTextVNode)("Small Item")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell",!!e.access&&(0,o.createFragment)([(0,o.createTextVNode)("Restrictions Apply")],4),0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",(0,o.createComponentVNode)(2,i.Button,{fluid:!0,content:(l.self_paid?Math.round(1.1*e.cost):e.cost)+" credits",tooltip:e.desc,tooltipPosition:"left",onClick:function(){return(0,a.act)(u,"add",{id:e.id})}}),2)],4,null,e.name)})),0)};return(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e){var t=e.name;return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:t,children:d},t)}))(n)})},u=function(e){var t=e.state,n=e.requests,r=t.config,c=t.data,l=r.ref;return 0===n.length?(0,o.createComponentVNode)(2,i.Box,{color:"good",children:"No Requests"}):(0,o.createVNode)(1,"table","LabeledList",n.map((function(e){return(0,o.createFragment)([(0,o.createVNode)(1,"tr","LabeledList__row candystripe",[(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__label",[(0,o.createTextVNode)("#"),e.id,(0,o.createTextVNode)(":")],0),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__content",e.object,0),(0,o.createVNode)(1,"td","LabeledList__cell",[(0,o.createTextVNode)("By "),(0,o.createVNode)(1,"b",null,e.orderer,0)],4),(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createVNode)(1,"i",null,e.reason,0),2),(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",[e.cost,(0,o.createTextVNode)(" credits"),(0,o.createTextVNode)(" "),!c.requestonly&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"check",color:"good",onClick:function(){return(0,a.act)(l,"approve",{id:e.id})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"times",color:"bad",onClick:function(){return(0,a.act)(l,"deny",{id:e.id})}})],4)],0)],4)],4,e.id)})),0)},d=function(e){var t=e.state,n=e.cart,r=t.config,c=t.data,l=r.ref;return(0,o.createFragment)([0===n.length&&"Nothing in cart",n.length>0&&(0,o.createComponentVNode)(2,i.LabeledList,{children:n.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{className:"candystripe",label:"#"+e.id,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{inline:!0,mx:2,children:[!!e.paid&&(0,o.createVNode)(1,"b",null,"[Paid Privately]",16)," ",e.cost," credits"]}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus",onClick:function(){return(0,a.act)(l,"remove",{id:e.id})}})],4),children:e.object},e.id)}))}),n.length>0&&!c.requestonly&&(0,o.createComponentVNode)(2,i.Box,{mt:2,children:1===c.away&&1===c.docked&&(0,o.createComponentVNode)(2,i.Button,{color:"green",style:{"line-height":"28px",padding:"0 12px"},content:"Confirm the order",onClick:function(){return(0,a.act)(l,"send")}})||(0,o.createComponentVNode)(2,i.Box,{opacity:.5,children:["Shuttle in ",c.location,"."]})})],0)};t.CargoExpress=function(e){var t=e.state,n=t.config,r=t.data,u=n.ref,d=r.supplies||{};return(0,o.createFragment)([(0,o.createComponentVNode)(2,c.InterfaceLockNoticeBox,{siliconUser:r.siliconUser,locked:r.locked,onLockStatusChange:function(){return(0,a.act)(u,"lock")},accessText:"a QM-level ID card"}),!r.locked&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Cargo Express",buttons:(0,o.createComponentVNode)(2,i.Box,{inline:!0,bold:!0,children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:Math.round(r.points)})," credits"]}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Landing Location",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Cargo Bay",selected:!r.usingBeacon,onClick:function(){return(0,a.act)(u,"LZCargo")}}),(0,o.createComponentVNode)(2,i.Button,{selected:r.usingBeacon,disabled:!r.hasBeacon,onClick:function(){return(0,a.act)(u,"LZBeacon")},children:[r.beaconzone," (",r.beaconName,")"]}),(0,o.createComponentVNode)(2,i.Button,{content:r.printMsg,disabled:!r.canBuyBeacon,onClick:function(){return(0,a.act)(u,"printBeacon")}})]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Notice",children:r.message})]})}),(0,o.createComponentVNode)(2,l,{state:t,supplies:d})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.CellularEmporium=void 0;var o=n(1),r=n(3),a=n(2);t.CellularEmporium=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.abilities;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Genetic Points",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"Readapt",disabled:!i.can_readapt,onClick:function(){return n("readapt")}}),children:i.genetic_points_remaining})})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{className:"candystripe",label:e.name,buttons:(0,o.createFragment)([e.dna_cost," ",(0,o.createComponentVNode)(2,a.Button,{content:e.owned?"Evolved":"Evolve",selected:e.owned,onClick:function(){return n("evolve",{name:e.name})}})],0),children:[e.desc,(0,o.createComponentVNode)(2,a.Box,{color:"good",children:e.helptext})]},e.name)}))})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.CentcomPodLauncher=void 0;var o=n(1),r=(n(29),n(3)),a=n(2);t.CentcomPodLauncher=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.NoticeBox,{children:"To use this, simply spawn the atoms you want in one of the five Centcom Supplypod Bays. Items in the bay will then be launched inside your supplypod, one turf-full at a time! You can optionally use the following buttons to configure how the supplypod acts."}),(0,o.createComponentVNode)(2,a.Section,{title:"Centcom Pod Customization (To be used against Helen Weinstein)",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Supply Bay",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bay #1",selected:1===i.bayNumber,onClick:function(){return n("bay1")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #2",selected:2===i.bayNumber,onClick:function(){return n("bay2")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #3",selected:3===i.bayNumber,onClick:function(){return n("bay3")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Bay #4",selected:4===i.bayNumber,onClick:function(){return n("bay4")}}),(0,o.createComponentVNode)(2,a.Button,{content:"ERT Bay",selected:5===i.bayNumber,tooltip:"This bay is located on the western edge of CentCom. Its the\nglass room directly west of where ERT spawn, and south of the\nCentCom ferry. Useful for launching ERT/Deathsquads/etc. onto\nthe station via drop pods.",onClick:function(){return n("bay5")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleport to",children:[(0,o.createComponentVNode)(2,a.Button,{content:i.bay,onClick:function(){return n("teleportCentcom")}}),(0,o.createComponentVNode)(2,a.Button,{content:i.oldArea?i.oldArea:"Where you were",disabled:!i.oldArea,onClick:function(){return n("teleportBack")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Clone Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:"Launch Clones",selected:i.launchClone,tooltip:"Choosing this will create a duplicate of the item to be\nlaunched in Centcom, allowing you to send one type of item\nmultiple times. Either way, the atoms are forceMoved into\nthe supplypod after it lands (but before it opens).",onClick:function(){return n("launchClone")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Launch style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Ordered",selected:1===i.launchChoice,tooltip:'Instead of launching everything in the bay at once, this\nwill "scan" things (one turf-full at a time) in order, left\nto right and top to bottom. undoing will reset the "scanner"\nto the top-leftmost position.',onClick:function(){return n("launchOrdered")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Random",selected:2===i.launchChoice,tooltip:"Instead of launching everything in the bay at once, this\nwill launch one random turf of items at a time.",onClick:function(){return n("launchRandom")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Explosion",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Size",selected:1===i.explosionChoice,tooltip:"This will cause an explosion of whatever size you like\n(including flame range) to occur as soon as the supplypod\nlands. Dont worry, supply-pods are explosion-proof!",onClick:function(){return n("explosionCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Adminbus",selected:2===i.explosionChoice,tooltip:"This will cause a maxcap explosion (dependent on server\nconfig) to occur as soon as the supplypod lands. Dont worry,\nsupply-pods are explosion-proof!",onClick:function(){return n("explosionBus")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Damage",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Damage",selected:1===i.damageChoice,tooltip:"Anyone caught under the pod when it lands will be dealt\nthis amount of brute damage. Sucks to be them!",onClick:function(){return n("damageCustom")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gib",selected:2===i.damageChoice,tooltip:"This will attempt to gib any mob caught under the pod when\nit lands, as well as dealing a nice 5000 brute damage. Ya\nknow, just to be sure!",onClick:function(){return n("damageGib")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Effects",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Stun",selected:i.effectStun,tooltip:"Anyone who is on the turf when the supplypod is launched\nwill be stunned until the supplypod lands. They cant get\naway that easy!",onClick:function(){return n("effectStun")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Delimb",selected:i.effectLimb,tooltip:"This will cause anyone caught under the pod to lose a limb,\nexcluding their head.",onClick:function(){return n("effectLimb")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Yeet Organs",selected:i.effectOrgans,tooltip:"This will cause anyone caught under the pod to lose all\ntheir limbs and organs in a spectacular fashion.",onClick:function(){return n("effectOrgans")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Movement",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Bluespace",selected:i.effectBluespace,tooltip:"Gives the supplypod an advanced Bluespace Recyling Device.\nAfter opening, the supplypod will be warped directly to the\nsurface of a nearby NT-designated trash planet (/r/ss13).",onClick:function(){return n("effectBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Stealth",selected:i.effectStealth,tooltip:'This hides the red target icon from appearing when you\nlaunch the supplypod. Combos well with the "Invisible"\nstyle. Sneak attack, go!',onClick:function(){return n("effectStealth")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Quiet",selected:i.effectQuiet,tooltip:"This will keep the supplypod from making any sounds, except\nfor those specifically set by admins in the Sound section.",onClick:function(){return n("effectQuiet")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Reverse Mode",selected:i.effectReverse,tooltip:"This pod will not send any items. Instead, after landing,\nthe supplypod will close (similar to a normal closet closing),\nand then launch back to the right centcom bay to drop off any\nnew contents.",onClick:function(){return n("effectReverse")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile Mode",selected:i.effectMissile,tooltip:"This pod will not send any items. Instead, it will immediately\ndelete after landing (Similar visually to setting openDelay\n& departDelay to 0, but this looks nicer). Useful if you just\nwanna fuck some shit up. Combos well with the Missile style.",onClick:function(){return n("effectMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Any Descent Angle",selected:i.effectCircle,tooltip:"This will make the supplypod come in from any angle. Im not\nsure why this feature exists, but here it is.",onClick:function(){return n("effectCircle")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Machine Gun Mode",selected:i.effectBurst,tooltip:"This will make each click launch 5 supplypods inaccuratly\naround the target turf (a 3x3 area). Combos well with the\nMissile Mode if you dont want shit lying everywhere after.",onClick:function(){return n("effectBurst")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Specific Target",selected:i.effectTarget,tooltip:"This will make the supplypod target a specific atom, instead\nof the mouses position. Smiting does this automatically!",onClick:function(){return n("effectTarget")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name/Desc",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Name/Desc",selected:i.effectName,tooltip:"Allows you to add a custom name and description.",onClick:function(){return n("effectName")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Alert Ghosts",selected:i.effectAnnounce,tooltip:"Alerts ghosts when a pod is launched. Useful if some dumb\nshit is aboutta come outta the pod.",onClick:function(){return n("effectAnnounce")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Sound",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Sound",selected:i.fallingSound,tooltip:"Choose a sound to play as the pod falls. Note that for this\nto work right you should know the exact length of the sound,\nin seconds.",onClick:function(){return n("fallSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Sound",selected:i.landingSound,tooltip:"Choose a sound to play when the pod lands.",onClick:function(){return n("landingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Sound",selected:i.openingSound,tooltip:"Choose a sound to play when the pod opens.",onClick:function(){return n("openingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Sound",selected:i.leavingSound,tooltip:"Choose a sound to play when the pod departs (whether that be\ndelection in the case of a bluespace pod, or leaving for\ncentcom for a reversing pod).",onClick:function(){return n("leavingSound")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Admin Sound Volume",selected:i.soundVolume,tooltip:"Choose the volume for the sound to play at. Default values\nare between 1 and 100, but hey, do whatever. Im a tooltip,\nnot a cop.",onClick:function(){return n("soundVolume")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Timers",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Custom Falling Duration",selected:4!==i.fallDuration,tooltip:"Set how long the animation for the pod falling lasts. Create\ndramatic, slow falling pods!",onClick:function(){return n("fallDuration")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Landing Time",selected:20!==i.landingDelay,tooltip:"Choose the amount of time it takes for the supplypod to hit\nthe station. By default this value is 0.5 seconds.",onClick:function(){return n("landingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Opening Time",selected:30!==i.openingDelay,tooltip:"Choose the amount of time it takes for the supplypod to open\nafter landing. Useful for giving whatevers inside the pod a\nnice dramatic entrance! By default this value is 3 seconds.",onClick:function(){return n("openingDelay")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Custom Leaving Time",selected:30!==i.departureDelay,tooltip:"Choose the amount of time it takes for the supplypod to leave\nafter landing. By default this value is 3 seconds.",onClick:function(){return n("departureDelay")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Style",children:[(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.styleChoice,tooltip:"Same color scheme as the normal station-used supplypods",onClick:function(){return n("styleStandard")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.styleChoice,tooltip:"The same as the stations upgraded blue-and-white\nBluespace Supplypods",onClick:function(){return n("styleBluespace")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate",selected:4===i.styleChoice,tooltip:"A menacing black and blood-red. Great for sending meme-ops\nin style!",onClick:function(){return n("styleSyndie")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Deathsquad",selected:5===i.styleChoice,tooltip:"A menacing black and dark blue. Great for sending deathsquads\nin style!",onClick:function(){return n("styleBlue")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Cult Pod",selected:6===i.styleChoice,tooltip:"A blood and rune covered cult pod!",onClick:function(){return n("styleCult")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Missile",selected:7===i.styleChoice,tooltip:"A large missile. Combos well with a missile mode, so the\nmissile doesnt stick around after landing.",onClick:function(){return n("styleMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Syndicate Missile",selected:8===i.styleChoice,tooltip:"A large blood-red missile. Combos well with missile mode,\nso the missile doesnt stick around after landing.",onClick:function(){return n("styleSMissile")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Supply Crate",selected:9===i.styleChoice,tooltip:"A large, dark-green military supply crate.",onClick:function(){return n("styleBox")}}),(0,o.createComponentVNode)(2,a.Button,{content:"HONK",selected:10===i.styleChoice,tooltip:"A colorful, clown inspired look.",onClick:function(){return n("styleHONK")}}),(0,o.createComponentVNode)(2,a.Button,{content:"~Fruit",selected:11===i.styleChoice,tooltip:"For when an orange is angry",onClick:function(){return n("styleFruit")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Invisible",selected:12===i.styleChoice,tooltip:'Makes the supplypod invisible! Useful for when you want to\nuse this feature with a gateway or something. Combos well\nwith the "Stealth" and "Quiet Landing" effects.',onClick:function(){return n("styleInvisible")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Gondola",selected:13===i.styleChoice,tooltip:"This gondola can control when he wants to deliver his supplies\nif he has a smart enough mind, so offer up his body to ghosts\nfor maximum enjoyment. (Make sure to turn off bluespace and\nset a arbitrarily high open-time if you do!",onClick:function(){return n("styleGondola")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Show Contents (See Through Pod)",selected:14===i.styleChoice,tooltip:"By selecting this, the pod will instead look like whatevers\ninside it (as if it were the contents falling by themselves,\nwithout a pod). Useful for launching mechs at the station\nand standing tall as they soar in from the heavens.",onClick:function(){return n("styleSeeThrough")}})]})]})}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:i.numObjects+" turfs in "+i.bay,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"undo Pody Bay",tooltip:"Manually undoes the possible things to launch in the\npod bay.",onClick:function(){return n("undo")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Enter Launch Mode",selected:i.giveLauncher,tooltip:"THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN",onClick:function(){return n("giveLauncher")}}),(0,o.createComponentVNode)(2,a.Button,{content:"Clear Selected Bay",color:"bad",tooltip:"This will delete all objs and mobs from the selected bay.",tooltipPosition:"left",onClick:function(){return n("clearBay")}})],4)})})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemAcclimator=void 0;var o=n(1),r=n(3),a=n(2);t.ChemAcclimator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Acclimator",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:[i.chem_temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.target_temperature,unit:"K",width:"59px",minValue:0,maxValue:1e3,step:5,stepPixelSize:2,onChange:function(e,t){return n("set_target_temperature",{temperature:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Acceptable Temp. Difference",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.allowed_temperature_difference,unit:"K",width:"59px",minValue:1,maxValue:i.target_temperature,stepPixelSize:2,onChange:function(e,t){n("set_allowed_temperature_difference",{temperature:t})}})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",content:i.enabled?"On":"Off",selected:i.enabled,onClick:function(){return n("toggle_power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.max_volume,unit:"u",width:"50px",minValue:i.reagent_volume,maxValue:200,step:2,stepPixelSize:2,onChange:function(e,t){return n("change_volume",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Operation",children:i.acclimate_state}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current State",children:i.emptying?"Emptying":"Filling"})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemDebugSynthesizer=void 0;var o=n(1),r=n(3),a=n(2);t.ChemDebugSynthesizer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.amount,l=i.beakerCurrentVolume,u=i.beakerMaxVolume,d=i.isBeakerLoaded,s=i.beakerContents,p=void 0===s?[]:s;return(0,o.createComponentVNode)(2,a.Section,{title:"Recipient",buttons:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("ejectBeaker")}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",minValue:1,maxValue:u,step:1,stepPixelSize:2,onChange:function(e,t){return n("amount",{amount:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Input",onClick:function(){return n("input")}})],4):(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Create Beaker",onClick:function(){return n("makecup")}}),children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l})," / "+u+" u"]}),p.length>0?(0,o.createComponentVNode)(2,a.LabeledList,{children:p.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:[e.volume," u"]},e.name)}))}):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Recipient Empty"})],0):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No Recipient"})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemFilter=t.ChemFilterPane=void 0;var o=n(1),r=n(3),a=n(2);var i=function(e){var t=(0,r.useBackend)(e).act,n=e.title,i=e.list,c=e.reagentName,l=e.onReagentInput,u=n.toLowerCase();return(0,o.createComponentVNode)(2,a.Section,{title:n,minHeight:40,ml:.5,mr:.5,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Input,{placeholder:"Reagent",width:"140px",onInput:function(e,t){return l(t)}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return t("add",{which:u,name:c})}})],4),children:i.map((function(e){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"minus",content:e,onClick:function(){return t("remove",{which:u,reagent:e})}})],4,e)}))})};t.ChemFilterPane=i;var c=function(e){var t,n;function r(){var t;return(t=e.call(this)||this).state={leftReagentName:"",rightReagentName:""},t}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var c=r.prototype;return c.setLeftReagentName=function(e){this.setState({leftReagentName:e})},c.setRightReagentName=function(e){this.setState({rightReagentName:e})},c.render=function(){var e=this,t=this.props.state,n=t.data,r=n.left,c=void 0===r?[]:r,l=n.right,u=void 0===l?[]:l;return(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Left",list:c,reagentName:this.state.leftReagentName,onReagentInput:function(t){return e.setLeftReagentName(t)},state:t})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{title:"Right",list:u,reagentName:this.state.rightReagentName,onReagentInput:function(t){return e.setRightReagentName(t)},state:t})})]})},r}(o.Component);t.ChemFilter=c},function(e,t,n){"use strict";t.__esModule=!0,t.ChemPress=void 0;var o=n(1),r=n(3),a=n(2);t.ChemPress=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.pill_size,l=i.pill_name,u=i.pill_style,d=i.pill_styles,s=void 0===d?[]:d;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Volume",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,unit:"u",width:"43px",minValue:5,maxValue:50,step:1,stepPixelSize:2,onChange:function(e,t){return n("change_pill_size",{volume:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Name",children:(0,o.createComponentVNode)(2,a.Input,{value:l,onChange:function(e,t){return n("change_pill_name",{name:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pill Style",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{width:5,selected:e.id===u,textAlign:"center",color:"transparent",onClick:function(){return n("change_pill_style",{id:e.id})},children:(0,o.createComponentVNode)(2,a.Box,{mx:-1,className:e.class_name})},e.id)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemReactionChamber=void 0;var o=n(1),r=n(19),a=n(2),i=n(23),c=n(12);var l=function(e){var t,n;function l(){var t;return(t=e.call(this)||this).state={reagentName:"",reagentQuantity:1},t}n=e,(t=l).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var u=l.prototype;return u.setReagentName=function(e){this.setState({reagentName:e})},u.setReagentQuantity=function(e){this.setState({reagentQuantity:e})},u.render=function(){var e=this,t=this.props.state,n=t.config,l=t.data,u=n.ref,d=l.emptying,s=l.reagents||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Reagents",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:d?"bad":"good",children:d?"Emptying":"Filling"}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createVNode)(1,"tr","LabledList__row",[(0,o.createVNode)(1,"td","LabeledList__cell",(0,o.createComponentVNode)(2,a.Input,{fluid:!0,value:"",placeholder:"Reagent Name",onInput:function(t,n){return e.setReagentName(n)}}),2,{colSpan:"2"}),(0,o.createVNode)(1,"td",(0,c.classes)(["LabeledList__buttons","LabeledList__cell"]),[(0,o.createComponentVNode)(2,a.NumberInput,{value:this.state.reagentQuantity,minValue:1,maxValue:100,step:1,stepPixelSize:3,width:"39px",onDrag:function(t,n){return e.setReagentQuantity(n)}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return(0,r.act)(u,"add",{chem:e.state.reagentName,amount:e.state.reagentQuantity})}})],4)],4),(0,i.map)((function(e,t){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:t,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return(0,r.act)(u,"remove",{chem:t})}}),children:e},t)}))(s)]})})},l}(o.Component);t.ChemReactionChamber=l},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSplitter=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSplitter=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.straight,u=c.side,d=c.max_transfer;return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Straight",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:l,unit:"u",width:"55px",minValue:1,maxValue:d,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"straight",amount:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Side",children:(0,o.createComponentVNode)(2,i.NumberInput,{value:u,unit:"u",width:"55px",minValue:1,maxValue:d,format:function(e){return(0,r.toFixed)(e,2)},step:.05,stepPixelSize:4,onChange:function(e,t){return n("set_amount",{target:"side",amount:t})}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ChemSynthesizer=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ChemSynthesizer=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.amount,u=c.current_reagent,d=c.chemicals,s=void 0===d?[]:d,p=c.possible_amounts,m=void 0===p?[]:p;return(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"plus",content:(0,r.toFixed)(e,0),selected:e===l,onClick:function(){return n("amount",{target:e})}},(0,r.toFixed)(e,0))}))}),(0,o.createComponentVNode)(2,i.Box,{mt:1,children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{icon:"tint",content:e.title,width:"129px",selected:e.id===u,onClick:function(){return n("select",{reagent:e.id})}},e.id)}))})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.CodexGigas=void 0;var o=n(1),r=n(3),a=n(2);t.CodexGigas=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[i.name,(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prefix",children:["Dark","Hellish","Fallen","Fiery","Sinful","Blood","Fluffy"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:1!==i.currentSection,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Title",children:["Lord","Prelate","Count","Viscount","Vizier","Elder","Adept"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>2,onClick:function(){return n(e+" ")}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:["hal","ve","odr","neit","ci","quon","mya","folth","wren","geyr","hil","niet","twou","phi","coa"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:i.currentSection>4,onClick:function(){return n(e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suffix",children:["the Red","the Soulless","the Master","the Lord of all things","Jr."].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,disabled:4!==i.currentSection,onClick:function(){return n(" "+e)}},e.toLowerCase())}))}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Submit",children:(0,o.createComponentVNode)(2,a.Button,{content:"Search",disabled:i.currentSection<4,onClick:function(){return n("search")}})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.ComputerFabricator=void 0;var o=n(1),r=(n(29),n(3)),a=n(2);t.ComputerFabricator=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{italic:!0,fontSize:"20px",children:"Your perfect device, only three steps away..."}),0!==l.state&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mb:1,icon:"circle",content:"Clear Order",onClick:function(){return c("clean_order")}}),(0,o.createComponentVNode)(2,i,{state:t})],0)};var i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return 0===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 1",minHeight:51,children:[(0,o.createComponentVNode)(2,a.Box,{mt:5,bold:!0,textAlign:"center",fontSize:"40px",children:"Choose your Device"}),(0,o.createComponentVNode)(2,a.Box,{mt:3,children:(0,o.createComponentVNode)(2,a.Grid,{width:"100%",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"laptop",content:"Laptop",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"1"})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"tablet-alt",content:"Tablet",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("pick_device",{pick:"2"})}})})]})})]}):1===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 2: Customize your device",minHeight:47,buttons:(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"good",children:[i.totalprice," cr"]}),children:[(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Battery:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to operate without external utility power\nsource. Advanced batteries increase battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_battery,onClick:function(){return n("hw_battery",{battery:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Hard Drive:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Stores file on your device. Advanced drives can store more\nfiles, but use more power, shortening battery life.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Upgraded",selected:2===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"2"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:3===i.hw_disk,onClick:function(){return n("hw_disk",{disk:"3"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Network Card:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Allows your device to wirelessly connect to stationwide NTNet\nnetwork. Basic cards are limited to on-station use, while\nadvanced cards can operate anywhere near the station, which\nincludes asteroid outposts",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_netcard,onClick:function(){return n("hw_netcard",{netcard:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Nano Printer:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A device that allows for various paperwork manipulations,\nsuch as, scanning of documents or printing new ones.\nThis device was certified EcoFriendlyPlus and is capable of\nrecycling existing paper for printing purposes.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_nanoprint,onClick:function(){return n("hw_nanoprint",{print:"1"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Card Reader:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"Adds a slot that allows you to manipulate RFID cards.\nPlease note that this is not necessary to allow the device\nto read your identification, it is just necessary to\nmanipulate other cards.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_card,onClick:function(){return n("hw_card",{card:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_card,onClick:function(){return n("hw_card",{card:"1"})}})})]}),2!==i.devtype&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Processor Unit:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"A component critical for your device's functionality.\nIt allows you to run programs from your hard drive.\nAdvanced CPUs use more power, but allow you to run\nmore programs on background at once.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"1"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Advanced",selected:2===i.hw_cpu,onClick:function(){return n("hw_cpu",{cpu:"2"})}})})]}),(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,position:"relative",children:["Tesla Relay:",(0,o.createComponentVNode)(2,a.Tooltip,{content:"An advanced wireless power relay that allows your device\nto connect to nearby area power controller to provide\nalternative power source. This component is currently\nunavailable on tablet computers due to size restrictions.",position:"right"})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"None",selected:0===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"0"})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{content:"Standard",selected:1===i.hw_tesla,onClick:function(){return n("hw_tesla",{tesla:"1"})}})})]})],4)]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,mt:3,content:"Confirm Order",color:"good",textAlign:"center",fontSize:"18px",lineHeight:"26px",onClick:function(){return n("confirm_order")}})]}):2===i.state?(0,o.createComponentVNode)(2,a.Section,{title:"Step 3: Payment",minHeight:47,children:[(0,o.createComponentVNode)(2,a.Box,{italic:!0,textAlign:"center",fontSize:"20px",children:"Your device is ready for fabrication..."}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:2,textAlign:"center",fontSize:"16px",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:"Please insert the required"})," ",(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:[i.totalprice," cr"]})]}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:1,textAlign:"center",fontSize:"18px",children:"Current:"}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,mt:.5,textAlign:"center",fontSize:"18px",color:i.credits>=i.totalprice?"good":"bad",children:[i.credits," cr"]}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Purchase",disabled:i.credits=10&&e<20?i.COLORS.department.security:e>=20&&e<30?i.COLORS.department.medbay:e>=30&&e<40?i.COLORS.department.science:e>=40&&e<50?i.COLORS.department.engineering:e>=50&&e<60?i.COLORS.department.cargo:e>=200&&e<230?i.COLORS.department.centcom:i.COLORS.department.other},u=function(e){var t=e.type,n=e.value;return(0,o.createComponentVNode)(2,a.Box,{inline:!0,width:4,color:i.COLORS.damageType[t],textAlign:"center",children:n})};t.CrewConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,d=i.sensors||[];return(0,o.createComponentVNode)(2,a.Section,{minHeight:90,children:(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,textAlign:"center",children:"Vitals"}),(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,children:"Position"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,collapsing:!0,children:"Tracking"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:(f=e.ijob,f%10==0),color:l(e.ijob),children:[e.name," (",e.assignment,")"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:(0,o.createComponentVNode)(2,a.ColorBox,{color:(t=e.oxydam,r=e.toxdam,d=e.burndam,s=e.brutedam,p=t+r+d+s,m=Math.min(Math.max(Math.ceil(p/25),0),5),c[m])})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,textAlign:"center",children:null!==e.oxydam?(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:[(0,o.createComponentVNode)(2,u,{type:"oxy",value:e.oxydam}),"/",(0,o.createComponentVNode)(2,u,{type:"toxin",value:e.toxdam}),"/",(0,o.createComponentVNode)(2,u,{type:"burn",value:e.burndam}),"/",(0,o.createComponentVNode)(2,u,{type:"brute",value:e.brutedam})]}):e.life_status?"Alive":"Dead"}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:null!==e.pos_x?e.area:"N/A"}),!!i.link_allowed&&(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,a.Button,{content:"Track",disabled:!e.can_track,onClick:function(){return n("select_person",{name:e.name})}})})]},e.name);var t,r,d,s,p,m,f}))]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Cryo=void 0;var o=n(1),r=n(3),a=n(2),i=n(435);t.Cryo=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",content:c.occupant.name?c.occupant.name:"No Occupant"}),!!c.hasOccupant&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",content:c.occupant.stat,color:c.occupant.statstate}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",color:c.occupant.temperaturestatus,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.bodyTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant.health/c.occupant.maxHealth,color:c.occupant.health>0?"good":"average",children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.occupant[e.type]/100,children:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.occupant[e.type]})})},e.id)}))],0)]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cell",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",content:(0,o.createComponentVNode)(2,a.Button,{icon:c.isOperating?"power-off":"times",disabled:c.isOpen,onClick:function(){return n("power")},color:c.isOperating&&"green",children:c.isOperating?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:c.cellTemperature})," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:[(0,o.createComponentVNode)(2,a.Button,{icon:c.isOpen?"unlock":"lock",onClick:function(){return n("door")},content:c.isOpen?"Open":"Closed"}),(0,o.createComponentVNode)(2,a.Button,{icon:c.autoEject?"sign-out-alt":"sign-in-alt",onClick:function(){return n("autoeject")},content:c.autoEject?"Auto":"Manual"})]})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Beaker",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",disabled:!c.isBeakerLoaded,onClick:function(){return n("ejectbeaker")},content:"Eject"}),children:(0,o.createComponentVNode)(2,i.BeakerContents,{beakerLoaded:c.isBeakerLoaded,beakerContents:c.beakerContents})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.BeakerContents=void 0;var o=n(1),r=n(2);t.BeakerContents=function(e){var t=e.beakerLoaded,n=e.beakerContents;return(0,o.createComponentVNode)(2,r.Box,{children:[!t&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"No beaker loaded."})||0===n.length&&(0,o.createComponentVNode)(2,r.Box,{color:"label",children:"Beaker is empty."}),n.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{color:"label",children:[e.volume," units of ",e.name]},e.name)}))]})}},function(e,t,n){"use strict";t.__esModule=!0,t.PersonalCrafting=void 0;var o=n(1),r=n(23),a=n(3),i=n(2),c=function(e){var t=e.craftables,n=void 0===t?[]:t,r=(0,a.useBackend)(e),c=r.act,l=r.data,u=l.craftability,d=void 0===u?{}:u,s=l.display_compact,p=l.display_craftable_only;return n.map((function(e){return p&&!d[e.ref]?null:s?(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,className:"candystripe",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!d[e.ref],tooltip:e.tool_text&&"Tools needed: "+e.tool_text,tooltipPosition:"left",onClick:function(){return c("make",{recipe:e.ref})}}),children:e.req_text},e.name):(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"cog",content:"Craft",disabled:!d[e.ref],onClick:function(){return c("make",{recipe:e.ref})}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.req_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Required",children:e.req_text}),!!e.catalyst_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Catalyst",children:e.catalyst_text}),!!e.tool_text&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Tools",children:e.tool_text})]})},e.name)}))};t.PersonalCrafting=function(e){var t=e.state,n=(0,a.useBackend)(e),l=n.act,u=n.data,d=u.busy,s=u.display_craftable_only,p=u.display_compact,m=(0,r.map)((function(e,t){return{category:t,subcategory:e,hasSubcats:"has_subcats"in e,firstSubcatName:Object.keys(e).find((function(e){return"has_subcats"!==e}))}}))(u.crafting_recipes||{}),f=!!d&&(0,o.createComponentVNode)(2,i.Dimmer,{fontSize:"40px",textAlign:"center",children:(0,o.createComponentVNode)(2,i.Box,{mt:30,children:[(0,o.createComponentVNode)(2,i.Icon,{name:"cog",spin:1})," Crafting..."]})});return(0,o.createFragment)([f,(0,o.createComponentVNode)(2,i.Section,{title:"Personal Crafting",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:p?"check-square-o":"square-o",content:"Compact",selected:p,onClick:function(){return l("toggle_compact")}}),(0,o.createComponentVNode)(2,i.Button,{icon:s?"check-square-o":"square-o",content:"Craftable Only",selected:s,onClick:function(){return l("toggle_recipes")}})],4),children:(0,o.createComponentVNode)(2,i.Tabs,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.category,onClick:function(){return l("set_category",{category:e.category,subcategory:e.firstSubcatName})},children:function(){return!e.hasSubcats&&(0,o.createComponentVNode)(2,c,{craftables:e.subcategory,state:t})||(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,n){if("has_subcats"!==n)return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:n,onClick:function(){return l("set_category",{subcategory:n})},children:function(){return(0,o.createComponentVNode)(2,c,{craftables:e,state:t})}})}))(e.subcategory)})}},e.category)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.DecalPainter=void 0;var o=n(1),r=n(3),a=n(2);t.DecalPainter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.decal_list||[],l=i.color_list||[],u=i.dir_list||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Decal Type",children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e.name,selected:e.decal===i.decal_style,onClick:function(){return n("select decal",{decals:e.decal})}},e.decal)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Color",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:"red"===e.colors?"Red":"white"===e.colors?"White":"Yellow",selected:e.colors===i.decal_color,onClick:function(){return n("select color",{colors:e.colors})}},e.colors)}))}),(0,o.createComponentVNode)(2,a.Section,{title:"Decal Direction",children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:1===e.dirs?"North":2===e.dirs?"South":4===e.dirs?"East":"West",selected:e.dirs===i.decal_direction,onClick:function(){return n("selected direction",{dirs:e.dirs})}},e.dirs)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.DisposalUnit=void 0;var o=n(1),r=n(3),a=n(2);t.DisposalUnit=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return l.full_pressure?(t="good",n="Ready"):l.panel_open?(t="bad",n="Power Disabled"):l.pressure_charging?(t="average",n="Pressurizing"):(t="bad",n="Off"),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:t,children:n}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.per,color:"good"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Handle",children:(0,o.createComponentVNode)(2,a.Button,{icon:l.flush?"toggle-on":"toggle-off",disabled:l.isai||l.panel_open,content:l.flush?"Disengage":"Engage",onClick:function(){return c(l.flush?"handle-0":"handle-1")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Eject",children:(0,o.createComponentVNode)(2,a.Button,{icon:"sign-out-alt",disabled:l.isai,content:"Eject Contents",onClick:function(){return c("eject")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",disabled:l.panel_open,selected:l.pressure_charging,onClick:function(){return c(l.pressure_charging?"pump-0":"pump-1")}})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.DnaVault=void 0;var o=n(1),r=n(3),a=n(2);t.DnaVault=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.completed,l=i.used,u=i.choiceA,d=i.choiceB,s=i.dna,p=i.dna_max,m=i.plants,f=i.plants_max,h=i.animals,C=i.animals_max;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"DNA Vault Database",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Human DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s/p,content:s+" / "+p+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plant DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m/f,content:m+" / "+f+" Samples"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Animal DNA",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:h/h,content:h+" / "+C+" Samples"})})]})}),!(!c||l)&&(0,o.createComponentVNode)(2,a.Section,{title:"Personal Gene Therapy",children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",mb:1,children:"Applicable Gene Therapy Treatments"}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:u,textAlign:"center",onClick:function(){return n("gene",{choice:u})}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:d,textAlign:"center",onClick:function(){return n("gene",{choice:d})}})})]})]})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.EightBallVote=void 0;var o=n(1),r=n(3),a=n(2),i=n(29);t.EightBallVote=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.question,u=c.shaking,d=c.answers,s=void 0===d?[]:d;return u?(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"16px",m:1,children:['"',l,'"']}),(0,o.createComponentVNode)(2,a.Grid,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:(0,i.toTitleCase)(e.answer),selected:e.selected,fontSize:"16px",lineHeight:"24px",textAlign:"center",mb:1,onClick:function(){return n("vote",{answer:e.answer})}}),(0,o.createComponentVNode)(2,a.Box,{bold:!0,textAlign:"center",fontSize:"30px",children:e.amount})]},e.answer)}))})]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No question is currently being asked."})}},function(e,t,n){"use strict";t.__esModule=!0,t.EmergencyShuttleConsole=void 0;var o=n(1),r=n(2),a=n(3);t.EmergencyShuttleConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,i=t.data,c=i.timer_str,l=i.enabled,u=i.emagged,d=i.engines_started,s=i.authorizations_remaining,p=i.authorizations,m=void 0===p?[]:p;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"40px",textAlign:"center",fontFamily:"monospace",children:c}),(0,o.createComponentVNode)(2,r.Box,{textAlign:"center",fontSize:"16px",mb:1,children:[(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,children:"ENGINES:"}),(0,o.createComponentVNode)(2,r.Box,{inline:!0,color:d?"good":"average",ml:1,children:d?"Online":"Idle"})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Early Launch Authorization",level:2,buttons:(0,o.createComponentVNode)(2,r.Button,{icon:"times",content:"Repeal All",color:"bad",disabled:!l,onClick:function(){return n("abort")}}),children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"exclamation-triangle",color:"good",content:"AUTHORIZE",disabled:!l,onClick:function(){return n("authorize")}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{fluid:!0,icon:"minus",content:"REPEAL",disabled:!l,onClick:function(){return n("repeal")}})})]}),(0,o.createComponentVNode)(2,r.Section,{title:"Authorizations",level:3,minHeight:"150px",buttons:(0,o.createComponentVNode)(2,r.Box,{inline:!0,bold:!0,color:u?"bad":"good",children:u?"ERROR":"Remaining: "+s}),children:[m.length>0?m.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)})):(0,o.createComponentVNode)(2,r.Box,{bold:!0,textAlign:"center",fontSize:"16px",color:"average",children:"No Active Authorizations"}),m.map((function(e){return(0,o.createComponentVNode)(2,r.Box,{bold:!0,fontSize:"16px",className:"candystripe",children:[e.name," (",e.job,")"]},e.name)}))]})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.EngravedMessage=void 0;var o=n(1),r=n(29),a=n(3),i=n(2);t.EngravedMessage=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.admin_mode,u=c.creator_key,d=c.creator_name,s=c.has_liked,p=c.has_disliked,m=c.hidden_message,f=c.is_creator,h=c.num_likes,C=c.num_dislikes,g=c.realdate;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.Box,{bold:!0,textAlign:"center",fontSize:"20px",mb:2,children:(0,r.decodeHtmlEntities)(m)}),(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-up",content:" "+h,disabled:f,selected:s,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("like")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"circle",disabled:f,selected:!p&&!s,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("neutral")}})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.Button,{fluid:!0,icon:"arrow-down",content:" "+C,disabled:f,selected:p,textAlign:"center",fontSize:"16px",lineHeight:"24px",onClick:function(){return n("dislike")}})})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Created On",children:g})})}),(0,o.createComponentVNode)(2,i.Section),!!l&&(0,o.createComponentVNode)(2,i.Section,{title:"Admin Panel",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Delete",color:"bad",onClick:function(){return n("delete")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Ckey",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Creator Character Name",children:d})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Gps=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(156),l=n(3),u=n(2),d=function(e){return(0,r.map)(parseFloat)(e.split(", "))};t.Gps=function(e){var t=(0,l.useBackend)(e),n=t.act,s=t.data,p=s.currentArea,m=s.currentCoords,f=s.globalmode,h=s.power,C=s.tag,g=s.updating,b=(0,a.flow)([(0,r.map)((function(e,t){var n=e.dist&&Math.round((0,c.vecLength)((0,c.vecSubtract)(d(m),d(e.coords))));return Object.assign({},e,{dist:n,index:t})})),(0,r.sortBy)((function(e){return e.dist===undefined}),(function(e){return e.entrytag}))])(s.signals||[]);return(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Control",buttons:(0,o.createComponentVNode)(2,u.Button,{icon:"power-off",content:h?"On":"Off",selected:h,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,u.LabeledList,{children:[(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Tag",children:(0,o.createComponentVNode)(2,u.Button,{icon:"pencil-alt",content:C,onClick:function(){return n("rename")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Scan Mode",children:(0,o.createComponentVNode)(2,u.Button,{icon:g?"unlock":"lock",content:g?"AUTO":"MANUAL",color:!g&&"bad",onClick:function(){return n("updating")}})}),(0,o.createComponentVNode)(2,u.LabeledList.Item,{label:"Range",children:(0,o.createComponentVNode)(2,u.Button,{icon:"sync",content:f?"MAXIMUM":"LOCAL",selected:!f,onClick:function(){return n("globalmode")}})})]})}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,u.Section,{title:"Current Location",children:(0,o.createComponentVNode)(2,u.Box,{fontSize:"18px",children:[p," (",m,")"]})}),(0,o.createComponentVNode)(2,u.Section,{title:"Detected Signals",children:(0,o.createComponentVNode)(2,u.Table,{children:[(0,o.createComponentVNode)(2,u.Table.Row,{bold:!0,children:[(0,o.createComponentVNode)(2,u.Table.Cell,{content:"Name"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Direction"}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,content:"Coordinates"})]}),b.map((function(e){return(0,o.createComponentVNode)(2,u.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,u.Table.Cell,{bold:!0,color:"label",children:e.entrytag}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,opacity:e.dist!==undefined&&(0,i.clamp)(1.2/Math.log(Math.E+e.dist/20),.4,1),children:[e.degrees!==undefined&&(0,o.createComponentVNode)(2,u.Icon,{mr:1,size:1.2,name:"arrow-up",rotation:e.degrees}),e.dist!==undefined&&e.dist+"m"]}),(0,o.createComponentVNode)(2,u.Table.Cell,{collapsing:!0,children:e.coords})]},e.entrytag+e.coords+e.index)}))]})})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GravityGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.GravityGenerator=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.breaker,l=i.charge_count,u=i.charging_state,d=i.on,s=i.operational;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{children:!s&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No data available"})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Breaker",children:(0,o.createComponentVNode)(2,a.Button,{icon:c?"power-off":"times",content:c?"On":"Off",selected:c,disabled:!s,onClick:function(){return n("gentoggle")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Gravity Charge",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/100,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",children:[0===u&&(d&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Fully Charged"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Not Charging"})),1===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Charging"}),2===u&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"Discharging"})]})]})}),s&&0!==u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"WARNING - Radiation detected"}),s&&0===u&&(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"No radiation detected"})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagTeleporterConsole=void 0;var o=n(1),r=n(3),a=n(2);t.GulagTeleporterConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.teleporter,l=i.teleporter_lock,u=i.teleporter_state_open,d=i.teleporter_location,s=i.beacon,p=i.beacon_location,m=i.id,f=i.id_name,h=i.can_teleport,C=i.goal,g=void 0===C?0:C,b=i.prisoner,v=void 0===b?{}:b;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Teleporter Console",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:u?"Open":"Closed",disabled:l,selected:u,onClick:function(){return n("toggle_open")}}),(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"unlock",content:l?"Locked":"Unlocked",selected:l,disabled:u,onClick:function(){return n("teleporter_lock")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Teleporter Unit",color:c?"good":"bad",buttons:!c&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_teleporter")}}),children:c?d:"Not Connected"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Receiver Beacon",color:s?"good":"bad",buttons:!s&&(0,o.createComponentVNode)(2,a.Button,{content:"Reconnect",onClick:function(){return n("scan_beacon")}}),children:s?p:"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Prisoner Details",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Prisoner ID",children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:m?f:"No ID",onClick:function(){return n("handle_id")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Point Goal",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:g,width:"48px",minValue:1,maxValue:1e3,onChange:function(e,t){return n("set_goal",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Occupant",children:v.name?v.name:"No Occupant"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Criminal Status",children:v.crimstat?v.crimstat:"No Status"})]})}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Process Prisoner",disabled:!h,textAlign:"center",color:"bad",onClick:function(){return n("teleport")}})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.GulagItemReclaimer=void 0;var o=n(1),r=n(3),a=n(2);t.GulagItemReclaimer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.mobs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Stored Items",children:(0,o.createComponentVNode)(2,a.Table,{children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:(0,o.createComponentVNode)(2,a.Button,{content:"Retrieve Items",disabled:!i.can_reclaim,onClick:function(){return n("release_items",{mobref:e.mob})}})})]},e.mob)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Holodeck=void 0;var o=n(1),r=n(3),a=n(2);t.Holodeck=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_toggle_safety,l=i.default_programs,u=void 0===l?[]:l,d=i.emag_programs,s=void 0===d?[]:d,p=i.emagged,m=i.program;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Default Programs",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:p?"unlock":"lock",content:"Safeties",color:"bad",disabled:!c,selected:!p,onClick:function(){return n("safety")}}),children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),textAlign:"center",selected:e.type===m,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))}),!!p&&(0,o.createComponentVNode)(2,a.Section,{title:"Dangerous Programs",children:s.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name.substring(11),color:"bad",textAlign:"center",selected:e.type===m,onClick:function(){return n("load_program",{type:e.type})}},e.type)}))})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ImplantChair=void 0;var o=n(1),r=n(3),a=n(2);t.ImplantChair=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Occupant Information",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:i.occupant.name?i.occupant.name:"No Occupant"}),!!i.occupied&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:0===i.occupant.stat?"good":1===i.occupant.stat?"average":"bad",children:0===i.occupant.stat?"Conscious":1===i.occupant.stat?"Unconcious":"Dead"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Operations",textAlign:"center",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Door",children:(0,o.createComponentVNode)(2,a.Button,{icon:i.open?"unlock":"lock",color:i.open?"default":"red",content:i.open?"Open":"Closed",onClick:function(){return n("door")}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implant Occupant",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"code-branch",content:i.ready?i.special_name||"Implant":"Recharging",onClick:function(){return n("implant")}}),0===i.ready&&(0,o.createComponentVNode)(2,a.Icon,{name:"cog",color:"orange",spin:!0})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Implants Remaining",children:[i.ready_implants,1===i.replenishing&&(0,o.createComponentVNode)(2,a.Icon,{name:"sync",color:"red",spin:!0})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Intellicard=void 0;var o=n(1),r=n(3),a=n(2);t.Intellicard=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=u||d,l=i.name,u=i.isDead,d=i.isBraindead,s=i.health,p=i.wireless,m=i.radio,f=i.wiping,h=i.laws,C=void 0===h?[]:h;return(0,o.createComponentVNode)(2,a.Section,{title:l||"Empty Card",buttons:!!l&&(0,o.createComponentVNode)(2,a.Button,{icon:"trash",content:f?"Stop Wiping":"Wipe",disabled:u,onClick:function(){return n("wipe")}}),children:!!l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",color:c?"bad":"good",children:c?"Offline":"Operation"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Software Integrity",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:s,minValue:0,maxValue:100,ranges:{good:[70,Infinity],average:[50,70],bad:[-Infinity,50]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"Wireless Activity",selected:p,onClick:function(){return n("wireless")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"microphone",content:"Subspace Radio",selected:m,onClick:function(){return n("radio")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Laws",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.BlockQuote,{children:e},e)}))})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.KeycardAuth=void 0;var o=n(1),r=n(3),a=n(2);t.KeycardAuth=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Box,{children:1===i.waiting&&(0,o.createVNode)(1,"span",null,"Waiting for another device to confirm your request...",16)}),(0,o.createComponentVNode)(2,a.Box,{children:0===i.waiting&&(0,o.createFragment)([!!i.auth_required&&(0,o.createComponentVNode)(2,a.Button,{icon:"check-square",color:"red",textAlign:"center",lineHeight:"60px",fluid:!0,onClick:function(){return n("auth_swipe")},content:"Authorize"}),0===i.auth_required&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",fluid:!0,onClick:function(){return n("red_alert")},content:"Red Alert"}),(0,o.createComponentVNode)(2,a.Button,{icon:"wrench",fluid:!0,onClick:function(){return n("emergency_maint")},content:"Emergency Maintenance Access"}),(0,o.createComponentVNode)(2,a.Button,{icon:"meteor",fluid:!0,onClick:function(){return n("bsa_unlock")},content:"Bluespace Artillery Unlock"})],4)],0)})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.LaborClaimConsole=void 0;var o=n(1),r=n(29),a=n(3),i=n(2);t.LaborClaimConsole=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.can_go_home,u=c.id_points,d=c.ores,s=c.status_info,p=c.unclaimed_points;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Shuttle controls",children:(0,o.createComponentVNode)(2,i.Button,{content:"Move shuttle",disabled:!l,onClick:function(){return n("move_shuttle")}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Points",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Unclaimed points",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Claim points",disabled:!p,onClick:function(){return n("claim_points")}}),children:p})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Material values",children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Material"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Value"})]}),d.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.ore)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.value})})]},e.ore)}))]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.LanguageMenu=void 0;var o=n(1),r=n(3),a=n(2);t.LanguageMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.admin_mode,l=i.is_living,u=i.omnitongue,d=i.languages,s=void 0===d?[]:d,p=i.unknown_languages,m=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Known Languages",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:s.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createFragment)([!!l&&(0,o.createComponentVNode)(2,a.Button,{content:e.is_default?"Default Language":"Select as Default",disabled:!e.can_speak,selected:e.is_default,onClick:function(){return n("select_default",{language_name:e.name})}}),!!c&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Remove",onClick:function(){return n("remove_language",{language_name:e.name})}})],4)],0),children:[e.desc," ","Key: ,",e.key," ",e.can_understand?"Can understand.":"Cannot understand."," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})}),!!c&&(0,o.createComponentVNode)(2,a.Section,{title:"Unknown Languages",buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Omnitongue "+(u?"Enabled":"Disabled"),selected:u,onClick:function(){return n("toggle_omnitongue")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{content:"Grant",onClick:function(){return n("grant_language",{language_name:e.name})}}),children:[e.desc," ","Key: ,",e.key," ",!!e.shadow&&"(gained from mob)"," ",e.can_speak?"Can speak.":"Cannot speak."]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.LaunchpadConsole=t.LaunchpadRemote=t.LaunchpadControl=t.LaunchpadButtonPad=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createComponentVNode)(2,a.Grid,{width:"1px",children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-left",mb:1,onClick:function(){return t("move_pos",{x:-1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:-1,y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",mb:1,onClick:function(){return t("move_pos",{y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"R",mb:1,onClick:function(){return t("set_pos",{x:0,y:0})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-down",mb:1,onClick:function(){return t("move_pos",{y:-1})}})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-up",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",mb:1,onClick:function(){return t("move_pos",{x:1})}}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"arrow-right",iconRotation:45,mb:1,onClick:function(){return t("move_pos",{x:1,y:-1})}})]})]})};t.LaunchpadButtonPad=i;var c=function(e){var t=e.topLevel,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.x,d=l.y,s=l.pad_name,p=l.range;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Input,{value:s,width:"170px",onChange:function(e,t){return c("rename",{name:t})}}),level:t?1:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Remove",color:"bad",onClick:function(){return c("remove")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Controls",level:2,children:(0,o.createComponentVNode)(2,i,{state:e.state})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Target",level:2,children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"26px",children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"X:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:u,minValue:-p,maxValue:p,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",stepPixelSize:10,onChange:function(e,t){return c("set_pos",{x:t})}})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:"Y:"}),(0,o.createComponentVNode)(2,a.NumberInput,{value:d,minValue:-p,maxValue:p,stepPixelSize:10,lineHeight:"30px",fontSize:"26px",width:"90px",height:"30px",onChange:function(e,t){return c("set_pos",{y:t})}})]})]})})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"upload",content:"Launch",textAlign:"center",onClick:function(){return c("launch")}})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Pull",textAlign:"center",onClick:function(){return c("pull")}})})]})]})};t.LaunchpadControl=c;t.LaunchpadRemote=function(e){var t=(0,r.useBackend)(e).data,n=t.has_pad,i=t.pad_closed;return n?i?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Launchpad Closed"}):(0,o.createComponentVNode)(2,c,{topLevel:!0,state:e.state}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Launchpad Connected"})};t.LaunchpadConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.launchpads,u=void 0===l?[]:l,d=i.selected_id;return u.length<=0?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Pads Connected"}):(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.Box,{style:{"border-right":"2px solid rgba(255, 255, 255, 0.1)"},minHeight:"190px",mr:1,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.name,selected:d===e.id,color:"transparent",onClick:function(){return n("select_pad",{id:e.id})}},e.name)}))})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:d?(0,o.createComponentVNode)(2,c,{state:e.state}):(0,o.createComponentVNode)(2,a.Box,{children:"Please select a pad"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.MechBayPowerConsole=void 0;var o=n(1),r=n(3),a=n(2);t.MechBayPowerConsole=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.recharge_port,c=i&&i.mech,l=c&&c.cell;return(0,o.createComponentVNode)(2,a.Section,{title:"Mech status",textAlign:"center",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Sync",onClick:function(){return n("reconnect")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Integrity",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.health/c.maxhealth,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power",children:!i&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No power port detected. Please re-sync."})||!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No mech detected."})||!l&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No cell is installed."})||(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.charge/l.maxcharge,ranges:{good:[.7,Infinity],average:[.3,.7],bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.charge})," / "+l.maxcharge]})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteChamberControl=void 0;var o=n(1),r=n(3),a=n(2);t.NaniteChamberControl=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.status_msg,l=i.locked,u=i.occupant_name,d=i.has_nanites,s=i.nanite_volume,p=i.regen_rate,m=i.safety_threshold,f=i.cloud_id,h=i.scan_level;if(c)return(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:c});var C=i.mob_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Chamber: "+u,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"lock":"lock-open",content:l?"Locked":"Unlocked",color:l?"bad":"default",onClick:function(){return n("toggle_lock")}}),children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"exclamation-triangle",content:"Destroy Nanites",color:"bad",onClick:function(){return n("remove_nanites")}}),children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanite Volume",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Growth Rate",children:p})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Safety Threshold",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:m,minValue:0,maxValue:500,width:"39px",onChange:function(e,t){return n("set_safety",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:f,minValue:0,maxValue:100,step:1,stepPixelSize:3,width:"39px",onChange:function(e,t){return n("set_cloud",{value:t})}})})]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",level:2,children:C.map((function(e){var t=e.extra_settings||[],n=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:e.desc}),h>=2&&(0,o.createComponentVNode)(2,a.Grid.Column,{size:.6,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation Status",children:(0,o.createComponentVNode)(2,a.Box,{color:e.activated?"good":"bad",children:e.activated?"Active":"Inactive"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Nanites Consumed",children:[e.use_rate,"/s"]})]})})]}),h>=2&&(0,o.createComponentVNode)(2,a.Grid,{children:[!!e.can_trigger&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Triggers",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:e.trigger_cost}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:e.trigger_cooldown}),!!e.timer_trigger_delay&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[e.timer_trigger_delay," s"]}),!!e.timer_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:[e.timer_trigger," s"]})]})})}),!(!e.timer_restart&&!e.timer_shutdown)&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[e.timer_restart&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:[e.timer_restart," s"]}),e.timer_shutdown&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:[e.timer_shutdown," s"]})]})})})]}),h>=3&&!!e.has_extra_settings&&(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:t.map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:e.value},e.name)}))})}),h>=4&&(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[!!e.activation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:e.activation_code}),!!e.deactivation_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:e.deactivation_code}),!!e.kill_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:e.kill_code}),!!e.can_trigger&&!!e.trigger_code&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:e.trigger_code})]})})}),e.has_rules&&(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Rules",level:2,children:n.map((function(e){return(0,o.createFragment)([e.display,(0,o.createVNode)(1,"br")],0,e.display)}))})})]})]})},e.name)}))})],4):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{bold:!0,color:"bad",textAlign:"center",fontSize:"30px",mb:1,children:"No Nanites Detected"}),(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,icon:"syringe",content:" Implant Nanites",color:"green",textAlign:"center",fontSize:"30px",lineHeight:"50px",onClick:function(){return n("nanite_injection")}})],4)})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteCloudControl=t.NaniteCloudBackupDetails=t.NaniteCloudBackupList=t.NaniteInfoBox=t.NaniteDiskBox=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.state.data,n=t.has_disk,r=t.has_program,i=t.disk;return n?r?(0,o.createComponentVNode)(2,c,{program:i}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Inserted disk has no program"}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No disk inserted"})};t.NaniteDiskBox=i;var c=function(e){var t=e.program,n=t.name,r=t.desc,i=t.activated,c=t.use_rate,l=t.can_trigger,u=t.trigger_cost,d=t.trigger_cooldown,s=t.activation_code,p=t.deactivation_code,m=t.kill_code,f=t.trigger_code,h=t.timer_restart,C=t.timer_shutdown,g=t.timer_trigger,b=t.timer_trigger_delay,v=t.extra_settings||[];return(0,o.createComponentVNode)(2,a.Section,{title:n,level:2,buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,color:i?"good":"bad",children:i?"Activated":"Deactivated"}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{mr:1,children:r}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:c}),!!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:u}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:d})],4)]})})]}),(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:s}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:m}),!!l&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:f})]})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart",children:[h," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown",children:[C," s"]}),!!l&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:[g," s"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:[b," s"]})],4)]})})})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Extra Settings",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:v.map((function(e){var t={number:(0,o.createFragment)([e.value,e.unit],0),text:e.value,type:e.value,boolean:e.value?e.true_text:e.false_text};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.name,children:t[e.type]},e.name)}))})})]})};t.NaniteInfoBox=c;var l=function(e){var t=(0,r.useBackend)(e),n=t.act;return(t.data.cloud_backups||[]).map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:"Backup #"+e.cloud_id,textAlign:"center",onClick:function(){return n("set_view",{view:e.cloud_id})}},e.cloud_id)}))};t.NaniteCloudBackupList=l;var u=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.current_view,u=i.disk,d=i.has_program,s=i.cloud_backup,p=u&&u.can_rule||!1;if(!s)return(0,o.createComponentVNode)(2,a.NoticeBox,{children:"ERROR: Backup not found"});var m=i.cloud_programs||[];return(0,o.createComponentVNode)(2,a.Section,{title:"Backup #"+l,level:2,buttons:!!d&&(0,o.createComponentVNode)(2,a.Button,{icon:"upload",content:"Upload From Disk",color:"good",onClick:function(){return n("upload_program")}}),children:m.map((function(e){var t=e.rules||[];return(0,o.createComponentVNode)(2,a.Collapsible,{title:e.name,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return n("remove_program",{program_id:e.id})}}),children:(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,c,{program:e}),!!p&&(0,o.createComponentVNode)(2,a.Section,{mt:-2,title:"Rules",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"plus",content:"Add Rule from Disk",color:"good",onClick:function(){return n("add_rule",{program_id:e.id})}}),children:e.has_rules?t.map((function(t){return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"minus-circle",color:"bad",onClick:function(){return n("remove_rule",{program_id:e.id,rule_id:t.id})}}),t.display],0,t.display)})):(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"No Active Rules"})})]})},e.name)}))})};t.NaniteCloudBackupDetails=u;t.NaniteCloudControl=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,d=n.data,s=d.has_disk,p=d.current_view,m=d.new_backup_id;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Program Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!s,onClick:function(){return c("eject")}}),children:(0,o.createComponentVNode)(2,i,{state:t})}),(0,o.createComponentVNode)(2,a.Section,{title:"Cloud Storage",buttons:p?(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"Return",onClick:function(){return c("set_view",{view:0})}}):(0,o.createFragment)(["New Backup: ",(0,o.createComponentVNode)(2,a.NumberInput,{value:m,minValue:1,maxValue:100,stepPixelSize:4,width:"39px",onChange:function(e,t){return c("update_new_backup_value",{value:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return c("create_backup")}})],0),children:d.current_view?(0,o.createComponentVNode)(2,u,{state:t}):(0,o.createComponentVNode)(2,l,{state:t})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgramHub=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.NaniteProgramHub=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.detail_view,u=c.disk,d=c.has_disk,s=c.has_program,p=c.programs,m=void 0===p?{}:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Program Disk",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"minus-circle",content:"Delete Program",onClick:function(){return n("clear")}})],4),children:d?s?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Program Name",children:u.name}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:u.desc})]}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No Program Installed"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"Insert Disk"})}),(0,o.createComponentVNode)(2,i.Section,{title:"Programs",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:l?"info":"list",content:l?"Detailed":"Compact",onClick:function(){return n("toggle_details")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",content:"Sync Research",onClick:function(){return n("refresh")}})],4),children:null!==m?(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:(0,r.map)((function(e,t){var r=e||[],a=t.substring(0,t.length-8);return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:a,children:l?r.map((function(e){return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!d,onClick:function(){return n("download",{program_id:e.id})}}),children:e.desc},e.id)})):(0,o.createComponentVNode)(2,i.LabeledList,{children:r.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"download",content:"Download",disabled:!d,onClick:function(){return n("download",{program_id:e.id})}})},e.id)}))})},t)}))(m)}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No nanite programs are currently researched."})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteProgrammer=t.NaniteExtraBoolean=t.NaniteExtraType=t.NaniteExtraText=t.NaniteExtraNumber=t.NaniteExtraEntry=t.NaniteDelays=t.NaniteCodes=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Codes",level:3,mr:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Activation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.activation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"activation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Deactivation",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.deactivation_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"deactivation",code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Kill",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.kill_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"kill",code:t})}})}),!!i.can_trigger&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.trigger_code,width:"47px",minValue:0,maxValue:9999,onChange:function(e,t){return n("set_code",{target_code:"trigger",code:t})}})})]})})};t.NaniteCodes=i;var c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Delays",level:3,ml:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Restart Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_restart,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_restart_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Shutdown Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_shutdown,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_shutdown_timer",{delay:t})}})}),!!i.can_trigger&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Repeat Timer",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_trigger,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_trigger_timer",{delay:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Delay",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:i.timer_trigger_delay,unit:"s",width:"57px",minValue:0,maxValue:3600,onChange:function(e,t){return n("set_timer_trigger_delay",{delay:t})}})})],4)]})})};t.NaniteDelays=c;var l=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.type,c={number:(0,o.createComponentVNode)(2,u,{act:t,extra_setting:n}),text:(0,o.createComponentVNode)(2,d,{act:t,extra_setting:n}),type:(0,o.createComponentVNode)(2,s,{act:t,extra_setting:n}),boolean:(0,o.createComponentVNode)(2,p,{act:t,extra_setting:n})};return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:r,children:c[i]})};t.NaniteExtraEntry=l;var u=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.min,l=n.max,u=n.unit;return(0,o.createComponentVNode)(2,a.NumberInput,{value:i,width:"64px",minValue:c,maxValue:l,unit:u,onChange:function(e,n){return t("set_extra_setting",{target_setting:r,value:n})}})};t.NaniteExtraNumber=u;var d=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value;return(0,o.createComponentVNode)(2,a.Input,{value:i,width:"200px",onInput:function(e,n){return t("set_extra_setting",{target_setting:r,value:n})}})};t.NaniteExtraText=d;var s=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.types;return(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:i,width:"150px",options:c,onSelected:function(e){return t("set_extra_setting",{target_setting:r,value:e})}})};t.NaniteExtraType=s;var p=function(e){var t=e.act,n=e.extra_setting,r=n.name,i=n.value,c=n.true_text,l=n.false_text;return(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:i?c:l,checked:i,onClick:function(){return t("set_extra_setting",{target_setting:r})}})};t.NaniteExtraBoolean=p;t.NaniteProgrammer=function(e){var t=(0,r.useBackend)(e),n=t.act,u=t.data,d=u.has_disk,s=u.has_program,p=u.name,m=u.desc,f=u.use_rate,h=u.can_trigger,C=u.trigger_cost,g=u.trigger_cooldown,b=u.activated,v=u.has_extra_settings,N=u.extra_settings,V=void 0===N?{}:N;return d?s?(0,o.createComponentVNode)(2,a.Section,{title:p,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}}),children:[(0,o.createComponentVNode)(2,a.Section,{title:"Info",level:2,children:(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:m}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:.7,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Use Rate",children:f}),!!h&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cost",children:C}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Trigger Cooldown",children:g})],4)]})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Settings",level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{icon:b?"power-off":"times",content:b?"Active":"Inactive",selected:b,color:"bad",bold:!0,onClick:function(){return n("toggle_active")}}),children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,i,{state:e.state})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,c,{state:e.state})})]}),!!v&&(0,o.createComponentVNode)(2,a.Section,{title:"Special",level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:V.map((function(e){return(0,o.createComponentVNode)(2,l,{act:n,extra_setting:e},e.name)}))})})]})]}):(0,o.createComponentVNode)(2,a.Section,{title:"Blank Disk",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",onClick:function(){return n("eject")}})}):(0,o.createComponentVNode)(2,a.NoticeBox,{textAlign:"center",children:"Insert a nanite program disk"})}},function(e,t,n){"use strict";t.__esModule=!0,t.NaniteRemote=void 0;var o=n(1),r=n(3),a=n(2);t.NaniteRemote=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.code,l=i.locked,u=i.mode,d=i.program_name,s=i.relay_code,p=i.comms,m=i.message,f=i.saved_settings,h=void 0===f?[]:f;return l?(0,o.createComponentVNode)(2,a.NoticeBox,{children:"This interface is locked."}):(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Nanite Control",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"lock",content:"Lock Interface",onClick:function(){return n("lock")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Name",children:[(0,o.createComponentVNode)(2,a.Input,{value:d,maxLength:14,width:"130px",onChange:function(e,t){return n("update_name",{name:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"save",content:"Save",onClick:function(){return n("save")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:p?"Comm Code":"Signal Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:c,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return n("set_code",{code:t})}})}),!!p&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Message",children:(0,o.createComponentVNode)(2,a.Input,{value:m,width:"270px",onChange:function(e,t){return n("set_message",{value:t})}})}),"Relay"===u&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Relay Code",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:s,minValue:0,maxValue:9999,width:"47px",step:1,stepPixelSize:2,onChange:function(e,t){return n("set_relay_code",{code:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Signal Mode",children:["Off","Local","Targeted","Area","Relay"].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{content:e,selected:u===e,onClick:function(){return n("select_mode",{mode:e})}},e)}))})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Saved Settings",children:h.length>0?(0,o.createComponentVNode)(2,a.Table,{children:[(0,o.createComponentVNode)(2,a.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,a.Table.Cell,{width:"35%",children:"Name"}),(0,o.createComponentVNode)(2,a.Table.Cell,{width:"20%",children:"Mode"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Code"}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,children:"Relay"})]}),h.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{className:"candystripe",children:[(0,o.createComponentVNode)(2,a.Table.Cell,{bold:!0,color:"label",children:[e.name,":"]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.mode}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:e.code}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:"Relay"===e.mode&&e.relay_code}),(0,o.createComponentVNode)(2,a.Table.Cell,{textAlign:"right",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"upload",color:"good",onClick:function(){return n("load",{save_id:e.id})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"minus",color:"bad",onClick:function(){return n("remove_save",{save_id:e.id})}})]})]},e.id)}))]}):(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No settings currently saved"})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.Mule=void 0;var o=n(1),r=n(3),a=n(2),i=n(69);t.Mule=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.locked&&!c.siliconUser,u=c.siliconUser,d=c.on,s=c.cell,p=c.cellPercent,m=c.load,f=c.mode,h=c.modeStatus,C=c.haspai,g=c.autoReturn,b=c.autoPickup,v=c.reportDelivery,N=c.destination,V=c.home,y=c.id,_=c.destinations,x=void 0===_?[]:_;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{siliconUser:u,locked:l}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",minHeight:"110px",buttons:!l&&(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",content:d?"On":"Off",selected:d,onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:s?p/100:0,color:s?"good":"bad"}),(0,o.createComponentVNode)(2,a.Grid,{mt:1,children:[(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",color:h,children:f})})}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Load",color:m?"good":"average",children:m||"None"})})})]})]}),!l&&(0,o.createComponentVNode)(2,a.Section,{title:"Controls",buttons:(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Unload",onClick:function(){return n("unload")}}),!!C&&(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject PAI",onClick:function(){return n("ejectpai")}})],0),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"ID",children:(0,o.createComponentVNode)(2,a.Input,{value:y,onChange:function(e,t){return n("setid",{value:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Destination",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:N||"None",options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"stop",content:"Stop",onClick:function(){return n("stop")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"play",content:"Go",onClick:function(){return n("go")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Home",children:[(0,o.createComponentVNode)(2,a.Dropdown,{over:!0,selected:V,options:x,width:"150px",onSelected:function(e){return n("destination",{value:e})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"home",content:"Go Home",onClick:function(){return n("home")}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Settings",children:[(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:g,content:"Auto-Return",onClick:function(){return n("autored")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:b,content:"Auto-Pickup",onClick:function(){return n("autopick")}}),(0,o.createVNode)(1,"br"),(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:v,content:"Report Delivery",onClick:function(){return n("report")}})]})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NotificationPreferences=void 0;var o=n(1),r=n(3),a=n(2);t.NotificationPreferences=function(e){var t=(0,r.useBackend)(e),n=t.act,i=(t.data.ignore||[]).sort((function(e,t){var n=e.desc.toLowerCase(),o=t.desc.toLowerCase();return no?1:0}));return(0,o.createComponentVNode)(2,a.Section,{title:"Ghost Role Notifications",children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:e.enabled?"times":"check",content:e.desc,color:e.enabled?"bad":"good",onClick:function(){return n("toggle_ignore",{key:e.key})}},e.key)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtnetRelay=void 0;var o=n(1),r=n(3),a=n(2);t.NtnetRelay=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.enabled,l=i.dos_capacity,u=i.dos_overload,d=i.dos_crashed;return(0,o.createComponentVNode)(2,a.Section,{title:"Network Buffer",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"power-off",selected:c,content:c?"ENABLED":"DISABLED",onClick:function(){return n("toggle")}}),children:d?(0,o.createComponentVNode)(2,a.Box,{fontFamily:"monospace",children:[(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",children:"NETWORK BUFFER OVERFLOW"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",children:"OVERLOAD RECOVERY MODE"}),(0,o.createComponentVNode)(2,a.Box,{children:"This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"20px",color:"bad",children:"ADMINISTRATOR OVERRIDE"}),(0,o.createComponentVNode)(2,a.Box,{fontSize:"16px",color:"bad",children:"CAUTION - DATA LOSS MAY OCCUR"}),(0,o.createComponentVNode)(2,a.Button,{icon:"signal",content:"PURGE BUFFER",mt:1,color:"bad",onClick:function(){return n("restart")}})]}):(0,o.createComponentVNode)(2,a.ProgressBar,{value:u,minValue:0,maxValue:l,children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:u})," GQ"," / ",l," GQ"]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosArcade=void 0;var o=n(1),r=n(3),a=n(2);t.NtosArcade=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{title:"Outbomb Cuban Pete Ultra",textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Grid,{children:[(0,o.createComponentVNode)(2,a.Grid.Column,{size:2,children:[(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerHitpoints,minValue:0,maxValue:30,ranges:{olive:[31,Infinity],good:[20,31],average:[10,20],bad:[-Infinity,10]},children:[i.PlayerHitpoints,"HP"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Player Magic",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.PlayerMP,minValue:0,maxValue:10,ranges:{purple:[11,Infinity],violet:[3,11],bad:[-Infinity,3]},children:[i.PlayerMP,"MP"]})})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Section,{backgroundColor:1===i.PauseState?"#1b3622":"#471915",children:i.Status})]}),(0,o.createComponentVNode)(2,a.Grid.Column,{children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.Hitpoints/45,minValue:0,maxValue:45,ranges:{good:[30,Infinity],average:[5,30],bad:[-Infinity,5]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:i.Hitpoints}),"HP"]}),(0,o.createComponentVNode)(2,a.Box,{m:1}),(0,o.createComponentVNode)(2,a.Section,{inline:!0,width:26,textAlign:"center",children:(0,o.createVNode)(1,"img",null,null,1,{src:i.BossID})})]})]}),(0,o.createComponentVNode)(2,a.Box,{my:1,mx:4}),(0,o.createComponentVNode)(2,a.Button,{icon:"fist-raised",tooltip:"Go in for the kill!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Attack")},content:"Attack!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"band-aid",tooltip:"Heal yourself!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Heal")},content:"Heal!"}),(0,o.createComponentVNode)(2,a.Button,{icon:"magic",tooltip:"Recharge your magic!",tooltipPosition:"top",disabled:0===i.GameActive||1===i.PauseState,onClick:function(){return n("Recharge_Power")},content:"Recharge!"})]}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{icon:"sync-alt",tooltip:"One more game couldn't hurt.",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Start_Game")},content:"Begin Game"}),(0,o.createComponentVNode)(2,a.Button,{icon:"ticket-alt",tooltip:"Claim at your local Arcade Computer for Prizes!",tooltipPosition:"top",disabled:1===i.GameActive,onClick:function(){return n("Dispense_Tickets")},content:"Claim Tickets"})]}),(0,o.createComponentVNode)(2,a.Box,{color:i.TicketCount>=1?"good":"normal",children:["Earned Tickets: ",i.TicketCount]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosConfiguration=void 0;var o=n(1),r=n(3),a=n(2);t.NtosConfiguration=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.power_usage,l=i.battery_exists,u=i.battery,d=void 0===u?{}:u,s=i.disk_size,p=i.disk_used,m=i.hardware,f=void 0===m?[]:m;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power Supply",buttons:(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Draw: ",c,"W"]}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Battery Status",color:!l&&"average",children:l?(0,o.createComponentVNode)(2,a.ProgressBar,{value:d.charge,minValue:0,maxValue:d.max,ranges:{good:[d.max/2,Infinity],average:[d.max/4,d.max/2],bad:[-Infinity,d.max/4]},children:[d.charge," / ",d.max]}):"Not Available"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"File System",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:p,minValue:0,maxValue:s,color:"good",children:[p," GQ / ",s," GQ"]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Hardware Components",children:f.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,buttons:(0,o.createFragment)([!e.critical&&(0,o.createComponentVNode)(2,a.Button.Checkbox,{content:"Enabled",checked:e.enabled,mr:1,onClick:function(){return n("PC_toggle_component",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:1,children:["Power Usage: ",e.powerusage,"W"]})],0),children:e.desc},e.name)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosMain=void 0;var o=n(1),r=n(3),a=n(2),i={compconfig:"cog",ntndownloader:"download",filemanager:"folder",smmonitor:"radiation",alarmmonitor:"bell",cardmod:"id-card",arcade:"gamepad",ntnrc_client:"comment-alt",nttransfer:"exchange-alt",powermonitor:"plug"};t.NtosMain=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.programs,u=void 0===l?[]:l,d=c.has_light,s=c.light_on,p=c.comp_light_color;return(0,o.createFragment)([!!d&&(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Button,{width:"144px",icon:"lightbulb",selected:s,onClick:function(){return n("PC_toggle_light")},children:["Flashlight: ",s?"ON":"OFF"]}),(0,o.createComponentVNode)(2,a.Button,{ml:1,onClick:function(){return n("PC_light_color")},children:["Color:",(0,o.createComponentVNode)(2,a.ColorBox,{ml:1,color:p})]})]}),(0,o.createComponentVNode)(2,a.Section,{title:"Programs",children:(0,o.createComponentVNode)(2,a.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{children:(0,o.createComponentVNode)(2,a.Button,{fluid:!0,lineHeight:"24px",color:"transparent",icon:i[e.name]||"window-maximize-o",content:e.desc,onClick:function(){return n("PC_runprogram",{name:e.name})}})}),(0,o.createComponentVNode)(2,a.Table.Cell,{collapsing:!0,width:3,children:!!e.running&&(0,o.createComponentVNode)(2,a.Button,{lineHeight:"24px",color:"transparent",icon:"times",tooltip:"Close program",tooltipPosition:"left",onClick:function(){return n("PC_killprogram",{name:e.name})}})})]},e.name)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetChat=void 0;var o=n(1),r=n(3),a=n(2);(0,n(51).createLogger)("ntos chat");t.NtosNetChat=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.can_admin,l=i.adminmode,u=i.authed,d=i.username,s=i.active_channel,p=i.is_operator,m=i.all_channels,f=void 0===m?[]:m,h=i.clients,C=void 0===h?[]:h,g=i.messages,b=void 0===g?[]:g,v=null!==s,N=u||l;return(0,o.createComponentVNode)(2,a.Section,{height:"600px",children:(0,o.createComponentVNode)(2,a.Table,{height:"580px",children:(0,o.createComponentVNode)(2,a.Table.Row,{children:[(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"200px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"537px",overflowY:"scroll",children:[(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"New Channel...",onCommit:function(e,t){return n("PRG_newchannel",{new_channel_name:t})}}),f.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{fluid:!0,content:e.chan,selected:e.id===s,color:"transparent",onClick:function(){return n("PRG_joinchannel",{id:e.id})}},e.chan)}))]}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,mt:1,content:d+"...",currentValue:d,onCommit:function(e,t){return n("PRG_changename",{new_name:t})}}),!!c&&(0,o.createComponentVNode)(2,a.Button,{fluid:!0,bold:!0,content:"ADMIN MODE: "+(l?"ON":"OFF"),color:l?"bad":"good",onClick:function(){return n("PRG_toggleadmin")}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{children:[(0,o.createComponentVNode)(2,a.Box,{height:"560px",overflowY:"scroll",children:v&&(N?b.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.msg},e.msg)})):(0,o.createComponentVNode)(2,a.Box,{textAlign:"center",children:[(0,o.createComponentVNode)(2,a.Icon,{name:"exclamation-triangle",mt:4,fontSize:"40px"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,fontSize:"18px",children:"THIS CHANNEL IS PASSWORD PROTECTED"}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:"INPUT PASSWORD TO ACCESS"})]}))}),(0,o.createComponentVNode)(2,a.Input,{fluid:!0,selfClear:!0,mt:1,onEnter:function(e,t){return n("PRG_speak",{message:t})}})]}),(0,o.createComponentVNode)(2,a.Table.Cell,{verticalAlign:"top",style:{width:"150px"},children:[(0,o.createComponentVNode)(2,a.Box,{height:"477px",overflowY:"scroll",children:C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{children:e.name},e.name)}))}),v&&N&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Save log...",defaultValue:"new_log",onCommit:function(e,t){return n("PRG_savelog",{log_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Leave Channel",onClick:function(){return n("PRG_leavechannel")}})],4),!!p&&u&&(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button.Confirm,{fluid:!0,content:"Delete Channel",onClick:function(){return n("PRG_deletechannel")}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Rename Channel...",onCommit:function(e,t){return n("PRG_renamechannel",{new_name:t})}}),(0,o.createComponentVNode)(2,a.Button.Input,{fluid:!0,content:"Set Password...",onCommit:function(e,t){return n("PRG_setpassword",{new_password:t})}})],4)]})]})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosNetDownloader=void 0;var o=n(1),r=n(3),a=n(2);t.NtosNetDownloader=function(e){var t=e.state,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.disk_size,d=l.disk_used,s=l.downloadable_programs,p=void 0===s?[]:s,m=l.error,f=l.hacked_programs,h=void 0===f?[]:f,C=l.hackedavailable;return(0,o.createFragment)([!!m&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:[(0,o.createComponentVNode)(2,a.Box,{mb:1,children:m}),(0,o.createComponentVNode)(2,a.Button,{content:"Reset",onClick:function(){return c("PRG_reseterror")}})]}),(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Disk usage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:d,minValue:0,maxValue:u,children:d+" GQ / "+u+" GQ"})})})}),(0,o.createComponentVNode)(2,a.Section,{children:p.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))}),!!C&&(0,o.createComponentVNode)(2,a.Section,{title:"UNKNOWN Software Repository",children:[(0,o.createComponentVNode)(2,a.NoticeBox,{mb:1,children:"Please note that Nanotrasen does not recommend download of software from non-official servers."}),h.map((function(e){return(0,o.createComponentVNode)(2,i,{state:t,program:e},e.filename)}))]})],0)};var i=function(e){var t=e.program,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.disk_size,u=c.disk_used,d=c.downloadcompletion,s=c.downloading,p=c.downloadname,m=c.downloadsize,f=l-u;return(0,o.createComponentVNode)(2,a.Box,{mb:3,children:[(0,o.createComponentVNode)(2,a.Flex,{align:"baseline",children:[(0,o.createComponentVNode)(2,a.Flex.Item,{bold:!0,grow:1,children:t.filedesc}),(0,o.createComponentVNode)(2,a.Flex.Item,{color:"label",nowrap:!0,children:[t.size," GQ"]}),(0,o.createComponentVNode)(2,a.Flex.Item,{ml:2,width:"94px",textAlign:"center",children:t.filename===p&&(0,o.createComponentVNode)(2,a.ProgressBar,{color:"green",minValue:0,maxValue:m,value:d})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"download",content:"Download",disabled:s||t.size>f,onClick:function(){return i("PRG_downloadfile",{filename:t.filename})}})})]}),"Compatible"!==t.compatibility&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Incompatible!"]}),t.size>f&&(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,fontSize:"12px",position:"relative",children:[(0,o.createComponentVNode)(2,a.Icon,{mx:1,color:"red",name:"times"}),"Not enough disk space!"]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,italic:!0,color:"label",fontSize:"12px",children:t.fileinfo})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosSupermatterMonitor=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(3),l=n(2),u=n(37),d=function(e){return Math.log2(16+Math.max(0,e))-4};t.NtosSupermatterMonitor=function(e){var t=e.state,n=(0,c.useBackend)(e),p=n.act,m=n.data,f=m.active,h=m.SM_integrity,C=m.SM_power,g=m.SM_ambienttemp,b=m.SM_ambientpressure;if(!f)return(0,o.createComponentVNode)(2,s,{state:t});var v=(0,a.flow)([function(e){return e.filter((function(e){return e.amount>=.01}))},(0,r.sortBy)((function(e){return-e.amount}))])(m.gases||[]),N=Math.max.apply(Math,[1].concat(v.map((function(e){return e.amount}))));return(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"270px",children:(0,o.createComponentVNode)(2,l.Section,{title:"Metrics",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Integrity",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:h/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Relative EER",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:C,minValue:0,maxValue:5e3,ranges:{good:[-Infinity,5e3],average:[5e3,7e3],bad:[7e3,Infinity]},children:(0,i.toFixed)(C)+" MeV/cm3"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Temperature",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d(g),minValue:0,maxValue:d(1e4),ranges:{teal:[-Infinity,d(80)],good:[d(80),d(373)],average:[d(373),d(1e3)],bad:[d(1e3),Infinity]},children:(0,i.toFixed)(g)+" K"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:d(b),minValue:0,maxValue:d(5e4),ranges:{good:[d(1),d(300)],average:[-Infinity,d(1e3)],bad:[d(1e3),+Infinity]},children:(0,i.toFixed)(b)+" kPa"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{title:"Gases",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"arrow-left",content:"Back",onClick:function(){return p("PRG_clear")}}),children:(0,o.createComponentVNode)(2,l.Box.Forced,{height:24*v.length+"px",children:(0,o.createComponentVNode)(2,l.LabeledList,{children:v.map((function(e){return(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:(0,u.getGasLabel)(e.name),children:(0,o.createComponentVNode)(2,l.ProgressBar,{color:(0,u.getGasColor)(e.name),value:e.amount,minValue:0,maxValue:N,children:(0,i.toFixed)(e.amount,2)+"%"})},e.name)}))})})})})]})};var s=function(e){var t=(0,c.useBackend)(e),n=t.act,r=t.data.supermatters,a=void 0===r?[]:r;return(0,o.createComponentVNode)(2,l.Section,{title:"Detected Supermatters",buttons:(0,o.createComponentVNode)(2,l.Button,{icon:"sync",content:"Refresh",onClick:function(){return n("PRG_refresh")}}),children:(0,o.createComponentVNode)(2,l.Table,{children:a.map((function(e){return(0,o.createComponentVNode)(2,l.Table.Row,{children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:e.uid+". "+e.area_name}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,color:"label",children:"Integrity:"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,width:"120px",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:e.integrity/100,ranges:{good:[.9,Infinity],average:[.5,.9],bad:[-Infinity,.5]}})}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,l.Button,{content:"Details",onClick:function(){return n("PRG_set",{target:e.uid})}})})]},e.uid)}))})})}},function(e,t,n){"use strict";t.__esModule=!0,t.NtosWrapper=void 0;var o=n(1),r=n(3),a=n(2),i=n(116);t.NtosWrapper=function(e){var t=e.children,n=(0,r.useBackend)(e),c=n.act,l=n.data,u=l.PC_batteryicon,d=l.PC_showbatteryicon,s=l.PC_batterypercent,p=l.PC_ntneticon,m=l.PC_apclinkicon,f=l.PC_stationtime,h=l.PC_programheaders,C=void 0===h?[]:h,g=l.PC_showexitprogram;return(0,o.createVNode)(1,"div","NtosWrapper",[(0,o.createVNode)(1,"div","NtosWrapper__header NtosHeader",[(0,o.createVNode)(1,"div","NtosHeader__left",[(0,o.createComponentVNode)(2,a.Box,{inline:!0,bold:!0,mr:2,children:f}),(0,o.createComponentVNode)(2,a.Box,{inline:!0,italic:!0,mr:2,opacity:.33,children:"NtOS"})],4),(0,o.createVNode)(1,"div","NtosHeader__right",[C.map((function(e){return(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:e.icon})},e.icon)})),(0,o.createComponentVNode)(2,a.Box,{inline:!0,children:p&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:p})}),!!d&&u&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:[u&&(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:u}),s&&s]}),m&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,mr:1,children:(0,o.createVNode)(1,"img","NtosHeader__icon",null,1,{src:m})}),!!g&&(0,o.createComponentVNode)(2,a.Button,{width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-minimize-o",tooltip:"Minimize",tooltipPosition:"bottom",onClick:function(){return c("PC_minimize")}}),!!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"window-close-o",tooltip:"Close",tooltipPosition:"bottom-left",onClick:function(){return c("PC_exit")}}),!g&&(0,o.createComponentVNode)(2,a.Button,{mr:"-3px",width:"26px",lineHeight:"22px",textAlign:"center",color:"transparent",icon:"power-off",tooltip:"Power off",tooltipPosition:"bottom-left",onClick:function(){return c("PC_shutdown")}})],0)],4,{onMouseDown:function(){(0,i.refocusLayout)()}}),(0,o.createVNode)(1,"div","NtosWrapper__content",t,0)],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.NuclearBomb=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e).act;return(0,o.createComponentVNode)(2,i.Box,{width:"185px",children:(0,o.createComponentVNode)(2,i.Grid,{width:"1px",children:[["1","4","7","C"],["2","5","8","0"],["3","6","9","E"]].map((function(e){return(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,mb:1,content:e,textAlign:"center",fontSize:"40px",lineHeight:"50px",width:"55px",className:(0,r.classes)(["NuclearBomb__Button","NuclearBomb__Button--keypad","NuclearBomb__Button--"+e]),onClick:function(){return t("keypad",{digit:e})}},e)}))},e[0])}))})})};t.NuclearBomb=function(e){var t=e.state,n=(0,a.useBackend)(e),r=n.act,l=n.data,u=(l.anchored,l.disk_present,l.status1),d=l.status2;return(0,o.createComponentVNode)(2,i.Box,{m:1,children:[(0,o.createComponentVNode)(2,i.Box,{mb:1,className:"NuclearBomb__displayBox",children:u}),(0,o.createComponentVNode)(2,i.Flex,{mb:1.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,i.Box,{className:"NuclearBomb__displayBox",children:d})}),(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",fontSize:"24px",lineHeight:"23px",textAlign:"center",width:"43px",ml:1,mr:"3px",mt:"3px",className:"NuclearBomb__Button NuclearBomb__Button--keypad",onClick:function(){return r("eject_disk")}})})]}),(0,o.createComponentVNode)(2,i.Flex,{ml:"3px",children:[(0,o.createComponentVNode)(2,i.Flex.Item,{children:(0,o.createComponentVNode)(2,c,{state:t})}),(0,o.createComponentVNode)(2,i.Flex.Item,{ml:1,width:"129px",children:(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ARM",textAlign:"center",fontSize:"28px",lineHeight:"32px",mb:1,className:"NuclearBomb__Button NuclearBomb__Button--C",onClick:function(){return r("arm")}}),(0,o.createComponentVNode)(2,i.Button,{fluid:!0,bold:!0,content:"ANCHOR",textAlign:"center",fontSize:"28px",lineHeight:"32px",className:"NuclearBomb__Button NuclearBomb__Button--E",onClick:function(){return r("anchor")}}),(0,o.createComponentVNode)(2,i.Box,{textAlign:"center",color:"#9C9987",fontSize:"80px",children:(0,o.createComponentVNode)(2,i.Icon,{name:"radiation"})}),(0,o.createComponentVNode)(2,i.Box,{height:"80px",className:"NuclearBomb__NTIcon"})]})})]})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OperatingComputer=void 0;var o=n(1),r=n(3),a=n(2);t.OperatingComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.table,l=i.surgeries,u=void 0===l?[]:l,d=i.procedures,s=void 0===d?[]:d,p=i.patient,m=void 0===p?{}:p;return(0,o.createComponentVNode)(2,a.Tabs,{children:[(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Patient State",children:[!c&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"No Table Detected"}),(0,o.createComponentVNode)(2,a.Section,{children:[(0,o.createComponentVNode)(2,a.Section,{title:"Patient State",level:2,children:m?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"State",color:m.statstate,children:m.stat}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Blood Type",children:m.blood_type}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Health",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m.health,minValue:m.minHealth,maxValue:m.maxHealth,color:m.health>=0?"good":"average",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:m.health})})}),[{label:"Brute",type:"bruteLoss"},{label:"Burn",type:"fireLoss"},{label:"Toxin",type:"toxLoss"},{label:"Respiratory",type:"oxyLoss"}].map((function(e){return(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:e.label,children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:m[e.type]/m.maxHealth,color:"bad",content:(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:m[e.type]})})},e.type)}))]}):"No Patient Detected"}),(0,o.createComponentVNode)(2,a.Section,{title:"Initiated Procedures",level:2,children:s.length?s.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:3,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Next Step",children:[e.next_step,e.chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.chems_needed],0)]}),!!i.alternative_step&&(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Alternative Step",children:[e.alternative_step,e.alt_chems_needed&&(0,o.createFragment)([(0,o.createVNode)(1,"b",null,"Required Chemicals:",16),(0,o.createVNode)(1,"br"),e.alt_chems_needed],0)]})]})},e.name)})):"No Active Procedures"})]})]},"state"),(0,o.createComponentVNode)(2,a.Tabs.Tab,{label:"Surgery Procedures",children:(0,o.createComponentVNode)(2,a.Section,{title:"Advanced Surgery Procedures",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"download",content:"Sync Research Database",onClick:function(){return n("sync")}}),u.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name,level:2,children:e.desc},e.name)}))]})},"procedures")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.OreBox=void 0;var o=n(1),r=n(29),a=n(19),i=n(2);t.OreBox=function(e){var t=e.state,n=t.config,c=t.data,l=n.ref,u=c.materials;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Ores",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Empty",onClick:function(){return(0,a.act)(l,"removeall")}}),children:(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Ore"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:"Amount"})]}),u.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(e.name)}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{color:"label",inline:!0,children:e.amount})})]},e.type)}))]})}),(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Box,{children:["All ores will be placed in here when you are wearing a mining stachel on your belt or in a pocket while dragging the ore box.",(0,o.createVNode)(1,"br"),"Gibtonite is not accepted."]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.OreRedemptionMachine=void 0;var o=n(1),r=n(29),a=n(3),i=n(2);t.OreRedemptionMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,l=r.unclaimedPoints,u=r.materials,d=r.alloys,s=r.diskDesigns,p=r.hasDisk;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:[(0,o.createComponentVNode)(2,i.BlockQuote,{mb:1,children:["This machine only accepts ore.",(0,o.createVNode)(1,"br"),"Gibtonite and Slag are not accepted."]}),(0,o.createComponentVNode)(2,i.Box,{children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:"label",mr:1,children:"Unclaimed points:"}),l,(0,o.createComponentVNode)(2,i.Button,{ml:2,content:"Claim",disabled:0===l,onClick:function(){return n("Claim")}})]})]}),(0,o.createComponentVNode)(2,i.Section,{children:p&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Box,{mb:1,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject design disk",onClick:function(){return n("diskEject")}})}),(0,o.createComponentVNode)(2,i.Table,{children:s.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:["File ",e.index,": ",e.name]}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:(0,o.createComponentVNode)(2,i.Button,{disabled:!e.canupload,content:"Upload",onClick:function(){return n("diskUpload",{design:e.index})}})})]},e.index)}))})],4)||(0,o.createComponentVNode)(2,i.Button,{icon:"save",content:"Insert design disk",onClick:function(){return n("diskInsert")}})}),(0,o.createComponentVNode)(2,i.Section,{title:"Materials",children:(0,o.createComponentVNode)(2,i.Table,{children:u.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Release",{id:e.id,sheets:t})}},e.id)}))})}),(0,o.createComponentVNode)(2,i.Section,{title:"Alloys",children:(0,o.createComponentVNode)(2,i.Table,{children:d.map((function(e){return(0,o.createComponentVNode)(2,c,{material:e,onRelease:function(t){return n("Smelt",{id:e.id,sheets:t})}},e.id)}))})})],4)};var c=function(e){var t,n;function a(){var t;return(t=e.call(this)||this).state={amount:1},t}return n=e,(t=a).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,a.prototype.render=function(){var e=this,t=this.state.amount,n=this.props,a=n.material,c=n.onRelease,l=Math.floor(a.amount);return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,r.toTitleCase)(a.name).replace("Alloy","")}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:a.value&&a.value+" cr"})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:(0,o.createComponentVNode)(2,i.Box,{mr:2,color:"label",inline:!0,children:[l," sheets"]})}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.NumberInput,{width:"32px",step:1,stepPixelSize:5,minValue:1,maxValue:50,value:t,onChange:function(t,n){return e.setState({amount:n})}}),(0,o.createComponentVNode)(2,i.Button,{disabled:l<1,content:"Release",onClick:function(){return c(t)}})]})]})},a}(o.Component)},function(e,t,n){"use strict";t.__esModule=!0,t.Pandemic=t.PandemicAntibodyDisplay=t.PandemicSymptomDisplay=t.PandemicDiseaseDisplay=t.PandemicBeakerDisplay=void 0;var o=n(1),r=n(23),a=n(3),i=n(2),c=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.has_beaker,l=r.beaker_empty,u=r.has_blood,d=r.blood,s=!c||l;return(0,o.createComponentVNode)(2,i.Section,{title:"Beaker",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Button,{icon:"times",content:"Empty and Eject",color:"bad",disabled:s,onClick:function(){return n("empty_eject_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"trash",content:"Empty",disabled:s,onClick:function(){return n("empty_beaker")}}),(0,o.createComponentVNode)(2,i.Button,{icon:"eject",content:"Eject",disabled:!c,onClick:function(){return n("eject_beaker")}})],4),children:c?l?(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"Beaker is empty"}):u?(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood DNA",children:d&&d.dna||"Unknown"}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Blood Type",children:d&&d.type||"Unknown"})]}):(0,o.createComponentVNode)(2,i.Box,{color:"bad",children:"No blood detected"}):(0,o.createComponentVNode)(2,i.NoticeBox,{children:"No beaker loaded"})})};t.PandemicBeakerDisplay=c;var l=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.is_ready;return(r.viruses||[]).map((function(e){var t=e.symptoms||[];return(0,o.createComponentVNode)(2,i.Section,{title:e.can_rename?(0,o.createComponentVNode)(2,i.Input,{value:e.name,onChange:function(t,o){return n("rename_disease",{index:e.index,name:o})}}):e.name,buttons:(0,o.createComponentVNode)(2,i.Button,{icon:"flask",content:"Create culture bottle",disabled:!c,onClick:function(){return n("create_culture_bottle",{index:e.index})}}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:e.description}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Agent",children:e.agent}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Spread",children:e.spread}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Possible Cure",children:e.cure})]})})]}),!!e.is_adv&&(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Statistics",level:2,children:(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:e.resistance}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:e.stealth})]})}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage speed",children:e.stage_speed}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmissibility",children:e.transmission})]})})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Symptoms",level:2,children:t.map((function(e){return(0,o.createComponentVNode)(2,i.Collapsible,{title:e.name,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,u,{symptom:e})})},e.name)}))})],4)]},e.name)}))};t.PandemicDiseaseDisplay=l;var u=function(e){var t=e.symptom,n=t.name,a=t.desc,c=t.stealth,l=t.resistance,u=t.stage_speed,d=t.transmission,s=t.level,p=t.neutered,m=(0,r.map)((function(e,t){return{desc:e,label:t}}))(t.threshold_desc||{});return(0,o.createComponentVNode)(2,i.Section,{title:n,level:2,buttons:!!p&&(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",children:"Neutered"}),children:[(0,o.createComponentVNode)(2,i.Grid,{children:[(0,o.createComponentVNode)(2,i.Grid.Column,{size:2,children:a}),(0,o.createComponentVNode)(2,i.Grid.Column,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Level",children:s}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Resistance",children:l}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stealth",children:c}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Stage Speed",children:u}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Transmission",children:d})]})})]}),m.length>0&&(0,o.createComponentVNode)(2,i.Section,{title:"Thresholds",level:3,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:m.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.label,children:e.desc},e.label)}))})})]})};t.PandemicSymptomDisplay=u;var d=function(e){var t=(0,a.useBackend)(e),n=t.act,r=t.data,c=r.resistances||[];return(0,o.createComponentVNode)(2,i.Section,{title:"Antibodies",children:c.length>0?(0,o.createComponentVNode)(2,i.LabeledList,{children:c.map((function(e){return(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:e.name,children:(0,o.createComponentVNode)(2,i.Button,{icon:"eye-dropper",content:"Create vaccine bottle",disabled:!r.is_ready,onClick:function(){return n("create_vaccine_bottle",{index:e.id})}})},e.name)}))}):(0,o.createComponentVNode)(2,i.Box,{bold:!0,color:"bad",mt:1,children:"No antibodies detected."})})};t.PandemicAntibodyDisplay=d;t.Pandemic=function(e){var t=(0,a.useBackend)(e).data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),!!t.has_blood&&(0,o.createFragment)([(0,o.createComponentVNode)(2,l,{state:e.state}),(0,o.createComponentVNode)(2,d,{state:e.state})],4)],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableGenerator=void 0;var o=n(1),r=n(3),a=n(2);t.PortableGenerator=function(e){var t,n=(0,r.useBackend)(e),i=n.act,c=n.data;return t=c.stack_percent>50?"good":c.stack_percent>15?"average":"bad",(0,o.createFragment)([!c.anchored&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Generator not anchored."}),(0,o.createComponentVNode)(2,a.Section,{title:"Status",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power switch",children:(0,o.createComponentVNode)(2,a.Button,{icon:c.active?"power-off":"times",onClick:function(){return i("toggle_power")},disabled:!c.ready_to_boot,children:c.active?"On":"Off"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:c.sheet_name+" sheets",children:[(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t,children:c.sheets}),c.sheets>=1&&(0,o.createComponentVNode)(2,a.Button,{ml:1,icon:"eject",disabled:c.active,onClick:function(){return i("eject")},children:"Eject"})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current sheet level",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.stack_percent/100,ranges:{good:[.1,Infinity],average:[.01,.1],bad:[-Infinity,.01]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Heat level",children:c.current_heat<100?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"good",children:"Nominal"}):c.current_heat<200?(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"average",children:"Caution"}):(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"bad",children:"DANGER"})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current output",children:c.power_output}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",onClick:function(){return i("lower_power")},children:c.power_generated}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",onClick:function(){return i("higher_power")},children:c.power_generated})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power available",children:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:!c.connected&&"bad",children:c.connected?c.power_available:"Unconnected"})})]})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.PortableScrubber=t.PortablePump=t.PortableBasicInfo=void 0;var o=n(1),r=n(3),a=n(2),i=n(37),c=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.connected,l=i.holding,u=i.on,d=i.pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:u?"power-off":"times",content:u?"On":"Off",selected:u,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:d})," kPa"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Port",color:c?"good":"average",children:c?"Connected":"Not Connected"})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Holding Tank",minHeight:"82px",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject",disabled:!l,onClick:function(){return n("eject")}}),children:l?(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Label",children:l.name}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{value:l.pressure})," kPa"]})]}):(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"No holding tank"})})],4)};t.PortableBasicInfo=c;t.PortablePump=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,l=i.direction,u=(i.holding,i.target_pressure),d=i.default_pressure,s=i.min_pressure,p=i.max_pressure;return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Pump",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-in-alt":"sign-out-alt",content:l?"In":"Out",selected:l,onClick:function(){return n("direction")}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,unit:"kPa",width:"75px",minValue:s,maxValue:p,step:10,onChange:function(e,t){return n("pressure",{pressure:t})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"minus",disabled:u===s,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",disabled:u===d,onClick:function(){return n("pressure",{pressure:"reset"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"plus",disabled:u===p,onClick:function(){return n("pressure",{pressure:"max"})}})]})]})})],4)};t.PortableScrubber=function(e){var t=(0,r.useBackend)(e),n=t.act,l=t.data.filter_types||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,c,{state:e.state}),(0,o.createComponentVNode)(2,a.Section,{title:"Filters",children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button,{icon:e.enabled?"check-square-o":"square-o",content:(0,i.getGasLabel)(e.gas_id,e.gas_name),selected:e.enabled,onClick:function(){return n("toggle_filter",{val:e.gas_id})}},e.id)}))})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.PowerMonitor=void 0;var o=n(1),r=n(23),a=n(70),i=n(20),c=n(12),l=n(2);var u=5e5,d=function(e){var t=String(e.split(" ")[1]).toLowerCase();return["w","kw","mw","gw"].indexOf(t)},s=function(e){var t,n;function c(){var t;return(t=e.call(this)||this).state={sortByField:null},t}return n=e,(t=c).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,c.prototype.render=function(){var e=this,t=this.props.state.data,n=t.history,c=this.state.sortByField,s=n.supply[n.supply.length-1]||0,f=n.demand[n.demand.length-1]||0,h=n.supply.map((function(e,t){return[t,e]})),C=n.demand.map((function(e,t){return[t,e]})),g=Math.max.apply(Math,[u].concat(n.supply,n.demand)),b=(0,a.flow)([(0,r.map)((function(e,t){return Object.assign({},e,{id:e.name+t})})),"name"===c&&(0,r.sortBy)((function(e){return e.name})),"charge"===c&&(0,r.sortBy)((function(e){return-e.charge})),"draw"===c&&(0,r.sortBy)((function(e){return-d(e.load)}),(function(e){return-parseFloat(e.load)}))])(t.areas);return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Flex,{spacing:1,children:[(0,o.createComponentVNode)(2,l.Flex.Item,{width:"200px",children:(0,o.createComponentVNode)(2,l.Section,{children:(0,o.createComponentVNode)(2,l.LabeledList,{children:[(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Supply",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:s,minValue:0,maxValue:g,color:"teal",content:(0,i.toFixed)(s/1e3)+" kW"})}),(0,o.createComponentVNode)(2,l.LabeledList.Item,{label:"Draw",children:(0,o.createComponentVNode)(2,l.ProgressBar,{value:f,minValue:0,maxValue:g,color:"pink",content:(0,i.toFixed)(f/1e3)+" kW"})})]})})}),(0,o.createComponentVNode)(2,l.Flex.Item,{grow:1,children:(0,o.createComponentVNode)(2,l.Section,{position:"relative",height:"100%",children:[(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:h,rangeX:[0,h.length-1],rangeY:[0,g],strokeColor:"rgba(0, 181, 173, 1)",fillColor:"rgba(0, 181, 173, 0.25)"}),(0,o.createComponentVNode)(2,l.Chart.Line,{fillPositionedParent:!0,data:C,rangeX:[0,C.length-1],rangeY:[0,g],strokeColor:"rgba(224, 57, 151, 1)",fillColor:"rgba(224, 57, 151, 0.25)"})]})})]}),(0,o.createComponentVNode)(2,l.Section,{children:[(0,o.createComponentVNode)(2,l.Box,{mb:1,children:[(0,o.createComponentVNode)(2,l.Box,{inline:!0,mr:2,color:"label",children:"Sort by:"}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"name"===c,content:"Name",onClick:function(){return e.setState({sortByField:"name"!==c&&"name"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"charge"===c,content:"Charge",onClick:function(){return e.setState({sortByField:"charge"!==c&&"charge"})}}),(0,o.createComponentVNode)(2,l.Button.Checkbox,{checked:"draw"===c,content:"Draw",onClick:function(){return e.setState({sortByField:"draw"!==c&&"draw"})}})]}),(0,o.createComponentVNode)(2,l.Table,{children:[(0,o.createComponentVNode)(2,l.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,l.Table.Cell,{children:"Area"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,children:"Charge"}),(0,o.createComponentVNode)(2,l.Table.Cell,{textAlign:"right",children:"Draw"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Equipment",children:"Eqp"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Lighting",children:"Lgt"}),(0,o.createComponentVNode)(2,l.Table.Cell,{collapsing:!0,title:"Environment",children:"Env"})]}),b.map((function(e,t){return(0,o.createVNode)(1,"tr","Table__row candystripe",[(0,o.createVNode)(1,"td",null,e.name,0),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",(0,o.createComponentVNode)(2,p,{charging:e.charging,charge:e.charge}),2),(0,o.createVNode)(1,"td","Table__cell text-right text-nowrap",e.load,0),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.eqp}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.lgt}),2),(0,o.createVNode)(1,"td","Table__cell text-center text-nowrap",(0,o.createComponentVNode)(2,m,{status:e.env}),2)],4,null,e.id)}))]})]})],4)},c}(o.Component);t.PowerMonitor=s;var p=function(e){var t=e.charging,n=e.charge;return(0,o.createFragment)([(0,o.createComponentVNode)(2,l.Icon,{width:"18px",textAlign:"center",name:0===t&&(n>50?"battery-half":"battery-quarter")||1===t&&"bolt"||2===t&&"battery-full",color:0===t&&(n>50?"yellow":"red")||1===t&&"yellow"||2===t&&"green"}),(0,o.createComponentVNode)(2,l.Box,{inline:!0,width:"36px",textAlign:"right",children:(0,i.toFixed)(n)+"%"})],4)};p.defaultHooks=c.pureComponentHooks;var m=function(e){var t=e.status,n=Boolean(2&t),r=Boolean(1&t),a=(n?"On":"Off")+" ["+(r?"auto":"manual")+"]";return(0,o.createComponentVNode)(2,l.ColorBox,{color:n?"good":"bad",content:r?undefined:"M",title:a})};m.defaultHooks=c.pureComponentHooks},function(e,t,n){"use strict";t.__esModule=!0,t.Radio=void 0;var o=n(1),r=n(23),a=n(20),i=n(3),c=n(2),l=n(37);t.Radio=function(e){var t=(0,i.useBackend)(e),n=t.act,u=t.data,d=u.freqlock,s=u.frequency,p=u.minFrequency,m=u.maxFrequency,f=u.listening,h=u.broadcasting,C=u.command,g=u.useCommand,b=u.subspace,v=u.subspaceSwitchable,N=l.RADIO_CHANNELS.find((function(e){return e.freq===s})),V=(0,r.map)((function(e,t){return{name:t,status:!!e}}))(u.channels);return(0,o.createComponentVNode)(2,c.Section,{children:(0,o.createComponentVNode)(2,c.LabeledList,{children:[(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Frequency",children:[d&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"light-gray",children:(0,a.toFixed)(s/10,1)+" kHz"})||(0,o.createComponentVNode)(2,c.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:10,minValue:p/10,maxValue:m/10,value:s/10,format:function(e){return(0,a.toFixed)(e,1)},onDrag:function(e,t){return n("frequency",{adjust:t-s/10})}}),N&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:N.color,ml:2,children:["[",N.name,"]"]})]}),(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Audio",children:[(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:f?"volume-up":"volume-mute",selected:f,onClick:function(){return n("listen")}}),(0,o.createComponentVNode)(2,c.Button,{textAlign:"center",width:"37px",icon:h?"microphone":"microphone-slash",selected:h,onClick:function(){return n("broadcast")}}),!!C&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:g,content:"High volume "+(g?"ON":"OFF"),onClick:function(){return n("command")}}),!!v&&(0,o.createComponentVNode)(2,c.Button,{ml:1,icon:"bullhorn",selected:b,content:"Subspace Tx "+(b?"ON":"OFF"),onClick:function(){return n("subspace")}})]}),!!b&&(0,o.createComponentVNode)(2,c.LabeledList.Item,{label:"Channels",children:[0===V.length&&(0,o.createComponentVNode)(2,c.Box,{inline:!0,color:"bad",children:"No encryption keys installed."}),V.map((function(e){return(0,o.createComponentVNode)(2,c.Box,{children:(0,o.createComponentVNode)(2,c.Button,{icon:e.status?"check-square-o":"square-o",selected:e.status,content:e.name,onClick:function(){return n("channel",{channel:e.name})}})},e.name)}))]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.RapidPipeDispenser=void 0;var o=n(1),r=n(12),a=n(3),i=n(2),c=["Atmospherics","Disposals","Transit Tubes"],l={Atmospherics:"wrench",Disposals:"trash-alt","Transit Tubes":"bus",Pipes:"grip-lines","Disposal Pipes":"grip-lines",Devices:"microchip","Heat Exchange":"thermometer-half","Station Equipment":"microchip"},u={grey:"#bbbbbb",amethyst:"#a365ff",blue:"#4466ff",brown:"#b26438",cyan:"#48eae8",dark:"#808080",green:"#1edd00",orange:"#ffa030",purple:"#b535ea",red:"#ff3333",violet:"#6e00f6",yellow:"#ffce26"},d=[{name:"Dispense",bitmask:1},{name:"Connect",bitmask:2},{name:"Destroy",bitmask:4},{name:"Paint",bitmask:8}];t.RapidPipeDispenser=function(e){var t=(0,a.useBackend)(e),n=t.act,s=t.data,p=s.category,m=s.categories,f=void 0===m?[]:m,h=s.selected_color,C=s.piping_layer,g=s.mode,b=s.preview_rows.flatMap((function(e){return e.previews}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Category",children:c.map((function(e,t){return(0,o.createComponentVNode)(2,i.Button,{selected:p===t,icon:l[e],color:"transparent",content:e,onClick:function(){return n("category",{category:t})}},e)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Modes",children:d.map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{checked:g&e.bitmask,content:e.name,onClick:function(){return n("mode",{mode:e.bitmask})}},e.bitmask)}))}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Color",children:[(0,o.createComponentVNode)(2,i.Box,{inline:!0,width:"64px",color:u[h],content:h}),Object.keys(u).map((function(e){return(0,o.createComponentVNode)(2,i.ColorBox,{ml:1,color:u[e],onClick:function(){return n("color",{paint_color:e})}},e)}))]})]})}),(0,o.createComponentVNode)(2,i.Flex,{m:-.5,children:[(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,children:(0,o.createComponentVNode)(2,i.Section,{children:[0===p&&(0,o.createComponentVNode)(2,i.Box,{mb:1,children:[1,2,3].map((function(e){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,checked:e===C,content:"Layer "+e,onClick:function(){return n("piping_layer",{piping_layer:e})}},e)}))}),(0,o.createComponentVNode)(2,i.Box,{width:"108px",children:b.map((function(e){return(0,o.createComponentVNode)(2,i.Button,{title:e.dir_name,selected:e.selected,style:{width:"48px",height:"48px",padding:0},onClick:function(){return n("setdir",{dir:e.dir,flipped:e.flipped})},children:(0,o.createComponentVNode)(2,i.Box,{className:(0,r.classes)(["pipes32x32",e.dir+"-"+e.icon_state]),style:{transform:"scale(1.5) translate(17%, 17%)"}})},e.dir)}))})]})}),(0,o.createComponentVNode)(2,i.Flex.Item,{m:.5,grow:1,children:(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:f.map((function(e){return(0,o.createComponentVNode)(2,i.Tabs.Tab,{fluid:!0,icon:l[e.cat_name],label:e.cat_name,children:function(){return e.recipes.map((function(t){return(0,o.createComponentVNode)(2,i.Button.Checkbox,{fluid:!0,ellipsis:!0,checked:t.selected,content:t.pipe_name,title:t.pipe_name,onClick:function(){return n("pipe_type",{pipe_type:t.pipe_index,category:e.cat_name})}},t.pipe_index)}))}},e.cat_name)}))})})})]})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SatelliteControl=void 0;var o=n(1),r=n(3),a=n(2),i=n(163);t.SatelliteControl=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data,l=c.satellites||[];return(0,o.createFragment)([c.meteor_shield&&(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledListItem,{label:"Coverage",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:c.meteor_shield_coverage/c.meteor_shield_coverage_max,content:100*c.meteor_shield_coverage/c.meteor_shield_coverage_max+"%",ranges:{good:[1,Infinity],average:[.3,1],bad:[-Infinity,.3]}})})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Satellite Controls",children:(0,o.createComponentVNode)(2,a.Box,{mr:-1,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.active,content:"#"+e.id+" "+e.mode,onClick:function(){return n("toggle",{id:e.id})}},e.id)}))})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.ScannerGate=void 0;var o=n(1),r=n(3),a=n(2),i=n(69),c=["Positive","Harmless","Minor","Medium","Harmful","Dangerous","BIOHAZARD"],l=[{name:"Human",value:"human"},{name:"Lizardperson",value:"lizard"},{name:"Flyperson",value:"fly"},{name:"Felinid",value:"felinid"},{name:"Plasmaman",value:"plasma"},{name:"Mothperson",value:"moth"},{name:"Jellyperson",value:"jelly"},{name:"Podperson",value:"pod"},{name:"Golem",value:"golem"},{name:"Zombie",value:"zombie"}],u=[{name:"Starving",value:150},{name:"Obese",value:600}];t.ScannerGate=function(e){var t=e.state,n=(0,r.useBackend)(e),a=n.act,c=n.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.InterfaceLockNoticeBox,{locked:c.locked,onLockedStatusChange:function(){return a("toggle_lock")}}),!c.locked&&(0,o.createComponentVNode)(2,s,{state:t})],0)};var d={Off:{title:"Scanner Mode: Off",component:function(){return p}},Wanted:{title:"Scanner Mode: Wanted",component:function(){return m}},Guns:{title:"Scanner Mode: Guns",component:function(){return f}},Mindshield:{title:"Scanner Mode: Mindshield",component:function(){return h}},Disease:{title:"Scanner Mode: Disease",component:function(){return C}},Species:{title:"Scanner Mode: Species",component:function(){return g}},Nutrition:{title:"Scanner Mode: Nutrition",component:function(){return b}},Nanites:{title:"Scanner Mode: Nanites",component:function(){return v}}},s=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data.scan_mode,l=d[c]||d.off,u=l.component();return(0,o.createComponentVNode)(2,a.Section,{title:l.title,buttons:"Off"!==c&&(0,o.createComponentVNode)(2,a.Button,{icon:"arrow-left",content:"back",onClick:function(){return i("set_mode",{new_mode:"Off"})}}),children:(0,o.createComponentVNode)(2,u,{state:t})})},p=function(e){var t=(0,r.useBackend)(e).act;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:"Select a scanning mode below."}),(0,o.createComponentVNode)(2,a.Box,{children:[(0,o.createComponentVNode)(2,a.Button,{content:"Wanted",onClick:function(){return t("set_mode",{new_mode:"Wanted"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Guns",onClick:function(){return t("set_mode",{new_mode:"Guns"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Mindshield",onClick:function(){return t("set_mode",{new_mode:"Mindshield"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Disease",onClick:function(){return t("set_mode",{new_mode:"Disease"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Species",onClick:function(){return t("set_mode",{new_mode:"Species"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nutrition",onClick:function(){return t("set_mode",{new_mode:"Nutrition"})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Nanites",onClick:function(){return t("set_mode",{new_mode:"Nanites"})}})]})],4)},m=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any warrants for their arrest."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},f=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","any guns."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},h=function(e){var t=e.state,n=(0,r.useBackend)(e).data.reverse;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",n?"does not have":"has"," ","a mindshield."]}),(0,o.createComponentVNode)(2,N,{state:t})],4)},C=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,l=n.data,u=l.reverse,d=l.disease_threshold;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",u?"does not have":"has"," ","a disease equal or worse than ",d,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:c.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e===d,content:e,onClick:function(){return i("set_disease_threshold",{new_threshold:e})}},e)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},g=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,u=c.reverse,d=c.target_species,s=l.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned is ",u?"not":""," ","of the ",s.name," species.","zombie"===d&&" All zombie types will be detected, including dormant zombies."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:l.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_species",{new_species:e.value})}},e.value)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},b=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,d=c.target_nutrition,s=u.find((function(e){return e.value===d}));return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","the ",s.name," nutrition level."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:u.map((function(e){return(0,o.createComponentVNode)(2,a.Button.Checkbox,{checked:e.value===d,content:e.name,onClick:function(){return i("set_target_nutrition",{new_nutrition:e.name})}},e.name)}))}),(0,o.createComponentVNode)(2,N,{state:t})],4)},v=function(e){var t=e.state,n=(0,r.useBackend)(e),i=n.act,c=n.data,l=c.reverse,u=c.nanite_cloud;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Box,{mb:2,children:["Trigger if the person scanned ",l?"does not have":"has"," ","nanite cloud ",u,"."]}),(0,o.createComponentVNode)(2,a.Box,{mb:2,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cloud ID",children:(0,o.createComponentVNode)(2,a.NumberInput,{value:u,width:"65px",minValue:1,maxValue:100,stepPixelSize:2,onChange:function(e,t){return i("set_nanite_cloud",{new_cloud:t})}})})})}),(0,o.createComponentVNode)(2,N,{state:t})],4)},N=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.reverse;return(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Scanning Mode",children:(0,o.createComponentVNode)(2,a.Button,{content:i?"Inverted":"Default",icon:i?"random":"long-arrow-alt-right",onClick:function(){return n("toggle_reverse")},color:i?"bad":"good"})})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ShuttleManipulator=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.ShuttleManipulator=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.shuttles||[],u=c.templates||{},d=c.selected||{},s=c.existing_shuttle||{};return(0,o.createComponentVNode)(2,i.Tabs,{children:[(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Status",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Table,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"JMP",onClick:function(){return n("jump_to",{type:"mobile",id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:(0,o.createComponentVNode)(2,i.Button,{content:"Fly",disabled:!e.can_fly,onClick:function(){return n("fly",{id:e.id})}},e.id)}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.id}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.status}),(0,o.createComponentVNode)(2,i.Table.Cell,{children:[e.mode,!!e.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),e.timeleft,(0,o.createTextVNode)(")"),(0,o.createComponentVNode)(2,i.Button,{content:"Fast Travel",disabled:!e.can_fast_travel,onClick:function(){return n("fast_travel",{id:e.id})}},e.id)],0)]})]},e.id)}))})})}},"status"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Templates",children:function(){return(0,o.createComponentVNode)(2,i.Section,{children:(0,o.createComponentVNode)(2,i.Tabs,{children:(0,r.map)((function(e,t){var r=e.templates||[];return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:e.port_id,children:r.map((function(e){var t=e.shuttle_id===d.shuttle_id;return(0,o.createComponentVNode)(2,i.Section,{title:e.name,level:2,buttons:(0,o.createComponentVNode)(2,i.Button,{content:t?"Selected":"Select",selected:t,onClick:function(){return n("select_template",{shuttle_id:e.shuttle_id})}}),children:(!!e.description||!!e.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!e.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:e.description}),!!e.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:e.admin_notes})]})},e.shuttle_id)}))},t)}))(u)})})}},"templates"),(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:"Modification",children:(0,o.createComponentVNode)(2,i.Section,{children:d?(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{level:2,title:d.name,children:(!!d.description||!!d.admin_notes)&&(0,o.createComponentVNode)(2,i.LabeledList,{children:[!!d.description&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Description",children:d.description}),!!d.admin_notes&&(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Admin Notes",children:d.admin_notes})]})}),s?(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: "+s.name,children:(0,o.createComponentVNode)(2,i.LabeledList,{children:(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Status",buttons:(0,o.createComponentVNode)(2,i.Button,{content:"Jump To",onClick:function(){return n("jump_to",{type:"mobile",id:s.id})}}),children:[s.status,!!s.timer&&(0,o.createFragment)([(0,o.createTextVNode)("("),s.timeleft,(0,o.createTextVNode)(")")],0)]})})}):(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Existing Shuttle: None"}),(0,o.createComponentVNode)(2,i.Section,{level:2,title:"Status",children:[(0,o.createComponentVNode)(2,i.Button,{content:"Preview",onClick:function(){return n("preview",{shuttle_id:d.shuttle_id})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Load",color:"bad",onClick:function(){return n("load",{shuttle_id:d.shuttle_id})}})]})],0):"No shuttle selected"})},"modification")]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SlimeBodySwapper=t.BodyEntry=void 0;var o=n(1),r=n(3),a=n(2),i=function(e){var t=e.body,n=e.swapFunc;return(0,o.createComponentVNode)(2,a.Section,{title:(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:t.htmlcolor,children:t.name}),level:2,buttons:(0,o.createComponentVNode)(2,a.Button,{content:{owner:"You Are Here",stranger:"Occupied",available:"Swap"}[t.occupied],selected:"owner"===t.occupied,color:"stranger"===t.occupied&&"bad",onClick:function(){return n()}}),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Status",bold:!0,color:{Dead:"bad",Unconscious:"average",Conscious:"good"}[t.status],children:t.status}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Jelly",children:t.exoticblood}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Location",children:t.area})]})})};t.BodyEntry=i;t.SlimeBodySwapper=function(e){var t=(0,r.useBackend)(e),n=t.act,c=t.data.bodies,l=void 0===c?[]:c;return(0,o.createComponentVNode)(2,a.Section,{children:l.map((function(e){return(0,o.createComponentVNode)(2,i,{body:e,swapFunc:function(){return n("swap",{ref:e.ref})}},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.Signaler=void 0;var o=n(1),r=n(2),a=n(3),i=n(20);t.Signaler=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data,l=c.code,u=c.frequency,d=c.minFrequency,s=c.maxFrequency;return(0,o.createComponentVNode)(2,r.Section,{children:[(0,o.createComponentVNode)(2,r.Grid,{children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Frequency:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,unit:"kHz",step:.2,stepPixelSize:6,minValue:d/10,maxValue:s/10,value:u/10,format:function(e){return(0,i.toFixed)(e,1)},width:13,onDrag:function(e,t){return n("freq",{freq:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"freq"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.6,children:[(0,o.createComponentVNode)(2,r.Grid.Column,{size:1.4,color:"label",children:"Code:"}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.NumberInput,{animate:!0,step:1,stepPixelSize:6,minValue:1,maxValue:100,value:l,width:13,onDrag:function(e,t){return n("code",{code:t})}})}),(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{ml:1.3,icon:"sync",content:"Reset",onClick:function(){return n("reset",{reset:"code"})}})})]}),(0,o.createComponentVNode)(2,r.Grid,{mt:.8,children:(0,o.createComponentVNode)(2,r.Grid.Column,{children:(0,o.createComponentVNode)(2,r.Button,{mb:-.1,fluid:!0,icon:"arrow-up",content:"Send Signal",textAlign:"center",onClick:function(){return n("signal")}})})})]})}},function(e,t,n){"use strict";t.__esModule=!0,t.SmartVend=void 0;var o=n(1),r=n(23),a=n(3),i=n(2);t.SmartVend=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createComponentVNode)(2,i.Section,{title:"Storage",buttons:!!c.isdryer&&(0,o.createComponentVNode)(2,i.Button,{icon:c.drying?"stop":"tint",onClick:function(){return n("Dry")},children:c.drying?"Stop drying":"Dry"}),children:0===c.contents.length&&(0,o.createComponentVNode)(2,i.NoticeBox,{children:["Unfortunately, this ",c.name," is empty."]})||(0,o.createComponentVNode)(2,i.Table,{children:[(0,o.createComponentVNode)(2,i.Table.Row,{header:!0,children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:"Item"}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"center",children:c.verb?c.verb:"Dispense"})]}),(0,r.map)((function(e,t){return(0,o.createComponentVNode)(2,i.Table.Row,{children:[(0,o.createComponentVNode)(2,i.Table.Cell,{children:e.name}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,textAlign:"right",children:e.amount}),(0,o.createComponentVNode)(2,i.Table.Cell,{collapsing:!0,children:[(0,o.createComponentVNode)(2,i.Button,{content:"One",disabled:e.amount<1,onClick:function(){return n("Release",{name:e.name,amount:1})}}),(0,o.createComponentVNode)(2,i.Button,{content:"Many",disabled:e.amount<=1,onClick:function(){return n("Release",{name:e.name})}})]})]},t)}))(c.contents)]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Smes=void 0;var o=n(1),r=n(3),a=n(2);t.Smes=function(e){var t,n,i=(0,r.useBackend)(e),c=i.act,l=i.data;return t=l.capacityPercent>=100?"good":l.inputting?"average":"bad",n=l.outputting?"good":l.charge>0?"average":"bad",(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Stored Energy",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:.01*l.capacityPercent,ranges:{good:[.5,Infinity],average:[.15,.5],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.Section,{title:"Input",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Charge Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.inputAttempt?"sync-alt":"times",selected:l.inputAttempt,onClick:function(){return c("tryinput")},children:l.inputAttempt?"Auto":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:t,children:l.capacityPercent>=100?"Fully Charged":l.inputting?"Charging":"Not Charging"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Input",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.inputLevel/l.inputLevelMax,content:l.inputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Input",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.inputLevel,onClick:function(){return c("input",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.inputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.inputLevelMax/1e3,onChange:function(e,t){return c("input",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.inputLevel===l.inputLevelMax,onClick:function(){return c("input",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Available",children:l.inputAvailable})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Output",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Output Mode",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:l.outputAttempt?"power-off":"times",selected:l.outputAttempt,onClick:function(){return c("tryoutput")},children:l.outputAttempt?"On":"Off"}),children:(0,o.createComponentVNode)(2,a.Box,{color:n,children:l.outputting?"Sending":l.charge>0?"Not Sending":"No Charge"})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:l.outputLevel/l.outputLevelMax,content:l.outputLevel_text})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Adjust Output",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{target:"min"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"backward",disabled:0===l.outputLevel,onClick:function(){return c("output",{adjust:-1e4})}}),(0,o.createComponentVNode)(2,a.NumberInput,{value:Math.round(l.outputLevel/1e3),unit:"kW",width:"65px",minValue:0,maxValue:l.outputLevelMax/1e3,onChange:function(e,t){return c("output",{target:1e3*t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{adjust:1e4})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:l.outputLevel===l.outputLevelMax,onClick:function(){return c("output",{target:"max"})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Outputting",children:l.outputUsed})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SmokeMachine=void 0;var o=n(1),r=n(3),a=n(2);t.SmokeMachine=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.TankContents,l=(i.isTankLoaded,i.TankCurrentVolume),u=i.TankMaxVolume,d=i.active,s=i.setting,p=(i.screen,i.maxSetting),m=void 0===p?[]:p;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Dispersal Tank",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:d?"power-off":"times",selected:d,content:d?"On":"Off",onClick:function(){return n("power")}}),children:[(0,o.createComponentVNode)(2,a.ProgressBar,{value:l/u,ranges:{bad:[-Infinity,.3]},children:[(0,o.createComponentVNode)(2,a.AnimatedNumber,{initial:0,value:l||0})," / "+u]}),(0,o.createComponentVNode)(2,a.Box,{mt:1,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Range",children:[1,2,3,4,5].map((function(e){return(0,o.createComponentVNode)(2,a.Button,{selected:s===e,icon:"plus",content:3*e,disabled:m0?"good":"bad",children:m})]})}),(0,o.createComponentVNode)(2,a.Grid.Column,{size:1.5,children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Power output",children:(0,o.createComponentVNode)(2,a.ProgressBar,{ranges:{good:[.66,Infinity],average:[.33,.66],bad:[-Infinity,.33]},minValue:0,maxValue:1,value:l,content:c+" W"})})})})]})}),(0,o.createComponentVNode)(2,a.Section,{title:"Controls",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Tracking",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"times",content:"Off",selected:0===p,onClick:function(){return n("tracking",{mode:0})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"clock-o",content:"Timed",selected:1===p,onClick:function(){return n("tracking",{mode:1})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Auto",selected:2===p,disabled:!f,onClick:function(){return n("tracking",{mode:2})}})]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Azimuth",children:[(0===p||1===p)&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"52px",unit:"\xb0",step:1,stepPixelSize:2,minValue:-360,maxValue:720,value:u,onDrag:function(e,t){return n("azimuth",{value:t})}}),1===p&&(0,o.createComponentVNode)(2,a.NumberInput,{width:"80px",unit:"\xb0/m",step:.01,stepPixelSize:1,minValue:-s-.01,maxValue:s+.01,value:d,format:function(e){return(Math.sign(e)>0?"+":"-")+Math.abs(e)},onDrag:function(e,t){return n("azimuth_rate",{value:t})}}),2===p&&(0,o.createComponentVNode)(2,a.Box,{inline:!0,color:"label",mt:"3px",children:[u+" \xb0"," (auto)"]})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpaceHeater=void 0;var o=n(1),r=n(3),a=n(2);t.SpaceHeater=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Power",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"eject",content:"Eject Cell",disabled:!i.hasPowercell||!i.open,onClick:function(){return n("eject")}}),(0,o.createComponentVNode)(2,a.Button,{icon:i.on?"power-off":"times",content:i.on?"On":"Off",selected:i.on,disabled:!i.hasPowercell,onClick:function(){return n("power")}})],4),children:(0,o.createComponentVNode)(2,a.LabeledList,{children:(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Cell",color:!i.hasPowercell&&"bad",children:i.hasPowercell&&(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.powerLevel/100,content:i.powerLevel+"%",ranges:{good:[.6,Infinity],average:[.3,.6],bad:[-Infinity,.3]}})||"None"})})}),(0,o.createComponentVNode)(2,a.Section,{title:"Thermostat",children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Temperature",children:(0,o.createComponentVNode)(2,a.Box,{fontSize:"18px",color:Math.abs(i.targetTemp-i.currentTemp)>50?"bad":Math.abs(i.targetTemp-i.currentTemp)>20?"average":"good",children:[i.currentTemp,"\xb0C"]})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Target Temperature",children:i.open&&(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.targetTemp),width:"65px",unit:"\xb0C",minValue:i.minTemp,maxValue:i.maxTemp,onChange:function(e,t){return n("target",{target:t})}})||i.targetTemp+"\xb0C"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mode",children:i.open?(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:"thermometer-half",content:"Auto",selected:"auto"===i.mode,onClick:function(){return n("mode",{mode:"auto"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fire-alt",content:"Heat",selected:"heat"===i.mode,onClick:function(){return n("mode",{mode:"heat"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fan",content:"Cool",selected:"cool"===i.mode,onClick:function(){return n("mode",{mode:"cool"})}})],4):"Auto"}),(0,o.createComponentVNode)(2,a.LabeledList.Divider)]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SpawnersMenu=void 0;var o=n(1),r=n(3),a=n(2);t.SpawnersMenu=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data.spawners||[];return(0,o.createComponentVNode)(2,a.Section,{children:i.map((function(e){return(0,o.createComponentVNode)(2,a.Section,{title:e.name+" ("+e.amount_left+" left)",level:2,buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{content:"Jump",onClick:function(){return n("jump",{name:e.name})}}),(0,o.createComponentVNode)(2,a.Button,{content:"Spawn",onClick:function(){return n("spawn",{name:e.name})}})],4),children:[(0,o.createComponentVNode)(2,a.Box,{bold:!0,mb:1,fontSize:"20px",children:e.short_desc}),(0,o.createComponentVNode)(2,a.Box,{children:e.flavor_text}),!!e.important_info&&(0,o.createComponentVNode)(2,a.Box,{mt:1,bold:!0,color:"bad",fontSize:"26px",children:e.important_info})]},e.name)}))})}},function(e,t,n){"use strict";t.__esModule=!0,t.StationAlertConsole=void 0;var o=n(1),r=n(3),a=n(2);t.StationAlertConsole=function(e){var t=(0,r.useBackend)(e).data.alarms||[],n=t.Fire||[],i=t.Atmosphere||[],c=t.Power||[];return(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Section,{title:"Fire Alarms",children:(0,o.createVNode)(1,"ul",null,[0===n.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),n.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Atmospherics Alarms",children:(0,o.createVNode)(1,"ul",null,[0===i.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),i.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)}),(0,o.createComponentVNode)(2,a.Section,{title:"Power Alarms",children:(0,o.createVNode)(1,"ul",null,[0===c.length&&(0,o.createVNode)(1,"li","color-good","Systems Nominal",16),c.map((function(e){return(0,o.createVNode)(1,"li","color-average",e,0,null,e)}))],0)})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.SuitStorageUnit=void 0;var o=n(1),r=n(3),a=n(2);t.SuitStorageUnit=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.locked,l=i.open,u=i.safeties,d=i.uv_active,s=i.occupied,p=i.suit,m=i.helmet,f=i.mask,h=i.storage;return(0,o.createFragment)([!(!s||!u)&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Biological entity detected in suit chamber. Please remove before continuing with operation."}),d&&(0,o.createComponentVNode)(2,a.NoticeBox,{children:"Contents are currently being decontaminated. Please wait."})||(0,o.createComponentVNode)(2,a.Section,{title:"Storage",minHeight:"260px",buttons:(0,o.createFragment)([!l&&(0,o.createComponentVNode)(2,a.Button,{icon:c?"unlock":"lock",content:c?"Unlock":"Lock",onClick:function(){return n("lock")}}),!c&&(0,o.createComponentVNode)(2,a.Button,{icon:l?"sign-out-alt":"sign-in-alt",content:l?"Close":"Open",onClick:function(){return n("door")}})],0),children:c&&(0,o.createComponentVNode)(2,a.Box,{mt:6,bold:!0,textAlign:"center",fontSize:"40px",children:[(0,o.createComponentVNode)(2,a.Box,{children:"Unit Locked"}),(0,o.createComponentVNode)(2,a.Icon,{name:"lock"})]})||l&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Helmet",children:(0,o.createComponentVNode)(2,a.Button,{icon:m?"square":"square-o",content:m||"Empty",disabled:!m,onClick:function(){return n("dispense",{item:"helmet"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Suit",children:(0,o.createComponentVNode)(2,a.Button,{icon:p?"square":"square-o",content:p||"Empty",disabled:!p,onClick:function(){return n("dispense",{item:"suit"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Mask",children:(0,o.createComponentVNode)(2,a.Button,{icon:f?"square":"square-o",content:f||"Empty",disabled:!f,onClick:function(){return n("dispense",{item:"mask"})}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Storage",children:(0,o.createComponentVNode)(2,a.Button,{icon:h?"square":"square-o",content:h||"Empty",disabled:!h,onClick:function(){return n("dispense",{item:"storage"})}})})]})||(0,o.createComponentVNode)(2,a.Button,{fluid:!0,icon:"recycle",content:"Decontaminate",disabled:s&&u,textAlign:"center",onClick:function(){return n("uv")}})})],0)}},function(e,t,n){"use strict";t.__esModule=!0,t.Tank=void 0;var o=n(1),r=n(3),a=n(2);t.Tank=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure",children:(0,o.createComponentVNode)(2,a.ProgressBar,{value:i.tankPressure/1013,content:i.tankPressure+" kPa",ranges:{good:[.35,Infinity],average:[.15,.35],bad:[-Infinity,.15]}})}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Pressure Regulator",children:[(0,o.createComponentVNode)(2,a.Button,{icon:"fast-backward",disabled:i.ReleasePressure===i.minReleasePressure,onClick:function(){return n("pressure",{pressure:"min"})}}),(0,o.createComponentVNode)(2,a.NumberInput,{animated:!0,value:parseFloat(i.releasePressure),width:"65px",unit:"kPa",minValue:i.minReleasePressure,maxValue:i.maxReleasePressure,onChange:function(e,t){return n("pressure",{pressure:t})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"fast-forward",disabled:i.ReleasePressure===i.maxReleasePressure,onClick:function(){return n("pressure",{pressure:"max"})}}),(0,o.createComponentVNode)(2,a.Button,{icon:"undo",content:"",disabled:i.ReleasePressure===i.defaultReleasePressure,onClick:function(){return n("pressure",{pressure:"reset"})}})]})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.TankDispenser=void 0;var o=n(1),r=n(3),a=n(2);t.TankDispenser=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data;return(0,o.createComponentVNode)(2,a.Section,{children:(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Plasma",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.plasma?"square":"square-o",content:"Dispense",disabled:!i.plasma,onClick:function(){return n("plasma")}}),children:i.plasma}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Oxygen",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:i.oxygen?"square":"square-o",content:"Dispense",disabled:!i.oxygen,onClick:function(){return n("oxygen")}}),children:i.oxygen})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Teleporter=void 0;var o=n(1),r=n(3),a=n(2);t.Teleporter=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=i.calibrated,l=i.calibrating,u=i.power_station,d=i.regime_set,s=i.teleporter_hub,p=i.target;return(0,o.createComponentVNode)(2,a.Section,{children:!u&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No power station linked."})||!s&&(0,o.createComponentVNode)(2,a.Box,{color:"bad",textAlign:"center",children:"No hub linked."})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Regime",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Change Regime",onClick:function(){return n("regimeset")}}),children:d}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Current Target",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Set Target",onClick:function(){return n("settarget")}}),children:p}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Calibration",buttons:(0,o.createComponentVNode)(2,a.Button,{icon:"tools",content:"Calibrate Hub",onClick:function(){return n("calibrate")}}),children:l&&(0,o.createComponentVNode)(2,a.Box,{color:"average",children:"In Progress"})||c&&(0,o.createComponentVNode)(2,a.Box,{color:"good",children:"Optimal"})||(0,o.createComponentVNode)(2,a.Box,{color:"bad",children:"Sub-Optimal"})})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.ThermoMachine=void 0;var o=n(1),r=n(20),a=n(3),i=n(2);t.ThermoMachine=function(e){var t=(0,a.useBackend)(e),n=t.act,c=t.data;return(0,o.createFragment)([(0,o.createComponentVNode)(2,i.Section,{title:"Status",children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Temperature",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.temperature,format:function(e){return(0,r.toFixed)(e,2)}})," K"]}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Pressure",children:[(0,o.createComponentVNode)(2,i.AnimatedNumber,{value:c.pressure,format:function(e){return(0,r.toFixed)(e,2)}})," kPa"]})]})}),(0,o.createComponentVNode)(2,i.Section,{title:"Controls",buttons:(0,o.createComponentVNode)(2,i.Button,{icon:c.on?"power-off":"times",content:c.on?"On":"Off",selected:c.on,onClick:function(){return n("power")}}),children:(0,o.createComponentVNode)(2,i.LabeledList,{children:[(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Target Temperature",children:(0,o.createComponentVNode)(2,i.NumberInput,{animated:!0,value:Math.round(c.target),unit:"K",width:"62px",minValue:Math.round(c.min),maxValue:Math.round(c.max),step:5,stepPixelSize:3,onDrag:function(e,t){return n("target",{target:t})}})}),(0,o.createComponentVNode)(2,i.LabeledList.Item,{label:"Presets",children:[(0,o.createComponentVNode)(2,i.Button,{icon:"fast-backward",disabled:c.target===c.min,title:"Minimum temperature",onClick:function(){return n("target",{target:c.min})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"sync",disabled:c.target===c.initial,title:"Room Temperature",onClick:function(){return n("target",{target:c.initial})}}),(0,o.createComponentVNode)(2,i.Button,{icon:"fast-forward",disabled:c.target===c.max,title:"Maximum Temperature",onClick:function(){return n("target",{target:c.max})}})]})]})})],4)}},function(e,t,n){"use strict";t.__esModule=!0,t.TurbineComputer=void 0;var o=n(1),r=n(3),a=n(2);t.TurbineComputer=function(e){var t=(0,r.useBackend)(e),n=t.act,i=t.data,c=Boolean(i.compressor&&!i.compressor_broke&&i.turbine&&!i.turbine_broke);return(0,o.createComponentVNode)(2,a.Section,{title:"Status",buttons:(0,o.createFragment)([(0,o.createComponentVNode)(2,a.Button,{icon:i.online?"power-off":"times",content:i.online?"Online":"Offline",selected:i.online,disabled:!c,onClick:function(){return n("toggle_power")}}),(0,o.createComponentVNode)(2,a.Button,{icon:"sync",content:"Reconnect",onClick:function(){return n("reconnect")}})],4),children:!c&&(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Compressor Status",color:!i.compressor||i.compressor_broke?"bad":"good",children:i.compressor_broke?i.compressor?"Offline":"Missing":"Online"}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Status",color:!i.turbine||i.turbine_broke?"bad":"good",children:i.turbine_broke?i.turbine?"Offline":"Missing":"Online"})]})||(0,o.createComponentVNode)(2,a.LabeledList,{children:[(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Turbine Speed",children:[i.rpm," RPM"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Internal Temp",children:[i.temp," K"]}),(0,o.createComponentVNode)(2,a.LabeledList.Item,{label:"Generated Power",children:i.power})]})})}},function(e,t,n){"use strict";t.__esModule=!0,t.Uplink=void 0;var o=n(1),r=n(29),a=n(19),i=n(2);var c=function(e){var t,n;function r(){var t;return(t=e.call(this)||this).state={hoveredItem:{},currentSearch:""},t}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n;var c=r.prototype;return c.setHoveredItem=function(e){this.setState({hoveredItem:e})},c.setSearchText=function(e){this.setState({currentSearch:e})},c.render=function(){var e=this,t=this.props.state,n=t.config,r=t.data,c=n.ref,u=r.compact_mode,d=r.lockable,s=r.telecrystals,p=r.categories,m=void 0===p?[]:p,f=this.state,h=f.hoveredItem,C=f.currentSearch;return(0,o.createComponentVNode)(2,i.Section,{title:(0,o.createComponentVNode)(2,i.Box,{inline:!0,color:s>0?"good":"bad",children:[s," TC"]}),buttons:(0,o.createFragment)([(0,o.createTextVNode)("Search"),(0,o.createComponentVNode)(2,i.Input,{value:C,onInput:function(t,n){return e.setSearchText(n)},ml:1,mr:1}),(0,o.createComponentVNode)(2,i.Button,{icon:u?"list":"info",content:u?"Compact":"Detailed",onClick:function(){return(0,a.act)(c,"compact_toggle")}}),!!d&&(0,o.createComponentVNode)(2,i.Button,{icon:"lock",content:"Lock",onClick:function(){return(0,a.act)(c,"lock")}})],0),children:C.length>0?(0,o.createVNode)(1,"table","Table",(0,o.createComponentVNode)(2,l,{compact:!0,items:m.flatMap((function(e){return e.items||[]})).filter((function(e){var t=C.toLowerCase();return String(e.name+e.desc).toLowerCase().includes(t)})),hoveredItem:h,onBuyMouseOver:function(t){return e.setHoveredItem(t)},onBuyMouseOut:function(t){return e.setHoveredItem({})},onBuy:function(e){return(0,a.act)(c,"buy",{item:e.name})}}),2):(0,o.createComponentVNode)(2,i.Tabs,{vertical:!0,children:m.map((function(t){var n=t.name,r=t.items;if(null!==r)return(0,o.createComponentVNode)(2,i.Tabs.Tab,{label:n+" ("+r.length+")",children:function(){return(0,o.createComponentVNode)(2,l,{compact:u,items:r,hoveredItem:h,telecrystals:s,onBuyMouseOver:function(t){return e.setHoveredItem(t)},onBuyMouseOut:function(t){return e.setHoveredItem({})},onBuy:function(e){return(0,a.act)(c,"buy",{item:e.name})}})}},n)}))})})},r}(o.Component);t.Uplink=c;var l=function(e){var t=e.items,n=e.hoveredItem,a=e.telecrystals,c=e.compact,l=e.onBuy,u=e.onBuyMouseOver,d=e.onBuyMouseOut,s=n&&n.cost||0;return c?(0,o.createComponentVNode)(2,i.Table,{children:t.map((function(e){var t=n&&n.name!==e.name,c=a-s1?r-1:0),i=1;i1?t-1:0),o=1;o Date: Thu, 13 Feb 2020 15:59:58 -0700 Subject: [PATCH 076/137] ok --- code/game/objects/items/stunbaton.dm | 78 ++++++++++---------- modular_citadel/code/_onclick/item_attack.dm | 4 +- 2 files changed, 42 insertions(+), 40 deletions(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 45313dc9b0..5d97866f95 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -15,13 +15,17 @@ attack_verb = list("beaten") armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 50, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 80) - var/stunforce = 70 + var/stamforce = 25 var/status = FALSE var/obj/item/stock_parts/cell/cell var/hitcost = 1000 var/throw_hit_chance = 35 var/preload_cell_type //if not empty the baton starts with this type of cell +/obj/item/melee/baton/examine(mob/user) + . = ..() + . += "Right click attack while in combat mode to disarm instead of stun." + /obj/item/melee/baton/get_cell() . = cell if(iscyborg(loc)) @@ -32,7 +36,7 @@ user.visible_message("[user] is putting the live [name] in [user.p_their()] mouth! It looks like [user.p_theyre()] trying to commit suicide!") return (FIRELOSS) -/obj/item/melee/baton/Initialize() +/obj/item/melee/baton/Initialize(mapload) . = ..() if(preload_cell_type) if(!ispath(preload_cell_type,/obj/item/stock_parts/cell)) @@ -134,44 +138,40 @@ add_fingerprint(user) /obj/item/melee/baton/attack(mob/M, mob/living/carbon/human/user) + var/interrupt = common_baton_melee(M, user, FALSE) + if(!interrupt) + ..() + +/obj/item/melee/baton/alt_pre_attack(atom/A, mob/living/user, params) + . = common_baton_melee(M, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming. + +//return TRUE to interrupt attack chain. +/obj/item/melee/baton/proc/common_baton_melee(mob/M, mob/living/user, disarming = FALSE) + if(iscyborg(M) || !isliving(M)) //can't baton cyborgs + return FALSE if(status && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) clowning_around(user) - return - - if(user.getStaminaLoss() >= STAMINA_SOFTCRIT)//CIT CHANGE - makes it impossible to baton in stamina softcrit - to_chat(user, "You're too exhausted for that.")//CIT CHANGE - ditto - return //CIT CHANGE - ditto - - if(iscyborg(M)) - ..() - return - - + if(user.getStaminaLoss() >= STAMINA_SOFTCRIT) //CIT CHANGE - makes it impossible to baton in stamina softcrit + to_chat(user, "You're too exhausted for that.") + return TRUE if(ishuman(M)) var/mob/living/carbon/human/L = M if(check_martial_counter(L, user)) - return + return TRUE + if(status) + if(baton_stun(M, user, disarming)) + user.do_attack_animation(M) + user.adjustStaminaLossBuffered(getweight()) //CIT CHANGE - makes stunbatonning others cost stamina + else if(user.a_intent != INTENT_HARM) //they'll try to bash in the last proc. + M.visible_message("[user] has prodded [M] with [src]. Luckily it was off.", \ + "[user] has prodded you with [src]. Luckily it was off") + return disarming || (user.a_intent != INTENT_HARM) - if(user.a_intent != INTENT_HARM) - if(status) - if(baton_stun(M, user)) - user.do_attack_animation(M) - user.adjustStaminaLossBuffered(getweight())//CIT CHANGE - makes stunbatonning others cost stamina - return - else - M.visible_message("[user] has prodded [M] with [src]. Luckily it was off.", \ - "[user] has prodded you with [src]. Luckily it was off") - else - if(status) - baton_stun(M, user) - ..() - - -/obj/item/melee/baton/proc/baton_stun(mob/living/L, mob/user) +/obj/item/melee/baton/proc/baton_stun(mob/living/L, mob/user, disarming = FALSE) if(L.check_shields(src, 0, "[user]'s [name]", MELEE_ATTACK)) //No message; check_shields() handles that playsound(L, 'sound/weapons/genhit.ogg', 50, 1) return FALSE - var/stunpwr = stunforce + var/stunpwr = stamforce var/obj/item/stock_parts/cell/our_cell = get_cell() if(!our_cell) switch_status(FALSE) @@ -187,17 +187,19 @@ return FALSE stunpwr *= round(stuncharge/hitcost, 0.1) - - L.Knockdown(stunpwr, override_stamdmg = 0) - L.apply_damage(stunpwr*0.5, STAMINA, user.zone_selected) - L.apply_effect(EFFECT_STUTTER, stunforce) + if(!disarming) + L.Knockdown(100, override_stamdmg = 0) //knockdown + L.adjustStaminaLoss(stunpwr) + else + L.drop_all_held_items() //no knockdown/stamina damage, instead disarm. + L.apply_effect(EFFECT_STUTTER, stamforce) SEND_SIGNAL(L, COMSIG_LIVING_MINOR_SHOCK) if(user) L.lastattacker = user.real_name L.lastattackerckey = user.ckey - L.visible_message("[user] has stunned [L] with [src]!", \ - "[user] has stunned you with [src]!") - log_combat(user, L, "stunned") + L.visible_message("[user] has [disarming? "disarmed" : "stunned"] [L] with [src]!", \ + "[user] has [disarming? "disarmed" : "stunned"] you with [src]!") + log_combat(user, L, disarming? "disarmed" : "stunned") playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) diff --git a/modular_citadel/code/_onclick/item_attack.dm b/modular_citadel/code/_onclick/item_attack.dm index 80281ee084..d87b2be661 100644 --- a/modular_citadel/code/_onclick/item_attack.dm +++ b/modular_citadel/code/_onclick/item_attack.dm @@ -1,12 +1,12 @@ /obj/item/proc/rightclick_melee_attack_chain(mob/user, atom/target, params) - if(!pre_altattackby(target, user, params)) //Hey, does this item have special behavior that should override all normal right-click functionality? + if(!alt_pre_attack(target, user, params)) //Hey, does this item have special behavior that should override all normal right-click functionality? if(!target.altattackby(src, user, params)) //Does the target do anything special when we right-click on it? melee_attack_chain(user, target, params) //Ugh. Lame! I'm filing a legal complaint about the discrimination against the right mouse button! else altafterattack(target, user, TRUE, params) return -/obj/item/proc/pre_altattackby(atom/A, mob/living/user, params) +/obj/item/proc/alt_pre_attack(atom/A, mob/living/user, params) return FALSE //return something other than false if you wanna override attacking completely /atom/proc/altattackby(obj/item/W, mob/user, params) From e8ccf4b6d7e06c064f1c5d9ff183676a02f6d844 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Thu, 13 Feb 2020 16:25:43 -0700 Subject: [PATCH 077/137] fix --- code/game/objects/items/balls.dm | 2 +- code/game/objects/items/melee/energy.dm | 2 +- code/game/objects/items/stunbaton.dm | 17 ++++++++++------- code/game/objects/items/teleprod.dm | 2 +- code/game/objects/items/toys.dm | 2 +- code/game/objects/items/twohanded.dm | 2 +- code/game/objects/structures/watercloset.dm | 4 ++-- .../modules/reagents/reagent_containers/rags.dm | 2 +- 8 files changed, 18 insertions(+), 15 deletions(-) diff --git a/code/game/objects/items/balls.dm b/code/game/objects/items/balls.dm index 59b47bacbd..c24f58208b 100644 --- a/code/game/objects/items/balls.dm +++ b/code/game/objects/items/balls.dm @@ -20,7 +20,7 @@ throw_range = 14 w_class = WEIGHT_CLASS_SMALL -/obj/item/toy/tennis/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes +/obj/item/toy/tennis/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes altafterattack(A, user, TRUE, params) return TRUE diff --git a/code/game/objects/items/melee/energy.dm b/code/game/objects/items/melee/energy.dm index 15a686bae6..3ca489542f 100644 --- a/code/game/objects/items/melee/energy.dm +++ b/code/game/objects/items/melee/energy.dm @@ -259,7 +259,7 @@ light_color = "#37FFF7" actions_types = list() -/obj/item/melee/transforming/energy/sword/cx/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes +/obj/item/melee/transforming/energy/sword/cx/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes altafterattack(A, user, TRUE, params) return TRUE diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 5d97866f95..2e5cc1c689 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -17,8 +17,9 @@ var/stamforce = 25 var/status = FALSE + var/knockdown = TRUE var/obj/item/stock_parts/cell/cell - var/hitcost = 1000 + var/hitcost = 750 var/throw_hit_chance = 35 var/preload_cell_type //if not empty the baton starts with this type of cell @@ -52,7 +53,7 @@ baton_stun(hit_atom) /obj/item/melee/baton/loaded //this one starts with a cell pre-installed. - preload_cell_type = /obj/item/stock_parts/cell/high + preload_cell_type = /obj/item/stock_parts/cell/high/plus /obj/item/melee/baton/proc/deductcharge(chrgdeductamt, chargecheck = TRUE, explode = TRUE) var/obj/item/stock_parts/cell/copper_top = get_cell() @@ -143,7 +144,7 @@ ..() /obj/item/melee/baton/alt_pre_attack(atom/A, mob/living/user, params) - . = common_baton_melee(M, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming. + return common_baton_melee(A, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming. //return TRUE to interrupt attack chain. /obj/item/melee/baton/proc/common_baton_melee(mob/M, mob/living/user, disarming = FALSE) @@ -188,7 +189,8 @@ stunpwr *= round(stuncharge/hitcost, 0.1) if(!disarming) - L.Knockdown(100, override_stamdmg = 0) //knockdown + if(knockdown) + L.Knockdown(100, override_stamdmg = 0) //knockdown L.adjustStaminaLoss(stunpwr) else L.drop_all_held_items() //no knockdown/stamina damage, instead disarm. @@ -214,7 +216,7 @@ user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ "You accidentally hit yourself with [src]!") SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK) - user.Knockdown(stunforce*3) + user.Knockdown(stamforce*6) playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) deductcharge(hitcost) @@ -276,8 +278,9 @@ w_class = WEIGHT_CLASS_BULKY force = 3 throwforce = 5 - stunforce = 60 - hitcost = 2000 + stamforce = 25 + hitcost = 1000 + knockdown = FALSE throw_hit_chance = 10 slot_flags = ITEM_SLOT_BACK var/obj/item/assembly/igniter/sparkler diff --git a/code/game/objects/items/teleprod.dm b/code/game/objects/items/teleprod.dm index f427bf6c4c..bab4d6a488 100644 --- a/code/game/objects/items/teleprod.dm +++ b/code/game/objects/items/teleprod.dm @@ -16,7 +16,7 @@ user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ "You accidentally hit yourself with [src]!") SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK) - user.Knockdown(stunforce*3) + user.Knockdown(stamforce * 6) playsound(loc, 'sound/weapons/egloves.ogg', 50, 1, -1) if(do_teleport(user, get_turf(user), 50, channel = TELEPORT_CHANNEL_BLUESPACE)) deductcharge(hitcost) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 6782ba0098..827ed43bfd 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -289,7 +289,7 @@ var/light_brightness = 3 actions_types = list() -/obj/item/toy/sword/cx/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes +/obj/item/toy/sword/cx/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes altafterattack(A, user, TRUE, params) return TRUE diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm index fc9e138f4b..a551f642d0 100644 --- a/code/game/objects/items/twohanded.dm +++ b/code/game/objects/items/twohanded.dm @@ -510,7 +510,7 @@ /obj/item/twohanded/dualsaber/hypereutactic/chaplain/IsReflect() return FALSE -/obj/item/twohanded/dualsaber/hypereutactic/pre_altattackby(atom/A, mob/living/user, params) //checks if it can do right click memes +/obj/item/twohanded/dualsaber/hypereutactic/alt_pre_attack(atom/A, mob/living/user, params) //checks if it can do right click memes altafterattack(A, user, TRUE, params) return TRUE diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index a8f95e30da..359436dc2e 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -528,8 +528,8 @@ if(B.cell) if(B.cell.charge > 0 && B.status == 1) flick("baton_active", src) - var/stunforce = B.stunforce - user.Knockdown(stunforce) + var/stunforce = B.stamforce + user.Knockdown(stunforce * 2) user.stuttering = stunforce/20 B.deductcharge(B.hitcost) user.visible_message("[user] shocks [user.p_them()]self while attempting to wash the active [B.name]!", \ diff --git a/code/modules/reagents/reagent_containers/rags.dm b/code/modules/reagents/reagent_containers/rags.dm index 59c956acd6..081d7a81de 100644 --- a/code/modules/reagents/reagent_containers/rags.dm +++ b/code/modules/reagents/reagent_containers/rags.dm @@ -52,7 +52,7 @@ SEND_SIGNAL(A, COMSIG_COMPONENT_CLEAN_ACT, CLEAN_MEDIUM) return -/obj/item/reagent_containers/rag/pre_altattackby(mob/living/M, mob/living/user, params) +/obj/item/reagent_containers/rag/alt_pre_attack(mob/living/M, mob/living/user, params) if(istype(M) && user.a_intent == INTENT_HELP) user.changeNext_move(CLICK_CD_MELEE) if(M.on_fire) From 7eb93a1fa8dfbe8df87b419d6fce73e8487357f8 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 15 Feb 2020 15:36:08 -0700 Subject: [PATCH 078/137] Update stunbaton.dm --- code/game/objects/items/stunbaton.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 2e5cc1c689..ab61feab9c 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -190,7 +190,7 @@ if(!disarming) if(knockdown) - L.Knockdown(100, override_stamdmg = 0) //knockdown + L.Knockdown(50, override_stamdmg = 0) //knockdown L.adjustStaminaLoss(stunpwr) else L.drop_all_held_items() //no knockdown/stamina damage, instead disarm. From 938d87cfbadc6d2f8d32817c81ad67cb9aaebaa7 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sat, 15 Feb 2020 17:28:04 -0700 Subject: [PATCH 079/137] Update stunbaton.dm --- code/game/objects/items/stunbaton.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index ab61feab9c..52f082fa5c 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -144,7 +144,8 @@ ..() /obj/item/melee/baton/alt_pre_attack(atom/A, mob/living/user, params) - return common_baton_melee(A, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming. + . = common_baton_melee(A, user, TRUE) //return true (attackchain interrupt) if this also returns true. no harm-disarming. + user.changeNext_move(CLICK_CD_MELEE) //return TRUE to interrupt attack chain. /obj/item/melee/baton/proc/common_baton_melee(mob/M, mob/living/user, disarming = FALSE) @@ -194,6 +195,7 @@ L.adjustStaminaLoss(stunpwr) else L.drop_all_held_items() //no knockdown/stamina damage, instead disarm. + L.apply_effect(EFFECT_STUTTER, stamforce) SEND_SIGNAL(L, COMSIG_LIVING_MINOR_SHOCK) if(user) From 1a994e7f1e5fd6ec4f2e0754e4f494fe3d2ec688 Mon Sep 17 00:00:00 2001 From: Winter Flare <7543955+Owai-Seek@users.noreply.github.com> Date: Mon, 17 Feb 2020 23:36:22 -0500 Subject: [PATCH 080/137] Ports Broom, Tweak Janitor Vendor Ports Brooms from TG https://github.com/tgstation/tgstation/pull/49120 Makes Broom printable. Reduces Broom sound effect. Updates Janitor Vendor to have equipment for at least 2 janitors. --- code/game/objects/items/storage/belt.dm | 1 + code/game/objects/items/twohanded.dm | 63 ++++++++++++++++++ code/game/objects/structures/janicart.dm | 26 ++++++-- code/modules/research/designs/misc_designs.dm | 10 +++ code/modules/research/techweb/all_nodes.dm | 2 +- code/modules/vending/wardrobes.dm | 15 +++-- .../inhands/equipment/custodial_lefthand.dmi | Bin 1860 -> 2189 bytes .../inhands/equipment/custodial_righthand.dmi | Bin 1868 -> 2183 bytes icons/obj/janitor.dmi | Bin 26482 -> 27189 bytes 9 files changed, 103 insertions(+), 14 deletions(-) diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index 1be9df5c30..c2acdc1590 100755 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -575,6 +575,7 @@ /obj/item/key/janitor, /obj/item/clothing/gloves, /obj/item/melee/flyswatter, + /obj/item/twohanded/broom, /obj/item/paint/paint_remover, /obj/item/assembly/mousetrap, /obj/item/screwdriver, diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm index fc9e138f4b..d203612493 100644 --- a/code/game/objects/items/twohanded.dm +++ b/code/game/objects/items/twohanded.dm @@ -1016,3 +1016,66 @@ C.change_view(CONFIG_GET(string/default_view)) user.client.pixel_x = 0 user.client.pixel_y = 0 + +/obj/item/twohanded/broom + name = "broom" + desc = "This is my BROOMSTICK! It can be used manually or braced with two hands to sweep items as you move. It has a telescopic handle for compact storage." //LIES + icon = 'icons/obj/janitor.dmi' + icon_state = "broom0" + lefthand_file = 'icons/mob/inhands/equipment/custodial_lefthand.dmi' + righthand_file = 'icons/mob/inhands/equipment/custodial_righthand.dmi' + force = 8 + throwforce = 10 + throw_speed = 3 + throw_range = 7 + w_class = WEIGHT_CLASS_NORMAL + force_unwielded = 8 + force_wielded = 12 + attack_verb = list("swept", "brushed off", "bludgeoned", "whacked") + resistance_flags = FLAMMABLE + +/obj/item/twohanded/broom/update_icon_state() + icon_state = "broom[wielded]" + +/obj/item/twohanded/broom/wield(mob/user) + . = ..() + if(!wielded) + return + to_chat(user, "You brace the [src] against the ground in a firm sweeping stance.") + RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/sweep) + +/obj/item/twohanded/broom/unwield(mob/user) + . = ..() + UnregisterSignal(user, COMSIG_MOVABLE_MOVED) + +/obj/item/twohanded/broom/afterattack(atom/A, mob/user, proximity) + . = ..() + if(!proximity) + return + sweep(user, A, FALSE) + +/obj/item/twohanded/broom/proc/sweep(mob/user, atom/A, moving = TRUE) + var/turf/target + if (!moving) + if (isturf(A)) + target = A + else + target = A.loc + else + target = user.loc + if (locate(/obj/structure/table) in target.contents) + return + var/i = 0 + for(var/obj/item/garbage in target.contents) + if(!garbage.anchored) + garbage.Move(get_step(target, user.dir), user.dir) + i++ + if(i >= 20) + break + if(i >= 1) + playsound(loc, 'sound/weapons/thudswoosh.ogg', 5, TRUE, -1) + +/obj/item/twohanded/broom/proc/janicart_insert(mob/user, obj/structure/janitorialcart/J) //bless you whoever fixes this copypasta + J.put_in_cart(src, user) + J.mybroom=src + J.update_icon() \ No newline at end of file diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index 54b9d650d5..58c8a739dc 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -6,11 +6,11 @@ anchored = FALSE density = TRUE //copypaste sorry - var/amount_per_transfer_from_this = 5 //shit I dunno, adding this so syringes stop runtime erroring. --NeoFite - var/obj/item/storage/bag/trash/mybag = null - var/obj/item/mop/mymop = null - var/obj/item/reagent_containers/spray/cleaner/myspray = null - var/obj/item/lightreplacer/myreplacer = null + var/obj/item/storage/bag/trash/mybag + var/obj/item/mop/mymop + var/obj/item/twohanded/broom/mybroom + var/obj/item/reagent_containers/spray/cleaner/myspray + var/obj/item/lightreplacer/myreplacer var/signs = 0 var/const/max_signs = 4 @@ -49,7 +49,12 @@ m.janicart_insert(user, src) else to_chat(user, fail_msg) - + else if(istype(I, /obj/item/twohanded/broom)) + if(!mybroom) + var/obj/item/twohanded/broom/b=I + b.janicart_insert(user,src) + else + to_chat(user, fail_msg) else if(istype(I, /obj/item/storage/bag/trash)) if(!mybag) var/obj/item/storage/bag/trash/t=I @@ -97,6 +102,8 @@ dat += "
[mybag.name]
" if(mymop) dat += "[mymop.name]
" + if(mybroom) + dat += "[mybroom.name]
" if(myspray) dat += "[myspray.name]
" if(myreplacer) @@ -124,6 +131,11 @@ user.put_in_hands(mymop) to_chat(user, "You take [mymop] from [src].") mymop = null + if(href_list["broom"]) + if(mybroom) + user.put_in_hands(mybroom) + to_chat(user, "You take [mybroom] from [src].") + mybroom = null if(href_list["spray"]) if(myspray) user.put_in_hands(myspray) @@ -155,6 +167,8 @@ add_overlay("cart_garbage") if(mymop) add_overlay("cart_mop") + if(mybroom) + add_overlay("cart_broom") if(myspray) add_overlay("cart_spray") if(myreplacer) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index 72b2c91e4c..34e07a600b 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -289,6 +289,16 @@ ////////////Janitor Designs////////////// ///////////////////////////////////////// +/datum/design/broom + name = "Broom" + desc = "Just your everyday standard mop." + id = "broom" + build_type = PROTOLATHE + materials = list(MAT_METAL = 1000, MAT_GLASS = 600) + build_path = /obj/item/twohanded/broom + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE + /datum/design/mop name = "Mop" desc = "Just your everyday standard mop." diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 75b71611d5..bd7f93c991 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -602,7 +602,7 @@ display_name = "Basic Tools" description = "Basic mechanical, electronic, surgical and botanical tools." prereq_ids = list("base") - design_ids = list("screwdriver", "wrench", "wirecutters", "crowbar", "multitool", "welding_tool", "tscanner", "analyzer", "cable_coil", "pipe_painter", "airlock_painter", "scalpel", "circular_saw", "surgicaldrill", "retractor", "cautery", "hemostat", "cultivator", "plant_analyzer", "shovel", "spade", "hatchet", "mop") + design_ids = list("screwdriver", "wrench", "wirecutters", "crowbar", "multitool", "welding_tool", "tscanner", "analyzer", "cable_coil", "pipe_painter", "airlock_painter", "scalpel", "circular_saw", "surgicaldrill", "retractor", "cautery", "hemostat", "cultivator", "plant_analyzer", "shovel", "spade", "hatchet", "mop", "broom") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 500) export_price = 5000 diff --git a/code/modules/vending/wardrobes.dm b/code/modules/vending/wardrobes.dm index 5d2e08734e..d368a9bbca 100644 --- a/code/modules/vending/wardrobes.dm +++ b/code/modules/vending/wardrobes.dm @@ -266,16 +266,17 @@ /obj/item/cartridge/janitor = 3, /obj/item/clothing/gloves/color/black = 2, /obj/item/clothing/head/soft/purple = 2, + /obj/item/twohanded/broom = 2, /obj/item/paint/paint_remover = 2, - /obj/item/melee/flyswatter = 1, + /obj/item/melee/flyswatter = 2, /obj/item/flashlight = 2, /obj/item/caution = 8, - /obj/item/holosign_creator = 1, - /obj/item/lightreplacer = 1, - /obj/item/soap = 1, - /obj/item/storage/bag/trash = 1, - /obj/item/clothing/shoes/galoshes = 1, - /obj/item/watertank/janitor = 1, + /obj/item/holosign_creator = 2, + /obj/item/lightreplacer = 2, + /obj/item/soap = 2, + /obj/item/storage/bag/trash = 2, + /obj/item/clothing/shoes/galoshes = 2, + /obj/item/watertank/janitor = 2, /obj/item/storage/belt/janitor = 2, /obj/item/screwdriver = 2, /obj/item/stack/cable_coil/random = 4) diff --git a/icons/mob/inhands/equipment/custodial_lefthand.dmi b/icons/mob/inhands/equipment/custodial_lefthand.dmi index 90ffd2495eb214b501b473b3a358a842286b409f..eaed11867c00a0a88d3889b490860ed8e70f5ae9 100644 GIT binary patch delta 1926 zcmXw3dpy&N8~$#o6BWwHrI6!Zn3ISi;cQ9fzRe;+I#e9F#jqiil3O1uCT5u1)N)xP zRLuRZT*8vEA<~*^a{JBs{Jj4>@ALV*pXYs_=a08VJmp}Tj06bSy9)q-8x?40004=n ztNqsT@bG{_p?S8p6Es@7g+*^f#L%Ek(`!9;+#M_7C@91c;RKj-Mty~ZnQ0D^#?i#z zDNF8|l6w|cU9L~9t9xQt93P!TCMNvz0EAf@-)Ay6_$G`Hg`3hPR5?WlV36+eCS=;h z)Wvr3@wg1iA;fRrCbCt*LeZMxaIB?=@8r>|R+$bek7>tX9UtD{NxHaz{?rnXJ_TwP zY82uy{B~wt)q%So-9bvVI8(8S>kWiY9nF#)U56XAa7EiGl*8%+SAudx+60flRb86S z>wW>%ipd7ZN*eLQtsjgkqmW=4y}qK}6aeYs<_GoyNO>5GNZU||~D zWqwSMSc+AcN__fME`tMpOKEvOhEDPQI+1?8G<_mpcK)P6BlzBR>-TQTg1PNp(krWk zVa^+v{fD?4x<)mz$>o4M-~_V1%$r4bYSai^j;x`a`0|71n;LMjREX}lSH$Qdxdr`BcsoL=Psm655Ea>vY6xH0JQ1D0K@d($dp z2t~k&U}WV)&aD;uXT>U~EkiNr4r1lE+JI7{@e%-phRokUUk#WXW8EZQRLY#%kDK&6 zf40szrlm2Qf~6?SyCA)_)!)k1Ihov_0JrOa3LIv63k&RI>wgnJSF4o8Q*V}Lqxv7S zwB}&a#x}`Q`zQUbF)&}0-j{WWgJgdq&Ko%nmp<3Qe|C0{aV#5Q$454-_%J$;aEiml zgbAE*vAOYM^PKZzt7vNB@JU)YPV6ul|9HWRs_60ecc=GbTZIOTx$ipmZpX4y0l6^p z7CHTpyyaMZxT0~a< zNj@Lk%BiPxE}C(&Ae4S-$v#?EZc&*mv{uzv4g2h+C?;H29#ZaG?_OSW5_I9Np)rt{ zRYniX;6<0Ei{e#ZSElb?$Rh1M4|S{&8{^gAkC-ze#!2W?BU0HgCZ49&r3L8$ z!I*=&pK%9vT;lI4jRp$j^JUo&l*R&~G{IfPb4C{Ii{{^Wd=-OQ5h2xpv2BF(hrYZw z*dkQ|@0$zF%BN{{Xsih8Lf@fHT8mZl`q?+8TRz4gNV#uDYD2MGKA!o1tHOLOn!0&f zDKg5~u{(!5m&zx#5xj8B7%_#7AhQ+07@C&%42C00m^RLZm^3#B(7STqw6-P=3?lsP zkxihSoSd>(H8so^b2pdww=RW+{}O;k&!t)R&oAB#2EU-6*$b-rgzsto(^%y4f?IIZ%5?o6uaBMS3m44pB7`zuly)=2}+n*S?JM2GNqG;=ASpY zN~10y`f#W$e8DS=pvYB>uCq%JGf!$K;2rdwUS;>uUrzVs^m7(*lTRz|DCEtAY;NlP zC*0g-Clt&W`ovwPCLf1Ts_c}6s7j%4wI`HmSK1R<(P{f!T-7{mM8u5K-rz@kiR+U`N-?o&Ux&ERRd*@_zv0QXx#`Z>%aYw}Tt;xh;sbC3Bh2B>U zaHtsE=QR7L;#*DSS)zB$a{9w}2WOA)v8g_gx^C;eaa*tX6K*4VQ0R#- z;XOUq>`L)A&GcUD$7HXV|M-t8iz0SHPnX p)TmQY!Bja|UB;siw0-6i=;p4T?0G~#``!FDxBeSpRcYZF_djU;oX!9M delta 1611 zcmY+Bdsxy}7{`A`Svph8q-kO8Vosdq(k_VR{emVK8YXmMu_PUn<|Py_Ke}j6aUt4L z(W!*XjOk3Wz}qS@O|zL32bHE`VqO3h^Aa}l*|R-6f1L9<&-Xc>=Y8Lkv#HgX1vLR) zZGZp(@VqqO6aeV0$+cbrOM`=7)Yj&Dd37fx4ZZWV)5Uu6Sac}h@%pbw-KB{hb~N7S zbQ~!*>TG-zH3k3@i*uee8DDTTU9S?RX6fTd@9@WsS{>Vw+vj*WAptdIjZMEAi&(c` zTDO3*hGTGt#XDd4p0iuH^iw>wHKMp4+5I!#Wt1~=-YH#l7@U62f?RGs^agsrEcig4 z44e7=xx0USUHR6%U*r8Jqge7=G=GPJ%g^XpL~*+#b{_FGOaIe;rJL%1>Z7;~l$Foi zTE`69Z#>#s&CRJkWA3bmt@EqPrK`uo8Z}j$~3p*be~fY*0R)VTr|4vQ*k; z|1J8eC|1=cKH#UswdZ~Dluu0ClPP>zIEgRYx1?T8X$6j*LyM!u+ha?T zB85&3s>@!wq3D)}L&`%wlJH8>)~0_m@**pgD3LNfx4oV22rtCm_BIF{EFXn2RPZ16 zZo5=G2g48OnQ{a8(lR-3s%MXhhnk>)_eSpv01;8if>uaKV=2B_$%R-*7qKZUeA+9X z-uMSBz^5rb;2zDvQP(vBlC39)!{HTe#Q#VyjkVH~)pq}EO$!>Z86Yzv1$8EQ$X!Y^ z>Y(%Wa5>P96u-RNrM?vl$V-N&39lEfB7lyjVI`rB+4nD*gDwC!3~pOPiR5GnkI3Nu z{RH^cyI)$W-cKfWz}q=kVWas!Oyfz2IlK2$->DH0qHdKWR`CaRE5mTh+~`*c`Y-j)(?L$15{X4CQe zmTpl5S7EC5l2!^Ug?SrQDKp-PF6^aaQ_O_xcg}7wz4!)0qm@b$)_u$56`kqYaT=M! zhXfbGyiKY)8+cpzJ$cc6eopirN|?RnStk&gVa0oKquNT3$@9}hl=m5)6yVdzefn{Q z&!u1CJO?J74X1E(JK%=gK8MP&!UM>*UG3Msf&_%2h5{|rejdb%3SlJkwX1Xau$>)q zDN%&m;1nG6I_C5 zFn#kzmf`#tho3%tYj<*l?={6((cY3~q2DftaP_eFt!&|E<~irf*}?8?_LdX!?5$V` zdtEZGvg{>geMaCuZ9pJfX=ZwYlRfSVxkiY{H!rVSsiz&Q&(L!o*e31-|FGeh6`{a{FUI$zH%hjj$b zSQqr-jCw7k|Fr2i3t8TA%${{cBfc^T68Fd#PPo^3cgg_e1UcbM)V5d2TBemf71CH! zI&j@OhN0BxVW-X7>?>h`kJU|SveXCn5(M5TL^Ifr88@4-;9DH(Qa3frY$SD|P6Y)c z$*C2gT_!`~mhR;fC#Sc}K8#b>%r^I5ql;Id^$Yz;gA+E%;+1*9DrVm&o}G<7uswD+ zkxIpEi-HpJ_flh=EpLj|iCvi=PhwtA7+>y%q(O|Y$e~91d8ufK@h`Jb$FV0lKY|!J zl=et zHujvlm#nkfjw^4OtXfCMFuD`_tO1l?tin+avj@O@lPY}esDr`(q_}~W{*&^o1_~KP zQ%v-Ib*FaN0eQK)rrAu?CfbvEARC^IG{0&kk B5ikG% diff --git a/icons/mob/inhands/equipment/custodial_righthand.dmi b/icons/mob/inhands/equipment/custodial_righthand.dmi index 33e708f8c9a7c6f259decbae0dbaf8a01fb6fa4b..dc7ee742a327fea9fa793ace09b0057911e68401 100644 GIT binary patch delta 1919 zcmY*ac|6o>7ypehBZjfewIpg>OG?>ZOL8$7U4(>d3nPri^4el7FZVY@bS+Jm5E)w+ zR}x0HTw^UuwxKebY)v7AxrHoqM}6MUecyl1`JD4S=bZ2Ne9m*8A!M>BSwa{B9DxD= z5b)610RSLMb&7%z5QoF5tE*G2t>4tukx;1N=;%8pCiL-(9Z%Ib9FC$7V9kwygxlHJ z1DN-(eYr+&jDvGH7JuD4%r7L|FE|JQq6*W;>yTY&5%}!Uq6BKSMonvLp3d(#;*!e> zlL)C0*VSpn`NeS>F*g=m%OE${#|61Mx=WugtFr`euRKRiCuCNL*?jfwD8rU6KiJiI z8E=a7Wy)T~W?lX}7v89V~J8QxF73PLazJ`HIN1Mf89r?HO?MO4!5xbJP?Iz-K3u5Z_<>Sm>%X#ii@S z6ZElN#k)<$2<&b)S!;1wii&w8O)G|NP6F_=hU>^h}m0%#(D&?+2h0wF}+32a)*OHm@>&6d5_n;4VY;KU?Tm-D5HNF zlnxl@s=NsRJHQjCNf_k4?fm=*hyeQT4OJ(fV(9UqVME}%6}9UWdBy4Ri=T}eq&!=1C z42FABFPbP(W@!?(moDeCN7YES|LU3}dAWDU?@*(b-8!u(_zRu_MB&s;bgf zp$0=EY6hC8X$$zP{L(5fJozOgonC2PAwBqcEr7q4*0s6my(KOktW}`$LY(uOu?#Yn z{e4w1--otkoo+uMEcG0Lr34*h@-v(Ae$V*AW=s? z=#It3#nGS3W$U0>Y;eaq>PC>uK~w3Hh}ALj=FXllT=+|b?jWs`qNBiKM?Zxm1XQh} zgW|)vk>@l2bZGF4fa^=ot7j6;T0gKSZKf-M)!|vN5RH`ggC?F__MT!e#4>_|gOm9p ziNx{?8TL_(H5xmTaS4$D)lVyTA17!zr3tJDIyon-wuAeg{6r!W$$}|6+q9zz7qySw zH(|EywTY6t39ctTX|+%Fs61|L+Z~Ea>TBBC+WNA!=bg-#%*R(Ra4w=ENDmI;d+Xj< z@kKOS%KtNciR5ELV{CbhU`D|D{I((*{w!j9W0Jk-^}J_f|!-TwHOJ2%(-hj$Cf->MXJ#2@6`;^qvVf$poIOqKozq)4U?$jpnd zV4du98EP%x%qqgtD}L( z4_E483$TrtaL|3oBV4G-$J}sXKp9b{LLe9VB)PlN2zT4>iyMWkYKU~lQaeFk4OFG^1xT_GLh_7V@zuTQ^% z%zdJF&!}x7uKmZZUwZ2|`E*~QSYfGCS%mbq{U)_rzQPLz#S{f~>Mvs}qO4P7RGJar eA+~p^v)~HmV|ONIV3hk&0v2XA*heOw34a4Ssf7pt delta 1602 zcmYjRdpy%?9RAT}%`&$zmo%DkNa@NcAuTqGQzVqKB&D4*V~ZyCbBjeTZMjsk5OO35 zEsn)pBXTKn9de?JOLEU_XS#e&&p+?`ectc$yzl4vd_QlLViPh!RUQ~zy$S$;UJlL! z0Hibu_0~v%VzHQGXV+I)7^1BFl1{&FWktS*&6IRW(H!g@0n3ptFG;}*JnBNjo~54g z^QO?eeaHZCDK)m8hpa*?z&@*|g%#&*W8`nij{QI!7&`vas`xdfxQDAoYt0HB-?F$& z4Tx|{ZKOKIymgp@8-3t2Gff|ur0y%BHJX4+>(0qu%<1Fmz>vW=O9CL_yN3^5An4R} zcUZ-z3q)=fW*OP)y_#kEq|-D;?R}~$ZddC;o!OY)#UeeyX=G@JJLKOReu{Dlk-~(j zEBNA9a(erf!N$t-yB)U1y*%iu#^FrKZ0ot*sX7?g2>?(vJa+%lOR3}iB*$LswK5=4 zC2AwT&X<5Ay+!PXqnLkP_*2hK+0UE(MCTs9=QlgCc;G%{LD$<^5a8_LG;N;N5Y=B~ zGuPJEv*Wh9RuuCa9(=7cw!g^h>g!9TZ)RZ(&Y^P3PMx3VG`b70i2C@5uX2ZSp)4jZ zP6n3?O$CBxPnrO;uIcmv>o(IF`cLR7Ve_$)9;6eTi$0NLjYUX$A)DJWkBku*`&d z$C9$P#Rp+EqyGJ?Gn1FA?{1` zu-VbLIbCNgG=&A$aFVOE-Sh3x{*T9kbvtCu%9))wr8l}=!+9m}8oMOJj_5!bAtOg` zY9x#LUX8WJ>f`!)z^tEp$hdv0yR-HhLl-?1dlasK2 z5OnW6c=IXRIjy*?%s|U$r$!s!t0>p^>Zc^V!#AU*u; zswt6!Vs@R{(i5)jh69vt=DTTnxm4A>!|&lwp<`(+0fDS%*SNzok$W{*r#-q;`llCd z3-X*o$UX}e_6cj0UqnW1`sg@5F(F&Ow9KGUj8Qn{Qu2g17v^5^CioWhq-k}{W5ZZ$ z(t$jnWiCSR{p9)xf-y=$^7^0wZLLk^N zsiHo)UTbXq7_2@H8IP1dt3n}>n|*hQ8lyj5GCaAn`jYyO>5~L0=PwkZR?F0@l$+Aw zknmxHQ#=M)dyO7^51s0us4w8uWQB8L43LIwGu diff --git a/icons/obj/janitor.dmi b/icons/obj/janitor.dmi index 9128654a5bab2bb3a6950afd52bbecf6f9c0d312..802e165550e053ffd68dfe8c475c27eb08385dff 100644 GIT binary patch literal 27189 zcmce-byQqYkUsbt8h1%>50K#Q4j~Digb-YV1$Tlr?wa5ZNpN@X;KAJ;f;#~kXy{*O zW@pdNIXm;m{;}uu>webvy{cQcs_s|cjnGhgg@;Xv4FCY%o7W2O000C*ZpN7C$TKxT z6_NmeBI~88?W$nzV&-h^=xXg?4*;H-Ny%gOOFX!JW9RQNj|FMcrJ-ugxGzGf7e5kO zrPYfL<;(uYgI|k(*ZGQv)f@z(f<+|1_RE3o`L)3%+L|8@^X_DR_xwIyzFu;v7kT$y ztkEUIt$r_lu_9B-IUvw}mlj1OL_|_ED)d=vmfnXbj{uPRsgb_I>*rdd!hG*Pe`w2= zi|Y-)H8E$Ivv4j*M2&me=b0@1U0SX=X+pK$il^(y-M(F)n;WMOYsO#Ub1S2WBIa|i z$%-?}Cu=O%DBoU~OAc{pYVV?ax0o%CRg|0^Ff-=;>l&7d<=bEUYGTV`v{S>&H{**M z-Yp<`ARBk~NQ<{jp0^i5_ks+Q#_5_V*l_IyzU0ClK!hgRy(V4r#1U*3Cv&sCX zdm(s`uIQueR^HD=FKPbpbBGD-lm2&ze-pa@VltOX|HQbcptn5WFYRq5Hg2X@=7V*N zl1HZF=<>WSL)Wx>as};ky(%WsZLarMREoT}4}O?`k`{OUYg|W*JNFG8y4jnouQ@>6N_eZis{c|JD=?wc81a&1k1FFqVs>U zbTBYtGGYcYV(#8<4f~4l4?~9?N7E>F?);=K)6)1YN8NJ1+&)y?x174f4jS`7=rIG& zq!yc7Kww$IU>kZ=dQ5J!l@_<<7Pmu@kBvc&lAi$Z#>@CK64LQ_`qWyh+*rn!SYKorx?*uk)(bbF$)P`b$?;fl+N{^GW=`)a zL{h*;t_hq$Q3)Jd-H-DTp&5A>b*R63bejB}QT;pXvrM}V4`9*CDO^rJe*9>1+(7xM zmQ@0y8=5(f*m?U79+bbhF}H=MYDgv0M8kGLrGXX{i3^oHZ{h`5>TX#4DkmL2blg_N z`tMINpG^Kx)*s83{Lmdn@KH5O>_h#ROAGtUosmeDQx`X%eDiO_{#}>nO~m5_?5A7$ zIu=gmJ}hm?LptakURR&F7#L(58k)tVY*2ylrC-BgUW^wJ{x0UUT`tw7;7?;IW1oGM zE+T%>*Bx4Cshz_*qu025=xSWPm7Om&I*hG!`0AknQ^d)_w^AKC?b=#I?ruKNWk^|4 zuD-d{PRg^g0vrIyyR}boM9a^W~8+9C}N#& zDqUsNce=aNd6Rese>it=cFq7uRxk1hP-QpZUAdT3HkHl*kG-)>M)X>TueU6`keOrm z-(zQLE!A=9r1U+rg9V4V7B=H@Z`^G~LIR#OR zItNop`7~j#4{114#d9v_?Tpnis4c-no=0~2uLof08b~QE=L#+}#V%IF^urG%p7ZGB@y^{uiK7xrqUsRAqvQDalk98= z_OJ{uG(w4v8QPJ4NVIK-)YS>h)CK?1cid+Ie&Q|%uE&g_0I|6w9XjPHb$AuA4kM7k zeu*_J%&&&1EoYL%%(&s_BL}@~LXTDUyKl;tz9fFF#jwEhAoPby5Pgap%SjOm)%Ltp z{=U+{Z|C^I=f%yM3994VuUuvZHi_iAdGm8`A8(Am+Rtoolg;_71-(a}4gTsEs&9rh z;1>A|U&>)AS)FyI$ffcs$#j@*VN63`lko8%WC(TwgTDKmw&K@q7jG&B zrHY>mtdPARUP?OeMc0(t`C{_rtl{HQ9Y{xhe;ARS=lsfw_JeIDi>s%-KF#6qj z?stv749VMRv{srjLSf8bpk_)!P|e5vw~iPU3Wh@L81-LTf>D#62GWsMq+%thd*S_B zGPLtSww*#n2&D?jl;jCzAN*%Agj0t=(=}!5?8lYSzUC;Vw+U`XI#kz zuR?m-AO}E0y3+;?-XvZf7z(Fq`+zw#%G>@x4Y?h%vk+=UW!3M)vM{g|Ye2Ee{R$Ww8#xx&^z36PI75>s%c7`Dz zK@C`K-7~d(6usa|Mgj7@L+DRUUl=|JfWMHvGW#p3s{Xo2U=ut}GuRcpB_e^o&Sg}S zh~cXve-hM@9x}6Tzyoj?i=yXhQgLhzl6Q)p@0tlcz#YIL*r#sO;2sKpi&<-+?F=^5!h|}cx%AmEjI*!wyhl$A z@US{|nHCbDDzF##DRe)2Rt+{=o&A%dB@vHuGqYcVM7174>B$hJj^wD;=%7wN(qGn@ zP)ku2aiY?1u!hfeqX(2HL3(c3EoRsr{ayZY0N=4r;tV7KJ)>v7zrYNfD)WumxKF)M zHZS7YC-z|8L3y``cC~)0kT3(=arW~j_CTWGM(FT**AM3uON7Ew&sGJN3gIf4ie$X+ zhU{l(B8c#vEV>LKt=y!TbZk#fJTV^-h>U+BeE?=4eH-cjb%YFV$iT;djEsS2?~p<8 zzhBao@t&%7StkrGltGuN!zIwu~ zT{&0!o%mnN7^%5YXtcm)AFljzs!7-3+aL_n!7a+|6TR5BhYV8d4B5ghQ-PwQ9u1Q=&&?rTb$-l|2SUKmyq!ri(GGYlu+M9)@wDVchmpE~9zk zH*el7|AGXG6p3Lj<5Bm>enMQ?TM78gc4FTcPkt8!@HdTt&W>l20ihXZyA@mISn%CJ zK14Vde5f7J$HMChm!*z1YMME49LZaWA2^p5Ig@T{{z*0+bE8}EV$0w3hf?e>V~eh- zLiLXzi1|oPJJ&1q;kWq(1){*f(2$F_OJWZ|zTh&$S*akRYHZ5bFJ)3d^c+Hf9oeI8=B50hr33fe-%(Ez|& z;26L(Lldl^`nd#qY_qqk@vV+CEilepNAOQ4DVRo@PiHsi{I#PkJ9J~iiTJ?6zZ7!J z9{~*wUG{GQE$FayT{p=tsh03_!2Q5g-$oUhD_rF2MH40t3Qm8T{#T0*oBw>y4{MJO zggk3G-Z<%VP@k=P2q5Fq=g}L@Ze>a&mqE(w_-8PQg@yi! zIxDWzf$zKh%F->21C=y?As}WCZR#>Cm5AIyw)})%RfEL*k6RI&1Usg`-IX8=&Gn`E z?=Rb^O}e8u=-IaibcucS=p+wqHqatMY0_`Ao3G?)6%S$6kO4wzp#FLG6wa^|0QR$Fi+qO`vTV!CE(dE;V*ZbK zpXLYbcbt9h`7|jH*+oD@N4+TaFRqg-qvnXH0%}>RJkL#a`aF`kjVe%{ae#hXqo88o zyB_$Wp`qC^N#~o93)3>it5^05-hbGw%sE`x#D%Tf){9&Vm zwv^@%y|#cuK7Nq@>Mt^%Y*@ZHV+*im%Wv!%h!33I{}$Vu#9a6@ANKz!1hsH-=V6F_{#A?CKPIjZ2iu2~0VHnBE-O0@+Za)I$FJnRafXhMN1G zSt4!+)$2~Auv{V{ppKOnhs3Cu=;L1BSVko1JfduE&%ZD zYQ;K4?m<70ZRwWh&_6=tnqvsyQ5G}LAfIaSm|}1mgxCJXPn(HU>;7=W%4Ax^3d?GYl-S2UIg_{;3+6v6-udy7ys*qIy1r?Z^#g+$>{Un zNfU+jCv+!Xqx4+)R}bjrH|#l6#VGpexC?RVH_`tEAJKptNDYF?Cq5}DKE)EZ*$AQ9W$_wf4l>-gRW9Uqpz$yIaPkz=?3g#H?cPw+!= z*%Zk>CEi_op)GsApGKAthM^pAQcL@K*w2V}fww z5N?=K_e55;%; z_DeiG7hJqoM@2y)jkAu> zhKG1FL0pYbB=%c2irHsMc6Jd9iu!j>3UH9|_0d8J5+C3)ti<^11rYx9TE)nPop|XF z{(e&9&+;fXL1*;&+%k~+DPs5)#5*NjD_I*3^5e)|c=9=JtNGIthzz_A!2_{BYd_?E z7t)A-?;BB=DLBU-A8xs&2=TVS=Yeyrr-?q-zDLcUF(4wbRRG;>E;JF5Th}2n4b&3s zc+nZSWUU3dwsyR58>&eCoxZSMib2$%5Za6c-cM4I+}kK?ei*piBwiR_P; zXWv|}4Iw=;HpP1F{a;&`^N*+l<7bUue*W5Q&Nsub>~s+bNRgR80Mbv_Ute>FBhIv`S6b1U zbV9Q>rt*&UaqU`3!mm0(z`%1qN`P=y{Hf>$0ZLZOITi92ZjU3P2Fo}Y>N`A?Rt?)l zs+pz{3a6VXX%MQv=Chrd(vRg_r>ji*4XIt48o=dbZ9*QpNIg0m6GHw|T&*Cb$S+S#Xr{#8U$G>$!XRYgl?n={L!HC}M;$(NMbinhH1;(9 zmYSpS3;Oz9q9+#nskD|1#=({%ly#Tzq!q!@v9?0Sdn3;iaMwfx6WNWY4r3I+Kd9kY z1C#hPjBY((tk(rCS-h7V8XBrzsiKqd*5^Aj-#PBm6|x}75@Gk6q)llM?kHeB-(A}P zYt{O*8+A<7X%tR5p{MP9T6guhualZW{)KaemZ`us^!vfouQp;ez?4Mn!{>=DV(sPl&gEzv5dR zBp!rS;RFmaC0gR6sqUQAs$iB7Sfhk4tdS?xQYF)X}xRxy@PeRbZ1bLWaQH!?_owCMs>9IAEP5_M*hn4fYjB7IQKvm@VP|HeZNIiN zDmn7MI+$_q{pRvCo_(`+L7HNpHJBEv&lJo@*j z($Z2XNe7pW5}gFVvOmI8cFzt=io{!8lp#~kh#*%KiK32l(2MS@v?}{lgLr!QeW!mW zlYfBAnmN~ZFA?RO=$K6m4GQ65x7?|GbM8iWFHiDF_g2N`P#@w{j2K%>f6>$mZ3I(5 z!g@M?Dz5|dlbYDXIFjOTsUtd_wX^R#%W*nejStgt{@#j*^-}_}gy0FW<;QgBKk#1y ziRXi5JzpRJf7vF^e*h736Zg@qtUbLH`iFZs+MM{qP8}77{~^WycAbTaN9gwj1F!<= zzwcP>Qxtt3JioWRP4hUmPb$chuR0cX#qFDzI0kaWx4 zZNOlCB;0PN1nd;Zr~`Tx>_2?e{LDtRMLq*aI9- zhSNX9?}YDdneV>+yY@k2<{K)&)mSAp$4d@7mU|($6nv#f&0I1^zg)&8Z>RcXwtXmv z(RVg*PNXw7V2^Yh@0LtmY$m%>T1XoI4H7l*YB$XO`l~sSWa+VQMRdRNnHRA968`@E z`w;2wL}q1D2a?_t*2m#A{^o-Ud60?%wBBr;PQ1(cBx9x=5#xS3j`k8@+p?Ii_uDn< zBw1x*-J(UXUi(~=+W(DxrMgF7dg#g_iiN<@>1q+ikcc#4c&PH8!s!y5ql7ymU{8D& z4mQ^^7b|K#zkz&O*b=;*^B!KcHlWqQ;Fn_~d@gN|WcQP}%(|!nVlO7#^ z!q-49QL1CzxWoBj7$lgQTbuwm>x@T3zM6ZvUd^fG5jwq4pMw^+ma4L604k95bqQ_Q z`?JG-0Gs$VvQ7gfI>!J+d;K5Vbe8Y;4?itErVHAL0OXQh0>JuR-;X_FLE`1T2y!qG z^v+mPxT+&-H^<+wrs3z$pUy8{ynx+wB4Ub)o^S8&n)S!h0NY~_og*Z&f;@ijgSJ^q zjN4r?tQ$%kZJyTsR7n+aw3>&*Rq)3>V(4Xqmx67xr-66F&>|rw4H@YSekZL10N_$D z;}6U^aVBj@3<70Nrb}xgTl?5yBYE}klSkOoIj7lYvt>Hnyc-yha=k{BtQnavl2vY{ zD@$n-Uuul$ZDz|hzVihzD<>Bva~TY(rt-)V=6z*V$KEVB9{NdE&1XoCSzWX+`N({JLWA7@tg zha#dc9mjKJNsWHN{1|N!mD2#k7SHwOuuy*D zN)gpKO>o>9WeL1$4>3l>{9UCeGi3mA7wZYS^4^Fn)pLi6*$fD+&{LHBP{Mi5pzGn1mZBN)TtB?p2IHnsU8#1?_V`CG>nz>zBXQNa+1R>eqQnA3FKBLi5huRuR2mr zB;=W(CxIy|E1Sy0@Ve+%E8}CX?33`wNMdxzpU5@;om%&DvgoM9zIF;BpfTuPKqotC ze3{+_MEg3`YEIwNvgvs33EKTC2;OQ6J>ImKb)9;+dGawpvm|I8By6chx2 zdfgbe!&#?Vi;=`_acpetL{onJuj%Rk4Ez^!H7GUMAI1G>J^&8)LAnsx2@07_m@U2b zfzaNS*T1S5^$=fc5_SEduYSMr@6TrdA-^#r8~<9>ovy~WtJ;OvI_akEkjB60wa03y zcU-Y4S&d(eDZ5>Zt@Ou!TRBl$J%fxoxs==Y6X)n9kuR4MxZ4`ia}537J`Ku0S`79@ zhX${$M&;FB{SiO`oJ9gEDG%y~$Ih`6$ z(+x|jpptkUqHqR=wxX07m<*K;+PAb}5VRSp77id*yV#6=FLo1-DZW*L_f%uxQ3gjw zV#{JCMUF+YN=vVCJR%3#CkKoncu-*A@MeF1e?fje3h>D~$Q*BVmC5Nxc9;<%sZDhc z{jgW{GyRs%Tw^}}*~7DmMa0FA-HcNV1s6)a=}2;McGqd)RR&yIa6Uh zEl0!uk8|ymj4#`0UWozWXE}_#p>qeyoBrAB{x+*?-OS`pX@6Sxi87Ejw*QAGIR5h8s*VH<-6xY)7 zXN(EuaJ<}15?D`p*Wr4phd}wH6`aNyg;^$VA)8yp1#CF!#1Jr|96DB@?`i4p_Fu z-6PmuA~6d4-<3_MKufUTmvYfOI$G!VHA0!9Q-7D`SO+h8a?LO@KhuS>JY+%p!b~tG z-%2>sqPR3Ris1cCVBK{R%nO3u1PdBIPA*?!XlIm z-s%))1ZkgAgyZFv_4Ox=<1>sZfauxTaggy$yT!Gbk(tna{HsU@aXaudqnEUw02^CQ zOY7;sI*N4|jK8v|sERU2(&7hi@ggtBcRF{}=Qy8r!x|OO%5A#5zvouZI#^w#{~3M; zZC-fOfL_zBiXpvgz(Lrs0%q^~6k7ak?Fj40*gPw_LC-=;@$9ntsW3P6x^!Vm76S}k zUv743tD+O_it2nl@9^Yuw|qd-U1JZ8=e+Za7gx>G<+l`YhPP?fOfYk?X8C>=iTeu)Ol`@R3uL{0G9;CD(XaNrS&;cv= z2O&)Z<{Uq)J-b$0lP+!gc646lTT-N*-Liay&_5UQ{QfzG|IJUb;G;EKO~F5jG-z!$ zSMH<+VKW)umiede@OaE;(|mkaCbfHh(CRJYt_x0OGkseSJCYnRQMa{OW)dq18=-~n zPZjdI?rGrCh>`a8_G0=%az6J5KWd%7(JX3VB886M=g7Tz6QT2>=sg01@afY~n&9CXw{6zm!zuM~ z5;*W1#^l6M8aARMeiy_S3<$QFgvSIF(h5Jwz5Vck85gq=odwnaexuf7(OqLAlYQsm zQmx~Y{D2ByFPm;>IQNYDV`)c`Q=gFb(ngx#gR1Btk_4Lsdq?)`t(z(aQZ{_GNI8KA7iW)TsN*Z;nonR!xF?CK-XQwf(~ zJhUMs9RJ(-!N3>KO>pk5(UJ%Y6*BL+nb*0-iu`=Uupj^l4Mm@+HtQFWmX^jP=K+wu zzl|sr+#x?t4}OvZrrNUj2?S$z`6C0(^z3YYUf!=_y4*j_K9e|Kn?%n+usKGT``y|{ z9-n&`UI=|=Ci(XPC&270OvQUHTTH^(tIgx3v5Q0X@5?diN>l!Tz8I=7WE`dc*+w0* zu>p88SmtMcVbUO{dtQ1jYm!u{^E)gJt>EWR^sT-aR3KB#O(}6oPCMD;n+!)V?vKqV zvs&NAr#Tdpxw1jec$uE2#54j{LLE(baMHI}i$s2`8dYm2Ix?F#uVp#sLPfv(yIXmUQAgMWn|B1b7!nTyQyxmlb(9`y-8v*bV`|J zXJI_M=wNL;f{!9BAW-!A^JjV?6n?LphP$@n+6-orgp&aGtE6}EiJ zg+H%_4i0T5u5_hJOj#G_9C2Ds5WpXUg7vMfuvovHcgSFbLul8?*!e5(+Qu*&r<+f_ zFhG|wpgbr7Df}~{#~ouv#JHph>|EmPc&yiRFT1MGJ54>G*X%khS~`?reKs zjmi?!5wab2>lCoiGV16Gkgt1#{^iJ_1aw@fz__PzD(7gLwbzyk{k0#GU&8b%_O;hL z5k)^gslma)@2h3<=V_R16Zpy#Wc`){GqK3jKI5D-q%%KXF3}wq^B{!16|pn!?X`^f zsBi7It$0G2g$JMa`J&iXAu{AfTJ4GAgH9vtiWy67-%{a!;;wmzUQn~TiAFcYDF9|@ zUb4%cU3ePMy!4h*EZ-^M&$aKv1ha=Y8-}{ghkF_^!f1+sX`Szq|3YKL4?huL6$}x} zBST6I$9!lNcUbQ;yGZtr&6bFYk-iLSM>;@Ly>}Sz7j~ac3K{f<9B2Te>e6OE=x3LR zsREd@J}ZxJ-GQjrtQAs<681bBTYd|u3%PwPnIza+Lp(MfEmV*T-Q@I|Yg<5(OgWO- zlp1vISk6@k8wwHN&7uj#oNlNC#o8qGceun+7TR=q*Lh+XCo*LWHz;k~qE-~s+$6MY zj_m?ZIaAnYRC-uC3LJ>L%b4Hq9I8tB#i|FNpW|3L4KpwAqB8~+WOxR(A7e-y>C0en zxyvB!R=;VL;zvs5R-Sj)*~ut&(fz9~&lVJ>oVUN|&yN6Q+O#rM;G1E&%hUbj~&Xk}7(v7F7_clM>s&TVN4_*|+tLw<4?KM{& zqP_N`r8NOK?h#{u`f4vEUDe5j9`#Y(5cCPK(oaK=%EHp4$DMB6vs^mCI5T;$m4|b3 zp(5_bT5(d|w;M&RzEswy4>$ypB8rKgDpj1^n5e+n4F=buN5>OUB`I7MHKmLIZFuhj zx6Rk(>fX)I6he=IZW+a)vlK%APlwAQVXF9jP3M|CYI`>P5cOeK&7q;+YG z$}>W;}r(W{8?Qti2 zv<`lm`G}A*wc6wlHo6;WacsQDU#jRXoG(h6Ln?%0Wj^SIgifsqi{sU8D{>BoNkzZ9 zUmY?!sYZCJ7{vG4`3Wx^AU+)g3UK*Mitph+uD5cJK0?;bG6)Y&EgP~uDXqHqPxDI3 z<>nHZnjC%wxz~5D#5lX2@3Pu?MuVbtCw81tM9GgiTnC1 zGmTzt=AmE}t--19!Z9vjB>*~iVcz0RrH_hveQ-S=X~!ugAL$;x6*)4S4SQE#@T!q# zT|>;E`5oca5DWdEu6|bObFY3p}EmyhJQDr%cFm@&sJB%i0+1 z&X+Ut(Yf}VzG*NrYEQ$5c%pg>1gzYzSvGWdu4EK?Y)*9CY^Id%I+koQ2G&mUmgF3p zg(!y1FnRa0Kaa}^b1!lCtUGO=f9FiRCvB+RuUj_$c*DT$!D=6ZC+DfbU3yq^)eX{I ztB}3Qo&y1FLBGb2!nW|WTk#94T(tNoX*d@2O(x{`482b(#^9L}_ za;DMn)-VEv-+%Zq+k>R>>LkzU{M>mxj!zcc>%$@t#n|^sRY#YY3pYYSc5sZEnwnr7 zSooY7D@8PtU)0T?ExVuk(jv!P8R>7CQz4SBl1)!Dqzo%AFj1?}ThF4(ak>X0v|Q20 z+m{+aJR_LS7n77P4`PeUf=k_WidrQP$wEDZs?F?;7CYLm1lc2e6U}VvYH(`{CRyu6|vp$LpmgMP3@z( z7AkkUq`^WTVQ{onmjhF07oA80*4a(>OumuR2shMggvw_{oLr`;lP*87Y*^ei@#`Gd zy4Ok!3q^H%ny0d@pRmr=z~6m+=Xb=&JiI)zj{l#%Ti>~nsin>@i`MoWTHU$zKW?o- zXFUU$!sATU^{P>f{2rUDRO613@F#=xX!PZ4QK3&dC^a`=D_frF3F2v{sX`YIJSvti z6i#=4_o)F~8;hml;^O6r0{Fg=6j?+a>31Z`6&6P;Na7DcvcpvXimzOlNK3J$SmYzBjkb&_UL{`x}<|n;fGq8{h#UiSY(k2ENPMMsochUk_i= zJ)b6$1NW0}fHtzbOKC?o30h@1Rn^tQ*Z+jCY2TxKF7`G{JARiu)lj9iS~J^ivViZ4u*3287XJGn z9{TDE;Aj-rAAq8R#qT-8*Dx^MkIbt;F98C-oHkWBdii$p z;Oz~W*Uav!)-~c`g-9PsRRthOZY2wW*h#{@>_C{_4FDMLvbF|OF-X5Tgg4=&41&%! z`@ubWR?7D|9@V51?Q#H;ypr@@9by%@L?yFh9Td5uzw-3OS+H}mwn$q-Ljxk){!_3I z^6i>xUpItKPiu~54e6-xAjz1UQz_m}Eu!Up6T^+=M~Fi18^Y@XP6|o}8hbmyE+H%D z$oa4u*Ura(<2>l?lEHl9?B(MLW^4okN$EW13uvfAKyIbNZ(`^HVIc^zVJ>Fo-kFj3 zZ!&vL!&B%<4V|NQ-a@u#BmiC1!(jln~%zNx9vUje@<4wQX@Nn`1{h1iJHsV`~J;&c3tzM6dF-&>{|C+O1m zkD2eM{UxWLqNa6omMjE05qESWdA7@4OaK7M98OO1>9R<|sVz%1>*fBC-(DRqlMb#txI%%aD^r9pzDpv0no%@UPvbo61%LBac9;2+4?>8${q-)8i#yFBy;X3=uK3`2+ z?QH<%WRAB_$jDk-C~6o^&^UBz6#l4fuFb~hqpvnP7{%?Q{XJev0UOCm%{OFG-B?ie zwWoy=G}xv55$=i(xf1x!N7+b=Y87QAK=}k%?(n4ohSgm1jw`qL)LYNjAsF(4j$ceD zidmDSzi-BUWhseI!ve^8tn+Q1kh(BTdT}nqdU5ft!ekSEal_W51(&ZouJ;s`nmqZ(!UgCO{%-Y(5rTQNW9AKLQ zfY1HEfKHiw7^bk@YeMQeJ?#X{WfTD0eKJ9#_r;~{kvbIUlekPWC@j+mIO3dtdd<;v6kYo2*G*JYLX$Z$B%-pP_limb@<){ z(v!-Y^N@d9sPbH7HAh^_zEUOmch|od0^V3{Iz}@=Qk5~k{7=N?|Ao{1|NEtQh|Hb{ zk|0~CDS`YZ!^|>058uHGj-@J?adJlB&)MXcB9Y=%Pc&fbUER~uD~NcAqu>YMUq1w9QlH*GQaJkwSKJ{(2$I>@K6SGe{%tKO zbFEb#eLbd2O~9F@@ODmG=RrB@kkF2x8b*>GB9A0(3x5MVg-6oF(>g8l`N(lA>{0*e z6vc`#^?##+|9?{3nf6~VNdwXldR#uaM)Sb1^ca@LLSaC@6p< zBO`OC_KkVSNkv(LHkGMzyZ|r*@9*Egm%oKQ(o4|!j;*MfTOyAw{11=>o0OE`X#>L@ zEqmIyo?`K8=SxqMFUVG~ad6DXg5BuGcK<%mhCB|Fjo)}{p2Ls~`XEDsjh~Kiyokc4 z@E0$iFB8Wif68Ok&4Az)IPCHli%ws%L#H#2iL-En&wbLF=U+(=@%os7f!BbHtZaau zZ(qcF55}_!hSxo6CTa7y+lu}>I6bRGcn@jZlqnk%7OMRNx0W zxxhi1mu-S=f~VwuBp29x{H4IK;0grVx*F0lG*mP9YpV1{_U1Oq^UE|z_{jvxgrpY= z&__Unx6*(4q`2EbU?q-k1u!OuK-B_j`gdzy8SnR;o>}SQdg1Q{W}~(M!1QN9p=a67 zB2rgK8)B$t1)v^hZ15eJob5^ra(S2LU(y|1EiOM>8L(?kXE& z?L4E-)KG)1d(7s_RUW8C72dKnbiVAOIGoDhfMtb57xnubjAU$WId<#~0!FjM%}!>Y z43u;Aw1pQveYJ0D`sXNc*@D#idw0ng+1Ub(_DZ|nPT4s3`3jDG#W`-yqk=_r1el%s{JF9ung*ODjKF+cNm(m@x}9d#oMq(QAPK+QuyvUOFZZ zeT(Eyg+vVPJLg&;vKvB`Od=r(D%8e~PGuj%Z5_X4RX4;80PFO6s z;bU}(4D-L~hDU!MEr2C1OQ^6EU;!ffFT%J<=P`>_2DP0NT*{B2lMlSqal(jg+f zye!X#B?V%j6+Nw;%kS}F#{hsX@PYngEf4`cD{I(N>x%JvSQgSXBV)k`QIs^vBOL)X z8W2q@iVHZdpZ#W8Ky-a1ersgpPz&Dv%RwLXOJ=UbjiKTZ{z9tvW(RhHf}AFj!BNB1 z8SVC4U+dl3M{N>_c&ZwQ{xV)iI#NPfS}qQxAC5HQnl$EdtO!5EuQs^7eeV-_I&z-W z*WVw;PZ01AE!dZd?r z`SK-_2^%TScTa@$+oLnpNztbVV>z4eeH@}rhv8n=QZF`ZISk9S%r@8~IO8pg}r<>Cg4@OYZYPgKb)LSC`x~7WDk8D#DG84P<->4-a?z9S5cIgP1mu z+HXiB@FFU1;a6UyPoH+>PBlOCi?l}6b1fn`zurEm0`6slXOZ<1Ar<+C{n8<_Oro8@7bWacZV&^U?~5l2w0^Hg^l<&oTXh-fN3FcT^Q=RDR^}QQCMagZG`h5pyV+ ztqGyWa`+1Yzv`-ap?4)To1E?V-lzV#UtZvO=j~#+Wg&N0e@-VSN5-{xZ?te;+AIWN&R?n%m5FjyBV;18vS)GwzgQAKB2}oXXPyWlOv+E@Xvx)qd7KiN* zLWnF5-Ma9kKwC8sTBZPCb}ivJ5USLh0Ubzap06?I)2b+YSB77R3@FoPaq^vWfA#z5 zAj}m{bC3SoT18XJ;C&iH_4~RP#u=hlbrF#i>GSwzZB%|SkqsAh{4$QtsUEgFfxe$^Hm(@ z3rCa|;5CO;bHQ4~Tw_L+4VmL3ywzDi9-6+V$5l&KXaS0$u19j4o#1#tw4xv}3F?#5 zkkWoyj2)DNkbaQA(cYL(-n`6slhFh3iP0m363!_}^&&)%GzyU+jR^J6MHg6rcOw<> z%>K3J_NCFKh8U2mKKNF_j|Zc>(x5wvE>^*qHKYTfg9`J$zD0#bsEs3~m7>z*u_(=* zb=0td#VZQNlNY^z_BgLkkLtopMv)qY%kcODZPW5WKfK-u5y_eY&sn(Wcu?F5L1TZi zfLK0|^I5)s#>c|Cv9-zy0+2-10D*C<$*hG;`8}!Z zvEqK(SMKN-F}i3)AU7}kXm$K#$p&|M#;|5+_J>|**C>Ptx_SsnAM2~9A{J$?8DE^& zh1vZj$wt)GJoQvQDT;}H*m^a8|BKoO14;(XBzU!{KhZybx6HGbnfhVJ6IBegv_e>F z3@1tYXENRzlRt;5wenPvrv_3$jQ$X7f z-ok!08RhNCAfq5PYombk}@TZIxXt%?l3Y5 z;)+ZUo4(=z!)W&lHanw1PN&8TEdjX56>Ipy6_@CM@iL?TQ3M;hlqA~l)ch0Txmr#~aA}(}0Ry9u81N zQb6u4&H7Ir=@(4HAo_%TR`{c?nyZoJNGCHH`P-)7@Dfwo2|h5DtRy;H?LNDRk??tN zU%gB7YQ9GvuPZrk_*%%_7QF6y;RCf#MJh(Qh!Fh^^2(p42mI(_krTha7fLN zYwyeZTgM#QFqqae~bKtK;HfxJ@}DhkAvSVAfR~8k(qls$g|) z6tQ5$i_shImDzKv*$8#L53fFxTSPufd(fwvP6+AC>nDS~$WyPuvjHVNI4G)WY)Ak% zfKc5EFGz)A97)=Nn$6*i#toim6n=L}lD-RII!9)c>)wDr4PBv1QR>QV7k_rN3;T?D zqa+=&>9lIu90}T6pIUtgJw-PfrgzyF9U1Qi@jQ7WGIV%1kRZK0AlRYKfxj5EHduCz zJWo?H@$Mytd3;n^V?XLBi1SFetZ`hVSX1q@t2Piga%A#ek4TCi#ERLA^{xFDdF_}#f56Gyp=o0mjpPL{s zJw@#N&Hy<4FC1rzi6hz1r1g>wFD3HNE0d74irihYz#B!MOzrN;+?DruZ#}lN`7E1h6j?@*)=8DX+Lx zJc_Cbewklre-+{k0egR-=LB;Egg>9(_~}RB$7t;rtEUK1*$w5$T7c<&)QpTVR_y_q z?Y>9LYOAZOi@!e#oo^PT7^1%ts-zcLA5|_xm72R@VtaofbE&^12x({?^JcJ@40Ymq z{a%H_uedaiJ|?(P<#E9GsbSz}^_-qIs|ju4BbP5W1BDk4;`9|Pk(vHSSr(q)ln zMCZg@KEJ6f9$;|G3(OIz85uEPcJE3-ijp(RF<;NDBg%)Y>-386GdSAL;Jg3>M^~!B z%&4(BqW!={r4yDFQEm(XxUd%PV1X{j{2-ERm($<=YZlxmDKr6tr!@A9m$`-0WUTmd*oqAI@27Zp}Wa z+Z-t%-oI7Q!y2+jJ^h)ra`O8_xSKqIb4UW4Viuc2f8y7s@~*Udl%3+ZY}EMXDqX%N zm9heLY5id}+HWK&AQFS&zh$j(-rhwIBdwX+v&jr?LZtX#PAQi+J)r_b#PIYOz}M{H zu#}^FIdrwd)dh>7XOXR*9T}9-{hdw^`Uoo7C2F>|oFKwvdyk2lhQ@Y++dXoH5JNrs zS@hDrpPH35X=cVuRYRiywbq*VT*G32@_t9)R3u-ucNo5&$^uOl<1N5pg;7JQd((lz5t+x`vbTdsXK^#XohK9m=Cz@vug010z5ecpTXL6Uh6k5CgiT%B>H` z1|;teEb4N4IlTC0SG921asyZ&h7B7T8ZLGbVi(KeZ&*cYkc)QI7XH$Fv*feNx|^be zBPCG5;AMxUTG6?`K!(zI>+$6%S#tc60shED5X0A}Ewx@lzCg|~>zj0JcLs<&>3vU! zpym6M&#i@ftQ&W=DT}$QeRTvw&IX*PapYPa4@_aRGHl!-<=!s7^yNZ!LetUL!SEm!9t?%!YN>AW7TKn70%epwBwK$NC$~kG z%;v$}FSO{>N#2sjFeM5^b_H~$Fr=ro%=(zj1Kt;~hdmt>cc(x#1=o>Fi?BMOLq^EC z9BV_3CsU3P2KVrfUVSeL=;i0YDi z+2tGi(_FX*DXtWlL(dqQ%-!4n&%d7GTERcgr3^qBbGXfu0+(0Y6%{Yv(v{%t3Echu zcsjnq;QMlcKf7#uDHYtb%(+rQB6Pjq!ndJI@gdg@Ek~+9ER&dhvY%(lHM`ie$N1VNoFxGBLCr2WRr;XqXU&H3v7IIt*ds7J9(H*dpvr`F~jqLA{qb$D|0mTQa;%>Ot) zH%SXng|Ze$*T7Ox#rSPlD?YHzZt|9W8t*&R z6En?@&mE@ooa;DF$4UCIJ?z(~M5;Qd>UyHiFS}`4+{N*R*8u_t|6=zu88TJpNCnvJ z?BG;l_1xxY#BR6KB+o~^N;3$>BO#cQ8=^#mKTjVYA3yaKlV0*d-n5=oR1W`WTk<08{$ zyit+BG3LDaae~Z(Mq7nJxV(qfWuk{GKvc~P#ib;euSwI+PsK^~FDx~6^0`W1>KQzA zAP4kCA{AZ?Y4u^td*t|jWM1s&{yaOIMYIo3ck?{{;hONnRfwR2Wl2H0E`7}WM(Odp zkVb7~(Y6!#zny_c$`tso*Q+#6sbu*4t$or%Lq1$_pDTSxPyZMBPZh=&rYIJ&I_A4h zHMENhP}N92^fj3A*nrrVx(F*VvfVgZ>6FNSI8&3t}wxs-N9pL;Qui)tN2O5QqTaPD=BOXfQm!}FUs zkit13x4$tXWVw>N+8*wgBVS`HN5Z7HMo1Q;G8Rli_TUg1rV?+&{$8|CZzq)1u>O5} z!n1)*XwqpJ7SymkgN+LVOLcAy5;)MDjrZAUu^MV#tJ?WcuVE6uAdK0Ke?9wMAc0Zz zCg@3X@bX5>vxf~MeJk5qK)$=XyYJcek}F*v{!pq=F8lWF$8+&gjl!CmC!ch99o84x zyG|RSfd2a{L1r>PGVU|fYXQ+OLx3)>#8hPCk{$b`CiBEK8^8)q-2&ETM9D#4CSP>BGwoi_XNp7_=JoVM_dX`(=S7E_u4KYId2O zVRpzue*3Iwca*jML6uPO>)QeU>f%_l-?rB><>yWZqFai-0MVy~(v$B#<-Fwd1! z;9gW_>tkw{ZN#GnCv(onsJBSBqu!oPr=2v4Uf3LZAAiSkWFQE z^=M5kE!*E81T3?DrEzOSw(QonwdK4W&b1e}R$?{mcU!NZ*(S-aE$nkNe=xJ>Yb%w_ z&^j-|lKfpm;SzObjXrTj?&qIb)t6Z<_T4#qRW|JmNfVt}(VBe^k8hkA$=pYs1kO_W z&`ueUY6h0Gu4NI6eIG3LrE%lW z)29^EJFVupIh8y4e zz}e{Mf1y!mC*}r)uNr_pGy7#;pS%y?Bt*4E1I(c(sMKs1IP)tMRuh1GHfNAS9;xgk z(0?&_@`Q7Y_*<@0@XS>xz}o*{q3P%wRQ%K60-gH4zx-7FD~*b$(K+VaCsLswqq}u@ z_(d%@!D;EkIV|)!c_XrFfPIxDUt3&UJm)=(h6co*HE(gg=Eg6WCH<|<7?2gJp~5;$>XrrV z131z&??l{eCO70t(NuHa|V8StSs zDoIS}!RzaP>~3e!R};cwq5^S;Q>G+QSuSwG8#4=8Hu@?wLyuk- zUIbR*$})di4e~lUK^h<5OOtURUn;OGHR7l$iWU7g^bZxM&O-6P6rpQ(`h0_Jd_t41 zsvR>(K|=u6duwS}=9QNZ>;U&5{?`pBFCF#R5+p~vHDFiLk@&XM(jj*;!i72<7PISm z#sJF21#ReaQ&WD&VR^ryTt$CjOmZG`^#f%|Y)i}jo(k)&TQ|rPl^4flfonP3cEhGG zg-73Q6mGA!F#SS425q!3<$_R{?{Dp4zpWz1b=A->@PNJRX z4kajI6c3y(O)4#p-dLiJ&X}c+79Jy!Fi7|$e%Q!5ILD=NPYSvutHw6J9sCZW_zQKc zhG$?9a>1Fg$s{Hce&1gV+MRd5{J?q@*8Ad9(3#<~4)r+6hRDQ|+$#p^!TMFgpu=fg zt(;eIqxb26zpBifGGitJC9s3b1y7StOQ+?-;c>XtAjVe zPoKWqta{KP^gpB1n~iXI!=amGLVADxYamhO3%IVX2`Tw~W#q?;R!r3~iE;|o1c(Z= zZi^E0)8!l;>+(~9l+x*bAi~gi&fXDDq6;^z?+-UF7Uh=X$`Lo;z}sRRY1DtC6k9-r zxJ&u?H=)gxH%XG|S7@%TF)?oy#CvNB(NCct#Y@ssA*aPlsc1r>YrbXrF_cUNPMR zPy6D#e;uaX*4B0&jlHD?gZy_~LL1hh9?R4!T`V${_1nc&rT%)COVldSa_$xrPpl1& zVKQ62dkB!X;aBnec+QAf)l%6{`KiVtvIGsC6_G^eonk_2l1rxWz`)isN;0xNaezKg zv`fL8mOUBzYqMztgc9!soPgUIcBbE5q{RwCmKDI#SsEf194}PyNC+HjXI)g?2soYJgj^Xh2B zE`eQE_r?>v8}~I-wsaSBFb+Ow@!p`}-_yrDxsL(sb~BCnaXBTYE5@T3ZducS)Wbt} zFrKG5=tBJB0!5!56hFVOz?(9>@mG(|sc+CB_&ro|8DZL9@QEa?Gn#SOtI>fKiN5ey zRDC&1vM4@)!$1R2S0$&~?%B{kuJ`jRFnW4OH57D0Y`0hlk0|ouA^ZQlS;19RO6^|V z6_ZLH)dd&Dt}}OK?AJs;+zZb18_)|5Sc_$%LbDEtqM&|c|18jCZC?)p0ybiwu${<% z3f)dafIe+LSkqs7(6g&z;D+;{#z!czUSW&lTvYP)D~B zwvXgkKWpKF?xVHt##o_5+sV^(6F4zA7Y(gnO5iRDy)>t4Vw@3?zH4k6T4}SFozDd0 zwfy^T>mCZU-vA;yFNs>=W|Pt}G4A`_o}Vf3E$^aqOuvKsUygB}TN@&bW^}vGrS@I; zqFb%o=ofX`)^r3dX4{$7o4uR3?E#aS`2j*>8+!fdP?36qv3&BB{D#_Sbek8y2i+q6 zkWW6(&@Mv09~z}E6ZAgf0)yR!zvxfDyH^Rj>U+F&c9rQeBu}D;OG}{wGi?RQC1d^` zKIX;}c%%_Y4Nn&+T+Bu-r)k_k&*4Bc+O>J@=Jw9ce3g;47C3Yrjf2_qbck)IeE%+j z0e}Cp#FE7n zn~J|Ufc288_9>j4p<`m=AKDOoAlW&Z+Ykvoua)>~1eOCW#KBq#{bgCEmK?6?wDlvD zw}#BRHrl}(7+pD9qDA*_uCBUs?DTFS;#=sw|GGyl`RQ;6PU21cgbw_XFB0dpV?r7m zJqarPRJ5xw0YAml@;I($Y}cL{7HadPn;L#`KtIUsDDM3(b96C*#gw}ED`+csm5LD% zj$71`d;b`kwp-AFQnpS1zT`VYZDE!+Hu!XS>A(ecY;y8!Qz>k5(WbVp4)oH#HZ(L? zR|0Q$2*UE;dE3Ut6X%z;0osNNzt8d}2QRP9CNEVMz}K8}Jys_6Ji-;Neg*}tHPbJa zXa_>mFDp;p1y!*#F>Oj^9$Vk#TrFWo4OR@i)(Mx8ea)E6x~G8dxSU5{Xp>xYrJ#$9 z*Vn%)=cz+S3J)O1emgLqE$K$_Mj1lS`{)8ow9>uMMmXNpLErX?!*XBK$iOA)Z&0R zi>#;RumYgmqWNjLdE?N^hU=89x$s4EW@F?Pw6=b2~zCb?9M@VEpU2 zTVxhg3<`ulD=Uj0<;476ppxw>_ZT|7TJ0PV-n#o9-7SarX8v+^OT#h#Thqz0r>SIP zhvliJ<>KgB?M36?lwb5F2=}dx)#`05zTY&T&u499|GL|AoMMgKF@wXzy0FLQo`F6Q zqQC#)%bMz!MK%Q0Tm|ViPt@+~hiuZ1oLpT%5wLaxRm`9&xuktv`;R=~;)`N%f+X{B zS^u4xDFf$#*S}RQTk%X1O3KqWmchYSVPYX4eesmDkJf_&0ry+%^$s0y)$Ak2byobG zUaBmbFeTh^4Ep_r#>)lPNG zx+@1yk@?uh0&*ujL5{6;|L5#8J?zMMKJr+4!nut5DWY|LX(Z=?TH>dH9;+YQhw?1F z=B~)8s1CO84!s(9(Xn4>T>qH}f3K}W`DZ)NSLYC;HA2_AyNa2JDoD85M)`mIbpe3)y;f%P8O3&%S;;GB&Wj@wCI447dZ#z{ z4RN8TPba5TEbYmDA>tR`pLtIpTQgdsZ*JeRK!+m4Fi2($%(`R@w5W&W;g zd^Tj@D7*0qc0Yx^JNkY4{ghhtuxSgzEt~SLRhwy~9-{A8?WDh#UiO8b5&DV$3#`&w zg9%x?F}8WcgE*|)qjaCK;lw)$(l~kb@^rwh zpDL#TcF@ZPVT79l8S6;Pnb$Y0X{%MWSTeSylnyQMN3sf~n@w>|%jH*$-@jcw#0*&9 z7H*3hxe{frRn^jY>~kCXMg;F=1egR-UQW=l^P z`#CoR#aFR($amcpF>-Z~c-QT#;1{e!QJj{7?22t(-qAh31dkvqM9i4<{&D<~x|*8h zacnfG{%Y)cZoJ&JTF)|4-o8`vec*Ez>~zXz@Z=ZO!(4)ibbmuoWIHN(XK~>BYr+@a z;J`M1+3+)36}jox?b=8N5;L{uyX0P<`S`T>n|JeUqruh6e_Q+Oc5)Nz*L(WxSr?2b zhbpqtVF@c~^-}wP0RSNjAON7MrbY;?t*zy>qaeZ==KiO7^WvH(VXutwN_(XSF7x#H zROrA}$MV@%?Fd8rl!SBr61vWzC!PM5CrSGV=iMJ~k#yUt?slGn;|yq!vX9}*?lRS8 z6_3EO17H*HvoB?jsvz3IxwxMoByOT=#{M#cm7n#$yCFpYP$PqxvNV9%U*hU%mm#v{ z9jE50b|3URsg^dnrp~NVf{$MlwtsV3)*_R~q7mP z@2()G6~+%G1WVn@;WSe&Qs9<=u9{jD82wAI2o`_Z$3YzP|G+nDLRqLEM0OD5-j?rZ z-p}n=vCMQ|ZZbR@)odrHwrLxerH$3jS+}}XW&(tT{0W`Z-{(z>9`++5mVN|2-FqmE4Db;9u_ZcjEBo0c707H@Wl6r!U$5_MX$SuT)KtS1*F#*;>L~ZXN`8is&8xGdAC2ZLYrEw zHH@vMEk@XQhdu2VVa(dMS?Qgn5W+AOf;Vi@OMxgm_#a93i=na(h1>K?Q~m%wn^~Rr0W}*~wVY}ZUpEl0p7YpSPWJW{047XtfT~`jv_AsaJg$yB7Zm1v7w_jY(lSKHpqD{q{P@FQ(%9G2MQB zz@L;F)#vfV8*{^(V!xbpO{@Ngg6>B0zL?JWP477j$2}+R(Am0-oVsGbz58;Zc>P;3 z+=B2<8dD4l-pNC`{op@ihquRcSU6U@$dm@#{xgth4u~>zEr2(uU$qgPA3DHg1 z>sc0n^u@WQ;pM~Z>q&24%Qh&69Do1?{bK6>xt0Uc0d&46MM^rnbET{KPu~GI*r)QU zOI_jZtW$8D>ayi?fXSwWSHbl9W@o8*HozAG7xDWTscUxM5HkaJXycxza$VzFY2;6z i1F4#K-aYt@gNUWV;Sx<^hvpd7q=nJnC@SckzFOg^W9W1dvaGw@xc z5A*(#KSwJL6SXb?^5Qz|yNpl9xw%i{y+C8q!(P^n2+NOOvq=Xv+n*hBO1@Nbq_|Wb z%QThdXQ*a@{m954atSDtC8c!-hyNsZ@ppvgpAZw{&{X`ad^tkkiEGEeZTQjHRkyIO zI(Z>l-i@^&gAcTqG0L_=^#76$- zSF|n~GhVj8bWT{t+yg)InR@ye8#=?&FGGVyZwZh;@!G!MBtE6Gs~jw+-7^&7-N9X2 z4)7m<{MNme&-Fk15k9nn_Ll;#XN@y>)lTswozC#)`27Q=(-OCfi;vH|_@$^!261 z!1ex4=0UE)`lLi10;4I={MP$m&7W5glfh6DIu^`Hr#1b8e2z__98S_RXC};v4<=Y$ zOx^&8t+tU;^2z?1voFD{m8~mZB-`4)t78T!QU|_I@YH~iL zByY*8{!7lUwkYLT9s7X(xvaa>)dpsF2G%HQHSOpaR}Y zh^o1#?x%U`5?nk!8N3Zgd;JT=-`^enNL4Pphp)lH@+GTjK0E&u_mJF6!Od84#|o?g zMhuRDe)fW@<-+Xz1`l3}cUJG^)VNeWz}qb#h$4teAQ<`h4*CSoni9Jv)Ri6k2vOW6 zCXIM~Udl+C^%(M8$`~;JCPjLBx=lYZw>bZ#}^5 z+UP){;iRa+q&eXsIv3{cZ~s$B)SDN${#rB<64 z66Fck^kVqdA`W}X#Xfg^87E8f4uE=`ezHAUYI3&I%yOuSA~9y2gf^vT9PVT$9v9kV zIGn6WmgM9h@bdB|@;c?M`C3;W;45V3T;B$}w%Rf5krk8i{etgz+EYQz4n~;avL%N9 zEav7mctzTQwHZ+gdx#)rbtGoh-?+UzD0;#1`P=8M!K7rHd6>gI%;rOmN9^2X*p`Z{ zSJ=;WSL#s8DaDORuOW>IA$*}d=dG_L1}*72_0EOXrXS{o-ogW+18tod0uDEwHHA?4 zRX(gBDstW%rm1W?O0r0?y7b9C!kVYOAL9NGv7X(1mMtbdQ47U7HJkv{YWJVi^m@w0 z+fRg|)d%oDu>l=woN5Z77?HQD<~aGlMRYNFIb96r(qRTZYI4>fA@+@=O6q!3T0`yo z(pT@8geiL-Jm$Q^^;Qh>$=7~1o;8-;AO4u;sgq1ZHJB|x29~LW#<*u14_{#c^q3d6 zahLqA`>#Wf{^So*&E;n{NU?Vi!{{lTGt)VoLaW3p%+35b1|?gEYnsoM z!^V_Zko)sGPgO!*{c`Wm{52$+cbWtH{4e2&LP$HaP$_qKbK7x_4i>s1wPFLmzs0mL zQKwsN`rGf`)}qMU$?S3J(K;Ce+vwXiJ@b$I{++Y(XUW#REDR3nnW=tlqXhsw!6nz9 zn?%Ri3v8CB;4}A!%}5bE<_1LEmS{EBAg$M*AJ8x(gze^>NK-CTw>G@s%O$OF3|hx= zP0ol}WUR!Qyz08f59j0AWxh_pEocXvynT4*PUjkAdFkmpkBr2W@E7TfJ!wYk4@bnW z<*;I#;pQe}k=e8n6l$DYO5hl?!V4ITeS#Q9eqT#Tv*8ysCs0n;iT?4y9| zX*!{AtNEH0s)SBhUYzHB^547yom zm*=Et($pb5es(MAHD=7Pktx@4=yybD2<4aUtF}#_1g3UeoAg6bk)ZgMTO`IyoYyIr z?DwwClVx7p9KVGDKtFNQ3*M*z*Yz0l!0#({NSn(y$JZ@e>U_i7k&+&^O>|3kI$gWz z2=ZRE(vd&11%{1?461QDYXrv^D+mL}VFO!Up%oUa-0tgtJ_f`6Q1E==gUqFwHyau; zAZitMgEzjSiz2ph!;Y&ygda5y^rc#+Gq5)EXMKX)!3Xr8R}yXBC0TjHnl1Z4& zV&~Zxb!MsEP*dJ3+u3HRUB}sbPy-^1v2b9gg%&NvY*xFLC1c_}02K5SX>c(8+fK?^4}7SR*E%HYht$4bb#Pe@|C%#KZFTCW zSNwW2Vuy;v3hl;aZ`4{*HGBNx-vm_ay*S{0)!aDLz1`B!EiyBug-hhwSZHAe9Jix$ zy0=;?qh=%3eK{29Ha3*utBq2LM9{dGVv2hDt-^SuC?iA^`2FDPJXs@geP;P+j|dQ}3K22B9Z}o{bpg*Ia|dGjox~Gry57 znTM13sV$Uv99T)jC=yZTWHlz57dCNfzL=vi9-Q^uewQ;MHXF!_pzu$PFa?;J^mPWT ze{<2*GD}ya+snK6-NjSpcEYM>G|t@PtC}{_;fA6nXnBZy0MZbuiZj{F2nx8B9MvwG zPo2ACqx+~(R94X{a&=U*w+PhfB}p3D*AH9PteWG2TMoVOFgKcA1pL4%sL`UsoYHY% z*DC6}u<^4G+2y-;`lZ`Jb3;O~Y&6>|Neq8;Rw&zWon~JBm0WMYyf=On)f_$({htU5 z8cqdTh%G;8x&l*h8v5dBPi%C+27+h-LYE(^Kb4w4Xv9#&UdjBQ8o%PR8^-urBowR2 zK}#3omy<&`E5Tkw^If7gQVdQWhq<$0+G%WTY^K&Bn~6q?q*gI*?yn<2UQUHf$ZS=) z_UA0j;&i5SFJ<5@!+b*Br5_!{H3l>;yk7okeS0jIi(%Z;({I1r!$VpPTU)=vo1O(0 zBWf`927TSz4|mcLNwCn-bP-}py-ukujJNu@o7d!>l+K~&YNLZ^h&%(cA-fu2ZQ)6M zN-*$=RYUj-E2Xz9Dc$~q7@r&FyLSE}T8i;a`}P=BJ4j;1jJd3Rao_LIAGsKoG1_(N z@HQP4K?zoHsoq?zqv?7t}d5g4#~kSV94KNAO&WFR_VP=k?}O24)7ZqM zZbayA(AYAql=rJEk~dz@?Ctw%U+J=A>n;krPVLAaMj>16D8a(Jbuadqf~Jlce8~1} zUShr~4o0JiYI!k5yX5 zJY@LxVlx12hA16VEj)M%lk=;Dm24gvUujGqPcdNke_4%^KZpI1&-697)Uv} zxex#j4i4)3==Hw8HIVDg8?=FQWC*bLZ9V8>cXwB_@^fTPPm$7E?JKAA_S3x&r7Ly~ zo>`f2J2OQD7R#IKaSZ(gcXqp8#yrv;7)%1xH6e}OS|%#4!CdQ*JL{;`8Kr}YDr7HX zW1h>niD8iL*UUv-vuD!~5u9aP+{fn@w(!q326r4J>~o^dY1Yh)R7t!YvKPS=OBAoQ zN#Ojh{E(A7aK@hQGCr}b&dg}Cym=$5iFK4t9eTw6Aexh(PYV(aYc$drYfAsmut5ZGMJe}jvBCHkS-i2>Ee*35SC4&sboKql)BV{nXwvV@zhBxui3h%&hTY#M=<@W>V^9R9`=r@l z-n%sN`ta5x-ev#FBoch!qxRW(a6ep002yIX$eUl67#rCfYvhkSNMa5(g!&00!LKFX zcqut`c6U2UH%707ZlTyC+apNFJVx{55O#Ss?LjFf@@xRGtMTUkyLnE*+J|J?WnIIy;vUhq+80&vM;QiuhL2isK=}HV42KfCvj-lj ziMNGdQmwV8;Vq!=m9#w|u&TdhE$HbiJ;Z!NZrIjf+HQ43G_AdvfOCoSZNZ)dW_+CC zefgqhMMjW@o4gx*vtm;i&x6(%`o=+cTg<@b3iKw=E0~O&f2hh{;%jSO0yo)`sc(Q_7P&>RL(LGDuHc>t=ps@0cx>X?x8KzX^Qsy?4 z+;8^g>rFEU!g2e+s5dGJ1>8B3pc!YC^1ant70of{pZ;hoevD)W0!a)$6crZ#-S zdgO?7DccGvUd;r%LzE{%{-0<|kI|zh;ia)?@yZg}zej2_P4PeCIBWXph!?a`fK%+= z97rGwD^nAwbIy^Qf1m4XIe#^Fmd-j3kqA>yOgJ(Vv#v)ihE;M(4gL7}_gBSADpljV z>C*Oz2IM#4tW?CU@fBk3m-~VF&9^eD4KTxBDc*!6+ecyd-%0O34R#|4QlcMjAE9O< zNurC}KL!ZA7cfjg&}1Q%emA(+jIe_JzE)q0+P!7XLKM*+(Tiv8G*=fulL-jgNzQL~ z+lfWv8Z^|F=GWF6==dEM-@o1K~-W-dtaErnW@~Eblkv>dT zi4CHiL?a542nWcrlH>mrly+^eFz`5GuCpiLX92K-1u#VFFKho)cU*9I^fsf(kA`T4 z9w~KOQy=Yzv^%iTqR+B(cfD&Jze5BbP^qXPe&w5Y+$9vbW2G~LE*T93zVk!K

+m zi2WPjm-ji12UP`umA2h4J8|E1hkvu{7VI$A;pGd#)U)NnR?A-Zs|G^!-HW%0A@x5< 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

vYQiUx#;=i8%vKf0;Za-=Z9oN5&fS#e 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 Mx}I8@icQ%60G2$GasU7T From ed46d3ca1c035d242fe107033fd0e33cfffb632f Mon Sep 17 00:00:00 2001 From: Winter Flare <7543955+Owai-Seek@users.noreply.github.com> Date: Tue, 18 Feb 2020 00:37:28 -0500 Subject: [PATCH 081/137] Typo --- code/modules/research/designs/misc_designs.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index 34e07a600b..df1c1edd9c 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -291,7 +291,7 @@ /datum/design/broom name = "Broom" - desc = "Just your everyday standard mop." + desc = "Just your everyday standard broom." id = "broom" build_type = PROTOLATHE materials = list(MAT_METAL = 1000, MAT_GLASS = 600) From 6a97006b12b28e00059033f326576b9050eac34b Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 01:41:28 -0700 Subject: [PATCH 082/137] Update pai_defense.dm --- code/modules/mob/living/silicon/pai/pai_defense.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/silicon/pai/pai_defense.dm b/code/modules/mob/living/silicon/pai/pai_defense.dm index d8e910642d..93cf10706a 100644 --- a/code/modules/mob/living/silicon/pai/pai_defense.dm +++ b/code/modules/mob/living/silicon/pai/pai_defense.dm @@ -56,7 +56,8 @@ if(P.stun) fold_in(force = TRUE) visible_message("The electrically-charged projectile disrupts [src]'s holomatrix, forcing [src] to fold in!") - return ..() + . = ..() + return BULLET_ACT_FORCE_PIERCE /mob/living/silicon/pai/stripPanelUnequip(obj/item/what, mob/who, where) //prevents stripping to_chat(src, "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail.") From 9264163d9390fb935abc273cb170970d8063e8e3 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 01:47:20 -0700 Subject: [PATCH 083/137] Update pai.dm --- code/modules/mob/living/silicon/pai/pai.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 409665f792..ebfe271609 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -74,7 +74,7 @@ var/emitteroverloadcd = 100 var/radio_short = FALSE - var/radio_short_cooldown = 5 MINUTES + var/radio_short_cooldown = 3 MINUTES var/radio_short_timerid canmove = FALSE From d6fe0df7ace9a71187f018c5b3e63f4292046ff5 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 02:10:03 -0700 Subject: [PATCH 084/137] Update pai.dm --- code/modules/mob/living/silicon/pai/pai.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 409665f792..3197b16b1f 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -2,7 +2,6 @@ name = "pAI" icon = 'icons/mob/pai.dmi' icon_state = "repairbot" - mouse_opacity = MOUSE_OPACITY_OPAQUE density = FALSE pass_flags = PASSTABLE | PASSMOB mob_size = MOB_SIZE_TINY From 53d7192c9c5087ca0a9a6e0905e0c0b2ae52aaf9 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 03:12:57 -0700 Subject: [PATCH 085/137] k --- .../bloodsucker/datum_bloodsucker.dm | 4 +- .../powers/{bs_brawn.dm => brawn.dm} | 0 .../powers/{bs_cloak.dm => cloak.dm} | 0 .../powers/{bs_feed.dm => feed.dm} | 0 .../powers/{bs_fortitude.dm => fortitude.dm} | 0 .../powers/{bs_gohome.dm => go_home.dm} | 14 ++-- .../powers/{bs_haste.dm => haste.dm} | 65 ++++++++++--------- .../powers/{bs_lunge.dm => lunge.dm} | 0 .../{bs_masquerade.dm => masquerade.dm} | 0 .../powers/{bs_mesmerize.dm => mesmerize.dm} | 0 .../powers/{v_recuperate.dm => recuperate.dm} | 0 .../powers/{bs_trespass.dm => trespass.dm} | 0 .../powers/{bs_veil.dm => veil.dm} | 0 tgstation.dme | 24 +++---- 14 files changed, 55 insertions(+), 52 deletions(-) rename code/modules/antagonists/bloodsucker/powers/{bs_brawn.dm => brawn.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_cloak.dm => cloak.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_feed.dm => feed.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_fortitude.dm => fortitude.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_gohome.dm => go_home.dm} (97%) rename code/modules/antagonists/bloodsucker/powers/{bs_haste.dm => haste.dm} (53%) rename code/modules/antagonists/bloodsucker/powers/{bs_lunge.dm => lunge.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_masquerade.dm => masquerade.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_mesmerize.dm => mesmerize.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{v_recuperate.dm => recuperate.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_trespass.dm => trespass.dm} (100%) rename code/modules/antagonists/bloodsucker/powers/{bs_veil.dm => veil.dm} (100%) diff --git a/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm b/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm index 24e967f00b..5207f7a66d 100644 --- a/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm +++ b/code/modules/antagonists/bloodsucker/datum_bloodsucker.dm @@ -286,10 +286,10 @@ var/mob/living/L = owner.current level_bloodcost = maxBloodVolume * 0.2 //If the blood volume of the bloodsucker is lower than the cost to level up, return and inform the bloodsucker - + //TODO: Make this into a radial, or perhaps a tgui next UI // Purchase Power Prompt - var/list/options = list() + var/list/options = list() for(var/pickedpower in typesof(/datum/action/bloodsucker)) var/datum/action/bloodsucker/power = pickedpower // If I don't own it, and I'm allowed to buy it. diff --git a/code/modules/antagonists/bloodsucker/powers/bs_brawn.dm b/code/modules/antagonists/bloodsucker/powers/brawn.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_brawn.dm rename to code/modules/antagonists/bloodsucker/powers/brawn.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_cloak.dm b/code/modules/antagonists/bloodsucker/powers/cloak.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_cloak.dm rename to code/modules/antagonists/bloodsucker/powers/cloak.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_feed.dm b/code/modules/antagonists/bloodsucker/powers/feed.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_feed.dm rename to code/modules/antagonists/bloodsucker/powers/feed.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_fortitude.dm b/code/modules/antagonists/bloodsucker/powers/fortitude.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_fortitude.dm rename to code/modules/antagonists/bloodsucker/powers/fortitude.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_gohome.dm b/code/modules/antagonists/bloodsucker/powers/go_home.dm similarity index 97% rename from code/modules/antagonists/bloodsucker/powers/bs_gohome.dm rename to code/modules/antagonists/bloodsucker/powers/go_home.dm index 476f8ae012..87c3d4ab0d 100644 --- a/code/modules/antagonists/bloodsucker/powers/bs_gohome.dm +++ b/code/modules/antagonists/bloodsucker/powers/go_home.dm @@ -28,9 +28,9 @@ to_chat(owner, "Your coffin has been destroyed!") return FALSE return TRUE - + /datum/action/bloodsucker/gohome/proc/flicker_lights(var/flicker_range, var/beat_volume) - for(var/obj/machinery/light/L in view(flicker_range, get_turf(owner))) + for(var/obj/machinery/light/L in view(flicker_range, get_turf(owner))) playsound(get_turf(owner), 'sound/effects/singlebeat.ogg', beat_volume, 1) @@ -45,7 +45,7 @@ flicker_lights(4, 40) sleep(50) flicker_lights(4, 60) - for(var/obj/machinery/light/L in view(6, get_turf(owner))) + for(var/obj/machinery/light/L in view(6, get_turf(owner))) L.flicker(5) playsound(get_turf(owner), 'sound/effects/singlebeat.ogg', 60, 1) // ( STEP TWO: Lights OFF? ) @@ -56,7 +56,7 @@ if(!owner) return // SEEN?: (effects ONLY if there are witnesses! Otherwise you just POOF) - + var/am_seen = FALSE // Do Effects (seen by anyone) var/drop_item = FALSE // Drop Stuff (seen by non-vamp) if(isturf(owner.loc)) // Only check if I'm not in a Locker or something. @@ -95,12 +95,12 @@ puff.effect_type = /obj/effect/particle_effect/smoke/vampsmoke puff.set_up(3, 0, get_turf(owner)) puff.start() - + //STEP FIVE: Create animal at prev location var/mob/living/simple_animal/SA = pick(/mob/living/simple_animal/mouse,/mob/living/simple_animal/mouse,/mob/living/simple_animal/mouse, /mob/living/simple_animal/hostile/retaliate/bat) //prob(300) /mob/living/simple_animal/mouse, new SA (owner.loc) // TELEPORT: Move to Coffin & Close it! - do_teleport(owner, bloodsuckerdatum.coffin, no_effects = TRUE, forced = TRUE, channel = TELEPORT_CHANNEL_QUANTUM) + do_teleport(owner, bloodsuckerdatum.coffin, no_effects = TRUE, forced = TRUE, channel = TELEPORT_CHANNEL_QUANTUM) user.resting = TRUE user.Stun(30,1) // CLOSE LID: If fail, force me in. @@ -112,4 +112,4 @@ bloodsuckerdatum.coffin.update_icon() // Lock Coffin bloodsuckerdatum.coffin.LockMe(owner) - + diff --git a/code/modules/antagonists/bloodsucker/powers/bs_haste.dm b/code/modules/antagonists/bloodsucker/powers/haste.dm similarity index 53% rename from code/modules/antagonists/bloodsucker/powers/bs_haste.dm rename to code/modules/antagonists/bloodsucker/powers/haste.dm index a1aaf50499..ba656626cc 100644 --- a/code/modules/antagonists/bloodsucker/powers/bs_haste.dm +++ b/code/modules/antagonists/bloodsucker/powers/haste.dm @@ -14,6 +14,9 @@ message_Trigger = ""//"Whom will you subvert to your will?" bloodsucker_can_buy = TRUE must_be_capacitated = TRUE + var/list/hit //current hit, set while power is in use as we can't pass the list as an extra calling argument in registersignal. + /// If set, uses this speed in deciseconds instead of world.tick_lag + var/speed_override /datum/action/bloodsucker/targeted/haste/CheckCanUse(display_error) . = ..() @@ -43,43 +46,43 @@ return TRUE /datum/action/bloodsucker/targeted/haste/FireTargetedPower(atom/A) - // set waitfor = FALSE <---- DONT DO THIS!We WANT this power to hold up ClickWithPower(), so that we can unlock the power when it's done. + // This is a non-async proc to make sure the power is "locked" until this finishes. + RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/on_move) var/mob/living/user = owner var/turf/T = isturf(A) ? A : get_turf(A) // Pulled? Not anymore. - owner.pulledby = null - // Step One: Heatseek toward Target's Turf - walk_to(owner, T, 0, 0.01, 20) // NOTE: this runs in the background! to cancel it, you need to use walk(owner.current,0), or give them a new path. + user.pulledby?.stop_pulling() + // Go to target turf + // DO NOT USE WALK TO. playsound(get_turf(owner), 'sound/weapons/punchmiss.ogg', 25, 1, -1) - var/safety = 20 - while(get_turf(owner) != T && safety > 0 && !(isliving(target) && target.Adjacent(owner))) - user.canmove = FALSE //Dont move while doing the thing, or itll break - safety -- - // Did I get knocked down? - if(owner && owner.incapacitated(ignore_restraints=TRUE, ignore_grab=TRUE))// owner.incapacitated()) - // We're gonna cancel. But am I on the ground? Spin me! - if(user.resting) - var/send_dir = get_dir(owner, T) - new /datum/forced_movement(owner, get_ranged_target_turf(owner, send_dir, 1), 1, FALSE) - owner.spin(10) + var/safety = get_dist(user, T) * 3 + 1 + var/consequetive_failures = 0 + var/speed = isnull(speed_override)? world.tick_lag : speed_override + while(--safety && (get_turf(user) != T)) + var/success = step_towards(user, T) //This does not try to go around obstacles. + if(!success) + success = step_to(user, T) //this does + if(!sucecss) + if(++consequetive_failures > 3) //if 3 steps don't work + break //just stop + else + consequetive_failures = 0 + if(user.resting) + user.setDir(turn(user.dir, 90)) //down? spin2win :^) + if(user.incapacitated(ignore_restraints = TRUE, ignore_grab = TRUE)) //actually down? stop. break - // Spin/Stun people we pass. - //var/mob/living/newtarget = locate(/mob/living) in oview(1, owner) - var/list/mob/living/foundtargets = list() - for(var/mob/living/newtarget in oview(1, owner)) - if (newtarget && newtarget != target && !(newtarget in foundtargets))//!newtarget.IsKnockdown()) - if (rand(0, 5) < level_current) - playsound(get_turf(newtarget), "sound/weapons/punch[rand(1,4)].ogg", 15, 1, -1) - newtarget.Knockdown(10 + level_current * 5) - if(newtarget.IsStun()) - newtarget.spin(10,1) - if (rand(0,4)) - newtarget.drop_all_held_items() - foundtargets += newtarget - sleep(1) - if(user) - user.update_canmove() //Let the poor guy move again + sleep(speed) + UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) + user.update_canmove() /datum/action/bloodsucker/targeted/haste/DeactivatePower(mob/living/user = owner, mob/living/target) ..() // activate = FALSE user.update_canmove() + +/datum/action/bloodsucker/targeted/haste/proc/on_move() + for(var/mob/living/L in dview(1, get_turf(owner))) + if(hit[AM] && (AM != owner)) + hit[L] = TRUE + playsound(L, "sound/weapons/punch[rand(1,4)].ogg", 15, 1, -1) + L.Knockdown(10 + level_current * 5, override_hardstun = 0.1) + L.spin(10, 1) diff --git a/code/modules/antagonists/bloodsucker/powers/bs_lunge.dm b/code/modules/antagonists/bloodsucker/powers/lunge.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_lunge.dm rename to code/modules/antagonists/bloodsucker/powers/lunge.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_masquerade.dm b/code/modules/antagonists/bloodsucker/powers/masquerade.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_masquerade.dm rename to code/modules/antagonists/bloodsucker/powers/masquerade.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_mesmerize.dm b/code/modules/antagonists/bloodsucker/powers/mesmerize.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_mesmerize.dm rename to code/modules/antagonists/bloodsucker/powers/mesmerize.dm diff --git a/code/modules/antagonists/bloodsucker/powers/v_recuperate.dm b/code/modules/antagonists/bloodsucker/powers/recuperate.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/v_recuperate.dm rename to code/modules/antagonists/bloodsucker/powers/recuperate.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_trespass.dm b/code/modules/antagonists/bloodsucker/powers/trespass.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_trespass.dm rename to code/modules/antagonists/bloodsucker/powers/trespass.dm diff --git a/code/modules/antagonists/bloodsucker/powers/bs_veil.dm b/code/modules/antagonists/bloodsucker/powers/veil.dm similarity index 100% rename from code/modules/antagonists/bloodsucker/powers/bs_veil.dm rename to code/modules/antagonists/bloodsucker/powers/veil.dm diff --git a/tgstation.dme b/tgstation.dme index 0b7ad871c3..138d586fc4 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -1298,18 +1298,18 @@ #include "code\modules\antagonists\bloodsucker\objects\bloodsucker_coffin.dm" #include "code\modules\antagonists\bloodsucker\objects\bloodsucker_crypt.dm" #include "code\modules\antagonists\bloodsucker\objects\bloodsucker_lair.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_brawn.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_cloak.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_feed.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_fortitude.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_gohome.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_haste.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_lunge.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_masquerade.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_mesmerize.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_trespass.dm" -#include "code\modules\antagonists\bloodsucker\powers\bs_veil.dm" -#include "code\modules\antagonists\bloodsucker\powers\v_recuperate.dm" +#include "code\modules\antagonists\bloodsucker\powers\brawn.dm" +#include "code\modules\antagonists\bloodsucker\powers\cloak.dm" +#include "code\modules\antagonists\bloodsucker\powers\feed.dm" +#include "code\modules\antagonists\bloodsucker\powers\fortitude.dm" +#include "code\modules\antagonists\bloodsucker\powers\go_home.dm" +#include "code\modules\antagonists\bloodsucker\powers\haste.dm" +#include "code\modules\antagonists\bloodsucker\powers\lunge.dm" +#include "code\modules\antagonists\bloodsucker\powers\masquerade.dm" +#include "code\modules\antagonists\bloodsucker\powers\mesmerize.dm" +#include "code\modules\antagonists\bloodsucker\powers\recuperate.dm" +#include "code\modules\antagonists\bloodsucker\powers\trespass.dm" +#include "code\modules\antagonists\bloodsucker\powers\veil.dm" #include "code\modules\antagonists\brainwashing\brainwashing.dm" #include "code\modules\antagonists\brother\brother.dm" #include "code\modules\antagonists\changeling\cellular_emporium.dm" From 1e57463d1b1b42cf0e767ac58f45e9fdc33e1907 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 03:16:47 -0700 Subject: [PATCH 086/137] k --- code/modules/antagonists/bloodsucker/powers/haste.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/antagonists/bloodsucker/powers/haste.dm b/code/modules/antagonists/bloodsucker/powers/haste.dm index ba656626cc..77f8e74efc 100644 --- a/code/modules/antagonists/bloodsucker/powers/haste.dm +++ b/code/modules/antagonists/bloodsucker/powers/haste.dm @@ -62,7 +62,7 @@ var/success = step_towards(user, T) //This does not try to go around obstacles. if(!success) success = step_to(user, T) //this does - if(!sucecss) + if(!success) if(++consequetive_failures > 3) //if 3 steps don't work break //just stop else @@ -81,7 +81,7 @@ /datum/action/bloodsucker/targeted/haste/proc/on_move() for(var/mob/living/L in dview(1, get_turf(owner))) - if(hit[AM] && (AM != owner)) + if(!hit[L] && (L != owner)) hit[L] = TRUE playsound(L, "sound/weapons/punch[rand(1,4)].ogg", 15, 1, -1) L.Knockdown(10 + level_current * 5, override_hardstun = 0.1) From ef05410b758835f7986115f04a8b76089eb1fd58 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 03:32:04 -0700 Subject: [PATCH 087/137] k --- code/modules/antagonists/bloodsucker/powers/haste.dm | 2 ++ code/modules/antagonists/bloodsucker/powers/masquerade.dm | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/code/modules/antagonists/bloodsucker/powers/haste.dm b/code/modules/antagonists/bloodsucker/powers/haste.dm index 77f8e74efc..7a86a6dd3d 100644 --- a/code/modules/antagonists/bloodsucker/powers/haste.dm +++ b/code/modules/antagonists/bloodsucker/powers/haste.dm @@ -47,6 +47,7 @@ /datum/action/bloodsucker/targeted/haste/FireTargetedPower(atom/A) // This is a non-async proc to make sure the power is "locked" until this finishes. + hit = list() RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/on_move) var/mob/living/user = owner var/turf/T = isturf(A) ? A : get_turf(A) @@ -73,6 +74,7 @@ break sleep(speed) UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) + hit = null user.update_canmove() /datum/action/bloodsucker/targeted/haste/DeactivatePower(mob/living/user = owner, mob/living/target) diff --git a/code/modules/antagonists/bloodsucker/powers/masquerade.dm b/code/modules/antagonists/bloodsucker/powers/masquerade.dm index 0435ddccd5..7d41899dc2 100644 --- a/code/modules/antagonists/bloodsucker/powers/masquerade.dm +++ b/code/modules/antagonists/bloodsucker/powers/masquerade.dm @@ -54,8 +54,8 @@ REMOVE_TRAIT(user, TRAIT_VIRUSIMMUNE, "bloodsucker") var/obj/item/organ/heart/vampheart/H = user.getorganslot(ORGAN_SLOT_HEART) var/obj/item/organ/eyes/vassal/bloodsucker/E = user.getorganslot(ORGAN_SLOT_EYES) - E.flash_protect = 0 - + E.flash_protect = 0 + // WE ARE ALIVE! // bloodsuckerdatum.poweron_masquerade = TRUE while(bloodsuckerdatum && ContinueActive(user)) From 3785c94a1b0280fba4f3cfb68127eb369e9d1b8a Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Tue, 18 Feb 2020 03:57:39 -0700 Subject: [PATCH 088/137] more responsive --- code/modules/antagonists/bloodsucker/powers/haste.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/antagonists/bloodsucker/powers/haste.dm b/code/modules/antagonists/bloodsucker/powers/haste.dm index 7a86a6dd3d..47c93b794e 100644 --- a/code/modules/antagonists/bloodsucker/powers/haste.dm +++ b/code/modules/antagonists/bloodsucker/powers/haste.dm @@ -64,7 +64,7 @@ if(!success) success = step_to(user, T) //this does if(!success) - if(++consequetive_failures > 3) //if 3 steps don't work + if(++consequetive_failures >= 3) //if 3 steps don't work break //just stop else consequetive_failures = 0 @@ -72,7 +72,8 @@ user.setDir(turn(user.dir, 90)) //down? spin2win :^) if(user.incapacitated(ignore_restraints = TRUE, ignore_grab = TRUE)) //actually down? stop. break - sleep(speed) + if(success) //don't sleep if we failed to move. + sleep(speed) UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) hit = null user.update_canmove() From 2834994587c04972e294c86fe6af3c0f4d966a22 Mon Sep 17 00:00:00 2001 From: Putnam Date: Tue, 18 Feb 2020 11:34:09 -0800 Subject: [PATCH 089/137] why didn't we do this sooner --- code/modules/power/supermatter/supermatter.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 0b0d968919..21003b5e86 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -346,6 +346,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) // Pass all the gas related code an empty gas container removed = new() + damage = min(damage_archived + (DAMAGE_HARDCAP * explosion_point),damage) // hardcap any direct damage taken before doing atmos damage damage_archived = damage if(!removed || !removed.total_moles() || isspaceturf(T)) //we're in space or there is no gas to process if(takes_damage) From 60f819465c1a2cdc69fcf393f128e0e983057ab5 Mon Sep 17 00:00:00 2001 From: Putnam Date: Tue, 18 Feb 2020 18:30:15 -0800 Subject: [PATCH 090/137] what. what. what. what. what. --- code/modules/mining/machine_vending.dm | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 54f8e11b07..78b1a665db 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -122,13 +122,10 @@ to_chat(usr, "Error: Insufficient credits for [prize.equipment_name] on [I]!") flick(icon_deny, src) else - if (I.mining_points -= prize.cost) - to_chat(usr, "[src] clanks to life briefly before vending [prize.equipment_name]!") - new prize.equipment_path(src.loc) - SSblackbox.record_feedback("nested tally", "mining_equipment_bought", 1, list("[type]", "[prize.equipment_path]")) - else - to_chat(usr, "Error: Transaction failure, please try again later!") - flick(icon_deny, src) + I.mining_points -= prize.cost + to_chat(usr, "[src] clanks to life briefly before vending [prize.equipment_name]!") + new prize.equipment_path(src.loc) + SSblackbox.record_feedback("nested tally", "mining_equipment_bought", 1, list("[type]", "[prize.equipment_path]")) else to_chat(usr, "Error: An ID with a registered account is required!") flick(icon_deny, src) From 37ba75ec12a3bf2181b67e5d957497c0fca286f7 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Wed, 19 Feb 2020 14:07:11 +0100 Subject: [PATCH 091/137] Fixing addiction moodlets not going away and secret sauce recipe paper. --- code/modules/mob/living/carbon/carbon.dm | 6 +++++- code/modules/reagents/chemistry/holder.dm | 14 +++++++++++--- code/modules/reagents/chemistry/recipes/special.dm | 2 +- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 6460d8331d..cbb2cdb5c2 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -840,6 +840,9 @@ var/obj/item/organ/brain/B = getorgan(/obj/item/organ/brain) if(B) B.brain_death = FALSE + for(var/O in internal_organs) + var/obj/item/organ/organ = O + organ.setOrganDamage(0) for(var/thing in diseases) var/datum/disease/D = thing if(D.severity != DISEASE_SEVERITY_POSITIVE) @@ -852,7 +855,8 @@ qdel(R) update_handcuffed() if(reagents) - reagents.addiction_list = list() + for(var/addi in reagents.addiction_list) + reagents.remove_addiction(addi) cure_all_traumas(TRAUMA_RESILIENCE_MAGIC) ..() // heal ears after healing traits, since ears check TRAIT_DEAF trait diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 4c240660a9..8635626209 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -77,6 +77,8 @@ /datum/reagents/Destroy() . = ..() + //We're about to delete all reagents, so lets cleanup + addiction_list.Cut() var/list/cached_reagents = reagent_list for(var/reagent in cached_reagents) var/datum/reagent/R = reagent @@ -332,9 +334,7 @@ if(R.addiction_stage3_end to R.addiction_stage4_end) need_mob_update += R.addiction_act_stage4(C) if(R.addiction_stage4_end to INFINITY) - to_chat(C, "You feel like you've gotten over your need for [R.name].") - SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_addiction") - cached_addictions.Remove(R) + remove_addiction(R) else SEND_SIGNAL(C, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_overdose") addiction_tick++ @@ -344,6 +344,12 @@ C.update_stamina() update_total() +/datum/reagents/proc/remove_addiction(datum/reagent/R) + to_chat(my_atom, "You feel like you've gotten over your need for [R.name].") + SEND_SIGNAL(my_atom, COMSIG_CLEAR_MOOD_EVENT, "[R.type]_overdose") + addiction_list.Remove(R) + qdel(R) + //Signals that metabolization has stopped, triggering the end of trait-based effects /datum/reagents/proc/end_metabolization(mob/living/carbon/C, keep_liverless = TRUE) var/list/cached_reagents = reagent_list @@ -762,6 +768,8 @@ R.metabolizing = FALSE R.on_mob_end_metabolize(M) R.on_mob_delete(M) + //Clear from relevant lists + addiction_list -= R qdel(R) reagent_list -= R update_total() diff --git a/code/modules/reagents/chemistry/recipes/special.dm b/code/modules/reagents/chemistry/recipes/special.dm index cc63a8c692..fb4552f96b 100644 --- a/code/modules/reagents/chemistry/recipes/special.dm +++ b/code/modules/reagents/chemistry/recipes/special.dm @@ -168,7 +168,7 @@ GLOBAL_LIST_INIT(food_reagents, build_reagents_to_food()) //reagentid = related /obj/item/paper/secretrecipe name = "old recipe" - var/recipe_id = "secretsauce" + var/recipe_id = /datum/reagent/consumable/secretsauce /obj/item/paper/secretrecipe/examine(mob/user) //Extra secret if(isobserver(user)) From 057b6f591cc5313adaa098f0ad14f16a366deaa2 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Wed, 19 Feb 2020 14:23:12 +0100 Subject: [PATCH 092/137] HEEY --- code/__DEFINES/components.dm | 2 +- code/datums/components/mood.dm | 4 +++- code/modules/mob/living/carbon/human/human.dm | 2 +- .../mob/living/carbon/human/species_types/dullahan.dm | 7 ++++--- code/modules/mob/living/living.dm | 10 ++-------- 5 files changed, 11 insertions(+), 14 deletions(-) diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index c4c9d815a0..ab86761542 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -193,13 +193,13 @@ // #define SPEECH_FORCED 7 // /mob/living signals -#define COMSIG_LIVING_FULLY_HEAL "living_fully_healed" //from base of /mob/living/fully_heal(): (admin_revive) #define COMSIG_LIVING_REGENERATE_LIMBS "living_regenerate_limbs" //from base of /mob/living/regenerate_limbs(): (noheal, excluded_limbs) #define COMSIG_LIVING_RESIST "living_resist" //from base of mob/living/resist() (/mob/living) #define COMSIG_LIVING_IGNITED "living_ignite" //from base of mob/living/IgniteMob() (/mob/living) #define COMSIG_LIVING_EXTINGUISHED "living_extinguished" //from base of mob/living/ExtinguishMob() (/mob/living) #define COMSIG_LIVING_ELECTROCUTE_ACT "living_electrocute_act" //from base of mob/living/electrocute_act(): (shock_damage) #define COMSIG_LIVING_MINOR_SHOCK "living_minor_shock" //sent by stuff like stunbatons and tasers: () +#define COMSIG_LIVING_REVIVE "living_revive" //from base of mob/living/revive() (full_heal, admin_revive) #define COMSIG_MOB_CLIENT_LOGIN "comsig_mob_client_login" //sent when a mob/login() finishes: (client) #define COMSIG_LIVING_GUN_PROCESS_FIRE "living_gun_process_fire" //from base of /obj/item/gun/proc/process_fire(): (atom/target, params, zone_override) diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index 2ecd77546d..64f0522460 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -21,6 +21,7 @@ RegisterSignal(parent, COMSIG_ADD_MOOD_EVENT, .proc/add_event) RegisterSignal(parent, COMSIG_CLEAR_MOOD_EVENT, .proc/clear_event) RegisterSignal(parent, COMSIG_MODIFY_SANITY, .proc/modify_sanity) + RegisterSignal(parent, COMSIG_LIVING_REVIVE, .proc/on_revive) RegisterSignal(parent, COMSIG_MOB_HUD_CREATED, .proc/modify_hud) var/mob/living/owner = parent @@ -81,7 +82,8 @@ msg += "I don't have much of a reaction to anything right now.\n" to_chat(user || parent, msg) -/datum/component/mood/proc/update_mood() //Called whenever a mood event is added or removed +///Called after moodevent/s have been added/removed. +/datum/component/mood/proc/update_mood() mood = 0 shown_mood = 0 for(var/i in mood_events) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index ef3d4cbb98..a8217c5fe3 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -803,7 +803,7 @@ hud_used.staminas?.update_icon_state() hud_used.staminabuffer?.update_icon_state() -/mob/living/carbon/human/fully_heal(admin_revive = 0) +/mob/living/carbon/human/fully_heal(admin_revive = FALSE) if(admin_revive) regenerate_limbs() regenerate_organs() diff --git a/code/modules/mob/living/carbon/human/species_types/dullahan.dm b/code/modules/mob/living/carbon/human/species_types/dullahan.dm index 220e639e34..499e3b0276 100644 --- a/code/modules/mob/living/carbon/human/species_types/dullahan.dm +++ b/code/modules/mob/living/carbon/human/species_types/dullahan.dm @@ -135,7 +135,7 @@ RegisterSignal(owner, COMSIG_CLICK_SHIFT, .proc/examinate_check) RegisterSignal(src, COMSIG_ATOM_HEARER_IN_VIEW, .proc/include_owner) RegisterSignal(owner, COMSIG_LIVING_REGENERATE_LIMBS, .proc/unlist_head) - RegisterSignal(owner, COMSIG_LIVING_FULLY_HEAL, .proc/retrieve_head) + RegisterSignal(owner, COMSIG_LIVING_REVIVE, .proc/retrieve_head) /obj/item/dullahan_relay/proc/examinate_check(atom/source, mob/user) if(user.client.eye == src) @@ -148,8 +148,9 @@ /obj/item/dullahan_relay/proc/unlist_head(datum/source, noheal = FALSE, list/excluded_limbs) excluded_limbs |= BODY_ZONE_HEAD // So we don't gib when regenerating limbs. -/obj/item/dullahan_relay/proc/retrieve_head(datum/source, admin_revive = FALSE) - if(admin_revive) //retrieving the owner's head for ahealing purposes. +//Retrieving the owner's head for better ahealing. +/obj/item/dullahan_relay/proc/retrieve_head(datum/source, full_heal, admin_revive) + if(admin_revive) var/obj/item/bodypart/head/H = loc var/turf/T = get_turf(owner) if(H && istype(H) && T && !(H in owner.GetAllContents())) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 0c11d6ab42..212ea79e9d 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -482,7 +482,8 @@ med_hud_set_status() //proc used to ressuscitate a mob -/mob/living/proc/revive(full_heal = 0, admin_revive = 0) +/mob/living/proc/revive(full_heal = FALSE, admin_revive = FALSE) + SEND_SIGNAL(src, COMSIG_LIVING_REVIVE, full_heal, admin_revive) if(full_heal) fully_heal(admin_revive) if(stat == DEAD && can_be_revived()) //in some cases you can't revive (e.g. no brain) @@ -528,11 +529,6 @@ fire_stacks = 0 confused = 0 update_canmove() - var/datum/component/mood/mood = GetComponent(/datum/component/mood) - if (mood) - QDEL_LIST_ASSOC_VAL(mood.mood_events) - mood.sanity = SANITY_GREAT - mood.update_mood() //Heal all organs if(iscarbon(src)) var/mob/living/carbon/C = src @@ -540,8 +536,6 @@ for(var/organ in C.internal_organs) var/obj/item/organ/O = organ O.setOrganDamage(0) - SEND_SIGNAL(src, COMSIG_LIVING_FULLY_HEAL, admin_revive) - //proc called by revive(), to check if we can actually ressuscitate the mob (we don't want to revive him and have him instantly die again) /mob/living/proc/can_be_revived() From ee1f61b5de65dbe13faa74bfb235cded4c19c94b Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Wed, 19 Feb 2020 14:26:11 +0100 Subject: [PATCH 093/137] F --- code/datums/components/mood.dm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index 64f0522460..e71cd5a43e 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -236,6 +236,15 @@ qdel(event) update_mood() +/datum/component/mood/proc/remove_temp_moods() //Removes all temp moodsfor(var/i in mood_events) + for(var/i in mood_events) + var/datum/mood_event/moodlet = mood_events[i] + if(!moodlet || !moodlet.timeout) + continue + mood_events -= moodlet.category + qdel(moodlet) + update_mood() + /datum/component/mood/proc/modify_hud(datum/source) var/mob/living/owner = parent var/datum/hud/hud = owner.hud_used @@ -272,5 +281,12 @@ if(0 to NUTRITION_LEVEL_STARVING) add_event(null, "nutrition", /datum/mood_event/starving) +///Called when parent is ahealed. +/datum/component/mood/proc/on_revive(datum/source, full_heal) + if(!full_heal) + return + remove_temp_moods() + setSanity(initial(sanity)) + #undef MINOR_INSANITY_PEN #undef MAJOR_INSANITY_PEN From eb342d15919015d935f6cca1b16615c1f838c978 Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Wed, 19 Feb 2020 17:14:30 +0100 Subject: [PATCH 094/137] Update mood.dm --- code/datums/components/mood.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index e71cd5a43e..5e9382f88e 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -241,7 +241,7 @@ var/datum/mood_event/moodlet = mood_events[i] if(!moodlet || !moodlet.timeout) continue - mood_events -= moodlet.category + mood_events -= i qdel(moodlet) update_mood() From c920d198e220971c0fd59b13f7de4822d66fd5f7 Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 19 Feb 2020 12:17:57 -0500 Subject: [PATCH 095/137] Update Viro to /tg/ standards --- .../advance/symptoms/disfiguration.dm | 50 ++++++++ code/datums/diseases/advance/symptoms/skin.dm | 79 +++---------- .../diseases/advance/symptoms/symptoms.dm | 5 +- .../antagonists/disease/disease_abilities.dm | 108 +++++++++--------- tgstation.dme | 2 + 5 files changed, 122 insertions(+), 122 deletions(-) create mode 100644 code/datums/diseases/advance/symptoms/disfiguration.dm diff --git a/code/datums/diseases/advance/symptoms/disfiguration.dm b/code/datums/diseases/advance/symptoms/disfiguration.dm new file mode 100644 index 0000000000..4a4b704dc0 --- /dev/null +++ b/code/datums/diseases/advance/symptoms/disfiguration.dm @@ -0,0 +1,50 @@ +/* +////////////////////////////////////// +Disfiguration + + Hidden. + No change to resistance. + Increases stage speed. + Slightly increases transmittability. + Critical Level. + +BONUS + Adds disfiguration trait making the mob appear as "Unknown" to others. + +////////////////////////////////////// +*/ + +/datum/symptom/disfiguration + + name = "Disfiguration" + desc = "The virus liquefies facial muscles, disfiguring the host." + stealth = 2 + resistance = 0 + stage_speed = 3 + transmittable = 1 + level = 5 + severity = 1 + symptom_delay_min = 25 + symptom_delay_max = 75 + +/datum/symptom/disfiguration/Activate(datum/disease/advance/A) + . = ..() + if(!.) + return + var/mob/living/M = A.affected_mob + if (HAS_TRAIT(M, TRAIT_DISFIGURED)) + return + switch(A.stage) + if(5) + ADD_TRAIT(M, TRAIT_DISFIGURED, DISEASE_TRAIT) + M.visible_message("[M]'s face appears to cave in!", "You feel your face crumple and cave in!") + else + M.visible_message("[M]'s face begins to contort...", "Your face feels wet and malleable...") + + +/datum/symptom/disfiguration/End(datum/disease/advance/A) + . = ..() + if(!.) + return + if(A.affected_mob) + REMOVE_TRAIT(A.affected_mob, TRAIT_DISFIGURED, DISEASE_TRAIT) \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/skin.dm b/code/datums/diseases/advance/symptoms/skin.dm index 300eecc80e..e35fe741fd 100644 --- a/code/datums/diseases/advance/symptoms/skin.dm +++ b/code/datums/diseases/advance/symptoms/skin.dm @@ -1,68 +1,22 @@ /* ////////////////////////////////////// -Vitiligo +Polyvitiligo - Hidden. - No change to resistance. - Increases stage speed. - Slightly increases transmittability. - Critical Level. - -BONUS - Makes the mob lose skin pigmentation. - -////////////////////////////////////// -*/ - -/datum/symptom/vitiligo - - name = "Vitiligo" - desc = "The virus destroys skin pigment cells, causing rapid loss of pigmentation in the host." - stealth = 2 - resistance = 0 - stage_speed = 3 - transmittable = 1 - level = 5 - severity = 1 - symptom_delay_min = 25 - symptom_delay_max = 75 - -/datum/symptom/vitiligo/Activate(datum/disease/advance/A) - if(!..()) - return - var/mob/living/M = A.affected_mob - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.skin_tone == "albino") - return - switch(A.stage) - if(5) - H.skin_tone = "albino" - H.update_body(0) - else - H.visible_message("[H] looks a bit pale...", "Your skin suddenly appears lighter...") - - -/* -////////////////////////////////////// -Revitiligo - - Slightly noticable. + Noticeable. Increases resistance. Increases stage speed slightly. Increases transmission. Critical Level. BONUS - Makes the mob gain skin pigmentation. + Makes the mob gain a random crayon powder colorful reagent. ////////////////////////////////////// */ -/datum/symptom/revitiligo - - name = "Revitiligo" - desc = "The virus causes increased production of skin pigment cells, making the host's skin grow darker over time." +/datum/symptom/polyvitiligo + name = "Polyvitiligo" + desc = "The virus replaces the melanin in the skin with reactive pigment." stealth = -1 resistance = 3 stage_speed = 1 @@ -72,17 +26,16 @@ BONUS symptom_delay_min = 7 symptom_delay_max = 14 -/datum/symptom/revitiligo/Activate(datum/disease/advance/A) +/datum/symptom/polyvitiligo/Activate(datum/disease/advance/A) if(!..()) return var/mob/living/M = A.affected_mob - if(ishuman(M)) - var/mob/living/carbon/human/H = M - if(H.skin_tone == "african2") - return - switch(A.stage) - if(5) - H.skin_tone = "african2" - H.update_body(0) - else - H.visible_message("[H] looks a bit dark...", "Your skin suddenly appears darker...") + switch(A.stage) + if(5) + var/static/list/banned_reagents = list(/datum/reagent/colorful_reagent/crayonpowder/invisible, /datum/reagent/colorful_reagent/crayonpowder/white) + var/color = pick(subtypesof(/datum/reagent/colorful_reagent/crayonpowder) - banned_reagents) + if(M.reagents.total_volume <= (M.reagents.maximum_volume/10)) // no flooding humans with 1000 units of colorful reagent + M.reagents.add_reagent(color, 5) + else + if (prob(50)) // spam + M.visible_message("[M] looks rather vibrant...", "The colors, man, the colors...") \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/symptoms.dm b/code/datums/diseases/advance/symptoms/symptoms.dm index fef6453b3a..a6ea7de5a0 100644 --- a/code/datums/diseases/advance/symptoms/symptoms.dm +++ b/code/datums/diseases/advance/symptoms/symptoms.dm @@ -38,10 +38,11 @@ return CRASH("We couldn't assign an ID!") -// Called when processing of the advance disease that holds this symptom infects a host and upon each Refresh() of that advance disease. +// Called when processing of the advance disease, which holds this symptom, starts. /datum/symptom/proc/Start(datum/disease/advance/A) if(neutered) return FALSE + next_activation = world.time + rand(symptom_delay_min * 10, symptom_delay_max * 10) //so it doesn't instantly activate on infection return TRUE // Called when the advance disease is going to be deleted or when the advance disease stops processing. @@ -59,7 +60,7 @@ next_activation = world.time + rand(symptom_delay_min * 10, symptom_delay_max * 10) return TRUE -/datum/symptom/proc/on_stage_change(datum/disease/advance/A) +/datum/symptom/proc/on_stage_change(new_stage, datum/disease/advance/A) if(neutered) return FALSE return TRUE diff --git a/code/modules/antagonists/disease/disease_abilities.dm b/code/modules/antagonists/disease/disease_abilities.dm index 7b30d10c5d..e8dcaf9cc7 100644 --- a/code/modules/antagonists/disease/disease_abilities.dm +++ b/code/modules/antagonists/disease/disease_abilities.dm @@ -5,49 +5,49 @@ is currently following. */ GLOBAL_LIST_INIT(disease_ability_singletons, list( - new /datum/disease_ability/action/cough, - new /datum/disease_ability/action/sneeze, - new /datum/disease_ability/action/infect, - new /datum/disease_ability/symptom/mild/cough, - new /datum/disease_ability/symptom/mild/sneeze, - new /datum/disease_ability/symptom/medium/shedding, - new /datum/disease_ability/symptom/medium/beard, - new /datum/disease_ability/symptom/medium/hallucigen, - new /datum/disease_ability/symptom/medium/choking, - new /datum/disease_ability/symptom/medium/confusion, - new /datum/disease_ability/symptom/medium/vomit, - new /datum/disease_ability/symptom/medium/voice_change, - new /datum/disease_ability/symptom/medium/visionloss, - new /datum/disease_ability/symptom/medium/deafness, - new /datum/disease_ability/symptom/powerful/narcolepsy, - new /datum/disease_ability/symptom/medium/fever, - new /datum/disease_ability/symptom/medium/shivering, - new /datum/disease_ability/symptom/medium/headache, - new /datum/disease_ability/symptom/medium/nano_boost, - new /datum/disease_ability/symptom/medium/nano_destroy, - new /datum/disease_ability/symptom/medium/viraladaptation, - new /datum/disease_ability/symptom/medium/viralevolution, - new /datum/disease_ability/symptom/medium/vitiligo, - new /datum/disease_ability/symptom/medium/revitiligo, - new /datum/disease_ability/symptom/medium/itching, - new /datum/disease_ability/symptom/medium/heal/weight_loss, - new /datum/disease_ability/symptom/medium/heal/sensory_restoration, - new /datum/disease_ability/symptom/medium/heal/mind_restoration, - new /datum/disease_ability/symptom/powerful/fire, - new /datum/disease_ability/symptom/powerful/flesh_eating, -// new /datum/disease_ability/symptom/powerful/genetic_mutation, - new /datum/disease_ability/symptom/powerful/inorganic_adaptation, - new /datum/disease_ability/symptom/powerful/heal/starlight, - new /datum/disease_ability/symptom/powerful/heal/oxygen, - new /datum/disease_ability/symptom/powerful/heal/chem, - new /datum/disease_ability/symptom/powerful/heal/metabolism, - new /datum/disease_ability/symptom/powerful/heal/dark, - new /datum/disease_ability/symptom/powerful/heal/water, - new /datum/disease_ability/symptom/powerful/heal/plasma, - new /datum/disease_ability/symptom/powerful/heal/radiation, - new /datum/disease_ability/symptom/powerful/heal/coma, - new /datum/disease_ability/symptom/powerful/youth - )) +new /datum/disease_ability/action/cough, +new /datum/disease_ability/action/sneeze, +new /datum/disease_ability/action/infect, +new /datum/disease_ability/symptom/mild/cough, +new /datum/disease_ability/symptom/mild/sneeze, +new /datum/disease_ability/symptom/medium/shedding, +new /datum/disease_ability/symptom/medium/beard, +new /datum/disease_ability/symptom/medium/hallucigen, +new /datum/disease_ability/symptom/medium/choking, +new /datum/disease_ability/symptom/medium/confusion, +new /datum/disease_ability/symptom/medium/vomit, +new /datum/disease_ability/symptom/medium/voice_change, +new /datum/disease_ability/symptom/medium/visionloss, +new /datum/disease_ability/symptom/medium/deafness, +new /datum/disease_ability/symptom/powerful/narcolepsy, +new /datum/disease_ability/symptom/medium/fever, +new /datum/disease_ability/symptom/medium/shivering, +new /datum/disease_ability/symptom/medium/headache, +new /datum/disease_ability/symptom/medium/nano_boost, +new /datum/disease_ability/symptom/medium/nano_destroy, +new /datum/disease_ability/symptom/medium/viraladaptation, +new /datum/disease_ability/symptom/medium/viralevolution, +new /datum/disease_ability/symptom/medium/disfiguration, +new /datum/disease_ability/symptom/medium/polyvitiligo, +new /datum/disease_ability/symptom/medium/itching, +new /datum/disease_ability/symptom/medium/heal/weight_loss, +new /datum/disease_ability/symptom/medium/heal/sensory_restoration, +new /datum/disease_ability/symptom/medium/heal/mind_restoration, +new /datum/disease_ability/symptom/powerful/fire, +new /datum/disease_ability/symptom/powerful/flesh_eating, +new /datum/disease_ability/symptom/powerful/genetic_mutation, +new /datum/disease_ability/symptom/powerful/inorganic_adaptation, +new /datum/disease_ability/symptom/powerful/heal/starlight, +new /datum/disease_ability/symptom/powerful/heal/oxygen, +new /datum/disease_ability/symptom/powerful/heal/chem, +new /datum/disease_ability/symptom/powerful/heal/metabolism, +new /datum/disease_ability/symptom/powerful/heal/dark, +new /datum/disease_ability/symptom/powerful/heal/water, +new /datum/disease_ability/symptom/powerful/heal/plasma, +new /datum/disease_ability/symptom/powerful/heal/radiation, +new /datum/disease_ability/symptom/powerful/heal/coma, +new /datum/disease_ability/symptom/powerful/youth +)) /datum/disease_ability var/name @@ -57,7 +57,7 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( var/short_desc = "" var/long_desc = "" var/stat_block = "" - var/threshold_block = list() + var/threshold_block = "" var/category = "" var/list/symptoms @@ -76,7 +76,7 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( resistance += initial(S.resistance) stage_speed += initial(S.stage_speed) transmittable += initial(S.transmittable) - threshold_block += initial(S.threshold_desc) + threshold_block += "

[initial(S.threshold_desc)]" stat_block = "Resistance: [resistance]
Stealth: [stealth]
Stage Speed: [stage_speed]
Transmissibility: [transmittable]

" if(symptoms.len == 1) //lazy boy's dream name = initial(S.name) @@ -106,10 +106,8 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( for(var/T in symptoms) var/datum/symptom/S = new T() SD.symptoms += S - S.OnAdd(SD) if(SD.processing) - if(S.Start(SD)) - S.next_activation = world.time + rand(S.symptom_delay_min * 10, S.symptom_delay_max * 10) + S.Start(SD) SD.Refresh() for(var/T in actions) var/datum/action/A = new T() @@ -136,7 +134,6 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( var/datum/symptom/S = locate(T) in SD.symptoms if(S) SD.symptoms -= S - S.OnRemove(SD) if(SD.processing) S.End(SD) qdel(S) @@ -296,7 +293,6 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( cost = 8 category = "Symptom (Strong+)" - /******MILD******/ /datum/disease_ability/symptom/mild/cough @@ -377,11 +373,11 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( /datum/disease_ability/symptom/medium/viralevolution symptoms = list(/datum/symptom/viralevolution) -/datum/disease_ability/symptom/medium/vitiligo - symptoms = list(/datum/symptom/vitiligo) +/datum/disease_ability/symptom/medium/polyvitiligo + symptoms = list(/datum/symptom/polyvitiligo) -/datum/disease_ability/symptom/medium/revitiligo - symptoms = list(/datum/symptom/revitiligo) +/datum/disease_ability/symptom/medium/disfiguration + symptoms = list(/datum/symptom/disfiguration) /datum/disease_ability/symptom/medium/itching symptoms = list(/datum/symptom/itching) @@ -409,11 +405,9 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( /datum/disease_ability/symptom/powerful/flesh_eating symptoms = list(/datum/symptom/flesh_eating) -/* /datum/disease_ability/symptom/powerful/genetic_mutation symptoms = list(/datum/symptom/genetic_mutation) cost = 8 -*/ /datum/disease_ability/symptom/powerful/inorganic_adaptation symptoms = list(/datum/symptom/inorganic_adaptation) @@ -457,4 +451,4 @@ GLOBAL_LIST_INIT(disease_ability_singletons, list( /datum/disease_ability/symptom/powerful/heal/coma symptoms = list(/datum/symptom/heal/coma) short_desc = "Cause victims to fall into a healing coma when hurt." - long_desc = "Cause victims to fall into a healing coma when hurt." + long_desc = "Cause victims to fall into a healing coma when hurt." \ No newline at end of file diff --git a/tgstation.dme b/tgstation.dme index 28f469ac25..b5feb7caa6 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -460,10 +460,12 @@ #include "code\datums\diseases\advance\symptoms\confusion.dm" #include "code\datums\diseases\advance\symptoms\cough.dm" #include "code\datums\diseases\advance\symptoms\deafness.dm" +#include "code\datums\diseases\advance\symptoms\disfiguration.dm" #include "code\datums\diseases\advance\symptoms\dizzy.dm" #include "code\datums\diseases\advance\symptoms\fever.dm" #include "code\datums\diseases\advance\symptoms\fire.dm" #include "code\datums\diseases\advance\symptoms\flesh_eating.dm" +#include "code\datums\diseases\advance\symptoms\genetics.dm" #include "code\datums\diseases\advance\symptoms\hallucigen.dm" #include "code\datums\diseases\advance\symptoms\headache.dm" #include "code\datums\diseases\advance\symptoms\heal.dm" From f532c1a44464f5518e5eb3bb60632b6c2bce3b04 Mon Sep 17 00:00:00 2001 From: Kraseo Date: Wed, 19 Feb 2020 18:40:30 +0100 Subject: [PATCH 096/137] i spent 2 hours figuring out how to fix this --- .../living/carbon/human/species_types/shadowpeople.dm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm index 49af501942..8670e9ee4b 100644 --- a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm @@ -213,6 +213,16 @@ PDA.f_lum = 0 PDA.update_icon() visible_message("The light in [PDA] shorts out!") + else if(istype(O, /obj/item/gun)) + var/obj/item/gun/weapon = O + if(weapon.gun_light) + var/obj/item/flashlight/seclite/light = weapon.gun_light + light.on = FALSE + light.brightness_on = 0 + light.flashlight_power = 0 + light.update_brightness() + weapon.update_gunlight() + visible_message("[light] on [O] flickers out and dies!") else visible_message("[O] is disintegrated by [src]!") O.burn() From af6df2784cc39b498afb91df95870e16ffacbd40 Mon Sep 17 00:00:00 2001 From: necromanceranne Date: Thu, 20 Feb 2020 04:46:30 +1100 Subject: [PATCH 097/137] holy shit this was still in the fucking game --- code/game/objects/items/devices/chameleonproj.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/game/objects/items/devices/chameleonproj.dm b/code/game/objects/items/devices/chameleonproj.dm index c4ffa9f0ff..e87987600a 100644 --- a/code/game/objects/items/devices/chameleonproj.dm +++ b/code/game/objects/items/devices/chameleonproj.dm @@ -49,6 +49,10 @@ return if(istype(target, /obj/structure/falsewall)) return + if(target.alpha != 255) + return + if(target.invisibility != 0) + return if(iseffect(target)) if(!(istype(target, /obj/effect/decal))) //be a footprint return From 395fb8de3e540d206e92c0c6496a187f72b8dee0 Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 19 Feb 2020 10:49:26 -0800 Subject: [PATCH 098/137] Added licking pref. --- code/modules/vore/eating/vore.dm | 1 + code/modules/vore/eating/vorepanel.dm | 38 +++++++++++++++------------ 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/code/modules/vore/eating/vore.dm b/code/modules/vore/eating/vore.dm index 29391547bd..35f0653617 100644 --- a/code/modules/vore/eating/vore.dm +++ b/code/modules/vore/eating/vore.dm @@ -40,6 +40,7 @@ GLOBAL_LIST_EMPTY(vore_preferences_datums) var/digestable = FALSE var/devourable = FALSE var/feeding = FALSE + var/lickable = FALSE // var/allowmobvore = TRUE var/list/belly_prefs = list() var/vore_taste = "nothing in particular" diff --git a/code/modules/vore/eating/vorepanel.dm b/code/modules/vore/eating/vorepanel.dm index 962fe54af7..937bac9e57 100644 --- a/code/modules/vore/eating/vorepanel.dm +++ b/code/modules/vore/eating/vorepanel.dm @@ -242,22 +242,15 @@ dat += "Reload Slot Prefs" dat += "


" - switch(user.digestable) - if(TRUE) - dat += "
Toggle Digestable (Currently: ON)" - if(FALSE) - dat += "
Toggle Digestable (Currently: OFF)" - switch(user.devourable) - if(TRUE) - dat += "
Toggle Devourable (Currently: ON)" - if(FALSE) - dat += "
Toggle Devourable (Currently: OFF)" - switch(user.feeding) - if(TRUE) - dat += "
Toggle Feeding (Currently: ON)" - if(FALSE) - dat += "
Toggle Feeding (Currently: OFF)" - + var/pref_on = "#173d15" + var/pref_off = "#990000" + dat += "
Toggle Digestable (Currently: [user.digestable ? "ON" : "OFF"])" + dat += "
Toggle Devourable (Currently: [user.devourable ? "ON" : "OFF"])" + dat += "
Toggle Feeding (Currently: [user.feeding ? "ON" : "OFF"])" + if(user.client.prefs_vr) + dat += "
Toggle Licking (Currently: [user.client.prefs_vr.lickable ? "ON" : "OFF"])" + else + dat += "
Licking not toggleable (OFF))" //Returns the dat html to the vore_look return dat @@ -734,5 +727,16 @@ if(user.client.prefs_vr) user.client.prefs_vr.feeding = user.feeding + if(href_list["toggledlickable"]) + if(user.client.prefs_vr) + var/choice = alert(user, "This button is to toggle your ability to be licked. Being licked is currently: [user.client.prefs_vr.lickable ? "Allowed" : "Prevented"]", "", "Allow Licking", "Cancel", "Prevent Licking") + switch(choice) + if("Cancel") + return FALSE + if("Allow Licking") + user.client.prefs_vr.lickable = TRUE + if("Prevent Licking") + user.client.prefs_vr.lickable = FALSE + //Refresh when interacted with, returning 1 makes vore_look.Topic update - return TRUE \ No newline at end of file + return TRUE From b76b346f2dec83d95b3f140e8c77f1f97f06fe75 Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 19 Feb 2020 10:56:43 -0800 Subject: [PATCH 099/137] whoops --- code/modules/vore/eating/vorepanel.dm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/code/modules/vore/eating/vorepanel.dm b/code/modules/vore/eating/vorepanel.dm index 937bac9e57..a2746f35e8 100644 --- a/code/modules/vore/eating/vorepanel.dm +++ b/code/modules/vore/eating/vorepanel.dm @@ -245,12 +245,10 @@ var/pref_on = "#173d15" var/pref_off = "#990000" dat += "
Toggle Digestable (Currently: [user.digestable ? "ON" : "OFF"])" - dat += "
Toggle Devourable (Currently: [user.devourable ? "ON" : "OFF"])" - dat += "
Toggle Feeding (Currently: [user.feeding ? "ON" : "OFF"])" + dat += "
Toggle Devourable (Currently: [user.devourable ? "ON" : "OFF"])" + dat += "
Toggle Feeding (Currently: [user.feeding ? "ON" : "OFF"])" if(user.client.prefs_vr) - dat += "
Toggle Licking (Currently: [user.client.prefs_vr.lickable ? "ON" : "OFF"])" - else - dat += "
Licking not toggleable (OFF))" + dat += "
Toggle Licking (Currently: [user.client.prefs_vr.lickable ? "ON" : "OFF"])" //Returns the dat html to the vore_look return dat From 3bf1ac590c4a22a85539811e6c9487a9499e53ec Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 19 Feb 2020 11:00:56 -0800 Subject: [PATCH 100/137] it's probably better that it works --- code/modules/vore/eating/living.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/vore/eating/living.dm b/code/modules/vore/eating/living.dm index bf41c46332..5f280fb04d 100644 --- a/code/modules/vore/eating/living.dm +++ b/code/modules/vore/eating/living.dm @@ -384,6 +384,9 @@ if(!istype(tasted)) return + if(!tasted.client?.prefs_vr.lickable) + return + if(src == stat) return From cd56e29a98d7dd0b832c8bb5fff6cd8ad44d5677 Mon Sep 17 00:00:00 2001 From: Kraseo Date: Thu, 20 Feb 2020 00:18:43 +0100 Subject: [PATCH 101/137] drink my ass kevinz --- .../living/carbon/human/species_types/shadowpeople.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm index 8670e9ee4b..70abba5a01 100644 --- a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm @@ -217,12 +217,12 @@ var/obj/item/gun/weapon = O if(weapon.gun_light) var/obj/item/flashlight/seclite/light = weapon.gun_light - light.on = FALSE - light.brightness_on = 0 - light.flashlight_power = 0 - light.update_brightness() + light.forceMove(get_turf(weapon)) + light.burn() + weapon.gun_light = null weapon.update_gunlight() - visible_message("[light] on [O] flickers out and dies!") + QDEL_NULL(weapon.alight) + visible_message("[light] on [O] flickers out and disintegrates!") else visible_message("[O] is disintegrated by [src]!") O.burn() From 901b54b7e8d79d59eb51b9387d2bf4d4aaa1628c Mon Sep 17 00:00:00 2001 From: Arturlang Date: Thu, 20 Feb 2020 01:38:28 +0200 Subject: [PATCH 102/137] Webedit man to the doom and rescue --- code/modules/research/nanites/public_chamber.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/nanites/public_chamber.dm b/code/modules/research/nanites/public_chamber.dm index 4d30d091ea..76392c66e9 100644 --- a/code/modules/research/nanites/public_chamber.dm +++ b/code/modules/research/nanites/public_chamber.dm @@ -163,7 +163,7 @@ return if(L.mob_biotypes & (MOB_ORGANIC | MOB_UNDEAD)) inject_nanites(attacker) -5 + /obj/machinery/public_nanite_chamber/open_machine() if(state_open) return FALSE From 6b1a721f1ccd2841112bdf8e0bab16c3a8ce420e Mon Sep 17 00:00:00 2001 From: Hatterhat Date: Wed, 19 Feb 2020 17:51:18 -0600 Subject: [PATCH 103/137] literally a mouth cover check --- code/modules/food_and_drinks/food/snacks_pie.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index 0c3623efda..87c5fdc100 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -53,7 +53,8 @@ H.adjust_blurriness(1) H.visible_message("[H] is creamed by [src]!", "You've been creamed by [src]!") playsound(H, "desceration", 50, TRUE) - reagents.trans_to(H,15) //Cream pie combat + if(H.is_mouth_covered()) + reagents.trans_to(H,15) //Cream pie combat if(!H.creamed) // one layer at a time H.add_overlay(creamoverlay) H.creamed = TRUE From 9929cecec5ad22b995ccc282bfe3973624e93804 Mon Sep 17 00:00:00 2001 From: Hatterhat Date: Wed, 19 Feb 2020 20:01:40 -0600 Subject: [PATCH 104/137] wack --- code/modules/food_and_drinks/food/snacks_pie.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/food/snacks_pie.dm b/code/modules/food_and_drinks/food/snacks_pie.dm index 87c5fdc100..1533f067ab 100644 --- a/code/modules/food_and_drinks/food/snacks_pie.dm +++ b/code/modules/food_and_drinks/food/snacks_pie.dm @@ -53,7 +53,7 @@ H.adjust_blurriness(1) H.visible_message("[H] is creamed by [src]!", "You've been creamed by [src]!") playsound(H, "desceration", 50, TRUE) - if(H.is_mouth_covered()) + if(!H.is_mouth_covered()) reagents.trans_to(H,15) //Cream pie combat if(!H.creamed) // one layer at a time H.add_overlay(creamoverlay) From c498b1df95ef65a7fe9b4fdbf9f8eea5ba33e443 Mon Sep 17 00:00:00 2001 From: MrJWhit <48370570+MrJWhit@users.noreply.github.com> Date: Wed, 19 Feb 2020 22:00:15 -0500 Subject: [PATCH 105/137] Quick TEG update asdf --- .../StationRuins/Box/Engine/engine_teg.dmm | 104 +++++++++--------- 1 file changed, 51 insertions(+), 53 deletions(-) diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_teg.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_teg.dmm index 42ed0035ce..6a134fca70 100644 --- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_teg.dmm +++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_teg.dmm @@ -189,8 +189,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "gA" = ( -/obj/machinery/igniter{ - id = "TEG_igniter" +/obj/machinery/atmospherics/components/unary/outlet_injector{ + dir = 1; + injecting = 50; + on = 1 }, /turf/open/floor/engine/vacuum, /area/engine/engineering) @@ -390,21 +392,23 @@ /turf/open/floor/plating, /area/engine/engineering) "nc" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector{ - dir = 1 - }, +/obj/machinery/atmospherics/pipe/simple/dark/visible, +/obj/effect/spawner/structure/window/plasma/reinforced, /turf/open/floor/engine/vacuum, /area/engine/engineering) "nk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 +/obj/machinery/atmospherics/components/binary/pump{ + name = "Hot to Burn Chamber" }, -/turf/closed/wall/r_wall, +/turf/open/floor/plasteel, /area/engine/engineering) "nD" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 9 }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/engine/vacuum, /area/engine/engineering) "nL" = ( @@ -461,10 +465,11 @@ /turf/open/floor/plasteel, /area/engine/engineering) "oQ" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, /obj/structure/sign/warning/securearea{ pixel_x = -32 }, +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/atmospherics/pipe/heat_exchanging/junction, /turf/open/floor/engine/vacuum, /area/engine/engineering) "oS" = ( @@ -728,16 +733,16 @@ /area/engine/engineering) "vq" = ( /obj/structure/table/reinforced, -/obj/item/storage/box/lights/mixed, -/obj/item/storage/box/lights/mixed{ - pixel_x = 3; - pixel_y = 3 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/camera{ c_tag = "TEG - South West"; dir = 4 }, +/obj/item/analyzer, +/obj/item/analyzer{ + pixel_x = 7; + pixel_y = 3 + }, /turf/open/floor/plasteel, /area/engine/engineering) "vG" = ( @@ -798,17 +803,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "xD" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, /obj/machinery/atmospherics/components/binary/pump{ dir = 8; name = "Mix to Engine" }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Atmos to Loop" - }, /turf/open/floor/plasteel, /area/engine/engineering) "yf" = ( @@ -837,11 +835,7 @@ /area/engine/engineering) "zx" = ( /obj/structure/table/wood, -/obj/item/electronics/apc, -/obj/item/electronics/apc{ - pixel_x = 3; - pixel_y = 3 - }, +/obj/item/analyzer, /turf/open/floor/plasteel, /area/engine/engineering) "zG" = ( @@ -855,8 +849,8 @@ /turf/open/space/basic, /area/space) "Am" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4 +/obj/machinery/igniter{ + id = "TEG_igniter" }, /turf/open/floor/engine/vacuum, /area/engine/engineering) @@ -962,10 +956,11 @@ /turf/open/floor/plasteel, /area/engine/engineering) "BY" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, /obj/structure/sign/warning/securearea{ pixel_x = 32 }, +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/atmospherics/pipe/heat_exchanging/junction, /turf/open/floor/engine/vacuum, /area/engine/engineering) "CH" = ( @@ -1099,7 +1094,8 @@ /area/engine/engineering) "FW" = ( /obj/machinery/atmospherics/components/binary/pump{ - dir = 1 + dir = 1; + name = "Burn Chamber to Hot" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/light{ @@ -1177,7 +1173,9 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "Hp" = ( -/obj/machinery/atmospherics/components/binary/pump, +/obj/machinery/atmospherics/components/binary/pump{ + name = "Space Loop Bypass" + }, /turf/open/floor/plasteel, /area/engine/engineering) "HF" = ( @@ -1204,11 +1202,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "IA" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 }, -/turf/open/floor/engine/vacuum, +/turf/closed/wall/r_wall, /area/engine/engineering) "IP" = ( /obj/machinery/portable_atmospherics/canister/oxygen, @@ -1290,11 +1287,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"Kx" = ( -/obj/effect/spawner/structure/window/plasma/reinforced, -/obj/machinery/atmospherics/pipe/heat_exchanging/junction, -/turf/open/floor/plasteel, -/area/engine/engineering) "KA" = ( /obj/structure/reagent_dispensers/watertank, /obj/effect/turf_decal/bot, @@ -1441,6 +1433,7 @@ }, /obj/machinery/airalarm{ dir = 1; + locked = 0; pixel_y = -22 }, /obj/machinery/light, @@ -1593,7 +1586,9 @@ /turf/open/floor/plasteel, /area/engine/engineering) "SE" = ( -/obj/machinery/atmospherics/components/binary/pump/on, +/obj/machinery/atmospherics/components/binary/pump/on{ + name = "Mix To Burn Chamber" + }, /turf/open/floor/plasteel, /area/engine/engineering) "ST" = ( @@ -1715,7 +1710,7 @@ "Vs" = ( /obj/machinery/atmospherics/components/binary/valve/digital/on{ dir = 4; - name = "Output Release" + name = "Cold to Space Loop" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, @@ -1780,7 +1775,7 @@ "XD" = ( /obj/machinery/atmospherics/components/binary/valve/digital/on{ dir = 4; - name = "Output Release" + name = "Space Loop to Cold" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/camera{ @@ -1799,6 +1794,9 @@ /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 4 }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, /turf/open/floor/engine/vacuum, /area/engine/engineering) "XP" = ( @@ -1857,8 +1855,8 @@ /area/engine/engineering) "YP" = ( /obj/structure/rack, -/obj/effect/spawner/lootdrop/maintenance, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/item/pipe_dispenser, /turf/open/floor/plasteel, /area/engine/engineering) "YQ" = ( @@ -1917,7 +1915,7 @@ /area/engine/engineering) "ZC" = ( /obj/machinery/atmospherics/pipe/simple/dark/visible, -/turf/open/floor/engine/vacuum, +/turf/open/space/basic, /area/engine/engineering) "ZT" = ( /turf/template_noop, @@ -2531,9 +2529,9 @@ Xe aR ZY QH -Hp -Kx -kS +nk +le +ZC oQ kS kS @@ -2588,11 +2586,11 @@ sH sH gq FW -Kx -kS +le +ZC BY kS -IA +kS nD ek Le @@ -2620,8 +2618,8 @@ yN yN yN yN -nk -MP +yN +IA fO Rh Rh From 00618dbc9bdebc3e8967e18e3932aefc8cb9a32d Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 19 Feb 2020 20:58:06 -0800 Subject: [PATCH 106/137] whoops option is a number --- code/controllers/subsystem/vote.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm index 9924ed7917..f3513b7af7 100644 --- a/code/controllers/subsystem/vote.dm +++ b/code/controllers/subsystem/vote.dm @@ -216,7 +216,7 @@ SUBSYSTEM_DEF(vote) for(var/ckey in voted) cur_choices[cur_choices[voted[ckey][1]]]++ // jesus christ how horrifying var/least_vote = 100000 - var/least_voted + var/least_voted = 1 for(var/i in 1 to cur_choices.len) var/option = cur_choices[i] if(cur_choices[option] > voted.len/2) @@ -227,8 +227,8 @@ SUBSYSTEM_DEF(vote) already_lost_runoff += cur_choices[least_voted] for(var/ckey in voted) voted[ckey] -= least_voted - for(var/option in cur_choices) - cur_choices[option] = 0 + for(var/i in 1 to cur_choices.len) + cur_choices[cur_choices[i]] = 0 /datum/controller/subsystem/vote/proc/announce_result() var/vote_title_text From d7403b3436b14299efe09b2e1133ecd327825bf5 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Wed, 19 Feb 2020 22:26:10 -0700 Subject: [PATCH 107/137] john doe --- code/modules/shuttle/emergency.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 2a33576373..a3cbe2c82d 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -206,7 +206,7 @@ return if(STAGE_1) var/datum/species/S = new - msg = "AUTHENTICATING - FAIL. AUTHENTICATING - FAIL. AUTHENTICATING - FAI###### Welcome, technician [S.random_name(pick(MALE, FEMALE))]." + msg = "AUTHENTICATING - FAIL. AUTHENTICATING - FAIL. AUTHENTICATING - FAI###### Welcome, technician JOHN DOE." qdel(S) if(STAGE_2) msg = "Warning: Navigational route fails \"IS_AUTHORIZED\". Please try againNN[scramble_message_replace_chars("againagainagainagainagain", 70)]." From 71c71766e68a3c5365b1f18fbdf74b50ba0cfccf Mon Sep 17 00:00:00 2001 From: Putnam Date: Wed, 19 Feb 2020 21:53:22 -0800 Subject: [PATCH 108/137] one of those runtimes that will never show up in play but boy howdy --- code/game/gamemodes/dynamic/dynamic_storytellers.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/gamemodes/dynamic/dynamic_storytellers.dm b/code/game/gamemodes/dynamic/dynamic_storytellers.dm index 303c436f99..069c73a421 100644 --- a/code/game/gamemodes/dynamic/dynamic_storytellers.dm +++ b/code/game/gamemodes/dynamic/dynamic_storytellers.dm @@ -57,7 +57,8 @@ Property weights are: mean += 2.5 if(CHAOS_MAX) mean += 5 - GLOB.dynamic_curve_centre += (mean/voters) + if(voters) + GLOB.dynamic_curve_centre += (mean/voters) GLOB.dynamic_forced_threat_level = forced_threat_level /datum/dynamic_storyteller/proc/get_midround_cooldown() From ca7e4842ee399cd9276585d68da375237d643b32 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 19 Feb 2020 23:57:01 -0600 Subject: [PATCH 109/137] Automatic changelog generation for PR #11168 [ci skip] --- html/changelogs/AutoChangeLog-pr-11168.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11168.yml diff --git a/html/changelogs/AutoChangeLog-pr-11168.yml b/html/changelogs/AutoChangeLog-pr-11168.yml new file mode 100644 index 0000000000..93caacdad1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11168.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - bugfix: "Runtime if nobody has a chaos pref set" From 296e845183433616188b14e5d4fcc804316045be Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:00:04 -0600 Subject: [PATCH 110/137] Automatic changelog generation for PR #11160 [ci skip] --- html/changelogs/AutoChangeLog-pr-11160.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11160.yml diff --git a/html/changelogs/AutoChangeLog-pr-11160.yml b/html/changelogs/AutoChangeLog-pr-11160.yml new file mode 100644 index 0000000000..cf0fc3253e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11160.yml @@ -0,0 +1,4 @@ +author: "Hatterhat" +delete-after: True +changes: + - balance: "Pie reagent transfer now requires an uncovered mouth." From ad337901e2e853a1bb5305a3c730822d233974bd Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:07:54 -0600 Subject: [PATCH 111/137] Automatic changelog generation for PR #11149 [ci skip] --- html/changelogs/AutoChangeLog-pr-11149.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11149.yml diff --git a/html/changelogs/AutoChangeLog-pr-11149.yml b/html/changelogs/AutoChangeLog-pr-11149.yml new file mode 100644 index 0000000000..bc9ce5eb9e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11149.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - bugfix: "Mining vendors no longer fail and eat your points iff you have precisely enough points to pay for an item" From 1cff36babdeae775f9b87e0243da1d7665766e0f Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:08:17 -0600 Subject: [PATCH 112/137] Automatic changelog generation for PR #11146 [ci skip] --- html/changelogs/AutoChangeLog-pr-11146.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11146.yml diff --git a/html/changelogs/AutoChangeLog-pr-11146.yml b/html/changelogs/AutoChangeLog-pr-11146.yml new file mode 100644 index 0000000000..09d3b0134b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11146.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - balance: "all supermatter damage is now hardcapped" From 5f44230442ad56c3120154e93c2ff9d6dbfebe6f Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:08:30 -0600 Subject: [PATCH 113/137] Automatic changelog generation for PR #11141 [ci skip] --- html/changelogs/AutoChangeLog-pr-11141.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11141.yml diff --git a/html/changelogs/AutoChangeLog-pr-11141.yml b/html/changelogs/AutoChangeLog-pr-11141.yml new file mode 100644 index 0000000000..68de20a632 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11141.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - balance: "pais are no longer fulltile click opacity." From 1b518b69c45ab3e936b92ca58c83f23c57fb01af Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:09:06 -0600 Subject: [PATCH 114/137] Automatic changelog generation for PR #11139 [ci skip] --- html/changelogs/AutoChangeLog-pr-11139.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11139.yml diff --git a/html/changelogs/AutoChangeLog-pr-11139.yml b/html/changelogs/AutoChangeLog-pr-11139.yml new file mode 100644 index 0000000000..99a7027977 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11139.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - balance: "pais can no longer bodyblock bullets" From ca7e4de5d4204aa8745b26489939c53c7bd27959 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:09:49 -0600 Subject: [PATCH 115/137] Automatic changelog generation for PR #11080 [ci skip] --- html/changelogs/AutoChangeLog-pr-11080.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11080.yml diff --git a/html/changelogs/AutoChangeLog-pr-11080.yml b/html/changelogs/AutoChangeLog-pr-11080.yml new file mode 100644 index 0000000000..1dd764cfc3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11080.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - balance: "Stunbatons changed yet again." From e36c5a10b32076a1ba8e99ab90e3dcd60f0ea8b0 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:14:17 -0600 Subject: [PATCH 116/137] Automatic changelog generation for PR #11166 [ci skip] --- html/changelogs/AutoChangeLog-pr-11166.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11166.yml diff --git a/html/changelogs/AutoChangeLog-pr-11166.yml b/html/changelogs/AutoChangeLog-pr-11166.yml new file mode 100644 index 0000000000..c812c77ad8 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11166.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - bugfix: "Fixed IRV." From c39d51465e484b439357adedb97f5ef9a90da6eb Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:24:53 -0600 Subject: [PATCH 117/137] Automatic changelog generation for PR #11033 [ci skip] --- html/changelogs/AutoChangeLog-pr-11033.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11033.yml diff --git a/html/changelogs/AutoChangeLog-pr-11033.yml b/html/changelogs/AutoChangeLog-pr-11033.yml new file mode 100644 index 0000000000..c5b9a2f65a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11033.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - rscadd: "cmo now gets advanced surgery drapes that techweb-sync for advanced surgeries without an operating console." From 6cb07e2c9059fd3aaa2daa55d67d36501cf9f93f Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:26:19 -0600 Subject: [PATCH 118/137] Automatic changelog generation for PR #11140 [ci skip] --- html/changelogs/AutoChangeLog-pr-11140.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11140.yml diff --git a/html/changelogs/AutoChangeLog-pr-11140.yml b/html/changelogs/AutoChangeLog-pr-11140.yml new file mode 100644 index 0000000000..1054039b53 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11140.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - balance: "pai radio short changed to 3 minutes down from 5" From 385cf77c6e0d9d528f04c0065e9dbcb04f474132 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:27:51 -0600 Subject: [PATCH 119/137] Automatic changelog generation for PR #11025 [ci skip] --- html/changelogs/AutoChangeLog-pr-11025.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11025.yml diff --git a/html/changelogs/AutoChangeLog-pr-11025.yml b/html/changelogs/AutoChangeLog-pr-11025.yml new file mode 100644 index 0000000000..af9ac20f62 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11025.yml @@ -0,0 +1,5 @@ +author: "Arturlang" +delete-after: True +changes: + - rscadd: "Nanite interfaces have gotten a rework to TGUI Next, and can now support sub-programs. +add:Adds the nanite sting program, which will allow you to manually sting people to give them nanites, changeling style." From c5c29faf4b4056aa7bc00734f18474a377205f47 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 04:48:08 -0600 Subject: [PATCH 120/137] Automatic changelog generation for PR #11136 [ci skip] --- html/changelogs/AutoChangeLog-pr-11136.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11136.yml diff --git a/html/changelogs/AutoChangeLog-pr-11136.yml b/html/changelogs/AutoChangeLog-pr-11136.yml new file mode 100644 index 0000000000..5289fc3492 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11136.yml @@ -0,0 +1,5 @@ +author: "Owai-Seek" +delete-after: True +changes: + - rscadd: "BROOM" + - tweak: "Janitor Vendor now has gear for two Janitors." From 6ffde67b7888372f4d179e228111c2431d953633 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 07:17:36 -0600 Subject: [PATCH 121/137] Automatic changelog generation for PR #11153 [ci skip] --- html/changelogs/AutoChangeLog-pr-11153.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11153.yml diff --git a/html/changelogs/AutoChangeLog-pr-11153.yml b/html/changelogs/AutoChangeLog-pr-11153.yml new file mode 100644 index 0000000000..bba1af88db --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11153.yml @@ -0,0 +1,5 @@ +author: "BuffEngineering, nemvar." +delete-after: True +changes: + - bugfix: "Addicts can now feel like they're getting their fix or kicking it." + - bugfix: "Aheals now remove addictions and restore your mood to default." From 549e3d7fbdcb8cb5397101aee2b39766460517a2 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 07:40:11 -0600 Subject: [PATCH 122/137] Automatic changelog generation for PR #10649 [ci skip] --- html/changelogs/AutoChangeLog-pr-10649.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-10649.yml diff --git a/html/changelogs/AutoChangeLog-pr-10649.yml b/html/changelogs/AutoChangeLog-pr-10649.yml new file mode 100644 index 0000000000..04e3569ad3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10649.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - rscadd: "Shuttle hijacking has been completely reworked. Alt-click the shuttle as a hijack-capable mind (so traitors, and especially traitors with hijack) to begin or continue a hacking process." From ee07f1312eec495c1e4dd22725155e9937a7814b Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 08:31:42 -0600 Subject: [PATCH 123/137] Automatic changelog generation for PR #11142 [ci skip] --- html/changelogs/AutoChangeLog-pr-11142.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11142.yml diff --git a/html/changelogs/AutoChangeLog-pr-11142.yml b/html/changelogs/AutoChangeLog-pr-11142.yml new file mode 100644 index 0000000000..35c4033e2c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11142.yml @@ -0,0 +1,4 @@ +author: "kevinz000" +delete-after: True +changes: + - refactor: "vampire \"immortal haste\" has been reworked to be more reliable and consistent." From 0892837e5ae74635011b0998cacdca20f9946bf0 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 08:33:30 -0600 Subject: [PATCH 124/137] Automatic changelog generation for PR #10572 [ci skip] --- html/changelogs/AutoChangeLog-pr-10572.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-10572.yml diff --git a/html/changelogs/AutoChangeLog-pr-10572.yml b/html/changelogs/AutoChangeLog-pr-10572.yml new file mode 100644 index 0000000000..d18e2d9e93 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10572.yml @@ -0,0 +1,5 @@ +author: "Tupinambis" +delete-after: True +changes: + - tweak: "the portion of laws that require harm prevention by silicons has been removed." + - server: "silicon_laws.txt config file is required to be modified for full implementation." From 505c93a68b4d2ba75cb9accc1d53ba302ef4f8be Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 13:52:32 -0600 Subject: [PATCH 125/137] Automatic changelog generation for PR #11154 [ci skip] --- html/changelogs/AutoChangeLog-pr-11154.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11154.yml diff --git a/html/changelogs/AutoChangeLog-pr-11154.yml b/html/changelogs/AutoChangeLog-pr-11154.yml new file mode 100644 index 0000000000..03e1898b60 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11154.yml @@ -0,0 +1,4 @@ +author: "Kraseo" +delete-after: True +changes: + - bugfix: "Nightmares no longer delete entire guns from existence for merely having a light on them." From 116d2b190d325ca005a97bc0ce52ed802f62a114 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 13:53:30 -0600 Subject: [PATCH 126/137] Automatic changelog generation for PR #11157 [ci skip] --- html/changelogs/AutoChangeLog-pr-11157.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11157.yml diff --git a/html/changelogs/AutoChangeLog-pr-11157.yml b/html/changelogs/AutoChangeLog-pr-11157.yml new file mode 100644 index 0000000000..5843c5f0e4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11157.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - tweak: "Licking pref" From a80a770310a3a1b127f185a05cc820f76dd89b03 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 16:50:11 -0600 Subject: [PATCH 127/137] Automatic changelog generation for PR #11155 [ci skip] --- html/changelogs/AutoChangeLog-pr-11155.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11155.yml diff --git a/html/changelogs/AutoChangeLog-pr-11155.yml b/html/changelogs/AutoChangeLog-pr-11155.yml new file mode 100644 index 0000000000..069cdbdedf --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11155.yml @@ -0,0 +1,4 @@ +author: "necromanceranne" +delete-after: True +changes: + - bugfix: "Literally unclickability with a cham projector" From 4ca9eb4171e69761ed6c4c6e6d93b4507e487ba6 Mon Sep 17 00:00:00 2001 From: keronshb Date: Thu, 20 Feb 2020 18:11:54 -0500 Subject: [PATCH 128/137] Fixes healing nanites Fixes Accelerated Regeneration, Bio Regen, and Mechanical. Also changed one line on Exo nanites but it doesn't fix those. Dunno what to do. --- code/modules/research/nanites/nanite_programs/healing.dm | 6 +++--- code/modules/research/nanites/nanite_programs/utility.dm | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/research/nanites/nanite_programs/healing.dm b/code/modules/research/nanites/nanite_programs/healing.dm index 5114e156d8..cd165c791e 100644 --- a/code/modules/research/nanites/nanite_programs/healing.dm +++ b/code/modules/research/nanites/nanite_programs/healing.dm @@ -23,7 +23,7 @@ if(!parts.len) return for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(0.5/parts.len, 0.5/parts.len, null, BODYPART_ORGANIC)) + if(L.heal_damage(0.5/parts.len, 0.5/parts.len)) host_mob.update_damage_overlays() else host_mob.adjustBruteLoss(-0.5, TRUE) @@ -136,7 +136,7 @@ return var/update = FALSE for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(1.5/parts.len, 1.5/parts.len, null, BODYPART_ROBOTIC)) //much faster than organic healing + if(L.heal_damage(1.5/parts.len, 1.5/parts.len, only_robotic = TRUE, only_organic = FALSE)) //much faster than organic healing update = TRUE if(update) host_mob.update_damage_overlays() @@ -180,7 +180,7 @@ return var/update = FALSE for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(3/parts.len, 3/parts.len, null, BODYPART_ORGANIC)) + if(L.heal_damage(3/parts.len, 3/parts.len, FALSE)) update = TRUE if(update) host_mob.update_damage_overlays() diff --git a/code/modules/research/nanites/nanite_programs/utility.dm b/code/modules/research/nanites/nanite_programs/utility.dm index 6352f50b8b..9e0d8d1386 100644 --- a/code/modules/research/nanites/nanite_programs/utility.dm +++ b/code/modules/research/nanites/nanite_programs/utility.dm @@ -241,7 +241,7 @@ for(var/mob/living/L in oview(5, host_mob)) if(!prob(25)) continue - if(!(L.mob_biotypes & (MOB_ORGANIC|MOB_UNDEAD))) + if(!(MOB_ORGANIC in L.mob_biotypes) && !(MOB_UNDEAD in L.mob_biotypes)) continue target_hosts += L if(!target_hosts.len) From 8d00f11fc105b6b7e20e56ecfd35edd873caa350 Mon Sep 17 00:00:00 2001 From: Putnam Date: Thu, 20 Feb 2020 16:01:06 -0800 Subject: [PATCH 129/137] maybe this'll work. --- code/controllers/subsystem/vote.dm | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm index f3513b7af7..532fe2b97c 100644 --- a/code/controllers/subsystem/vote.dm +++ b/code/controllers/subsystem/vote.dm @@ -211,20 +211,19 @@ SUBSYSTEM_DEF(vote) var/already_lost_runoff = list() var/list/cur_choices = choices.Copy() for(var/ckey in voted) - choices[choices[voted[ckey][1]]]++ // jesus christ how horrifying + choices["[voted[ckey][1]]"]++ // jesus christ how horrifying for(var/_this_var_unused_ignore_it in 1 to choices.len) // if it takes more than this something REALLY wrong happened for(var/ckey in voted) - cur_choices[cur_choices[voted[ckey][1]]]++ // jesus christ how horrifying + cur_choices["[voted[ckey][1]]]"]++ // oh god it's being done AGAIN var/least_vote = 100000 - var/least_voted = 1 - for(var/i in 1 to cur_choices.len) - var/option = cur_choices[i] - if(cur_choices[option] > voted.len/2) - return list(option) - else if(cur_choices[option] < least_vote && !(option in already_lost_runoff)) - least_vote = cur_choices[option] - least_voted = i - already_lost_runoff += cur_choices[least_voted] + var/least_voted = -1 + for(var/option in cur_choices) + if(cur_choices["[option]"] > voted.len/2) + return list("[option]") + else if(cur_choices["[option]"] < least_vote && !("[option]" in already_lost_runoff)) + least_vote = cur_choices["[option]"] + least_voted = option + already_lost_runoff += cur_choices["[least_voted]"] for(var/ckey in voted) voted[ckey] -= least_voted for(var/i in 1 to cur_choices.len) @@ -411,12 +410,12 @@ SUBSYSTEM_DEF(vote) return vote if(SCHULZE_VOTING,INSTANT_RUNOFF_VOTING) if(usr.ckey in voted) - if(vote in voted[usr.ckey]) - voted[usr.ckey] -= vote + if(choices[vote] in voted[usr.ckey]) + voted[usr.ckey] -= choices[vote] else voted += usr.ckey voted[usr.ckey] = list() - voted[usr.ckey] += vote + voted[usr.ckey] += choices[vote] saved -= usr.ckey if(SCORE_VOTING,MAJORITY_JUDGEMENT_VOTING) if(!(usr.ckey in voted)) From a49260e0ac93003dfcfd78c94e70e981297df407 Mon Sep 17 00:00:00 2001 From: Putnam Date: Thu, 20 Feb 2020 16:03:00 -0800 Subject: [PATCH 130/137] Revert "maybe this'll work." This reverts commit 8d00f11fc105b6b7e20e56ecfd35edd873caa350. --- code/controllers/subsystem/vote.dm | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm index 532fe2b97c..f3513b7af7 100644 --- a/code/controllers/subsystem/vote.dm +++ b/code/controllers/subsystem/vote.dm @@ -211,19 +211,20 @@ SUBSYSTEM_DEF(vote) var/already_lost_runoff = list() var/list/cur_choices = choices.Copy() for(var/ckey in voted) - choices["[voted[ckey][1]]"]++ // jesus christ how horrifying + choices[choices[voted[ckey][1]]]++ // jesus christ how horrifying for(var/_this_var_unused_ignore_it in 1 to choices.len) // if it takes more than this something REALLY wrong happened for(var/ckey in voted) - cur_choices["[voted[ckey][1]]]"]++ // oh god it's being done AGAIN + cur_choices[cur_choices[voted[ckey][1]]]++ // jesus christ how horrifying var/least_vote = 100000 - var/least_voted = -1 - for(var/option in cur_choices) - if(cur_choices["[option]"] > voted.len/2) - return list("[option]") - else if(cur_choices["[option]"] < least_vote && !("[option]" in already_lost_runoff)) - least_vote = cur_choices["[option]"] - least_voted = option - already_lost_runoff += cur_choices["[least_voted]"] + var/least_voted = 1 + for(var/i in 1 to cur_choices.len) + var/option = cur_choices[i] + if(cur_choices[option] > voted.len/2) + return list(option) + else if(cur_choices[option] < least_vote && !(option in already_lost_runoff)) + least_vote = cur_choices[option] + least_voted = i + already_lost_runoff += cur_choices[least_voted] for(var/ckey in voted) voted[ckey] -= least_voted for(var/i in 1 to cur_choices.len) @@ -410,12 +411,12 @@ SUBSYSTEM_DEF(vote) return vote if(SCHULZE_VOTING,INSTANT_RUNOFF_VOTING) if(usr.ckey in voted) - if(choices[vote] in voted[usr.ckey]) - voted[usr.ckey] -= choices[vote] + if(vote in voted[usr.ckey]) + voted[usr.ckey] -= vote else voted += usr.ckey voted[usr.ckey] = list() - voted[usr.ckey] += choices[vote] + voted[usr.ckey] += vote saved -= usr.ckey if(SCORE_VOTING,MAJORITY_JUDGEMENT_VOTING) if(!(usr.ckey in voted)) From 7a1bc9d22b77a858ddce4fce039a85e124913027 Mon Sep 17 00:00:00 2001 From: keronshb Date: Thu, 20 Feb 2020 19:11:04 -0500 Subject: [PATCH 131/137] Fixes the travis issues Fixes the travis issues, Exo still remains a mystery --- code/modules/research/nanites/nanite_programs/healing.dm | 2 +- code/modules/research/nanites/nanite_programs/utility.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/research/nanites/nanite_programs/healing.dm b/code/modules/research/nanites/nanite_programs/healing.dm index cd165c791e..70a1412b11 100644 --- a/code/modules/research/nanites/nanite_programs/healing.dm +++ b/code/modules/research/nanites/nanite_programs/healing.dm @@ -136,7 +136,7 @@ return var/update = FALSE for(var/obj/item/bodypart/L in parts) - if(L.heal_damage(1.5/parts.len, 1.5/parts.len, only_robotic = TRUE, only_organic = FALSE)) //much faster than organic healing + if(L.heal_damage(1.5/parts.len, 1.5/parts.len, null, TRUE, FALSE)) //much faster than organic healing update = TRUE if(update) host_mob.update_damage_overlays() diff --git a/code/modules/research/nanites/nanite_programs/utility.dm b/code/modules/research/nanites/nanite_programs/utility.dm index 9e0d8d1386..6352f50b8b 100644 --- a/code/modules/research/nanites/nanite_programs/utility.dm +++ b/code/modules/research/nanites/nanite_programs/utility.dm @@ -241,7 +241,7 @@ for(var/mob/living/L in oview(5, host_mob)) if(!prob(25)) continue - if(!(MOB_ORGANIC in L.mob_biotypes) && !(MOB_UNDEAD in L.mob_biotypes)) + if(!(L.mob_biotypes & (MOB_ORGANIC|MOB_UNDEAD))) continue target_hosts += L if(!target_hosts.len) From f0599e292530bea22de3997d6e377c8462191a3a Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 19:43:06 -0600 Subject: [PATCH 132/137] Automatic changelog generation for PR #10541 [ci skip] --- html/changelogs/AutoChangeLog-pr-10541.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-10541.yml diff --git a/html/changelogs/AutoChangeLog-pr-10541.yml b/html/changelogs/AutoChangeLog-pr-10541.yml new file mode 100644 index 0000000000..f59ebe0e75 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-10541.yml @@ -0,0 +1,5 @@ +author: "Detective-Google" +delete-after: True +changes: + - rscadd: "the POOL. +remove: boxstation dorms 7" From 1f843e6c4bc67ceced28ef1900f6479c9df24ed1 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 19:43:33 -0600 Subject: [PATCH 133/137] Automatic changelog generation for PR #11163 [ci skip] --- html/changelogs/AutoChangeLog-pr-11163.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11163.yml diff --git a/html/changelogs/AutoChangeLog-pr-11163.yml b/html/changelogs/AutoChangeLog-pr-11163.yml new file mode 100644 index 0000000000..5492ad563b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11163.yml @@ -0,0 +1,4 @@ +author: "MrJWhit" +delete-after: True +changes: + - tweak: "TEG" From 62ad68f1ef9b3080705a007153c89eb755ed382e Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 19:47:21 -0600 Subject: [PATCH 134/137] Automatic changelog generation for PR #11156 [ci skip] --- html/changelogs/AutoChangeLog-pr-11156.yml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11156.yml diff --git a/html/changelogs/AutoChangeLog-pr-11156.yml b/html/changelogs/AutoChangeLog-pr-11156.yml new file mode 100644 index 0000000000..dc684eb4ef --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11156.yml @@ -0,0 +1,8 @@ +author: "Psody-Mordheim" +delete-after: True +changes: + - rscadd: "Disfiguration Symptom." + - rscadd: "Deoxyribonucleic Acid Saboteur Symptom." + - rscadd: "Polyvitiligo Symptom." + - rscdel: "Revitiligo Symptom." + - rscdel: "Vitiligo Symptom." From 9f9881b57e35a7ee717a31c6814c08aa94364fc9 Mon Sep 17 00:00:00 2001 From: Putnam Date: Thu, 20 Feb 2020 18:43:36 -0800 Subject: [PATCH 135/137] this is so sad --- code/controllers/subsystem/vote.dm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm index f3513b7af7..0bd4840c7d 100644 --- a/code/controllers/subsystem/vote.dm +++ b/code/controllers/subsystem/vote.dm @@ -211,24 +211,24 @@ SUBSYSTEM_DEF(vote) var/already_lost_runoff = list() var/list/cur_choices = choices.Copy() for(var/ckey in voted) - choices[choices[voted[ckey][1]]]++ // jesus christ how horrifying + choices["[choices[voted[ckey][1]]]"]++ // jesus christ how horrifying for(var/_this_var_unused_ignore_it in 1 to choices.len) // if it takes more than this something REALLY wrong happened for(var/ckey in voted) - cur_choices[cur_choices[voted[ckey][1]]]++ // jesus christ how horrifying + cur_choices["[cur_choices[voted[ckey][1]]]]"]++ // jesus christ how horrifying var/least_vote = 100000 var/least_voted = 1 for(var/i in 1 to cur_choices.len) var/option = cur_choices[i] - if(cur_choices[option] > voted.len/2) - return list(option) - else if(cur_choices[option] < least_vote && !(option in already_lost_runoff)) - least_vote = cur_choices[option] + if(cur_choices["[option]"] > voted.len/2) + return list("[option]") + else if(cur_choices["[option]"] < least_vote && !("[option]" in already_lost_runoff)) + least_vote = cur_choices["[option]"] least_voted = i already_lost_runoff += cur_choices[least_voted] for(var/ckey in voted) voted[ckey] -= least_voted for(var/i in 1 to cur_choices.len) - cur_choices[cur_choices[i]] = 0 + cur_choices["[cur_choices[i]]"] = 0 /datum/controller/subsystem/vote/proc/announce_result() var/vote_title_text From 0cffb2e6729997fa7511931254e846ec23b2635d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 20 Feb 2020 20:50:50 -0600 Subject: [PATCH 136/137] Automatic changelog generation for PR #11176 [ci skip] --- html/changelogs/AutoChangeLog-pr-11176.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11176.yml diff --git a/html/changelogs/AutoChangeLog-pr-11176.yml b/html/changelogs/AutoChangeLog-pr-11176.yml new file mode 100644 index 0000000000..98c7619990 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11176.yml @@ -0,0 +1,4 @@ +author: "Putnam3145" +delete-after: True +changes: + - bugfix: "IRV fixed... again" From 869fb5e89714aa0a68afef1afad7e2b580ef053b Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 21 Feb 2020 09:46:22 -0600 Subject: [PATCH 137/137] Automatic changelog generation for PR #11175 [ci skip] --- html/changelogs/AutoChangeLog-pr-11175.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11175.yml diff --git a/html/changelogs/AutoChangeLog-pr-11175.yml b/html/changelogs/AutoChangeLog-pr-11175.yml new file mode 100644 index 0000000000..89d82068f1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11175.yml @@ -0,0 +1,6 @@ +author: "keronshb" +delete-after: True +changes: + - bugfix: "fixed accelerated regeneration nanites" + - bugfix: "fixed mechanical repair nanites" + - bugfix: "fixed bio reconstruction nanites"