Bug fixes

This commit is contained in:
Markolie
2014-12-20 16:27:33 +01:00
parent 7c368adea6
commit da8115dc2e
19 changed files with 159 additions and 161 deletions
+4 -1
View File
@@ -145,7 +145,10 @@
Topic("aiDisable=7", list("aiDisable"="7"), 1)
return
/atom/proc/AICtrlClick()
/atom/proc/AICtrlClick(var/mob/living/silicon/ai/user)
if(user.holo)
var/obj/machinery/hologram/holopad/H = user.holo
H.face_atom(src)
return
/obj/machinery/door/airlock/AICtrlClick() // Bolts doors
+1
View File
@@ -56,6 +56,7 @@
#define FLOOR_BOT 3 // Floorbots
#define CLEAN_BOT 4 // Cleanbots
#define MED_BOT 5 // Medibots
var/bot_type_name = "Bot"
#define DEFAULT_SCAN_RANGE 7 //default view range for finding targets.
+2 -1
View File
@@ -41,6 +41,7 @@
radio_frequency = SRV_FREQ //Service
radio_name = "Service"
bot_type = CLEAN_BOT
bot_type_name = "Cleanbot"
bot_filter = RADIO_CLEANBOT
/obj/machinery/bot/cleanbot/New()
@@ -236,7 +237,7 @@ text("<A href='?src=\ref[src];power=1'>[on ? "On" : "Off"]</A>"))
icon_state = "cleanbot-c"
visible_message("<span class='notice'>[src] begins to clean up [target]</span>")
mode = BOT_CLEANING
spawn(50)
spawn(25)
if(mode == BOT_CLEANING)
qdel(target)
anchored = 0
+1
View File
@@ -36,6 +36,7 @@
radio_frequency = SEC_FREQ
radio_name = "Security"
bot_type = SEC_BOT
bot_type_name = "ED-209"
bot_filter = RADIO_SECBOT
//List of weapons that secbots will not arrest for
+19 -33
View File
@@ -52,6 +52,7 @@
radio_frequency = ENG_FREQ //Engineering channel
radio_name = "Engineering"
bot_type = FLOOR_BOT
bot_type_name = "Floorbot"
bot_filter = RADIO_FLOORBOT
var/process_type //Determines what to do when process_scan() recieves a target. See process_scan() for details.
#define HULL_BREACH 1
@@ -272,9 +273,9 @@
if(path.len == 0)
if(!istype(target, /turf/))
var/turf/TL = get_turf(target)
path = AStar(loc, TL, /turf/proc/AdjacentTurfsSpace, /turf/proc/Distance, 0, 30, id=botcard)
path = get_path_to(loc, TL, /turf/proc/AdjacentTurfsSpace, /turf/proc/Distance, 0, 30, id=botcard)
else
path = AStar(loc, target, /turf/proc/AdjacentTurfsSpace, /turf/proc/Distance, 0, 30, id=botcard)
path = get_path_to(loc, target, /turf/proc/AdjacentTurfsSpace, /turf/proc/Distance, 0, 30, id=botcard)
if(!bot_move(target))
add_to_ignore(target)
@@ -309,7 +310,7 @@
anchored = 0
mode = BOT_IDLE
target = null
path = new()
path = list()
return
oldloc = loc
@@ -346,9 +347,8 @@ obj/machinery/bot/floorbot/process_scan(var/scan_target)
result = F
if(FIX_TILE) //Selects only damaged floors.
F = scan_target
if(istype(F, /turf))
if(F.broken || F.burnt)
result = F
if(istype(F) && (F.broken || F.burnt))
result = F
if(TILE_EMAG) //Emag mode! Rip up the floor and cause breaches to space!
F = scan_target
if(!istype(F, /turf/simulated/floor/plating))
@@ -373,7 +373,7 @@ obj/machinery/bot/floorbot/process_scan(var/scan_target)
anchored = 1
icon_state = "floorbot-c"
if(istype(target_turf, /turf/space/)) //If we are fixing an area not part of pure space, it is
visible_message("<span class='notice'> [targetdirection ? "[src] begins installing a bridge plating." : "[src] begins to repair the hole."] </span>")
visible_message("<span class='notice'>[targetdirection ? "[src] begins installing a bridge plating." : "[src] begins to repair the hole."] </span>")
mode = BOT_REPAIRING
spawn(50)
if(mode == BOT_REPAIRING)
@@ -388,32 +388,18 @@ obj/machinery/bot/floorbot/process_scan(var/scan_target)
target = null
else
var/turf/simulated/floor/F = target_turf
if(F.burnt || F.broken)
mode = BOT_REPAIRING
visible_message("<span class='notice'> [src] begins repairing the floor.</span>")
spawn(50)
if(mode == BOT_REPAIRING)
F.burnt = 0
F.broken = 0
F.icon_state = "floor"
mode = BOT_IDLE
amount -= 1
updateicon()
anchored = 0
target = null
else
mode = BOT_REPAIRING
visible_message("<span class='notice'> [src] begins repairing the floor.</span>")
spawn(50)
if(mode == BOT_REPAIRING)
F.burnt = 0
F.broken = 0
target_turf.ChangeTurf(/turf/simulated/floor)
mode = BOT_IDLE
amount -= 1
updateicon()
anchored = 0
target = null
mode = BOT_REPAIRING
visible_message("<span class='notice'>[src] begins repairing the floor.</span>")
spawn(50)
if(mode == BOT_REPAIRING)
F.broken = 0
F.burnt = 0
F.ChangeTurf(/turf/simulated/floor)
mode = BOT_IDLE
amount -= 1
updateicon()
anchored = 0
target = null
/obj/machinery/bot/floorbot/proc/eattile(var/obj/item/stack/tile/plasteel/T)
if(!istype(T, /obj/item/stack/tile/plasteel))
+1
View File
@@ -41,6 +41,7 @@
var/treat_virus = 1 //If on, the bot will attempt to treat viral infections, curing them if possible.
var/shut_up = 0 //self explanatory :)
bot_type = MED_BOT
bot_type_name = "Medbot"
bot_filter = RADIO_MEDBOT
/obj/machinery/bot/medbot/syndicate
+1
View File
@@ -23,6 +23,7 @@ var/global/mulebot_count = 0
beacon_freq = 1400
control_freq = 1447
bot_type = MULE_BOT
bot_type_name = "MULEbot"
bot_filter = RADIO_MULEBOT
suffix = ""
+1
View File
@@ -28,6 +28,7 @@
radio_frequency = SEC_FREQ //Security channel
radio_name = "Security"
bot_type = SEC_BOT
bot_type_name = "Secbot"
bot_filter = RADIO_SECBOT
//List of weapons that secbots will not arrest for
+1 -1
View File
@@ -155,7 +155,7 @@
else
src << "\red You've failed to open an airlock for [target]"
return
/mob/living/silicon/ai/proc/ai_actual_track(mob/living/target as mob)
/mob/living/silicon/ai/proc/ai_actual_track(atom/target as mob|obj)
if(!istype(target)) return
var/mob/living/silicon/ai/U = usr
+29 -16
View File
@@ -81,13 +81,13 @@ var/const/HOLOPAD_MODE = 0
/*This is the proc for special two-way communication between AI and holopad/people talking near holopad.
For the other part of the code, check silicon say.dm. Particularly robot talk.*/
/obj/machinery/hologram/holopad/hear_talk(mob/living/M, text)
/obj/machinery/hologram/holopad/hear_talk(mob/living/M, text, verb)
if(M&&hologram&&master)//Master is mostly a safety in case lag hits or something.
if(!master.say_understands(M))//The AI will be able to understand most mobs talking through the holopad.
text = stars(text)
var/name_used = M.GetVoice()
//This communication is imperfect because the holopad "filters" voices and is only designed to connect to the master only.
var/rendered = "<i><span class='game say'>Holopad received, <span class='name'>[name_used]</span> <span class='message'>[M.say_quote(text)]</span></span></i>"
var/rendered = "<i><span class='game say'>Holopad received, <span class='name'>[name_used]</span> [verb], <span class='message'>\"[text]\"</span></span></i>"
master.show_message(rendered, 2)
return
@@ -101,7 +101,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
hologram.SetLuminosity(2) //hologram lighting
SetLuminosity(2) //pad lighting
icon_state = "holopad1"
A.current = src
A.holo = src
master = A//AI is the master.
use_power = 2//Active power usage.
return 1
@@ -109,8 +109,8 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
/obj/machinery/hologram/holopad/proc/clear_holo()
// hologram.SetLuminosity(0)//Clear lighting. //handled by the lighting controller when its ower is deleted
del(hologram)//Get rid of hologram.
if(master.current == src)
master.current = null
if(master.holo == src)
master.holo = null
master = null//Null the master, since no-one is using it now.
SetLuminosity(0) //pad lighting (hologram lighting will be handled automatically since its owner was deleted)
icon_state = "holopad0"
@@ -141,6 +141,25 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
hologram.loc = get_turf(master.eyeobj)
return 1
// Simple helper to face what you clicked on, in case it should be needed in more than one place
/obj/machinery/hologram/holopad/proc/face_atom(var/atom/A)
if( !hologram || !A || !hologram.x || !hologram.y || !A.x || !A.y ) return
var/dx = A.x - hologram.x
var/dy = A.y - hologram.y
if(!dx && !dy) // Wall items are graphically shifted but on the floor
if(A.pixel_y > 16) hologram.dir = NORTH
else if(A.pixel_y < -16)hologram.dir = SOUTH
else if(A.pixel_x > 16) hologram.dir = EAST
else if(A.pixel_x < -16)hologram.dir = WEST
return
if(abs(dx) < abs(dy))
if(dy > 0) hologram.dir = NORTH
else hologram.dir = SOUTH
else
if(dx > 0) hologram.dir = EAST
else hologram.dir = WEST
/*
* Hologram
@@ -153,23 +172,17 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
active_power_usage = 100
var/obj/effect/overlay/hologram//The projection itself. If there is one, the instrument is on, off otherwise.
/obj/machinery/hologram/power_change()
if (powered())
stat &= ~NOPOWER
else
stat |= ~NOPOWER
//Destruction procs.
/obj/machinery/hologram/ex_act(severity)
switch(severity)
if(1.0)
qdel(src)
del(src)
if(2.0)
if (prob(50))
qdel(src)
del(src)
if(3.0)
if (prob(5))
qdel(src)
del(src)
return
/obj/machinery/hologram/blob_act()
@@ -180,7 +193,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
del(src)
return
/obj/machinery/hologram/Destroy()
/obj/machinery/hologram/Del()
if(hologram)
src:clear_holo()
..()
@@ -213,4 +226,4 @@ Holographic project of everything else.
name = "hologram projector"
desc = "It makes a hologram appear...with magnets or something..."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "hologram0"
icon_state = "hologram0"
+1 -1
View File
@@ -81,7 +81,7 @@
var/obj/item/weapon/melee/baton/B = charging
if(B.bcell && B.bcell.charge < B.bcell.maxcharge)
B.bcell.charge += 1750
icon_state = "recharger1"
icon_state = icon_state_charging
use_power(2000)
else
icon_state = icon_state_charged
+16 -22
View File
@@ -12,13 +12,11 @@
/obj/item/stack/medical/attack(mob/living/carbon/M as mob, mob/user as mob)
if (!istype(M))
user << "\red \The [src] cannot be applied to [M]!"
user << "<span class='danger'>\The [src] cannot be applied to [M]!</span>"
return 1
if ( ! (istype(user, /mob/living/carbon/human) || \
istype(user, /mob/living/silicon) || \
istype(user, /mob/living/carbon/monkey) && ticker && ticker.mode.name == "monkey") )
user << "\red You don't have the dexterity to do this!"
if (!(istype(user, /mob/living/carbon/human) || istype(user, /mob/living/silicon) || istype(user, /mob/living/carbon/monkey) && ticker && ticker.mode.name == "monkey"))
user << "<span class='danger'>You don't have the dexterity to do this!</span>"
return 1
if (istype(M, /mob/living/carbon/human))
@@ -27,33 +25,30 @@
if(affecting.display_name == "head")
if(H.head && istype(H.head,/obj/item/clothing/head/helmet/space))
user << "\red You can't apply [src] through [H.head]!"
user << "<span class='danger'>You can't apply [src] through [H.head]!</span>"
return 1
else
if(H.wear_suit && istype(H.wear_suit,/obj/item/clothing/suit/space))
user << "\red You can't apply [src] through [H.wear_suit]!"
user << "<span class='danger'>You can't apply [src] through [H.wear_suit]!</span>"
return 1
if(affecting.status & ORGAN_ROBOT)
user << "\red This isn't useful at all on a robotic limb.."
user << "<span class='danger'>This can't be used on a robotic limb.</span>"
return 1
if(affecting.status & ORGAN_PEG)
user << "\red This isn't useful at all on a peg limb. It's fucking wood."
user << "<span class='danger'>This can't be used on a peg limb.</span>"
return 1
H.UpdateDamageIcon()
else
M.heal_organ_damage((src.heal_brute/2), (src.heal_burn/2))
user.visible_message( \
"\blue [M] has been applied with [src] by [user].", \
"\blue You apply \the [src] to [M]." \
)
user.visible_message("<span class='notice'>[M] has been applied with [src] by [user].</span>","<span class='notice'>You apply \the [src] to [M].</span>")
use(1)
M.updatehealth()
/obj/item/stack/medical/bruise_pack
name = "roll of gauze"
singular_name = "gauze length"
@@ -80,21 +75,19 @@
if (W.current_stage <= W.max_bleeding_stage)
user.visible_message( "\blue [user] bandages \the [W.desc] on [M]'s [affecting.display_name].", \
"\blue You bandage \the [W.desc] on [M]'s [affecting.display_name]." )
//H.add_side_effect("Itch")
else if (istype(W,/datum/wound/bruise))
user.visible_message( "\blue [user] places a bruise patch over \the [W.desc] on [M]'s [affecting.display_name].", \
"\blue You place a bruise patch over \the [W.desc] on [M]'s [affecting.display_name]." )
else
user.visible_message( "\blue [user] places a bandaid over \the [W.desc] on [M]'s [affecting.display_name].", \
"\blue You place a bandaid over \the [W.desc] on [M]'s [affecting.display_name]." )
use(1)
else
if (can_operate(H)) //Checks if mob is lying down on table for surgery
if (do_surgery(H,user,src))
return
else
user << "<span class='notice'>The [affecting.display_name] is cut open, you'll need more than a bandage!</span>"
affecting.heal_damage(src.heal_brute, src.heal_burn, 0)
use(1)
else
M.heal_organ_damage((src.heal_brute/2), (src.heal_burn/2))
use(1)
/obj/item/stack/medical/ointment
name = "ointment"
desc = "Used to treat those nasty burns."
@@ -119,6 +112,7 @@
else
user.visible_message( "\blue [user] salves the wounds on [M]'s [affecting.display_name].", \
"\blue You salve the wounds on [M]'s [affecting.display_name]." )
affecting.heal_damage(src.heal_brute, src.heal_burn, 0)
use(1)
else
if (can_operate(H)) //Checks if mob is lying down on table for surgery
+3 -3
View File
@@ -307,9 +307,9 @@ datum/preferences
dat += "<table><tr><td width='340px' height='300px' valign='top'>"
dat += "<h2>General Settings</h2>"
dat += "<b>UI Style:</b> <a href='?_src_=prefs;preference=ui'><b>[UI_style]</b></a><br>"
dat += "<b>Custom UI</b>(recommended for White UI):<br>"
dat += "-Color: <a href='?_src_=prefs;preference=UIcolor'><b>[UI_style_color]</b></a> <table style='display:inline;' bgcolor='[UI_style_color]'><tr><td>__</td></tr></table><br>"
dat += "-Alpha(transparence): <a href='?_src_=prefs;preference=UIalpha'><b>[UI_style_alpha]</b></a><br>"
dat += "<b>Custom UI settings:</b><br>"
dat += "<b>Color:</b> <a href='?_src_=prefs;preference=UIcolor'><b>[UI_style_color]</b></a> <table style='display:inline;' bgcolor='[UI_style_color]'><tr><td>__</td></tr></table><br>"
dat += "<b>Alpha (transparency):</b> <a href='?_src_=prefs;preference=UIalpha'><b>[UI_style_alpha]</b></a><br>"
dat += "<b>Play admin midis:</b> <a href='?_src_=prefs;preference=hear_midis'><b>[(sound & SOUND_MIDI) ? "Yes" : "No"]</b></a><br>"
dat += "<b>Play lobby music:</b> <a href='?_src_=prefs;preference=lobby_music'><b>[(sound & SOUND_LOBBY) ? "Yes" : "No"]</b></a><br>"
dat += "<b>Randomized Character Slot:</b> <a href='?_src_=prefs;preference=randomslot'><b>[randomslot ? "Yes" : "No"]</b></a><br>"
+2 -2
View File
@@ -148,10 +148,10 @@
var/UI_style_new = input(usr, "Select a style, we recommend White for customization") in list("White", "Midnight", "Orange", "old")
if(!UI_style_new) return
var/UI_style_alpha_new = input(usr, "Select a new alpha(transparence) parametr for UI, between 50 and 255") as num
var/UI_style_alpha_new = input(usr, "Select a new alpha (transparency) parameter for UI, between 50 and 255") as num
if(!UI_style_alpha_new | !(UI_style_alpha_new <= 255 && UI_style_alpha_new >= 50)) return
var/UI_style_color_new = input(usr, "Choose your UI color, dark colors are not recommended!") as color|null
var/UI_style_color_new = input(usr, "Choose your UI color. Dark colors are not recommended!") as color|null
if(!UI_style_color_new) return
//update UI
+11 -3
View File
@@ -451,6 +451,13 @@ var/list/ai_list = list()
A.ai_actual_track(target)
return
if (href_list["trackbot"])
var/obj/machinery/bot/target = locate(href_list["trackbot"]) in aibots
var/mob/living/silicon/ai/A = locate(href_list["track2"]) in mob_list
if(A && target)
A.ai_actual_track(target)
return
if (href_list["callbot"]) //Command a bot to move to a selected location.
Bot = locate(href_list["callbot"]) in aibots
if(!Bot || Bot.remote_disabled || src.control_disabled)
@@ -578,17 +585,18 @@ var/list/ai_list = list()
var/d
var/area/bot_area
d += "<A HREF=?src=\ref[src];botrefresh=\ref[Bot]>Query network status</A><br>"
d += "<table width='100%'><tr><td width='40%'><h3>Name</h3></td><td width='30%'><h3>Status</h3></td><td width='30%'><h3>Location</h3></td><td width='10%'><h3>Control</h3></td></tr>"
d += "<table width='100%'><tr><td width='40%'><h3>Name</h3></td><td width='20%'><h3>Status</h3></td><td width='30%'><h3>Location</h3></td><td width='10%'><h3>Control</h3></td></tr>"
for (Bot in aibots)
if(Bot.z == ai_Zlevel && !Bot.remote_disabled) //Only non-emagged bots on the same Z-level are detected!
bot_area = get_area(Bot)
d += "<tr><td width='30%'>[Bot.hacked ? "<span class='bad'>(!) </span>[Bot.name]" : Bot.name]</td>"
d += "<tr><td width='30%'>[Bot.hacked ? "<span class='bad'>(!) </span>[Bot.name]" : Bot.name] ([Bot.bot_type_name])</td>"
//If the bot is on, it will display the bot's current mode status. If the bot is not mode, it will just report "Idle". "Inactive if it is not on at all.
d += "<td width='30%'>[Bot.on ? "[Bot.mode ? "<span class='average'>[ Bot.mode_name[Bot.mode] ]</span>": "<span class='good'>Idle</span>"]" : "<span class='bad'>Inactive</span>"]</td>"
d += "<td width='20%'>[Bot.on ? "[Bot.mode ? "<span class='average'>[ Bot.mode_name[Bot.mode] ]</span>": "<span class='good'>Idle</span>"]" : "<span class='bad'>Inactive</span>"]</td>"
d += "<td width='30%'>[bot_area.name]</td>"
d += "<td width='10%'><A HREF=?src=\ref[src];interface=\ref[Bot]>Interface</A></td>"
d += "<td width='10%'><A HREF=?src=\ref[src];callbot=\ref[Bot]>Call</A></td>"
d += "<td width='10%'><a href='byond://?src=\ref[src];track2=\ref[src];trackbot=\ref[Bot]'>Track</A></td>"
d += "</tr>"
d = format_text(d)
@@ -49,9 +49,8 @@
if(ai.client)
ai.client.eye = src
//Holopad
if(istype(ai.current, /obj/machinery/hologram/holopad))
var/obj/machinery/hologram/holopad/H = ai.current
H.move_hologram()
if(ai.holo)
ai.holo.move_hologram()
/mob/aiEye/Move()
@@ -66,6 +65,7 @@
var/sprint = 10
var/cooldown = 0
var/acceleration = 1
var/obj/machinery/hologram/holopad/holo = null
// Intiliaze the eye by assigning it's "ai" variable to us. Then set it's loc to us.
@@ -2662,18 +2662,6 @@ datum
..()
return
Del()
if (istype(holder.my_atom,/mob/living))
var/mob/living/M as mob
var/to_remove = 0
if (holder.has_reagent("anti_toxin"))
to_remove = min(holder.get_reagent_amount("anti_toxin"),data)
holder.remove_reagent("anti_toxin", to_remove, 0)
data -= to_remove
if(M)
M.adjustToxLoss((data-1)*rand(2,4))
..()
psilocybin
name = "Psilocybin"
id = "psilocybin"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

After

Width:  |  Height:  |  Size: 10 KiB

+63 -63
View File
@@ -1199,7 +1199,7 @@
"axc" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office)
"axd" = (/obj/machinery/photocopier,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office)
"axe" = (/obj/structure/filingcabinet/chestdrawer,/turf/simulated/floor{icon_state = "floorgrime"},/area/security/detectives_office)
"axf" = (/obj/structure/grille,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"axf" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"axg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/maintenance/fsmaint)
"axh" = (/obj/structure/table/woodentable,/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/wood,/area/crew_quarters/mrchangs)
"axi" = (/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/crew_quarters/mrchangs)
@@ -3763,7 +3763,7 @@
"bus" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/bluegrid,/area/assembly/chargebay)
"but" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/assembly/chargebay)
"buu" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; level = 2; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor,/area/assembly/chargebay)
"buv" = (/obj/random/tool,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"buv" = (/obj/structure/closet/bombcloset,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor{dir = 10; icon_state = "whitepurple"},/area/toxins/mixing)
"buw" = (/obj/effect/decal/warning_stripes/north,/turf/simulated/floor,/area/assembly/robotics)
"bux" = (/obj/machinery/mecha_part_fabricator,/obj/effect/decal/warning_stripes/north,/turf/simulated/floor,/area/assembly/robotics)
"buy" = (/obj/machinery/mecha_part_fabricator,/obj/effect/decal/warning_stripes/northeast,/turf/simulated/floor,/area/assembly/robotics)
@@ -4536,7 +4536,7 @@
"bJl" = (/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/hor)
"bJm" = (/obj/structure/lamarr,/turf/simulated/floor{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/crew_quarters/hor)
"bJn" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/shuttle/plating,/area)
"bJo" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"bJo" = (/obj/structure/closet/l3closet/scientist,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/window/plasmareinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 6; icon_state = "whitepurple"},/area/toxins/mixing)
"bJp" = (/obj/machinery/computer/shuttle_control/research{req_access = null; req_access_txt = "65"},/turf/simulated/floor{dir = 4; icon_state = "whitebluecorner"},/area/medical/research{name = "Research Division"})
"bJq" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area)
"bJr" = (/obj/machinery/conveyor_switch/oneway{id = "QMLoad2"},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/quartermaster/storage)
@@ -4917,7 +4917,7 @@
"bQC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/medical/genetics)
"bQD" = (/obj/machinery/light,/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor{tag = "icon-whitepurple (SOUTHEAST)"; icon_state = "whitepurple"; dir = 6},/area/medical/genetics)
"bQE" = (/obj/machinery/power/apc{dir = 1; name = "Telescience Pad APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/engine,/area/toxins/telescipad)
"bQF" = (/obj/item/device/radio/intercom{pixel_y = 25},/turf/simulated/floor/engine,/area/toxins/telescipad)
"bQF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/toxins/mixing)
"bQG" = (/turf/simulated/floor/engine,/area/toxins/telescipad)
"bQH" = (/obj/machinery/camera{c_tag = "Research Telescience Telepad"; dir = 2; network = list("Telepad","Research","SS13"); pixel_x = 0},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor/engine,/area/toxins/telescipad)
"bQI" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/engine,/area/toxins/telescipad)
@@ -5075,7 +5075,7 @@
"bTE" = (/obj/effect/decal/cleanable/oil,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/storage)
"bTF" = (/mob/living/simple_animal/corgi/Ian/borgi,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics)
"bTG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/extinguisher_cabinet{pixel_x = -24},/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"})
"bTH" = (/obj/structure/closet/l3closet/scientist,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/window/plasmareinforced{dir = 4},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 6; icon_state = "whitepurple"},/area/toxins/mixing)
"bTH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/light,/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/toxins/mixing)
"bTI" = (/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/airlock/research{name = "Research Division Access"; req_access_txt = "47"},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
"bTJ" = (/obj/effect/decal/warning_stripes/west,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
"bTK" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{dir = 5; icon_state = "whitehall"},/area/medical/research{name = "Research Division"})
@@ -5087,8 +5087,8 @@
"bTQ" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bTR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
"bTS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bTT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/toxins/mixing)
"bTU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 2; icon_state = "whitepurple"},/area/toxins/mixing)
"bTT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"bTU" = (/obj/machinery/vending/hydroseeds,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"bTV" = (/obj/structure/table,/obj/machinery/power/apc{dir = 8; name = "Toxins Research APC"; pixel_x = -25},/obj/structure/cable,/obj/item/weapon/storage/toolbox/mechanical,/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bTW" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/toxins/telesci)
"bTX" = (/obj/machinery/atmospherics/valve,/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
@@ -5138,8 +5138,8 @@
"bUP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "telescienceblast"; name = "test chamber blast doors"; opacity = 0},/turf/simulated/floor/engine,/area/toxins/telesci)
"bUQ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "telescienceblast"; name = "test chamber blast doors"; opacity = 0},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/engine,/area/toxins/telesci)
"bUR" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/southeastcorner,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
"bUS" = (/obj/structure/closet/wardrobe/toxins_white,/turf/simulated/floor{dir = 9; icon_state = "whitepurple"},/area/toxins/mixing)
"bUT" = (/obj/structure/closet/wardrobe/toxins_white,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/mixing)
"bUS" = (/obj/machinery/atmospherics/portables_connector{layer = 2},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor{dir = 5; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bUT" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/light{dir = 8},/obj/machinery/power/apc{dir = 1; name = "Xenoflora Laboratory APC"; pixel_x = -1; pixel_y = 26},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bUU" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bUV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area)
"bUW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area)
@@ -5249,14 +5249,14 @@
"bWW" = (/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bWX" = (/obj/structure/closet/l3closet/scientist,/obj/structure/window/plasmareinforced{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitepurple"},/area/toxins/mixing)
"bWY" = (/obj/effect/decal/warning_stripes/northwestcorner,/turf/simulated/floor{dir = 4; icon_state = "warnwhitecorner"; tag = "icon-warnwhitecorner (EAST)"},/area/toxins/mixing)
"bWZ" = (/obj/machinery/vending/hydroseeds,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"bWZ" = (/obj/structure/closet/secure_closet/hydroponics{req_access = list(47)},/obj/machinery/light{dir = 1; on = 1},/obj/machinery/light_switch{pixel_x = 27; pixel_y = 0},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{dir = 5; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"bXa" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"bXb" = (/obj/structure/table,/obj/item/weapon/storage/box/botanydisk,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bXc" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bXd" = (/obj/machinery/botany/editor,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bXe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bXf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bXg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "7"},/turf/simulated/floor,/area/toxins/mixing)
"bXg" = (/obj/structure/table,/obj/machinery/alarm{pixel_y = 25},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"bXh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/toxins/mixing)
"bXi" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor,/area/toxins/mixing)
"bXj" = (/obj/machinery/doppler_array{dir = 4},/turf/simulated/floor,/area/toxins/mixing)
@@ -5326,14 +5326,14 @@
"bYv" = (/obj/machinery/vending/snack,/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"bYw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"bYx" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/toxins/mixing)
"bYy" = (/obj/structure/closet/bombcloset,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor{dir = 10; icon_state = "whitepurple"},/area/toxins/mixing)
"bYy" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"bYz" = (/obj/machinery/atmospherics/portables_connector{layer = 2},/obj/machinery/portable_atmospherics/hydroponics{closed_system = 1; name = "isolation tray"},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bYA" = (/obj/machinery/atmospherics/portables_connector{layer = 2},/obj/machinery/light_switch{pixel_x = -6; pixel_y = 26},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor{dir = 5; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bYA" = (/obj/machinery/atmospherics/pipe/simple/insulated,/obj/machinery/camera{c_tag = "Research Toxins Mixing North"; dir = 2; network = list("Research","SS13"); pixel_x = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bYB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor/border_only,/obj/machinery/door/airlock/research{name = "Xenobiology Research"; req_access_txt = "47"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"bYC" = (/obj/machinery/power/apc{dir = 8; name = "East Bump"; pixel_x = -26; pixel_y = 3},/obj/structure/disposalpipe/trunk,/obj/machinery/disposal,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/light{dir = 8},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"bYC" = (/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 28},/turf/simulated/floor/engine,/area/toxins/telescipad)
"bYD" = (/obj/structure/closet/secure_closet/hydroponics{req_access = list(47)},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"bYE" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"bYF" = (/obj/structure/closet/secure_closet/hydroponics{req_access = list(47)},/obj/machinery/light{dir = 1; on = 1},/obj/machinery/light_switch{pixel_x = 27; pixel_y = 0},/turf/simulated/floor{dir = 5; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"bYF" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/obj/machinery/door/poddoor{id = "ToxinsVenting"; name = "Toxins Venting Bay Door"; use_power = 0},/turf/simulated/floor/engine,/area)
"bYG" = (/obj/structure/closet/crate/hydroponics/prespawned,/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"bYH" = (/obj/machinery/disposal,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -30; pixel_y = 0},/obj/structure/disposalpipe/trunk,/turf/simulated/floor{tag = "icon-warningcorner"; icon_state = "warningcorner"; dir = 2},/area/toxins/mixing)
"bYI" = (/turf/simulated/floor{icon_state = "warning"},/area/toxins/mixing)
@@ -5411,7 +5411,7 @@
"cac" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cad" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cae" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"caf" = (/obj/structure/table,/obj/machinery/alarm{pixel_y = 25},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"caf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1; in_use = 1},/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cag" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; level = 2; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cah" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cai" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/valve,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
@@ -5554,7 +5554,7 @@
"ccP" = (/obj/machinery/telepad_cargo,/turf/simulated/floor{icon_state = "white"},/area/toxins/telesci)
"ccQ" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0; pixel_y = 0},/obj/item/device/multitool{pixel_x = 3},/turf/simulated/floor{icon_state = "white"},/area/toxins/telesci)
"ccR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{dir = 8; icon_state = "whitegreencorner"},/area/medical/research{name = "Research Division"})
"ccS" = (/obj/machinery/atmospherics/pipe/simple/insulated,/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"ccS" = (/obj/machinery/portable_atmospherics/pump,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/camera{c_tag = "Research Toxins Mixing East"; dir = 2; network = list("Research","SS13"); pixel_x = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"ccT" = (/obj/machinery/light,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/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{dir = 2; icon_state = "whitegreencorner"},/area/medical/research{name = "Research Division"})
"ccU" = (/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; dir = 8; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/meter,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"ccV" = (/obj/item/device/assembly/prox_sensor{pixel_x = -5; pixel_y = -5},/obj/item/device/assembly/prox_sensor{pixel_x = -4; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = 5; pixel_y = 5},/obj/structure/table,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor{pixel_x = -5; pixel_y = -5},/obj/item/device/assembly/prox_sensor,/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
@@ -5624,7 +5624,7 @@
"ceh" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/wrapsortjunction{dir = 1},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cei" = (/obj/machinery/atmospherics/pipe/vent,/turf/simulated/floor/plating/airless,/area)
"cej" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cek" = (/obj/machinery/door/poddoor{id = "ToxinsVenting"; name = "Toxins Venting Bay Door"; use_power = 0},/turf/simulated/floor/engine,/area)
"cek" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "7"},/turf/simulated/floor,/area/toxins/mixing)
"cel" = (/obj/machinery/atmospherics/pipe/simple/insulated,/turf/simulated/wall/r_wall,/area)
"cem" = (/obj/structure/dispenser,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cen" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
@@ -5703,10 +5703,10 @@
"cfI" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cfJ" = (/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; dir = 1; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfK" = (/obj/machinery/atmospherics/binary/pump/highcap{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1; in_use = 1},/obj/item/device/radio/intercom{pixel_y = 25},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfL" = (/obj/structure/closet/bombcloset,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor{dir = 8; icon_state = "whitepurple"},/area/toxins/mixing)
"cfM" = (/obj/machinery/atmospherics/binary/pump/highcap,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfN" = (/obj/machinery/door_control{id = "ToxinsVenting"; name = "Toxin Venting Control"; pixel_x = -8; pixel_y = 26},/obj/machinery/ignition_switch{id = "ToxinsIgnitor"; pixel_x = 6; pixel_y = 25},/obj/machinery/computer/general_air_control{frequency = 1222; name = "Bomb Mix Monitor"; sensors = list("burn_sensor" = "Burn Mix")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfO" = (/obj/machinery/portable_atmospherics/pump,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfO" = (/obj/structure/closet/wardrobe/toxins_white,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 28},/turf/simulated/floor{dir = 9; icon_state = "whitepurple"},/area/toxins/mixing)
"cfP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light{dir = 1; in_use = 1},/obj/machinery/atmospherics/unary/cold_sink/freezer,/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfQ" = (/obj/machinery/atmospherics/valve,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
"cfR" = (/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/mixing)
@@ -5773,7 +5773,7 @@
"cha" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 2; name = "hazard door south"},/turf/simulated/floor{dir = 2; icon_state = "whitegreen"; tag = "icon-whitehall (WEST)"},/area/toxins/xenobiology)
"chb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
"chc" = (/obj/machinery/light/small{dir = 4},/obj/effect/decal/warning_stripes/northeastcorner,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
"chd" = (/obj/structure/closet/bombcloset,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "whitepurple"},/area/toxins/mixing)
"chd" = (/obj/structure/closet/wardrobe/toxins_white,/obj/machinery/camera{c_tag = "Research Toxins Mixing West"; dir = 2; network = list("Research","SS13"); pixel_x = 0},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/mixing)
"che" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"chf" = (/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitehall"},/area/medical/research{name = "Research Division"})
"chg" = (/obj/effect/decal/warning_stripes/northwestcorner,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/mixing)
@@ -5880,8 +5880,8 @@
"cjd" = (/obj/structure/closet/l3closet,/obj/item/clothing/mask/gas,/turf/simulated/floor{dir = 0; icon_state = "blue"},/area/medical/biostorage)
"cje" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/structure/closet/l3closet,/obj/item/clothing/mask/gas,/turf/simulated/floor{icon_state = "blue"; dir = 6},/area/medical/biostorage)
"cjf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area)
"cjg" = (/obj/structure/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/mixing)
"cjh" = (/obj/structure/rack,/obj/machinery/light{dir = 1; in_use = 1},/obj/structure/window/plasmareinforced{dir = 4},/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/turf/simulated/floor{dir = 5; icon_state = "whitepurple"},/area/toxins/mixing)
"cjg" = (/obj/structure/rack,/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/obj/machinery/light{dir = 1; in_use = 1},/turf/simulated/floor{dir = 1; icon_state = "whitepurple"},/area/toxins/mixing)
"cjh" = (/obj/structure/rack,/obj/structure/window/plasmareinforced{dir = 4},/obj/item/weapon/extinguisher,/obj/item/clothing/mask/gas,/turf/simulated/floor{dir = 5; icon_state = "whitepurple"},/area/toxins/mixing)
"cji" = (/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; dir = 4; icon_state = "manifold-b-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cjj" = (/obj/machinery/power/apc{dir = 8; name = "Aft Starboard Solar APC"; pixel_x = -26; pixel_y = 3},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/solar/starboard)
"cjk" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/solar/starboard)
@@ -6030,14 +6030,14 @@
"clX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery)
"clY" = (/obj/machinery/iv_drip,/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; dir = 4; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor{icon_state = "white"},/area/medical/surgery)
"clZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/obj/machinery/door/airlock/maintenance,/turf/simulated/floor/plating,/area/maintenance/asmaint)
"cma" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"cma" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/simulated/floor{icon_state = "white"},/area/medical/research{name = "Research Division"})
"cmb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora_storage)
"cmc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_xeno_inner"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple{icon_state = "intact"; level = 2},/turf/simulated/floor/plating,/area/solar/starboard)
"cmd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cme" = (/obj/machinery/door/airlock/research{name = "Xenoflora Storage"; req_access_txt = "47"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cme" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/camera{c_tag = "Research Xenoflora Storage"; dir = 4; network = list("Research","SS13"); pixel_y = -22},/turf/simulated/floor{dir = 8; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"cmf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"cmg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"cmh" = (/obj/machinery/door/airlock/research{name = "Xenoflora Research"; req_access_txt = "47"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cmh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/research{name = "Xenoflora Storage"; req_access_txt = "47"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora_storage)
"cmi" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; level = 2; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor/engine,/area/engine/mechanic_workshop)
"cmj" = (/turf/simulated/floor/engine,/area/engine/mechanic_workshop)
"cmk" = (/obj/machinery/atmospherics/unary/vent_pump{on = 0},/turf/simulated/floor/engine,/area/engine/mechanic_workshop)
@@ -6129,7 +6129,7 @@
"cnS" = (/obj/structure/closet/l3closet/scientist,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 4; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/toxins/xenobiology)
"cnT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "solar_xeno_outer"; locked = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/simulated/floor/plating,/area/solar/starboard)
"cnU" = (/obj/machinery/atmospherics/binary/pump/highcap{dir = 8; name = "Isolation to Waste"; target_pressure = 101.325},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"cnV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"cnV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/research{name = "Xenoflora Research"; req_access_txt = "47"},/turf/simulated/floor{icon_state = "white"},/area/rnd/xenobiology/xenoflora)
"cnW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"cnX" = (/obj/structure/table,/obj/item/device/analyzer/plant_analyzer,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"cnY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/simulated/floor/plating,/area/maintenance/aft)
@@ -6179,7 +6179,7 @@
"coQ" = (/obj/structure/closet/l3closet/scientist,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{dir = 6; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTHEAST)"},/area/toxins/xenobiology)
"coR" = (/obj/machinery/atmospherics/pipe/vent{dir = 8},/turf/simulated/floor/plating/airless,/area)
"coS" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless,/area/toxins/test_area)
"coT" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{dir = 6; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"coT" = (/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 1; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"coU" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 4},/turf/simulated/floor/engine,/area/toxins/mixing)
"coV" = (/obj/machinery/atmospherics/pipe/simple/heat_exchanging{dir = 9},/turf/simulated/floor/engine,/area/toxins/mixing)
"coW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/maintenance/aft)
@@ -6321,7 +6321,7 @@
"crC" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"crD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"crE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"crF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/toxins/xenobiology)
"crF" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Research Xenoflora Laboratory East"; dir = 8; network = list("Research","SS13")},/turf/simulated/floor{dir = 6; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"crG" = (/obj/machinery/atmospherics/pipe/manifold{_color = "blue"; icon_state = "manifold-b-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"crH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"crI" = (/turf/simulated/floor/plating/airless,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk3"; icon_state = "catwalk3"},/area/solar/port)
@@ -6360,7 +6360,7 @@
"csp" = (/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"csq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/disposalpipe/segment,/turf/simulated/floor{dir = 10; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"csr" = (/turf/simulated/floor/plating/airless,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk12"; icon_state = "catwalk12"},/area/solar/starboard)
"css" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"css" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora_storage)
"cst" = (/obj/structure/closet,/turf/simulated/floor{icon_state = "floorgrime"},/area/assembly/assembly_line)
"csu" = (/turf/simulated/floor,/area/assembly/assembly_line)
"csv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor,/area/assembly/assembly_line)
@@ -6816,8 +6816,8 @@
"cBd" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = "10;13"},/obj/machinery/atmospherics/pipe/simple{dir = 6; icon_state = "intact"; level = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating,/area/solar/starboard)
"cBe" = (/obj/machinery/door/window/eastright{base_state = "right"; dir = 1; icon_state = "right"; name = "Xenoflora Containment"; req_access_txt = "47"},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cBf" = (/obj/structure/window/reinforced{dir = 1},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cBg" = (/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cBh" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "xeno_airlock_control"; name = "Xenobiology Access Button"; pixel_x = -24; pixel_y = 0; req_access_txt = "55"},/obj/machinery/door/airlock/research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "xeno_airlock_exterior"; locked = 1; name = "Xenobiology External Airlock"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cBg" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora)
"cBh" = (/obj/machinery/camera{c_tag = "Research Xenoflora Laboratory West"; dir = 4; network = list("Research","SS13"); pixel_y = -22},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cBi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 1; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cBj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor{dir = 9; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cBk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
@@ -6999,8 +6999,8 @@
"cEE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "xenobio6"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/disposalpipe/segment,/obj/structure/cable,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"cEF" = (/obj/machinery/door/window/southright{name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "xenobio6"; name = "Containment Blast Doors"; opacity = 0},/turf/simulated/floor/engine,/area/toxins/xenobiology)
"cEG" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "xenobio6"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"cEH" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/machinery/light,/turf/simulated/floor/plating,/area/toxins/xenobiology)
"cEI" = (/turf/simulated/floor{dir = 6; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"cEH" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "xeno_airlock_control"; name = "Xenobiology Access Button"; pixel_x = -24; pixel_y = 0; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "xeno_airlock_exterior"; locked = 1; name = "Xenobiology External Airlock"; req_access_txt = "55"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cEI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/machinery/light,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora)
"cEJ" = (/obj/machinery/power/smes{charge = 0; chargelevel = 0},/obj/structure/cable,/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/engine/reactor_core)
"cEK" = (/obj/machinery/light{dir = 1},/obj/machinery/alarm{pixel_x = 0; pixel_y = 24},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor,/area/engine/reactor_core)
"cEL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/engine/reactor_core)
@@ -7184,8 +7184,8 @@
"cIh" = (/obj/machinery/vending/snack,/turf/simulated/floor{icon_state = "white"},/area/medical/virology/lab)
"cIi" = (/obj/structure/flora/kirbyplants,/turf/simulated/floor{icon_state = "white"},/area/medical/virology/lab)
"cIj" = (/turf/simulated/floor{dir = 10; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"cIk" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area)
"cIl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area)
"cIk" = (/obj/machinery/hologram/holopad,/turf/simulated/floor{dir = 6; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora_storage)
"cIl" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/obj/machinery/light,/turf/simulated/floor/plating,/area/rnd/xenobiology/xenoflora_storage)
"cIm" = (/obj/machinery/atmospherics/pipe/manifold{_color = "cyan"; dir = 8; icon_state = "manifold-c"; initialize_directions = 11; level = 2},/turf/simulated/floor/plating,/area/engine/reactor_core)
"cIn" = (/obj/machinery/atmospherics/pipe/manifold{_color = "cyan"; dir = 4; icon_state = "manifold-c"; initialize_directions = 11; level = 2},/turf/simulated/floor/plating,/area/engine/reactor_core)
"cIo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/plating,/area/engine/reactor_core)
@@ -7225,7 +7225,7 @@
"cIW" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/engine{carbon_dioxide = 50000; name = "co2 floor"; nitrogen = 0; oxygen = 0},/area/atmos)
"cIX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area)
"cIY" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard_medi"; name = "Quarantine Lockdown"; opacity = 0},/turf/simulated/floor/plating,/area)
"cIZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area)
"cIZ" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area)
"cJa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cJb" = (/turf/simulated/floor/plating/airless,/obj/structure/cable,/obj/machinery/power/tracker,/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk1"; icon_state = "catwalk1"},/area/solar/starboard)
"cJc" = (/turf/space,/area/vox_station/southwest_solars)
@@ -7292,10 +7292,10 @@
"cKl" = (/obj/machinery/biogenerator,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora)
"cKm" = (/obj/machinery/light,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/simulated/floor{dir = 10; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cKn" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/light,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cKo" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cKo" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area)
"cKp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cKq" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/obj/machinery/light{dir = 8},/turf/simulated/floor{dir = 10; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cKr" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/light_switch{pixel_y = -22},/obj/machinery/light,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cKr" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Biohazard"; name = "Biohazard Shutter"; opacity = 0},/turf/simulated/floor/plating,/area)
"cKs" = (/obj/machinery/atmospherics/portables_connector{dir = 8},/obj/machinery/portable_atmospherics/hydroponics{closed_system = 1; name = "isolation tray"},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cKt" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor/plating,/area/engine/reactor_core)
"cKu" = (/obj/machinery/atmospherics/pipe/simple{_color = "cyan"; dir = 4; icon_state = "intact-c"; level = 2},/turf/simulated/floor/plating,/area/engine/reactor_core)
@@ -7326,7 +7326,7 @@
"cKT" = (/obj/machinery/atmospherics/pipe/simple{_color = "green"; dir = 9; icon_state = "intact-g"; level = 2},/turf/simulated/floor,/area/atmos)
"cKU" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple{_color = "cyan"; dir = 9; icon_state = "intact-c"; level = 2},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "atmos"; name = "Atmos Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area)
"cKV" = (/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/reagent_containers/glass/bucket,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{dir = 6; icon_state = "whitegreen"},/area/rnd/xenobiology/xenoflora)
"cKW" = (/obj/machinery/door/airlock/research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "xeno_airlock_interior"; locked = 1; name = "Xenobiology Internal Airlock"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "xeno_airlock_control"; name = "Xenobiology Access Button"; pixel_x = -28; pixel_y = 8; req_access_txt = "55"},/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cKW" = (/obj/machinery/portable_atmospherics/hydroponics,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cKX" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_xeno_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = "13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk3"; icon_state = "catwalk3"},/area/solar/starboard)
"cKY" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/obj/machinery/camera{c_tag = "Engineering Supermatter Engine West"; dir = 4; network = list("Supermatter","SS13")},/turf/simulated/floor/plating,/area/engine/reactor_core)
"cKZ" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple{_color = "cyan"; icon_state = "intact-c"; level = 2},/turf/simulated/floor/plating,/area/engine/reactor_core)
@@ -7417,7 +7417,7 @@
"cMG" = (/obj/machinery/driver_button{id = "chapelgun"; name = "Chapel Mass Driver"; pixel_x = 25},/turf/simulated/floor/wood,/area/chapel/main)
"cMH" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/decal/cleanable/cobweb2,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cMI" = (/obj/effect/decal/cleanable/generic,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cMJ" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cMJ" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/light,/turf/simulated/floor,/area/rnd/xenobiology/xenoflora_storage)
"cMK" = (/obj/random/bomb_supply,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cML" = (/obj/structure/rack,/obj/random/toolbox,/obj/random/tech_supply,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cMM" = (/obj/effect/decal/cleanable/oil,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
@@ -7431,7 +7431,7 @@
"cMU" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_in_meter"; name = "Mixed Air Tank In"},/turf/simulated/wall/r_wall,/area/atmos)
"cMV" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{frequency = 1443; id = "mair_out_meter"; name = "Mixed Air Tank Out"},/turf/simulated/wall/r_wall,/area/atmos)
"cMW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/grille{density = 0; icon_state = "brokengrille"},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/item/weapon/shard,/obj/item/stack/rods,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cMX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/stack/sheet/cardboard,/turf/simulated/floor/plating,/area/maintenance/asmaint2)
"cMX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "xeno_airlock_control"; name = "Xenobiology Access Button"; pixel_x = -28; pixel_y = 8; req_access_txt = "55"},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/border_only{dir = 4; name = "Firelock East"},/obj/machinery/door/airlock/research{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "xeno_airlock_interior"; locked = 1; name = "Xenobiology Internal Airlock"; req_access_txt = "55"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology)
"cMY" = (/obj/machinery/atmospherics/portables_connector{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister,/turf/simulated/floor/plating,/area/engine/reactor_core)
"cMZ" = (/obj/machinery/light,/turf/simulated/floor/plating,/area/engine/reactor_core)
"cNa" = (/obj/machinery/atmospherics/unary/cold_sink/freezer{current_temperature = 5; dir = 1},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/engine/reactor_core)
@@ -12642,32 +12642,32 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbx
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabtjbtjbtjbtjbtjbtjbtjbtjbtjbtjbtjbtjbtjaaabDibnPbnQbnQbnQbnSbnQbnQaaibDmbDnbDobDpbnRaolbDrbDsaSKaaqbDtbDubDvbDwbDxbDybDzbDAbDBbDCbDDbDybDEbDFbDGbDHbDIaaqbDJbpubBHbaubAcaaibDKbDLeHibDNbDOabnbDPbDQbDRbhmacfbDSbDTbhmbDUbDVbDWaaibDXbDYbDZbEabEbbEbbEcbEdbEebpubEfaaiaaqbEgbjYbEhbEiaaqbCebEjaaqbEkbElbCjbEmaaqbCebEnbEoaaqaaqaaqaoyaaqaaqaaqbEpamzaaqaaiaaibEqaaqaaqaaiaaiaaqaaKaaqaaqaaqaaqaaqaaqaaqbErbEsaClaaqbEtbEubEvbEwbEwbExbEybEzbEAbEBbECbEDbEEbEFbEGbEGbEHbCQbEIaaibEJbEKbELbEMaaibENaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhQbhQbhQbhQbhQbhQbhQbhQbhQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazTaaiaaiaaiaoNaoPazTaoNaoPaaiaoNaoPaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaztaolaolaolaolaolbEQbERbESbETbEUbEVbEWbqBbEXbqBbEYbzVbEZbqBbzObqBbFabjYbwMbpubFbbFcbFdaaibFebFfbFgbFhbFiabnbFjbFkbFlbFmbFnbFobFpbFqbFrbFsbFtaaibFubFvbFwbFwbFxbFybFzaaibFAbFBbyObFCbFDbFEbFFbFGbFHbFIbFJbCfbjYbFKbFUbFMbFNbjYbCebEnbEobFObFPbZTbZLbFSbFTbWPbFVbFWaaqbFXbFYbFZbGabGbbGcbGdbCVbGebEwbEwbGfbGgbEwbGhbGibGjbGkbGlbEwbGmbGnbGobGpbGqbGraaiabnaaiaaiaaibBjaaiaaibBkbBmaaibGsbGtbGubGvbGwbGxbGybGzaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaabAbbGBbGCbZKbGCbGCbGDbGEbGFbGGbGEbGHbZKbGCbGIbGCbGJbGCamzbGKbqBbGLbqBbEYbGMbGNbGObzObGPbGQcjnbwMbpubGSbGTbAcaaibGUbGVbGWbDLbGXabnbGYbGZbHaaaibHbbHcbHdacDbHebHfbHgaaibHhbHibHjbHkbFxbFybFzaaibHlbHmbHnbHobHpbHqbHrbHsbHtbHubHvbHwaaqaaqbHxbHyaaqaaqbCebEnbEobjYbHzbHAbHAbHAbHBbHAbHCbHDbHEbHFbHGbHHbHHbHIbHJbHKbHLbHMbCQbCQbHNbCQbHObCQbHPbCQbHQbHRbHRbHSbHTbHUbHVbHWbHXbHYbHZbIabIbaaibIcbIdaaaaaaaaaaaibIebIfbIgbIhbIibIjbIkaaiaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaabaubIlbGCbGCbGCbGCbGCbGEbImbInbGEbGCbGCbGCbGIbGCbGJbGCamzbIobIpbIqbIrbIsbItbIubIvbIwbZybIybjYbwMbpubIzaaqaaqaaiaaiaaiaaiaaibIAabnaaibIBabnacDabnbICaaiaaiaaiaaiaaiaaiabnaaiaaiaaiaaiaaiaaiaaibIDbpubIEbowaaqbIFbIGaaqaaqbCebIHbIIbFHbIJbIKbILbIMbINbFJbIObIPbIQbIRbISbISbISbITbISbIUbIVbIWbIXbIYbIZbFZbJaaaiaaiaaiaaiaaiaaibJbaaiaaiaaiaaKbJcaaqaaqbJdbJebJfbJgbHVbJhbJibJjbJkbJlbJmaaibIcbJnaaaaaaaaaaaibJobJpaaibDeaaiaaibDeaaiaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaabaubIlbGCbGCbGCbGCbGCbGEbImbInbGEbGCbGCbGCbGIbGCbGJbGCamzbIobIpbIqbIrbIsbItbIubIvbIwbZybIybjYbwMbpubIzaaqaaqaaiaaiaaiaaiaaibIAabnaaibIBabnacDabnbICaaiaaiaaiaaiaaiaaiabnaaiaaiaaiaaiaaiaaiaaibIDbpubIEbowaaqbIFbIGaaqaaqbCebIHbIIbFHbIJbIKbILbIMbINbFJbIObIPbIQbIRbISbISbISbITbISbIUbIVbIWbIXbIYbIZbFZbJaaaiaaiaaiaaiaaiaaibJbaaiaaiaaiaaKbJcaaqaaqbJdbJebJfbJgbHVbJhbJibJjbJkbJlbJmaaibIcbJnaaaaaaaaaaaicmabJpaaibDeaaiaaibDeaaiaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbJqaoOaCmbJrbJsbGCbGCbGCbGCbGCbGCbGCbGCbGCbGCbGCbGIbGCbGJbJtaztaolaolaolaolaolaolbJubEVaaqaaqaaqaaqbwMbpubJvbJwbJxbJybJzbJAbJBbJCbJDbJEbJFbJGbJHbJIbJJbJKbJLbJMbJNbJObJPbJObJQbJRbJSboubJTbpubJUbJVbJWbpubJXaaqbXVbJZbKabKbbKcbCebKdbKebKfbKgbKhbKibKjbKkbKlbKmbKnaaqbKobKpbKqbKrbKsbHAbKtbKuaaqbKvbFZbFZbFZbKwaaibKxbKybKzbKAbKBbKCbKDbKEaaibKFbKGbKHaaqaaqbKIbJfbKJbKKbKLbKMbKNbKObKPbKQaaibKRaaiaaaaaaaaaaaiaaiaaiaaiaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPmaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbKSbKTbKSbKUbKUbKUbKUbKUbKUbKUbKUbKUbKUbKUbKUbKUbKVbKUbKWbKUbKXbKYbKZbLabLbbLcbLdbLebLfbLgbLhbLhaaqbwMbLibLjbpubpubyObLkboubJSbJRbLlbLmbLlbLnbLobLobLpbLqbLrbLobLobLsbLobLtbLobJRbJSboubLubLvbLwbLxbLybLzbpuaaqbLAbJZbLBbLCbLDbCebLEbLFbLGbLHbLIbLJbLKbLLbCebLMbLNaaqaaqbLObLPbLQbLRbLSbLTbLUaaqbLVbLWbFZbLXbLYaaibKxbLZbMabMbbMcbMdbMebMfaaibMgbKGejnejnaaqbMicehbMkbMlbMmbMnbMobMpbMqbMraaibIcaaiceiaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbMsbMtbMsbGBbMubMvbMwbMwbMwbMwbMwbMwbMxbMwbMwbMwbMybMwbMzbMAabIbMBbMCbMDbMEbMDbMFbMGbMHbMIbMJbMKaaqbwMbMLbMMbMNbMObMPbMQbMRbMSbMTbMUbMVbMWbMXbMYbMYbMZbNabNabNabNabNabNabNbbNcbNdbNebNfbNgbMObNhbNibNjbNkbNlaaqbNmbJZbKabNnbLDbCebLEbLFbNobNpbNqbNrbNsbNtbCmbNubNvaaqbNwbNxbNyaaqbNzaaqaSkaxkaaqbNAbNBbNCbNDbNEaaibKxbNFbNGbKAbNHbNIbNJbNKaaibNLbKGejnejnaaqbNMcejbNOacDbNPbNQeHgbNSbNTbNUaaibIcaaicelaaiaLVcekaLVaLVaLVaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbJqaoObcDbNVbGCbNWbGCbGCbNXbNYbNYbNYbNZbNYbNYbOabObbNYbOcbOdbOebOfbOgbOhbOibOhbOjbOkbOlbOmbOnbOoaaqbOpaaqbOqaaqaaqbOrbOsbOtaaqaaqaaqbOubOvbOwaaqaaqbOxbJRbJRbOyaaqaaqaaqaoybOzaaqaaqaaqbOAaaqaaqbOBaaqbOCaoyaaqbODbOEbOFaaqbOGbzQbLEbOHaaibOIbOJbOKbOLaaibOMbLMbONaaqbOObOPbOQbORbOSbOTabIbOUbOVbOWbOXbOYbOZbPaaaiaaiaaiaaiaaiaaiaaiaaiaaiaaibPbbPccNqcNqaaqbPecbDbPgaaiaaiaaiaaiaaiaaiaaiaaibIcaaiccScbEccWcoUcoUccXaLVaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbPibBlbBlbBmaaqaaqaaiaaiaaiaaibPjaabaabaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbMsbMtbMsbPkbJsbNWbGCbGCbPlbPmbPmbPmbPnbPmbPmbPmbPobPmbPpbPqabXbPrbPsbPtbPubPtbPvbPwbPxbPybPzbMKaaqaaqaaqbPAaaqbBRbPCbPDbPEbPFaaqbBabPHbPIbPJbPKaaqbPLbPMbPNaaqbPObPPbFQbPRbPSbPTbPUbPVbPWabXbEPbPYbPZbQabJYbIxbFRbQdbQebQfbQgbQhbQibLFbQjbQkbQlbQmbQnbQobCmbQpbQqbQrbQsbQtbQtbQubQvbQwaaqbQxbQybQzbQAbQBbQCbQDaaibQEbQFbQGbQHbQGbQGbQIacDacDbQJbQKdlxejmaaqbQMccYbJgaaibrHbQObQPbQQbQQbQPbQQbQRaaiceecijccWcoUcefcoVaLVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQTbQUbQVbQUaaqaaiaaibQWbQXbQWbQYaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbMsbMtbMsbGBbMubMvbMwbMwbMwbMwbMwbMwbMxbMwbMwbMwbMybMwbMzbMAabIbMBbMCbMDbMEbMDbMFbMGbMHbMIbMJbMKaaqbwMbMLbMMbMNbMObMPbMQbMRbMSbMTbMUbMVbMWbMXbMYbMYbMZbNabNabNabNabNabNabNbbNcbNdbNebNfbNgbMObNhbNibNjbNkbNlaaqbNmbJZbKabNnbLDbCebLEbLFbNobNpbNqbNrbNsbNtbCmbNubNvaaqbNwbNxbNyaaqbNzaaqaSkaxkaaqbNAbNBbNCbNDbNEaaibKxbNFbNGbKAbNHbNIbNJbNKaaibNLbKGejnejnaaqbNMcejbNOacDbNPbNQeHgbNSbNTbNUaaibIcaaicelaaiaLVbYFaLVaLVaLVaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbJqaoObcDbNVbGCbNWbGCbGCbNXbNYbNYbNYbNZbNYbNYbOabObbNYbOcbOdbOebOfbOgbOhbOibOhbOjbOkbOlbOmbOnbOoaaqbOpaaqbOqaaqaaqbOrbOsbOtaaqaaqaaqbOubOvbOwaaqaaqbOxbJRbJRbOyaaqaaqaaqaoybOzaaqaaqaaqbOAaaqaaqbOBaaqbOCaoyaaqbODbOEbOFaaqbOGbzQbLEbOHaaibOIbOJbOKbOLaaibOMbLMbONaaqbOObOPbOQbORbOSbOTabIbOUbOVbOWbOXbOYbOZbPaaaiaaiaaiaaiaaiaaiaaiaaiaaiaaibPbbPccNqcNqaaqbPecbDbPgaaiaaiaaiaaiaaiaaiaaiaaibIcaaibYAcbEccWcoUcoUccXaLVaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbPibBlbBlbBmaaqaaqaaiaaiaaiaaibPjaabaabaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbMsbMtbMsbPkbJsbNWbGCbGCbPlbPmbPmbPmbPnbPmbPmbPmbPobPmbPpbPqabXbPrbPsbPtbPubPtbPvbPwbPxbPybPzbMKaaqaaqaaqbPAaaqbBRbPCbPDbPEbPFaaqbBabPHbPIbPJbPKaaqbPLbPMbPNaaqbPObPPbFQbPRbPSbPTbPUbPVbPWabXbEPbPYbPZbQabJYbIxbFRbQdbQebQfbQgbQhbQibLFbQjbQkbQlbQmbQnbQobCmbQpbQqbQrbQsbQtbQtbQubQvbQwaaqbQxbQybQzbQAbQBbQCbQDaaibQEbYCbQGbQHbQGbQGbQIacDacDbQJbQKdlxejmaaqbQMccYbJgaaibrHbQObQPbQQbQQbQPbQQbQRaaiceecijccWcoUcefcoVaLVaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabQTbQUbQVbQUaaqaaiaaibQWbQXbQWbQYaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbQZbRabQZbRbbRbbRcbRbbRbbRdbRbbRbbRbbRebRbbRbbRbbRfbRbbRbbRgbRhbRibRjbOmbOmbOmbOmbOmbRkbRlbRmbRnbEVbAyaaqbRoabXbQbbRqbRqbRqbRraaqbQcbRtbRtbRtbRuaTFbRvbRwbRxabXbRybRzbRAbRBbRCbRDaaqaaqbREaaqbPXbRGbRHbRIbRJaaqbLAbKabLBbLCbRpbRLbRMbRNacDbRObRPbRQbRRaaibRSbRTbRUbRVbRWbRXbRYbRZbSabSbaaqaaqaaqaaqaaqaaKaCEaovaaibScbQGbQGbSdbQGbSebSfaaiaaibSgbKGbuAbuAaaqbJebmIbJgaaiaaibSjaaiaaiaaiaaiaaiaaiaaibTXchjaLVcigcnachiaLVaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbSlbQUbQUbSmaaiaaibQWbQWbSnbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbJqaoOaERbSobMubNWbGCbRFbSqbSrbGCbGCbSsbGCbGCbGCbStbGCbSubSvaaqbSwbSxbSybSzbSAbSBbSCbSDbSEbSFbSGbSHbEVaaqbPAaaqbRrbRqbSIbRqbSJaaqbSKbRtbSLbRtbSMaaqbSNbSObSPaaqbSQbSRbSSbSTbSUbSVabIbSWbSXabIbRsbSZbTabTbbTcaaqbNmbKabKabRKbRpbRLbTfbTgbThbQkbTibTjbTkbTlbTmbTnbToaaqbTpbTqbTrbTsbTsbTtaaqbTubTvbTwbTxbTybTzbTAaaibScbTBbQGbQGbQGbTCbTDaaiaaibTEbKGbuAbuAaaqbTGcjmbJgaaibUXbTRbURaaibUSbUTcjgcjheGOcinciiaLVcimcilcikaLVaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabUaaaibSlaaiaaibQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaiaaiaaqazZbUbaAaaaqbUcaaqaaqazZaoOaAaaaqaaqbUdaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqbUeaaqaaqaaqbUfbUgbUhbUiaaqbRrbRqbRqbRqbUjaaqbSKbRtbRtbUkbUlabIbUmbUnbUoaaqaaqaaqaaqaaqbUpaaqaaqbUqbUraaqaaqbPBaaqaoyaaqaaqbUsbPGbPGaaqaaqbUubUvbUwbUxbUyeHhbUAbUBbUCaaqbUDbUEaaqbUFbTqbTrbTsbTsbTsaaqbUGbUHbUIbUJbUKbULbUMaaibUNaaibUObUPbUQaaiaflaaiaaibTMbTLbuAbuAaaqbTKbmIbJgbTIbTJbUYbUZbVabVbbVcbVcbVdbVecfJceocfLcfKcfNcfMcfPcfOcencemacfbVmbVnbVobVpaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaqaaibVqbVrbVrbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaibVsbVtbVubVvbVwbVxbVybnOaaibVAbVBbVCbVDbVEbVFbVGbVHbVHbVHbVHbVHbVHbVHbVHbVHbVHbVIbVHbVHbVHbVJbVKbVLbVMaaqbVNbVObVPbRqbRraOKbVQbVRbVSbVTbVUaaqbVVbVWbVXbVYbVZbVZbVZbVZbWabWbbWcbWdbWdbWebWebWfbWgbWhaaqaaqbWibWjbWkbPQbWmbRLbWnbUwbWobWpaHtbWqbLKbWraHtbWsbWtaolbWubWvbWwbWxbWybWzaaqbWAbWBbWCbWDbWEbWFbWGaaibWHbWIbWJbWKbWLbWIbWMbWNaaqbTObTNbKHaaqaaqchhchechfacDchgchbchcacDchdcgZbWWbWXbWYcgYbXecfRcfQbXfcfQbYEbXfbXfbXfbXgbXhbXibXjbXkaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaiaaibXlbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAaaaaaaaaibXmbXnbXnbXobXnbXnbXpbXqaaibXrbXsbXtbXsbXsbXuaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaqbXvaaqaaqbXwaaqbXxbXybXzbXAbXBaaKbXCbXDbXEbXFbXGaOKbXHbXIbXJabIacfacfacfacfbXKavbbBOabXbXLabXabXbXMbXNbXObXPbXQbXRbXSbXTbXUbmubXWbXXbXYbXZbYabYbbYcbYdbYebYfbYgbYhaaqaaqaElabXabXabXbYiaaqaaqbYjaaqamzbYkbYlbYmaaibYnbYobYpbYqbYpbYrbYsbYtaaqaaqbYuaaqaaqbYvbYwbmIbuCaaiaaibYxaaiaaibYybTTbTUbTHbTQbXfbTScagbTPbWWbTPbWWcbBbWWbWWaaibYHbYIbYJbYKaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaibQWbQWbQWbQWbQWbQWbYLbQWbYMbQWbQWbQWbQWbQWaaiaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYNbYObYPbYObYQaaaaaaaaaaaibYRbXnbXnbXobXnbXnbXpbYSaaibXrbYTbYUbYVbYWbXuaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibYXbYYbYZaaqbZaaaqbZbbZcbZdbRrbZeaOLbZfbSKbZgbZhbZiaOLbZjbZkbZlaaiaaibZmbZnbZobZpbZqabnbZrbCAbZsaaqbZtbCAbCAbZuabXbZvbZwbZxbXUbynbZzbZAbZBbZCbZDbZEbZFbZGbZDbZDbZHbZIbZIbZIbZJbZIbZIbZIboLbxPbZMbZNbZObZPbZQbZRbZSaaibTWbZUbZVbZWbZVbZXbZYbYpbZZcaacabbuCcacbuCbYwbmIbuCaaicegcadcaeaaiaaiaaqaaqaaqbTVbWWbTZbTYcbBbWWcahbWWbTXbWWbUUaaicaocapcaqaaiaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaicarcarcarcarcarcarcasbQWcatcarbYMbQWbQWbQWbQWaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaucavcawcaxcaubfyaoObcDaaicaycazbXncaAbXnbXnbXpcaBaaibXrcaCbYUbYUbYUbXuaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicaDcaEcaFaaqbZaaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaaqaaqaaqcaGcaHcaIcaJcaKcaLcaMcaMcaNblUabnbCAbCAcaPaaqcaQbCAbCAbCAcaRcaScaTbXScaUaHtcaVbZIcaWcaXcaYbLEcaXcaZcbacbacbacbacbacbacaXcbacbacbabLEcbbcbccbdcbecbfcbgcbhcbiaaicbjcbkbYpcblbYpcbmcbncbocbpcbqcbrcbsbuCcbtbYwbmIcbuaaibrHcbvcbwcbxaaiaoqaoqaaiccVbGRcbybNNbMjbPhbPfbQSbQNbSibXcaaicbFcbGcbHcbIaacaacaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaacbJbQUbQUbQUbQUbQUbQUbQUcbKbQXbQWbQWbQWbQWcbLbQXaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAbJqaoOaERbSobMubNWbGCbRFbSqbSrbGCbGCbSsbGCbGCbGCbStbGCbSubSvaaqbSwbSxbSybSzbSAbSBbSCbSDbSEbSFbSGbSHbEVaaqbPAaaqbRrbRqbSIbRqbSJaaqbSKbRtbSLbRtbSMaaqbSNbSObSPaaqbSQbSRbSSbSTbSUbSVabIbSWbSXabIbRsbSZbTabTbbTcaaqbNmbKabKabRKbRpbRLbTfbTgbThbQkbTibTjbTkbTlbTmbTnbToaaqbTpbTqbTrbTsbTsbTtaaqbTubTvbTwbTxbTybTzbTAaaibScbTBbQGbQGbQGbTCbTDaaiaaibTEbKGbuAbuAaaqbTGcjmbJgaaibUXbTRbURaaicfOchdcjgcjheGOcinciiaLVcimcilcikaLVaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaabUaaaibSlaaiaaibQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaiaaiaaqazZbUbaAaaaqbUcaaqaaqazZaoOaAaaaqaaqbUdaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqbUeaaqaaqaaqbUfbUgbUhbUiaaqbRrbRqbRqbRqbUjaaqbSKbRtbRtbUkbUlabIbUmbUnbUoaaqaaqaaqaaqaaqbUpaaqaaqbUqbUraaqaaqbPBaaqaoyaaqaaqbUsbPGbPGaaqaaqbUubUvbUwbUxbUyeHhbUAbUBbUCaaqbUDbUEaaqbUFbTqbTrbTsbTsbTsaaqbUGbUHbUIbUJbUKbULbUMaaibUNaaibUObUPbUQaaiaflaaiaaibTMbTLbuAbuAaaqbTKbmIbJgbTIbTJbUYbUZbVabVbbVcbVcbVdbVecfJceocafcfKcfNcfMcfPccScencemacfbVmbVnbVobVpaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaqaaibVqbVrbVrbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabxWbxWbxWbxWbxWbxWbxWbxWbxWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAbGAbGAaaaaaibVsbVtbVubVvbVwbVxbVybnOaaibVAbVBbVCbVDbVEbVFbVGbVHbVHbVHbVHbVHbVHbVHbVHbVHbVHbVIbVHbVHbVHbVJbVKbVLbVMaaqbVNbVObVPbRqbRraOKbVQbVRbVSbVTbVUaaqbVVbVWbVXbVYbVZbVZbVZbVZbWabWbbWcbWdbWdbWebWebWfbWgbWhaaqaaqbWibWjbWkbPQbWmbRLbWnbUwbWobWpaHtbWqbLKbWraHtbWsbWtaolbWubWvbWwbWxbWybWzaaqbWAbWBbWCbWDbWEbWFbWGaaibWHbWIbWJbWKbWLbWIbWMbWNaaqbTObTNbKHaaqaaqchhchechfacDchgchbchcacDcfLcgZbWWbWXbWYcgYbXecfRcfQbXfcfQbYEbXfbXfbXfcekbXhbXibXjbXkaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaiaaibXlbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabGAbGAbGAbGAbGAaaaaaaaaibXmbXnbXnbXobXnbXnbXpbXqaaibXrbXsbXtbXsbXsbXuaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaqbXvaaqaaqbXwaaqbXxbXybXzbXAbXBaaKbXCbXDbXEbXFbXGaOKbXHbXIbXJabIacfacfacfacfbXKavbbBOabXbXLabXabXbXMbXNbXObXPbXQbXRbXSbXTbXUbmubXWbXXbXYbXZbYabYbbYcbYdbYebYfbYgbYhaaqaaqaElabXabXabXbYiaaqaaqbYjaaqamzbYkbYlbYmaaibYnbYobYpbYqbYpbYrbYsbYtaaqaaqbYuaaqaaqbYvbYwbmIbuCaaiaaibYxaaiaaibuvbQFbTHbJobTQbXfbTScagbTPbWWbTPbWWcbBbWWbWWaaibYHbYIbYJbYKaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaibQWbQWbQWbQWbQWbQWbYLbQWbYMbQWbQWbQWbQWbQWaaiaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYNbYObYPbYObYQaaaaaaaaaaaibYRbXnbXnbXobXnbXnbXpbYSaaibXrbYTbYUbYVbYWbXuaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibYXbYYbYZaaqbZaaaqbZbbZcbZdbRrbZeaOLbZfbSKbZgbZhbZiaOLbZjbZkbZlaaiaaibZmbZnbZobZpbZqabnbZrbCAbZsaaqbZtbCAbCAbZuabXbZvbZwbZxbXUbynbZzbZAbZBbZCbZDbZEbZFbZGbZDbZDbZHbZIbZIbZIbZJbZIbZIbZIboLbxPbZMbZNbZObZPbZQbZRbZSaaibTWbZUbZVbZWbZVbZXbZYbYpbZZcaacabbuCcacbuCbYwbmIbuCaaicegcadbTTaaiaaiaaiaaiaaibTVbWWbTZbTYcbBbWWcahbWWbTXbWWbUUaaicaocapcaqaaiaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaicarcarcarcarcarcarcasbQWcatcarbYMbQWbQWbQWbQWaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaucavcawcaxcaubfyaoObcDaaicaycazbXncaAbXnbXnbXpcaBaaibXrcaCbYUbYUbYUbXuaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicaDcaEcaFaaqbZaaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaaqaaqaaqcaGcaHcaIcaJcaKcaLcaMcaMcaNblUabnbCAbCAcaPaaqcaQbCAbCAbCAcaRcaScaTbXScaUaHtcaVbZIcaWcaXcaYbLEcaXcaZcbacbacbacbacbacbacaXcbacbacbabLEcbbcbccbdcbecbfcbgcbhcbiaaicbjcbkbYpcblbYpcbmcbncbocbpcbqcbrcbsbuCcbtbYwbmIcbuaaibrHcbvcbwaxfaaiaoqaoqaaiccVbGRcbybNNbMjbPhbPfbQSbQNbSibXcaaicbFcbGcbHcbIaacaacaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaacbJbQUbQUbQUbQUbQUbQUbQUcbKbQXbQWbQWbQWbQWcbLbQXaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYPcbMcbNcbMbYPcbOcbPcbQaaicbRbXnbXncbSbXncbTcbUcbVaaicbWbXscbXcbYbYUcbZaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaibZaaaiaaaaaaaaaaaaaaiccaccbcccccdcceccfaaqccgcchcciccjcckcclccmccmccnccoabnaaiaaiaaiafdccpaaibCAbCAaaqccqccrccscctccuccvcbfccwccxccycczccAccBccCcbacbacbaccDccEccFccEccDaaiavdacDacDccGccHccDaaqccIccJaaiccKccLccMccNccOccPccQaaiaaiaaiabnaaiaaiaaiccRbSkccTaaibrHcbvccUcbxaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaibVrbVrbVrbVrbVrbVrccZbQWbVqbVrcdabQWbQWbQWbQWaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaucbMcbMcbMcdbcdccddcdecdfcdgbXnbXnbXnbXnbXnbXncdhaaicdibXscdjbYUbYUcdkaaiaaaaaaaaaaaacdlaaaaabaabaaiaaiaaiaaiaaiaaiaaiaaiaaqbXwaEcaaacdmcdncdocdpcdqcdrcdscdtcducdvabXcdwcdxcdycdzcdAcdBcdCcdDcdEcdFabncdGcdHcdIcdJcdKaaibCAbCAaaqaaqaaqaaqaaKaaqcdLcdLcdMaaqaaqaoyaaqaQjcdNcdOcdPcdOacfcdQcdRcdSacfcdTcdTacfcdUcdVcdWaaicdXcdYbWhaaiaaiabnaaicdZaaibAnbBQaaiceacebcecbCAcedaaiabncajaflaaibrHcbvcaibrHcMJcMLcMMbrHcMKcMIbrHbrHbrHbrHbrHcMHbIdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibQWbQWbQWbQWbQWbQWbYLbQWcdabQWbQWbQWbQWbQWaaiaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYPcbNcbNcbNbYPcepceqceracfcescetceuceuceuceucevcewaaibXrcexceybYUbYUcdkaaiaaaaaaaaaaaacezceAceAceAceBceCceDceEceFceGceHaaqceIbXwaAZaaaceJceKceLceMceNcdrceOcePceQceRaaqceSbZkbUnccjceTcaMceUcaMceVbzPchKceYceZcfaceZcfbaaibCAbCAaaqcfccfdcfecffcfgcfhcfhcficfjcfkcflcfmcfnabXcfocfpcfpacDcfqcfrcfsaaiaaaaaaaaicftcfucfvacfcfwcfxcfycfzcfzcfAbAQcfBcfCcfDcfEcfCcfCcfCcfFcfCcfCcfGcfHcancbzcbAcbCcalcambQQbQQbQQcMXbQQbQQbQQbQQbQQcMWbQQcaebrHcakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaibXlbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaucfScfTcfUcauaIXaoObcDaaiaaiaaiaoNaoOaoOaoPaaiaaiaaicfVcfWbYUbYUcfXcfYaaiaaaaaaaaaaaaaaiaaiaaiaaiawocfZcgacgbcgccgccgdaaqcgebZaaAZaaaceJcgfcggcghcgicgjcgkcglcgicgicgmcgncgocgpacDacDcgqcgrcaMcgscgtceXcfacgvcgwcgxcgyaaibCAbCAaaqcgzcgAcgBcgCcgDcgEcgEcgFcgGcgHcgIcgJcgKaaqcgLcbacgMaaicgNcfrcgOaaiaaaaaaaaicgPcgQcgRaaibCBcgScgTcgTcgTcgTcgTcgTcgUcgVcgWcgXacfacfbVgbUVacfacfchabVhbViaaqaaibVgbUWbUVaaiaaiaaiaaibVgbUWbUVaaiaaiaxfbVfbuvbJnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabUaaaiaaicarcarbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachkbYOchlbYOchmchnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaichoaYVaSZaAaaaiaaiaaiaaaaaaaaaaaachpchqchrchschtchuchvchwchxchxchyaaqbYZbXwaAZaaaceJchzchAafdchBcdrchCchDchEchFaaqceSbZkbZlchGaaichHaaqcguchJchIchLbmJcfacfachNchOaaibCAchPaaqchQchRchSchTchTchTchUchVchTchTchWchSchXaaichYcbachZaaiciacfrbzsaaiaaaaaaaaicibciccidaaiciebCAchPaaiaaiaaiaaiaaiaoNaoOaoPaaiaaicafbYGbYDbYFaaicifbYBamxaaibYCbYzbYzbYzbYAbWZbXabXbbXdbWSbWRbWQaaibMhbWVbWUbWTbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVkbVlaaibSlaaibQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacioaPxaaaaaaaaaaaaaaaaaaaaaaagaaachpcipciqcirciscgbcitcgbciucgbcivciwcixciyaPxaaacizcdnciAcdpciBcdrcdrciCciDciEabIciFciGciHciIaaiciJciKciLciMciNabncjVciPciQciRciSaaibCAbCAaaqaaqaaKciTciUciVciWaaqciXciYciZcjabUwaaKaaicgLcbacgMaaicjbcfrcgOaaiaaaaaaaaicjccjdcjeaaibCAbCAbCAaaiaabaaaaaaaabaaaaabaaaaaaaaicyQcAacpScpRcrFcqScsocjicsscsqcwscwqcwqcxMclfclfcyPcyNcpQcpQcoTaaiaaicihaamaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicoScjvcjwaaiaaibQWbQWcjxbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjyaaaaaaaaacjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjzcjzaaaaaaaaaaaaaaaaaaaaaaaaaaachpcjAcjBcjCcjDcjEcjFcjGcjHcjIcjJaaqbYZcjKaaiaaaaaaaaaaaaaaicjLcjMcjNcjNcjOcjPaaqcjQbZkbUncjRcjScjTcjUcjTcjTcjTciOcjWcjXcjXcjYcjZaaibCAbCAaaqckackbckcckdckeckfaaqckeckfckdckgckhckiaaichYckjchZaaickkcfrcgOaaiaaiaaiaaiaaiaaiaaiaaicklbCAbCAaaiaabaaaaaaaaaaabaabaabaaaaaicmacmbcmbcmfcmecmdcmYcmVcmhcmgcnWcnVcnUcmZcoPcnXclfclfclfclhcliaaicjjcjkcjlaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackyckzckAbSmaaqaaiaaibQWbQXbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckCckCckCckCckCckCckCckCckCckCckCckCckDaaiaaqaaqaaqaaqaaqaaqckEckFaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaaqaaqaaqckGbZkbUnckHckIckJckKckLckMckNckOckPckQckRckSckTaaibCAbCAaaqckUckVckcckdckdckWaaqckXckdckdckgckcckYaaiaaiaaiaaiaaickkcfrckZaaibCAbCAbCAbCAbCAbCAbCAbCAbCAbCAaaiaaaaaaaaaaaaaaaaabaabaaaaaicIjcFGcFGcEIcEHclbcDycDxcEHcBkcHncHmclfclfcFIcFHclfcGFclfclhcCnaaicCocCpcksaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacljbBlbBlbBmaaqaaqaaiaaiaaiaaibPjaabaabaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjyaaacjyaaaaaacjycjycjycjycjycjycjyaaaaaacjyaaacjyaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclkcllclmclnclncloclnclpclqclrclscltcluclvclwclwclxclyclzclAclAclBclCclDclEclFclEclEclEclDclEclEclGclHcAbclJbZkbUnclKclLclMaflaaichLacDaveclNclOacDaufccpaaibCAbCAaaqclPclQclRclSclTclUaaqclVclTclWclXclRclYaaibCAbCAbCAclZckkcfrckkclZbCAbCAbCAbCAbCAbCAbCAbCAbCAbCAaaiaaaaaaaaaaaaaaaaabaabaabaaicBecBfcBfcBfccDaaicBhaflccDcBgcCmcBicBicBlcBkcBkcBjcBicAccAdcAeaaicAfcBdclgaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjyaaacjycjycjycjycjycjycjycjycjyaaacjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclkcmicmjcmkcmjcmlcmjcmicmmcmncmkcmjcmocmpbUocmpcmpcmqbUobUobUobUocmrcmpcmpcmpcmpcmpcmpcmpcmpcmpcmpcmscmtcmucmvcmwcmxcmycmzcmAaaicmBcmCcmDcmEcmFcmGczXcmIacfcgTcmJabIcmKcmLcmMcmNckdcmOaaqcmOckdcmNcmPckccmQaaicmRacfacfbDTcmScfrcmTaaiazZaoOaoObcDaaiaaiaaiaoNaoOaoPaaiaaaaaaaaaaaaaaaaaaaabaabaaicKrcKscKocKnaaicmUcKpcmWaaicKqcJOcJOcJOcJPcKlcJQcKmcJOcJOcJOcKVaaiaGDcmcbfyaAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjyaaacjycjycjycjycjycjycjycjycjyaaacjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacnbcmjcnccndcnecnfcnecngcnhcnicnjcnkcnlcmtcnmcnncnncnoabIcnpabIcnqcnrcnqcnqcnqcnqcnqcnqcnqcnqcnqcnqcnscmpcntcnucnveHmcnxcnycnzcnAcnBcnCcnDcnEcnFcnGcnHcnIacDbXNcnJaRmcnKckdckcckdckdcnLabXcnMckdckdckgckccnNaaicnOaaiaaaaflaaicnPaaiaaiaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaiaaiaaiaaiaaicnQcJacnSaaiaaicIZcIlcIkaaiaaiaaiaaicIZcIlcIkaaiaaiaAZcmXaAZaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaucbMcbMcbMcdbcdccddcdecdfcdgbXnbXnbXnbXnbXnbXncdhaaicdibXscdjbYUbYUcdkaaiaaaaaaaaaaaacdlaaaaabaabaaiaaiaaiaaiaaiaaiaaiaaiaaqbXwaEcaaacdmcdncdocdpcdqcdrcdscdtcducdvabXcdwcdxcdycdzcdAcdBcdCcdDcdEcdFabncdGcdHcdIcdJcdKaaibCAbCAaaqaaqaaqaaqaaKaaqcdLcdLcdMaaqaaqaoyaaqaQjcdNcdOcdPcdOacfcdQcdRcdSacfcdTcdTacfcdUcdVcdWaaicdXcdYbWhaaiaaiabnaaicdZaaibAnbBQaaiceacebcecbCAcedaaiabncajaflaaibrHcbvcaibrHbrHcMLcMMbYycMKcMIbrHbrHbrHbrHbYycMHbIdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibQWbQWbQWbQWbQWbQWbYLbQWcdabQWbQWbQWbQWbQWaaiaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYPcbNcbNcbNbYPcepceqceracfcescetceuceuceuceucevcewaaibXrcexceybYUbYUcdkaaiaaaaaaaaaaaacezceAceAceAceBceCceDceEceFceGceHaaqceIbXwaAZaaaceJceKceLceMceNcdrceOcePceQceRaaqceSbZkbUnccjceTcaMceUcaMceVbzPchKceYceZcfaceZcfbaaibCAbCAaaqcfccfdcfecffcfgcfhcfhcficfjcfkcflcfmcfnabXcfocfpcfpacDcfqcfrcfsaaiaaaaaaaaicftcfucfvacfcfwcfxcfycfzcfzcfAbAQcfBcfCcfDcfEcfCcfCcfCcfFcfCcfCcfGcfHcancbzcbAcbCcalcambQQbQQbQQbQQbQQbQQbQQbQQbQQcMWbQQcaebrHcakaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaibXlbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaucfScfTcfUcauaIXaoObcDaaiaaiaaiaoNaoOaoOaoPaaiaaiaaicfVcfWbYUbYUcfXcfYaaiaaaaaaaaaaaaaaiaaiaaiaaiawocfZcgacgbcgccgccgdaaqcgebZaaAZaaaceJcgfcggcghcgicgjcgkcglcgicgicgmcgncgocgpacDacDcgqcgrcaMcgscgtceXcfacgvcgwcgxcgyaaibCAbCAaaqcgzcgAcgBcgCcgDcgEcgEcgFcgGcgHcgIcgJcgKaaqcgLcbacgMaaicgNcfrcgOaaiaaaaaaaaicgPcgQcgRaaibCBcgScgTcgTcgTcgTcgTcgTcgUcgVcgWcgXacfacfbVgbUVacfacfchabVhbViaaqaaibVgbUWbUVaaiaaiaaiaaibVgbUWbUVaaiaaibrHbVfbrHbJnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabUaaaiaaicarcarbQWbQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachkbYOchlbYOchmchnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaichoaYVaSZaAaaaiaaiaaiaaaaaaaaaaaachpchqchrchschtchuchvchwchxchxchyaaqbYZbXwaAZaaaceJchzchAafdchBcdrchCchDchEchFaaqceSbZkbZlchGaaichHaaqcguchJchIchLbmJcfacfachNchOaaibCAchPaaqchQchRchSchTchTchTchUchVchTchTchWchSchXaaichYcbachZaaiciacfrbzsaaiaaaaaaaaicibciccidaaiciebCAchPaaiaaiaaiaaiaaiaoNaoOaoPaaiaaibXgbYGbYDbWZaaicifbYBamxaaibUTbYzbYzbYzbUSbTUbXabXbbXdbWSbWRbWQaaibMhbWVbWUbWTbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVjbVkbVlaaibSlaaibQWbQWbQWbQWbQWbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacioaPxaaaaaaaaaaaaaaaaaaaaaaagaaachpcipciqcirciscgbcitcgbciucgbcivciwcixciyaPxaaacizcdnciAcdpciBcdrcdrciCciDciEabIciFciGciHciIaaiciJciKciLciMciNabncjVciPciQciRciSaaibCAbCAaaqaaqaaKciTciUciVciWaaqciXciYciZcjabUwaaKaaicgLcbacgMaaicjbcfrcgOaaiaaaaaaaaicjccjdcjeaaibCAbCAbCAaaiaabaaaaaaaabaaaaabaaaaaaaaicyQcAacpScpRcsscqScsocjicBgcsqcwscwqcwqcxMclfclfcyPcyNcpQcpQcrFaaiaaicihaamaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicoScjvcjwaaiaaibQWbQWcjxbQWbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjyaaaaaaaaacjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjzcjzaaaaaaaaaaaaaaaaaaaaaaaaaaachpcjAcjBcjCcjDcjEcjFcjGcjHcjIcjJaaqbYZcjKaaiaaaaaaaaaaaaaaicjLcjMcjNcjNcjOcjPaaqcjQbZkbUncjRcjScjTcjUcjTcjTcjTciOcjWcjXcjXcjYcjZaaibCAbCAaaqckackbckcckdckeckfaaqckeckfckdckgckhckiaaichYckjchZaaickkcfrcgOaaiaaiaaiaaiaaiaaiaaiaaicklbCAbCAaaiaabaaaaaaaaaaabaabaabaaaaaicmecmbcmbcmfcmhcmdcmYcmVcnVcmgcnWcoTcnUcmZcoPcnXclfclfclfclhcliaaicjjcjkcjlaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackyckzckAbSmaaqaaiaaibQWbQXbQWaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackBckCckCckCckCckCckCckCckCckCckCckCckCckDaaiaaqaaqaaqaaqaaqaaqckEckFaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaaqaaqaaqckGbZkbUnckHckIckJckKckLckMckNckOckPckQckRckSckTaaibCAbCAaaqckUckVckcckdckdckWaaqckXckdckdckgckcckYaaiaaiaaiaaiaaickkcfrckZaaibCAbCAbCAbCAbCAbCAbCAbCAbCAbCAaaiaaaaaaaaaaaaaaaaabaabaaaaaicIjcFGcFGcIkcIlclbcDycDxcEIcBkcHncHmclfclfcFIcFHclfcGFclfclhcCnaaicCocCpcksaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacljbBlbBlbBmaaqaaqaaiaaiaaiaaibPjaabaabaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjyaaacjyaaaaaacjycjycjycjycjycjycjyaaaaaacjyaaacjyaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclkcllclmclnclncloclnclpclqclrclscltcluclvclwclwclxclyclzclAclAclBclCclDclEclFclEclEclEclDclEclEclGclHcAbclJbZkbUnclKclLclMaflaaichLacDaveclNclOacDaufccpaaibCAbCAaaqclPclQclRclSclTclUaaqclVclTclWclXclRclYaaibCAbCAbCAclZckkcfrckkclZbCAbCAbCAbCAbCAbCAbCAbCAbCAbCAaaiaaaaaaaaaaaaaaaaabaabaabaaicBecBfcBfcBfccDaaicEHaflccDcBhcCmcBicBicBlcBkcBkcBjcBicAccAdcAeaaicAfcBdclgaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjyaaacjycjycjycjycjycjycjycjycjyaaacjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclkcmicmjcmkcmjcmlcmjcmicmmcmncmkcmjcmocmpbUocmpcmpcmqbUobUobUobUocmrcmpcmpcmpcmpcmpcmpcmpcmpcmpcmpcmscmtcmucmvcmwcmxcmycmzcmAaaicmBcmCcmDcmEcmFcmGczXcmIacfcgTcmJabIcmKcmLcmMcmNckdcmOaaqcmOckdcmNcmPckccmQaaicmRacfacfbDTcmScfrcmTaaiazZaoOaoObcDaaiaaiaaiaoNaoOaoPaaiaaaaaaaaaaaaaaaaaaaabaabaaicMJcKscKWcKnaaicmUcKpcmWaaicKqcJOcJOcJOcJPcKlcJQcKmcJOcJOcJOcKVaaiaGDcmcbfyaAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjyaaacjycjycjycjycjycjycjycjycjyaaacjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacnbcmjcnccndcnecnfcnecngcnhcnicnjcnkcnlcmtcnmcnncnncnoabIcnpabIcnqcnrcnqcnqcnqcnqcnqcnqcnqcnqcnqcnqcnscmpcntcnucnveHmcnxcnycnzcnAcnBcnCcnDcnEcnFcnGcnHcnIacDbXNcnJaRmcnKckdckcckdckdcnLabXcnMckdckdckgckccnNaaicnOaaiaaaaflaaicnPaaiaaiaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaiaaiaaiaaiaaicnQcJacnSaaiaaicKrcKocIZaaiaaiaaiaaicKrcKocIZaaiaaiaAZcmXaAZaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjyaaacjycjycjycjycjycjycjycjycjyaaacjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazTaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaicnYaaqaaqcnZaaqcoaaaqaaqcobaoPaaqaaqaoNaoOaoPaaqaaqaaqaaqcoccodcoecofcogcohcoicojcokcojcojcolcojcomconcoocopcoqcorbCAcnOaoycoscotcoucovcowcoxaaqcoycowcozckgcoAcoBaaicnOaaiaaacoCcoDcoEcoFaaiaaaaaaaaaaaacoGaaaaaaaaaaaaaaaaaaaaaaaacoGaaaaaaaaicoHcoIcoJcoKcoLcoMcoNaaqcoOcLFcoQacDcoRaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaabaPxcnTaPxaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafqafqafqafrafrafqafrafrafrafZafrafrafrafqafqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEccoWcoXcoYcoZcpacpbcpccpdcpecpfcpgcphcpfcpicpjcpkcpkcplaaqcpmcpncpocppbUncpqcprcpscptcpucpvcpucpwcpxcpycpzcpAcpBaaiaaicnOaoyaaiaaicpCaaiaaiabnbAnacfacfacfcpDacfbhmacfcpEaaiaaacpFcpGcoEcpHaaicpIcpJcpJcpKaaiaaibBOacDacDcpLacDacDcpLaufaaaaaaaaicpMcpNcpMcpOcpPckncnRaaqaaKcKWaaKaaiaaiaaaaaaaaaaabaabaaaaagaaaaaaaaaaaaaabaaacKXaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafqafqafqafrafrafqafrafrafrafZafrafrafrafqafqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEccoWcoXcoYcoZcpacpbcpccpdcpecpfcpgcphcpfcpicpjcpkcpkcplaaqcpmcpncpocppbUncpqcprcpscptcpucpvcpucpwcpxcpycpzcpAcpBaaiaaicnOaoyaaiaaicpCaaiaaiabnbAnacfacfacfcpDacfbhmacfcpEaaiaaacpFcpGcoEcpHaaicpIcpJcpJcpKaaiaaibBOacDacDcpLacDacDcpLaufaaaaaaaaicpMcpNcpMcpOcpPckncnRaaqaaKcMXaaKaaiaaiaaaaaaaaaaabaabaaaaagaaaaaaaaaaaaaabaaacKXaaaaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacpTcpTcpTcpTcpTaaaaaaaaaaaaaaaaaaaaaaaaafqaaaaaaaabaabaaaaabaabaaaaaaaabaabaabaaaafqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAZcoWcpUcpVcpWcpXcpYcpYcpYcpYcpZcqacqbcpkcqccpkcpkcqdcpkcqebUocqfcqgcppbUncqhaaqcqicptcqjcqkcqlcptcqmcqncqocqpcqqcqrcqscqtcqucqvcqvcqwbSWcgTcqxcqybCAcqzbXNcqAbCAbCAbWgbCAaaiaaacqBcpGcoEcqCaaqcqDcqEcqFcqGcqHcqIcqJcqHcqIcqKcqHcqLcqMabnaaaaaaaaicpMcpMcpMcqNcqOcoMcqPcqQcqRckrcqTcqUaaiaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaabaaackqaaaaabaabaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacpTcpTcpTcpTcpTcpTcpTaaaaaaaaaaaaaaaaaaaaaafqaaacqVcqWcqXaaacqVcqWcqXaaacqVcqWcqXaabcqYaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAZcoWcpUcqZcpkcqdcracpkcpkcpkcrbcpkcqZcqZcpkcpkcpkcpkcrccrdbUocrecmpcrfbUnaaqaaqcrhcptcricrjcrkcptcrlcmFcrmcrncrocrpbBQcqzbXOcrqcrqcnJbXNbXNbXOcrrbXNabuaoNaoOaoOaoOaoPaaiaaiaaacrscrtcrucrvabIcrwckkckkcrxcrycrzcrAcrycrzcrAcrycrzcrAabnaaaaabaaiaaqaaqaaqaaqcrBckncrCcrDcrEckpcrGcrHaaiaaaaaaaaaaaaaaacttcttcttctuaabaabaabaabctvaabaabaabaabaabafZcttcttaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjycjyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacpTcpTcpTcpTcpTcpTcpTcpTcpTaaaaaaaaaaaaaaaaaaafqaaacqVcrIcqXaaacqVcrIcqXaaacqVcrIcqXaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaAZcoWbQTcqZcrJcpkcrKcrLcrMcrMcqccpkcqZcrNcpkcpkcpkcpkcrOcrPclIcrQbSOcrRcrScrTcrUcrVcptcricrWcrXcptcrYcmFaaiavdacDcrZcsaabuaaiabnabnaflaaiaaiaaiaflaaiaaiaaaaaaaaaaaaaaaaaaaabaaaaflcsbcoEcscaaqcsdckkckkcrxcsecsfcsgcshcsfcsgcshcsfcsiabnaabaabaaicoHcoIcoJcsjcskcoMcslcsmcsnckvckucspaaiaaaaaaaaaaaaaaacttaaaaabaaaaabaaaaaaaaacunaaaaabaabaaaaaaaaaaaacttaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa