From c175833b9cb725493b25bc62ad4da99b54a58497 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Tue, 15 Jan 2013 07:17:21 +0400 Subject: [PATCH 01/63] Started working on making paper use HTML instead of only BBCode again. Whitelisting system for tags. Blacklist for words like 'java' and names of even triggers. Might move to whitelist for those too, on Mini's suggestion. --- code/global.dm | 6 ++++++ code/modules/paperwork/paper.dm | 28 +++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/code/global.dm b/code/global.dm index d0ca913571..b48e18a5a1 100644 --- a/code/global.dm +++ b/code/global.dm @@ -26,6 +26,12 @@ var/global/list/global_map = null ////////////// +var/list/paper_tag_whitelist = list("center","p","div","span","h1","h2","h3","h4","h5","h6","hr","pre", \ + "big","small","font","i","u","b","s","sub","sup","tt","br","hr","img","ol","ul","li","caption","col", \ + "table","td","th","tr") +var/list/paper_blacklist = list("java","onblur","onchange","onclick","ondblclick","onfocus","onkeydown", \ + "onkeypress","onkeyup","onload","onmousedown","onmousemove","onmouseout","onmouseover", \ + "onmouseup","onreset","onselect","onsubmit","onunload") var/BLINDBLOCK = 0 var/DEAFBLOCK = 0 diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index e59e05b727..c0c5f262e7 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -231,7 +231,8 @@ if(href_list["write"]) var/id = href_list["write"] //var/t = strip_html_simple(input(usr, "What text do you wish to add to " + (id=="end" ? "the end of the paper" : "field "+id) + "?", "[name]", null),8192) as message - var/t = strip_html_simple(input("Enter what you want to write:", "Write", null, null) as message, MAX_MESSAGE_LEN) + //var/t = strip_html_simple(input("Enter what you want to write:", "Write", null, null) as message, MAX_MESSAGE_LEN) + var/t = input("Enter what you want to write:", "Write", null, null) as message var/obj/item/i = usr.get_active_hand() // Check to see if he still got that darn pen, also check if he's using a crayon or pen. var/iscrayon = 0 if(!istype(i, /obj/item/weapon/pen)) @@ -243,6 +244,31 @@ if((!in_range(src, usr) && loc != usr && !( istype(loc, /obj/item/weapon/clipboard) ) && loc.loc != usr && usr.get_active_hand() != i)) // Some check to see if he's allowed to write return + t = sanitize_simple(t, list("&#"=".")) + var/p = findtext(t,"<",1) + while (p) //going through all the tags + var/start = p++ + tag = copytext(t,p, p+1) + world << "2 [copytext(t,p, p+1)]" + if (tag != "/") + while (reject_bad_text(copytext(t, p, p+1), 1)) + tag = copytext(t,start, p) + p++ + tag = copytext(t,start+1, p) + world << "Tag is [tag] at [start]" + if (!(tag in paper_tag_whitelist)) //if it's unkown tag, disarming it + t = copytext(t,1,start-1) + "<" + copytext(t,start+1) + p = findtext(t,"<",p) + + // check for exploits + for(var/bad in paper_blacklist) + if(findtext(t,bad)) + usr << "\blue You think to yourself, \"Hm.. this is only paper...\"" + log_admin("PAPER: [usr] ([usr.ckey]) tried to use forbidden word in [src]: [bad].") + message_admins("PAPER: [usr] ([usr.ckey]) tried to use forbidden word in [src]: [bad].") + return + + t = replacetext(t, "\n", "
") t = parsepencode(t, i, usr, iscrayon) // Encode everything from pencode to html if(id!="end") From e34d033cc94d5a534b11f4e9d9973c9466f9f3f6 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Tue, 12 Feb 2013 20:43:22 +0400 Subject: [PATCH 02/63] Moved tag whitelist check to HELPERS. Removed img tag from whitelist. --- code/__HELPERS/text.dm | 19 ++++++++++++++++++- code/global.dm | 2 +- code/modules/paperwork/paper.dm | 16 +--------------- 3 files changed, 20 insertions(+), 17 deletions(-) diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index da9d8b34bc..a493aa9d08 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -140,7 +140,24 @@ return t_out - +//checks text for html tags +//if tag is not in whitelist (var/list/paper_tag_whitelist in global.dm) +//relpaces < with < +proc/checkhtml(var/t) + t = sanitize_simple(t, list("&#"=".")) + var/p = findtext(t,"<",1) + while (p) //going through all the tags + var/start = p++ + var/tag = copytext(t,p, p+1) + if (tag != "/") + while (reject_bad_text(copytext(t, p, p+1), 1)) + tag = copytext(t,start, p) + p++ + tag = copytext(t,start+1, p) + if (!(tag in paper_tag_whitelist)) //if it's unkown tag, disarming it + t = copytext(t,1,start-1) + "<" + copytext(t,start+1) + p = findtext(t,"<",p) + return t /* * Text searches */ diff --git a/code/global.dm b/code/global.dm index 568e7a180c..591f90cc5f 100644 --- a/code/global.dm +++ b/code/global.dm @@ -28,7 +28,7 @@ var/global/list/global_map = null ////////////// var/list/paper_tag_whitelist = list("center","p","div","span","h1","h2","h3","h4","h5","h6","hr","pre", \ - "big","small","font","i","u","b","s","sub","sup","tt","br","hr","img","ol","ul","li","caption","col", \ + "big","small","font","i","u","b","s","sub","sup","tt","br","hr","ol","ul","li","caption","col", \ "table","td","th","tr") var/list/paper_blacklist = list("java","onblur","onchange","onclick","ondblclick","onfocus","onkeydown", \ "onkeypress","onkeyup","onload","onmousedown","onmousemove","onmouseout","onmouseover", \ diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 20ec1f450d..439bf62baf 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -249,21 +249,7 @@ if((!in_range(src, usr) && loc != usr && !( istype(loc, /obj/item/weapon/clipboard) ) && loc.loc != usr && usr.get_active_hand() != i)) // Some check to see if he's allowed to write return - t = sanitize_simple(t, list("&#"=".")) - var/p = findtext(t,"<",1) - while (p) //going through all the tags - var/start = p++ - tag = copytext(t,p, p+1) - world << "2 [copytext(t,p, p+1)]" - if (tag != "/") - while (reject_bad_text(copytext(t, p, p+1), 1)) - tag = copytext(t,start, p) - p++ - tag = copytext(t,start+1, p) - world << "Tag is [tag] at [start]" - if (!(tag in paper_tag_whitelist)) //if it's unkown tag, disarming it - t = copytext(t,1,start-1) + "<" + copytext(t,start+1) - p = findtext(t,"<",p) + t = checkhtml(t) // check for exploits for(var/bad in paper_blacklist) From cbaeb8afafa7059020dfd38b5f938d497fa65601 Mon Sep 17 00:00:00 2001 From: fauxtada Date: Thu, 16 May 2013 19:36:52 -0700 Subject: [PATCH 03/63] the adding of security spawn points removed the pipes underneath them in the security storage room. put pipes back. --- maps/tgstation.2.1.0.0.1.dmm | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index 965e4b0fb1..f8258e6b8f 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -217,7 +217,7 @@ "aei" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/security/range) "aej" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "1"},/turf/simulated/floor,/area/security/range) "aek" = (/obj/machinery/computer/security,/turf/simulated/floor,/area/security/main) -"ael" = (/obj/structure/stool,/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) +"ael" = (/obj/structure/stool,/turf/simulated/floor,/area/security/main) "aem" = (/turf/simulated/floor,/area/security/main) "aen" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/main) "aeo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/main) @@ -297,16 +297,16 @@ "afK" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 100; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/warden) "afL" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Armory"; req_access = null; req_access_txt = "3"},/turf/simulated/floor,/area/security/warden) "afM" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) -"afN" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) +"afN" = (/obj/structure/stool/bed/chair{dir = 8},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) "afO" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/main) "afP" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "afQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "afR" = (/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"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main) "afS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/security/main) "afT" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) -"afU" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/security/main) +"afU" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "afV" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) -"afW" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/security/main) +"afW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "afX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/main) "afY" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/door/airlock/glass_command{name = "Head of Security"; req_access_txt = "58"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "afZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/carpet{icon_state = "carpetnoconnect"},/area/security/hos) @@ -329,13 +329,13 @@ "agq" = (/obj/structure/rack,/obj/item/weapon/storage/box/seccarts{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs{pixel_x = -2; pixel_y = -2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/warden) "agr" = (/obj/structure/rack,/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/warden) "ags" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = -30; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) -"agt" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) +"agt" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) "agu" = (/obj/structure/closet/secure_closet/security,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/main) "agv" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/item/device/assembly/timer,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "agw" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "agx" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "agy" = (/obj/structure/table,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) -"agz" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor,/area/security/main) +"agz" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) "agA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/table,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) "agB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/security/hos) "agC" = (/turf/simulated/floor/carpet{icon_state = "carpetnoconnect"},/area/security/hos) @@ -9919,7 +9919,7 @@ "dIM" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/obj/machinery/mineral/output,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) "dIN" = (/obj/machinery/mineral/stacking_machine,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) "dIO" = (/obj/machinery/conveyor{tag = "icon-conveyor0 (SOUTHWEST)"; icon_state = "conveyor0"; dir = 10; id = "mining_internal"},/obj/machinery/mineral/input,/turf/simulated/floor{dir = 8; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) - + (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -9993,12 +9993,12 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMadSadTadUadVadWadXadYadZaaGaeaaebaaMaaaaaaabMaecaedachaeeaefabMaegaaSaehaeiaejaaSaekaelaemaenaeoaepadPaeqaeraesaetadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMaaiaaiaaiaaiacNaeuaevaewaexaexaexaexaexaexabMabMaeyaezaeAabMabMaeBaeCaeDaeEaeFaeGaeHaeHaeHaeIaeJaeKaeLaeMaeNaeOaePaeQaeRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaeSaeTaeUaeVaeWadAaexaeXaeYaeYaeYaeYaegaeZafaafbafcafdaegafeaffafgafhafiafjafkaflaflafmafnafoafpafqafrafsaftafuafvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiafwafxafyafzadhafAaexafBafCafDafEafDafFafGafHafIafJafKafLafMafNafOafPafQafRafSafTafUafVafWafXafYafZagaagbagcagdadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiageaaoagfaggaghagiaexagjagkafDaglagmaegagnagoagpagqagraegagsagtaguagvagwagxaemagyagzagAagzaemagBagCagDagEagFagGaeLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiagHagIagJagKagLadAaexagMagNagOagPagMabMagQagRagSagTagUaegagsagtaguagVagWagXagYagZagZahaagZahbahcahdaheahfahfahgahhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiahiahjahkaexahlahmahnahoahnahpahqahrahsahtahuahvahwagtaguahxahyahzaemahAagzahAagzahBahCahDahEahFahGadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahHahIadAaexahJahKahLahMahNahOahPahQahRahSahTahUahVafNaguahWahyahXaemagyagzagyagzahYadPadPadPahZaiaadPaibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaicaevaidaexaieaifaigaihahNaiiaijaikahsailaimahvainagtaguaioaipaiqairaisaitaemaiuaivabYabYabXaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiafwafxafyafzadhafAaexafBafCafDafEafDafFafGafHafIafJafKafLafMafWafOafPafQafRafSafTagtafVagzafXafYafZagaagbagcagdadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiageaaoagfaggaghagiaexagjagkafDaglagmaegagnagoagpagqagraegagsaenaguagvagwagxaemagyafNagAafNaemagBagCagDagEagFagGaeLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiagHagIagJagKagLadAaexagMagNagOagPagMabMagQagRagSagTagUaegagsaenaguagVagWagXagYagZagZahaagZahbahcahdaheahfahfahgahhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiahiahjahkaexahlahmahnahoahnahpahqahrahsahtahuahvahwaenaguahxahyahzaemahAafNahAafNahBahCahDahEahFahGadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahHahIadAaexahJahKahLahMahNahOahPahQahRahSahTahUahVafUaguahWahyahXaemagyafNagyafNahYadPadPadPahZaiaadPaibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaicaevaidaexaieaifaigaihahNaiiaijaikahsailaimahvainaenaguaioaipaiqairaisaitaemaiuaivabYabYabXaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaexaexaexaexagMaiwaixaiyaexaizaiAaiBaihahNaegaiCacyaiDaiEaiFaegaiGaiHaiIaiJaffaiKabXaiLaiMaiNaiOaiPaiQaiRabXabXabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexaiSaiTaiUaiVaiWaiXaiYaexaiZajaaiZajbaiZaegajcajdajeajfagUaegabXajgajhabXajiajjabXajkajlajlajmabXaexaiRajnajoajpajpajqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexajrajsajtajuajvajwajxajyajyajzajAajBajyajyajyajBajCajzajDajEajAajFajGajHajIajJajKajLajMajNajOajPajQajRajSajTajUajVajWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -11467,3 +11467,4 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} + From 0da9a4538e69a37c20116712fc1561246e26f649 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 10:02:37 +0200 Subject: [PATCH 04/63] New debug log system. You can as admin toggle debug messages, VERY useful for devs and debugging the main server. --- code/__HELPERS/logging.dm | 11 +++++++++++ code/controllers/configuration.dm | 4 ++++ code/modules/admin/admin_verbs.dm | 14 +++++++++++++- code/setup.dm | 2 ++ 4 files changed, 30 insertions(+), 1 deletion(-) diff --git a/code/__HELPERS/logging.dm b/code/__HELPERS/logging.dm index 2daf3690d8..0d3112d09b 100644 --- a/code/__HELPERS/logging.dm +++ b/code/__HELPERS/logging.dm @@ -15,6 +15,17 @@ if (config.log_admin) diary << "\[[time_stamp()]]ADMIN: [text]" + +/proc/log_debug(text) + if (config.log_debug) + diary << "\[[time_stamp()]]DEBUG: [text]" + + for(var/client/C in admins) + if(R_ADMIN & C.holder.rights) + if(C.prefs.toggles & CHAT_DEBUGLOGS) + C << "DEBUG: [text]" + + /proc/log_game(text) if (config.log_game) diary << "\[[time_stamp()]]GAME: [text]" diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index f537bbae3e..02f8c521aa 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -8,6 +8,7 @@ var/log_access = 0 // log login/logout var/log_say = 0 // log client say var/log_admin = 0 // log admin actions + var/log_debug = 1 // log debug output var/log_game = 0 // log game events var/log_vote = 0 // log voting var/log_whisper = 0 // log client whisper @@ -193,6 +194,9 @@ if ("log_admin") config.log_admin = 1 + if ("log_debug") + config.log_debug = text2num(value) + if ("log_game") config.log_game = 1 diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index abcb3d52b7..51cd88e3db 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -64,6 +64,7 @@ var/list/admin_verbs_admin = list( /client/proc/cmd_admin_change_custom_event, /client/proc/cmd_admin_rejuvenate, /client/proc/toggleattacklogs, + /client/proc/toggledebuglogs, /datum/admins/proc/show_skills, /client/proc/check_customitem_activity ) @@ -721,4 +722,15 @@ var/list/admin_verbs_mod = list( if (prefs.toggles & CHAT_ATTACKLOGS) usr << "You now will get attack log messages" else - usr << "You now won't get attack log messages" + usr << "You now won't get attack log messages" + + +/client/proc/toggledebuglogs() + set name = "Toggle Debug Log Messages" + set category = "Preferences" + + prefs.toggles ^= CHAT_DEBUGLOGS + if (prefs.toggles & CHAT_DEBUGLOGS) + usr << "You now will get debug log messages" + else + usr << "You now won't get debug log messages" \ No newline at end of file diff --git a/code/setup.dm b/code/setup.dm index 35fe8827a4..d4f4941d43 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -620,6 +620,8 @@ var/list/TAGGERLOCATIONS = list("Disposals", #define CHAT_PRAYER 256 #define CHAT_RADIO 512 #define CHAT_ATTACKLOGS 1024 +#define CHAT_DEBUGLOGS 2048 + #define TOGGLES_DEFAULT (SOUND_ADMINHELP|SOUND_MIDI|SOUND_AMBIENCE|SOUND_LOBBY|CHAT_OOC|CHAT_DEAD|CHAT_GHOSTEARS|CHAT_GHOSTSIGHT|CHAT_PRAYER|CHAT_RADIO|CHAT_ATTACKLOGS) From 48b78ea758dd1bb391443807c10278b65b697e1a Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 11:06:19 +0200 Subject: [PATCH 05/63] Re-added latespawn. Used in autotraitor and RP-revolution. --- code/game/gamemodes/autotraitor/autotraitor.dm | 3 +-- code/game/gamemodes/game_mode.dm | 7 +++++-- .../game/gamemodes/revolution/rp_revolution.dm | 18 ++++++++++++++++-- code/modules/mob/new_player/new_player.dm | 2 ++ 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/code/game/gamemodes/autotraitor/autotraitor.dm b/code/game/gamemodes/autotraitor/autotraitor.dm index c0368c0ad0..c5b159dd1a 100644 --- a/code/game/gamemodes/autotraitor/autotraitor.dm +++ b/code/game/gamemodes/autotraitor/autotraitor.dm @@ -142,7 +142,7 @@ traitorcheckloop() -/* + /datum/game_mode/traitor/autotraitor/latespawn(mob/living/carbon/human/character) ..() if(emergency_shuttle.departed) @@ -192,6 +192,5 @@ //message_admins("New traitor roll failed. No new traitor.") //else //message_admins("Late Joiner does not have Be Syndicate") -*/ diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 10c0c3f631..77d4d73e6b 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -279,6 +279,7 @@ Implants; if(player.client.prefs.be_special & role) if(!jobban_isbanned(player, "Syndicate") && !jobban_isbanned(player, roletext)) //Nodrak/Carn: Antag Job-bans candidates += player.mind // Get a list of all the people who want to be the antagonist for this round + log_debug("[player.key] had [roletext] enabled, so drafting them.") if(restricted_jobs) for(var/datum/mind/player in candidates) @@ -306,6 +307,7 @@ Implants; applicant = pick(drafted) if(applicant) candidates += applicant + log_debug("[applicant.key] was force-drafted as [roletext], because there aren't enough candidates.") drafted.Remove(applicant) else // Not enough scrubs, ABORT ABORT ABORT @@ -331,7 +333,7 @@ Implants; if(applicant) candidates += applicant drafted.Remove(applicant) - message_admins("[applicant.key] drafted into antagonist role against their preferences.") + log_debug("[applicant.key] was force-drafted as [roletext], because there aren't enough candidates.") else // Not enough scrubs, ABORT ABORT ABORT break @@ -340,9 +342,10 @@ Implants; // recommended_enemies if the number of people with that role set to yes is less than recomended_enemies, // Less if there are not enough valid players in the game entirely to make recommended_enemies. -/* + /datum/game_mode/proc/latespawn(var/mob) +/* /datum/game_mode/proc/check_player_role_pref(var/role, var/mob/new_player/player) if(player.preferences.be_special & role) return 1 diff --git a/code/game/gamemodes/revolution/rp_revolution.dm b/code/game/gamemodes/revolution/rp_revolution.dm index 2159138448..643384554d 100644 --- a/code/game/gamemodes/revolution/rp_revolution.dm +++ b/code/game/gamemodes/revolution/rp_revolution.dm @@ -57,7 +57,7 @@ var/datum/objective/mutiny/rp/rev_obj = new rev_obj.owner = rev_mind rev_obj.target = head_mind - rev_obj.explanation_text = "Assassinate or capture [head_mind.name], the [head_mind.assigned_role]." + rev_obj.explanation_text = "Assassinate, convert or capture [head_mind.name], the [head_mind.assigned_role]." rev_mind.objectives += rev_obj update_rev_icons_added(rev_mind) @@ -210,4 +210,18 @@ message_admins("Unable to add new heads of revolution.") tried_to_add_revheads = world.time + 6000 // wait 10 minutes - return ..() \ No newline at end of file + return ..() + + +/datum/game_mode/revolution/rp_revolution/latespawn(mob/M) + if(M.mind.assigned_role in command_positions) + log_debug("Adding head kill/capture/convert objective for [M.name]") + heads += M + + for(var/datum/mind/rev_mind in head_revolutionaries) + var/datum/objective/mutiny/rp/rev_obj = new + rev_obj.owner = rev_mind + rev_obj.target = M.mind + rev_obj.explanation_text = "Assassinate, convert or capture [M.name], the [M.mind.assigned_role]." + rev_mind.objectives += rev_obj + rev_mind.current << "\red A new Head of Staff, [M.name], the [M.mind.assigned_role] has appeared. Your objectives have been updated." \ No newline at end of file diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 97133deb4c..a5b92bdc40 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -277,6 +277,8 @@ character.loc = pick(latejoin) character.lastarea = get_area(loc) + ticker.mode.latespawn(character) + //ticker.mode.latespawn(character) if(character.mind.assigned_role != "Cyborg") From e4b610207b042c2a2249c492323be585113e4038 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 11:34:00 +0200 Subject: [PATCH 06/63] Make debug log accessible to mods and coders. --- code/__HELPERS/logging.dm | 5 ++--- code/modules/admin/admin_verbs.dm | 4 +++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/code/__HELPERS/logging.dm b/code/__HELPERS/logging.dm index 0d3112d09b..8a5b496328 100644 --- a/code/__HELPERS/logging.dm +++ b/code/__HELPERS/logging.dm @@ -21,9 +21,8 @@ diary << "\[[time_stamp()]]DEBUG: [text]" for(var/client/C in admins) - if(R_ADMIN & C.holder.rights) - if(C.prefs.toggles & CHAT_DEBUGLOGS) - C << "DEBUG: [text]" + if(C.prefs.toggles & CHAT_DEBUGLOGS) + C << "DEBUG: [text]" /proc/log_game(text) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 51cd88e3db..25daafc9f4 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -135,7 +135,8 @@ var/list/admin_verbs_debug = list( /client/proc/reload_admins, /client/proc/restart_controller, /client/proc/enable_debug_verbs, - /client/proc/callproc + /client/proc/callproc, + /client/proc/toggledebuglogs ) var/list/admin_verbs_possess = list( /proc/possess, @@ -223,6 +224,7 @@ var/list/admin_verbs_mod = list( /client/proc/cmd_admin_pm_context, /*right-click adminPM interface*/ /client/proc/cmd_admin_pm_panel, /*admin-pm list*/ /client/proc/debug_variables, /*allows us to -see- the variables of any instance in the game.*/ + /client/proc/toggledebuglogs, /datum/admins/proc/PlayerNotes, /client/proc/admin_ghost, /*allows us to ghost/reenter body at will*/ /client/proc/cmd_mod_say, From be197afc7744d037e4fe436b139c533c924372bf Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 13:06:16 +0200 Subject: [PATCH 07/63] Added system for newscaster events. This way people can write stories, separated into several pieces, which will be announced through the newscasters over the course of the round. --- baystation12.dme | 227 ++++++++++++++++++++++++++ code/WorkInProgress/periodic_news.dm | 72 ++++++++ code/controllers/master_controller.dm | 1 + code/game/gamemodes/game_mode.dm | 1 + 4 files changed, 301 insertions(+) create mode 100644 code/WorkInProgress/periodic_news.dm diff --git a/baystation12.dme b/baystation12.dme index 57a993230e..915e5c3d5f 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -6,14 +6,235 @@ // BEGIN_FILE_DIR #define FILE_DIR . #define FILE_DIR "code" +#define FILE_DIR "code/__HELPERS" +#define FILE_DIR "code/ATMOSPHERICS" +#define FILE_DIR "code/ATMOSPHERICS/components" +#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices" +#define FILE_DIR "code/ATMOSPHERICS/components/trinary_devices" +#define FILE_DIR "code/ATMOSPHERICS/components/unary" +#define FILE_DIR "code/controllers" +#define FILE_DIR "code/datums" +#define FILE_DIR "code/datums/diseases" +#define FILE_DIR "code/datums/diseases/advance" +#define FILE_DIR "code/datums/diseases/advance/symptoms" +#define FILE_DIR "code/datums/helper_datums" +#define FILE_DIR "code/datums/spells" +#define FILE_DIR "code/defines" +#define FILE_DIR "code/defines/obj" +#define FILE_DIR "code/defines/procs" +#define FILE_DIR "code/FEA" +#define FILE_DIR "code/game" +#define FILE_DIR "code/game/area" +#define FILE_DIR "code/game/gamemodes" +#define FILE_DIR "code/game/gamemodes/autotraitor" +#define FILE_DIR "code/game/gamemodes/blob" +#define FILE_DIR "code/game/gamemodes/blob/blobs" +#define FILE_DIR "code/game/gamemodes/changeling" +#define FILE_DIR "code/game/gamemodes/cult" +#define FILE_DIR "code/game/gamemodes/epidemic" +#define FILE_DIR "code/game/gamemodes/events" +#define FILE_DIR "code/game/gamemodes/events/holidays" +#define FILE_DIR "code/game/gamemodes/extended" +#define FILE_DIR "code/game/gamemodes/malfunction" +#define FILE_DIR "code/game/gamemodes/meme" +#define FILE_DIR "code/game/gamemodes/meteor" +#define FILE_DIR "code/game/gamemodes/nuclear" +#define FILE_DIR "code/game/gamemodes/revolution" +#define FILE_DIR "code/game/gamemodes/sandbox" +#define FILE_DIR "code/game/gamemodes/traitor" +#define FILE_DIR "code/game/gamemodes/wizard" +#define FILE_DIR "code/game/jobs" +#define FILE_DIR "code/game/jobs/job" +#define FILE_DIR "code/game/machinery" +#define FILE_DIR "code/game/machinery/atmoalter" +#define FILE_DIR "code/game/machinery/bots" +#define FILE_DIR "code/game/machinery/camera" +#define FILE_DIR "code/game/machinery/computer" +#define FILE_DIR "code/game/machinery/doors" +#define FILE_DIR "code/game/machinery/embedded_controller" +#define FILE_DIR "code/game/machinery/kitchen" +#define FILE_DIR "code/game/machinery/pipe" +#define FILE_DIR "code/game/machinery/telecomms" +#define FILE_DIR "code/game/magic" +#define FILE_DIR "code/game/mecha" +#define FILE_DIR "code/game/mecha/combat" +#define FILE_DIR "code/game/mecha/equipment" +#define FILE_DIR "code/game/mecha/equipment/tools" +#define FILE_DIR "code/game/mecha/equipment/weapons" +#define FILE_DIR "code/game/mecha/medical" +#define FILE_DIR "code/game/mecha/working" +#define FILE_DIR "code/game/objects" +#define FILE_DIR "code/game/objects/closets" +#define FILE_DIR "code/game/objects/closets/secure" +#define FILE_DIR "code/game/objects/effects" +#define FILE_DIR "code/game/objects/effects/decals" +#define FILE_DIR "code/game/objects/effects/decals/Cleanable" +#define FILE_DIR "code/game/objects/effects/spawners" +#define FILE_DIR "code/game/objects/items" +#define FILE_DIR "code/game/objects/items/devices" +#define FILE_DIR "code/game/objects/items/devices/PDA" +#define FILE_DIR "code/game/objects/items/devices/radio" +#define FILE_DIR "code/game/objects/items/robot" +#define FILE_DIR "code/game/objects/items/stacks" +#define FILE_DIR "code/game/objects/items/stacks/sheets" +#define FILE_DIR "code/game/objects/items/stacks/tiles" +#define FILE_DIR "code/game/objects/items/weapons" +#define FILE_DIR "code/game/objects/items/weapons/grenades" +#define FILE_DIR "code/game/objects/items/weapons/implants" +#define FILE_DIR "code/game/objects/items/weapons/melee" +#define FILE_DIR "code/game/objects/items/weapons/storage" +#define FILE_DIR "code/game/objects/items/weapons/tanks" +#define FILE_DIR "code/game/objects/storage" +#define FILE_DIR "code/game/objects/structures" +#define FILE_DIR "code/game/objects/structures/crates_lockers" +#define FILE_DIR "code/game/objects/structures/crates_lockers/closets" +#define FILE_DIR "code/game/objects/structures/crates_lockers/closets/secure" +#define FILE_DIR "code/game/objects/structures/stool_bed_chair_nest" +#define FILE_DIR "code/game/structure" +#define FILE_DIR "code/game/turfs" +#define FILE_DIR "code/game/turfs/simulated" +#define FILE_DIR "code/game/turfs/space" +#define FILE_DIR "code/game/turfs/unsimulated" +#define FILE_DIR "code/game/vehicles" +#define FILE_DIR "code/game/verbs" +#define FILE_DIR "code/js" +#define FILE_DIR "code/modules" +#define FILE_DIR "code/modules/admin" +#define FILE_DIR "code/modules/admin/DB ban" +#define FILE_DIR "code/modules/admin/permissionverbs" +#define FILE_DIR "code/modules/admin/verbs" +#define FILE_DIR "code/modules/assembly" +#define FILE_DIR "code/modules/awaymissions" +#define FILE_DIR "code/modules/awaymissions/maploader" +#define FILE_DIR "code/modules/client" +#define FILE_DIR "code/modules/clothing" +#define FILE_DIR "code/modules/clothing/glasses" +#define FILE_DIR "code/modules/clothing/gloves" +#define FILE_DIR "code/modules/clothing/head" +#define FILE_DIR "code/modules/clothing/masks" +#define FILE_DIR "code/modules/clothing/shoes" +#define FILE_DIR "code/modules/clothing/spacesuits" +#define FILE_DIR "code/modules/clothing/suits" +#define FILE_DIR "code/modules/clothing/under" +#define FILE_DIR "code/modules/clothing/under/jobs" +#define FILE_DIR "code/modules/customitems" +#define FILE_DIR "code/modules/destilery" +#define FILE_DIR "code/modules/DetectiveWork" +#define FILE_DIR "code/modules/events" +#define FILE_DIR "code/modules/flufftext" +#define FILE_DIR "code/modules/food" +#define FILE_DIR "code/modules/genetics" +#define FILE_DIR "code/modules/icon generation" +#define FILE_DIR "code/modules/library" +#define FILE_DIR "code/modules/liquid" +#define FILE_DIR "code/modules/maps" +#define FILE_DIR "code/modules/mining" +#define FILE_DIR "code/modules/mob" +#define FILE_DIR "code/modules/mob/dead" +#define FILE_DIR "code/modules/mob/dead/observer" +#define FILE_DIR "code/modules/mob/living" +#define FILE_DIR "code/modules/mob/living/blob" +#define FILE_DIR "code/modules/mob/living/carbon" +#define FILE_DIR "code/modules/mob/living/carbon/alien" +#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid" +#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste" +#define FILE_DIR "code/modules/mob/living/carbon/alien/larva" +#define FILE_DIR "code/modules/mob/living/carbon/alien/special" +#define FILE_DIR "code/modules/mob/living/carbon/brain" +#define FILE_DIR "code/modules/mob/living/carbon/human" +#define FILE_DIR "code/modules/mob/living/carbon/metroid" +#define FILE_DIR "code/modules/mob/living/carbon/monkey" +#define FILE_DIR "code/modules/mob/living/silicon" +#define FILE_DIR "code/modules/mob/living/silicon/ai" +#define FILE_DIR "code/modules/mob/living/silicon/ai/freelook" +#define FILE_DIR "code/modules/mob/living/silicon/decoy" +#define FILE_DIR "code/modules/mob/living/silicon/pai" +#define FILE_DIR "code/modules/mob/living/silicon/robot" +#define FILE_DIR "code/modules/mob/living/simple_animal" +#define FILE_DIR "code/modules/mob/living/simple_animal/friendly" +#define FILE_DIR "code/modules/mob/living/simple_animal/hostile" +#define FILE_DIR "code/modules/mob/living/simple_animal/hostile/retaliate" +#define FILE_DIR "code/modules/mob/new_player" +#define FILE_DIR "code/modules/organs" +#define FILE_DIR "code/modules/paperwork" +#define FILE_DIR "code/modules/power" +#define FILE_DIR "code/modules/power/antimatter" +#define FILE_DIR "code/modules/power/singularity" +#define FILE_DIR "code/modules/power/singularity/particle_accelerator" +#define FILE_DIR "code/modules/projectiles" +#define FILE_DIR "code/modules/projectiles/ammunition" +#define FILE_DIR "code/modules/projectiles/guns" +#define FILE_DIR "code/modules/projectiles/guns/energy" +#define FILE_DIR "code/modules/projectiles/guns/projectile" +#define FILE_DIR "code/modules/projectiles/projectile" +#define FILE_DIR "code/modules/reagents" +#define FILE_DIR "code/modules/reagents/reagent_containers" +#define FILE_DIR "code/modules/reagents/reagent_containers/food" +#define FILE_DIR "code/modules/reagents/reagent_containers/food/drinks" +#define FILE_DIR "code/modules/reagents/reagent_containers/food/drinks/bottle" +#define FILE_DIR "code/modules/reagents/reagent_containers/food/snacks" +#define FILE_DIR "code/modules/reagents/reagent_containers/glass" +#define FILE_DIR "code/modules/reagents/reagent_containers/glass/bottle" +#define FILE_DIR "code/modules/recycling" +#define FILE_DIR "code/modules/research" +#define FILE_DIR "code/modules/research/xenoarchaeology" +#define FILE_DIR "code/modules/research/xenoarchaeology/artifact" +#define FILE_DIR "code/modules/research/xenoarchaeology/artifact/effects" +#define FILE_DIR "code/modules/research/xenoarchaeology/finds" +#define FILE_DIR "code/modules/research/xenoarchaeology/machinery" +#define FILE_DIR "code/modules/research/xenoarchaeology/tools" +#define FILE_DIR "code/modules/scripting" +#define FILE_DIR "code/modules/scripting/AST" +#define FILE_DIR "code/modules/scripting/AST/Operators" +#define FILE_DIR "code/modules/scripting/Implementations" +#define FILE_DIR "code/modules/scripting/Interpreter" +#define FILE_DIR "code/modules/scripting/Parser" +#define FILE_DIR "code/modules/scripting/Scanner" +#define FILE_DIR "code/modules/security levels" +#define FILE_DIR "code/modules/surgery" #define FILE_DIR "code/TriDimension" +#define FILE_DIR "code/unused" +#define FILE_DIR "code/unused/beast" +#define FILE_DIR "code/unused/computer2" +#define FILE_DIR "code/unused/disease2" +#define FILE_DIR "code/unused/gamemodes" +#define FILE_DIR "code/unused/hivebot" +#define FILE_DIR "code/unused/mining" +#define FILE_DIR "code/unused/optics" +#define FILE_DIR "code/unused/pda2" +#define FILE_DIR "code/unused/powerarmor" +#define FILE_DIR "code/unused/spacecraft" #define FILE_DIR "code/WorkInProgress" +#define FILE_DIR "code/WorkInProgress/AI_Visibility" +#define FILE_DIR "code/WorkInProgress/animusstation" +#define FILE_DIR "code/WorkInProgress/Apples" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn" +#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Economy" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Jungle" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Rust" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/ShieldGen" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Supermatter" +#define FILE_DIR "code/WorkInProgress/carn" +#define FILE_DIR "code/WorkInProgress/Chinsky" +#define FILE_DIR "code/WorkInProgress/Cib" +#define FILE_DIR "code/WorkInProgress/Cib/amorph" +#define FILE_DIR "code/WorkInProgress/Mini" +#define FILE_DIR "code/WorkInProgress/Mloc" +#define FILE_DIR "code/WorkInProgress/organs" +#define FILE_DIR "code/WorkInProgress/Ported" +#define FILE_DIR "code/WorkInProgress/Ported/Abi79" +#define FILE_DIR "code/WorkInProgress/Ported/Bureaucracy" +#define FILE_DIR "code/WorkInProgress/Ported/Spawners" +#define FILE_DIR "code/WorkInProgress/Sigyn" +#define FILE_DIR "code/WorkInProgress/Sigyn/Department Sec" +#define FILE_DIR "code/WorkInProgress/Sigyn/Softcurity" +#define FILE_DIR "code/WorkInProgress/SkyMarshal" #define FILE_DIR "code/WorkInProgress/Susan" +#define FILE_DIR "code/WorkInProgress/Tastyfish" +#define FILE_DIR "code/WorkInProgress/virus2" +#define FILE_DIR "code/WorkInProgress/virus2/Disease2" +#define FILE_DIR "code/WorkInProgress/Wrongnumber" +#define FILE_DIR "code/ZAS" #define FILE_DIR "html" #define FILE_DIR "icons" #define FILE_DIR "icons/48x48" @@ -36,6 +257,9 @@ #define FILE_DIR "icons/turf" #define FILE_DIR "icons/vending_icons" #define FILE_DIR "icons/xenoarch_icons" +#define FILE_DIR "interface" +#define FILE_DIR "maps" +#define FILE_DIR "maps/RandomZLevels" #define FILE_DIR "sound" #define FILE_DIR "sound/AI" #define FILE_DIR "sound/ambience" @@ -52,6 +276,8 @@ #define FILE_DIR "sound/violin" #define FILE_DIR "sound/voice" #define FILE_DIR "sound/weapons" +#define FILE_DIR "tools" +#define FILE_DIR "tools/Redirector" // END_FILE_DIR // BEGIN_PREFERENCES #define DEBUG @@ -1245,6 +1471,7 @@ #include "code\WorkInProgress\autopsy.dm" #include "code\WorkInProgress\buildmode.dm" #include "code\WorkInProgress\explosion_particles.dm" +#include "code\WorkInProgress\periodic_news.dm" #include "code\WorkInProgress\Cael_Aislinn\meteor_battery.dm" #include "code\WorkInProgress\Cael_Aislinn\sculpture.dm" #include "code\WorkInProgress\Cael_Aislinn\Economy\Accounts.dm" diff --git a/code/WorkInProgress/periodic_news.dm b/code/WorkInProgress/periodic_news.dm new file mode 100644 index 0000000000..48ed3bd7b7 --- /dev/null +++ b/code/WorkInProgress/periodic_news.dm @@ -0,0 +1,72 @@ +// This system defines news that will be displayed in the course of a round. +// Uses BYOND's type system to put everything into a nice format + +/datum/news_announcement + var + round_time // time of the round at which this should be announced, in seconds + message // body of the message + author = "NanoTrasen Editor" + channel_name = "Tau Ceti Daily" + can_be_redacted = 0 + + revolution_inciting_event + + paycuts_suspicion + round_time = 60*10 + message = "Reports have leaked that Nanotrasen Inc. is planning to put paycuts into effect on many of its Research Stations in Tau Ceti. Apparently these research stations haven't been able to yield the expected revenue, and thus adjustments have to be made." + author = "Unauthorized" + + paycuts_confirmation + round_time = 60*40 + message = "Earlier rumours about paycuts on Research Stations in the Tau Ceti system have been confirmed. Shockingly, however, the cuts will only affect lower tier personnel. Heads of Staff will, according to our sources, not be affected." + author = "Unauthorized" + + human_experiments + round_time = 60*90 + message = "Unbelievable reports about human experimentation have reached our ears. According to a refugee from one of the Tau Ceti Research Stations, their station, in order to increase revenue, has refactored several of their facilities to perform experiments on live humans, including virology research, genetic manipulation, and \"feeding them to the slimes to see what happens\". Allegedly, these test subjects were neither humanified monkeys nor volunteers, but rather unqualified staff that were forced into the experiments, and reported to have died in a \"work accident\" by Nanotrasen Inc." + author = "Unauthorized" + + bluespace_research + + announcement + round_time = 60*20 + message = "The new field of research trying to explain several interesting spacetime oddities, also known as \"Bluespace Research\", has reached new heights. Of the several hundred space stations now orbiting in Tau Ceti, fifteen are now specially equipped to experiment with and research Bluespace effects. Rumours have it some of these stations even sport functional \"travel gates\" that can instantly move a whole research team to an alternate reality." + + +proc/process_newscaster() + check_for_newscaster_updates(ticker.mode.newscaster_announcements) + +var/global/tmp/announced_news_types = list() +proc/check_for_newscaster_updates(type) + for(var/subtype in typesof(type)-type) + var/datum/news_announcement/news = new subtype() + if(news.round_time * 10 >= world.time && !(subtype in announced_news_types)) + announced_news_types += subtype + announce_newscaster_news(news) + +proc/announce_newscaster_news(datum/news_announcement/news) + + var/datum/feed_message/newMsg = new /datum/feed_message + newMsg.author = news.author + newMsg.is_admin_message = !news.can_be_redacted + + newMsg.body = news.message + + var/datum/feed_channel/sendto + for(var/datum/feed_channel/FC in news_network.network_channels) + if(FC.channel_name == news.channel_name) + sendto = FC + break + + if(!sendto) + sendto = new /datum/feed_channel + sendto.channel_name = news.channel_name + sendto.author = news.author + sendto.locked = 1 + sendto.is_admin_channel = 1 + news_network.network_channels += sendto + + sendto.messages += newMsg + + for(var/obj/machinery/newscaster/NEWSCASTER in allCasters) + NEWSCASTER.newsAlert(news.channel_name) diff --git a/code/controllers/master_controller.dm b/code/controllers/master_controller.dm index 25dc9804d9..c618079f68 100644 --- a/code/controllers/master_controller.dm +++ b/code/controllers/master_controller.dm @@ -117,6 +117,7 @@ datum/controller/game_controller/proc/process() controller_iteration++ vote.process() + process_newscaster() //AIR diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 77d4d73e6b..03ae5fc3e6 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -27,6 +27,7 @@ var/required_players_secret = 0 //Minimum number of players for that game mode to be chose in Secret var/required_enemies = 0 var/recommended_enemies = 0 + var/newscaster_announcements = /datum/news_announcement/bluespace_research var/uplink_welcome = "Syndicate Uplink Console:" var/uplink_uses = 10 var/uplink_items = {"Highly Visible and Dangerous Weapons; From 335565cba7e310a0080e7a70c700ac3f87f5992c Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 13:10:07 +0200 Subject: [PATCH 08/63] Made RP rev use a different news story. --- code/game/gamemodes/revolution/rp_revolution.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/gamemodes/revolution/rp_revolution.dm b/code/game/gamemodes/revolution/rp_revolution.dm index 643384554d..c22181a7e5 100644 --- a/code/game/gamemodes/revolution/rp_revolution.dm +++ b/code/game/gamemodes/revolution/rp_revolution.dm @@ -8,6 +8,8 @@ required_enemies = 3 recommended_enemies = 3 + newscaster_announcements = /datum/news_announcement/revolution_inciting_event + var/list/heads = list() var/tried_to_add_revheads = 0 From 90076f017a049962d15e0c4115f3aa7a6d3fa3f1 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 13:17:19 +0200 Subject: [PATCH 09/63] Added debug logging for events. Something's just not right about events still. --- code/modules/events/event_dynamic.dm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index dce1fcc0b3..d60f33ae06 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -84,16 +84,19 @@ if(!sent_ninja_to_station && toggle_space_ninja) possibleEvents[/datum/event/space_ninja] = max(active_with_role["Security"], 5) + + var/picked_event = pickweight(possibleEvents) + // Debug code below here, very useful for testing so don't delete please. - /*var/debug_message = "Firing random event. " + var/debug_message = "Firing random event. " for(var/V in active_with_role) debug_message += "#[V]:[active_with_role[V]] " debug_message += "||| " for(var/V in possibleEvents) debug_message += "[V]:[possibleEvents[V]]" - message_admins(debug_message)*/ + debug_message += "|||Picked:[picked_event]" + log_debug(debug_message) - var/picked_event = pickweight(possibleEvents) if(!picked_event) return From e2249fa1775d288cf41263a4294d1230d42701e5 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 13:48:57 +0200 Subject: [PATCH 10/63] Added organ damage random medical event. It doesn't make a lot of sense, but who cares about that! --- baystation12.dme | 1 + code/modules/events/event_dynamic.dm | 7 ++++--- code/modules/events/organ_failure.dm | 28 ++++++++++++++++++++++++++++ 3 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 code/modules/events/organ_failure.dm diff --git a/baystation12.dme b/baystation12.dme index 915e5c3d5f..7b8c7d1e61 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1030,6 +1030,7 @@ #include "code\modules\events\money_hacker.dm" #include "code\modules\events\money_lotto.dm" #include "code\modules\events\money_spam.dm" +#include "code\modules\events\organ_failure.dm" #include "code\modules\events\prison_break.dm" #include "code\modules\events\radiation_storm.dm" #include "code\modules\events\rogue_drones.dm" diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index d60f33ae06..6af66ced1b 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -69,11 +69,12 @@ possibleEvents[/datum/event/meteor_shower] = 80 * active_with_role["Engineer"] possibleEvents[/datum/event/blob] = 30 * active_with_role["Engineer"] - possibleEvents[/datum/event/viral_infection] = 25 + active_with_role["Medical"] * 25 + possibleEvents[/datum/event/viral_infection] = 25 + active_with_role["Medical"] * 100 if(active_with_role["Medical"] > 0) possibleEvents[/datum/event/radiation_storm] = active_with_role["Medical"] * 100 - possibleEvents[/datum/event/spontaneous_appendicitis] = active_with_role["Medical"] * 75 - possibleEvents[/datum/event/viral_outbreak] = active_with_role["Medical"] * 5 + possibleEvents[/datum/event/spontaneous_appendicitis] = active_with_role["Medical"] * 150 + possibleEvents[/datum/event/viral_outbreak] = active_with_role["Medical"] * 10 + possibleEvents[/datum/event/organ_failure] = active_with_role["Medical"] * 50 possibleEvents[/datum/event/prison_break] = active_with_role["Security"] * 50 if(active_with_role["Security"] > 0) diff --git a/code/modules/events/organ_failure.dm b/code/modules/events/organ_failure.dm new file mode 100644 index 0000000000..2a6b0b6a37 --- /dev/null +++ b/code/modules/events/organ_failure.dm @@ -0,0 +1,28 @@ +datum/event/organ_failure + var/severity = 1 + +datum/event/organ_failure/setup() + announceWhen = rand(0, 3000) + endWhen = announceWhen + 1 + severity = rand(1, 3) + +datum/event/organ_failure/announce() + command_alert("Confirmed outbreak of level [rand(3,7)] biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert") + world << sound('sound/AI/outbreak5.ogg') + +datum/event/organ_failure/start() + var/list/candidates = list() //list of candidate keys + for(var/mob/living/carbon/human/G in player_list) + if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD && G.health > 70)) + candidates += G + if(!candidates.len) return + candidates = shuffle(candidates)//Incorporating Donkie's list shuffle + + while(severity > 0 && candidates.len) + var/mob/living/carbon/human/C = candidates[1] + + // Bruise one of their organs + var/datum/organ/internal/I = pick(C.internal_organs) + I.damage = I.min_bruised_damage + candidates.Remove(C) + severity-- From c1cefa4a80a68c21d708989ffdce8c5d640c7792 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 13:49:45 +0200 Subject: [PATCH 11/63] Added more debug logging to events. --- code/modules/events/event_manager.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/modules/events/event_manager.dm b/code/modules/events/event_manager.dm index 0af33b153b..b2201c7c92 100644 --- a/code/modules/events/event_manager.dm +++ b/code/modules/events/event_manager.dm @@ -30,7 +30,9 @@ var/scheduledEvent = null playercount_modifier = 0.9 if(36 to 100000) playercount_modifier = 0.8 - scheduledEvent = world.timeofday + rand(eventTimeLower, eventTimeUpper) * playercount_modifier + var/next_event_delay = rand(eventTimeLower, eventTimeUpper) * playercount_modifier + scheduledEvent = world.timeofday + next_event_delay + log_debug("Next event in [next_event_delay/600] minutes.") else if(world.timeofday > scheduledEvent) spawn_dynamic_event() From 22ea35cb8f6b8284b8bcdfd9375b64b8eb6d8c80 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 14:18:11 +0200 Subject: [PATCH 12/63] Added command reports to RP rev. --- code/game/gamemodes/revolution/rp_revolution.dm | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/code/game/gamemodes/revolution/rp_revolution.dm b/code/game/gamemodes/revolution/rp_revolution.dm index c22181a7e5..9b14622537 100644 --- a/code/game/gamemodes/revolution/rp_revolution.dm +++ b/code/game/gamemodes/revolution/rp_revolution.dm @@ -10,6 +10,7 @@ newscaster_announcements = /datum/news_announcement/revolution_inciting_event + var/last_command_report = 0 var/list/heads = list() var/tried_to_add_revheads = 0 @@ -185,8 +186,7 @@ active_revs++ if(active_revs == 0) - log_admin("There are zero active head revolutionists, trying to add some..") - message_admins("There are zero active head revolutionists, trying to add some..") + log_debug("There are zero active heads of revolution, trying to add some..") var/added_heads = 0 for(var/mob/living/carbon/human/H in world) if(H.client && H.mind && H.client.inactivity <= 10*60*20 && H.mind in revolutionaries) head_revolutionaries += H.mind @@ -212,6 +212,16 @@ message_admins("Unable to add new heads of revolution.") tried_to_add_revheads = world.time + 6000 // wait 10 minutes + if(last_command_report == 0 && world.time >= 60 * 10) + command_alert("We are regrettably announcing that your performance has been disappointing, and we are thus forced to cut down on financial support to your station. To achieve this, the pay of all personnal, except the Heads of Staff, has been halved.") + last_command_report = 1 + else if(last_command_report == 1 && world.time >= 60 * 30) + command_alert("Statistics hint that a high amount of leisure time, and associated activities, are responsible for the poor performance of many of our stations. You are to bolt and close down any leisure facilities, such as the holodeck, the theatre and the bar. Food can be distributed through vendors and the kitchen.") + last_command_report = 2 + else if(last_command_report == 2 && world.time >= 60 * 60) + command_alert("It is reported that merely closing down leisure facilities has not been successful. You and your Heads of Staff are to ensure that all crew are working hard, and not wasting time or energy. Any crew caught off duty without leave from their Head of Staff are to be warned, and on repeated offence, to be brigged until the next transfer shuttle arrives, which will take them to facilities where they can be of more use.") + last_command_report = 3 + return ..() From 38cdb4d4f53ce3c512dc8ccf6817d4724e415677 Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 18:17:28 +0200 Subject: [PATCH 13/63] Most mobs can emote now. Also added CSS to say, so that you can tell apart "say" and "me say" --- baystation12.dme | 1 + code/modules/mob/emote.dm | 8 +--- code/modules/mob/living/carbon/human/emote.dm | 42 +++++-------------- .../mob/living/carbon/metroid/emote.dm | 6 ++- .../modules/mob/living/carbon/monkey/emote.dm | 8 +++- .../modules/mob/living/silicon/robot/emote.dm | 20 +++------ .../mob/living/simple_animal/simple_animal.dm | 10 +---- code/modules/mob/say.dm | 23 +++++----- code/stylesheet.dm | 1 + 9 files changed, 46 insertions(+), 73 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index 7b8c7d1e61..cb8bdbd39b 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1061,6 +1061,7 @@ #include "code\modules\mining\ores_coins.dm" #include "code\modules\mining\satchel_ore_boxdm.dm" #include "code\modules\mob\death.dm" +#include "code\modules\mob\emote.dm" #include "code\modules\mob\inventory.dm" #include "code\modules\mob\login.dm" #include "code\modules\mob\logout.dm" diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 3c070bdbd2..9225eb0f8b 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -32,19 +32,13 @@ mob/proc/custom_emote(var/m_type=1,var/message = null) continue if(findtext(message," snores.")) //Because we have so many sleeping people. break - if(M.stat == 2 && M.client.ghost_sight && !(M in viewers(src,null))) + if(M.stat == 2 && (M.client.prefs.toggles & CHAT_GHOSTSIGHT) && !(M in viewers(src,null))) M.show_message(message) if (m_type & 1) for (var/mob/O in viewers(src, null)) - if(istype(O,/mob/living/carbon/human)) - for(var/mob/living/parasite/P in O:parasites) - P.show_message(message, m_type) O.show_message(message, m_type) else if (m_type & 2) for (var/mob/O in hearers(src.loc, null)) - if(istype(O,/mob/living/carbon/human)) - for(var/mob/living/parasite/P in O:parasites) - P.show_message(message, m_type) O.show_message(message, m_type) diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 802841e17a..4029fc4644 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -53,27 +53,17 @@ var/input = copytext(sanitize(input("Choose an emote to display.") as text|null),1,MAX_MESSAGE_LEN) if (!input) return - if(copytext(input,1,5) == "says") - src << "\red Invalid emote." - return - else if(copytext(input,1,9) == "exclaims") - src << "\red Invalid emote." - return - else if(copytext(input,1,5) == "asks") - src << "\red Invalid emote." - return - else - var/input2 = input("Is this a visible or hearable emote?") in list("Visible","Hearable") - if (input2 == "Visible") - m_type = 1 - else if (input2 == "Hearable") - if (src.miming) - return - m_type = 2 - else - alert("Unable to use this emote, must be either hearable or visible.") + var/input2 = input("Is this a visible or hearable emote?") in list("Visible","Hearable") + if (input2 == "Visible") + m_type = 1 + else if (input2 == "Hearable") + if (src.miming) return - message = "[src] [input]" + m_type = 2 + else + alert("Unable to use this emote, must be either hearable or visible.") + return + message = "[src] [input]" if ("me") if(silent) @@ -88,17 +78,7 @@ return if(!(message)) return - if(copytext(message,1,5) == "says") - src << "\red Invalid emote." - return - else if(copytext(message,1,9) == "exclaims") - src << "\red Invalid emote." - return - else if(copytext(message,1,5) == "asks") - src << "\red Invalid emote." - return - else - message = "[src] [message]" + message = "[src] [message]" if ("salute") if (!src.buckled) diff --git a/code/modules/mob/living/carbon/metroid/emote.dm b/code/modules/mob/living/carbon/metroid/emote.dm index 2ee388f7d0..0e6688e69e 100644 --- a/code/modules/mob/living/carbon/metroid/emote.dm +++ b/code/modules/mob/living/carbon/metroid/emote.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/slime/emote(var/act) +/mob/living/carbon/slime/emote(var/act, var/type, var/desc) if (findtext(act, "-", 1, null)) @@ -13,6 +13,10 @@ var/message switch(act) + if ("me") + return custom_emote(m_type, desc) + if ("custom") + return custom_emote(m_type, desc) if("moan") message = "The [src.name] moans." m_type = 2 diff --git a/code/modules/mob/living/carbon/monkey/emote.dm b/code/modules/mob/living/carbon/monkey/emote.dm index eccb365a6f..8e6c281c78 100644 --- a/code/modules/mob/living/carbon/monkey/emote.dm +++ b/code/modules/mob/living/carbon/monkey/emote.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/monkey/emote(var/act) +/mob/living/carbon/monkey/emote(var/act, var/type, var/desc) var/param = null if (findtext(act, "-", 1, null)) @@ -14,6 +14,12 @@ var/message switch(act) + if ("me") + return custom_emote(m_type, desc) + + if ("custom") + return custom_emote(m_type, desc) + if("sign") if (!src.restrained()) message = text("The monkey signs[].", (text2num(param) ? text(" the number []", text2num(param)) : null)) diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index dcf08ba0d8..86d4e5d2f4 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -9,6 +9,12 @@ act = copytext(act,1,length(act)) switch(act) + if ("me") + return custom_emote(m_type, message) + + if ("custom") + return custom_emote(m_type, message) + if ("salute") if (!src.buckled) var/M = null @@ -56,20 +62,6 @@ message = "[src] flaps his wings ANGRILY!" m_type = 2 - if ("custom") - var/input = copytext(sanitize(input("Choose an emote to display.") as text|null),1,MAX_MESSAGE_LEN) - if (!input) - return - var/input2 = input("Is this a visible or hearable emote?") in list("Visible","Hearable") - if (input2 == "Visible") - m_type = 1 - else if (input2 == "Hearable") - m_type = 2 - else - alert("Unable to use this emote, must be either hearable or visible.") - return - message = "[src] [input]" - if ("me") if (src.client) if(client.prefs.muted & MUTE_IC) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index bc25116ae5..f7154694f7 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -226,14 +226,8 @@ /mob/living/simple_animal/emote(var/act, var/type, var/desc) if(act) - if(act == "scream") act = "makes a loud and pained whimper" //ugly hack to stop animals screaming when crushed :P - if(act == "me") //Allow me-emotes. - act = desc - if( findtext(act,".",lentext(act)) == 0 && findtext(act,"!",lentext(act)) == 0 && findtext(act,"?",lentext(act)) == 0 ) - act = addtext(act,".") //Makes sure all emotes end with a period. - for (var/mob/O in viewers(src, null)) - O.show_message("[src] [act]") - + if(act == "scream") act = "whimper" //ugly hack to stop animals screaming when crushed :P + ..(act, type, desc) /mob/living/simple_animal/attack_animal(mob/living/simple_animal/M as mob) if(M.melee_damage_upper == 0) diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 5876a874e9..8a28152a23 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -75,31 +75,32 @@ //tcomms code is still runtiming somewhere here var/ending = copytext(text, length(text)) if (is_speaking_soghun) - return "hisses, \"[text]\""; + return "hisses, \"[text]\""; if (is_speaking_skrell) - return "warbles, \"[text]\""; + return "warbles, \"[text]\""; if (is_speaking_tajaran) - return "mrowls, \"[text]\""; + return "mrowls, \"[text]\""; //Needs Virus2 // if (src.disease_symptoms & DISEASE_HOARSE) // return "rasps, \"[text]\""; if (src.stuttering) - return "stammers, \"[text]\""; + return "stammers, \"[text]\""; if (src.slurring) - return "slurrs, \"[text]\""; + return "slurrs, \"[text]\""; if(isliving(src)) var/mob/living/L = src if (L.getBrainLoss() >= 60) - return "gibbers, \"[text]\""; + return "gibbers, \"[text]\""; if (ending == "?") - return "asks, \"[text]\""; + return "asks, \"[text]\""; if (ending == "!") - return "exclaims, \"[text]\""; + return "exclaims, \"[text]\""; - return "says, \"[text]\""; + return "says, \"[text]\""; -/mob/proc/emote(var/act) - return +/mob/proc/emote(var/act, var/type, var/message) + if(act == "me") + return custom_emote(type, message) /mob/proc/get_ear() // returns an atom representing a location on the map from which this diff --git a/code/stylesheet.dm b/code/stylesheet.dm index b838c9c77d..2481e247af 100644 --- a/code/stylesheet.dm +++ b/code/stylesheet.dm @@ -55,6 +55,7 @@ h1.alert, h2.alert {color: #000000;} .tajaran {color: #803B56;} .skrell {color: #00CED1;} .soghun {color: #228B22;} +.say_quote {font-family: Georgia, Verdana, sans-serif;} .interface {color: #330033;} "} From d7cc42e588a75a3d72570956240e12570ffadb8d Mon Sep 17 00:00:00 2001 From: cib Date: Sat, 18 May 2013 21:55:02 +0200 Subject: [PATCH 14/63] Added wallrot event. Also some updates to changelog. --- baystation12.dme | 1 + code/__HELPERS/unsorted.dm | 1 + code/game/turfs/simulated/walls.dm | 63 ++++++++++++++++--- code/game/turfs/simulated/walls_reinforced.dm | 20 +++++- code/modules/events/event_dynamic.dm | 5 ++ code/modules/events/wallrot.dm | 37 +++++++++++ code/modules/reagents/Chemistry-Reagents.dm | 11 ++++ .../reagents/reagent_containers/spray.dm | 8 +++ html/changelog.html | 11 +++- 9 files changed, 148 insertions(+), 9 deletions(-) create mode 100644 code/modules/events/wallrot.dm diff --git a/baystation12.dme b/baystation12.dme index cb8bdbd39b..087bc817fa 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1040,6 +1040,7 @@ #include "code\modules\events\spontaneous_appendicitis.dm" #include "code\modules\events\viral_infection.dm" #include "code\modules\events\viral_outbreak.dm" +#include "code\modules\events\wallrot.dm" #include "code\modules\flufftext\Dreaming.dm" #include "code\modules\flufftext\Hallucination.dm" #include "code\modules\flufftext\TextFilters.dm" diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 659948266e..9b2c323e3a 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1327,6 +1327,7 @@ proc/is_hot(obj/item/W as obj) //Is this even used for anything besides balloons? Yes I took out the W:lit stuff because : really shouldnt be used. /proc/is_sharp(obj/item/W as obj) // For the record, WHAT THE HELL IS THIS METHOD OF DOING IT? + if(W.sharp) return 1 return ( \ istype(W, /obj/item/weapon/screwdriver) || \ istype(W, /obj/item/weapon/pen) || \ diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 5d055f1a8c..f06eb81ba3 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -3,6 +3,7 @@ desc = "A huge chunk of metal used to seperate rooms." icon = 'icons/turf/walls.dmi' var/mineral = "metal" + var/rotting = 0 opacity = 1 density = 1 blocks_air = 1 @@ -59,9 +60,11 @@ P.roll_and_drop(src) else O.loc = src + ChangeTurf(/turf/simulated/floor/plating) /turf/simulated/wall/ex_act(severity) + if(rotting) severity = 1.0 switch(severity) if(1.0) //SN src = null @@ -84,7 +87,7 @@ return /turf/simulated/wall/blob_act() - if(prob(50)) + if(prob(50) || rotting) dismantle_wall() /turf/simulated/wall/attack_paw(mob/user as mob) @@ -103,11 +106,11 @@ /turf/simulated/wall/attack_animal(mob/living/simple_animal/M as mob) if(M.wall_smash) - if (istype(src, /turf/simulated/wall/r_wall)) + if (istype(src, /turf/simulated/wall/r_wall) && !rotting) M << text("\blue This wall is far too strong for you to destroy.") return else - if (prob(40)) + if (prob(40) || rotting) M << text("\blue You smash through the wall.") dismantle_wall(1) return @@ -120,7 +123,7 @@ /turf/simulated/wall/attack_hand(mob/user as mob) if (HULK in user.mutations) - if (prob(40)) + if (prob(40) || rotting) usr << text("\blue You smash through the wall.") usr.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" )) dismantle_wall(1) @@ -129,6 +132,11 @@ usr << text("\blue You punch the wall.") return + if(rotting) + user << "\blue The wall crumbles under your touch." + dismantle_wall() + return + user << "\blue You push the wall but nothing happens!" playsound(src.loc, 'sound/weapons/Genhit.ogg', 25, 1) src.add_fingerprint(user) @@ -143,6 +151,21 @@ //get the user's location if( !istype(user.loc, /turf) ) return //can't do this stuff whilst inside objects and such + if(rotting) + if(istype(W, /obj/item/weapon/weldingtool) ) + var/obj/item/weapon/weldingtool/WT = W + if( WT.remove_fuel(0,user) ) + user << "You burn away the fungi with \the [WT]." + playsound(src.loc, 'sound/items/Welder.ogg', 10, 1) + for(var/obj/effect/E in src) if(E.name == "Wallrot") + del E + rotting = 0 + return + else if(!is_sharp(W) && W.force >= 10 || W.force >= 20) + user << "\The [src] crumbles away under the force of your [W.name]." + src.dismantle_wall(1) + return + //THERMITE related stuff. Calls src.thermitemelt() which handles melting simulated walls and the relevant effects if( thermite ) if( istype(W, /obj/item/weapon/weldingtool) ) @@ -284,6 +307,24 @@ return attack_hand(user) return +// Wall-rot effect, a nasty fungus that destroys walls. +/turf/simulated/wall/proc/rot() + if(!rotting) + rotting = 1 + + var/number_rots = rand(2,3) + for(var/i=0, iYou burn away the fungi with \the [WT]." + playsound(src.loc, 'sound/items/Welder.ogg', 10, 1) + for(var/obj/effect/E in src) if(E.name == "Wallrot") + del E + rotting = 0 + return + else if(!is_sharp(W) && W.force >= 10 || W.force >= 20) + user << "\The [src] crumbles away under the force of your [W.name]." + src.dismantle_wall() + return //THERMITE related stuff. Calls src.thermitemelt() which handles melting simulated walls and the relevant effects if( thermite ) diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index 6af66ced1b..fa0a6c6efc 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -61,6 +61,7 @@ possibleEvents[/datum/event/ionstorm] = 25 + active_with_role["AI"] * 25 + active_with_role["Cyborg"] * 25 + active_with_role["Engineer"] * 10 + active_with_role["Scientist"] * 5 possibleEvents[/datum/event/grid_check] = 25 + 10 * active_with_role["Engineer"] possibleEvents[/datum/event/electrical_storm] = 75 + 25 * active_with_role["Janitor"] + 5 * active_with_role["Engineer"] + possibleEvents[/datum/event/wallrot] = 50 * active_with_role["Engineer"] + 100 * active_with_role["Botanist"] if(!spacevines_spawned) possibleEvents[/datum/event/spacevine] = 5 + 10 * active_with_role["Engineer"] @@ -180,6 +181,7 @@ active_with_role["AI"] = 0 active_with_role["Cyborg"] = 0 active_with_role["Janitor"] = 0 + active_with_role["Botanist"] = 0 for(var/mob/M in player_list) if(!M.mind || !M.client || M.client.inactivity > 10 * 10 * 60) // longer than 10 minutes AFK counts them as inactive @@ -212,4 +214,7 @@ if(M.mind.assigned_role == "Janitor") active_with_role["Janitor"]++ + if(M.mind.assigned_role == "Botanist") + active_with_role["Botanist"]++ + return active_with_role diff --git a/code/modules/events/wallrot.dm b/code/modules/events/wallrot.dm new file mode 100644 index 0000000000..02e33c52d7 --- /dev/null +++ b/code/modules/events/wallrot.dm @@ -0,0 +1,37 @@ +/turf/simulated/wall + + +datum/event/wallrot + var/severity = 1 + +datum/event/wallrot/setup() + announceWhen = rand(0, 3000) + endWhen = announceWhen + 1 + severity = rand(5, 10) + +datum/event/wallrot/announce() + command_alert("Harmful fungi detected on station. Station structures may be contaminated.", "Biohazard Alert") + +datum/event/wallrot/start() + spawn() + var/turf/center = null + + // 100 attempts + for(var/i=0, i<100, i++) + var/turf/candidate = locate(rand(1, world.maxx), rand(1, world.maxy), 1) + if(istype(candidate, /turf/simulated/wall)) + center = candidate + + if(center) + // Make sure at least one piece of wall rots! + center:rot() + + // Have a chance to rot lots of other walls. + var/rotcount = 0 + for(var/turf/simulated/wall/W in range(5, center)) if(prob(50)) + W:rot() + rotcount++ + + // Only rot up to severity walls + if(rotcount >= severity) + break \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 0036ca2333..e839cf34a8 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -1214,6 +1214,17 @@ datum ..() return + // Clear off wallrot fungi + reaction_turf(var/turf/T, var/volume) + if(istype(T, /turf/simulated/wall)) + var/turf/simulated/wall/W = T + if(W.rotting) + W.rotting = 0 + for(var/obj/effect/E in W) if(E.name == "Wallrot") del E + + for(var/mob/O in viewers(W, null)) + O.show_message(text("\blue The fungi are completely dissolved by the solution!"), 1) + reaction_obj(var/obj/O, var/volume) if(istype(O,/obj/effect/alien/weeds/)) var/obj/effect/alien/weeds/alien_weeds = O diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index da78e252a3..5073564553 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -49,12 +49,20 @@ D.icon += mix_color_from_reagents(D.reagents.reagent_list) + var/A_turf = get_turf(A) + spawn(0) for(var/i=0, i<3, i++) step_towards(D,A) D.reagents.reaction(get_turf(D)) for(var/atom/T in get_turf(D)) D.reagents.reaction(T) + + // When spraying against the wall, also react with the wall, but + // not its contents. + if(get_dist(D, A_turf) == 1 && A_turf.density) + D.reagents.reaction(A_turf) + sleep(2) sleep(3) del(D) diff --git a/html/changelog.html b/html/changelog.html index b18d546282..5b6aa9e5a1 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -58,7 +58,16 @@ Stuff which is in development and not yet visible to players or just code relate should be listed in the changelog upon commit though. Thanks. -->
-

April 24, 2013

+
+

May 18th, 2013

+

CIB updated:

+
    +
  • A new event type: Wallrot. Use welder or plantbgone on infected walls.
  • +
  • Newscasters now can deliver preset news stories over the course of a round. See http://baystation12.net/forums/viewtopic.php?f=14&t=7619 to add your own!
  • +
+
+
+

April 24, 2013

Jediluke69 updated:

+

April 24, 2013

Jediluke69 updated:

@@ -76,6 +95,7 @@ should be listed in the changelog upon commit though. Thanks. -->
  • Iced tea no longer makes a glass of .what?
  • +

    April 24, 2013

    faux updated:

    From ac0373b01b9eabcb94609084067abd7f56edc107 Mon Sep 17 00:00:00 2001 From: SkyMarshal Date: Tue, 21 May 2013 23:14:43 -0700 Subject: [PATCH 40/63] Mapfix. --- maps/tgstation.2.1.0.0.1.dmm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index 3f93ab30a3..b9b12383a1 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -480,7 +480,7 @@ "ajl" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/escape_pod3/station) "ajm" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/escape_pod3/station) "ajn" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/shuttle/escape_pod3/station) -"ajo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"; tag = "icon-pipe-j1 (WEST)"},/turf/simulated/floor,/area/hallway/primary/fore) +"ajo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/junction{tag = "icon-pipe-y"; icon_state = "pipe-y"; dir = 2},/turf/simulated/floor,/area/hallway/primary/fore) "ajp" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "white"},/area/security/brig) "ajq" = (/turf/simulated/floor{icon_state = "white"},/area/security/brig) "ajr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/security/brig) From bdb16b1f994fa30f65adbec296449d4bb82c2027 Mon Sep 17 00:00:00 2001 From: Chinsky Date: Wed, 22 May 2013 14:05:53 +0400 Subject: [PATCH 41/63] Renamed bruise pack back to gauze. STAY LIKE THAT. --- code/game/objects/items/stacks/medical.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index d79a76507a..82abc09f7e 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -76,9 +76,9 @@ M.updatehealth() /obj/item/stack/medical/bruise_pack - name = "bruise pack" - singular_name = "bruise pack" - desc = "A pack designed to treat blunt-force trauma." + name = "roll of gauze" + singular_name = "gauze length" + desc = "Some sterile gauze to wrap around bloody stumps." icon_state = "brutepack" heal_brute = 60 origin_tech = "biotech=1" From cb59473d02de8a286f378825a65798b5a949dca7 Mon Sep 17 00:00:00 2001 From: Roaper Date: Wed, 22 May 2013 13:36:27 -0700 Subject: [PATCH 42/63] Added more dreams to Dreaming.dm Signed-off-by: Roaper --- code/modules/flufftext/Dreaming.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/flufftext/Dreaming.dm b/code/modules/flufftext/Dreaming.dm index 627df7c6dd..2a76150d67 100644 --- a/code/modules/flufftext/Dreaming.dm +++ b/code/modules/flufftext/Dreaming.dm @@ -6,7 +6,8 @@ mob/living/carbon/proc/dream() "light","a scientist","a monkey","a catastrophe","a loved one","a gun","warmth","freezing","the sun", "a hat","the Luna","a ruined station","a planet","plasma","air","the medical bay","the bridge","blinking lights", "a blue light","an abandoned laboratory","Nanotrasen","The Syndicate","blood","healing","power","respect", - "riches","space","a crash","happiness","pride","a fall","water","flames","ice","melons","flying","the eggs" + "riches","space","a crash","happiness","pride","a fall","water","flames","ice","melons","flying","the eggs","money", + "a beach","the holodeck","a smokey room","a voice","the cold","a mouse","an operating table","the bar","the rain" ) spawn(0) for(var/i = rand(1,4),i > 0, i--) From aa6bfc33c743c2bc1cc1faa2a7bfc75d427aa644 Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 16:43:29 +0200 Subject: [PATCH 43/63] Airlock and APC changes. - Added a debugger device that can figure out when an object has been hacked/emagged - Hacked APCs no longer display blue screen - You can now disassemble emagged airlocks, they will yield a fried airlock electronic. --- code/game/atoms.dm | 6 ++- code/game/machinery/doors/airlock.dm | 6 ++- code/game/objects/items/devices/debugger.dm | 44 ++++++++++++++++++ code/game/objects/objs.dm | 2 + code/game/objects/structures/door_assembly.dm | 2 +- code/modules/power/apc.dm | 5 +- icons/obj/doors/door_assembly.dmi | Bin 36124 -> 36379 bytes icons/obj/hacktool.dmi | Bin 0 -> 394 bytes 8 files changed, 57 insertions(+), 8 deletions(-) create mode 100644 code/game/objects/items/devices/debugger.dm create mode 100644 icons/obj/hacktool.dmi diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 99b56c346e..e4fa37f77a 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -696,7 +696,11 @@ var/using_new_click_proc = 0 //TODO ERRORAGE (This is temporary, while the DblCl if (in_range) if (!( human.restrained() || human.lying )) if (W) - attackby(W,human) + var/was_used = 0 + if(W) + was_used = W.is_used_on(src, human) + if(!was_used) + attackby(W,human) if (W) W.afterattack(src, human) else diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 935cae8240..0bc9dfdd50 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -1198,7 +1198,7 @@ About the new airlock wires panel: beingcrowbarred = 1 //derp, Agouri else beingcrowbarred = 0 - if( beingcrowbarred && (density && welded && !operating && src.p_open && (!src.arePowerSystemsOn() || stat & NOPOWER) && !src.locked) ) + if( beingcrowbarred && (density && welded && operating != 1 && src.p_open && (!src.arePowerSystemsOn() || stat & NOPOWER) && !src.locked) ) playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) user.visible_message("[user] removes the electronics from the airlock assembly.", "You start to remove electronics from the airlock assembly.") if(do_after(user,40)) @@ -1243,6 +1243,8 @@ About the new airlock wires panel: ae = electronics electronics = null ae.loc = src.loc + if(operating == -1) + ae.icon_state = "door_electronics_smoked" del(src) return @@ -1250,7 +1252,7 @@ About the new airlock wires panel: user << "\blue The airlock's motors resist your efforts to force it." else if(locked) user << "\blue The airlock's bolts prevent it from being forced." - else if( !welded && !operating ) + else if( !welded && operating != 1 ) if(density) if(beingcrowbarred == 0) //being fireaxe'd var/obj/item/weapon/twohanded/fireaxe/F = C diff --git a/code/game/objects/items/devices/debugger.dm b/code/game/objects/items/devices/debugger.dm new file mode 100644 index 0000000000..d90edfa1ba --- /dev/null +++ b/code/game/objects/items/devices/debugger.dm @@ -0,0 +1,44 @@ +/** + * Multitool -- A multitool is used for hacking electronic devices. + * TO-DO -- Using it as a power measurement tool for cables etc. Nannek. + * + */ + +/obj/item/device/debugger + name = "multitool" + desc = "Used for pulsing wires to test which to cut. Not recommended by doctors." + icon_state = "multitool" + flags = FPRINT | TABLEPASS| CONDUCT + force = 5.0 + w_class = 2.0 + throwforce = 5.0 + throw_range = 15 + throw_speed = 3 + desc = "You can use this on airlocks or APCs to try to hack them without cutting wires." + m_amt = 50 + g_amt = 20 + origin_tech = "magnets=1;engineering=1" + var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage + +/obj/item/device/debugger/is_used_on(obj/O, mob/user) + if(istype(O, /obj/machinery/power/apc)) + var/obj/machinery/power/apc/A = O + if(A.emagged || A.malfhack) + usr << "\red There is a software error with the device." + else + usr << "\blue The device's software appears to be fine." + return 1 + if(istype(O, /obj/machinery/door)) + var/obj/machinery/door/D = O + if(D.operating == -1) + usr << "\red There is a software error with the device." + else + usr << "\blue The device's software appears to be fine." + return 1 + else if(istype(O, /obj/machinery)) + var/obj/machinery/A = O + if(A.emagged) + usr << "\red There is a software error with the device." + else + usr << "\blue The device's software appears to be fine." + return 1 \ No newline at end of file diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 66cb1998d0..d68a7b3c8d 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -16,6 +16,8 @@ var/damtype = "brute" var/force = 0 +/obj/item/proc/is_used_on(obj/O, mob/user) + /obj/proc/process() processing_objects.Remove(src) return 0 diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index ea06d19ed6..7ece9970d5 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -349,7 +349,7 @@ obj/structure/door_assembly src.state = 0 src.name = "Secured Airlock Assembly" - else if(istype(W, /obj/item/weapon/airlock_electronics) && state == 1 ) + else if(istype(W, /obj/item/weapon/airlock_electronics) && state == 1 && W:icon_state != "door_electronics_smoked") playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) user.visible_message("[user] installs the electronics into the airlock assembly.", "You start to install electronics into the airlock assembly.") user.drop_item() diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index c3139f1682..f25abe3c76 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -187,10 +187,7 @@ else icon_state = basestate else if (opened == 2) - if ((stat & BROKEN) || malfhack ) - icon_state = "[basestate]-b-nocover" - else /* if (emagged)*/ - icon_state = "[basestate]-nocover" + icon_state = "[basestate]-nocover" else if (stat & BROKEN) icon_state = "apc-b" else if(emagged || malfai) diff --git a/icons/obj/doors/door_assembly.dmi b/icons/obj/doors/door_assembly.dmi index 10e85722a749db3f9adabd1e3f3eb663dd741b5b..691f53a76f3790833b45cb7869087533eef23d7c 100644 GIT binary patch delta 16395 zcmZ9T1zZ$e-}eU*5NQ-?LFp1iXXo$gE3vGgmzS3A8(Aw?3l|%wH#UwA z0N|OPkvw3_a-TeC=wlvvuTSrgv5y|ZEvEN60@5QNI+Qk;xo%6MZ@;`k^p&Exeo_tZ zcz8x5=JxN>nz>anH!n$5k-kn>4Ta;w?vXdTD8mf#!ttc_`5ptEamm~brH%aCFIV8h zh=U^m#+R89pm^cxy3>I8uk#B@M1?N$u6EPAMD5$7eewElwRnbXMR&eDzPd7GH05y6 zWS^AnIK{Rx!MUxI?I?p?J?F?1>xB0+jUZ3TX0)+$NTY=78$R1Be(Ex+&XWe*M$Twr`0)M zyqG;4sco@8gvb8=khCvE)Rm?zmqXtI=$lmvrYxsqlyvoKN*G1Oue#UMaj5RR5ptN< zU?65980l_3a~1%<1Q?R0Tz3((qL$*yEzmhHz`NS$itHz%c60%1Ox$`cgbj(A(98D3EY}C-2xzE;TskROXl<}8__(#1J zy0+T`!v65H9WbSy!echJmp-fPuCDW6%TxQ1{o=^5ts?b`mkQ__6S3HEig}gf>|u1v zk|H)jM5}{UpVjVJBWqkxrSQ2@;PB0;FHtAsAB8JFhbC1OKPM6TQdRI&aiDnB+SNAt z{xFMJ@x!B_d?DjsF9|6rZ#Q9RDWuEa4U*Gmp zCinHlretDRs9)(-&}4=S;yt6MQDkLFB*zFMVy-pCj(&`D!CaoQSj3tTn-+C^^XemG zGT~%+sAI`wgVP@#vhMzU;XX~v(NT-OL4Wim$h{5h6b_{O&{M85sQ)3!r zXPS!H=8X~chV`3M+b7d8rO5rsXms>z`_&)!%hyZXSM~anYr|XEU@WZ1H0I#GO*_@} z`%Fw_K@oA!5WzX7b!YX^sFAX3bTN~*{=0gUJIbk}0K7aN#{t*?UGyhT6N#qjAOROE z0UFbXbPMaHAWmQ!irx1!TOM9wESoNDUSf~w9(v_HEE#C__kd;M_+2>ERUUss`t$in zap0fd(ElSY?mu)Dr&S)8@qvT%58cj}gv&cHl>i7eEZ~MByvFDIOo0K_hK6O{86hjB*+WF-^$*{1eNiKBR5> z8CdDtcxOO&uiaSc4t7Er*%MG@~Zix#ZUjHCt70On>A~QorFXEt;&JcVM8ansK z3lC)zE6ryb*vibq>Y}4Vovy;6F_;lJVtbr+w(vZ12a%YRL?V$X3Du~{J$3~d<>uh8gTK<`Fz-hL8@dexs$d%_XVn1S(Lv*c?n_eFlVlv zdeaH&;6PBfcftu7d+xK zcDc;B%puZ8yR(h-JUS&ub$8?hGjZUWFv>W4%kRI^fYUQ6t2!nXPyt%(d=ttkYBM|3N{ zivu@7=}Z>Nueq?W@0H2hx3n*ZJ}y;61@Y@Ph-Q*xcg?5<6gp>cj61*gb^Nv6_JZ{= zg)T0c6-6ds|L0+4b@d|Hcsfh*2#rD>)~t$BOjU*4A3086{+qczAdMX#-`ty!pk&$CKdR{F6Q=f7JR&9xm`keE0Z~05ff~ z5*5WQ!2Km2RJR<*s?rSP=-*$PHe+jdgKtR}8#j8HwgnNMoq-nLnO&hR82sz+>!xcc zmc$`IN=1cKLqmg{o__O``YIqn(rYPLPOa|aw1`MHa zHxp<6aEU4U$u(?4GaWB6(yepJ9V$0O&!H;;?>Xw4P51Ae9{4{~gduGS7J*w-1} zOCET6qSr&H-c$_-6rVporX_b5&#<;TT8U76`jl|}f#T#BcwdYq4A+wYzi7<4C`adl z$?qpgkOa+r!$AVzHu4;A%Lf$y@$vy+I?0#^6z#9~W1rN5f&xxHzGEH(Ev=xgE_qf~ zP|-4v@RL+ESLOjrN-04DOaI}@0KFl5dPtgM6RpS`{K2nZzXTj-AGLD2`9JhNVc<1R z-+jf;$43%Dy?PP(ph&NReeFg9OX&!$*UAGf6A9Sq6{9A&*ags$7xumk7fwY@ePPcc zd{(WjtQ?n`s)S?-W6Jn`QZQRy^N2CyJ9xrXh3pEw)%a7wwJqWc>LQa~;B*0*l$nDX z)e_L&6lIWbC-!?IaQA?$r-Tng?uzj^blrSn?r0sZDi)R*D= zeDyfQrc$B#m8A{Sb7~iXimTuQm-g~m_~F2}>|u(6OESM_GOWE-ffVEGu`ruDY+#FDK57&}3l)aRFFo?1 z-!3mRnAUoU>r`hrQEm~+naL}=D9+{3KVm0*Q62o057L)~-ps6-BU6DLZp9n~JtkG_+IJ%BnLcSK3D zmzUQ~H_RJ1x86a}G(I)e&w$-0GG!^WEqKi6M^`|~@2!j4+WTjV-|o*#eeOpD^dqD- zG$`$a>AfG-$Z=Z+9#k#Gf6~(6OYcu=oD7VQkH2rx6&c%plc=22!~o{(3z&ZEFml!?HXeMIl~#(ArU}v2)LUC)K1;v9|T`vgkrxvB{zPu|yf)?e`Zu zfsO|n`>&+-Kwk6cXsCD|9+goddW#Hu+qcvcRrSXLhnB=8BqZ6^zurw5N=Ql~JXv?? zyfjm01pDW@J+4W26LltLp?VgY&lV%L?!&vws@C+1bWP@URCrkue;(Bo%MAsjPL1<Bg4%^<9_<3b-0@mW7VH@ZqGC^68b_FPLv7mOi?~IhHL#)QBu18f$Cx^<-P^J zu>GH_fMR5H2!WLO3n~UNu>?u!Gg)@!X|`9&BcdLTCYLDhRZU--Gh$}PG8J1%9Tx)P z-g4;*1x`tqvjXRWpBWJcQy!H&oW_oz??@?GLYi`7v(N6BkM9&mTHY1HmhHMa(c?Cv z+JtTULmCEB)4rPwKBv|bXSoU{dk#NvR%}{KoKC+^82$3TQd{ysYtL%qLn9!X?*s+ zZU-W8Tef_6Uzt+256v0=A^@NQi7cLVAaQ`V+G+eRFbngzi^oi)O+QbEcnzur=cUW6 z`n9vaevL3%H!wD4_p30iJc3b zntL6Rk{NC6R22QnM8s^&PoY~uvoc{`uGZ8AU*cq87-Vnu=~9=`%;vAmY(Gm52mEry z`eVuC*G^fOOFLi6Kvex%%iD=7?TJzqffSX1m69$JaFX7|0eHdu0zwI}y^GWC-g-O4 z)|^JdE@y_TBI)q*b24fs@{)gRFtfqvnWdHECns|DctV|0VaEJo&!9zMd?Uo8+@M#}hYc2i{s9haD0_ecP{*kx2#C{oYeaN~AgW zy-N={J1+Xo@zQSHctToQTHR*f#_Vslho?oLvS!oR>d-2^g4}Zk2Xt-G_jiQgp9VSb z=X(3avAO_HhS@bv!}=J zYYFK}BrzO~Oe(VX?FYM~86nWRGI@e)1BDCuQBj>i&P%#YlXmiqd3b#peKe$Keb-xR zhpz_C^fQ}jn#;>6BY+vPfn!o=rA-i$G;qclBUFEjUR7 zKL-|Wtja(*Kh&t!dGE~hAj>5t$s+B53wlz$TIdx5ME!4Ypb-yrK&Zra$ojyVWIy1E$-5nfOrO}_E#!kBJDat6Nb=iVt_dt8yOj`ZEgm3nyW8M zVVf`%C0zlG-y*1%5r{jpwsKcEG>j_R{XdLpYiVm|mz9w>BL^I1N#fPlI5OdapNgwq zkDn(%`Q@Q{mUe01cw7xMudcXMaI)aVHdL06=GFXEq-o=IR$nfi2!#GHTqi=$fOXEB<}WJTJ+9GGFFC z4pKGynI5<>i>|G0;hI)fLc&c%W-1HURDvoJ`Y5xj${YStb6BkY!oF2n3X+9??Qs8m zK-*&QBsVwL7q8dcKd3bpzm+oTJU%XamVqBv$BjeP zZc>4OgL8A+;-3fz_(a^?C=G##!b}f0ewG)o?P^YZrQ`xle+Pn&Yzj#8X%xzkmDxI#E>2Fx_|uq{I3?5!2~p* z`K>m=@Qw~Ec|j9ZVVWrU(67Z@O>-k7tG2J-QS;G$j*Kj@X_*!}^G8vjFQ7KV{?Iq99#lsXpFa0cFnHHX=~3`KXTWhb>6fW2oKUM4Ma;sz zCqsoGlQh}fj5$!)+0FbBIIbkZowJpegPyqhMD^Vm%`{@xf_csET_!qsaNP%Ln2(^WmLv>t*2vs&R zs5#${ODX7)=fo|y-IIx<$#g!gH~S~{h2Oj4QJQ@})$iM+ov5LDYg4o9@ZHhz@tpCQ z%|=DfjmA-BBt^@=jcnmPImU5&`<-2oAo*8($(!N(lQy3$uhRgh^A&~ShUz#9uQ3q+ZrW<{Zu@MRsnDjd$ z=JpqJ0{o!fg_p;8qsFHzl6Iof<_5rgU!3kX5dPwY6EW$_X$g$+G9Ttwso~~FZ*^Vk zy`^SNUWOC_Ha5Jso0r?3$WI`Oq7SM8PE6NosAksQ@8l3M%AriL^BwhRi2;c!>#~C( zT8Q%=K|2~|QS2K=O&+jZ3m|?#)Bo!H$+RJF?Zpc$I;Yk|dG2&$Bb5g4BO~4BquoH? z(_i1q91O^`g2xE-QburF`X&E~X^hTIoq{q=ypHg8yFdohkNEK7X7Ena=yA=!p9fpV zOe#%km!a{c$EW-qWJy6A%@THR_%U&Jf8A)G_V1iUTI@+>CEVAVq#)FBYz?7pw;C4;%a1j5|xd{vdCbO*Q|r}PT^H#5&fM7{V0xtIwCu_6mn?8dJu0v^*cZU~VhinbP=!VZ zpJ|Mnh;B%x!?VuGI6xEV281z1o<*cBE9Rry2l)S#m0f6Suqj{wCT=Q)pGAEn; zIu#U>oRY)7ltwx0c~Hd&rNqX?`P&@cx_qKCsh}jYo690RR%$}lX3}hI>ZVMC^d4)@ zNd)TKHv_zwkUv&d1 z%AKv2Vi2C6}i!S13z{DjX*;n&N$Ec^gBqn<9HjZysG3v4RNzb4X6>p~X`mfvx0>1+V z(!Ya96+&cdj$eXjtWeBVdV|in1k}d^@}nYh;J`Boj+K;^)%Q(?O2>yxj{BoiEpm!$ z5MF0^y+GM7Yd_f}g5;epjD#g!vYR(q0V+HDE--s_!9Sgx*6;dPZ(s2I^4i8vFR|tBLaMHz}QcW2kOjk&-=3fpp*4G%3vRc%~q(6UcNFy%;gGo+yjU zDmzE7oarY_c_Y2X%&lP^K7TnG(w38&o11P!>CTD0s)dBgNd;-*YEND4 z6hOhu1?>dg;0QK~ILcE`F{}{H1?6U_z;^TEqjw~wGlbd_8W3lTAm}M3<+)94G^}^_ z{jq|)rtk7W9TypLD(p~`E-D^7^%D2vRkhcap4$$_m)`^@a@_yEX!3*Y~s6Il;UUXTG&r>39l{c&1FWdee~*Vq3XA18?D%wD_t zMw}6nNnQsYU`v;I&^|OiqpmLw01(MiK?+S+jecB9c*6LW)2G}jDyZwBxwzcTL7z5L zGXz639mfD|a0zBz)oSvJ-`y`afxWNP&vE)u=j9HlWw53(8)ZW66_^G)G#UP8=PU=w zdk=0U-~if1x)fzU=p7sU*_1zo9h~kQ$~QZTDv{H^dk+}kd_$Rc0`cxQUobY!8{ql%#t-|h5VM2Zucf{5 zg!I~OfdG@icBa?r)zS-h4nNGX!xjTKr9J*jcDXwe#bn!z2WJ}9>?!_Rj_pIYuroP) znUa_5s@W&c*l*nSJu^F*kb3_OPwFT3n4{y#m)rK^;|o=|ZUNohtdY{+o2aevyL#qL zV$1MaBn~Edo1a15dxj+ab@Sfk-a-|bMI|tL`-o8fGaG3zbJN;d=j7qWGFu`PTU8;t zySpu>Yn`_)pjo&4U;KRI&@5fQYP#i<>7cCFpSR)s3?zaE3^=Uaf9ZYmlgV`TKq<2x zuW5=niPU@(*B!iXB%X}2$kx}s-MoX0ffcJWPVPrCPKZEayl;?*dbqT-q^<+%gw~7C zX)C{c$*!-j|MT}YX)03>l+zHDQ)|iw&ZqkB)#QT7TcUL0^L8g!2gocXej&X|0zdwR z^pLx~>z;#|nUQ{q);Cip=BIp}r-XS^9!+*XnSM0T0Rzg4SV@!||Av3u?1=gB(PJZpKnl3Ed*lEb(hTnY1X z*M4jDrq~;c5t~7yE0|9mB;CJ_MN3X>+s46jRN_J1ph7h4@<@|G)JZCVe>v!EQT$Hd z_=h1kUzdc+TB49rQ8}cvN-TfLjmS4mw_|rvIP=HgrSeI+#-bp0`a|>}PW;mRFW)C^ z!h!jUA(&?Hkd+2R!F7XVfC`h%3+N|A`AqYo+|XYkz1BBJKq=|&*J6-H`6fa^V2+g~ zkP`$^aOMS-fj(ILJb5qbH40@~%a`kKP6Xr}@ z(h?QjISkf?I(O;-FfPn>`UC7Kd&|t1hb$zL1^&9$BPY?Y4&7|HekwI%;}$IY`?x3@ zl9d5x4&VFZBYZ>*v9E`R$TRkMRprCJL>?%CfkU0#d(}3IJ$v$f+5}0#v+aS#S*p_X z4-QjEV|ONXO{6uDBL|)0%G^J^o@v4}cR#`^SLZz#7vd;W$P>OxQ~Ol`v4nAkExG1=%UO<;vd8e3Cp`<;DZ4hZnOB zHMl7$3vEk7RGO%>Y8wu!$vt!{4jtyjKqwuK1)pZLmCz{^8%9{`do%O>s447|UmdOn@B6J{vM zH=UcSv!?j@`NV~sLrsPl0Yii$hIUrp#NixU#4b{N}EzhVTG)=*?) zT&^upt$Yh8C!xlY_zNQf=HHD=?%?;~pFjOJF3{mMOcNwE1{qQoE^f8iSE2`1Jc;q4 zPbR-iv~&hOEw`i=l#N?p!|bNys7-8~8b(8;XR{G4lMy1Ou_?Jl)XKh-9e*o(){>K}_xkNwg2Jbw)U_@OLYDC*V0&aYx(o*UkCfvpQIO*d*n5=|hB%%e*o z-NWkpTdS(Fn;;gR@{T3HZGg6aP-O?f8d=5oC`}4N-?>lYY zWRk==!!*SD??KGrY6nIe3T+MhZqpsCsgq-5`CvfNr4zxJZ!PZQ@Nix6i=46pkt9z{ zCq&aD%c#)rXsp1ZbO3GO?&HjzlZk+}o08E*EdG{Xtj1-%TFj|OG!-I3E~gTj1}Zoy z+kGx1WVVXiaxyh$dSU7$MaDbT(QZ6lB_g$_s`GmY{xqZjXq(HR*=_D`RJCKq&N zASmG3+$ra>{6^f&oJQcBSJWk-8IWF}-k$J>)OJ9MQ|4XkfpXHZe{Wyghv$BT3y(1h zw|odqImv9@>6|nK9IZ|Fsi}M8QjeK_{Ui1;2er2!oUC*nAQL5zjL$?}ok1dX zt876k#OoGnb8&-gt0W>Jx|KQDWZ(`8zO^Dc2hkh^Y>S=tQ$NeV=AzM9r5yk3;i8!C z>qO3n-2`gBdvq$k!+bnKS--3kr0)(oI+u8ui6BCgRMRnw)Atqof5;jcF*1;b7L5ie z<)}md+WezcS1Wu(I80a3t*CpRx}kAs~#eqy;_SK0u2X6f!F0(1ycTck(zTmy>HBu(iqpd z1iPuVhFxWk|4T0MX@JMi3W!iPnFA@pz4^P{Sr2JTazet|linS0o#TjhD^IS7U%wy9 zLS+SNJeyuZOhDcY2zl?UIDO83_AcDJ0egOu%*}iTlD6uO_xXx{cg6LM<2G?I>EQ-K z#H*8f^COmcrxOBE_8myhsIK0>x-m3tKNstnlTVNNWt~2~gqzr?erEn7&KEtM5QxV2z&c%N0&+03Kzu*8gBM30v`o7@-b4~M66bID{U<^+Gqo0S5x868XA^6R2;{XhdM(q8!bg+8l9O)xcK(}&j z#m|bHTg4oWBFsj)t`6b?(0KciFPrejauO{mG#6INhG|>izyaob&Wru5(1+Ay3kH&N z_xk3L9WFo%S!QXhRYZO_BEje-gr6TJW$=mq9J_gL`#GiWfDmw4kDp!{h)ty24hZ4{ zX5&IzogPNRc8|)CM#!~u9w&<1h8=8~?Kg71nEIN)7-DNo<@#=s2O{@su&mDUY|r8H zXe1s8(vKSbx6AYbnZ@2z^(rped?kNJMKqXva+I?MdR|+ru7!p=4 z14WCg_HrP1CJA1g=+hY+MZ@0m#{JTi+Lsw>YmYH!&hwY2IHviS!_oOmvmHZI z)YXh37~6GAD63T{E9*wJ&@rMWtKy{x3$~5KHD4dEZSu!%E3R(p5s>_Yr!sNNZyNem zIart}mE@%$-h~Pxwa6L~6R0SpV#)+eXy+LE2CojGQBRf%#vS*lo$@q!c5&M5Q80!>)c7wx2xzu|rX{%Vm z4TA_5Yq>F82u^1-C7H-DNtceN)B=S2o3@_-_1w#e}+!x0!iJYnMgw_SQ2e7>eKr+O(+OeH^N{E zxBe!mXU`^&NBTk;DRK{kdi#7oq4fToX>=~iEOv|D4^pCSBZ{a$p?a28W9O9RkRr?` zI}DzEI_xL-%)i@K@p-Nbu|&}*7Y3)$B=+po=&c0*pf>+UeO^Hx%3RFdBXXBce~6W( zm8+acR&?Dl%LNalSBT2*CJx=Z%0dCI*7Ethf9Ci7xs5!XuLf@U&o9w10?HgpAN^GO zMpAdCVNH7szSJWY3POdJnkOBvAfaSlHF@5Rc>2Ri?J^FOASR+q`QWMOm69mUbfH)9 zzknRmPZ%gRmX|v<`m1Y)rG7~wjrD)y?>*)wi(CClrK~I<$sEMHlymo;bYl7z4l`n6 zNeW7cvB8H2@$~N;moxY(izNiekmm<+$jIVxT*v^MLlRELZYYJz!U6@jIQCVbY4wxF z8HeuH4~0$(`<=@czHrx!Z_xuC`LZoJjFLCy#4$VHT`$ifZZT?EviysuzmRN>S{M5u z=#IH5CoD}H_9Bq!UB_ABEbv)y96BT9SpcNGyu=~4CLIgj#W$^(bgIn`@Bvq|W7& z*rSHb;%0ys&@UfDc%>2;8FZdh|HOFrmtoDJt_eG@K8(a5DxEBFfbikr+0{aB z2%P1tekbG8UN<4J86YT`JJ+$G`wYpIWAOR&Vo>OdnJre$Z1)9m&o($RO?@(COZ?1! zLB5x=v9Y!h6I?(*v`wP)5>l8OL_O{q5A?Qb&RyIlCMAHW63xA;g$Nn4inorK1VRRw zc3-q?B|3Bi6XV@Xp$#j>#J#{sP9r33UWy{Iz(?}w(t-?JfaXFXBFaB#r27BfZA;`|b)w0;>b{e?jV+>btAiOy4d~o6skLLKKIB*R zf1o%+mA9J!bNO1mN%!Histw7TFmf*li$Ur_%%_()Z>c?^w6(tUIn%s|Zf__aZk@lp z1@Y|v_)iGYSFQz{R9X=VZ*&WGBwm5tR`SyAk%etIm)^pA|Yjk?X%*KCHcKh`$u ze0SvpiZ2$H3+JPXk&C4I{aN|FSKcR!{U2j*nqLIeEL;6zrMpQ>IQ zj_hCWe$%#u#cmh%&dAp5zVQ&uNZsry*zsSICRF%QOLizR7E^parFQmDff z!*G%S?(mSO(1>o({i^M^SBei~!GBTNy@@(HgtV26S%Fm`ondO3y@gT0Zqu!dl$$25 z#nQ!26H@6VUk)5rL1*4_FUFTiIM6@NW-EA})-^@Zo z9oE_L*tk!4TwSVTK~XN{=8eDdunB!rX%4xAv(o?C0~=TW9U=OtoRwQ+5wi0`g5a^A zW1qs^Z&9LP?$d?3ZUXN9{|m*r(7^ncoWcJOo!?^7IrCq1jLA0b=5-#&zA705rb<1=sIjekyr^zc(^e z#C=hoqobqT=X(_Ms+1cSAWy_}U5+ka3u8nOU2Gi`7D{z}lpc?1FPHS0}; z8E98a#)TiE54~L{U(7q$KH2`ANeX~FRi&5i> z{KG1WF@Z_9LAB9azi5~YUb^yrQEisnCuoM(VReiHXKAIa%BrfYf?jN7g@CBWhDG>h z&}3>+-^0&uHUoX9mj5`sjwkgUotYtw@AY_$<1DScIpK#uRzs6E`vv*=Z9MpUp!nJt zk(+hn{P%d?TTb8qP}nKhGf&C7q!Y{`ITK@Xb5L=udD+?5n~yr4;QHP7BEA6rimtAn z$lhxc+gEz8g^@IEL#Gfhh+kNI!_#X+CHO31=prNp-{~R?c~Q40!Iaeh6oO1B!^-%N zn<&KE<@m=I%%cmI*2sqvpvTV50mXKzQ})=TB#w)A!DlxIGcMk{33ecPjT=0rtU+c3 z0-+8W9ihtF{!Fke0Rs7whjrYhZILyka?~WFkLUM~%oaPi_B&0$*`)_QhFX zh`)X^Bcn=3H^;RdYTFs5axN2Z=p4WIluji57M#$4nw}n4y=sq*Q-<=}w{<01S*@#{ zbz6f=5Cd?Q$|!T}Fpkn|06yAA#7 z>T-3eOAm{xViq22yC;36;j1PNGZzCKCrpqoDs(KK1jNXr`R0#$cvdHnuv)iVU1lXLodY%abKM?i7BN zJaUE^>J?i!4?V8ix;UMcxCXrykr8&{P5|NA_aR8kVrN&cB*R8U1iwNW8gKy7R7-q- z;mc5Qynj>Y~Tv_+Z;MXUe1I&9QDqR(V zvh+dHX;;;IfByV&ns32@nz-4@k2Ghb3kx0nQ0vQz1t&SY3rG^puF!&F2w!IVlA=+@ z=Ykc3Of)X2!!*Np+YsItz;R>g6rfaPQ`^v|*6X-XwV#|k)9mi3{xa#KD=i94K0%lo zcRmnyzQ&Td{lD$eEer3i59@JbjfJto%LtMmjxI>ii(Nyviqch)x{1@}w++TK_wgYW z{W+Fa>pi9&MCj<~)O_Y7_fK%YFSvjAIXN`=gnCs{>pFxpKW5M zcEq?rrfJCbps$~5RR#KSNj9LQD9;J@{^+vYDro?jS-7v~6=^pJkM%eZNOc4G`Bymq zM_pa1$*7bH7Z*>51;&+^JHsmE*`KEdP3RKMdhaqr1#zfD+^U^%fFJZeW#!1bD=bV} zv%1ozZ$P99k^n99PGN%<(EEJ^A^H>Q!5%J^3m~FDOmK!?AbRzWxaxA{ASAH)Q;0uFA2?~dj|Iu$S7!ZRQpOog z3TmO)_5<-s-IwfaN^LbGDO9JCOQo}1_0UD`gNlWnhAwxGJ%eBu{cu!55Il-rgf_AO z>k}2tXsivP%eCa>y|P$&(5T1^J*`; zqtb};DySg=Qy?+1wZSr+3H#t<6X#K6lKJsuc^*zD1ex!zh2L-y_vXTguRzBNcpd|_ z5~aQOKFL2+yQlf|nJ3!zg|8AQUEp~vJ(!nUm3Sb8O=rW==muv8kRtvPO%;S>=nJN+ zIsPTkEUpwMGlNNx6=P-rC;Ox3;9k|I`42hlKY5-dK(0OP;LuU4&)*Jl8N_NRhb#Z1 zT#oIhI8_@6GL{pxROd>%G;8-Je&AWwGD_4IK*<5GF~NWBlh2a9m@OzL5a-_VxiP z{@8OGQV<}$7(=*Z7d%B0aNJdS(__m> zl&3jakN1r{{6E9Ek+$|209001_T0Pqf2G0f14H_y?ihvV&x^Ca$+F^;07d%8VT(o3 wxKsi79SAK$esPtNwG1M>07?yYxp!#EGx=}V%JW0w0qF0koQiCTv}wTq15;PcjQ{`u delta 16143 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 literal 0 HcmV?d00001 From 2bfc48e0972813d41c01a0af77fa28d11329e399 Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 17:06:11 +0200 Subject: [PATCH 44/63] Fixed .dme Seriously.. --- baystation12.dme | 235 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 232 insertions(+), 3 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index 6098b8bba4..79f0e2de77 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -6,14 +6,235 @@ // BEGIN_FILE_DIR #define FILE_DIR . #define FILE_DIR "code" +#define FILE_DIR "code/__HELPERS" +#define FILE_DIR "code/ATMOSPHERICS" +#define FILE_DIR "code/ATMOSPHERICS/components" +#define FILE_DIR "code/ATMOSPHERICS/components/binary_devices" +#define FILE_DIR "code/ATMOSPHERICS/components/trinary_devices" +#define FILE_DIR "code/ATMOSPHERICS/components/unary" +#define FILE_DIR "code/controllers" +#define FILE_DIR "code/datums" +#define FILE_DIR "code/datums/diseases" +#define FILE_DIR "code/datums/diseases/advance" +#define FILE_DIR "code/datums/diseases/advance/symptoms" +#define FILE_DIR "code/datums/helper_datums" +#define FILE_DIR "code/datums/spells" +#define FILE_DIR "code/defines" +#define FILE_DIR "code/defines/obj" +#define FILE_DIR "code/defines/procs" +#define FILE_DIR "code/FEA" +#define FILE_DIR "code/game" +#define FILE_DIR "code/game/area" +#define FILE_DIR "code/game/gamemodes" +#define FILE_DIR "code/game/gamemodes/autotraitor" +#define FILE_DIR "code/game/gamemodes/blob" +#define FILE_DIR "code/game/gamemodes/blob/blobs" +#define FILE_DIR "code/game/gamemodes/changeling" +#define FILE_DIR "code/game/gamemodes/cult" +#define FILE_DIR "code/game/gamemodes/epidemic" +#define FILE_DIR "code/game/gamemodes/events" +#define FILE_DIR "code/game/gamemodes/events/holidays" +#define FILE_DIR "code/game/gamemodes/extended" +#define FILE_DIR "code/game/gamemodes/malfunction" +#define FILE_DIR "code/game/gamemodes/meme" +#define FILE_DIR "code/game/gamemodes/meteor" +#define FILE_DIR "code/game/gamemodes/nuclear" +#define FILE_DIR "code/game/gamemodes/revolution" +#define FILE_DIR "code/game/gamemodes/sandbox" +#define FILE_DIR "code/game/gamemodes/traitor" +#define FILE_DIR "code/game/gamemodes/wizard" +#define FILE_DIR "code/game/jobs" +#define FILE_DIR "code/game/jobs/job" +#define FILE_DIR "code/game/machinery" +#define FILE_DIR "code/game/machinery/atmoalter" +#define FILE_DIR "code/game/machinery/bots" +#define FILE_DIR "code/game/machinery/camera" +#define FILE_DIR "code/game/machinery/computer" +#define FILE_DIR "code/game/machinery/doors" +#define FILE_DIR "code/game/machinery/embedded_controller" +#define FILE_DIR "code/game/machinery/kitchen" +#define FILE_DIR "code/game/machinery/pipe" +#define FILE_DIR "code/game/machinery/telecomms" +#define FILE_DIR "code/game/magic" +#define FILE_DIR "code/game/mecha" +#define FILE_DIR "code/game/mecha/combat" +#define FILE_DIR "code/game/mecha/equipment" +#define FILE_DIR "code/game/mecha/equipment/tools" +#define FILE_DIR "code/game/mecha/equipment/weapons" +#define FILE_DIR "code/game/mecha/medical" +#define FILE_DIR "code/game/mecha/working" +#define FILE_DIR "code/game/objects" +#define FILE_DIR "code/game/objects/closets" +#define FILE_DIR "code/game/objects/closets/secure" +#define FILE_DIR "code/game/objects/effects" +#define FILE_DIR "code/game/objects/effects/decals" +#define FILE_DIR "code/game/objects/effects/decals/Cleanable" +#define FILE_DIR "code/game/objects/effects/spawners" +#define FILE_DIR "code/game/objects/items" +#define FILE_DIR "code/game/objects/items/devices" +#define FILE_DIR "code/game/objects/items/devices/PDA" +#define FILE_DIR "code/game/objects/items/devices/radio" +#define FILE_DIR "code/game/objects/items/robot" +#define FILE_DIR "code/game/objects/items/stacks" +#define FILE_DIR "code/game/objects/items/stacks/sheets" +#define FILE_DIR "code/game/objects/items/stacks/tiles" +#define FILE_DIR "code/game/objects/items/weapons" +#define FILE_DIR "code/game/objects/items/weapons/grenades" +#define FILE_DIR "code/game/objects/items/weapons/implants" +#define FILE_DIR "code/game/objects/items/weapons/melee" +#define FILE_DIR "code/game/objects/items/weapons/storage" +#define FILE_DIR "code/game/objects/items/weapons/tanks" +#define FILE_DIR "code/game/objects/storage" +#define FILE_DIR "code/game/objects/structures" +#define FILE_DIR "code/game/objects/structures/crates_lockers" +#define FILE_DIR "code/game/objects/structures/crates_lockers/closets" +#define FILE_DIR "code/game/objects/structures/crates_lockers/closets/secure" +#define FILE_DIR "code/game/objects/structures/stool_bed_chair_nest" +#define FILE_DIR "code/game/structure" +#define FILE_DIR "code/game/turfs" +#define FILE_DIR "code/game/turfs/simulated" +#define FILE_DIR "code/game/turfs/space" +#define FILE_DIR "code/game/turfs/unsimulated" +#define FILE_DIR "code/game/vehicles" +#define FILE_DIR "code/game/verbs" +#define FILE_DIR "code/js" +#define FILE_DIR "code/modules" +#define FILE_DIR "code/modules/admin" +#define FILE_DIR "code/modules/admin/DB ban" +#define FILE_DIR "code/modules/admin/permissionverbs" +#define FILE_DIR "code/modules/admin/verbs" +#define FILE_DIR "code/modules/assembly" +#define FILE_DIR "code/modules/awaymissions" +#define FILE_DIR "code/modules/awaymissions/maploader" +#define FILE_DIR "code/modules/client" +#define FILE_DIR "code/modules/clothing" +#define FILE_DIR "code/modules/clothing/glasses" +#define FILE_DIR "code/modules/clothing/gloves" +#define FILE_DIR "code/modules/clothing/head" +#define FILE_DIR "code/modules/clothing/masks" +#define FILE_DIR "code/modules/clothing/shoes" +#define FILE_DIR "code/modules/clothing/spacesuits" +#define FILE_DIR "code/modules/clothing/suits" +#define FILE_DIR "code/modules/clothing/under" +#define FILE_DIR "code/modules/clothing/under/jobs" +#define FILE_DIR "code/modules/customitems" +#define FILE_DIR "code/modules/destilery" +#define FILE_DIR "code/modules/DetectiveWork" +#define FILE_DIR "code/modules/events" +#define FILE_DIR "code/modules/flufftext" +#define FILE_DIR "code/modules/food" +#define FILE_DIR "code/modules/genetics" +#define FILE_DIR "code/modules/icon generation" +#define FILE_DIR "code/modules/library" +#define FILE_DIR "code/modules/liquid" +#define FILE_DIR "code/modules/maps" +#define FILE_DIR "code/modules/mining" +#define FILE_DIR "code/modules/mob" +#define FILE_DIR "code/modules/mob/dead" +#define FILE_DIR "code/modules/mob/dead/observer" +#define FILE_DIR "code/modules/mob/living" +#define FILE_DIR "code/modules/mob/living/blob" +#define FILE_DIR "code/modules/mob/living/carbon" +#define FILE_DIR "code/modules/mob/living/carbon/alien" +#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid" +#define FILE_DIR "code/modules/mob/living/carbon/alien/humanoid/caste" +#define FILE_DIR "code/modules/mob/living/carbon/alien/larva" +#define FILE_DIR "code/modules/mob/living/carbon/alien/special" +#define FILE_DIR "code/modules/mob/living/carbon/brain" +#define FILE_DIR "code/modules/mob/living/carbon/human" +#define FILE_DIR "code/modules/mob/living/carbon/metroid" +#define FILE_DIR "code/modules/mob/living/carbon/monkey" +#define FILE_DIR "code/modules/mob/living/silicon" +#define FILE_DIR "code/modules/mob/living/silicon/ai" +#define FILE_DIR "code/modules/mob/living/silicon/ai/freelook" +#define FILE_DIR "code/modules/mob/living/silicon/decoy" +#define FILE_DIR "code/modules/mob/living/silicon/pai" +#define FILE_DIR "code/modules/mob/living/silicon/robot" +#define FILE_DIR "code/modules/mob/living/simple_animal" +#define FILE_DIR "code/modules/mob/living/simple_animal/friendly" +#define FILE_DIR "code/modules/mob/living/simple_animal/hostile" +#define FILE_DIR "code/modules/mob/living/simple_animal/hostile/retaliate" +#define FILE_DIR "code/modules/mob/new_player" +#define FILE_DIR "code/modules/organs" +#define FILE_DIR "code/modules/paperwork" +#define FILE_DIR "code/modules/power" +#define FILE_DIR "code/modules/power/antimatter" +#define FILE_DIR "code/modules/power/singularity" +#define FILE_DIR "code/modules/power/singularity/particle_accelerator" +#define FILE_DIR "code/modules/projectiles" +#define FILE_DIR "code/modules/projectiles/ammunition" +#define FILE_DIR "code/modules/projectiles/guns" +#define FILE_DIR "code/modules/projectiles/guns/energy" +#define FILE_DIR "code/modules/projectiles/guns/projectile" +#define FILE_DIR "code/modules/projectiles/projectile" +#define FILE_DIR "code/modules/reagents" +#define FILE_DIR "code/modules/reagents/reagent_containers" +#define FILE_DIR "code/modules/reagents/reagent_containers/food" +#define FILE_DIR "code/modules/reagents/reagent_containers/food/drinks" +#define FILE_DIR "code/modules/reagents/reagent_containers/food/drinks/bottle" +#define FILE_DIR "code/modules/reagents/reagent_containers/food/snacks" +#define FILE_DIR "code/modules/reagents/reagent_containers/glass" +#define FILE_DIR "code/modules/reagents/reagent_containers/glass/bottle" +#define FILE_DIR "code/modules/recycling" +#define FILE_DIR "code/modules/research" +#define FILE_DIR "code/modules/research/xenoarchaeology" +#define FILE_DIR "code/modules/research/xenoarchaeology/artifact" +#define FILE_DIR "code/modules/research/xenoarchaeology/artifact/effects" +#define FILE_DIR "code/modules/research/xenoarchaeology/finds" +#define FILE_DIR "code/modules/research/xenoarchaeology/machinery" +#define FILE_DIR "code/modules/research/xenoarchaeology/tools" +#define FILE_DIR "code/modules/scripting" +#define FILE_DIR "code/modules/scripting/AST" +#define FILE_DIR "code/modules/scripting/AST/Operators" +#define FILE_DIR "code/modules/scripting/Implementations" +#define FILE_DIR "code/modules/scripting/Interpreter" +#define FILE_DIR "code/modules/scripting/Parser" +#define FILE_DIR "code/modules/scripting/Scanner" +#define FILE_DIR "code/modules/security levels" +#define FILE_DIR "code/modules/surgery" #define FILE_DIR "code/TriDimension" +#define FILE_DIR "code/unused" +#define FILE_DIR "code/unused/beast" +#define FILE_DIR "code/unused/computer2" +#define FILE_DIR "code/unused/disease2" +#define FILE_DIR "code/unused/gamemodes" +#define FILE_DIR "code/unused/hivebot" +#define FILE_DIR "code/unused/mining" +#define FILE_DIR "code/unused/optics" +#define FILE_DIR "code/unused/pda2" +#define FILE_DIR "code/unused/powerarmor" +#define FILE_DIR "code/unused/spacecraft" #define FILE_DIR "code/WorkInProgress" +#define FILE_DIR "code/WorkInProgress/AI_Visibility" +#define FILE_DIR "code/WorkInProgress/animusstation" +#define FILE_DIR "code/WorkInProgress/Apples" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn" +#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Economy" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Jungle" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Rust" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/ShieldGen" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Supermatter" +#define FILE_DIR "code/WorkInProgress/carn" +#define FILE_DIR "code/WorkInProgress/Chinsky" +#define FILE_DIR "code/WorkInProgress/Cib" +#define FILE_DIR "code/WorkInProgress/Cib/amorph" +#define FILE_DIR "code/WorkInProgress/Mini" +#define FILE_DIR "code/WorkInProgress/Mloc" +#define FILE_DIR "code/WorkInProgress/organs" +#define FILE_DIR "code/WorkInProgress/Ported" +#define FILE_DIR "code/WorkInProgress/Ported/Abi79" +#define FILE_DIR "code/WorkInProgress/Ported/Bureaucracy" +#define FILE_DIR "code/WorkInProgress/Ported/Spawners" +#define FILE_DIR "code/WorkInProgress/Sigyn" +#define FILE_DIR "code/WorkInProgress/Sigyn/Department Sec" +#define FILE_DIR "code/WorkInProgress/Sigyn/Softcurity" +#define FILE_DIR "code/WorkInProgress/SkyMarshal" #define FILE_DIR "code/WorkInProgress/Susan" +#define FILE_DIR "code/WorkInProgress/Tastyfish" +#define FILE_DIR "code/WorkInProgress/virus2" +#define FILE_DIR "code/WorkInProgress/virus2/Disease2" +#define FILE_DIR "code/WorkInProgress/Wrongnumber" +#define FILE_DIR "code/ZAS" #define FILE_DIR "html" #define FILE_DIR "icons" #define FILE_DIR "icons/48x48" @@ -36,6 +257,9 @@ #define FILE_DIR "icons/turf" #define FILE_DIR "icons/vending_icons" #define FILE_DIR "icons/xenoarch_icons" +#define FILE_DIR "interface" +#define FILE_DIR "maps" +#define FILE_DIR "maps/RandomZLevels" #define FILE_DIR "sound" #define FILE_DIR "sound/AI" #define FILE_DIR "sound/ambience" @@ -54,8 +278,7 @@ #define FILE_DIR "sound/voice/Serithi" #define FILE_DIR "sound/weapons" #define FILE_DIR "tools" -#define FILE_DIR "tools/AddToChangelog" -#define FILE_DIR "tools/AddToChangelog/AddToChangelog" +#define FILE_DIR "tools/Redirector" // END_FILE_DIR // BEGIN_PREFERENCES #define DEBUG @@ -482,6 +705,7 @@ #include "code\game\objects\items\trash.dm" #include "code\game\objects\items\devices\aicard.dm" #include "code\game\objects\items\devices\chameleonproj.dm" +#include "code\game\objects\items\devices\debugger.dm" #include "code\game\objects\items\devices\flash.dm" #include "code\game\objects\items\devices\flashlight.dm" #include "code\game\objects\items\devices\lightreplacer.dm" @@ -789,7 +1013,7 @@ #include "code\modules\DetectiveWork\detective_work.dm" #include "code\modules\DetectiveWork\evidence.dm" #include "code\modules\DetectiveWork\footprints_and_rag.dm" -#include "code\modules\DetectiveWork\scanner.dm" +#include "code\modules\detectivework\scanner.dm" #include "code\modules\events\alien_infestation.dm" #include "code\modules\events\blob.dm" #include "code\modules\events\brand_intelligence.dm" @@ -808,6 +1032,7 @@ #include "code\modules\events\money_hacker.dm" #include "code\modules\events\money_lotto.dm" #include "code\modules\events\money_spam.dm" +#include "code\modules\events\organ_failure.dm" #include "code\modules\events\prison_break.dm" #include "code\modules\events\radiation_storm.dm" #include "code\modules\events\rogue_drones.dm" @@ -817,6 +1042,7 @@ #include "code\modules\events\spontaneous_appendicitis.dm" #include "code\modules\events\viral_infection.dm" #include "code\modules\events\viral_outbreak.dm" +#include "code\modules\events\wallrot.dm" #include "code\modules\flufftext\Dreaming.dm" #include "code\modules\flufftext\Hallucination.dm" #include "code\modules\flufftext\TextFilters.dm" @@ -838,6 +1064,7 @@ #include "code\modules\mining\ores_coins.dm" #include "code\modules\mining\satchel_ore_boxdm.dm" #include "code\modules\mob\death.dm" +#include "code\modules\mob\emote.dm" #include "code\modules\mob\inventory.dm" #include "code\modules\mob\login.dm" #include "code\modules\mob\logout.dm" @@ -1249,6 +1476,7 @@ #include "code\WorkInProgress\autopsy.dm" #include "code\WorkInProgress\buildmode.dm" #include "code\WorkInProgress\explosion_particles.dm" +#include "code\WorkInProgress\periodic_news.dm" #include "code\WorkInProgress\Cael_Aislinn\meteor_battery.dm" #include "code\WorkInProgress\Cael_Aislinn\sculpture.dm" #include "code\WorkInProgress\Cael_Aislinn\Economy\Accounts.dm" @@ -1279,6 +1507,7 @@ #include "code\WorkInProgress\Cael_Aislinn\Rust\fuel_compressor_construction.dm" #include "code\WorkInProgress\Cael_Aislinn\Rust\fuel_control.dm" #include "code\WorkInProgress\Cael_Aislinn\Rust\fuel_injector.dm" +#include "code\WorkInProgress\Cael_Aislinn\Rust\fusion_reactions.dm" #include "code\WorkInProgress\Cael_Aislinn\Rust\gyrotron.dm" #include "code\WorkInProgress\Cael_Aislinn\Rust\gyrotron_controller.dm" #include "code\WorkInProgress\Cael_Aislinn\Rust\radiation.dm" From ce19719700d6df9aacdfc0efa99e94233b294eab Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 19:47:33 +0200 Subject: [PATCH 45/63] Fixed two problem with airlock/APC commit: - Debugger now sends messages to user instead of usr(whoops) - Can now close emagged door with crowbar so you can take out circuit - Couldn't weld emagged doors - Replacing the circuitry should now be sufficient to fix an emagged door. --- code/game/machinery/doors/airlock.dm | 3 ++- code/game/machinery/doors/door.dm | 2 +- code/game/objects/items/devices/debugger.dm | 19 ++++++++++--------- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 0bc9dfdd50..22748d5a0f 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -1169,7 +1169,7 @@ About the new airlock wires panel: return src.add_fingerprint(user) - if((istype(C, /obj/item/weapon/weldingtool) && !( src.operating ) && src.density)) + if((istype(C, /obj/item/weapon/weldingtool) && !( src.operating > 0 ) && src.density)) var/obj/item/weapon/weldingtool/W = C if(W.remove_fuel(0,user)) if(!src.welded) @@ -1245,6 +1245,7 @@ About the new airlock wires panel: ae.loc = src.loc if(operating == -1) ae.icon_state = "door_electronics_smoked" + operating = 0 del(src) return diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 465af474e6..9ac8ad6c7f 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -219,7 +219,7 @@ /obj/machinery/door/proc/close() if(density) return 1 - if(operating) return + if(operating > 0) return operating = 1 animate("closing") diff --git a/code/game/objects/items/devices/debugger.dm b/code/game/objects/items/devices/debugger.dm index d90edfa1ba..0b1d8c3811 100644 --- a/code/game/objects/items/devices/debugger.dm +++ b/code/game/objects/items/devices/debugger.dm @@ -5,9 +5,10 @@ */ /obj/item/device/debugger - name = "multitool" - desc = "Used for pulsing wires to test which to cut. Not recommended by doctors." - icon_state = "multitool" + icon = 'icon/obj/hacktool.dmi' + name = "debugger" + desc = "Used to debug electronic equipment." + icon_state = "hacktool-g" flags = FPRINT | TABLEPASS| CONDUCT force = 5.0 w_class = 2.0 @@ -24,21 +25,21 @@ if(istype(O, /obj/machinery/power/apc)) var/obj/machinery/power/apc/A = O if(A.emagged || A.malfhack) - usr << "\red There is a software error with the device." + user << "\red There is a software error with the device." else - usr << "\blue The device's software appears to be fine." + user << "\blue The device's software appears to be fine." return 1 if(istype(O, /obj/machinery/door)) var/obj/machinery/door/D = O if(D.operating == -1) - usr << "\red There is a software error with the device." + user << "\red There is a software error with the device." else - usr << "\blue The device's software appears to be fine." + user << "\blue The device's software appears to be fine." return 1 else if(istype(O, /obj/machinery)) var/obj/machinery/A = O if(A.emagged) - usr << "\red There is a software error with the device." + user << "\red There is a software error with the device." else - usr << "\blue The device's software appears to be fine." + user << "\blue The device's software appears to be fine." return 1 \ No newline at end of file From b1b448e0eea1f2fd9c4477aae87f70d0b15a9a1e Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 20:15:45 +0200 Subject: [PATCH 46/63] Adjusted event announcement delays. Also improved some radiation belt announcements. --- code/modules/events/organ_failure.dm | 2 +- code/modules/events/radiation_storm.dm | 4 ++-- code/modules/events/wallrot.dm | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/events/organ_failure.dm b/code/modules/events/organ_failure.dm index 2a6b0b6a37..6160523f0b 100644 --- a/code/modules/events/organ_failure.dm +++ b/code/modules/events/organ_failure.dm @@ -2,7 +2,7 @@ datum/event/organ_failure var/severity = 1 datum/event/organ_failure/setup() - announceWhen = rand(0, 3000) + announceWhen = rand(0, 300) endWhen = announceWhen + 1 severity = rand(1, 3) diff --git a/code/modules/events/radiation_storm.dm b/code/modules/events/radiation_storm.dm index 18911c6181..d9cca33e72 100644 --- a/code/modules/events/radiation_storm.dm +++ b/code/modules/events/radiation_storm.dm @@ -12,7 +12,7 @@ sleep(200) - command_alert("The station has entered the radiation belt. Please report to medbay if you experience any unusual symptoms.", "Anomaly Alert") + command_alert("The station has entered the radiation belt. Please remain in a sheltered area until we have passed the radiation belt.", "Anomaly Alert") for(var/i = 0, i < 10, i++) for(var/mob/living/carbon/human/H in living_mob_list) var/turf/T = get_turf(H) @@ -42,4 +42,4 @@ sleep(50) - command_alert("The station has passed the radiation belt", "Anomaly Alert") \ No newline at end of file + command_alert("The station has passed the radiation belt. Please report to medbay if you experience any unusual symptoms.", "Anomaly Alert") \ No newline at end of file diff --git a/code/modules/events/wallrot.dm b/code/modules/events/wallrot.dm index 02e33c52d7..13da0842b0 100644 --- a/code/modules/events/wallrot.dm +++ b/code/modules/events/wallrot.dm @@ -5,7 +5,7 @@ datum/event/wallrot var/severity = 1 datum/event/wallrot/setup() - announceWhen = rand(0, 3000) + announceWhen = rand(0, 300) endWhen = announceWhen + 1 severity = rand(5, 10) From c4b8ef6e59e657fa8990e77876da5f804f147b23 Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 20:27:13 +0200 Subject: [PATCH 47/63] You can't close emagged doors anymore, but you can still remove circuitry. --- code/game/machinery/doors/airlock.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 22748d5a0f..e8d4078593 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -1198,7 +1198,7 @@ About the new airlock wires panel: beingcrowbarred = 1 //derp, Agouri else beingcrowbarred = 0 - if( beingcrowbarred && (density && welded && operating != 1 && src.p_open && (!src.arePowerSystemsOn() || stat & NOPOWER) && !src.locked) ) + if( beingcrowbarred && (operating == -1 || density && welded && operating != 1 && src.p_open && (!src.arePowerSystemsOn() || stat & NOPOWER) && !src.locked) ) playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) user.visible_message("[user] removes the electronics from the airlock assembly.", "You start to remove electronics from the airlock assembly.") if(do_after(user,40)) @@ -1253,7 +1253,7 @@ About the new airlock wires panel: user << "\blue The airlock's motors resist your efforts to force it." else if(locked) user << "\blue The airlock's bolts prevent it from being forced." - else if( !welded && operating != 1 ) + else if( !welded && !operating ) if(density) if(beingcrowbarred == 0) //being fireaxe'd var/obj/item/weapon/twohanded/fireaxe/F = C From b5217d862a90267f51b498bf13544238dd31edcf Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 22:12:20 +0200 Subject: [PATCH 48/63] A few fixes to rp-rev - Name was empty, hopefully using real_name fixes that - Announcements coming too quickly - Fixed icon path issue --- .../gamemodes/revolution/rp_revolution.dm | 26 +++++++++++++------ code/game/objects/items/devices/debugger.dm | 2 +- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/code/game/gamemodes/revolution/rp_revolution.dm b/code/game/gamemodes/revolution/rp_revolution.dm index 73f824b938..98923b49ee 100644 --- a/code/game/gamemodes/revolution/rp_revolution.dm +++ b/code/game/gamemodes/revolution/rp_revolution.dm @@ -217,18 +217,28 @@ message_admins("Unable to add new heads of revolution.") tried_to_add_revheads = world.time + 6000 // wait 10 minutes - if(last_command_report == 0 && world.time >= 60 * 10) - command_alert("We are regrettably announcing that your performance has been disappointing, and we are thus forced to cut down on financial support to your station. To achieve this, the pay of all personnal, except the Heads of Staff, has been halved.") + if(last_command_report == 0 && world.time >= 10 * 60 * 10) + src.command_report("We are regrettably announcing that your performance has been disappointing, and we are thus forced to cut down on financial support to your station. To achieve this, the pay of all personnal, except the Heads of Staff, has been halved.") last_command_report = 1 - else if(last_command_report == 1 && world.time >= 60 * 30) - command_alert("Statistics hint that a high amount of leisure time, and associated activities, are responsible for the poor performance of many of our stations. You are to bolt and close down any leisure facilities, such as the holodeck, the theatre and the bar. Food can be distributed through vendors and the kitchen.") + else if(last_command_report == 1 && world.time >= 10 * 60 * 30) + src.command_report("Statistics hint that a high amount of leisure time, and associated activities, are responsible for the poor performance of many of our stations. You are to bolt and close down any leisure facilities, such as the holodeck, the theatre and the bar. Food can be distributed through vendors and the kitchen.") last_command_report = 2 - else if(last_command_report == 2 && world.time >= 60 * 60) - command_alert("It is reported that merely closing down leisure facilities has not been successful. You and your Heads of Staff are to ensure that all crew are working hard, and not wasting time or energy. Any crew caught off duty without leave from their Head of Staff are to be warned, and on repeated offence, to be brigged until the next transfer shuttle arrives, which will take them to facilities where they can be of more use.") + else if(last_command_report == 2 && world.time >= 10 * 60 * 60) + src.command_report("It is reported that merely closing down leisure facilities has not been successful. You and your Heads of Staff are to ensure that all crew are working hard, and not wasting time or energy. Any crew caught off duty without leave from their Head of Staff are to be warned, and on repeated offence, to be brigged until the next transfer shuttle arrives, which will take them to facilities where they can be of more use.") last_command_report = 3 return ..() +/datum/game_mode/revolution/rp_revolution/proc/command_report(message) + for (var/obj/machinery/computer/communications/comm in world) + if (!(comm.stat & (BROKEN | NOPOWER)) && comm.prints_intercept) + var/obj/item/weapon/paper/intercept = new /obj/item/weapon/paper( comm.loc ) + intercept.name = "paper- 'Cent. Com. Announcement'" + intercept.info = message + + comm.messagetitle.Add("Cent. Com. Announcement") + comm.messagetext.Add(message) + world << sound('commandreport.ogg') /datum/game_mode/revolution/rp_revolution/latespawn(mob/M) if(M.mind.assigned_role in command_positions) @@ -239,6 +249,6 @@ var/datum/objective/mutiny/rp/rev_obj = new rev_obj.owner = rev_mind rev_obj.target = M.mind - rev_obj.explanation_text = "Assassinate, convert or capture [M.name], the [M.mind.assigned_role]." + rev_obj.explanation_text = "Assassinate, convert or capture [M.real_name], the [M.mind.assigned_role]." rev_mind.objectives += rev_obj - rev_mind.current << "\red A new Head of Staff, [M.name], the [M.mind.assigned_role] has appeared. Your objectives have been updated." \ No newline at end of file + rev_mind.current << "\red A new Head of Staff, [M.real_name], the [M.mind.assigned_role] has appeared. Your objectives have been updated." \ No newline at end of file diff --git a/code/game/objects/items/devices/debugger.dm b/code/game/objects/items/devices/debugger.dm index 0b1d8c3811..7a05fc696a 100644 --- a/code/game/objects/items/devices/debugger.dm +++ b/code/game/objects/items/devices/debugger.dm @@ -5,7 +5,7 @@ */ /obj/item/device/debugger - icon = 'icon/obj/hacktool.dmi' + icon = 'icons/obj/hacktool.dmi' name = "debugger" desc = "Used to debug electronic equipment." icon_state = "hacktool-g" From 89aa936147f683d23a179d0c294aa148daff7b49 Mon Sep 17 00:00:00 2001 From: cib Date: Thu, 23 May 2013 22:46:27 +0200 Subject: [PATCH 49/63] Fix to organ_failure event. --- code/modules/events/organ_failure.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/events/organ_failure.dm b/code/modules/events/organ_failure.dm index 6160523f0b..89456c0c1b 100644 --- a/code/modules/events/organ_failure.dm +++ b/code/modules/events/organ_failure.dm @@ -13,7 +13,7 @@ datum/event/organ_failure/announce() datum/event/organ_failure/start() var/list/candidates = list() //list of candidate keys for(var/mob/living/carbon/human/G in player_list) - if(!(G.mind && G.mind.current && G.mind.current.stat != DEAD && G.health > 70)) + if(G.mind && G.mind.current && G.mind.current.stat != DEAD && G.health > 70) candidates += G if(!candidates.len) return candidates = shuffle(candidates)//Incorporating Donkie's list shuffle From 0bfb43b8641e0769a889826135a340bef1070a08 Mon Sep 17 00:00:00 2001 From: cib Date: Fri, 24 May 2013 00:09:47 +0200 Subject: [PATCH 50/63] Removed hijack objective. AGAIN. --- code/game/gamemodes/traitor/traitor.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 020fb72092..a6f19053ce 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -115,7 +115,7 @@ steal_objective.find_target() traitor.objectives += steal_objective switch(rand(1,100)) - if(1 to 90) + if(1 to 100) if (!(locate(/datum/objective/escape) in traitor.objectives)) var/datum/objective/escape/escape_objective = new escape_objective.owner = traitor From e9fc666cdba9b82f94a9d22f515e805ae749a0be Mon Sep 17 00:00:00 2001 From: cib Date: Fri, 24 May 2013 00:12:29 +0200 Subject: [PATCH 51/63] Removed hijack from wizard. --- code/game/gamemodes/wizard/wizard.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index d086a7f6b0..e1b19a287b 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -87,7 +87,7 @@ escape_objective.owner = wizard wizard.objectives += escape_objective - if(61 to 85) + if(61 to 100) var/datum/objective/assassinate/kill_objective = new kill_objective.owner = wizard kill_objective.find_target() From cb5b83fadbfe287acedb2d85dca73292febdcdb3 Mon Sep 17 00:00:00 2001 From: fauxtada Date: Thu, 23 May 2013 17:46:31 -0700 Subject: [PATCH 52/63] Wall Charger Addition / Map Edits - Puts in wall recharger sprite. For all your wall recharging needs. - Reverts changes someone did moving my wall temp placement wall rechargers.. - Fixes airlocks over doors issue in sec. - Also removed the access medical from the medical area of security. It's just a quick area to treat cuts and bruises, and shouldn't have items that treat more then that. - Fixed some more weirdly placed rechargers around the station. - Replaced the TG Maltese Falcon sign with the BS12 one. - Fixed up the floor in the pool area. - Added some lights and decorative items to that weird tator / table area south of the security pod. As well as a water tank and fuel tank. --- code/game/machinery/recharger.dm | 7 +- icons/obj/stationobjs.dmi | Bin 84169 -> 84869 bytes maps/tgstation.2.1.0.0.1.dmm | 217 +++++++++++++++++-------------- 3 files changed, 122 insertions(+), 102 deletions(-) diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 10002bc570..ab0c7f8bc0 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -99,4 +99,9 @@ obj/machinery/recharger/update_icon() //we have an update_icon() in addition to if(charging) icon_state = "recharger1" else - icon_state = "recharger0" \ No newline at end of file + icon_state = "recharger0" + +obj/machinery/recharger/wallcharger + name = "wall recharger" + icon = 'icons/obj/stationobjs.dmi' + icon_state = "wrecharger0" \ No newline at end of file diff --git a/icons/obj/stationobjs.dmi b/icons/obj/stationobjs.dmi index 97d97c603d61af46cfde242d077097d3c4648562..12154767737a7750795c8556181ebac0fc9c9c4c 100755 GIT binary patch delta 22281 zcmZ^~2{crH{5O8>WDQxeOrn&%lr4;>4F0yO7;jvW09# zh_PkKHnuTiw*S@l`90@(&Uyal%sF@F&fL%XUS6-)=RG~iOwZGpUPysrffm+2m+wDy ze)7=E=b@(u0QhH@SoeBNYVh2hMCexa8Y8UBE{J%>@?Q~HUqqsGZaN#Yo;o6R>>`ML ze(X-Hnz&3Yu8qg*d!t%53+D4C9H~unF~z*uFLQ7&v3=&Wg6X1od^EPI;4_}1l!hJL zs#}fnZKJzXp}3b{B9;y=_ad!EJ3sTq;TtNCa#}xg>OoqC@p`U(Jt@BRpySd(fU<*R zalf%SCaliUoL7X{I?fWFYH;U8-SGDF3x(_X^o~cS_@kGQUTZ8}szvAD1Z1%F*!iD# z9+r3$dMYH*@C|OkK%rV?Solg&fZ=c*?@oG9bQJHzaijCR=aTj>f%(2&CUQH`D_6}G z1#F5citQO5E)7&aad`5{*0t)$6S~=x29D}gQj(F8$=oFyyGocS-S6TTQt)bdQ++Qc zU#n4EB~MKRe(x%Y(8tQiBg&;r)BF}pQbi*tP-|jmrDuD#^)8vA7Oao=_ulv>DZZ0# zNE`5cNGDc1bo2S2JZaGK5`+F!YI-)RZ6?0_HUDF!7YY*JS#2-oF6V7Ce=}m>aTs8f zS6U0|$yWVQ$@}Gv&gwz{tl(P2{nH)``lcBYqrT)p?~kFNA4}Jj^}1+jEs6f%Qxa^YKuNlB9CG zt5z622f$fFX`ZUXE*eUg<`Opi{9f3*4j<0y9Hnj-@3Kz63AIp;_@PXHOr`zvp%^C} z%Qm|~iu*am1OMn)(keLi^~2cv4y4!3wh2AjTXVdau+p!jZWP5MEV4wW)I$$H&1S?R z`R7xV;EOH3)D2uTmj>q@=3RAB{;`mT$O5C@a)`O&mbo zoMpaGi!Rwb{be|uU*O3EiS4*o&gZ_O2&8XIx=+oUTpx^wj-@LYdbfip(!JF^rujAQ zo_)gk_x`8n!GqbXGgWymQrq0k5t*EU@BD1otaKCaji^dVQbfK>C35WEI5#!sY5kr( zsA>1eAezr%)p+uuan{67u>~J1Oxu(9t(No5mcTvNpOR01UVq#P3+Pn9Y#CC^PcWYq(!Mmq zEpnRts%-j96sIJzEstV_pWo*TI@oKZvC{(M?#(Ut-p*5F+yj@yVOIh+X{Jgil6eHe zq~gxRIAk%_74V+y=9PDl64J*NU*Q%Vj-9YI`D9sCVxzcct)Bno*brZ$R*Agfxf^Wn zSu;yN8n<}GrF=zuh5h;5d#aW#f-yx219w69^sV)6tUY$A+zG+h2lQ{Otu-!XWN7Y8 zEd`!*S|9kj_QV4msuCmSZH`^w@p0`6;HY^2juLO1*<(-JYaTn2p|~W1V5SU6;}ID? zugiJ|&iPLaT=`wLd`mr&?x+c7fXMB|F?1D!jVfIe^0`El>B?OtTB$Kl4Pe%UIMiwH z#u%dRu2(AF{SLAc2VS)1#I{ELQZxl~?<*~#iDhES%&y=>-_kw{ac`@4GV6*gAw3z4 za^ks+q);;HTPho#v6h*N`Z4Xm_n@~ z;PBPx^2T_WP^SDCF~dcHN0yKG#55W+69tkx4=ysHY~7}h5FJv>2yYiCnJf+EziU#T zlmF*=kr^;=&dR#NiD@**_|1nX_uVOUYKr2v$UL_Y;87A_Jp5o6>gu5x%jckdg&xwM zF3Yw*8gv6z9yhT6GX!WtI|GV#v3sjy3_xsb?297D4@WP?#)7eCckd=Zcb$=rGZp*Y zp4kXg|S{*pYp(0ivx3W^N_&V zzbnul&JQS3-I24m8f|w@7Zw%Ww6I_VK9(YRM^>%osCEvgYFMts9gGSd)8YiItwZQ# zD@^R8SY}1RpbwM{lPW4V(rkCJ=vR0pKN%8%Lf)n;L$t*@(ZjG4FHyxmqjjEO}hX%v7EsE z@Zqzi-^RG`B;;VOZXt`#Kcg@>5H?H_Yj86<|_k^Kl`L+)3aQIZaf<3sDL^=zAEtF}t)ej7{AwSM=MSGmM_YD58)yq<5 z>x?HiQiJz?S}_2nLHJibc`Ly@Qg3Pr_?vkEP+*GYIx{vQKea}Ep!;uc7No&qqI1lH z9QKlxqz{M+#zB`#@7EwnXmzxS9#B(WG$peHHHuu1a>7-zv{V)lPOQY-%mbCyMRue} zck8w#fR-3OX)^>yL?tW1TqHe(xR3nIIX30{t%`c}znB1ZAxCm%BWd;4{<+UBsk;9m zdc(@?Aa8x24d@UA|5|7_jw>ki-C{*r+wD%gY3@Iq;#yM(|F;d011R@|(IgrOH*O@v zvV1rmoH01?9h3r3{I3`RPo-2uP~P1CEn7wv2Ff3r-~Jk=RI)PGu6Wost))51%K>XR zZHf$cd!x~Yv0z0;w77Ch+3l~Lwa{!$izu-pnk~1c5wtJFAOflF&f7ok{7?MoDu!Fz z2P}AOycNX88nL}oBhaI+#Kl%XeOw0dV(vJ>8yFtobKF3>rf=%5E!Z&Dz$nv7J7;i^ zoWOCO;CP+XsX3EA7H~aSbP-3&rYZgJFGhRanENN3YJ>-KdclN6oL-9eW-lk;osadXF?oJ`9zWy6<{hw8{!F7tfBy}&ph*{?C3;^V($_<1Zl>3%;tVs! zfGDYQ?01?xnn=mMONI=6=fKoNt~JS0K?=i6OOBD{*fWfK$!E;5ClWxDmiC?PWaI0G zwa|#wOpyn90kl)nzQTW#7AXT^n0N1%`?Mmjf5gQA}b*)_AfRvz3OU5^NHnPKQ>Uhx1;(l4= zn>ZGBqU0*^n;H1?WOgc3HQ7T20LyEYUJ|Wh;4nbterW zF=(dL%E6GwfBjr$R+f^-Z+{M$wx~d_mm~3Dwaln_=}C@`t!>r=^ze))6ac&$n&S&; zbI<3~H6QW<+RM(O4<591J38T0T2-H~@6v34CiT`04WzwJWL@_x+ z(MLjAG%Tz3Rb^cr+xR%2lG~^#zn~)ilgIk{x~{1y_pMvEUO>GsEZp1O-JKy5pQfxA zj}GbCuH{et0e}<0wadB|UqPK##083#y)S2J62_!;5n}jG4x6y715`# zByeLg8G!(`2*YpzLcb#UBGinwGwbuLYhNE7^q5kqe@$=P=*aleGTBiC7wX2s$?oo$ z8cWl!Ze>jhRr5iAk{j|S9-h4DD`k)<8l&tQd@0+{{;vMjFioVsWtqYA5XOHEx-VW1(wZdxK7yxof5-ObI*V~B}iIOjE^lMM&C zgvU&GCq>dExTx{?B1<~V%`MsLB#VIAI@nq93%QiJm+)ugN0UWjS#MSbtnbj}DiSn4 zmvSij!$(%hmCj1v1`=DZ!hsoQq!4pE8JPL)R17QR85 zZr}*$K@U+cN3|!naLpyeB0}ZIyx&??mR-M!@&~C3+C=9u40W-2TI?6(6(nIYWY{kc9O{N-kn@H9br#zYhe-b_wS=(1V(&^J?)W^Cee8S zE=l9+FoA_8-Wb?jDwS3KQN~E@DVwB}mFHv(n^Fllk!w;c4VHRmDegj|S^b^DD{1iz zY8bDxKyH2g@hexrD`#Y6=*^N=_C_kWM(DUw_SW_^uBSDYK@fV)^o9b$l=^Es$w&-! z_j|$6&Sw$XY>%}Ae|Cd>E~Oig@BKr52Za8xp%p<=2y>VKqU!Ho=?X5{3TZzv6~P39 zp?4<_iNN!p(n?LpQ-!LxogMesioa^`AJdW#K8;NRGws;^PXtmt0wqH-Qv(+(oRW-} zh62JbcNG(4>vTzg@(<_TIzln)E%~kgK~^uZ!BmF;$iM6E*SNe}Ap}(U;d6<-Ww^mO z&*xQ${Hmg%(a}g-Ps(YHOP9RyYr?g53O80WGYR9GuZBIV5ch>l(;0uVYFmUg5dP0L zf8~{waJENs>W5G^a>wYB&l2Mz;jOb?z>MUO8Mg_0DDQtWKYXTti97OYDnLJEdT9nu zN%LT%69V61ao;5U*z;ZZ$e@Uaz#mgd>53}FEA7zOI}c|M4yPpyF2mDX4<_+=#21Qw)M@wfRN|=ls0`b}XF75fo zX@f&Up813&!c9?D_!XTK?OSiuxkz$7Kmd?Q@HCyItc;CGE_#? zVl)%nk&B)gb%;89d&LbrHf|g}Ha4~y+3zw>KNSJ>aTMvz;71IPy;1h`VD}-kseRe% ze3$$-E;~C*9v2Y-pRXGk8=rf+czq3vfkCUQAH~(t^HTbp18RUHe!&V?Q&S^(>Qu+z zF7(EE=-rhMH{iLny_#`%yFXZMF8}zqPauelp+N+bZ?V-Acz|&g-v3qvG6U`t7RM^0 zyh11*7cO38{+$SIW!r#}#>B(~u9XFL#$)8?Po}h9@cCKu53H*j^{WcMeaG$!sd=5K zZ)n&eE}$NS9ThAX zbhg?B0RefL&JQ>YX^IGD9s->x zJBS3+JK(P0MLU3Qxs|a=Pam8!)Sfm!gATDht>VE=@9uXF9@^0MLt)xlPT(h?!%-ye z=I*{=9mC=bH4P!vYXITavBY_|pS-;EWA#Go`+}&yvtvhy^YaHHV&wEG({w&GFo+yD zzY&ARMDR(QT(;ovYlq;9>bFfWsp{qCJ4Z#tJMXRbB(t$s94b-HY4u8B0R#v!K}n?=my>c7K<(&9 z%}`FSxaQ>K0EFqJwd&E$&T#nIv)8tK&mgOL&6-xfuVL-4>V&37bEZt)ocV7L-Pis z!_j{1v3C=lsALokkg|rxNv6{CXpy&GA)Cs;D#zBO zo6u%|JskreIC4D1L~bW{IJH*AIKRl$_@~8$Mlw5|Flr)Wt8R1-Ie$_c97Np(O`;&{91Z={U%w{PEgMY&k~pe^sq zxg%h^P17o_Z6*soeDIBOn#e}4^A3t0(9QUgi=K16x7hm&)$NKUc*w zG}MYqr~gBVKcyO*`|%^c za~T?i|MDz`My}gA6EuSe`7-eBz^0p8=m%%)y4$&FMLT|znhOL#EG=~(%2`>P>{n0U{3IumfS z<<^nxy<-UQ_O@2qD&yzQf+L$r;+L2KJ)CO5U%A@52pNrce*{^;K+>O9^cyMzC#QBR z+Wzpm{MQ7}*1U_W6lN!c$dCr0^@hUe{9=|TGq8)tGY11);+ocb5+C{fV?g2a_gFPF zG`yhX07T2e*>#e{E=5YCgKv3D+mJ)eb_Oz(S;UiAlwJB-pu}s{vH56^#NP6X99lR- zGKbCxs88$z7lo_ds6UUpE0~;;9ba}IRD-akIh#OW` zB)FF`!^r%^$H;A%sTLSMJ#8YzA%v1de3|+1+qQfz^gP+?XHxmx^y@I%qV4ug|D|>7 z`j1~-NnT{EVgt-nbLT>-Xm)hahRj#Y?@A6t@3+n!MeU@9&3Y>w_Pn1;VwGqcY_#cb zWr!M5o(1|7|@5nNv=6D6R^sAu=rR=gG0iHU=G&Q9qq~UWW`K zb#-BGZGu+uUDBl4 zGS48P?U4>D_3G`1!V}-6r@%eCR;!1xKfCb0`uup&V-+mUJje$KSn)TUC~t8QW(gY$tB*p7B)`s zL5ShkwNdSm&f;DcnL4usN78KFkxTNsPuObfNc3Mk#$(+|o4ByF@A^X8Cxykta=J6p z!&g0P#TCh9!Pv>D`TcCI7zWb5(|6S+X9P&`_~C)&>c!nuJLu4TpSVD&bgvxT9Tz7z z)ic|9)(qfh3DsuR6(=2kzEt!M63sd{^@XPhO|2-+cUagzu=4EOy**3h3vDhuj{>`0 zTupTz{k_gH92TeXZ7x`YWD{bBfsp8ay zq*AyU?$`}XZxBx>frKwwL^K8ZwiVtks+G`>%!T5EKY>YxuHI)Q1xL;Co1O(`Qf&zc z8Vk2LBLKlPdO$$YKDz}LRAxrcyNU$q9#m0mjB^W=_$VdfoDU+y9R;T zG}Dc?h-<1R&j!30z#DZlz($$VFX}rs?k&=0Hb~!;Tp>t0NM>qQ@jg!7A-WEZ^Qr>CdaGMqF$ZGUZV z48K09PE9xW#?9zL3w!e7#oM2MH-}tOh1f2Kkdlr+A%u7zvF9gu@RQz5i%d1r*~3B6 zpzj4z2fM21LT!6qyBHZG1m9o|{`0V74y+ULq!CSjZM7QK?oS5|2G(;nX{Ei$QD)op zC~YI3#IDo8oesoDdpL?4`J=m8f`P$Hm~@;wZ^wyyqjATim`3ScUSDS%>qTdQ6nqn5 zfAdwV#zbLl(=FiRPq^{`6m>s@y!m;J`)mo<$^@?{p zTXY$Yfi>J+VEYfv3!-GvDXpg3ptqd1fodG0>8OTgb(rynZS01Jb{T2b6d5mwCf3d2 z-xA`Cdu!v*>3dJE#r(3q!xW5jcGLoXs|1}K9yXYrub-+_-#mRmQ-uyjeZuDg|HAsx zXyo~xwCS7ehiPBBDunY-b(~RDTuKzZR3H@12(Dw*=wMEKE}rrFwE5dDL{=!K7_2<~ z_Mc?IJj+B-v4Ua=E6Zum7XyVehw{%qrWATe6~3e4QSqzN2kQwvJn&$MV@p!vTWOo} zRbCHk3A2VR3!AO;TMjfTMGwHGVaU%JP>?9lv)_!r*gQmh&MxS+4pxsHS+%vbo!#<} z7#PS_mpnVv*WcfPpl%Cpyb0R47JUUHT1osvmp(pRmWJ5)^t3T5ez#~VLAcWU&#@-L zHrgXwYa|vyqh2I$_18EGCr7Se(?eO(uu;8feEc<5;Y@HUgiutU{Qx8JBMMbHWM1&n z?|47e+p`Va@Wd~mdDjqbMZ)Lqa!YMlf?@BhK*xIfmS^x%8DZ$#AA;9_Zj~=x)^vbK zn!+=QmBM?$zKi_lyY41!8(Pi|!KgfvWhUmowfVuHov{(y+fO{^=gD%{=UNz0QUpS+ zhw6uEA7$-quItCs6z+ger*E|RMWlQhY3b}LQu;G#ZeiRC>TP4WuTKa%(!$OV1uY!E zO|X&*+;%;0@3XhJMBiL}p7Hv1!s6oT>p2>nIXQQsV15Ns03nJTU0PR0 zN0{`@SMe>xxB58Jd@$Q}4-bV$Zf2x3D*Cot2c z1Bx8t4@hyCZDaEB^P7KZs@i;us0TqZmJH2 zF)t>JA%0YaoS_ac#a3)>$@rVVKxRB3Qm|tTwA6%Bg7EwD2nHm4@8U`zZb!>mgRmKp zmOpT8o+mM43H^5pZhIaROxaZ;+s0KKwWqnYbdreo&5%GXjJ)62J6xiBQ1j?2O&pF4 zIJiwNR1W=^3@u&=2`^L1eOW5-1auBOgsc2i$c#L9{A#$_w=tmr;3DM4eu`2Hk-hQk~gj!+iDI zpGtZ;Ng6Fk5Cub%R-YL+_u3owfd-3$C8p3%VP%{nm};S@(LhYiMMiMSBOd#Auk2#? zz%Z-@<^!-k2>SIcW?^9jI%9lKabA*Z|2UL^v-?B$+XG7N_QTBXvu)4WE?&I&yCsz2 z)K3Rx*YAwL+V8rNP3r3}woQT6W}>kFJri(wJ&nb|#TYX^22ZJU=pN#Q2s1a}Hd=h` zFiI@YwG;Z{n^jz*tq$^QuA!&XUwyt?%kcJtjJhA3^ z0*wT?N`K^w2Mt^oEEFsV4vPKz%pD#YhR&sMZwMAz6%=3mgwCNUktJROk;b*oJdiOY z;|p@YV8JDGf&uQ~it0?sVylp{3kT4gSyWq_E&@kt3Mkk`@9z3Q(jFu##X6t5teS{9 zn#OF`Ru8iaeXY3fbf@MRD74%Lg)%cs%T9>HN?p&qz_zloqUP07Q{Ys5V2aijOQHR& zE5NnD4TMvXc@+0?>`2+z-q=g)KG10hR4g@ktqjG2avBED-ii)xa46CW$Cu@VQGO{h z!awZ7g__~ZfSG2~Xt`tig%Uo#jebbbGn~NgVv@Y^K}n9di{ol=AJz@q^|o}+zRnjC z`Yqm~orz-XML%QX1QqE~W_l^f$r2ahH=Eyy%mBfGM|5N~s4L8!bXIoWOyH9zPZ-l0 zeH85}52&)J*Nb~WX&-KYJV>n-#n!YTq_>hc6t)1A=fZZSMhS6B7C6C1{f61+0cKtv z1OhExz76dfCO4?n3*2Kc3*guPTf-bGl-xShgYsr!!TqX3zQLDJblu%T@w3igXD%e* zHHkG{{Vesiw$}P%XQryBI4}cgdClczg@rO6EhxHL&t9e(8He74@X+rjkO(A)Xx5~g z>AK?lw6wEX~R_W^6&rt4(f|cbrwH@@{nv7tnE%H1Y@lo%i?u6-*Q2rNsHOqWU%pAmRA1 z%A@TbhtdHMJy?;DS=qDfti)@CQ6KiKnFQ6hhTV~qqRk;fwto|bRt^vDU}Ess0N(s7 zH`w)wTR=EK&Om2H)%0Nf*`+1#2FGirR#PsJ;C-_w76Q`HnVSEuIq=K$oH>xon2!}* zam_#=b?LIJtGgA?;Kn2O&LkL|zWz`A-}+l1GlPt7{5v3bJCq~UUVxB(5u`lYoM&p7 z`X1w&Z1%3A;%MlXf2|_7Nl?|wkfL|?fy2#4W^J43rCV^FOkxG1X&ZqFJ&*C4=zDQ^ z;t4jA!r!o`D+yHRcBwr2{=uL72&#Ek_I23JgLz4c-29W#Q5od-iMH~-fjhRVBifxF zHBaAK_WXMmBTNRNwPif|bYWouKq99;KT|Be8}IMJcJ8gq*MBNMY!msHaX85#U(+Zb z;b5wm0{*X-_WiJN}^f&_*b*KO}S^io`}W0)@6Ljz}3o$2>V| zQ=rRrco58L#TC;$-d%`KsO*w9h{?o@SU(c9y^GRS(f{ojV!lkk2@G zcjLlyPmptfl*=UcNkuLs5HbLtqWRDax2OfYI$_b?^h{4F>c7~dYdN`O6L?yW>zL+@ zt6tVKW~U*s-)*kv+(EsUYH_NF_^E8ld6&E!TcwgUy$*n?)ofnz_>VI z)BCM|f2P=bn{0lD>^37~c>0NWjYxOj(TPqdMglrWB(mkYnhWK#^WaZK;|34vhtogb zy!dbxl$(O;PVRR(#IBaLgA`Lb2cbim=C+9JNo`6TFST%g?$d!OXZ~(RHK#-42Q1WQ zMuz%>hYu~pMs?zcbw1|gkk9wnvb3FtM`Et0|2y^XU*N9ebnt#Ctm>hs!Ub~=v)45% zK4dCtfCCb^sm`1qrDZDs_3}n6s!+ZrUa@e(I(bG>CmP)KraQ<6^XH)nc06dJ8ewBP zw=Qc?jh_U(eZhz9sgg2HmBba z?mf3m3so$oiUYS#NwC^cc9VR$QC&B>JH>Omqj!}tZ^jVfecdBvexK6BSM~*4KIJ3I zK;D+CAJCk42Zx8xJk%`d)aIPzPkr?fx%eaiD&>U0%P#c=LrXhL*5K9~cKyav4uMYz z4lmy`Dom3@jXtMaZ3w3EUa2%vnizxs+Lg^$&kQw#>NLPQ|5Hii|EV0H7R%%*o7eRl zm;bP^lyM1DNMo@qVv?6Xba1f8(*t7)bQeBb$hRq;csX=#U;lc2e=Kuw^xW`x%D}>H zy`ne4F(Wp&-~UuppnC-ha3hOz%uANB-mD$@_wBlVbJO9*-q!l4bd3hpBnPV=UrEC6 zC0QIi&RcZPq&nP8&KTYtoTVli9Jq;yghXlbBw?5t?Kkstb6ceO?qz^z1Q@|Ou4oF& z)#PW)4OVDeJ$QUThrMvVYFdz@{?B#G<|&F9Z117e+3*;DdB!$m;LV|UT3Z!=_!$C& z$Aq0DogS`~bnj@QBKPf}%ZWQ6L{A~MlLPHgP5+x{h#U2U>m|+zzFovT;sKYfIFIxE z;%3|h1tFsdB>Y)@J&bXE?0ZqRddmah13imdQ;Rr@&6LRofi@y~yW|segK=|9kgc@^ zN($?DZ10NwAgU4$%n#a)F^_+Umcl>4P@6AU?%yAt<)$wYylH(aEc2TY5R!rJn%^2X z3G?ry!%HK|zLc!(ydZDyp3UK|etaJdMlDzwbT@su<`18=>68EE}lcJ!~ibaNm zq#We!!@ENi*iRDHRi+kms+nFVa|`=_Q|(~88j*SBvX1wY#pxFm?ta#mf6V{O?<+U` z7pzWI_WIBoOYZmpzKB^iC;AKA>})rd7ty-QO$0h82Vwb1(4RS~s%`=^W8A>Qhk0fP zgu6I@((t)0Jayv%$PFcs|x{1>sQXO=Mz1 z29*%o=eMA!b~TkFu7kc{Bqlps)bSVNm&Coc{|f4q4?>Ipx|#29q6QnD$!tKKW!P@E zMJOKe2LGDZz9fZ~+j&sr0YWhbz6YMYPI$)yeV?)>Ep*;c>RrwH;pIr#&Syi(oxiPZ zPbTg)7g{!JD+W~!_$eDQj*WFZzz`Z=Yft-8jlt%xn?zT%Dbz%MQWTP!&`f=WeEI?N z;WIBJ_LvlyZ&9-1@G=TH)zvtE&6HENijnuj0RAGU|9ty8@)`)#y7Xs8=*t@hbGZk* zFe93jpD>!dQID%imc-%F*g0;ec~Z(=@Sa)ZfHwVW?Zfz^S_8-A0z@LQdtiX2#R?IP zRh+tT!@Fm(-op006hpx?UkK$vN57va+NV%!5=z?24A5$$w0JsQU1k<~%+-9Bd9+I> z<#*}V(m|30^fm$Fp0m(5dW!?iy?DMeJKUp+8_(SgFtvgoZz3h34S+WfV}ErgAqS9K z^>*StuoDLztCTB!sWwMx^r!!oF;uepQ`gUpSjHNNNF~%nJu$p^6YDR#yB|W zIeE_RoI6M0WMalJd^S!`Gy>tK>AX27n+y;#Bf zbwV&%A$2^?k(+6@scpa7LjQ0XRny>RifU=S;qRsXAgXN~nr47z$12U8Q~xFnnHs&0 zd^txGIf$E07&EG3kPIPMX^>2~!~8K4Q^+S@zA1aZ`5%<>v;?oxoj4(XY;b2*9}4a8 zW-_}wsA4khd?UVV9ltUpASYg9TRrh#HGTgww>rQ`h(aCZh8>P{YaVg{rZ*=Qu9K_l z{)33h2jL=b(@(ITYfV{|b{S+#R207JjWiGim&hmA^mT6_fVg z7nheG$k0_yuG{5Cg3<0y^AE~*r%AP=&W6bvi#9(WPm@PrzGn^YzDVnOTvDW5+&%gL zbKC%yHbk{n=V~ImT$9%2x!lNG&iH}}ggg>gI|UtrZxNj*ugn8?aDKgw0S~mE@$)_T z976r|YzP;32WrT-Zps?EjNeci$A5XRef+D!B9f&fAuR%3PHv=C zR+lQg_3uAkTG*)R7&lFB?0K~DQPifud1tLYrbUH;wJuo-+?l6ql zRhWuaIsJL!i5V2P1Ipf$?7VzVak5_l7VoR z?%wU@?-Mo)g8UyX>7tIansoOtlV1U!Ww20_v#9|)7DcE$@EGgoKKrs;EdOk5eN1`h zkO7$@JAlFYXL+NKnCuj=+_Ew#={GtW2Vrp6$MOKS&y1{{9{+jo*G=~ZmkVBV5!=jp zhV#dFnZQe59y82{ti@mrHF)^<4wt~Wt4u{NbX2n|{y%f>JUCW_f=C2- z$RfVcK?l94kr&n=FWfT@Yk_<>Omo>8 z5#xhPOHO72)SkQ-78btq3$fJlN>hZHdt>suQ$=oRslpt$#NnJe56Up1`!uXze=Rjq zZjCY+`mplxRg>dV?rBiLP!8zZK)RO(`KO3n-gow6CzgcFd3Mej)y?(tH!pz!=XjY|z?Cksevvvp_ukAt0 zR0+BBg-*76tyuY;MK&tr%oUJRtKkDf`#a?iO_O(?@f%Fr>8qH_uXYxoFj4fVxE>U# z;6zdxLY(}Gcn8M^Ye_H29TY&-FF zkrio|^;uwALPA1!-z(%Iv?+a}Z|}Xh{|(BWbjq`bArZ_^tP|jijx4<73}czahY%(k1! zgz{8Y7an1cjSC4=)WiY6I``Y?13GXTc9}=W8}5(|7x<3ZS6e3UC+%SF_3&Q9b(zV~ z@mB`S8_3DY@3B#Zs9`NOaN=WK6dkepmiAv)>z%%9GuMg+T_&Pi!42~MGH7H21pk%2`M)r%SI!*tyl3hQJ zqN#*3sjF*)$r1Od#UNd+1a+R7lyIF^-3bX}PeYmt!7GjuGt(Tks(I5PoHUIvMh#j$ zf$|&lMkAk-6pt>8l;-E>-}J?EpCesxH(z$WE|S(O88C3ZUD1}S=sQ)ypjTz?uaLU5 ziA++5xt(2~Z-C}9eK|t^_#fzxd@o!p-+rG(^}B@U)!o^~fvx7IZ`C9jJZcQLNJsaT z%Wfj`MqunnR4E8orx~Zp&3@0(=G3tjmvr@+xGEKN=|g{(D)(gOy=oyz!*@Qv)qav$ zW{m0IS9*I)}NSC)b|sXwP=xujZAcmO-5n4Xw{QUd`#!xwedHa&!Q=z^r)d6YNdl_Y--r+mDK6~?g zU-q?qtZ}X4mwkPGyL)@}pFXYJm5>S|yug5@j5IM8A_;@8CYpbPEtG3MX9BlTb0Gl~qTDRnIFu?5c+qU8#-%_ zcGZlzYKo@*JPS zE8Y#>am9~nd^$PMs2B2gsLGzxniwLt{+l7g)miw%VX2NN9%BFczzz6D$WN=k7Afe> z%Ded^E0u|4%E;yQn)#V84N zc;35O!vJS3>6+JtrlKjHgtO-eB0$A#U^4V?ws#>=ndp7EY<^)O{q}Y@c7W2PH8p%J zONDM`CmsSzY>@IM{LxPY1!JslY7%>S`o=#Y+n$4+`a>KT>b$B-B-Oxw)S}20n`stw zV-}W2GVUUg%>yJ=!S#;e8zaG~?iy3zA1i@ zbif&8xZ>+_s0=Bzv}-;T;>BWq9Ki6%Dg9f}+_u(VZf{GS;yJnn-+SfLoxmbKI0j>1 zab0m)n)y_qw-aZ!*8oo8{23CX3*h`1P0FktjhcykZaok<-@~RV*#l`dEpdZojb=kfQQG}gQK2gWPqyrpWigO>b{#ukx-ypyP3{w zSP_!)k+JgoEYI<@xHRBBx44cF*)sk;qn-rCk(goHS`>%K_P7ar2s-E}yT6YvT~Yme z(2H2jKt2bq@9)N?>Dq(&_<*_NjMcDAo1?B@x5))xzF6)c!>$I0=Gl2hRbsX%$m#p{k#cR%ExHYCyZAC|7+FQoAJ4M15_c-Q}ue?Ngxpr(@o1 zxuT;g(a>>LiOg|LH62uu1i+W3bNP3f1Q1t<&<8%a9ULnS-&h$Nf$of)q9Ey&riK-@ zxe};4MAIk3xhS|712oT9c|O;Z=b&RdIwTsEgx>U7o<4!t@)tp{t50_I&ITRnu zleLEJe4%O;6aeSSwb@it@hWUwFcpQ2>{}X?D(U*REoEiis(2MgI2gB_T<8A6C^t;~ z|9vZY_yfDhRI;>Pya&r^ZLX+x$6vwVKbhaTeRGoCI>Nt`3;JVXL5W!= zEZ^@#9)fI*z4wYwIS)|W3SdPL&wRR1ifXe5TB$2JKcN2!&&n)a4F0hF{Tn3#T`2#e z;j^(GDS~G`+h{|$W60O~$`a%>yNb7*9Hx6<_hyPkFPfB?*Sj;2W4A`A0Ps>%^uxYjfIDUUHeo`96eSgTu+;f-R^ ziqr5|LE(A^fB*klZ25Dy??^B(`hFQtd8-MM1|R)rrr>;K)?#Y{3q?7Kj6O>$bW)zU zyk7CPmp%LbQ2z4X6yDE@1a?@rq6_p^yO~}mB9IB``sLGzSl-QL<+F=T*moyMk)L(R zsog|k)S~F5g5LIsrSNrxv>L@ryywV$&8k-bJ6%2*Q>9^d?DGaSB~h94v`WKNbvY~# zmQ$GGUpOhvdvAh>w~-T6lR8#^h&^y_s?8WPcAT|va8d@@j;AjaP&Z%WvL+UNu3beewrUHzor^5-WzE%!jL z0cqk|*c+nvaLAQgcN-%|w~B0sZ)PzTn$GRjg`_!DBd_LIT}IU;sI({41RC?g$$qhi z!M@Fx#2AzlwC%B2tS$X!GC9nfw zizA7thTc*yS9nYb2GjLz+-n>c8%A#WVKEm7U&tS7p7}+~foViZG6+6%tsg6up5JU7 zWe9LP@le~GeNY4%=Bj`+hll4x=Ilsf`?Lf>&maH=C9Rr)`VNwt=`h&36zNzLv%^S5 z!>L%m3xvI?f0mhq@r^5#pM%xplTz>BM^asDg-U1M$B$NIl9QvOy6uZE9Uanb+wMZJ z(nb!WN7@9;GftyXK#5X@F-fC|6l*_Y9eZr;)rh~gR&qg-61iUNzAd>!vC_q*nh`aWOH%96lWv z(5D_vy%(~$w0}-jY8|0GIk^BX{cyehFr`*8DA1yIRf%^=wzuS*S$%?pvb0>1r};Vg zHuutbjp`EHkdE$v7&jeb*6LN&c~;`TBzMeaa#KUPtlYl+3&-bN2kIl|Zu@Ht!=b*H zp;yu-Mgp2&csj1R#V*(AGmfKao9@^V(>5CF;d*rlMZP~|A6sYUewfU5(UJq@F%bh) z^$Gx`2k!1a&I?~CJAdonz6#{8#f}H^UrXkY`}@zdocubHy?yVgmCoyJqS3EQ^lS^o>{zsfXV_ms0Mo!&f;AXY0gm6By(4 z{^)40RYdBZG}_9Kk*v5*`VrvWNj(SBkdsY*Z$3CYSeyu=;4Zq*D?kdSM94X-3=3*% zbv-$QX+F-ar=zq)Igpx>UXyo4q;Pm>b^Pcs)FK~X_( z$mP)Yh48lC-Xu`lsHyVS(R0B1vB82F*xIv)3rhO(aE}mgoImUaj1&kR9mbrvx172SDjaBv-^v>`*|z#NsuG67!40F zfqx3E{H3gu@LVX-!CpiOcm5=91vBr6ctI=fpxdt(iUon(NC!JWvqU%_E(-j1yX-#jSVgap zM)%;IgNtk=m5*k@EKw#?obXKnq6(6%+! z!J8?Zch84kXZom3Ig9ZiD01cf?Xo({nyYSP0U8;t@boomElZV$m++TrQEkHOfMa|+ z$K6?(BAqUt=2+f3vn4X~kFDQ# z5Bez~bk=2NNq8PbT9FK>7=6RzsVj0?PKW64{XT4CT&zmLh5ppA2w6ap^dX2pWBPmp zPKSRF=3>maphlH9D_u>?*U1V{YHAJ*k#DXa!sPrA;Fv$Sdsp^7`RGZXa%{SX2eg8NUZ@bFhRuVG z;6~10I+4ZismxHZPMxLcC-^Gd+;UclwRg_a~umxCviIDmJVu6<>5dL@t?;1Op-#&X3CjKfeq5% z1Svr=7$}@g&y(SB&8H2!@mB?3xx2-C<9^5!%0Pti-f4B6X9ifOax~8Y3xzV3FY(Tg zvz0ILm81FXtn~2ndi?YLQXa{h{D-WBK5ud(`9?Tc@hx#hvwYg5z61JIF z0=oY>26KHmZrC{4q}CuI{DoRMceQ%O7@vl7OJMz4Nsf?77@|zamt;F8xt*!{7`|q( za|vUY6)9eb?%K--p-33J{3~p?+K#J^x2?0;Dx+5P8Okfe7 z!Xi#^MB0k>%cWRzL+PrrPaB&LmX}*BKKrtSi=-L=mU?<-#vwhV>&u04 zK#ZN7tsL8sot>RoTYL6WHFyO__78jptu6pQ!llgfM6)CcIUOb#GI3Ax(FAZzLUC%b zM&IL^gE=5a@ZO!i>K+#(sY?DQcxu7`j$}Ken2mY`*qet|36{erw(+c#Er37JP#1vonS`VT%Vd-u>ZEg|| z7~8`-_ON01I~C>-^|aUL<(96rj6+xSTnDACorJIlx;dRpuS7yAXQ+2MaR5C(`}kn6cmKX)^9BI?NJ2Woyl^ZW zWd}*Eo}Qn4WMK2^(=HVb`3gI+a+POkSLPvp$lt$yat8^29VjAECcxkwqbM+SNL-w< zv%*Thk($I@BK6Gw?@dZF4r4l%{8OK>(=XP7u4C)Jnr{iS8GeF>wDKNl-YS{@@FDtW z3?|3qxX;d*|8Zg7J?8sawVisN%g zpBtXfo)XdEY-qBP;%@4$BEN!|;k_cb#GjA2*rv-9MooByQ%X`7B!(AP!FW~xCa$VNh4>o_HYWv2IP5SH7wMSPZ07f3$^w=XU1SO@}=7=+kpXom14tM6QVPnsP^; zb;sWTpn2c;5@0eI^O!fmN-rGc@A2<3U*!bQd%(e>w!AZ2pWs&u+xfR~*tMW3StMHm znK-EVLh+8uC-4)Qim~7-*8&yOMt}l`p!$C}h$(ys-ee1@C}k6wa?`A3<%1iZ4UR!d zMoF58pn<*r zsu}<*uUR`?anlNvZ1LV_5(>bvpCER*Qjpkv>q#F`jjhuK^HZSANBy~ zz>5nHjJO}E9mQjYNfsa1Ss^yjQ*GXrQs~qmm}!!8;?b6i?GbLnt~H)En5Dwk$8P50 z=BfyYovYXK4iKC=^)2tBvhLy?7;}qM5RF_vtZZ72vX9V#MJ%NeM#oxnvqsH=1_~6V ztQ*Cw=7hA$(Qg+K)uoC3!BgV~7ue(UG*wI4`}=&P9bY()gdIbqI5O|8DtxP)E4EKQ zAWp^7FRnFO+o)nMNReyL2(SRng??X= z6{L(bBwD)KpFS;`*znZnrTKqi9lVZm^Y`~}G_O1Ki}v$NTiXFrK8tu2G1pd!pFH=n dr9@k7b@K3ba(4p&|Fk00&bToZcJ(o&mS}qx!_d%jtX#y2a1GI9A`temi`!O@OZQ7U z`S7x-jJ`}#>CGb8N+iF97zEPgq2sqd6Yb3QY5+*j*+aJR%pjzr$^I0p_&)0^@(EsbqT668` z(o=njl@Hu)+(*({&e?iwc4p?>J@N4KE48=UJ`ul!T_62n-c(~TXr9_}c+eOtd{N{* z%+TT1m6nU8pRk_Tiy0Fgl?ujz1x|`^-76;dGPVFulWTdI=S1FYdDrxVZ9A(CF`+3L zmv-kez399DD!%q5=T|UT=nV$Ac)x=&@+dHOXNjFwxD;2ra?4$IJBW9FwNKb7{$h3X z=`ByONfPRHf?8nTp$=0`)}VGqnJ6~dZ_XfTRkkZ!KuuD7c694%(9h60(~O?(+kKoF zTkpgvSa&BX!SDTdU(MSKgU0+Yp5MPy(w;X>6?wekvbywI_RJ*na7E^FHZy(KO&Gf^ zmbOTKRi`se`Bye~ah6oyS&ouVTlrBgAKSuRbL3}4W!rxJOe7ZxR8Lwq*!i7n3D69D z)O-1C{ZXB6kq5|~rg25ZWUjBj2y>xnh~tqnt@bTd6Je`YI>Hx53d6tv>C#Mb4iCrA z3>zYWW+hSEdP0>;%O2m_GUzoOu&3PMFSbPu%pcQ*C=FbdT6+72+nnQWs7wX*XLGb| z&TH#Bt%rco75Q1RCQKlVBiSK*AnIZG$5wAvpSscx2hWnW{kFg`mY1C${4wR$QT;FM zw3M1Mejd3h$UXCa9&@+?4!7hEe`-Z}3^e`dBIO$G(VSKoiSKxR_ves_&oe#dYJ(3=T}+9WOb}~yTD@j$$wL2-^4!Vr_teLCx`W?xX!sLPtdP(h@#mZM zG%Knlq6T55%OVFAbTX41_X)<62sfB{t2nW`c zCZkKnC_oysS;wjj!aQ4#b{E`$!*BR(P%zp)3Z>27TpvXw;`6n zM87jd(k95`5DwUf4!#b4d&4~ri$}p~TPYKxqX8KgFJ4}(TTHv`b=Gbc#I~&Z)_-aA*{BgLs-Ez5H&MFRMoX6(B zQIBbi9+AU>nUCb#(Zmuk;}X+a`oi{M1nGb4P2nb=1+(2kM54HGWJb zh5~+cyXGu4_z~A%<{XF3H?Msnnb(DUy>z|FupL>G90z(s|6iLYz}2^2u#*JTeS1of z>x>mFL%9BaD$(5KzihO`SseV8&9xISjd#Kr1#&2rjX~V0(ubQTJYaMZ_%W=VJz0|`uCD>H17u)Wnw^& zrSOobs3us802|qeuXbIS0l!~$+)wS+EsjDu4_VpvW;Aft+*`+wiX(`f?xB>#FG$TekkyJI z|96Pv6=5;?{$fh*lPrLQq@-5;Gf@0h{@r``!vFj+cb%*~9UDV~tc(scH4l(2ds8SoeLMjq`mG*HFiX1rpJLe?O;mfzHlfuvXs#5013RgzZ>_ z#r@io?!W6|ph4fgdj|l{F7WokHpTA_GVyeAV)ujKc=&@>|>cH8=25?#hTu)9TOV}jLow8w0=&SPs^NJaa2%D zgV4BjN74WZ8nX6qy{7umj1S;lP~IkrgLo&#C`}n8PQYb4p!hz{mUu-_nxn`*OOevQ zBlQjV-c<2&KwXU39mU7~S}w$VLSm zhkRR`dg-WZ+MkwpJ(SLN_t_6M2JeU9H~+sW9)Z%fNKZLGWUELA79;ub@b?GGEzQ;=1U;}i)(&JrjQfbNeF)8H zQ-_eu+!)VJSdEHw$_A}lo%}~{E4*lQ2rn?Ny+3^}(k7gL%y6R8LsRb(g(Y~j`Y_FDMolkJh zH}cpo4-8}uNS;d}tt=bT65dj3UX{$Yyx;^v!GwgLHyS%m|8M} z`9*@O&abY^3*5rzRUzIyVLx9~Br~N#mYt`AxwWFnI}8sU7j?gJph;CRl*k)C1;HnE zQCrcoh|6^>dzcB-?*zAsZ{MbRo{Uievy)~ghstc9N65vte&i+b&Bu>q zPt`v@{I#*TI;R8MN*xBD2A)QhIxrCx3Gug(Px2AwX=&CD`M8c1#O2RC!-lEaWPpq< zmc8%`-n$}q`Sb7{@KOoLO-g(x9roM#!GwVf!Rv>mmTD}hY``d4L@qUzURqt{GS_;A zN2-7VH$|%7T>8i#N`<8^CYgPh)MH|REBXF8lYOKOr|2F|4CA8Ug=XO(eTH8u=`NlD zMig0rD}H5wCVo~Re)}v4#N9#)`Yj?Rk7lOWfO?8$&5W;XG7S2|5U2go!@wPj8o>t- zC`F+E#pk!9Z| zg>%}X9Ek}1=4T8+WlQ!r><%6ttU@&?WT;StTbhMCVMG*Em!`xsNR3y?gsuM|fw#9e z@PaHg?7t1!YCl{Oc@Mw;=U~}?ADr;>lrE=MA@f`MjG6x$a%1~02R7nDPQ}~kOt=7{ ztE&PP^)#0(^Xf~6hPcr_TW;<)_>`CkL~?f&RGn`Gwmm$9A8ZC|*63}Ipk2Wu^E1>a2ezS8elcBLbXUil&Yk#TZebxGWiCifsI!x2 zKkO|+iIl30h^%u_vK{1`%Ial!9e=y}fXWLF{6AWXQ!@#fi?&t`qEXU^phTV0Dv%X^SajkQBYRI z{-Zp%!W}%%ZOXifWmI>`cjgn(G)3sjo8bt}EV?@xrMkP6*ik4j2Yu&;hjEPcyYY0W z*ckBD%a<=SycnY_bX%OsordJBzlOJO-w1M?TATR|XPJZZp_Hm{E-QJnImy=CZJTxY zrHQ+BPG=Q;)Y{_V@q4~FeuIMp@Sq=u2t77+clV5f0*4SbS;cQ%pzY=9?2$*smGf9e zj41F9ylgHG`c4mX$x(0duOLl&l+EOtO6Wj+{fiFRJ~)Z&hC4T}OKk3>>_}0`WIyPD z*9^mn*S7O=b7z*y>~;Clou0!(mygWPV5*UQ`f_#BwZ=6sMEFXlz=G^%Wng7vLk9%m z2Zx6W@;}+C#-hk%RGNB_@$P7+USl$**hBs3D!}{dtxR-!uviB?2o(U8NTk$Y2`$-W z(0AlW{oUobBY;@RUP8`pkDDHhVDPlp%9T6n&TcZ!3nMCDiw9zQylo2f!XO3Cf9 zvfUf=I;qRkCSEJ^!_|nbb~Hs1-w5Ks`t7(gC?F+gW~jTw2b_x!q1?HuUn(YkvJrWS zbQSpik1#A0kP;G3&WT4(Qd|7Lbiu^AOO0rcMbzM3Vw6K@^-?p4SloTvd?eG>TV&M= z(pL52JessQt(>51;9C@Vk34!wMJe^w#R0kZ3?6qk^*})L$rBkpJ-s{k?onrQl=C^- zayn26h^~yT+)fb-Kw4NxjiNtT)@P8)=FzXOu+*d*exw8_8>>!?98IUDyuQ+NiFizp zAn3F*s|?d#M6T|?XEYBUIOZJZ3L7U$w@0imaER&a-?2DUIc6LX5y_u0juopEFQret z1K!*Egnu85aDFQGKX50GA(F}r93AuUJgZlPNhF;=$MDytd{l+V6jZSO`_AB!*OnRQ zC-a5lS^x1f=!wRyrffg2{mBneNwbSTe-FkF$Tpc1!=wH+PB-RgFIcXoEB zdfxkfx0JoTVs1{z3jihNA-2+WNuKEoM{qu^-`4*-W||hbw5^h3PI66i2A?4{A|(-Z{V@R|3&0>9eBu0 zSdjx4De44WC@lwg_C&Nuer`}|FL!@<3~5fe94-7Dp9wu2-ZJgsar*RW!e0|iOjsDz zaXlaueu)7!JZ`j3(f*c{lvMFrV7YST%GA>zO~s6m;TI2?!k@En0Vl7ss|cLvb10_* zWG%mkW@HFK4|AhY2a>>4oa#CN6e2M~#s#M!MgXd7zvK<8sJH~}(8sJ##UF3ekthuD zT?d2~`Qo+9KTCWT3aqiL3lioTev&qvGo?Gi+LOb88toA8oRWa37*4)B62&ph9 zyS$upqi#QAMyal@&f|w=ih}*K()Hq+^(HI7iKyvjFgm-Wgbf|CcN(yPB5ec%A|NdU z0761SP=h+;5xo1@H&)22xxE+;R9!f{k^+_=GI?e30WnfYz_hx8YwX+a>(}{Q=OG`h ztnK@&ja0fM+W{VYoK-cgum_z03u!QJ@0iZ#8G!Wu09Z zYX0cyU3K@dr8Oc#g+iNHiC_Eb350rO>r78@FFUHMgX#dG20rRignPvR-n*ADvvP;z zERz{Hk1V3QrB7~u#jiZKU84O7i-4g%z93L=c4fd6R*uM2EZ0v@%iwmr8 z{F@*kzn(7k*ma!q+jUE#xioicY&?|E19Cc&fXdH3G3(-myl=c@;`N?VT^CJ|N;7k# z?E{E>p?Qes30<0we@ITGmcKZU-~#iB@hz0^h?YjIMJw3!vHC#*ws##`+TYv4t^DGd z)72ea(%djv2vL6G(8RXhMOD4Z#o7HhZ^O%NsXtP#>-<4)-;TmOJ)`+)%Est&qz- z(xb{pAf^xi(@@EEVGIVi&IYQ@BR96;PfYRlT#%GdcJpk5^0hq2TXA1H?82%FdY&Q~J;jXB?+feYaJzNOY{dw=30KtT}G7 z`F!S}3!RfCM)BR^1ZhLBr}nl@m~1lo{;Hz~AXBtfRPkd61AqRGg}hErpDpj3pJAx{ zIt2@5Csm?`=u`c^dDW3VHgGPVe(STl-H7~$x5wvN>?( zg}BGws@Y2+bv}UdD_qm>=HA}k`QoZkS0>2m0swjngiYl&Le(&-&`U+YvX<~RA)(Z! zkve#9)G_6fQ-UF1#Q_z?Ppg243))bhTUfB$U!RCUGtBPugc7?EnL?qgiKLYP@_a2J zde}27j{&}V0Eqcbym-Mmh~GwQgmoG{^(b}nkkHv$dMGV};S|w1u|G=wmb!gv--=j% z$rbc3<%!iW-ggh22R*k4Oe~mS-oM}08oK3<=*7h5Q-aqndHeX@BrW!3Tx+Gl?Tl)u z9!i}#beRl<3-~c%kQA5uY8CV*$iz6GcrvYtBkB~TWY_Bj2A_0w4tHtL@$iT8eAFu2 zvwdAwMTOR#?{HUd$1v^8aDNP&V2J!L3&{JFCyc1Vj1B#d&x2qEVWu^H;I zM~C~f3#sn(01FEXZ6Tl&C-B*v={%jao%SofsP%QXG>s5GV5SR8{nH+V;PPfW++_R( zHz@pzw7rOpZl7&j9WCD+#*iOu)|elWspZAMOj$zKJ5U{qNn6YaWENb@^T^t#zL)TJ zGcm2i=2w2d>0$Q9bj?16zq*E)^qW}K*QyC3GJ^glYm5~%G9biI(P+{lr=hJ)CIeIR zv*`|=C*LJ0+=Zx2kQ#?Pq$#wn)W+k2_0Pm?)Y3>LClOuYag>@<`?F5&XelzVg=yWfGbG!=SdFph+2N~B0dx$2QSLlr$u3J|2mCU| z4v=uOY1RoZS!|gFklOny6AHZ0l5z zW~L0?F=~Xt!4fXg@;o-JiNdGcgicSFsWskK6*zGVlKzsdd{4_-*FLYW*RZVimb8Jr zPHK1RTwYl*at?cO6N4ZTkLWVZkIc<8-;u(o*^9`U62waHMz;T=Rp836NVAJu3Tl$z zY5Nj^Xd3kDjgX^M!VVhOQfX9jwYyOy#pDtjWqdd^Bo|S z8cS-ob=7!5_w|McCdh~l)Zv+zg2^w}*M&^;EIikIhG&uyNAG9$rU~kf1~Uz0LwU;H zjgjH+47;j+O&5Hr<4`E}&$9s(OK{AxBDk6dEGeQ<{<&BlqJon7HZ)*KJA*Sf->#)6$%DZwtn6&bDXgF0kIrxg!5F9wKg^ zK7A6teEBrw-ldI=_8(r3Vyb-|DU8W3_&Q7%n$*9`z+C@v*)M?8_9f^6Vw}mlE5qUt zib~>Fbmj^S3X1BIy94_P0iURS_u5T*2B2!ZiE@DO#|s0Q+1WHesq5%hT8%ZDt1#Wd zL&(ehdoE64_qL%uo{ND^D6)Ba>Ls3yg=Gp!IpE2?_5N%j+?mL*qe^*NjMm_UE?&5m zp#;m;5t~l0@|^)mKiq1`f06Qzlf6rSYo907B+c-|Z?sj6ue^Du*5nu@HW$XmPt)@( zOWrzY7xdUyKb3-5DR}IBB!GOc!AaTO&ijc=4lTGK4)L;0l|fH>iz<>F*}D9cNHOnv z`Oz%mz`BF1svqk)SQ}7k(Az{Jy3dxu$-pc4M*EkbdhpeIV({?#OOhF3wwvGf^hLg^ z@q1I{M}6t-iiZyjuLCFGu2g%0$@Crs8yG&J^N2%*93vB2xb?){eVL=(WXI0KeLpyL226c208FIMi$;8A&Wr3ilrx%?-s`{70ZA6|zBRdP+aLk!t$wb}QRKKM<2N1a4A*WAS)!Ww#B zgPOQ)IfwoPvG0GYms76HUkP4bZunY)do@fUiLVB3&=i_iQVZs(D*OaFE)QAOR@TwS z>IGL(N*ux5Kr)~~xGS<)eT$`8Y}G~MC71y_`o7(#T1MQ*+C$Z08~|PGiA4_xRqiIj z_IA%^_VlPSjls#6mJbcn!!t6rRsLRiL05HZx_k&*wwY++abrN2M2JST)~nb2#0|%1 zM50>P{MHL$qeye>#@p|cW(U8tRP&wA5R48pBYpKQ+qoFvH}|I$Qsq4prHQYVTQaxCg6DglJ7k4LR1MR$j1e=*K>1oGbf@k z!ttcP_V}Hx0y-OqP7uQv2yJ@p!ZPYK@Q_*_FZXJy+qW5BCtRS{NlleMyLnQ><%q>Z zl&w9#-(>23jlO3P2myx|qftmB)^I+*jkb95QTqr{OT^&2>g%K{+}#)=#g@{}`rV&O zm)H05Nm>55`q*Uo;1-Y8wdPG^vPo!e1Ujn(1pMU6rh8G~iRNhWsp2snTcWyD|8RS< z5028$wz+DAcrdQP1ws`y`Lfd`w^U_8ivpL>eUwBYL+IGTZ5{JJw80~#49Yy?k-2cg z=0nWLvjBv3%=nhK?NR63yx_K+H6K@<05i$+Qc^!e+WXGapVd07GH5=8?z5Qvi7BR6 z;nAWTtbr1s_9%MEL*?X%Xf1$P_ySduGqzh)#6nmx1_Pg%n9#i?5I5Z%Jv;uRyrb5) z8dsxmdZr6HR8Stk@)9Z5*Z7m4!8Sl(951gX#J0DAlcNPdVmDF+$S*2N4Bn7JPBWyV z5ulI>GNiJ!9x5P0@j8Usx;m?YkMGfFFdjpimm7~cC3VuSU#{I16#zJVBdyFQ2k{AP z2wyzX8&?SulEt_JNK*H!i)(^}-3??D92p{*r@!K-;L?SW2q=W%D#(1l?d#maVxEo9WRQy!} zck&-nIK>UFLrDXmPE_2@*3QbyV_3wZkBgNCnP6XNS_YmyceDlEcgF~9wJ#ErxBL1q zv+3#Jz8S?G_nF<=eR2o=aV=iTO-@H2PX`Dhzs<%4TnrgPcwnbQB#|NW!wJ}T-`IXr z5OQQb%JxjjDMZi{7=pD&N)A!rba;m}k9}viQqAXY0H@!hws73k2O6qEkAn8uWRcV; z^nL>9txi}}x928o1SCWE&alTtE@HRW(K7Fm^(bRrvS7{#a|uPvX61-`7cvyp=) z9}(k(k5n(sfhBN^8s$9dw|H3ooAmUEkVB2Tmhk7g<6+mKlkR4$&;v!%_6tqENMmgU zf%fUGZn^gPWTb2%zj|QB!vP!<=Q&{o@C~JkPsx=Rs@+kSr)43Ys>H2VzhS!FO>+mr zdcbve%t?nXjP)XVg3%K??fdeUCps20)xL@n>q1MmW_=S$`H;v2sQmJc+^}{SdOd3s1i$_x832f+d2%^XuT8(0TDvdrGKbtqs~LMC}`r zq|FlUn3%M)!Zj=hSd|?61R!k)9x~@g(Hkp5Vyqv>#VcaefZtiwn#!0v@yur^e|MI1U zZo~(1UjIpU3^l1rKnQ@;fZMTxx6I6+(`6FOuLiO9cj!7l6@hWZVateE9=WEqq&Sg3 z^&zSmLF+$g0e>=a@ke2yG(@v+(zRtYWYMPbgKNY^^diJ2PY9?86Wt0AYO1SWCnVTC zCPQCJU4~`1+Bb>uzNgujjwO%F(u~KJ0HRcM7F86?K5QcPV!h%uAJuPY%|^qYWCrL; z!9}GHzp!y2FZs1O&@487`FV#SS@&?zpgzh=k|a#1*jd4wujtGx&;|fkVK*Hda^>agH@<3w z(%`X1z`gz>Ic0ge@2g+CZ7R*_l52hBtdAZaNrfsd>;@(0_JSZgO8xZt#^ipKr@W_E z<82_6f18+h=CkkD3S(+d|AFLm5kB0=QcvPA)BnLHb+B{zNi>-~L$USlm`a!Kozz zJu4-yDUm{)iwIMU5KH1zw=VeTkr;#Kz@v_#vdnNgemm1UXKRx~Fi?#i9AMQ$g&cio zKem>+NUE`T+h6Sq4|-^mZB87#L;^~|`D8Yap{UWvs34CMa)%hqQu*4SN|zt*;NjRY zZWwn{{*am)(su9j^hOP&A-zAUf22uGSZL|^7m;KeTdJG$&1_6zI`a189dK3hbtQI0 z__ERUwc{h`S35KfzsBmL9(JpYd+*<~to6V9H18vXkUxC*fUnyKk+TK2<~pI~m8h|` zwn!$ot?a&vNS*6X9TQb$X4PETz>p$|>uSHQrj2gq`0UNm^12yP zXqT6lc_G|>aBu)<`XA5)iB1qUXFWG(Zg~6nFqKd>EPH<}Exj{hVq%hvC65XR<#j!7~@w?|N9t)B=0Zquj-*RpWqR+TD*@5>H(6h&l9qf^vybj*f&wrNPPQmmp zUE*b$#|aRt#@5pOos=+7G!PmuWp>+^NdI~@z&Nxy5G^s&h4cJdm!qBA$|ylu=)_F8 zEvmUGOD`{f8H3n{n6s6_zXkz#Jc=2*+kqK)mq|($p%mh!q|b+!*9%46xS=sts;ZZL zm+_w<57r)hhWRs|-8i_YZz3EqpG>FW(2MzV=-=p8rBlvQ9z2NXuD*hfpZ9Bf z0=Zr5^Azlds>A4odTN_x_Pm>Hm=SU0-|3Qqw+kVo7dqRk=b*tgSX*03L3QyMfqoxe zAA}V&g%0r`Pj>1|IA#d0tyW3hdAAE;A>LPYdK)|0{(wAM;%-bl#j}kGt)t5X7hRAM zMtd;R7q4NHdFX}YRg?X%kAnGXod$Zb<1eePOfBc_ZkpW36CDE>UUnkvM=ykIV~bTi z**`gwmk;3H7ncs=ACr$?wlJGph3qQ>zfVwTNKs;}?i8L4o@Eslp%K|%drP9`<_S;Q z@%A5g>kQHivMtPk8JJ*H7{UB}`8I4{SO&_IohuTQD6$~&$M7;Pv?bJOyqZv%xJ3D8+$9$RP+%qmi#IlH^Qek>|7^D(DU(BsV7+rf8>y2BZzNW5fb+y749 z-y-G|LUZO%jlXlctP)&G7f7d7HX|ofG6jSZsjiE$>LsdMBqf=6WLQNz%T(Qx`8;Z# zI3=g~+`AeGiNoAG=zRw&m}4;mejndt=z@#rQ>d5Uly<4*rMk~^d5~Z8pzP8N@*dt| z`Ii%^z3`{7DQKn!WoLzXtXS6iS?Szc-EX9KKRLKOXo83&XL!S|A^FZe;NMjtuu7-* zvIDVwtVlM#RHFn|1unk%!@~$)0%ZKFAUvy8N^d>Y8IH1 zbcT3)gY7b)1}$h}h7f)+UyW=L@(xEM)qk& zNc;3k`XT(kW&*avZEW?0z_0JxYiaeZd@AkEEIkc){l-?yg8#p@jBRiNUyB6;3bn)p$W$aa?}ulkME> zuV3%oyW7D*I{S-c@^b1es`a^T*pa5@F_+DYM%G(PQi7C+hQ1o}Z|sRxfxW3Gu*KI> zHeabt6KL4uC@*P5&Y%A@ z2&Xld`}n<(#pm~LfF6d3Z=Wqsr`_aa7(oZu{rUD4du^+GJI`C~*SEwFp#-F4ymPzO znrY-p^5We!m3+Zi4-(ioXEe`r+LpL{kh~CIOv$&VXvBvfTFk(JPjnP$IU+JosE_Gg zD$K1Znl(sXam9IVGAZmI&2w_%Y^WD0W*kA$^!w%_%i*C8h_MpBLZ7pL$eKmMpnfn_ z`Q#!E?}jG$uA~MA-3~OAz=45*bD6;tR(OAlNIkGy>bu!S_Vtxbek?{;V>rnbn6Q8DUSyP zf|M1dIH5_yHYNkw#iS!{kdIUk;Y|=n87Z}ma0XgPVd0f`I{1=R9+GBear+PHpCQ0L zIJmi@xiPwOCl1rUh~9E9Cdqvp{oeHPEXJ>h*gU)0U{|J_#1h*|4QVO`zt7)FZ5S%6 z!T;M2aW7G5ZcX5OIpqwCYfp3f5!)G;cB_=V0EKnK5Nf}tIL@T~M`&?jtH(Ds9npq|wY>8yR}o}wG}wi?yp1%mVukF=8~jWl|IR^6$fob^LI=PJVit1G zPK5(pHFp0QdJA;G4(DY@%VmEjv2?b4uB-b8OWd6?hA`m* z+FXZ6Gk3-~N||k)jn5fms6}0iJ~0i!<|eDq3D{&i6h0nHKhLD81?WkTM*T)n)ThW` z<3X$6^oM@Ade|=s%p2$hz>!3Ew*^OxBgWrKHhzwc{b**FeAYp~=s8IBU$epJ5$f<< zYt)Z4Cp1qslTXSXaf;?c>zHIEHEk?{qPeJGspN2y{!0A&0mRz2oj~yT_gVKHD1F*Z z$fF}%Vy09bsLij)7FQ-sLNORDslD8P^S@;nW1ImA*`86sXUYqUG=LH*4wG$YNifmq ziQguEFXI64w#`D7RxVd#kpjW*``vdop|Y7h&+uv6xJ-2f+JvHrMNsYj6np(ir%e>n z%16;xMS#lU`oEqAM8=T@mfFF~=S7X{+_qm?lQl~LS0uR4j2j+cy#b*soF!S)uknYa zkf@j><;!pC8rX>`2JLPb^1p2-8z&C@qL%t81xM*h5GvyoV*WMF&bDKjH5Exd>5s!g zke~5l|9U~n53Vr-R89q<8HsFA>4n+=p_o=73cA>-xm95WpES;R);y@Of?@;eCd0iX zzoyX)EunpxAAB4w?eSn)FE@e1({{$ahxNb8-47pUX@#IIhjw@9sD^<@2IIv_HR#v81w14>6W(z0N%`OcOM@Mu)PW6O;E&tp*=SgE@ zWBtE=%^6X>fi5Y>BP(Ge&Xv?CbHFUQ;UpUGy8O@0Rs&2;Il4Kl5gx2m1~Jf%>Q{LWn%w zqxQ0F|HCgY8eVXA@!v{&ULeo=&sLzmF@q5DiAHNPy`L;Jf3m3S1q5TjRl;uviJ#^R zDP>z{pj>b-M3%w)%X-^(7v?1yLc5cw48#YlWT&Z`r5U;6qp848e)J4R?8ha4a^}i{|aXB$|MCuSIzuc`MTM8c%moG@!Hb?M%$Wq@3?}0m8#l|+Lw=hzwGr3P7h~# z#|#e9L0J#J#igNkYeLZ|zWf53nAorw=K6UycI%+}Jw=te!RAtKO|g%=u-e&?yQ^CU zY|Z9C;&bnPcPA&wYq?r}987z{ZN2P7mUo{4HCf1fBFTN4PX8*!Lj^;PA06+mr<_k&(-I0iDT(9(yk-TK&ti3RJ^ zXB7-HYqvN=>TRDr&;agu%{{-vbR048>f^4-1xLshSM^|1M(XC>=$KC+9=w%hqGO0T zyyE%lSdIWaM@CC|{9i%QZm zmf+#$rk9R1DXxyzPxn^LeRY}!YHR(FWi>h9xWIj@@55PQAqe>o`Zi-E!SFYZqnSR* z(ZON1PO5kY%} zXRH-K@1xeCU2&*k$X7Kv@zD(ni}GCYpy%S@4m%L_`6P;xB;PneV52@>L~5EM9kN1j zXy+l@=JlU1z0`TAG`;{dE+pAejF!AY45Z`{snTo4CWW`uoQf{A#%u5b$2t>?3xf{wv zth{#_GI{#*+lJZG8tCN(%z>!KxG)7f@Uj=vhys7^@=z9$opO=kQ2X@M;74)s?y>5; zolmbni4rPEowiz;{(>+vK&V*iv@HtKGi1JLz?U^5DAI;YNrMzPx4Dit8ek$D@KS*3 zQ=Y|r3Y6ES*}3#ep7nK&JV5KXJ7j6)8hd1c0)*VxacseD%BF@y@j@XBT;PXmfI;N9B{H?6SV zXY|oDN~x@IL&i7fBg8W_ogB`MyT#A!i>y0ZXOpxS5!@so9i*IjN=lYP_NA+b@P&T6 zpxxI}v8lT^nexqJ`fBaO*_BpagwVWEZhjKPIZm=ya>Ef2r0~HXGHL8U$FXGIa-||F zptkgo{*s$@1WEUtX7i>v$aTa#jQ&a2W4;|oT|surDXunGVD$c>*3nU#S#-NPqjDh~ z_VXa`)Q})3ve?q;d+Qc|Je0orL*)uOqg2)JLmP{8P4xC>>-m9D*u7EY#OF}`!u*&+myNzp*DMYzjez_N2uGPX_YoX z_zo9IG7<6e@dNT!I8u$_G_jKnfLiNmUFrGC=)nf6IeX4fvAKAA%tMw;3~I^dm@hIx z^)2riR&GJw^t(rvA$tci^70JT;_~v}WzKK=##f{XHmB}hyGFyz%>47upYuhL4 zx+8Y=%3S1INa&Bl`SGQE`O^3TJB`H^qLPrIb9T1r?$hoK(RqEeQ3v(YrNUaQ^Z`8>b7V|@W~Sy>OH1>v_?urx zBfE4YDRc1(7#YSVgaHdt$NfJ8$&_i}! z_w`l!T3&wFrkvGS=wor7prRrWO7A}3I!O~O_6u_JeT|~Yshp~0lEO02n#FH9JrUw; zvm7dhAxW05!EbS4VSyQ}lD1UgtqrK6B0$WH00o2S230-j^2qqvcZkBN#AHO^IMBch z9(Ow{f+|!X1JQmA&FH_lR&IVO`?gFe^7l-Rzj{#7r6(*?f*wzLwIFAlA&!Ehi`3dkv3jF5K>gcKXlA)oCbn^2CvBJeB4RAwd^}3p0(?*26eGLYoFzqjI~WP zgce1#AC>!4)joT7uiW^{2fobAP|~$=#7~^KRT=n%AE@sc+1(ophd0zOCDL&7b>N>y3#2ow&`OYl$R(m~ifX>pyN`}i9qGcKzNUH-TW4F}h z@`v#eM&>c?fO(PeC1vI8($b%Kp^!q__xWuxeS_ievmoVevzx8D%V?^RyoJ9&+Q2_B6gJMSa9y&U1&%R}57L{S=*hFkbdUw5I5c)X`hY=l#4((Gf#IJ70-r230!28q0 zJzqp{L8q0|X_TxFU{pHc1DRNWB;HCLtjl3cx0|UMR3@Lk=otYC&Fv^#w7O zmB9C^e#LjlrD0S3!9w|%E=a0kYeTMi(@$KvNgmnNr*43ldMAOGXjLm!)qCIatMJ_? zov$l^u4)@Vx5jizHL*J_d^BNqRULK`;;f!98%&dkCs(`p3v+pXffKf%#}9udP4i8l zX|Bo+S_dX)(YeRZlV$n9&5|LQLwpvX$uBrxvO1*QmzbPCM^T zYqoNDL3^OQZX!l6|F(eCnGx<%-NT3{RIwF^|G%&Je>Ws&<&cUTu|J0f|Wtj67TEd zGo4M3ilO&S77UVOV@#yJ4qU}oK^WmSDknxqu_0uN%1P|g05uifPf~lFG7~$XgOOx^ z0L53};e3FJ3jJM3U%e-XQNjJ6Dy}>bs=fW6G1iRG!ekpEyq3@vB^k<6DNALEvR*AJ z>P852NJ&{HS-Pb%q8cGv2xY9vr8{V>$te3$_GQMInfH6ty}#e<&*RMZ`R?cQJkRIz zSU!eJ^(PRaU4k|26h0zM)Wz0ZC*}>?>c>1oHxsNzDGQmuuBku?Fl9go0D ziV|5_*}mRTlqXTLi%+5drh2ZlLm~oW8dWDLPm6}MUXsKx&c``2d<9hYPJR#j z#eY`Fq9gySkaGbkgr%H5YMZTTC{dG4OjPaEAfUeUd-gWNNcArdL}%#2aH&h)%k=Zx z>}J%`jUs0)K6@T69-)$6rI_B#ci|?;o!k8UPrKUFg&<8m<6l(F>RNZ|NTf!30V1Q? zmGCls_{7`fXHEJnp_ULXW?T>NHA-ZFTRX*x?`dUt2W0>dpw(b4)<(JYw`SB;cN+Tz zwPK&7EM+*Z6k6$Jw_TossdV{wHSL$DsP5of3jBa3|3}OZb3)J%{YJcg3Sq|lS(8Wa?j$SMmA zGVEjY$@NC{Dc36#NN2}byv1m-Xttq~qs#=zrVSCUqs=cR;616l6wOz<3|?23%6<;b z+Qxvv8`Sg0Ei!+*n(OHY+N)a`O*d>2hb-9_zkCtnxzPG`%e)y>zRWq8j#v(-UtTDq z?PSm@Yq|wn%c8=J@n+B_C|axpv2RXKBxSmCotvE|exn0jc+u)?8<{vFmuYD+z1t1r zq3v%e5Bst*Q;Bm{3V_ILF=+ea;PHFK{N~EuUU844)sEKhYi4?3Iq;D~wOwKhyzRTU z)Yvx4?j{+Z#+5>2uyfhp67cL5dPaU_<<_?ckM0|FpX{nD^s$bV*UeItLg>bIp3PGG z5zF8v`W4Vk0l%sqU0CZil4qbVV4hXjbKzw9vZr*SSI+YIxj%r80CXZHBz;Lz?BsUw zd-sBEjrk*QTn@-}6-tZ5+#P^Nw(QraWt@3ZldA2y&d(h#^E;4WwiPT~uyb9SOSP1S zkB<*^$)wgPj;^nJO#uG>{d+V$L4G?(jd&+9*lD>}n^U#zn=(O6$Hrt%c!O13wGWf? zDuc_7l}=pBaUcJ&{N@XO<-5PwqHG9|1p-$K)jt8s^+`83xBB*7fNad@>Jr6Jm{v98 zTVO;i5O|cR>rtmnrqszoJ{Q9`LW)&{TCc)t;AkaQ2|r*KU)2U7i(TcUcNrw|=lI;+ z78R?@v*t5~$6Zkm=S+#q z*WCQ&+w45YoS9ywYbM$7r}4OM9Z9s4Yg?P(PU__QGbQC&w~wZkT(LteUsX}A)@vYw zyMQ@-X_p*O;`Yh;Pab@2=gX44gHen{P9#s~=1ZGsYRMQ!e@mjr)LQ^m^snXy={oD7 zy$a$JU9T+K*o#zplbOABEdA(Iw%>W|I#JAvV{j-W9HFUk$8SamgguVDu)#oos2#@t zfl=JU@=AVAJ7&a+yM!uh{^?&jNeW63^Kx?<5zQ8mFyfE+HsF7dWKwEq@IDMupDw#k zUmi?6^0r6RLnXpX?8}(T|NF7O0_}}}oml72Tpyf=onfT;Mkz4=KJ}c{0+-EY**UM4 zLM7jvRQT7JEy;l|9+S)zR`SO%YVU?_i23L@%HS$}F9OMI3uDzlUs#}cZN4cCbMcum?=Bi7h?f@fq^DMU%Uz_Z*mX65$*jFx6f4c07mab2vyNLme8MhvYsWv8Ftqi#8AH8j_ykkzs zw7kioU5{-x0lsEpMT6Ju9^vF)0|bl%dj7I;#Jx0A1AmfmcMD$*Hq7JZw%#j~LLoWs zyMiEVJ|c90d|2lD)oFgRU)juA>8tINFLN+C4*2>9iJpmaGfxY>!&RfT77WCJ*cb*# zvCg;T8%Q1~T0cukMfSH&KMuN$s4j-0;WJyVDd~*Fsn=l9s^)o3BLWLGt_r>u8=#j0 zj)w-Jx^tT^`1-D6RYG^uNqwstJ0c0X!E+dRwgYH0De=&$l2vzt3P}#I%SK zPhz21F9y=uF3tKl0)(BDi!gdY5Y=H%&y44at!HqQzno3Ujmj5OaDU(^D$wzDxqof? zp^?4*sM7Q7Y?1Qv@~uLVqF1gs5La1r_-_t4vmzA^iC@M)X^94$;HR%I02|PjY-L3G z6sl#cK%UTnBGUEV7Elk&4kf`c?4GJeHo*wOrvg7>zw@ik>Vnq>S-?4@9=J31MY#Pn zsY|-vJp4Y0%6Qu7!hQMJromL#*?C5KyS#rO6dL*dzF?O&G3h3#>vDJbKTig4?d)Rr zd1B8k=nx0EBus%QfZcYN71dd{sLWx$x8sU55snfXA4~%9cf%oXs9|!`C`L;zY||qt z{UiMHur-K>dFarbNvbO`h7waw5l9!LoU8|-x6vRY-xH_A8tk6F3CeohaL37Fok#x2 zFjC%sS&PEob{GHVwBoQZ=SA^V7 z^9IPXz2|L|92U@4l883Q);Kd2SPlll-&$iJJqwTrRKYqs)c33ZeP;2?LEQg~XEOuU;RDBkCStXKHVX0uofgg!`KUcdSpp zNr2}G2LV&ID5WCr$jV0LDxeUYd0vu+nC@Ba*-N5wcXwhn%~ySC5QyR}I`R#m^N+xxXpgGELRE3vA%yeAn; zqJ3v1sLQny^vzkNFs#OG%%2l&(WUjX4B0C=uc5IYh7&7|f3XZF*oJI&=Ah2(``=k= zG6DXcUm~uh@~*KL|E8r*>f9lP058UJlAW~i2Yz23iV?dn7;KmEUc>|DEqQ#vwgn9+ z2N~KH6o^_+!c8dV{D~4q>fHS*A&4J?RwkG)K7+AZcLZe2j@6jAysWkp=Hlnvv0pbF z9{Twn%1DeVj6vbP;mifkz8Th{{JQe-?`y>jZKc4>0NCbT) zV^4GocI|DL-wZDVgurXWE!F)cqR!JbF>9Dv1jVvX>~RpPJ#}+auy5ps^Z0wyocHj&AG*ya`e=7Fr;-nBW^u9?jHsXNd zY);mGLt4*#{=M~tpv!u^-r;qhK^!L*LBjM63|?*@hN*ez5QM!XIzmvS0tuT5=1kpO z?%(#=MsZ)wEwcMI`3ly@CvZx@0mMel&Ph5^KiF6yjzClZvaZ?6kYUAmF_0kA&l?V=-7H=XnGNX31*pyY#JUp#&*Ef;ncX20=WvR^ zKEIjyt)EXH67$FB{Hu*)^aa-vn@{)KfeZVTpJklcry;ULGB0EFUlXn9RUU`OT9W2+ zSfC-aowLd_`0A4L_KprWC*p8*?A);!6LH4oHX_DR2n1 zDLd{qpk=oIs8EkHo3G~KUsKs&!bhC8B;k+HI`tyFhyq}nf~|x9=naKetOh8cR)yw{ zmFfJnO4W-vG(DVhNdg?*W zI=SiaFgQuF<9cfcC|C`Y=fXc0ysnE&`*=EF1G*#k1#w}mue9Uc>VX6Z{2jEgF@Lqs H?-s diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index b9b12383a1..63c6266608 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -70,8 +70,8 @@ "abr" = (/obj/machinery/magnetic_module,/obj/structure/target_stake,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/range) "abs" = (/turf/simulated/floor{icon_state = "floorgrime"},/area/security/range) "abt" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple,/turf/simulated/floor/plating,/area/security/prison) -"abu" = (/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/prison) -"abv" = (/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/door/firedoor,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/prison) +"abu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/prison) +"abv" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/prison) "abw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/wall/r_wall,/area/security/prison) "abx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/security/prison) "aby" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plating,/area/security/prison) @@ -213,11 +213,11 @@ "aee" = (/obj/structure/rack,/obj/item/clothing/suit/armor/laserproof{pixel_x = -2; pixel_y = 2},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/window/brigdoor{dir = 1; name = "Weapons locker"; req_access_txt = "3"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "aef" = (/obj/structure/rack,/obj/item/clothing/suit/armor/bulletproof{pixel_x = 2; pixel_y = -2},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/window/brigdoor{dir = 1; name = "Weapons locker"; req_access_txt = "3"},/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/warden) "aeg" = (/turf/simulated/wall,/area/security/warden) -"aeh" = (/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "1"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/range) +"aeh" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aei" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/security/range) -"aej" = (/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "1"},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/range) +"aej" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock/security{name = "Interrogation Observervation"; req_access = null; req_access_txt = "63"},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "aek" = (/obj/machinery/computer/security,/turf/simulated/floor,/area/security/main) -"ael" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple{icon_state = "intact"; level = 2},/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ael" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{id_tag = "BrigEast"; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) "aem" = (/turf/simulated/floor,/area/security/main) "aen" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/main) "aeo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/main) @@ -226,9 +226,9 @@ "aer" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/woodentable,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aes" = (/obj/structure/table/woodentable,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/item/weapon/reagent_containers/food/drinks/flask/barflask,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aet" = (/obj/structure/closet/secure_closet/hos,/obj/machinery/power/apc{dir = 4; name = "Head of Security Office APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) -"aeu" = (/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/prison) +"aeu" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/glass_security{id_tag = "BrigEast"; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor,/area/security/brig) "aev" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/security/prison) -"aew" = (/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/prison) +"aew" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/wall,/area/security/brig) "aex" = (/turf/simulated/wall,/area/security/brig) "aey" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/security/warden) "aez" = (/obj/machinery/atmospherics/pipe/simple{dir = 6; icon_state = "intact"; level = 2},/turf/simulated/floor/plating,/area/maintenance/fsmaint) @@ -236,7 +236,7 @@ "aeB" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "security_airlock"; name = "interior access button"; pixel_x = 20; pixel_y = 20; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple{dir = 4; icon_state = "intact"; level = 2},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aeC" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{id_tag = "BrigFoyer"; layer = 2.8; name = "Brig"; req_access_txt = "63"},/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/lobby) "aeD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "red"; dir = 5},/area/security/main) -"aeE" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor,/area/security/main) +"aeE" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/turf/simulated/floor,/area/security/main) "aeF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/security/main) "aeG" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/noticeboard{pixel_y = 28},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "aeH" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) @@ -289,13 +289,13 @@ "afC" = (/obj/machinery/atmospherics/unary/vent_pump,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "afD" = (/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "afE" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) -"afF" = (/obj/machinery/door/airlock/security{name = "Evidence Storage"; req_access = null; req_access_txt = "3"},/obj/machinery/door/firedoor,/turf/simulated/floor,/area/security/warden) +"afF" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/security{name = "Equipment Storage"; req_access_txt = "1"},/turf/simulated/floor,/area/security/main) "afG" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/warden) "afH" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/warden) "afI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/warden) "afJ" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/security/warden) "afK" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; external_pressure_bound = 100; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/warden) -"afL" = (/obj/machinery/door/airlock/security{name = "Armory"; req_access = null; req_access_txt = "3"},/obj/machinery/door/firedoor,/turf/simulated/floor,/area/security/warden) +"afL" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/turf/simulated/floor,/area/security/main) "afM" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "afN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "afO" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/main) @@ -305,10 +305,10 @@ "afS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/security/main) "afT" = (/obj/machinery/photocopier,/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = -30; pixel_y = 0},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/newscaster{pixel_x = -32; pixel_y = 32},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "afU" = (/obj/structure/table/woodentable,/obj/item/device/radio,/obj/machinery/camera{c_tag = "HoS Office South"; dir = 1},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) -"afV" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"afV" = (/obj/structure/table,/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 1; pixel_y = -2},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 1; pixel_y = 6},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 0; pixel_y = 2},/obj/item/stack/medical/ointment{pixel_y = 4},/turf/simulated/floor{icon_state = "white"},/area/security/brig) "afW" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/security/main) "afX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/security/main) -"afY" = (/obj/machinery/door/airlock/glass_command{name = "Head of Security"; req_access_txt = "58"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) +"afY" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/turf/simulated/floor,/area/security/brig) "afZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/carpet{icon_state = "carpetnoconnect"},/area/security/hos) "aga" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/carpet{icon_state = "carpetnoconnect"},/area/security/hos) "agb" = (/obj/structure/table/woodentable,/turf/simulated/floor/carpet{icon_state = "carpetnoconnect"},/area/security/hos) @@ -323,7 +323,7 @@ "agk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-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,/area/security/brig) "agl" = (/obj/structure/closet{name = "Evidence Closet"},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) "agm" = (/obj/structure/closet{name = "Evidence Closet"},/obj/machinery/light/small,/turf/simulated/floor{tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8},/area/security/brig) -"agn" = (/obj/structure/table,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/bodybag/cryobag,/turf/simulated/floor{icon_state = "white"},/area/security/brig) +"agn" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/turf/simulated/floor,/area/security/brig) "ago" = (/obj/machinery/deployable/barrier,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/warden) "agp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/warden) "agq" = (/obj/structure/rack,/obj/item/weapon/storage/box/seccarts{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs{pixel_x = -2; pixel_y = -2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/warden) @@ -333,7 +333,7 @@ "agu" = (/obj/structure/table,/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/clothing/tie/stethoscope,/obj/item/clothing/mask/muzzle,/obj/item/weapon/cane,/obj/item/weapon/cane,/obj/item/bodybag/cryobag{pixel_x = 5},/obj/item/bodybag/cryobag,/obj/item/clothing/suit/straight_jacket,/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "agv" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "agw" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/item/weapon/storage/fancy/donut_box,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) -"agx" = (/obj/structure/table,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) +"agx" = (/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "agy" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor,/area/security/main) "agz" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/item/weapon/storage/firstaid/regular{pixel_x = -2; pixel_y = 4},/obj/item/bodybag/cryobag,/turf/simulated/floor,/area/engine/break_room) "agA" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/security/hos) @@ -349,11 +349,11 @@ "agK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/security/prison) "agL" = (/turf/simulated/wall/r_wall,/area/security/brig) "agM" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/security/brig) -"agN" = (/obj/machinery/door/airlock/security{name = "Evidence Storage"; req_access = null; req_access_txt = "1"},/obj/machinery/door/firedoor,/turf/simulated/floor,/area/security/brig) +"agN" = (/obj/structure/table,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/turf/simulated/floor{icon_state = "white"},/area/security/brig) "agO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/security/brig) "agP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/security/warden) "agQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/security/warden) -"agR" = (/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/security/warden) +"agR" = (/obj/structure/stool,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "agS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/security/warden) "agT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/warden) "agU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold4w/general/visible{color = "red"; icon_state = "manifold4w-r-f"; layer = 2.4; level = 1},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) @@ -378,16 +378,16 @@ "ahn" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/camera{c_tag = "Security Medical Station"; dir = 4; network = list("SS13")},/turf/simulated/floor{icon_state = "white"},/area/security/brig) "aho" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/security/warden) "ahp" = (/obj/machinery/door_timer/cell_2{pixel_x = 32},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/security/brig) -"ahq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/main) +"ahq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/decal/cleanable/oil/streak,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "ahr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) -"ahs" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Security Equipment North"; dir = 4; network = list("SS13")},/turf/simulated/floor{tag = "icon-red (NORTHWEST)"; icon_state = "red"; dir = 9},/area/security/main) +"ahs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aht" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper{info = "4 Deployable Barriers
    4 Portable Flashers + Wrench
    3 Sets of Riot Armor
    1 Bulletproof Vest
    1 Ablative Vest
    1 Bomb Suit
    1 Biohazard Suit
    1 Chemical Implant Kit
    1 Tracking Implant Kit
    1 Loyalty Implant Kit
    1 Box of Spare Handcuffs
    1 Box of flashbangs
    1 Box of spare R.O.B.U.S.T. cartridges
    3 Riot shields
    3 Stun Batons
    3 Energy Guns
    3 Laser Rifles
    6 Gas Masks"; name = "Armory Inventory"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "ahu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/warden) "ahv" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/main) "ahw" = (/obj/structure/table,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/glasses/sunglasses/blindfold,/obj/machinery/camera{c_tag = "Brig Execution Chamber"; dir = 4; network = list("SS13")},/turf/simulated/floor{icon_state = "dark"},/area/security/prison) "ahx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "ahy" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) -"ahz" = (/obj/structure/table,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"ahz" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; nitrogen = 0.01; oxygen = 0.01; tag = "icon-warnplate (NORTH)"},/area/maintenance/fpmaint) "ahA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/prison) "ahB" = (/obj/structure/sign/goldenplaque,/turf/simulated/wall/r_wall,/area/security/hos) "ahC" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/obj/machinery/atmospherics/valve,/turf/simulated/floor/plating,/area/security/prison) @@ -416,8 +416,8 @@ "ahZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/security/hos) "aia" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/hos) "aib" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/structure/lattice,/turf/space,/area) -"aic" = (/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/security/prison) -"aid" = (/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/prison) +"aic" = (/obj/structure/table,/obj/item/weapon/dice/d20,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"aid" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/stool,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aie" = (/obj/structure/table,/obj/machinery/light{dir = 8},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0; tag = "icon-alarm0 (EAST)"},/obj/item/weapon/storage/box/evidence,/turf/simulated/floor,/area/security/brig) "aif" = (/obj/structure/stool/bed/chair{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/brig) "aig" = (/obj/structure/table,/turf/simulated/floor,/area/security/brig) @@ -449,7 +449,7 @@ "aiG" = (/obj/structure/filingcabinet/chestdrawer,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera{c_tag = "Security Warden Office"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aiH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "aiI" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) -"aiJ" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/turf/simulated/floor,/area/security/main) +"aiJ" = (/obj/structure/table,/obj/item/ashtray/plastic,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aiK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "aiL" = (/obj/machinery/vending/security,/turf/simulated/floor{icon_state = "red"},/area/security/main) "aiM" = (/obj/machinery/vending/cigarette,/turf/simulated/floor{icon_state = "red"},/area/security/main) @@ -458,22 +458,22 @@ "aiP" = (/obj/machinery/door/window/eastright{dir = 1; name = "Security Delivery"; req_access_txt = "1"},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "delivery"},/area/security/main) "aiQ" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Security"},/turf/simulated/floor/plating,/area/security/main) "aiR" = (/turf/simulated/floor/plating,/area/security/main) -"aiS" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) +"aiS" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/stool,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aiT" = (/obj/structure/table,/obj/item/device/healthanalyzer{pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/security/brig) -"aiU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 1; pixel_y = -2},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 1; pixel_y = 6},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 0; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/security/brig) +"aiU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple{icon_state = "intact"; level = 2},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aiV" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/security/brig) "aiW" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor,/area/security/brig) "aiX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/security/brig) "aiY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "aiZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/security/brig) -"aja" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/brig) -"ajb" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/brig) -"ajc" = (/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/security/warden) -"ajd" = (/obj/machinery/door/airlock/security{name = "Equipment Storage"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main) +"aja" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/stool,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ajb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/table,/obj/item/weapon/crowbar,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ajc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/table,/obj/item/weapon/dice,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ajd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/stool,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aje" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/security/main) -"ajf" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/main) -"ajg" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main) -"ajh" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/table/reinforced,/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) +"ajf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ajg" = (/obj/effect/decal/cleanable/oil/streak,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ajh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Security Lobby"; req_access_txt = "0"},/turf/simulated/floor,/area/security/lobby) "aji" = (/obj/item/device/radio/intercom{pixel_x = -27},/obj/machinery/camera{c_tag = "Brig Toxin Control"; dir = 4; network = list("SS13")},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/prison) "ajj" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{icon_state = "blue"; dir = 8},/area/bridge) "ajk" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/emcloset,/obj/machinery/camera/xray{c_tag = "Security Escape Pod"},/turf/simulated/floor/plating,/area/security/main) @@ -540,8 +540,8 @@ "akt" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/security/main) "aku" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/wall{tag = "icon-swall_f5"; icon_state = "swall_f5"; dir = 2},/area/shuttle/escape_pod3/station) "akv" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/shuttle/escape_pod3/station) -"akw" = (/obj/machinery/door/airlock/glass_security{id_tag = "BrigEast"; name = "Brig"; req_access_txt = "63"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) -"akx" = (/obj/machinery/door/airlock/glass_security{id_tag = "BrigEast"; name = "Brig"; req_access_txt = "63"},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/brig) +"akw" = (/obj/structure/stool/bed/chair{dir = 1},/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"akx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aky" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable,/turf/simulated/floor/plating,/area/security/lobby) "akz" = (/obj/machinery/door/window/brigdoor{dir = 1; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/lobby) "akA" = (/obj/machinery/door/window/brigdoor{dir = 1; req_access_txt = "63"},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/lobby) @@ -561,7 +561,7 @@ "akO" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) "akP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "warning"},/area/engine/engineering) "akQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) -"akR" = (/obj/machinery/door/airlock/security{name = "Interrogation Observervation"; req_access = null; req_access_txt = "63"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) +"akR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "akS" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) "akT" = (/obj/item/device/radio/intercom{pixel_x = 27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/security/brig) "akU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/security/brig) @@ -589,6 +589,7 @@ "alq" = (/obj/machinery/embedded_controller/radio/airlock_controller{airpump_tag = "engineering_east_pump"; exterior_door_tag = "engineering_east_outer"; frequency = 1379; id_tag = "engineering_east_airlock"; interior_door_tag = "engineering_east_inner"; pixel_x = -25; req_access_txt = "10;13"; sensor_tag = "engineering_east_sensor"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "engineering_east_sensor"; pixel_x = -25; pixel_y = 12},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/engine/engineering) "alr" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "engineering_east_outer"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/engine/engineering) "als" = (/obj/item/weapon/wrench,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "engineering_east_airlock"; name = "exterior access button"; pixel_x = -20; pixel_y = 20; req_access_txt = "10;13"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating/airless,/area/engine/engineering) +"alt" = (/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; nitrogen = 0.01; oxygen = 0.01; tag = "icon-warnplate (NORTH)"},/area/security/brig) "alu" = (/turf/space,/area/shuttle/syndicate_elite/station) "alv" = (/obj/structure/grille,/obj/structure/lattice,/turf/space,/area) "alw" = (/obj/structure/grille,/turf/space,/area) @@ -605,12 +606,14 @@ "alH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable,/turf/simulated/floor,/area/security/lobby) "alI" = (/obj/structure/table/reinforced,/obj/structure/table/reinforced{tag = "icon-table_horizontal (NORTH)"; icon_state = "table_horizontal"; dir = 1},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/window/southright,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor,/area/security/lobby) "alJ" = (/obj/structure/table/reinforced{tag = "icon-table_horizontal (NORTH)"; icon_state = "table_horizontal"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/window/southright,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor,/area/security/lobby) +"alK" = (/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; nitrogen = 0.01; oxygen = 0.01; tag = "icon-warnplate (NORTH)"},/area) "alL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/lobby) "alM" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 0; scrub_CO2 = 0; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/security/lobby) "alN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/security/brig) "alO" = (/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/brig) "alP" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/door/window/brigdoor{dir = 8; id = "Cell 3"; name = "Cell 3"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/security/brig) "alQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/unary/vent_pump{dir = 4; layer = 2.4; on = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/security/brig) +"alR" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "alS" = (/turf/simulated/floor/carpet,/area/security/detectives_office) "alT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/carpet,/area/security/detectives_office) "alU" = (/obj/structure/table/woodentable,/obj/machinery/requests_console{pixel_x = 30},/obj/item/device/camera{name = "detectives camera"; desc = "A one use - polaroid camera. 30 photos left."; pixel_x = 0; pixel_y = 0; pictures_left = 30},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) @@ -622,6 +625,7 @@ "ama" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/window/reinforced/tinted{dir = 8; icon_state = "twindow"; tag = ""},/turf/simulated/floor/plating,/area/security/brig) "amb" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 1},/turf/simulated/floor/plating,/area/security/brig) "amc" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted,/obj/structure/window/reinforced/tinted{dir = 1},/obj/structure/window/reinforced/tinted{dir = 4; icon_state = "twindow"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/security/brig) +"amd" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "1"},/turf/simulated/floor,/area/security/range) "ame" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor,/area/security/brig) "amf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable,/turf/simulated/floor/plating,/area/security/brig) "amg" = (/obj/machinery/flasher{id = "Cell 1"; pixel_x = 0; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/simulated/floor,/area/security/brig) @@ -636,6 +640,7 @@ "amp" = (/obj/machinery/flasher{id = "Cell 3"; pixel_x = 0; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/brig) "amq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/security/brig) "amr" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/brig) +"ams" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/glass_security{name = "Firing Range"; req_access_txt = "1"},/turf/simulated/floor,/area/security/range) "amt" = (/obj/item/weapon/storage/secure/safe{pixel_x = -23},/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "amu" = (/obj/structure/stool,/turf/simulated/floor/carpet,/area/security/detectives_office) "amv" = (/obj/structure/table/woodentable,/obj/structure/noticeboard{pixel_x = 30; pixel_y = 0},/obj/item/weapon/book/manual/security_space_law,/obj/item/weapon/handcuffs,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) @@ -644,7 +649,7 @@ "amy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "amz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) "amA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "dark"},/area/security/brig) -"amB" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) +"amB" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/prison) "amC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) "amD" = (/obj/machinery/door_timer/cell_1{dir = 4; pixel_x = 32; pixel_y = 0},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/brig) "amE" = (/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1475; listening = 0; name = "Station Intercom (Security)"; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/lobby) @@ -652,6 +657,7 @@ "amG" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/lobby) "amH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/lobby) "amI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor,/area/security/lobby) +"amJ" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/prison) "amK" = (/obj/machinery/door_timer/cell_3{dir = 8; pixel_x = -32; pixel_y = 0},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/brig) "amL" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "amM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/security/detectives_office) @@ -673,11 +679,13 @@ "anc" = (/obj/item/device/radio/intercom{pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/brig) "and" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/security/brig) "ane" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; layer = 2.4; level = 2; on = 1},/turf/simulated/floor,/area/security/brig) +"anf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/recharger/wallcharger{pixel_x = 0; pixel_y = 30},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/main) "ang" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/lobby) "anh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/security/lobby) "ani" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/security/lobby) "anj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/lobby) "ank" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/lobby) +"anl" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/turf/simulated/floor,/area/security/main) "anm" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "ann" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/computer/security/wooden_tv,/turf/simulated/floor{icon_state = "grimy"},/area/security/detectives_office) "ano" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/start{name = "Detective"},/obj/structure/stool/bed/chair/office/dark{dir = 1},/turf/simulated/floor/carpet,/area/security/detectives_office) @@ -714,6 +722,7 @@ "anT" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/security/brig) "anU" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/security/brig) "anV" = (/obj/structure/table,/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/brig) +"anW" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Security Equipment North"; dir = 4; network = list("SS13")},/obj/machinery/recharger/wallcharger{pixel_x = 0; pixel_y = 30},/turf/simulated/floor{tag = "icon-red (NORTHWEST)"; icon_state = "red"; dir = 9},/area/security/main) "anX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor/plating,/area/security/brig) "anY" = (/obj/machinery/flasher{id = "Cell 2"; pass_flags = 0; pixel_x = 0; pixel_y = -26},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/security/brig) "anZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor,/area/security/lobby) @@ -731,7 +740,7 @@ "aol" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "neutral"; dir = 1},/area/security/detectives_office) "aom" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access_txt = "4"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) "aon" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fsmaint) -"aoo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"aoo" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor,/area/security/prison) "aop" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aoq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aor" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) @@ -755,7 +764,7 @@ "aoJ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/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 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/security/lobby) "aoK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/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 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/security/lobby) "aoL" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/security/lobby) -"aoM" = (/obj/machinery/door/airlock/glass_security{name = "Security Lobby"; req_access_txt = "0"},/obj/machinery/door/firedoor,/turf/simulated/floor,/area/security/lobby) +"aoM" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/turf/simulated/floor,/area/security/prison) "aoN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/security/lobby) "aoO" = (/turf/simulated/wall/r_wall,/area/security/detectives_office) "aoP" = (/obj/structure/closet{name = "Evidence Closet"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) @@ -796,6 +805,7 @@ "apy" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) "apz" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) "apA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"apB" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/turf/simulated/floor,/area/security/main) "apC" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "security_inner"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple{dir = 4; icon_state = "intact"; level = 2},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "apD" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "security_pump"},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "security_sensor"; pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "apE" = (/obj/machinery/embedded_controller/radio/airlock_controller{airpump_tag = "security_pump"; exterior_door_tag = "security_outer"; frequency = 1379; id_tag = "security_airlock"; interior_door_tag = "security_inner"; pixel_x = 0; pixel_y = 25; req_access_txt = "13"; sensor_tag = "security_sensor"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) @@ -816,13 +826,13 @@ "apT" = (/obj/machinery/photocopier,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) "apU" = (/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) "apV" = (/obj/machinery/computer/forensic_scanning,/obj/machinery/light,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office) -"apW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fsmaint) -"apX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"apW" = (/obj/structure/table,/obj/item/weapon/folder/red,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"apX" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/item/weapon/handcuffs,/obj/item/device/flash,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "apY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/table,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "apZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aqa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/maintenance/fsmaint) "aqb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/wall,/area/maintenance/fsmaint) -"aqc" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fpmaint) +"aqc" = (/obj/structure/table,/obj/item/weapon/folder/red,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) "aqd" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "aqe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "aqf" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fpmaint) @@ -842,10 +852,12 @@ "aqt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/hallway/primary/fore) "aqu" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/hallway/primary/fore) "aqv" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway East"; dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/hallway/primary/fore) +"aqw" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/structure/table/reinforced,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/ointment{pixel_y = 4},/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "aqx" = (/turf/simulated/wall/r_wall,/area/maintenance/fsmaint) "aqy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aqz" = (/obj/structure/table,/turf/simulated/floor/plating,/area/maintenance/fsmaint) -"aqA" = (/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"aqA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/item/device/assembly/timer,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) +"aqB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/table,/obj/item/weapon/folder/red,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) "aqC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/stool,/turf/simulated/floor/plating{tag = "icon-warnplate (NORTHEAST)"; icon_state = "warnplate"; dir = 5},/area/maintenance/fsmaint) "aqD" = (/turf/simulated/floor/plating,/area/maintenance/fpmaint2) "aqE" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "arrivals_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "13"},/turf/simulated/floor/plating,/area/maintenance/fpmaint2) @@ -860,8 +872,9 @@ "aqN" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/turf/simulated/floor,/area/hallway/primary/fore) "aqO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/hallway/primary/fore) "aqP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall,/area/maintenance/fsmaint) +"aqQ" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/item/device/taperecorder{pixel_y = 0},/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "aqR" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Security Maintenance APC"; pixel_y = 24},/turf/simulated/floor/plating,/area/maintenance/fsmaint) -"aqS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"aqS" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/turf/simulated/floor/plating,/area/security/warden) "aqT" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aqU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/item/weapon/wrench,/turf/simulated/floor/plating{tag = "icon-warnplate (WEST)"; icon_state = "warnplate"; dir = 8},/area/maintenance/fsmaint) "aqV" = (/obj/machinery/atmospherics/binary/pump{dir = 1; icon_state = "intact_off"; name = "Gas pump"; on = 0},/turf/simulated/floor/plating{tag = "icon-warnplate (EAST)"; icon_state = "warnplate"; dir = 4},/area/maintenance/fsmaint) @@ -895,7 +908,7 @@ "arx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 1; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "ary" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "arz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) -"arA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"arA" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Evidence Storage"; req_access = null; req_access_txt = "1"},/turf/simulated/floor,/area/security/brig) "arB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/wall,/area/maintenance/fsmaint) "arC" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHWEST)"; icon_state = "warnplate"; dir = 10},/area/maintenance/fsmaint) "arD" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating{tag = "icon-warnplate (SOUTHEAST)"; icon_state = "warnplate"; dir = 6},/area/maintenance/fsmaint) @@ -1013,12 +1026,12 @@ "atL" = (/turf/simulated/floor/wood{tag = "icon-wood-broken6"; icon_state = "wood-broken6"},/area/crew_quarters/sleep) "atM" = (/turf/simulated/floor/wood{tag = "icon-wood-broken"; icon_state = "wood-broken"},/area/crew_quarters/sleep) "atN" = (/obj/machinery/power/apc{dir = 8; name = "Fitness Room APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/fitness) -"atO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/crew_quarters/fitness) -"atP" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor,/area/crew_quarters/fitness) -"atQ" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/crew_quarters/fitness) -"atR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor,/area/crew_quarters/fitness) -"atS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/crew_quarters/fitness) -"atT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor,/area/crew_quarters/fitness) +"atO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Armory"; req_access = null; req_access_txt = "3"},/turf/simulated/floor,/area/security/warden) +"atP" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/obj/item/device/radio,/obj/item/weapon/crowbar,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) +"atQ" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/item/weapon/folder/red,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"atR" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/weapon/folder/red,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"atS" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/door/airlock/glass_command{name = "Head of Security"; req_access_txt = "58"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) +"atT" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Evidence Storage"; req_access = null; req_access_txt = "3"},/turf/simulated/floor,/area/security/warden) "atU" = (/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/crew_quarters/fitness) "atV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor/plating,/area/crew_quarters/fitness) "atW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor/plating,/area/crew_quarters/fitness) @@ -1058,12 +1071,12 @@ "auE" = (/obj/machinery/door/airlock{id_tag = "Dorm5"; name = "Cabin 1"},/turf/simulated/floor/wood,/area/crew_quarters/sleep) "auF" = (/obj/machinery/door/airlock{id_tag = "Dorm6"; name = "Cabin 2"},/turf/simulated/floor/wood,/area/crew_quarters/sleep) "auG" = (/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "neutral"; dir = 8},/area/crew_quarters/fitness) -"auH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/crew_quarters/fitness) +"auH" = (/obj/structure/sign/barsign,/turf/simulated/wall,/area/crew_quarters/bar) "auI" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/fitness) "auJ" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/fitness) "auK" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/fitness) "auL" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window/eastright{base_state = "left"; icon_state = "left"; name = "Fitness Ring"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/fitness) -"auM" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/crew_quarters/fitness) +"auM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/fitness) "auN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/crew_quarters/fitness) "auO" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor,/area/crew_quarters/fitness) "auP" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor,/area/crew_quarters/fitness) @@ -1105,7 +1118,7 @@ "avz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/beach/water,/area/crew_quarters/fitness) "avA" = (/turf/simulated/floor/beach/water,/area/crew_quarters/fitness) "avB" = (/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/beach/water,/area/crew_quarters/fitness) -"avC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor,/area/crew_quarters/fitness) +"avC" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/fitness) "avD" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/crew_quarters/fitness) "avE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/crew_quarters/fitness) "avF" = (/obj/machinery/computer/HolodeckControl,/turf/simulated/floor,/area/crew_quarters/fitness) @@ -1136,6 +1149,8 @@ "awe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "awf" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fpmaint) "awg" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) +"awh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/crew_quarters/fitness) +"awi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/crew_quarters/fitness) "awj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 4; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "awk" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/wall,/area/crew_quarters/sleep) "awl" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/stool/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor/carpet{icon_state = "carpetnoconnect"},/area/crew_quarters/sleep) @@ -1147,7 +1162,7 @@ "awr" = (/obj/structure/table/woodentable,/obj/item/weapon/coin/silver,/turf/simulated/floor,/area/crew_quarters/sleep) "aws" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/simulated/floor,/area/crew_quarters/fitness) "awt" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/crew_quarters/fitness) -"awu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/crew_quarters/fitness) +"awu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/crew_quarters/fitness) "awv" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "green"; dir = 4},/area/crew_quarters/fitness) "aww" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/fitness) "awx" = (/obj/structure/table,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/turf/simulated/floor,/area/crew_quarters/fitness) @@ -1178,6 +1193,7 @@ "awW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/wall/r_wall,/area/ai_monitored/storage/eva) "awX" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) "awY" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor,/area/hallway/primary/fore) +"awZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "whitehall"; dir = 4},/area/crew_quarters/fitness) "axa" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "axb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "axc" = (/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/crew_quarters/sleep) @@ -1191,7 +1207,7 @@ "axk" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor/beach/water,/area/crew_quarters/fitness) "axl" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/beach/water,/area/crew_quarters/fitness) "axm" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/beach/water,/area/crew_quarters/fitness) -"axn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/crew_quarters/fitness) +"axn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/crew_quarters/fitness) "axo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "green"; dir = 4},/area/crew_quarters/fitness) "axp" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor,/area/crew_quarters/fitness) "axq" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor,/area/crew_quarters/fitness) @@ -1245,12 +1261,12 @@ "aym" = (/obj/machinery/atm{pixel_y = -32},/turf/simulated/floor{icon_state = "neutral"},/area/crew_quarters/sleep) "ayn" = (/turf/simulated/floor{icon_state = "neutral"; dir = 6},/area/crew_quarters/sleep) "ayo" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/newscaster{pixel_y = -28},/turf/simulated/floor{dir = 10; icon_state = "neutral"},/area/crew_quarters/fitness) -"ayp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutralcorner"},/area/crew_quarters/fitness) -"ayq" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor,/area/crew_quarters/fitness) -"ayr" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/item/stack/medical/ointment{pixel_y = 4},/turf/simulated/floor,/area/crew_quarters/fitness) -"ays" = (/obj/structure/stool{pixel_y = 8},/turf/simulated/floor,/area/crew_quarters/fitness) -"ayt" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor,/area/crew_quarters/fitness) -"ayu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor,/area/crew_quarters/fitness) +"ayp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/decal/cleanable/robot_debris,/turf/simulated/floor/plating,/area/maintenance/fsmaint) +"ayq" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/crew_quarters/fitness) +"ayr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/crew_quarters/fitness) +"ays" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/crew_quarters/fitness) +"ayt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/simulated/floor{tag = "icon-escapecorner (WEST)"; icon_state = "escapecorner"; dir = 8},/area/crew_quarters/fitness) +"ayu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{dir = 2; icon_state = "whitecorner"},/area/crew_quarters/fitness) "ayv" = (/obj/machinery/camera{c_tag = "Fitness Room South"; dir = 1},/obj/machinery/light,/turf/simulated/floor{icon_state = "green"; dir = 4},/area/crew_quarters/fitness) "ayw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/crew_quarters/fitness) "ayx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/crew_quarters/fitness) @@ -1293,7 +1309,7 @@ "azi" = (/obj/structure/closet/wardrobe/pjs,/turf/simulated/floor{icon_state = "neutral"; dir = 6},/area/crew_quarters/sleep) "azj" = (/turf/simulated/wall,/area/crew_quarters/toilet) "azk" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) -"azl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/light,/turf/simulated/floor{dir = 10; icon_state = "neutral"},/area/crew_quarters/fitness) +"azl" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/crew_quarters/fitness) "azm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "neutral"},/area/crew_quarters/fitness) "azn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{icon_state = "neutral"},/area/crew_quarters/fitness) "azo" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "neutral"},/area/crew_quarters/fitness) @@ -2215,6 +2231,7 @@ "aQU" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/storage/secure/briefcase,/turf/simulated/floor{icon_state = "blue"; dir = 4},/area/bridge) "aQV" = (/obj/structure/window/reinforced/tinted{dir = 5},/turf/simulated/floor/plating,/area/bridge) "aQW" = (/obj/machinery/computer/communications,/turf/simulated/floor{dir = 1; icon_state = "blue"},/area/bridge) +"aQX" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/crew_quarters/fitness) "aQY" = (/obj/structure/table/reinforced,/obj/item/device/flash,/obj/item/device/flash,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/bridge) "aQZ" = (/obj/machinery/computer/crew,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/simulated/floor{icon_state = "whitehall"; dir = 2},/area/bridge) "aRa" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/firstaid/regular,/turf/simulated/floor{dir = 6; icon_state = "whitehall"},/area/bridge) @@ -2762,8 +2779,8 @@ "bbw" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/central) "bbx" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/hallway/primary/central) "bby" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/simulated/floor,/area/crew_quarters/bar) -"bbz" = (/obj/structure/sign/maltesefalcon/left,/turf/simulated/wall,/area/crew_quarters/bar) -"bbA" = (/obj/structure/sign/maltesefalcon/right{pixel_y = 0},/turf/simulated/wall,/area/crew_quarters/bar) +"bbz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/crew_quarters/fitness) +"bbA" = (/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/crew_quarters/fitness) "bbB" = (/turf/simulated/wall,/area/hallway/primary/starboard) "bbC" = (/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/starboard) "bbD" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 2"; dir = 2; network = list("SS13")},/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/starboard) @@ -3484,8 +3501,8 @@ "bpq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/hallway/primary/central) "bpr" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/hallway/primary/central) "bps" = (/obj/machinery/computer/secure_data,/turf/simulated/floor{dir = 9; icon_state = "blue"},/area/crew_quarters/heads) -"bpt" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/packageWrap,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/turf/simulated/floor,/area/crew_quarters/heads) -"bpu" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor,/area/crew_quarters/heads) +"bpt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "escapecorner"},/area/crew_quarters/fitness) +"bpu" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/crew_quarters/fitness) "bpv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/power/apc{dir = 1; name = "Head of Personnel APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/crew_quarters/heads) "bpw" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/crew_quarters/heads) "bpx" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/lattice,/turf/space,/area) @@ -3771,6 +3788,7 @@ "buR" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "buS" = (/obj/machinery/door/firedoor/border_only{dir = 4; layer = 2.6; name = "Firelock East"},/turf/simulated/floor{dir = 1; icon_state = "whitepurplecorner"},/area/medical/research{name = "Research Division"}) "buT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) +"buU" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/light,/obj/structure/table,/obj/item/stack/medical/bruise_pack,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/item/stack/medical/ointment{pixel_y = 4},/turf/simulated/floor{dir = 10; icon_state = "neutral"},/area/crew_quarters/fitness) "buV" = (/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access_txt = "47"},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "buW" = (/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "buX" = (/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},/turf/simulated/shuttle/plating,/area/medical/research{name = "Research Division"}) @@ -3951,7 +3969,7 @@ "byq" = (/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/hallway/primary/central) "byr" = (/obj/structure/filingcabinet/chestdrawer,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/simulated/floor{icon_state = "blue"; dir = 10},/area/crew_quarters/heads) "bys" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Personnel's Desk"; departmentType = 5; name = "Head of Personnel RC"; pixel_y = -30},/obj/machinery/camera{c_tag = "Head of Personnel's Office"; dir = 1},/turf/simulated/floor,/area/crew_quarters/heads) -"byt" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 29},/turf/simulated/floor,/area/crew_quarters/heads) +"byt" = (/obj/structure/table,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/turf/simulated/floor,/area/crew_quarters/heads) "byu" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/crew_quarters/heads) "byv" = (/obj/machinery/blackbox_recorder,/turf/simulated/floor/bluegrid,/area/server) "byw" = (/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = "0"},/turf/simulated/floor/bluegrid,/area/server) @@ -4474,6 +4492,7 @@ "bIt" = (/obj/machinery/holosign/surgery,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access_txt = "45"},/turf/simulated/floor,/area/medical/sleeper) "bIu" = (/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/sleeper) "bIv" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/stool/bed,/obj/item/weapon/bedsheet/medical,/turf/simulated/floor{dir = 4; icon_state = "whiteredcorner"},/area/medical/sleeper) +"bIw" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/packageWrap,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/crew_quarters/heads) "bIx" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bIy" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bIz" = (/obj/structure/disposalpipe/segment,/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) @@ -4761,6 +4780,7 @@ "bNV" = (/obj/machinery/door/airlock/medical{name = "Patient Room 2"; req_access_txt = "5"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bNW" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) "bNX" = (/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "lightsout"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) +"bNY" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/obj/machinery/recharger/wallcharger{pixel_x = 0; pixel_y = 30},/turf/simulated/floor,/area/crew_quarters/heads) "bOb" = (/obj/machinery/vending/wallmed1{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "whiteblue"},/area/medical/medbay) "bOc" = (/obj/structure/noticeboard{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{dir = 1; icon_state = "whiteblue"},/area/medical/medbay) "bOd" = (/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/pill/methylphenidate,/obj/item/weapon/reagent_containers/pill/citalopram,/obj/item/weapon/reagent_containers/pill/citalopram,/obj/item/weapon/reagent_containers/pill/methylphenidate,/obj/item/weapon/reagent_containers/glass/bottle/stoxin,/obj/item/clothing/suit/straight_jacket{layer = 3},/obj/structure/closet/secure_closet{name = "Psychiatrist's Locker"; req_access = null; req_access_txt = "64"},/turf/simulated/floor{dir = 1; icon_state = "whiteblue"},/area/medical/medbay) @@ -9903,18 +9923,13 @@ "dRG" = (/obj/structure/stool/bed/chair/office/dark,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/start{name = "Warden"},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "dRH" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law{pixel_x = -3; pixel_y = 5},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = 30; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "dRI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera{c_tag = "Security Processing"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) -"dRJ" = (/obj/structure/table,/obj/item/device/assembly/timer,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "dRK" = (/obj/structure/stool/bed/chair{dir = 8},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) "dRL" = (/obj/machinery/camera{c_tag = "Security Office South"; dir = 8; network = list("SS13")},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/main) "dRM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/secure_closet/warden,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) -"dRN" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table/reinforced,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) -"dRO" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack{pixel_x = 10; pixel_y = 2},/obj/item/device/flash,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) "dRQ" = (/obj/machinery/deployable/barrier,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0; tag = "icon-alarm0 (EAST)"},/obj/machinery/camera{c_tag = "Armory"; dir = 4; network = list("SS13")},/turf/simulated/floor{icon_state = "bot"; dir = 1},/area/security/warden) "dRR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/camera{c_tag = "Brig Evidence Storage"; dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/brig) -"dRS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/table,/obj/item/weapon/handcuffs,/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) "dRT" = (/obj/structure/closet/secure_closet/brig,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/camera{c_tag = "Prison Wing Processing"; dir = 1},/turf/simulated/floor{icon_state = "red"},/area/security/prison) "dRU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/landmark{name = "blobstart"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/security/warden) -"dRV" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/item/device/radio,/obj/item/weapon/crowbar,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) "dRW" = (/obj/structure/stool/bed/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/landmark/start{name = "Security Officer"},/turf/simulated/floor,/area/security/main) "dRX" = (/obj/structure/stool/bed/chair/comfy/black{dir = 8},/obj/effect/landmark/start{name = "Head of Security"},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) @@ -9988,42 +10003,42 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMaaiaaiaaiaaiacNacOacPdRDaaMaaMaaMaaMaaaabMacRacyacSachacAacBacTabMacUacVacWacXacYabXaclacmacZadaacLabYaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMadbadcaddadeadfadgadhadiaaqadjadkaaMaaaabMadlacyadmachacAacBadnabMadoadpadqadradsabXabXabXdRCaduabXabYaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMahwadwadxadwadyadzacsadAadBadCadCaaMaaaabMabMadDadEachadFadGabMabMadHadIadqadJaaSabXadKafbadMadNadOadPadPadQadRadPadPaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMadSadTadUadVadWadXadYadZaaGaeaaebaaMaaaaaaabMaecaedachaeeaefabMaegaaSaehaeiaejaaSaekdRzaemaenaeoaepadPaeqaeraesaetadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMaaiaaiaaiaaiacNaeuaevaewaexaexaexaexaexaexabMabMaeydRAaeAabMabMahsahqaeDaeEaeFaeGaeHaeHaeHaeIaeJaeKaeLaeMaeNaeOaePaeQaeRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMadSadTadUadVadWadXadYadZaaGaeaaebaaMaaaaaaabMaecaedachaeeaefabMaegaaSamsaeiamdaaSaekdRzaemaenaeoaepadPaeqaeraesaetadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacMaaiaaiaaiaaiacNamJaevamBaexaexaexaexaexaexabMabMaeydRAaeAabMabManWanfaeDanlaeFaeGaeHaeHaeHaeIaeJaeKaeLaeMaeNaeOaePaeQaeRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaeSaeTaeUaeVaeWadAaexaeXaeYaeYaeYaeYaegaeZafadRUafcafdaegafeaffafgafhafiafjafkaflaflafmafnafoafpafqafrafsaftafuafvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiafwafxafyafzadhafAaexafBafCafDafEafDafFafGafHafIafJafKafLafMafNafOaiSafQafRafSdRVdRWafVafWafXafYafZagaagbdRXagdadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiajiaaoagfaggaghagiaexagjdRRafDaglagmaegdRQagoagpagqagraegagsaenagtaiSagvagwaemagxdRKdRSdRKaemagAagBagCagDagEagFaeLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiagGagHdRTagJagKadAaexagLagMagNagOagLabMagPagQagRagSagTaegagsaenagtdRNagVagWagXagYagYagZagYahaahbahcahdaheaheagcahgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiahhahiahjaexahkahlahmdRIahmahoafTaiGahrdRMahtahuahvaenagtaiSahxahyaemdRJdRKahzdRKdRLahBafUahDahEahFadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahGahHadAaexahIahJahKahLahMahNahOahPahQahRahSahTahUahVagtajhahxahXaemagxdRKdROagyahYadPadPadPahZaiaadPaibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaicaevaidaexaieaifaigaihahMaiiaijdRGahrailaimahuainaenagtaioaipaiqairaisaitaemaiuafPabYabYabXaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaexaexaexaexagLaiwaixaiyaexaizaiAaiBaihahMaegaiCaiDahQaiEdRHaegaiFaiHaiIaiJaffaiKabXaiLaiMaiNaiOaiPaiQaiRabXabXabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexagnaiTaiUaiVaiWaiXaiYaexaiZajaaiZajbaiZaegagPagQajcagSagTaegabXajdajeabXajfajgabXdRudRtdRtdRvabXaexaiRajkajlajmajmajnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiafwafxafyafzadhafAaexafBafCafDafEafDatTafGafHafIafJafKatOafMafNafOatPafQafRafSatQdRWatRafWafXatSafZagaagbdRXagdadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiajiaaoagfaggaghagiaexagjdRRafDaglagmaegdRQagoagpagqagraegagsaenagtaqAagvagwaemaqcdRKaqBdRKaemagAagBagCagDagEagFaeLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiagGagHdRTagJagKadAaexagLagMarAagOagLabMagPagQaqSagSagTaegagsaenagtaqQagVagWagXagYagYagZagYahaahbahcahdaheaheagcahgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiahhahiahjaexahkahlahmdRIahmahoafTaiGahrdRMahtahuahvaenagtapXahxahyaemapWdRKapWdRKdRLahBafUahDahEahFadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahGahHadAaexahIahJahKahLahMahNahOahPahQahRahSahTahUahVagtaqwahxahXaemaqcdRKaqcagyahYadPadPadPahZaiaadPaibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaoMaevaooaexaieaifaigaihahMaiiaijdRGahrailaimahuainaenagtaioaipaiqairaisaitaemaiuafPabYabYabXaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaexaexaexaexagLaiwaixaiyaexaizaiAaiBaihahMaegaiCaiDahQaiEdRHaegaiFaiHaiIapBaffaiKabXaiLaiMaiNaiOaiPaiQaiRabXabXabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexagNaiTafVaiVaiWaiXaiYaexaiZagnaiZafYaiZaegagPagQagxagSagTaegabXafFajeabXaeEafLabXdRudRtdRtdRvabXaexaiRajkajlajmajmajnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexahnajpajqajrajsajtajuajvajvajwajxajyajvajvajvajyajzajwajAajBajxajCajDahfagUajGajHdRsajJajKajLajMajNajOajPajQajRajSajTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaexajUajVajWajXajYajZakaakbakcakdakeakfakgakhakbakgakiakjakkakgakeakfakgakgagkagIakoaiBakpakqakraksaexaiRaktakuajmajmakvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaexaexaexaexaexaexaexaexakwakxaexaexaexagLakyakzakAacnadvacraeCagLaexaexaexacqageakHakHakIakJakKakLakHakHakMabXabXabYabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafakNaexakOdRrakQakRakSakTakUakVdRqakXakYakZalaacaalcaldaleakXdRpalgakUalhaliakHaljalkallalmalnaloakHalpalWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvalvalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaexaexaexaexaexaexaexaexaelaeuaewaexaexagLakyakzakAacnadvacraeCagLaexaexaexacqageakHakHakIakJakKakLakHakHakMabXabXabYabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafakNaexakOdRrakQaejakSakTakUakVdRqakXakYakZalaacaalcaldaleakXdRpalgakUalhaliakHaljalkallalmalnaloakHalpalWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvalvalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaalwalwalvalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafalxaexalyalzalAaexalBalCalDalEalFalGalHalIalJabZalLalMalealNalOalEalPalQaliakHadLalSalSalTalSalUakHalpalWaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaaaaafaaaalXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaafaaaalXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafalYalZaexamaambamcaexdRoameamfamgamhamiamjamkamlammalLamnaleamiamoampamqamrdRnakHamtamualSalTalSamvakHalpalWaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafamwaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafamxaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafalYalxaexamyamzamAamBamCamDaexaexaexagLamEamnamFamGamHamIdRmagLaexaexaexamKamLamMamNamOamPamQalSamRakHalpalWaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalvalvalvalvalvaaaaaaaaaamSaaaaaaaaaalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafamxaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafalYalxaexamyamzamAaehamCamDaexaexaexagLamEamnamFamGamHamIdRmagLaexaexaexamKamLamMamNamOamPamQalSamRakHalpalWaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalvalvalvalvalvaaaaaaaaaamSaaaaaaaaaalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwalwalwalvalvaaaaaaaaaamTaaaaaaaaaalvalvalwalwalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafamUamVamWamXaexamYamZanaaexanbancandanedRxakXanganhanianjankamnaleakXdRyalgakUalhanmakHannanoanpalTalSanqakHalpalWaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalXaaaaaaaafaafaafaaaaaaamSaafaafaaaaafaafaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaafaafaaaaaaaaaamTaafaafaaaaafaafaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaamUalYalYalxaexamYanrdRwaexansantanuanvanwanxanyanzanAamnanBamnaleanCalOanDanEanFanGakHanHanIanJanKanLanMakHalpalWalWaafaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalvaafanNanNanNanNanNaafanOaafanNanNanNanNanNaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafanPanPanPanPanPaafanQaafanPanPanPanPanPaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaamUalYanRalxaexanSanTanUaexanVahpanXanYamhamianZaoaaobaocanBaodaleamiamoaoeamfaofaogakHaohaoiaojaokaolaolaomaonaooalWalWalWaopaoqaoralWaafaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalvaafaosaotaotaotaotaouaovaowaoxaoxaoxaoxaoyaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaalvaafaozaoAaoAaoAaoAaoBaoCaoDaoEaoEaoEaoEaoFaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaamUaoGaoHaexaexagLagLagLagLagLagLagLagLagLagLaoIaoJaoKaoLaoMaoNaoMagLagLagLagLagLagLaoOaoPaoQaoRaoRaoSaoTaoUaoVaoWalWaoXaoYaoZaoZaoZalWalWalWalWapaalualualualualuaaaaaaaaaaaaaaaaaaalvaafapbapbapbapbapbaafaovaafapbapbapbapbapbaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafapcapcapcapcapcaafaoCaafapcapcapcapcapcaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamUapdapeapdapfapdapgapgaphapiapjapgapgapgapgapkapgaplapgapgapmapnapoappapqaprapsaptakHapuapvapwapxapyapzaoOapAaoWalValValValVaezaeBapCapDapEapFapGalualualualualuaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaafaovaaaaaaaaaaafaaaaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaafaoCaaaaaaaaaaafaaaaaaaaaalXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafapdapHapIapdapdapJapmapKapmapmapmapmapmapmapLapmapMapmapmapNapOapPapmapQapmapmapmakHapRapSapTapUapwapVaoOapWapXapYapYapYapZaelaqaaqbalWalWalWalValualualualualuaaaaaaaaaaaaaaaaaaalvaafanNanNanNanNanNaafaovaafanNanNanNanNanNaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafanPanPanPanPanPaafaoCaafanPanPanPanPanPaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapdaqcaqdaqeaqfaqgaqhaqiaqjaqjaqjaqjaqjaqjaqkaqlaqmaqnaqoaqpaqqaqraqsaqtaquaqsaqvakHaoOaoOaoOaoOaoOaoOaqxaqyaoWaqzaqzaqzaqAaciadtacQaqCalWaaaaaaaaaalualualuaaaaaaaaaaaaaaaaaaaaaalvaafaosaotaotaotaotaouaovaowaoxaoxaoxaoxaoyaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqDaqEaqDaaaaaaaaaaaaaaaaaaaaaalvaafaozaoAaoAaoAaoAaoBaoCaoDaoEaoEaoEaoEaoFaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapdaoGaqFapdaqGaqGaqHaqIaqJaqGaqGaqKaqKaqKaqKaqLaqKaqKaqMaqNaqOalWalWaqPalWacgalWalWaoYalValValValValVaqRaqyaoWalValValVaqSapZaqTaqUaqValWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafapbapbapbapbapbaafaovaafapbapbapbapbapbaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaqWaqXaqWaaaaaaaaaaaaaaaaaaaaaalvaafapcapcapcapcapcaafaoCaafapcapcapcapcapcaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaagapdaqYaoHapdayZarearbarcardazaaqGarfargarhariarjarkarlarmapmarnalWaroarparqarqarqarqarqarrarqarqarqarsartaruarvarwarxaryarzarAarBarCarDalWaafarEarFarFarGarFarFarHaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaaaaovaaaaaaaaaaafaaaaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaafaafaaaaaaaaaamTaafaafaaaaafaafaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaamUalKalKaltaexamYanrdRwaexansantanuanvanwanxanyanzanAamnanBamnaleanCalOanDanEanFanGakHanHanIanJanKanLanMakHalRalWalWaafaaaaaaaaaaaaaaaaaaaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalvaafanNanNanNanNanNaafanOaafanNanNanNanNanNaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafanPanPanPanPanPaafanQaafanPanPanPanPanPaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaaaamUalYanRalxaexanSanTanUaexanVahpanXanYamhamianZaoaaobaocanBaodaleamiamoaoeamfaofaogakHaohaoiaojaokaolaolaomaonakRalWalWalWaopaoqaoralWaafaaaaaaaaaalualualualualuaaaaaaaaaaaaaaaaaaalvaafaosaotaotaotaotaouaovaowaoxaoxaoxaoxaoyaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaalvaafaozaoAaoAaoAaoAaoBaoCaoDaoEaoEaoEaoEaoFaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaamUaoGaoHaexaexagLagLagLagLagLagLagLagLagLagLaoIaoJaoKaoLajhaoNajhagLagLagLagLagLagLaoOaoPaoQaoRaoRaoSaoTaoUaoVakxalWaoXaoYaoZaoZakwalWalWalWalWapaalualualualualuaaaaaaaaaaaaaaaaaaalvaafapbapbapbapbapbaafaovaafapbapbapbapbapbaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafapcapcapcapcapcaafaoCaafapcapcapcapcapcaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamUapdapeapdapfapdapgapgaphapiapjapgapgapgapgapkapgaplapgapgapmapnapoappapqaprapsaptakHapuapvapwapxapyapzaoOapAaoWalValValVajgaezaeBapCapDapEapFapGalualualualualuaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaafaovaaaaaaaaaaafaaaaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaafaoCaaaaaaaaaaafaaaaaaaaaalXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafapdapHapIapdapdapJapmapKapmapmapmapmapmapmapLapmapMapmapmapNapOapPapmapQapmapmapmakHapRapSapTapUapwapVaoOajfajdajcajbapYajaaiUaqaaqbalWalWalWalValualualualualuaaaaaaaaaaaaaaaaaaalvaafanNanNanNanNanNaafaovaafanNanNanNanNanNaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafanPanPanPanPanPaafaoCaafanPanPanPanPanPaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapdahzaqdaqeaqfaqgaqhaqiaqjaqjaqjaqjaqjaqjaqkaqlaqmaqnaqoaqpaqqaqraqsaqtaquaqsaqvakHaoOaoOaoOaoOaoOaoOaqxaqyaidaicaqzaiJaiSaciadtacQaqCalWaaaaaaaaaalualualuaaaaaaaaaaaaaaaaaaaaaalvaafaosaotaotaotaotaouaovaowaoxaoxaoxaoxaoyaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqDaqEaqDaaaaaaaaaaaaaaaaaaaaaalvaafaozaoAaoAaoAaoAaoBaoCaoDaoEaoEaoEaoEaoFaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapdaoGaqFapdaqGaqGaqHaqIaqJaqGaqGaqKaqKaqKaqKaqLaqKaqKaqMaqNaqOalWalWaqPalWacgalWalWaoYalValValValValVaqRaqyahqagRagRagRahsapZaqTaqUaqValWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalvaafapbapbapbapbapbaafaovaafapbapbapbapbapbaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaqWaqXaqWaaaaaaaaaaaaaaaaaaaaaalvaafapcapcapcapcapcaafaoCaafapcapcapcapcapcaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaagapdaqYaoHapdayZarearbarcardazaaqGarfargarhariarjarkarlarmapmarnalWaroarparqarqarqarqarqarrarqarqarqarsartaruarvarwarxaryarzayparBarCarDalWaafarEarFarFarGarFarFarHaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaaaaovaaaaaaaaaaafaaaaaaaaaalwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarIarJarKaaaarLarMarNaaaaafarOaqDarOaaaaaaaaaaaaaaaaaaaaaalwaaaaaaaaaaafaaaaaaaaaaoCaaaaaaaaaaafaaaaaaaaaalwaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafapdapdapdapdaoHapdarParQarRarSarTarUaqGarVarWarWarWarjarXarYarZasaasbalWascasdaseaseaseaseasfasdaseasgaseasdaseaseasgaseashasiasjaskaslasmasnasnasnasoaspaspaspaspaspasoasnaaaaaaaaaaaaalvaafanNanNanNanNanNaafaovaafanNanNanNanNanNaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaasqasrassasrasqastasuastasqaafarOasvaswaaaaaaaaaaaaaaaaaaaaaalvaafanPanPanPanPanPaafaoCaafanPanPanPanPanPaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafapdasxasyapdaoHapdaszasAasBasCasDasEaqGasFarWasGasGarjarWarYapgapmasHalWasIasJasKasLasMasNasOasPasNasQasRasSasNasTasUasVasWasXasYasZataatbatcatdasnasoaspaspaspaspaspasoasnaafaaaaaaaaaalwaafaosaotaotaotaotaouaovaowaoxaoxaoxaoxaoyaafalvaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaateasratfasrateastatgastateathatiatjatkatlatlatmathathaafaaaalvaafaozaoAaoAaoAaoAaoBaoCaoDaoEaoEaoEaoEaoFaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafapdatnatoatpatqatratsattatuatvatwatxaqGatyatzatAatBatCatDarYapgapmarnalWasIasJatEatFasMasNatGatHasNatIatJatKasNatLatJatMasnatNatOatPatQatRatSatTatUatVaspaspaspaspaspatWasnasnasnaaaaaaalwaaaapbapbapbapbapbaafaovaafapbapbapbapbapbaaaalXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaateatXatYatZateauaaubaucateaqDaqDaudaueaufaugauhauiathaaaaaaalXaaaapcapcapcapcapcaafaoCaafapcapcapcapcapcaaaalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaagapdaujaoGapdaukapdaulaumaunauoaupauqaqGaurausautautauuauvauwauxauyauzauAauBauCatEasLasMasNauDatHasNasNauEasNasNasNauFasNasnauGauHauIauJauKauLauMauNauOaspaspaspaspaspauPauQauRauSaaaaaaalwaaaaafaaaaafaafaaaaaaaovaaaaaaaafaaaaaaaafaaaalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaateauTauUauVateauTauUauVateauWauXauYauYauYauYauZavaaqWaaaaaaalvaaaaafaaaaafaafaaaaaaavbaaaaaaaafaaaaaaaafaaaalvaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaagapdapdapdapdaukapdavcavdavdaveavdaraavdavfavgavgavgavgavhaviavjapmavkalWavlasdavmasLavnavoauDavpavqavravsavsavtavuavsavvavwavxauHavyavzavAavBavCavDavEaspaspaspaspaspavEavFavGavHaaaaaaalwalwalvaaaaaaaafaaaaaaaovaaaaafaafaafaafalvalvalvaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaasqateavIavJasqateavIavJasqathavKathathathathathavLarOaaaaaaalvalvalvaaaaaaaafaaaavMavNavMaafaafaafaafalvalvalvaafapdapdapdapdavOavPavPavPavPavPavPavPavQapdapdavRavSavTapdavUaoGavVavWavXavYavYavYavZavYawaavYawbawcawdawdaweaweawfawgajoajEaqaawjawkawlawmawnasNauDawoawoawpawqawqawrawpawoawoawsawtawuavyavzavAavBavCawvawwaspaspaspaspaspawwawxavGavHaaaaaaaaaaaaaafaafaaaaafaaaaaaawyaaaaaaaafaaaaaaaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawzawAawAawAawBawAawAawAawCawDawEawCawCawCawFathawGarOaaaaafaafaaaaaaaaaaaaaafaaaawHawIawJaafaaaaafaaaaaaaaaaaaaaaapdaoGaoGawKaoGaoGaoGaoGaoGaoGaoGaoGawLawMawNawOawOawOawOawOawOawPawQawRawSawSawSawSawTawUawSawVawWawTawSawSawSawSawXawYajFaxaaxbauCasNasNasNasNatGaxcawoawpawqaxdawqaxeaxfaxgaxhaxiatOaxjaxkaxlaxmaxnaxoaxpaspaspaspaspaspaxqaxraxsaxtaaaaaaaaaaaaaaaaafaaaaafaaaaxuaxvaxuaaaaafaaaaaaaafaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwaxxaxyaxzaxAaxyaxyaxBaxzaxyaxCaxDaxEaxEaxFathawGatiaafaafaaaaaaaaaaaaaaaaafaxGaxHaxIaxJaxKaaaaafaaaaaaaaaaaaaaaapdaoGapdaxLaxMaxNaxNaxNaxNaxNaxNaxNaxOaxLaxPaxQaxQaxQaxQaxQaxQaxQaxRaxSawSaxTaxUaxVaxWaxXaxYaxZayaaybaycaxUaydawSayeapmayfalWaygasJasKasLasMasNauDayhayiaxgaxgayjaykaylaymaynavwayoaypayqayraysaytayuayvaywaspaspaspaspaspayxasnasnasnaaaaaaaaaaaaaafaafaafaafaaaayyayzayyaaaaafaaaaaaaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafateawzayAawzayBaxyaxyayCawzayAawzayDaxxaxAayEathawGathathayFatlatlatlatlatmathayGayHayIayJayGapdapdavRavSavTapdapdapdaoGaqYaxLaaaaafaaaaafaaaaafaaaaafaaaaxLaxPaxQayKayLayMayNayOaxQaxRaoGawSayPayPayQayRaySayTayUayVayWayXayYayYawSayeapmazcalWaygasJatEasLasMasNatGazdazeazfazgazhaziazjazjazkazjasnazlazmaznazoazpazqasnazraspaspaspaspaspazrasnaafaaaaaaaaaaaaaaaaafaafaaaaafazsaztazuazvazwaafaaaaaaaafaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaateasratfasrateastatgastateathatiatjatkatlatlatmathathaafaaaalvaafaozaoAaoAaoAaoAaoBaoCaoDaoEaoEaoEaoEaoFaafalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafapdatnatoatpatqatratsattatuatvatwatxaqGatyatzatAatBatCatDarYapgapmarnalWasIasJatEatFasMasNatGatHasNatIatJatKasNatLatJatMasnatNayuazlayqayraysaytatUatVaspaspaspaspaspatWasnasnasnaaaaaaalwaaaapbapbapbapbapbaafaovaafapbapbapbapbapbaaaalXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaateatXatYatZateauaaubaucateaqDaqDaudaueaufaugauhauiathaaaaaaalXaaaapcapcapcapcapcaafaoCaafapcapcapcapcapcaaaalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaagapdaujaoGapdaukapdaulaumaunauoaupauqaqGaurausautautauuauvauwauxauyauzauAauBauCatEasLasMasNauDatHasNasNauEasNasNasNauFasNasnauGauMauIauJauKauLavCauNauOaspaspaspaspaspauPauQauRauSaaaaaaalwaaaaafaaaaafaafaaaaaaaovaaaaaaaafaaaaaaaafaaaalvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaateauTauUauVateauTauUauVateauWauXauYauYauYauYauZavaaqWaaaaaaalvaaaaafaaaaafaafaaaaaaavbaaaaaaaafaaaaaaaafaaaalvaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaagapdapdapdapdaukapdavcavdavdaveavdaraavdavfavgavgavgavgavhaviavjapmavkalWavlasdavmasLavnavoauDavpavqavravsavsavtavuavsavvavwavxawhavyavzavAavBawiavDavEaspaspaspaspaspavEavFavGavHaaaaaaalwalwalvaaaaaaaafaaaaaaaovaaaaafaafaafaafalvalvalvaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaasqateavIavJasqateavIavJasqathavKathathathathathavLarOaaaaaaalvalvalvaaaaaaaafaaaavMavNavMaafaafaafaafalvalvalvaafapdapdapdapdavOavPavPavPavPavPavPavPavQapdapdavRavSavTapdavUaoGavVavWavXavYavYavYavZavYawaavYawbawcawdawdaweaweawfawgajoajEaqaawjawkawlawmawnasNauDawoawoawpawqawqawrawpawoawoawsawtawuavyavzavAavBawiawvawwaspaspaspaspaspawwawxavGavHaaaaaaaaaaaaaafaafaaaaafaaaaaaawyaaaaaaaafaaaaaaaafaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaawzawAawAawAawBawAawAawAawCawDawEawCawCawCawFathawGarOaaaaafaafaaaaaaaaaaaaaafaaaawHawIawJaafaaaaafaaaaaaaaaaaaaaaapdaoGaoGawKaoGaoGaoGaoGaoGaoGaoGaoGawLawMawNawOawOawOawOawOawOawPawQawRawSawSawSawSawTawUawSawVawWawTawSawSawSawSawXawYajFaxaaxbauCasNasNasNasNatGaxcawoawpawqaxdawqaxeaxfaxgaxhaxiawZaxjaxkaxlaxmaxnaxoaxpaspaspaspaspaspaxqaxraxsaxtaaaaaaaaaaaaaaaaafaaaaafaaaaxuaxvaxuaaaaafaaaaaaaafaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwaxxaxyaxzaxAaxyaxyaxBaxzaxyaxCaxDaxEaxEaxFathawGatiaafaafaaaaaaaaaaaaaaaaafaxGaxHaxIaxJaxKaaaaafaaaaaaaaaaaaaaaapdaoGapdaxLaxMaxNaxNaxNaxNaxNaxNaxNaxOaxLaxPaxQaxQaxQaxQaxQaxQaxQaxRaxSawSaxTaxUaxVaxWaxXaxYaxZayaaybaycaxUaydawSayeapmayfalWaygasJasKasLasMasNauDayhayiaxgaxgayjaykaylaymaynavwayobptbpubbAbbAaQXbbzayvaywaspaspaspaspaspayxasnasnasnaaaaaaaaaaaaaafaafaafaafaaaayyayzayyaaaaafaaaaaaaafaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafateawzayAawzayBaxyaxyayCawzayAawzayDaxxaxAayEathawGathathayFatlatlatlatlatmathayGayHayIayJayGapdapdavRavSavTapdapdapdaoGaqYaxLaaaaafaaaaafaaaaafaaaaafaaaaxLaxPaxQayKayLayMayNayOaxQaxRaoGawSayPayPayQayRaySayTayUayVayWayXayYayYawSayeapmazcalWaygasJatEasLasMasNatGazdazeazfazgazhaziazjazjazkazjasnbuUazmaznazoazpazqasnazraspaspaspaspaspazrasnaafaaaaaaaaaaaaaaaaafaafaaaaafazsaztazuazvazwaafaaaaaaaafaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafazxasqazyauUazzazAazBazCazDazzauUazEazFasqazGazHathazIazJazJazJazJazJazJavaazKazLayGazMazNazOayGazPaoGaoGaoGaoGaoGaoGaoGaoGazQaxLaafazRazRazRazRazRazRazRaafaxLaxPaxQazSazTazUazVazSaxQaxRazWawSawSawSawSazXazYaxUazZazYaAaawSawSawSawSayeapmaAbalWaygasJatEasLasMasNauDaAcazjazjazjazjazjazjaAdaAeaAfazjasnasnasnasnaAgasnasnazraspaspaspaspaspazrasnaaaaaaaaaaaaaaeaaaaaaaaaaaaaafaAhaAiaAjaAkaAhaafaaaaaaaafaaaaaaaaaaaaaaaaaaaafaafaaaaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwayAaAlaAmaAmaAmaAmaAnayAaxwaAoasqaApaAqaAraAraAraAraAraAraAraAravLaAsazLayGaAtaAuaAvayGaAwaAxaAwaAwaAwaAwaAwaAwaAwaAwaAyaaaazRaAzaAAaABaACaADazRaaaaxLaxPaxQazSaAEaAFaAGazSaxQaxRapdawSaAHaAIayQaAJaAKayTaALaAKaAMaANaAOaAOawSayeapmayfalWaAPasdavmasLavnaAQauDaAcazjaARaAeaASaASazjaAdaATaAfazjaAUaAVaAUaAWaAXaAYaafaAZaBaaBaaBaaBaaBaaBbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaAhaBcaBdaBeaAhaafaaaaaaaBfaBgaBgaBgaBgaBhaBiaBgaBgaBgaBgaBjaBjaBgaBkaBlaBmaBnaBoaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaBpaBqaBraBqaBqaBsaBtaBqaBqaBraBuaBvasqayBaBwaBxaByaBzaBAaBBaBCaBDaAravLaBEathayGayGaBFaBGaAyaBHaBIaBJaBKaBLaBMaBNaBOaBPaBQaAyaafazRaBRaBSaBTaBUaBVazRaafaxLaxPaxQaBWaBXaBYaBXaBZaxQaxRaCaawSaxUaxUaCbaCcazYaCdazZazYaCeaCfaxUaydawSayeapmayfalWaygawkawlaCgawnasNaChaCiazjaCjaAeaAeaAeazkaCkaClaCmazjaCnaCoaCoaCpaAXaAYaaaaafaaaaafaaaaafaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaAhaCqaCraCsaAhaAYaCtaCuaCvaCwaCxaCxaCxaCxaCxaCxaCyaCzaCzaCAaCBaCCaCzaCzaCDaCEaCFaafaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10043,7 +10058,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaVWaVXaVYayBaVZaWaaWbaWcaWdaWeaWfaWgaWhaWcaWiaWjaWkaWlaWmaOXaWnaQzaWoaWpaWqaWqaWraWqaWqaWqaWsaWtaWuaQqaWvaWwaWxaWyaQqaQqaWzaOUaWAaPlaWBaWCaWDaWEaWEaWFaItaItaItaItaItaWGaWHaWIaWJaWKaWLaTLaWMaWNaWOaWPaWQaWRaWSaWTaWUaWVaWWaWKaWXaWYaWZaXaaXbaXcaXdaXeaXfaItaXgaIHaXhaTWaTXaTYaKnaTZaUaaTYaUbaRgaXiaXjaXkaXlaIOaRmaVwaRmaXmaRmaXnaUjaXoaIOaPMaUmaRvaRvaRvaRvaUpaPQaISaXpaXqaXraXsaXtaXuaXvaXvaXvaXvaXvaXvaXwaXxaXyaRDaRDaRDaRDaRDaRDaXzaXAaXBaSZaSZaSZaSZaTaaRJaaaaafaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGayAauUayAaxyaXCaTjaXDaXEaXFaXFaXFaXFaXGaXHaThaXIaXJaXKaXLaXMaXMaXMaXNaXMaXOaXPaXQaXRaXSaXSaXTaQFaXUaXVaXWaXXaXYaXZaYaaYaaYbaYcaYdaYeaYfaYgaYgaYgaYhaPlaYiaItaYjaYkaYlaYmaYnaYoaYpaYqaYraYsaYtaPpaPpaPpaPpaPpaPpaYuaYvaYwaYxaWNaYyaYzaPpaYoaYnaYAaYBaYkaYCaItaItaSwaKnaYDaKnaKnaKnaNjaKnaKnaUbaKnaYEaYEaYEaYEaYFaYGaYHaRmaRmaRmaYIaYJaYKaIOaYLaYMaRvaYNaYNaYOaYMaYPaISaYQaYRaYSaYTaOCaOCaOCaOCaYUaOCaOCaOCaYVaXAaRDaRDaRDaRDaRDaRDaRDaXzaXAaXBaSZaSZaYWaSZaYXaRJaafaafaaaaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaYYaYZaVYayBaZaaZbaZcaZdaZeaZfaZgaXFaZhaZiaThaZjaZkaXKaXLaZlaZmaZnaZoaXMaZpaZqaZraOXaZsaZtaZuaZvaOXaZwaZxaZyaZyaZyaZyaZzaZyaZyaZAaZBaZBaZBaZCaZBaZDaZEaZFaZGaZHaZIaZJaZJaZJaZJaZKaZLaZMaZLaZNaZOaZOaZOaZOaZOaZOaZOaZOaZPaZQaZQaZRaZQaZQaZQaZQaZQaZQaZQaYCaItaItaIHaZSaZTaZUaZVaKnaZWaKnaZXaZYaKnaYEaZZbaababaIOaIOaIObacbadbadbadaIOaIOaIObaeaRvaRvbafbagbahbaiaNqaISbajaYRbakaDVbalbambanaVGbaobambapaVGbaqaEbbaraHDbasaRDaRDbasaHDbataEbbaubavbawaSZaSZaTaaRJaaaaafaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaafaxwbaxaORbayaTjbazbazbaAbaBbaCbaAbaDbazaThbaEbaFbaGbaHbaIbaIbaJbaKbaIbaLaZqbaMaOXaZsaZtbaNbaOaOXbaPaZxaZybaQbaRbaRbaRbaSaZybaTbaUbaVbaWaZEaZEaZEaZEaItaItbaXbaYbaZbbabbbbbcbbdbbebbfbbgaZNaZObbhbbibbjbbkbblbbmbbnaZPaZQbbobbpbbqbbrbbsbbtbbubbvaZQbbwbbxbbxaIHaIHaIHaIHaIHbbyaSwbbybbzbbAaIHaRdaIHaIHaIHbbBbbCbbCbbCbbCbbCbbCbbDbbCbbBaNqbbEbbEbbFaYSaYSaYSaYSbbBbajbbGbakaDVaDVaDVaDVaDVbbHaDVaDVaDVaDVaEbbbIbbJbbKbbKbbKbbKbbLaEbaEbbbMaSZbbNaSZaSZaTaaTbaQhaQhaVVaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaafaxwbaxaORbayaTjbazbazbaAbaBbaCbaAbaDbazaThbaEbaFbaGbaHbaIbaIbaJbaKbaIbaLaZqbaMaOXaZsaZtbaNbaOaOXbaPaZxaZybaQbaRbaRbaRbaSaZybaTbaUbaVbaWaZEaZEaZEaZEaItaItbaXbaYbaZbbabbbbbcbbdbbebbfbbgaZNaZObbhbbibbjbbkbblbbmbbnaZPaZQbbobbpbbqbbrbbsbbtbbubbvaZQbbwbbxbbxaIHaIHaIHaIHaIHbbyaSwbbyauHaIHaIHaRdaIHaIHaIHbbBbbCbbCbbCbbCbbCbbCbbDbbCbbBaNqbbEbbEbbFaYSaYSaYSaYSbbBbajbbGbakaDVaDVaDVaDVaDVbbHaDVaDVaDVaDVaEbbbIbbJbbKbbKbbKbbKbbLaEbaEbbbMaSZbbNaSZaSZaTaaTbaQhaQhaVVaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazxasqbbOaAmaVYateateateateateatebbPbayaTjaThaThaThaThaThaThaThaThaThbbQaQqaXKaXLaZlbbRbbSbbTaXMbbUbbVbbWaOXaZsaZtbbXbbYaOXbaPaZxaZybaRbbZbbZbaRbbZaZybaTbcabcbbcbbccbcdbceaZEbcfaItaYjbcgbchbcibcjbckbckbcjbclbcmaZNaZObcnbcobcpbcqbcrbcsbctbcubcvbcwbcxbbvbcybczbcAbbvbcBaZQaYCbcCaItbcDbcEbcFaYSaYSaYSaYSaYSaYSaYSbcGaYSaYSaYSaYSbcHaYSaYSaYSaYSaYSaYSaYSaYSbcIaYSaYSaYSaYSaYSaYSaYSaYSbcJbcKbcLbcMbcNbcMbcObcMbcPbcQbcRbcMbcSbcMbcTbcUbcMbcMbcMbcMbcMbcMbcVbcWbcXbcYbbNaSZaSZaSZaUFbcZaUEaUFaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdaaaaaafbdbazAaxAbdcbddbdebdebdebdebdebdebdfbdgaOUaWzaQqaXKaXLaXMaXMbdhbdiaXMaOXaOXbdjaOXaZsbdkbbXbdlaOXbaPaZxaZybdmbdnbaRbbZbdoaZybaTbdpbcbbcbbcbbdqbdraZEbdsaItaYjbdtbdubdvbdwbdxbdybdzbclbdAaZNaZObdBbdCbdDbdDbdDbdEbdFaZObdGbdHbbvbbvbcybdIbcAbbvbdJaZQbdKaItaItbcDbcEbcFaYSaYSaYSaYSaYSaYSaYSbdLaYSaYSaYSaYSaYSaYSbdMbcMbcMbcMbcMbcMbcMbdNbcMbcMbcMbcMbcMbcMbcMbdObdPbdQbdRaYSaYSaYSaYSaYSaYRaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSbdSbcJbdTaSZaSZbbNaSZaSZbdUaVUaQhaQhaTcaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdabdaaVWaVXaVYayBbdVbdWbdXbdXbdYbdXbdXbdXbdZaOUaOUaOUaOUaXKaXLaZlbeabebbecaXMbedbeebefaOXaOXaOXaOXbegaOXbaPaZxaZybehbaRbbZbeibejaZybaTaZEbekbcbbcbbelbemaZEbenaItaYjbeobepbdvbdwbeqberbdzbclbesaZNbetbeubevbdDbewbdDbcobexbeybdGbezbeAbeBbeCbeCbeDbbvbeEaZQaYCbeFaItbcDbcEbcFaYSbeGaYSbeHbeIbeIbeIbeJbeIbeIbeIbeKaYSaYSaYSaYSbeLaYSbeGbeMbeNbeOaYSaYSaYSbePbeQbeRbeSbeTbeUbeVaYSaYSaYSaYSaYSbeWbeXbeLaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSbcJbeYbeZbfabfbbfcbfdbfebffaafaaaaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10053,7 +10068,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazxasqbbOaAmaYZaTeaTeaTeaAmaTebjZayBaxyaxybdXbkabkbbkcbiubkdbkebkfbkgbkgbkgbkgbkhbkibkibkibgSbgSbgSbkjbkkbkkbkkbklaZybkmbknbkobkpbkqbkrbksbktbkubkvbkwbkxbkybkzbkAbkBbkCbkDbkEbkEbkFbjcbkGbkHbkIbkJbkKbkLbkMbkNbkObkPbkQbiUbiUbiUbiUbkRbiUbiUbiUbiUbkSbkTbkUbkVbkWbkXbkYbkZblablbblcaItaItbgdbldbleblfbjhblgblhbjkblibljblkbljbljbllblmblnbloblpblqbgjblrbjublsbjubjwbltbgkblublvblwblxbgpbjCblyblzblAblAblBblCblDblEblEblEblFblGblHblIblJblKblLblMblNblOblPbjXblQblRblSbgzbipblTaafaafaaaaaaaaaaaaaaaaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablUblVauUayAawAawAawAaORaxyaxybdXblWblXbiublYbdXbdXbdXaOUblZbmabmbbmcbmbbmbbmbbmcbmbaOUaOUaZyaZyaZybmdaZybksbksbmebksbksbksbksbksbmfbmgbmhbmibmjbmkbmkbmkbmlbmmbmnbmobmpbmqbmrbmsbmtbmtbmubmvbmwbmxbmybmzbmAbmBbmCbmDbmEbmFbmGbmDbmHbmBbmIbhwbmJbmKbmJaZQaZQaZQbmLbdGbmMaItaItbgdbmNbmObmPbjhbmQbmRbjkbjmbhKbmSbmTbmUbmVbgjbmWbmXbmYbmZbgjblrbnabjubjubjwbjxbgkbgpbgpbgpbgpbgpbjCbjDbnbbncbndbnebnfbngbnhbnibnjbnjbnkbjKbnlbgubnmbnnbnobgzbnpbnqbnrbnsbntbnubgzbipbnvaaaaafaaaaaeaaaaaaaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaablUauUauUayAaxxaxxaxxbnwaxxaxxbdXbnxbnybnzbiubdXaaaaaaaaaaafaafbnAbnAbnAbnAbnAbnAbnAaaaaaabnBbnCbnDbnEbnFbksbksbksbksbksbksbksbksbnGbiIbcbbnHbnIbnJaZEaZEbnKbkyaZEaZEbnLbnMbnNbnObnPbnQbnQbnRbnQbnSbnTbnQabHbnUbnVbmDbnWbmFbnWbmDbnXbnUbmIbnYbnZbeCboabobbocbodboebofbogaItbohboibojbokbmPbjhbolbhIbombjmbhKbonboobhKbopbgjbjpboqborbosbgjbotboubovbowboxbowboybozbozbozbozbozboAbjDboBbjFbjFbneboCboDboEboFboGboGboHboIboJbguboKbnnboLbgzboMboNboObnsbjXboPbgzbipboQaaaaafaaaaaaaaaaaaaafboRboSboTboSboTboSboUaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwayAayAboVaTeboWazxasqboXboWbdXboYboZbpabgHbdXaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAaaaaaabpbbpcbksbpdbpebpebpebpebpebpfbpebpebpebpgbphbpibpjbpkbplaZEbpmbelbpnbpobppbenbpqbprbnObnObnQbpsbptbpubpvbpwbnQbpxbpybpzbpAbpBbpCbpBbpDbpEbpFbpGbnYbpHbeCbpIaZQbpJbmJbpKbpLbogaItaItbgdbpMbpNbmPbpObpPbhIbpQbpRbpSbpTbpUbhKbpVbpWbpXbpYbpZbqabgjbgkbqbbgkbgkbqcbqcbqcbqcbqcbqcbqcbqcbjCbjDbnbbncbndbqdbqebqfbqgbqhbqhbqhboHbjKbqibqjbqkbjRbqlbgzbqmbqnbqobqpbjXbqqbgzbipbgBbgBaafaaaaaaaaaaaaaafbqrbqsbqtbqubqubqvbqraafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwayAayAboVaTeboWazxasqboXboWbdXboYboZbpabgHbdXaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAaaaaaabpbbpcbksbpdbpebpebpebpebpebpfbpebpebpebpgbphbpibpjbpkbplaZEbpmbelbpnbpobppbenbpqbprbnObnObnQbpsbIwbNYbpvbpwbnQbpxbpybpzbpAbpBbpCbpBbpDbpEbpFbpGbnYbpHbeCbpIaZQbpJbmJbpKbpLbogaItaItbgdbpMbpNbmPbpObpPbhIbpQbpRbpSbpTbpUbhKbpVbpWbpXbpYbpZbqabgjbgkbqbbgkbgkbqcbqcbqcbqcbqcbqcbqcbqcbjCbjDbnbbncbndbqdbqebqfbqgbqhbqhbqhboHbjKbqibqjbqkbjRbqlbgzbqmbqnbqobqpbjXbqqbgzbipbgBbgBaafaaaaaaaaaaaaaafbqrbqsbqtbqubqubqvbqraafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbqxbqybqzbqAbksbksbksbqBbqBbqBbqBbnEbksbksbksbmfbqCbcbbqDbqEbqFbqGbqHbelbcbbqIbqJbenbpqbqKbqLbqMbqNbqObqPbqQbqRbqSbnQabHbqTbqUbmDbpBbqVbpBbmDbqWbqXbmIbqYbqZbrabrbaZQbrcbmJbrdbpLbogaItbrebgdbrfbrgbmPbrhbribhIbrjbjmbhKbrkbrlbrmbrnbgjbrobrpbrqbrrbgjbrsbrtbrubrvbrwbrxbrybrzbrAbrBbrCbrDbibbicbrEbrFbrGbrHbrIbjJbrJbqhbqhbqhbrKbjKbrLbgubrMbrMbrNbgzbrObrPbrQbrRbjXbrSbgzbipbrTbgBaafaaaaaaaaaaaaaafbrUbrVbqtbqubqtbrWboTaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbrXbrYbrXbrZbsabksbksbksbksbksbksbnEbksbsbaZyaZybscbcbbcbbsdbsebsfbsgbelbcbbcbbshaItbpqbsibsjbskbslbsmbsnbsobspbsqbnQabHbqXbqXbsrbssbstbmDbsubsvbswbsxbsybszbszbszbszbszbszbsAbsBbsCaGGbsDbsEbsFbsGbsHbsIbhIbhIbsJbjmbhKbhKbhKbhKbsKbsLbhKbsMbhKbsNbsObsPbsQbhKbsRbsSbsTbsUbsVbsWbsXbsYbqcbsZbtabtbbtbbtcbtdbtebjJbtfbjKbjKbtgbthbjKbtibjJbtjbtkbtlbtmbtnbtobtpbtqbilbgzbgzbtrbgBbgBbtsbttbttbttbtubjQbqrbqubqtbqubqubqvbqraafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaeaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbtvbtwbtvbtxbksbksbksbqBbqBbqBbqBbnEbksbtybtzaZybtAbcbbcbbsdbtBbtCbsgbtDbtEbpibtFbtGbtHbogaRbbskbtIbtJbtKbtLbtMbtNbtObtPbtQbtRbtSbtTbqVbtTbsvbtUbtVbtVbsybtWbtXbtYbtZbuabubbucbudbueaXebufbugbuhbuibujbukbulbumbunbuobunbupbunbunbuqburbunburbunbunbunbusbutbuubuvbsSbuwbsUbuxbuxbuybuzbqcbjCbjDbuAbuBbuCbuDbuDbjJbuEbuFbuGbjJbuHbjKbuIbuJbuKbuLbuMbuNbuObuPbuQbuRbuSbrMbjRbuTakDbuVbuWbuWbuWbuWbuWbuXbuYboSboTbuZboTboSbvaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From fe077a1f08670a03c4fda868f2330f7a9632ad39 Mon Sep 17 00:00:00 2001 From: meyar Date: Fri, 24 May 2013 06:08:34 -0400 Subject: [PATCH 53/63] Fixes the nuke shuttle (Again. Goddamnit) Fixes the Bar sign (Request by apple master) Fixes the research hazard doors having blind spots. --- maps/tgstation.2.1.0.0.1.dmm | 54 ++++++++++++++++++++---------------- 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index 838ce99de4..5850742599 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -344,6 +344,7 @@ "agF" = (/obj/structure/filingcabinet,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "agG" = (/obj/structure/closet/secure_closet/brig,/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "red"; dir = 10},/area/security/prison) "agH" = (/obj/structure/closet/secure_closet/brig,/obj/machinery/power/apc{cell_type = 2500; name = "Prison Wing APC"; pixel_y = -28},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "red"},/area/security/prison) +"agI" = (/obj/structure/sign/barsign,/turf/simulated/wall,/area/crew_quarters/bar) "agJ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/prison) "agK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/security/prison) "agL" = (/turf/simulated/wall/r_wall,/area/security/brig) @@ -355,6 +356,7 @@ "agR" = (/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/security/warden) "agS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/security/warden) "agT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/warden) +"agU" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "agV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/stool,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "agW" = (/obj/structure/table,/obj/item/weapon/folder/red,/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"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "agX" = (/obj/machinery/hologram/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/security/main) @@ -365,6 +367,7 @@ "ahc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "ahd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "ahe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) +"ahf" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{dir = 2; icon_state = "whitegreencorner"},/area/medical/research{name = "Research Division"}) "ahg" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/security/hos) "ahh" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 101; on = 1; pressure_checks = 1},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/prison) "ahi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/security/prison) @@ -372,16 +375,22 @@ "ahk" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_y = 3},/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) "ahl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) "ahm" = (/turf/simulated/floor{icon_state = "red"; dir = 1},/area/security/brig) +"ahn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{dir = 8; icon_state = "whitegreencorner"},/area/medical/research{name = "Research Division"}) "aho" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/security/warden) +"ahp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/maintenance{name = "Misc Research Maintenance"; req_access_txt = "47"},/turf/simulated/floor/plating,/area/toxins/misc_lab) "ahq" = (/obj/structure/filingcabinet/chestdrawer,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "ahr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) +"ahs" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "aht" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/paper{info = "4 Deployable Barriers
    4 Portable Flashers + Wrench
    3 Sets of Riot Armor
    1 Bulletproof Vest
    1 Ablative Vest
    1 Bomb Suit
    1 Biohazard Suit
    1 Chemical Implant Kit
    1 Tracking Implant Kit
    1 Loyalty Implant Kit
    1 Box of Spare Handcuffs
    1 Box of flashbangs
    1 Box of spare R.O.B.U.S.T. cartridges
    3 Riot shields
    3 Stun Batons
    3 Energy Guns
    3 Laser Rifles
    6 Gas Masks"; name = "Armory Inventory"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "ahu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/security/warden) "ahv" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 1},/area/security/main) +"ahw" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "ahx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "ahy" = (/obj/structure/table,/obj/item/weapon/book/manual/security_space_law,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/obj/item/weapon/book/manual/security_space_law,/turf/simulated/floor{tag = "icon-redfull (NORTHWEST)"; icon_state = "redfull"; dir = 9},/area/security/main) "ahz" = (/obj/structure/table,/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"ahA" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "ahB" = (/obj/structure/sign/goldenplaque,/turf/simulated/wall/r_wall,/area/security/hos) +"ahC" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 4; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "ahD" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "ahE" = (/obj/structure/table/woodentable,/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "ahF" = (/obj/machinery/photocopier,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) @@ -401,6 +410,7 @@ "ahT" = (/obj/structure/table/reinforced{tag = "icon-table_vertical"; icon_state = "table_vertical"},/obj/machinery/door/window/brigdoor{dir = 8; name = "Warden's Desk"; req_access_txt = "3"},/obj/machinery/door/window/eastleft,/turf/simulated/floor/plating,/area/security/warden) "ahU" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor,/area/security/main) "ahV" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) +"ahW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "ahX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main) "ahY" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/main) "ahZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/security/hos) @@ -414,6 +424,7 @@ "aih" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/brig) "aii" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/security/warden) "aij" = (/obj/machinery/computer/secure_data,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) +"aik" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "synd_outer"; locked = 1; name = "Ship External Access"; req_access = null; req_access_txt = "0"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "smindicate"; name = "Outer Airlock"; opacity = 0},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "ail" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aim" = (/obj/structure/table,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/recharger{pixel_y = 0},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "ain" = (/turf/simulated/floor{dir = 8; icon_state = "redcorner"},/area/security/main) @@ -424,6 +435,7 @@ "ais" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/security/main) "ait" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 1},/turf/simulated/floor,/area/security/main) "aiu" = (/turf/simulated/floor{dir = 2; icon_state = "redcorner"},/area/security/main) +"aiv" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1331; master_tag = "synd_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership) "aiw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/security/brig) "aix" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/security/brig) "aiy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/security/brig) @@ -433,6 +445,7 @@ "aiC" = (/obj/machinery/computer/security,/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22; pixel_y = 0; tag = "icon-alarm0 (EAST)"},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aiD" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/crowbar,/obj/item/device/radio,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "aiE" = (/obj/machinery/computer/prisoner,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "dark"},/area/security/warden) +"aiF" = (/obj/machinery/embedded_controller/radio/airlock_controller{airpump_tag = "synd_pump"; exterior_door_tag = "synd_outer"; frequency = 1331; id_tag = "synd_airlock"; interior_door_tag = "synd_inner"; pixel_x = 25; req_access_txt = "0"; sensor_tag = "synd_sensor"},/obj/machinery/airlock_sensor{frequency = 1331; id_tag = "synd_sensor"; pixel_x = 25; pixel_y = 12},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "aiG" = (/obj/machinery/firealarm{dir = 1; pixel_x = 0; pixel_y = -24},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/disposal,/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/main) "aiH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/main) "aiI" = (/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/main) @@ -445,6 +458,7 @@ "aiP" = (/obj/machinery/door/window/eastright{dir = 1; name = "Security Delivery"; req_access_txt = "1"},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "delivery"},/area/security/main) "aiQ" = (/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Security"},/turf/simulated/floor/plating,/area/security/main) "aiR" = (/turf/simulated/floor/plating,/area/security/main) +"aiS" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1331; master_tag = "synd_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "0"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "aiT" = (/obj/structure/table,/obj/item/device/healthanalyzer{pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/security/brig) "aiU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 1; pixel_y = -2},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 1; pixel_y = 6},/obj/item/weapon/reagent_containers/syringe/inaprovaline{pixel_x = 0; pixel_y = 2},/turf/simulated/floor{icon_state = "white"},/area/security/brig) "aiV" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/security/brig) @@ -459,6 +473,9 @@ "aje" = (/obj/structure/sign/securearea,/turf/simulated/wall,/area/security/main) "ajf" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/security/main) "ajg" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "1"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/security/main) +"ajh" = (/obj/machinery/door/airlock/external{frequency = 1331; icon_state = "door_locked"; id_tag = "synd_inner"; locked = 1; name = "Ship External Access"; req_access = null; req_access_txt = "0"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) +"aji" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) +"ajj" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1331; id_tag = "synd_pump"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "ajk" = (/obj/machinery/light/small{dir = 1},/obj/structure/closet/emcloset,/obj/machinery/camera/xray{c_tag = "Security Escape Pod"},/turf/simulated/floor/plating,/area/security/main) "ajl" = (/turf/simulated/floor/plating,/obj/structure/shuttle/engine/propulsion/burst{dir = 4},/turf/simulated/shuttle/wall{tag = "icon-swall_f6"; icon_state = "swall_f6"; dir = 2},/area/shuttle/escape_pod3/station) "ajm" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/escape_pod3/station) @@ -483,6 +500,7 @@ "ajF" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "ajG" = (/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"; pixel_y = 0; tag = ""},/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2 (EAST)"; icon_state = "pipe-j2"; dir = 4},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "ajH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) +"ajI" = (/obj/machinery/telecomms/allinone{intercept = 1},/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/creed) "ajJ" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 1; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "ajK" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) "ajL" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "redcorner"; dir = 4},/area/security/brig) @@ -2744,8 +2762,6 @@ "bbw" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/central) "bbx" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/hallway/primary/central) "bby" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/simulated/floor,/area/crew_quarters/bar) -"bbz" = (/obj/structure/sign/maltesefalcon/left,/turf/simulated/wall,/area/crew_quarters/bar) -"bbA" = (/obj/structure/sign/maltesefalcon/right{pixel_y = 0},/turf/simulated/wall,/area/crew_quarters/bar) "bbB" = (/turf/simulated/wall,/area/hallway/primary/starboard) "bbC" = (/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/starboard) "bbD" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 2"; dir = 2; network = list("SS13")},/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/starboard) @@ -4810,7 +4826,6 @@ "bPk" = (/obj/structure/stool/bed/chair/comfy/teal{tag = "icon-comfychair_teal (WEST)"; icon_state = "comfychair_teal"; dir = 8},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -28},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; level = 2; on = 1},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/medical/medbay) "bPl" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/pen/blue{pixel_x = -3; pixel_y = 2},/obj/item/weapon/pen/red{pixel_x = 2; pixel_y = 6},/obj/machinery/camera{c_tag = "Psychiatric Office"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/simulated/floor{dir = 2; icon_state = "whiteblue"},/area/medical/medbay) "bPm" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2"; icon_state = "pipe-j2"; dir = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 8; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor/plating,/area/maintenance/asmaint) -"bPn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Misc Research Maintenance"; req_access_txt = "47"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/toxins/misc_lab) "bPo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/simulated/floor/plating,/area/toxins/misc_lab) "bPp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door_control{id = "misclab"; name = "Test Chamber Blast Doors"; pixel_x = 6; pixel_y = 30; req_access_txt = "47"},/obj/structure/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab) "bPq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab) @@ -4933,8 +4948,6 @@ "bRD" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/closet/bombcloset,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/toxins/misc_lab) "bRE" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/l3closet/scientist,/obj/machinery/light,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/misc_lab) "bRF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/medical/research{name = "Research Division"}) -"bRG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "whitegreencorner"},/area/medical/research{name = "Research Division"}) -"bRH" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 2; icon_state = "whitegreencorner"},/area/medical/research{name = "Research Division"}) "bRI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/wall/r_wall,/area/toxins/mixing) "bRJ" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/meter,/turf/simulated/floor/plating,/area/maintenance/asmaint2) "bRK" = (/obj/machinery/atmospherics/pipe/vent{dir = 2},/turf/simulated/floor/plating/airless,/area) @@ -5208,9 +5221,6 @@ "bWS" = (/obj/structure/closet,/turf/simulated/floor/plating,/area/maintenance/asmaint) "bWT" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/turf/simulated/floor/plating,/area/maintenance/asmaint) "bWU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/toxins/xenobiology) -"bWV" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) -"bWW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) -"bWX" = (/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 4; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "bWY" = (/turf/simulated/wall/r_wall,/area/maintenance/starboardsolar) "bWZ" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple{icon_state = "intact"; level = 2},/turf/simulated/floor/plating,/area/maintenance/starboardsolar) "bXa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/simulated/wall/r_wall,/area/maintenance/starboardsolar) @@ -6673,7 +6683,6 @@ "czd" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/simulated/shuttle/floor,/area/centcom/evac) "cze" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "czf" = (/obj/structure/table,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) -"czg" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "smindicate"; name = "Outer Airlock"; opacity = 0},/obj/machinery/door/airlock/external{layer = 2.6; req_access_txt = "150"},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "czh" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_station/start) "czi" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/simulated/shuttle/wall{dir = 1; icon_state = "diagonalWall3"},/turf/unsimulated/floor{dir = 1; icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; tag = "icon-gravsnow_corner (WEST)"},/area/syndicate_station/start) "czj" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{tag = "icon-gravsnow_corner (NORTHEAST)"; icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 5},/area/syndicate_mothership) @@ -6691,13 +6700,11 @@ "czv" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/simulated/floor/wood,/area/syndicate_mothership) "czw" = (/turf/simulated/floor/wood{tag = "icon-wood-broken6"; icon_state = "wood-broken6"},/area/syndicate_mothership) "czx" = (/obj/machinery/door/window{dir = 4; name = "Equipment Room"; req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) -"czy" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "czz" = (/turf/unsimulated/wall/fakeglass{dir = 1; icon_state = "fakewindows"; tag = "icon-fakewindows (WEST)"},/area/syndicate_mothership) "czA" = (/obj/structure/stool/bed,/obj/item/weapon/bedsheet/red,/turf/simulated/floor/wood{tag = "icon-wood-broken4"; icon_state = "wood-broken4"},/area/syndicate_mothership) "czB" = (/turf/simulated/floor/wood,/area/syndicate_mothership) "czC" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Equipment Room"; req_access_txt = "150"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "czD" = (/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},/turf/simulated/shuttle/plating,/area/syndicate_station/start) -"czE" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/head/helmet/space/syndicate,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) "czF" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{tag = "icon-gravsnow_corner (SOUTHWEST)"; icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 10},/area/syndicate_mothership) "czG" = (/obj/effect/landmark{name = "Syndicate-Spawn"},/turf/simulated/floor/wood{tag = "icon-wood-broken"; icon_state = "wood-broken"},/area/syndicate_mothership) "czH" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = -32; subspace_transmission = 1; syndie = 1},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/syndicate_station/start) @@ -6727,7 +6734,6 @@ "cAf" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/structure/table,/obj/effect/spawner/newbomb/timer/syndicate,/turf/unsimulated/floor{icon_state = "floor4"},/area/syndicate_station/start) "cAg" = (/obj/machinery/door/poddoor{id = "smindicate"; name = "Outer Airlock"},/turf/simulated/shuttle/plating,/area/syndicate_station/start) "cAh" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/obj/structure/flora/bush,/turf/unsimulated/floor{tag = "icon-gravsnow_corner (WEST)"; icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"; dir = 8},/area/syndicate_mothership) -"cAi" = (/obj/machinery/telecomms/allinone{intercept = 1},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "cAj" = (/obj/effect/landmark{name = "Nuclear-Bomb"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "cAk" = (/obj/structure/rack,/obj/item/weapon/crowbar,/obj/item/weapon/extinguisher,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start) "cAl" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating/airless,/area/syndicate_station/start) @@ -10041,7 +10047,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaVWaVXaVYayBaVZaWaaWbaWcaWdaWeaWfaWgaWhaWcaWiaWjaWkaWlaWmaOXaWnaQzaWoaWpaWqaWqaWraWqaWqaWqaWsaWtaWuaQqaWvaWwaWxaWyaQqaQqaWzaOUaWAaPlaWBaWCaWDaWEaWEaWFaItaItaItaItaItaWGaWHaWIaWJaWKaWLaTLaWMaWNaWOaWPaWQaWRaWSaWTaWUaWVaWWaWKaWXaWYaWZaXaaXbaXcaXdaXeaXfaItaXgaIHaXhaTWaTXaTYaKnaTZaUaaTYaUbaRgaXiaXjaXkaXlaIOaRmaVwaRmaXmaRmaXnaUjaXoaIOaPMaUmaRvaRvaRvaRvaUpaPQaISaXpaXqaXraXsaXtaXuaXvaXvaXvaXvaXvaXvaXwaXxaXyaRDaRDaRDaRDaRDaRDaXzaXAaXBaSZaSZaSZaSZaTaaRJaaaaafaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGayAauUayAaxyaXCaTjaXDaXEaXFaXFaXFaXFaXGaXHaThaXIaXJaXKaXLaXMaXMaXMaXNaXMaXOaXPaXQaXRaXSaXSaXTaQFaXUaXVaXWaXXaXYaXZaYaaYaaYbaYcaYdaYeaYfaYgaYgaYgaYhaPlaYiaItaYjaYkaYlaYmaYnaYoaYpaYqaYraYsaYtaPpaPpaPpaPpaPpaPpaYuaYvaYwaYxaWNaYyaYzaPpaYoaYnaYAaYBaYkaYCaItaItaSwaKnaYDaKnaKnaKnaNjaKnaKnaUbaKnaYEaYEaYEaYEaYFaYGaYHaRmaRmaRmaYIaYJaYKaIOaYLaYMaRvaYNaYNaYOaYMaYPaISaYQaYRaYSaYTaOCaOCaOCaOCaYUaOCaOCaOCaYVaXAaRDaRDaRDaRDaRDaRDaRDaXzaXAaXBaSZaSZaYWaSZaYXaRJaafaafaaaaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaYYaYZaVYayBaZaaZbaZcaZdaZeaZfaZgaXFaZhaZiaThaZjaZkaXKaXLaZlaZmaZnaZoaXMaZpaZqaZraOXaZsaZtaZuaZvaOXaZwaZxaZyaZyaZyaZyaZzaZyaZyaZAaZBaZBaZBaZCaZBaZDaZEaZFaZGaZHaZIaZJaZJaZJaZJaZKaZLaZMaZLaZNaZOaZOaZOaZOaZOaZOaZOaZOaZPaZQaZQaZRaZQaZQaZQaZQaZQaZQaZQaYCaItaItaIHaZSaZTaZUaZVaKnaZWaKnaZXaZYaKnaYEaZZbaababaIOaIOaIObacbadbadbadaIOaIOaIObaeaRvaRvbafbagbahbaiaNqaISbajaYRbakaDVbalbambanaVGbaobambapaVGbaqaEbbaraHDbasaRDaRDbasaHDbataEbbaubavbawaSZaSZaTaaRJaaaaafaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaafaxwbaxaORbayaTjbazbazbaAbaBbaCbaAbaDbazaThbaEbaFbaGbaHbaIbaIbaJbaKbaIbaLaZqbaMaOXaZsaZtbaNbaOaOXbaPaZxaZybaQbaRbaRbaRbaSaZybaTbaUbaVbaWaZEaZEaZEaZEaItaItbaXbaYbaZbbabbbbbcbbdbbebbfbbgaZNaZObbhbbibbjbbkbblbbmbbnaZPaZQbbobbpbbqbbrbbsbbtbbubbvaZQbbwbbxbbxaIHaIHaIHaIHaIHbbyaSwbbybbzbbAaIHaRdaIHaIHaIHbbBbbCbbCbbCbbCbbCbbCbbDbbCbbBaNqbbEbbEbbFaYSaYSaYSaYSbbBbajbbGbakaDVaDVaDVaDVaDVbbHaDVaDVaDVaDVaEbbbIbbJbbKbbKbbKbbKbbLaEbaEbbbMaSZbbNaSZaSZaTaaTbaQhaQhaVVaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaUGaafaxwbaxaORbayaTjbazbazbaAbaBbaCbaAbaDbazaThbaEbaFbaGbaHbaIbaIbaJbaKbaIbaLaZqbaMaOXaZsaZtbaNbaOaOXbaPaZxaZybaQbaRbaRbaRbaSaZybaTbaUbaVbaWaZEaZEaZEaZEaItaItbaXbaYbaZbbabbbbbcbbdbbebbfbbgaZNaZObbhbbibbjbbkbblbbmbbnaZPaZQbbobbpbbqbbrbbsbbtbbubbvaZQbbwbbxbbxaIHaIHaIHaIHaIHbbyaSwbbyagIaIHaIHaRdaIHaIHaIHbbBbbCbbCbbCbbCbbCbbCbbDbbCbbBaNqbbEbbEbbFaYSaYSaYSaYSbbBbajbbGbakaDVaDVaDVaDVaDVbbHaDVaDVaDVaDVaEbbbIbbJbbKbbKbbKbbKbbLaEbaEbbbMaSZbbNaSZaSZaTaaTbaQhaQhaVVaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazxasqbbOaAmaVYateateateateateatebbPbayaTjaThaThaThaThaThaThaThaThaThbbQaQqaXKaXLaZlbbRbbSbbTaXMbbUbbVbbWaOXaZsaZtbbXbbYaOXbaPaZxaZybaRbbZbbZbaRbbZaZybaTbcabcbbcbbccbcdbceaZEbcfaItaYjbcgbchbcibcjbckbckbcjbclbcmaZNaZObcnbcobcpbcqbcrbcsbctbcubcvbcwbcxbbvbcybczbcAbbvbcBaZQaYCbcCaItbcDbcEbcFaYSaYSaYSaYSaYSaYSaYSbcGaYSaYSaYSaYSbcHaYSaYSaYSaYSaYSaYSaYSaYSbcIaYSaYSaYSaYSaYSaYSaYSaYSbcJbcKbcLbcMbcNbcMbcObcMbcPbcQbcRbcMbcSbcMbcTbcUbcMbcMbcMbcMbcMbcMbcVbcWbcXbcYbbNaSZaSZaSZaUFbcZaUEaUFaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdaaaaaafbdbazAaxAbdcbddbdebdebdebdebdebdebdfbdgaOUaWzaQqaXKaXLaXMaXMbdhbdiaXMaOXaOXbdjaOXaZsbdkbbXbdlaOXbaPaZxaZybdmbdnbaRbbZbdoaZybaTbdpbcbbcbbcbbdqbdraZEbdsaItaYjbdtbdubdvbdwbdxbdybdzbclbdAaZNaZObdBbdCbdDbdDbdDbdEbdFaZObdGbdHbbvbbvbcybdIbcAbbvbdJaZQbdKaItaItbcDbcEbcFaYSaYSaYSaYSaYSaYSaYSbdLaYSaYSaYSaYSaYSaYSbdMbcMbcMbcMbcMbcMbcMbdNbcMbcMbcMbcMbcMbcMbcMbdObdPbdQbdRaYSaYSaYSaYSaYSaYRaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSbdSbcJbdTaSZaSZbbNaSZaSZbdUaVUaQhaQhaTcaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdabdaaVWaVXaVYayBbdVbdWbdXbdXbdYbdXbdXbdXbdZaOUaOUaOUaOUaXKaXLaZlbeabebbecaXMbedbeebefaOXaOXaOXaOXbegaOXbaPaZxaZybehbaRbbZbeibejaZybaTaZEbekbcbbcbbelbemaZEbenaItaYjbeobepbdvbdwbeqberbdzbclbesaZNbetbeubevbdDbewbdDbcobexbeybdGbezbeAbeBbeCbeCbeDbbvbeEaZQaYCbeFaItbcDbcEbcFaYSbeGaYSbeHbeIbeIbeIbeJbeIbeIbeIbeKaYSaYSaYSaYSbeLaYSbeGbeMbeNbeOaYSaYSaYSbePbeQbeRbeSbeTbeUbeVaYSaYSaYSaYSaYSbeWbeXbeLaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSbcJbeYbeZbfabfbbfcbfdbfebffaafaaaaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10054,8 +10060,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxwayAayAboVaTeboWazxasqboXboWbdXboYboZbpabgHbdXaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAaaaaaabpbbpcbksbpdbpebpebpebpebpebpfbpebpebpebpgbphbpibpjbpkbplaZEbpmbelbpnbpobppbenbpqbprbnObnObnQbpsbptbpubpvbpwbnQbpxbpybpzbpAbpBbpCbpBbpDbpEbpFbpGbnYbpHbeCbpIaZQbpJbmJbpKbpLbogaItaItbgdbpMbpNbmPbpObpPbhIbpQbpRbpSbpTbpUbhKbpVbpWbpXbpYbpZbqabgjbgkbqbbgkbgkbqcbqcbqcbqcbqcbqcbqcbqcbjCbjDbnbbncbndbqdbqebqfbqgbqhbqhbqhboHbjKbqibqjbqkbjRbqlbgzbqmbqnbqobqpbjXbqqbgzbipbgBbgBaafaaaaaaaaaaaaaafbqrbqsbqtbqubqubqvbqraafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbqxbqybqzbqAbksbksbksbqBbqBbqBbqBbnEbksbksbksbmfbqCbcbbqDbqEbqFbqGbqHbelbcbbqIbqJbenbpqbqKbqLbqMbqNbqObqPbqQbqRbqSbnQabHbqTbqUbmDbpBbqVbpBbmDbqWbqXbmIbqYbqZbrabrbaZQbrcbmJbrdbpLbogaItbrebgdbrfbrgbmPbrhbribhIbrjbjmbhKbrkbrlbrmbrnbgjbrobrpbrqbrrbgjbrsbrtbrubrvbrwbrxbrybrzbrAbrBbrCbrDbibbicbrEbrFbrGbrHbrIbjJbrJbqhbqhbqhbrKbjKbrLbgubrMbrMbrNbgzbrObrPbrQbrRbjXbrSbgzbipbrTbgBaafaaaaaaaaaaaaaafbrUbrVbqtbqubqtbrWboTaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbrXbrYbrXbrZbsabksbksbksbksbksbksbnEbksbsbaZyaZybscbcbbcbbsdbsebsfbsgbelbcbbcbbshaItbpqbsibsjbskbslbsmbsnbsobspbsqbnQabHbqXbqXbsrbssbstbmDbsubsvbswbsxbsybszbszbszbszbszbszbsAbsBbsCaGGbsDbsEbsFbsGbsHbsIbhIbhIbsJbjmbhKbhKbhKbhKbsKbsLbhKbsMbhKbsNbsObsPbsQbhKbsRbsSbsTbsUbsVbsWbsXbsYbqcbsZbtabtbbtbbtcbtdbtebjJbtfbjKbjKbtgbthbjKbtibjJbtjbtkbtlbtmbtnbtobtpbtqbilbgzbgzbtrbgBbgBbtsbttbttbttbtubjQbqrbqubqtbqubqubqvbqraafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaeaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbtvbtwbtvbtxbksbksbksbqBbqBbqBbqBbnEbksbtybtzaZybtAbcbbcbbsdbtBbtCbsgbtDbtEbpibtFbtGbtHbogaRbbskbtIbtJbtKbtLbtMbtNbtObtPbtQbtRbtSbtTbqVbtTbsvbtUbtVbtVbsybtWbtXbtYbtZbuabubbucbudbueaXebufbugbuhbuibujbukbulbumbunbuobunbupbunbunbuqburbunburbunbunbunbusbutbuubuvbsSbuwbsUbuxbuxbuybuzbqcbjCbjDbuAbuBbuCbuDbuDbjJbuEbuFbuGbjJbuHbjKbuIbuJbuKbuLbuMbuNbuObuPbuQbuRbuSbrMbjRbuTbuUbuVbuWbuWbuWbuWbuWbuXbuYboSboTbuZboTboSbvaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbvbbqybvcbvdbksbksbksbksbksbksbksbnEbksbtybveaZybvfbdqbcbbvgbpibvhbpibvibcbbqIbppbenaItbogaRbbskbnQbvjbvkbvlbvmbvnbnRbvobvpbvqbvrbswbvsbvtbvubvvbvwbvxbsybvybvzbvAbvBbvCbvCbvDbvEbvFaItbvGbvHbvIbvJbhKbvKbvLbvMbvNbvObvNbvPbvNbvQbvRbsPbvSbsPbsPbvTbvUbvVbvVbvWbvXbvYbvZbsUbwabwbbsXbuzbqcbgqbjDbidbwcbwdbwcbwcbjJbjJbjJbjJbjJbwebwfbwgbwhbwibwjbwkbwlbwlbwmbwnbnnbwobwpbwqbuTbnnbuVbnnbnnbwrbnnbwsbjQbtsbttbtubwtbjQaaaaaaaafaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaeaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbtvbtwbtvbtxbksbksbksbqBbqBbqBbqBbnEbksbtybtzaZybtAbcbbcbbsdbtBbtCbsgbtDbtEbpibtFbtGbtHbogaRbbskbtIbtJbtKbtLbtMbtNbtObtPbtQbtRbtSbtTbqVbtTbsvbtUbtVbtVbsybtWbtXbtYbtZbuabubbucbudbueaXebufbugbuhbuibujbukbulbumbunbuobunbupbunbunbuqburbunburbunbunbunbusbutbuubuvbsSbuwbsUbuxbuxbuybuzbqcbjCbjDbuAbuBbuCbuDbuDbjJbuEbuFbuGbjJbuHbjKbuIbuJbuKbuLbuMbuNbuObuPbuQbuRbuSbrMbjRbuTbuUbuVahwbuWbuWbuWbuWbuXbuYboSboTbuZboTboSbvaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbvbbqybvcbvdbksbksbksbksbksbksbksbnEbksbtybveaZybvfbdqbcbbvgbpibvhbpibvibcbbqIbppbenaItbogaRbbskbnQbvjbvkbvlbvmbvnbnRbvobvpbvqbvrbswbvsbvtbvubvvbvwbvxbsybvybvzbvAbvBbvCbvCbvDbvEbvFaItbvGbvHbvIbvJbhKbvKbvLbvMbvNbvObvNbvPbvNbvQbvRbsPbvSbsPbsPbvTbvUbvVbvVbvWbvXbvYbvZbsUbwabwbbsXbuzbqcbgqbjDbidbwcbwdbwcbwcbjJbjJbjJbjJbjJbwebwfbwgbwhbwibwjbwkbwlbwlbwmbwnbnnbwobwpbwqbuTbnnbuVahsbnnbwrbnnbwsbjQbtsbttbtubwtbjQaaaaaaaafaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbtvbtwbtvbwubwvbksbksbwwbwxbwybwxbwzbwxbwAbwBbfAbwCbwDbkBbwEbkBbwFbkCbwDbwGbwHbqJbenaItbwIbwJbwKbnQbwLbwMbwNbwObwPbnRbwQbwRbwSbwTbwUbwVbwWbwXbwYbwZbxabxbbxcbxdbxdbxebxfbxgbxhbsBbxiaItdIHbgebpQbxjbhKbxkbxlbxmbxnbxobxpbxqbxrbxmbxnbxsbxsbxnbxmbxtbgfbvVbxubuxbuxbxvbsSbsUbxwbxxbxybxzbqcbxAbxBbxCbxDbxEbwlbwlbxFbxGbwlbxHbxIbxJbxKbxLbwlbxMbxNbxObxPbxQbxRbxSbxSbxSbxSbxSbtrbxTbgBbtsbtubjQbnnbuWbxUbxUbwtbxVbxWbxXaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbxYbxZbxYbyabybbycbycbycbycbycbydbyebksbtybyfaZybygbyhbyibyjbykbnIbylbymbynaZEaZEbyoaItbypbyqbskbnQbyrbysbytbvkbyubnRbyvbywbyxbyybyzbyAbyBbyCbyDbyEbyFbsybyGbyHbyIbyJbxfbxgbxhbsBbyKaItaQubyLbyMbyNbhKbxkbyObxmbyPbyQbyRbySbyTbxmbyUbyVbyVbyWbxmbyXbhKbvVbyYbuxbyZbzabzbbzcbzdbzebzebzfbzgbzhbzibzjbzkbzlbuObuObzmbuObznbuObuPbuObuObuObuObzobzpbzqbzrbzsbztbzubzvbzwbzxbxSbipbzyblTaafaafbjQbzzbuWbxUbxUbuXbzAbzBbzCaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabnAbnAbnAbnAbnAbnAbnAbzDbzEbzFaZyaZybzGbqybqybqybzHaZyaZybzIbzJbzKaZybzLbzLbzLbzMbzLbzNbzObzPbzQbzRbzNbenaItbzSbzTaTFbnQbtObzUbzVbzVbzWbzXbzYbzYbzZbzYbAabAbbAcbAdbAebAebAebAfbszbszbszbszbszbszbszbsBbyKaItbAgbxmbxmbAhbAibAjbxmbxmbAkbAlbAmbAnbAnbAobApbAqbArbApbAsbyXbhKbvVbAtbAubAvbAwbAxbAybAzbAwbAwbAAbABbACbADbAEbAEbAEbAEbAEbAFbAEbAEbAGbAHbAIbAJbAJbAKbALbuTbAMbzrbANbAObAPbAQbARbASbxSbipbzyboQaaaaaabjQbATbAUbjQbuXbjQbjQbuXbjQaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10069,14 +10075,14 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaabEXbKMbKNbKObEXbKPbFbbFcbzLbzLbKQbKQbKQbzLbzLbFlbFlbFlbFlbKRbFlbFlbKSbJtaaabJubKTbKUbKVbKWbKXbKYbKZbKWbKWbLabLbbLcbLdbFpbFpbFpbFpbFpbFpbLebFpbFpbLfbLgbLhbLibLjbLkbLjbxsbLlbLmbLnbLobLpbxmbLqbLrbLsbxmbLtbLubLvbLwbLxbLybpQbLzbhKbjnbLAbjmbLBbsPbLCbLDbLEbLFbLGbpQbFObFPbFQbFQbLHbHgbHgbHgbLIbFQbFQbAGbLJbLKbKrbKrbAJbLLbKtbAMbHrbLMbLNbLObLPbLQbLRbLSbIQbLTbLUbFXbLVbLWbLXbHDbLYbLZbMabMbaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbDBbEVbEVbEVbEVbEVbEVbMcbEVbMdbEVbEVbEVbEVbEVbDBbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMebDEbMfbDEbMgaaaaafaaaaaabzLbMhbMibMjbzLaaaaaaaaabFlbMkbMlbHMbFlbKSbJtaaabJubMmbMnbMobMpbGBbMqbMrbMsbMtbFnbMubMvbMwbMxbMybMybMybMybMzbMAbMBbMBbMCbMDbMEbMFbMGbMHbMIbMJbMKbMLbMJbMMbMKbMJbMJbMLbMMbMJbMJbMMbMJbMJbMLbMJbMNbMObpQbrnbpQbMPbyXbMQbpQbpQbpQbpQbpQbpQbMRbFPbFQbMSbMTbMUbMVbMWbMXbMYbMSbAJbMZbNabChbAJbAJbNbbKtbNcbHDbHDbFXbFXbFXbFXbGbbFXbNdbIQbNebFXbNfbHCbgBbHDbNgbNhbNibHDaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbNjbNjbNjbNjbNjbNjbNkbEVbNlbNjbMdbEVbEVbEVbEVbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaaaaafaaaaaaaaabFlbNmbNnbNobFlbKSbNpaaabNqbHRbNrbNsbNtbGBbGBbNubNvbNwbNxbNybNzbNAbNBbNBbNBbNBbNBbNCbNDbNEbNFbNGbNHbNIbNJbNKbNLbNMbNNbNObNPbNQbNQbNObNQbNQbNPbNQbNQbNQbNQbNQbNQbNPbNRbrnbNSbNTbNUbNVbNWbNXbNYbNZbOabObbOcbOdbFsbFObFPbFQbOebOfbOgbOhbOibOjbOkbOlbAJbAJbOmbAJbAJbOnbOobKtbnnbOpaafbOqbOrbOsbOtbOubOtbOvbOwbOxbFXbOybGcbOzbHDbOAbOBbOBbOCaagaagaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabODbETbETbETbETbETbETbETbOEbEWbEVbEVbEVbEVbOFbEWbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafbFlbFlbFlbFlbFlbOGbFlaaaaaaaaaaaabFnbOHbOIbOJbOKbFnbOLbFnbOMbONbOObOPbOPbOQbORbOSbOTbOUbOVbOWbOWbOWbOXbOYbOWbOWbOZbOVbPabOWbOWbOWbOXbOWbFsbFsbFsbFsbFsbFsbFsbFsbFsbFPbrnbPbbPcbPdbPebPfbyXbPgbPhagkbPjbPkbPlbFsbFObPmbPnbPobPpbPqbPrbPsbPtbPtbPubPvbPwbPxbnnbPybnnbOobKtbnnbPzaafbOqbPAbPAbPBbPCbPDbPEbPFbPGbFXbPHbGcbzybHDbHDbHDbHDbHDaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbJebJebJebJebJebJebPIbEVbJdbJebPJbEVbEVbEVbEVbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafbFlbFlbFlbFlbFlbOGbFlaaaaaaaaaaaabFnbOHbOIbOJbOKbFnbOLbFnbOMbONbOObOPbOPbOQbORbOSbOTbOUbOVbOWbOWbOWbOXbOYbOWbOWbOZbOVbPabOWbOWbOWbOXbOWbFsbFsbFsbFsbFsbFsbFsbFsbFsbFPbrnbPbbPcbPdbPebPfbyXbPgbPhagkbPjbPkbPlbFsbFObPmahpbPobPpbPqbPrbPsbPtbPtbPubPvbPwbPxbnnbPybnnbOobKtbnnbPzaafbOqbPAbPAbPBbPCbPDbPEbPFbPGbFXbPHbGcbzybHDbHDbHDbHDbHDaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbJebJebJebJebJebJebPIbEVbJdbJebPJbEVbEVbEVbEVbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabPKbPLbKSbFlbFlbFlbFlbFlbFnbFnbFnbFnbFnbFnbFnbFnbPMbPNbPObPPbPQbPRbPSbPSbPTbPUbPVbPWbPXbPYbPZbQabQbbQcbQdbQebQfbQgbQhbQibQjbQkaafaaaaaaaaaaaaaaaaaabFsbQlbFPbrnbMObpQbrnbpQbMObQmbrnbpQbpQbpQbpQbpQbFsbFObQnbFQbQobQobQpbQqbQrbQsbQqbQtbQubQvbQwbQxbnnbQybOobKtbQzbQAaafbOqbPAbQBbOtbQCbOtbQDbQEbQFbFXbPHbGcbQGbQHbgBaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbDBbEVbEVbEVbEVbEVbEVbMcbEVbPJbEVbEVbEVbEVbEVbDBbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbQIbQJbQKbQLbQLbQMbQNbQObQPbQQbQRbQSbQTbQSbQUbQPbQVbQWbQXbQYbQZbRabRbbRbbRcbRdbPVbRebPXbPYbRfbQabRgbRhbRibRjbRkbRlbRkbRmbRnbRoaafbRpbRpbRpbRpbRpaaabFsbRqbRrbNObNPbNQbNObRsbRtbRubRvbRsbNQbNQbNQbNQbNQbRwbRxbFQbRybRzbRAbRBbRCbRDbREbFQbFQbqkbRFbqkbqkbqkbRGbKtbRHbqkbFXbFXbFXbFXbFXbRIbFXbFXbFXbFXbFXbPHbGcbRJbQHbgBaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbDBbKLbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbQIbQJbQKbQLbQLbQMbQNbQObQPbQQbQRbQSbQTbQSbQUbQPbQVbQWbQXbQYbQZbRabRbbRbbRcbRdbPVbRebPXbPYbRfbQabRgbRhbRibRjbRkbRlbRkbRmbRnbRoaafbRpbRpbRpbRpbRpaaabFsbRqbRrbNObNPbNQbNObRsbRtbRubRvbRsbNQbNQbNQbNQbNQbRwbRxbFQbRybRzbRAbRBbRCbRDbREbFQbFQbqkbRFbqkbqkbqkahnagUahfbqkbFXbFXbFXbFXbFXbRIbFXbFXbFXbFXbFXbPHbGcbRJbQHbgBaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbDBbKLbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabRKaaaaafaafbRLbRLbRLbRLbRLbRLbRLbRLbRMbRNbQPbRObQQbQQbQSbRPbQUbQPbRQbRRbQXbRSbRTbPSbRUbPSbRVbRWbRXbRYbRZbSabRkbQabSbbRhbScbSdbSebSfbSgbShbSibSjbSkbSlbSmbSnbSobRpaaabFsbSpbSqbSrbSsbStbSubSvbSwbSxbSybSvbSvbSzbSAbSvbSvbSBbFPbFQbFQbFQbFQbFQbFQbSCbFQbFQbSDbSEbSFbSGbSHbqkbRFbSIbSJbqkbSKbSLbSMbSNbSObPHbzybzybSPbzybzybPHbGcbSQbgBbgBbgBaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbDAbDBbNlbNjbNjbEVbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabSRbSSbSTbSUbSUbSUbSVbSWbSXbSYbSZbTabTbbRLbTcbRNbQPbTdbQQbQRbQQbQSbTebQPbTfbRRbQXbQYbTgbPSbPSbPSbThbTibTjbTkbTlbRkbTmbTnbRkbTobScbSdbTpbTqbTqbTrbTsbTtaafbTubTvbSobTwbRpaafbFsbTxbTybFsaaaaafaaabTzbTAbTBbTCbTzaafaafaaaaafbFsbTDbTEbNQbNQbNQbNQbNQbNQbNObNQbNQbNQbNQbNPbTFbNQbRsbTGbTHbTIbTJbTKbTKbTKbTKbTLbTMbTKbTKbTKbTKbTKbTNbTObTPbTQbTRbgBbgBbgBbgBaaaaafaaaaaaaaaamUamUamUaafaaaaaaaafaaaaaaaafaaaaaabHEbDBbGebDBbDBbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTSbTSbTSbTSbTSbTTbTUbTVbTWbTWbTXbRLbTYbTZbUabUbbUcbUdbQQbQQbUebQPbUfbUgbUhbUibUibUjbUkbPSbUlbUmbUnbUobUpbRkbQabRkbUqbUrbUsbUtbUubUvbUwbUxbUybUzbUAbSlbUBbSobSobRpaafbFsbSGbSGbFsaaaaafaaabUCbUDbUEbUFbUCaafaafaaaaafbFsbUGbUHbUIbUJbJObUKbUKbULbUMbUNbUObSvbSvbSzbSAbSvbSvbUPbUQbURbUSbUSbUTbUUbUUbUVbUSbUSbUTbUUbUUbUVbUSbUWbzybUXbUYbUZbVabVbbVcbVdbVebVebVebVebVebVebVebVebVebVebVebVebVebVebVebVebVfbVgbVgbVhbDBbDBbEVbEVbVibEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaafaafbVjbVkbVlbVmbVlbVnbVobVpbVqbVqbVrbRLbVsbHMbQPbVtbQQbVubQQbQQbQQbVvbTfbRRbQXbVwbOPbVxbVybVzbVAbVBbPVbVCbVDbRkbQabRkbVEbVybVFbVGbVHbVIbVJbVKbVJbVLaafbRpbRpbRpbRpbRpaafbFsbFsbVMbFsaafaafaafbVNbVObVPbVQbVNaafaaaaaaaafbFsbFsbFsbFsbFsbVRbFsbFsbVSbVTbVUbFsbFsaaaaaaaaaaaabVVbVWbVXbVYbVVaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaabgBbVZbWabWbbgBbgBbgBbgBaaaaafaaaaaaaaaamUamUamUaafaaaaaaaafaaaaaaaafaafaafbWcbWdbWebGfbDAbDBbDBbEVbEWbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafbVjbWfbWgbWhbWibTVbWjbTVbWkbTVbWlbWmbWnbWobQPbWpbQQbVubQQbQQbWqbQPbWrbWsbQXbWtbOPbPSbWubWvbRZbWwbPVbWxbUqbWybWzbWAbWBbWCbWDbWEbWFbWGbSebWHbWIbWJbSkbSlbWKbWLbWLbRpaafaafbSGbWMbSGaaaaafaaabWNbWObWPbWQbWNaafaaaaaaaafaaaaaaaaabFsbWRbWSbWTbFsaaaaafaaaaaaaafaaaaaaaaaaaabWUbWVbWWbWXbWUaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaabWYbWYbWZbXabWYaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbXbbDybDybDzbDAbDAbDBbDBbDBbDBbDCaafaafaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafbVjbWfbWgbWhbWibTVbWjbTVbWkbTVbWlbWmbWnbWobQPbWpbQQbVubQQbQQbWqbQPbWrbWsbQXbWtbOPbPSbWubWvbRZbWwbPVbWxbUqbWybWzbWAbWBbWCbWDbWEbWFbWGbSebWHbWIbWJbSkbSlbWKbWLbWLbRpaafaafbSGbWMbSGaaaaafaaabWNbWObWPbWQbWNaafaaaaaaaafaaaaaaaaabFsbWRbWSbWTbFsaaaaafaaaaaaaafaaaaaaaaaaaabWUahAahWahCbWUaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaabWYbWYbWZbXabWYaaaaaaaaaaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafbXbbDybDybDzbDAbDAbDBbDBbDBbDBbDCaafaafaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafbVjbXcbXdbXebXdbXfbXgbXhbXibXjbXkbRLbKSbHMbQPbXlbQQbXmbXnbXobXpbQPbXqbRRbQXbXrbXsbXtbXubRnbXvbXwbXxbRnbXybXzbXAbRnbXBbXCbXDbXEbXFbRkbXGbXHbXIbTtaafbTubXJbXKbXLbRpaafaaaaaaaaaaaaaaaaaaaaabXMbTzbXNbXObXMaafaafaafaafaafaafaaabFsbXPbXQbSGbFsaaaaafaaaaaaaafaaaaaaaaaaaabXRbXSbXTbXUbXRaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaabWYbXVbXWbXXbWYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafbTSbTSbTSbTSbTSbRLbRLbRLbRLbRLbRLbRLbKSbHMbQPbQPbQPbQPbQPbQPbQPbQPbXqbRRbQXbXYbXZbYabYbbYcbYdbYebYfbYgbYhcprbQabRkbYjbYkbYlbYmbYnbRkbXGbYobYpbYqbUAbSlbYrbWLbWLbRpaafaaaaaaaaaaafaafaafaaabTzbYsbYtbYubTzbTzbTzbTzbTzbTzbTzaafbFsbFsbFsbFsbFsaaaaafaaaaaaaafaaaaaaaaaaaabYvbYwbYxbYybYvaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaabWYbYzbYAbYBbWYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafbHMbFlbFlbFlbFlbYCbHMbHMbYDbYEbYEbYEbYEbYFbYGbYGbYHbYIbYIbYIbYIbYIbYIbYIbQObFlbYJbRRbQXbYKbYLbYMbOXbOWbYNbYObYPbYObYQbYRbQabRkbScbYSbYTbYUbYVbRkbXGbXHbYWbTtaafbRpbRpbRpbRpbRpaafaaabTzbTzbTzbTzbTzbTzbTzbYXbYYbYZbZabZbbZcbZdbZebZbbTzaafaafaafaafaafaafaafbZfaafaafaafaafaafaafaafbZgbVVbZhbZibZgaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaabWYbZjbZkbZlbWYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10235,17 +10241,17 @@ cqhcqYcrdcrccrbcqScracqRcqQcqPcqXcqUcqZcqTcqVcqWcracqScqXcrdcrccqRcqUcrbcqTcqPcq cqecrbcqPcqZcqRcqVcrdcracqXcqScqTcqQcqWcrccqUcqYcrdcqVcqTcqPcqZcracqQcqRcrccqScqlcqKcpZcrdcqUcrbcwAcuPcvicuRcvkcuTcqWcrccqRcqYcqTcracqVcuPcuScuNcvhcuRcvvcqPcqYcqQcqncqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcwBcwBcwBcwBcwBcxwcyAcxIcyBcxwcyCcxtcxtcxtcyDcyEcyicyFcyGcyHcyicwkcyucyIcyIcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwFcyJcyJcvPcvPcyKcvPcvPcyJcyJcwHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa cqmcqkcqgcqicqncqbcqdcqacqmcqfcqjcqecqlcpZcqhcqccqdcqbcqjcqgcqicqacqecqncpZcqfcqccqKcqicqPcqQcqRcupcsJcsmcuuctkcsActqctgctZctEcsUcuccsmcsJctqcssctScuuctgcqScrbcqXcqacqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcwBcwBcwBcwBcwBcxwcxIcxIcxIcxwcxYcxZcxZcxZcyacwkcyicyFcyLcyHcyicwkcwkcwkcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwFcvRcyMcwUcvXcwVcyNcvOcwHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa crccracqVcqYcrdcqQcqScqPcrccqUcqZcqTcrbcqWcqXcqRcqScqQcqZcqVcqYcqPcqTcrdcqWcqUcqRcqKcqlcqScqXcracqVcrccqQcqUcqYcqTcrbcqWcrdcqRcqZcqPcqQcrccrbcqXcracqUcqWcqVcqRcqTcqdcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxvcxwcxwcxwcxwcxwcxIcxIcxIcxwcyhcyOcyOcyOcyOcyPcyicyicyicyicyicyQcyRcyScwkcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacvMcyxcwncyTcwncyUcvMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -cqZcrdcqUcrbcqPcqXcqVcqScqZcqQcqWcrccqRcqYcqTcracqVcqXcqWcqUcrbcqScrccqPcqYcqQcracqKcqccqVcqTcrdcqUcqZcqXcqQcrbcrccqRcqYcqPcracqWcqScqXcqZcqRcqTcrdcqQcqYcqUcracrccqgcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIcxIcyVcxwcxIcxIcxIcxwcyEcyPcyWcxZcyacwkcyicyicyicyicyicwkcyXcyXcyYcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacvMcyZczaczbczcczdcvMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -cqWcqPcqQcqRcqScqTcqUcqVcqWcqXcqYcqZcracrbcrccrdcqUcqTcqYcqQcqRcqVcqZcqScrbcqXcrdcqKcqkcqUcrccqPcqQcqWcqTcqXcqRcqZcracrbcqScrdcqYcqVcqTcqWcracrccqPcqXcrbcqQcrdcqZcqfcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIczeczfcxwcxIcxIcxIcxwcxwczgczhcziczjcwkcwkcwkcwkcwkczkcwkczlcyXcyYcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwFczmcznczncznczocwHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +cqZcrdcqUcrbcqPcqXcqVcqScqZcqQcqWcrccqRcqYcqTcracqVcqXcqWcqUcrbcqScrccqPcqYcqQcracqKcqccqVcqTcrdcqUcqZcqXcqQcrbcrccqRcqYcqPcracqWcqScqXcqZcqRcqTcrdcqQcqYcqUcracrccqgcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIcxIcyVcxwcxIcxIcxIcxwcyEaivcyWcxZcyacwkcyicyicyicyicyicwkcyXcyXcyYcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacvMcyZczaczbczcczdcvMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +cqWcqPcqQcqRcqScqTcqUcqVcqWcqXcqYcqZcracrbcrccrdcqUcqTcqYcqQcqRcqVcqZcqScrbcqXcrdcqKcqkcqUcrccqPcqQcqWcqTcqXcqRcqZcracrbcqScrdcqYcqVcqTcqWcracrccqPcqXcrbcqQcrdcqZcqfcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIczeczfcxwcxIcxIcxIcxwcxwaikczhcziczjcwkcwkcwkcwkcwkczkcwkczlcyXcyYcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwFczmcznczncznczocwHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa cqYcqScqXcracqVcrccqQcqUcqYcqTcrbcqWcrdcqRcqZcqPcqQcrccrbcqXcracqUcqWcqVcqRcqTcqPcqKcqncqQcqZcqScqXcqYcrccqTcracqWcrdcqRcqVcqPcrbcqUcrccqYcrdcqZcqScqTcqRcqXcqPcqWcqbcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkczpcwBcxwcygcxIczeczqcxwcxIcxIcxIcxwczrcxIcxIcxwczscztczjcwkczuczvczwcwkcwkcwkcwkcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -crbcqVcqTcrdcqUcqZcqXcqQcrbcrccqRcqYcqPcracqWcqScqXcqZcqRcqTcrdcqQcqYcqUcracrccqScqKcqacqXcqWcqVcqTcrbcqZcrccrdcqYcqPcracqUcqScqRcqQcqZcrbcqPcqWcqVcrccracqTcqScqYcqhcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIcxIcxIczxcxIcxIcxIczycxIcxIcxIcxwcxNcwBcxXczzczAczvczBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -cqRcqUcrccqPcqQcqWcqTcqXcqRcqZcracrbcqScrdcqYcqVcqTcqWcracrccqPcqXcrbcqQcrdcqZcqVcqKcqdcqmcqlcqbcqjcqkcqicpZcqdcqccqgcqacqhcqfcqncqecqicqkcqgcqlcqbcpZcqacqjcqfcqccqecqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIcxIcxIczCcxIcxIcxIczDcxIcxIczEcxwczFcwBcxXcyhczuczGczBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +crbcqVcqTcrdcqUcqZcqXcqQcrbcrccqRcqYcqPcracqWcqScqXcqZcqRcqTcrdcqQcqYcqUcracrccqScqKcqacqXcqWcqVcqTcrbcqZcrccrdcqYcqPcracqUcqScqRcqQcqZcrbcqPcqWcqVcrccracqTcqScqYcqhcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIcxIcxIczxcxIcxIaiSajhcxIcxIaiFcxwcxNcwBcxXczzczAczvczBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +cqRcqUcrccqPcqQcqWcqTcqXcqRcqZcracrbcqScrdcqYcqVcqTcqWcracrccqPcqXcrbcqQcrdcqZcqVcqKcqdcqmcqlcqbcqjcqkcqicpZcqdcqccqgcqacqhcqfcqncqecqicqkcqgcqlcqbcpZcqacqjcqfcqccqecqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcwBcxwcygcxIcxIcxIczCcxIcxIcxIczDcxIajjajicxwczFcwBcxXcyhczuczGczBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa cracqQcqZcqScqXcqYcrccqTcracqWcrdcqRcqVcqPcrbcqUcrccqYcrdcqZcqScqTcqRcqXcqPcqWcqUcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxvcxwcxwcxwcxwcxwcxwczHcxIcxIcxwcxwcxwcxwcxwcxwcxAcxXcyEczuczvczBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa cqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKcqKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczIczJczKczLczMcxwcxIcxIcxIcxwczNczOczPczQczRcxwczScwkczuczvczTcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczUczUczUczUczUczVcxIcxIcxIczWcxIcxIcxIcxIczXcxwczScwkcwkcwkcwkcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczIczJczUczUczUczYcxIcxIcxIczZcxIcxIcxIcxIczXcxwcxNcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczUczUczUcAacAbcxwcAccAdcAecxwcAfcxwcAgcxwcxwcxwcAhcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczUczUczUcxwcxwcxwcAicAjczUcxwcxwcxwcxIcxIcxIcxwcxNcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczUczUczUcxwcxwcxwczUcAjczUcxwcxwcxwcxIcxIcxIcxwcxNcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwczIczJcAkcxwcwBcxwcAlcAlcAlcxwcwBcxwcxMcAmcAncxwcxNcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcxwcAlcAlcAlcxwcwBcyocAocApcAqcyqcwBcxwcAlcAlcAlcxwcxNcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacwkcwBcyocAocApcAqcyqcwBcwBcwBcwBcwBcwBcwBcyocAocApcAqcyqcwBcwBcwkaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10318,7 +10324,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcETcETcETcETcETcETcETcETcFacFPcFccFjcETcGRcGScGScGTcFicETcETcGUcGVcGWcGXcGYcGZcGUcHacEjcHbcDDcEecEecFncDDcDDcHccHdcEecHecHfcDDcDDcEdcEecEecDDaaaaaaaaaaaaaaacDDcHgcHhcDDcExcHicExcExcHjcHkcHlcHlcHlcHmcDDcEjcEjcEAcEAcEjcEjcHnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacFycFzcFzcFzcFzcFzcFzcFzcFzcFzcFzcFzcFzcFAcHocFCcFAcFAcFAcFAcFDcHocHpcHqcFGcFjcETcETcHrcHrcETcETcETaaacGUcHscHtcHucHvcHwcGUcHacEjcHbcDDcEecEecFncDDcDDcEHcEIcEIcEIcEKcDDcDDcEdcEecEecDDaaaaaaaaaaaaaaacDDcHhcHhcDDcHxcHxcHxcExcHjcHlcHlcHlcHlcHycDDcEjcHzcEzcEzcHAcEjcHBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcsHcETcETcETcETcETcETcETcETcETcETcETcETcETcHCcHDcHDcHCaaaaaaaaacGUcHEcHucHucHucHucGUcHacEjcHbcDDcEecEecFVcDVcDVcDVcDVcDVcDVcDVcDVcDVcGecEecEecDDaaaaaaaaaaaaaaacDDcHFcHhcDDcHxcHGcHxcExcHjcHjcHjcHjcHjcHjcDDcEjcHzcEzcEzcHAcEjcHBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacHHcHIcHIcHIcHIcHJcHJcHIcHIcHKaaacGUcHucHucHucHucHucGUcHLcEjcHMcDDcDDcHNcDDcDDcDDcDDcDDcHOcDDcDDcDDcDDcDDcDDcDDcDDaaaaaaaaaaaaaaacDDcHPcHhcDDcEXcExcExcExcHjaaaaaaaaaaaaaaacDDcEjcHzcEzcEzcHAcEjcHBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacHHcHIcHIcHIcHIcHJcHJcHIcHIcHKaaacGUcHucHucHucHuajIcGUcHLcEjcHMcDDcDDcHNcDDcDDcDDcDDcDDcHOcDDcDDcDDcDDcDDcDDcDDcDDaaaaaaaaaaaaaaacDDcHPcHhcDDcEXcExcExcExcHjaaaaaaaaaaaaaaacDDcEjcHzcEzcEzcHAcEjcHBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacHQcHRcHScHTcHUcHTcHTcHVcHWcHIcHKcGUcHucHXcHYcHZcIacGUcIbcEjcEjcEjcEjcEjcEjcIccDDcDDcIdcIdcIdcDDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDDcDDcDDcDDcDDcDDcDDcDDcHjaaaaaaaaaaaaaaacIecEjcHzcEzcEzcHAcEjcHBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacHQcHRcHScHTcHTcHTcHTcHTcHTcIfcIgcGUcHucIhcIicIjcIicGUcIkcEjcIlcImcIncIocEjcIpcDDcDDcDDcIqcDDcDDcDDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacIrcEjcEjcIscIscEjcEjcIraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacHQcHRcHScItcItcItcItcItcItcHIcIucGUcHucHucHucHucHucGUcIvcEjcIwcIxcIycIzcEjcIAcDDcDUcGecEecFVcIBcDDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDDcICcEjcEjcEjcEjcIDcDDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 3e6261ea0465e91d80777c46bd443c9536718fb9 Mon Sep 17 00:00:00 2001 From: meyar Date: Fri, 24 May 2013 07:38:00 -0400 Subject: [PATCH 54/63] Once more with feeling --- maps/tgstation.2.1.0.0.1.dmm | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/maps/tgstation.2.1.0.0.1.dmm b/maps/tgstation.2.1.0.0.1.dmm index de51322795..4c1fa64eb1 100644 --- a/maps/tgstation.2.1.0.0.1.dmm +++ b/maps/tgstation.2.1.0.0.1.dmm @@ -2780,6 +2780,7 @@ "bbx" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor,/area/hallway/primary/central) "bby" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/simulated/floor,/area/crew_quarters/bar) "bbz" = (/obj/machinery/telecomms/allinone{intercept = 1},/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/creed) +"bbA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door_control{id = "Prison Gate"; name = "Prison Wing Lockdown"; pixel_x = -28; pixel_y = 7; req_access_txt = "2"},/obj/machinery/door_control{id = "Secure Gate"; name = "Brig Lockdown"; pixel_x = -28; pixel_y = -3; req_access_txt = "2"},/turf/simulated/floor{icon_state = "dark"},/area/security/warden) "bbB" = (/turf/simulated/wall,/area/hallway/primary/starboard) "bbC" = (/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/starboard) "bbD" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 2"; dir = 2; network = list("SS13")},/turf/simulated/floor{dir = 1; icon_state = "whitecorner"},/area/hallway/primary/starboard) @@ -3121,15 +3122,15 @@ "bib" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asmaint) "bic" = (/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/wall/r_wall,/area/assembly/chargebay) "bid" = (/turf/simulated/wall/r_wall,/area/assembly/chargebay) -"bie" = (/obj/machinery/door/airlock/research{name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/obj/machinery/door/firedoor/border_only{layer = 2.6; name = "\improper Firedoor South"},/turf/simulated/floor,/area/assembly/chargebay) -"bif" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/poddoor/shutters{id = "Skynet_launch"; name = "Mech Bay"},/turf/simulated/floor{icon_state = "delivery"},/area/assembly/chargebay) +"bie" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "8"},/turf/simulated/floor,/area/toxins/mixing) +"bif" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access_txt = "8"},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing) "big" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/alarm{pixel_y = 25},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bih" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) "bii" = (/obj/machinery/r_n_d/circuit_imprinter,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) -"bij" = (/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},/turf/simulated/floor/plating,/area/assembly/robotics) -"bik" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/folder/white,/turf/simulated/floor/plating,/area/assembly/robotics) +"bij" = (/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/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/lab) +"bik" = (/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/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/assembly/robotics) "bil" = (/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},/turf/simulated/floor/plating,/area/toxins/lab) -"bim" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access_txt = "7"},/turf/simulated/floor/plating,/area/toxins/lab) +"bim" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/folder/white,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/assembly/robotics) "bin" = (/obj/machinery/autolathe,/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bio" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/gloves/latex,/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2) @@ -3787,6 +3788,7 @@ "buR" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/medical/research{name = "Research Division"}) "buS" = (/obj/machinery/door/firedoor/border_only{dir = 4; layer = 2.6; name = "Firelock East"},/turf/simulated/floor{dir = 1; icon_state = "whitepurplecorner"},/area/medical/research{name = "Research Division"}) "buT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) +"buU" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 1; name = "hazard door north"},/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access_txt = "7"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area/toxins/lab) "buV" = (/obj/machinery/door/airlock/research{name = "Research Shuttle Dock"; req_access_txt = "47"},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "buW" = (/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"}) "buX" = (/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},/turf/simulated/shuttle/plating,/area/medical/research{name = "Research Division"}) @@ -4490,6 +4492,7 @@ "bIt" = (/obj/machinery/holosign/surgery,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access_txt = "45"},/turf/simulated/floor,/area/medical/sleeper) "bIu" = (/turf/simulated/floor{dir = 8; icon_state = "whitered"},/area/medical/sleeper) "bIv" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/stool/bed,/obj/item/weapon/bedsheet/medical,/turf/simulated/floor{dir = 4; icon_state = "whiteredcorner"},/area/medical/sleeper) +"bIw" = (/obj/machinery/door/firedoor/border_only{layer = 2.6; name = "\improper Firedoor South"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/simulated/floor,/area/assembly/chargebay) "bIx" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bIy" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) "bIz" = (/obj/structure/disposalpipe/segment,/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/sleeper) @@ -4600,11 +4603,10 @@ "bKA" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing) "bKB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing) "bKC" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing) -"bKD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/door/firedoor/border_only{dir = 8; name = "Firelock West"},/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing) +"bKD" = (/obj/machinery/door/firedoor/border_only{dir = 1; name = "Firelock North"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/poddoor/shutters{id = "Skynet_launch"; name = "Mech Bay"},/turf/simulated/floor{icon_state = "delivery"},/area/assembly/chargebay) "bKE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/toxins/mixing) "bKF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing) "bKG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/toxins/mixing) -"bKH" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/toxins/mixing) "bKI" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor,/area/toxins/mixing) "bKJ" = (/turf/simulated/floor,/area/toxins/mixing) "bKK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/toxins/mixing) @@ -10003,7 +10005,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiahhahiahjaexahkahlahmdRIahmahoafTaiGahrdRMahtahuahvaenagtaiSahxahyaemdRJdRKahzdRKdRLahBafUahDahEahFadPadPaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahGahHadAaexahIahJahKahLahMahNahOahPahQahRahSahTahUahVagtajhahxahXaemagxdRKdROagyahYadPadPadPahZaiaadPaibaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaicaevaidaexaieaifaigaihahMaiiaijdRGahrailaimahuainaenagtaioaipaiqairaisaitaemaiuafPabYabYabXaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaexaexaexaexagLaiwaixaiyaexaizaiAaiBaihahMaegaiCaiDahQaiEdRHaegaiFaiHaiIaiJaffaiKabXaiLaiMaiNaiOaiPaiQaiRabXabXabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaexaexaexaexagLaiwaixaiyaexaizaiAaiBaihahMaegaiCaiDbbAaiEdRHaegaiFaiHaiIaiJaffaiKabXaiLaiMaiNaiOaiPaiQaiRabXabXabYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexagnaiTaiUaiVaiWaiXaiYaexaiZajaaiZajbaiZaegagPagQajcagSagTaegabXajdajeabXajfajgabXdRudRtdRtdRvabXaexaiRajkajlajmajmajnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaexahnajpajqajrajsajtajuajvajvajwajxajyajvajvajvajyajzajwajAajBajxajCajDahfagUajGajHdRsajJajKajLajMajNajOajPajQajRajSajTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaexajUajVajWajXajYajZakaakbakcakdakeakfakgakhakbakgakiakjakkakgakeakfakgakgagkagIakoaiBakpakqakraksaexaiRaktakuajmajmakvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10054,7 +10056,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdaaaaaafbdbazAaxAbdcbddbdebdebdebdebdebdebdfbdgaOUaWzaQqaXKaXLaXMaXMbdhbdiaXMaOXaOXbdjaOXaZsbdkbbXbdlaOXbaPaZxaZybdmbdnbaRbbZbdoaZybaTbdpbcbbcbbcbbdqbdraZEbdsaItaYjbdtbdubdvbdwbdxbdybdzbclbdAaZNaZObdBbdCbdDbdDbdDbdEbdFaZObdGbdHbbvbbvbcybdIbcAbbvbdJaZQbdKaItaItbcDbcEbcFaYSaYSaYSaYSaYSaYSaYSbdLaYSaYSaYSaYSaYSaYSbdMbcMbcMbcMbcMbcMbcMbdNbcMbcMbcMbcMbcMbcMbcMbdObdPbdQbdRaYSaYSaYSaYSaYSaYRaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSbdSbcJbdTaSZaSZbbNaSZaSZbdUaVUaQhaQhaTcaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdabdaaVWaVXaVYayBbdVbdWbdXbdXbdYbdXbdXbdXbdZaOUaOUaOUaOUaXKaXLaZlbeabebbecaXMbedbeebefaOXaOXaOXaOXbegaOXbaPaZxaZybehbaRbbZbeibejaZybaTaZEbekbcbbcbbelbemaZEbenaItaYjbeobepbdvbdwbeqberbdzbclbesaZNbetbeubevbdDbewbdDbcobexbeybdGbezbeAbeBbeCbeCbeDbbvbeEaZQaYCbeFaItbcDbcEbcFaYSbeGaYSbeHbeIbeIbeIbeJbeIbeIbeIbeKaYSaYSaYSaYSbeLaYSbeGbeMbeNbeOaYSaYSaYSbePbeQbeRbeSbeTbeUbeVaYSaYSaYSaYSaYSbeWbeXbeLaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSaYSbcJbeYbeZbfabfbbfcbfdbfebffaafaaaaafaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdabdaayAauUayAaxybfgbdXbfhbfibfjbfjbfkbflbfmbfnbfnbfnbfnbfobfpbfqbfqbfrbfsbfqbftbftbfubftbfvbfwbfwbfxbfwbfybfzbfAbfBbfCbfCbfDbfEbfAbfFbfGbfHbcbbcbbelbfIbfJbenaItaYjbfKbfLbfMbcjbcjbcjbcjbclbfNaZNaZObfObfPbfQbfRbfSbfPbfTaZObdGbfUbfVbfWbfXbfYbfZbgabgbaZQbgcaGGaGGbgdbgdbgdbgdbgdbgdbgdbgebgfbgfbggbghbgibgebgjbgjbgjbgjbgjbgjbgkbgkbgkbglbgkbgkbgkbgmbgnbeWbgobgpbgqbgrbgsaYSaYSbgtbgtbgubgubgubgubgubgvbgwbgwbgxbgwaYSbgwbgxbgwbgwbgybgzbgzbgzbgzbgAbgBbgCaQhbgDaaaaaaaaaaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdabdaaYYaYZaVYayBbgEbdXbgFbdXbgGbgHbdXbdXbdXaQqbgIbgJbgJbgKaXMaZlbgLbbSbgMaXMbgNbgObgPbgPbgQbgRbgSbgTbgUbgSbgVbgWbgXbgYbgXbgXbgZbhabhbbhcbhdbcbbcbbhebhfbhgbenaItbhhbfKbhibhjbhkbhlbhmbhnbhoaZNaZNaZObhpbhqbhrbhsbhtbhubhvaZObdGbhwbhxbhybhzbhAbfZbbvbhBaZQaYCaItbhCbgdbhDbhEbhFbhGbhHbhIbhJbhKbhKbhLbhMbhMbhNbgjbhObhPbhQbhRbgjbhSbhTbhUbhVbhWbhXbhYbhZbiabhZbhZbhZbibbicbidbiebidbifbifbgubigbihbiibgubijbikbijbgubgvbgwbgybgzbilbimbilbgzbinbiobgzbipbgBaaaaafaaaaaaaaaaaaaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdabdaaYYaYZaVYayBbgEbdXbgFbdXbgGbgHbdXbdXbdXaQqbgIbgJbgJbgKaXMaZlbgLbbSbgMaXMbgNbgObgPbgPbgQbgRbgSbgTbgUbgSbgVbgWbgXbgYbgXbgXbgZbhabhbbhcbhdbcbbcbbhebhfbhgbenaItbhhbfKbhibhjbhkbhlbhmbhnbhoaZNaZNaZObhpbhqbhrbhsbhtbhubhvaZObdGbhwbhxbhybhzbhAbfZbbvbhBaZQaYCaItbhCbgdbhDbhEbhFbhGbhHbhIbhJbhKbhKbhLbhMbhMbhNbgjbhObhPbhQbhRbgjbhSbhTbhUbhVbhWbhXbhYbhZbiabhZbhZbhZbibbicbidbIwbidbKDbKDbgubigbihbiibgubikbimbikbgubgvbgwbgybgzbijbuUbijbgzbinbiobgzbipbgBaaaaafaaaaaaaaaaaaaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdabdabdabdabdabdabdabdabdabdaaaaaaaazzbaxaORbiqbdXbirbdXbisbitbiubivbdXbiwaQqbixaQqbiyaXMaXMaXMaXMaXMaXMbizbiAbiBaQqbiCaZyaZyaZybiDaZyaZyaZybiEaZyaZyaZyaZybiFbiGbiHbiIbcbbcbbelbiJbfJbenaItbiKbfKbiLbhjaZNaZNaZNaZNbiMaZNbiNbiObiPbiQbbhbiRbbhbiSbiTbiUbiVbhwbiWbbvbiXbiYbfZbiZbbvbjabjbbjcbjdbgdbjebjfbjgbjhbjibjjbjkbjlbhKbjmbhKbhKbjnbjobjpbjqbjrbjsbgjbjtbjubjvbjubjwbjxbgkbjybjzbjAbjBbgpbjCbjDbjEbjFbjGbjHbjIbjJbjKbjLbjKbjMbjNbjObjPbgubjQbjRbjSbgzbjTbjUbjVbjWbjXbjYbgzbipbgBaaaaafaaaaaaaaaaaaaJmaJmaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazxasqbbOaAmaYZaTeaTeaTeaAmaTebjZayBaxyaxybdXbkabkbbkcbiubkdbkebkfbkgbkgbkgbkgbkhbkibkibkibgSbgSbgSbkjbkkbkkbkkbklaZybkmbknbkobkpbkqbkrbksbktbkubkvbkwbkxbkybkzbkAbkBbkCbkDbkEbkEbkFbjcbkGbkHbkIbkJbkKbkLbkMbkNbkObkPbkQbiUbiUbiUbiUbkRbiUbiUbiUbiUbkSbkTbkUbkVbkWbkXbkYbkZblablbblcaItaItbgdbldbleblfbjhblgblhbjkblibljblkbljbljbllblmblnbloblpblqbgjblrbjublsbjubjwbltbgkblublvblwblxbgpbjCblyblzblAblAblBblCblDblEblEblEblFblGblHblIblJblKblLblMblNblOblPbjXblQblRblSbgzbipblTaafaafaaaaaaaaaaaaaaaaJmaJmaJmaJmaJmaJmaJmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaFWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablUblVauUayAawAawAawAaORaxyaxybdXblWblXbiublYbdXbdXbdXaOUblZbmabmbbmcbmbbmbbmbbmcbmbaOUaOUaZyaZyaZybmdaZybksbksbmebksbksbksbksbksbmfbmgbmhbmibmjbmkbmkbmkbmlbmmbmnbmobmpbmqbmrbmsbmtbmtbmubmvbmwbmxbmybmzbmAbmBbmCbmDbmEbmFbmGbmDbmHbmBbmIbhwbmJbmKbmJaZQaZQaZQbmLbdGbmMaItaItbgdbmNbmObmPbjhbmQbmRbjkbjmbhKbmSbmTbmUbmVbgjbmWbmXbmYbmZbgjblrbnabjubjubjwbjxbgkbgpbgpbgpbgpbgpbjCbjDbnbbncbndbnebnfbngbnhbnibnjbnjbnkbjKbnlbgubnmbnnbnobgzbnpbnqbnrbnsbntbnubgzbipbnvaaaaafaaaaaeaaaaaaaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -10073,7 +10075,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEXbEYbEZbEYbEXbFabFbbFcbzLbFdbDIbFebFfbFgbFhbFibFibFjbFkbzNbFlbFlbFmbFlaTFaTFaTFaTFbFnbFnbFnbFnbFnbFnbFnbFnbFobbxbbxbFpbFpbFpbFpbFqbFrbFpbFpbFpbFpbFsbFtbFuaIzaJZbFvbxmbFwbFxbFybFzbFAbxmbFBbFCbFDbxnbFEbFEbFFbFGbFHbFIbxnbFJbhKbhKbhKbhKbhKbyXbpTbFKbFLbFMbFNbpQbFObFPbFQbFQbFQbFQbFQbFQbFQbFQbFQbAGbFRbFSbFTbFTbAJbFUbFVbFWbFXbFXbFXbFXbFYbFZbGabGbbFXbFXbFXbFXbzybGcbGdaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagaagbGebETbETbGfbDBbDBbEVbEVbGgbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDFbGhbGibGhbDFbGjbGkbGlbzLbGmbGnbDIbGobGpbzNbGqbGrbGsbGtbzNbGubGubGvbFlaaaaaaaaaaaabFnbGwbGxbGybGzbGAbGBbFnbGCbGDbGEbFpbGFbGGbGHbGIbGJbGKbGLbGMbGNbGObGPbGQbGRbGSbFsbxmbGTbFCbBIbGUbGVbxmbGWbGXbGYbGZbAnbAnbAnbAnbAnbHabHbbHcbsPbsPbsPbsPbvTbyXbHdbFKbFLbFMbHebpQbFObFPbFQbHfbHgbHgbHhbHibHjbHkbHlbAGbHmbHnbHobHobAJbHpbHqbAMbHrbHsbHtbHubHvbHwbHxbHybHzbHAbHBbFXbgBbHCbgBbHDbHDbHDbHDbHDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabHEbDBbGebDBbDBbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabEXbGhbGhbGhbHFbHGbDIbDIbHHbHIbDIbDIbHJbHKbzNbzNbzNbHLbzNbzNbHMbHNbHObHPaaabHQbHRbHSbHTbHUbGBbHVbHWbHXbHYbHZbIabIbbIcbIdbIebIfbIgbIhbIibIjbIkbFpbFpbIlbImbInbIobIpbIqbIrbAnbFCbIsbGUbAnbItbIubFCbIvbxmagubIxbAnbAnbIybIzbpQbpQbpQbpQbpQbIAbyXbyXbIBbFKbFLbFMbICbIDbIEbFPbFQbIFbIGbHgbIHbHgbHgbHgbIIbAGbIJbDkbIKbIKbAJbALbILbIMbINbIObIObIObIObIPbIQbIRbISbITbIUbFXbIVbIWbIXbIYbIZbJabJbbJcaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbDAbDBbJdbJebJebEVbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDFbGibGibGibDFbJfbJgbJhbJibJjbDIbJkbJlbJmbJnbJobJobJpbJobJobJqbJrbJsbJtaaabJubJvbJwbJxbJybGBbJzbJAbJBbJCbFnbJDbJEbJFbFpbJGbJHbJIbJJbJKbJLbJMbJNbJObJPbJQbJRbJSbJTbJUbxsbJVbJWbJXbJYbJZbxmbKabFCbKbbxmbKcbGUbAnbAnbKdbKebpQbKfbKgbKhbKibjmbyXbsNbKjbKkbKkbKkbKkbKlbKmbKnbFQbHfbKobHgbHgbHgbHgbHgbKpbAGbKqbDkbKrbKrbAJbKsbKtbAMbKubIQbIQbKvbKwbKxbKybKzbKAbKBbKCbKDbKEbKFbKGbKHbKIbKJbJbbKKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbDBbKLbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDFbGibGibGibDFbJfbJgbJhbJibJjbDIbJkbJlbJmbJnbJobJobJpbJobJobJqbJrbJsbJtaaabJubJvbJwbJxbJybGBbJzbJAbJBbJCbFnbJDbJEbJFbFpbJGbJHbJIbJJbJKbJLbJMbJNbJObJPbJQbJRbJSbJTbJUbxsbJVbJWbJXbJYbJZbxmbKabFCbKbbxmbKcbGUbAnbAnbKdbKebpQbKfbKgbKhbKibjmbyXbsNbKjbKkbKkbKkbKkbKlbKmbKnbFQbHfbKobHgbHgbHgbHgbHgbKpbAGbKqbDkbKrbKrbAJbKsbKtbAMbKubIQbIQbKvbKwbKxbKybKzbKAbKBbKCbifbKEbKFbKGbiebKIbKJbJbbKKaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbDBbKLbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbEVbDBbDBaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwbqwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaabEXbKMbKNbKObEXbKPbFbbFcbzLbzLbKQbKQbKQbzLbzLbFlbFlbFlbFlbKRbFlbFlbKSbJtaaabJubKTbKUbKVbKWbKXbKYbKZbKWbKWbLabLbbLcbLdbFpbFpbFpbFpbFpbFpbLebFpbFpbLfbLgbLhbLibLjbLkbLjbxsbLlbLmbLnbLobLpbxmbLqbLrbLsbxmbLtbLubLvbLwbLxbLybpQbLzbhKbjnbLAbjmbLBbsPbLCbLDbLEbLFbLGbpQbFObFPbFQbFQbLHbHgbHgbHgbLIbFQbFQbAGbLJbLKbKrbKrbAJbLLbKtbAMbHrbLMbLNbLObLPbLQbLRbLSbIQbLTbLUbFXbLVbLWbLXbHDbLYbLZbMabMbaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafbDBbEVbEVbEVbEVbEVbEVbMcbEVbMdbEVbEVbEVbEVbEVbDBbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabMebDEbMfbDEbMgaaaaafaaaaaabzLbMhbMibMjbzLaaaaaaaaabFlbMkbMlbHMbFlbKSbJtaaabJubMmbMnbMobMpbGBbMqbMrbMsbMtbFnbMubMvbMwbMxbMybMybMybMybMzbMAbMBbMBbMCbMDbMEbMFbMGbMHbMIbMJbMKbMLbMJbMMbMKbMJbMJbMLbMMbMJbMJbMMbMJbMJbMLbMJbMNbMObpQbrnbpQbMPbyXbMQbpQbpQbpQbpQbpQbpQbMRbFPbFQbMSbMTbMUbMVbMWbMXbMYbMSbAJbMZbNabChbAJbAJbNbbKtbNcbHDbHDbFXbFXbFXbFXbGbbFXbNdbIQbNebFXbNfbHCbgBbHDbNgbNhbNibHDaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaabDBbNjbNjbNjbNjbNjbNjbNkbEVbNlbNjbMdbEVbEVbEVbEVbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaafaaaaaaaaaaafaaaaaaaaabFlbNmbNnbNobFlbKSbNpaaabNqbHRbNrbNsbNtbGBbGBbNubNvbNwbNxbNybNzbNAbNBbNBbNBbNBbNBbNCbNDbNEbNFbNGbNHbNIbNJbNKbNLbNMbNNbNObNPbNQbNQbNObNQbNQbNPbNQbNQbNQbNQbNQbNQbNPbNRbrnbNSbNTbNUbNVbNWbNXakBakCakDbObbOcbOdbFsbFObFPbFQbOebOfbOgbOhbOibOjbOkbOlbAJbAJbOmbAJbAJbOnbOobKtbnnbOpaafbOqbOrbOsbOtbOubOtbOvbOwbOxbFXbOybGcbOzbHDbOAbOBbOBbOCaagaagaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabODbETbETbETbETbETbETbETbOEbEWbEVbEVbEVbEVbOFbEWbDBaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From e0f4b0d1ed8d12c1c8e896e86eec589e4cb30906 Mon Sep 17 00:00:00 2001 From: Asanadas Date: Fri, 24 May 2013 14:55:28 -0400 Subject: [PATCH 55/63] Bugfix: Prevents airlock_controller.dm and similar from being destroyed by mech drills or acid. Prevents headaches. --- code/game/machinery/embedded_controller/access_controller.dm | 1 + code/game/machinery/embedded_controller/airlock_controller.dm | 1 + .../machinery/embedded_controller/simple_vent_controller.dm | 1 + .../machinery/embedded_controller/smart_airlock_controller.dm | 2 +- 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/embedded_controller/access_controller.dm b/code/game/machinery/embedded_controller/access_controller.dm index fb5cc1575a..a0d9c847b2 100644 --- a/code/game/machinery/embedded_controller/access_controller.dm +++ b/code/game/machinery/embedded_controller/access_controller.dm @@ -153,6 +153,7 @@ obj/machinery/embedded_controller/radio/access_controller name = "Access Console" density = 0 power_channel = ENVIRON + unacidable = 1 frequency = 1449 diff --git a/code/game/machinery/embedded_controller/airlock_controller.dm b/code/game/machinery/embedded_controller/airlock_controller.dm index a997dcfdac..9aa6a5a8e9 100644 --- a/code/game/machinery/embedded_controller/airlock_controller.dm +++ b/code/game/machinery/embedded_controller/airlock_controller.dm @@ -262,6 +262,7 @@ obj/machinery/embedded_controller/radio/airlock_controller name = "Airlock Console" density = 0 + unacidable = 1 frequency = 1449 power_channel = ENVIRON diff --git a/code/game/machinery/embedded_controller/simple_vent_controller.dm b/code/game/machinery/embedded_controller/simple_vent_controller.dm index f43031884d..f226d33f9e 100644 --- a/code/game/machinery/embedded_controller/simple_vent_controller.dm +++ b/code/game/machinery/embedded_controller/simple_vent_controller.dm @@ -44,6 +44,7 @@ name = "Vent Controller" density = 0 + unacidable = 1 frequency = 1229 power_channel = ENVIRON diff --git a/code/game/machinery/embedded_controller/smart_airlock_controller.dm b/code/game/machinery/embedded_controller/smart_airlock_controller.dm index 3d5fe5a01e..032c1fa82c 100644 --- a/code/game/machinery/embedded_controller/smart_airlock_controller.dm +++ b/code/game/machinery/embedded_controller/smart_airlock_controller.dm @@ -252,7 +252,7 @@ obj/machinery/embedded_controller/radio/smart_airlock_controller name = "Cycling Airlock Console" density = 0 - + unacidable = 1 frequency = 1449 power_channel = ENVIRON From f6f263ebcdc217af5697ded277c6626b367de4ec Mon Sep 17 00:00:00 2001 From: fauxtada Date: Sat, 25 May 2013 09:32:25 -0700 Subject: [PATCH 56/63] Wall Recharger Fix - Oopsie. Sprites should work now when recharger is charging. --- code/game/machinery/recharger.dm | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index ab0c7f8bc0..d50cc775ca 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -104,4 +104,27 @@ obj/machinery/recharger/update_icon() //we have an update_icon() in addition to obj/machinery/recharger/wallcharger name = "wall recharger" icon = 'icons/obj/stationobjs.dmi' - icon_state = "wrecharger0" \ No newline at end of file + icon_state = "wrecharger0" + +obj/machinery/recharger/wallcharger/process() + if(stat & (NOPOWER|BROKEN) || !anchored) + return + + if(charging) + if(istype(charging, /obj/item/weapon/gun/energy)) + var/obj/item/weapon/gun/energy/E = charging + if(E.power_supply.charge < E.power_supply.maxcharge) + E.power_supply.give(100) + icon_state = "wrecharger1" + use_power(250) + else + icon_state = "wrecharger2" + return + if(istype(charging, /obj/item/weapon/melee/baton)) + var/obj/item/weapon/melee/baton/B = charging + if(B.charges < initial(B.charges)) + B.charges++ + icon_state = "wrecharger1" + use_power(150) + else + icon_state = "wrecharger2" \ No newline at end of file From afb49c05d95a2082a1c60a48184f3909bcce46be Mon Sep 17 00:00:00 2001 From: VitrescentTortoise Date: Sat, 25 May 2013 12:52:56 -0700 Subject: [PATCH 57/63] Fixed lemonjuice showing up as ..what? --- .../reagents/reagent_containers/food/drinks/drinkingglass.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm b/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm index d919ca3277..48636b4b60 100644 --- a/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm +++ b/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm @@ -42,9 +42,9 @@ icon_state = "chocolateglass" name = "Glass of chocolate" desc = "Tasty" - if("lemon") + if("lemonjuice") icon_state = "lemonglass" - name = "Glass of lemon" + name = "Glass of lemonjuice" desc = "Sour..." if("cola") icon_state = "glass_brown" From c451287aa8b91b817024eb3367896f6c8dda44c8 Mon Sep 17 00:00:00 2001 From: VitrescentTortoise Date: Sat, 25 May 2013 14:17:16 -0700 Subject: [PATCH 58/63] The name of changeling husks is now unknown --- code/game/gamemodes/changeling/changeling_powers.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm index 63ba22d87f..4d0a9612b0 100644 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ b/code/game/gamemodes/changeling/changeling_powers.dm @@ -120,6 +120,7 @@ T.dna.real_name = T.real_name //Set this again, just to be sure that it's properly set. changeling.absorbed_dna |= T.dna + T.real_name = "Unknown" if(src.nutrition < 400) src.nutrition = min((src.nutrition + T.nutrition), 400) changeling.chem_charges += 10 changeling.geneticpoints += 2 From a764c226f897a16454b540a8ea20df668199a9d3 Mon Sep 17 00:00:00 2001 From: cib Date: Sun, 26 May 2013 00:12:59 +0200 Subject: [PATCH 59/63] Implemented a system to avoid the same event happening too often. Also bumped event frequency, this shouldn't be as bad with the same event not repeating itself that often. --- code/modules/events/event_dynamic.dm | 8 ++++++++ code/modules/events/event_manager.dm | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index fa0a6c6efc..7edf5b84cc 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -20,6 +20,8 @@ sleep(2400) */ +var/list/event_last_fired = list() + //Always triggers an event when called, dynamically chooses events based on job population /proc/spawn_dynamic_event() if(!config.allow_random_events) @@ -86,8 +88,14 @@ if(!sent_ninja_to_station && toggle_space_ninja) possibleEvents[/datum/event/space_ninja] = max(active_with_role["Security"], 5) + for(var/event_type in event_last_fired) if(possibleEvents[event_type]) + var/time_passed = world.time - event_last_fired[event_type] + var/weight_modifier = max(0, 60 * 60 - time_passed / 100) + + possibleEvents[event_type] = max(possibleEvents[event_type] - weight_modifier, 0) var/picked_event = pickweight(possibleEvents) + event_last_fired[picked_event] = world.time // Debug code below here, very useful for testing so don't delete please. var/debug_message = "Firing random event. " diff --git a/code/modules/events/event_manager.dm b/code/modules/events/event_manager.dm index b2201c7c92..585cf6122a 100644 --- a/code/modules/events/event_manager.dm +++ b/code/modules/events/event_manager.dm @@ -2,8 +2,8 @@ var/list/allEvents = typesof(/datum/event) - /datum/event var/list/potentialRandomEvents = typesof(/datum/event) - /datum/event //var/list/potentialRandomEvents = typesof(/datum/event) - /datum/event - /datum/event/spider_infestation - /datum/event/alien_infestation -var/eventTimeLower = 10000 //15 minutes -var/eventTimeUpper = 25000 //30 minutes +var/eventTimeLower = 6000 //10 minutes +var/eventTimeUpper = 12000 //15 minutes var/scheduledEvent = null From 9074622eb96e4985b3180fa4b2d50d3fcb892322 Mon Sep 17 00:00:00 2001 From: cib Date: Sun, 26 May 2013 00:23:31 +0200 Subject: [PATCH 60/63] Adjusted event chance modifier based on last event. Had the wrong numbers, basically every event would happen only once. --- code/modules/events/event_dynamic.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index 7edf5b84cc..93fc84f97c 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -90,7 +90,8 @@ var/list/event_last_fired = list() for(var/event_type in event_last_fired) if(possibleEvents[event_type]) var/time_passed = world.time - event_last_fired[event_type] - var/weight_modifier = max(0, 60 * 60 - time_passed / 100) + var/full_recharge_after = 60 * 60 * 10 * 3 // 3 hours + var/weight_modifier = max(0, (full_recharge_after - time_passed) / 300) possibleEvents[event_type] = max(possibleEvents[event_type] - weight_modifier, 0) From 827e85c4c345b98dc177f62ec2bd9ef278397237 Mon Sep 17 00:00:00 2001 From: VitrescentTortoise Date: Sat, 25 May 2013 16:00:22 -0700 Subject: [PATCH 61/63] Properly sets husks' names to unknown --- code/game/gamemodes/changeling/changeling_powers.dm | 1 - code/modules/mob/living/carbon/human/human.dm | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm index 4d0a9612b0..63ba22d87f 100644 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ b/code/game/gamemodes/changeling/changeling_powers.dm @@ -120,7 +120,6 @@ T.dna.real_name = T.real_name //Set this again, just to be sure that it's properly set. changeling.absorbed_dna |= T.dna - T.real_name = "Unknown" if(src.nutrition < 400) src.nutrition = min((src.nutrition + T.nutrition), 400) changeling.chem_charges += 10 changeling.geneticpoints += 2 diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index a388aaf0ec..69a8357cb2 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -439,7 +439,7 @@ //Returns "Unknown" if facially disfigured and real_name if not. Useful for setting name when polyacided or when updating a human's name variable /mob/living/carbon/human/proc/get_face_name() var/datum/organ/external/head/head = get_organ("head") - if( !head || head.disfigured || (head.status & ORGAN_DESTROYED) || !real_name ) //disfigured. use id-name if possible + if( !head || head.disfigured || (head.status & ORGAN_DESTROYED) || !real_name || (HUSK in mutations) ) //disfigured. use id-name if possible return "Unknown" return real_name From 61b7aa06ae70a45c419c83f061213cb58e58f2c0 Mon Sep 17 00:00:00 2001 From: meyar Date: Sun, 26 May 2013 12:14:18 -0400 Subject: [PATCH 62/63] Remembered to actually add to the changelog --- html/changelog.html | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/html/changelog.html b/html/changelog.html index 30d9f62c64..2b70e55b07 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -59,6 +59,19 @@ should be listed in the changelog upon commit though. Thanks. -->
    +
    +

    5/26/2013

    +

    Meyar updated:

    +
      +
    • The syndicate shuttle now has a cycling airlock during Nuke rounds.
    • +
    • Restored the ability for the syndicate Agent ID to change the name on the card (reforge it) more than once.
    • +
    • ERT Radio now functional again.
    • +
    • Research blast doors now actually lock down the entirety of station-side Research.
    • +
    • Added lock down buttons to the wardens office.
    • +
    • The randomized barsign has made a return.
    • +
    +
    +

    21 May 2013

    SkyMarshal updated:

    From 30a39d580fcb14027e7d78367c9da73be6d8e4f0 Mon Sep 17 00:00:00 2001 From: meyar Date: Sun, 26 May 2013 14:26:00 -0400 Subject: [PATCH 63/63] Forgot about airlock access --- html/changelog.html | 1 + 1 file changed, 1 insertion(+) diff --git a/html/changelog.html b/html/changelog.html index 2b70e55b07..5d1ffc2911 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -69,6 +69,7 @@ should be listed in the changelog upon commit though. Thanks. -->
  • Research blast doors now actually lock down the entirety of station-side Research.
  • Added lock down buttons to the wardens office.
  • The randomized barsign has made a return.
  • +
  • Syndicate Agent ID's external airlock access restored.