Nymph and Scannerbed fixes (#1388)

Fixes #977 
Fixes #1380 

Fixes an unreported issue with carbon attack procs that made diona nymphs (and i guess xenomorphs and slimes too) immune to melee attacks.

Nymphs no longer gain light energy while ventcrawling. The inside of a pipe is treated as total darkness.
Nymph max health reduced by 15%. I don't want to nerf them too much.

Fixes several runtime errors in life procs, where it tried to set client vars without checking for a client. I ran into them when shooting a nymph
This commit is contained in:
NanakoAC
2017-01-04 03:40:21 +02:00
committed by skull132
parent 8c1ad1a6ae
commit 402c0b14cf
8 changed files with 52 additions and 10 deletions
@@ -30,6 +30,7 @@
var/list/sampled_DNA
var/list/language_progress
var/obj/item/clothing/head/hat
maxHealth = 85
/mob/living/carbon/alien/diona/ex_act(severity)
if (life_tick < 4)
+3 -2
View File
@@ -93,6 +93,8 @@
return 1
/mob/living/carbon/alien/handle_regular_hud_updates()
if (!..())
return//Returns if no client
if (stat == 2 || (XRAY in src.mutations))
sight |= SEE_TURFS
@@ -128,8 +130,7 @@
else
healths.icon_state = "health7"
if (client)
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
client.screen.Remove(global_hud.blurry,global_hud.druggy,global_hud.vimpaired)
if ((blind && stat != 2))
if ((blinded))
@@ -1,9 +1,9 @@
//Called when the mob is hit with an item in combat.
/mob/living/carbon/resolve_item_attack(obj/item/I, mob/living/user, var/effective_force, var/hit_zone)
/mob/living/carbon/resolve_item_attack(obj/item/I, mob/living/user, var/hit_zone)
if(check_attack_throat(I, user))
return null
..()
return ..()
/mob/living/carbon/standard_weapon_hit_effects(obj/item/I, mob/living/user, var/effective_force, var/blocked, var/hit_zone)
if(!effective_force || blocked >= 2)
@@ -450,6 +450,9 @@ if (flashlight_active)
var/light_amount = DIONA_MAX_LIGHT //how much light there is in the place, affects receiving nutrition and healing
var/light_factor = 1//used for if a gestalt's response node is damaged. it will feed more slowly
if (is_ventcrawling)
return -1.5//no light inside pipes
if (DS.light_organ)
if (DS.light_organ.is_broken())
light_factor = 0.55
+37
View File
@@ -0,0 +1,37 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
#################################
# Your name.
author: Nanako
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- tweak: "Reduced Diona nymph health a bit"
- tweak: "Diona nymphs no longer gain light while ventcrawling inside a pipe. Hiding in there too long will be fatal."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 120 KiB

+1 -1
View File
@@ -5254,7 +5254,7 @@
"bXb" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/effect/floor_decal/corner/red{tag = "icon-corner_white (SOUTHWEST)"; icon_state = "corner_white"; dir = 10},/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXc" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXd" = (/obj/machinery/body_scanconsole{tag = "icon-body_scannerconsole (WEST)"; icon_state = "body_scannerconsole"; dir = 8},/obj/effect/floor_decal/corner/red{tag = "icon-corner_white (SOUTHWEST)"; icon_state = "corner_white"; dir = 10},/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXe" = (/obj/machinery/bodyscanner{tag = "icon-body_scanner_0 (EAST)"; icon_state = "body_scanner_0"; dir = 4},/obj/effect/floor_decal/corner/red{tag = "icon-corner_white (SOUTHWEST)"; icon_state = "corner_white"; dir = 10},/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXe" = (/obj/machinery/bodyscanner{dir = 8; icon_state = "body_scanner_0"; tag = "icon-body_scanner_0 (EAST)"},/obj/effect/floor_decal/corner/red{tag = "icon-corner_white (SOUTHWEST)"; icon_state = "corner_white"; dir = 10},/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXf" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j1"},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/green{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/white,/area/medical/medbay4)
"bXg" = (/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/turf/simulated/floor/tiled,/area/medical/sleeper)
"bXh" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/sign/d,/turf/simulated/floor/tiled/white,/area/medical/medbay4)
+5 -5
View File
@@ -910,7 +910,7 @@
"rz" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/simulated/shuttle/floor,/area/supply/dock)
"rA" = (/obj/item/clothing/gloves/yellow,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/glasses/night,/obj/structure/table/steel,/turf/simulated/shuttle/floor{icon_state = "floor6"},/area/syndicate_station/start)
"rB" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/blast/shutters{density = 0; icon_state = "shutter0"; id = "syndieshutters"; name = "Blast Shutters"; opacity = 0},/turf/simulated/shuttle/plating,/area/syndicate_station/start)
"rC" = (/obj/machinery/bodyscanner{tag = "icon-body_scanner_0 (EAST)"; icon_state = "body_scanner_0"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start)
"rC" = (/obj/machinery/bodyscanner{dir = 8; icon_state = "body_scanner_0"; tag = "icon-body_scanner_0 (EAST)"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start)
"rD" = (/obj/machinery/body_scanconsole{tag = "icon-body_scannerconsole (WEST)"; icon_state = "body_scannerconsole"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/syndicate_station/start)
"rE" = (/obj/machinery/atm{pixel_y = 24},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/living)
"rF" = (/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/obj/structure/table/standard,/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/living)
@@ -1314,6 +1314,7 @@
"zn" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/hypospray,/obj/item/weapon/reagent_containers/hypospray,/obj/item/weapon/reagent_containers/hypospray,/obj/item/weapon/storage/box/syringes,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops)
"zo" = (/obj/machinery/door/airlock/glass_security{name = "Holding Cell"; req_access = list(2)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/holding)
"zp" = (/obj/machinery/door/blast/regular{id = "CentComPort"; name = "Security Doors"},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/holding)
"zq" = (/obj/machinery/bodyscanner{dir = 8; icon_state = "body_scanner_0"; tag = "icon-body_scanner_0 (EAST)"},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding)
"zr" = (/obj/machinery/door/airlock/centcom{name = "Arrivals Processing"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/holding)
"zs" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/autoinjectors,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/storage/box/gloves,/obj/item/weapon/storage/box/pillbottles,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/obj/item/bodybag/cryobag,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops)
"zt" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/storage/belt/medical,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/glass/bottle/inaprovaline,/obj/item/weapon/reagent_containers/hypospray,/obj/item/weapon/reagent_containers/hypospray,/obj/item/weapon/reagent_containers/hypospray,/obj/item/weapon/storage/box/syringes,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/unsimulated/floor{icon_state = "vault"; dir = 1},/area/centcom/specops)
@@ -1403,6 +1404,7 @@
"AZ" = (/turf/unsimulated/wall,/area/syndicate_mothership{name = "\improper Raider Base"})
"Ba" = (/obj/machinery/vending/cola{name = "Robust Softdrinks"; prices = list()},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops)
"Bb" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/centcom/holding)
"Bc" = (/obj/machinery/bodyscanner{dir = 8; icon_state = "body_scanner_0"; tag = "icon-body_scanner_0 (EAST)"},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start)
"Bd" = (/turf/simulated/shuttle/wall{tag = "icon-swall_straight (WEST)"; icon_state = "swall_straight"; dir = 8},/area/shuttle/escape/centcom)
"Be" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t"; icon_state = "swall_t"},/area/shuttle/escape/centcom)
"Bf" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/vending/cola{name = "hacked Robust Softdrinks"; prices = list()},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/syndicate_mothership{name = "\improper Raider Base"})
@@ -1439,7 +1441,6 @@
"BL" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor7"},/area/skipjack_station/start)
"BM" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "specops_shuttle_port_hatch"; locked = 1; name = "Port Docking Hatch"; req_access = list(13)},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/shuttle/specops/centcom)
"BN" = (/obj/machinery/vending/cigarette{name = "cigarette machine"; prices = list()},/turf/unsimulated/floor{icon_state = "dark"},/area/centcom/specops)
"BO" = (/obj/machinery/bodyscanner{tag = "icon-body_scanner_0 (EAST)"; icon_state = "body_scanner_0"; dir = 4},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding)
"BP" = (/turf/simulated/shuttle/wall{tag = "icon-swall_t (NORTH)"; icon_state = "swall_t"; dir = 1},/area/shuttle/transport1/centcom)
"BQ" = (/obj/machinery/body_scanconsole{tag = "icon-body_scannerconsole (WEST)"; icon_state = "body_scannerconsole"; dir = 8},/turf/unsimulated/floor{icon_state = "white"},/area/centcom/holding)
"BR" = (/obj/random/vendor,/turf/unsimulated/floor{icon_state = "dark"},/area/syndicate_mothership{name = "\improper Raider Base"})
@@ -1452,7 +1453,6 @@
"BY" = (/turf/simulated/shuttle/wall{tag = "icon-swall_f (NORTH)"; icon_state = "swall_f"; dir = 1},/area/shuttle/transport1/centcom)
"BZ" = (/obj/structure/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/skipjack_station/start)
"Ca" = (/obj/machinery/light/small{dir = 1},/obj/machinery/body_scanconsole{tag = "icon-body_scannerconsole (WEST)"; icon_state = "body_scannerconsole"; dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start)
"Cb" = (/obj/machinery/bodyscanner{tag = "icon-body_scanner_0 (EAST)"; icon_state = "body_scanner_0"; dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/skipjack_station/start)
"Cc" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/unsimulated/wall,/area/centcom/ferry)
"Cd" = (/obj/structure/window/reinforced,/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 4},/turf/space,/area/shuttle/transport1/centcom)
"Ce" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/airless,/area/shuttle/transport1/centcom)
@@ -2097,11 +2097,11 @@ dCmumumumumuaMaMaMaMaMaMaMaMlylLlKlyaMaMlwlylylNlMlPlOlylxaMaMlylQlRlyaMaMaMaMmt
dCmumumumumuaMaMaMaMaMaMaMaMlylTlSlyaMaMlylylUlWlVlWlXlylyaMaMlylYlZlyaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMCNMjJULlLWEZEZEZEZEZEZEHEAEKEJEAFeEAEJELEAEHEMEOENEQEPCNDVDVDVDVDVDVAMaMaMaMaMaMaMaMaMaMaMaMEvEVEVEVExaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumumumuaMaMaMaMaMaMaMaMlymalylylylylymdmbmbmbmbmbmmlylylylylymelyaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMCNJULlLWEZEZEZEZEZEZEZEHypEAypEAFeEAyIEAyIEHDVDVDVDVDVMuDVDVDVDVDVDVAMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumumumuaMaMaMaMaMaMaMaMlymgmfmjmhmllymombmbmbmbmbmmlympmnmqwloTlyaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMCNLlLWEZEZEZEZEZEZEZEZEHEAEAEAEAFeEAEAEAEAEHETDVFEDVEUCNDVDVDVDVDVEWAMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumuaMaMaMaMaMaMaMaMaMaMaMlypvpspspspwlypNpEpPpOpNpEpPlyqBpspsqNpvlyaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMAHCNCNCNCNCNCNCNCNCNCNCNEHEAEAEAEAFeEAEAEAEAEHFaDVFbFdFcCNBOBQDRFiFhFjCNaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumuaMaMaMaMaMaMaMaMaMaMaMlypvpspspspwlypNpEpPpOpNpEpPlyqBpspsqNpvlyaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMAHCNCNCNCNCNCNCNCNCNCNCNEHEAEAEAEAFeEAEAEAEAEHFaDVFbFdFcCNzqBQDRFiFhFjCNaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumuaMaMaMaMaMaMaMaMaMaMaMsUpvpspspspspOmbmbmbmbmbmbmbpOpspstEpspvsUaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeFeFeFeFeFeFeFeFeFeFeEHEHFkEHEHFeEHEHFkEHEHEHEHEHEHEHCNCNCNCNCNCNCNCNaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMaMaMaMaMaMaMvNzApsAepspslyBnAVmbmbmbMdBolypsBppsBqpvvNaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeEHEHEHEHNwEHEHEHFeFeFeFeFeFeEHFeEHFeFeFeFeFeFeFeFeEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMaMaMaMaMaMaMBrzApspslyBslylylyBAByBClylylyBslyBEOcBIBraMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeEHGaGbGbGbGbGcEHEHEHEHEHEHEHEHNPEHEHEHEHEHEHEHEHFeEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMaMaMaMaMaMlwlyBKBJMclyBTBLBTsUBXBWBZsUCbCaCslyDeCtDLlylxaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeEHGaGbGbGbGbGcEHFnFmFoFmFtFpFpFpFpFpFtFpFtFpFvEHFeEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMaMaMaMaMaMlwlyBKBJMclyBTBLBTsUBXBWBZsUBcCaCslyDeCtDLlylxaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeEHGaGbGbGbGbGcEHFnFmFoFmFtFpFpFpFpFpFtFpFtFpFvEHFeEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMmumuaMaMaMDMlyDUDUlylyBTBTBTvNBXByBZvNCsCsEdlylyDUDUlyEEaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeEHGkGbGbGbGbGlEHFpFwFwFwFwFwFpFpFpFwFwFwFwFxFyEHFeEHEHEHEHEHEHEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMmumuaMaMaMaMDMFqFqEElyFYCkBTBrFZmbFZBrCsCsHHlyDMFqFqEEaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHFeEHGkOpOoOoGbGbGrFpFpFBFAFBFpFpFpFpFpFBFAFBFCFpEHFeFeFeFeFeFeFeEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM
dCmumumuaMaMaMaMmumuaMaMaMaMaMaMaMaMlyBTBTBTlylypOlylyKSCsKTlyaMaMaMaMaMaMaMaMmtaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMEHEHFeEHEHEHEHEHEHEHEHFpFwFwFwFwFwFpFpFpFwFwFwFwFDFpEHEHEHEHEHEHEHFeEHEHEHaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaM