diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm
index 88ce3d9352f..1f52c4cdfeb 100644
--- a/code/__HELPERS/game.dm
+++ b/code/__HELPERS/game.dm
@@ -189,7 +189,7 @@
objects += O
for(var/client/C in clients)
- if(!istype(C) || !C.eye)
+ if(!istype(C) || !C.eye || istype(C.eye, /mob/aiEye))
continue //I have no idea when this client check would be needed, but if this runtimes people won't hear anything
//So kinda paranoid about runtime avoidance.
if(istype(C.eye, /obj/machinery/camera))
diff --git a/code/game/gamemodes/antag_spawner.dm b/code/game/gamemodes/antag_spawner.dm
index fb2e1f00ebe..5eb2ad4ecd6 100644
--- a/code/game/gamemodes/antag_spawner.dm
+++ b/code/game/gamemodes/antag_spawner.dm
@@ -32,21 +32,33 @@
return
/obj/item/weapon/antag_spawner/borg_tele/proc/get_candidate_answer(mob/user as mob, var/list/possiblecandidates = list())
+ var/time_passed = world.time
if(possiblecandidates.len <= 0)
checking = 0
user << "Unable to connect to Syndicate Command. Please wait and try again later or use the teleporter on your uplink to get your points refunded."
return
else
var/possibleborg = pick(possiblecandidates)
- var/input = alert(possibleborg,"Do you want to spawn in as a cyborg for the Syndicate operatives?","Syndicate Cyborg","No","Yes")
- if(input == "Yes" && used == 0)
- possiblecandidates -= possibleborg
- used = 1
- checking = 0
- spawn_antag(possibleborg, get_turf(src.loc), "syndieborg")
- else
- possiblecandidates -= possibleborg
+ spawn(0)
+ var/input = alert(possibleborg,"Do you want to spawn in as a cyborg for the Syndicate operatives?","Please answer in thirty seconds!","Yes","No")
+ if(input == "Yes" && used == 0)
+ if((world.time-time_passed)>300)
+ return
+ possiblecandidates -= possibleborg
+ used = 1
+ checking = 0
+ spawn_antag(possibleborg, get_turf(src.loc), "syndieborg")
+ else
+ possiblecandidates -= possibleborg
+ get_candidate_answer(user, possiblecandidates)
+ return
+
+ sleep(300)
+ if(checking)
+ possiblecandidates -= possibleborg
get_candidate_answer(user, possiblecandidates)
+ return
+
/obj/item/weapon/antag_spawner/borg_tele/spawn_antag(var/client/C, var/turf/T, var/type = "")
var/datum/effect/effect/system/spark_spread/S = new /datum/effect/effect/system/spark_spread
diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm
index 6d20dabe555..4c73f2eb80c 100644
--- a/code/game/gamemodes/nuclear/nuclear.dm
+++ b/code/game/gamemodes/nuclear/nuclear.dm
@@ -27,7 +27,7 @@ proc/issyndicate(mob/living/M as mob)
/datum/game_mode/nuclear/announce()
world << "The current game mode is - Nuclear Emergency!"
world << "A [syndicate_name()] Strike Force is approaching [station_name()]!"
- world << "A nuclear explosive was being transported by Nanotrasen to a military base. The transport ship mysteriously lost contact with Space Traffic Control (STC). About that time a strange disk was discovered around [station_name()]. It was identified by Nanotrasen as a nuclear auth. disk and now Syndicate Operatives have arrived to retake the disk and detonate SS13! Also, most likely Syndicate star ships are in the vicinity so take care not to lose the disk!\nSyndicate: Reclaim the disk and detonate the nuclear bomb anywhere on SS13.\nPersonnel: Hold the disk and escape with the disk on the shuttle!"
+ world << "A nuclear explosive was being transported by NanoTrasen to a military base. The transport ship mysteriously lost contact with Space Traffic Control (STC). About that time a strange disk was discovered around [station_name()]. It was identified by NanoTrasen as a nuclear authentication disk and now Syndicate Operatives have arrived to retake the disk and detonate SS13! There are most likely Syndicate starships are in the vicinity, so take care not to lose the disk!\nSyndicate: Reclaim the disk and detonate the nuclear bomb anywhere on SS13.\nPersonnel: Hold the disk and escape with the disk on the shuttle!"
/datum/game_mode/nuclear/can_start()//This could be better, will likely have to recode it later
if(!..())
@@ -243,6 +243,7 @@ proc/issyndicate(mob/living/M as mob)
var/obj/item/device/radio/uplink/U = new /obj/item/device/radio/uplink(synd_mob)
U.hidden_uplink.uplink_owner="[synd_mob.key]"
+ world << synd_mob.key
U.hidden_uplink.uses = 20
synd_mob.equip_to_slot_or_del(U, slot_in_backpack)
@@ -374,30 +375,31 @@ proc/issyndicate(mob/living/M as mob)
/datum/game_mode/proc/auto_declare_completion_nuclear()
if( syndicates.len || (ticker && istype(ticker.mode,/datum/game_mode/nuclear)) )
- var/text = "The syndicate operatives were:"
+ var/text = "
The syndicate operatives were:"
var/purchases = ""
var/TC_uses = 0
for(var/datum/mind/syndicate in syndicates)
- text += "
[syndicate.key] was [syndicate.name] ("
+ text += "
[syndicate.key] was [syndicate.name] ("
if(syndicate.current)
if(syndicate.current.stat == DEAD)
text += "died"
else
text += "survived"
if(syndicate.current.real_name != syndicate.name)
- text += " as [syndicate.current.real_name]"
+ text += " as [syndicate.current.real_name]"
else
text += "body destroyed"
text += ")"
-
+ world << syndicate.key
for(var/obj/item/device/uplink/H in world_uplinks)
- if(H && H.uplink_owner && H.uplink_owner==syndicate.name)
+ if(H && H.uplink_owner && H.uplink_owner==syndicate.key)
TC_uses += H.used_TC
purchases += H.purchase_log
+ text += "
"
text += "(Syndicates used [TC_uses] TC) [purchases]"
@@ -407,7 +409,6 @@ proc/issyndicate(mob/living/M as mob)
world << text
return 1
-
/proc/nukelastname(var/mob/M as mob) //--All praise goes to NEO|Phyte, all blame goes to DH, and it was Cindi-Kate's idea. Also praise Urist for copypasta ho.
var/randomname = pick(last_names)
var/newname = copytext(sanitize(input(M,"You are the nuke operative [pick("Czar", "Boss", "Commander", "Chief", "Kingpin", "Director", "Overlord")]. Please choose a last name for your family.", "Name change",randomname)),1,MAX_NAME_LEN)
diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm
index 594d7cb9f23..0eacb5b65ff 100644
--- a/code/game/gamemodes/traitor/traitor.dm
+++ b/code/game/gamemodes/traitor/traitor.dm
@@ -238,7 +238,7 @@
var/uplink_true = 0
var/purchases = ""
for(var/obj/item/device/uplink/H in world_uplinks)
- if(H && H.uplink_owner && H.uplink_owner==traitor.name)
+ if(H && H.uplink_owner && H.uplink_owner==traitor.key)
TC_uses += H.used_TC
uplink_true=1
purchases += H.purchase_log
@@ -287,7 +287,6 @@
traitor_mob.mutations.Remove(M_CLUMSY)
// find a radio! toolbox(es), backpack, belt, headset
- var/loc = ""
var/obj/item/R = locate(/obj/item/device/pda) in traitor_mob.contents //Hide the uplink in a PDA if available, otherwise radio
if(!R)
R = locate(/obj/item/device/radio) in traitor_mob.contents
@@ -311,22 +310,22 @@
var/obj/item/device/uplink/hidden/T = new(R)
target_radio.hidden_uplink = T
- T.uplink_owner = "[traitor_mob]"
+ T.uplink_owner = "[traitor_mob.key]"
target_radio.traitor_frequency = freq
- traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name] [loc]. Simply dial the frequency [format_frequency(freq)] to unlock its hidden features."
- traitor_mob.mind.store_memory("Radio Freq: [format_frequency(freq)] ([R.name] [loc]).")
+ traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name] [T.loc]. Simply dial the frequency [format_frequency(freq)] to unlock its hidden features."
+ traitor_mob.mind.store_memory("Radio Freq: [format_frequency(freq)] ([R.name] [T.loc]).")
else if (istype(R, /obj/item/device/pda))
// generate a passcode if the uplink is hidden in a PDA
var/pda_pass = "[rand(100,999)] [pick("Alpha","Bravo","Delta","Omega")]"
var/obj/item/device/uplink/hidden/T = new(R)
R.hidden_uplink = T
- T.uplink_owner = "[traitor_mob]"
+ T.uplink_owner = "[traitor_mob.key]"
var/obj/item/device/pda/P = R
P.lock_code = pda_pass
- traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name] [loc]. Simply enter the code \"[pda_pass]\" into the ringtone select to unlock its hidden features."
- traitor_mob.mind.store_memory("Uplink Passcode: [pda_pass] ([R.name] [loc]).")
+ traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name] [T.loc]. Simply enter the code \"[pda_pass]\" into the ringtone select to unlock its hidden features."
+ traitor_mob.mind.store_memory("Uplink Passcode: [pda_pass] ([R.name] [T.loc]).")
if(!safety)//If they are not a rev. Can be added on to.
give_codewords(traitor_mob)
diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm
index cb40a1557c3..a0d31d2af26 100644
--- a/code/game/jobs/access.dm
+++ b/code/game/jobs/access.dm
@@ -201,27 +201,27 @@
if("Thunderdome Overseer")
return list(access_cent_general, access_cent_thunder)
if("Emergency Response Team")
- return list(access_cent_general, access_cent_living, access_cent_storage)
+ return list(access_cent_general, access_cent_living, access_cent_storage) + get_all_accesses()
if("Emergency Response Team Leader")
- return list(access_cent_general, access_cent_living, access_cent_storage, access_cent_teleporter)
+ return list(access_cent_general, access_cent_living, access_cent_storage, access_cent_teleporter) + get_all_accesses()
if("Intel Officer")
- return list(access_cent_general, access_cent_living)
+ return list(access_cent_general, access_cent_living) + get_all_accesses()
if("Medical Officer")
- return list(access_cent_general, access_cent_living, access_cent_medical)
+ return list(access_cent_general, access_cent_living, access_cent_medical) + get_all_accesses()
if("Death Commando")
- return list(access_cent_general, access_cent_specops, access_cent_living, access_cent_storage)
+ return list(access_cent_general, access_cent_specops, access_cent_living, access_cent_storage) + get_all_accesses()
if("Research Officer")
- return list(access_cent_general, access_cent_specops, access_cent_medical, access_cent_teleporter, access_cent_storage)
+ return list(access_cent_general, access_cent_specops, access_cent_medical, access_cent_teleporter, access_cent_storage) + get_all_accesses()
if("BlackOps Commander")
- return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_living, access_cent_storage, access_cent_creed)
+ return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_living, access_cent_storage, access_cent_creed) + get_all_accesses()
if("Special Operations Officer")
- return get_all_centcom_access()
+ return get_all_centcom_access() + get_all_accesses()
if("NanoTrasen Navy Officer")
- return get_all_centcom_access()
+ return get_all_centcom_access() + get_all_accesses()
if("NanoTrasen Navy Captain")
- return get_all_centcom_access()
+ return get_all_centcom_access() + get_all_accesses()
if("Supreme Commander")
- return get_all_centcom_access()
+ return get_all_centcom_access() + get_all_accesses()
/proc/get_all_accesses()
return list(access_security, access_sec_doors, access_brig, access_armory, access_forensics_lockers, access_court,
@@ -369,9 +369,9 @@
if(access_qm)
return "Quartermaster"
if(access_clown)
- return "HONK! Access"
+ return "Clown's Office"
if(access_mime)
- return "Silent Access"
+ return "Mime's Office"
if(access_surgery)
return "Surgery"
if(access_theatre)
diff --git a/code/game/jobs/job/captain.dm b/code/game/jobs/job/captain.dm
deleted file mode 100644
index 1f6356ee82c..00000000000
--- a/code/game/jobs/job/captain.dm
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
-Captain
-*/
-/datum/job/captain
- title = "Captain"
- flag = CAPTAIN
- department_head = list("Centcom")
- department_flag = ENGSEC
- faction = "Station"
- total_positions = 1
- spawn_positions = 1
- supervisors = "Nanotrasen officials and Space law"
- selection_color = "#ccccff"
- req_admin_notify = 1
- minimal_player_age = 14
-
- default_id = /obj/item/weapon/card/id/gold
- default_pda = /obj/item/device/pda/captain
- default_headset = /obj/item/device/radio/headset/heads/captain
- default_backpack = /obj/item/weapon/storage/backpack/captain
- default_satchel = /obj/item/weapon/storage/backpack/satchel_cap
-
- access = list() //See get_access()
- minimal_access = list() //See get_access()
-
-/datum/job/captain/equip_items(var/mob/living/carbon/human/H)
- var/obj/item/clothing/under/U = new /obj/item/clothing/under/rank/captain(H)
- U.attachTie(new /obj/item/clothing/tie/medal/gold/captain())
- H.equip_to_slot_or_del(U, slot_w_uniform)
- H.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest/capcarapace(H), slot_wear_suit)
- H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/brown(H), slot_shoes)
- H.equip_to_slot_or_del(new /obj/item/clothing/head/caphat(H), slot_head)
- H.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(H), slot_glasses)
-
- //Equip ID box
- if(H.backbag == 1)
- H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/silver_ids(H), slot_l_hand)
- else
- H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/silver_ids(H.back), slot_in_backpack)
-
- //Implant him
- var/obj/item/weapon/implant/loyalty/L = new/obj/item/weapon/implant/loyalty(H)
- L.imp_in = H
- L.implanted = 1
-
- world << "[H.real_name] is the captain!"
-
-/datum/job/captain/get_access()
- return get_all_accesses()
-
-/*
-Head of Personnel
-*/
-/datum/job/hop
- title = "Head of Personnel"
- flag = HOP
- department_head = list("Captain")
- department_flag = CIVILIAN
- faction = "Station"
- total_positions = 1
- spawn_positions = 1
- supervisors = "the captain"
- selection_color = "#ddddff"
- req_admin_notify = 1
- minimal_player_age = 10
-
- default_id = /obj/item/weapon/card/id/silver
- default_pda = /obj/item/device/pda/heads/hop
- default_headset = /obj/item/device/radio/headset/heads/hop
-
- access = list(access_security, access_sec_doors, access_brig, access_court, access_forensics_lockers, access_weapons,
- access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
- access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
- access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
- access_theatre, access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
- access_hop, access_RC_announce, access_keycard_auth, access_gateway, access_mineral_storeroom)
- minimal_access = list(access_security, access_sec_doors, access_court, access_weapons,
- access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads,
- access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue,
- access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer,
- access_theatre, access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station,
- access_hop, access_RC_announce, access_keycard_auth, access_gateway, access_mineral_storeroom)
-
-
-/datum/job/hop/equip_items(var/mob/living/carbon/human/H)
- H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/head_of_personnel(H), slot_w_uniform)
- H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/brown(H), slot_shoes)
- H.equip_to_slot_or_del(new /obj/item/clothing/head/hopcap(H), slot_head)
-
- //Equip ID box
- if(H.backbag == 1)
- H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H), slot_l_hand)
- else
- H.equip_to_slot_or_del(new /obj/item/weapon/storage/box/ids(H.back), slot_in_backpack)
diff --git a/code/game/jobs/job/civilian.dm b/code/game/jobs/job/civilian.dm
index 968736075f3..e1b104846bb 100644
--- a/code/game/jobs/job/civilian.dm
+++ b/code/game/jobs/job/civilian.dm
@@ -4,7 +4,7 @@
department_flag = SUPPORT
total_positions = -1
spawn_positions = -1
- supervisors = "absolutely everyone"
+ supervisors = "the head of personnel"
selection_color = "#dddddd"
access = list() //See /datum/job/assistant/get_access()
minimal_access = list() //See /datum/job/assistant/get_access()
diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm
index 3050cc39a2c..1b90d34e0c1 100644
--- a/code/game/jobs/job/medical.dm
+++ b/code/game/jobs/job/medical.dm
@@ -132,7 +132,7 @@
department_flag = MEDSCI
total_positions = 2
spawn_positions = 2
- supervisors = "the chief medical officer and research director"
+ supervisors = "the chief medical officer and the research director"
selection_color = "#ffeef0"
access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_research)
minimal_access = list(access_medical, access_morgue, access_genetics, access_research, access_maint_tunnels)
diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm
index 48b88492dcb..8c4b6c47ab0 100644
--- a/code/game/jobs/job/science.dm
+++ b/code/game/jobs/job/science.dm
@@ -117,7 +117,7 @@
department_flag = MEDSCI
total_positions = 2
spawn_positions = 2
- supervisors = "research director"
+ supervisors = "the research director"
selection_color = "#ffeeff"
access = list(access_robotics, access_tox, access_tox_storage, access_tech_storage, access_morgue, access_research) //As a job that handles so many corpses, it makes sense for them to have morgue access.
minimal_access = list(access_robotics, access_tech_storage, access_morgue, access_research, access_maint_tunnels) //As a job that handles so many corpses, it makes sense for them to have morgue access.
diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm
index a0c426829a0..97b871546d5 100644
--- a/code/game/jobs/job/security.dm
+++ b/code/game/jobs/job/security.dm
@@ -207,7 +207,7 @@
department_flag = KARMA
total_positions = 1
spawn_positions = 1
- supervisors = "the warden"
+ supervisors = "the head of security"
selection_color = "#ffeeee"
access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics)
minimal_access = list(access_medical, access_morgue, access_surgery, access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels)
diff --git a/code/game/jobs/job/supervisor.dm b/code/game/jobs/job/supervisor.dm
index 50bbd3bd6d9..b3251f41f62 100644
--- a/code/game/jobs/job/supervisor.dm
+++ b/code/game/jobs/job/supervisor.dm
@@ -4,7 +4,7 @@
department_flag = ENGSEC
total_positions = 1
spawn_positions = 1
- supervisors = "Nanotrasen officials and Space law"
+ supervisors = "NanoTrasen officials"
selection_color = "#ccccff"
idtype = /obj/item/weapon/card/id/gold
req_admin_notify = 1
@@ -96,12 +96,12 @@
/datum/job/nanotrasenrep
- title = "Nanotrasen Representative"
+ title = "NanoTrasen Representative"
flag = NANO
department_flag = KARMA
total_positions = 1
spawn_positions = 1
- supervisors = "Nanotrasen Board of Directors"
+ supervisors = "the NanoTrasen Board of Directors"
selection_color = "#ddddff"
idtype = /obj/item/weapon/card/id/centcom
req_admin_notify = 1
@@ -141,12 +141,12 @@
return 1
/datum/job/nanotrasenrec
- title = "Nanotrasen Recruiter"
+ title = "NanoTrasen Recruiter"
flag = NANOREC
department_flag = KARMA
total_positions = 1
spawn_positions = 1
- supervisors = "Nanotrasen Board of Directors"
+ supervisors = "the NanoTrasen Board of Directors"
selection_color = "#ddddff"
idtype = /obj/item/weapon/card/id/centcom
req_admin_notify = 1
@@ -190,7 +190,7 @@
department_flag = KARMA
total_positions = 1
spawn_positions = 1
- supervisors = "Whichever head your protect, and ultimately the Captain"
+ supervisors = "the captain"
selection_color = "#ddddff"
idtype = /obj/item/weapon/card/id/centcom
req_admin_notify = 1
@@ -240,7 +240,7 @@
department_flag = KARMA
total_positions = 1
spawn_positions = 1
- supervisors = "Centcom High Court"
+ supervisors = "the NanoTrasen Supreme Court"
selection_color = "#ddddff"
idtype = /obj/item/weapon/card/id/centcom
req_admin_notify = 1
diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm
index e706bbc368a..92d611f2de0 100644
--- a/code/game/jobs/job/support.dm
+++ b/code/game/jobs/job/support.dm
@@ -139,7 +139,7 @@
department_flag = SUPPORT
total_positions = 2
spawn_positions = 2
- supervisors = "the quartermaster and the head of personnel"
+ supervisors = "the quartermaster"
selection_color = "#dddddd"
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mint, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_cargo, access_cargo_bot, access_mailsorting)
@@ -166,7 +166,7 @@
department_flag = SUPPORT
total_positions = 3
spawn_positions = 3
- supervisors = "the quartermaster and the head of personnel"
+ supervisors = "the quartermaster"
selection_color = "#dddddd"
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mint, access_mining, access_mining_station)
minimal_access = list(access_mining, access_mint, access_mining_station, access_mailsorting, access_maint_tunnels)
diff --git a/code/game/jobs/job_controller.dm b/code/game/jobs/job_controller.dm
index 3134dbc73c0..d7c8c94563c 100644
--- a/code/game/jobs/job_controller.dm
+++ b/code/game/jobs/job_controller.dm
@@ -467,7 +467,7 @@ var/global/datum/controller/occupations/job_master
H << "You are the [alt_title ? alt_title : rank]."
H << "As the [alt_title ? alt_title : rank] you answer directly to [job.supervisors]. Special circumstances may change this."
if(job.req_admin_notify)
- H << "You are playing a job that is important for Game Progression. If you have to disconnect, please notify the admins via adminhelp."
+ H << "You are playing a job that is important for the game progression. If you have to disconnect, please notify the admins via adminhelp."
spawnId(H, rank, alt_title)
H.equip_to_slot_or_del(new /obj/item/device/radio/headset(H), slot_l_ear)
diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm
index 3446831bcb9..1c7850ffa13 100644
--- a/code/game/objects/items/weapons/cards_ids.dm
+++ b/code/game/objects/items/weapons/cards_ids.dm
@@ -13,7 +13,7 @@
*/
/obj/item/weapon/card
name = "card"
- desc = "Does card things."
+ desc = "A card."
icon = 'icons/obj/card.dmi'
w_class = 1.0
var/associated_account_number = 0
@@ -22,7 +22,7 @@
/obj/item/weapon/card/data
name = "data card"
- desc = "A disk of data."
+ desc = "A disk containing data."
icon_state = "data"
var/function = "storage"
var/data = "null"
@@ -191,7 +191,7 @@
/obj/item/weapon/card/id/attack_self(mob/user as mob)
for(var/mob/O in viewers(user, null))
- O.show_message(text("[] shows you: \icon[] []: assignment: []", user, src, src.name, src.assignment), 1)
+ O.show_message(text("[] shows you: \icon[] []. The assignment on the card: []", user, src, src.name, src.assignment), 1)
if(mining_points)
user << "There's [mining_points] mining equipment redemption points loaded onto this card."
src.add_fingerprint(user)
@@ -324,7 +324,7 @@
/obj/item/weapon/card/id/captains_spare
name = "captain's spare ID"
- desc = "The spare ID of the High Lord himself."
+ desc = "The spare ID of the captain."
icon_state = "gold"
item_state = "gold_id"
registered_name = "Captain"
@@ -335,8 +335,8 @@
..()
/obj/item/weapon/card/id/centcom
- name = "\improper CentCom. ID"
- desc = "An ID straight from Cent. Com."
+ name = "central command ID card"
+ desc = "An ID straight from Central Command."
icon_state = "centcom"
registered_name = "Central Command"
assignment = "General"
diff --git a/code/modules/clothing/spacesuits/rig.dm b/code/modules/clothing/spacesuits/rig.dm
index ac801467b7b..48a104256c4 100644
--- a/code/modules/clothing/spacesuits/rig.dm
+++ b/code/modules/clothing/spacesuits/rig.dm
@@ -371,7 +371,7 @@
..(user)
else
camera = new /obj/machinery/camera(src)
- camera.network = list("NUKE")
+ camera.network = list("NukeOps")
cameranet.removeCamera(camera)
camera.c_tag = user.name
user << "\blue User scanned as [camera.c_tag]. Camera activated."
diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm
index b345e04f7d3..d04c4286796 100644
--- a/code/modules/clothing/under/miscellaneous.dm
+++ b/code/modules/clothing/under/miscellaneous.dm
@@ -180,6 +180,7 @@
item_state = "r_suit"
_color = "red_suit"
species_fit = list("Vox")
+ flags = ONESIZEFITSALL
/obj/item/clothing/under/blackskirt
name = "black skirt"
diff --git a/code/modules/mob/living/carbon/human/whisper.dm b/code/modules/mob/living/carbon/human/whisper.dm
index 67bb079602e..58bbfc54dec 100644
--- a/code/modules/mob/living/carbon/human/whisper.dm
+++ b/code/modules/mob/living/carbon/human/whisper.dm
@@ -20,7 +20,7 @@
if (src.stat == 2)
return src.say_dead(message)
- if (src.stat && said_last_words) // TIME TO WHISPER WHILE IN CRIT
+ if (src.stat)
return
var/alt_name = ""
@@ -31,9 +31,6 @@
if (src.sdisabilities & MUTE)
return
- if(M_WHISPER in src.mutations)
- src.say(message)
-
if (istype(src.wear_mask, /obj/item/clothing/mask/muzzle))
return
@@ -52,12 +49,12 @@
temp_message[H] = ninjaspeak(temp_message[H])
pick_list -= H
message = list2text(temp_message, " ")
- message = replacetext(message, "o", "¤")
- message = replacetext(message, "p", "þ")
- message = replacetext(message, "l", "£")
- message = replacetext(message, "s", "§")
- message = replacetext(message, "u", "µ")
- message = replacetext(message, "b", "ß")
+ message = replacetext(message, "o", "?")
+ message = replacetext(message, "p", "?")
+ message = replacetext(message, "l", "?")
+ message = replacetext(message, "s", "?")
+ message = replacetext(message, "u", "?")
+ message = replacetext(message, "b", "?")
if (src.stuttering)
message = stutter(message)
@@ -87,11 +84,6 @@
var/list/heard_a = list() // understood us
var/list/heard_b = list() // didn't understand us
- var/and_passes_on=""
- if(!said_last_words && src.isInCrit())
- and_passes_on=" - and passes on"
- said_last_words=src.stat
-
for (var/mob/M in listening)
if (M.say_understands(src))
@@ -103,9 +95,9 @@
for (var/mob/M in watching)
if (M.say_understands(src))
- rendered = "[src.name] whispers something[and_passes_on]."
+ rendered = "[src.name] whispers something."
else
- rendered = "[src.voice_name] whispers something[and_passes_on]."
+ rendered = "[src.voice_name] whispers something."
M.show_message(rendered, 2)
if (length(heard_a))
@@ -114,7 +106,8 @@
if (italics)
message_a = "[message_a]"
//This appears copied from carbon/living say.dm so the istype check for mob is probably not needed. Appending for src is also not needed as the game will check that automatically.
- rendered = "[GetVoice()][alt_name] whispers, [and_passes_on]"
+ rendered = "[GetVoice()][alt_name] whispers, "
+
for (var/mob/M in heard_a)
M.show_message(rendered, 2)
@@ -126,7 +119,7 @@
if (italics)
message_b = "[message_b]"
- rendered = "[src.voice_name] whispers, [and_passes_on]"
+ rendered = "[src.voice_name] whispers, "
for (var/mob/M in heard_b)
M.show_message(rendered, 2)
@@ -135,23 +128,18 @@
if (M.say_understands(src))
var/message_c
message_c = stars(message)
- rendered = "[GetVoice()][alt_name] whispers, [and_passes_on]"
+ rendered = "[GetVoice()][alt_name] whispers, "
M.show_message(rendered, 2)
else
- rendered = "[src.voice_name] whispers something[and_passes_on]."
+ rendered = "[src.voice_name] whispers something."
M.show_message(rendered, 2)
if (italics)
message = "[message]"
- rendered = "[GetVoice()][alt_name] whispers, [and_passes_on]"
+ rendered = "[GetVoice()][alt_name] whispers, "
for (var/mob/M in dead_mob_list)
if (!(M.client))
continue
if (M.stat > 1 && !(M in heard_a) && (M.client.prefs.toggles & CHAT_GHOSTEARS))
M.show_message(rendered, 2)
- if(said_last_words)
- src.stat = 2
- src.death(0)
- src.regenerate_icons()
-
diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm
index ded5f3caac8..3291cacb7ba 100644
--- a/code/modules/mob/living/simple_animal/friendly/cat.dm
+++ b/code/modules/mob/living/simple_animal/friendly/cat.dm
@@ -84,5 +84,6 @@
icon_living = "Syndicat"
icon_dead = "Syndicat_dead"
gender = FEMALE
+ flags = IS_SYNTHETIC|NO_BREATHE
var/turns_since_scan = 0
var/mob/living/simple_animal/mouse/movement_target
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm
index fdc6c5e1584..b2a319b6f64 100644
--- a/code/modules/mob/living/simple_animal/simple_animal.dm
+++ b/code/modules/mob/living/simple_animal/simple_animal.dm
@@ -161,7 +161,7 @@
if( abs(Environment.temperature - bodytemperature) > 40 )
bodytemperature += ((Environment.temperature - bodytemperature) / 5)
-
+
if(min_oxy)
if(Environment.oxygen < min_oxy)
atmos_suitable = 0
@@ -186,7 +186,9 @@
if(max_co2)
if(Environment.carbon_dioxide > max_co2)
atmos_suitable = 0
-
+ if(flags & NO_BREATHE || flags & IS_SYNTHETIC)
+ atmos_suitable = 1
+
//Atmos effect
if(bodytemperature < minbodytemp)
adjustBruteLoss(cold_damage_per_tick)
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 5566fcaa48a..97b1fb52146 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -196,6 +196,8 @@ var/list/slot_equipment_priority = list( \
if(!istype(W)) return 0
for(var/slot in slot_equipment_priority)
+ if(istype(W,/obj/item/weapon/storage/) && slot == slot_head) // Storage items should be put on the belt before the head
+ continue
if(equip_to_slot_if_possible(W, slot, 0, 1, 1)) //del_on_fail = 0; disable_warning = 0; redraw_mob = 1
return 1
diff --git a/code/setup.dm b/code/setup.dm
index 255f591a4e6..32be9d5476c 100644
--- a/code/setup.dm
+++ b/code/setup.dm
@@ -786,6 +786,7 @@ var/list/cheartstopper = list("potassium_chloride") //this stops the heart when
var/list/RESTRICTED_CAMERA_NETWORKS = list( //Those networks can only be accessed by preexisting terminals. AIs and new terminals can't use them.
"CentCom",
"ERT",
+ "NukeOps",
"Thunderdome",
"Xeno"
)
diff --git a/icons/mob/uniform_fat.dmi b/icons/mob/uniform_fat.dmi
index 01eb838fceb..1f3a4fec2f4 100644
Binary files a/icons/mob/uniform_fat.dmi and b/icons/mob/uniform_fat.dmi differ
diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm
index bfaf13ac6cd..b56c9e8a26a 100644
--- a/maps/cyberiad.dmm
+++ b/maps/cyberiad.dmm
@@ -65,7 +65,7 @@
"abm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple,/turf/simulated/floor/plating,/area/security/permabrig)
"abn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area)
"abo" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/permabrig)
-"abp" = (/obj/machinery/flasher{id = "permflash"; pixel_x = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/permabrig)
+"abp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/permabrig)
"abq" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plating,/area/security/permabrig)
"abr" = (/obj/machinery/computer/area_atmos/area,/obj/machinery/atmospherics/pipe/simple,/turf/simulated/floor/plating,/area/security/permabrig)
"abs" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent{filled = 0.2},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/security/permabrig)
@@ -75,7 +75,7 @@
"abw" = (/obj/machinery/camera{c_tag = "Prison Solitary Confinement"; dir = 6; network = list("Prison","SS13")},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/security/permabrig)
"abx" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/table,/obj/item/weapon/paper,/obj/machinery/light/small{dir = 1},/obj/item/weapon/pen,/turf/simulated/floor/plating,/area/security/permabrig)
"aby" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/permabrig)
-"abz" = (/obj/machinery/camera{c_tag = "Prison Air Control"; dir = 6; network = list("Prison","SS13")},/obj/machinery/door_control{desc = "A button used to activate the mounted flash."; id = "permflash"; name = "Mounted Flash Control"; pixel_x = 0; pixel_y = 24; req_access_txt = "1"},/turf/simulated/floor/plating,/area/security/permabrig)
+"abz" = (/obj/machinery/camera{c_tag = "Prison Air Control"; dir = 6; network = list("Prison","SS13")},/turf/simulated/floor/plating,/area/security/permabrig)
"abA" = (/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/permabrig)
"abB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/security/permabrig)
"abC" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/permabrig)
@@ -7512,7 +7512,7 @@
"cOx" = (/obj/structure/holohoop,/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/source_basketball)
"cOy" = (/turf/simulated/floor/holofloor{dir = 5; icon_state = "red"},/area/holodeck/source_basketball)
"cOz" = (/turf/simulated/floor/beach/sand,/area/holodeck/source_beach)
-"cOA" = (/obj/structure/table/holotable,/obj/machinery/readybutton{pixel_y = -24},/turf/simulated/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/source_thunderdomecourt)
+"cOA" = (/obj/structure/table/holotable,/obj/machinery/readybutton{pixel_y = 0},/turf/simulated/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/source_thunderdomecourt)
"cOB" = (/obj/structure/table/holotable,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/under/color/red,/obj/item/weapon/holo/esword/red,/turf/simulated/floor/holofloor{dir = 1; icon_state = "red"},/area/holodeck/source_thunderdomecourt)
"cOC" = (/obj/structure/table/holotable,/turf/simulated/floor/holofloor{dir = 5; icon_state = "red"},/area/holodeck/source_thunderdomecourt)
"cOD" = (/obj/structure/table/holotable,/obj/item/clothing/gloves/boxing/hologlove,/turf/simulated/floor/holofloor{dir = 9; icon_state = "red"},/area/holodeck/source_boxingcourt)
@@ -7643,7 +7643,7 @@
"cQY" = (/turf/simulated/floor/beach/water,/area/holodeck/source_beach)
"cQZ" = (/obj/structure/table/holotable,/turf/simulated/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/source_thunderdomecourt)
"cRa" = (/obj/structure/table/holotable,/obj/item/clothing/head/helmet/thunderdome,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/under/color/green,/obj/item/weapon/holo/esword/green,/turf/simulated/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/source_thunderdomecourt)
-"cRb" = (/obj/structure/table/holotable,/obj/machinery/readybutton{pixel_y = -24},/turf/simulated/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/source_thunderdomecourt)
+"cRb" = (/obj/structure/table/holotable,/obj/machinery/readybutton{pixel_y = 0},/turf/simulated/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/source_thunderdomecourt)
"cRc" = (/obj/structure/table/holotable,/obj/item/clothing/gloves/boxing/hologlove{icon_state = "boxinggreen"; item_state = "boxinggreen"},/turf/simulated/floor/holofloor{dir = 10; icon_state = "green"},/area/holodeck/source_boxingcourt)
"cRd" = (/turf/simulated/floor/holofloor{dir = 2; icon_state = "green"},/area/holodeck/source_boxingcourt)
"cRe" = (/obj/structure/table/holotable,/obj/item/clothing/gloves/boxing/hologlove{icon_state = "boxinggreen"; item_state = "boxinggreen"},/turf/simulated/floor/holofloor{dir = 6; icon_state = "green"},/area/holodeck/source_boxingcourt)
diff --git a/maps/cyberiad.dmm.backup b/maps/cyberiad.dmm.backup
index 2fb963ee68e..3e87ff21ab0 100644
--- a/maps/cyberiad.dmm.backup
+++ b/maps/cyberiad.dmm.backup
@@ -65,7 +65,7 @@
"abm" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple,/turf/simulated/floor/plating,/area/security/permabrig)
"abn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area)
"abo" = (/obj/structure/toilet{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/security/permabrig)
-"abp" = (/obj/machinery/flasher{id = "permflash"; pixel_x = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/permabrig)
+"abp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/permabrig)
"abq" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plating,/area/security/permabrig)
"abr" = (/obj/machinery/computer/area_atmos/area,/obj/machinery/atmospherics/pipe/simple,/turf/simulated/floor/plating,/area/security/permabrig)
"abs" = (/obj/machinery/portable_atmospherics/canister/sleeping_agent{filled = 0.2},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/security/permabrig)
@@ -75,7 +75,7 @@
"abw" = (/obj/machinery/camera{c_tag = "Prison Solitary Confinement"; dir = 6; network = list("Prison","SS13")},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/security/permabrig)
"abx" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/table,/obj/item/weapon/paper,/obj/machinery/light/small{dir = 1},/obj/item/weapon/pen,/turf/simulated/floor/plating,/area/security/permabrig)
"aby" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/permabrig)
-"abz" = (/obj/machinery/camera{c_tag = "Prison Air Control"; dir = 6; network = list("Prison","SS13")},/obj/machinery/door_control{desc = "A button used to activate the mounted flash."; id = "permflash"; name = "Mounted Flash Control"; pixel_x = 0; pixel_y = 24; req_access_txt = "1"},/turf/simulated/floor/plating,/area/security/permabrig)
+"abz" = (/obj/machinery/camera{c_tag = "Prison Air Control"; dir = 6; network = list("Prison","SS13")},/turf/simulated/floor/plating,/area/security/permabrig)
"abA" = (/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 9},/area/security/permabrig)
"abB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/turf/simulated/floor/plating,/area/security/permabrig)
"abC" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Prison Gate"; name = "Prison Blast Doors"; opacity = 0},/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/permabrig)
@@ -1685,9 +1685,9 @@
"aGu" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plating,/area)
"aGv" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry)
"aGw" = (/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/hallway/secondary/entry)
-"aGx" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area)
+"aGx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/checkpoint)
"aGy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/machinery/door/airlock/glass_security{id_tag = "DetentionLeft"; layer = 2.8; name = "Detention"; req_access_txt = "1"},/turf/simulated/floor{dir = 2; icon_state = "redfull"; tag = "icon-redfull (NORTHWEST)"},/area/security/checkpoint2)
-"aGz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area)
+"aGz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable,/turf/simulated/floor/plating,/area/security/checkpoint)
"aGA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/machinery/door/airlock/glass_security{id_tag = "DetentionRight"; layer = 2.8; name = "Detention"; req_access_txt = "1"},/turf/simulated/floor{dir = 2; icon_state = "redfull"; tag = "icon-redfull (NORTHWEST)"},/area/security/checkpoint2)
"aGB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor/plating,/area/security/checkpoint2)
"aGC" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fpmaint2)
@@ -2139,9 +2139,9 @@
"aPg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/hallway/secondary/entry)
"aPh" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/turf/simulated/floor,/area/hallway/secondary/entry)
"aPi" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch/gamma{locked = 1; req_access_txt = "1"; use_power = 0},/turf/simulated/floor{icon_state = "dark"},/area/security/main)
-"aPj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area)
+"aPj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/checkpoint)
"aPk" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/atmospherics/pipe/manifold{_color = "red"; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "delivery"},/area/security/checkpoint2)
-"aPl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area)
+"aPl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable,/turf/simulated/floor/plating,/area/security/checkpoint2)
"aPm" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; dir = 2; icon_state = "shutter0"; id = "kitchen"; name = "Kitchen Shutters"; opacity = 0},/turf/simulated/floor{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/crew_quarters/kitchen)
"aPn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/wall,/area)
"aPo" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/fpmaint2)
@@ -2208,7 +2208,7 @@
"aQx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/hallway/secondary/entry)
"aQy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (WEST)"; icon_state = "manifold-b-f"; dir = 8},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry)
"aQz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/entry)
-"aQA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable,/turf/simulated/floor/plating,/area)
+"aQA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/checkpoint2)
"aQB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/hallway/secondary/entry)
"aQC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/primary/port/east)
"aQD" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/camera{c_tag = "Arrivals East"; dir = 2; network = list("SS13")},/turf/simulated/floor{tag = "icon-warningcorner (EAST)"; icon_state = "warningcorner"; dir = 4},/area/hallway/primary/port/east)
@@ -2517,7 +2517,7 @@
"aWu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry)
"aWv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry)
"aWw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/hallway/secondary/entry)
-"aWx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area)
+"aWx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/checkpoint2)
"aWy" = (/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/hallway/secondary/entry)
"aWz" = (/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/hallway/primary/port/east)
"aWA" = (/turf/simulated/floor{tag = "icon-warningcorner (NORTH)"; icon_state = "warningcorner"; dir = 1},/area/hallway/primary/port/east)
@@ -2583,9 +2583,9 @@
"aXI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/hallway/secondary/entry)
"aXJ" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/turf/simulated/floor,/area/hallway/secondary/entry)
"aXK" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/snacks/pie,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "kitchen"; name = "Kitchen Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "grimy"},/area/crew_quarters/kitchen)
-"aXL" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area)
+"aXL" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/security/checkpoint2)
"aXM" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/turf/simulated/floor{icon_state = "delivery"},/area/security/checkpoint)
-"aXN" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable,/turf/simulated/floor/plating,/area)
+"aXN" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/security/checkpoint2)
"aXO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/poddoor/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "lawyer"; name = "Privacy Shutters"; opacity = 0},/turf/simulated/floor/plating,/area/lawoffice)
"aXP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor,/area/hallway/primary/port/east)
"aXQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor,/area/hallway/primary/port/east)
@@ -12534,20 +12534,20 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCQaCQaCQaCQaCQaCQaCQaCQaCQaDEaDFaDGaDHaBNaBNaBNaBOaDIaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaiaDJaDKaDLaaiaCXaaiaDMbXuaDOaDPaDQaaiaCYaxJaxJaxJaxJaDRaDSaDTaDUaDUaDUaDUaDVaDUaDWaDXaDYaDUaDUaDZaDZaEaaEbaEcaEdabHaEeanpbyUaDgaDgaaqaBraBsaCwaEfaEgaEhaCwaBsaBsaEiaEjaDlaEkaElaBsaBsaEmbwTaBsaBsaBsaBsaEoaEpaEqaEraBsaEsaEtazjazjazjazjazjaEtaEuaDzaDAaaaaEvaaaaaaaaiaEwaABaExaAzaABaACaACaACaACaACaACaABaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCQaCQaCQaCQaCQaCQaCQaCQaCQaEyaEzaEAaEBaBNaBNaBNaBOaDIaaiaECaEDaEEaEFaEGaaiaaiaaiaaiaaiaaiaEHaamaaiaCXaaiaDQaEIaEJaDQaDQaaiaEKaELaELaELaELaEMaENaaiaaiaaiaaiaeVabnaaibfGaaiaqAaeVaaiaaiaaiaaiaEPaEQaERaESaETaCtaEUaDgaDgbFwaBraBsaCwaEWaDhaDhaCwaBsaBsaBsaEXaEYaEZaFaaBsaBsaEmaFbaFcaFdaFdaFdaFeaBsaBsaCBaBsaFfaFgazjazjazjazjazjaFhaFibEwaEtaFkaFlaFkaaaaaibDWaABaAzaAzaABaACaACaACaACaACaACaFnaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCQaCQaCQaCQaCQaCQaCQaCQaCQaFoaFpaDGaDHaBNaBNaBNaBOaDIaaiaFqaFraFsaFtaFuaaiaFvaFwaFxaFxaFxaFyaFxaFxaCXaaiaFzaFAaFBaFCaDQaaiaFDaFEaFDaFDaxJaxJaCbaaiaFFaFGaFHaFIaFJaFKaFLaFMaFNaFOaFPaFGaFQaaiaFRauOaFSaaqaFTanpaFUaFVaFVaFWaFXaFYaFZaGaaGaaGbaGcaDpaGdaGcaGcaGeaGfaGgaBsaBsaGhaGiaGjaGkaGkaGkaGlbVBaEqaCBaBsaGmaGnazjazjazjazjazjaGoaaiaaiaaiazGaGpazGaaaaaiaGqaGraAzaGsaABaACaACaACaACaACaACaABaBIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCQaCQaCQaCQaCQaCQaCQaCQaCQaGtaGuaGvaGwaBNaBNaBNaBOaDIaaiaGxaGyaGzaGAaGBaaqaGCaGDaGEaGFaGFaGGaBUaBUaGHaaiaDQaEIaGIaDQaDQaaiaGJaxJaGKaFDaxJaxJaCbaaiaGLaGLaGMaGNaGOaGPaGQaGPaGRaGSaGTaGUaGUaaiaFRauOaGVaaqaFTanpaDgazTazUaaqaBraGWaGXaGYaGZaHaaHaaHbaHcaHaaHcaHdaHeaHfaHgaHhaHiaHjaHkaHlaHmaHnaHoaaqaHpaHqaHpaaqaHrazjazjazjazjazjaHsaaiaabanEaAXaHtaHuayHaaiaHvaHwaHxaABaABaABaABaABaABaABaABaABazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCQaCQaCQaCQaCQaCQaCQaCQaCQaGtaGuaGvaGwaBNaBNaBNaBOaDIaaiaXLaGyaXNaGAaGBaaqaGCaGDaGEaGFaGFaGGaBUaBUaGHaaiaDQaEIaGIaDQaDQaaiaGJaxJaGKaFDaxJaxJaCbaaiaGLaGLaGMaGNaGOaGPaGQaGPaGRaGSaGTaGUaGUaaiaFRauOaGVaaqaFTanpaDgazTazUaaqaBraGWaGXaGYaGZaHaaHaaHbaHcaHaaHcaHdaHeaHfaHgaHhaHiaHjaHkaHlaHmaHnaHoaaqaHpaHqaHpaaqaHrazjazjazjazjazjaHsaaiaabanEaAXaHtaHuayHaaiaHvaHwaHxaABaABaABaABaABaABaABaABaABazGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayAaaiaaiaaiaaiaaiaaiaaiaBKaHyaHzaaiaBKaHyaHzaaiaaiaaiaaiaHAaBNaBNaBNaBNaBOaHBaaibWYaHDaHEaHFbxpaaqaHHaFxaCXaHIaFxaFxaFxaHJaHKaaibXoaHLaHMcHxaDQaaiaxJaxJaHNaFDaxJaxJaCbaaiaaiaaiaaiaHOaHPaFGaHQaFGaHPaHRaaiaaiaaiaaiaFRauOaHSaaqaFTanpaCuazTazUaaqaHTaHUaaqaaqaaqaaqaaqaaqaaqbXtaaqaaqaaqaaqaaqaaqaHWaaqaHXaHYaHYaHYaHZaaqbXYaIbaIcaaqaHrazjazjazjazjazjaHsaaiaaaaaiaIdaIeaIfaaiaaiaIgaIhaIiaABbJAaABaABaABaABaIjaABaABaDBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaIkaIlaImaztaztaInbYDaztaztaIoaIpaIqaaiaBIaIraCSaBNaBNaBNaBOaDIaaiaaqaaqanpbjQaaqaaqaHHaFxaCXaaiaaiaaiaaiaaiaaiaaiaaiabnaItaaiaaiaaiaaiaaiaaiaaiaaiaaiaCbaaiaIuaIuaGMaIvaIwaGPaGQaGPaIwaIxaIyaIzaIAaaiaFRauOaFSaaqaIBayYazSazTazUaaqaICaHUaaqaIDaIEaIFaIFaaqbYFaIEaIHaaqaIIaIJaIKaaqaILaaqaHXaHYaHYaHYaHZaaqbYEaINaIOaaqaIPaIQaIQaIQaIQaIQaIRaaaaaaaaiaISaITaIUaaiaaiaIVaIWaIXaaqaaqaaqaaqaaqaaqaaqaaqaaqaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBKaIYaIZaBNaBNaBNaBNaJaaBNaBNaBNaJaaBNaJbaJcaJdaJeaJfaJgaJgaJgaJhaDIaaiaJiaJjaJkaJlaaqaaqaJmaFxaCXaaiaJnaJoaJpaJoaJqaaiaJraJsaJtaJuaJvaaiaJwaJwaJxaJwaJyaaiaCbaaiaFFaFGaJzaJAaHPaFGaJBaFGaHPaJCaJDaFGaFQaaiaFRauOaJEaaqaFTaBpaBqazTazUaaqaJFaJGaaqaJHaIEaIEaIEaHVaJIaJJaJKaaqaJLaJMaJNaJOaJPaaqaJQaJRaJSaJRaJTaaqaJUaJVaJWaaiaaaaaaaaaaaaaabaaaaaaaaaaaaaaiaJXaJYaJZaaiaaiaKaaKbaKcaaqaKdaKeaKfaKfaKfaKfaKfaKgaKhaKiaKiaKjaKiaKiaKiaKiaKkaKlaKmaaiaKnaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaKoaALaALaALaALaKpaALaALaALaKpaKqaKraKsaKtaKsaKuaKvaKvaKvaKwaKxaaiaZgaKzaKAaKBaKCaaqaHHaFxaCXaaiaKDaJqaJqaJqaJqaaiaKEaKFaKGaKHaKIactaKJaKJaKKaKJaKLaaiaCbaaiaIuaIuaGMaKMaIwaGPaKNaGPaIwaKOaGTaKPaKQaaiaKRaxhaKSaaqaFTaBpayOayOayOayOaKTaKUbQPaKWaKXayOayOayOaaEayOabtaKYaKZaLabTDayOaLcaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaiaaiaaiaaianEanGaaiaaiaaiaaiaaiaaiaLdaamaaiaaiaLeaLfaLgaLhaLiaLjayOayOayOayOayOaLkaLlayOayOaLmayOaLnayOayOaaEaLoaaqaaqaLpaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiacBadPaaaaaaaaaaaaaaaaaaaaaaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLraLsaLsaLtaLsaLsaLuaLvaLsaLsaLtaLwaDHaLxaLyaLzaLAaLBaLCaLCaLCaLDaLEaaiaLFbjhaLHaLIaLJaLKaLLaLMaGHaaiaLNaLOaLPaLQaLRaLSaLTaLUaLVaLWaLXaLYaLZaMaaMbaMcaMdacdaMeaaiaaiaaiaaiaMfaHPaFGaHQaFGaHPaMgaaiaaiaaiaaiaMhaMiaMjaaqaIBaMkarNarNarNaMlaMmaMnabHaMoaMpabHaMqabHaMrabHaMsazfaMtaMuaMvaaqaMwaMxaMyaMzaMzaMxaMAaMBaMBaMBaMBaMBaMCaMDaMBaMEaMFaMGaMHaMIaMJaMJaMKaMLaMMaMNaMOaMPaKbaMQaMRaMSaMTaaqaMUaMVaMWaaqaMXaMYaaqaMZaNaaNbaNcaNdaNeaNfaNgaNhaNiaNjaaicsIctJcuXctEctIcsPckobkbbOaaZoaaaaaaaaaaaaaaaaaaaaaaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNpaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaLraNqaNraNraNraNsaNtaNuaNvaNwaNsaNraNxaNyaNzaaiaDBaIkaNAaBNaBNaBNaNBaNCaaiaNDaNEbaraNGbTGaaqaNIaNJaFxaaiaNKaNLaNMaNNaNOactaNPaNQaNRaNSaNTaaiaNUaNVaNWaJwaNXaaiaxJaaiaFFaFGaNYaJAaHPaFGaHQaFGaHPaJCaNZaaiaaiaaiaOaaObaOcaOdaOeabnaaiaaiaaiaaqaOfaOgaaqaOhaIEaaqaOiaaqaOjaaqaOkaOlaOmaOnaOoaOpaOqaOraOsaOtaOuazaaOvaOuaOuaOwaOuaOraOxaOraOyaOraOraOzaOAaOBaOCaOCaODaOEaOFaOGaOHaOIaOJaOJaOKaOLaOMaONaOOaOPaOQaaqaORbUfaaqaOTaOUaOVaOWaNdaOXaNfaNgaNhaOYaOZaaicvbcvccvccvVbkbbkbbkbbkbbOaaZoaaaaaaaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPaaNxaPbaPcaPdaPbaPdaNraPdaPbaPdaPcaPeaLsaLwaaiaaiaPfaBNaBNaBNaBNaPgaPhaaiaCeaPjaPkaPlaCnayOaPnaPoaaqaaiaPtaPpaPqaJqaJqaaiaPraNQaNRaNSaPsaaiaOSaNVaPuaPvaJwaaiaxJaaiaPwaPxaGMaPyaPzaGPaPAaGPaPBaPCaPDaaiaPEaPFaPGaPHaPIaPJaPKaPLaaaaaaaaiaPMaPNaPOaaqaNHaIEaIEaIEaPQaIEaIEaIEaaJaPRaLbaaqaMXanpaaqaPTaaqaaqaPUaPVaPWaPXaPYaaqaPZaQaaaqaMXaaqaaqaaqaaqaQbaaqaaqanpaaqaaqaaqaaqaQcaQdaQdaaJaOMaQeaQfaQgaQhaQiaaqaQjaQkaaqaQlaQmaQnaOWaQoaOXaNfaNgaNhaQpaQqaaiaKVbSWbSWbSVbkbbkbbkbbkbbOaaZoaaaaaaaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQsaQtaPbaPcaPdaPbaPdaNraPdaPbaPdaQuaNxaNraQvaLwaaiaQwaBNaBNaBNaBNaQxaQyazzaQzaQAaQBaQAaQCaQDaQEaQFaQGaaiaaiaqAaaiaaiaaiaaiaFoaQHaQIaFoaQJaaiaaiaqAaaiaaiaaiaaiaQKaaiaaiaaiaaiaQLaQMaQNaQOaQNaQPaQQaaiaaiaQRaPHaPHaPHaPHaQSaQTaQUaQVaQWaaiaQXaPNaQYaaqaaqaaqaaqaaqaaqaaqaaqaaqaaJaQZaRaaRbaRcaRdaReaRfaRgaaqaRhaRiaRjaRkaRlaaqaRmaRnaRoaIMaRoaRqaRraRsaRtaRuaRvaRwaRxaRyaRzaaqaRAaRBaRCaRDaREaQeaRFaQgaQhaRGaaqaRHaRIaBeaRKaRLaOWaOWaaqaOZaNfaNgaNhaRMaRNaaibSUbhlaAqbJzaIGbNWbkbbkbaVTaZoaaaaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPaaNxaPbaPcaPdaPbaPdaNraPdaPbaPdaPcaPeaLsaLwaaiaaiaPfaBNaBNaBNaBNaPgaPhaaiaCeaWxaPkaQAaCnayOaPnaPoaaqaaiaPtaPpaPqaJqaJqaaiaPraNQaNRaNSaPsaaiaOSaNVaPuaPvaJwaaiaxJaaiaPwaPxaGMaPyaPzaGPaPAaGPaPBaPCaPDaaiaPEaPFaPGaPHaPIaPJaPKaPLaaaaaaaaiaPMaPNaPOaaqaNHaIEaIEaIEaPQaIEaIEaIEaaJaPRaLbaaqaMXanpaaqaPTaaqaaqaPUaPVaPWaPXaPYaaqaPZaQaaaqaMXaaqaaqaaqaaqaQbaaqaaqanpaaqaaqaaqaaqaQcaQdaQdaaJaOMaQeaQfaQgaQhaQiaaqaQjaQkaaqaQlaQmaQnaOWaQoaOXaNfaNgaNhaQpaQqaaiaKVbSWbSWbSVbkbbkbbkbbkbbOaaZoaaaaaaaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQsaQtaPbaPcaPdaPbaPdaNraPdaPbaPdaQuaNxaNraQvaLwaaiaQwaBNaBNaBNaBNaQxaQyazzaQzaPlaQBaPlaQCaQDaQEaQFaQGaaiaaiaqAaaiaaiaaiaaiaFoaQHaQIaFoaQJaaiaaiaqAaaiaaiaaiaaiaQKaaiaaiaaiaaiaQLaQMaQNaQOaQNaQPaQQaaiaaiaQRaPHaPHaPHaPHaQSaQTaQUaQVaQWaaiaQXaPNaQYaaqaaqaaqaaqaaqaaqaaqaaqaaqaaJaQZaRaaRbaRcaRdaReaRfaRgaaqaRhaRiaRjaRkaRlaaqaRmaRnaRoaIMaRoaRqaRraRsaRtaRuaRvaRwaRxaRyaRzaaqaRAaRBaRCaRDaREaQeaRFaQgaQhaRGaaqaRHaRIaBeaRKaRLaOWaOWaaqaOZaNfaNgaNhaRMaRNaaibSUbhlaAqbJzaIGbNWbkbbkbaVTaZoaaaaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQsaQtaRQaPcaPdaPbaPdaRRaPdaPbaPdaPcaLtaNraRSaRTaaiaRUaBNaBNaBNaBNaBOaRVaBNaRWaDeaRYaRZaSaaQGaSbaScaQGaSdaSeaSfaQGaQGaQGaSgaQGaSbaShaQGaSiaSjaQGaSkaQGaSlaSeaSmaSnaSoaSpaSqaSraSsaStaStaStaStaStaStaSuaSvaSwaSxaSyaSzaSAaSBaSCaSDaPHaPHaSEaSFaSGaSFaSHaSIaSJaSKaSLaSMaSNaaqaSOaSPaSQaSRaSSaSSaSTaSUaSVaSWaaqaSXaSYaSZaSZaTaaaqaTbaTcaTdaTeaTfaTfaTgaThaTiaThaTjaTkaTlaTmbhYaaqaQcaQdaToaTpaTvaTqaTraTsaTqaTtaaqaTuaRpaaqaTwaTxaOWaTnaaqaTyaTzaTAaNhaOZaOZaaibUQbUPabnaqAaaiaaiaaiaaiaaiacBacBaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQsaQtaPbaPcaPdaPbaPdaNraPdaPbaPdaPcaNxaNraTCaTDaaiaTEaBNaBNaBNaBNaBOaTFaKvaTGaTHaTIaTHaTJaTKaSbaTLaTMaTNaTOaTPaTMaTMaTMaQEaTMaQEaTQaTMaTRaTMaTMaTSaQGaSlaSeaSmaSnaSnaSnaSnaTTaSnaSnaSnaSnaSnaSnaTUaTVaTWaTXaTYaTZaUaaUbaUcaUdaUeaUeaUeaUfaUgaUgaUgaUhaSNaSNaSNaUiaUjaSNaaqaUkaUlaSSaSSaUmaSSaUnaUoaSVaUpaaqaUqaPPaUsaUtaPSaaqaUvaUwaUxaUyaUzaUAaaqaUBaUCaUBaaqaaqaaqanpaaqaaqaQcaQdaQdaaJaUDaOMaOMaUEaOMaUFaaqaaqaaqaaqaaqaaqaaqaCoaaqaNhaNhaNgaNhaYQaUIaaqbUOaUKaULaWleAeaUNaUOaUPayKaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUQaNxaPbaPcaPdaPbaPdaNraPdaPbaPdaPcaPeaLsaTDaaiaaiaURaBNaBNaBNaBNaBOaUSaBNaRWaxXaUUaUVaSaaQGaUWaUXaUYaUZaVaaVbaVcaVcaVdaVeaVfaVgaVhaVcaViaVcaVcaVjaVkaVlaVaaVmaVnaVoaVpaVqaVraVqaVqaVqaVqaVqaVqaVsaVtaVuaVuaVuaVuaVvaVuaVwaVxaVuaVuaVuaVyaVzaVzaVzaVzaVzaVzaVzaVAaSNaSNaaqaVBaVCaVDaVEaVEaVFaVGaUoaSVaVHaaqaaqaaqaaqaaqaVIaaqaVJaVKaVLaVMaRoaFmaaqaVNaVOaVPaVQaVRaVSaUraVUaaqaQcaQdaVVaaJaVWaVWaVXaVYaVZaVZaWaaaqaWbaWcaxOaaqaWeaWfaWgaNhaNhaWhaWiaOZaWjaaqaWkaUKaULezWezVaUKaUKaWmazGaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWnaNqaNraNraNraNraWoaNraNraWpaNraNraNxaWqaWraaiaBIaIraWsaBNaBNaBNaWtaWuaWvaWwaWxaWyaWxaWzaWAaSbaWBaWCaaiaaiaaiaaiaaiaaiaaiaFoaWDaWEaFoaWFaaiaaiaqAaaiaaiaaiaaiaWGaWHaWGaWIaQVaQVaQVaQVaQVaQVaQVaQWaaiaWJaWKaWLaWMaWMaWNaWOaWPaWQaWKaWRaaiaFoaQVaQVaQVaQVaQVaWSaWTaWTaWTaaqaWUaWVaWWaWWaWWaWWaWXaKZaWYaWZaXaaXbaxKaXdaXeaXfaaqaaqawwaFoaXhaQVawZaaqaXiaXjaXkaXkaXkaXkaXlaXmaaqaXnaQdaQdaaJaXoaOMaVXaVYaOMaOMaXpaaqaXqaXraXsaaqaNhaXtaXuaXvaXvaXwaXxaUHaXzayOaUMaXBaXCaXDaWlaUKaUKaXEazGaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWnaLsaLsaLtaLsaLsaLuaLvaLsaLsaLtaTDaDHaLxaXFaXGaLAaXHaLCaLCaLCaXIaXJaaiazLaXLaXMaXNayWaaiaXPaXQaXRaaiaXSaXTaXUaXVaXVaaiaPraKHaXWaXXaXYaaiaXZaYaaYbaYcaYdaaiaYeaYfaSsaYgaaaaaaaaaaaaaaaaaaaaaaaiaYhaYiaYjaYkaYlaYmaYlaYnaYoaYpaYqaYraaiaaaaaaaaaaaaaaaaaaazGaYsaSNaYtaYuaYvaWVaWZaWZaWZaWZaWZaYwaYxaWZaWZaWZaxKaYyaYyaYzaYAaYBaYCaYDaYEaYFaYGaaqaYHaYIaYJaYKaYKaYJaYLaYMaaqaQcaQdaQdaaJaYNaYNaVXaVYaYOaYOaHCaaqaaqaXyaaqaaqaYRaWfaWiaYSaYSaYTaWiaOZaaqaaqaYUaUKaYVaYVaYWaYVaUKaXEazGaaaaaaaaaaYXaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWnaNqaNraNraNraNraWoaNraNraWpaNraNraNxaWqaWraaiaBIaIraWsaBNaBNaBNaWtaWuaWvaWwaGxaWyaGxaWzaWAaSbaWBaWCaaiaaiaaiaaiaaiaaiaaiaFoaWDaWEaFoaWFaaiaaiaqAaaiaaiaaiaaiaWGaWHaWGaWIaQVaQVaQVaQVaQVaQVaQVaQWaaiaWJaWKaWLaWMaWMaWNaWOaWPaWQaWKaWRaaiaFoaQVaQVaQVaQVaQVaWSaWTaWTaWTaaqaWUaWVaWWaWWaWWaWWaWXaKZaWYaWZaXaaXbaxKaXdaXeaXfaaqaaqawwaFoaXhaQVawZaaqaXiaXjaXkaXkaXkaXkaXlaXmaaqaXnaQdaQdaaJaXoaOMaVXaVYaOMaOMaXpaaqaXqaXraXsaaqaNhaXtaXuaXvaXvaXwaXxaUHaXzayOaUMaXBaXCaXDaWlaUKaUKaXEazGaaaaaaaaaaaaaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaNpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWnaLsaLsaLtaLsaLsaLuaLvaLsaLsaLtaTDaDHaLxaXFaXGaLAaXHaLCaLCaLCaXIaXJaaiazLaPjaXMaGzayWaaiaXPaXQaXRaaiaXSaXTaXUaXVaXVaaiaPraKHaXWaXXaXYaaiaXZaYaaYbaYcaYdaaiaYeaYfaSsaYgaaaaaaaaaaaaaaaaaaaaaaaiaYhaYiaYjaYkaYlaYmaYlaYnaYoaYpaYqaYraaiaaaaaaaaaaaaaaaaaaazGaYsaSNaYtaYuaYvaWVaWZaWZaWZaWZaWZaYwaYxaWZaWZaWZaxKaYyaYyaYzaYAaYBaYCaYDaYEaYFaYGaaqaYHaYIaYJaYKaYKaYJaYLaYMaaqaQcaQdaQdaaJaYNaYNaVXaVYaYOaYOaHCaaqaaqaXyaaqaaqaYRaWfaWiaYSaYSaYTaWiaOZaaqaaqaYUaUKaYVaYVaYWaYVaUKaXEazGaaaaaaaaaaYXaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaYYaYZaYZaYZaYZaYZaYZaYZaYZaYZaZaaKraKsaKtaKsaZbaKvaKvaKvaZcaZdaaiaZeaZfaKyaZhaZiaaiaSbaWBaQGaaiaZjaXTaZkaXTbjYaaiaZlaNSaZmaNSaZnaaibjVaZpaZqaZraZsaaiaYeaYfaSsaYgaaaaaaaaaaaaaaiaaiaaiaaiaZtaZuaZvaZwaZxaZyaZzaZAaZBaZCaZDaZEaaiaaiaaiaaaaaaaaaaaaazGaYsaSNaSNeDVaWZaZGaZHaZIaWZaZJaZKaJNaZLaZMaZIaWZaxKaYyaYyaZNaZOaYyaZPaZQaZRaZSaYyaZTaZUaZVaYJaYKaYKaYJaZWaZXaaqaZYaQdaQdaaJaXoaOMaVXaVYaOMaOMaOMaZZbaaaOMbabaaqbacbadbaeaYSaYSbafbaebagaaqbahaXAaUKbaibaibajbaiaUKaXEaHubakanFanFbalaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBKaIYbamaBNaBNaBNaBNaBNaBNaBNaBNaBNaBNaJbbanbaoaJebapaJgaJgaJgaJhbaqaaiaNFaXgbatbaubgbbawbaxbayaQGaaibazbaAbaBbaCbaDbaEaVcbaFbaGbaFaVjbaHbaIbaJbaKbaLbaMaaibaNbaOaSsbaPanGaaiaaiaaiaaibaQbaRbaSbaTbaUbaUbaVbaWbaUbaVbaWbaXbaYbaUbaZbbabbbaaiaaiaaiaaiaFobbcaYsaSNaSNaaqbbdaZGaZMaZIaWZbbebbfaWZbbgbbhaZIaWZaxKaYyaYybbibbjbbkbblbbmbbnbboaYybbpaZUbbqaYJaYKaYKaYJbbraZXaaqaQcaQdaQdaaJbbsbbsaVXaVYbbtaOMaOMbbuaOMbbvbbwaaqbbxbbybbzaYSaYSbbAbbzbbBaaqbbCaXAaUKaUKaUKaWlaUKaUKbbDbbEbbFbbGbbHbbIaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaIrbbJbbKbbLbbLbbLbbLbcdbbLbbMbbNbbOaaiaDBaIkaGwaBNaBNaBNaBObbPaaibbQbbRbbSbbTbbUactbbVbbWbbXaaibbYbbZbcabbZbbZacdbcbaNSaZmaNSbccaaibMDaYabceaXZbcfaaiaYeaYfaSsaStaStbcgbchbciaaibcjaZybaUbckbaUbaUbaUbaUbclbaUbcmbaXbcnbcobcobcpbcqaaibcrbchbcsbctbcuaYsaSNaSNeDVaWZbcvaWZaWZaWZbcwbcxaWZbbgbcyaZIaWZaxKaYyaYybczbcAbcBbcCbcDbbnbbobcEaaqbcFbcGaYJaYKaYKaYJbcHbcIaaqbcJbcKbcKaaJaaqaaqbcLaVYbcMbcNaOMbcObcPaRFbcQayObcRbcSbcTbcUbcUbcVbcWbcXayObcYbUTaUKbcZaUKaWlaUKaUKbdabdbbakanFanFbdcaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaLqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
diff --git a/nano/css/shared.css b/nano/css/shared.css
index e2d70f30dac..e10b38c6c41 100644
--- a/nano/css/shared.css
+++ b/nano/css/shared.css
@@ -30,7 +30,7 @@ hr {
height: 1px;
}
-.link, .linkOn, .linkOff, .selected, .disabled {
+.link, .linkOn, .linkOff, .selected, .disabled, .yellowButton, .redButton {
float: left;
min-width: 15px;
height: 16px;
@@ -173,11 +173,11 @@ h4 {
font-weight: bold;
}
-.redBackground {
+.redButton {
background: #ea0000;
}
-.yellowBackground {
+.yellowButton {
background: #cacc00;
}
diff --git a/nano/debug.html b/nano/debug.html
index 39f94c115fb..0ab7b82cb68 100644
--- a/nano/debug.html
+++ b/nano/debug.html
@@ -16,7 +16,7 @@
-