diff --git a/code/WorkInProgress/computer3/computers/camera.dm b/code/WorkInProgress/computer3/computers/camera.dm index 0a953e40a62..e0d485e1da1 100644 --- a/code/WorkInProgress/computer3/computers/camera.dm +++ b/code/WorkInProgress/computer3/computers/camera.dm @@ -32,7 +32,7 @@ /obj/machinery/computer3/security/mining name = "Outpost Cameras" desc = "Used to access the various cameras on the outpost." - spawn_files = list(/datum/file/camnet_key/mining) + spawn_files = list(/datum/file/camnet_key/miningoutpost) /* Camera monitoring computers, wall-mounted @@ -43,7 +43,7 @@ spawn_files = list(/datum/file/camnet_key) /obj/machinery/computer3/wall_comp/telescreen/entertainment - desc = "Damn, they better have /tg/thechannel on these things." + desc = "Damn, they better have Paradise Channel on these things." spawn_files = list(/datum/file/camnet_key/entertainment) @@ -76,53 +76,96 @@ return computer.Crash(MISSING_PROGRAM) -/datum/file/camnet_key/mining - name = "Mining Camera Network Key" - title = "mining station" - desc = "Connects to mining security cameras." - networks = list("MINE") +/datum/file/camnet_key/telecomms + name = "Telecomms Network Key" + title = "telecommunications satellite" + desc = "Connects to telecommunications satellite security cameras." + networks = list("Telecomms") + +/datum/file/camnet_key/researchoutpost + name = "Research Outpost Network Key" + title = "research outpost" + desc = "Connects to research outpost security cameras." + networks = list("Research Outpost") + +/datum/file/camnet_key/miningoutpost + name = "Mining Outpost Network Key" + title = "mining outpost" + desc = "Connects to mining outpost security cameras." + networks = list("Mining Outpost") screen = "miningcameras" /datum/file/camnet_key/research - name = "Research Camera Network Key" + name = "Research Network Key" title = "research" - networks = list("RD") - -/datum/file/camnet_key/bombrange - name = "R&D Bomb Range Camera Network Key" - title = "bomb range" - desc = "Monitors the bomb range." - networks = list("Toxins") - -/datum/file/camnet_key/xeno - name = "R&D Misc. Research Camera Network Key" - title = "special research" - networks = list("Misc") - -/datum/file/camnet_key/singulo - name = "Singularity Camera Network Key" - title = "singularity" - networks = list("Singularity") - -/datum/file/camnet_key/entertainment - name = "Entertainment Channel Encryption Key" - title = "entertainment" - desc = "Damn, I hope they have /tg/thechannel on here." - networks = list("thunder") - screen = "entertainment" - -/datum/file/camnet_key/creed - name = "Special Ops Camera Encryption Key" - title = "special ops" - desc = "Connects to special ops secure camera feeds." - networks = list("CREED") - + desc = "Connects to research security cameras." + networks = list("Research") + /datum/file/camnet_key/prison - name = "Prison Camera Network Key" + name = "Prison Network Key" title = "prison" - desc = "Monitors the prison." + desc = "Connects to prison security cameras." networks = list("Prison") - + +/datum/file/camnet_key/interrogation + name = "Interrogation Network Key" + title = "interrogation" + desc = "Connects to interrogation security cameras." + networks = list("Interrogation") + +/datum/file/camnet_key/supermatter + name = "Supermatter Network Key" + title = "supermatter" + desc = "Connects to supermatter security cameras." + networks = list("Supermatter") + +/datum/file/camnet_key/singularity + name = "Singularity Network Key" + title = "singularity" + desc = "Connects to singularity security cameras." + networks = list("Singularity") + +/datum/file/camnet_key/anomalyisolation + name = "Anomaly Isolation Network Key" + title = "anomalyisolation" + desc = "Connects to interrogation security cameras." + networks = list("Anomaly Isolation") + +/datum/file/camnet_key/toxins + name = "Toxins Network Key" + title = "toxins" + desc = "Connects to toxins security cameras." + networks = list("Toxins") + +/datum/file/camnet_key/telepad + name = "Telepad Network Key" + title = "telepad" + desc = "Connects to telepad security cameras." + networks = list("Telepad") + +/datum/file/camnet_key/ert + name = "Emergency Response Team Network Key" + title = "emergency response team" + desc = "Connects to emergency response team security cameras." + networks = list("ERT") + +/datum/file/camnet_key/centcom + name = "Central Command Network Key" + title = "central command" + desc = "Connects to central command security cameras." + networks = list("CentCom") + +/datum/file/camnet_key/thunderdome + name = "Thunderdome Network Key" + title = "thunderdome" + desc = "Connects to thunderdome security cameras." + networks = list("Thunderdome") + +/datum/file/camnet_key/entertainment + name = "Entertainment Network Key" + title = "entertainment" + desc = "Connects to entertainment security cameras." + networks = list("news") /* @@ -147,7 +190,7 @@ if(temp.len) L.Add(C) - //camera_sort(L) + camera_sort(L) return L verify_machine(var/obj/machinery/camera/C,var/datum/file/camnet_key/key = null) diff --git a/code/WorkInProgress/computer3/computers/card.dm b/code/WorkInProgress/computer3/computers/card.dm index 90e91a912e1..7c928d2ebec 100644 --- a/code/WorkInProgress/computer3/computers/card.dm +++ b/code/WorkInProgress/computer3/computers/card.dm @@ -4,7 +4,7 @@ /obj/machinery/computer3/card/hop default_prog = /datum/file/program/card_comp spawn_parts = list(/obj/item/part/computer/storage/hdd,/obj/item/part/computer/cardslot/dual) - spawn_files = list(/datum/file/program/arcade, /datum/file/program/security, /datum/file/camnet_key/mining, /datum/file/camnet_key/entertainment,/datum/file/camnet_key/prison) + spawn_files = list(/datum/file/program/arcade, /datum/file/program/security, /datum/file/camnet_key/miningoutpost, /datum/file/camnet_key/entertainment,/datum/file/camnet_key/prison) /obj/machinery/computer3/card/centcom diff --git a/code/WorkInProgress/computer3/computers/communications.dm b/code/WorkInProgress/computer3/computers/communications.dm index 68a1020a750..b1a4adfa2c2 100644 --- a/code/WorkInProgress/computer3/computers/communications.dm +++ b/code/WorkInProgress/computer3/computers/communications.dm @@ -6,7 +6,7 @@ default_prog = /datum/file/program/communications spawn_parts = list(/obj/item/part/computer/storage/hdd,/obj/item/part/computer/networking/radio/subspace,/obj/item/part/computer/cardslot/dual) spawn_files = list(/datum/file/program/card_comp, /datum/file/program/security, /datum/file/program/crew, /datum/file/program/arcade, - /datum/file/camnet_key, /datum/file/camnet_key/entertainment, /datum/file/camnet_key/singulo) + /datum/file/camnet_key, /datum/file/camnet_key/entertainment, /datum/file/camnet_key/singularity) /datum/file/program/communications diff --git a/code/WorkInProgress/computer3/lapvend.dm b/code/WorkInProgress/computer3/lapvend.dm index 5c4f56ad727..2bae9f2e2d6 100644 --- a/code/WorkInProgress/computer3/lapvend.dm +++ b/code/WorkInProgress/computer3/lapvend.dm @@ -296,6 +296,9 @@ if(access_security in C.access) newlap.spawn_files += (/datum/file/program/secure_data) newlap.spawn_files += (/datum/file/camnet_key) + newlap.spawn_files += (/datum/file/camnet_key/researchoutpost) + newlap.spawn_files += (/datum/file/camnet_key/miningoutpost) + newlap.spawn_files += (/datum/file/camnet_key/telecomms) newlap.spawn_files += (/datum/file/program/security) if(access_armory in C.access) newlap.spawn_files += (/datum/file/program/prisoner) @@ -312,13 +315,17 @@ if(access_engine in C.access) newlap.spawn_files += (/datum/file/program/powermon) if(access_research in C.access) + newlap.spawn_files += (/datum/file/camnet_key/researchoutpost) newlap.spawn_files += (/datum/file/camnet_key/research) - newlap.spawn_files += (/datum/file/camnet_key/bombrange) - newlap.spawn_files += (/datum/file/camnet_key/xeno) + newlap.spawn_files += (/datum/file/camnet_key/anomalyisolation) + newlap.spawn_files += (/datum/file/camnet_key/toxins) + newlap.spawn_files += (/datum/file/camnet_key/telepad) if(access_rd in C.access) newlap.spawn_files += (/datum/file/program/borg_control) if(access_cent_specops in C.access) - newlap.spawn_files += (/datum/file/camnet_key/creed) + newlap.spawn_files += (/datum/file/camnet_key/ert) + newlap.spawn_files += (/datum/file/camnet_key/centcom) + newlap.spawn_files += (/datum/file/camnet_key/thunderdome) newlap.spawn_files += (/datum/file/program/arcade) newlap.spawn_files += (/datum/file/camnet_key/entertainment) //Atlantis: Each laptop gets "invisible" program/security - REQUIRED for camnetkeys to work. diff --git a/code/game/machinery/bots/bots.dm b/code/game/machinery/bots/bots.dm index 41cf368ecef..324a9ce53d9 100644 --- a/code/game/machinery/bots/bots.dm +++ b/code/game/machinery/bots/bots.dm @@ -30,6 +30,7 @@ var/mob/living/silicon/ai/calling_ai //Links a bot to the AI calling it. var/obj/item/device/radio/Radio //The bot's radio, for speaking to people. var/radio_frequency //The bot's default radio speaking freqency. Recommended to be on a department frequency. + var/radio_name = "Common" //var/emagged = 0 //Urist: Moving that var to the general /bot tree as it's used by most bots var/auto_patrol = 0// set to make bot automatically patrol var/turf/patrol_target // this is turf to navigate to (location of beacon) @@ -101,6 +102,7 @@ set_custom_texts() Radio = new /obj/item/device/radio(src) Radio.listening = 0 //Makes bot radios transmit only so no one hears things while adjacent to one. + Radio.config(list("[radio_name]" = 0)) /obj/machinery/bot/proc/add_to_beacons(bot_filter) //Master filter control for bots. Must be placed in the bot's local New() to support map spawned bots. @@ -335,14 +337,13 @@ /obj/machinery/bot/attack_ai(mob/user as mob) attack_hand(user) -/obj/machinery/bot/proc/speak(var/message, freq) //Pass a message to have the bot say() it. Pass a frequency to say it on the radio. +/obj/machinery/bot/proc/speak(var/message, freq, var/freqname = null) //Pass a message to have the bot say() it. Pass a frequency to say it on the radio. if((!on) || (!message)) return if(freq) - return - // Commenting out the radio code until our say code's compatible with /tg/'s - /* Radio.set_frequency(radio_frequency) - Radio.talk_into_atom(src, message, radio_frequency) */ + Radio.set_frequency(radio_frequency) + if(freqname) + Radio.autosay(message, src.name, freqname, list(src.z)) else for(var/mob/O in hearers(src, null)) O.show_message("[src] beeps, \"[message]\"",2) @@ -651,7 +652,7 @@ obj/machinery/bot/proc/start_patrol() botcard.access = user_access + prev_access //Adds the user's access, if any. mode = BOT_SUMMON calc_summon_path() - speak("Responding."/*, radio_frequency*/) + speak("Responding.", radio_frequency, radio_name) return // receive response from beacon @@ -738,7 +739,7 @@ obj/machinery/bot/proc/bot_summon() check_bot_access() path = AStar(loc, summon_target, /turf/proc/CardinalTurfsWithAccess, /turf/proc/Distance_cardinal, 0, 150, id=botcard, exclude=avoid) if(!path || tries >= 5) //Cannot reach target. Give up and announce the issue. - speak("Summon command failed, destination unreachable."/*,radio_frequency*/) + speak("Summon command failed, destination unreachable.", radio_frequency, radio_name) bot_reset() /obj/machinery/bot/proc/summon_step() diff --git a/code/game/machinery/bots/cleanbot.dm b/code/game/machinery/bots/cleanbot.dm index c4d15103cd9..c5b27061bcd 100644 --- a/code/game/machinery/bots/cleanbot.dm +++ b/code/game/machinery/bots/cleanbot.dm @@ -39,6 +39,7 @@ var/next_dest var/next_dest_loc radio_frequency = SRV_FREQ //Service + radio_name = "Service" bot_type = CLEAN_BOT bot_filter = RADIO_CLEANBOT @@ -120,6 +121,7 @@ text("[on ? "On" : "Off"]")) if(allowed(usr) && !open && !emagged) locked = !locked user << "You [ locked ? "lock" : "unlock"] the [src] behaviour controls." + updateUsrDialog() else if(emagged) user << "ERROR" diff --git a/code/game/machinery/bots/ed209bot.dm b/code/game/machinery/bots/ed209bot.dm index 1209b955ce4..7827f1b11c1 100644 --- a/code/game/machinery/bots/ed209bot.dm +++ b/code/game/machinery/bots/ed209bot.dm @@ -34,6 +34,7 @@ var/projectile = /obj/item/projectile/energy/electrode //Holder for projectile type var/shoot_sound = 'sound/weapons/Taser.ogg' radio_frequency = SEC_FREQ + radio_name = "Security" bot_type = SEC_BOT bot_filter = RADIO_SECBOT @@ -267,8 +268,8 @@ Auto Patrol[]"}, M.Stun(5) if(declare_arrests) - //var/area/location = get_area(src) - declare_arrest() + var/area/location = get_area(src) + speak("[arrest_type ? "Detaining" : "Arresting"] level [threatlevel] scumbag [target] in [location].",radio_frequency, radio_name) target.visible_message("[target] has been stunned by [src]!",\ "[target] has been stunned by [src]!") @@ -725,10 +726,4 @@ Auto Patrol[]"}, /obj/machinery/bot/ed209/redtag/New() new /obj/machinery/bot/ed209(get_turf(src),null,"r") - qdel(src) - -/obj/machinery/bot/ed209/proc/declare_arrest() - var/area/location = get_area(src) - for(var/mob/living/carbon/human/human in world) - if((human.z == src.z) && istype(human.glasses, /obj/item/clothing/glasses/hud/security) || istype(human.glasses, /obj/item/clothing/glasses/sunglasses/sechud) && !human.blinded) - human << "\icon[human.glasses] [src.name] is [arrest_type ? "detaining" : "arresting"] level [threatlevel] threat [target] in [location]" + qdel(src) \ No newline at end of file diff --git a/code/game/machinery/bots/floorbot.dm b/code/game/machinery/bots/floorbot.dm index dda1b8afcd0..4c9cda8d9e6 100644 --- a/code/game/machinery/bots/floorbot.dm +++ b/code/game/machinery/bots/floorbot.dm @@ -50,6 +50,7 @@ req_one_access = list(access_construction, access_robotics) var/targetdirection radio_frequency = ENG_FREQ //Engineering channel + radio_name = "Engineering" bot_type = FLOOR_BOT bot_filter = RADIO_FLOORBOT var/process_type //Determines what to do when process_scan() recieves a target. See process_scan() for details. @@ -150,6 +151,7 @@ if(allowed(user) && !open && !emagged) locked = !locked user << "You [locked ? "lock" : "unlock"] \the [src] behaviour controls." + updateUsrDialog() else if(emagged) user << "ERROR" @@ -314,7 +316,8 @@ /obj/machinery/bot/floorbot/proc/nag() //Annoy everyone on the channel to refill us! if(!nagged) - speak("Requesting refill at [get_area(src)]!"/*, radio_frequency*/) + var/area/location = get_area(src) + speak("Requesting refill at [location]!", radio_frequency, radio_name) nagged = 1 /obj/machinery/bot/floorbot/proc/is_hull_breach(var/turf/t) //Ignore space tiles not considered part of a structure, also ignores shuttle docking areas. diff --git a/code/game/machinery/bots/medbot.dm b/code/game/machinery/bots/medbot.dm index 19a89339c62..b0e04695ef0 100644 --- a/code/game/machinery/bots/medbot.dm +++ b/code/game/machinery/bots/medbot.dm @@ -31,6 +31,7 @@ var/declare_cooldown = 0 //Prevents spam of critical patient alerts. var/stationary_mode = 0 //If enabled, the Medibot will not move automatically. radio_frequency = MED_FREQ //Medical frequency + radio_name = "Medical" //Setting which reagents to use to treat what by default. By id. var/treatment_brute = "tricordrazine" var/treatment_oxy = "tricordrazine" @@ -522,8 +523,10 @@ /obj/machinery/bot/medbot/proc/declare(var/crit_patient) if(declare_cooldown) return - //var/area/location = get_area(src) - declare_critical(crit_patient) + if((skin == "bezerk")) + return + var/area/location = get_area(src) + speak("Medical emergency! [crit_patient ? "[crit_patient]" : "A patient"] is in critical condition at [location]!",radio_frequency, radio_name) declare_cooldown = 1 spawn(200) //Twenty seconds declare_cooldown = 0 @@ -589,18 +592,4 @@ S.skin = skin S.name = created_name user.before_take_item(src, 1) - qdel(src) - -/obj/machinery/bot/medbot/proc/declare_critical(var/crit_patient) - var/area/location = get_area(src) - for(var/mob/living/carbon/human/human in world) - if((human.z == src.z) && istype(human.glasses, /obj/item/clothing/glasses/hud/health) || istype(human.glasses, /obj/item/clothing/glasses/hud/health_advanced) && !human.blinded) - if((skin == "bezerk") && (!("syndicate" in human.faction))) - continue - human << "\icon[human.glasses] Medical emergency! [crit_patient ? "[crit_patient]" : "A patient"] is in critical condition at [location]!" - for(var/mob/living/silicon/robot in world) - if((robot.z == src.z) && !robot.blinded) - if((skin == "bezerk") && (!("syndicate" in robot.faction))) - continue - if(robot.sensor_mode == 2) - robot << "Medical emergency! [crit_patient ? "[crit_patient]" : "A patient"] is in critical condition at [location]!" \ No newline at end of file + qdel(src) \ No newline at end of file diff --git a/code/game/machinery/bots/mulebot.dm b/code/game/machinery/bots/mulebot.dm index 0a6f58b0f31..cf1bbac7b71 100644 --- a/code/game/machinery/bots/mulebot.dm +++ b/code/game/machinery/bots/mulebot.dm @@ -94,7 +94,7 @@ var/global/mulebot_count = 0 else if(istype(I, /obj/item/weapon/card/id) || istype(I, /obj/item/device/pda)) if(toggle_lock(user)) user << "Controls [(locked ? "locked" : "unlocked")]." - + updateUsrDialog() else if(istype(I,/obj/item/weapon/cell) && open && !cell) var/obj/item/weapon/cell/C = I user.drop_item() @@ -237,7 +237,7 @@ var/global/mulebot_count = 0 //user << browse("M.U.L.E. Mk. III [suffix ? "([suffix])" : ""][dat]", "window=mulebot;size=350x500") //onclose(user, "mulebot") - var/datum/browser/popup = new(user, "mulebot", "M.U.L.E. Mk. V [suffix ? "([suffix])" : ""]", 350, 500) + var/datum/browser/popup = new(user, "mulebot", "M.U.L.E. Mk. V [suffix ? "([suffix])" : ""]", 350, 535) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(icon, icon_state)) popup.open() @@ -683,6 +683,8 @@ var/global/mulebot_count = 0 /obj/machinery/bot/mulebot/proc/at_target() if(!reached_target) radio_frequency = SUP_FREQ //Supply channel + radio_name = "Supply" + Radio.config(list("[radio_name]" = 0)) visible_message("[src] makes a chiming sound!", "You hear a chime.") playsound(loc, 'sound/machines/chime.ogg', 50, 0) reached_target = 1 @@ -694,9 +696,11 @@ var/global/mulebot_count = 0 playsound(calling_ai, 'sound/machines/chime.ogg',40, 0) calling_ai = null radio_frequency = AIPRIV_FREQ //Report on AI Private instead if the AI is controlling us. + radio_name = "AI Private" + Radio.config(list("[radio_name]" = 0)) if(load) // if loaded, unload at target - speak("Destination [destination] reached. Unloading [load]."/*,radio_frequency*/) + speak("Destination [destination] reached. Unloading [load].", radio_frequency, radio_name) unload(loaddir) else // not loaded @@ -712,7 +716,7 @@ var/global/mulebot_count = 0 if(AM) load(AM) if(report_delivery) - speak("Now loading [load] at [get_area(src)]."/*,radio_frequency*/) + speak("Now loading [load] at [get_area(src)].", radio_frequency, radio_name) // whatever happened, check to see if we return home if(auto_return && destination != home_destination) diff --git a/code/game/machinery/bots/secbot.dm b/code/game/machinery/bots/secbot.dm index 995f0a17378..7bd6181fb30 100644 --- a/code/game/machinery/bots/secbot.dm +++ b/code/game/machinery/bots/secbot.dm @@ -24,6 +24,7 @@ var/check_records = 1 //Does it check security records? var/arrest_type = 0 //If true, don't handcuff radio_frequency = SEC_FREQ //Security channel + radio_name = "Security" bot_type = SEC_BOT bot_filter = RADIO_SECBOT @@ -41,7 +42,7 @@ name = "Officer Beepsky" desc = "It's Officer Beepsky! Powered by a potato and a shot of whiskey." idcheck = 0 - weaponscheck = 0 + weaponscheck = 1 auto_patrol = 1 /obj/machinery/bot/secbot/pingsky @@ -230,8 +231,8 @@ Auto Patrol: []"}, M.Stun(5) if(declare_arrests) - //var/area/location = get_area(src) - declare_arrest() + var/area/location = get_area(src) + speak("[arrest_type ? "Detaining" : "Arresting"] level [threatlevel] scumbag [target] in [location].",radio_frequency, radio_name) target.visible_message("[target] has been stunned by [src]!",\ "[target] has been stunned by [src]!") @@ -475,13 +476,4 @@ Auto Patrol: []"}, overlays -= "hs_arm" new /obj/item/robot_parts/l_arm(get_turf(src)) user << "You remove the robot arm from [src]." - build_step-- - -/obj/machinery/bot/secbot/proc/declare_arrest() - var/area/location = get_area(src) - for(var/mob/living/carbon/human/human in world) - if((human.z == src.z) && istype(human.glasses, /obj/item/clothing/glasses/hud/security) || istype(human.glasses, /obj/item/clothing/glasses/sunglasses/sechud) && !human.blinded) - human << "\icon[human.glasses] [src.name] is [arrest_type ? "detaining" : "arresting"] level [threatlevel] threat [target] in [location]" - for(var/mob/living/silicon/robot in world) - if((robot.z == src.z) && !robot.blinded && robot.sensor_mode == 1) - robot << "[src.name] is [arrest_type ? "detaining" : "arresting"] level [threatlevel] threat [target] in [location]" \ No newline at end of file + build_step-- \ No newline at end of file diff --git a/code/game/machinery/computer/specops_shuttle.dm b/code/game/machinery/computer/specops_shuttle.dm index 4d3f28f91d0..bd08fcf9861 100644 --- a/code/game/machinery/computer/specops_shuttle.dm +++ b/code/game/machinery/computer/specops_shuttle.dm @@ -23,14 +23,13 @@ var/specops_shuttle_timeleft = 0 var/specops_shuttle_timereset = 0 /proc/specops_return() - var/area/centcom/control/command = locate()//To find announcer. This area should exist for this proc to work. - var/mob/living/silicon/decoy/announcer = locate() in command//We need a fake AI to announce some stuff below. Otherwise it will be wonky. + var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. + announcer.config(list("Response Team" = 0)) var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. var/message = "\"THE SPECIAL OPERATIONS SHUTTLE IS PREPARING TO RETURN\""//Initial message shown. if(announcer) - announcer.say(message) - announcer.say(message) + announcer.autosay(message, "A.L.I.C.E.", "Response Team", list(1,2)) while(specops_shuttle_time - world.timeofday > 0) var/ticksleft = specops_shuttle_time - world.timeofday @@ -46,7 +45,7 @@ var/specops_shuttle_timeleft = 0 message = "\"ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN\"" if(rounded_time_left==0) message = "\"ALERT: TAKEOFF\"" - announcer.say(message) + announcer.autosay(message, "A.L.I.C.E.", "Response Team") message_tracker -= rounded_time_left//Remove the number from the list so it won't be called again next cycle. //Should call all the numbers but lag could mean some issues. Oh well. Not much I can do about that. @@ -94,21 +93,20 @@ var/specops_shuttle_timeleft = 0 for(var/obj/machinery/computer/specops_shuttle/S in world) S.specops_shuttle_timereset = world.time + SPECOPS_RETURN_DELAY + + del(announcer) /proc/specops_process() var/area/centcom/specops/special_ops = locate()//Where is the specops area located? - var/area/centcom/control/command = locate()//To find announcer. This area should exist for this proc to work. - var/mob/living/silicon/decoy/announcer = locate() in command//We need a fake AI to announce some stuff below. Otherwise it will be wonky. - + var/obj/item/device/radio/intercom/announcer = new /obj/item/device/radio/intercom(null)//We need a fake AI to announce some stuff below. Otherwise it will be wonky. + announcer.config(list("Response Team" = 0)) + var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. var/message = "\"THE SPECIAL OPERATIONS SHUTTLE IS PREPARING FOR LAUNCH\""//Initial message shown. if(announcer) - announcer.say(message) - announcer.say(message) - /* - message = "ARMORED SQUAD TAKE YOUR POSITION ON GRAVITY LAUNCH PAD" - announcer.say(message) - */ + announcer.autosay(message, "A.L.I.C.E.", "Response Team") + //message = "ARMORED SQUAD TAKE YOUR POSITION ON GRAVITY LAUNCH PAD" + //announcer.autosay(message, "A.L.I.C.E.", "Response Team") while(specops_shuttle_time - world.timeofday > 0) var/ticksleft = specops_shuttle_time - world.timeofday @@ -124,8 +122,7 @@ var/specops_shuttle_timeleft = 0 message = "\"ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN\"" if(rounded_time_left==0) message = "\"ALERT: TAKEOFF\"" - announcer.say(message) - announcer.say(message) + announcer.autosay(message, "A.L.I.C.E.", "Response Team") message_tracker -= rounded_time_left//Remove the number from the list so it won't be called again next cycle. //Should call all the numbers but lag could mean some issues. Oh well. Not much I can do about that. @@ -237,6 +234,8 @@ var/specops_shuttle_timeleft = 0 for(var/obj/machinery/computer/specops_shuttle/S in world) S.specops_shuttle_timereset = world.time + SPECOPS_RETURN_DELAY + + del(announcer) /proc/specops_can_move() if(specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) @@ -339,248 +338,4 @@ var/specops_shuttle_timeleft = 0 add_fingerprint(usr) updateUsrDialog() - return - -/*//Config stuff -#define SPECOPS_MOVETIME 600 //Time to station is milliseconds. 60 seconds, enough time for everyone to be on the shuttle before it leaves. -#define SPECOPS_STATION_AREATYPE "/area/shuttle/specops/station" //Type of the spec ops shuttle area for station -#define SPECOPS_DOCK_AREATYPE "/area/shuttle/specops/centcom" //Type of the spec ops shuttle area for dock - -var/specops_shuttle_moving_to_station = 0 -var/specops_shuttle_moving_to_centcom = 0 -var/specops_shuttle_at_station = 0 -var/specops_shuttle_can_send = 1 -var/specops_shuttle_time = 0 -var/specops_shuttle_timeleft = 0 - -/obj/machinery/computer/specops_shuttle - name = "Spec. Ops. Shuttle Console" - icon = 'icons/obj/computer.dmi' - icon_state = "shuttle" - req_access = list(access_cent_specops) - var/temp = null - var/hacked = 0 - var/allowedtocall = 0 - -/proc/specops_process() - var/area/centcom/control/cent_com = locate()//To find announcer. This area should exist for this proc to work. - var/area/centcom/specops/special_ops = locate()//Where is the specops area located? - var/mob/living/silicon/decoy/announcer = locate() in cent_com//We need a fake AI to announce some stuff below. Otherwise it will be wonky. - - var/message_tracker[] = list(0,1,2,3,5,10,30,45)//Create a a list with potential time values. - var/message = "THE SPECIAL OPERATIONS SHUTTLE IS PREPARING FOR LAUNCH"//Initial message shown. - if(announcer) - announcer.say(message) - message = "ARMORED SQUAD TAKE YOUR POSITION ON GRAVITY LAUNCH PAD" - announcer.say(message) - - while(specops_shuttle_time - world.timeofday > 0) - var/ticksleft = specops_shuttle_time - world.timeofday - - if(ticksleft > 1e5) - specops_shuttle_time = world.timeofday + 10 // midnight rollover - specops_shuttle_timeleft = (ticksleft / 10) - - //All this does is announce the time before launch. - if(announcer) - var/rounded_time_left = round(specops_shuttle_timeleft)//Round time so that it will report only once, not in fractions. - if(rounded_time_left in message_tracker)//If that time is in the list for message announce. - message = "ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN" - if(rounded_time_left==0) - message = "ALERT: TAKEOFF" - announcer.say(message) - message_tracker -= rounded_time_left//Remove the number from the list so it won't be called again next cycle. - //Should call all the numbers but lag could mean some issues. Oh well. Not much I can do about that. - - sleep(5) - - specops_shuttle_moving_to_station = 0 - specops_shuttle_moving_to_centcom = 0 - - specops_shuttle_at_station = 1 - if (specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return - - if (!specops_can_move()) - usr << "\red The Special Operations shuttle is unable to leave." - return - - //Begin Marauder launchpad. - spawn(0)//So it parallel processes it. - for(var/obj/machinery/door/poddoor/M in special_ops) - switch(M.id) - if("ASSAULT0") - spawn(10)//1 second delay between each. - M.open() - if("ASSAULT1") - spawn(20) - M.open() - if("ASSAULT2") - spawn(30) - M.open() - if("ASSAULT3") - spawn(40) - M.open() - - sleep(10) - - var/spawn_marauder[] = new() - for(var/obj/effect/landmark/L in landmarks_list) - if(L.name == "Marauder Entry") - spawn_marauder.Add(L) - for(var/obj/effect/landmark/L in landmarks_list) - if(L.name == "Marauder Exit") - var/obj/effect/portal/P = new(L.loc) - P.invisibility = 101//So it is not seen by anyone. - P.failchance = 0//So it has no fail chance when teleporting. - P.target = pick(spawn_marauder)//Where the marauder will arrive. - spawn_marauder.Remove(P.target) - - sleep(10) - - for(var/obj/machinery/mass_driver/M in special_ops) - switch(M.id) - if("ASSAULT0") - spawn(10) - M.drive() - if("ASSAULT1") - spawn(20) - M.drive() - if("ASSAULT2") - spawn(30) - M.drive() - if("ASSAULT3") - spawn(40) - M.drive() - - sleep(50)//Doors remain open for 5 seconds. - - for(var/obj/machinery/door/poddoor/M in special_ops) - switch(M.id)//Doors close at the same time. - if("ASSAULT0") - spawn(0) - M.close() - if("ASSAULT1") - spawn(0) - M.close() - if("ASSAULT2") - spawn(0) - M.close() - if("ASSAULT3") - spawn(0) - M.close() - special_ops.readyreset()//Reset firealarm after the team launched. - //End Marauder launchpad. - - var/area/start_location = locate(/area/shuttle/specops/centcom) - var/area/end_location = locate(/area/shuttle/specops/station) - - var/list/dstturfs = list() - var/throwy = world.maxy - - for(var/turf/T in end_location) - dstturfs += T - if(T.y < throwy) - throwy = T.y - - // hey you, get out of the way! - for(var/turf/T in dstturfs) - // find the turf to move things to - var/turf/D = locate(T.x, throwy - 1, 1) - //var/turf/E = get_step(D, SOUTH) - for(var/atom/movable/AM as mob|obj in T) - AM.Move(D) - if(istype(T, /turf/simulated)) - del(T) - - start_location.move_contents_to(end_location) - - for(var/turf/T in get_area_turfs(end_location) ) - var/mob/M = locate(/mob) in T - M << "\red You have arrived to [station_name]. Commence operation!" - -/proc/specops_can_move() - if(specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return 0 - else return 1 - -/obj/machinery/computer/specops_shuttle/attackby(I as obj, user as mob) - return attack_hand(user) - -/obj/machinery/computer/specops_shuttle/attack_ai(var/mob/user as mob) - return attack_hand(user) - -/obj/machinery/computer/specops_shuttle/attack_paw(var/mob/user as mob) - return attack_hand(user) - -/obj/machinery/computer/specops_shuttle/attackby(I as obj, user as mob) - if(istype(I,/obj/item/weapon/card/emag)) - user << "\blue The electronic systems in this console are far too advanced for your primitive hacking peripherals." - else - return attack_hand(user) - -/obj/machinery/computer/specops_shuttle/attack_hand(var/mob/user as mob) - if(!allowed(user)) - user << "\red Access Denied." - return - -// if (sent_strike_team == 0) -// usr << "\red The strike team has not yet deployed." -// return - - if(..()) - return - - user.set_machine(src) - var/dat - if (temp) - dat = temp - else - dat += {"
Special Operations Shuttle
- \nLocation: [specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom ? "Departing for [station_name] in ([specops_shuttle_timeleft] seconds.)":specops_shuttle_at_station ? "Station":"Dock"]
- [specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom ? "\n*The Special Ops. shuttle is already leaving.*
\n
":specops_shuttle_at_station ? "\nShuttle Offline
\n
":"\nDepart to [station_name]
\n
"] - \nClose"} - - user << browse(dat, "window=computer;size=575x450") - onclose(user, "computer") - return - -/obj/machinery/computer/specops_shuttle/Topic(href, href_list) - if(..()) - return - - if ((usr.contents.Find(src) || (in_range(src, usr) && istype(loc, /turf))) || (istype(usr, /mob/living/silicon))) - usr.set_machine(src) - - if (href_list["sendtodock"]) - if(!specops_shuttle_at_station|| specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return - - usr << "\blue Central Command will not allow the Special Operations shuttle to return." - return - - else if (href_list["sendtostation"]) - if(specops_shuttle_at_station || specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return - - if (!specops_can_move()) - usr << "\red The Special Operations shuttle is unable to leave." - return - - usr << "\blue The Special Operations shuttle will arrive on [station_name] in [(SPECOPS_MOVETIME/10)] seconds." - - temp += "Shuttle departing.

OK" - updateUsrDialog() - - var/area/centcom/specops/special_ops = locate() - if(special_ops) - special_ops.readyalert()//Trigger alarm for the spec ops area. - specops_shuttle_moving_to_station = 1 - - specops_shuttle_time = world.timeofday + SPECOPS_MOVETIME - spawn(0) - specops_process() - - else if (href_list["mainmenu"]) - temp = null - - add_fingerprint(usr) - updateUsrDialog() - return - */ \ No newline at end of file + return \ No newline at end of file diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index 38fd5b2d327..ccdc3a9bce4 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -107,7 +107,7 @@ M.Weaken(10) - if(master && wires & 1) + if(master) master.receive_signal() return diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index bef99c65bde..9f177bdf642 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -196,7 +196,7 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use /obj/item/device/radio/proc/isWireCut(var/index) return wires.IsIndexCut(index) -/obj/item/device/radio/proc/autosay(var/message, var/from, var/channel) //BS12 EDIT +/obj/item/device/radio/proc/autosay(var/message, var/from, var/channel, var/zlevel = list(1)) //BS12 EDIT var/datum/radio_frequency/connection = null if(channel && channels && channels.len > 0) if (channel == "department") @@ -215,7 +215,7 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use Broadcast_Message(connection, A, 0, "*garbled automated announcement*", src, message, from, "Automated Announcement", from, "synthesized voice", - 4, 0, list(1), 1459) + 4, 0, zlevel, connection.frequency) del(A) return diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 916b33ffbed..47aef8346a3 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -161,15 +161,15 @@ return return -/obj/item/stack/proc/use(var/amount) - src.amount-=amount - if (src.amount<=0) - var/oldsrc = src - src = null //dont kill proc after del() +/obj/item/stack/proc/use(var/used) + if (amount < used) + return 0 + amount -= used + if (amount <= 0) if(usr) - usr.before_take_item(oldsrc) - qdel(oldsrc) - return + usr.before_take_item(src, 1) + qdel(src) + return 1 /obj/item/stack/proc/add_to_stacks(mob/usr as mob) var/obj/item/stack/oldsrc = src diff --git a/code/game/objects/structures/electricchair.dm b/code/game/objects/structures/electricchair.dm index 2330e63ecc3..fb66a59fca6 100644 --- a/code/game/objects/structures/electricchair.dm +++ b/code/game/objects/structures/electricchair.dm @@ -34,6 +34,7 @@ else on = 1 icon_state = "echair1" + shock() usr << "You switch [on ? "on" : "off"] [src]." return @@ -70,8 +71,10 @@ sleep(1) buckled_mob.burn_skin(85) buckled_mob.Stun(600) + on = 0 visible_message("The electric chair went off!", "You hear a deep sharp shock!") A.power_light = light A.updateicon() - return \ No newline at end of file + return + \ No newline at end of file diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 36f64018d2a..3e11eb4edd3 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -277,7 +277,7 @@ icon_state = "crown" item_state = "crown" desc = "A gliterring bananium crown with spessjewels in it. Swaggy." - flags = FPRINT | TABLEPASS | BLOCKHAIR + flags = FPRINT | TABLEPASS /obj/item/clothing/head/fedora diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index c58612463ca..63ebadd4a19 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -1098,7 +1098,6 @@ if( (cell_charge/CELLRATE+perapc) >= lastused_total) // can we draw enough from cell+grid to cover last usage? cell_charge = min(cell_maxcharge, cell_charge + CELLRATE * perapc) //recharge with what we can - cell.charge = cell_charge add_load(perapc) // so draw what we can from the grid charging = 0 diff --git a/code/modules/shuttles/shuttle_specops.dm b/code/modules/shuttles/shuttle_specops.dm index c9fbce9b4b9..8a95e79d35e 100644 --- a/code/modules/shuttles/shuttle_specops.dm +++ b/code/modules/shuttles/shuttle_specops.dm @@ -37,7 +37,7 @@ /datum/shuttle/ferry/multidock/specops/proc/radio_announce(var/message) if(announcer) - announcer.autosay(message, "A.L.I.C.E.", "Response Team") + announcer.autosay(message, "A.L.I.C.E.", "Response Team", list(1,2)) /datum/shuttle/ferry/multidock/specops/launch(var/user) if (!can_launch()) diff --git a/code/modules/vehicles/ambulance.dm b/code/modules/vehicles/ambulance.dm index 1457d85b0b6..8212e93b085 100644 --- a/code/modules/vehicles/ambulance.dm +++ b/code/modules/vehicles/ambulance.dm @@ -77,7 +77,8 @@ /obj/vehicle/train/ambulance/update_icon() if(open) - icon_state = "mulebot-hatch" + //icon_state = "mulebot-hatch" + icon_state = initial(icon_state) else icon_state = initial(icon_state) diff --git a/code/modules/vehicles/janicart.dm b/code/modules/vehicles/janicart.dm index d61cc1d2ab4..8219335c24a 100644 --- a/code/modules/vehicles/janicart.dm +++ b/code/modules/vehicles/janicart.dm @@ -127,7 +127,8 @@ /obj/vehicle/train/janitor/update_icon() if(open) - icon_state = "mulebot-hatch" + //icon_state = "mulebot-hatch" + icon_state = initial(icon_state) else icon_state = initial(icon_state) diff --git a/code/modules/virus2/disease2.dm b/code/modules/virus2/disease2.dm index 26759b39508..46c051d2eac 100644 --- a/code/modules/virus2/disease2.dm +++ b/code/modules/virus2/disease2.dm @@ -56,6 +56,11 @@ if(mob.stat == 2) return + + var/mob/living/carbon/human/MS = mob + if(MS && (MS.species.flags & IS_SYNTHETIC)) + return + if(stage <= 1 && clicks == 0) // with a certain chance, the mob may become immune to the disease before it starts properly if(prob(5)) mob.antibodies |= antigen diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 72b5e1bf025..c03f9e0b2cf 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm index 382f08b3a9b..67778e1cd28 100644 --- a/maps/cyberiad.dmm +++ b/maps/cyberiad.dmm @@ -1437,7 +1437,7 @@ "aBG" = (/obj/structure/window/basic{dir = 8},/obj/structure/disposalpipe/junction{dir = 8},/turf/simulated/floor,/area/crew_quarters/fitness) "aBH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/closet/lasertag/blue,/turf/simulated/floor,/area/crew_quarters/fitness) "aBI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/closet/lasertag/red,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor,/area/crew_quarters/fitness) -"aBJ" = (/obj/machinery/disposal,/turf/simulated/floor{icon_state = "dark"},/area/hydroponics) +"aBJ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/hydroponics) "aBK" = (/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Fitness Room North-East"; network = list("SS13")},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/crew_quarters/fitness) "aBL" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plating,/area/maintenance/fsmaint2) "aBM" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple{_color = "blue"; icon_state = "intact-b-f"; level = 1; name = "pipe"},/turf/simulated/floor/wood,/area/library) @@ -2596,7 +2596,7 @@ "aXV" = (/obj/machinery/librarypubliccomp,/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/library) "aXW" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) "aXX" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/device/eftpos{eftpos_name = "Library EFTPOS scanner"},/obj/item/device/camera{desc = "A one use - polaroid camera. 30 photos left."; name = "Camera"; pictures_left = 30; pixel_x = 0; pixel_y = 0},/turf/simulated/floor{tag = "icon-cult"; icon_state = "cult"; dir = 2},/area/library) -"aXY" = (/obj/machinery/disposal,/turf/simulated/floor/wood,/area/bridge/meeting_room) +"aXY" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/wood,/area/bridge/meeting_room) "aXZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/wood,/area/bridge/meeting_room) "aYa" = (/turf/simulated/floor{dir = 1; icon_state = "chapel"},/area/chapel/main) "aYb" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{dir = 4; icon_state = "chapel"},/area/chapel/main) @@ -2805,7 +2805,7 @@ "bbW" = (/obj/structure/door_assembly,/turf/simulated/floor/plating,/area/maintenance/abandonedbar) "bbX" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 8; icon_state = "right"; name = "Library Desk Door"; req_access_txt = "37"},/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/wood,/area/library) "bbY" = (/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/wood,/area/library) -"bbZ" = (/obj/machinery/disposal,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/simulated/floor{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/crew_quarters/kitchen) +"bbZ" = (/obj/machinery/disposal,/obj/machinery/alarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/crew_quarters/kitchen) "bca" = (/obj/machinery/power/apc{dir = 8; name = "Chapel APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/light{dir = 8},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) "bcb" = (/obj/structure/stool,/turf/simulated/floor{dir = 8; icon_state = "chapel"},/area/chapel/main) "bcc" = (/obj/structure/stool,/turf/simulated/floor{icon_state = "chapel"},/area/chapel/main) @@ -3168,7 +3168,7 @@ "biV" = (/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/simulated/floor/wood,/area/bridge/meeting_room) "biW" = (/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/camera{c_tag = "Bridge Conference Room"; dir = 2; network = list("SS13")},/turf/simulated/floor/wood,/area/bridge/meeting_room) "biX" = (/obj/machinery/power/apc{dir = 1; name = "Conference Room APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room) -"biY" = (/obj/machinery/disposal,/turf/simulated/floor,/area/crew_quarters/fitness) +"biY" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor,/area/crew_quarters/fitness) "biZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/bridge/meeting_room) "bja" = (/obj/machinery/camera{c_tag = "Chapel Chaplain's Office"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "grimy"},/area/chapel/office) "bjb" = (/turf/simulated/floor/bluegrid,/area/turret_protected/ai) @@ -3179,7 +3179,7 @@ "bjg" = (/obj/machinery/turret,/turf/simulated/floor/bluegrid,/area/turret_protected/ai) "bjh" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/wood,/area/crew_quarters/captain) "bji" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/wood,/area/crew_quarters/captain) -"bjj" = (/obj/machinery/disposal,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/telesci) +"bjj" = (/obj/machinery/disposal,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/telesci) "bjk" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/carpet,/area/crew_quarters/captain) "bjl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/turf/simulated/floor/carpet,/area/crew_quarters/captain) "bjm" = (/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/carpet,/area/crew_quarters/captain) @@ -3439,7 +3439,7 @@ "bog" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/crew_quarters/recruit) "boh" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "bot"},/area/crew_quarters/recruit) "boi" = (/obj/structure/filingcabinet,/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/quartermaster/qm) -"boj" = (/obj/structure/filingcabinet/filingcabinet,/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/qm) +"boj" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor/plating,/area/maintenance/disposal) "bok" = (/obj/machinery/computer/supplycomp,/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Cargo Quartermaster's Office"; dir = 2; network = list("SS13")},/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/qm) "bol" = (/obj/machinery/computer/security/mining{network = list("Mining Outpost")},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/qm) "bom" = (/obj/structure/table,/obj/item/weapon/cartridge/quartermaster{pixel_x = 6; pixel_y = 5},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster{pixel_x = -4; pixel_y = 7},/obj/machinery/power/apc{dir = 4; name = "Quartermaster APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor{tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5},/area/quartermaster/qm) @@ -3576,7 +3576,7 @@ "bqN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/medical/morgue) "bqO" = (/obj/structure/morgue{tag = "icon-morgue1 (WEST)"; icon_state = "morgue1"; dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/medical/morgue) "bqP" = (/obj/structure/morgue,/turf/simulated/floor,/area/medical/morgue) -"bqQ" = (/obj/machinery/disposal,/turf/simulated/floor/plating,/area/maintenance/incinerator) +"bqQ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plating,/area/maintenance/incinerator) "bqR" = (/turf/simulated/floor,/area/assembly/chargebay) "bqS" = (/obj/machinery/door_control{dir = 2; id = "mechbay"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24},/turf/simulated/floor{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/assembly/chargebay) "bqT" = (/turf/simulated/floor{dir = 1; icon_state = "warning"},/area/assembly/chargebay) @@ -3893,7 +3893,7 @@ "bwS" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/assembly/chargebay) "bwT" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/assembly/chargebay) "bwU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area) -"bwV" = (/obj/machinery/disposal,/turf/simulated/floor{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/crew_quarters/hor) +"bwV" = (/obj/machinery/camera{c_tag = "Cargo Delivery Office"; dir = 2; network = list("SS13")},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/sorting) "bwW" = (/turf/simulated/floor,/area/assembly/robotics) "bwX" = (/turf/simulated/floor{dir = 8; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTH)"},/area/assembly/robotics) "bwY" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor{icon_state = "white"},/area/assembly/robotics) @@ -3929,7 +3929,7 @@ "bxC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/office) "bxD" = (/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/office) "bxE" = (/obj/structure/stool/bed/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Cargo Technician"},/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/office) -"bxF" = (/obj/machinery/computer/supplycomp,/turf/simulated/floor{tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5},/area/quartermaster/office) +"bxF" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{dir = 2; icon_state = "cafeteria"; tag = "icon-cafeteria (NORTHEAST)"},/area/crew_quarters/hor) "bxG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "browncorner"},/area/hallway/primary/central/sw) "bxH" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/hallway/primary/central/sw) "bxI" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/hallway/primary/central/sw) @@ -3998,7 +3998,7 @@ "byT" = (/obj/machinery/computer/shuttle_control/research{req_access = list(65)},/turf/simulated/shuttle/floor,/area/shuttle/research/station) "byU" = (/obj/machinery/photocopier,/obj/machinery/camera{c_tag = "Recruitment Office"; dir = 4; network = list("SS13")},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor,/area/crew_quarters/recruit) "byV" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/media/receiver/boombox,/obj/machinery/light_switch{pixel_x = 27},/turf/simulated/floor,/area/crew_quarters/recruit) -"byW" = (/obj/structure/closet/secure_closet/cargotech,/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/office) +"byW" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5},/area/quartermaster/office) "byX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/quartermaster/office) "byY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor,/area/quartermaster/office) "byZ" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/unary/vent_pump,/obj/machinery/photocopier,/turf/simulated/floor/carpet,/area/magistrateoffice) @@ -4006,7 +4006,7 @@ "bzb" = (/obj/structure/table,/turf/simulated/floor{dir = 9; icon_state = "brown"},/area/quartermaster/office) "bzc" = (/obj/structure/table,/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/office) "bzd" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/office) -"bze" = (/obj/structure/table,/turf/simulated/floor{tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5},/area/quartermaster/office) +"bze" = (/obj/structure/closet/secure_closet/cargotech,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/simulated/floor{dir = 8; icon_state = "brown"},/area/quartermaster/office) "bzf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/quartermaster/office) "bzg" = (/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 4; icon_state = "manifold-r-f"; initialize_directions = 11; level = 1; name = "pipe manifold"},/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/hologram/holopad,/turf/simulated/floor/wood,/area/mimeoffice) "bzh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/quartermaster/office) @@ -4595,7 +4595,7 @@ "bKs" = (/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/sorting) "bKt" = (/obj/machinery/status_display/supply_display{density = 0; pixel_y = 0; pixel_z = 32},/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/sorting) "bKu" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "QM #1"},/obj/machinery/bot/mulebot{beacon_freq = 1400; home_destination = "QM #1"; suffix = "#1"},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "bot"},/area/quartermaster/sorting) -"bKv" = (/obj/machinery/camera{c_tag = "Cargo Delivery Office"; dir = 2; network = list("SS13")},/turf/simulated/floor{icon_state = "delivery"},/area/quartermaster/sorting) +"bKv" = (/obj/machinery/computer/supplycomp,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/turf/simulated/floor{tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5},/area/quartermaster/office) "bKw" = (/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Delivery Office APC"; pixel_y = 24},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"; tag = "loading"},/area/quartermaster/sorting) "bKx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/quartermaster/sorting) "bKy" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/machinery/disposal/deliveryChute{dir = 4},/turf/simulated/floor/plating,/area/quartermaster/sorting) @@ -4854,7 +4854,7 @@ "bPr" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor{dir = 2; icon_state = "yellowcorner"},/area/hallway/primary/aft) "bPs" = (/obj/structure/closet/jcloset,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; icon_state = "off"; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor,/area/janitor) "bPt" = (/obj/structure/closet/l3closet/janitor,/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 1; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/turf/simulated/floor,/area/janitor) -"bPu" = (/obj/machinery/disposal,/turf/simulated/floor,/area/assembly/robotics) +"bPu" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor,/area/quartermaster/storage) "bPv" = (/obj/machinery/atmospherics/pipe/manifold{_color = "red"; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/obj/machinery/newscaster{pixel_y = 30},/turf/simulated/floor,/area/janitor) "bPw" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor,/area/janitor) "bPx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/reagent_dispensers/spacecleanertank{pixel_y = 30},/turf/simulated/floor,/area/janitor) @@ -5535,7 +5535,7 @@ "ccw" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/telesci) "ccx" = (/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/telesci) "ccy" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/telesci) -"ccz" = (/obj/machinery/disposal,/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) +"ccz" = (/obj/structure/filingcabinet/filingcabinet,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/simulated/floor{tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1},/area/quartermaster/qm) "ccA" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/radiation,/turf/simulated/floor,/area/toxins/telesci) "ccB" = (/obj/machinery/light,/obj/structure/closet/radiation,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "floorgrime"},/area/toxins/telesci) "ccC" = (/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"}) @@ -6160,7 +6160,7 @@ "cox" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/engine,/area/toxins/xenobiology) "coy" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/engine,/area/toxins/xenobiology) "coz" = (/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 = "xenobio3"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area) -"coA" = (/obj/machinery/disposal,/turf/simulated/floor{icon_state = "white"},/area/medical/virology/lab) +"coA" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor,/area/assembly/robotics) "coB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "coC" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 1; scrub_Toxins = 1},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "coD" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor{dir = 10; icon_state = "warnwhite"; tag = "icon-warnwhite (NORTHEAST)"},/area/toxins/xenobiology) @@ -6341,7 +6341,7 @@ "crW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor/plating,/area/medical/virology) "crX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/medical/virology) "crY" = (/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 = "xenobio2"; name = "Containment Blast Doors"; opacity = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area) -"crZ" = (/obj/machinery/disposal,/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/toxins/xenobiology) +"crZ" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/toxins/lab) "csa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "csb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "csc" = (/obj/machinery/atmospherics/pipe/manifold{_color = "red"; dir = 1; icon_state = "manifold-r-f"; level = 1; name = "pipe manifold"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) @@ -6557,7 +6557,7 @@ "cwe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "cwf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "cwg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/vending/wallmed1{name = "Emergency NanoMed"; pixel_x = 0; pixel_y = -32; req_access_txt = "0"},/obj/machinery/monkey_recycler,/turf/simulated/floor,/area/toxins/xenobiology) -"cwh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/toxins/xenobiology) +"cwh" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{icon_state = "white"},/area/medical/virology/lab) "cwi" = (/obj/structure/table,/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 1; scrub_Toxins = 1},/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/turf/simulated/floor,/area/toxins/xenobiology) "cwj" = (/turf/simulated/floor/plating/airless,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk4"; icon_state = "catwalk4"},/area/solar/starboard) "cwk" = (/turf/simulated/floor/plating/airless,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/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) @@ -6589,7 +6589,7 @@ "cwK" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/engine/hardsuitstorage) "cwL" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/power/apc{dir = 1; name = "Engineering Hardsuit Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/engine/hardsuitstorage) "cwM" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/obj/machinery/light{dir = 1},/obj/machinery/alarm{pixel_x = 0; pixel_y = 24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/hardsuitstorage) -"cwN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/disposal,/turf/simulated/floor{dir = 1; icon_state = "caution"},/area/engine/break_room) +"cwN" = (/obj/machinery/disposal,/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/toxins/xenobiology) "cwO" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/clothing/suit/space/rig,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space/rig,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/engine/hardsuitstorage) "cwP" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/plating,/area/engine/chiefs_office) "cwQ" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/obj/structure/table/reinforced,/obj/item/weapon/rcd,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/device/megaphone,/mob/living/simple_animal/parrot/Poly,/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/engine/chiefs_office) @@ -6752,7 +6752,7 @@ "czR" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor{icon_state = "white"},/area/toxins/xenobiology) "czS" = (/turf/space,/area/vox_station/southeast_solars) "czT" = (/obj/machinery/shieldgen,/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/storage/secure) -"czU" = (/obj/machinery/disposal,/turf/simulated/floor,/area/atmos/control) +"czU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/disposal,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{icon_state = "whitehall"; dir = 1},/area/toxins/xenobiology) "czV" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/engine/hardsuitstorage) "czW" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plating,/area/engine/hardsuitstorage) "czX" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor/plating,/area/engine/hardsuitstorage) @@ -6812,7 +6812,7 @@ "cAZ" = (/turf/simulated/floor/plating/airless,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/plating/airless/catwalk{tag = "icon-catwalk8"; icon_state = "catwalk8"},/area/solar/starboard) "cBa" = (/obj/machinery/light/small{dir = 8},/obj/machinery/shieldgen,/turf/simulated/floor/plating,/area/storage/secure) "cBb" = (/obj/machinery/the_singularitygen{anchored = 0},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 4},/area/storage/secure) -"cBc" = (/obj/machinery/disposal,/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/toxins/xenobiology) +"cBc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{dir = 1; icon_state = "caution"},/area/engine/break_room) "cBd" = (/obj/machinery/door/firedoor/border_only{dir = 1; layer = 2.5; name = "Engineering Firelock"},/obj/machinery/door/airlock/maintenance_hatch{name = "Supermatter SMES"; req_access_txt = "11"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/reactor_core) "cBe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/reactor_core) "cBf" = (/obj/machinery/alarm{pixel_x = 0; pixel_y = 24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/engine/reactor_core) @@ -11232,7 +11232,7 @@ "ehZ" = (/obj/machinery/atmospherics/pipe/manifold{dir = 1},/turf/simulated/floor,/area/mine/living_quarters) "eia" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/obj/machinery/light,/turf/simulated/floor,/area/mine/living_quarters) "eib" = (/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_west_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = null},/turf/simulated/floor,/area/mine/living_quarters) -"eic" = (/obj/machinery/disposal,/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/traitor/surgery) +"eic" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor,/area/atmos/control) "eid" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) "eie" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) "eif" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple{dir = 4; level = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) @@ -12547,6 +12547,8 @@ "eHo" = (/turf/simulated/floor{dir = 4; icon_state = "yellow"},/area/engiestation) "eHp" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/simulated/floor,/area/engiestation) "eHq" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet,/turf/simulated/floor/plating/airless/asteroid,/area/research_outpost/power) +"eHr" = (/obj/machinery/disposal,/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/toxins/xenobiology) +"eHs" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor{icon_state = "vault"; dir = 5},/area/traitor/surgery) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -12678,22 +12680,22 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablmblmblmblmblmblmblmblmblmblmaaaaaaaCZblnaEjbloblpaDfblqblraaiblsbltbltbltbluaaqblvbdWaSqaaiblwbiIbiHbiIbiIaaibiKblxblyaaibiLaaibhKblzblAbhKblBaaiblCbkcbiSblDblEblFblGblHblIblJbkiblKaaiaaiblLblMaaqaaqaaqblNblOaaiafjblPbkubkubkvblQbkxbkublRaaiblSbkBbkBbkCbkDbkEbkGbkGbkGbkGbkGbkGbkGblTbkGbkGbkGbkGbkGbkGblUblVblVblVblVblVblVblVblVblVblVblVblVblVblVblWblXblYblbblbblZaRLaRLaRLaRLaRLbhkaRLaRLaRLaRLaRLaRLaRLaRLaRLaRLaRLaRLbmaaRLbmbbmcaWDaWDaWDaWDaWDaWDaWDbmdbfcbcjaoKaoKbckaMPaMPaMPaMPaMPaMPaMPaMPaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablmblmblmblmblmblmblmblmblmblmblmaEUaEVaEWaaiaaiaaibmeaaiaaiaaibiBbltbltbltbmfaaqaTQbdWaSqaaibmgbmhcDDbiIbiIaaibmjblxbmkaaibmjaaibmlblzcDzbmnbhKaaibmobkcbiSbmpbmqblFblGbmrbmsblJbkibmtaaibmubmvbmwaaqbmxaaqbmybmzbmAafjbmBbmCbmDbmEbmEbmFbkubmGaaibmHbmIbkBbkCbkDbkEbkGbmJbkGbkGbkGbkGbmKbmLbmLbmLbmLbmMbkGbkGbkGbkGbmNbkGbmJbmObkGbmPbmQbmRbkGbmSbmTbmTbmUbmVbmWbmXaRLaRLaRLaRLaRLaRLaRLbmYcDHbnaaRLaRLaRLaRLaRLaRLaRLaRLaRLaRLbnbbncbncbndbnebnfbngbnhbnhbnhbnhbnibnjaERaabaaaaaaaabaMPaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablmblmblmblmblmblmblmblmblmblmblmbnkbnlbnmbnnbnobnpbnqbnrbnsaaibhtbntbntbnubnvaaqaTQbdWaSqaaiaaiaaiaaiaaiaaiaaiaaiblxbnwaaiaaiaaiaaiafjaaiaaiaaiaaibnxbkcbnyaaibnzbnAbkgbkgbkgbkgbkibnBaaiaaibnCbnDbnGbEvbGnbnDbnHaaiafjaaibnIbnJbnKbnLbnMbnNbnOaaibnPbnQbnQaaiaaiaaiaaiaaiaaiaaiaaqaaqbnRbnSbnTbnTbnSbnRaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqbnUaaqaaqaaqaaqaaqaaibnVaoubnWaRLaRLbnXbnXaaiaaiaaiaaiaaibnYbncbncbnbbncaRLbncbncbncbncbnZaaiaaiaaiaaiboaaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaMPaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablmblmblmblmblmblmblmblmblmblmblmaGGaGHaEWbobbocbocbodboebocaaibofbofbofbogbohaaqaTQbdWaSqaaqboibojbokbolbomaaibonblxbooaaibopaaiboqborbosbotbouaaqbovbkcbowaaiboxboybozboAboBboCboDaaiaaiaaiboEboFboGboHboIboJboKaaiafjaaiboLboMboNboObnMbkuboPaaiboQboRboSaaiboTboUboVboWboXboYboZbpabpbbpcbpdbpdbpcbpebpfbpgaaqbphbpibpjbpkaaqbplbyrbpnbpobppbpqbpqbpraaibpsabnaaibptaaibpubpuaaibpvbpwbpxaaibDTbpzbDTaaicBVbncbnZaaibpAbpBbpAaaibpCbpDaaibpEbpFbpGaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMPaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablmblmblmblmblmblmblmblmblmblmblmaGGaGHaEWbobbocbocbodboebocaaibofbofbofbogbohaaqaTQbdWaSqaaqboicczbokbolbomaaibonblxbooaaibopaaiboqborbosbotbouaaqbovbkcbowaaiboxboybozboAboBboCboDaaiaaiaaiboEboFboGboHboIboJboKaaiafjaaiboLboMboNboObnMbkuboPaaiboQboRboSaaiboTboUboVboWboXboYboZbpabpbbpcbpdbpdbpcbpebpfbpgaaqbphbpibpjbpkaaqbplbyrbpnbpobppbpqbpqbpraaibpsabnaaibptaaibpubpuaaibpvbpwbpxaaibDTbpzbDTaaicBVbncbnZaaibpAbpBbpAaaibpCbpDaaibpEbpFbpGaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMPaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablmblmblmblmblmblmblmblmblmblmaaabpHaHNbpIbpJbnobnobpKbpLbpMaaibpNbpNbpNbpNbpOaaqaTQbdWbpPaaqbpQbpRbpSbpRbpTaaibpUbpVbpWbpYbpYaaibpZbqabqbbqbbqcbqdbqebkcbqfaaibqgaaJaaqaaqaaqaaibqhaaibqiacCbqjbqkbjbbqlbjbbqmbqnacfbqoaaibqpbkubqqbqrbnMbqsbkuaaibqtbqubqvaaibqwbqxbqybqzbqAbqBbqCbpdbpdbpdbpdbpdbpdbpdbqDbqEbqFbqGbqHbqIbqJaaqbqKbqLbqMbqNbqObqPbqLbpraaibpsabnbNtbqRbqSbqTbqUaaqbqVbqWbqVbqXbqYbqZbraaaiaaqbrbampaaibrcbrdbrebrfbrfbrfaaibrgbrhbriaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMPaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrjazMaaiaaiaaiaoJaoLazMaoJaoLaaiaoJaoLaaiaaiaaiaaibrkbnobocbocbodboebocaaibrlbrmbofbofbogaaqblvbdWbrnaaqbrobrpbrqbrrcHNaaibrtbrubrvbpYbpYaaibrwbrxcHPbrzbrAbrBbrCbrDbrEacfbrFbrGbrHbrIabIbrJbrKacfbrLacfacfacfacfbrMacfacfacfacfbrNacfbrOeEkeEieEjeEhbrTbrUacfbrVboRboRaaibrWbrXdFdbrZbsaaaibqCbpdbpdbpdbpdbpdbpdbpdbsbbscbsdbsebsfdBObshaaqbsibsjbskbqNbprbqPdFhdyNaaibslbsmbsnbsobsobspbsqbsrbssbssbssbstbsubsvbswbsxbsybszbsAbsxbsBbsCbsDbsDbsDcczaaibsFbrhbsGaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaOTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabrjazMaaiaaiaaiaoJaoLazMaoJaoLaaiaoJaoLaaiaaiaaiaaibrkbnobocbocbodboebocaaibrlbrmbofbofbogaaqblvbdWbrnaaqbrobrpbrqbrrcHNaaibrtbrubrvbpYbpYaaibrwbrxcHPbrzbrAbrBbrCbrDbrEacfbrFbrGbrHbrIabIbrJbrKacfbrLacfacfacfacfbrMacfacfacfacfbrNacfbrOeEkeEieEjeEhbrTbrUacfbrVboRboRaaibrWbrXdFdbrZbsaaaibqCbpdbpdbpdbpdbpdbpdbpdbsbbscbsdbsebsfdBObshaaqbsibsjbskbqNbprbqPdFhdyNaaibslbsmbsnbsobsobspbsqbsrbssbssbssbstbsubsvbswbsxbsybszbsAbsxbsBbsCbsDbsDbsDcrZaaibsFbrhbsGaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMPaMPaMPaMPaMPaaaaMPaMPaMPaMPaMPaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaOTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaaaaCZbobbnobnobnobpKbpLbnoaaibpNbpNbsIbltbltbsJaTQbdWaSqaaqbsKbsLbsMbsNbsOaaibsPbsQbsRbsScFjaaibsUbsVbsWbsXbsYbsZbtabtbbtcbtdbtebtebtfbtgabXbthbtiacCbtjaGCbtkbtlbtmbtnbtobtlbtpaGCbtqaaiabneEgaaiaaiaaiaaibtsaaibttboRbtuacCbtvbtwbtxbtybtzaaibtAbtBbtCbtDbtEbtFbtGbtHbqDbtIaaqbtJbsfbtKbtLaaqbtMbtNbqMbqNbprbqPbqLbpraaibpsabnbtObtPbtQbtRbtSaGCbtTbtUbtVbtVbtWbqVbtXaaibtYbtZbuaaaibubbucbudbrfbuebufaaibsFbrhbugaaiaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaaaaATbuhbuibocboccEJboebujaaiaaqbukbulbumaaqaaqblvbdWbhzaaqbunbuobupbuqburaaibpYbrubusbpYbpYaaibutbuubuvbuwbuxaaqbuybuzbuAaaibuBaaqaaqaouaaqaaJbuCaaibuDbuEbuFbtlbuGbtnbuGbtlbuHbuEbtqaaieEdeEecbZeEceEfabIbuMabIbuNboRbuOaaiboTbuPbuQbuRbuSbuTbuUbuVbuWbuXbuYbuZbvabvbbvcbvdbnSbvebvfbvgbvhaaqbvibvjbvkbvlbvmbvnbvmbpraaibvobvpbvqbvrbvrbvsbvtbvubvvbvwbvxbvxbvybvzbvAaaibvBbtZbvCaaibvDbvEbvFbrfbrfbvGaaibrgbrhbvHaaiaaaaaaaaaaaaaabbvIbvJbvKbvJbvKbvJbvLaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaEUaEVbvMbvNbnobnobpKbpLbpMaaibvObltbvPbltbvQaaqaTQbdWaSqaaqaGGbvRbvSbvTaSGaaibvUbvVbvWbvXbvYaaibvZbwabwbbwcbvZaaqbwdbwebwfaaiaaiaaibFCbwhbwibwjbwkaaibwlbwmbwnbwobwpbwqbwpbwrbwsbwtbwuaaibGdbHubLvaaqbYeaaqbwyaaqbwzboRbwAaaiaGGbwBbvRbwCbwDaaqbwEbwFbwGbwHbwIbwIbwJbwKbwLbwMaaqbwNbwOaouaaqaaqaaqaaJbwPaouaaqaaiaaiaaibwQbwRabnbwSbtPbtQbwTbvrbwUbPubwWbwWbwWbwXbwYbwZbxaaaibrbbxbaaibxcbxdbrfbxebxfbxgaaibsFbxhaaiaaiaaaaaaaaaaaaaabbxibxjbxkbxlbxlbxmbxiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbxnbxobxpbxqbocbocbodboebocaaibxrbltbxsbltbxtaaqaTQbdWaSqbxubxvbxwbxxbxybxzaaiaaiaaiaaibxAaaiaaibxBbxCbxDbxEbxFaaqbxGbxHbxIbxXbxKbxWbxMbxNbxObxPbxQaaibuDbxRbxSbtlbwpbxTbwpbtlbxUaaibtqaaibrPbARbznaaqbxYaaqbxZaaqbyaboRbybaaibycbydbyebyfbygabIbyhbyiabIabIbyjbykabIabIbylbymaAnaAqbynbyobypbyqbpmbysbytbyubyvaaibywbyxbyybyzabnbyAbyBbyCbyDbyEaaqbyFbwWbwWbyGbyHbwYbyIaaibyJbyJbyKaaibyLbyMbpybyObrfbyPaaibsFbyQaaiaaaaaaaaaaaaaaaaabbyRbySbxkbxlbxkbyTbvKaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaGGaGHbvMbobbnobnobpKbpLbnoaaibyUbjJbmmbjKbyVabIaSobjMbdXaaqbyWbqabyXbyYcwRbzabzbbzcbzdbzdbzebzfcuTbzhbyYbzibzjaaqbwdboRbzkbzlbzmbxVbzobzpbzqbzrbzsaaibuDaaiaaibztbzubzvbtlbzwbzxacfbzyaaiabnaaiaaiaaiaaiaaibzzaaibzAboRbybaaibzBbzCbzCbzDbzEaaqbzFbzGbzHbzIbzJbzKbzLbzHbzMbzNbzObzPbzQbzRbzSbzTbzUbzVbzWbzXbzYbzZbAabAbbAcbAdbAebAfbAfbAgbAhbAiaaqbAjbqVbqVbAkbAlbwYbAmaaqbAnbAobApaaqbxJbxLaSGeGXbjxaaiaaibAsaaiaaibAtbAubAubAubAvaaibxibxlbxkbxlbxlbAwbxiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaEUaEVbvMbvNbnobnobpKbpLbpMaaibvObltbvPbltbvQaaqaTQbdWaSqaaqaGGbvRbvSbvTaSGaaibvUbvVbvWbvXbvYaaibvZbwabwbbwcbvZaaqbwdbwebwfaaiaaiaaibFCbwhbwibwjbwkaaibwlbwmbwnbwobwpbwqbwpbwrbwsbwtbwuaaibGdbHubLvaaqbYeaaqbwyaaqbwzboRbwAaaiaGGbwBbvRbwCbwDaaqbwEbwFbwGbwHbwIbwIbwJbwKbwLbwMaaqbwNbwOaouaaqaaqaaqaaJbwPaouaaqaaiaaiaaibwQbwRabnbwSbtPbtQbwTbvrbwUcoAbwWbwWbwWbwXbwYbwZbxaaaibrbbxbaaibxcbxdbrfbxebxfbxgaaibsFbxhaaiaaiaaaaaaaaaaaaaabbxibxjbxkbxlbxlbxmbxiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbxnbxobxpbxqbocbocbodboebocaaibxrbltbxsbltbxtaaqaTQbdWaSqbxubxvbxwbxxbxybxzaaiaaiaaiaaibxAaaiaaibxBbxCbxDbxEbKvaaqbxGbxHbxIbxXbxKbxWbxMbxNbxObxPbxQaaibuDbxRbxSbtlbwpbxTbwpbtlbxUaaibtqaaibrPbARbznaaqbxYaaqbxZaaqbyaboRbybaaibycbydbyebyfbygabIbyhbyiabIabIbyjbykabIabIbylbymaAnaAqbynbyobypbyqbpmbysbytbyubyvaaibywbyxbyybyzabnbyAbyBbyCbyDbyEaaqbyFbwWbwWbyGbyHbwYbyIaaibyJbyJbyKaaibyLbyMbpybyObrfbyPaaibsFbyQaaiaaaaaaaaaaaaaaaaabbyRbySbxkbxlbxkbyTbvKaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaGGaGHbvMbobbnobnobpKbpLbnoaaibyUbjJbmmbjKbyVabIaSobjMbdXaaqbzebqabyXbyYcwRbzabzbbzcbzdbzdbyWbzfcuTbzhbyYbzibzjaaqbwdboRbzkbzlbzmbxVbzobzpbzqbzrbzsaaibuDaaiaaibztbzubzvbtlbzwbzxacfbzyaaiabnaaiaaiaaiaaiaaibzzaaibzAboRbybaaibzBbzCbzCbzDbzEaaqbzFbzGbzHbzIbzJbzKbzLbzHbzMbzNbzObzPbzQbzRbzSbzTbzUbzVbzWbzXbzYbzZbAabAbbAcbAdbAebAfbAfbAgbAhbAiaaqbAjbqVbqVbAkbAlbwYbAmaaqbAnbAobApaaqbxJbxLaSGeGXbjxaaiaaibAsaaiaaibAtbAubAubAubAvaaibxibxlbxkbxlbxlbAwbxiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbAybAzbpIbpJbocbocbodboebocaaibAAbiCbiDbABbACbADbAEbAFaSqaaqbAGbqabyXbyYbAHaaqbAIbAJbqbbqbbAKbALbAMbzhbyYbANbAObAPbwdboRbAQbadbzmbwxbASbATbAUbAVbAWbAXabubzxacfarzbAYbxTbAYbzxbAZaaiaaiaaibBabBbbBcbBdbBebBfbBgacfbBhboRbybbuTbBibBjbBkbBlbBmaaqbBnbBobBpbBqbBrbBsbBtbBubBvbBwbBxbBybBzbBAbBBbarbBDbBEbBFbBGbBHaaibBIbBJbBKbBLaaibBMbBNbBObBPbBPaaqbBQbBRbBSaaqbBTbwYbBUaCZbBVbBWbBXbBYbBZbCabCbbCcbCdbCebwvbCgbChbwwbCjbCjbCkbClbCmbCnbCobvJbvKbCpbvKbvJbCqaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHbsHaaabCrbobbnobnobnobCsbCtbCuaaibCvbCwbCxbCybCzaoibCAbCBaSqaaqbCCbCDbCEbCFbCGbCHbCIbCJcuRbCKbCLbCHbCMbCNcsZbCObCPaaqbCQboRbAQbadbzmaaibCRbCSbCTbCUbCVabnbCWbCXbCYbgPacfbCZbDabgPbDbbDcbDdaaibDebDfbDgbDhbDibDibDjbDkbDlboRbDmaaiaaqbDnbjxbDobDpaaqbBnbDqaaqbDrbDsbBsbDtaaqbBnbDubDvaaqaaqaaqaouaaqaaqaaqbDwamwaaqaaiaaibDxaaqaaqaaiaaiaaqaaJaaqaaqaaqaaqaaqaaqaaqbDybDzaCnaCobDAbDBbDCbDDbDDbDEbDFbDGbDHbDIbDJbDKbDLbuLbDNbDNbDObBZbDPaaibDQbDRbDSbwgaaibDUaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazMaaiaaiaaiaoJaoLazMaoJaoLaaiaoJaoLaaiaaibDVafjaaibxAaaqaaqaaqaaqazlbDWaoiaoibDXaoibDYbDZbEabEbbEcbEdbEebqbbEfbqbbEgbzfbEhbqbbyYbqbbEibjxbwdboRbEjbEkbElaaibEmbEnbEobEpbEqabnbErcACbEtbEubnFbEwbExbEybEzcBgbEBaaibECbEDbEEbEFbEGbEHbEIaaibEJbEKbybbELbEMbENbEObEPbEQbERbESbBobjxbETbEUbEVbEWbjxbBnbDubDvbEXbEYczMbFabFbbFcbFdbFebFfaaqbFgbFhbFibFjbFkbFlbFmbCebFobDDbDDbFnbFpbDDbFqbFrbFsbFtbFubDDbFvbFwbFxbFybFzbFAaaiabnaaiaaiaaibFBaaiaaibAtbAvaaibDMbFDbFEbFFbFGbFHbFIbFJaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKaaaaaabzlbFLbFMbFMbFMbFNbFObFPbFPbFPbFPbFQbFPbFPbFRbFPbFPbFPbFPbFPbFSbFTbFUbFPamwbFVbqbbqbbqbbEgbFWbFXbFYbyYbFZbGabGbbwdboRbGcbCibzmaaibGebGfbGgbCSbGhabnbGibGjbGkaaibrRbGmczAacCbGobGpbGqaaibGrbGsbGtbGubEGbEHbEIaaibGvbGwbGxbGybGzbGAbGBbGCbGDbGEbGFbGGaaqaaqbGHbGIaaqaaqbBnbDubDvbjxbGJbGKbGKbGKbGLbGKbGMbGNbGObGPbGQbGRbGRbGSbGTbGUbGVbGWbBZbBZbGXbBZbGYbBZbGZbBZbHabHbbHbbHcbHdbHebHfbHgbHhbHibHjbHkbHlaaibHmbHnaaaaaaaaaaaibHobHpbHqbHrbHsbHtbCfaaiaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKaaaaaabzlbFLbFMbFMbFMbFNbFObFPbFPbFPbPubFQbFPbFPbFRbFPbFPbFPbFPbFPbFSbFTbFUbFPamwbFVbqbbqbbqbbEgbFWbFXbFYbyYbFZbGabGbbwdboRbGcbCibzmaaibGebGfbGgbCSbGhabnbGibGjbGkaaibrRbGmczAacCbGobGpbGqaaibGrbGsbGtbGubEGbEHbEIaaibGvbGwbGxbGybGzbGAbGBbGCbGDbGEbGFbGGaaqaaqbGHbGIaaqaaqbBnbDubDvbjxbGJbGKbGKbGKbGLbGKbGMbGNbGObGPbGQbGRbGRbGSbGTbGUbGVbGWbBZbBZbGXbBZbGYbBZbGZbBZbHabHbbHbbHcbHdbHebHfbHgbHhbHibHjbHkbHlaaibHmbHnaaaaaaaaaaaibHobHpbHqbHrbHsbHtbCfaaiaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabjHbjHbjHbjHbjHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKaaaaaabadbHvbHwbHwbHwbHxbHybFPbFPbFPbFPbFPbFPbFPbFRbFPbFPbFPbFPbFPbFSbFTbFUbFPamwbHzbHAbHBbHCbHDbHEbHFbHGbHHbHIbHJbjxbwdboRbHKaaqaaqaaiaaiaaiaaiaaibHLabnaaibHMabnacCabnbHNaaiaaiaaiaaiaaiaaiabnaaiaaiaaiaaiaaiaaiaaibHOboRbHPbnSaaqbHQbHRaaqaaqbBnbHSbHTbEQbHUbHVbHWbHXbHYbESbHZbIabIbbIcbIdbIdbIdbIebIdbIfbIgbIhbIibIjbIkbFibIlaaiaaiaaiaaiaaiaaibImaaiaaiaaiaaJbInaaqaaqbIobIpbIqbIrbHfbIsbItbIubIvbIwbIxaaibHmbIyaaaaaaaaaaaibIzbIAaaibCnaaiaaibCnaaiaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbIBaoKaCobICbIDbIDbIDbIEbIFbIDbHwbHwbHwbHwbHwbIGbIHbHwbHwbIGbHwbHwbHybIIbIJbFPazlaoiaoiaoiaoiaoiaoibIKbEdaaqaaqaaqaaqbwdboRbILbIMbINbIObIPbIQbIRbISbITbIUbIVbIWbIXbIYbIZbJabJbbJcbJdbJebJfbJebJgbJhbJibnQbJjboRbJkbJlbJmboRbJnaaqbJobJpbJqbJrbJsbBnbJtbJubJvbJwbJxbJybJzbJAbJBbJCbJDaaqbJEbJFbJGbJHbJIbGKbJJbJKaaqbJLbFibFibFibJMaaibJNbJObJPbJQbJRbJSczzbJUaaicbObJWbJXaaqaaqbJYbIqbJZbKabKbbKcbKdbKebKfbKgaaibKhaaiaaaaaaaaaaaiaaiaaiaaiaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOTaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbKibKjbKibKkbKkbKkbKkbKlbKmbKkbKkbKkbKkbKkbKkbKkbKnbKkbKkbKkbKkbKkbKmbKobKpbKkbKqbKrbKsbKtbKubKvbKwbKxbKybKzbKAbKAaaqbwdbKBbKCboRboRbybbKDbnQbJibJhbKEbKFbKEbKGbKHbKHbKIbKJbKKbKHbKHbKLbKHbKMbKHbJhbJibnQbKNbKObKPbKQbKRbKSboRaaqbKTbJpbKUbKVbKWbBnbKXbKYbKZbLabLbbLcbLdbLebBnbLfbLgaaqaaqbLhbLibLjbLkbLlbLmbLnaaqbLobLpbFibLqbLraaibJNbLsbLtbLubuKbLwbLxbLyaaibLzbLAbLBbLBaaqbLCbLDbLEbLFbLGbLHbVAbLJbLKbVHaaibHmaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbLMbLNbLMbFLbFMbLObLPbLQbLRbLPbLSbLSbLTbLSbLSbLPbLUbLSbLSbLPbLSbLSbLVbLWbLXbLYabIbLZbMabMbbMcbMbbMdbMebMfbMgbMhbMiaaqbwdbMjbMkbMlbMmbMnbMobMpbMqbMrbMsbMtbMubMvbMwbMwbMxbMybMybMybMybMybMybMzbMAbMBbMCbMDbMEbMFbMGbMHbMIbMJbMKaaqbMLbJpbJqbMMbKWbBnbKXbKYbMNbMObMPbMQbMRbMSbBvbMTbMUaaqbMVbMWbMXaaqbMYaaqbMZaxeaaqbNabNbbNcbNdbNeaaibJNbNfbNgbJQbNhbNibNjbNkaaibNlbLAbLBbLBaaqbNmbNnbNoacCbNpbNqbNrbNsbwVbNuaaibHmaaiaabaabaabaabaabaabaabaabaabaabaabaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbKibKjbKibKkbKkbKkbKkbKlbKmbKkbKkbKkbKkbKkbKkbKkbKnbKkbKkbKkbKkbKkbKmbKobKpbKkbKqbKrbKsbKtbKubwVbKwbKxbKybKzbKAbKAaaqbwdbKBbKCboRboRbybbKDbnQbJibJhbKEbKFbKEbKGbKHbKHbKIbKJbKKbKHbKHbKLbKHbKMbKHbJhbJibnQbKNbKObKPbKQbKRbKSboRaaqbKTbJpbKUbKVbKWbBnbKXbKYbKZbLabLbbLcbLdbLebBnbLfbLgaaqaaqbLhbLibLjbLkbLlbLmbLnaaqbLobLpbFibLqbLraaibJNbLsbLtbLubuKbLwbLxbLyaaibLzbLAbLBbLBaaqbLCbLDbLEbLFbLGbLHbVAbLJbLKbVHaaibHmaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbLMbLNbLMbFLbFMbLObLPbLQbLRbLPbLSbLSbLTbLSbLSbLPbLUbLSbLSbLPbLSbLSbLVbLWbLXbLYabIbLZbMabMbbMcbMbbMdbMebMfbMgbMhbMiaaqbwdbMjbMkbMlbMmbMnbMobMpbMqbMrbMsbMtbMubMvbMwbMwbMxbMybMybMybMybMybMybMzbMAbMBbMCbMDbMEbMFbMGbMHbMIbMJbMKaaqbMLbJpbJqbMMbKWbBnbKXbKYbMNbMObMPbMQbMRbMSbBvbMTbMUaaqbMVbMWbMXaaqbMYaaqbMZaxeaaqbNabNbbNcbNdbNeaaibJNbNfbNgbJQbNhbNibNjbNkaaibNlbLAbLBbLBaaqbNmbNnbNoacCbNpbNqbNrbNsbxFbNuaaibHmaaiaabaabaabaabaabaabaabaabaabaabaabaabaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbIBaoKbckbNvbHwbHybHwbNwbNxbNybNybNybNzbNybNybUrbNAbNybNybNBbNybNybNCbNDbNEbNybNFbNGbNHbNIbNJbNIbNKbNLbNMbNNbNObNPaaqbNQaaqbNRaaqaaqbNSbNTbNSaaqaaqaaqbNUbNVbNWaaqaaqbNXbJhbJhbNYaaqaaqaaqaoubNZaaqaaqaaqbOaaaqaaqbObaaqbOcaouaaqbOdbOebOfaaqbOgbBnbKXbOhaaibOibOjbOkbOlaaibOmbLfbOnaaqbOobOpbOqbOrbOsbOtabIbOubOvbOwbOxbOybOzbOAaaiaaiaaiaaiaaiaaiaaiaaiaaiaaibOBbOCbODbODaaqbOEbOFbOGaaiaaiaaiaaiaaiaaiaaiaaibHmaaiaaabOHbOHbOHaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbOIbAubAubAvaaqaaqaaiaaiaaiaaibOJaabaabaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbLMbLNbLMbOKbIDbIFbIDbOLbOMbONbOObOObOPbOObOObOQbORbOObOObOSbOObOObOObOObOTbOUabXbOVbOWbOXbOYbOXbOZbPabPbbPcbPdbMiaaqaaqaaqbPeabXbPfbPgbPhbPibPjaaqbPkbPlbPmbPnbPoaaqbPpbPqbPraaqbPsbPtbsEbPvbPwbPxbPybPzbPAabXbPBbPCbPDbPEbPFabXbPGbPHbPIbPJbPKbPLbPMbKYbPNbPObPPbPQbPRbPSbBvbPTbPUbPVbPWbPXbPXbPYbPZbQaaaqbQbbQcbQdbQebQfbQgbQhaaibQibQjbQkaaibQlbQmbQnbQoaaibUXbQqbQrbQraaqbQsbQtbIraaibrhbQubQvbQwbQwbQvbQwbQxaaiaaabOHbQybOHaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabbQzbQAbQBbQAaaqaaiaaibQCbQDbQCbQEaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKbQFbQGbQFbQHbQHbQIbQHbQHbQJbQHbQHbQHbQKbQHbQHbQHbQLbQHbQHbQMbQHbQHbQHbQHbQHbQHbQNbQObQPbNNbNNbNNbNNbNNbQQbQRbQSbQTbEdacEaaqbQUaaqcmHbQWbQWbQWbQXaaqcmIbQZbQZbQZbRabRbbRcbRdbReabXbRfbRgbRhcjQbRibRjaaqaaqbRkaaqbRlbRmcqgbRobRpaaqbKTbJqbKUbKVbRqbRrbRsbRtacCcpBbRvbRwbRxaaibRybRzbRAbRBbRCbRDcmJbRFbRGbRHaaqaaqaaqaaqaaqaaJaCGaoraaibRIbRJbRJbRKbQobRLbQobRMaaibRNbLAbRObROaaqbIpbRPbIraaiaaibRQaaiaaiaaiaaiaaiaaiaaiaaiaaibRRaaiaaiaaiaaiaaiaaiaaiaaiaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacaacbRSbQAbQAbRTaaiaaibQCbQCbRUbQCbQCaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -12701,7 +12703,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbA aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKaaaaaiaaiaaqazSbTIazTaaqbTJaaqaaqazSaoKazTaaqaaqbTKaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqbTLaaqaaqaaqbTMbTNbTObTPaaqbQXbTQbQWbQWbQXaaqbTRbTSbQZbTTbTUabIbTVbTWbTXaaqaaqaaqaaqaaqbTYaaqaaqbTZbUaaaqaaqaaJaaqaouaaqaaqbUbbUcbUcaaqaaqbUdbUebUfbUgbUhbUibUjbUkbUlaaqbUmbUnaaqbUobSYbREbSZbSZbSZaaqbUpbUqcfTbUsbUtbUubUvaaibRJbUwbRJbUxbQobRLbUybUzacCbUAbUBbUCbUCabXbUDbUEbNobUFbUGbUHbUIbUJbUKbULbULbUMbUNbULbUObULbUPbUQbURbUSbUTbUUbUVacfbUWbXIbUYbUZaabaabaabaabaabaabaabaabaabaabaabaabaabaaqaaibVabVbbVbbQCbQCbQCbQCbQCbQCbQCbQCaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKbFKbFKaaaaaibVcbVdbVebVfbVgbVhbVibVjaaibVkbVlbVmbVnbVobVpbVqbVrbVsbVrbVrbVrbVrbVrbVrbVrbVrbVrbVrbVrbVrbVrbVrbVtbVrbVrbVrbVubVvbVwbVxaaqbVybVzchObVBbVCabIbVDbVEbVFbVGciAaaqbVIbVJbVKbVLbVMbVMbVMbVMbVNbVObVPbVQbVQbVRbVRbVSbVTbVUaaqaaqbVVbVWbVXbVYbVZbRrbWabUfbWbbWcaHobWdbLdbWeaHobWfbWgaoibWhbWibWjbWkbWlbWmaaqbWnbWobWpbWqbWrbWsbWtaaibWubRJbRJaaibWveGWbWxaaiaaqbWybWzbJXaaqaaqbWAbRPbWBaaibWCbWDbWEaaibWFbWGbWGbWHbWIbWJbWKbWGbWLbWMbWGbWGbWNbWObWPbWQbWRbWSbWTbWUaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaiaaibWVbQCbQCbQCbQCbQCbQCbQCbQCbQCbQCbQCaaiaaiaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFKbFKbFKbFKbFKaaaaaaaaibWWbWXbWXbWYbWXbWXbWZbXaaaibXbbXcbXdbXcbXcbXeaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaqbXfaaqaaqbXgaaqbQXbXibXjbXkbXlaaqbXmbXnbXobXpbXqaOqbXrbXsbXtabIacfacfacfacfbXuauWbAXabXbXvabXabXbXwbXxbXybXzbXAbXBbXCbXDbXEbXFbXGbXHbQVbXJbXKbXLbXMbXNbXObXPbXQbXRaaqaaqaEqabXabXabXbXSaaqaaqbXTaaqamwbXUbXVbXWaaibXXbRJbRJbXYbXZbYabYbbYcaaqaaqbYdaaqaaqbuJbYfbRPbtZaaiaaibYgaaiaaibYhbYibYjbYkbYlbWGbYmbWPbYnbWPbWPbWPbYobTzbYpaaibYqbYrbYsbYtaabaabaabaabaabaabaabaabaabaabaabaabaabaaibQCbQCbQCbQCbQCbQCbYubQCbYvbQCbQCbQCbQCbQCaaiaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYwbYxbYybYxbYzaaaaaaaaaaaibYAbWXbWXbWYbWXbWXbWZbYBaaibXbbYCbYDbYEbYDbXeaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibYFbYGbYHaaqbYIaaqbYJbYKbYLbYMbYNaaqbYObStbYPbYQbYRaOrbYSbYTbYUaaiaaibYVbYWbYXbYYbYZabnbZabBJbZbaaqbZcbBJbBJbZdabXbZebZfbQYbXEbZgbZhbZibZjbZkbZlbZmbZnbZobZlbZlbZpbZqbZqbZqbZrbZqbZqbZqbZsbaqbZubZvbZwbZxbZybZzbZAaaibZBbZCbZDbZEbZFbZGbZHbZIbZJbZKbZLbtZbZMbtZbYfbRPbtZaaibrhbZNbZOaaiaaiaaqaaqaaqbZPbWGbZQbRnbWGbZRbZSbZTbZUbZVbZWaaibZXbZYbZZaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaicaacaacaacaacaacaacabbQCcaccaabYvbQCbQCbQCbQCaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYwbYxbYybYxbYzaaaaaaaaaaaibYAbWXbWXbWYbWXbWXbWZbYBaaibXbbYCbYDbYEbojbXeaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaibYFbYGbYHaaqbYIaaqbYJbYKbYLbYMbYNaaqbYObStbYPbYQbYRaOrbYSbYTbYUaaiaaibYVbYWbYXbYYbYZabnbZabBJbZbaaqbZcbBJbBJbZdabXbZebZfbQYbXEbZgbZhbZibZjbZkbZlbZmbZnbZobZlbZlbZpbZqbZqbZqbZrbZqbZqbZqbZsbaqbZubZvbZwbZxbZybZzbZAaaibZBbZCbZDbZEbZFbZGbZHbZIbZJbZKbZLbtZbZMbtZbYfbRPbtZaaibrhbZNbZOaaiaaiaaqaaqaaqbZPbWGbZQbRnbWGbZRbZSbZTbZUbZVbZWaaibZXbZYbZZaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaicaacaacaacaacaacaacabbQCcaccaabYvbQCbQCbQCbQCaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabAxbAxbAxbAxbAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacadcaecafcagcadbfcaoKbckaaicahcaibWXbQpbWXbWXbWZcajaaibXbcakbYDbYDbYDbXeaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicalcamcanaaqbYIaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaaqaaqaaqcaocapcaqcarcascatcaucaucavcawabnbBJbBJcaxaaqcaybBJbBJbBJcazcaAcaBbXCcaCaHocaDbZqcaEcaFcaGbKXcaFcaHcaIcaIcaIcaIcaIcaIcaFcaIcaIcaIbKXcaKcaLcaMcaNcaOcaPcaQcaRaaicaScaTcaTcaUbRJcaVcaWcaXcaYcaZcbacbbbtZcbcbYfbRPcbdaaibrhcbecbfcbgaaicbhcbicbjbWGbWGcbkbWGbWGcblcbmcbncbocbpcbqaaicbrcbscbtcbuaacaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacbvbQAbQAbQAbQAbQAbQAbQAcbwbQDbQCbQCbQCbQCcbxbQDaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabYycbycbzcbybYycbAcbBcbCaaicbDbWXbWXcbEbWXcbFcbGcbHaaicbIbXccbJbYDbYDcbKaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaibYIaaiaaaaaaaaaaaaaaicbLcbMcbNbJVcbPcbQaaqcbRcbScbTcbUcbVcbWcbXcbXcbYbpXabnaaiaaiaaiafbccaaaibBJbBJaaqccbcccccdcceccfccgcaOcchcciccjcckcclccmccncaIcaIcaIccoccpccqccpccoaaiauYacCacCccrccsccoaaqcctccuaaiccvccwccxccybjjccAccBaaiaaiaaiabnaaiaaiaaiccCccDccEaaibrhcbeccFcbgaaiccGbWGbWGbWGbZRccHccIccJaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaibVbbVbbVbbVbbVbbVbccKbQCbVabVbccLbQCbQCbQCbQCaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacadcbycbycbyccMccNccOccPccQccRbWXbWXbWXbWXbWXbWXccSaaiccTbXcccUbYDbYDccVaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccWaaaaabaabaaiaaiaaiaaiaaiaaiaaiaaiaaqbXgaCZaaaccXccYccZcdacdbcdccddcdecdfcdgabXcdhcdicdjcdkcdlcdmcdncdocdpcdqabncdrcdscdtcducdvaaibBJbBJaaqaaqaaqaaqaaJaaqcdwcdwcdxaaqaaqaouaaqaPPcdycdBcdAcdBacfcdCcdDcdEacfcdFcdFacfcdGcdHcdIaaicdJcdKbVUaaiaaiaaiabncdLaaicdMbAZaaicdNcdOcdPbBJcdQaaiabncdRafjaaibrhcbecdScdTaaicdUcdVcdWbZRcdXcdYccIcdZaaiaaaaaaaaaaaaaaaaaaaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaabaaibQCbQCbQCbQCbQCbQCbYubQCccLbQCbQCbQCbQCbQCaaiaaiaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -12713,16 +12715,16 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpaaaaaaaaacj aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaackrcksckscksckscksckscksckscksckscksckscktaaiaaqaaqaaqaaqaaqaaqckuckvaaiaaiaaiaaiaaiaaiaaqaaqaaqaaqaaqaaqaaqckwbYTbTWckxckyckzckAckBckCckDckEckFckGckHckIckJaaibBJbBJaaqckKckLcjTcjUcjUckMaaqckNcjUcjUcjXcjTckOaaiaaiaaiaaiaaickbcfcckPaaibBJbBJbBJbBJbBJbBJbBJbBJbBJbBJaaiaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaackQckRckSckTaaiaaickUckVckWaaiaaaaaackXckXckYckXckXaaaaaaaaaaaaaaacknaaaaaaaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabckZbAubAubAvaaqaaqaaiaaiaaiaaibOJaabaabaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpaaacjpaaaaaacjpcjpcjpcjpcjpcjpcjpaaaaaacjpaaacjpaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclaclbclccldcldclecldclfclgclhclicljclkcllclmclmclncloclpclqclqclrclscltcluclvclucluclucltclucluclwclxclyclzbYTbTWclAclBclCafjaaichzacCauZclDclEacCauaccaaaibBJbBJaaqclFclGclHclIeFZclJaaqclKeFZclLclMclHclNaaibBJbBJbBJclOckbcfcckbclObBJbBJbBJbBJbBJbBJbBJbBJbBJbBJaaiaaaaaaaaaaaaaaaaabaabaabaaaaaaaaaaaaaaaccoaaiclPafjccoazSclQclRbfcazTaaaclSclTclUclVclUclTclSaaacjicjjcjjclWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaabaabaaaaaaaaaaaaaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclaclXclYclZclYcmaclYclXeGdcmbclZclYcmccmdbTXcmdcmdcmebTXbTXbTXbTXcmfcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmgcmhcmicmjcmkcmlcmmcmncmoaaicmpcmqcmrcmscmtcmucmvcmwacfcgGcmxabIcmycmzcmAcmBcjUcmDaaqcmDcjUcmBcmEcjTbBCaaicmGacfacfbDaeGfcfceGeaaiazSaoKaoKbckaaiaaiaaiaoJaoKaoLaaiaaaaaaaaaaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaicmKcmLcmMaaiaabaATcmNaATaabaaaclScmOcmPcmQcmPcmOclSaaacknaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacmRclYcmScmTcmUcmVcmUcmWcmXcmYcmZcnacnbcmhcnccndcndcneabIcnfabIcngcnhcngcngcngcngcngcngcngcngcngcngcnicmdcnjcnkcnlcnmcnncnocwNcnqcnrcnscntcnucnvcnwcnxcnyacCbXxcnzaQUcnAcjUcjTcjUcjUcnBabXcnCcjUcjUcjXcjTcnDaaicnEaaiaaaafjaaicnFaaiaaiaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaiaaiaaiaaiaaicnGcnHcnIaaiaabaERcnJaERaabaaaclScnKcnLcnMcnNcnKclSaaacknaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazMaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaicnOaaqaaqbyNaaqcnQaaqaaqcnRaoLaaqaaqaoJaoKaoLaaqaaqaaqaaqcnScnTcnUcnVcnWcnXcnYcnZcoacnZcnZcobcnZcoccodczUcofcogcohbBJcnEaoucoicojcokcolcomconaaqcoocomcopcjXcoqcoraaicnEaaiaaacoscotcoucovaaiaaaaaaaaaaaaeGgaaaaaaaaaaaaaaaaaaaaaaaaeGgaaaaaaaaicowcoxcoycozcBccoBcoCaaqcoDcoEcoFacCcoGaaacoHaaaaaaaaaclScoIcoJcoJcoJcoKclSaaacknaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacmRclYcmScmTcmUcmVcmUcmWcmXcmYcmZcnacnbcmhcnccndcndcneabIcnfabIcngcnhcngcngcngcngcngcngcngcngcngcngcnicmdcnjcnkcnlcnmcnncnocBccnqcnrcnscntcnucnvcnwcnxcnyacCbXxcnzaQUcnAcjUcjTcjUcjUcnBabXcnCcjUcjUcjXcjTcnDaaicnEaaiaaaafjaaicnFaaiaaiaaaaaaaaaaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaiaaiaaiaaiaaiaaicnGcnHcnIaaiaabaERcnJaERaabaaaclScnKcnLcnMcnNcnKclSaaacknaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazMaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiaaicnOaaqaaqbyNaaqcnQaaqaaqcnRaoLaaqaaqaoJaoKaoLaaqaaqaaqaaqcnScnTcnUcnVcnWcnXcnYcnZcoacnZcnZcobcnZcoccodeiccofcogcohbBJcnEaoucoicojcokcolcomconaaqcoocomcopcjXcoqcoraaicnEaaiaaacoscotcoucovaaiaaaaaaaaaaaaeGgaaaaaaaaaaaaaaaaaaaaaaaaeGgaaaaaaaaicowcoxcoycozeHrcoBcoCaaqcoDcoEcoFacCcoGaaacoHaaaaaaaaaclScoIcoJcoJcoJcoKclSaaacknaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafoafoafoafpafpafoafpafpafpafXafpafpafpafoafoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCZcoLcoMcoNcoOcoPcoQcoRcoScoTcoUcoVcoWcoUcoXcoYcoZcoZcpaaaqcpbcpccpdcpebTWcpfcpgcphcpicpjcpkcpjcplcpmcpncpocppcpqaaiaaicnEaouaaiaaicpraaiaaiabnbzxacfacfacfcpsacfbgPacfcptaaiaaacpucpvcoubZtaaicpxcpycpycpzaaiaaibAXacCacCcpAacCacCcpAauaaaaaaaaaicpCcpDcpCcpEcpFckdcnHaaqaaJcpGaaJaaiaaiaaacpHaaaaabaaaclSclSclScpIclSclSclSaaacknaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafoaaaaaaaabaabaaaaabaabaaaaaaaabaabaabaaaafoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaATcoLcpJcpKcpLcpMcpNcpNcpNcpNcpOcpPcpQcoZcpRcoZcoZcpScoZbuIbTXcpUcpVcpebTWcpWaaqcpXcpicpYcpZcqacpicqbcqccqdcqecqfeEMcqhcqicqjcqkcqkcqlbSEcgGcqmcqnbBJcqobXxcqpbBJbBJbVTbBJaaiaaacqqcpvcoucqraaqcqscqtcqucqvcqwcqxcqycqwcqxcqzcqwcqAcqBabnaaaaaaaaicpCcpCcpCcqCcqDcoBcqEcqFcqGcqHcqIcqJaaiaaacpHaabaabaaaaaaaaaafoaaaafoaaaaaaaaacknaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafoaaacqKcqLcqMaaacqKcqLcqMaaacqKcqLcqMaabcqNaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaATcoLcpJcqOcoZcpScqPcoZcoZcoZeELcoZcqOcqOcoZcoZcoZcoZcqQcqRbTXcqScmdcqTcqUaaqaaqcqVcpicqWcqXcqYcpicqZcmtcracrbcrccrdcrecqobXycrfcrfcnzbXxbXxbXycrgbXxabuaoJaoKaoKaoKaoLaaiaaiaaacdMcrhcricrjabIcrkckbckbcrlcrmcrncrocrmcrncrocrmcrncroabnaaaaabaaiaaqaaqaaqaaqcrpckdcrqcrrcrscrtcrucrvaaiaaacpHaaaaabaabaaaaaaafoafoafoaaaaaaaaacknaaaaaaaabaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafoaaacqKcrxcqMaaacqKcrxcqMaaacqKcrxcqMaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaATcoLbQzcqOcrycoZcrzcrAcrBcrBcpRcoZcqOcrCcoZcoZcoZcoZcrDcrEclycrFbSwcrGcrHcrIcrJcrKcpicqWcrLcrMcpicrNcmtaaiauYacCcrOcrPabuaaiabnabnafjaaiaaiaaiafjaaiaaiaaaaaaaaaaaaaaaaaaaabaaaafjcrQcoueEOaaqcrSckbckbcrlcrTcrUcrVcrWcrUcrVcrWcrUcrXabnaabaabaaicowcoxcoycrYcrZcoBcsacsbcsccsdckdcseaaiaaacsfcsgcsgcsgcsgcsgcsgcsgcsgcsgcsgcsgcshaaaaabaabaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafoaaacqKcrxcqMaaacqKcrxcqMaaacqKcrxcqMaabaabaabaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabaATcoLbQzcqOcrycoZcrzcrAcrBcrBcpRcoZcqOcrCcoZcoZcoZcoZcrDcrEclycrFbSwcrGcrHcrIcrJcrKcpicqWcrLcrMcpicrNcmtaaiauYacCcrOcrPabuaaiabnabnafjaaiaaiaaiafjaaiaaiaaaaaaaaaaaaaaaaaaaabaaaafjcrQcoueEOaaqcrSckbckbcrlcrTcrUcrVcrWcrUcrVcrWcrUcrXabnaabaabaaicowcoxcoycrYcwNcoBcsacsbcsccsdckdcseaaiaaacsfcsgcsgcsgcsgcsgcsgcsgcsgcsgcsgcsgcshaaaaabaabaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaagaaaaaaaaaafpaabcqKcrxcqMaaacqKcrxcqMaabcqKcrxcqMaabaaaaaaaabaaaaaaaaaaabaaaaaaaaaaaaaaaaabaaaaaaaERcoLaaqcsicoZcsjcskcslcsmcsncsmcsocsmcspcsqcoUcsrcqOcqOcqRcsscstcsucsvcswcsxcsycszcsAcsBcsCcsDcsEcsFcmtcsGcsHcsIcsJcsKcsLcsMcsNcsOcpTcsQcsRcsScsTcsUaabaaaaaaaaaaaaaaaaaaaabaabafjcpvcsVcsWcsXcsYckbckbckbeENckbckbckbckbckbckbckbctactbaaaaaaaaicpCcpCcpCctccpFckdctdctectfctgckdcthaaiaaiaaiaaiaaaaaactictictictjaabaabaabaabctkaabaabaabaabaabafXctictiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaaabaaacqKcrxcqMaabcqKcrxcqMaaacqKcrxcqMaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaabaaaaabaabaaaaaaaaictlaaqctmctnctnctoaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqctpaaqaaJaaqaaictqctrctscttctuctvctwctxcmtctycsHcsIctzcsKctActBctCctDctEctFctGctHctIctJaabctKctKctKctKctKaaaaaaaabafjctLcouctMctNctOckbckbckbctPckbckbckbckbckbctQckbctRctSaaaaaaaaicpCcpCcpCcrYctTcoBctUctVctWctXctYctYctZcuacubaaiaaaaaactiaaaaabaaaaabaaaaaaaaacucaaaaabaabaaaaaaaaaaaactiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaafoafoafpaabaaacqKcrxcqMaabcqKcrxcqMaaacqKcrxcqMaabaaaaaaaaaaaaaaaaaaaaaaaaaabcudaaiaaiaaiaaiaaiaaicoLaaqcuecufcufcugabIcMucLHcLHcLHcLHcLgcuicujcuicuicukcukcuiculcumcuncuoaaicupcuqcurcuscutcuucuvcuwcuxcuycuzcuAcuBcuCcuDctBcuEcuFcuGcuHcuIcuJcuKcuLcuMcuNcuOcuPcuQctKaaaaaaeaRafjampcuSampaaqeEUcuUcuVcuUabIcuWcuXcuYcuZcvacvbcvccvdabnaaaaaaaaiaaqaaqaaqaaqcveckdctdcvfcvgcvhckdckdcvickdcvjaaiaaaaaactiaaacvkcvkcvkcvkcvkaabcvlaabcvkcvkcvkcvkcvkaaactiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaafoaaaaabaaaaabaabcvmaabaabaabcvmaabaaaaabcvmaabaaaaaaaaaaaaaaaaaaaaaaaacvnbAucvocvpcvqcvrcvscvtcvucvvaaqaaqcvwcvxaaqaaqeiJaaiaaiaaiaaiawjaaiafjaaiaaiaaiaaiaaiabnafjaaiaaicexcvycvzcurcuvcuvcuvcuvcvAcmtcvBcvCcvDcvEcvFcuDcvGcuEcuFcvHcvIcvJcvKcvLcvMaabcvNcvOcuQcvPctKaaaaaaaaaafjcvQcvRcvSaaqciRcvTcvUcvVaaqcrocrncvWcvXcvYcvZcrocrnabnaaaaaaaaicowcoxcoycwacrZcoBcwbcwccwdcwecwecwfcwgcwhcwiaaiaabaabctiaabcwjcwkcwkcwkcwkcwlcwmcwncwocwocwocwocwpaabctiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaacjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaafoaaaaabaaaaabaabcvmaabaabaabcvmaabaaaaabcvmaabaaaaaaaaaaaaaaaaaaaaaaaacvnbAucvocvpcvqcvrcvscvtcvucvvaaqaaqcvwcvxaaqaaqeiJaaiaaiaaiaaiawjaaiafjaaiaaiaaiaaiaaiabnafjaaiaaicexcvycvzcurcuvcuvcuvcuvcvAcmtcvBcvCcvDcvEcvFcuDcvGcuEcuFcvHcvIcvJcvKcvLcvMaabcvNcvOcuQcvPctKaaaaaaaaaafjcvQcvRcvSaaqciRcvTcvUcvVaaqcrocrncvWcvXcvYcvZcrocrnabnaaaaaaaaicowcoxcoycwacwNcoBcwbcwccwdcwecwecwfcwgczUcwiaaiaabaabctiaabcwjcwkcwkcwkcwkcwlcwmcwncwocwocwocwocwpaabctiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaacjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaafpaabcwqcwrcwrcwscwtcwucwucwucwtcwucwucwucwtcwucwucwvcwrcwrcwrcwrcwrcwwcwxcwycwzcwAcwBcwCcwDcwEbYHcoLcwFaaqaaqaaqaaqbYHeiJaaicwGcwHcwIeiWcwKcwLcwMcsPcwOcwPcwQeFbcwScwTcwUcwVcvycwWcurcuvcuvcuvcuvcwXcmtcwYcwZcvDcxacxbcxccxdcxecxfcxgcxhcxicxjcxkcxlcxmcuNcxncuQcuQctKaaaaaaaabafjcxocvRcxpaaqcxqcvTckbcvTaaqcxrcxscvWcxtcxucvZcxrcxvabnaaaaaaaaicpCcpDcpCcxwcpFckdckecwccxxcxyckdcxzaaqaaqaaqaaiaaaaaactiaabcxAcxAcxAcxAcxAaaacvlaaacxAcxAcxAcxAcxAaabctiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaafoaaaaabaaaaabaabcxBaabaaaaabcxBaabaaaaabcxBaabaaaaaaaaaaaaaaaaaaaaaaaacvnbAucxCcxDcxEcxFaaicxGbYHcxHcvucvucvucvucvucvucBraaicxJcxKcxLcxMcxNcxOcxPcxQcxRcxScxTcxUcxVcxWcxXcxYcxZcvzcurcyacybcuvcuvcyccmtcydcyecvDcyfcygcyhaaqcyicyjcykcylcymcyncymcyoaabctKctKctKctKctKaabaabaabcdMcypcvRcxpaaqcyqcyrcyscytcyuabtabXabXcyvabXcywaDKaaqabnaaaaaaaaicpCcpCcpCcwacyxcyycyzcrucyActYctYcyBcyCcyDcyEciVaaaaaactiaaaaabaaaaabaabaabaaacvlaaaaabaaaaabaaaaabaaactiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacjpcjpcjpcjpcjpcjpcjpcjpcjpaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaafoafoafpaabaabcqKcyFcqMaaacqKcyFcqMaaacqKcyFcqMaabaaaaaaaaaaaaaaaaaaaaaaabaabcyGaaiaaiaaiaaiaaicyHcyIbYHcyJbYHbYHbYHcyKcCicyMcyNcxLcxLcyOcxNcyPcyQcBscyScyTcyUcyVcyWcyXcyYcyZczaczbczcczdczeczfczgczhcziczjcxcczkczlczmcznczoczpczqczrczscztczuczvczwcuMcuNczxczyczyctKaaaaaaaabafjecHcvRedHaaqczBczCczCczDaaqczEczFczGczHczIczJczKczLctbaaaeaRdXIaoiaoiaoiaoiczNczOczPczOczQczOczOczRcwcckdckdckQaaaaaactiaaacvkcvkcvkcvkcvkaabcvlaabcvkcvkcvkcvkcvkaabctiaaaaaaaaaaaaaaaaaaaaaczSaaaaaaaaaczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -12731,7 +12733,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafpaabcqKcyFcqMaaacqKcyFcqMaabcqKcyFcqMaabaabaabaaaaaaaaaaaaaabaaaaaicEMcELcCkaaicFAcCmcCncCncCncCocCncCncCncCncCpacCcDscEBcEIcCtcGpcCvcCwcCxcCxcCxcCycCzcxLcxLcxLcCAcCBcCCaaqcCDcCEeGYcCGaaiaaiaaiaaicCHcyfcygcCIcCJcCKcCLcCMcvDcCNcCOcCPcCQcCRctKctKctKctKctKaaaaaaaaaafjcCScCTcCUcCVcCWcCXcCWcCWcCYcCZcDacDbcCccDccDdcAMczHcDeaabaabawjcDfcDgcDhcDicDjcDkcDlcDmcDjcDkcDnaaicDocDpabnaaiaaaaaactjaaaaabaaaaabaaaaabaaacDqaaaaabaaaaabaabaabaabctiaaaczSczSczSaaaczSczSczSczSczSczSczSczSczSaaaczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafXaabcqKcDrcqMaaacqKcDrcqMaaacqKcDrcqMaabafpaabaabaaaaaaaaaaaaaaaaaicFBcELcDtaaiaaicDuaaiaaiaaicDvaaiaaiaaiaaiaaiaaiaaiaaiaaicDwcGqcDyejTcBpcBpcBpcDAcDBcDCcBpcBpcBpcDBcDEcDFcDGcCEeGZcDIaaicDJcDKacCcDLcDMcDNcDOcDPcBKeEucDQcDRcDScDTcDUczwcDVcuNcDWcDXcDYctKaaaaaaaaaafjcDZcEacEbcEccEdcEecEfczHcEgcEhcEicEjcEkcElcEmcEncEocEpaaaaaaawjcEqcErcEsaaqcEtcEucEvaaqcEwcExcEyaaicEzcEAabnaaaaaaaaactiaaacvkcvkcvkcvkcvkaabctkaabcvkcvkcvkcvkcvkaabctiaaaczSczSczSaaaczSczSczSczSczSczSczSczSczSaaaczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafpaaaaabaaaaaaaaaaabaabaabaaaaaaaabaabaaaafpaabaabaaaaaaaaaaaaaaaaaicFDcELcDtaaicECcEDcoecFEcEFcEGcEHcGoaaieEJcEKcGrcHhcIcaaielHeDCcEOcxMcxLcxLcEPcEQcERcEScETcEUcEVcEWaaicEXcDGcCEeHacEZaaiaaicFaaaicFbcFccvDcDOcDPcFdcvDcDQcDRcAvcAwcFecvMcFfcvNcFgcFhcFictKaaaaaaaaabgOcFkcFlcFlcFmacfacfarzcFncFocFpcFqcFrcFsaaiawjabnaaiaaiaaaaaaawjcFtcpCcpCaaqcFucpCcpCaaqcFucpCcpCaaicFvcFwcFxaaaaabaabctiaabcwjcwkcwkcwkcwkcsgcFycsgcwocwocwocwocAZaabctiaaaczSczSczSaaaczSczSczSczSczSczSczSczSczSaaaczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafoafoafpafoafoafXafpafpafpafpafoafpafpafocFzaabaaaaaaaaaaaaaaaaaaaaicJucIMcFCcBdcDtcJYcKAcFEcFFcFGcFHaaiaaicFIcKBeEbeEoeEpeEmeEneEqeErcxMcxLcFLcFMacCcFNcFOcFPcFQcFRauZcFScEOcxMcFTcFUaaqcFVaaiabnaaicFWcFXcvDcDOcDPcBKcvDcFYcDRcAvcFZcGacBNcGbcuNcGccDXcDXctKaaaaaaaaadSfaaaaaaaaaaaaaaaaaaafjcGdczHczHcGecGfcoAaaicGhcGicGjdSfaaaaaaawjcGkcpCcpCaaqcGlcpCcpCaaqcGlcpCcpCaaicFvcGmabnaaaaaaaaactiaabcxAcxAcxAcxAcxAaaactkaaacxAcxAcxAcxAcxAaaactiaaaczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaafoafoafpafoafoafXafpafpafpafpafoafpafpafocFzaabaaaaaaaaaaaaaaaaaaaaicJucIMcFCcBdcDtcJYcKAcFEcFFcFGcFHaaiaaicFIcKBeEbeEoeEpeEmeEneEqeErcxMcxLcFLcFMacCcFNcFOcFPcFQcFRauZcFScEOcxMcFTcFUaaqcFVaaiabnaaicFWcFXcvDcDOcDPcBKcvDcFYcDRcAvcFZcGacBNcGbcuNcGccDXcDXctKaaaaaaaaadSfaaaaaaaaaaaaaaaaaaafjcGdczHczHcGecGfcwhaaicGhcGicGjdSfaaaaaaawjcGkcpCcpCaaqcGlcpCcpCaaqcGlcpCcpCaaicFvcGmabnaaaaaaaaactiaabcxAcxAcxAcxAcxAaaactkaaacxAcxAcxAcxAcxAaaactiaaaczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacEQaaiaaiaaiaaiaaiaaicGnaaiaaiaaiaaiaaiaaicEQaaichPcmCcdzcdzcCucDxcENcmFcGscGtcGucGvcGvcGwcGxcGycGzcGAcGBcGwcGCcGDcGEdFvcGFcGGcGHcGIcFaaaicGJcGKcvDcDOcvDcGLcvDcDQcDRcAvcAwcGMcvMcFfctKctKctKctKctKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafjcGNczHczHcAGcGOcGPaaiaaaaaaaaaaaaaaaaaaawjcpCcpCcpCaaqcGQcpCcpCaaqcGQcpCcpCaaicGRcGSabnaaaaaaaaactiaaaaaaaabaabaabaaaaaactkaabaaaaaaaabaabaaaaaactiaaaczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwcrwcrwaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicGTcGUcGVcGWcGXcGYcGZcHacHbcepcHdcHecHfaaiaaicHgcnpcdzcdzcFKaaicHicHjcHkcHlcHmcHncHoaaicHpcHqcHrcxLcHsaaicHtcHucHvcHlcHlcHwcHxaaicFaaaicHycHzcvDcDOcvDcCIcCJcHAcHBcDScHCcHDczwcHEcuNcHFcHGcHGctKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgOcHHcHIcHJcHKcHLcHMaaiaaaaaaaaaaaaaaaaaaawjaaiaaiaaiaaiaaiaaiaaiaaicHOcHOcHOaaidKXcHQabnaaaaaaaaactictictictictiaaaaaaaaactkaaaaaaaaactictictictjctiaaaczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrwcrwcrwcrwcrwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaicHRcHScHTcHUcHUcHVcHWcHXcHYcHYcHZcIacIbaaiaaicpwcnpcdzcdzcuhaaicIdcIeaaicIfcIgcIgcIgaaicIhcIicIjcIkcGHaaicIgcIgcIgcIfaaicIlcImaaicFaaaicIncIocIpcIqcIrcIscItcIucztcIvcAwcIwcvMcFfcvNcIxcIycIzctKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaicIAcpycpycpycpycIBaaiaaaaaaaaaaaaaaaaaadPWaaaaaaaaaaaaaaaaaaaaaaaaaacaacaacaaicEzcIDabnaaaaaaaaaaaaaaaaaaaaaaaaaaactiaabcIEaabctiaaaaaaaaaaaaaaaaaaaaaczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSczSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -14261,7 +14263,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiezQeCVeCWeCXeCYeCZeCWeCVeDaaaieCSeDbeCSaaieCSeDceCSaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaieDdeDeeDfeDfeDgeDheDieDjeDkaaieCSeCSeCSaaieCSeCSeCSaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiaaiaaiaaieDleDmaaiaaieybaaiaaieDoeDpaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaieDqeDreDseDteDuaaieDveDweDxaaieDyeDzeDAeDBeicaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaieDqeDreDseDteDuaaieDveDweDxaaieDyeDzeDAeDBeHsaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiexXeDEeDEeDEeDEaaiezaeDGeDHaaieyheDJeDJeDJeDJaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaieDKeDLeDMeDLeDEaaieDHeDNeDHaaieDJeDJeDOeDJeDPaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeDQeDEeDReDSeDTeDEaaiaaiaaiaaiaaieDJeDJeDJeDJeDUaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa