diff --git a/code/game/objects/structures/electricchair.dm b/code/game/objects/structures/electricchair.dm index f9e49fcc40b..fd0c12f00c0 100644 --- a/code/game/objects/structures/electricchair.dm +++ b/code/game/objects/structures/electricchair.dm @@ -1,15 +1,24 @@ - /obj/structure/stool/bed/chair/e_chair name = "electric chair" desc = "Looks absolutely SHOCKING!" icon_state = "echair0" - var/on = 0 var/obj/item/assembly/shock_kit/part = null var/last_time = 1.0 + var/delay_time = 50 /obj/structure/stool/bed/chair/e_chair/New() ..() overlays += image('icons/obj/objects.dmi', src, "echair_over", MOB_LAYER + 1, dir) + spawn(2) + if(isnull(part)) //This e-chair was not custom built + part = new(src) + var/obj/item/clothing/head/helmet/part1 = new(part) + var/obj/item/device/radio/electropack/part2 = new(part) + part2.frequency = 1445 + part2.code = 6 + part2.master = part + part.part1 = part1 + part.part2 = part2 return /obj/structure/stool/bed/chair/e_chair/attackby(obj/item/weapon/W as obj, mob/user as mob, params) @@ -24,20 +33,17 @@ return return -/obj/structure/stool/bed/chair/e_chair/verb/toggle() - set name = "Toggle Electric Chair" +/obj/structure/stool/bed/chair/e_chair/verb/activate_e_chair() + set name = "Activate Electric Chair" set category = "Object" set src in oview(1) if(usr.stat || !usr.canmove || usr.restrained()) return - if(on) - on = 0 - icon_state = "echair0" - else - on = 1 - icon_state = "echair1" - shock() - usr << "You switch [on ? "on" : "off"] [src]." + if(last_time + delay_time > world.time) + usr << "\The [src] is not ready yet!" + return + usr << "You activate \the [src]." + shock() return /obj/structure/stool/bed/chair/e_chair/rotate() @@ -47,34 +53,36 @@ return /obj/structure/stool/bed/chair/e_chair/proc/shock() - if(!on) - return - if(last_time + 50 > world.time) + if(last_time + delay_time > world.time) return last_time = world.time + icon_state = "echair1" + spawn(delay_time) + icon_state = "echair0" + // special power handling var/area/A = get_area(src) if(!isarea(A)) return if(!A.powered(EQUIP)) return - A.use_power(EQUIP, 5000) + A.use_power(5000, EQUIP) var/light = A.power_light A.updateicon() - flick("echair1", src) + flick("echair_shock", src) var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread s.set_up(12, 1, src) s.start() + visible_message("The electric chair went off!", "You hear a deep sharp shock!") if(buckled_mob) - buckled_mob.burn_skin(85) + buckled_mob.burn_skin(90) buckled_mob << "You feel a deep shock course through your body!" 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!") + buckled_mob.burn_skin(90) + sleep(5) + buckled_mob.burn_skin(max(rand(5,20),rand(5,20),rand(5,20))) A.power_light = light A.updateicon() diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm index ff11ff41ea6..0c5e3cbbcbc 100644 --- a/maps/cyberiad.dmm +++ b/maps/cyberiad.dmm @@ -89,7 +89,7 @@ "abK" = (/obj/machinery/camera{c_tag = "Prison Solitary Confinement"; dir = 6; network = list("Prison","SS13")},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/plating,/area/security/permabrig) "abL" = (/obj/effect/decal/cleanable/cobweb2,/obj/structure/table,/obj/item/weapon/paper,/obj/machinery/light/small{dir = 1},/obj/item/weapon/pen,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor/plating,/area/security/permabrig) "abM" = (/obj/structure/grille,/obj/structure/sign/securearea,/turf/simulated/floor/airless{icon_state = "circuit"},/area) -"abN" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/machinery/light/small{dir = 8},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = -30; pixel_y = 0},/turf/simulated/floor/plating,/area/security/permabrig) +"abN" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/machinery/light/small{dir = 8},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1475; listening = 1; name = "Station Intercom (Security)"; pixel_x = -30; pixel_y = 0},/obj/item/weapon/screwdriver,/turf/simulated/floor/plating,/area/security/permabrig) "abO" = (/obj/machinery/atmospherics/pipe/simple/visible{dir = 5},/turf/simulated/floor/plating,/area/security/permabrig) "abP" = (/obj/machinery/atmospherics/valve{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor/plating,/area/security/permabrig) "abQ" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/visible{dir = 9},/turf/simulated/floor/plating,/area/security/permabrig) @@ -106,9 +106,9 @@ "acb" = (/obj/structure/stool/bed,/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/security/permabrig) "acc" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/wall,/area/security/permabrig) "acd" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/table,/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/glasses/sunglasses/blindfold,/turf/simulated/floor{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) -"ace" = (/obj/machinery/alarm{pixel_y = 23},/obj/structure/table,/obj/item/device/radio/electropack,/obj/item/device/assembly/signaler{code = 2; frequency = 1449},/turf/simulated/floor{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) -"acf" = (/obj/machinery/power/apc{dir = 1; name = "Prisoner Transfer Center APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/stool/bed/chair{name = "Electric Chair"},/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) -"acg" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/decal/cleanable/cobweb2,/obj/structure/table,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver,/obj/item/clothing/head/helmet,/obj/machinery/light/small{dir = 1},/turf/simulated/floor{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) +"ace" = (/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) +"acf" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; on = 1},/obj/effect/decal/cleanable/cobweb2,/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/device/assembly/signaler{code = 6; frequency = 1445},/turf/simulated/floor{icon_state = "dark"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) +"acg" = (/obj/machinery/power/apc{dir = 1; name = "Prisoner Transfer Center APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/stool/bed/chair/e_chair,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/execution{name = "\improper Prisoner Transfer Center"}) "ach" = (/turf/simulated/wall/r_wall,/area/security/execution{name = "\improper Prisoner Transfer Center"}) "aci" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/permabrig) "acj" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id = "Secure Gate"; name = "Security Blast Door"; opacity = 0},/turf/simulated/floor/plating,/area/security/hos) @@ -166,7 +166,7 @@ "adj" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/machinery/light/small{dir = 8},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/interrogationobs) "adk" = (/obj/machinery/camera{c_tag = "Brig Interrogation Observation"; network = list("SS13")},/obj/machinery/computer/security/telescreen{layer = 4; name = "Observation Screen"; desc = "Used for observing the brig's interrogation room."; network = list("Interrogation"); pixel_x = 0; pixel_y = 32},/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/interrogationobs) "adl" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 6},/obj/structure/stool/bed/chair{dir = 1},/obj/machinery/computer/security/telescreen{layer = 4; name = "Observation Screen"; desc = "Used for observing the brig's interrogation room."; network = list("Interrogation"); pixel_x = 0; pixel_y = 32},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/interrogationobs) -"adm" = (/obj/item/device/radio/intercom{pixel_x = 27},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/interrogationobs) +"adm" = (/obj/item/device/radio/intercom{pixel_x = 27},/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/structure/closet/secure_closet{name = "electropack storage"; req_access_txt = "63"},/obj/item/device/radio/electropack,/obj/item/device/assembly/signaler{code = 2; frequency = 1449},/turf/simulated/floor{icon_state = "floorgrime"},/area/security/interrogationobs) "adn" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "red"; dir = 8},/area/security/permabrig) "ado" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 32; pixel_y = 0},/turf/simulated/floor{icon_state = "red"; dir = 4},/area/security/permabrig) "adp" = (/obj/structure/rack,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/item/weapon/gun/energy/laser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/laser,/obj/item/weapon/gun/energy/laser{pixel_x = 3; pixel_y = -3},/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/security/securearmoury) @@ -13203,7 +13203,7 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagragragragragragragragragraaaaaaaaaaaaaaaaaaaaaaaaaamabCabDabEabFabGabHabIaccabKabLaamaaaaaaaaaaaaabzabAabMabzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagragragragragragragragragraaaaaaaaaaaaaaaaaaaaaaaaaamabNabOabPabQabRabSabTabUabVabVaamaaaaaaaaaaaaaaaabzabAabAabzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWaaaaaaaaaabWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagragragragragragragragragraaaaaaaaaaaaaaaaaaaaaaaaachachachachachachabXabYacsacaacbaamadMaaaaaaaaaaaaaaaabzabAabAabzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWabWabWabWabWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachacdaceacfacgafaaciabTaamaamaamaamaaaaaaaaaaaaaaaaaaaaaabzabAabAabzafHafHafHacjackafHafHafHabzabzabzabzabzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaafaafaafaafaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWabWabWabWabWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachacdaceacgacfafaaciabTaamaamaamaamaaaaaaaaaaaaaaaaaaaaaabzabAabAabzafHafHafHacjackafHafHafHabzabzabzabzabzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWaaaaaaabWaaaaaaabWabWabWabWabWabWabWaaaaaaabWaaaaaaabWaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachaclacmacnacoacpacqacraamaiVagqagqagqagqagqaaaaaaaaaaaaaaaabzactacuafHacvacwacxacyaczacAafHabAabAabAabAabAabzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWabWabWabWaaaabWabWabWabWabWabWabWabWabWaaaabWabWabWabWaaaaabaabaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachacBacCacDacEalYacGacraamagqagqacHacIacJagqagqagqaaaaaaaaaaaaabzacuafHacKacLacMacLacLacNafHamdamdamdamdamdamdabAacOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaaaaahaahaahaahaahaaaaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabWabWabWabWaaaabWabWabWabWabWabWabWabWabWaaaabWabWabWabWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachachachachachachacPacQagqagqacRacSacTacUacVagqagqaaaaaaaaaaaaaaaabzafHacWacXacYacZadaadbafHadcaddadeadfadgadhadiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabBabBabBabBabBabBabBabBabBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahaaaaahaahaahaahaahaaaaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa