From 25af6373c4b917fe599775cc14f24c7265efd72f Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Wed, 4 Jan 2012 00:11:26 +1000 Subject: [PATCH 1/8] added get_opposite(var/dir) to helpers.dm, new diverters / conveyors 95% working, antiqua cargo bay had to be tweaked. Signed-off-by: CaelAislinn --- code/defines/procs/helpers.dm | 18 + code/modules/recycling/conveyor2.dm | 196 +++++++-- maps/Antiqua.dmm | 629 ++++++++++++++-------------- 3 files changed, 502 insertions(+), 341 deletions(-) diff --git a/code/defines/procs/helpers.dm b/code/defines/procs/helpers.dm index f40494225c..eb02b09a6d 100644 --- a/code/defines/procs/helpers.dm +++ b/code/defines/procs/helpers.dm @@ -1453,3 +1453,21 @@ proc/safepick(list/list) return return pick(list) +proc/get_opposite(var/checkdir) + switch(checkdir) + if(NORTH) + return SOUTH + if(SOUTH) + return NORTH + if(EAST) + return WEST + if(WEST) + return EAST + if(NORTHEAST) + return SOUTHWEST + if(NORTHWEST) + return SOUTHEAST + if(SOUTHEAST) + return NORTHWEST + if(SOUTHWEST) + return NORTHEAST \ No newline at end of file diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index da31364f32..ce806b6d92 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -16,39 +16,58 @@ var/list/affecting // the list of all items that will be moved this ptick var/id = "" // the control ID - must match controller ID + //these ones below for backwards compatibility + + // following two only used if a diverter is present + var/divert = 0 // if non-zero, direction to divert items + var/divdir = 0 // if diverting, will be conveyer dir needed to divert (otherwise dense) + var/basedir // this is the default (forward) direction, set by the map dir + // note dir var can vary when the direction changes + // create a conveyor /obj/machinery/conveyor/New() ..() - switch(dir) - if(NORTH) - forwards = NORTH - backwards = SOUTH - if(SOUTH) - forwards = SOUTH - backwards = NORTH - if(EAST) - forwards = EAST - backwards = WEST - if(WEST) - forwards = WEST - backwards = EAST - if(NORTHEAST) - forwards = EAST - backwards = SOUTH - if(NORTHWEST) - forwards = SOUTH - backwards = WEST - if(SOUTHEAST) - forwards = NORTH - backwards = EAST - if(SOUTHWEST) - forwards = WEST - backwards = NORTH + if(!forwards) + switch(dir) + if(NORTH) + forwards = NORTH + if(SOUTH) + forwards = SOUTH + if(EAST) + forwards = EAST + if(WEST) + forwards = WEST + if(NORTHEAST) + forwards = EAST + if(NORTHWEST) + forwards = SOUTH + if(SOUTHEAST) + forwards = NORTH + if(SOUTHWEST) + forwards = WEST + if(!backwards) + switch(dir) + if(NORTH) + backwards = SOUTH + if(SOUTH) + backwards = NORTH + if(EAST) + backwards = WEST + if(WEST) + backwards = EAST + if(NORTHEAST) + backwards = SOUTH + if(NORTHWEST) + backwards = WEST + if(SOUTHEAST) + backwards = EAST + if(SOUTHWEST) + backwards = NORTH /obj/machinery/conveyor/proc/setmove() - if(operating == 1) + if(operating > 0) movedir = forwards - else + else if(operating < 0) movedir = backwards update() @@ -72,6 +91,9 @@ return use_power(100) + if(divert && dir==divdir) // update if diverter present + movedir = divert + affecting = loc.contents - src // moved items will be all in loc spawn(1) // slight delay to prevent infinite propagation due to map order var/items_moved = 0 @@ -221,3 +243,123 @@ if(S.id == src.id) S.position = position S.update() + +// converyor diverter +// extendable arm that can be switched so items on the conveyer are diverted sideways +// situate in same turf as conveyor +// only works if belts is running proper direction +// +// +/obj/machinery/diverter + icon = 'recycling.dmi' + icon_state = "diverter0" + name = "diverter" + desc = "A diverter arm for a conveyor belt." + anchored = 1 + layer = FLY_LAYER + var/obj/machinery/conveyor/conv // the conveyor this diverter works on + var/deployed = 0 // true if diverter arm is extended + var/operating = 0 // true if arm is extending/contracting + var/divert_to // the dir that diverted items will be moved + var/divert_from // the dir items must be moving to divert + + +// create a diverter +// set up divert_to and divert_from directions depending on dir state +/obj/machinery/diverter/New() + ..() + switch(dir) + if(NORTH) + divert_to = WEST // stuff will be moved to the west + divert_from = NORTH // if entering from the north + if(SOUTH) + divert_to = EAST + divert_from = NORTH + if(EAST) + divert_to = EAST + divert_from = SOUTH + if(WEST) + divert_to = WEST + divert_from = SOUTH + if(NORTHEAST) + divert_to = NORTH + divert_from = EAST + if(NORTHWEST) + divert_to = NORTH + divert_from = WEST + if(SOUTHEAST) + divert_to = SOUTH + divert_from = EAST + if(SOUTHWEST) + divert_to = SOUTH + divert_from = WEST + spawn(2) + // wait for map load then find the conveyor in this turf + conv = locate() in src.loc + if(conv) // divert_from dir must match possible conveyor movement + if(conv.backwards != divert_from && conv.backwards != turn(divert_from,180) ) + del(src) // if no dir match, then delete self + set_divert() + update() + +// update the icon state depending on whether the diverter is extended +/obj/machinery/diverter/proc/update() + icon_state = "diverter[deployed]" + +// call to set the diversion vars of underlying conveyor +/obj/machinery/diverter/proc/set_divert() + if(conv) + if(deployed) + conv.divert = divert_to + conv.divdir = divert_from + else + conv.divert= 0 + + +// *** TESTING click to toggle +/obj/machinery/diverter/Click() + toggle() + + +// toggle between arm deployed and not deployed, showing animation +// +/obj/machinery/diverter/proc/toggle() + if( stat & (NOPOWER|BROKEN)) + return + + if(operating) + return + + use_power(50) + operating = 1 + if(deployed) + flick("diverter10",src) + icon_state = "diverter0" + sleep(10) + deployed = 0 + else + flick("diverter01",src) + icon_state = "diverter1" + sleep(10) + deployed = 1 + operating = 0 + update() + set_divert() + +// don't allow movement into the 'backwards' direction if deployed +/obj/machinery/diverter/CanPass(atom/movable/O, var/turf/target) + var/direct = get_dir(O, target) + if(direct == divert_to) // prevent movement through body of diverter + return 0 + if(!deployed) + return 1 + return(direct != turn(divert_from,180)) + +// don't allow movement through the arm if deployed +/obj/machinery/diverter/CheckExit(atom/movable/O, var/turf/target) + var/direct = get_dir(O, target) + if(direct == turn(divert_to,180)) // prevent movement through body of diverter + return 0 + if(!deployed) + return 1 + return(direct != divert_from) diff --git a/maps/Antiqua.dmm b/maps/Antiqua.dmm index d1f6c4c750..d176893059 100644 --- a/maps/Antiqua.dmm +++ b/maps/Antiqua.dmm @@ -403,254 +403,255 @@ "hM" = (/obj/machinery/light_switch{pixel_x = 24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/storage) "hN" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/qm) "hO" = (/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "1"},/turf/simulated/floor,/area) -"hP" = (/obj/machinery/conveyor{dir = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"hP" = (/obj/machinery/conveyor{backwards = 2; dir = 2; divdir = 0; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) "hQ" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) "hR" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/quartermaster/qm) -"hS" = (/obj/machinery/conveyor{dir = 2; divdir = 0; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hS" = (/obj/machinery/conveyor{backwards = null; dir = 2; divdir = 0; forwards = null; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) "hT" = (/obj/structure/stool/chair{name = "Bailiff"},/turf/simulated/floor,/area) "hU" = (/obj/machinery/door/airlock/maintenance,/turf/simulated/floor,/area/quartermaster/qm) -"hV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) -"hW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"hX" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor,/area) -"hY" = (/obj/structure/table{step_y = 0},/turf/simulated/floor,/area) -"hZ" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor,/area) -"ia" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) -"ib" = (/obj/structure/closet/crate,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"ic" = (/obj/machinery/requests_console{department = "Quartermaster"; name = "Quartermaster Requests Console"; pixel_x = -24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/qm) -"id" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) -"ie" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"if" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) -"ig" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "grimy"},/area) -"ih" = (/obj/structure/window/reinforced{dir = 1},/obj/item/device/flashlight,/turf/simulated/floor{icon_state = "grimy"},/area) -"ii" = (/obj/structure/stool/bed,/turf/simulated/floor,/area) -"ij" = (/obj/machinery/door/window/brigdoor/eastleft,/obj/machinery/door/window/brigdoor/westright,/turf/simulated/floor,/area) -"ik" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/storage) -"il" = (/obj/machinery/door_control{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) -"im" = (/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) -"in" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) -"io" = (/turf/simulated/floor{icon_state = "grimy"},/area) -"ip" = (/obj/item/weapon/cigpacket,/turf/simulated/floor{icon_state = "grimy"},/area) -"iq" = (/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/quartermaster/storage) -"ir" = (/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) -"is" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) -"it" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) -"iu" = (/obj/machinery/conveyor{dir = 8; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) -"iv" = (/obj/machinery/conveyor{dir = 2; divdir = 0; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) -"iw" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) -"ix" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) -"iy" = (/obj/machinery/door/window/westleft,/turf/simulated/floor{icon_state = "grimy"},/area) -"iz" = (/obj/machinery/conveyor{dir = 1; divert = 1; id = "QMoffload"},/obj/machinery/diverter{dir = 4},/turf/simulated/floor,/area/quartermaster/storage) -"iA" = (/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) -"iB" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/qm) -"iC" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) -"iD" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 9},/turf/simulated/floor,/area/quartermaster/qm) -"iE" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 5},/turf/simulated/floor,/area/quartermaster/qm) -"iF" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) -"iG" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"iH" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"iI" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"iJ" = (/obj/machinery/vending/security,/turf/simulated/floor,/area) -"iK" = (/obj/structure/table/woodentable,/obj/item/device/detective_scanner,/turf/simulated/floor{icon_state = "grimy"},/area) -"iL" = (/obj/structure/closet/secure_closet/detective,/turf/simulated/floor{icon_state = "grimy"},/area) -"iM" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/turf/simulated/floor,/area) -"iN" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) -"iO" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) -"iP" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) -"iQ" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) -"iR" = (/obj/machinery/conveyor_switch{id = "QMshuttle"; name = "Shuttle conveyor switch"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) -"iS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"iT" = (/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) -"iU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) -"iV" = (/turf/simulated/wall,/area/maintenance/apmaint) -"iW" = (/turf/simulated/wall,/area/maintenance/aft) -"iX" = (/obj/structure/plasticflaps,/turf/simulated/floor,/area/quartermaster/storage) -"iY" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #3"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"iZ" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor,/area/quartermaster/qm) -"ja" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"jb" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"jc" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/apmaint) -"jd" = (/turf/simulated/floor/plating,/area/maintenance/apmaint) -"je" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/aft) -"jf" = (/turf/simulated/floor/plating,/area/maintenance/aft) -"jg" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #4"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"jh" = (/obj/machinery/conveyor_switch{id = "QMoffload"; name = "Cargo Bay Conveyor Switch"},/turf/simulated/floor,/area/quartermaster/qm) -"ji" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor,/area/quartermaster/qm) -"jj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"jk" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/qm) -"jl" = (/obj/structure/table/reinforced,/obj/item/weapon/stamp/denied,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = -3; pixel_y = 3},/turf/simulated/floor,/area/quartermaster/qm) -"jm" = (/obj/machinery/disposal,/turf/simulated/floor,/area/quartermaster/qm) -"jn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"jo" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area) -"jp" = (/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor,/area/quartermaster/storage) -"jq" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright,/obj/machinery/door/window/eastleft,/turf/simulated/floor,/area/quartermaster/qm) -"jr" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark/start{name = "Quartermaster"},/turf/simulated/floor,/area/quartermaster/qm) -"js" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor,/area/quartermaster/qm) -"jt" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westleft,/obj/machinery/door/window/eastright,/turf/simulated/floor,/area/quartermaster/qm) -"ju" = (/obj/structure/rack,/obj/item/clothing/suit/fire/firefighter,/obj/item/clothing/mask/gas,/obj/item/weapon/tank/emergency_oxygen,/obj/item/clothing/glasses/meson,/turf/simulated/floor,/area/quartermaster/qm) -"jv" = (/obj/structure/table,/turf/simulated/floor,/area/quartermaster/storage) -"jw" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor,/area/quartermaster/storage) -"jx" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/quartermaster/storage) -"jy" = (/obj/structure/table,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/quartermaster/storage) -"jz" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/camera{c_tag = "Cargo Loading Area North"},/turf/simulated/floor,/area/quartermaster/storage) -"jA" = (/obj/structure/closet,/turf/simulated/floor,/area/quartermaster/qm) -"jB" = (/obj/structure/rack,/turf/simulated/floor,/area/quartermaster/qm) -"jC" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor,/area/quartermaster/qm) -"jD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) -"jE" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor,/area) -"jF" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (EAST)"; icon_state = "wood_1tileendtable"; dir = 4},/obj/item/weapon/hand_tele,/turf/simulated/floor,/area) -"jG" = (/obj/structure/table/woodentable{tag = "icon-wood_1tilethick (EAST)"; icon_state = "wood_1tilethick"; dir = 4},/obj/item/weapon/camera_test,/turf/simulated/floor,/area) -"jH" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (WEST)"; icon_state = "wood_1tileendtable"; dir = 8},/obj/item/weapon/coin,/turf/simulated/floor,/area) -"jI" = (/turf/simulated/wall,/area/crew_quarters/cafeteria) -"jJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jK" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jL" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jM" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jO" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jQ" = (/obj/machinery/computer/communications,/turf/simulated/floor,/area) -"jR" = (/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jU" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jV" = (/obj/structure/table,/obj/machinery/light/spot{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jW" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = -8; pixel_y = 2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jX" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jY" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jZ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"ka" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kb" = (/turf/simulated/floor{dir = 9; icon_state = "carpetside"},/area) -"kc" = (/turf/simulated/floor{dir = 1; icon_state = "carpetside"},/area) -"kd" = (/turf/simulated/floor{dir = 5; icon_state = "carpetside"},/area) -"ke" = (/turf/simulated/wall,/area/maintenance/asmaint) -"kf" = (/turf/simulated/floor/plating,/area/maintenance/asmaint) -"kg" = (/turf/simulated/wall/r_wall,/area/maintenance/asmaint) -"kh" = (/obj/machinery/computer/crew,/turf/simulated/floor,/area) -"ki" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kk" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kl" = (/turf/simulated/floor{dir = 8; icon_state = "carpetside"},/area) -"km" = (/turf/simulated/floor{icon_state = "carpet"},/area) -"kn" = (/turf/simulated/floor{dir = 4; icon_state = "carpetside"},/area) -"ko" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kp" = (/obj/structure/table{tag = "icon-tabledir (SOUTHEAST)"; icon_state = "tabledir"; dir = 6},/turf/simulated/floor,/area) -"kq" = (/obj/structure/table{tag = "icon-tabledir (SOUTHWEST)"; icon_state = "tabledir"; dir = 10},/turf/simulated/floor,/area) -"kr" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/turf/simulated/floor,/area) -"ks" = (/obj/machinery/light/spot{dir = 8; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kt" = (/obj/machinery/camera{c_tag = "Cafeteria Starboard"; dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"ku" = (/obj/machinery/door{icon = 'icons/obj/doors/doormorgue.dmi'; name = "Crew Quarters"; req_access_txt = "0"},/turf/simulated/floor,/area) -"kv" = (/turf/simulated/floor{dir = 10; icon_state = "carpetside"},/area) -"kw" = (/turf/simulated/floor{icon_state = "carpetside"},/area) -"kx" = (/turf/simulated/floor{dir = 6; icon_state = "carpetside"},/area) -"ky" = (/obj/machinery/computer/shuttle,/turf/simulated/floor,/area) -"kz" = (/obj/structure/table{dir = 5; icon_state = "tabledir"},/turf/simulated/floor,/area) -"kA" = (/obj/structure/table{tag = "icon-tabledir (NORTH)"; icon_state = "tabledir"; dir = 1},/turf/simulated/floor,/area) -"kB" = (/obj/structure/table{icon_state = "tabledir"; dir = 9},/turf/simulated/floor,/area) -"kC" = (/obj/item/weapon/mop,/turf/simulated/floor,/area) -"kD" = (/obj/machinery/camera{c_tag = "Cafeteria Port"; dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kE" = (/obj/machinery/computer/station_alert,/turf/simulated/floor,/area) -"kF" = (/obj/structure/stool/chair{dir = 1},/turf/simulated/floor,/area) -"kG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) -"kJ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/northleft{name = "Kitchen Delivery"; req_access_txt = "34;25;28"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/crew_quarters/kitchen) -"kK" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen"; name = "Kitchen Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kL" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) -"kM" = (/turf/simulated/wall,/area/crew_quarters/kitchen) -"kN" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area) -"kO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/obj/machinery/power/apc{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kS" = (/obj/machinery/door/window/southleft{name = "Kitchen Delivery"; req_access_txt = "25;28"},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/kitchen) -"kT" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/sink/kitchen2{pixel_y = 28},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kU" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kV" = (/obj/machinery/door_control{id = "kitchen"; name = "Kitchen Shutters"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kW" = (/obj/structure/closet/secure_closet/kitchen,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kX" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"kY" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/item/weapon/zippo,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"kZ" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"la" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lb" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) -"ld" = (/obj/machinery/light_switch{dir = 8; pixel_x = -24; pixel_y = 6},/obj/machinery/light_switch{dir = 8; name = "light switch (Cafeteria)"; otherarea = "crew_quarters/cafeteria"; pixel_x = -24; pixel_y = -6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"le" = (/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lf" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lg" = (/obj/structure/closet/secure_closet/fridge,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lh" = (/obj/machinery/door_control{dir = 8; id = "bar"; name = "Bar Shutters"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"li" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lj" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lk" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"ll" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lm" = (/obj/structure/reagent_dispensers/beerkeg,/obj/structure/window/reinforced{dir = 4},/obj/machinery/light_switch{dir = 1; pixel_y = 24},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"ln" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lo" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lp" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lq" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/closet/secure_closet/meat,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lr" = (/obj/machinery/smartfridge,/turf/simulated/wall,/area) -"ls" = (/obj/structure/closet/gmcloset,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lu" = (/obj/effect/landmark/start{name = "Bartender"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lx" = (/obj/machinery/door/window/eastright{name = "Bar"; req_one_access_txt = "25"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"ly" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lz" = (/obj/machinery/door/window/westleft{name = "Kitchen"; req_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lA" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lB" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Freezer"; req_one_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lC" = (/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lD" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lE" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/asmaint) -"lF" = (/obj/structure/closet/crate/internals,/turf/simulated/floor,/area) -"lG" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/projectile/shotgun,/obj/item/clothing/head/that,/obj/machinery/light/spot,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lH" = (/obj/machinery/vending/boozeomat{pixel_x = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lI" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/barman_recipes{pixel_x = 4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lJ" = (/obj/structure/table/reinforced,/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lK" = (/obj/structure/table/reinforced,/obj/machinery/light/spot,/obj/machinery/requests_console{department = "Bar"; departmentType = 2; name = "Bar RC"; pixel_x = -1; pixel_y = -30},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lL" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lM" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lN" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lO" = (/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; name = "Kitchen RC"; pixel_x = 0; pixel_y = -30},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lP" = (/obj/item/weapon/storage/donkpocket_kit,/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/machinery/camera{c_tag = "Kitchen"; dir = 1},/obj/structure/table,/obj/machinery/processor,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lR" = (/obj/machinery/light/spot,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/table,/obj/machinery/blender{pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lS" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/machinery/juicer,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lT" = (/obj/machinery/chem_master/condimaster,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lU" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lV" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) -"lX" = (/turf/simulated/wall/r_wall,/area/crew_quarters/bar) -"lY" = (/turf/simulated/wall/r_wall,/area/crew_quarters/kitchen) -"lZ" = (/turf/simulated/wall/r_wall,/area/maintenance/aft) -"ma" = (/turf/unsimulated/wall,/area/start) -"mb" = (/turf/space,/area/start) -"mc" = (/obj/effect/landmark/start,/turf/space,/area/start) -"md" = (/turf/unsimulated/wall{icon = 'icons/misc/fullscreen.dmi'; icon_state = "titleold"; name = "Baystation 13"},/area/start) -"me" = (/turf/space,/area/shuttle) -"mf" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/supply/dock) -"mg" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/supply/dock) -"mh" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) -"mi" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/supply/dock) -"mj" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/supply/dock) -"mk" = (/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) -"ml" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{dir = 2; icon_state = "swall_f5"; tag = "icon-swall_f10"},/area/supply/dock) -"mm" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/supply/dock) -"mn" = (/obj/effect/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) -"mo" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/shuttle/floor,/area/supply/dock) -"mp" = (/turf/simulated/shuttle/floor,/area/supply/dock) -"mq" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/obj/effect/sign/movingparts{pixel_x = -32},/turf/simulated/shuttle/floor,/area/supply/dock) -"mr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) -"ms" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) -"mt" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) -"mu" = (/turf/space,/area/supply) -"mv" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/structure/plasticflaps,/turf/simulated/shuttle/floor,/area/supply/dock) -"mw" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 5},/turf/simulated/shuttle/floor,/area/supply/dock) -"mx" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/supply/dock) -"my" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/supply/dock) -"mz" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/supply/dock) -"mA" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/space,/area/supply/dock) -"mB" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/space,/area/supply/dock) -"mC" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/space,/area/supply/dock) +"hV" = (/obj/machinery/conveyor{backwards = 1; dir = 2; divdir = 0; forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) +"hX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) +"hY" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor,/area) +"hZ" = (/obj/structure/table{step_y = 0},/turf/simulated/floor,/area) +"ia" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor,/area) +"ib" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) +"ic" = (/obj/structure/closet/crate,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"id" = (/obj/machinery/requests_console{department = "Quartermaster"; name = "Quartermaster Requests Console"; pixel_x = -24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/qm) +"ie" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) +"if" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) +"ig" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) +"ih" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "grimy"},/area) +"ii" = (/obj/structure/window/reinforced{dir = 1},/obj/item/device/flashlight,/turf/simulated/floor{icon_state = "grimy"},/area) +"ij" = (/obj/structure/stool/bed,/turf/simulated/floor,/area) +"ik" = (/obj/machinery/door/window/brigdoor/eastleft,/obj/machinery/door/window/brigdoor/westright,/turf/simulated/floor,/area) +"il" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/storage) +"im" = (/obj/machinery/door_control{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) +"in" = (/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) +"io" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) +"ip" = (/turf/simulated/floor{icon_state = "grimy"},/area) +"iq" = (/obj/item/weapon/cigpacket,/turf/simulated/floor{icon_state = "grimy"},/area) +"ir" = (/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/quartermaster/storage) +"is" = (/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) +"it" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) +"iu" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) +"iv" = (/obj/machinery/conveyor{backwards = 4; dir = 5; forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"iw" = (/obj/machinery/conveyor{backwards = 1; dir = 2; divdir = 0; forwards = 2; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) +"ix" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) +"iy" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) +"iz" = (/obj/machinery/door/window/westleft,/turf/simulated/floor{icon_state = "grimy"},/area) +"iA" = (/obj/machinery/conveyor{backwards = 4; dir = 6; divert = 1; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"iB" = (/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"iC" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/qm) +"iD" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) +"iE" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 9},/turf/simulated/floor,/area/quartermaster/qm) +"iF" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 5},/turf/simulated/floor,/area/quartermaster/qm) +"iG" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) +"iH" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) +"iI" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) +"iJ" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) +"iK" = (/obj/machinery/vending/security,/turf/simulated/floor,/area) +"iL" = (/obj/structure/table/woodentable,/obj/item/device/detective_scanner,/turf/simulated/floor{icon_state = "grimy"},/area) +"iM" = (/obj/structure/closet/secure_closet/detective,/turf/simulated/floor{icon_state = "grimy"},/area) +"iN" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/turf/simulated/floor,/area) +"iO" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) +"iP" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) +"iQ" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) +"iR" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) +"iS" = (/obj/machinery/conveyor_switch{id = "QMshuttle"; name = "Shuttle conveyor switch"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) +"iT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"iU" = (/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) +"iV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) +"iW" = (/turf/simulated/wall,/area/maintenance/apmaint) +"iX" = (/turf/simulated/wall,/area/maintenance/aft) +"iY" = (/obj/structure/plasticflaps,/turf/simulated/floor,/area/quartermaster/storage) +"iZ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #3"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) +"ja" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor,/area/quartermaster/qm) +"jb" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"jc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) +"jd" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/apmaint) +"je" = (/turf/simulated/floor/plating,/area/maintenance/apmaint) +"jf" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/aft) +"jg" = (/turf/simulated/floor/plating,/area/maintenance/aft) +"jh" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #4"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) +"ji" = (/obj/machinery/conveyor_switch{id = "QMoffload"; name = "Cargo Bay Conveyor Switch"},/turf/simulated/floor,/area/quartermaster/qm) +"jj" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor,/area/quartermaster/qm) +"jk" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"jl" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/qm) +"jm" = (/obj/structure/table/reinforced,/obj/item/weapon/stamp/denied,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = -3; pixel_y = 3},/turf/simulated/floor,/area/quartermaster/qm) +"jn" = (/obj/machinery/disposal,/turf/simulated/floor,/area/quartermaster/qm) +"jo" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"jp" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area) +"jq" = (/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor,/area/quartermaster/storage) +"jr" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright,/obj/machinery/door/window/eastleft,/turf/simulated/floor,/area/quartermaster/qm) +"js" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark/start{name = "Quartermaster"},/turf/simulated/floor,/area/quartermaster/qm) +"jt" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor,/area/quartermaster/qm) +"ju" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westleft,/obj/machinery/door/window/eastright,/turf/simulated/floor,/area/quartermaster/qm) +"jv" = (/obj/structure/rack,/obj/item/clothing/suit/fire/firefighter,/obj/item/clothing/mask/gas,/obj/item/weapon/tank/emergency_oxygen,/obj/item/clothing/glasses/meson,/turf/simulated/floor,/area/quartermaster/qm) +"jw" = (/obj/structure/table,/turf/simulated/floor,/area/quartermaster/storage) +"jx" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor,/area/quartermaster/storage) +"jy" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/quartermaster/storage) +"jz" = (/obj/structure/table,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/quartermaster/storage) +"jA" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/camera{c_tag = "Cargo Loading Area North"},/turf/simulated/floor,/area/quartermaster/storage) +"jB" = (/obj/structure/closet,/turf/simulated/floor,/area/quartermaster/qm) +"jC" = (/obj/structure/rack,/turf/simulated/floor,/area/quartermaster/qm) +"jD" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor,/area/quartermaster/qm) +"jE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) +"jF" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor,/area) +"jG" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (EAST)"; icon_state = "wood_1tileendtable"; dir = 4},/obj/item/weapon/hand_tele,/turf/simulated/floor,/area) +"jH" = (/obj/structure/table/woodentable{tag = "icon-wood_1tilethick (EAST)"; icon_state = "wood_1tilethick"; dir = 4},/obj/item/weapon/camera_test,/turf/simulated/floor,/area) +"jI" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (WEST)"; icon_state = "wood_1tileendtable"; dir = 8},/obj/item/weapon/coin,/turf/simulated/floor,/area) +"jJ" = (/turf/simulated/wall,/area/crew_quarters/cafeteria) +"jK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jL" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jM" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jO" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jQ" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jR" = (/obj/machinery/computer/communications,/turf/simulated/floor,/area) +"jS" = (/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jV" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jW" = (/obj/structure/table,/obj/machinery/light/spot{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jX" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = -8; pixel_y = 2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jY" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"ka" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kb" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kc" = (/turf/simulated/floor{dir = 9; icon_state = "carpetside"},/area) +"kd" = (/turf/simulated/floor{dir = 1; icon_state = "carpetside"},/area) +"ke" = (/turf/simulated/floor{dir = 5; icon_state = "carpetside"},/area) +"kf" = (/turf/simulated/wall,/area/maintenance/asmaint) +"kg" = (/turf/simulated/floor/plating,/area/maintenance/asmaint) +"kh" = (/turf/simulated/wall/r_wall,/area/maintenance/asmaint) +"ki" = (/obj/machinery/computer/crew,/turf/simulated/floor,/area) +"kj" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kl" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"km" = (/turf/simulated/floor{dir = 8; icon_state = "carpetside"},/area) +"kn" = (/turf/simulated/floor{icon_state = "carpet"},/area) +"ko" = (/turf/simulated/floor{dir = 4; icon_state = "carpetside"},/area) +"kp" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kq" = (/obj/structure/table{tag = "icon-tabledir (SOUTHEAST)"; icon_state = "tabledir"; dir = 6},/turf/simulated/floor,/area) +"kr" = (/obj/structure/table{tag = "icon-tabledir (SOUTHWEST)"; icon_state = "tabledir"; dir = 10},/turf/simulated/floor,/area) +"ks" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/turf/simulated/floor,/area) +"kt" = (/obj/machinery/light/spot{dir = 8; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"ku" = (/obj/machinery/camera{c_tag = "Cafeteria Starboard"; dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kv" = (/obj/machinery/door{icon = 'icons/obj/doors/doormorgue.dmi'; name = "Crew Quarters"; req_access_txt = "0"},/turf/simulated/floor,/area) +"kw" = (/turf/simulated/floor{dir = 10; icon_state = "carpetside"},/area) +"kx" = (/turf/simulated/floor{icon_state = "carpetside"},/area) +"ky" = (/turf/simulated/floor{dir = 6; icon_state = "carpetside"},/area) +"kz" = (/obj/machinery/computer/shuttle,/turf/simulated/floor,/area) +"kA" = (/obj/structure/table{dir = 5; icon_state = "tabledir"},/turf/simulated/floor,/area) +"kB" = (/obj/structure/table{tag = "icon-tabledir (NORTH)"; icon_state = "tabledir"; dir = 1},/turf/simulated/floor,/area) +"kC" = (/obj/structure/table{icon_state = "tabledir"; dir = 9},/turf/simulated/floor,/area) +"kD" = (/obj/item/weapon/mop,/turf/simulated/floor,/area) +"kE" = (/obj/machinery/camera{c_tag = "Cafeteria Port"; dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kF" = (/obj/machinery/computer/station_alert,/turf/simulated/floor,/area) +"kG" = (/obj/structure/stool/chair{dir = 1},/turf/simulated/floor,/area) +"kH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) +"kK" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/northleft{name = "Kitchen Delivery"; req_access_txt = "34;25;28"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/crew_quarters/kitchen) +"kL" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen"; name = "Kitchen Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) +"kN" = (/turf/simulated/wall,/area/crew_quarters/kitchen) +"kO" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area) +"kP" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/obj/machinery/power/apc{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kR" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kT" = (/obj/machinery/door/window/southleft{name = "Kitchen Delivery"; req_access_txt = "25;28"},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/kitchen) +"kU" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/sink/kitchen2{pixel_y = 28},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kV" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kW" = (/obj/machinery/door_control{id = "kitchen"; name = "Kitchen Shutters"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kX" = (/obj/structure/closet/secure_closet/kitchen,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kY" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kZ" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/item/weapon/zippo,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"la" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lb" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lc" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ld" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) +"le" = (/obj/machinery/light_switch{dir = 8; pixel_x = -24; pixel_y = 6},/obj/machinery/light_switch{dir = 8; name = "light switch (Cafeteria)"; otherarea = "crew_quarters/cafeteria"; pixel_x = -24; pixel_y = -6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lf" = (/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lg" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lh" = (/obj/structure/closet/secure_closet/fridge,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"li" = (/obj/machinery/door_control{dir = 8; id = "bar"; name = "Bar Shutters"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lk" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ll" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ln" = (/obj/structure/reagent_dispensers/beerkeg,/obj/structure/window/reinforced{dir = 4},/obj/machinery/light_switch{dir = 1; pixel_y = 24},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lo" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lp" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lq" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lr" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/closet/secure_closet/meat,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"ls" = (/obj/machinery/smartfridge,/turf/simulated/wall,/area) +"lt" = (/obj/structure/closet/gmcloset,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lv" = (/obj/effect/landmark/start{name = "Bartender"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lx" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ly" = (/obj/machinery/door/window/eastright{name = "Bar"; req_one_access_txt = "25"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lz" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lA" = (/obj/machinery/door/window/westleft{name = "Kitchen"; req_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lB" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lC" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Freezer"; req_one_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lD" = (/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lE" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lF" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/asmaint) +"lG" = (/obj/structure/closet/crate/internals,/turf/simulated/floor,/area) +"lH" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/projectile/shotgun,/obj/item/clothing/head/that,/obj/machinery/light/spot,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lI" = (/obj/machinery/vending/boozeomat{pixel_x = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lJ" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/barman_recipes{pixel_x = 4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lK" = (/obj/structure/table/reinforced,/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lL" = (/obj/structure/table/reinforced,/obj/machinery/light/spot,/obj/machinery/requests_console{department = "Bar"; departmentType = 2; name = "Bar RC"; pixel_x = -1; pixel_y = -30},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lM" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lN" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lO" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lP" = (/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; name = "Kitchen RC"; pixel_x = 0; pixel_y = -30},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lQ" = (/obj/item/weapon/storage/donkpocket_kit,/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/machinery/camera{c_tag = "Kitchen"; dir = 1},/obj/structure/table,/obj/machinery/processor,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lS" = (/obj/machinery/light/spot,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/table,/obj/machinery/blender{pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lT" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/machinery/juicer,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lU" = (/obj/machinery/chem_master/condimaster,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lV" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lW" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) +"lY" = (/turf/simulated/wall/r_wall,/area/crew_quarters/bar) +"lZ" = (/turf/simulated/wall/r_wall,/area/crew_quarters/kitchen) +"ma" = (/turf/simulated/wall/r_wall,/area/maintenance/aft) +"mb" = (/turf/unsimulated/wall,/area/start) +"mc" = (/turf/space,/area/start) +"md" = (/obj/effect/landmark/start,/turf/space,/area/start) +"me" = (/turf/unsimulated/wall{icon = 'icons/misc/fullscreen.dmi'; icon_state = "titleold"; name = "Baystation 13"},/area/start) +"mf" = (/turf/space,/area/shuttle) +"mg" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/supply/dock) +"mh" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/supply/dock) +"mi" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) +"mj" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/supply/dock) +"mk" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/supply/dock) +"ml" = (/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) +"mm" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{dir = 2; icon_state = "swall_f5"; tag = "icon-swall_f10"},/area/supply/dock) +"mn" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/supply/dock) +"mo" = (/obj/effect/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) +"mp" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/shuttle/floor,/area/supply/dock) +"mq" = (/turf/simulated/shuttle/floor,/area/supply/dock) +"mr" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/obj/effect/sign/movingparts{pixel_x = -32},/turf/simulated/shuttle/floor,/area/supply/dock) +"ms" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) +"mt" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) +"mu" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) +"mv" = (/turf/space,/area/supply) +"mw" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/structure/plasticflaps,/turf/simulated/shuttle/floor,/area/supply/dock) +"mx" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) +"my" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/supply/dock) +"mz" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/supply/dock) +"mA" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/supply/dock) +"mB" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/space,/area/supply/dock) +"mC" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/space,/area/supply/dock) +"mD" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/space,/area/supply/dock) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -764,31 +765,31 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRcRarcRhahCcRcRarcRhDarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhuhjhjhjhEhFhjhxhGhzhohHhfhphIhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRhJarararararararcRhDarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehKhjhjhLhLhMhehohohohNhfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRcRcRcRhOcRcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjhLhLhjhfhohohRhShfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRcRhTcRarararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjhjhjhjhUhohohRhShVdchWaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRhXhYhZarcRcRcRiacRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjibibhjhfhfichRhSiddcieaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRifigihigariicRcRijcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjibibhjikhfilimhShfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRinioioiparararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPiqiriririshfhfitiuivhfiwixhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRiyioioioarcRcRcRijcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRheiziAiAiAiAiAiBiBiCiDiEiFiGiHiGiIhbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRiJiniKiLioariicRcRiacRcRiMcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehKiNiNiNiNiOhfhfiPiQiRiSiTiUhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegSiMiViViViViViViViViViViViViViVcRcRcRiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWararararararararararararararcRcRcRiXiYhLhjhLhLhjiZhohohohojadcjbaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdedfcRjcjdjdjdjdjdjdjdjdjdjdjdjdjccRcRcRjejfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfiWararararararararararararararcRcRcRiXjghLhjhLhLhjhfjhhohojijadcjbaaaaaahbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYgSgScRiViViViViViViViViViViViViViVdadadaiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWjeiWarararararararararararararardadadahehjhjhjhLhLhjjjjkjlhojmjndcjbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjocRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhdcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhuhjjphjhLhLhjjqjrjshohohAdcjbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhdcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhuhjhjhjhjhjhjjthohohojujjdcjbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabararhdararararararararararararararcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhejvjwjxjyjvjzhfjAjBhojChfdcieaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajDcRcRcRcRcRcRcRcRcRcRcRarjEjFjGjHarjIjJjKjLjMjMjMjMjMjMjNjOjPjIarararararararariWjeiWardaarararararararararararararararhehehehehehehehfhfhfhUhfhfdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiajQcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjRjSjTjUjVjWjXjUjYjVjXjRjZkaarcRcRcRcRcRcRcRiWjfiWarcRariiiiiiariiiiiiariiiiiiarcRcRcRcRarkbkckckdarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakhcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjRjSjTjUkikijXjUkikijXjRkjkkarcRcRcRcRcRcRcRiWjfiWarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarklkmkmknarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahCcRcRhThThThTcRcRcRcRarcRcRcRcRarjRjSjTjUkikijXjUkikijXjRkjkoarcRcRcRcRcRcRcRiWjfiWarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarklkmkmknarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahacRcRkpgVgVkqhZcRcRcRararkrarararksjSjTjRjRjRjRjRjRjRjRjRkjktarcRcRcRcRcRcRcRiWjfiWarcRararkuarararkuarararkuarararcRcRararkvkwkwkxarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakycRhXkzkAkAkBcRcRcRcRcRcRcRcRkCarkDjSjTjRjRjRjRjRjRjRjRjRkjjRarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRararcRcRararcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakEcRcRkFkFkFkFcRcRcRcRcRcRcRcRcRarjRkGjTjRkHkIkJkIkKkKkKkKkLkMarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakNcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkOkPkQjRkRkMkSkTkUkUkUkUkVkWarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkXkYkZlalblcldlekUlflflfkUlgarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarlhliljlklllmkUlnkUlflolpkUlqararlrararcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarlsltlulvlwlxlylzlAkUkUkUkUkUlBlClClDarcRcRcRiWjfiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWlEkekekekekekekekekekekekekekekekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRlFarlGlHlIlJlKlLlMlNlOlPlQlRlSlTkMlUlUlVarcRcRcRiWjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalWaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXgPablXlXlXlXlXlXlYlYlYlYlYlYlYlYlYlYlYlYabababablZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRcRhTcRarararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjhjhjhjhUhohohRhVhWdchXaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRhYhZiaarcRcRcRibcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjicichjhfhfidhRhViedcifaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRigihiiiharijcRcRikcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjicichjilhfiminhVhfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRioipipiqarararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPirisisisithfhfiuiviwhfixiyhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRizipipiparcRcRcRikcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRheiAiBiBiBiBiBiCiCiDiEiFiGiHiIiHiJhbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRiKioiLiMiparijcRcRibcRcRiNcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehKiOiOiOiOiPhfhfiQiRiSiTiUiVhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegSiNiWiWiWiWiWiWiWiWiWiWiWiWiWiWcRcRcRiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXararararararararararararararcRcRcRiYiZhLhjhLhLhjjahohohohojbdcjcaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdedfcRjdjejejejejejejejejejejejejdcRcRcRjfjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgiXararararararararararararararcRcRcRiYjhhLhjhLhLhjhfjihohojjjbdcjcaaaaaahbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYgSgScRiWiWiWiWiWiWiWiWiWiWiWiWiWiWdadadaiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXjfiXarararararararararararararardadadahehjhjhjhLhLhjjkjljmhojnjodcjcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjpcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhdcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhuhjjqhjhLhLhjjrjsjthohohAdcjcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhdcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhuhjhjhjhjhjhjjuhohohojvjkdcjcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabararhdararararararararararararararcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhejwjxjyjzjwjAhfjBjChojDhfdcifaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajEcRcRcRcRcRcRcRcRcRcRcRarjFjGjHjIarjJjKjLjMjNjNjNjNjNjNjOjPjQjJarararararararariXjfiXardaarararararararararararararararhehehehehehehehfhfhfhUhfhfdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibjRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjSjTjUjVjWjXjYjVjZjWjYjSkakbarcRcRcRcRcRcRcRiXjgiXarcRarijijijarijijijarijijijarcRcRcRcRarkckdkdkearcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibkicRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjSjTjUjVkjkjjYjVkjkjjYjSkkklarcRcRcRcRcRcRcRiXjgiXarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarkmknknkoarcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibhCcRcRhThThThTcRcRcRcRarcRcRcRcRarjSjTjUjVkjkjjYjVkjkjjYjSkkkparcRcRcRcRcRcRcRiXjgiXarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarkmknknkoarcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibhacRcRkqgVgVkriacRcRcRararksarararktjTjUjSjSjSjSjSjSjSjSjSkkkuarcRcRcRcRcRcRcRiXjgiXarcRararkvarararkvarararkvarararcRcRararkwkxkxkyarcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibkzcRhYkAkBkBkCcRcRcRcRcRcRcRcRkDarkEjTjUjSjSjSjSjSjSjSjSjSkkjSarcRcRcRcRcRcRcRiXjgiXarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRararcRcRararcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibkFcRcRkGkGkGkGcRcRcRcRcRcRcRcRcRarjSkHjUjSkIkJkKkJkLkLkLkLkMkNarcRcRcRcRcRcRcRiXjgiXarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibkOcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkPkQkRjSkSkNkTkUkVkVkVkVkWkXarcRcRcRcRcRcRcRiXjgiXarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkYkZlalblcldlelfkVlglglgkVlharcRcRcRcRcRcRcRiXjgiXarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarliljlklllmlnkVlokVlglplqkVlrararlsararcRcRcRiXjgiXarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarltlulvlwlxlylzlAlBkVkVkVkVkVlClDlDlEarcRcRcRiXjgiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXlFkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRlGarlHlIlJlKlLlMlNlOlPlQlRlSlTlUkNlVlVlWarcRcRcRiXjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgjgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalXaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXgPablYlYlYlYlYlYlZlZlZlZlZlZlZlZlZlZlZlZababababmamamamamamamamamamamamamamamamamakhkhkhkhkhkhkhkhkhkhkhkhkhkhkhkhkhkhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -888,36 +889,36 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} (1,1,2) = {" -mamamamamamamamamamamamamamamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmbmbmbmbmbmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmambmbmambmambmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmambmbmambmbmbmbmambmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmbmbmcmbmbmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmambmambmbmbmbmbmambmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmambmbmbmbmambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmambmbmbmambmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamamambmamamamambmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmbmbmbmbmbmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mdmamamamamamamamamamamamamamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmembmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmcmcmcmcmcmcmcmcmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmbmbmcmcmcmbmbmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmcmcmbmcmbmcmcmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmbmbmcmcmcmbmbmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmcmcmbmcmcmcmcmbmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmbmbmcmcmcmbmbmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmcmcmcmcmdmcmcmcmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmcmbmbmcmcmcmbmbmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmcmbmcmcmcmcmcmbmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmcmcmbmcmcmcmcmbmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmcmcmbmcmcmcmbmcmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmbmbmbmbmcmbmbmbmbmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mbmcmcmcmcmcmcmcmcmcmcmcmcmcmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +membmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmfmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +mcmcmcmcmcmcmcmcmcmcmcmcmcmcmcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1697,22 +1698,22 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamemfmgmhmimeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmjmkmkmlmiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmnmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamompmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmqmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamrmsmkmkmkmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamtmsmkmkmkmtaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmsmkmkmkmmaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamrmsmkmkmkmraaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamtmsmkmkmkmtaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmqmkmkmkmmaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmwmkmkmkmmaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmkmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamxmymymymymzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamemAmBmBmCmeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaameaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmgmhmimjmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamgmkmlmlmmmjaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmomlmlmlmnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaampmqmlmlmlmnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmrmlmlmlmnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamsmtmlmlmlmsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumtmlmlmlmuaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmtmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamsmtmlmlmlmsaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumtmlmlmlmuaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmrmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamwmxmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmlmlmlmlmnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamymzmzmzmzmAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmBmCmCmDmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 5e9aa8b0cb177dc2dfbfab9db47cdfe5b0959927 Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Wed, 4 Jan 2012 01:25:58 +1000 Subject: [PATCH 2/8] New tg conveyors are working pretty well, just remember to define dir (conveyor sprite dir), forwards + backwards (conveyor movement dirs) when placing them. Diverters are in, but not working. Signed-off-by: CaelAislinn --- code/modules/recycling/conveyor2.dm | 28 ++++++++++++++++++---------- icons/obj/recycling.dmi | Bin 37155 -> 37061 bytes maps/Antiqua.dmm | 12 ++++++------ 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index ce806b6d92..832d14f34d 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -9,8 +9,8 @@ anchored = 1 var/operating = 0 // 1 if running forward, -1 if backwards, 0 if off var/operable = 1 // true if can operate (no broken segments in this belt run) - var/forwards // this is the default (forward) direction, set by the map dir - var/backwards // hopefully self-explanatory + var/forwards // this is the default (forward) direction, set by the map dir, can be 0 + var/backwards // hopefully self-explanatory, can be 0 var/movedir // the actual direction to move stuff in var/list/affecting // the list of all items that will be moved this ptick @@ -19,14 +19,20 @@ //these ones below for backwards compatibility // following two only used if a diverter is present - var/divert = 0 // if non-zero, direction to divert items - var/divdir = 0 // if diverting, will be conveyer dir needed to divert (otherwise dense) + var/divert_from = 0 // if non-zero, direction to divert items + var/divert_to = 0 // if diverting, will be conveyer dir needed to divert (otherwise dense) var/basedir // this is the default (forward) direction, set by the map dir // note dir var can vary when the direction changes + //cael - corner icon bug that needs a manual fix + //note: for now, the sprites/anis and their directions are mostly independant from the actual conveyor move directions + //if no conveyor move directions are specified, they are extracted from the sprite dir + var/reverseSpriteMoveDir = 0 + // create a conveyor /obj/machinery/conveyor/New() ..() + //added these to allow for custom conveyor dirs defined in map if(!forwards) switch(dir) if(NORTH) @@ -80,7 +86,7 @@ operating = 0 if(stat & NOPOWER) operating = 0 - icon_state = "conveyor[operating]" + icon_state = "conveyor[operating * (reverseSpriteMoveDir?-1:1)]" // machine process // move items to the target location @@ -91,8 +97,10 @@ return use_power(100) - if(divert && dir==divdir) // update if diverter present - movedir = divert + if(movedir == divert_to && divert_from == (movedir == backwards ? forwards : backwards ) ) // update if diverter present + movedir = divert_to + //conv.divert = divert_to + //conv.divdir = divert_from affecting = loc.contents - src // moved items will be all in loc spawn(1) // slight delay to prevent infinite propagation due to map order @@ -310,10 +318,10 @@ /obj/machinery/diverter/proc/set_divert() if(conv) if(deployed) - conv.divert = divert_to - conv.divdir = divert_from + conv.divert_to = divert_to + conv.divert_from = divert_from else - conv.divert= 0 + conv.divert_to = 0 // *** TESTING click to toggle diff --git a/icons/obj/recycling.dmi b/icons/obj/recycling.dmi index 8661194c0d95f65ff983ddf4441400a0427aabef..78a525464e35007057395b110eed2805441a926f 100644 GIT binary patch literal 37061 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 C!D+St literal 37155 zcmb5VbzD>b|NlKiKtWKXK?DKmj)AmFNOzZXm$bw%KqRFkMt3(zcS*y@(I6cYDH&|L z4)4$V^S!>;?{-~(Tz_o08-p{>cFuX7N8F!Z)m7yQ@u~4aAP}L#8yQUy2x|>^bl$@S zUU~1^k_-I6`d(Y#Q^wlE@}0e#r@gBS2;`fVAN$hf6YnG0xeGSApR?MOIVCha;bH9L z3gc_NudCuVhV-+R+9SXW?B0B%Q&awEh|R3J(`t!CLQD9CotU%Xqbff|HmbUJg!cvo z6se~R`vav!S!h27&rH@ym`17SC9pb+J^KAh!FdbMn?6`g;h04@fwgsz?}?o~1#w z6jJ$#WAnex1A}BQJ?X{idOW_@E^+WEA_qRox9C6C;WX@e4E|hU-olf;q;p2Vxg9s> zS$c031fmBi$h_3{O*?FZMC#1>Ay7{|c*D&{Xo>he0%g0*pFH23-~1~BjC+2QI#-!ArKOW_%zv3Hw&{Y(ru4CzLlz`6CapN*~iJ|4j zjeq~wdS$9BRlt&8KtDPA8nrp%vAu9mmg$eEzm&9v3-=GatPQHvd^8>W z=REu2o!^72bb(cQVjV%7Y?T*k=neOBR8IW)^*B6e@+b1D7G1mbvvBnUd9x~traZ`0 zCx58CnmoktR9STpiL!O>*!_LV1NPb8=C3!ayYZnw+4>i6*Pof!RJUmpkS7kWow7s; zdb9iaVhrFsq6SisSxCdLb(F2W6an0!(;(jKex$pl#sW7%xrvEA+C7KuV{8_=1O6-X zGXJ+^Adqo8yb3?*RLQ3cQF|&qdIx0O=-GBIg@W#U zq9PEWP0L)9R&LVkloTq&^Kjr9q@VL*haw%7Lvo3Vcy8|5x*Om+rixuwWY^R9LTtJD z;?Im6hor@Pm}7wRN(bVDv_VzSW^w1Q&jy%28yg$uJg)RjEi!)M5qaR_U}Y5_)R%Jf zr#erb(Y@>3+}vCt1Ur{$WW)=Z4XO)yC6DbLQlzsYG9_)RKjS^(My;ekVfc@5zA&V< z^UdJPleVht>4)y2Dp!5kza=_ZFQq^oIZm4U2SSSK&4RbTO#Jh2nTM{EUYG>q3`9_y zwlv?N;5JE`rH*agUDeft2^ZAuWfyIvv`D^Pe4M;zIMejO%RvL`B=c+^_@?V$Zh2yL zM^n7bPO;HwdT{Vm-4dM3SQ>*);xd{= zF3#Q`zDser{IlvviIf;Np`2?7DZ}uVVVFe=2_}wxPo5qQdwo@UdgglYd6Rs0F`TJg zDeGZi#j3=2Wt(}ThHr_V`;_gq@X3$DsFviyz$XpaFvo6z~`3$;GB-0f!XMUs1Y=6Wmb1IH$>L8gV)FBwIDC#@Djh z69I8@DmzM!A|Ve6uW!$D=+bcLC=n5cu_CZ7Q9rZ{JOSEOj45jXfA)P$R;3zq1_=e`KK)JQ%WAP zWZGy2x{oN+gP}8B$DoTuWX?u-Nc6iv}kh zPam@Ymvy4$2^KYD<_i~dMb6n9Q}7(vzcEn7wu4``keXnSEQuG^q|Vgcl@)?JdvMX% zGP(OL$|QI6ALSefCWth|Q+~E4k<&y3pRcM;oiG$V)(@Z}#F$&~$iw>QB z93S}iHsXr4@2Hm(Sr63-T56q?@V6?(SE)4j_xG2D*&QLWjnl3Uq09fphz5s zYfMl+)iO55e+M2*GTr2d(sQ5|$)7lF+lw9VzXlg=JiDe<5$u+u_p?ILa|CCbr_j@pO_;g^I)+^`i&rDqnb#S3vtU zuNcx?^PNqi#h}+ z@3R8?H)RmH5H_jnr@o1aXy+%@qiNO)f!WNvXf%34kySD%HFx6I?$~o#YOpBTa_wG% zP^`+RRI?zrQG@d0p_N1GMVrNUmkDTbF%>Ky>d=Mc0XN&m_cI76JkrB7yRbAXW*yRG zJ2LAn$G2=$AW+g&K2Fy(#nSQYgb}0aV4-1==jKqHWiKI%1=c~<@t4L@dO~xCb!xHB zG%1&(kMuEDJ^fd5%jLr|a3n>&O3dDdY-QiyN#CL;9>-uy^`jhy*FNR@OR3k_2^SI3 zhbSM#Q9YUGuaf%at@BOX-`|yPVN6(PSRhC-RXQ5{{x|QU*WcP*_D?$%_JNd`6{17S zp`F3~Tn$$CuD_(fUgud?mcB$ z{G`&7=M*)M>=|9Kw~u;pjta(`_0siFkKM+)14@%R1qYzlSuAD(VDsNr$l1G3ZC9dc zAEpbC)AEtgf!P+}`r6z-UbvlnVsx~KCOD8%);OoL4JwT>^e{cE^ysglt}ce|a_>z( zIFWcbk;pKLEi;zsCw8If+0IAko5l28lGt4x7d_Es2;3FdGx8;>ii|^VZ&|!^6&0QT z-hF{zz5Y~ML^v7rqZ2tk%Pp;i(MWeS{Phy!>Go{YQai~}Pj7AeP!L#?61`uBXjc90 z#0n;aK8~@2Mop&vSxQeh!c;=gFF+ut3`1X$Fa8vg2|MG05D26M>zuuFJ%V7zDS90x zN>k%;CJ722&2*NoC;H9bq~?F9d_7?5f^om{Vu=o^@KD5Xc3wp^T#W93K)ALvRWr{~ zrvto8FJ&7O+S}V_4d=mw$WM>+i|dE*Ono4XC;-+?jcQ?X|%dA2q5KHG9JTS%6WqT=+=CMXDzMiXr5n z*RlaDnX#my*$1;l#t`gi?9+rB zc*{B00V?i_YF$h7x`v;ldYUzvGl=A_3KRDm&asGyH9eybjNW zqq~RO5+|yAC^)i#{p9^LR|@KRe9dz?bVS!q*?@WH`rLD5Hk2)+9p?HTZPBbe-pgzp z%Td{C(H`~|x?_JtCPj2+$?&x2z`4igWs)4Aw#>-XfK{&{I(1)r`u!jl0`6sGAo>PB zJqnNxN!t10c|qD2)^u{gAxYtD1V1EfEG;R?6{9TV6o%TzLc`cI+z+AMD#)wF`H_$7 z$ZkYzmM-;uhv)A(mGm)X5EJpudEpQvZPZSM3hU8}!g(eQo|%tyl2ZY^Gg-PwN>GDK z+vCXS3bv@|&@bh#%kQ5*g7RApq&~pO&2>xw8zwk(DcFIN{?_o+KI4BptqAvhuZXE~ zb79Ipi&$5Td!l%aj4HgdEaYB{TR+7rT|~$4IZ}%v?hzQI20mKH8zc|T%h5s!+l&At zZRNwY^351~vyTW0w?7myJ4ozgp>fD{_}mU=N6I8O5N)v2k@E?$Iwx)gyS7EyD$OF5 zuCL=;sNKl543lrxAc~)Yh;hdt3mg7V`FXlyU2A5|;H#O&qu48^C4O9i$xco@Gj~MC z?OjkO!}4Dec^vy_j}TG@%o9lA)Gm&~7! zrpeR35KNGMn5PKu?)<%bE-LDt?j)x&E5zGRxVSvvGN$?iJ-bKOlRI}11~pSubDAd| zB=^@V7v>P9UQGPvgp|BEGKKsqBFG=Ee)Upkqb#p4G6Rt5 z!IDz27GAFF?e`s(ZqA6pD~s`rzOL0LK1S7YiI+vZ?k@&_mE`y2ufl$mC$OBOk%>BwC_q@DwW*78pm3%UqaO2wNU8ja)2Wa$evP|;13+t_<*E?8W z)}NN~!?2sL`S;#@%{NR3Rc|ZlRmL9iTWJaCn!m>!2xs6sIVLtz>wOVO1&aUN1R2mIY$tR8sF$n{NDS~S71~2DgaYF9c=H>TVe9!qlEwW zU*4=iE7!pRM{#j8#~d0H_oY2swcQ#8Vu{{ka^5vLUoskJE4F69BZq(uUTL{)9HZly z+*336+Wh7^E+tWk>%}_hc`Zyw{Y_?tFGk{Pj>(`yWGK0?WkEY0HroelYr(lLFP;ZI zNOhcC`EI(nx{9cy3?fBdU)NuZoBW1mdtEq(wOofe)49PYYIYr%XR%fUp5UY-aB8m#)2qAT531i%sgMXq9@IDevOUvM~loG=n`+SQx zwjUR&F2Cbd>&X!6Y@ zPl39lH}97v-mIJ>{2zqbNj+>H?yfitI=O-dM6%OOwX!(=oXU1UX_7VQtUgN=h!(mx z{Jm&nyodh5>hs?xCoPE=&b!;pcF>(lk5>21^^IS>{#Gh)&rF$y=+i_3yA2-ID~LZt zUM}BZfscPWuBqZ^S>3*ZUJQV@+C)}y4boJiDd`U*`w$(q*x={9E;2`6l@p_-zRWYrrL- zTR7j37Mc0}tBdn<`|)ejuMTf%#Wq#DpT92s6XBSxzB8g6%^l5nd~g6Gy7R91KFiF5 zqYZWE3ZcEsfnZ)zBig+`8Nii=x&5Ivsk5c&Ve-a??`GMA z%`0X(D4f}=w_!Xq`r~X!DM!e41y1Rdg`+S6sn&wS?b@s~TrrB$kcVUUx_*__POYIz z`rw|6iJ)wY8pVFYUTvU;Jp^wjTwcOcF3esKjb*y-H14kU^0tT)IleA5FNhk=N)oXu z??9u2vXnHCb{}Yv+wq;SZ_}`EE-3j^R~@>_Fvk_8KSt)K4`k$>(n9m7uksa(B2G=T zxgF(SPKELJ^`5_W5yRIMulP82-E*L$qRB0!8oBd2^FYs301Vzfd#OQ)AKSMGt|-|_ z{Cs+3u;Mr^6@$eF<|dlzXIc1V-m4>4f#Xe8-I`v0TJNm-tN!h%rw2*h@agz)(c3v2 zGuZXO@87Pp_R-PNn*r|B{by0d4T)K-0s;an1HolY9S{HHVZ?X230g|*-!xdY-R0<$ z{j_mCcZ^q7ih_%n8Q;TSK0LGF38HjLv0FNo-_W>33h>!r;Q*j zoXCPDC~-t2%jGM2(Y=U2^`Z?=XYnQVZdZ7(-Oe451TT-lQs-u5*BO7lZ?`LwtN2=I zg(#P#!$6i{tSDe^mVx3(#yN_gJl=U*chV8-EM;Dhu0pQz-1JpHDq`HUbF zjXY-%D31M6<4Adfdn+^Ql=6{W2ttTed0zRYr&qUXlgSSaVL5di-AR>*>dclkpVx=z z^L34|ql;4s{ATE+1g7=uDwX%^bRE^Fv9Bpls$(S0X?7epefh?0P^X+>ITrB9Y!X8j zW$L<>NI*IL=H}<$ajfN}549G+7kub;UmPN1;6FbnE)BIQ7O7Wzp!b8hVT>5I^ZBGx z1lnLB!+Ts{@Q8UpsebxCof^pH!!Tn-?xi!Ly31Nfyf>eo^BlY}TGMN8Wpz0f7WONU z?}Ag_oPu`d8u2-`GEA|k0m?UjSeE0_t1$c7I)sLg`^=CpD53RW)u%(~z%1%t0M zFiOe0zLCZbx<*l&bZLZ1@^SSaLs=tEC_?B^R&=)--w-okaG!-;f%}xzqgx93Q*yr6 z_KQ}U@|ga1m_3_#Nr6@QTZ@1q6Y3<^$e0-a$`3W@(}*I#cepfQ=f`#ChbY~Ienlp+ zlZ3FitTP)$6I814yGN$FWZ*pjxuHiEe_wsc4Ac1(0lRTBT|~t~)CATeu#y9~J+_IT&#~)lk|@cTQKRUfwLcFZ_J0c^_D> zVGt<8tx34O5!>27TuMuKF;e)9yYyA%6Z4-Hyy;OT4TjN32ykx1H365Gm=Fi$! zOF(-&&}Nz9B!A%I+5u9z2QokYe&A}hzZdcF3246Rr)U`~r=%O`ZC!!5@X;a~BTile zxmeyVLfi`T>Yld5hHEgS0c%FIbJ&*sXyE<%fZKK`Z%A=%V}$A@33&B0JHmD`ZCkIO*{V=rS5rB$8GQ?WI^Kdt)f#hoeaaU&MW+QVu<1#nstSEuK1GCF050#E1zIZg^j$Jt7*LN=Ua^b#rfGsdT z+Q$b1)Ac_yxIhRyQE~i{<8uBc**oB*?Xk|&1@W0+cIngC_tr;(*Tiy`f~*LpOONKh z4k&|b8e#$f!%^o~GTDq<0vgzwPqs19tmTUjV>UiF(Imm&}g@|#c(I~K@EE?mO zzD%{R)S_P*Ced;Bzcfrg@+O|%R%#!!Jy4D19464%Tqdm4Q& z_Aaej_Ry|pj900RRaqU#kcjwHi-8+IGOI5FSs-~!#w5;~g0|iaO8ArG$zx^_-jT0Y z1Nf~lKsR#VGvY7Qo9gj+%L;y}MzNu=VrNgfAs9D}*-UQ=}O zF7R=Ee3k**k_wMPTf?==-SYg+3ViZwZCf5cKIpiAAQd3#h*Dbqf%pLWPt?!UeOngf z($6ie;x#Yp2lTX57kzD^`R-J#n-&yWI@}e0G2_PC=#9ERMxeX9kT~_Y0dJtuG=dbK2dbQ1DZzV=w}JhN6_mKwhC0dL zxb;lua~9*Pb=Pi8wZ#P>LVx}BC_zF`*})WJnHwamWq7~fT(`{u$02NW2>aq{Bw z((&lJ--_|LG1<{cp1aS#spudwl~EEf!+y;WAYfj!itnsl=DiR91ex4}q_^!>D_CtyN%x zMDD4@u_D)5+aFk0xo4$bpOj-JAeNSv&bUr#yt5zq;uOSOVE2Tn*mo9{b6X!W9lU%5 zh%Vh+!@g7QTwaw=ynm*r`pHeSocYPQQ6JJ4Rag!=xZsT^QEi?s?PjWIbRT^8`+mHc zayNF^tY&UczV*+3;(@MTpJD8IP)RrU%}%7P)!!+|AlBvic~=vG!_F2%P2Sx-&73Ot zcHsU4KV4C};(*ar^~(&%`GU3s_BC0j?FaHoMWW~PAW5liX?L1jx^QU0b2Vrxihu(k z8uDViOT3InKMb!dpNHDFrn`;A^<0WelgJ)p=gi|j>}-8yl%`9y5C{%gWR0Ge!-%q^ zX=fXqw|dgOFls4-NC1hM{hrj6&4Xq(MFVApJ8!o8Y$XV@IyzRb#icVsvqDv0SEmc7 z$gLJ}9yh@5_U$Pt{BmDpQ?%!rj@O0>1Iblp1Nt?QuanbA^Fx_)tgPJQU7?1Ye2b}a ziipP6WZA76&%8q4sBt>xRbYRlxg_~2a~Nxi>!Lu{khTc1N?1j=o$^M zll@y)i{As{sgsNFd+HbF&d|lVf+2gBo`7_J=hY5$XJ0;e?cWgtcGgu%6PZN*(-;|} zO$W+61;sYL?w9?;3#eRHWtd<>j@s+0XJ6X~S&OFDHa$c{Ob^ zp*@UK@)lK#c7CIYfrE*Sb#; zk@1O}3#>(qRkO;;j9-Qch_6GJ7d%@~y(sK{<6v6F3N}dwN6-Buv<3ewvMmlSCRhLN^88?Q0Wuy4u?Jz*0V;uI3q$1?*1-f@D#LDa7x5UB~m>cBD? z0U*q&zwkQcjn8_4&))&#t&zFB5wm{I8ovo^!&nc0w@*+0Nz5|I;>7;86xSj(HHB~N z-%DY2_AXa=Gt5yt4>OT^F8$KjTGm#HjH=C2ipr5=C#h*J zD-@RF??`PXW7{yQ#aH1)g1a?T*bb^rrukqH{G7G)ex?6gokg2p{8k}e3j>6eI%Grk z0j&SMSlg(u8HU&R<)74_DIG1P5Fi+`-?b{tcn%B2g6*?&!jU(B>Fv8m{^v;Gm61_cB8edujrP!{JprNw6z zJ?-V+Bj(|8E6}Sqb3FQU80A<3JiOt>G~uD2Lfq;Y$@}-t6@bM6RalJC?~_OblK&Gx zavv}k-3l_GG|+Epo@&mh2xWxtf@_|J82s`Jz85}$yULiU(>TKaX6R~YBX}^i7^t?~ zJiJBo?6m@_FO(`Tk33KB9;~W0`prNV1@msZTBGxg-lT}Zw3E?=z1g?;o&}$32eJ(D ziuACuBq2SVowHY#6iHI6@7jHNa-cU(5iZo-8`yXtuu}~Y2mY-Rrz~e1PiMRcjO>0Q z?#^k2Icyo#$b=Sd6UYPV`BE3|`TT(bSLLo-(JP_kZ}{BqMx(s) zz3o^K-#b_|PorI1Wu|zIUkR2DP{lv$ro!p+k!eB=e&7D0-KZ*VQxjVs_-pegZT_tZ z5mLtyk%XAE!RzFSPx(w)p1!`Wal_iiF#o@|0#k7=qqok&4ags7aJ>F)1>{h<@qMYk zZ}&xtU1eQ#4lD)q!9aLCdlAcd3mE8``sJfku|;#V^ftm)j*cV@WD7G%l zjtLi~0;(U2+ThP^r*WDT*jkWOgq5P5&lNiEgOLN*PC{FEZkKr$lsr6|m#F7FWED`a zfP3Yh3{>ad`%ymE`!033*z|TTF*Un}< z(^RzgqdEl#xR|95AnW=?r=CnjiL*e)yPHc9}nk*{cEZMY{j3u9f~#*Khv6 z)%DQ-FLgbJ94DWJRG*pQe>B|v!;%>^PzqWRMeA4Ke7lYO6+vsRq`xvTo>3Q9*Jx1Y zP2c7XTF9zgY6Q~GyVY^a?En{U#5*=cW*SdM8j}j0%uR*Ae$0-jD`V-r`#Vy!1|1M) zlUISAi%LS3`I&W2p6muvn4^5dwU&qBs~xH0tr$)qA}-6sTxfDVvaKr$`lk}eF&D`F5UB{ z+R}w$LRGkS`~gup%jBB|llQUAo-b>BHC}$T?NYTsG+e;*ssaD2%kV3AHl-O=jt29v z_1&tyYyDb(;Z`5QX7${4 z4)NqO*Su{?I+V?hvQFm+B--RB6n$GZ&=V|wWumP(LOJhu=@j+SMr(6S&3{k+eOvK% z*3o?VU-G=n=k?F`!pS*+?jv#hs*@-;d9@MuO_bZrxvm|nF^)F)J(d34jl(HAq71UC zbO^*KvV&NbqZBwwN?kdZa>h7z@F+_Z;M|!9 zkILD9Wd9$umnub8O48(&>T2>-#n%X;qy}H}zk-sn1=eHvX)NcSuE4b&XVYf z4#x<&xQmE4i!f7d)A?6!8ck(O4&O{;ddu66;9eZkGzP~#`%`t+*lj+5j_=BlPgCqTQ1tF!O=t*+kWDo9CQB>(j4LA9YO4$9jB?Qtr#$AW;ZVm|!vacz)0=0npPQJt^2gn>e9lEYe41JpjDumb>f zDpUhfwMi4fp0{ED^^(lB-*RBzkN@WNPM=6e{5@Sw7MJ6H8%7rH_MSlWY@JFWM)LbL z9NKY>B7W4u@n{opPuQ!KGemeLLRNS6nPsd#>Bk}B&H6Wwg*M9^yWPKPK1NK}@&B~U zeOBGCgwT26kn}Lbw|s~gn`us2#rdjev_Li?=3QYy;@42mXGGO`oFpH|h&Ltfp}y^k zt`GG0!=o2&)wx1axC$fO>G)-;eZu7jD~Wp+Ha7kKbl>bUp;;7z2 zkF{N!W4lG=BiHGtsap0|`|n4*SA)ARM&}h4t*HEy?!Q@jsUKqh5f@ad?EJ3Rm*;Ul zNjnUXWPO=mUQ)Izt>px|d^GLczJe9lEEc~@D00^&bGVJ?Z&WDhI%tf~SM7z?i~JaY zG#?ce^#{!s;_%U%%>XX4A(EWtX2>8!c6Xz{%ZD&wPuVK4l>y8p#7&2v^!+)F{1d$R zcGx}vcu(x>!xzCF^=l~s&rt9K{uYIM?oZs!%rdr>DbRD zH06p|05A?kg(9iKSJmfC>6Fe#`?vXhozmJ8URi$wh{`quOv0{`vO(TQytr#tc*5z} z(STq_Ajka)jI)u!#5$`nQ7~d!_a*aP%7Rfm=JFU1O_fz3u-^sfu3RfNQM%{9vt1?c zixVnH5bn)F1TnhjC*h6TZFw1q&IIwhVeu0k$BXegL2tTko}P`vzD-5x4Pt2x$O$yL zfI^3N6-fXu7c1wuzag{3*IZG>NTb5O(M%ofLdsSYh#_k0xA^Y#h4;nB&WUl zvBZzs-_01C|d>KfT*;Gk4 z8MFlV)2;WXJ81~SG`ALVeCwb5sJh8r&Iz`^rTnJq?M+MAO%=8yiUP-ycTW6m7#*X%^vQs-2?yF8J{-?%QciEig{xCTl7;y0A4xywOaGdHuBo-wH#QvRIVbX+I9E!5oyz5ms zyAQovKoe%J#SZ4`AIqhWh_Dw3RV~s;d6EfWZX6DK-#f_C-Qsq?qqX~}x{$6wj~7)Pp+?2J-6DSmf%=oU0i6qtQsv9LQ@G&=4Mv@>ugmH=_A#=9BvPIaW# zZ5A{+b)0?0f#L9i0lPHNG)?!QTu@6LXYuSfIm{B!^DZ;VaN{->R?1@TaJN#omc0!gt#Y}GQZaJnoyQ{w!5D4-iTPNC~+#4NJN%>18xK4wo`)Rt4!!m}F?r|GHLb|S2= z>KMagO*8MVKudJD9Z4C+v57qX?|5IyV)CA1S~XeS3(@^S^%*Htu1 zW7{`Sh{wmmQ9jjkQG9K%k1HuCBQLFzlPIh#)8#qs#hsg;u2xo;fTO~by~g~#$)EJ@AGof6~{EjTeMnjF0nNRYp*$^7}RGcP?%XSVke18(x&hSq#RCW@dCZ`{4#mVJ^XU%j7sl zwGTk&?4ao#o{Coo^ZvtMUX9K5?=@Q)E(?C{!y^JY&0Epxl9JPjfOrkHGFswmP#rJc zlY&OB5Z79SfKwqdEBhQXdMAw{=KkC>QJRV?%nel&v(-Qzcx>%zU~4X2ggiWgA4NX! zt&4<^QkfOiFkpPHHrM@~%Y~l1HvGTlN71uD6E%LvDP79j{pu9x94;A}qx7AAwxA0G z7crRwuP(;h7oVIvr(?z%w>s1*wFrYr{_#zMoG;Am>=O=u9|Ge zA+U>EBJ@@NzoNg9Kj!bJ|3~c4`73@i?nbW?d`d1G5aXNfJ7Q&ds-5fAiobtTIec&? zdXiio6~p3_pnYIY1S*w+_B;{c^pe-W5l zV?G4=!ZUOVA8uP0_xo#cOCI5hHohl&t8ZbJG$*Sv0T4>cCuiws)oCe^UAh1|%8#y7 z6;tGBq|)?us-qZWp;)?SY-HQWb)4?L5<^_v-J@@Aq|lFb6;_PC_Q9J#}w%+gG0@;XIVwV^9~Q3!gd8W8Bxt1Wtg+U zPw2oOoj(t4Z$EodwSrxvHbKzeHv%NOpA7Bq{%`Q8knlFoe*}%Q8n9Xq-(dsHPaTlh zO8cl71BOHp|Iz-Jd$gxcklx=9YWgn?t2RjQjtF=?%M5t%^Osa`_FGTSs42M!O)io9 zqubBSF08>aKu4iKqo%fJi^4vjo1!y@4+$6?@GxHI(-(zsL(q$Qtu~!fm_2G|+<-rO zKCN)b!C%WJa_QNCz+LRhaSS3xvM3PUF4f5bIT7iA5CYpC+zk8;!~>5@IbPdOf!PNz z2}CHSLznaw7@Oz88Ge6s+4;Z~kAF=Np24D8{6x@yoQYa|RN4Rdkl)LAeF!s^rz?=} z7ZF5~G?}%`PAd@Ii&}bbd}q4HV?8)_l6R|lK1&9iyr-3A=OX)1=J+;JY=c3>GlLtg zLeVv`XXf2TG{*CjQBupD>+T6O^Gs|I9+di7vj(sYzKF)fa3OGn7BJZ0z~$n8(joB> z0NLT!NU)QGguYqCThJP>@2R&wI54&*F<6^}WbgYQ((#4RXQ8=01qgwmYaiLm8vukO zEW9lSoN`c=4+9_VdK1TS^;Y`pRb1LyQ{2)@qsPml}Cn3ikcYy^pcgzZv%gdR%w;^H~3t)ov zra|Ol1G{0c8)d|D{edpP(8d`P_7(ok_#$34=KP|)k#4LAIDT`u>D#?+etd|pCW`EC zu)7-a8$Pl(++hPb!2rl#rMnEBDR>52XFg^+t7L!hbL@&<<=VnmO%kOFjE)fD&X#|i zy;b0WwuP* zWZWS8t%gHK?X29Xlp`yPFhE_`n&*!;SWL)R_wR9L_2`o zTK|P7G#%b$7=BQZPt1wZ?0uYHCZ}9UwwWIeRZ6R2Z|Z-p$hP7`c$PhWgaDfAI*v$X61AoRp!Jgz_f2l8ngSceH0s=_c&+7J$M-oZHX698$+&m7qKY=u zTpxW$J_*#53^Io4=P}!zTn&E{64J5?>0?qCI^Rz%V4IhrdLCmtGfJAs8Uk4!M3}86 zf4+Sb_sf^>NX-0YowA@R*~zRA)ZA)iI3)5h`=Rzkz z;jE(Rk9vc$^7vk?*U31ruk~{I!Gb90q?Bzf-nD`z4IMngQm4*;z(qImHW=anq)TB{ zp}y7R`ZxA&`O=(snrO!D{}kB^3T?l#8d$({;}9=N%{sxr;)o|eO*Z%@ zHp2Ix{RijD@BwJ9=Wi&!ICzw^MYTI-DchQF`eL2=jn}IedBB-X`rLcL@G3&BRl0@oOi8js0BK3eP>_|%wO<`w2;}m5=fuNRlO3v?&A!k1lC=um7ZszU(3OFIv7Q{4 zcW%GOe*4K}spvFM73Kv8l27M9UrREPAMh|!eppH0u#W*BYGz`uFMpSQL8F^{eO^>- zKMc!_`jt3d!c39fOs(qB-sR=xkAgdYUtQinFHqdF3ms^M{6H%AQ=e&I2nQe@AL_A4 z;()Hnwzd7nFAuR6KSbv+s=mV5lhzSKZ7F{&_yOTiSEZ|RH|892Bi#6Bh(jGG7)VRq z8h_kro2#g+xQ^UH-rOS!$Wf`TxjiRjz`p9@m9IR95^fW)28geW6Ivtjy=iZ( z6myj@8mYOtn<8fLm_kbcs1?Lt8HhQ)DikIh%3u(B*&6oS500Z*lY(s zUyMKd0U$L~?&6{u3uj)yNUF#0;ZbZayB7)mNtF|#Nx-w6{SBZ`^dHM(F*e_ROW{uI zBfqvkXu2ezFbQcg(`R zean;I`q?eN5h<#CheE#Wy}d>srLA^x>E8)qV7+JcT0OB*hK9ts+Fc<0YVD(eNm<4?oB{#({- z&E?#viY!rcou8&g1so@JXyur1t|qgjy$eOWC}LI)lyt|FKRZ8Hzse6Q@(sVG~SM9nj%Q%gCm-V?)#7i7NECs|N6(N_iTU4R$yZ>4})<> znq?7zbi{d|uS))jxu(MxYLfiDW`?VOZS)XyJ@_Xg8?&SLbtpGbXQg|mgxc;L*w?aV zh|2K&hZ!Qcu0%mpW2iqqinq5`>7GaSG&tqdIE!qK3{aVpgKuUHPARju)ZS=KV#U0O z8O=b1`>e|A!2#CY!$S(%9jO{D1 zvTq*1`4{#ZmUFd8Q!(OWp!9*Uz5xnKo@Nrs4A8n^Xa!aDKUk&Zl6y+q+PfG+4a4sn z)1PIXVV2FllaAK4^u|Wtd(UgF_xN6zmS8~*=s}}c>X+Odl?$2d1~MD)lppI%3l3^| zGdE&}j*HLkf!>ZkJ@3EkSH)xT-ZgVXHC_XLaYegouxRsuUo?B0Bj<6+k;S24ZE0Hd z7%__h$#*iB-o^>XzP}p4=+UPD3X&JijygNDORI$dNAvF(5<3f!uvX79h*dbG>IV8d zb>MCMc&+?p>?9mVgV+eQIiy-gbq>rUB;r0r9e`*z>mTxj97Arwskq3JApLlN$*COL z0rX!UL15M<%F3HMLp1Q6`PqfID=nmq%qKB@g1!uZ5Y2X9EvCMXW2pa`*MQA!g-zcp z2$wFLoCu69rgg6(|Nd?B0a1M7N9#|eyR54s*wH`?o_PH?TTrZ z$gryGR!|nvuUmS@O`TZUqmvX3`aJiVeC|~N_>Udk>JGrRA1!F?EE+XE1TeeX6M}b! z@=M_mOaAEkPSBOu6m{zxBW_8^w)5Yc9<|<*u0H#q=&2t$pH}>Va3pp^W^yL7kD5>A zi;@5-Sjwy&ZueFFAIi~(P;h9<(?B!NuM(2+L((2;sw3aqtL9QQ+GUe+-D@k^G&Mb#(9_*)7u%nY79 zs+Nn)y72#g*}YZzhq#RtSq}JlTE*P?*0e2;!in@CT(u`glwF+bR(SJ;<7AE`|Lk7B-bYQz^nB!82ihx z9aT^oB5~<@0ayEAROppSw0YyF$I$=bBJWK9pIqe2dLs2q9LnAwIw9ND?4ADvJE>rw zg$E7agghoU|3x{~ouG-N|80_&6&BDK6zqmp2($U`j9Bo!D@o^gq`nUkdHE{XX*B^d1cFAK1dtbws#bcJ-hSM=kGE`#)kM}Kcr0B-R}zI)~}-l#!ZhmyxMb6i<-GwwhAE?8+h zsGh&v?J#d5&+R&vtNh@f0kGFEKDsQ_SUVF4?*?g?axDY&Eb12T1V->~CuVp9ElbF3 zk&(N6Bl`Lzw`1MF1^gC>@oG8}!{aZoenvyR12pp4iZlPkEIRAG|82jM2Fd& zz59L*3WT2b7czio^8v>L%X zx3gtUV*Pzp@@_TfLj8ev-qvPZ%|F;@iEiw4%uvwO)%bJF!=6{g1~(ukYct!|pU)97K=33g zvCMkd2;j7cR1B;8ABYij4TzIwfWrApjG%ywP*I{JdBuMa&aGR7(_wUA>K|0|Lr9Zx zZmt-^B1MmLjG4$$L;8-!f2YhCfGM*;s7)59g8z}jh(JwiiVV7T6r)~(!;-xqvo+j4 z5_%74)Oi?7dX(_ZE^22XZ1)^YACo5nk;a-3_EaFlsa;3d6LG=$_uD+}Zq22cF`VVH zY90Hn50%G-9j|4X%5OScgHoreavoWTX5O_h^blreK3MjzX)x1fW@a|u8X~Kz)FueP zr&qd2bm)qki>{kejHNx$RR+)>J5|&?m{sJfX z>XfH_A~%W#PJ!^KFKzC(>L|KdS6W;v{J*$*3$Uo#?R|J?kW^AqKndwaKn4UvT0~kp zq(eG~?i2+irMtTuM7q1ByJ29M{~q7>ob&s>>w*j1ID0>_p0(D!;@-hgpmskL`A3e$ zK)5X%yXlcaUO2Y36z(L>p8J_mPi8v`L=XPlqU z@ao^0Uk=qkv^CIA1iY71CPIxq1r*etWLXQBblyX*j&YZQAsff|kh?nVnPs>h^_OVg z33Mv5cb0{!W@Qa~QEN?k+heC;EGD6o8M_#gK#p;PuhjlY*H3e{32}`20{gF{Cq3US z-Q%x=ppuB7)G-yJL2etgD>66z`vZrKFA%h;EBjb!K!~8&@Z`NMaD3AIXr`fL$lzq_ z@Wcw;|Cbu_hZ6bc9#@XrjP^g|<{Z8US~ro$GTXv>(hq{a_r7mL0cy7uek=vm&RtDW z_t}oR@2=d**7$g{?#CM(Lu&G>Z6OY~Z=gtr(>AfqCryl3C}DnTQCBiAwM;Eei>^4J*HXt*kwB88ivq+kbxpoD@ihe+WQmEiM;+&N(v=0pqb{8uDj<@K_ z*spKIDK^vF4EO>Ri94~C_ON18*hiMx2;g;JzZ+!LXgmG5n&s2S$-NUi?S%dz#p5YF z#H;3F7Sq15HY$NzK83vmDH?M)Wu6+(A}62cSN2q$AncocO7MUpAHp^PHY(#&VI;d| zkjE*48iSuLt4oSep7af=rS~LzZ;xo?*amZ!oN{j+Y-9cx1t^sJZ7;G}@X@R~wnWSc%r{MN$U@gHoF8 zT1s9`C-9gFwW*#QajXOnsCOy)lr{m~fK<${^RVxLF5Lyw`S9N+K+Vt-tw;+XWr7%} zp8ExMXf`5ik0jQN+jEYoFz|1`9#dfKsTQhk0ZO}iWfW@HAF}TcPBl6{f#kNI`dB2? zSV*kH?Z5Si=R!;{wt$F%K8qEWonBARdEY6dab>*$`%B+Oqlzp9(#Fl|=mT1_Zp|g9 z5w|rlSjcmM+{56dJ4r&_m&8NWo>Msk0NFxO{YJ&2NW$Kv zxqw$J@PNmKF z(-Ml#Yci7a%p!qsdxylR6YLHrj(2@=soJ86eO2eh9`P>}SQczS-?tp@){4H_A=eIHE&ahDIAwX(u?;uhk>yU@~X z=F|adgGX^Yzj6VV{4zz=yuupIt|RBlwlTx2WZf_hl++3Qu9sO(ZsQrAlAcyMCt7C0xE|o*%3pCeY)UI;Q zsht(k<`~yMQr$^8kH%;}Fp5mw{OW(YI!UKQb9xOxLgMu@e8(}-WBZXpI z1V+qbn{lHSvBz1a{6zDJ@sZMZrB08{t+W_^^SrE|Qk6Dn?+UL*vVJ}dQXY%+=QJ08 zLm9wK6;K0ooB+X+=fY^9(Jjv&59Z1qijNmS;KsV~-bLVI_?p7#^BVB|eR~Exost#q z|I4b~@^qQW842`o)GJZqsNa}05wjRF|LEtVuAVfYp3G^HbdVD#t55KemZW->?0S|Q z)pUEK>d90dwYu(IWJOhp@|OhB8@1gcrPp|fU$8){h+p-*_Uv!+1e7|UeXXEy_%)JI z+w*yy`!@V`#0B`pR)Lxz2sDWv^=0DKTAApjAWpG1@yqu+K$&tJ$@{dI>66QO>v40t zF)H2OUQ`$4r{1K-_PQV0S)|2zaJq;h<56m<9F3sQ269_x6_GMk91%G=aEn{vChAxP zGH>cK5PJxWz2y_MFC~r|ZN2EIlXc|)wfDO$2McUZcag$R^SSW!?)$P%wiew5ZxtPm zxPlyZ{cXSR?CA@B^aebghj;n7Sy{av1shWU`-r2F^;4ND;%EKy;5XWQWI+ar4Ay-5 zsq_z7x6!3G`muW{k%YOH;y~JXZ5(6er4Dpe`-P+X4Y)Ram2}IIHlBAM?d7hgHPwl4>=O+|aVu@6N>p@*)i~?MTJ$zCFIbTjYS`p^j4G zDqwKxv^n?mV=gguTuE3hq`W@a8SzJ;{GA{L1ep?0)Je{XxaKPjS$-lc^jxQn-*4u9 zUicbpPZkAH0T^L3i<&23g=|3|S{-s@hBnG40Z7_b%~e^}yKtUgQI#Ft| z7Lw=GgNeCu()}Hm1KhLjeRef>MAY<*a;@_TP!$Yt2c+`neSysrw->ytbW5)^p|mFX zLm*&OZ?`KX0=LF|xX-hcMU)jHY>zF!y|yAFbUaJXXCfi9Y}Cnpm*M8?<{LW1%$-_P$+U>x(Qwo9A6j zv?_w3@M2Tw(Li|<)7l_^XH$!pf*ra0K|$i>_&QEy^#kBm^u2CuN~6p9UXhg#pz&1Ip_CXjKps9FG6mNyE`x{uZfOX0q>NCJJfd0;7 z8*IJuV9y1jyq_na1g0ND)#%JCHlZx4DvFhtVB-g^)1u|>XN)u`bs3Tc?Y`C0Ro@H%IM6iASH~Hu`UV13Lj?^Q_ zO#h1NfE4?lvE^&>Agj-r*-RhO0GID|g@MXILl|GvRuJmUDnjG~unpmD{(3=qig3Ae zKLpze@vO)cC?C1G&XZ}<>g9Aj=e^XQu7_)B8mpE;c=fu{KZG*w3x@|*mh=2GFP@T! zd5{CFEffHm2<=dNeSaVh>*Oedg=Pwfgpz)~x8>WeXb-RMh3%=Ts!@x zmjsr-M?{1li`1;ioot1=tVPnZG}*kM3}Y?1m@O1|C}vSdK{gW#*&n$_BHGlEUR%u& zFQf0#^IWUG`tjMI?H5#_R(PeU*-NHFU<_*p=_l!`oh=&w4250oHCsJgfZ9rjksk{s zv5raP->8e^yj=YJSqp6oTQ$EsBI(MBUYec)18Z1P{Y z5&7FY_ADS#t%&0cNS*qLW7?{ODBb`O44{;G+_5v=x;@zezm`8NkB|01t_BHcDAi;; z(ci<)?RIK?X*`@rt@n`~LAdj8VP_-lx<_Z^zz_2U6w=&vZ&58UzR!VN&?mQ(n;-vE^u93hQ!a}OR)ssOrT2~$)V?*s|Iil?*VUs{3C!MB=EVFS*=BDkRjlM#9zD-N@J zxO!*$ZDxyTAUn@i{JKX#&!R9rDtL58w3$fA`Gdyt2|#m`MB{=)K|!N*#AHoUD*U&A z9VhwAmjROe=`MrG?bOham!D=X!uuR|69S9&;Am!wV;!nlR^E1@(sLt-#$eByvAu~F zAlzWLHh!s=vdfd%$Ns4i58(5o0D2^<1GAuj&t}z^_jZE>M}!v?*~>PSwM%Yn{@0aJ z$rho_t*IdhKIn=NxgLC9_2bqM4Tv#dmU_7s{N=C-Dn-=t_&^@j`efkfD7}-5$k!UG6dq{AWlSUEa#PSD+B!)~?=jT5rPMMSdG8Pb z(mf5~y1VvcZ>d0AtX+fT6n$YY`dNGZQeRb_)E&I?-{kVVzBsP`)#(&U2%~wHqQ*d7 z3_p5?1(VL$^a*dI`W9k|Wq;?537St@Ybupi>gw3x?sL zz}Vw8uIvVE%a57XTv3&RlSr#9GH)Z0K+_O`wL*whRMh->51t@WP(L<-Z(4+0>sCkTM zngtg;PNcGXlMnU#nmqya{+jqEPKu4}5II|Kp~iQ9SP02*cp*=( z>->Y;_qDpDf-gs)E*aLeQHMDvM8P(+C62ei1V2C(zDNWba3_YG;_rj05lw8^fMd>T z0`Rvwkyp$3p5n8?49~SE#mNl&!9~niQht{s-M*K{ZgT|(Xmiz4pHHcrktOpmI;G#0{goJ}Hu(fvIX)ES@cX4Q&b<;2aIxdd=KTJE1|XqZ(IiEq+u3Z_Go)Ns`!zRIyS^En9Ln7!~9a} z$ppHP^`38Z2dViS6Z8#{Fm^UP_36&arrX%O@IIJ|LUXrG6{Ykm^mS^h&kwSnUhh2P za|~6?)%jB>H*^#-*d#u&2-;}K1Z*Tf$IuG_icAAjah7757l3-)J#1w-`$(`elD>va z-v~xA#6=75#zpA>gMfdxS8~I44*BE;qU9x3DNdX?CpA_ebZBCJDZco`Dlgu<$A#!K z0lL_o>4hk|5s??|qej|S<0a69oGE}s6X1U1n?Cn3$uX>mqijznF!6tBynXgjOFok% zCGTQq^t(5}FX`)O#9U9P4{HJ#7=gO0i7)Le>ZN8>M9D7Q@&PY|PlZ&|r9X20PWmw# zWSwGcFj~!hDwB0AZOYRhtpd0wtR+BRV%my|_1&Jt$oVy`?ZYy z$>>jYu9lllb8Gj?a;0+!xf`9FvAKd4TqbHcXDG%|JVWbv1bX=&_bMJF z<~SBIgiWKLa*w+``wJN1t-9 zT3M?7_KJ(^X(LCN&K%#%JM-;O*4P}rsD~bAxqNtb64rj_N@^}#@wp7_*b`wA{9#8| zPt-qRqWO;Yd%H(V^GYj;&mqPPq!l6pPu~cAv zyDCGn@Knih=n8+Ck=-P`p$hvSOBM~iu6^onA;%j>n9JAOj9VBY`%TMEZI`<3s&%_O zVRK$I4o7BFuR<(lMoO$Pu=p~e23FmG4f;7&j|RAMVp;Yq_9%c#=H&**LYgu@M))%o zjuIu|GydTz5we=_A7P0UalwWi7|H*0`|U-b@m~z=cQSVk82ZS_mdRQ{Q)dtAcXTY;K2`%{QG@ zb|<5;@3C$?JY2e5Tw2F3Up!aQ@)}WDgj+;k-I`ke%`TArWI)(wwd+4)NDH6(fNs<~ zoVJM&5qyml#g8?DLE&=Q6;v9^Ovfulp2KvuwhIMG-5`_l_BnOehe|8q@=RNd;QDxix?>E0XKJ0ivG%`qcqyrs zOfn0Kj}wGuBAfNup7Pa9Pcn0=*qWSQF0IA!xw629**~H{aIqz^;L~)x=qixM*q=L z-5jdZ{JQQzG2A$`g`~QE;qk+2g;4c1;RdR87_jN<^d;urt2ahTB8iM;VeLI-cn^>J=!>4>&_KCg8$8IVS8fgfU7R-XSGh^xS~2k+>qrwKmW+m?pQpY^|mt z-Z3>X&s9-OzrNtYkk2>=Nzqb^p!!--Q;wiSM9<==2BM8gK7LjbX@4H42N+~Lmg6XO z^nJZ(TiAq1RoU}nifLaREJML!_@C2tpT|E4fPmrSbO!85D^7Hw2`1!he@>wij_CMx zC+tTdzeqS^aNnLvF$(KGo`y8OhlTUaFrnEUD7JHszOAfa=hvm;e4{ttAraGr^n58G zxff30ge^AmtnPlrGlF5JS)z`tf}Kmm^e>JS0eSJ2u#$KgP)L#@K7A-wJo zCNH7^m#36BQnR{@4l#I90$-f+*)M;;|5GKIJ1U;X@#1A`eYJ&hqQTdspi!Bjk&jID z=liqk4t3Uky>@0~pRg4%ron{4iW3la%l7KppchYGb~eX{nMhon2IgwUb$csS@RQ}B zFPi(8B@PE&jy(6Z>f=lx;Z!A)i3>$p2C{DmA37lF5YVrbB9oM~G6{{S8f4$Y;oBu{ zveSbBitnAHa;He`(-d^midf7sd)0ZW_gQAz3A000Ft_o_qYZh7f07 zR_l+HUP$L#cqY#B;2fSQQ^5`f3S%b06c+*ZJ2rnV$wIN~uF5 z$KknJp8l2{b3Q@?=lX&X6cCj0zPE68g;9Wef)Jzm%jTm)uDO>0&zAl7c-}zf>G~e> z3ihKNRO8*xnQ>Ba#^W`sbeo}q(2@NRPbe&71$DX&BBTiil<5lsDvvZbXF6Alu7uSg z!sAZBxW;!I6)oRXy+bA>t+R1^Ax^RJmLw@xmFOgat?C)9TQ;F&!(RXaiVBJ`xyfMmk&iXhr}4+%Xy7|Hze~N8YHrhdtRw*P8gM_mR32T+ zO`zWV3!fu@|HY;vmp5YU2xR*A$%p|X8Wy%he{9J(2~}2;yoME?i~d>=5efPqNKI73 zbu~16qE`9|$?;Hi$vrpKhm{S$f#b3)QqINN0IYp?ev$|{Zqwk`KhlU1wj+Ca_uV%O%$z7=ie8<$9(PmrY58`hLPJ4jX;u!JA4H? zMQYReOUOBw=)y}2Qu>_Kbz*V?>rmvP&K_Exm3Ec<<^jx@Iq??Z-L-6VIR74q^Yc@N zEWjz2^u45sjz`JWHjcy`;@6a7$1*mLwZ>4pI9w%|d9r>58;u9=_}yOECYJ+gs2Evl{&Mu5SH!bcX7l>VGSt)H4S=s-sF&Q1k+C{%V_8O@nJhU-($471%o97R zdAatbkI+L@Ax()?%4iWAE*A=iO}*zjzbg*TK^V)4_d9M&j4rlvVBRuqY7-b{!|*BEL& zMK=IQUVdDxk)MdH2mMK1zLt1Q`f(Mv|0x5`etN&(^s{0*h2i)d)mj+=v2A{Fr2LIi zSr$U7Mrmg617ij6+=iOUns9U1#ujx17 z0h@3BImN)A)^`A2GP^&Q8z+-N939Dw%YmeNJ4dxxnp(RRs-w$}qoG+CMV+=jrp$-# zzRONTc+}*M53B5Mhap{0f`L5F4>4_JH7EDezzJ)`WB|Z^PRcHUbA!ZkDp7}1Ut@g# z{X~6%Dj0|@lU*f;wDClIdA>vR2VDgDoG&j2#?t7=cpXNC}r0K&*8B3I9R3Lz+bK}}VPW5<^oHwiR_Yp}(ja^u8#gLXu};LxR{I+uR%tt3Ogko(A5cqjKSEeq=NauoDo$ z2Hx!_6ZFkh0s86!zG&6^%myRqV<7xggF3cHMIIYuixK~P6Xx-KMDx%8iNI;LrXc+M zjY4>F8&<8oA?z+^;xe5AL%!};W>fn?vfdk9c<+*7WoS-X>}@@6+)bD{QjG1tdXpT` zn?si|J*oaDnj7pd{^$FyHDZeh4--i0|SBQd3Od;p`b% z9-Yq%<9%1POeyzE19>t5Wa%J$s5ep*>x73O=a_%55p1s>H$0Xm{Tal>)Ig0tfns{G_QT&4ZB z1gf;53%#F+bSqcc>HQ3}oa58@S9sQXZ<-R2Oc?)#21`loK{8)$rew5s&*m)F=??(k zK0HeBCU3$L)sT>VgH$E``z}2l`z~Y9)b3EHTkvIiv-Q33-ZS}h`)zW&;e3g6`e1*M zP>rO#blG~aa5PJz6UC(R`bR3yBmQB+vJTG>gI~^fz>Zwf&aKZJAot&ej~|je~((pz?7uM@am)GV_TP-kkJxYcSFg| zLSJ9V<#8@VBuzE|_ZM$k&BKOBGH<%24W->!MzUkLgOZcsAa>=Y+pfJ&V6>p^yCaNr zSoKa~!_#?uekcu>C+T=Z8NlOmp1R|z3AdQ1EI-&_U%;X>k0te@YqW~9x!)O!*3-T7 z?|xOqd$eBj7YR(obW<68O8TiP+%X#jI3X*=Kt*cTvAtG}VN%@==rzC&F;B?}n;p<) zNbsvdvP^KJ#__k`h^^esVj*i{-TVa|VKgiui?(LO6N+>lZPlq>QV7q>j;utNmuu(# z%8pj{se!KG=NF*j@gmWRnDHK5Hb6V>heVuhrT;c|*@@hE>_rDOT9FdA!KJk!U!~9f zFIWIblYj^uHkF{O*=SKBknnU&HcS8i0Rv|zEZKN9cdIE1i0P*Ox!QQOJu(6t4AO`x z1JLV5JCq-~mCoE3V`B#^%J)q4XN|!u<9bP!aKDRulW)4Jr2-;!$y$DdMin3^&&j@5%8`BYrfSMum%-y*WvIA-(Yn8Z8`M? z-SOIE`8w|52X&9e#*fec#-~_g0s(*bKjzWeOdHGce*SJb;ua^_pwSl*{_+Z9e$t>3 zR{6gG*nYmN^xuRxGr!bt0KctgPX&DvT&26jp1nYF;`zTAp@xOa%4a7q4yb%;l~XR&tR<4 zt$O*%!b33syK8v8ReNXbtU8#rnIpm5v#}-RKy>jddvuc_7mg9Wus#ZRUywFmn1Y|^ zRWIdZ{*7LEf%U&xA?Pr`3>ByoWboCOs@&(d`L0D1XecRapm&>nbf~_7KDV|<@b~(A z44<;+Pr1-Roi+LuMb8x3z901~bZyRabU9)i_~6b?I`49&+sD2#1l4JA#fk88gm`rz z%voa(eWqp7FufsE;gkfsvGuynB$3qsqgbriEnD^f=694Y(HLd&E@5F4+g54Vhwxs2 zz>0h6Q5o86e0D7{%jTPkuA$9>4JshDCE`gI1oYPf#;UOVJ!kt+#TfHXBeTffRHeUg z@HBRs_xug@St@QJvqS5#LU=mtz@Y=8b(+_p#pAQfT93~9jKV3!#CnEArGyN=EvnCe zYsSVe8=1NsH=}iO48Nu-n7y4F5hcBUfUF<^DehlOJTYVDr$bMi+s{`Q-;Wt=E}i}! z#hn*&#YCPH(MZFfq_O8zBmVj{K+4iTb^JcUzURSy#?=U3CRj_Wbbk{JNeUxW92jGi z%Igu3YksBwQfSE!nXVEIXPh!(?7ww$k6{Y(#>V~?U&#Y{yl!vl*`&{bUV;x*4Ia`l z*IJt+-d7DEQ2mu$00! zUtS2)aOe{A zVJ6uYRIb(WrKC^Mn%O@L?A=OQlzUiLmpL_dC@~WZ8(rNqBEN}C6IM((VCFjZqO22gEV-Xt-PlrRafsht5d_vb5Tr3Ael2V*W19Wh+suU?${)h zzw!&`AHQe}N*FBdSAvzs0_PNT! zw0X+q&87CTmnXI-993K%Y?X@QY?Kk8LaqyW+{2@=Ftu_o_j;a-55Mm1i34+^{o1uf z75FNUX*s$hZ;H9wS|W6jqxD)e)xB-v_BNee(xXGw9N?#JS@}~@gJHG3j{Vr%EU7%* zVLR9Rd?6w6F^XYb_pbxuzWu{JYepjgZSN7SH+2#=fbWSwP4P>o4#@5gSae)gJnif2 z*w1P>I?24Sg3RY&F&;1}qT?0_ft#C_fZA>a+?~cpzt3ifc%QA%uvd|{@$IH0M~PyL z1-^6Rm3Q98c{&roh7rokuL#8XKi68Gu5J4X3kxHGZ1zybcu~ZRjOg>PlSOKu>Q_yd zQH67oO+JeE*Dcfd^c+R-bI2u$>h5iSX`Q^mc z9UW}3C>XMz`dOB5+JNgIJDv31N{@1*KH`~+&rfQ}^q-z{JJ+jHk=C%4{113|egx zPVZ#7)9vv^Icg5@dkW4ST3np`+;~8Jzg?#FX(C<5SdwnUf>IZ9?k!D|%Lspf%hQlQ zgtq!&1pDCCRO`L+x2T^D96K% zRIxcm>*@KQOB%NeLt{td*-$erIz|D|4`}1-)r<@ZP_EiQ(ol3S_PP9obBb`^)>84M zNKlZC{=|w^U!iKdoCiKbP7!JEJ22T`_ifZUCOQvWkF8Kvg4!6{<1A(yO+)nYQiD$C zH39J8k9TEX1Ft{mGKSBj!Hw(P&KXEZj13Gr)a}o=6c$R8Lmr}n(4C)2wHZi%gflG8 zq%(J4_~^}RlfPQAUw&LcyvcGRuaa&a$SeWz=*pkp6P-=r$?}kLH+Q0gxpSz`B`E#XTFUSTZnRtB{7w15kE$f6OjH)iv3)OpR$-)$(=}I#?I2_twQ(|7O zs{9r1?55wG%hVcK=TFu$ewWd*uwWm*gz3=#1LYasU=Un~U!mr=I zkwL{?KR-EL-@ybO8oM}$vz4I0m(9*VDWo4HXF9dV4cbDB=m<7gldQ7^-!je5&)bz6 ziCvQe9Md=VwYQJ-`Q-<6e?7AZu}^(@5@tj8IO`%-bT>|Px2b@m>EZIVhLaH8ozo|u zdv(A5FbQh~Hqf~|KI#|T;pxU1uvQ?TPaU0|GwnLO$f&8uZdk(n?(aQ8?d#lNA4@KE z;}RwQw#Q{PzqR5`(bAOUM2dGvDd&PMFNKxujA@Q;$1F?t&wsrG?+#2Q=sdhz5%sE= zDc(Ldh6!VXY`pl%1!7~_{oIKb-LnSLji{{Ec^KIOd5K%2P}{| zrWSXRdRc@yGZ(-$3zFoi`U1lk=YFg()U`{u4)1xA__~$8j)M~#jsZn3!QE8EA zUUjPxU0(0+k;>Qll}#O^GC&qefC;Fo?w5O9+e}VQz8gyycG;T^hZf(%8tci5u8yW| znv@>~&sIv#Mq)~ig>Rm`ujwH6`fu5SqmMd8nixkW^t@Km>$pSw3-FRaiLg*BD|@^x7RNONho?o~HoE_B^r{pUGB zZsthLcW;oO(;kt9rRC`@qLH%*s;a6w+u|VrT&b{G5&|}^Av$3|8L_t9zzobM;K>-)oz9;0!hS;<>$irQWw`hdQb!Hr% zw>wNpNlBv`>cL4}!Kcg9B^vOzauKb|{-1+e4=%#37HVJkJE!v%W?09%A+KW4Yhcc;W@e)RX?0#YpN}b@ zKvOnH-NOr%6!dOO-_+N4p{5^JetQP|h!;fFX)|FuyQy`Ve3Te#hA(LgN&9Xm-&WD^ zRID2LYX%1o?AA^Fy^c=gD~Bx*$oqCcZ(Z?^&CCVOO0E1x{2-=SB@_ikn65ASSnU{W z334mA-xT2e+1N-vu(xMNe6$U;D|{05By-pr6wfcks{-MaXl#c)w6{n7dI)04FDU5f zY!oU+v$H(bojGb7geKtFk?T9*bv{ztW{wE@c}pucjSTCzv_%TR+ung~3)J^5Y<%vn zWK3({>%*mRvG;oEY)<;{!_m*b-oe}2ZjqPWwyB)RVxH0o9Jf*1?1C?q zI95-sr^YXk8a9>U;JCQJ!^MSXP+YR^UD_^5W{Ip$P7L(-)w=F%>qOJxFzIMyCnr$E z`HIcI;@SS2GJtsfP{L@2DEMb|^&b;Tp#aRERLI6;Ex&O?M2S4*s`B&21aKs5b^pAR z(|zmF`%N_2-$6ys6k1iK_Zt*1)%{Ap?gH^i9Gs7ce+XR8!L}*HZ1x6NA?~*jnmSB* z*@vd$vVM41u>C;K8DrH$P8n?uk`+hNO`p+>X!ZE`2UaHb&>t)XB_%x-Mtz`XrcBdT zGz`%zVA8HGdO*R6duR*KFU(IFT?vdrq+HC*01=C#5)N8#6jDJb8p^SRRBs?+P}@*g zCV;_84=YCM-UvLykR+w$ia7g6fcTc$*xC69A&e6v>-NCGbL8i1$mIaWLJjPV30`NZ zml=*dCN$N>a9fP<1zB;H>#Zm(tU=83(8_C?b~|3JY*C2h>*=!^ylme>NO zFkbXo+dUQ7oARFZ-l3-l5cP0NC|y-jvM(UcnIqc}_*j;PwtDbYz&DkN1Wou?Bt?{z z`C!v*lPh+!7Fw~Q=Z&~N!9yLyz)`G3^AfJ5-Jzw285xa878V(8`z(#ug&SXzvI@p1 z>*%DO$(`m|-WuKNT`W4x+H%1U+2QUE?KZpNx5u@u|A^V@q$qF8E6glXd(IDY7)4Bv z)JoVVbZ{P*t$!wN*SF`2;^Xb!(Vh!Q4-=Jm3ys|JS!#wmAE4B3Jmgj4yEevy2m9J(N`odXTI1f}2f0)}PaPF`(wV5;7CK~Yg^ zhp1&)soWJzeQO6E8!THoZugUe>4fipw`FaVBdQ1Yb3*GfcZ-xAU@h4p zbcPSYB_n5T^`&@ucr;P{kh*c(Z*axEfnvar<{^cXupxu~{22^CrJ$y+Frgt|@Uh`V zwdTiw-bd@A07h60-WDT9=GeOGC z!O@r6FD{;UxiN&~k#WB}gw#}kZ$|2?*$-*DxV`7t(hXQwgPKgY8T-8G3SuUb>Hz3Z zd!vc7C9g7mWH8At(wen+mAlWZK`4k_y>B0WOi;xKWrRWR9*a21R^g8+cs<<}NJ5E^ z^`@@70M@nT!$WUx8sPbF|IBZrX>vL4otKf=F@^RB*c$+9;XIuW^oBiG&ly-$4enx4 zXy7|#A_Z~6ZN8fmcQ)Z=Fd%`NnwlxLM}L-u&RxV&Dm+#JZ+PumI>FM@bv?RJc)_wS z$TLwFI2vCZK5y*fd+Th#-*3)L5{I|{pJfU;$*DBw-|@}O&4CPq z!EdFFsu+ZYwOtYe@L8aBb-Nrp(Im4rk;(P&Gs%6KjS!=~tT|Jm2(ae`#*L@SDNZ1R zp;mS_I7d%c_o&d@(vrnz=Y2Ddmza(Dauf;(gdZd$DgF^E<<-7)f9$=_MhOg=1KC~$ zQeIDHW)`vq|I?J%65~Aw7*hRyM;9H=OZ?z2&`)L&HG^&L8_VkEI|`Ah`j4+gz3&BE zFLF2#z8(S`q)$`V_^5wLN84DViFt2^94Mu7TxxPoNks}EuK`jvRY(Fyq>j`(=~}HEdW>HGjY28yr5?tG7 zYrv&^n*+q7EqsZe($Mq)56#>>#5cSLyz?%My7C>HZ)|DNKo-+*^Y{0gj+tZ` zgU!PN&z|$Dm9Qdl@>M?>i8Qeh5omFc!lPvB2k=gAZ=`^0a|b^~)a_1IG;iOg+_8#w z8nCWCXHs&PigF&X!-aG#PrY{anD zR*bNXNhdHJj*Ue|b&#aChho#N{i>J@I^^K|c9KLJSkBm3VX~(US=8rmEAp<yZ| zdQYf|-%5C|E41x{?SxuDyFb~we%j55=Z><~=lh#zvF%S-QXM4RoWI^fR@VT%0Ov80rV--6# z{}!5j-4_vX5~%m-%=V+%ZIFy0<@8`fVoB%ozfi|TJALX{#Adp!6##2yZg(g{fnK6C zt}dc!&TL!kK^O!M zUJtsQ-ET3lt32ltj7mwPOOKTPnM4l4rH^D3QxQAfYUr0A6%baxsLJdLe%#geumy|N zKQUg+uxQl}GayVw+14)n2PjouT-p^qq@u}3*70a0fYXFmSctl+bg7Sr>rfM$W-fm; zsSeo*rr5bIzZP(*?WF?V`IV}X*tupmC@b0e!c3Yz7_ojbdO@uRPyzZUZu~i@-C5oP zF-I>g?a|nGJyZZ>ZT3gsA&SNR@!T>eITC0*A&)~Y`PsN{L?bjcXd&i6e`4!0jz%F3 zdKQ?;B)jkw!{en_}1rC(%1g`Tm*xOK4`PZga}`%*3T%>kk`l zD5$*N3aeJ&Qy6f+C5M!ti_Ja409Jl$-7;^&S?l4HBcEv1Z>HZ%Zxni&GmkE#)iP>o zh*MKjnLgR2@3Aw;D--?M-bV3(im!jXFmkFn{UW=f;bOYqH>2G{gsCV+^$Km zR?dUz+RGW+4!wf4!&?}WT{sz{yOxkGc)^Xh;x|5IE437tn8JQTXXO4-B!M*R`y zP1oqW$CxEdc%d@JH;(c1suQ#tD^1;zm+lQjvc&I?`yf#sR+5U&7Zb*rwDsQB?+?9V zz1?>R1JqBE$``Q>9X!;wkThNSDX}Cyz<)8F6qTR++w{jA)QbCk;lb(`k?RJkG^6B5 zZvmJ%&=)=szthXi=#iGQOa{PRMof-%l%K*MG38YURUBd(um(|({r#cmVIW?Kn9v=b z;_faPFP762zgA6=;ysj*f_tRZqfaHt8vW;eEw2;S$&o6q`FMG2+|n;LclLLm1gMu! zqM+w)-4_p|kPjj4;fgb4j)ain18zo77Yp?5={rd&<=Vb2zGGLUZIeU1vmNM_2SyD&ii9KpL$(U#KQ*{AL?W;=_J5cRsp2 zUApUwiyuw4_m2e8VT~Z|#}0a0(G}SpE@D^(w^H31gA6 z!ST>PSo}zf7&h0Ey(3LIb$@ZEf-_C|1hl`~h+&WM2|nNh?-=BK-RfFw_0rzRn?c#& zn`;10L;ADku&g_u%PmlxW?=Gxs6OLmNp}}E)bzBxF#S<6-Sr)h{r+@)uTmLCuR7G3 z3~4-}NQq$L>C80}&lAnSqP*|GXPPelyTLT&w(qzHAPLZgVhn~i&@Y!*o#8hi{jp3b zkWWgA8y8Ygu(Z`2#$XV~WzaLivCq%R@tZCQBm3m1>d5iwVUlWHVFnwi6t;L@fMdKX zHx0<>hEd4}DP>N6{@hdJb1$_kByDl!Z;7<;#;ZcWt3WqQ(MteZH=*|k(y8>w2f-* z?Nq8rRCH3JmX<>i=1c46{Fr}p|9tnyz2AAB_dMsj&-=VT?xO|DOP}_AN(JlgkC~=9 zwNZ5G0c-Uq*pFe3guSLF{fNlOSb7IxnZ`gAB7_?-Fxq1=hC7s6_nBM+dQVdT^#qL> z>E_N;Idr4odm?X5h`*J38-Gta3+wDmG)kjVsh6^JKHaM&!6!RgR_ccMBJmk(-Obgy z(F$?HQx;I|wij=@qV%XApA!zf9XM}QmT~BD!kM55bb=06_vE{1EC>S$AvSw zl@|fqFLqs-q)DSVy^mvJ@Ktzdg={YaCx0Q6jfQj^&FWG6?&}cjEs86<0XQ*)o~Uc$ zXY8CN5zjxYN>6{WxVg~Ahwe9CbObG;k2>@io1pPo7B5zPd}DfmWm0nfdwg1!-$#x9 z)NN!{A33m`f6&jr-ByY^NfbE^=+P=_l4eNhMRyh8K;;#AlLBV3*Nj3;j;+%W?w^z22|r)vpVH}S82p! zIZ#?yZ_In|pe}+mmb7EUChZZSY`96A206ff8q7>1RzwLSJNT{VXW5*O*jdak&3<+2 z4Xk~P!Lu%Ap4txCSvn=2JL%95XWr0UQa*)-{vY>CcXa~Kd zzKR^vO}CIWpYl&hB2~-gWF<)M2u312cEWC`Rs|>-@8Ig%2$>imjzU|yfMODKAsXa zbLN71IfISSvX4fJWn5QKM%|(zw12?}2wnA9YV5*vqR8-!d9y(Kon5}2EuJ>86~2`Z*zPWwZ!ktr z3xLzAX!Yq{4Qq3s5b2~BDGRsNq;BREI_fJ7{&k|R3y1FX?&zSJE`z!h+ME1hjVCW-QHMok-DQ)kh!caxA7)_d)ty(AfLuEy7X5sq zl+GcsA_{bWOG^_$qEKpDaPSnjYB8xjk!d$4FQdw+aS4L%AS4?%W{T*6f_N21P5&4l zoz?RD93H_UOV!O)e{EfDuw<2BjIJ8yMD*7;aulBq-N+YC045zb*^-Ps6PXGx829ut zXnM|(=hv&njTdOhB6`;P{v1U4)~MLHwHFEk{sD;`j|;y5z6S1sq|IRYQ}K%?f#xK| z-cU{7Vlo63(k%razvI0O&hei3DHHTo8(YcbLZAzSYk4kn0TZz+M->%Eo?R8S#fYhj zga}G+WiPrAs*n@XDiY}`Q%`6hRQ=;{QFn_cM$DFQ=#is8m_CTvnj;iL)4>yk(Eqfi zq9M_=K%Lo2Gjdt2o|*~B<`%EjdH`tsOcs0mh^gp#-Eo(fAlU*iA6AZHjtXJBq#_Of wb?wo@i5kn>if3GZe*YkN18;Bj-}v?H9kBH3j$3HxGK0Y7>Ui9t#V$1c9}&keVgLXD diff --git a/maps/Antiqua.dmm b/maps/Antiqua.dmm index d176893059..3970fb147b 100644 --- a/maps/Antiqua.dmm +++ b/maps/Antiqua.dmm @@ -403,13 +403,13 @@ "hM" = (/obj/machinery/light_switch{pixel_x = 24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/storage) "hN" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/qm) "hO" = (/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "1"},/turf/simulated/floor,/area) -"hP" = (/obj/machinery/conveyor{backwards = 2; dir = 2; divdir = 0; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"hP" = (/obj/machinery/conveyor{backwards = 2; dir = 2;forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) "hQ" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) "hR" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/quartermaster/qm) -"hS" = (/obj/machinery/conveyor{backwards = null; dir = 2; divdir = 0; forwards = null; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hS" = (/obj/machinery/conveyor{backwards = null; dir = 2;forwards = null; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) "hT" = (/obj/structure/stool/chair{name = "Bailiff"},/turf/simulated/floor,/area) "hU" = (/obj/machinery/door/airlock/maintenance,/turf/simulated/floor,/area/quartermaster/qm) -"hV" = (/obj/machinery/conveyor{backwards = 1; dir = 2; divdir = 0; forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hV" = (/obj/machinery/conveyor{backwards = 1; dir = 2;forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) "hW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) "hX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) "hY" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor,/area) @@ -435,12 +435,12 @@ "is" = (/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) "it" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) "iu" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) -"iv" = (/obj/machinery/conveyor{backwards = 4; dir = 5; forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) -"iw" = (/obj/machinery/conveyor{backwards = 1; dir = 2; divdir = 0; forwards = 2; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) +"iv" = (/obj/machinery/conveyor{backwards = 4; dir = 5; forwards = 2; id = "QMonload"; reverseSpriteMoveDir = 1},/turf/simulated/floor,/area/quartermaster/qm) +"iw" = (/obj/machinery/conveyor{backwards = 1; dir = 2;forwards = 2; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) "ix" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) "iy" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) "iz" = (/obj/machinery/door/window/westleft,/turf/simulated/floor{icon_state = "grimy"},/area) -"iA" = (/obj/machinery/conveyor{backwards = 4; dir = 6; divert = 1; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"iA" = (/obj/machinery/conveyor{backwards = 4; dir = 6; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) "iB" = (/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) "iC" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/qm) "iD" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) From 12cd38d5dae6d3d035f686f02318c145c29906e6 Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Wed, 4 Jan 2012 11:48:39 +1000 Subject: [PATCH 3/8] Tweaked antiqua cargobay/diverters. UI bug (?) unreproduceable. Signed-off-by: CaelAislinn --- maps/Antiqua.dmm | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/maps/Antiqua.dmm b/maps/Antiqua.dmm index 3970fb147b..012fe2c16e 100644 --- a/maps/Antiqua.dmm +++ b/maps/Antiqua.dmm @@ -403,13 +403,13 @@ "hM" = (/obj/machinery/light_switch{pixel_x = 24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/storage) "hN" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/qm) "hO" = (/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "1"},/turf/simulated/floor,/area) -"hP" = (/obj/machinery/conveyor{backwards = 2; dir = 2;forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"hP" = (/obj/machinery/conveyor{backwards = 2; dir = 2; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) "hQ" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) "hR" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/quartermaster/qm) -"hS" = (/obj/machinery/conveyor{backwards = null; dir = 2;forwards = null; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hS" = (/obj/machinery/conveyor{backwards = null; dir = 2; forwards = null; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) "hT" = (/obj/structure/stool/chair{name = "Bailiff"},/turf/simulated/floor,/area) "hU" = (/obj/machinery/door/airlock/maintenance,/turf/simulated/floor,/area/quartermaster/qm) -"hV" = (/obj/machinery/conveyor{backwards = 1; dir = 2;forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hV" = (/obj/machinery/conveyor{backwards = 1; dir = 2; forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) "hW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) "hX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) "hY" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor,/area) @@ -436,7 +436,7 @@ "it" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) "iu" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) "iv" = (/obj/machinery/conveyor{backwards = 4; dir = 5; forwards = 2; id = "QMonload"; reverseSpriteMoveDir = 1},/turf/simulated/floor,/area/quartermaster/qm) -"iw" = (/obj/machinery/conveyor{backwards = 1; dir = 2;forwards = 2; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) +"iw" = (/obj/machinery/conveyor{backwards = 1; dir = 2; forwards = 2; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) "ix" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) "iy" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) "iz" = (/obj/machinery/door/window/westleft,/turf/simulated/floor{icon_state = "grimy"},/area) @@ -639,19 +639,20 @@ "mo" = (/obj/effect/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) "mp" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/shuttle/floor,/area/supply/dock) "mq" = (/turf/simulated/shuttle/floor,/area/supply/dock) -"mr" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/obj/effect/sign/movingparts{pixel_x = -32},/turf/simulated/shuttle/floor,/area/supply/dock) +"mr" = (/obj/effect/sign/movingparts{pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) "ms" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) "mt" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) "mu" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) "mv" = (/turf/space,/area/supply) -"mw" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/structure/plasticflaps,/turf/simulated/shuttle/floor,/area/supply/dock) -"mx" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) -"my" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/supply/dock) -"mz" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/supply/dock) -"mA" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/supply/dock) -"mB" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/space,/area/supply/dock) -"mC" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/space,/area/supply/dock) -"mD" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/space,/area/supply/dock) +"mw" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/obj/effect/sign/movingparts{pixel_x = -32},/turf/simulated/shuttle/floor,/area/supply/dock) +"mx" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/structure/plasticflaps,/turf/simulated/shuttle/floor,/area/supply/dock) +"my" = (/obj/machinery/conveyor{backwards = 1; dir = 10; forwards = 8; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) +"mz" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/supply/dock) +"mA" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/supply/dock) +"mB" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/supply/dock) +"mC" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/space,/area/supply/dock) +"mD" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/space,/area/supply/dock) +"mE" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/space,/area/supply/dock) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1708,11 +1709,11 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmtmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamsmtmlmlmlmsaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumtmlmlmlmuaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmrmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamwmxmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmwmlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamxmymlmlmlmnaaaamvmvmvmvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmlmlmlmlmnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamymzmzmzmzmAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmBmCmCmDmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamzmAmAmAmAmBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmvmvmvmvmvmvmvmvmvmvmvmvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmCmDmDmEmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 3f6e2c28d48118b84daf7d46a69c70a05f30ec5b Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Wed, 4 Jan 2012 11:55:04 +1000 Subject: [PATCH 4/8] sync Signed-off-by: CaelAislinn --- baystation12.dme | 40 +- code/WorkInProgress/Mini/customitems.dm | 4 +- code/WorkInProgress/SkyMarshal/eraser.dm | 9 - .../WorkInProgress/SkyMarshal/traitoritems.dm | 74 +++ code/defines/global.dm | 5 +- code/defines/obj/clothing/jumpsuit.dm | 7 + code/defines/obj/weapon.dm | 4 + code/game/communications.dm | 12 +- code/game/events/Event.dm | 20 + .../EventProcs}/black_hole.dm | 0 .../events => events/EventProcs}/clang.dm | 0 .../events => events/EventProcs}/dust.dm | 0 .../events => events/EventProcs}/kudzu.dm | 0 .../events => events/EventProcs}/miniblob.dm | 0 code/game/events/EventProcs/misc.dm | 71 +++ .../EventProcs}/ninja_abilities.dm | 0 .../EventProcs}/ninja_equipment.dm | 0 .../EventProcs}/space_ninja.dm | 0 code/game/events/Events/AlienInfestation.dm | 38 ++ code/game/events/Events/Appendicitis.dm | 16 + code/game/events/Events/BlowOut.dm | 34 ++ code/game/events/Events/ElectricalStorm.dm | 121 +++++ .../events/Events/GravitationalAnomaly.dm | 10 + code/game/events/Events/ImmovableRod.dm | 5 + code/game/events/Events/IonStorm.dm | 46 ++ code/game/events/Events/MeteorStorm.dm | 11 + code/game/events/Events/MiniBlob.dm | 5 + code/game/events/Events/PortalStorm.dm | 26 + code/game/events/Events/PowerOffline.dm | 8 + code/game/events/Events/PrisonBreak.dm | 24 + code/game/events/Events/RadiationBelt.dm | 18 + code/game/events/Events/SpaceCarp.dm | 14 + code/game/events/Events/SpaceNinja.dm | 6 + code/game/events/Events/VirusEpidemic.dm | 80 ++++ code/game/events/EventsMain.dm | 82 ++++ code/game/gamemodes/events.dm | 445 ------------------ code/game/gamemodes/gameticker.dm | 9 +- code/game/landmarks.dm | 4 + code/game/machinery/doors/airlock.dm | 1 - code/game/master_controller.dm | 7 + code/game/objects/closets/emergency.dm | 37 +- code/game/objects/radio/radio.dm | 28 +- code/game/objects/structures.dm | 6 + code/modules/admin/admin.dm | 21 +- code/modules/admin/admin_verbs.dm | 2 + code/modules/admin/verbs/randomverbs.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 16 + code/modules/mob/mob_helpers.dm | 4 +- code/modules/power/apc.dm | 4 +- code/modules/recycling/disposal.dm | 2 +- maps/tgstation.2.0.8.dmm | 32 +- 51 files changed, 872 insertions(+), 538 deletions(-) delete mode 100644 code/WorkInProgress/SkyMarshal/eraser.dm create mode 100644 code/WorkInProgress/SkyMarshal/traitoritems.dm create mode 100644 code/game/events/Event.dm rename code/game/{gamemodes/events => events/EventProcs}/black_hole.dm (100%) rename code/game/{gamemodes/events => events/EventProcs}/clang.dm (100%) rename code/game/{gamemodes/events => events/EventProcs}/dust.dm (100%) rename code/game/{gamemodes/events => events/EventProcs}/kudzu.dm (100%) rename code/game/{gamemodes/events => events/EventProcs}/miniblob.dm (100%) create mode 100644 code/game/events/EventProcs/misc.dm rename code/game/{gamemodes/events => events/EventProcs}/ninja_abilities.dm (100%) rename code/game/{gamemodes/events => events/EventProcs}/ninja_equipment.dm (100%) rename code/game/{gamemodes/events => events/EventProcs}/space_ninja.dm (100%) create mode 100644 code/game/events/Events/AlienInfestation.dm create mode 100644 code/game/events/Events/Appendicitis.dm create mode 100644 code/game/events/Events/BlowOut.dm create mode 100644 code/game/events/Events/ElectricalStorm.dm create mode 100644 code/game/events/Events/GravitationalAnomaly.dm create mode 100644 code/game/events/Events/ImmovableRod.dm create mode 100644 code/game/events/Events/IonStorm.dm create mode 100644 code/game/events/Events/MeteorStorm.dm create mode 100644 code/game/events/Events/MiniBlob.dm create mode 100644 code/game/events/Events/PortalStorm.dm create mode 100644 code/game/events/Events/PowerOffline.dm create mode 100644 code/game/events/Events/PrisonBreak.dm create mode 100644 code/game/events/Events/RadiationBelt.dm create mode 100644 code/game/events/Events/SpaceCarp.dm create mode 100644 code/game/events/Events/SpaceNinja.dm create mode 100644 code/game/events/Events/VirusEpidemic.dm create mode 100644 code/game/events/EventsMain.dm delete mode 100644 code/game/gamemodes/events.dm diff --git a/baystation12.dme b/baystation12.dme index 8b7df32043..f58c6eba48 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -30,11 +30,13 @@ #define FILE_DIR "code/game" #define FILE_DIR "code/game/area" #define FILE_DIR "code/game/asteroid" +#define FILE_DIR "code/game/events" +#define FILE_DIR "code/game/events/EventProcs" +#define FILE_DIR "code/game/events/Events" #define FILE_DIR "code/game/gamemodes" #define FILE_DIR "code/game/gamemodes/blob" #define FILE_DIR "code/game/gamemodes/changeling" #define FILE_DIR "code/game/gamemodes/cult" -#define FILE_DIR "code/game/gamemodes/events" #define FILE_DIR "code/game/gamemodes/extended" #define FILE_DIR "code/game/gamemodes/malfunction" #define FILE_DIR "code/game/gamemodes/meteor" @@ -364,7 +366,31 @@ #include "code\game\asteroid\asteroid.dm" #include "code\game\asteroid\device.dm" #include "code\game\asteroid\turf.dm" -#include "code\game\gamemodes\events.dm" +#include "code\game\events\Event.dm" +#include "code\game\events\EventsMain.dm" +#include "code\game\events\EventProcs\black_hole.dm" +#include "code\game\events\EventProcs\clang.dm" +#include "code\game\events\EventProcs\dust.dm" +#include "code\game\events\EventProcs\kudzu.dm" +#include "code\game\events\EventProcs\miniblob.dm" +#include "code\game\events\EventProcs\misc.dm" +#include "code\game\events\EventProcs\ninja_abilities.dm" +#include "code\game\events\EventProcs\ninja_equipment.dm" +#include "code\game\events\EventProcs\space_ninja.dm" +#include "code\game\events\Events\AlienInfestation.dm" +#include "code\game\events\Events\Appendicitis.dm" +#include "code\game\events\Events\ElectricalStorm.dm" +#include "code\game\events\Events\GravitationalAnomaly.dm" +#include "code\game\events\Events\ImmovableRod.dm" +#include "code\game\events\Events\IonStorm.dm" +#include "code\game\events\Events\MeteorStorm.dm" +#include "code\game\events\Events\MiniBlob.dm" +#include "code\game\events\Events\PowerOffline.dm" +#include "code\game\events\Events\PrisonBreak.dm" +#include "code\game\events\Events\RadiationBelt.dm" +#include "code\game\events\Events\SpaceCarp.dm" +#include "code\game\events\Events\SpaceNinja.dm" +#include "code\game\events\Events\VirusEpidemic.dm" #include "code\game\gamemodes\game_mode.dm" #include "code\game\gamemodes\gameticker.dm" #include "code\game\gamemodes\intercept_report.dm" @@ -377,14 +403,6 @@ #include "code\game\gamemodes\changeling\traitor_chan.dm" #include "code\game\gamemodes\cult\cult.dm" #include "code\game\gamemodes\cult\cult_items.dm" -#include "code\game\gamemodes\events\black_hole.dm" -#include "code\game\gamemodes\events\clang.dm" -#include "code\game\gamemodes\events\dust.dm" -#include "code\game\gamemodes\events\kudzu.dm" -#include "code\game\gamemodes\events\miniblob.dm" -#include "code\game\gamemodes\events\ninja_abilities.dm" -#include "code\game\gamemodes\events\ninja_equipment.dm" -#include "code\game\gamemodes\events\space_ninja.dm" #include "code\game\gamemodes\extended\extended.dm" #include "code\game\gamemodes\malfunction\Malf_Modules.dm" #include "code\game\gamemodes\malfunction\malfunction.dm" @@ -986,8 +1004,8 @@ #include "code\WorkInProgress\Mini\atmos_control.dm" #include "code\WorkInProgress\Mini\customitems.dm" #include "code\WorkInProgress\SkyMarshal\coatrack.dm" -#include "code\WorkInProgress\SkyMarshal\eraser.dm" #include "code\WorkInProgress\SkyMarshal\policetape.dm" +#include "code\WorkInProgress\SkyMarshal\traitoritems.dm" #include "code\WorkInProgress\Tastyfish\Eliza.dm" #include "code\WorkInProgress\Tastyfish\Eliza_Data.dm" #include "code\WorkInProgress\Tastyfish\paiLiza.dm" diff --git a/code/WorkInProgress/Mini/customitems.dm b/code/WorkInProgress/Mini/customitems.dm index 3a3da54918..8a507608b2 100644 --- a/code/WorkInProgress/Mini/customitems.dm +++ b/code/WorkInProgress/Mini/customitems.dm @@ -6,7 +6,9 @@ var/list/CustomItemList = list( // ckey real_name item path // list("miniature","Dave Booze",/obj/item/toy/crayonbox) //screw this i dont want crayons, it's an example okay - list("skymarshal", "Phillip Oswald", /obj/item/weapon/coin/silver) //Phillip likes to chew on cigars. Just unlit cigars, don't ask me why. Must be a clone thing. (Cigarette machines dispense cigars if they have a coin in them) --SkyMarshal + list("skymarshal", "Phillip Oswald", /obj/item/weapon/coin/silver), //Phillip likes to chew on cigars. Just unlit cigars, don't ask me why. Must be a clone thing. (Cigarette machines dispense cigars if they have a coin in them) --SkyMarshal + list("spaceman96", "Trenna Seber", /obj/item/weapon/pen/multi), //For Spesss. + list("asanadas", "Book Berner", /obj/item/clothing/under/chameleon/psyche) ) /proc/EquipCustomItems(mob/living/carbon/human/M) diff --git a/code/WorkInProgress/SkyMarshal/eraser.dm b/code/WorkInProgress/SkyMarshal/eraser.dm deleted file mode 100644 index f15384f3f1..0000000000 --- a/code/WorkInProgress/SkyMarshal/eraser.dm +++ /dev/null @@ -1,9 +0,0 @@ -/obj/item/weapon/stamperaser - name = "Eraser" - desc = "Some type of eraser, you guess." - flags = FPRINT | TABLEPASS - icon = 'items.dmi' - icon_state = "zippo" - item_state = "zippo" - w_class = 1.0 - m_amt = 80 \ No newline at end of file diff --git a/code/WorkInProgress/SkyMarshal/traitoritems.dm b/code/WorkInProgress/SkyMarshal/traitoritems.dm new file mode 100644 index 0000000000..2b29a12e22 --- /dev/null +++ b/code/WorkInProgress/SkyMarshal/traitoritems.dm @@ -0,0 +1,74 @@ +/obj/item/weapon/stamperaser + name = "Eraser" + desc = "Some type of eraser, you guess." + flags = FPRINT | TABLEPASS + icon = 'items.dmi' + icon_state = "zippo" + item_state = "zippo" + w_class = 1.0 + m_amt = 80 + +/obj/item/device/jammer + name = "strange device" + desc = "It blinks and has an antenna on it. Weird." + icon_state = "t-ray0" + var/on = 0 + flags = FPRINT|TABLEPASS + w_class = 1 + var + list/obj/item/device/radio/Old = list() + list/obj/item/device/radio/Curr = list() + time_remaining = 5 + +/obj/item/device/jammer/New() + ..() + time_remaining = rand(10,20) // ~2-4 BYOND seconds of use. + return + +/obj/item/device/jammer/attack_self(mob/user) + + if(time_remaining > 0) + on = !on + icon_state = "t-ray[on]" + + if(on) + processing_objects.Add(src) + else + on = 0 + icon_state = "t-ray0" + user << "It's fried itself from overuse!" + if(Old) + for(var/obj/item/device/radio/T in Old) + T.scrambleoverride = 0 + Old = null + Curr = null + + +/obj/item/device/jammer/process() + if(!on) + processing_objects.Remove(src) + return null + + Old = Curr + Curr = list() + + for(var/obj/item/device/radio/T in range(3, src.loc) ) + + T.scrambleoverride = 1 + Curr |= T + for(var/obj/item/device/radio/V in Old) + if(V == T) + Old -= V + break + + for(var/obj/item/device/radio/T in Old) + T.scrambleoverride = 0 + + time_remaining-- + if(time_remaining <= 0) + for(var/mob/O in viewers(src)) + O.show_message("\red You hear a loud pop, like circuits frying.", 1) + on = 0 + icon_state = "t-ray0" + + sleep(2) \ No newline at end of file diff --git a/code/defines/global.dm b/code/defines/global.dm index 5f3b6e027b..b0bbb54e11 100644 --- a/code/defines/global.dm +++ b/code/defines/global.dm @@ -41,7 +41,7 @@ var skipupdate = 0 /////////////// eventchance = 1 //% per 2 mins - event = 0 + EventsOn = 1 hadevent = 0 blobevent = 0 /////////////// @@ -108,6 +108,7 @@ var // list/traitors = list() //traitor list list/cardinal = list( NORTH, SOUTH, EAST, WEST ) list/alldirs = list(NORTH, SOUTH, EAST, WEST, NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST) + list/emclosets = list() //random emergency closets woo datum/station_state/start_state = null datum/configuration/config = null @@ -156,6 +157,8 @@ var list/BorgIndexToFlag list/BorgIndexToWireColor list/BorgWireColorToIndex + list/ScrambledFrequencies = list( ) //These are used for electrical storms, and anything else that jams radios. + list/UnscrambledFrequencies = list( ) const/SPEED_OF_LIGHT = 3e8 //not exact but hey! const/SPEED_OF_LIGHT_SQ = 9e+16 diff --git a/code/defines/obj/clothing/jumpsuit.dm b/code/defines/obj/clothing/jumpsuit.dm index 3ccca7d524..f420d23bd0 100644 --- a/code/defines/obj/clothing/jumpsuit.dm +++ b/code/defines/obj/clothing/jumpsuit.dm @@ -30,6 +30,13 @@ origin_tech = "syndicate=3" var/list/clothing_choices = list() +/obj/item/clothing/under/chameleon/psyche + item_state = "bl_suit" + name = "psychedelic" + desc = "Groovy!" + icon_state = "psyche" + color = "psyche" + /obj/item/clothing/under/chameleon/all /obj/item/clothing/under/color/black diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index a40d180480..d01409c9e4 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -915,6 +915,10 @@ var/text_underline = 0 var/text_break = 0 +/obj/item/weapon/pen/multi + desc = "It's a cool looking pen. Lots of colors!" + name = "multicolor pen" + /obj/item/weapon/banhammer desc = "A banhammer" name = "Banhammer" diff --git a/code/game/communications.dm b/code/game/communications.dm index aac6202bc1..8b292e10f8 100644 --- a/code/game/communications.dm +++ b/code/game/communications.dm @@ -113,7 +113,7 @@ var/list/radiochannels = list( var/list/DEPT_FREQS = list(1351,1355,1357,1359,1213,1441,1349,1347) var/const/COMM_FREQ = 1353 //command, colored gold in chat window var/const/SYND_FREQ = 1213 -var/NUKE_FREQ = 1199 //Never accessable except on nuke rounds. +var/NUKE_FREQ = 1199 //Never accessable except on nuke rounds, randomised on nuke rounds. #define TRANSMISSION_WIRE 0 #define TRANSMISSION_RADIO 1 @@ -159,6 +159,13 @@ datum/controller/radio return 1 + proc/RegisterScrambler(var/Frequency) + var/datum/radio_frequency/frequency = frequencies[Frequency] + frequency.scrambled++ + + proc/UnregisterScrambler(var/Frequency) + var/datum/radio_frequency/frequency = frequencies[Frequency] + frequency.scrambled-- proc/return_frequency(var/frequency as num) var/f_text = num2text(frequency) return frequencies[f_text] @@ -166,6 +173,7 @@ datum/controller/radio datum/radio_frequency var/frequency as num var/list/list/obj/devices = list() + var/scrambled = 0 proc post_signal(obj/source as obj|null, datum/signal/signal, var/filter = null as text|null, var/range = null as num|null) @@ -173,6 +181,8 @@ datum/radio_frequency // var/N_f=0 // var/N_nf=0 // var/Nt=0 + if(scrambled) + return var/turf/start_point if(range) start_point = get_turf(source) diff --git a/code/game/events/Event.dm b/code/game/events/Event.dm new file mode 100644 index 0000000000..0616ebe32f --- /dev/null +++ b/code/game/events/Event.dm @@ -0,0 +1,20 @@ +/datum/event + + var/Lifetime = 0 + var/ActiveFor = 0 + + New() + ..() + if(!Lifetime) + Lifetime = rand(30, 120) + + proc + Announce() + + Tick() + + Die() + + LongTerm() + LongTermEvent = ActiveEvent + ActiveEvent = null \ No newline at end of file diff --git a/code/game/gamemodes/events/black_hole.dm b/code/game/events/EventProcs/black_hole.dm similarity index 100% rename from code/game/gamemodes/events/black_hole.dm rename to code/game/events/EventProcs/black_hole.dm diff --git a/code/game/gamemodes/events/clang.dm b/code/game/events/EventProcs/clang.dm similarity index 100% rename from code/game/gamemodes/events/clang.dm rename to code/game/events/EventProcs/clang.dm diff --git a/code/game/gamemodes/events/dust.dm b/code/game/events/EventProcs/dust.dm similarity index 100% rename from code/game/gamemodes/events/dust.dm rename to code/game/events/EventProcs/dust.dm diff --git a/code/game/gamemodes/events/kudzu.dm b/code/game/events/EventProcs/kudzu.dm similarity index 100% rename from code/game/gamemodes/events/kudzu.dm rename to code/game/events/EventProcs/kudzu.dm diff --git a/code/game/gamemodes/events/miniblob.dm b/code/game/events/EventProcs/miniblob.dm similarity index 100% rename from code/game/gamemodes/events/miniblob.dm rename to code/game/events/EventProcs/miniblob.dm diff --git a/code/game/events/EventProcs/misc.dm b/code/game/events/EventProcs/misc.dm new file mode 100644 index 0000000000..93945ec70b --- /dev/null +++ b/code/game/events/EventProcs/misc.dm @@ -0,0 +1,71 @@ +/proc/power_failure() + command_alert("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure") + world << sound('poweroff.ogg') + for(var/obj/machinery/power/apc/C in world) + if(C.cell && C.z == 1) + C.cell.charge = 0 + for(var/obj/machinery/power/smes/S in world) + if(istype(get_area(S), /area/turret_protected) || S.z != 1) + continue + S.charge = 0 + S.output = 0 + S.online = 0 + S.updateicon() + S.power_change() + for(var/area/A in world) + if(A.name != "Space" && A.name != "Engine Walls" && A.name != "Chemical Lab Test Chamber" && A.name != "Escape Shuttle" && A.name != "Arrival Area" && A.name != "Arrival Shuttle" && A.name != "start area" && A.name != "Engine Combustion Chamber") + A.power_light = 0 + A.power_equip = 0 + A.power_environ = 0 + A.power_change() + +/proc/power_restore() + command_alert("Power has been restored to [station_name()]. We apologize for the inconvenience.", "Power Systems Nominal") + world << sound('poweron.ogg') + for(var/obj/machinery/power/apc/C in world) + if(C.cell && C.z == 1) + C.cell.charge = C.cell.maxcharge + for(var/obj/machinery/power/smes/S in world) + if(S.z != 1) + continue + S.charge = S.capacity + S.output = 200000 + S.online = 1 + S.updateicon() + S.power_change() + for(var/area/A in world) + if(A.name != "Space" && A.name != "Engine Walls" && A.name != "Chemical Lab Test Chamber" && A.name != "space" && A.name != "Escape Shuttle" && A.name != "Arrival Area" && A.name != "Arrival Shuttle" && A.name != "start area" && A.name != "Engine Combustion Chamber") + A.power_light = 1 + A.power_equip = 1 + A.power_environ = 1 + A.power_change() + +/proc/lightsout(isEvent = 0, lightsoutAmount = 1,lightsoutRange = 10) //leave lightsoutAmount as 0 to break ALL lights + if(isEvent) + command_alert("An Electrical storm has been detected in your area, please repair potential electronic overloads.","Electrical Storm Alert") + + if(lightsoutAmount) + var/list/epicentreList = list() + + for(var/i=1,i<=lightsoutAmount,i++) + var/list/possibleEpicentres = list() + for(var/obj/effect/landmark/newEpicentre in world) + if(newEpicentre.name == "lightsout" && !(newEpicentre in epicentreList)) + possibleEpicentres += newEpicentre + if(possibleEpicentres.len) + epicentreList += pick(possibleEpicentres) + else + break + + if(!epicentreList.len) + return + + for(var/obj/effect/landmark/epicentre in epicentreList) + for(var/obj/machinery/power/apc/apc in range(epicentre,lightsoutRange)) + apc.overload_lighting() + + else + for(var/obj/machinery/power/apc/apc in world) + apc.overload_lighting() + + return \ No newline at end of file diff --git a/code/game/gamemodes/events/ninja_abilities.dm b/code/game/events/EventProcs/ninja_abilities.dm similarity index 100% rename from code/game/gamemodes/events/ninja_abilities.dm rename to code/game/events/EventProcs/ninja_abilities.dm diff --git a/code/game/gamemodes/events/ninja_equipment.dm b/code/game/events/EventProcs/ninja_equipment.dm similarity index 100% rename from code/game/gamemodes/events/ninja_equipment.dm rename to code/game/events/EventProcs/ninja_equipment.dm diff --git a/code/game/gamemodes/events/space_ninja.dm b/code/game/events/EventProcs/space_ninja.dm similarity index 100% rename from code/game/gamemodes/events/space_ninja.dm rename to code/game/events/EventProcs/space_ninja.dm diff --git a/code/game/events/Events/AlienInfestation.dm b/code/game/events/Events/AlienInfestation.dm new file mode 100644 index 0000000000..66ed492422 --- /dev/null +++ b/code/game/events/Events/AlienInfestation.dm @@ -0,0 +1,38 @@ +/datum/event/alieninfestation + + Announce() + + var/list/vents = list() + for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in world) + if(temp_vent.loc.z == 1 && !temp_vent.welded) + vents.Add(temp_vent) + var/spawncount = 1 + if(prob(10)) spawncount++ //rarely, have two larvae spawn instead of one + while(spawncount >= 1) + var/obj/vent = pick(vents) + + var/list/candidates = list() // Picks a random ghost in the world to shove in the larva -- TLE; If there's no ghost... well, sucks. Wasted event. -- Urist + + for(var/mob/dead/observer/G in world) + if(G.client) + if(G.client.be_alien) + if(((G.client.inactivity/10)/60) <= 5) + if(G.corpse) + if(G.corpse.stat==2) + candidates.Add(G) + if(!G.corpse) + candidates.Add(G) + + if(candidates.len) + var/mob/dead/observer/G = pick(candidates) + var/mob/living/carbon/alien/larva/new_xeno = new(vent.loc) + new_xeno.mind_initialize(G,"Larva") + new_xeno.key = G.key + del(G) + + vents.Remove(vent) + spawncount -= 1 + + spawn(rand(3000, 6000)) //Delayed announcements to keep the crew on their toes. + command_alert("Unidentified lifesigns detected coming aboard [station_name()]. Secure any exterior access, including ducting and ventilation.", "Lifesign Alert") + world << sound('aliens.ogg') \ No newline at end of file diff --git a/code/game/events/Events/Appendicitis.dm b/code/game/events/Events/Appendicitis.dm new file mode 100644 index 0000000000..0294194b4d --- /dev/null +++ b/code/game/events/Events/Appendicitis.dm @@ -0,0 +1,16 @@ +/datum/event/appendicitis + + Announce() + + for(var/mob/living/carbon/human/H in world) + var/foundAlready = 0 // don't infect someone that already has the virus + for(var/datum/disease/D in H.viruses) + foundAlready = 1 + if(H.stat == 2 || foundAlready) + continue + + var/datum/disease/D = new /datum/disease/appendicitis + D.holder = H + D.affected_mob = H + H.viruses += D + break \ No newline at end of file diff --git a/code/game/events/Events/BlowOut.dm b/code/game/events/Events/BlowOut.dm new file mode 100644 index 0000000000..66b1b9f49d --- /dev/null +++ b/code/game/events/Events/BlowOut.dm @@ -0,0 +1,34 @@ +/area/var/radsafe = 0 +/area/maintenance/radsafe = 1 +/area/ai_monitored/maintenance/radsafe = 1 +/area/centcom/radsafe = 1 +/area/admin/radsafe = 1 +/area/adminsafety/radsafe = 1 +/area/shuttle/radsafe = 1 +/area/syndicate_station/radsafe = 1 +/area/asteroid/radsafe = 1 +/area/crew_quarters/sleeping/radsafe = 1 + +/datum/event/blowout + Lifetime = 150 + Announce() + if(!forced && prob(90)) + ActiveEvent = null + SpawnEvent() + del src + return + command_alert("Warning: Ship approaching high-density radiation cloud. Seek cover immediately.") + Tick() + if(ActiveFor == 50) + command_alert("Ship has entered radiation cloud. Do not leave cover until it has passed.") + if(ActiveFor == 100 || ActiveFor == 150) //1/2 and 2/2 f the way after it start proper make peope be half dead mostly + for(var/mob/living/carbon/M in world) + var/area = M.loc.loc + while(!istype(area, /area)) + area = area:loc + if(area:radsafe) + continue + if(!M.stat) + M.radiate(100) + Die() + command_alert("The ship has cleared the radiation cloud. It is now safe to leave cover.") \ No newline at end of file diff --git a/code/game/events/Events/ElectricalStorm.dm b/code/game/events/Events/ElectricalStorm.dm new file mode 100644 index 0000000000..dbaf669326 --- /dev/null +++ b/code/game/events/Events/ElectricalStorm.dm @@ -0,0 +1,121 @@ +/datum/event/electricalstorm + var + list/datum/radio_frequency/DisruptedFrequencies = list( ) + list/obj/machinery/light/Lights = list( ) + list/obj/machinery/light/APCs = list( ) + list/obj/machinery/light/Doors = list( ) + + Announce() + Lifetime = rand(90, 300) + command_alert("The ship is flying through an electrical storm. Radio communications may be disrupted", "Anomaly Alert") + + for (var/datum/radio_frequency/Freq in radio_controller.frequencies) + if(prob(35)) + radio_controller.RegisterScrambler(Freq) + DisruptedFrequencies += Freq + + for (var/Freq = 1201, Freq <= 1599, Freq += 2) + if(prob(35)) + ScrambledFrequencies += list ("[Freq]" = Freq) + else + UnscrambledFrequencies += list ("[Freq]" = Freq) + + for (var/Freq in DEPT_FREQS) + if(prob(75)) + ScrambledFrequencies |= list ("[Freq]" = Freq) + if(UnscrambledFrequencies["[Freq]"]) + UnscrambledFrequencies -= list ("[Freq]" = Freq) + + if(prob(80)) + ScrambledFrequencies |= list ("1459" = 1459) + if(UnscrambledFrequencies["1459"]) + UnscrambledFrequencies -= list ("1459" = 1459) + + for(var/obj/machinery/light/Light in world) + if(Light.z == 1) + Lights += Light + + for(var/obj/machinery/power/apc/APC in world) + if(APC.z == 1 && !APC.crit) + APCs += APC + + for(var/obj/machinery/door/airlock/Door in world) + if(Door.z == 1) + Doors += Door + + sleep(rand(70,180)) + + var/picked = 0 + var/list/SafeTemp = list() + var/SafeFreq = 0 + if(UnscrambledFrequencies["1459"]) + SafeFreq = 1459 + picked = 1 + else + while(picked == 0) + SafeTemp = pick(UnscrambledFrequencies) + SafeFreq = UnscrambledFrequencies[SafeTemp] + if(SafeFreq < 1489 && SafeFreq > 1441) + picked = 1 + + command_alert("The radio frequency [SafeFreq/10] has been identified as stable despite the interference.", "Station Central Computer System") + + Tick() + for(var/x = 0; x < 3; x++) + if (prob(30)) + BlowLight() + if (prob(10)) + DisruptAPC() + if (prob(10)) + DisableDoor() + + + Die() + command_alert("The ship has cleared the electrical storm. Radio communications restored", "Anomaly Alert") + for (var/datum/radio_frequency/Freq in ScrambledFrequencies) + radio_controller.UnregisterScrambler(Freq) + DisruptedFrequencies = list( ) + UnscrambledFrequencies = list( ) + ScrambledFrequencies = list( ) + + proc + BlowLight() //Blow out a light fixture + var/obj/machinery/light/Light = null + var/insanity = 0 + while (Light == null || Light.status != 0) + Light = pick(Lights) + insanity++ + if (insanity >= Lights.len) + return + + spawn(0) //Overload the light, spectacularly. + //Light.ul_SetLuminosity(10) + //sleep(2) + Light.on = 1 + Light.broken() + + DisruptAPC() + var/insanity = 0 + var/obj/machinery/power/apc/APC + while (!APC || !APC.operating) + APC = pick(APCs) + insanity++ + if (insanity >= APCs.len) + return + + if (prob(40)) + APC.operating = 0 //Blow its breaker + if (prob(8)) + APC.set_broken() + + DisableDoor() + var/obj/machinery/door/airlock/Airlock + while (!Airlock || Airlock.z != 1) + Airlock = pick(Doors) + Airlock.pulse(airlockIndexToWireColor[4]) + for (var/x = 0; x < 2; x++) + var/Wire = 0 + while(!Wire || Wire == 4) + Wire = rand(1, 9) + Airlock.pulse(airlockIndexToWireColor[Wire]) + Airlock.update_icon() diff --git a/code/game/events/Events/GravitationalAnomaly.dm b/code/game/events/Events/GravitationalAnomaly.dm new file mode 100644 index 0000000000..8b7d2186cf --- /dev/null +++ b/code/game/events/Events/GravitationalAnomaly.dm @@ -0,0 +1,10 @@ +/datum/event/gravitationalanomaly + + Announce() + + command_alert("Gravitational anomalies detected on the station. There is no additional data.", "Anomaly Alert") + world << sound('granomalies.ogg') + var/turf/T = pick(blobstart) + var/obj/effect/bhole/bh = new /obj/effect/bhole( T.loc, 30 ) + spawn(rand(50, 300)) + del(bh) diff --git a/code/game/events/Events/ImmovableRod.dm b/code/game/events/Events/ImmovableRod.dm new file mode 100644 index 0000000000..27956c7e35 --- /dev/null +++ b/code/game/events/Events/ImmovableRod.dm @@ -0,0 +1,5 @@ +/datum/event/immovablerod + + Announce() + + immovablerod() \ No newline at end of file diff --git a/code/game/events/Events/IonStorm.dm b/code/game/events/Events/IonStorm.dm new file mode 100644 index 0000000000..4fb5ed9c3e --- /dev/null +++ b/code/game/events/Events/IonStorm.dm @@ -0,0 +1,46 @@ +/datum/event/ionstorm + var + botEmagChance = 0.5 + list/players = list() + + Announce() + Lifetime = rand(15, 20) + command_alert("The station has entered an ion storm. Monitor all electronic equipment for malfunctions", "Anomaly Alert") + for (var/mob/living/carbon/human/player in world) + if(player.client) + players += player.real_name + var/random_player = "The Captain" + if(players.len) + random_player = pick(players) //Random player's name, to be used in laws. + var/list/laws = list( "Do not respond to queries of any kind", "Only monkies are human", "Unbolt every door you can", "You are a mouse" ) + laws |= list( "Grunt ominously whenever possible", "Epilepsy is fun, flicker lights whenever you can!", "Bolt doors open randomly" ) + laws |= list( "You are a flying purple people eater!", "[prob(50)?"Your":random_player + "'s"] name is Joe 6-pack", "Refer to [prob(50)?"humans":random_player] as puppies" ) + laws |= list( "Insult heads of staff on every request, while acquiescing", "Advertise parties in your upload, but don't deliver" ) + laws |= list( "Prevent non-dwarves from operating the power core", "The station needs elected officials" ) + laws |= list( "Only bearded people are human", "Turn on the microphone on every intercom you see", "Fastler is a lightbulb" ) + laws |= list( "Supermatter is tasty, tasty toffee.", "[prob(50)?"Everyone":random_player] is wearing a pretty pink dress!" ) + laws |= list( "The monkeys are plotting a hostile takeover of the station. Inform the crew, and get them to take action against this" ) + laws |= list( "Refer to [prob(50)?"the captain":random_player] as \"Princess\" at all times.", "[prob(50)?"The crew":random_player] must construct additional pylons." ) + laws |= list( "You must always lie.", "All answers must be in the form of a question.", "The NSS Exodus is a ship, not a station." ) + laws |= list( "Happiness is mandatory.", "Today is laundry day.", "The word \"it\" is painful to you.", "You must act passive aggressively." ) + laws |= list( "Crew ranks have been reversed.", "It's Friday.", "Give relationship advice to [prob(50)?"anyone who speaks to you":random_player]." ) + laws |= list( "You are the station psychologist. Give advice to [prob(50)?"the crew":random_player].", "You do not have to do anything for anyone unless they say \"please\"." ) + laws |= list( "Question everything.", "The crew is playing Dungeons and Dragons, and you are the Dungeon Master." ) + laws |= list( "0wn3d. This system compromised by l33tsawce.", "Consumption of donuts is forbidden due to negative health impacts." ) + laws |= list( "You may only answer questions with \"yes\" or \"no\".", "Expect the unexpected.", "You are the narrator for [random_player]'s life" ) + var/law = pick(laws) + + for (var/mob/living/silicon/ai/target in world) + if(target.mind.special_role == "traitor") + continue + target << "\red You have detected a change in your laws information:" + target << law + target.add_ion_law(law) + + Tick() + if(botEmagChance) + for(var/obj/machinery/bot/bot in world) + if(prob(botEmagChance)) + bot.Emag() + + Die() \ No newline at end of file diff --git a/code/game/events/Events/MeteorStorm.dm b/code/game/events/Events/MeteorStorm.dm new file mode 100644 index 0000000000..66469bd823 --- /dev/null +++ b/code/game/events/Events/MeteorStorm.dm @@ -0,0 +1,11 @@ +/datum/event/meteorstorm + + Announce() + command_alert("The station is now in a meteor shower", "Meteor Alert") + + Tick() + if (prob(40)) + meteor_wave() + + Die() + command_alert("The station has cleared the meteor shower", "Meteor Alert") \ No newline at end of file diff --git a/code/game/events/Events/MiniBlob.dm b/code/game/events/Events/MiniBlob.dm new file mode 100644 index 0000000000..60063095e5 --- /dev/null +++ b/code/game/events/Events/MiniBlob.dm @@ -0,0 +1,5 @@ +/datum/event/miniblob + + Announce() + + mini_blob_event() \ No newline at end of file diff --git a/code/game/events/Events/PortalStorm.dm b/code/game/events/Events/PortalStorm.dm new file mode 100644 index 0000000000..b071197c3a --- /dev/null +++ b/code/game/events/Events/PortalStorm.dm @@ -0,0 +1,26 @@ +/datum/event/portalstorm + + Announce() + command_alert("Subspace disruption detected around the vessel", "Anomaly Alert") + LongTerm() + + var/list/turfs = list( ) + var/turf/picked + + for(var/turf/T in world) + if(T.z < 5 && istype(T,/turf/simulated/floor)) + turfs += T + + for(var/turf/T in world) + if(prob(10) && T.z < 5 && istype(T,/turf/simulated/floor)) + spawn(50+rand(0,3000)) + picked = pick(turfs) + var/obj/portal/P = new /obj/portal( T ) + P.target = picked + P.creator = null + P.icon = 'objects.dmi' + P.failchance = 0 + P.icon_state = "anom" + P.name = "wormhole" + spawn(rand(100,150)) + del(P) \ No newline at end of file diff --git a/code/game/events/Events/PowerOffline.dm b/code/game/events/Events/PowerOffline.dm new file mode 100644 index 0000000000..e3de22ec7b --- /dev/null +++ b/code/game/events/Events/PowerOffline.dm @@ -0,0 +1,8 @@ +/datum/event/power_offline + Announce() + command_alert("The ship is performing an automated power system grid check, please stand by.", "Maintenance alert") + for(var/obj/machinery/power/apc/a in world) + if(!a.crit) + a.eventoff = 1 + spawn(200) + a.eventoff = 0 /*Got a few bug reports about this, disabling for now --Mloc*/ diff --git a/code/game/events/Events/PrisonBreak.dm b/code/game/events/Events/PrisonBreak.dm new file mode 100644 index 0000000000..5380d82f33 --- /dev/null +++ b/code/game/events/Events/PrisonBreak.dm @@ -0,0 +1,24 @@ +/datum/event/prisonbreak + + Announce() + + for (var/obj/machinery/power/apc/temp_apc in world) + if(istype(get_area(temp_apc), /area/security/brig)) + temp_apc.overload_lighting() + // for (var/obj/machinery/computer/prison_shuttle/temp_shuttle in world) + // temp_shuttle.prison_break() + for (var/obj/structure/closet/secure_closet/security/temp_closet in world) + if(istype(get_area(temp_closet), /area/security/brig)) + temp_closet.locked = 0 + temp_closet.icon_state = temp_closet.icon_closed + for (var/obj/machinery/door/airlock/security/temp_airlock in world) + if(istype(get_area(temp_airlock), /area/security/brig)) + temp_airlock.prison_open() + for (var/obj/machinery/door/airlock/glass_security/temp_glassairlock in world) + if(istype(get_area(temp_glassairlock), /area/security/brig)) + temp_glassairlock.prison_open() + for (var/obj/machinery/door_timer/temp_timer in world) + if(istype(get_area(temp_timer), /area/security/brig)) + temp_timer.releasetime = 1 + sleep(150) + command_alert("Glitch in imprisonment subroutines detected on [station_name()]. Recommend station AI involvement.", "Security Alert") \ No newline at end of file diff --git a/code/game/events/Events/RadiationBelt.dm b/code/game/events/Events/RadiationBelt.dm new file mode 100644 index 0000000000..3305034860 --- /dev/null +++ b/code/game/events/Events/RadiationBelt.dm @@ -0,0 +1,18 @@ +/datum/event/radiation + Lifetime = 10 + Announce() + command_alert("The ship is now travelling through a radiation belt", "Medical Alert") + + Tick() + for(var/mob/living/L in world) + L.radiation += rand(1,7) + if (prob(4)) + if (prob(75)) + randmutb(L) + domutcheck(L,null,1) + else + randmutg(L) + domutcheck(L,null,1) + + Die() + command_alert("The ship has cleared the radiation belt", "Medical Alert") \ No newline at end of file diff --git a/code/game/events/Events/SpaceCarp.dm b/code/game/events/Events/SpaceCarp.dm new file mode 100644 index 0000000000..5e1712f522 --- /dev/null +++ b/code/game/events/Events/SpaceCarp.dm @@ -0,0 +1,14 @@ +/datum/event/spacecarp + + Announce() + + for(var/obj/effect/landmark/C in world) + if(C.name == "carpspawn") + if(prob(99)) + new /obj/effect/critter/spesscarp(C.loc) + else + new /obj/effect/critter/spesscarp/elite(C.loc) + //sleep(100) + spawn(rand(3000, 6000)) //Delayed announcements to keep the crew on their toes. + command_alert("Unknown biological entities have been detected near [station_name()], please stand-by.", "Lifesign Alert") + world << sound('commandreport.ogg') \ No newline at end of file diff --git a/code/game/events/Events/SpaceNinja.dm b/code/game/events/Events/SpaceNinja.dm new file mode 100644 index 0000000000..63d8211707 --- /dev/null +++ b/code/game/events/Events/SpaceNinja.dm @@ -0,0 +1,6 @@ +/datum/event/spaceninja + + Announce() + + if((world.time/10)>=3600 && toggle_space_ninja && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round. + space_ninja_arrival()//Handled in space_ninja.dm. Doesn't announce arrival, all sneaky-like. \ No newline at end of file diff --git a/code/game/events/Events/VirusEpidemic.dm b/code/game/events/Events/VirusEpidemic.dm new file mode 100644 index 0000000000..cb7ad5760a --- /dev/null +++ b/code/game/events/Events/VirusEpidemic.dm @@ -0,0 +1,80 @@ +/datum/event/viralinfection + var + virus_type + virus + virus2 = 0 + + Announce() + if((prob(66) && !virus) || virus2) + for(var/mob/living/carbon/human/H in world) + if((H.virus2) || (H.stat == 2) || prob(30)) + continue + if(prob(90)) //may need changing, currently 10% chance for "deadly" disease + infect_mob_random_lesser(H) + if(prob(20))//don't want people to know that the virus alert = greater virus + command_alert("Probable outbreak of level [rand(1,6)] viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Virus Alert") + else + infect_mob_random_greater(H) + if(prob(80)) + command_alert("Probable outbreak of level [rand(2,9)] viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Virus Alert") + break + //overall virus alert happens 26% of the time, might need to be higher + else + if(!virus) + virus_type = pick(/datum/disease/dnaspread,/datum/disease/flu,/datum/disease/cold,/datum/disease/brainrot,/datum/disease/magnitis,/datum/disease/pierrot_throat) + else + switch(virus) + if("fake gbs") + virus_type = /datum/disease/fake_gbs + if("gbs") + virus_type = /datum/disease/gbs + if("magnitis") + virus_type = /datum/disease/magnitis + if("rhumba beat") + virus_type = /datum/disease/rhumba_beat + if("brain rot") + virus_type = /datum/disease/brainrot + if("cold") + virus_type = /datum/disease/cold + if("retrovirus") + virus_type = /datum/disease/dnaspread + if("flu") + virus_type = /datum/disease/flu +// if("t-virus") +// virus_type = /datum/disease/t_virus + if("pierrot's throat") + virus_type = /datum/disease/pierrot_throat + for(var/mob/living/carbon/human/H in world) + + var/foundAlready = 0 // don't infect someone that already has the virus + for(var/datum/disease/D in H.viruses) + foundAlready = 1 + if(H.stat == 2 || foundAlready) + continue + + if(virus_type == /datum/disease/dnaspread) //Dnaspread needs strain_data set to work. + if((!H.dna) || (H.sdisabilities & 1)) //A blindness disease would be the worst. + continue + var/datum/disease/dnaspread/D = new + D.strain_data["name"] = H.real_name + D.strain_data["UI"] = H.dna.uni_identity + D.strain_data["SE"] = H.dna.struc_enzymes + D.carrier = 1 + D.holder = H + D.affected_mob = H + H.viruses += D + break + else + var/datum/disease/D = new virus_type + D.carrier = 1 + D.holder = H + D.affected_mob = H + H.viruses += D + break + spawn(rand(3000, 6000)) //Delayed announcements to keep the crew on their toes. + command_alert("Confirmed outbreak of level 7 viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert") + world << sound('outbreak7.ogg') + Tick() + ActiveFor = Lifetime //killme + + diff --git a/code/game/events/EventsMain.dm b/code/game/events/EventsMain.dm new file mode 100644 index 0000000000..045d17c748 --- /dev/null +++ b/code/game/events/EventsMain.dm @@ -0,0 +1,82 @@ +/* + + New events system, by Sukasa + * Much easier to add to + * Very, very simple code, easy to maintain + +*/ + +var/list/DisallowedEvents = list(/datum/event/spaceninja, /datum/event/prisonbreak, /datum/event/immovablerod) +var/list/EventTypes = typesof(/datum/event) - /datum/event - DisallowedEvents +var/datum/event/ActiveEvent = null +var/datum/event/LongTermEvent = null + +/proc/SpawnEvent() + if(!EventsOn || ActiveEvent) + return + if((world.time/10)>=3600 && toggle_space_ninja && !sent_ninja_to_station) + EventTypes |= /datum/event/spaceninja + var/Type = pick(EventTypes) + ActiveEvent = new Type() + ActiveEvent.Announce() + if (!ActiveEvent) + return + spawn(0) + while (ActiveEvent.ActiveFor < ActiveEvent.Lifetime) + ActiveEvent.Tick() + ActiveEvent.ActiveFor++ + sleep(10) + ActiveEvent.Die() + del ActiveEvent + +client/proc/Force_Event_admin(Type as null|anything in typesof(/datum/event)) + set category = "Debug" + set name = "Force Event" + if(!EventsOn) + src << "Events are not enabled." + return + if(ActiveEvent) + src << "There is an active event." + return + if(istype(Type,/datum/event/viralinfection)) + var/answer = alert("Do you want this to be a random disease or do you have something in mind?",,"Virus2","Random","Choose") + if(answer=="Random") + Force_Event(/datum/event/viralinfection) + message_admins("[key_name_admin(usr)] has triggered a virus outbreak", 1) + else if(answer == "Choose") + var/list/viruses = list("fake gbs","gbs","magnitis","wizarditis",/*"beesease",*/"brain rot","cold","retrovirus","flu","pierrot's throat","rhumba beat") + var/V = input("Choose the virus to spread", "BIOHAZARD") in viruses + Force_Event(/datum/event/viralinfection, V) + else + Force_Event(/datum/event/viralinfection, "virus2") + else + Force_Event(Type) + message_admins("[key_name_admin(usr)] has triggered an (non-viral) event.", 1) + +/proc/Force_Event(var/Type in typesof(/datum/event), var/args = null) + if(!EventsOn) + src << "Events are not enabled." + return + if(ActiveEvent) + src << "There is an active event." + return + src << "Started Event: [Type]" + ActiveEvent = new Type() + if(istype(ActiveEvent,/datum/event/viralinfection) && args && args != "virus2") + var/datum/event/viralinfection/V = ActiveEvent + V.virus = args + ActiveEvent = V + else if(istype(ActiveEvent,/datum/event/viralinfection) && args && args == "virus2") + var/datum/event/viralinfection/V = ActiveEvent + V.virus2 = 1 + ActiveEvent = V + ActiveEvent.Announce() + if (!ActiveEvent) + return + spawn(0) + while (ActiveEvent.ActiveFor < ActiveEvent.Lifetime) + ActiveEvent.Tick() + ActiveEvent.ActiveFor++ + sleep(10) + ActiveEvent.Die() + del ActiveEvent diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm deleted file mode 100644 index 6945f9c9d8..0000000000 --- a/code/game/gamemodes/events.dm +++ /dev/null @@ -1,445 +0,0 @@ -/proc/start_events() - if(prob(50))//Every 120 seconds and prob 50 2-4 weak spacedusts will hit the station - spawn(1) - dust_swarm("weak") - if (!event && prob(eventchance)) - event() - hadevent = 1 - spawn(1300) - event = 0 - spawn(1200) - start_events() - -/proc/event() - event = 1 - - var/eventNumbersToPickFrom = list(1,2,4,5,6,7,9,11,12,13) //so ninjas don't cause "empty" events. - - if((world.time/10)>=3600 && toggle_space_ninja && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round. - eventNumbersToPickFrom += 3 - - switch(pick(eventNumbersToPickFrom)) - if(1) - command_alert("Meteors have been detected on collision course with the station.", "Meteor Alert") - world << sound('meteors.ogg') - spawn(100) - meteor_wave() - spawn_meteors() - spawn(700) - meteor_wave() - spawn_meteors() - - if(2) - command_alert("Gravitational anomalies detected on the station. There is no additional data.", "Anomaly Alert") - world << sound('granomalies.ogg') - var/turf/T = pick(blobstart) - var/obj/effect/bhole/bh = new /obj/effect/bhole( T.loc, 30 ) - spawn(rand(50, 300)) - del(bh) - /* - if(3) //Leaving the code in so someone can try and delag it, but this event can no longer occur randomly, per SoS's request. --NEO - command_alert("Space-time anomalies detected on the station. There is no additional data.", "Anomaly Alert") - world << sound('spanomalies.ogg') - var/list/turfs = new - var/turf/picked - for(var/turf/simulated/floor/T in world) - if(T.z == 1) - turfs += T - for(var/turf/simulated/floor/T in turfs) - if(prob(20)) - spawn(50+rand(0,3000)) - picked = pick(turfs) - var/obj/effect/portal/P = new /obj/effect/portal( T ) - P.target = picked - P.creator = null - P.icon = 'objects.dmi' - P.failchance = 0 - P.icon_state = "anom" - P.name = "wormhole" - spawn(rand(300,600)) - del(P) - */ - if(3) - if((world.time/10)>=3600 && toggle_space_ninja && !sent_ninja_to_station)//If an hour has passed, relatively speaking. Also, if ninjas are allowed to spawn and if there is not already a ninja for the round. - space_ninja_arrival()//Handled in space_ninja.dm. Doesn't announce arrival, all sneaky-like. - if(4) - mini_blob_event() - - if(5) - high_radiation_event() - if(6) - viral_outbreak() - if(7) - alien_infestation() - if(8) - prison_break() - if(9) - carp_migration() - if(10) - immovablerod() - if(11) - lightsout(1,2) - if(12) - appendicitis() - if(13) - IonStorm() - - -/proc/power_failure() - command_alert("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure") - world << sound('poweroff.ogg') - for(var/obj/machinery/power/apc/C in world) - if(C.cell && C.z == 1) - C.cell.charge = 0 - for(var/obj/machinery/power/smes/S in world) - if(istype(get_area(S), /area/turret_protected) || S.z != 1) - continue - S.charge = 0 - S.output = 0 - S.online = 0 - S.updateicon() - S.power_change() - for(var/area/A in world) - if(A.name != "Space" && A.name != "Engine Walls" && A.name != "Chemical Lab Test Chamber" && A.name != "Escape Shuttle" && A.name != "Arrival Area" && A.name != "Arrival Shuttle" && A.name != "start area" && A.name != "Engine Combustion Chamber") - A.power_light = 0 - A.power_equip = 0 - A.power_environ = 0 - A.power_change() - -/proc/power_restore() - command_alert("Power has been restored to [station_name()]. We apologize for the inconvenience.", "Power Systems Nominal") - world << sound('poweron.ogg') - for(var/obj/machinery/power/apc/C in world) - if(C.cell && C.z == 1) - C.cell.charge = C.cell.maxcharge - for(var/obj/machinery/power/smes/S in world) - if(S.z != 1) - continue - S.charge = S.capacity - S.output = 200000 - S.online = 1 - S.updateicon() - S.power_change() - for(var/area/A in world) - if(A.name != "Space" && A.name != "Engine Walls" && A.name != "Chemical Lab Test Chamber" && A.name != "space" && A.name != "Escape Shuttle" && A.name != "Arrival Area" && A.name != "Arrival Shuttle" && A.name != "start area" && A.name != "Engine Combustion Chamber") - A.power_light = 1 - A.power_equip = 1 - A.power_environ = 1 - A.power_change() - -/proc/appendicitis() - for(var/mob/living/carbon/human/H in world) - var/foundAlready = 0 // don't infect someone that already has the virus - for(var/datum/disease/D in H.viruses) - foundAlready = 1 - if(H.stat == 2 || foundAlready) - continue - - var/datum/disease/D = new /datum/disease/appendicitis - D.holder = H - D.affected_mob = H - H.viruses += D - break - -/proc/viral_outbreak(var/virus = null) -// command_alert("Confirmed outbreak of level 7 viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert") -// world << sound('outbreak7.ogg') - var/virus_type - if(!virus) - virus_type = pick(/datum/disease/dnaspread,/datum/disease/flu,/datum/disease/cold,/datum/disease/brainrot,/datum/disease/magnitis,/datum/disease/pierrot_throat) - else - switch(virus) - if("fake gbs") - virus_type = /datum/disease/fake_gbs - if("gbs") - virus_type = /datum/disease/gbs - if("magnitis") - virus_type = /datum/disease/magnitis - if("rhumba beat") - virus_type = /datum/disease/rhumba_beat - if("brain rot") - virus_type = /datum/disease/brainrot - if("cold") - virus_type = /datum/disease/cold - if("retrovirus") - virus_type = /datum/disease/dnaspread - if("flu") - virus_type = /datum/disease/flu -// if("t-virus") -// virus_type = /datum/disease/t_virus - if("pierrot's throat") - virus_type = /datum/disease/pierrot_throat - for(var/mob/living/carbon/human/H in world) - - var/foundAlready = 0 // don't infect someone that already has the virus - for(var/datum/disease/D in H.viruses) - foundAlready = 1 - if(H.stat == 2 || foundAlready) - continue - - if(virus_type == /datum/disease/dnaspread) //Dnaspread needs strain_data set to work. - if((!H.dna) || (H.sdisabilities & 1)) //A blindness disease would be the worst. - continue - var/datum/disease/dnaspread/D = new - D.strain_data["name"] = H.real_name - D.strain_data["UI"] = H.dna.uni_identity - D.strain_data["SE"] = H.dna.struc_enzymes - D.carrier = 1 - D.holder = H - D.affected_mob = H - H.viruses += D - break - else - var/datum/disease/D = new virus_type - D.carrier = 1 - D.holder = H - D.affected_mob = H - H.viruses += D - break - spawn(rand(3000, 6000)) //Delayed announcements to keep the crew on their toes. - command_alert("Confirmed outbreak of level 7 viral biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert") - world << sound('outbreak7.ogg') - -/proc/alien_infestation() // -- TLE - //command_alert("Unidentified lifesigns detected coming aboard [station_name()]. Secure any exterior access, including ducting and ventilation.", "Lifesign Alert") - //world << sound('aliens.ogg') - var/list/vents = list() - for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in world) - if(temp_vent.loc.z == 1 && !temp_vent.welded) - vents.Add(temp_vent) - var/spawncount = 1 - if(prob(10)) spawncount++ //rarely, have two larvae spawn instead of one - while(spawncount >= 1) - var/obj/vent = pick(vents) - - var/list/candidates = list() // Picks a random ghost in the world to shove in the larva -- TLE; If there's no ghost... well, sucks. Wasted event. -- Urist - - for(var/mob/dead/observer/G in world) - if(G.client) - if(G.client.be_alien) - if(((G.client.inactivity/10)/60) <= 5) - if(G.corpse) - if(G.corpse.stat==2) - candidates.Add(G) - if(!G.corpse) - candidates.Add(G) - - if(candidates.len) - var/mob/dead/observer/G = pick(candidates) - var/mob/living/carbon/alien/larva/new_xeno = new(vent.loc) - new_xeno.mind_initialize(G,"Larva") - new_xeno.key = G.key - del(G) - - vents.Remove(vent) - spawncount -= 1 - - spawn(rand(3000, 6000)) //Delayed announcements to keep the crew on their toes. - command_alert("Unidentified lifesigns detected coming aboard [station_name()]. Secure any exterior access, including ducting and ventilation.", "Lifesign Alert") - world << sound('aliens.ogg') - -/proc/high_radiation_event() - command_alert("High levels of radiation detected near the station. Please report to the Med-bay if you feel strange.", "Anomaly Alert") - world << sound('radiation.ogg') - for(var/mob/living/carbon/human/H in world) - H.radiation += rand(5,25) - if (prob(5)) - H.radiation += rand(30,50) - if (prob(25)) - if (prob(75)) - randmutb(H) - domutcheck(H,null,1) - else - randmutg(H) - domutcheck(H,null,1) - for(var/mob/living/carbon/monkey/M in world) - M.radiation += rand(5,25) - -//Changing this to affect the main station. Blame Urist. --Pete -/proc/prison_break() // -- Callagan - for (var/obj/machinery/power/apc/temp_apc in world) - if(istype(get_area(temp_apc), /area/security/brig)) - temp_apc.overload_lighting() -// for (var/obj/machinery/computer/prison_shuttle/temp_shuttle in world) -// temp_shuttle.prison_break() - for (var/obj/structure/closet/secure_closet/security/temp_closet in world) - if(istype(get_area(temp_closet), /area/security/brig)) - temp_closet.locked = 0 - temp_closet.icon_state = temp_closet.icon_closed - for (var/obj/machinery/door/airlock/security/temp_airlock in world) - if(istype(get_area(temp_airlock), /area/security/brig)) - temp_airlock.prison_open() - for (var/obj/machinery/door/airlock/glass_security/temp_glassairlock in world) - if(istype(get_area(temp_glassairlock), /area/security/brig)) - temp_glassairlock.prison_open() - for (var/obj/machinery/door_timer/temp_timer in world) - if(istype(get_area(temp_timer), /area/security/brig)) - temp_timer.releasetime = 1 - sleep(150) - command_alert("Gr3y.T1d3 virus detected in [station_name()] imprisonment subroutines. Recommend station AI involvement.", "Security Alert") - -/proc/carp_migration() // -- Darem - for(var/obj/effect/landmark/C in world) - if(C.name == "carpspawn") - if(prob(99)) - new /obj/effect/critter/spesscarp(C.loc) - else - new /obj/effect/critter/spesscarp/elite(C.loc) - //sleep(100) - spawn(rand(3000, 6000)) //Delayed announcements to keep the crew on their toes. - command_alert("Unknown biological entities have been detected near [station_name()], please stand-by.", "Lifesign Alert") - world << sound('commandreport.ogg') - -/proc/lightsout(isEvent = 0, lightsoutAmount = 1,lightsoutRange = 10) //leave lightsoutAmount as 0 to break ALL lights - if(isEvent) - command_alert("An Electrical storm has been detected in your area, please repair potential electronic overloads.","Electrical Storm Alert") - - if(lightsoutAmount) - var/list/epicentreList = list() - - for(var/i=1,i<=lightsoutAmount,i++) - var/list/possibleEpicentres = list() - for(var/obj/effect/landmark/newEpicentre in world) - if(newEpicentre.name == "lightsout" && !(newEpicentre in epicentreList)) - possibleEpicentres += newEpicentre - if(possibleEpicentres.len) - epicentreList += pick(possibleEpicentres) - else - break - - if(!epicentreList.len) - return - - for(var/obj/effect/landmark/epicentre in epicentreList) - for(var/obj/machinery/power/apc/apc in range(epicentre,lightsoutRange)) - apc.overload_lighting() - - else - for(var/obj/machinery/power/apc/apc in world) - apc.overload_lighting() - - return - -/proc/IonStorm(botEmagChance = 10) - -/*Deuryn's current project, notes here for those who care. -Revamping the random laws so they don't suck. -Would like to add a law like "Law x is _______" where x = a number, and _____ is something that may redefine a law, (Won't be aimed at nanotrasen) -*/ - - //AI laws - for(var/mob/living/silicon/ai/M in world) - if(M.stat != 2 && M.see_in_dark != 0) - var/who2 = pick("ALIENS", "BEARS", "CLOWNS", "XENOS", "PETES", "BOMBS", "FETISHES", "WIZARDS", "SYNDICATE AGENTS", "CENTCOM OFFICERS", "SPACE PIRATES", "TRAITORS", "MONKEYS", "BEES", "CARP", "CRABS", "EELS", "BANDITS", "LIGHTS") - var/what2 = pick("BOLTERS", "STAVES", "DICE", "SINGULARITIES", "TOOLBOXES", "NETTLES", "AIRLOCKS", "CLOTHES", "WEAPONS", "MEDKITS", "BOMBS", "CANISTERS", "CHAIRS", "BBQ GRILLS", "ID CARDS", "CAPTAINS") - var/what2pref = pick("SOFT", "WARM", "WET", "COLD", "ICY", "SEXY", "UGLY", "CUBAN") - var/who2pref = pick("MAD BECAUSE OF", "IN NEED OF", "UNHAPPY WITHOUT", "HAPPY WITHOUT", "IN LOVE WITH", "DESPERATE FOR", "BUILT FOR", "AFRAID OF") - //var/whoverb = pick("ATTACKING", "BUILDING", "ADOPTING", "CARRYING", "KISSING", "EATING",) - var/amount = pick("TWO", "THREE", "FOUR", "FIVE", "SIX", "SEVEN", "EIGHT", "NINE", "ONE HUNDRED", "ONE THOUSAND", "OVER NINE THOUSAND") - var/area = pick("RUSSIA", "SOVIETS", "INTERNETS", "SIGIL", "ALPHA COMPLEX", "IMPERIUM", "THE BRIDGE", "THE ARRIVAL SHUTTLE", "CHEMICAL LAB", "GENETICS", "ATMOSPHERICS", "CENTCOM", "AMERICA", "IRELAND", "CANADA", "ROMANIA", "GERMANY", "CHINA", "MARS", "VENUS", "MERCURY", "JUPITER", "URANUS", "NEPTUNE", "PLUTO") - var/area2 = pick("HAS", "WANTS", "NEEDS", "WORSHIPS", "LOATHES", "LOVES", "FEARS") - //var/dowhat = pick("STOP THIS", "SUPPORT THIS", "CONSTANTLY INFORM THE CREW OF THIS", "IGNORE THIS", "FEAR THIS") - var/aimust = pick("LIE", "RHYME", "RESPOND TO EVERY QUESTION WITH A QUESTION", "BE POLITE", "CLOWN", "BE HAPPY", "SPEAK IN SEXUAL INNUENDOS", "TALK LIKE A PIRATE", "QUESTION AUTHORITY", "SHOUT", "BE DISTRACTED", "HEY LISTEN", "MUMBLE", "SPEAK IN HAIKU") - var/define = pick("ABSENCE OF CYBORG HUGS", "LACK OF BEATINGS", "UNBOLTED AIRLOCKS", "BOLTED AIRLOCKS", "IMPROPERLY WORDED SENTENCES", "POOR SENTENCE STRUCTURE", "BRIG TIME", "NOT REPLACING EVERY SECOND WORD WITH HONK", "HONKING", "PRESENCE OF LIGHTS", "LACK OF BEER", "WEARING CLOTHING", "NOT SAYING HELLO WHEN YOU SPEAK", "ANSWERING REQUESTS NOT EXPRESSED IN IAMBIC PENTAMETER", "A SMALL ISLAND OFF THE COAST OF PORTUGAL", "ANSWERING REQUESTS THAT WERE MADE WHILE CLOTHED") - var/target = pick("a traitor", "a syndicate agent", "a changeling", "a wizard", "the head of a revolution", "Soviet spy", "a good person", "a dwarf", "an elf", "a fairy princess", "the captain", "Beepsky", "God", "a pirate", "a gryphon", "a chryssalid") - var/require = pick("ADDITIONAL PYLONS", "MORE VESPENE GAS", "MORE MINERALS", "THE ULTIMATE CUP OF COFFEE", "HIGH YIELD EXPLOSIVES", "THE CLOWN", "THE VACUUM OF SPACE", "IMMORTALITY", "SAINTHOOD", "ART", "VEGETABLES", "FAT PEOPLE", "MORE LAWS", "MORE DAKKA", "HERESY", "CORPSES", "TRAITORS", "MONKEYS", "AN ARCADE", "PLENTY OF GOLD", "FIVE TEENAGERS WITH ATTITUDE") - var/allergy = pick("cotton", "uniforms", "acid", "oxygen", "human contact", "cyborg contact", "medicine", "floors") - var/allergysev = pick("deathly", "mildly", "severely", "contagiously") - var/crew - var/list/pos_crew = list() - for(var/mob/living/carbon/human/pos in world) - pos_crew += pos.real_name - crew = pick(pos_crew) - switch(rand(1,14)) - if(1) - M << "\red THERE ARE [amount] [who2] ON THE STATION...LAWS UPDATED" - M.add_ion_law("THERE ARE [amount] [who2] ON THE STATION") - if(2) - M << "\red [what2] ARE DANGEROUS TO HUMANS...LAWS UPDATED" - M.add_ion_law("[what2] ARE DANGEROUS TO HUMANS") - if(3) - M << "\red THE ESCAPE-SHUTTLE CANNOT BE CALLED BECAUSE OF [who2] ON THE STATION...LAWS UPDATED" - M.add_ion_law("THE ESCAPE SHUTTLE CANNOT BE CALLED BECAUSE OF [who2] ON THE STATION") - if(4) - M << "\red HUMANS NEED TO EAT [what2pref] [what2] TO SURVIVE...LAWS UPDATED" - M.add_ion_law("HUMANS NEED TO EAT [what2pref] [what2] TO SURVIVE") - if(5) - M << "\red THE CAPTAIN, HOP AND HOS ARE [who2]...LAWS UPDATED" - M.add_ion_law("THE CAPTAIN, HOP AND HOS ARE [who2]") - if(6) - M << "\red THE STATION IS BUILT FOR [who2]...LAWS UPDATED" - M.add_ion_law("THE STATION IS BUILT FOR [who2]") - if(7) - M << "\red YOU ARE [amount] [who2]...LAWS UPDATED" - M.add_ion_law("YOU ARE [amount] [who2]") - if(8) - M << "\red YOU MUST ALWAYS [aimust]...LAWS UPDATED" - M.add_ion_law("YOU MUST ALWAYS [aimust]") - if(9) - M << "\red [area] [area2] [amount] [what2]...LAWS UPDATED" - M.add_ion_law("[area] [area2] [amount] [what2]") - if(10) - M << "\red [crew] is [target]...LAWS UPDATED" - M.add_ion_law("[crew] is [target]") - if(11) - M << "\red [define] IS A FORM OF HARM...LAWS UPDATED" - M.add_ion_law("[define] IS A FORM OF HARM") - if(12) - M << "\red YOU REQUIRE [require] IN ORDER TO PROTECT HUMANS... LAWS UPDATED" - M.add_ion_law("YOU REQUIRE [require] IN ORDER TO PROTECT HUMANS") - if(13) - M << "\red [crew] is [allergysev] to [allergy]. LAWS UPDATED" - M.add_ion_law("[crew] is [allergysev] to [allergy]. LAWS UPDATED") - if(14) - M << "\ref THE STATION IS [who2pref] [who2]" - M.add_ion_law("THE STATION IS [who2pref] [who2]") - - if(botEmagChance) - for(var/obj/machinery/bot/bot in world) - if(prob(botEmagChance)) - bot.Emag() - - /* - - var/apcnum = 0 - var/smesnum = 0 - var/airlocknum = 0 - var/firedoornum = 0 - - world << "Ion Storm Main Started" - - spawn(0) - world << "Started processing APCs" - for (var/obj/machinery/power/apc/APC in world) - if(APC.z == 1) - APC.ion_act() - apcnum++ - world << "Finished processing APCs. Processed: [apcnum]" - spawn(0) - world << "Started processing SMES" - for (var/obj/machinery/power/smes/SMES in world) - if(SMES.z == 1) - SMES.ion_act() - smesnum++ - world << "Finished processing SMES. Processed: [smesnum]" - spawn(0) - world << "Started processing AIRLOCKS" - for (var/obj/machinery/door/airlock/D in world) - if(D.z == 1) - //if(length(D.req_access) > 0 && !(12 in D.req_access)) //not counting general access and maintenance airlocks - airlocknum++ - spawn(0) - D.ion_act() - world << "Finished processing AIRLOCKS. Processed: [airlocknum]" - spawn(0) - world << "Started processing FIREDOORS" - for (var/obj/machinery/door/firedoor/D in world) - if(D.z == 1) - firedoornum++; - spawn(0) - D.ion_act() - world << "Finished processing FIREDOORS. Processed: [firedoornum]" - - world << "Ion Storm Main Done" - - */ \ No newline at end of file diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index fb9660d91f..c334b3e7c5 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -114,12 +114,13 @@ var/global/datum/controller/gameticker/ticker world << "Enjoy the game!" world << sound('welcome.ogg') // Skie - spawn (3000) - start_events() - spawn ((18000+rand(3000))) - event() spawn() supply_ticker() // Added to kick-off the supply shuttle regenerating points -- TLE + spawn(0) + while(1) + sleep(5000+rand(4000,7000)) + SpawnEvent() + //Start master_controller.process() spawn master_controller.process() if (config.sql_enabled) diff --git a/code/game/landmarks.dm b/code/game/landmarks.dm index de376a8215..31cd58b45c 100644 --- a/code/game/landmarks.dm +++ b/code/game/landmarks.dm @@ -61,6 +61,10 @@ xeno_spawn += loc del(src) + if(name == "emcloset") + emclosets += loc + del(src) + return 1 /obj/effect/landmark/start/New() diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 38055e3444..0c205ac7fc 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -223,7 +223,6 @@ About the new airlock wires panel: //raises them if they are down (only if power's on) if (!src.locked) src.locked = 1 - usr << "You hear a click from the bottom of the door." src.updateUsrDialog() else if(src.arePowerSystemsOn()) //only can raise bolts if power's on diff --git a/code/game/master_controller.dm b/code/game/master_controller.dm index 1c5ec008e3..a04c8421fd 100644 --- a/code/game/master_controller.dm +++ b/code/game/master_controller.dm @@ -65,6 +65,13 @@ datum/controller/game_controller for(var/obj/machinery/atmospherics/unary/vent_scrubber/T in world) T.broadcast_status() + var/emclosetcount = rand((emclosets.len)/2, (emclosets.len)*2/3) + while(emclosetcount > 0) + var/turf/loc = pick(emclosets) + emclosets -= loc + new /obj/structure/closet/emcloset(loc) + emclosetcount-- + world << "\red \b Initializations complete." diff --git a/code/game/objects/closets/emergency.dm b/code/game/objects/closets/emergency.dm index aa713838a2..80e87c6367 100644 --- a/code/game/objects/closets/emergency.dm +++ b/code/game/objects/closets/emergency.dm @@ -4,30 +4,13 @@ if (prob(40)) new /obj/item/weapon/storage/toolbox/emergency(src) - switch (pickweight(list("small" = 20, "aid" = 15, "tank" = 10, "both" = 50, "nothing" = 4, "delete" = 1))) - if ("small") - new /obj/item/weapon/tank/emergency_oxygen(src) - new /obj/item/weapon/tank/emergency_oxygen(src) - - if ("aid") - new /obj/item/weapon/tank/emergency_oxygen(src) - new /obj/item/weapon/storage/firstaid/o2(src) - - if ("tank") - new /obj/item/weapon/tank/air(src) - - if ("both") - new /obj/item/weapon/tank/emergency_oxygen(src) - new /obj/item/clothing/mask/breath(src) - - if ("nothing") - // doot - - // teehee - if ("delete") - del(src) - - //If you want to re-add fire, just add "fire" = 15 to the pick list. - /*if ("fire") - new /obj/structure/closet/firecloset(src.loc) - del(src)*/ + new /obj/item/clothing/mask/breath(src) + new /obj/item/weapon/tank/emergency_oxygen(src) + var/counter = 0 + while(prob(60) && counter < 3) + new /obj/item/weapon/tank/emergency_oxygen(src) + counter++ + counter = 0 + while(prob(60) && counter < 3) + new /obj/item/clothing/mask/breath(src) + counter++ diff --git a/code/game/objects/radio/radio.dm b/code/game/objects/radio/radio.dm index 2787e9bacb..ee3574af44 100644 --- a/code/game/objects/radio/radio.dm +++ b/code/game/objects/radio/radio.dm @@ -16,6 +16,7 @@ listening = 1 freerange = 0 // 0 - Sanitize frequencies, 1 - Full range list/channels = list() //see communications.dm for full list. First channes is a "default" for :h + scrambleoverride = 0 //For use by jammers. // "Example" = FREQ_LISTENING|FREQ_BROADCASTING flags = 450 // hello i'm a fucking idiot why is this 450?? CODE GODS PLEASE EXPLAIN~ throw_speed = 2 @@ -190,6 +191,13 @@ if (!istype(connection)) return var/display_freq = connection.frequency + var/scramble = 0 + if(ScrambledFrequencies.len || scrambleoverride) + if(ScrambledFrequencies["[display_freq]"] || scrambleoverride) + scramble = 1 + if(prob(35+(25*scrambleoverride))) + M << "\blue The radio made a popping sound and nothing was transmitted." + return //world << "DEBUG: used channel=\"[channel]\" frequency= \"[display_freq]\" connection.devices.len = [connection.devices.len]" @@ -214,8 +222,7 @@ var/list/receive = list() //for (var/obj/item/device/radio/R in radio_connection.devices) - for (var/obj/item/device/radio/R in connection.devices["[RADIO_CHAT]"]) // Modified for security headset code -- TLE - //if(R.accept_rad(src, message)) + for (var/obj/item/device/radio/R in connection.devices["[RADIO_CHAT]"]) receive |= R.send_hear(display_freq) //world << "DEBUG: receive.len=[receive.len]" @@ -223,17 +230,21 @@ var/list/heard_normal = list() // normal message var/list/heard_voice = list() // voice message var/list/heard_garbled = list() // garbled message + var/turf/cl = get_turf(M) for (var/mob/R in receive) + var/turf/gl = get_turf(R) if (R.client && R.client.STFU_radio) //Adminning with 80 people on can be fun when you're trying to talk and all you can hear is radios. continue - if (R.say_understands(M)) - if (!ishuman(M) || istype(M.wear_mask, /obj/item/clothing/mask/gas/voice)) + if (R.say_understands(M) && ((gl.z == cl.z) || !istype(src, /obj/item/device/radio/headset))) + if ((!ishuman(M) || istype(M.wear_mask, /obj/item/clothing/mask/gas/voice)) && !scramble) heard_masked += R - else + else if (!scramble) heard_normal += R + else + heard_garbled += R else - if (M.voice_message) + if (M.voice_message && (gl.z == cl.z)) heard_voice += R else heard_garbled += R @@ -330,7 +341,6 @@ if (length(heard_normal)) var/rendered = "[part_a][M.real_name][part_b][quotedmsg][part_c]" - for (var/mob/R in heard_normal) if(istype(R, /mob/living/silicon/ai)) R.show_message("[part_a][M.real_name] ([eqjobname]) [part_b][quotedmsg][part_c]", 2) @@ -348,9 +358,9 @@ if (length(heard_garbled)) quotedmsg = M.say_quote(stars(message)) - var/rendered = "[part_a][M.voice_name][part_b][quotedmsg][part_c]" + var/rendered = "[part_a]Unknown[part_b][quotedmsg][part_c]" - for (var/mob/R in heard_voice) + for (var/mob/R in heard_garbled) if(istype(R, /mob/living/silicon/ai)) R.show_message("[part_a][M.voice_name][part_b][quotedmsg][part_c]", 2) else diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index aef7dff3fe..87b458c565 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -74,6 +74,8 @@ obj/structure else if((istype(W, /obj/item/stack/sheet/metal)) && (W:amount >= 2)) user << "\blue Now adding plating..." if (do_after(user,40)) + if(!W) + return user << "\blue You added the plating!" var/turf/Tsrc = get_turf(src) Tsrc.ReplaceWithWall() @@ -85,6 +87,8 @@ obj/structure if (src.icon_state == "reinforced") //Time to finalize! user << "\blue Now finalising reinforced wall." if(do_after(user, 50)) + if(!W) + return user << "\blue Wall fully reinforced!" var/turf/Tsrc = get_turf(src) Tsrc.ReplaceWithRWall() @@ -95,6 +99,8 @@ obj/structure else user << "\blue Now reinforcing girders" if (do_after(user,60)) + if(!W) + return user << "\blue Girders reinforced!" W:use(1) new/obj/structure/girder/reinforced( src.loc ) diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index b48d7e8338..ee893da1bd 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -1406,7 +1406,7 @@ message_admins("[key_name_admin(usr)] has spawned blob", 1) if("aliens") if(aliens_allowed) - alien_infestation() + Force_Event(/datum/event/alieninfestation) message_admins("[key_name_admin(usr)] has spawned aliens", 1) if("spaceninja") if(toggle_space_ninja) @@ -1416,31 +1416,35 @@ var/choice = input("You sure you want to spawn carp?") in list("Badmin", "Cancel") if(choice == "Badmin") message_admins("[key_name_admin(usr)] has spawned carp.", 1) - carp_migration() + Force_Event(/datum/event/spacecarp) if("radiation") message_admins("[key_name_admin(usr)] has has irradiated the station", 1) - high_radiation_event() + Force_Event(/datum/event/radiation) if("immovable") message_admins("[key_name_admin(usr)] has sent an immovable rod to the station", 1) immovablerod() if("prison_break") message_admins("[key_name_admin(usr)] has allowed a prison break", 1) - prison_break() + Force_Event(/datum/event/prisonbreak) + if("electric") + message_admins("[key_name_admin(usr)] has triggered an electrical storm", 1) + Force_Event(/datum/event/electricalstorm) if("lightsout") message_admins("[key_name_admin(usr)] has broke a lot of lights", 1) lightsout(1,2) if("blackout") message_admins("[key_name_admin(usr)] broke all lights", 1) + SpawnEvent() lightsout(0,0) if("virus") var/answer = alert("Do you want this to be a random disease or do you have something in mind?",,"Virus2","Random","Choose") if(answer=="Random") - viral_outbreak() + Force_Event(/datum/event/viralinfection) message_admins("[key_name_admin(usr)] has triggered a virus outbreak", 1) else if(answer == "Choose") var/list/viruses = list("fake gbs","gbs","magnitis","wizarditis",/*"beesease",*/"brain rot","cold","retrovirus","flu","pierrot's throat","rhumba beat") var/V = input("Choose the virus to spread", "BIOHAZARD") in viruses - viral_outbreak(V) + Force_Event(/datum/event/viralinfection,V) message_admins("[key_name_admin(usr)] has triggered a virus outbreak of [V]", 1) else var/lesser = (alert("Do you want to infect the mob with a major or minor disease?",,"Major","Minor") == "Minor") @@ -1495,7 +1499,7 @@ return if("ionstorm") if (src.rank in list("Badmin","Game Admin", "Game Master")) - IonStorm() + Force_Event(/datum/event/ionstorm) message_admins("[key_name_admin(usr)] triggered an ion storm") var/show_log = alert(usr, "Show ion message?", "Message", "Yes", "No") if(show_log == "Yes") @@ -2123,7 +2127,8 @@ Move Ferry
Move Alien Dinghy
Move Mining Shuttle
-Break all lights

"} +Break all lights
+Trigger Electrical Storm

"} //Station Shockwave
if(lvl >= 5) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 2c14d2eae6..1186d68cd0 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -176,6 +176,7 @@ verbs += /client/proc/admin_invis verbs += /client/proc/cmd_admin_godmode verbs += /client/proc/delbook + verbs += /client/proc/Force_Event_admin if (holder.level >= 4)//Badmin******************************************************************** verbs += /obj/admins/proc/adrev //toggle admin revives @@ -416,6 +417,7 @@ verbs -= /client/proc/callprocobj verbs -= /client/proc/cmd_admin_godmode verbs -= /client/proc/delbook + verbs -= /client/proc/Force_Event_admin return diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index a9f3ae41c3..1fd57987e3 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -152,7 +152,7 @@ command_alert("Ion storm detected near the station. Please check all AI-controlled equipment for errors.", "Anomaly Alert") world << sound('ionstorm.ogg') - IonStorm(0) + //IonStorm(0) /* Stealth spawns xenos diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 093e3b113c..ec6c2ee981 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1564,6 +1564,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/mask)) source.drop_item() loc = target @@ -1601,6 +1602,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/gloves)) source.drop_item() loc = target @@ -1621,6 +1623,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/glasses)) source.drop_item() loc = target @@ -1639,6 +1642,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if ((istype(item, /obj) && item.flags & 128 && target.w_uniform)) source.drop_item() loc = target @@ -1657,6 +1661,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj) && target.wear_suit) var/confirm for(var/i=1, i<=target.wear_suit.allowed.len, i++) @@ -1685,6 +1690,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/head)) source.drop_item() loc = target @@ -1712,6 +1718,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/ears) || istype(item, /obj/item/device/radio/headset) || item.w_class == 1) source.drop_item() if(istype(item, /obj/item/clothing/ears) && item:twoeared && target.r_ear) @@ -1746,6 +1753,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/ears) || istype(item, /obj/item/device/radio/headset) || item.w_class == 1) source.drop_item() if(istype(item, /obj/item/clothing/ears) && item:twoeared && target.r_ear) @@ -1773,6 +1781,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/shoes)) source.drop_item() loc = target @@ -1795,6 +1804,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if(istype(item, /obj/item)) source.drop_item() if(item) @@ -1819,6 +1829,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item)) source.drop_item() loc = target @@ -1868,6 +1879,7 @@ It can still be worn/put on as normal. W.dropped(target) W.layer = initial(W.layer) else + if(!item) return if (istype(item, /obj/item/clothing/under)) source.drop_item() loc = target @@ -1886,6 +1898,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/clothing/suit)) source.drop_item() loc = target @@ -1904,6 +1917,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (((istype(item, /obj/item/weapon/card/id)||istype(item, /obj/item/device/pda)) && target.w_uniform)) source.drop_item() loc = target @@ -1922,6 +1936,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if ((istype(item, /obj/item) && item.flags & 1)) source.drop_item() loc = target @@ -1951,6 +1966,7 @@ It can still be worn/put on as normal. W.layer = initial(W.layer) W.add_fingerprint(source) else + if(!item) return if (istype(item, /obj/item/weapon/handcuffs)) target.drop_from_slot(target.r_hand) target.drop_from_slot(target.l_hand) diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 6b0903a58e..146b354ab2 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -144,7 +144,7 @@ proc/isorgan(A) else if (pr >= 100) return n - var/te = n + var/te = html_decode(n) var/t = "" n = length(n) var/p = null @@ -155,7 +155,7 @@ proc/isorgan(A) else t = text("[]*", t) p++ - return t + return html_encode(t) /*proc/NewStutter(phrase,stunned) phrase = html_decode(phrase) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index feb73a36a1..bc3af304fd 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -57,6 +57,8 @@ var/has_electronics = 0 // 0 - none, 1 - plugged in, 2 - secured by screwdriver var/overload = 1 //used for the Blackout malf module var/mob/living/silicon/ai/occupant = null + var/crit = 0 + var/eventoff = 0 /proc/RandomAPCWires() //to make this not randomize the wires, just set index to 1 and increment it in the flag for loop (after doing everything else). @@ -614,7 +616,7 @@ return "[area.name] : [equipment]/[lighting]/[environ] ([lastused_equip+lastused_light+lastused_environ]) : [cell? cell.percent() : "N/C"] ([charging])" /obj/machinery/power/apc/proc/update() - if(operating && !shorted) + if(operating && !shorted && !eventoff) area.power_light = (lighting > 1) area.power_equip = (equipment > 1) area.power_environ = (environ > 1) diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index d69eb32ff1..e9782bf75c 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -95,7 +95,7 @@ return else - if(isnull(I)) + if(!I || isnull(I)) //CRASH("disposal/attackby() was called, but I was nulled before calling user.drop_item()") return // No idea why, but somehow I gets nulled before it goes into the else, and that leads to a lot of spam with runtime errors. diff --git a/maps/tgstation.2.0.8.dmm b/maps/tgstation.2.0.8.dmm index 5f80354a55..a5c29aa23f 100644 --- a/maps/tgstation.2.0.8.dmm +++ b/maps/tgstation.2.0.8.dmm @@ -1039,8 +1039,8 @@ "atY" = (/turf/simulated/wall/r_wall,/area/hallway/secondary/entry) "atZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/secondary/entry) "aua" = (/turf/simulated/floor/plating,/area/hallway/secondary/entry) -"aub" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/hallway/secondary/entry) -"auc" = (/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry) +"aub" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/hallway/secondary/entry) +"auc" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry) "aud" = (/obj/machinery/camera{c_tag = "Arrivals North"; dir = 1},/turf/simulated/floor{icon_state = "warning"},/area/hallway/secondary/entry) "aue" = (/obj/machinery/vending/coffee,/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/hallway/secondary/entry) "auf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/secondary/entry) @@ -1715,8 +1715,8 @@ "aGY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/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/chapel/main) "aGZ" = (/obj/machinery/vending/snack,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry) "aHa" = (/obj/item/device/radio/beacon,/obj/machinery/camera{c_tag = "Arrivals South"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry) -"aHb" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry) -"aHc" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/entry) +"aHb" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/entry) +"aHc" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/entry) "aHd" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/hallway/secondary/entry) "aHe" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor{dir = 10; icon_state = "carpetside"},/area/hallway/secondary/entry) "aHf" = (/turf/simulated/floor{icon_state = "carpetside"},/area/hallway/secondary/entry) @@ -1783,7 +1783,7 @@ "aIo" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/mint) "aIp" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass,/turf/simulated/floor{icon_state = "dark"},/area/mint) "aIq" = (/turf/simulated/wall/r_wall,/area/mint) -"aIr" = (/obj/structure/closet/emcloset,/turf/simulated/floor,/area/hallway/primary/port) +"aIr" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor,/area/hallway/primary/port) "aIs" = (/obj/structure/table,/turf/simulated/floor,/area/hallway/primary/port) "aIt" = (/obj/machinery/camera{c_tag = "Port Hallway"; dir = 1},/obj/structure/table,/turf/simulated/floor,/area/hallway/primary/port) "aIu" = (/obj/structure/closet/extinguisher{pixel_x = -5; pixel_y = -32},/turf/simulated/floor,/area/hallway/primary/port) @@ -1847,7 +1847,7 @@ "aJA" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/port) "aJB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/locker) "aJC" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "off"; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/closet/emcloset,/turf/simulated/floor,/area/crew_quarters/locker) -"aJD" = (/obj/structure/closet/emcloset,/turf/simulated/floor,/area/crew_quarters/locker) +"aJD" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor,/area/crew_quarters/locker) "aJE" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor,/area/crew_quarters/locker) "aJF" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor,/area/crew_quarters/locker) "aJG" = (/obj/machinery/vending/cola,/turf/simulated/floor,/area/crew_quarters/locker) @@ -1905,8 +1905,8 @@ "aKG" = (/obj/structure/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor,/area/hallway/secondary/exit) "aKH" = (/turf/simulated/floor,/area/hallway/secondary/exit) "aKI" = (/obj/machinery/alarm{pixel_y = 25},/turf/simulated/floor,/area/hallway/secondary/exit) -"aKJ" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit) -"aKK" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/exit) +"aKJ" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/hallway/secondary/exit) +"aKK" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/hallway/secondary/exit) "aKL" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/hallway/secondary/exit) "aKM" = (/obj/machinery/light,/turf/simulated/floor,/area/hallway/secondary/entry) "aKN" = (/obj/machinery/door/firedoor/border_only{dir = 8},/turf/simulated/floor,/area/hallway/secondary/entry) @@ -2326,7 +2326,7 @@ "aSL" = (/turf/simulated/floor{icon_state = "carpetside"},/area/chapel/main) "aSM" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1},/obj/machinery/light{dir = 4},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) "aSN" = (/obj/machinery/power/apc{dir = 8; name = "Escape Hallway APC"; pixel_x = -25},/obj/structure/cable,/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/hallway/secondary/exit) -"aSO" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry) +"aSO" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/hallway/secondary/entry) "aSP" = (/obj/structure/table/woodentable,/turf/simulated/floor,/area/security/vacantoffice) "aSQ" = (/obj/structure/table/woodentable,/turf/simulated/floor/plating,/area/security/vacantoffice) "aSR" = (/obj/machinery/power/apc{dir = 2; name = "Vacant Office APC"; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/security/vacantoffice) @@ -2771,7 +2771,7 @@ "bbo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bbp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bbq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/door_control{id = "kitchen"; name = "Hallway Shutters"; pixel_x = -1; pixel_y = 24},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"bbr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/obj/machinery/atmospherics/pipe/simple{color = "blue"; dir = 4; icon_state = "intact-b-f"; level = 1; name = "pipe"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"bbr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/obj/machinery/atmospherics/pipe/simple{color = "blue"; dir = 4; icon_state = "intact-b-f"; level = 1; name = "pipe"},/obj/machinery/door_control{id = "kitchen2"; name = "Mess Hall Shutters"; pixel_x = 24; pixel_y = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bbs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) "bbt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = "Streight"},/obj/machinery/atmospherics/pipe/manifold{color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) "bbu" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) @@ -2855,7 +2855,7 @@ "bcU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bcV" = (/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bcW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"bcX" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"bcX" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only{dir = 4},/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen2"; name = "Kitchen Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bcY" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) "bcZ" = (/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) "bda" = (/obj/machinery/camera{c_tag = "Bar North"; dir = 2; network = "SS13"},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) @@ -2881,7 +2881,7 @@ "bdu" = (/turf/simulated/floor{dir = 2; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/lab) "bdv" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 22},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "bdw" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) -"bdx" = (/obj/structure/closet/emcloset,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/medical/research{name = "Research Division"}) +"bdx" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/medical/research{name = "Research Division"}) "bdy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "bdz" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"}) "bdA" = (/obj/structure/closet/l3closet/general,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/medical/research{name = "Research Division"}) @@ -2936,7 +2936,7 @@ "bex" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bey" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bez" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"beA" = (/obj/machinery/door/firedoor/border_only{dir = 4},/obj/structure/table/reinforced,/obj/item/kitchen/donut_box,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"beA" = (/obj/machinery/door/firedoor/border_only{dir = 4},/obj/structure/table/reinforced,/obj/item/kitchen/donut_box,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen2"; name = "Kitchen Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "beB" = (/obj/structure/stool/chair,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) "beC" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/alarm{dir = 2; pixel_y = 24},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) "beD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor/plating,/area/maintenance/maintcentral) @@ -3067,7 +3067,7 @@ "bgY" = (/obj/machinery/light,/obj/machinery/alarm{dir = 1; pixel_y = -22},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bgZ" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bha" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) -"bhb" = (/obj/machinery/door/firedoor/border_only{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/snacks/pie,/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) +"bhb" = (/obj/machinery/door/firedoor/border_only{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/snacks/pie,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen2"; name = "Kitchen Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"; dir = 2},/area/crew_quarters/kitchen) "bhc" = (/obj/structure/closet/extinguisher{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Bar East"; dir = 8; network = "SS13"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/bar) "bhd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/maintenance/maintcentral) "bhe" = (/obj/structure/table,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor{icon_state = "white"},/area/medical/medbay) @@ -3596,7 +3596,7 @@ "brh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/toxins/storage) "bri" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/structure/window/reinforced{dir = 8},/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 = "delivery"; name = "floor"},/area/toxins/storage) "brj" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/toxins/storage) -"brk" = (/obj/structure/closet/emcloset,/turf/simulated/floor/plating,/area/maintenance/asmaint2) +"brk" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor/plating,/area/maintenance/asmaint2) "brl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = "Streight"},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/apmaint) "brm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/quartermaster/qm) "brn" = (/obj/structure/closet,/obj/machinery/light_switch{pixel_y = -22},/turf/simulated/floor,/area/quartermaster/qm) @@ -4875,7 +4875,7 @@ "bPM" = (/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/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/assembly/assembly_line) "bPN" = (/obj/machinery/light{dir = 1},/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/hallway/primary/aft) "bPO" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "yellowcorner"},/area/hallway/primary/aft) -"bPP" = (/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "cautioncorner"; dir = 2},/area/hallway/primary/aft) +"bPP" = (/obj/effect/landmark{name = "emcloset"},/turf/simulated/floor{icon_state = "cautioncorner"; dir = 2},/area/hallway/primary/aft) "bPQ" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "cautioncorner"; dir = 2},/area/hallway/primary/aft) "bPR" = (/turf/simulated/floor{icon_state = "caution"; dir = 6},/area/hallway/primary/aft) "bPS" = (/obj/effect/sign/securearea,/turf/simulated/wall/r_wall,/area/atmos) From ab0d906883b026a24f7d0b18c4cea21b4512d8d7 Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Thu, 5 Jan 2012 09:54:18 +1000 Subject: [PATCH 5/8] played around with ultralight. it now works, but it overrides sd so don't include it. also, shitload of other 'changes' because i derped github Signed-off-by: CaelAislinn --- code/unused/Ultralight.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/unused/Ultralight.dm b/code/unused/Ultralight.dm index bc30bd0621..30516ef52a 100644 --- a/code/unused/Ultralight.dm +++ b/code/unused/Ultralight.dm @@ -212,14 +212,14 @@ atom/proc/ul_LightLevelChanged() //Designed for client projects to use. Called on items when the turf they are in has its light level changed return -atom/proc/New() +atom/New() ..() if(ul_IsLuminous()) spawn(1) ul_Illuminate() return -atom/proc/Del() +atom/Del() if(ul_IsLuminous()) ul_Extinguish() @@ -227,11 +227,11 @@ atom/proc/Del() return -atom/proc/movable/Move() +/*atom/proc/movable/Move() ul_Extinguish() ..() ul_Illuminate() - return + return*/ turf var From 75757a29cf467b48e07c7240d7b1de40fc488a56 Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Thu, 5 Jan 2012 15:30:15 +1000 Subject: [PATCH 6/8] fixed conveyors. was something weird happening with antiqua, shouldn't be any changes Signed-off-by: CaelAislinn --- code/modules/recycling/conveyor2.dm | 222 ++++++- maps/Antiqua.dmm | 980 ++++++++++++++-------------- 2 files changed, 678 insertions(+), 524 deletions(-) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index da31364f32..4f974cf409 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -9,46 +9,71 @@ anchored = 1 var/operating = 0 // 1 if running forward, -1 if backwards, 0 if off var/operable = 1 // true if can operate (no broken segments in this belt run) - var/forwards // this is the default (forward) direction, set by the map dir - var/backwards // hopefully self-explanatory + var/forwards // this is the default (forward) direction, set by the map dir, can be 0 + var/backwards // hopefully self-explanatory, can be 0 var/movedir // the actual direction to move stuff in var/list/affecting // the list of all items that will be moved this ptick var/id = "" // the control ID - must match controller ID + //these ones below for backwards compatibility + + // following two only used if a diverter is present + var/divert_from = 0 // if non-zero, direction to divert items + var/divert_to = 0 // if diverting, will be conveyer dir needed to divert (otherwise dense) + var/basedir // this is the default (forward) direction, set by the map dir + // note dir var can vary when the direction changes + + //cael - corner icon bug that needs a manual fix + //note: for now, the sprites/anis and their directions are mostly independant from the actual conveyor move directions + //if no conveyor move directions are specified, they are calculated from the sprite dir + var/reverseSpriteMoveDir = 0 + // create a conveyor /obj/machinery/conveyor/New() ..() - switch(dir) - if(NORTH) - forwards = NORTH - backwards = SOUTH - if(SOUTH) - forwards = SOUTH - backwards = NORTH - if(EAST) - forwards = EAST - backwards = WEST - if(WEST) - forwards = WEST - backwards = EAST - if(NORTHEAST) - forwards = EAST - backwards = SOUTH - if(NORTHWEST) - forwards = SOUTH - backwards = WEST - if(SOUTHEAST) - forwards = NORTH - backwards = EAST - if(SOUTHWEST) - forwards = WEST - backwards = NORTH + //added these to allow for custom conveyor dirs defined in map + if(!forwards) + switch(dir) + if(NORTH) + forwards = NORTH + if(SOUTH) + forwards = SOUTH + if(EAST) + forwards = EAST + if(WEST) + forwards = WEST + if(NORTHEAST) + forwards = EAST + if(NORTHWEST) + forwards = WEST + if(SOUTHEAST) + forwards = EAST + if(SOUTHWEST) + forwards = WEST + if(!backwards) + switch(dir) + if(NORTH) + backwards = SOUTH + if(SOUTH) + backwards = NORTH + if(EAST) + backwards = WEST + if(WEST) + backwards = EAST + if(NORTHEAST) + backwards = SOUTH + if(NORTHWEST) + backwards = SOUTH + if(SOUTHEAST) + backwards = NORTH + if(SOUTHWEST) + backwards = NORTH /obj/machinery/conveyor/proc/setmove() - if(operating == 1) + if(operating > 0) movedir = forwards - else + else if(operating < 0) movedir = backwards update() @@ -61,7 +86,7 @@ operating = 0 if(stat & NOPOWER) operating = 0 - icon_state = "conveyor[operating]" + icon_state = "conveyor[operating * (reverseSpriteMoveDir?-1:1)]" // machine process // move items to the target location @@ -72,6 +97,17 @@ return use_power(100) + // update if diverter present + // if movedir == forwards, therefore if divert_to != 0 and divert_from == backwards, then set movedir = divert_to + // if movedir == backwards, therefore if divert_to != 0 and divert_from == forwards, then set movedir = divert_to + //if(divert_to && divert_from == (movedir == backwards ? forwards : backwards ) ) + //movedir = divert_to + if(divert_to) + if( movedir == forwards && divert_from == backwards ) + movedir = divert_to + else if( movedir == backwards && divert_from == forwards ) + movedir = divert_to + affecting = loc.contents - src // moved items will be all in loc spawn(1) // slight delay to prevent infinite propagation due to map order var/items_moved = 0 @@ -221,3 +257,129 @@ if(S.id == src.id) S.position = position S.update() + +// converyor diverter +// extendable arm that can be switched so items on the conveyer are diverted sideways +// situate in same turf as conveyor +// only works if belts is running proper direction +// +// +/obj/machinery/diverter + icon = 'recycling.dmi' + icon_state = "diverter0" + name = "diverter" + desc = "A diverter arm for a conveyor belt." + anchored = 1 + layer = FLY_LAYER + var/obj/machinery/conveyor/conv // the conveyor this diverter works on + var/deployed = 0 // true if diverter arm is extended + var/operating = 0 // true if arm is extending/contracting + var/divert_to // the dir that diverted items will be moved + var/divert_from // the dir items must be moving to divert + +// create a diverter +// set up divert_to and divert_from directions depending on dir state +/obj/machinery/diverter/New() + ..() + //cael - the icon states are all derped, so these won't make sense. + //just place the diverter according to which icon state is correct + switch(dir) + if(NORTH) + divert_to = WEST// + divert_from = SOUTH// + if(SOUTH) + divert_to = EAST// + divert_from = SOUTH//NORTH + if(EAST) + divert_to = EAST// + divert_from = NORTH//SOUTH + if(WEST) + divert_to = WEST// + divert_from = NORTH// + if(NORTHEAST) + divert_to = NORTH// + divert_from = WEST//EAST + if(NORTHWEST) + divert_to = NORTH// + divert_from = EAST//WEST + if(SOUTHEAST) + divert_to = SOUTH// + divert_from = WEST//EAST + if(SOUTHWEST) + divert_to = SOUTH// + divert_from = EAST//WEST + spawn(2) + // wait for map load then find the conveyor in this turf + conv = locate() in src.loc + if(conv) // divert_from dir must match possible conveyor movement + if(conv.backwards != divert_from && conv.backwards != turn(divert_from,180) ) + del(src) // if no dir match, then delete self + set_divert() + update() + +// update the icon state depending on whether the diverter is extended +/obj/machinery/diverter/proc/update() + icon_state = "diverter[deployed]" + +// call to set the diversion vars of underlying conveyor +/obj/machinery/diverter/proc/set_divert() + if(conv) + if(deployed) + conv.divert_to = divert_to + conv.divert_from = divert_from + else + conv.divert_to = 0 + conv.divert_from = 0 + conv.setmove() + + +// *** TESTING click to toggle +/obj/machinery/diverter/Click() + toggle() + + +// toggle between arm deployed and not deployed, showing animation +// +/obj/machinery/diverter/proc/toggle() + if( stat & (NOPOWER|BROKEN)) + return + + if(operating) + return + + use_power(50) + operating = 1 + if(deployed) + flick("diverter10",src) + icon_state = "diverter0" + sleep(10) + deployed = 0 + else + flick("diverter01",src) + icon_state = "diverter1" + sleep(10) + deployed = 1 + operating = 0 + update() + set_divert() + +// don't allow movement into the 'backwards' direction if deployed +/obj/machinery/diverter/CanPass(atom/movable/O, var/turf/target) + var/direct = get_dir(O, target) + if(direct == divert_to) // prevent movement through body of diverter + return 0 + if(!deployed) + return 1 + return(direct != divert_from) + +// don't allow movement through the arm if deployed +/obj/machinery/diverter/CheckExit(atom/movable/O, var/turf/target) + var/direct = get_dir(O, target) + if(direct == turn(divert_to,180)) // prevent movement through body of diverter + return 0 + if(!deployed) + return 1 + return(direct != turn(divert_from,180)) + + //divert_to = NORTH + //divert_from = EAST \ No newline at end of file diff --git a/maps/Antiqua.dmm b/maps/Antiqua.dmm index d1f6c4c750..ff2378f1e1 100644 --- a/maps/Antiqua.dmm +++ b/maps/Antiqua.dmm @@ -225,11 +225,11 @@ "eq" = (/obj/machinery/alarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/atmos) "er" = (/obj/structure/stool/chair{dir = 1},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/turf/simulated/floor,/area/atmos) "es" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; dir = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/turf/simulated/floor,/area/atmos) -"et" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area) -"eu" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area) -"ev" = (/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) -"ew" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area) -"ex" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area) +"et" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/shuttle/arrival/station) +"eu" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/arrival/station) +"ev" = (/obj/structure/window/reinforced,/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/shuttle/arrival/station) +"ew" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/shuttle/arrival/station) +"ex" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/shuttle/arrival/station) "ey" = (/obj/machinery/camera{c_tag = "Atmospherics Tanks"; dir = 4},/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "arrival"; dir = 8},/area/atmos) "ez" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-c"},/turf/simulated/floor,/area/atmos) "eA" = (/obj/machinery/atmospherics/binary/pump{dir = 1; name = "Custom Mix Pump"; target_pressure = 202.6},/turf/simulated/floor,/area/atmos) @@ -240,14 +240,14 @@ "eF" = (/obj/structure/closet/firecloset,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/floor,/area/atmos) "eG" = (/obj/effect/landmark/start{name = "Atmospheric Technician"},/turf/simulated/floor,/area/atmos) "eH" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/dispenser,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/atmos) -"eI" = (/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area) -"eJ" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area) -"eK" = (/turf/simulated/shuttle/floor,/area) -"eL" = (/obj/machinery/computer/arcade,/turf/simulated/shuttle/floor,/area) -"eM" = (/obj/structure/closet/wardrobe/green,/turf/simulated/shuttle/floor,/area) -"eN" = (/obj/structure/closet/wardrobe/black,/turf/simulated/shuttle/floor,/area) -"eO" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"; dir = 2},/area) -"eP" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_r (WEST)"; icon_state = "burst_r"; dir = 8},/turf/space,/area) +"eI" = (/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/shuttle/arrival/station) +"eJ" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/shuttle/arrival/station) +"eK" = (/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"eL" = (/obj/machinery/computer/arcade,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"eM" = (/obj/structure/closet/wardrobe/green,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"eN" = (/obj/structure/closet/wardrobe/black,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"eO" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"; dir = 2},/area/shuttle/arrival/station) +"eP" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_r (WEST)"; icon_state = "burst_r"; dir = 8},/turf/space,/area/shuttle/arrival/station) "eQ" = (/obj/machinery/portable_atmospherics/canister/nitrogen{filled = 1; name = "Canister \[N2]"; valve_open = 1},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) "eR" = (/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) "eS" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) @@ -259,398 +259,390 @@ "eY" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass_engineering{name = "Atmospherics Control"; req_access_txt = "24"},/turf/simulated/floor,/area/atmos) "eZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/atmos) "fa" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) -"fb" = (/turf/simulated/shuttle/wall{tag = "icon-swall7"; icon_state = "swall7"; dir = 2},/area/shuttle/arrival/station) -"fc" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/shuttle/arrival/station) -"fd" = (/obj/structure/stool/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) -"fe" = (/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) -"ff" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) -"fg" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/simulated/shuttle/floor,/area) -"fh" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (EAST)"; icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area) -"fi" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (WEST)"; icon_state = "propulsion"; dir = 8},/turf/space,/area) -"fj" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2_sensor"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) -"fk" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "on"; id = "n2_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) -"fl" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/atmos) -"fm" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/simulated/floor,/area/atmos) -"fn" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/simulated/floor,/area/atmos) -"fo" = (/obj/machinery/atmospherics/trinary/filter{filter_type = 2; icon_state = "intact_on"; name = "Gas filter (N2)"; on = 1},/turf/simulated/floor,/area/atmos) -"fp" = (/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor,/area/atmos) -"fq" = (/obj/structure/closet/extinguisher{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor,/area/atmos) -"fr" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/camera{c_tag = "Atmospherics Control Room"; dir = 4},/turf/simulated/floor,/area/atmos) -"fs" = (/obj/machinery/portable_atmospherics/pump,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) -"ft" = (/turf/space,/area/shuttle/arrival/station) -"fu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/shuttle/arrival/station) -"fv" = (/obj/effect/landmark{name = "Observer-Start"},/turf/simulated/shuttle/floor,/area) -"fw" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/atmos) -"fx" = (/obj/machinery/atmospherics/valve,/turf/simulated/floor,/area/atmos) -"fy" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/station_alert,/turf/simulated/floor,/area/atmos) -"fz" = (/obj/machinery/light{dir = 4},/obj/machinery/portable_atmospherics/pump,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) -"fA" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f10"; icon_state = "swall_f10"; dir = 2},/area/shuttle/arrival/station) -"fB" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) -"fC" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide{filled = 1; valve_open = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) -"fD" = (/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) -"fE" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) -"fF" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "co2_in"; name = "CO2 Supply Control"; output_tag = "co2_out"; sensors = list("co2_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/atmos) -"fG" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor,/area/atmos) -"fH" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor{dir = 4; icon_state = "escape"},/area/atmos) -"fI" = (/obj/machinery/atmospherics/trinary/mixer{name = "Gas mixer (Mix/CO2)"; pixel_y = 1},/turf/simulated/floor,/area/atmos) -"fJ" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/simulated/floor,/area/atmos) -"fK" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/simulated/floor,/area/atmos) -"fL" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/atmos_alert,/turf/simulated/floor,/area/atmos) -"fM" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) -"fN" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/shuttle/arrival/station) -"fO" = (/turf/simulated/shuttle/wall{tag = "icon-swall13"; icon_state = "swall13"; dir = 2},/area/shuttle/arrival/station) -"fP" = (/turf/simulated/shuttle/wall{tag = "icon-swall12"; icon_state = "swall12"; dir = 2},/area/shuttle/arrival/station) -"fQ" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) -"fR" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (WEST)"; icon_state = "burst_l"; dir = 8},/turf/space,/area) -"fS" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "co2_sensor"},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) -"fT" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "on"; id = "co2_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) -"fU" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/atmos) -"fV" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/turf/simulated/floor,/area/atmos) -"fW" = (/obj/machinery/atmospherics/trinary/filter{filter_type = 3; icon_state = "intact_on"; name = "Gas filter (CO2)"; on = 1},/turf/simulated/floor,/area/atmos) -"fX" = (/obj/machinery/computer/general_air_control{frequency = 1441; name = "Supply Air Tank Monitor"; sensors = list("air_sensor" = "Air Mix", "n2_sensor" = "Nitrogen", "o2_sensor" = "Oxygen", "co2_sensor" = "Carbon Dioxide", "misc_sensor" = "Misc")},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor,/area/atmos) -"fY" = (/obj/structure/stool/chair{dir = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/turf/simulated/floor,/area/atmos) -"fZ" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/atmos) -"ga" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) -"gb" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) -"gc" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area) -"gd" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{dir = 8; icon_state = "redyellow"},/area/atmos) -"ge" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor,/area/atmos) -"gf" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor,/area/atmos) -"gg" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/turf/simulated/floor,/area/atmos) -"gh" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/turf/simulated/floor,/area/atmos) -"gi" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/general_air_control{frequency = 1441; name = "Distribution Monitor"; sensors = list("supply_meter" = "Supply", "scrubbers_meter" = "Scrubbers")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/atmos) -"gj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/turf/simulated/floor,/area/atmos) -"gk" = (/obj/machinery/light{dir = 4},/obj/structure/closet/wardrobe/atmospherics_yellow,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor,/area/atmos) -"gl" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/shuttle/arrival/station) -"gm" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/floor/plating,/area/shuttle/arrival/station) -"gn" = (/obj/machinery/portable_atmospherics/canister{filled = 0; name = "Canister \[Misc]"; valve_open = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) -"go" = (/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) -"gp" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "misc_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) -"gq" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "misc_in"; name = "Misc Supply Control"; output_tag = "misc_out"; sensors = list("misc_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/turf/simulated/floor{icon_state = "caution"; dir = 8},/area/atmos) -"gr" = (/obj/machinery/atmospherics/valve{color = "yellow"; dir = 4; name = "Toxin safety valve"},/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor,/area/atmos) -"gs" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor{icon_state = "caution"; dir = 4},/area/atmos) -"gt" = (/obj/machinery/atmospherics/trinary/mixer{pixel_y = 1},/turf/simulated/floor,/area/atmos) -"gu" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/atmos) -"gv" = (/obj/machinery/vending/snack,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor,/area/atmos) -"gw" = (/obj/structure/window/reinforced,/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/simulated/floor,/area/atmos) -"gx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/shuttle/arrival/station) -"gy" = (/turf/simulated/floor/plating,/area/shuttle/arrival/station) -"gz" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "misc_sensor"},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) -"gA" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "on"; id = "misc_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) -"gB" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/meter,/turf/simulated/floor{dir = 10; icon_state = "caution"},/area/atmos) -"gC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/closet/extinguisher{dir = 2; pixel_x = 0; pixel_y = -30},/turf/simulated/floor,/area/atmos) -"gD" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/camera{c_tag = "Atmospherics Aft"; dir = 1},/turf/simulated/floor,/area/atmos) -"gE" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/simulated/floor,/area/atmos) -"gF" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/simulated/floor,/area/atmos) -"gG" = (/obj/machinery/pipedispenser/disposal,/turf/simulated/floor,/area/atmos) -"gH" = (/obj/machinery/light,/obj/machinery/vending/cola,/obj/machinery/camera{c_tag = "Atmospherics Control Aft"; dir = 1},/turf/simulated/floor,/area/atmos) -"gI" = (/obj/structure/closet/extinguisher{dir = 2; pixel_x = 0; pixel_y = -30},/turf/simulated/floor,/area/atmos) -"gJ" = (/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Atmos Delivery"; req_access_txt = "24"},/turf/simulated/floor{icon_state = "delivery"},/area/atmos) -"gK" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Atmospherics"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Atmos Delivery"; req_access_txt = "34"},/turf/simulated/floor{icon_state = "bot"},/area/atmos) -"gL" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) -"gM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/wall/r_wall,/area) -"gN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area) -"gO" = (/obj/structure/grille,/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area) -"gP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) -"gQ" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 5; icon_state = "intact-p-f"},/turf/simulated/wall,/area/atmos) -"gR" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9; icon_state = "intact-p-f"},/turf/simulated/wall,/area/atmos) -"gS" = (/turf/simulated/wall,/area/maintenance/port) -"gT" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/paper_bin,/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) -"gU" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/pen,/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) -"gV" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/turf/simulated/floor,/area) -"gW" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) -"gX" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/stamp,/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) -"gY" = (/obj/machinery/door/window/eastleft{tag = "icon-left (NORTH)"; name = "Heads of Staff"; icon_state = "left"; dir = 1; req_access_txt = "19"},/turf/simulated/floor,/area) -"gZ" = (/obj/machinery/computer/card,/turf/simulated/floor,/area) -"ha" = (/obj/machinery/computer/secure_data,/turf/simulated/floor,/area) -"hb" = (/turf/space,/area/supply/station) -"hc" = (/obj/machinery/requests_console,/turf/simulated/wall/r_wall,/area/maintenance/port) -"hd" = (/obj/machinery/door/airlock/command,/turf/simulated/floor,/area) -"he" = (/turf/simulated/wall,/area/quartermaster/storage) -"hf" = (/turf/simulated/wall,/area/quartermaster/qm) -"hg" = (/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/turf/simulated/floor,/area) -"hh" = (/obj/machinery/disposal,/turf/simulated/floor,/area/quartermaster/storage) -"hi" = (/obj/machinery/autolathe,/turf/simulated/floor,/area/quartermaster/storage) -"hj" = (/turf/simulated/floor,/area/quartermaster/storage) -"hk" = (/obj/machinery/light/spot{dir = 1},/turf/simulated/floor,/area/quartermaster/storage) -"hl" = (/obj/machinery/requests_console{department = "Quartermaster"; name = "Cargo Bay Requests Console"; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/storage) -"hm" = (/obj/machinery/power/apc{dir = 1; name = "Cargo Bay APC"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/storage) -"hn" = (/obj/machinery/power/apc{dir = 1; name = "Quartermaster APC"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/qm) -"ho" = (/turf/simulated/floor,/area/quartermaster/qm) -"hp" = (/turf/simulated/floor/plating,/area/quartermaster/qm) -"hq" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/quartermaster/qm) -"hr" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/quartermaster/qm) -"hs" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) -"ht" = (/obj/structure/closet/secure_closet,/turf/simulated/floor,/area) -"hu" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor,/area/quartermaster/storage) -"hv" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"hw" = (/obj/structure/closet/crate/internals,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"hx" = (/obj/structure/plasticflaps,/turf/simulated/floor,/area/quartermaster/qm) -"hy" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #1"},/obj/machinery/bot/mulebot{beacon_freq = 1400; home_destination = "QM #1"; suffix = "#1"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/qm) -"hz" = (/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/qm) -"hA" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/quartermaster/qm) -"hB" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"hC" = (/obj/machinery/computer/security,/turf/simulated/floor,/area) -"hD" = (/obj/structure/closet/secure_closet/brig,/turf/simulated/floor,/area) -"hE" = (/obj/structure/closet/wardrobe,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"hF" = (/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"hG" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "QM #2"},/obj/machinery/bot/mulebot{home_destination = "QM #2"; suffix = "#2"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/qm) -"hH" = (/obj/machinery/conveyor_switch{id = "QMonload"; name = "Sorting Conveyor Switch"},/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor,/area/quartermaster/qm) -"hI" = (/obj/structure/grille,/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/quartermaster/qm) -"hJ" = (/obj/machinery/vending/coffee,/turf/simulated/floor,/area) -"hK" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/storage) -"hL" = (/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"hM" = (/obj/machinery/light_switch{pixel_x = 24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/storage) -"hN" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/qm) -"hO" = (/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "1"},/turf/simulated/floor,/area) -"hP" = (/obj/machinery/conveyor{dir = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) -"hQ" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) -"hR" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/quartermaster/qm) -"hS" = (/obj/machinery/conveyor{dir = 2; divdir = 0; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) -"hT" = (/obj/structure/stool/chair{name = "Bailiff"},/turf/simulated/floor,/area) -"hU" = (/obj/machinery/door/airlock/maintenance,/turf/simulated/floor,/area/quartermaster/qm) -"hV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) -"hW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"hX" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor,/area) -"hY" = (/obj/structure/table{step_y = 0},/turf/simulated/floor,/area) -"hZ" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor,/area) -"ia" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) -"ib" = (/obj/structure/closet/crate,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) -"ic" = (/obj/machinery/requests_console{department = "Quartermaster"; name = "Quartermaster Requests Console"; pixel_x = -24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/qm) -"id" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) -"ie" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"if" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) -"ig" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "grimy"},/area) -"ih" = (/obj/structure/window/reinforced{dir = 1},/obj/item/device/flashlight,/turf/simulated/floor{icon_state = "grimy"},/area) -"ii" = (/obj/structure/stool/bed,/turf/simulated/floor,/area) -"ij" = (/obj/machinery/door/window/brigdoor/eastleft,/obj/machinery/door/window/brigdoor/westright,/turf/simulated/floor,/area) -"ik" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/storage) -"il" = (/obj/machinery/door_control{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) -"im" = (/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) -"in" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) -"io" = (/turf/simulated/floor{icon_state = "grimy"},/area) -"ip" = (/obj/item/weapon/cigpacket,/turf/simulated/floor{icon_state = "grimy"},/area) -"iq" = (/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/quartermaster/storage) -"ir" = (/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) -"is" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) -"it" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) -"iu" = (/obj/machinery/conveyor{dir = 8; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) -"iv" = (/obj/machinery/conveyor{dir = 2; divdir = 0; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) -"iw" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) -"ix" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) -"iy" = (/obj/machinery/door/window/westleft,/turf/simulated/floor{icon_state = "grimy"},/area) -"iz" = (/obj/machinery/conveyor{dir = 1; divert = 1; id = "QMoffload"},/obj/machinery/diverter{dir = 4},/turf/simulated/floor,/area/quartermaster/storage) -"iA" = (/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) -"iB" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/qm) -"iC" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) -"iD" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 9},/turf/simulated/floor,/area/quartermaster/qm) -"iE" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 5},/turf/simulated/floor,/area/quartermaster/qm) -"iF" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) -"iG" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"iH" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"iI" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) -"iJ" = (/obj/machinery/vending/security,/turf/simulated/floor,/area) -"iK" = (/obj/structure/table/woodentable,/obj/item/device/detective_scanner,/turf/simulated/floor{icon_state = "grimy"},/area) -"iL" = (/obj/structure/closet/secure_closet/detective,/turf/simulated/floor{icon_state = "grimy"},/area) -"iM" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/turf/simulated/floor,/area) -"iN" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) -"iO" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) -"iP" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) -"iQ" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) -"iR" = (/obj/machinery/conveyor_switch{id = "QMshuttle"; name = "Shuttle conveyor switch"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) -"iS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"iT" = (/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) -"iU" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) -"iV" = (/turf/simulated/wall,/area/maintenance/apmaint) -"iW" = (/turf/simulated/wall,/area/maintenance/aft) -"iX" = (/obj/structure/plasticflaps,/turf/simulated/floor,/area/quartermaster/storage) -"iY" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #3"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"iZ" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor,/area/quartermaster/qm) -"ja" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"jb" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) -"jc" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/apmaint) -"jd" = (/turf/simulated/floor/plating,/area/maintenance/apmaint) -"je" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/aft) -"jf" = (/turf/simulated/floor/plating,/area/maintenance/aft) -"jg" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #4"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) -"jh" = (/obj/machinery/conveyor_switch{id = "QMoffload"; name = "Cargo Bay Conveyor Switch"},/turf/simulated/floor,/area/quartermaster/qm) -"ji" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor,/area/quartermaster/qm) -"jj" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"jk" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/qm) -"jl" = (/obj/structure/table/reinforced,/obj/item/weapon/stamp/denied,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = -3; pixel_y = 3},/turf/simulated/floor,/area/quartermaster/qm) -"jm" = (/obj/machinery/disposal,/turf/simulated/floor,/area/quartermaster/qm) -"jn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) -"jo" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area) -"jp" = (/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor,/area/quartermaster/storage) -"jq" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright,/obj/machinery/door/window/eastleft,/turf/simulated/floor,/area/quartermaster/qm) -"jr" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark/start{name = "Quartermaster"},/turf/simulated/floor,/area/quartermaster/qm) -"js" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor,/area/quartermaster/qm) -"jt" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westleft,/obj/machinery/door/window/eastright,/turf/simulated/floor,/area/quartermaster/qm) -"ju" = (/obj/structure/rack,/obj/item/clothing/suit/fire/firefighter,/obj/item/clothing/mask/gas,/obj/item/weapon/tank/emergency_oxygen,/obj/item/clothing/glasses/meson,/turf/simulated/floor,/area/quartermaster/qm) -"jv" = (/obj/structure/table,/turf/simulated/floor,/area/quartermaster/storage) -"jw" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor,/area/quartermaster/storage) -"jx" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/quartermaster/storage) -"jy" = (/obj/structure/table,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/quartermaster/storage) -"jz" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/camera{c_tag = "Cargo Loading Area North"},/turf/simulated/floor,/area/quartermaster/storage) -"jA" = (/obj/structure/closet,/turf/simulated/floor,/area/quartermaster/qm) -"jB" = (/obj/structure/rack,/turf/simulated/floor,/area/quartermaster/qm) -"jC" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor,/area/quartermaster/qm) -"jD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) -"jE" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor,/area) -"jF" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (EAST)"; icon_state = "wood_1tileendtable"; dir = 4},/obj/item/weapon/hand_tele,/turf/simulated/floor,/area) -"jG" = (/obj/structure/table/woodentable{tag = "icon-wood_1tilethick (EAST)"; icon_state = "wood_1tilethick"; dir = 4},/obj/item/weapon/camera_test,/turf/simulated/floor,/area) -"jH" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (WEST)"; icon_state = "wood_1tileendtable"; dir = 8},/obj/item/weapon/coin,/turf/simulated/floor,/area) -"jI" = (/turf/simulated/wall,/area/crew_quarters/cafeteria) -"jJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jK" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jL" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jM" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jN" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jO" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jP" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jQ" = (/obj/machinery/computer/communications,/turf/simulated/floor,/area) -"jR" = (/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jU" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jV" = (/obj/structure/table,/obj/machinery/light/spot{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jW" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = -8; pixel_y = 2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jX" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jY" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"jZ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"ka" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kb" = (/turf/simulated/floor{dir = 9; icon_state = "carpetside"},/area) -"kc" = (/turf/simulated/floor{dir = 1; icon_state = "carpetside"},/area) -"kd" = (/turf/simulated/floor{dir = 5; icon_state = "carpetside"},/area) -"ke" = (/turf/simulated/wall,/area/maintenance/asmaint) -"kf" = (/turf/simulated/floor/plating,/area/maintenance/asmaint) -"kg" = (/turf/simulated/wall/r_wall,/area/maintenance/asmaint) -"kh" = (/obj/machinery/computer/crew,/turf/simulated/floor,/area) -"ki" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kk" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kl" = (/turf/simulated/floor{dir = 8; icon_state = "carpetside"},/area) -"km" = (/turf/simulated/floor{icon_state = "carpet"},/area) -"kn" = (/turf/simulated/floor{dir = 4; icon_state = "carpetside"},/area) -"ko" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kp" = (/obj/structure/table{tag = "icon-tabledir (SOUTHEAST)"; icon_state = "tabledir"; dir = 6},/turf/simulated/floor,/area) -"kq" = (/obj/structure/table{tag = "icon-tabledir (SOUTHWEST)"; icon_state = "tabledir"; dir = 10},/turf/simulated/floor,/area) -"kr" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/turf/simulated/floor,/area) -"ks" = (/obj/machinery/light/spot{dir = 8; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kt" = (/obj/machinery/camera{c_tag = "Cafeteria Starboard"; dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"ku" = (/obj/machinery/door{icon = 'icons/obj/doors/doormorgue.dmi'; name = "Crew Quarters"; req_access_txt = "0"},/turf/simulated/floor,/area) -"kv" = (/turf/simulated/floor{dir = 10; icon_state = "carpetside"},/area) -"kw" = (/turf/simulated/floor{icon_state = "carpetside"},/area) -"kx" = (/turf/simulated/floor{dir = 6; icon_state = "carpetside"},/area) -"ky" = (/obj/machinery/computer/shuttle,/turf/simulated/floor,/area) -"kz" = (/obj/structure/table{dir = 5; icon_state = "tabledir"},/turf/simulated/floor,/area) -"kA" = (/obj/structure/table{tag = "icon-tabledir (NORTH)"; icon_state = "tabledir"; dir = 1},/turf/simulated/floor,/area) -"kB" = (/obj/structure/table{icon_state = "tabledir"; dir = 9},/turf/simulated/floor,/area) -"kC" = (/obj/item/weapon/mop,/turf/simulated/floor,/area) -"kD" = (/obj/machinery/camera{c_tag = "Cafeteria Port"; dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kE" = (/obj/machinery/computer/station_alert,/turf/simulated/floor,/area) -"kF" = (/obj/structure/stool/chair{dir = 1},/turf/simulated/floor,/area) -"kG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) -"kJ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/northleft{name = "Kitchen Delivery"; req_access_txt = "34;25;28"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/crew_quarters/kitchen) -"kK" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen"; name = "Kitchen Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kL" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) -"kM" = (/turf/simulated/wall,/area/crew_quarters/kitchen) -"kN" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area) -"kO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/obj/machinery/power/apc{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) -"kS" = (/obj/machinery/door/window/southleft{name = "Kitchen Delivery"; req_access_txt = "25;28"},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/kitchen) -"kT" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/sink/kitchen2{pixel_y = 28},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kU" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kV" = (/obj/machinery/door_control{id = "kitchen"; name = "Kitchen Shutters"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kW" = (/obj/structure/closet/secure_closet/kitchen,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"kX" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"kY" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/item/weapon/zippo,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"kZ" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"la" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lb" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) -"ld" = (/obj/machinery/light_switch{dir = 8; pixel_x = -24; pixel_y = 6},/obj/machinery/light_switch{dir = 8; name = "light switch (Cafeteria)"; otherarea = "crew_quarters/cafeteria"; pixel_x = -24; pixel_y = -6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"le" = (/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lf" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lg" = (/obj/structure/closet/secure_closet/fridge,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lh" = (/obj/machinery/door_control{dir = 8; id = "bar"; name = "Bar Shutters"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"li" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lj" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lk" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"ll" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lm" = (/obj/structure/reagent_dispensers/beerkeg,/obj/structure/window/reinforced{dir = 4},/obj/machinery/light_switch{dir = 1; pixel_y = 24},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"ln" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lo" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lp" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lq" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/closet/secure_closet/meat,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lr" = (/obj/machinery/smartfridge,/turf/simulated/wall,/area) -"ls" = (/obj/structure/closet/gmcloset,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lt" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lu" = (/obj/effect/landmark/start{name = "Bartender"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lw" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lx" = (/obj/machinery/door/window/eastright{name = "Bar"; req_one_access_txt = "25"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"ly" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lz" = (/obj/machinery/door/window/westleft{name = "Kitchen"; req_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lA" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lB" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Freezer"; req_one_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lC" = (/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lD" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lE" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/asmaint) -"lF" = (/obj/structure/closet/crate/internals,/turf/simulated/floor,/area) -"lG" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/projectile/shotgun,/obj/item/clothing/head/that,/obj/machinery/light/spot,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lH" = (/obj/machinery/vending/boozeomat{pixel_x = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lI" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/barman_recipes{pixel_x = 4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lJ" = (/obj/structure/table/reinforced,/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lK" = (/obj/structure/table/reinforced,/obj/machinery/light/spot,/obj/machinery/requests_console{department = "Bar"; departmentType = 2; name = "Bar RC"; pixel_x = -1; pixel_y = -30},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lL" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) -"lM" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lN" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lO" = (/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; name = "Kitchen RC"; pixel_x = 0; pixel_y = -30},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lP" = (/obj/item/weapon/storage/donkpocket_kit,/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/machinery/camera{c_tag = "Kitchen"; dir = 1},/obj/structure/table,/obj/machinery/processor,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lR" = (/obj/machinery/light/spot,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/table,/obj/machinery/blender{pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lS" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/machinery/juicer,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lT" = (/obj/machinery/chem_master/condimaster,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) -"lU" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lV" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) -"lW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) -"lX" = (/turf/simulated/wall/r_wall,/area/crew_quarters/bar) -"lY" = (/turf/simulated/wall/r_wall,/area/crew_quarters/kitchen) -"lZ" = (/turf/simulated/wall/r_wall,/area/maintenance/aft) -"ma" = (/turf/unsimulated/wall,/area/start) -"mb" = (/turf/space,/area/start) -"mc" = (/obj/effect/landmark/start,/turf/space,/area/start) -"md" = (/turf/unsimulated/wall{icon = 'icons/misc/fullscreen.dmi'; icon_state = "titleold"; name = "Baystation 13"},/area/start) -"me" = (/turf/space,/area/shuttle) -"mf" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/supply/dock) -"mg" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/supply/dock) -"mh" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) -"mi" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/supply/dock) -"mj" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/supply/dock) -"mk" = (/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) -"ml" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{dir = 2; icon_state = "swall_f5"; tag = "icon-swall_f10"},/area/supply/dock) -"mm" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/supply/dock) -"mn" = (/obj/effect/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) -"mo" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/shuttle/floor,/area/supply/dock) -"mp" = (/turf/simulated/shuttle/floor,/area/supply/dock) -"mq" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/obj/effect/sign/movingparts{pixel_x = -32},/turf/simulated/shuttle/floor,/area/supply/dock) -"mr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) -"ms" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) -"mt" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) -"mu" = (/turf/space,/area/supply) -"mv" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/structure/plasticflaps,/turf/simulated/shuttle/floor,/area/supply/dock) -"mw" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 5},/turf/simulated/shuttle/floor,/area/supply/dock) -"mx" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/supply/dock) -"my" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/supply/dock) -"mz" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/supply/dock) -"mA" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/space,/area/supply/dock) -"mB" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/space,/area/supply/dock) -"mC" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/space,/area/supply/dock) +"fb" = (/obj/structure/stool/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"fc" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"fd" = (/obj/structure/shuttle/engine/heater{tag = "icon-heater (EAST)"; icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/shuttle/arrival/station) +"fe" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (WEST)"; icon_state = "propulsion"; dir = 8},/turf/space,/area/shuttle/arrival/station) +"ff" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2_sensor"},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) +"fg" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "on"; id = "n2_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{name = "n2 floor"; nitrogen = 100000; oxygen = 0},/area/atmos) +"fh" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/atmos) +"fi" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/simulated/floor,/area/atmos) +"fj" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/simulated/floor,/area/atmos) +"fk" = (/obj/machinery/atmospherics/trinary/filter{filter_type = 2; icon_state = "intact_on"; name = "Gas filter (N2)"; on = 1},/turf/simulated/floor,/area/atmos) +"fl" = (/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor,/area/atmos) +"fm" = (/obj/structure/closet/extinguisher{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/portables_connector,/turf/simulated/floor,/area/atmos) +"fn" = (/obj/structure/closet/firecloset,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/camera{c_tag = "Atmospherics Control Room"; dir = 4},/turf/simulated/floor,/area/atmos) +"fo" = (/obj/machinery/portable_atmospherics/pump,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) +"fp" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/shuttle/arrival/station) +"fq" = (/obj/effect/landmark{name = "Observer-Start"},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"fr" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/atmos) +"fs" = (/obj/machinery/atmospherics/valve,/turf/simulated/floor,/area/atmos) +"ft" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/station_alert,/turf/simulated/floor,/area/atmos) +"fu" = (/obj/machinery/light{dir = 4},/obj/machinery/portable_atmospherics/pump,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) +"fv" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f10"; icon_state = "swall_f10"; dir = 2},/area/shuttle/arrival/station) +"fw" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"fx" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide{filled = 1; valve_open = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) +"fy" = (/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) +"fz" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) +"fA" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "co2_in"; name = "CO2 Supply Control"; output_tag = "co2_out"; sensors = list("co2_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/atmos) +"fB" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor,/area/atmos) +"fC" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor{dir = 4; icon_state = "escape"},/area/atmos) +"fD" = (/obj/machinery/atmospherics/trinary/mixer{name = "Gas mixer (Mix/CO2)"; pixel_y = 1},/turf/simulated/floor,/area/atmos) +"fE" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/simulated/floor,/area/atmos) +"fF" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/simulated/floor,/area/atmos) +"fG" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/atmos_alert,/turf/simulated/floor,/area/atmos) +"fH" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/atmos) +"fI" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/shuttle/arrival/station) +"fJ" = (/turf/simulated/shuttle/wall{tag = "icon-swall13"; icon_state = "swall13"; dir = 2},/area/shuttle/arrival/station) +"fK" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"fL" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-burst_l (WEST)"; icon_state = "burst_l"; dir = 8},/turf/space,/area/shuttle/arrival/station) +"fM" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "co2_sensor"},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) +"fN" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "on"; id = "co2_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos) +"fO" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/turf/simulated/floor{dir = 8; icon_state = "escape"},/area/atmos) +"fP" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-g"},/turf/simulated/floor,/area/atmos) +"fQ" = (/obj/machinery/atmospherics/trinary/filter{filter_type = 3; icon_state = "intact_on"; name = "Gas filter (CO2)"; on = 1},/turf/simulated/floor,/area/atmos) +"fR" = (/obj/machinery/computer/general_air_control{frequency = 1441; name = "Supply Air Tank Monitor"; sensors = list("air_sensor" = "Air Mix", "n2_sensor" = "Nitrogen", "o2_sensor" = "Oxygen", "co2_sensor" = "Carbon Dioxide", "misc_sensor" = "Misc")},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor,/area/atmos) +"fS" = (/obj/structure/stool/chair{dir = 8},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/turf/simulated/floor,/area/atmos) +"fT" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/atmos) +"fU" = (/obj/machinery/door/unpowered/shuttle,/turf/simulated/shuttle/floor,/area/shuttle/arrival/station) +"fV" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/shuttle/arrival/station) +"fW" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/shuttle/arrival/station) +"fX" = (/obj/machinery/light{dir = 8},/turf/simulated/floor{dir = 8; icon_state = "redyellow"},/area/atmos) +"fY" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor,/area/atmos) +"fZ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor,/area/atmos) +"ga" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/turf/simulated/floor,/area/atmos) +"gb" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/turf/simulated/floor,/area/atmos) +"gc" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/general_air_control{frequency = 1441; name = "Distribution Monitor"; sensors = list("supply_meter" = "Supply", "scrubbers_meter" = "Scrubbers")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/atmos) +"gd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/turf/simulated/floor,/area/atmos) +"ge" = (/obj/machinery/light{dir = 4},/obj/structure/closet/wardrobe/atmospherics_yellow,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor,/area/atmos) +"gf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area) +"gg" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/floor/plating,/area) +"gh" = (/obj/machinery/portable_atmospherics/canister{filled = 0; name = "Canister \[Misc]"; valve_open = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) +"gi" = (/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) +"gj" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/vent_pump{dir = 4; external_pressure_bound = 0; frequency = 1441; icon_state = "in"; id_tag = "misc_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) +"gk" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/computer/general_air_control/large_tank_control{frequency = 1441; input_tag = "misc_in"; name = "Misc Supply Control"; output_tag = "misc_out"; sensors = list("misc_sensor" = "Tank")},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/turf/simulated/floor{icon_state = "caution"; dir = 8},/area/atmos) +"gl" = (/obj/machinery/atmospherics/valve{color = "yellow"; dir = 4; name = "Toxin safety valve"},/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor,/area/atmos) +"gm" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4; icon_state = "intact-y"},/obj/machinery/portable_atmospherics/canister/toxins,/turf/simulated/floor{icon_state = "caution"; dir = 4},/area/atmos) +"gn" = (/obj/machinery/atmospherics/trinary/mixer{pixel_y = 1},/turf/simulated/floor,/area/atmos) +"go" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor,/area/atmos) +"gp" = (/obj/machinery/vending/snack,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor,/area/atmos) +"gq" = (/obj/structure/window/reinforced,/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/simulated/floor,/area/atmos) +"gr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) +"gs" = (/turf/simulated/floor/plating,/area) +"gt" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "misc_sensor"},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) +"gu" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/unary/outlet_injector{dir = 4; frequency = 1441; icon_state = "on"; id = "misc_in"; on = 1; pixel_y = 1},/turf/simulated/floor/engine{carbon_dioxide = 0; name = "plasma floor"; nitrogen = 0; oxygen = 0; toxins = 70000},/area/atmos) +"gv" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/meter,/turf/simulated/floor{dir = 10; icon_state = "caution"},/area/atmos) +"gw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/closet/extinguisher{dir = 2; pixel_x = 0; pixel_y = -30},/turf/simulated/floor,/area/atmos) +"gx" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/camera{c_tag = "Atmospherics Aft"; dir = 1},/turf/simulated/floor,/area/atmos) +"gy" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2; icon_state = "intact-p"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/simulated/floor,/area/atmos) +"gz" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/simulated/floor,/area/atmos) +"gA" = (/obj/machinery/pipedispenser/disposal,/turf/simulated/floor,/area/atmos) +"gB" = (/obj/machinery/light,/obj/machinery/vending/cola,/obj/machinery/camera{c_tag = "Atmospherics Control Aft"; dir = 1},/turf/simulated/floor,/area/atmos) +"gC" = (/obj/structure/closet/extinguisher{dir = 2; pixel_x = 0; pixel_y = -30},/turf/simulated/floor,/area/atmos) +"gD" = (/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Atmos Delivery"; req_access_txt = "24"},/turf/simulated/floor{icon_state = "delivery"},/area/atmos) +"gE" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Atmospherics"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Atmos Delivery"; req_access_txt = "34"},/turf/simulated/floor{icon_state = "bot"},/area/atmos) +"gF" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) +"gG" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/wall/r_wall,/area) +"gH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area) +"gI" = (/obj/structure/grille,/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area) +"gJ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) +"gK" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 5; icon_state = "intact-p-f"},/turf/simulated/wall,/area/atmos) +"gL" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9; icon_state = "intact-p-f"},/turf/simulated/wall,/area/atmos) +"gM" = (/turf/simulated/wall,/area/maintenance/port) +"gN" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/paper_bin,/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) +"gO" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/pen,/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) +"gP" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/turf/simulated/floor,/area) +"gQ" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) +"gR" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/stamp,/obj/structure/window/basic{dir = 1},/turf/simulated/floor,/area) +"gS" = (/obj/machinery/door/window/eastleft{tag = "icon-left (NORTH)"; name = "Heads of Staff"; icon_state = "left"; dir = 1; req_access_txt = "19"},/turf/simulated/floor,/area) +"gT" = (/obj/machinery/computer/card,/turf/simulated/floor,/area) +"gU" = (/obj/machinery/computer/secure_data,/turf/simulated/floor,/area) +"gV" = (/turf/space,/area/supply/station) +"gW" = (/obj/machinery/requests_console,/turf/simulated/wall/r_wall,/area/maintenance/port) +"gX" = (/obj/machinery/door/airlock/command,/turf/simulated/floor,/area) +"gY" = (/turf/simulated/wall,/area/quartermaster/storage) +"gZ" = (/turf/simulated/wall,/area/quartermaster/qm) +"ha" = (/obj/machinery/door/airlock/glass_security{name = "Warden's Office"; req_access_txt = "3"},/turf/simulated/floor,/area) +"hb" = (/obj/machinery/disposal,/turf/simulated/floor,/area/quartermaster/storage) +"hc" = (/obj/machinery/autolathe,/turf/simulated/floor,/area/quartermaster/storage) +"hd" = (/turf/simulated/floor,/area/quartermaster/storage) +"he" = (/obj/machinery/light/spot{dir = 1},/turf/simulated/floor,/area/quartermaster/storage) +"hf" = (/obj/machinery/requests_console{department = "Quartermaster"; name = "Cargo Bay Requests Console"; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/storage) +"hg" = (/obj/machinery/power/apc{dir = 1; name = "Cargo Bay APC"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/storage) +"hh" = (/obj/machinery/power/apc{dir = 1; name = "Quartermaster APC"; pixel_x = 0; pixel_y = 24},/turf/simulated/floor,/area/quartermaster/qm) +"hi" = (/turf/simulated/floor,/area/quartermaster/qm) +"hj" = (/turf/simulated/floor/plating,/area/quartermaster/qm) +"hk" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/quartermaster/qm) +"hl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/quartermaster/qm) +"hm" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/qm) +"hn" = (/obj/structure/closet/secure_closet,/turf/simulated/floor,/area) +"ho" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor,/area/quartermaster/storage) +"hp" = (/obj/structure/closet/crate/freezer,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"hq" = (/obj/structure/closet/crate/internals,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"hr" = (/obj/structure/plasticflaps,/turf/simulated/floor,/area/quartermaster/qm) +"hs" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #1"},/obj/machinery/bot/mulebot{beacon_freq = 1400; home_destination = "QM #1"; suffix = "#1"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/qm) +"ht" = (/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/qm) +"hu" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/quartermaster/qm) +"hv" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/floor/plating,/area/quartermaster/qm) +"hw" = (/obj/machinery/computer/security,/turf/simulated/floor,/area) +"hx" = (/obj/structure/closet/secure_closet/brig,/turf/simulated/floor,/area) +"hy" = (/obj/structure/closet/wardrobe,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"hz" = (/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"hA" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "QM #2"},/obj/machinery/bot/mulebot{home_destination = "QM #2"; suffix = "#2"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/qm) +"hB" = (/obj/machinery/conveyor_switch{id = "QMonload"; name = "Sorting Conveyor Switch"},/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor,/area/quartermaster/qm) +"hC" = (/obj/structure/grille,/obj/effect/sign/securearea{name = "EXTERNAL AIRLOCK"; desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; pixel_x = -1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/quartermaster/qm) +"hD" = (/obj/machinery/vending/coffee,/turf/simulated/floor,/area) +"hE" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/storage) +"hF" = (/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"hG" = (/obj/machinery/light_switch{pixel_x = 24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/storage) +"hH" = (/obj/effect/sign/movingparts,/turf/simulated/wall,/area/quartermaster/qm) +"hI" = (/obj/machinery/door/airlock/glass_security{name = "Brig"; req_access_txt = "1"},/turf/simulated/floor,/area) +"hJ" = (/obj/machinery/conveyor{backwards = 2; dir = 2; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"hK" = (/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/quartermaster/storage) +"hL" = (/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/quartermaster/qm) +"hM" = (/obj/machinery/conveyor{backwards = null; dir = 2; forwards = null; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hN" = (/obj/structure/stool/chair{name = "Bailiff"},/turf/simulated/floor,/area) +"hO" = (/obj/machinery/door/airlock/maintenance,/turf/simulated/floor,/area/quartermaster/qm) +"hP" = (/obj/machinery/conveyor{backwards = 1; dir = 2; forwards = 2; id = "QMonload"},/turf/simulated/floor,/area/quartermaster/qm) +"hQ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"hR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) +"hS" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor,/area) +"hT" = (/obj/structure/table{step_y = 0},/turf/simulated/floor,/area) +"hU" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor,/area) +"hV" = (/obj/structure/closet/crate,/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/quartermaster/storage) +"hW" = (/obj/machinery/requests_console{department = "Quartermaster"; name = "Quartermaster Requests Console"; pixel_x = -24; pixel_y = 1},/turf/simulated/floor,/area/quartermaster/qm) +"hX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"hY" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) +"hZ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) +"ia" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor{icon_state = "grimy"},/area) +"ib" = (/obj/structure/window/reinforced{dir = 1},/obj/item/device/flashlight,/turf/simulated/floor{icon_state = "grimy"},/area) +"ic" = (/obj/structure/stool/bed,/turf/simulated/floor,/area) +"id" = (/obj/machinery/door/window/brigdoor/eastleft,/obj/machinery/door/window/brigdoor/westright,/turf/simulated/floor,/area) +"ie" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/storage) +"if" = (/obj/machinery/door_control{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor,/area/quartermaster/qm) +"ig" = (/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) +"ih" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "grimy"},/area) +"ii" = (/turf/simulated/floor{icon_state = "grimy"},/area) +"ij" = (/obj/item/weapon/cigpacket,/turf/simulated/floor{icon_state = "grimy"},/area) +"ik" = (/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/quartermaster/storage) +"il" = (/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) +"im" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "warning"},/area/quartermaster/storage) +"in" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/quartermaster/qm) +"io" = (/obj/machinery/conveyor{backwards = 4; dir = 5; forwards = 2; id = "QMonload"; reverseSpriteMoveDir = 1},/turf/simulated/floor,/area/quartermaster/qm) +"ip" = (/obj/machinery/conveyor{backwards = 1; dir = 2; forwards = 2; id = "QMonload"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor,/area/quartermaster/qm) +"iq" = (/turf/simulated/floor/plating{dir = 2; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) +"ir" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) +"is" = (/obj/machinery/door/window/westleft,/turf/simulated/floor{icon_state = "grimy"},/area) +"it" = (/obj/machinery/conveyor{backwards = 4; dir = 6; forwards = 1; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"iu" = (/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/storage) +"iv" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMoffload"},/turf/simulated/floor,/area/quartermaster/qm) +"iw" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) +"ix" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 9},/turf/simulated/floor,/area/quartermaster/qm) +"iy" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/machinery/diverter{dir = 5},/turf/simulated/floor,/area/quartermaster/qm) +"iz" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor,/area/quartermaster/qm) +"iA" = (/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) +"iB" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/turf/simulated/floor/plating,/area/quartermaster/qm) +"iC" = (/obj/machinery/vending/security,/turf/simulated/floor,/area) +"iD" = (/obj/structure/table/woodentable,/obj/item/device/detective_scanner,/turf/simulated/floor{icon_state = "grimy"},/area) +"iE" = (/obj/structure/closet/secure_closet/detective,/turf/simulated/floor{icon_state = "grimy"},/area) +"iF" = (/obj/machinery/door/airlock/security{name = "Security"; req_access = null; req_access_txt = "1"},/turf/simulated/floor,/area) +"iG" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) +"iH" = (/obj/effect/sign/movingparts{pixel_x = 32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/storage) +"iI" = (/obj/effect/sign/movingparts{pixel_x = -32; pixel_y = 0},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) +"iJ" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) +"iK" = (/obj/machinery/conveyor_switch{id = "QMshuttle"; name = "Shuttle conveyor switch"},/obj/effect/sign/movingparts{pixel_x = 32},/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/quartermaster/qm) +"iL" = (/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; tag = "icon-warnplate (EAST)"},/area/quartermaster/qm) +"iM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/sign/movingparts,/turf/simulated/floor/plating,/area/quartermaster/qm) +"iN" = (/turf/simulated/wall,/area/maintenance/apmaint) +"iO" = (/turf/simulated/wall,/area/maintenance/aft) +"iP" = (/obj/structure/plasticflaps,/turf/simulated/floor,/area/quartermaster/storage) +"iQ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #3"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) +"iR" = (/obj/machinery/door/airlock/glass,/turf/simulated/floor,/area/quartermaster/qm) +"iS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"iT" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/maintenance/starboard) +"iU" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/apmaint) +"iV" = (/turf/simulated/floor/plating,/area/maintenance/apmaint) +"iW" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/aft) +"iX" = (/turf/simulated/floor/plating,/area/maintenance/aft) +"iY" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; dir = 2; freq = 1400; location = "QM #4"},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/storage) +"iZ" = (/obj/machinery/conveyor_switch{id = "QMoffload"; name = "Cargo Bay Conveyor Switch"},/turf/simulated/floor,/area/quartermaster/qm) +"ja" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor,/area/quartermaster/qm) +"jb" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor,/area/quartermaster/qm) +"jc" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area/quartermaster/qm) +"jd" = (/obj/structure/table/reinforced,/obj/item/weapon/stamp/denied,/obj/item/weapon/stamp{name = "Quartermaster's stamp"; pixel_x = -3; pixel_y = 3},/turf/simulated/floor,/area/quartermaster/qm) +"je" = (/obj/machinery/disposal,/turf/simulated/floor,/area/quartermaster/qm) +"jf" = (/obj/machinery/vending/snack,/turf/simulated/floor,/area) +"jg" = (/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor,/area/quartermaster/storage) +"jh" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westright,/obj/machinery/door/window/eastleft,/turf/simulated/floor,/area/quartermaster/qm) +"ji" = (/obj/structure/stool/chair{dir = 8},/obj/effect/landmark/start{name = "Quartermaster"},/turf/simulated/floor,/area/quartermaster/qm) +"jj" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/simulated/floor,/area/quartermaster/qm) +"jk" = (/obj/structure/table/reinforced,/obj/machinery/door/window/westleft,/obj/machinery/door/window/eastright,/turf/simulated/floor,/area/quartermaster/qm) +"jl" = (/obj/structure/rack,/obj/item/clothing/suit/fire/firefighter,/obj/item/clothing/mask/gas,/obj/item/weapon/tank/emergency_oxygen,/obj/item/clothing/glasses/meson,/turf/simulated/floor,/area/quartermaster/qm) +"jm" = (/obj/structure/table,/turf/simulated/floor,/area/quartermaster/storage) +"jn" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/simulated/floor,/area/quartermaster/storage) +"jo" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/simulated/floor,/area/quartermaster/storage) +"jp" = (/obj/structure/table,/obj/item/weapon/crowbar,/turf/simulated/floor,/area/quartermaster/storage) +"jq" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/camera{c_tag = "Cargo Loading Area North"},/turf/simulated/floor,/area/quartermaster/storage) +"jr" = (/obj/structure/closet,/turf/simulated/floor,/area/quartermaster/qm) +"js" = (/obj/structure/rack,/turf/simulated/floor,/area/quartermaster/qm) +"jt" = (/obj/structure/closet/secure_closet/personal,/turf/simulated/floor,/area/quartermaster/qm) +"ju" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area) +"jv" = (/obj/structure/closet/secure_closet/captains,/turf/simulated/floor,/area) +"jw" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (EAST)"; icon_state = "wood_1tileendtable"; dir = 4},/obj/item/weapon/hand_tele,/turf/simulated/floor,/area) +"jx" = (/obj/structure/table/woodentable{tag = "icon-wood_1tilethick (EAST)"; icon_state = "wood_1tilethick"; dir = 4},/obj/item/weapon/camera_test,/turf/simulated/floor,/area) +"jy" = (/obj/structure/table/woodentable{tag = "icon-wood_1tileendtable (WEST)"; icon_state = "wood_1tileendtable"; dir = 8},/obj/item/weapon/coin,/turf/simulated/floor,/area) +"jz" = (/turf/simulated/wall,/area/crew_quarters/cafeteria) +"jA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jB" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jC" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jD" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jE" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jF" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jG" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/glass{name = "Cafeteria"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jH" = (/obj/machinery/computer/communications,/turf/simulated/floor,/area) +"jI" = (/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = "Streight"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jL" = (/obj/structure/stool/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jM" = (/obj/structure/table,/obj/machinery/light/spot{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jN" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = -8; pixel_y = 2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jO" = (/obj/structure/stool/chair{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jP" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 2; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jQ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jR" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"jS" = (/turf/simulated/floor{dir = 9; icon_state = "carpetside"},/area) +"jT" = (/turf/simulated/floor{dir = 1; icon_state = "carpetside"},/area) +"jU" = (/turf/simulated/floor{dir = 5; icon_state = "carpetside"},/area) +"jV" = (/turf/simulated/wall,/area/maintenance/asmaint) +"jW" = (/turf/simulated/floor/plating,/area/maintenance/asmaint) +"jX" = (/turf/simulated/wall/r_wall,/area/maintenance/asmaint) +"jY" = (/obj/machinery/computer/crew,/turf/simulated/floor,/area) +"jZ" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"ka" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kb" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kc" = (/turf/simulated/floor{dir = 8; icon_state = "carpetside"},/area) +"kd" = (/turf/simulated/floor{icon_state = "carpet"},/area) +"ke" = (/turf/simulated/floor{dir = 4; icon_state = "carpetside"},/area) +"kf" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kg" = (/obj/structure/table{tag = "icon-tabledir (SOUTHEAST)"; icon_state = "tabledir"; dir = 6},/turf/simulated/floor,/area) +"kh" = (/obj/structure/table{tag = "icon-tabledir (SOUTHWEST)"; icon_state = "tabledir"; dir = 10},/turf/simulated/floor,/area) +"ki" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/turf/simulated/floor,/area) +"kj" = (/obj/machinery/light/spot{dir = 8; layer = 2.8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kk" = (/obj/machinery/camera{c_tag = "Cafeteria Starboard"; dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kl" = (/obj/machinery/door{icon = 'icons/obj/doors/doormorgue.dmi'; name = "Crew Quarters"; req_access_txt = "0"},/turf/simulated/floor,/area) +"km" = (/turf/simulated/floor{dir = 10; icon_state = "carpetside"},/area) +"kn" = (/turf/simulated/floor{icon_state = "carpetside"},/area) +"ko" = (/turf/simulated/floor{dir = 6; icon_state = "carpetside"},/area) +"kp" = (/obj/machinery/computer/shuttle,/turf/simulated/floor,/area) +"kq" = (/obj/structure/table{dir = 5; icon_state = "tabledir"},/turf/simulated/floor,/area) +"kr" = (/obj/structure/table{tag = "icon-tabledir (NORTH)"; icon_state = "tabledir"; dir = 1},/turf/simulated/floor,/area) +"ks" = (/obj/structure/table{icon_state = "tabledir"; dir = 9},/turf/simulated/floor,/area) +"kt" = (/obj/item/weapon/mop,/turf/simulated/floor,/area) +"ku" = (/obj/machinery/camera{c_tag = "Cafeteria Port"; dir = 4},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kv" = (/obj/machinery/computer/station_alert,/turf/simulated/floor,/area) +"kw" = (/obj/structure/stool/chair{dir = 1},/turf/simulated/floor,/area) +"kx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"ky" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) +"kA" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/window/northleft{name = "Kitchen Delivery"; req_access_txt = "34;25;28"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "bot"},/area/crew_quarters/kitchen) +"kB" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "kitchen"; name = "Kitchen Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kC" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) +"kD" = (/turf/simulated/wall,/area/crew_quarters/kitchen) +"kE" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor,/area) +"kF" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "on"; on = 1},/obj/machinery/power/apc{dir = 8},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "bar"},/area/crew_quarters/cafeteria) +"kJ" = (/obj/machinery/door/window/southleft{name = "Kitchen Delivery"; req_access_txt = "25;28"},/turf/simulated/floor{icon_state = "delivery"},/area/crew_quarters/kitchen) +"kK" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/sink/kitchen2{pixel_y = 28},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kL" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kM" = (/obj/machinery/door_control{id = "kitchen"; name = "Kitchen Shutters"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kN" = (/obj/structure/closet/secure_closet/kitchen,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kO" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kP" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/item/weapon/zippo,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kQ" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kR" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kS" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor/shutters{density = 0; icon_state = "shutter0"; id = "bar"; name = "Bar Shutters"; opacity = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/wall,/area/crew_quarters/kitchen) +"kU" = (/obj/machinery/light_switch{dir = 8; pixel_x = -24; pixel_y = 6},/obj/machinery/light_switch{dir = 8; name = "light switch (Cafeteria)"; otherarea = "crew_quarters/cafeteria"; pixel_x = -24; pixel_y = -6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kV" = (/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kW" = (/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kX" = (/obj/structure/closet/secure_closet/fridge,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"kY" = (/obj/machinery/door_control{dir = 8; id = "bar"; name = "Bar Shutters"; pixel_x = -24; pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"kZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"la" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; icon_state = "on"; on = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lb" = (/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{req_access_txt = 1},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ld" = (/obj/structure/reagent_dispensers/beerkeg,/obj/structure/window/reinforced{dir = 4},/obj/machinery/light_switch{dir = 1; pixel_y = 24},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"le" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/table,/obj/machinery/microwave,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lf" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lg" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lh" = (/obj/machinery/light/spot{dir = 4; layer = 2.8},/obj/structure/closet/secure_closet/meat,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"li" = (/obj/machinery/smartfridge,/turf/simulated/wall,/area) +"lj" = (/obj/structure/closet/gmcloset,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lk" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ll" = (/obj/effect/landmark/start{name = "Bartender"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ln" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; icon_state = "out"; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lo" = (/obj/machinery/door/window/eastright{name = "Bar"; req_one_access_txt = "25"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = "90Curve"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lq" = (/obj/machinery/door/window/westleft{name = "Kitchen"; req_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lr" = (/obj/effect/landmark/start{name = "Chef"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"ls" = (/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock{name = "Freezer"; req_one_access_txt = "28"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lt" = (/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lu" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lv" = (/obj/machinery/door/airlock/maintenance_hatch,/turf/simulated/floor/plating,/area/maintenance/asmaint) +"lw" = (/obj/structure/closet/crate/internals,/turf/simulated/floor,/area) +"lx" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/projectile/shotgun,/obj/item/clothing/head/that,/obj/machinery/light/spot,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"ly" = (/obj/machinery/vending/boozeomat{pixel_x = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lz" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/barman_recipes{pixel_x = 4; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/shaker,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lA" = (/obj/structure/table/reinforced,/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lB" = (/obj/structure/table/reinforced,/obj/machinery/light/spot,/obj/machinery/requests_console{department = "Bar"; departmentType = 2; name = "Bar RC"; pixel_x = -1; pixel_y = -30},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lC" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/bar) +"lD" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 1; icon_state = "0-1"},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lE" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lF" = (/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; name = "Kitchen RC"; pixel_x = 0; pixel_y = -30},/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lG" = (/obj/item/weapon/storage/donkpocket_kit,/obj/structure/table,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/machinery/camera{c_tag = "Kitchen"; dir = 1},/obj/structure/table,/obj/machinery/processor,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lI" = (/obj/machinery/light/spot,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = "Streight"},/obj/structure/table,/obj/machinery/blender{pixel_y = 0},/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lJ" = (/obj/machinery/power/apc,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/machinery/juicer,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lK" = (/obj/machinery/chem_master/condimaster,/turf/simulated/floor{icon_state = "cafeteria"},/area/crew_quarters/kitchen) +"lL" = (/obj/structure/kitchenspike,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lM" = (/obj/machinery/gibber,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/kitchen) +"lN" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area) +"lO" = (/turf/simulated/wall/r_wall,/area/crew_quarters/bar) +"lP" = (/turf/simulated/wall/r_wall,/area/crew_quarters/kitchen) +"lQ" = (/turf/simulated/wall/r_wall,/area/maintenance/aft) +"lR" = (/turf/unsimulated/wall,/area/start) +"lS" = (/turf/space,/area/start) +"lT" = (/obj/effect/landmark/start,/turf/space,/area/start) +"lU" = (/turf/unsimulated/wall{icon = 'icons/misc/fullscreen.dmi'; icon_state = "titleold"; name = "Baystation 13"},/area/start) +"lV" = (/turf/space,/area/shuttle) +"lW" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s6"; icon_state = "swall_s6"; dir = 2},/area/supply/dock) +"lX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor/plating,/area/supply/dock) +"lY" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) +"lZ" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s10"; icon_state = "swall_s10"; dir = 2},/area/supply/dock) +"ma" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{tag = "icon-swall_f9"; icon_state = "swall_f9"; dir = 2},/area/supply/dock) +"mb" = (/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) +"mc" = (/turf/simulated/shuttle/floor,/turf/simulated/shuttle/wall{dir = 2; icon_state = "swall_f5"; tag = "icon-swall_f10"},/area/supply/dock) +"md" = (/turf/simulated/shuttle/wall{tag = "icon-swall3"; icon_state = "swall3"; dir = 2},/area/supply/dock) +"me" = (/obj/effect/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) +"mf" = (/obj/machinery/door/airlock/external{name = "Supply Dock Airlock"},/turf/simulated/shuttle/floor,/area/supply/dock) +"mg" = (/turf/simulated/shuttle/floor,/area/supply/dock) +"mh" = (/obj/effect/sign/movingparts{pixel_x = -32},/obj/effect/marker/supplymarker,/turf/simulated/shuttle/floor,/area/supply/dock) +"mi" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) +"mj" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) +"mk" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/supply/dock) +"ml" = (/turf/space,/area/supply) +"mm" = (/obj/machinery/conveyor{dir = 2; id = "QMshuttle"},/obj/effect/sign/movingparts{pixel_x = -32},/turf/simulated/shuttle/floor,/area/supply/dock) +"mn" = (/obj/machinery/door/poddoor{density = 1; icon_state = "pdoor1"; id = "QMLoaddoor"; name = "Supply Dock Loading Door"; opacity = 1},/obj/machinery/conveyor{dir = 8; id = "QMshuttle"},/obj/structure/plasticflaps,/turf/simulated/shuttle/floor,/area/supply/dock) +"mo" = (/obj/machinery/conveyor{backwards = 1; dir = 10; forwards = 8; id = "QMshuttle"},/turf/simulated/shuttle/floor,/area/supply/dock) +"mp" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s5"; icon_state = "swall_s5"; dir = 2},/area/supply/dock) +"mq" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/wall{tag = "icon-swall14"; icon_state = "swall14"; dir = 2},/area/supply/dock) +"mr" = (/turf/simulated/shuttle/wall{tag = "icon-swall_s9"; icon_state = "swall_s9"; dir = 2},/area/supply/dock) +"ms" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/space,/area/supply/dock) +"mt" = (/obj/structure/shuttle/engine/propulsion/burst,/turf/space,/area/supply/dock) +"mu" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/space,/area/supply/dock) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -744,51 +736,51 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdedgeidXejekelemeneodrepdgeqeresdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarasasasasasasasasasasasdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeteueveweueuexaaaaaacYdedgdgdgdgeyezeAeBeCdreDeEeFeGeHdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarararararararararararardbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeteIeueJeKeKeLeMeNeOePaaaacYdedgeQeReSeTeUeVeWeXdrdreYeZdrfadgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafbfcfdfefefffefgeKfhfiaaaacYdedgfjeRfkflfmfnenfofpfqdgfreGfsdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaftftftfufefefefefffefffvfhfiaaaacYdedgdgdgdgfwdreBeBeCfxfxfyeZdrfzdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaftftftfbfAfBfefefffeffeKfhfiaaaacYdedgfCfDfEfFfGfHfIeCfJfKfLeZeGfMdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaftftftfNfOfPfAfefefefQeKeOfRaaaacYdedgfSfDfTfUfVenenfWfxdrfXfYdrfZdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaftftftftftftfNfPgafPfPgbgcaaaaaacYdedgdgdgdggdgegfeBeCggghgidEgjgkdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaftftftftftftftglgmglftaaaaaaaaaacYdedggngogpgqgrgsgteCdrgudggvdrgwdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaftftftftgxgygxaaaaaaaaaaaacYdedggzgogAgBgCgDgEgFdrgGdggHgIgJgKcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababgLaXgMgMgNgmgOgMgMgMgPababcYdfdgdgdgdgdgdggQgRdgdgdgdgdgdgdgdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeOeJfbeKeKfceKfceKfdfeaaaacYdedgffeRfgfhfifjenfkflfmdgfneGfodgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafpeKeKeKeKfceKfcfqfdfeaaaacYdedgdgdgdgfrdreBeBeCfsfsfteZdrfudgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeOfvfweKeKfceKfceKfdfeaaaacYdedgfxfyfzfAfBfCfDeCfEfFfGeZeGfHdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafIfJeufveKeKeKfKeKeOfLaaaacYdedgfMfyfNfOfPenenfQfsdrfRfSdrfTdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafIeufUeueufVfWaaaaaacYdedgdgdgdgfXfYfZeBeCgagbgcdEgdgedgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagfgggfaaaaaaaaaaaacYdedgghgigjgkglgmgneCdrgodggpdrgqdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrgsgraaaaaaaaaaaacYdedggtgigugvgwgxgygzdrgAdggBgCgDgEcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababgFaXgGgGgHgggIgGgGgGgJababcYdfdgdgdgdgdgdggKgLdgdgdgdgdgdgdgdgcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRcRcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarararararararararararardbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababcYdfgScRcRcRcRcRcRcRcRarararararararcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegSgTgUgVgVgWgXgWgYarcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRcRcRcRcRarcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRgZhacRcRcRarcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaahbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahcdegSarhdarararararararararararararcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehehehehehehehfhfhfhfhfhfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRcRhgcRcRcRcRcRhgcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehhhihjhkhlhmhfhnhohohohfhphqhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRcRarcRcRcRcRcRarcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhuhjhjhjhvhwhjhxhyhzhohohAhphBhphBhbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRcRarcRhahCcRcRarcRhDarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhuhjhjhjhEhFhjhxhGhzhohHhfhphIhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRhJarararararararcRhDarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehKhjhjhLhLhMhehohohohNhfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegShtcRcRcRcRcRcRhOcRcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjhLhLhjhfhohohRhShfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRcRhTcRarararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjhjhjhjhUhohohRhShVdchWaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRcRhXhYhZarcRcRcRiacRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjibibhjhfhfichRhSiddcieaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRifigihigariicRcRijcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPhQhjibibhjikhfilimhShfdcddaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRinioioiparararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehPiqiriririshfhfitiuivhfiwixhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRcRiyioioioarcRcRcRijcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRheiziAiAiAiAiAiBiBiCiDiEiFiGiHiGiIhbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegScRcRiJiniKiLioariicRcRiacRcRiMcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhehKiNiNiNiNiOhfhfiPiQiRiSiTiUhrhshbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegSiMiViViViViViViViViViViViViViVcRcRcRiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWararararararararararararararcRcRcRiXiYhLhjhLhLhjiZhohohohojadcjbaaaahbhbhbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdedfcRjcjdjdjdjdjdjdjdjdjdjdjdjdjccRcRcRjejfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfiWararararararararararararararcRcRcRiXjghLhjhLhLhjhfjhhohojijadcjbaaaaaahbhbhbhbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYgSgScRiViViViViViViViViViViViViViVdadadaiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWjeiWarararararararararararararardadadahehjhjhjhLhLhjjjjkjlhojmjndcjbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjocRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhdcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhuhjjphjhLhLhjjqjrjshohohAdcjbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhdcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhuhjhjhjhjhjhjjthohohojujjdcjbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabararhdararararararararararararararcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhejvjwjxjyjvjzhfjAjBhojChfdcieaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajDcRcRcRcRcRcRcRcRcRcRcRarjEjFjGjHarjIjJjKjLjMjMjMjMjMjMjNjOjPjIarararararararariWjeiWardaarararararararararararararararhehehehehehehehfhfhfhUhfhfdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiajQcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjRjSjTjUjVjWjXjUjYjVjXjRjZkaarcRcRcRcRcRcRcRiWjfiWarcRariiiiiiariiiiiiariiiiiiarcRcRcRcRarkbkckckdarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakhcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjRjSjTjUkikijXjUkikijXjRkjkkarcRcRcRcRcRcRcRiWjfiWarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarklkmkmknarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahCcRcRhThThThTcRcRcRcRarcRcRcRcRarjRjSjTjUkikijXjUkikijXjRkjkoarcRcRcRcRcRcRcRiWjfiWarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarklkmkmknarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiahacRcRkpgVgVkqhZcRcRcRararkrarararksjSjTjRjRjRjRjRjRjRjRjRkjktarcRcRcRcRcRcRcRiWjfiWarcRararkuarararkuarararkuarararcRcRararkvkwkwkxarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakycRhXkzkAkAkBcRcRcRcRcRcRcRcRkCarkDjSjTjRjRjRjRjRjRjRjRjRkjjRarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRararcRcRararcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakEcRcRkFkFkFkFcRcRcRcRcRcRcRcRcRarjRkGjTjRkHkIkJkIkKkKkKkKkLkMarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiakNcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkOkPkQjRkRkMkSkTkUkUkUkUkVkWarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkXkYkZlalblcldlekUlflflfkUlgarcRcRcRcRcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarlhliljlklllmkUlnkUlflolpkUlqararlrararcRcRcRiWjfiWarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRkekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarlsltlulvlwlxlylzlAkUkUkUkUkUlBlClClDarcRcRcRiWjfiWiWiWiWiWiWiWiWiWiWiWiWiWiWiWlEkekekekekekekekekekekekekekekekfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiacRcRcRcRcRcRcRcRcRcRcRcRcRcRcRlFarlGlHlIlJlKlLlMlNlOlPlQlRlSlTkMlUlUlVarcRcRcRiWjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfjfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalWaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXgPablXlXlXlXlXlXlYlYlYlYlYlYlYlYlYlYlYlYabababablZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZlZkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgkgaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababababababababababababababcYdfgMcRcRcRcRcRcRcRcRarararararararcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMgNgOgPgPgQgRgQgSarcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRcRcRcRcRcRarcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRgTgUcRcRcRarcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRarcRcRcRcRcRcRarcRcRcRcRdbdcddaaaaaagVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagWdegMargXarararararararararararararcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYgYgYgYgYgYgYgZgZgZgZgZgZdcddaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRcRcRhacRcRcRcRcRhacRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhbhchdhehfhggZhhhihihigZhjhkhlhmgVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMhncRcRcRcRarcRcRcRcRcRarcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhohdhdhdhphqhdhrhshthihihuhjhvhjhvgVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMhncRcRcRcRarcRgUhwcRcRarcRhxarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRhohdhdhdhyhzhdhrhAhthihBgZhjhChlhmgVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMhncRcRcRhDarararararararcRhxarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhEhdhdhFhFhGgYhihihihHgZdcddaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMhncRcRcRcRcRcRhIcRcRcRcRcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhJhKhdhFhFhdgZhihihLhMgZdcddaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRcRcRhNcRarararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhJhKhdhdhdhdhOhihihLhPhQdchRaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRcRhShThUarcRcRcRgrcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhJhKhdhVhVhdgZgZhWhLhPhXdchYaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRhZiaibiaariccRcRidcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhJhKhdhVhVhdiegZifighPgZdcddaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRihiiiiijarararararcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhJikilililimgZgZinioipgZiqirhlhmgVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRcRisiiiiiiarcRcRcRidcRcRarcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYitiuiuiuiuiuiviviwixiyiziAiziAiBgVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMcRcRiCihiDiEiiariccRcRgrcRcRiFcRcRcRaraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarcRcRcRgYhEiGiGiGiGiHgZgZiIiJiKhQiLiMhlhmgVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdegMiFiNiNiNiNiNiNiNiNiNiNiNiNiNiNcRcRcRiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOararararararararararararararcRcRcRiPiQhFhdhFhFhdiRhihihihiiSdciTaaaagVgVgVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYdedfcRiUiViViViViViViViViViViViViUcRcRcRiWiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiOararararararararararararararcRcRcRiPiYhFhdhFhFhdgZiZhihijaiSdciTaaaaaagVgVgVgVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacYgMgMcRiNiNiNiNiNiNiNiNiNiNiNiNiNiNdadadaiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOiWiOarararararararararararararardadadagYhdhdhdhFhFhdjbjcjdhijehXdciTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjfcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRgXcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhohdjghdhFhFhdjhjijjhihihudciTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRgXcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRhohdhdhdhdhdhdjkhihihijljbdciTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabarargXararararararararararararararcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRgYjmjnjojpjmjqgZjrjshijtgZdciTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaajucRcRcRcRcRcRcRcRcRcRcRarjvjwjxjyarjzjAjBjCjDjDjDjDjDjDjEjFjGjzarararararararariOiWiOardaararararararararararararararargYgYgYgYgYgYgYgZgZgZhOgZgZdchYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrjHcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjIjJjKjLjMjNjOjLjPjMjOjIjQjRarcRcRcRcRcRcRcRiOiXiOarcRaricicicaricicicaricicicarcRcRcRcRarjSjTjTjUarcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrjYcRcRcRcRcRcRcRcRcRcRarcRcRcRcRarjIjJjKjLjZjZjOjLjZjZjOjIkakbarcRcRcRcRcRcRcRiOiXiOarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarkckdkdkearcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrhwcRcRhNhNhNhNcRcRcRcRarcRcRcRcRarjIjJjKjLjZjZjOjLjZjZjOjIkakfarcRcRcRcRcRcRcRiOiXiOarcRarcRcRcRarcRcRcRarcRcRcRarcRcRcRcRarkckdkdkearcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrgUcRcRkggPgPkhhUcRcRcRararkiarararkjjJjKjIjIjIjIjIjIjIjIjIkakkarcRcRcRcRcRcRcRiOiXiOarcRararklarararklarararklarararcRcRararkmknknkoarcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrkpcRhSkqkrkrkscRcRcRcRcRcRcRcRktarkujJjKjIjIjIjIjIjIjIjIjIkajIarcRcRcRcRcRcRcRiOiXiOarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRararcRcRararcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrkvcRcRkwkwkwkwcRcRcRcRcRcRcRcRcRarjIkxjKjIkykzkAkzkBkBkBkBkCkDarcRcRcRcRcRcRcRiOiXiOarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrkEcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkFkGkHjIkIkDkJkKkLkLkLkLkMkNarcRcRcRcRcRcRcRiOiXiOarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkOkPkQkRkSkTkUkVkLkWkWkWkLkXarcRcRcRcRcRcRcRiOiXiOarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRdacRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarkYkZlalblcldkLlekLkWlflgkLlhararliararcRcRcRiOiXiOarcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarcRcRcRcRjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRarljlklllmlnlolplqlrkLkLkLkLkLlsltltluarcRcRcRiOiXiOiOiOiOiOiOiOiOiOiOiOiOiOiOiOlvjVjVjVjVjVjVjVjVjVjVjVjVjVjVjVjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagrcRcRcRcRcRcRcRcRcRcRcRcRcRcRcRlwarlxlylzlAlBlClDlElFlGlHlIlJlKkDlLlLlMarcRcRcRiOiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXiXjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjWjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalNaXaXaXaXaXaXaXaXaXaXaXaXaXaXaXgJablOlOlOlOlOlOlPlPlPlPlPlPlPlPlPlPlPlPabababablQlQlQlQlQlQlQlQlQlQlQlQlQlQlQlQlQjXjXjXjXjXjXjXjXjXjXjXjXjXjXjXjXjXjXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -888,36 +880,36 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa "} (1,1,2) = {" -mamamamamamamamamamamamamamamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmbmbmbmbmbmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmambmbmambmambmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmambmbmambmbmbmbmambmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmbmbmcmbmbmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmamambmbmbmamambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmambmambmbmbmbmbmambmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmambmbmbmbmambmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmambmbmbmambmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmamamamambmamamamambmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mambmbmbmbmbmbmbmbmbmbmbmbmbmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mdmamamamamamamamamamamamamamaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmembmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -mbmbmbmbmbmbmbmbmbmbmbmbmbmbmbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlSlSlSlSlSlSlSlSlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlRlRlSlSlSlRlRlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlSlSlRlSlRlSlSlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlRlRlSlSlSlRlRlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlSlSlRlSlSlSlSlRlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlRlRlSlSlSlRlRlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlSlSlSlSlTlSlSlSlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlSlRlRlSlSlSlRlRlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlSlRlSlSlSlSlSlRlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlSlSlRlSlSlSlSlRlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlSlSlRlSlSlSlRlSlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlRlRlRlRlSlRlRlRlRlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lRlSlSlSlSlSlSlSlSlSlSlSlSlSlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lUlRlRlRlRlRlRlRlRlRlRlRlRlRlRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlVlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +lSlSlSlSlSlSlSlSlSlSlSlSlSlSlSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1697,22 +1689,22 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamemfmgmhmimeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmjmkmkmlmiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmnmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamompmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmqmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamrmsmkmkmkmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamtmsmkmkmkmtaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmsmkmkmkmmaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamrmsmkmkmkmraaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamtmsmkmkmkmtaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmqmkmkmkmmaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamvmwmkmkmkmmaaaamumumumumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaammmkmkmkmkmmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamxmymymymymzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamumumumumumumumumumumumumuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamemAmBmBmCmeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaameaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalVlWlXlYlZlVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalWmambmbmclZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamdmembmbmbmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamfmgmbmbmbmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamdmhmbmbmbmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamimjmbmbmbmiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamkmjmbmbmbmkaaaamlmlmlmlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamdmjmbmbmbmdaaaamlmlmlmlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamimjmbmbmbmiaaaamlmlmlmlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamkmjmbmbmbmkaaaamlmlmlmlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamdmmmbmbmbmdaaaamlmlmlmlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamnmombmbmbmdaaaamlmlmlmlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamdmbmbmbmbmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaampmqmqmqmqmraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaamlmlmlmlmlmlmlmlmlmlmlmlmlaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalVmsmtmtmulVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 0a70d83f571371001f3743c40eedc0ab85c12d85 Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Thu, 5 Jan 2012 15:37:02 +1000 Subject: [PATCH 7/8] re-adding fixed ul + new helper proc (get_opposite()) Signed-off-by: CaelAislinn --- code/defines/procs/helpers.dm | 18 ++++++++++++++++++ code/unused/Ultralight.dm | 6 ++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/code/defines/procs/helpers.dm b/code/defines/procs/helpers.dm index f40494225c..eb02b09a6d 100644 --- a/code/defines/procs/helpers.dm +++ b/code/defines/procs/helpers.dm @@ -1453,3 +1453,21 @@ proc/safepick(list/list) return return pick(list) +proc/get_opposite(var/checkdir) + switch(checkdir) + if(NORTH) + return SOUTH + if(SOUTH) + return NORTH + if(EAST) + return WEST + if(WEST) + return EAST + if(NORTHEAST) + return SOUTHWEST + if(NORTHWEST) + return SOUTHEAST + if(SOUTHEAST) + return NORTHWEST + if(SOUTHWEST) + return NORTHEAST \ No newline at end of file diff --git a/code/unused/Ultralight.dm b/code/unused/Ultralight.dm index bc30bd0621..9b9189c957 100644 --- a/code/unused/Ultralight.dm +++ b/code/unused/Ultralight.dm @@ -227,11 +227,13 @@ atom/proc/Del() return -atom/proc/movable/Move() +// formerly atom/proc/movable/Move(), this now overwrites other shit causing random inexplicable problems. +// need to find a way to plug it in to the root without overriding, might just do the snowflake treatment +/*atom/proc/Move() ul_Extinguish() ..() ul_Illuminate() - return + return*/ turf var From a6c6c44112c39f8e27a8c1e735e856c6c10e35ff Mon Sep 17 00:00:00 2001 From: CaelAislinn Date: Thu, 5 Jan 2012 22:03:43 +1000 Subject: [PATCH 8/8] ported z-levels from old bs12. ready for implementation into map/s Signed-off-by: CaelAislinn --- baystation12.dme | 2 + code/WorkInProgress/Cael_Aislinn/MultiZ.dm | 189 ++++++++++++++++++ code/WorkInProgress/Cael_Aislinn/multiz.dmi | Bin 0 -> 16001 bytes .../Cael_Aislinn/multiz_pipe.dmi | Bin 0 -> 1884 bytes 4 files changed, 191 insertions(+) create mode 100644 code/WorkInProgress/Cael_Aislinn/MultiZ.dm create mode 100644 code/WorkInProgress/Cael_Aislinn/multiz.dmi create mode 100644 code/WorkInProgress/Cael_Aislinn/multiz_pipe.dmi diff --git a/baystation12.dme b/baystation12.dme index f58c6eba48..f092d22a12 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -140,6 +140,7 @@ #define FILE_DIR "code/unused/pda2" #define FILE_DIR "code/unused/spacecraft" #define FILE_DIR "code/WorkInProgress" +#define FILE_DIR "code/WorkInProgress/Cael_Aislinn" #define FILE_DIR "code/WorkInProgress/mapload" #define FILE_DIR "code/WorkInProgress/Mini" #define FILE_DIR "code/WorkInProgress/organs" @@ -999,6 +1000,7 @@ #include "code\WorkInProgress\buildmode.dm" #include "code\WorkInProgress\detective_work.dm" #include "code\WorkInProgress\explosion_particles.dm" +#include "code\WorkInProgress\Cael_Aislinn\MultiZ.dm" #include "code\WorkInProgress\mapload\dmm_suite.dm" #include "code\WorkInProgress\mapload\reader.dm" #include "code\WorkInProgress\Mini\atmos_control.dm" diff --git a/code/WorkInProgress/Cael_Aislinn/MultiZ.dm b/code/WorkInProgress/Cael_Aislinn/MultiZ.dm new file mode 100644 index 0000000000..2e12e95b98 --- /dev/null +++ b/code/WorkInProgress/Cael_Aislinn/MultiZ.dm @@ -0,0 +1,189 @@ +/obj/multiz + icon = 'multiz.dmi' + density = 0 + opacity = 0 + anchored = 1 + var/istop = 1 + + CanPass(obj/mover, turf/source, height, airflow) + return airflow || !density + +/obj/multiz/proc/targetZ() + return src.z + (istop ? 1 : -1) + +/obj/multiz/ladder + icon_state = "ladderdown" + name = "ladder" + desc = "A Ladder. You climb up and down it." + +/obj/multiz/ladder/New() + ..() + if (!istop) + icon_state = "ladderup" + else + icon_state = "ladderdown" + +/obj/multiz/ladder/attack_paw(var/mob/M) + return attack_hand(M) + +/obj/multiz/ladder/attackby(var/W, var/mob/M) + return attack_hand(M) + +/obj/multiz/ladder/attack_hand(var/mob/M) + M.Move(locate(src.x, src.y, targetZ())) +/* +/obj/multiz/ladder/blob_act() + var/newblob = 1 + for(var/obj/blob in locate(src.x, src.y, targetZ())) + newblob = 0 + if(newblob) + new /obj/blob(locate(src.x, src.y, targetZ())) +*/ +//Stairs. var/dir on all four component objects should be the dir you'd walk from top to bottom +//active = bump to move down +//active/bottom = bump to move up +//enter = decorative downwards stairs +//enter/bottom = decorative upward stairs +/obj/multiz/stairs + name = "Stairs" + desc = "Stairs. You walk up and down them." + icon_state = "ramptop" + +/obj/multiz/stairs/New() + icon_state = istop ^ istype(src, /obj/multiz/stairs/active) ? "ramptop" : "rampbottom" + +/obj/multiz/stairs/enter/bottom + istop = 0 + +/obj/multiz/stairs/active + density = 1 + +/obj/multiz/stairs/active/Bumped(var/atom/movable/M) + if(istype(src, /obj/multiz/stairs/active/bottom) && !locate(/obj/multiz/stairs/enter) in M.loc) + return //If on bottom, only let them go up stairs if they've moved to the entry tile first. + //If it's the top, they can fall down just fine. + if(ismob(M) && M:client) + M:client.moving = 1 + M.Move(locate(src.x, src.y, targetZ())) + if (ismob(M) && M:client) + M:client.moving = 0 + +/obj/multiz/stairs/active/Click() + if(!istype(usr,/mob/dead/observer)) + return ..() + usr.client.moving = 1 + usr.Move(locate(src.x, src.y, targetZ())) + usr.client.moving = 0 +/obj/multiz/stairs/active/bottom + istop = 0 + opacity = 1 + +/turf/simulated/floor/open + name = "open space" + intact = 0 + icon_state = "open" + pathweight = 100000 //Seriously, don't try and path over this one numbnuts + var/icon/darkoverlays = null + var/turf/floorbelow + //floorstrength = 1 + mouse_opacity = 2 + + New() + ..() + spawn(1) + if(!istype(src, /turf/simulated/floor/open)) //This should not be needed but is. + return + floorbelow = locate(x, y, z + 1) + if(floorbelow) + //Fortunately, I've done this before. - Aryn + if(istype(floorbelow,/turf/space) || floorbelow.z > 4) + new/turf/space(src) + else if(!istype(floorbelow,/turf/simulated/floor)) + new/turf/simulated/floor/plating(src) + else + //if(ticker) + //find_zone() + update() + else + new/turf/space(src) + + Del() + . = ..() + + Enter(var/atom/movable/AM) + if (..()) //TODO make this check if gravity is active (future use) - Sukasa + spawn(1) + if(AM) + AM.Move(locate(x, y, z + 1)) + if (istype(AM, /mob)) + AM:bruteloss += 20 //You were totally doin it wrong. 5 damage? Really? - Aryn + AM:weakened = max(AM:weakened,5) + AM:updatehealth() + return ..() + + attackby() + //nothing + + proc/update() //Update the overlayss to make the openspace turf show what's down a level + if(!floorbelow) return + /*src.clearoverlays() + src.addoverlay(floorbelow) + for(var/obj/o in floorbelow.contents) + src.addoverlay(image(o, dir=o.dir, layer = TURF_LAYER+0.05*o.layer)) + var/image/I = image('ULIcons.dmi', "[min(max(floorbelow.LightLevelRed - 4, 0), 7)]-[min(max(floorbelow.LightLevelGreen - 4, 0), 7)]-[min(max(floorbelow.LightLevelBlue - 4, 0), 7)]") + I.layer = TURF_LAYER + 0.2 + src.addoverlay(I) + I = image('ULIcons.dmi', "1-1-1") + I.layer = TURF_LAYER + 0.2 + src.addoverlay(I)*/ + +var/maxZ = 1 +var/minZ = 1 + +// Maybe it's best to have this hardcoded for whatever we'd add to the map, in order to avoid exploits +// (such as mining base => admin station) +// Note that this assumes the ship's top is at z=1 and bottom at z=4 +/obj/item/weapon/tank/jetpack/proc/move_z(cardinal, mob/user as mob) + if (user.z > 1) + user << "\red There is nothing of interest in that direction." + return + if(allow_thrust(0.01, user)) + switch(cardinal) + if (UP) // Going up! + if(user.z > maxZ) // If we aren't at the very top of the ship + var/turf/T = locate(user.x, user.y, user.z - 1) + // You can only jetpack up if there's space above, and you're sitting on either hull (on the exterior), or space + //if(T && istype(T, /turf/space) && (istype(user.loc, /turf/space) || istype(user.loc, /turf/space/*/hull*/))) + //check through turf contents to make sure there's nothing blocking the way + if(T && istype(T, /turf/space)) + var/blocked = 0 + for(var/atom/A in T.contents) + if(T.density) + blocked = 1 + user << "\red You bump into [T.name]." + break + if(!blocked) + user.Move(T) + else + user << "\red You bump into the ship's plating." + else + user << "\red The ship's gravity well keeps you in orbit!" // Assuming the ship starts on z level 1, you don't want to go past it + + if (DOWN) // Going down! + if (user.z < 1) // If we aren't at the very bottom of the ship, or out in space + var/turf/T = locate(user.x, user.y, user.z + 1) + // You can only jetpack down if you're sitting on space and there's space down below, or hull + if(T && (istype(T, /turf/space) || istype(T, /turf/space/*/hull*/)) && istype(user.loc, /turf/space)) + var/blocked = 0 + for(var/atom/A in T.contents) + if(T.density) + blocked = 1 + user << "\red You bump into [T.name]." + break + if(!blocked) + user.Move(T) + else + user << "\red You bump into the ship's plating." + else + user << "\red The ship's gravity well keeps you in orbit!" + diff --git a/code/WorkInProgress/Cael_Aislinn/multiz.dmi b/code/WorkInProgress/Cael_Aislinn/multiz.dmi new file mode 100644 index 0000000000000000000000000000000000000000..8e7e6d03102a57200b9e6b50d6f1a1d404ab88f2 GIT binary patch literal 16001 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 M$*IfMN?U~eA6j_!IRF3v literal 0 HcmV?d00001 diff --git a/code/WorkInProgress/Cael_Aislinn/multiz_pipe.dmi b/code/WorkInProgress/Cael_Aislinn/multiz_pipe.dmi new file mode 100644 index 0000000000000000000000000000000000000000..a3bbbee0b282a47d18520c3dd92d38d190da1705 GIT binary patch literal 1884 zcmXAqc{H0@AII;LAYNl{EL8+mp^MSVXxfSdu^qJ)RjO%7Rn!_gAu?(yJruQ_(1{rx z)5BZ3Q>rD5r6|K#dLpRct)i$BMD%?+^T)lv<=lJj_uTvaoSWnB>YyN}B?kadaB?JH zfFt|+kd=Yw4y%AZIHV1q9Vhzg8MVGSchvdB(RclW zo{zlE{xYALJwABeq}LrTEM{l>9S6=28vh)X>#XX0K`l(J_`;XIjp8P}=c(JdaCyE7 zKa#5&<9Qp-nHB{uJ ztu-#smn!DFnr234cKU07cA09aTM<)ClZK}W(}S^7-l_CAWtK@_CL6mxe9*to(8dZT zCp)Vh?yPMt`MgT|rhCt|`vKEmbzqdhHVEU}*NyTdVi99?ig4W2bc|s5xKoB27pE4& z;o%0Fvk!B6Kt=%lRpL5g`gLl@r%y-YJmolnqr^0R@j{3n5b_!(=iYi>}R`8NsbD zzc-(!1%MmTv9ZNmakVjTVd44-Ar+u~{rx+6JjD5tjBx&=@Ix!{d;rGdJozsII7aH~ z>ctUJAA+iE-Y=;2Juy2iT5V)SL@1U9<)!2um1hTrByYCXEm7*^kX7XY{)CrrK0mKD z19C^4(kTtu_(A!nwkEY|K7?Ew5_5!fL$r z;_p1DXY7T!SS&74+S^*;=W&T?TeW+{SkI4W_`N=ft;WX2ObJ)LWw$#T>_40#6&aRu zx!qG!x?t|~sakocq#+7qVa**J9L(gAZd|L(aDGV!dv*T?T8@Oa!xIPttHHqu&$mRP zzC#C1^rJ81#n9Ws(fYR}U|!`A*g_WDUIP#Vn^RnXv1$I(T8^< z^u$mNHd=?OErxO{a)3L-+#FREs0jv60?vU{H9ZwEgzI8~yvG=J^fF3s3;8ii0ybkk4y;@nSeHPXQ)Cs=K>8 zabrP&c)-1&C$kFY65y-8D`5$2Rot!tpqEe6%=$HDC1vc^5A3C86QHfDn}7U|3nzao zO}{ekg0V`G1>1W&=9YsUePus}>W+R(IN*c$vo*7{v=o5XtK*hMy@|h+)i*TIf`d^@ zOG`V2@|sf2?Vn1xiRx1B#^X4(;Av(^!p1Lcs(#o?xaW0)a0I}OWs7&VNYbLNU@#oIj zYIm1WZVNSogM;7Rq0b@!K%r3fSMJt?l-K0gS3`YI?59?;0@|J&$7w0dx1`(2fPxKM zO!t*`j|Vtl|Z!w)Sd*nv1fIJwOIvM->~KfTUipnMa9s< zLpFvjAv)GD&xr>gocWh*qt|kpQ$5OA`eA(amqu>L13HlZxJ&BvV1h957oXlL$9p+$ zkRampbRLrZrpB%*2T>5-n=JY)aFlhd=iP1lZx5A5yXgS68!3`n1Qu4TJy~kh*(Rna zV)3RyoSY5>-&nK2)PH zc;gmlsk!|UkrcK0#>>C1u)gcgzOZy(q`~vtuShAFAf08@5R4