From 586966ea513e4901b240667446b55b40bb42c34d Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Thu, 16 Apr 2020 03:37:52 +0200 Subject: [PATCH] General refactor for some snowflake bodyparts procs and taurs. --- code/__DEFINES/inventory.dm | 3 + code/__DEFINES/misc.dm | 18 +- code/_globalvars/lists/flavor_misc.dm | 6 +- code/modules/client/preferences_savefile.dm | 9 + code/modules/clothing/clothing.dm | 37 ++- .../sprite_accessories/_sprite_accessories.dm | 20 ++ .../sprite_accessories/alienpeople.dm | 7 + .../sprite_accessories/body_markings.dm | 5 + .../new_player/sprite_accessories/caps.dm | 3 +- .../new_player/sprite_accessories/ears.dm | 8 +- .../new_player/sprite_accessories/frills.dm | 4 +- .../new_player/sprite_accessories/horns.dm | 4 +- .../sprite_accessories/ipc_synths.dm | 1 + .../sprite_accessories/legs_and_taurs.dm | 72 +++-- .../new_player/sprite_accessories/pines.dm | 1 + .../new_player/sprite_accessories/snouts.dm | 3 + .../new_player/sprite_accessories/tails.dm | 13 +- .../new_player/sprite_accessories/wings.dm | 11 +- .../mob/living/carbon/human/species.dm | 248 ++++++++---------- .../mob/living/carbon/human/update_icons.dm | 62 +++-- .../modules/mob/living/carbon/update_icons.dm | 9 + icons/mob/clothing/taur_hooved.dmi | Bin 8069 -> 8023 bytes modular_citadel/icons/mob/mam_taur.dmi | Bin 52417 -> 57807 bytes 23 files changed, 324 insertions(+), 220 deletions(-) diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index fd50b8b70d..92cee59860 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -139,6 +139,9 @@ #define STYLE_PAW_TAURIC (1<<3) #define STYLE_HOOF_TAURIC (1<<4) #define STYLE_ALL_TAURIC (STYLE_SNEK_TAURIC|STYLE_PAW_TAURIC|STYLE_HOOF_TAURIC) +#define USE_SNEK_CLIP_MASK (1<<5) +#define USE_HOOF_CLIP_MASK (1<<6) +#define USE_TAUR_CLIP_MASK (USE_SNEK_CLIP_MASK|USE_HOOF_CLIP_MASK) //digitigrade legs settings. #define NOT_DIGITIGRADE 0 diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 3fb149d071..e8ca6f444c 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -35,15 +35,15 @@ Will print: "/mob/living/carbon/human/death" (you can optionally embed it in a s #define BODY_ADJ_LAYER 27 //certain mutantrace features (snout, body markings) that must appear above the body parts #define GENITALS_FRONT_LAYER 26 //Draws some genitalia above clothes and the TAUR body if need be. #define BODY_LAYER 25 //underwear, undershirts, socks, eyes, lips(makeup) -#define FRONT_MUTATIONS_LAYER 24 //mutations that should appear above body, body_adj and bodyparts layer (e.g. laser eyes) -#define DAMAGE_LAYER 23 //damage indicators (cuts and burns) -#define UNIFORM_LAYER 22 -#define ID_LAYER 21 -#define HANDS_PART_LAYER 20 -#define SHOES_LAYER 19 -#define GLOVES_LAYER 18 -#define EARS_LAYER 17 -#define BODY_TAUR_LAYER 16 +#define BODY_ADJ_UPPER_LAYER 24 +#define FRONT_MUTATIONS_LAYER 23 //mutations that should appear above body, body_adj and bodyparts layer (e.g. laser eyes) +#define DAMAGE_LAYER 22 //damage indicators (cuts and burns) +#define UNIFORM_LAYER 21 +#define ID_LAYER 20 +#define HANDS_PART_LAYER 19 +#define SHOES_LAYER 18 +#define GLOVES_LAYER 17 +#define EARS_LAYER 16 #define SUIT_LAYER 15 #define GENITALS_EXPOSED_LAYER 14 #define GLASSES_LAYER 13 diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index 968995e81d..ed037968ef 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -137,8 +137,10 @@ GLOBAL_LIST_INIT(jumpsuitlist, list(PREF_SUIT, PREF_SKIRT)) #define UPLINK_PEN "Pen" //like a real spy! GLOBAL_LIST_INIT(uplink_spawn_loc_list, list(UPLINK_PDA, UPLINK_RADIO, UPLINK_PEN)) - //Female Uniforms -GLOBAL_LIST_EMPTY(female_clothing_icons) +//List of alpha masked cached icons. +GLOBAL_LIST_EMPTY(alpha_masked_worn_clothing_icons) +//List containing alpha mask /icons in a 'state = list(icon, offset_x, offset_y)' +GLOBAL_LIST_EMPTY(worn_alpha_masks) //radical shit GLOBAL_LIST_INIT(hit_appends, list("-OOF", "-ACK", "-UGH", "-HRNK", "-HURGH", "-GLORF")) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 7da9d5a1dc..78f6f52ee7 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -159,6 +159,15 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["cock_shape"] = malformed_hockeys[hockey] features["cock_taur"] = TRUE + if(current_version < 29) + switch(features["taur"]) + if("Husky", "Lab", "Shepherd", "Fox", "Wolf") + features["taur"] = "Canine" + if("Panther", "Tiger") + features["taur"] = "Feline" + if("Cow") + features["taur"] = "Cow (Spotted)" + /datum/preferences/proc/load_path(ckey,filename="preferences.sav") if(!ckey) return diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index d484027ad5..2fd52ed048 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -173,12 +173,37 @@ SEE_PIXELS// if an object is located on an unlit area, but some of its pixels ar BLIND // can't see anything */ -/proc/generate_female_clothing(index,t_color,icon,type) - var/icon/female_clothing_icon = icon("icon"=icon, "icon_state"=t_color) - var/icon/female_s = icon("icon"='icons/mob/clothing/uniform.dmi', "icon_state"="[(type == FEMALE_UNIFORM_FULL) ? "female_full" : "female_top"]") - female_clothing_icon.Blend(female_s, ICON_MULTIPLY) - female_clothing_icon = fcopy_rsc(female_clothing_icon) - GLOB.female_clothing_icons[index] = female_clothing_icon +#if DM_VERSION >= 513 // Yes! Filters! + +/proc/generate_alpha_masked_clothing(index,state,icon,layer,female,alpha_masks) + var/mutable_appearance/M = mutable_appearance(icon, state, layer = layer) + if(female) + var/icon/female_s = icon('icons/mob/clothing/uniform.dmi', "[(female == FEMALE_UNIFORM_FULL) ? "female_full" : "female_top"]") + M.filters += filter(type="alpha",icon = female_s) + if(alpha_masks) + if(istext(alpha_masks)) + alpha_masks = list(alpha_masks) + for(var/k in alpha_masks) + var/list/L = GLOB.worn_alpha_masks[k] + M.filters += filter(type="alpha", x = L[1], y = L[2], icon = L[3]) + . = GLOB.alpha_masked_worn_clothing_icons[index] = M + +#else + +/proc/generate_alpha_masked_clothing(index,state,icon,layer,female,alpha_masks) + var/icon/I = icon(icon, state) + if(female) + var/icon/female_s = icon('icons/mob/clothing/uniform.dmi', "[(female == FEMALE_UNIFORM_FULL) ? "female_full" : "female_top"]") + I.Blend(female_s, ICON_MULTIPLY) + if(alpha_masks) + if(istext(alpha_masks)) + alpha_masks = list(alpha_masks) + for(var/k in alpha_masks) + var/list/L = GLOB.worn_alpha_masks[k] + I.Blend(L[3], ICON_MULTIPLY, L[1], L[2]) + GLOB.alpha_masked_worn_clothing_icons[index] = fcopy_rsc(I) + +#endif /obj/item/clothing/proc/weldingvisortoggle(mob/user) //proc to toggle welding visors on helmets, masks, goggles, etc. if(!can_use(user)) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm index ab278b2e82..7b383d22b5 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm @@ -16,6 +16,7 @@ from doing this unless you absolutely know what you are doing, and have defined a conversion in savefile.dm */ + /proc/init_sprite_accessory_subtypes(prototype, list/L, list/male, list/female, roundstart = FALSE, skip_prototype = TRUE)//Roundstart argument builds a specific list for roundstart parts where some parts may be locked if(!istype(L)) L = list() @@ -60,6 +61,9 @@ var/dimension_x = 32 var/dimension_y = 32 var/center = FALSE //Should we center the sprite? + var/list/relevant_layers //list of layers that this accessory uses. As of now only used in species.handle_mutant_bodyparts(), but that's where most sprite accessories are anyway. + var/mutant_part_string //Also used in species.handle_mutant_bodyparts() to generate the overlay icon state. + var/alpha_mask_state //Special / holdover traits for Citadel specific sprites. var/extra = FALSE @@ -75,6 +79,22 @@ //For soft-restricting markings to species IDs var/list/recommended_species +/datum/sprite_accessory/New() + if(alpha_mask_state) + alpha_mask_state = "[icon]-[alpha_mask_state]" //foolproofing against states with same name but different files. + if(!GLOB.worn_alpha_masks[alpha_mask_state]) + var/image/I = icon(icon, alpha_mask_state) + var/x_offset = 0 + var/y_offset = 0 + if(center) + x_offset = -((dimension_x/world.icon_size)-1)*(world.icon_size*0.5) + y_offset = -((dimension_y/world.icon_size)-1)*(world.icon_size*0.5) + if(dimension_x < world.icon_size) + x_offset *= -1 + if(dimension_y < world.icon_size) + y_offset *= -1 + GLOB.worn_alpha_masks[alpha_mask_state] = list(x_offset, y_offset, I) + /datum/sprite_accessory/underwear icon = 'icons/mob/clothing/underwear.dmi' var/has_color = FALSE diff --git a/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm b/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm index 6c0659f851..c8e7aca26d 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/alienpeople.dm @@ -4,6 +4,8 @@ *******************************************/ /datum/sprite_accessory/xeno_dorsal icon = 'modular_citadel/icons/mob/xeno_parts_greyscale.dmi' + mutant_part_string = "xenodorsal" + relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/xeno_dorsal/standard name = "Standard" @@ -22,9 +24,12 @@ *******************************************/ /datum/sprite_accessory/xeno_tail icon = 'modular_citadel/icons/mob/xeno_parts_greyscale.dmi' + mutant_part_string = "tail" + relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/xeno_tail/none name = "None" + relevant_layers = null /datum/sprite_accessory/xeno_tail/standard name = "Xenomorph Tail" @@ -35,6 +40,8 @@ *******************************************/ /datum/sprite_accessory/xeno_head icon = 'modular_citadel/icons/mob/xeno_parts_greyscale.dmi' + mutant_part_string = "xhead" + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/xeno_head/standard name = "Standard" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm b/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm index 8f043125b2..9950f0d76a 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/body_markings.dm @@ -4,10 +4,12 @@ /datum/sprite_accessory/body_markings icon = 'icons/mob/mutant_bodyparts.dmi' + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/body_markings/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/body_markings/dtiger name = "Dark Tiger Body" @@ -45,6 +47,7 @@ icon_state = "none" ckeys_allowed = list("yousshouldnteverbeseeingthisyoumeme") icon = 'modular_citadel/icons/mob/markings_notmammals.dmi' + relevant_layers = null /datum/sprite_accessory/mam_body_markings/plain name = "Plain" @@ -219,10 +222,12 @@ /datum/sprite_accessory/insect_fluff icon = 'icons/mob/wings.dmi' color_src = 0 + relevant_layers = list(BODY_FRONT_LAYER) /datum/sprite_accessory/insect_fluff/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/insect_fluff/plain name = "Plain" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/caps.dm b/code/modules/mob/dead/new_player/sprite_accessories/caps.dm index debb4865ba..822fcf960d 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/caps.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/caps.dm @@ -1,7 +1,8 @@ datum/sprite_accessory/caps icon = 'icons/mob/mutant_bodyparts.dmi' color_src = HAIR + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/caps/round name = "Round" - icon_state = "round" \ No newline at end of file + icon_state = "round" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/ears.dm b/code/modules/mob/dead/new_player/sprite_accessories/ears.dm index c91bd633a5..c60abbeefa 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/ears.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/ears.dm @@ -1,9 +1,12 @@ /datum/sprite_accessory/ears icon = 'icons/mob/mutant_bodyparts.dmi' + mutant_part_string = "ears" + relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/ears/none name = "None" icon_state = "none" + relevant_layers = null /****************************************** *************** Human Ears **************** @@ -172,10 +175,13 @@ /datum/sprite_accessory/mam_ears icon = 'modular_citadel/icons/mob/mam_ears.dmi' color_src = MATRIXED + mutant_part_string = "ears" + relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/mam_ears/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/mam_ears/axolotl name = "Axolotl" @@ -309,4 +315,4 @@ /datum/sprite_accessory/mam_ears/bunny name = "Bunny" - icon_state = "bunny" \ No newline at end of file + icon_state = "bunny" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/frills.dm b/code/modules/mob/dead/new_player/sprite_accessories/frills.dm index 93c4af6df0..0aaec309a4 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/frills.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/frills.dm @@ -1,9 +1,11 @@ /datum/sprite_accessory/frills icon = 'icons/mob/mutant_bodyparts.dmi' + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/frills/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/frills/simple name = "Simple" @@ -15,4 +17,4 @@ /datum/sprite_accessory/frills/aquatic name = "Aquatic" - icon_state = "aqua" \ No newline at end of file + icon_state = "aqua" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/horns.dm b/code/modules/mob/dead/new_player/sprite_accessories/horns.dm index a630ead7b3..6126b6c04b 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/horns.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/horns.dm @@ -1,10 +1,12 @@ /datum/sprite_accessory/horns icon = 'icons/mob/mutant_bodyparts.dmi' color_src = HORNCOLOR + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/horns/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/horns/simple name = "Simple" @@ -33,4 +35,4 @@ /datum/sprite_accessory/horns/guilmon name = "Guilmon" - icon_state = "guilmon" \ No newline at end of file + icon_state = "guilmon" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/ipc_synths.dm b/code/modules/mob/dead/new_player/sprite_accessories/ipc_synths.dm index d47607f6fd..e38d9b7341 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/ipc_synths.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/ipc_synths.dm @@ -5,6 +5,7 @@ /datum/sprite_accessory/screen icon = 'modular_citadel/icons/mob/ipc_screens.dmi' color_src = null + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/screen/blank name = "Blank" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm index fe154ffeec..3aec01d557 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/legs_and_taurs.dm @@ -22,28 +22,38 @@ /datum/sprite_accessory/taur icon = 'modular_citadel/icons/mob/mam_taur.dmi' extra_icon = 'modular_citadel/icons/mob/mam_taur.dmi' - extra = TRUE extra2_icon = 'modular_citadel/icons/mob/mam_taur.dmi' - extra2 = TRUE center = TRUE dimension_x = 64 - var/taur_mode = NONE //Must be a single specific tauric suit variation bitflag. Don't do FLAG_1|FLAG_2 - var/alt_taur_mode = NONE //Same as above. color_src = MATRIXED recommended_species = list("human", "lizard", "insect", "mammal", "xeno", "jelly", "slimeperson", "podweak") + relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_UPPER_LAYER, BODY_FRONT_LAYER) + var/taur_mode = NONE //Must be a single specific tauric suit variation bitflag. Don't do FLAG_1|FLAG_2 + var/alt_taur_mode = NONE //Same as above. + var/hide_legs = USE_HOOF_CLIP_MASK + alpha_mask_state = "taur_mask_def" + /datum/sprite_accessory/taur/none - dimension_x = 32 - center = FALSE name = "None" icon_state = "None" + dimension_x = 32 + center = FALSE recommended_species = null + relevant_layers = null + hide_legs = FALSE /datum/sprite_accessory/taur/cow name = "Cow" icon_state = "cow" taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + +/datum/sprite_accessory/taur/cow/spotted + name = "Cow (Spotted)" + icon_state = "cow_spotted" + color_src = MATRIXED /datum/sprite_accessory/taur/deer name = "Deer" @@ -56,27 +66,21 @@ name = "Drake" icon_state = "drake" taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + extra = TRUE /datum/sprite_accessory/taur/drider name = "Drider" icon_state = "drider" color_src = MUTCOLORS + extra = TRUE /datum/sprite_accessory/taur/eevee name = "Eevee" icon_state = "eevee" taur_mode = STYLE_PAW_TAURIC color_src = MUTCOLORS - -/datum/sprite_accessory/taur/fox - name = "Fox" - icon_state = "fox" - taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/husky - name = "Husky" - icon_state = "husky" - taur_mode = STYLE_PAW_TAURIC + extra = TRUE /datum/sprite_accessory/taur/horse name = "Horse" @@ -84,15 +88,12 @@ taur_mode = STYLE_HOOF_TAURIC alt_taur_mode = STYLE_PAW_TAURIC -/datum/sprite_accessory/taur/lab - name = "Lab" - icon_state = "lab" - taur_mode = STYLE_PAW_TAURIC - /datum/sprite_accessory/taur/naga name = "Naga" icon_state = "naga" taur_mode = STYLE_SNEK_TAURIC + hide_legs = USE_SNEK_CLIP_MASK + alpha_mask_state = "taur_mask_naga" /datum/sprite_accessory/taur/otie name = "Otie" @@ -104,29 +105,26 @@ icon_state = "pede" taur_mode = STYLE_PAW_TAURIC color_src = MUTCOLORS - -/datum/sprite_accessory/taur/panther - name = "Panther" - icon_state = "panther" - taur_mode = STYLE_PAW_TAURIC - -/datum/sprite_accessory/taur/shepherd - name = "Shepherd" - icon_state = "shepherd" - taur_mode = STYLE_PAW_TAURIC + extra = TRUE + extra2 = TRUE /datum/sprite_accessory/taur/tentacle name = "Tentacle" icon_state = "tentacle" taur_mode = STYLE_SNEK_TAURIC color_src = MUTCOLORS + hide_legs = USE_SNEK_CLIP_MASK -/datum/sprite_accessory/taur/tiger - name = "Tiger" - icon_state = "tiger" +/datum/sprite_accessory/taur/canine + name = "Canine" + icon_state = "canine" taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + extra = TRUE -/datum/sprite_accessory/taur/wolf - name = "Wolf" - icon_state = "wolf" +/datum/sprite_accessory/taur/feline + name = "Feline" + icon_state = "feline" taur_mode = STYLE_PAW_TAURIC + color_src = MUTCOLORS + extra = TRUE diff --git a/code/modules/mob/dead/new_player/sprite_accessories/pines.dm b/code/modules/mob/dead/new_player/sprite_accessories/pines.dm index 4ccbc3d9ea..0885a6eb9f 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/pines.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/pines.dm @@ -7,6 +7,7 @@ /datum/sprite_accessory/spines/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/spines_animated/none name = "None" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm b/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm index c016e9b119..61763e21ee 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/snouts.dm @@ -1,5 +1,6 @@ /datum/sprite_accessory/snouts icon = 'icons/mob/mutant_bodyparts.dmi' + mutant_part_string = "snout" /datum/sprite_accessory/snouts/sharp name = "Sharp" @@ -152,11 +153,13 @@ color_src = MATRIXED icon = 'modular_citadel/icons/mob/mam_snouts.dmi' recommended_species = list("mammal", "slimeperson", "insect", "podweak") + mutant_part_string = "snout" /datum/sprite_accessory/mam_snouts/none name = "None" icon_state = "none" recommended_species = null + relevant_layers = null /datum/sprite_accessory/mam_snouts/bird name = "Beak" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/tails.dm b/code/modules/mob/dead/new_player/sprite_accessories/tails.dm index 90980743e1..a48df5e41e 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/tails.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/tails.dm @@ -1,8 +1,10 @@ /datum/sprite_accessory/tails icon = 'icons/mob/mutant_bodyparts.dmi' + mutant_part_string = "tail" /datum/sprite_accessory/tails_animated icon = 'icons/mob/mutant_bodyparts.dmi' + mutant_part_string = "tailwag" /****************************************** ************* Lizard Tails **************** @@ -43,10 +45,12 @@ /datum/sprite_accessory/tails/lizard/none name = "None" icon_state = "None" + relevant_layers = null /datum/sprite_accessory/tails_animated/lizard/none name = "None" icon_state = "None" + relevant_layers = null /datum/sprite_accessory/tails/lizard/axolotl name = "Axolotl" @@ -85,10 +89,12 @@ /datum/sprite_accessory/tails/human/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/tails_animated/human/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/tails/human/ailurus name = "Red Panda" @@ -502,20 +508,23 @@ color_src = MATRIXED icon = 'modular_citadel/icons/mob/mam_tails.dmi' recommended_species = list("mammal", "slimeperson", "podweak", "felinid", "insect") + mutant_part_string = "tail" /datum/sprite_accessory/mam_tails/none name = "None" icon_state = "none" recommended_species = null + relevant_layers = null /datum/sprite_accessory/mam_tails_animated color_src = MATRIXED icon = 'modular_citadel/icons/mob/mam_tails.dmi' + mutant_part_string = "tail" /datum/sprite_accessory/mam_tails_animated/none name = "None" icon_state = "none" - color_src = MATRIXED + relevant_layers = null /datum/sprite_accessory/mam_tails/ailurus name = "Red Panda" @@ -576,7 +585,7 @@ /datum/sprite_accessory/mam_tails_animated/catbig name = "Cat, Big" icon_state = "catbig" - + /datum/sprite_accessory/mam_tails/twocat name = "Cat, Double" icon_state = "twocat" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/wings.dm b/code/modules/mob/dead/new_player/sprite_accessories/wings.dm index 9c1eb6a3fa..2b25fe8848 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/wings.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/wings.dm @@ -3,6 +3,7 @@ /datum/sprite_accessory/wings/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/wings_open icon = 'icons/mob/wings.dmi' @@ -17,6 +18,7 @@ /datum/sprite_accessory/wings icon = 'icons/mob/wings.dmi' + relevant_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/wings/angel name = "Angel" @@ -32,10 +34,13 @@ /datum/sprite_accessory/deco_wings icon = 'icons/mob/wings.dmi' color_src = WINGCOLOR + mutant_part_string = "insect_wings" + relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/deco_wings/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/deco_wings/angel name = "Angel" @@ -130,10 +135,12 @@ /datum/sprite_accessory/insect_wings icon = 'icons/mob/wings.dmi' color_src = WINGCOLOR + relevant_layers = list(BODY_BEHIND_LAYER, BODY_FRONT_LAYER) /datum/sprite_accessory/insect_wings/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/insect_wings/bat name = "Bat" @@ -231,10 +238,12 @@ /datum/sprite_accessory/insect_markings // Extra markings for insects ported from tg. icon = 'icons/mob/insect_markings.dmi' color_src = null + relevant_layers = list(BODY_ADJ_LAYER) /datum/sprite_accessory/insect_markings/none name = "None" icon_state = "none" + relevant_layers = null /datum/sprite_accessory/insect_markings/reddish name = "Reddish" @@ -290,4 +299,4 @@ /datum/sprite_accessory/insect_markings/witchwing name = "Witch Wing" - icon_state = "witchwing" \ No newline at end of file + icon_state = "witchwing" diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index e39ce7d488..d1b408444c 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -582,7 +582,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) var/state = "[T.icon_state][((DIGITIGRADE in species_traits) && T.has_digitigrade) ? "_d" : ""]" var/mutable_appearance/MA if(H.dna.species.sexes && H.dna.features["body_model"] == FEMALE) - MA = wear_female_version(state, T.icon, BODY_LAYER) + MA = wear_alpha_masked_version(state, T.icon, -BODY_LAYER, FEMALE_UNIFORM_TOP) else MA = mutable_appearance(T.icon, state, -BODY_LAYER) if(T.has_color) @@ -597,15 +597,14 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) /datum/species/proc/handle_mutant_bodyparts(mob/living/carbon/human/H, forced_colour) var/list/bodyparts_to_add = mutant_bodyparts.Copy() - var/list/relevent_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER, BODY_TAUR_LAYER) + var/list/relevant_layers = list() + var/list/dna_feature_as_text_string = list() var/list/standing = list() H.remove_overlay(BODY_BEHIND_LAYER) H.remove_overlay(BODY_ADJ_LAYER) + H.remove_overlay(BODY_ADJ_UPPER_LAYER) H.remove_overlay(BODY_FRONT_LAYER) - //CITADEL EDIT - Do not forget to add this to relevent_layers list just above too! - H.remove_overlay(BODY_TAUR_LAYER) - //END EDIT if(!mutant_bodyparts) return @@ -742,113 +741,110 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(!bodyparts_to_add) return + for(var/bodypart in bodyparts_to_add) + var/datum/sprite_accessory/S + switch(bodypart) + if("tail_lizard") + S = GLOB.tails_list_lizard[H.dna.features["tail_lizard"]] + if("waggingtail_lizard") + S = GLOB.animated_tails_list_lizard[H.dna.features["tail_lizard"]] + if("tail_human") + S = GLOB.tails_list_human[H.dna.features["tail_human"]] + if("waggingtail_human") + S = GLOB.animated_tails_list_human[H.dna.features["tail_human"]] + if("spines") + S = GLOB.spines_list[H.dna.features["spines"]] + if("waggingspines") + S = GLOB.animated_spines_list[H.dna.features["spines"]] + if("snout") + S = GLOB.snouts_list[H.dna.features["snout"]] + if("frills") + S = GLOB.frills_list[H.dna.features["frills"]] + if("horns") + S = GLOB.horns_list[H.dna.features["horns"]] + if("ears") + S = GLOB.ears_list[H.dna.features["ears"]] + if("body_markings") + S = GLOB.body_markings_list[H.dna.features["body_markings"]] + if("wings") + S = GLOB.wings_list[H.dna.features["wings"]] + if("wingsopen") + S = GLOB.wings_open_list[H.dna.features["wings"]] + if("deco_wings") + S = GLOB.deco_wings_list[H.dna.features["deco_wings"]] + if("legs") + S = GLOB.legs_list[H.dna.features["legs"]] + if("insect_wings") + S = GLOB.insect_wings_list[H.dna.features["insect_wings"]] + if("insect_fluff") + S = GLOB.insect_fluffs_list[H.dna.features["insect_fluff"]] + if("insect_markings") + S = GLOB.insect_markings_list[H.dna.features["insect_markings"]] + if("caps") + S = GLOB.caps_list[H.dna.features["caps"]] + if("ipc_screen") + S = GLOB.ipc_screens_list[H.dna.features["ipc_screen"]] + if("ipc_antenna") + S = GLOB.ipc_antennas_list[H.dna.features["ipc_antenna"]] + if("mam_tail") + S = GLOB.mam_tails_list[H.dna.features["mam_tail"]] + if("mam_waggingtail") + S = GLOB.mam_tails_animated_list[H.dna.features["mam_tail"]] + if("mam_body_markings") + S = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]] + if("mam_ears") + S = GLOB.mam_ears_list[H.dna.features["mam_ears"]] + if("mam_snouts") + S = GLOB.mam_snouts_list[H.dna.features["mam_snouts"]] + if("taur") + S = GLOB.taur_list[H.dna.features["taur"]] + if("xenodorsal") + S = GLOB.xeno_dorsal_list[H.dna.features["xenodorsal"]] + if("xenohead") + S = GLOB.xeno_head_list[H.dna.features["xenohead"]] + if("xenotail") + S = GLOB.xeno_tail_list[H.dna.features["xenotail"]] + + if(!S || S.icon_state == "none") + continue + + for(var/L in S.relevant_layers) + LAZYADD(relevant_layers["[L]"], S) + if(!S.mutant_part_string) + dna_feature_as_text_string[S] = bodypart + + var/static/list/layer_text = list("[BODY_BEHIND_LAYER]" = "_BEHIND", "[BODY_ADJ_LAYER]" = "_ADJ", \ + "[BODY_ADJ_UPPER_LAYER]" = "_ADJUP", "[BODY_FRONT_LAYER]" = "_FRONT") + var/g = (H.dna.features["body_model"] == FEMALE) ? "f" : "m" + var/list/colorlist = list() + var/husk = HAS_TRAIT(H, TRAIT_HUSK) + colorlist += husk ? ReadRGB("#a3a3a3") :ReadRGB("[H.dna.features["mcolor"]]0") + colorlist += husk ? ReadRGB("#a3a3a3") :ReadRGB("[H.dna.features["mcolor2"]]0") + colorlist += husk ? ReadRGB("#a3a3a3") : ReadRGB("[H.dna.features["mcolor3"]]0") + colorlist += list(0,0,0, hair_alpha) + for(var/index in 1 to colorlist.len) + colorlist[index] /= 255 - for(var/layer in relevent_layers) - var/layertext = mutant_bodyparts_layertext(layer) - - for(var/bodypart in bodyparts_to_add) - var/datum/sprite_accessory/S - switch(bodypart) - if("tail_lizard") - S = GLOB.tails_list_lizard[H.dna.features["tail_lizard"]] - if("waggingtail_lizard") - S = GLOB.animated_tails_list_lizard[H.dna.features["tail_lizard"]] - if("tail_human") - S = GLOB.tails_list_human[H.dna.features["tail_human"]] - if("waggingtail_human") - S = GLOB.animated_tails_list_human[H.dna.features["tail_human"]] - if("spines") - S = GLOB.spines_list[H.dna.features["spines"]] - if("waggingspines") - S = GLOB.animated_spines_list[H.dna.features["spines"]] - if("snout") - S = GLOB.snouts_list[H.dna.features["snout"]] - if("frills") - S = GLOB.frills_list[H.dna.features["frills"]] - if("horns") - S = GLOB.horns_list[H.dna.features["horns"]] - if("ears") - S = GLOB.ears_list[H.dna.features["ears"]] - if("body_markings") - S = GLOB.body_markings_list[H.dna.features["body_markings"]] - if("wings") - S = GLOB.wings_list[H.dna.features["wings"]] - if("wingsopen") - S = GLOB.wings_open_list[H.dna.features["wings"]] - if("deco_wings") - S = GLOB.deco_wings_list[H.dna.features["deco_wings"]] - if("legs") - S = GLOB.legs_list[H.dna.features["legs"]] - if("insect_wings") - S = GLOB.insect_wings_list[H.dna.features["insect_wings"]] - if("insect_fluff") - S = GLOB.insect_fluffs_list[H.dna.features["insect_fluff"]] - if("insect_markings") - S = GLOB.insect_markings_list[H.dna.features["insect_markings"]] - if("caps") - S = GLOB.caps_list[H.dna.features["caps"]] - if("ipc_screen") - S = GLOB.ipc_screens_list[H.dna.features["ipc_screen"]] - if("ipc_antenna") - S = GLOB.ipc_antennas_list[H.dna.features["ipc_antenna"]] - if("mam_tail") - S = GLOB.mam_tails_list[H.dna.features["mam_tail"]] - if("mam_waggingtail") - S = GLOB.mam_tails_animated_list[H.dna.features["mam_tail"]] - if("mam_body_markings") - S = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]] - if("mam_ears") - S = GLOB.mam_ears_list[H.dna.features["mam_ears"]] - if("mam_snouts") - S = GLOB.mam_snouts_list[H.dna.features["mam_snouts"]] - if("taur") - S = GLOB.taur_list[H.dna.features["taur"]] - if("xenodorsal") - S = GLOB.xeno_dorsal_list[H.dna.features["xenodorsal"]] - if("xenohead") - S = GLOB.xeno_head_list[H.dna.features["xenohead"]] - if("xenotail") - S = GLOB.xeno_tail_list[H.dna.features["xenotail"]] - - if(!S || S.icon_state == "none") - continue - - var/mutable_appearance/accessory_overlay = mutable_appearance(S.icon, layer = -layer) - - accessory_overlay.color = null //just because. reee. - - //A little rename so we don't have to use tail_lizard or tail_human when naming the sprites. - if(bodypart == "tail_lizard" || bodypart == "tail_human" || bodypart == "mam_tail" || bodypart == "xenotail") - bodypart = "tail" - if(bodypart == "mam_waggingtail" || bodypart == "waggingtail_human" || bodypart == "waggingtail_lizard") - bodypart = "tailwag" - if(bodypart == "mam_ears" || bodypart == "ears") - bodypart = "ears" - if(bodypart == "mam_snouts" || bodypart == "snout") - bodypart = "snout" - if(bodypart == "xenohead") - bodypart = "xhead" - if(bodypart == "insect_wings" || bodypart == "deco_wings") - bodypart = "insect_wings" + for(var/layer in relevant_layers) + var/layertext = layer_text[layer] + if(!layertext) // should there + stack_trace("invalid layer '[layer]' found in the list of relevant layers on species.handle_mutant_bodyparts().") + continue + var/layernum = text2num(layer) + for(var/bodypart in relevant_layers[layer]) + var/datum/sprite_accessory/S = bodypart + var/mutable_appearance/accessory_overlay = mutable_appearance(S.icon, layer = -layernum) + bodypart = S.mutant_part_string || dna_feature_as_text_string[S] if(S.gender_specific) - accessory_overlay.icon_state = "[g]_[bodypart]_[S.icon_state]_[layertext]" + accessory_overlay.icon_state = "[g]_[bodypart]_[S.icon_state][layertext]" else - accessory_overlay.icon_state = "m_[bodypart]_[S.icon_state]_[layertext]" + accessory_overlay.icon_state = "m_[bodypart]_[S.icon_state][layertext]" if(S.center) accessory_overlay = center_image(accessory_overlay, S.dimension_x, S.dimension_y) - var/list/colorlist = list() - colorlist.Cut() - colorlist += ReadRGB("[H.dna.features["mcolor"]]0") - colorlist += ReadRGB("[H.dna.features["mcolor2"]]0") - colorlist += ReadRGB("[H.dna.features["mcolor3"]]0") - colorlist += list(0,0,0, hair_alpha) - for(var/index=1, index<=colorlist.len, index++) - colorlist[index] = colorlist[index]/255 - if(!HAS_TRAIT(H, TRAIT_HUSK)) if(!forced_colour) switch(S.color_src) @@ -894,14 +890,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(bodypart == "tail") accessory_overlay.icon_state = "m_tail_husk_[layertext]" if(S.color_src == MATRIXED) - var/list/husklist = list() - husklist += ReadRGB("#a3a3a3") - husklist += ReadRGB("#a3a3a3") - husklist += ReadRGB("#a3a3a3") - husklist += list(0,0,0, hair_alpha) - for(var/index=1, index<=husklist.len, index++) - husklist[index] = husklist[index]/255 - accessory_overlay.color = husklist + accessory_overlay.color = colorlist if(OFFSET_MUTPARTS in H.dna.species.offset_features) accessory_overlay.pixel_x += H.dna.species.offset_features[OFFSET_MUTPARTS][1] @@ -910,7 +899,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) standing += accessory_overlay if(S.hasinner) - var/mutable_appearance/inner_accessory_overlay = mutable_appearance(S.icon, layer = -layer) + var/mutable_appearance/inner_accessory_overlay = mutable_appearance(S.icon, layer = -layernum) if(S.gender_specific) inner_accessory_overlay.icon_state = "[g]_[bodypart]inner_[S.icon_state]_[layertext]" else @@ -926,7 +915,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) standing += inner_accessory_overlay if(S.extra) //apply the extra overlay, if there is one - var/mutable_appearance/extra_accessory_overlay = mutable_appearance(S.icon, layer = -layer) + var/mutable_appearance/extra_accessory_overlay = mutable_appearance(S.icon, layer = -layernum) if(S.gender_specific) extra_accessory_overlay.icon_state = "[g]_[bodypart]_extra_[S.icon_state]_[layertext]" else @@ -973,7 +962,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) standing += extra_accessory_overlay if(S.extra2) //apply the extra overlay, if there is one - var/mutable_appearance/extra2_accessory_overlay = mutable_appearance(S.icon, layer = -layer) + var/mutable_appearance/extra2_accessory_overlay = mutable_appearance(S.icon, layer = -layernum) if(S.gender_specific) extra2_accessory_overlay.icon_state = "[g]_[bodypart]_extra2_[S.icon_state]_[layertext]" else @@ -1019,8 +1008,8 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) H.apply_overlay(BODY_BEHIND_LAYER) H.apply_overlay(BODY_ADJ_LAYER) + H.apply_overlay(BODY_ADJ_UPPER_LAYER) H.apply_overlay(BODY_FRONT_LAYER) - H.apply_overlay(BODY_TAUR_LAYER) // CITADEL EDIT /* @@ -1032,21 +1021,6 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) outfit_important_for_life= new() outfit_important_for_life.equip(human_to_equip) -//This exists so sprite accessories can still be per-layer without having to include that layer's -//number in their sprite name, which causes issues when those numbers change. -/datum/species/proc/mutant_bodyparts_layertext(layer) - switch(layer) - if(BODY_BEHIND_LAYER) - return "BEHIND" - if(BODY_ADJ_LAYER) - return "ADJ" - if(BODY_FRONT_LAYER) - return "FRONT" - //CITADEL EDIT - if(BODY_TAUR_LAYER) - return "TAUR" - //END EDIT - /* TODO: Snowflake trail marks // Impliments different trails for species depending on if they're wearing shoes. /datum/species/proc/get_move_trail(var/mob/living/carbon/human/H) @@ -1456,12 +1430,12 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(target.check_martial_melee_block()) target.visible_message("[target] blocks [user]'s attack!") return FALSE - + if(HAS_TRAIT(user, TRAIT_PUGILIST))//CITADEL CHANGE - makes punching cause staminaloss but funny martial artist types get a discount user.adjustStaminaLossBuffered(1.5) else user.adjustStaminaLossBuffered(3.5) - + if(attacker_style && attacker_style.harm_act(user,target)) return TRUE else @@ -1526,7 +1500,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(user.limb_destroyer) target.dismembering_strike(user, affecting.body_zone) - + if(atk_verb == ATTACK_EFFECT_KICK)//kicks deal 1.5x raw damage + 0.5x stamina damage target.apply_damage(damage*1.5, BRUTE, affecting, armor_block) target.apply_damage(damage*0.5, STAMINA, affecting, armor_block) @@ -1538,21 +1512,21 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if((target.stat != DEAD) && damage >= user.dna.species.punchstunthreshold) if((punchedstam > 50) && prob(punchedstam*0.5)) //If our punch victim has been hit above the threshold, and they have more than 50 stamina damage, roll for stun, probability of 1% per 2 stamina damage - + target.visible_message("[user] knocks [target] down!", \ "You're knocked down by [user]!", "You hear aggressive shuffling followed by a loud thud!", COMBAT_MESSAGE_RANGE, user) to_chat(user, "You knock [target] down!") - + var/knockdown_duration = 40 + (punchedstam + (punchedbrute*0.5))*0.8 - armor_block target.DefaultCombatKnockdown(knockdown_duration) target.forcesay(GLOB.hit_appends) log_combat(user, target, "got a stun punch with their previous punch") - + if(HAS_TRAIT(user, TRAIT_KI_VAMPIRE) && !HAS_TRAIT(target, TRAIT_NOBREATH) && (punchedbrute < 100)) //If we're a ki vampire we also sap them of lifeforce, but only if they're not too beat up. Also living organics only. user.adjustBruteLoss(-5) user.adjustFireLoss(-5) user.adjustStaminaLoss(-20) - + target.adjustCloneLoss(10) target.adjustBruteLoss(10) diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 63e772e07c..3d47cdae36 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -129,15 +129,23 @@ There are several things that need to be remembered: alt_worn = 'icons/mob/clothing/uniform_digi.dmi' variant_flag |= STYLE_DIGITIGRADE + var/mask + if(dna.species.mutant_bodyparts["taur"]) + var/datum/sprite_accessory/taur/T = GLOB.taur_list[dna.features["taur"]] + var/clip_flag = U.mutantrace_variation & T?.hide_legs + if(clip_flag) + variant_flag |= clip_flag + mask = T.alpha_mask_state + var/mutable_appearance/uniform_overlay if(dna && dna.species.sexes) - var/G = (dna.features["body_model"] == FEMALE) ? "f" : "m" - if(G == "f" && U.fitted != NO_FEMALE_UNIFORM) - uniform_overlay = U.build_worn_icon(UNIFORM_LAYER, alt_worn, FALSE, U.fitted, target_overlay, variant_flag, FALSE) + if(dna.features["body_model"] == FEMALE && U.fitted != NO_FEMALE_UNIFORM) + uniform_overlay = U.build_worn_icon(UNIFORM_LAYER, alt_worn, FALSE, U.fitted, target_overlay, variant_flag, FALSE, mask) + if(!uniform_overlay) - uniform_overlay = U.build_worn_icon( UNIFORM_LAYER, alt_worn, FALSE, NO_FEMALE_UNIFORM, target_overlay, variant_flag, FALSE) + uniform_overlay = U.build_worn_icon( UNIFORM_LAYER, alt_worn, FALSE, NO_FEMALE_UNIFORM, target_overlay, variant_flag, FALSE, mask) if(OFFSET_UNIFORM in dna.species.offset_features) @@ -269,6 +277,11 @@ There are several things that need to be remembered: var/obj/screen/inventory/inv = hud_used.inv_slots[SLOT_SHOES] inv.update_icon() + if(dna.species.mutant_bodyparts["taur"]) + var/datum/sprite_accessory/taur/T = GLOB.taur_list[dna.features["taur"]] + if(T?.hide_legs) //If only they actually made shoes unwearable. Please don't making cosmetics, guys. + return + if(shoes) var/obj/item/clothing/shoes/S = shoes shoes.screen_loc = ui_shoes //move the item to the appropriate screen loc @@ -507,12 +520,17 @@ There are several things that need to be remembered: overlays_standing[BACK_LAYER] = back_overlay apply_overlay(BACK_LAYER) -/proc/wear_female_version(t_color, icon, layer, type) - var/index = "[t_color]-[icon]" - var/icon/female_clothing_icon = GLOB.female_clothing_icons[index] - if(!female_clothing_icon) //Create standing/laying icons if they don't exist - generate_female_clothing(index,t_color,icon,type) - return mutable_appearance(GLOB.female_clothing_icons[index], layer = -layer) +/proc/wear_alpha_masked_version(state, icon, layer, female, alpha_mask) + var/mask = "-[alpha_mask]" + if(islist(alpha_mask)) + mask = "-" + for(var/t in alpha_mask) + mask += t + var/index = "[state]-[icon]-[female][mask]" + . = GLOB.alpha_masked_worn_clothing_icons[index] + if(!.) //Create standing/laying icons if they don't exist + . = generate_alpha_masked_clothing(index,state,icon,-layer,female,alpha_mask) + return mutable_appearance(., layer = -layer) /mob/living/carbon/human/proc/get_overlays_copy(list/unwantedLayers) var/list/out = new @@ -567,10 +585,12 @@ generate/load female uniform sprites matching all previously decided variables style_flags: mutant race appearance flags, mostly used for worn_overlays() +alpha_mask: a text string or list of text, the actual icons are stored in a global list and associated with said text string(s). + use_mob_overlay_icon: if FALSE, it will always use the default_icon_file even if mob_overlay_icon is present. */ -/obj/item/proc/build_worn_icon(default_layer = 0, default_icon_file = null, isinhands = FALSE, femaleuniform = NO_FEMALE_UNIFORM, override_state, style_flags = NONE, use_mob_overlay_icon = TRUE) +/obj/item/proc/build_worn_icon(default_layer = 0, default_icon_file = null, isinhands = FALSE, femaleuniform = NO_FEMALE_UNIFORM, override_state, style_flags = NONE, use_mob_overlay_icon = TRUE, alpha_mask) var/t_state t_state = override_state || item_state || icon_state @@ -590,8 +610,8 @@ use_mob_overlay_icon: if FALSE, it will always use the default_icon_file even if layer2use = default_layer var/mutable_appearance/standing - if(femaleuniform) - standing = wear_female_version(t_state,file2use,layer2use,femaleuniform) + if(femaleuniform || alpha_mask) + standing = wear_alpha_masked_version(t_state, file2use, layer2use, femaleuniform, alpha_mask) if(!standing) standing = mutable_appearance(file2use, t_state, -layer2use) @@ -654,19 +674,17 @@ use_mob_overlay_icon: if FALSE, it will always use the default_icon_file even if . += "-[dna.features["body_model"]]" - var/is_taur = FALSE - if(dna.species.mutant_bodyparts["taur"] && dna.features["taur"] != "None") - is_taur = TRUE - + if(dna.species.mutant_bodyparts["taur"]) + var/datum/sprite_accessory/taur/T = GLOB.taur_list[dna.features["taur"]] + if(T?.hide_legs) + is_taur = TRUE + var/static/list/leg_day = typecacheof(list(/obj/item/bodypart/r_leg, /obj/item/bodypart/l_leg)) for(var/X in bodyparts) var/obj/item/bodypart/BP = X - - if(istype(BP, /obj/item/bodypart/r_leg) || istype(BP, /obj/item/bodypart/l_leg)) - if(is_taur) - continue - + if(is_taur && leg_day[BP.type]) + continue . += "-[BP.body_zone]" if(BP.status == BODYPART_ORGANIC) diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index a431059a89..9a1c6c54b6 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -203,6 +203,12 @@ remove_overlay(BODYPARTS_LAYER) + var/is_taur = FALSE + if(dna?.species.mutant_bodyparts["taur"]) + var/datum/sprite_accessory/taur/T = GLOB.taur_list[dna.features["taur"]] + if(T?.hide_legs) + is_taur = TRUE + for(var/X in bodyparts) var/obj/item/bodypart/BP = X BP.update_limb() @@ -213,9 +219,12 @@ return //GENERATE NEW LIMBS + var/static/list/leg_day = typecacheof(list(/obj/item/bodypart/r_leg, /obj/item/bodypart/l_leg)) var/list/new_limbs = list() for(var/X in bodyparts) var/obj/item/bodypart/BP = X + if(is_taur && leg_day[BP.type]) + continue new_limbs += BP.get_limb_icon() if(new_limbs.len) overlays_standing[BODYPARTS_LAYER] = new_limbs diff --git a/icons/mob/clothing/taur_hooved.dmi b/icons/mob/clothing/taur_hooved.dmi index 71aec5444ac300c1785a78a4c02e4790176433dd..993e9c2550ff469176b8fb1d4b4470eea5338efa 100644 GIT binary patch delta 7388 zcmZvA2{crH9Pix0*!O)OvX)&%k{PlmR6>@JA|iVfx!1n$WXUqJB+8a7sb;Lno^9-g zklj#r!}I_D-+Sl1^WHu8e$PGM^Ih-x-S7E+K4B=lT4E)&f`WpSl$45!N>YOh^#uNj zsGJ5D7gvf5po&NcbZcv@NO1?sxWl|0gg7`No;gViAWd}9?slfsRESE&Z%ru|;a%W$ zJxz5JzwCAE7#m)E+DNRJ20ulR%a7vvrq&mjt`|^tPPG?{Kk!a=a^LA5 zbRtW7mS!EH^16`mS4QVVIqd-4Y5hgYZo=f|BscY}%5cuP+as%2j$<>9|K@!6?Yp*j z-@AF|Ky|B?)#yy5$m*uHJR>A(-O2-<5yx4jC0VDHQ-o-n;m7-IHy6T)u{^{h|Kk(r zkdC(EaM)I^Be<5@1kK!cl8%Fd_pz-#Ef#vW-E9zV2$E1sZo2iWBxwR<+>gywP>ML z!zhV~xOkIxSr;a$I{n2c3@l$&$Ic|^&kfX{lR!a~`3`wII^6;Bnh&a|<~G}42yfN; z?8s7{yTT;q51W2@;bx-e)uCs{`yTZiF=GkQ<)!9`$C7q3g@G1981=h8j!GJz`4w|C z@#oa!2#g2JSR=E9fU&f7S;1RAsp{&GM%LeWCgqX0{CnRoN*7Z#fo$y>k&+lsMc8U$ zycUyI>xk}W()U>tM})~##gkj}?p)k_ZHAcdqQEt~olFj(Z^`_o3R3e}O`0z}oycnA zY)*%Oe0g6 zt&4?l?iY`<4LYu^hBYMQshKc);{6Ede&SE&O(rHJq7r<*qD2wuY|`{?pv+Sdy-uPT zz9oHrNL_l4QJ00ltI8aYakkx+NFqk5<3}isYM7Bh_{Y@{gdUv{#w2i2RVoE@Agh?lAKH?o@NiAvx(Vo|nJYHHW4liC~~1CtDX_VydLZF_2SS;G!*^%BC=pK-Yb*C9u-0}OlOnn2C3;F(2&4NIF!f$M`RtYktd2mwF4?t z{SE#eOi-BhYRXinvo!p1g~kMXbl&qVbpYFe{yX{5C z#iEhaM(74By7lh2WEZ`UEdAZ#wtdS+V z5f;HXzC9|A_r!Gmud%{fw`~HdZ1}Gnk%fncvmIY`QL5M2_!Y+A+~5BrrR7?SxRJtE z#FQZHG(ro+$;rY)!ENv$-!UTh`vuC1Tt1bO6DU8055a^>Tw>&!qhPuf9)4y>WU4^f zEVH52O;VX@~YU&9r?vPAaT!Ma#1Q1D@p@(D_P0#uwR`QsFTO{K{ zGPaffypYvqZ%<%h!-DQBLzO(n5k@&GUru0G=^MCh9XDC0&ic!L@+&@a?QY)C2{awD z#<;X|NTy5z#3M98*rt?^F$s7dV$c39vd0v!!D!L_to| ztBk}$GKM!OXsa<2e5GlBDtK1G$@gE;ctOGrrQckXc&^{vkJ%r0NXyEaw{jmM<`TYq zZWm|KzpW=yzu)r8PdH8gF!>#uB0R`!f8RtQO;^Oc|8fwG!~>X4^0{|4b`s%9hO>?` zCsdpX`}soo-faL*AHK*jbc`_uj}_>tHT1>H&YG2KjBt1;ZN*5a{kmYXyN;L?wjBE zdZ0FeT^$mRFv@EQw(IXq;?O{4I>pZDcDg%FGM@_rB@=aD*D#H#EQ@o=t0-a$Z_+_; zc=fKE4J;=vCj*3@%kY7mE#W{LmCR7EmHcI<1TN~K5{N=Zks~k7#r)O48ifM}R&A~I zl5g2#i{25&(p;P0YWHSS0FHgJg(5^G(v|b6youBA#-vE`lvp0^2VyB(p+AeIa%$64 zy&XZg2FVYbdD%(2{mJ-}FTPmAPnZzKc^?TEA^MXi7FH$bCgU^U+WL0#w&x|u?m+N} zY7+~ISE8^hbe#r@my#833irLFN7FF?a?{+KOzyc{m=EVpGL;Q%Wm6116rswJU=PLR z63ye^qSUz8+QQLMD|Y9Tm|NC`(fgO-A|UY@y>1RF&)^a@7q<{X`}S{ZUf=nEXw#tm z4&4;UWLuRgu{4+~HYw6cd*H8Y=qL8;95KQY4U8O;FnI3-xrlr~M)PQ=uNMcVg*;j} z*@2DOeOe4H7RZEIa+q(3e0RYBuFVIZC-hu_*!oY^Bg;czQ%m8n_jXbB(?gEpAS4B- zwJn_u2ol1L8-DiDzPK;G7XgT6daw~$7A^H-i6*JlT75-&L~8Lj4#4xgq$lZ0jvpZt z>u$>Az8hRvXGo8WtvcOEl1)P&#~uzAv(Sm`{uRyPLB3<@w!>pSf@MClWsb7h4eq;T zp5&v{wz+OsKNqvq@UJ@1*n*rcV&iPZy{~0%!@kQ8I#&1I)`*1VsRHvRoi2>ZVL9~! z!<(TjG$w1zFpbufA&(Burl9cMxUGvHQ3Rs=dh$Bpr)jzmiuc~Xa>flzs>hv`XJVLiyq&(Q6krs%F|JGbPyW`>%h}0GML~CqxC9>T`Qe zye{9M^Awx&t*(fVi~DLJ!8U2{3Ye611b)BvOe#H7!jJ>JAGo~G{Ln)!?mz3{L%4lB z9TzYEbp(hM6tfyf0N>tusN?oiWzVUjg}gSbX03$sdKUGn!!}O|J5>hx6Lb;}+wY$? z?a{^$xCn^#=A_sn73Gt9Y_gFJ8GVKZ53R;~=M~1@y+LA>)7tKcLyU^5_sOKw_>Zm0+^srX+IHvgD)98~0@#&7ZMkAOY zGl5NA628VJVGz8fDuFYbmh&8R1Lr-{$0CA`7pykomb2~V!6X6_{d*WW}}iY)bF+1zTsjf6LlL}v2GqJ!F} zb)MtiYv>Ya9c7S|3*9-aN49i#R#EIpf$6kU20*L(^B0@SH?Jh78v$96T9%fEbtY?0aEMDK2IazY-T zZ3y~Npg$JIwWNM*Jt=#(Je~#u&3`sIC9dqzrq-W5XBmphH#jAH&Vs#reMFH6cw=#C z19sE0Xr~UW4OE>D{+Go&-*R&Dhrr*SS0Jfe89encTbf3Qc3^lu}9qJvK4Rv|fs| zie9uY=!`bvEXR*04f?t#zl56*0yMA~$tL^H-{jmHC}{;3IlW2d#y>f@Mx>eK6crWS zdiuKmhQR97n1E=t0;lmumGyFWJUitGU_5^x@f57aHiU6$o z&*95^>Mg0!*8U)L>8welGKvx&JOXc|g4NqnsN*KTC{kGcr8J(6#zb4{hC~|Wc}xk) zwX8ClyX;VsOE(0PD4V(5tm{(t|FfCVu3;^D7X2t3|AN*BRP}}MaykmvzPjPaN z^#`Neayn&b;}{wrA9FQaX6#At$Qf7z0M#%+&MN=8;zx|Yhk zzx6zB{6|W6^j+8lBnHIX=t82aQOJw<6~+wvwAr!Mt~XRNHtEsmLKu~KEj5ml##D~u z;o6)9++8ZN`TP(w&~+KOEtnADo>6r~CM5>kU;u7xlaERgwRR{+sgYBHP*3&}BVnUW z9fbD%tde0zik9kVe-O>-D0FmjXhg7I7`@$Mr&*4A%gU&Fb{JsMfv7P+lf=x!S} z>T$~TGiy;6*Vxj(T1p&06g|BciBS=O3U^VFvUk6d3|aWV6&uC6|0xIcZ* z`kq}=S6U|)xetCY?UJHk`eiLvd2{;F{fSsu>6xB%guQ#79W;a~bq+f(eBHM={+;Gr z6cDn|ys~n$9!v>i_he<8wz7U?rv)3{1GO)jOi@;vmczLdPIXin;AIP!!fDHtN*A_! z7^g{zLG0VJje?U>>19gFbjC2QBWItuIbVJlA?=g%LV?Zkwwd7F&L`{)WRck0_odTO z`pw7POh(BfJWadGe{kLAqp5*SoyX_;`>U?0ju&BRddT?C^ z5Pao!*X*h3)3hm82xdAG39TIM*VWElhSKV000Dhd)6$MNX};61a1|SQAIeti+(0^( z(MzeNqaU`v*SS?};xF7`vpq5#`vLQFr_{F^6H^7NIa}|VCWhbMziZI&3?J*`WpAB| zlmXrZd~nNHU8ij-a1fBKeCfEOWD6<40Cd!aiPcN2u zO|&VeF3A)IN`)!r9dH7`g9CD)xFKE$tZxz}ATBFv=}a|HNt zv6_7R45U5OxAjSYJbli6Q%Aj@DHdNeWmpiP_1M`}aS{$&xCSp(IFGL+zx()V%Xs@i zfa@J}`@~9|DZPZ*^pjq5by%0`vQ%9v+O9|sw-U#jOx`b#8K3|RnNx+KNehtuhWapf zsb}5RrhI>KWwoa%9_`DD?Lij}44Kt(qVK`w z$U2+jEN=tHmvVRA*~jC5%$iw}bFmARmCgJ6k~75=MzlU=M!sdegE45%f!m^)kla|} z4FjOX(d{15WFr?+5dHe04}5G0=;eHhv*H+1a6ZeVtd!mylnj(Ml9;YiqrXs3iJJpYTG`taHRnZhMlpFJZ=t& z$2Q&(5uXCOX2*w2j?T4&1;lyRpgLKzW=7rNqoai5n}^5YS463@!7R_93fIX--@1ig zLnk_Qw;TO8r?p+3PYW)Ni~Klpo=dZvstGE-`bExcV(;NLwcM$NrI}*qzcl`t@DO@! z`8r~~*-rm!)y|A%oC@n#ANP2o$#9)->uT?1+0eshU#p@jR9LakZRv;umES%#j^Uoz zd-+DNHtia|Y^(x5eHtDu-*oZf8=Wr4^Tzd*FZM4w6x^zC`?I#WHUhZ0jQHLIkZU>Z z;^2N^kQql%qdTUGf|1Ks2iDFODr^etAbjXSJ$)+g#nrkQO*h)6`#D0X*0+^y+}Y(M z$`I)1}d|>f3WHfDk~Qw3BY`F*EH<2$MzX?t#0ggX`9*Oi-Oby*BN0*zW2Z zn&DGol%@O2w}ya=+Grtcr936Wv+gb#4;?}mXk!$-+(7P<{HGPxqL#r49RFazY}B${ zTBGyZC+6n>3JioEf5r~TRo)MM`lHB0hv08r_;dFg-KgWD*CYQUwWSKB6H1lKynEL8 zpX;uo;6MrL`0t>R;0Q0X7D9GxE{< z)AbLSxk>oAo0&c4dS=an-sb=m{I*6S7^{52X^q|ob63e-Hr=bZ&G!2BQ>uyXonm>2KI$)=!q4 z!^BNJTs)DzQ35D<`S2w^%|i#G2zw?{+n&Sk1h0$(TrGvkY9C8YGQel|s1k7#hQpw* zZelG1FHfpY|$aoeNY*?~rx@>V85!Is`9lTci9YIQ+`;zN8aUR%ROFI!Nj0v%&D(i7+;gGZH%BMrZ@_;Ba&VyIRYv- zhqVwcn}Mb?Q?4w?kF3O~zhf--I;z25A&3ioocB^pOz;uRRQ8pR(Cbi6?#hq!MID;U z+=PN(T(03fhnH8S9#v>CGGo^icKgL()I=Eh@j>6j15UHw*@YG|%I9?_9P_SW*h;R3 zKkToe9Cxn25A3ojlj}DBkhM5oWei{xIHsN}pzf}fQH4~x0YN8!*e9QS!z>V1AAi%< zS|#{<#%WgzwnN)i9QU;Gk_Q*Tf>U5EvH(5tk*J*&^m&xxqgUeoo*rYq@*8Enl}Kf6 zA7& z57&dIYKBd(eZF`GFj0I_*9Mi87Pc5VnN=dEe=9!x-_HNA$0hJu2Ew6ye{ z#w+yP+}z(seZ}N-Gi6{WQ5{WH>Cyg~0kG#h!knBpgFR0O3f&61Y-L0UaJfj2K{=`* z{4n`N==DMeEoQiv|(FX$nCv*w*>pl=4yISmLCje-us*Gv#N$ z=LjdQ;n(*OdmPeHKdR7iI`@6DNl2zY2M|5RyX)|*G$KJzPOs>gp0HveAOB(8BvEi= z?>*?bWWgGbR;S;&9_4MLx-}`Be>x_y^cI?O>mbg>Az5y7t1Vh!oi8!2=y%Q_1=VRm z#zUStiJg5SZQOB$8#{?S$S z?uwGmG^N)F@w%y+-b&(e4US;vI{8GPOuF##W#X@L}{34IgegM zv-Z@SqNoNgnK{#+n+_F#6RNs^U(6LjBuzRhg}^XaI92DH z9?+ffcRextqPQ08Mz2B-b1{jtoxx`yNQV8)BP~S1WS$R(23FS4Q31&~84w2^m$m5F z!$3?m{to=`UBE~o!*-TVelLhxm$EWUEtf;Tq6Pqfm5;D~cV~JM(ta8FWA_ow4ECUN8Yv^~?C{E}w*nC&3$@u6->Lype<$~O7;%Gj|MDw?edV5lu>05b)|cZ6-vz&Ldogsu zoD*1==PXO3)y9Ll{w}f$umhv3j|JdNbl$(bAj}^ZzLNb$Lt*wPEC#vt`qTfp{zF2s!8M}|A+a=xXxvAKo@JelpVrI-hIbCgxbhzA>#CozdhPPRYP{F{ zR=hBWW+X5IxxJN)GVP=aC z0{LWOBC7;adQDf3@Tt^I4Qzvm?u=?hl5O$~*lOLzFr*lb4P5)J0zM_DWYa}wZ z)YaTzJ$2L0U5tafwX0S_v zu`oB{(=}IS$!JoT8a9FXDg?0H1ZvbKT1{yNK2e?h3lC87(3TuG={GC4K-{aEA+0?G zKW~t>K*(6{8Y@7c^x~XJF`MX}r`n_<;d*V7i|iH}!`MTCfnWFyLgmZK z__xnP#DdRwx$r4>34V>FGm*~!L_k|2Xt4k%z7gUS4T^gNk5xBQawnsOwx`*aSmhua z3e3&TE!^ed_J^Nd1ft*qF%?9QP*y0!C&+o}W1tCh1XXCe{tbKch2*)D$y#JQv&GD6`?IKno+= z&{6%9m6wmFCC#X@8+mo2I~6aB$~|&lWQ~KhNk_%X>ERc|Y^Uch5f#36$w?264Bah5 zu`uTu`=m53ENC)id^Rr|{*iuBqf#s_XYNK2VW?3G(H%H^^6uc&<>j@8T_&Eivgx)N zK7)2>;CBB_GtZsP#o-;9vI4E(Ig^J|!38IVl{mWHKk=)TER1LAA;d>G+JYZ9jNbCc<-^vdJ^j%XGvH9eXdS$T*R`(-RyiM)u{n zGL&?OFqkQ@W4sp|WL?wjcznlGcBU?Wrlbr)qe$@ZUQ5@nY%_5-ypT~DJ%d#0A3k#r zTz=EtGcF9GpE#eGa(2tD?7L$JKXIZ6ii+JSPoE46pJjtB*g1fbh-Cz^*0Ns0YQ9$& zW+uA7yAL~qCHAQ~E!J9|8-5ETwSSgQ$qg}Xv$@3kC@V5E+UH=?76fc>-Z0jMxB!%h zxgTKU#s0_r(^AnskE>YbAARv3@&@-kU>Ih-USqpj&S~X*o{PSg!cp*v2VReaf#{|K z=x2jJ{iC$acIGy(rBLQ48;s2*$++W$#WowsQ)bTtH}d$wgq+Z;7b7=%USf2&c!~V> zV8Z@2s-!>v?E7PWA|En2SvbaeMJ*wFREEqm=W*jV;+EaPfKbWc%7Gh_wqiY-oZ@B0 z1^cuHCm1+c0Fbu~mD2p%Yk?c=j zpWFlmm>}xlQ32Y^{LjT$R1F(KZ z;8uHJ--c~^-VM;p^ZQZM>ZTZPz>@8QrNaRen+t`whMKJs2O<(qeNVYu! z5_wspT;N)N|M4r#Q_T(;BAjXOADC#)>g&=IF`lL;7Z^Js<*WfRc|max!9G)|xD*(! zcWWR9`2?FDdg^jum>YT+pAj%)S#Zz8DK(772LDh(dj84KK^T9bjT*x#a@~CU^0dVK zK*50H&bMHvri>1AdrFFI+viX}IpuxTKnA> z%;RMvNLb1wGOj3`y36IL=9HJyXKscYXkCvDLg_-11^e^%(YGJ7?#|W6AC0vby&msc zrq;4$dfj113u>|HoB!J}6&60RU~W1`6;oC37`oM*qj~u0tn4}L(wj7k75Ag$;y0`H z@}Z@-JF=ak8*TJa^Q{%-tViM>^-_Fg3^B&0P`hi*7-c7a{4AG@{f)&t&;_<~29CzH z0|C_nVXlp@PrDbV7zbJ{@*d^&%*mE(aP935mzmGsY%yv0dWEy-$hTl>lVz3r-`(+< znc8P-uT9L&<~DX$q%413KaBZ@FEU%Pvi3O330L80;VKP=!Gdl_TmhqfUw_vE*DEim zA2)zwY|KNvQ*}HL1QMJKHa!hZ9+hUtL?7Bs^uCH{#Z~VkG+|RTd1LU%LO^+~eId)nX5m;}x{Iz%xu#XTg{PhZ>24;kesONGBMEwwoCp!UgD~%23Wp zlCD#83K%tOkoppb%!c72I9Cu)oaJr>>2A;Z5M}cpA$gnMCACKY|Z4!M6cB1X2`_0PAyplWcf5+Vz>413I z?08bO#Qs^=CYEkf*BvieGJ@p6-Q}t(+CDGBf-5<0QBp%@W6imMK}OTaW}C(DY$WKlJw&QQe0}Kwr@FfG>0wE|?_Hlv1MJ{!ybBM3r`#aU6OfTbl`ysT0B_^J@#DaCUIR8*zkw}l3+HhS)DkPdj!NH z7%&#r&p#Uw2d#&w_pl+i23~f(W`IGSKaifbxQRtB{;zIvr|7qztttQh56?V`T-`WL zZJj6U3I5%uGk$V6;gCgxsnTNShD(`+q(h^Eid@JngXLl28W-VUl>%>O%AjVA8k^sD zY?Cr{YCZq0ie_c4h7pRn+u&5#epaYBYn-;zOp~fb-l3|3eL5q^Vc1FP&nlNhBbo7D z4oxZ(_vtF{?T{JOlvbvrVb$4CE65wBz^#pGwnP%xSflOUN;sg|7C^0p?zc2#nuyXM zwyw7lp0?7^DdVyLHTW+ZbXY4G%Ai5i&~W}yzLr6Ave)EPI5I$iKaql_qG2Xeh-N3E zcUP+uajdu1sc`0}tc6C#KAqBhbj*2(rk=M?S1UU~fyebz;QD%03f#G>!O3|&IpRP5 zep290WBYWQlx8Oad6jEoTsGi|C^Z_aN!K}%8LL?o^0CHMTY;^_q-pLSvg?KP))j5q%8{cp1Gc9Z(2{QDUFf~~=4?4h6isRg+P1uwp0ZBq5T z&7S#~c4PSUiKWj4W9HSH^JI^C$&|ierK*o7#%LOjIZd5|s+?DXuda4Cst-G6G*1Sm z_o2D6ue>^>f?>x??!r*O$Jbm5e#3%})qX61?YpCWL-@kd`(nRf7E6_bhYv4*d;M`R z#DoMl5n@Y7@*Q0fX-hsEd^Wkwu+Mi1GnPZ0%cGPqqr6q7P4N1g^77Gn>!&e{v3l}C zh5g08$)m1wpWcsu8h?M6r!DhM@OK;g9KIYo8zlmr8AQ5UM3)Zb%zY}ZSZEe#o4R{h zklv@0{joL)1%iWvleeeF$K`-UY77|cQ&-DXR8|MnQf=qJAtv@@JsNlEDM7JwQ%4_b zPkgJhL5|5fgY3SpI^SR)DOln1Dr+^D$3Eh|CI$AcgAQP8v&T+@+h;?tKwA3taiKlL zeX)H+dBADNqQh@cXi9PZ-acaP1_dT1^_xm8Jb@+QsvDWA<>~aPA=N+d)h~~Z;<38F z6^bQvlFN^tTS5LyePxvjM%n~<`;WQxN=c3Wpb~uvBqb4%5N$H!mRF!0o-S*VW%~We|7sE zip&VR>zk~0Zc2K5mDR?vrKUs|_C1C7T;?fc3Y9nuJ$X{8u8mK5X%-|<#Nko9{1M!< zf)k!-3+<)j?WNi^&>+{XML#R8yy9*sOpMM&_-e6mKQOf_r z=yYqjmDFtR3+$IKSA`Gkq#cCo!DL09^8HGq!oB_hOv1Bp`0}iz()6Fhln*fHy5@e2 z%Wuy*`=3WAd7<-?(z0g*kN|--qwEBM)=J* zuu*kyv}ZOHYRl7k-WpcVgg8ReC-HJy?0(h6M4PI|Txe(E`&>WmpIjh$AxZSh_TB3h zkxfCqb>U41f?Py$PyO@f^^*0y5x;x-=tZmFm;tL_@1W)9=jpF4xBd~|gk0RO*D-Kb zwCo!AQn`h|!8?6Z=)dx(#pW zk@S{$%=+-c=rdp4c5Qc+7ay6=#WsM%jk=o4erk*{ZhU6X-m($bSVyB7k%=%PU~n(e ze?%Hsuz`%03(HSh#Y-ijSdl>8AJwZ@$0e=(|H2v^PW<}T;Op1$RP*)ez&nJ(5HCtA z64A39>T`Qn4|)|+h9KpCD`kRV@9~w`Xg&A+@`E)7lol2TTg%YTxcLI$8LH$gU<$p7AoMo{f|h!4du7DsRkrw|fbEWo2C5)OL5k+9=4@Bofn9+$^^ z)GBDJm)zR~tUP)O%VG63Ow;x{~)tfE5yC)qhvK2uMNZ;=KYQayD${S;`+W z<6jJ4thQf7fO?E15W)tu$&hmoW#CP+O1mB~8#|{mhe(g8d@i`(A%^&jA0$3!2EwwW zs?F@yIHH{B%5{+ODv8H}GqU+aHtE;GuwbPw^j$s-wBx$mzt|TATR~tjsnqX8=4Er3 zdTtKfgMAeT;BasRKC=3w$@)9x7;kMfOd|9|SY?VO7GK$y!OPWQD9x)NjX% z*Za$LZ*K(X3L$==eBVEsd2{}|{>l{JaD?f?C~lL@rDAZa7R`DQQ+E|GC?AP{%0EM% z86=a6ZFK2hmAIM1;wDhY;p*pEx_^fau8@$rY8VC>a&xc3b93`r&p3_MdLoI6iVS;o zA0x=CA+C8}_sb>gn#ikuUp%+9jD77y>6}cP6`JkRil3Cqj(^@hX&VV%wAOtYP1*SG z=pR?oazT3m%W|IgW5wZDA4nzVo83MaX29xk-3iBfyJj43g~6+|DwJhwi$7-Fdu;6I zQ`JA;UaVaSR`B*yz4Wo7qQdie&5tSMppP=|N6)ua>Q+^%xv2)p^H4+?Y|Ha)O`9>e z?60c5H*ILz{1S}ofR88iNfse=Jvp&*?Z$xV=d;77Egds*#9wSoW6(RJXU|pbzPmE` zDKA5=H@G&A6{YRe+bv0`ERk~w6R-{cpHc^AFDT*57zQ@^ ziW!utJ9nN1xi#s~kKjj+$0R5uB{k*q4&Kw7m~6Wh!E8ZIEb6B#G<(MZk2qKh{QCet za~ckXuzQ!^FD`8ZkXkUe5RBB8u1(F+4favt9%PS0|JIh$2&Jo0MW$YoLA1a56f&%L zsbZhlI&|PPR<61xH9BX6@ z`rMv>BPTPysb8q$fw=Bn);LWqQ9&2_Pvrve?9R`eh#7>nY?l*oPPW%?((=_gPh>?+2e{h9SL9O!%AgQ3L{pe9whHT1N;EQW; zp`taDJ{6$(odsn^_x<9v)t=XuhWRTsd{+=c^(=&@Gj6PKC3WG!iR)nO&LA{~az;PY z)Wj*>RyBr^l@>*gy3+fqy`~M!&G^8Bd;l8E`JnEKeN#s!=R!;5>|B5si_oEY$R*d2 z1-VZP^U{Q}rwPsk-+2yR%vYWX(ZS;1CYg5eI2gem4zLrM=2~o->D(6n+kyNqGFzNU zA&dq|aOTlF@wFk|iX%#PFJ9ey#qchBQ^6o`=-cRxbpQ@#Wlz*3`v#bu&&S$xxc|;H zhXhZ058jqw2A|F42w`+%$`kNHU2v;}Rq%jk>M?!aw#-rRCyV9@DBEHs%`={+*1oXChn|gVP z!t=jFcw9#&A6`I@D9HQok?t0nR$=~skEEYv19jRHhhRW^%EE)6qy=c#nbT(amAcNc F{{yk|f1dyV diff --git a/modular_citadel/icons/mob/mam_taur.dmi b/modular_citadel/icons/mob/mam_taur.dmi index db1f001faee73befef68ce999a0c2b2a7936f709..4d3d996cbbe55f03d4e564c286a8c1be1eff4944 100644 GIT binary patch literal 57807 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 b*8LJSZM0fDp7@yu*a{a%H-~C_RKmXi^6bHe literal 52417 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�p(%{7mot)>W$@nD42US8IOu{QLLsb}c2v zrKPk}1%e-JRnLR}WnRgtTAyZ*Hv?TdXLMrs%Mh4{-n85VwDj|NP34aZXh*gOs_Mn6 zRK9uEr`$kOsdf|#?4|hmuVRjG1rC%v-cb0w8Y@UYK*?e>hT+D6>!yM*r?ttTlGk>3 z)GC|G6%DG}*sT{hYK0_l7S@^LqN1Mt9vYI<7l}E*FgrGd-`{kvoQ1u^<*_{yuudd1 zYdGKn^&%f5b7mW2ttZE8LXSEb;bAZD>ZFwHm6~c_)b&)Ohb9DtQ@koGE9u#FYLK33 zd9@Y4HT86FH#sAww4q=`tdf&P@?N#o;)9&|-{B7X$>&d4gQ8O#kflTU){To@IEB}% zOC29syrjU?uZnMlb#;9o?GqbW^*3`QC5>Fr=fJtU4OntD$F%mQmeN>-ApGiIK!Pr| zj7gukl>vrN)mcNiBq6EzdS~0Clc1apN%s8rb9#{~&B++8d82+kq6o$iP((IMkIv-_ z_qsfU5?MV@2c|k^$|umJgVJZykTW)9`)K?3lFB`&`VrW8HMT2478azQ_6v39(LqMa zzCq}H6G$lg(bd_0(&fF9xcFNeI+?rYsq&JUcx- z%_}TaRy}0%PShDMRG=y;DXF>>byh!sN2^X(Wc`(s4J#~Jn0`+#jp%Yd81n*%E}Hxc zuip%Xigmj`GfrCphBG`+_cJNyt8K`qtyHRXE{)beKq zbf1><6+;sfURA2Mxb)?Ma#-EK`z=>F)B-@}7ZMhIQjxZPXB~YaU#z#DuT4w^S+w zR8zX%9zXEc_A9ye!Kyqi1&@x_1k;_)^}3feM(2B6Ujr%HCr&ST>ffu@m;Nan*r(1y zT5^DdMML*{4=-?YjZQqGDB36|Z&vh(&=&0`qkoTP3T~k$nH+#kRb@Y!fFA*$4>IoA zf8Uew@?PS~5g4c^FeB_2=;5gf9E(qmuOTzD1OfjjNz_-#Ogk z1MHn6s#;Jbv+A(0ac??$_vXGM|e>l9%kG} zd9je*2d}OIyQ5CpLGyWh#+YY(2;QhzMC}I0##Y`Em~cvgo(Y)B@(vW25VqaR(%g3vRC+s||0 zm3LHOMQpAFz8<@h-p4QsIye3vb-Le}+)G7|ZWdS!kmC*|{_@(#=C+kTLYU=Grx1xC zLQzEp)+It+pT32~n_>}j_s!wZ`9&R{L&>NJG<2%WF(THS#@ebKvARNEbA^~b+W`)2 zgCe_XhIj9fSMyPrDX48yK60ClXRX#KvR)lfWlqP!x0Re9rtX~0QWRlb9H5ux zOx}(SXnjmqFy-S}#{9_7(6*~>vfC-qz-w1SYJ8jK`aZ7)PF?j4+e*fnJ8XgmbBXOo zpjC)T{`1h)R7&>d&}^F5G*eOiyV#%EBUP8P!wJ*%xpQ@parilc zFozo?1Vc1y98_1Q#XA^h!WYE=egOE>4ILzQdHMJW_>H7A5R^y96({EzuHS#}D}|u` z$Ct$kq8I?KhH{#{J$FRK!nR? zu1Hw(CLBw*!RC-}NoS#8=<(}vlc8~~IW*Pym+4=w^myUyFAM9Tc9hy;R~zDSaGZR? ztH0YF+>P?~u^Fb`*sgHecttXbNbAGnwb4#Hr-Yzu`w!!xm49Cu{>wz|!rCrWhp7a^ zD~gNFxpXJDs&q$CgE2<*+RSmS->Gc39#>oP3goSZ)6WiqD>K4>d*e~kIN4up zj*=R!2`xHLWqH@HG-q5rlf$|OO(>5@dc7wY zhx-s=BoDQxXVBsLrFT`MXW5|@G~C;o)ovyY^%pr?&eqSV0LtG_tF65y|Mhq+L88g} zO7V`eeC4&%a&>-$Rz;Xv6{-t!fKYTIHyuvU;ETHAnh8Ae57he~Q@z9jJ%5Nz95n>x zrjOb%+0@k@#i**a9^{KK_H$iYK*_TU-#cTT_$00SnTQkh-vx7@+i&dXY|&x3sbh>Pf=s~ zjWnG)Z8$Qb`em&!P6_=o!u+m2jKHnNLqln0SIw0}ddu?qa%*j~s^-H$M&gyZ09JJx zf7}7uch4f)wG0F>%emh+B}%89VBlSN6bazMEo2ZTcEYd4c3(WP5#Vo*Z#uI!i zL`p6HSTJ2Zxhup(4PV|n)iT#p?XH?(GHAzTASw%mnvow;*h)UlrM@-IWuCDhq8?cx zPF)Onb*+KAPecOMbeU=^Ilq1a#QK4|z;?dg%o)X`-2_*-ZsJfZ$RO|J$7|eXp6(A~!oq zpWuScsV?rsf%BW_J9f0SzKn>0=RQR2C?hm+gg29Iqylitf@%ZHH>($J<>%l}S8F%2 z-l(r#5uK>bW@e?202fBwIv;QyFw08!Gs5!^k#osfhS?FyYnMHdjHc0B+HA|S$x@$^M~&K$t7I&dKDUbH`O?yIw$Eti%`@t)Dx<$v0!M7gz z(y68_qwDz&Io04 z^66}VD-@0GXq_ztw;rU!QgDqL$Ir4EE5~mTT^qYE8-xub3g~aGD9|d$x?13jQ&lW~ zj~mN)UvQeyPbd=HR|M|!9p!U4bTXof4V-Yv_(p_N!6FS3U(2w{sh=q>93k6ECChxy zd0R!Auh2({V??8rE%&qB@NUuOHm#c`Bb=@C;dy>-**~Z*O$t|OW6)AmYr5o1!&?MB z+%K2=5%(DR+AZ*JsZU3hKZFaG$BG@%Ebx|)OE56GnUBBCe?7MgA&13`hnBw z-Jio1`Bm|cFr2v0*tJ`TNG(VfX;KZrji!O9Cv=@~|JK#Emb+_1Gi+NueNUPMnFduX zlpQ;Nr(t5(7bP-jDCa}~Tbaj3tqM3{Ud{u(Izz{u(KMY8Gkio^{8U=G&o#zqNF*kM zS!RVNuZ}BT=lY9hVlU3m3WozMF`hjvzFRBi1I?8^jeu{ zubYirGv2fjw0J9@*p`PWeB2SYgu>rSkk4`H&xRZZoft{qSREu|i_!XVXs&1q#Vd6I zti#hPZ`Y3FE)bFBgL=;8kJNKI_TcUO>w(wxz3@7G8()+Bi&I(b>N!?(_H}4)P zc?3xkBoj~ne?UL~E10s=*|Zspe;OW2a_W!6wjneTCKJi zduSbS^qu6uH(#P70dnSMsN(~66W8JmPSec4KKn<^)+6Gh*FnkWWR^(apTQRk+_bJW zyCD9zO0m6bFKB6z6w(WaD5U?$`sl&Kvc*I7k~0&1Rh!Nn%G~w@UID-Fj2uf^vgr)( zkcT`b0^}>*Gx!vKomw&fXXsC#@F-&oKSt0OPJVE3U=#E>|N2*%_}5ZKspt7$QE)}R zkbQ9;H^v`?(P{-L$C9x^jU^rj=Si1WcX0S8w0|Fq>FSdczj)YOJ#*7Jw(HaqV@hRz zn9d-Iqh&hF-Fogn~v07IhZg__f9}}Y*>)h)umu%Wxe(iS{*Dn2ns@O(_=QE zQK_!3b`zi+npT>P%G1$UfJ+TT|E&GAOB1+b1d=c&#j#;>?ajud{%$YTvG1a z?(age$ZjX#-gn3Rhv$=eSo$`tObv%t+6zNxXaA@Wg}TJE$9B$cVDRJV>FIp(F<<)V z#V!mn(`s7RP>`#A#lV0T+Uq~Ck=@dgvap~v%Ky;DMEkX4`KJEz4hCW*Ka!H(YiW^! zz=B)5p1jb_ra?+U%$GyLa``lsHv%m zPaRvAR8&=Q$;gIycQR-j4iOIqmvA#vQarRjeVXtJ?fo;kae7@^TDmheGb7}@e6w@Y zo8H;*?_#u4`1B6eSWsBlijR+9`4?JwJh1g;%Xjc^`l%W+M64{=J4@ESW3%~oUCK!-q4}9mM|cK?b5!Ou(doD!OmNie7Flx&ew2|Z zNs~8?Wgivj^=|W}_J#z@(+V^D_Jx-n|DIc~l#ZnYf`|b`9RzCQY-hlfWZ z2|coru2=_Kfjwy6?s2jACs#UFq*AY4$dNBSQ(axX_08M24{;e89SeL9 z*xNf>`glie4Z$O+T%AbQWyUO&BZ?4$s~mS!$cPTXRhA}};`MP4UFy*ec%7R+9=Z($Q_Ww4xy+T9=&Dh9@N@Ng*m)M$e>_l)ORo7s;)|3Js(b z^dPT}1r?uENX$H?X|CHgW8Q6nwd5{9g9#m#IV_{K8N|2a0%r1vsXRqQ01?1|%X)hr z@}EDQia$0vsPRhkmZrr9F*&L6`fijtWKdPeI^!i4nG$RPchFL0*3T+NoPn zN!i4%;3Q!eP)g1+vgnktbo5yOSdD7|mK7HlQ}gmBpPxH<>R)?x&^`^7pa%s01EQ5! zP*5O$KIP8j%0r$CH1zw-A=jAMeQ#rsT-Bxd?w;0$eeK6nIqR9-yY_db)zx;(rFHDY zqy0hO+Z*Q7xpLeaRvb34f6;&I)v?T!Sh|4c&yzkXA}2TU_4d{yb9Nur`000QT3Xw8 zEst9-A$2VeEf^rtSb-l_H;$1$ux7^tWWdJ0Sx4F5v`0B-w0p||)=^PWVXCFIU==Ia zGt|=%UHhAah>9vRAT@sGCUX@K06h0_1$p`9)QpS@$d*HM-Pq3l;e|)6=gS7*U`)u2E5}!S3?r?pWKFZ5rIN13>Wv?f04|_cyIA24tlB7DRySH2He}1YZ3kZCXcW5 z*BqMRxg8zwEzrjV)0Zhu0y@BL|Ncsc?e_bhfmABsf)##CNRR@m6Rb#+4ii`mVBWfM ztAS!B=X0W8oIhYWr~wUAPl9d5#1MhVf-Ufv>ywx?f2pjk4W;jtFT@AR*WH~L+ysCE zIn~FSRasY84roeLWJItJls<;wALF6*qBvUM-V$8 zE-U*CtijauG>W7ipawu3z%e}hXvJs9h`=I-G;>%3t*?(s!KFg?@?~6qUtc@mlhic~ zo&gAU{_x>LBn6hVIrnp4h$OgB4KDZtQU&D;9gXGWRsgJYsMHWCLBTpA0 zuU@@sDJuF~A|8r`iEgUN_v7(HM09k!48w(}e(41lHFdX=mey_7zy?E9csNPQ*RL!M z6%|J+u>;Ec4$Ze}>gxP#Y;0+C>0aMm)Oe9Z+MVH<xt$@$o3M;y|ps(MO-7 zzj`&mne3h@Vi`TKLCwU31)`(`;x6n}f|VJcbZL@$fowT>c<}*l0p{s25di}TXt#qN zHlkphF1H@<0(+39aeCurR?fSd_ah+S6yy+e_~8o`N+&L>3#YRs*y>(Ipw0s*d!PeB zE(N5(UkeFkMAOWKz+>uEE89dm$x~$&MeF$?g%bm*yHk5#*u?l65QJ^9V zRaR8M?STds2Iy!Mka`VAy7f$JO=ETPr(Xqgn@YkpMub#YB(7{Zd~2jui1*U&0c{M= zqc$~n9vJ*Z4BV`(t?S2jh9=Zp?6!2z1u^M5v_ z&1I|9EB#Ek!dMFMhv6BJK#Dg)d5?Mna7jg7{Sg*|IUr0bl(k+ykh#pT#AhZ}9*R-{ zwE}{d>l+(^XYBxSvL2Kf;_AcOblqF@9fSdl4TO!S$#Wc4pYX4f~-)?B8Za1PAau8U|{YA&mXRgmU5-By@aSh>h2ja%Oez6t`MO3 zH847ED1MQ>F3u_vwQ^ipUQ|R6R5oP-SXVy-- zZPUmPN;xw!WQrL;c2m3zl5aLB)W`2y_693Uk9CUW=zO%B>~ zUC3|~&^vukKKq(YXk{tZB!9@I< zu(`9fKPk_T$+ETB>dFjuHvs_w@*OzK!xU-9W^5Xu*2h)4zxVogb~fK&O$N@W5D>es z4;tIa1r?V-xq#Zs++Q)d!63S1Al%W@)58_HI;{V>1QhbtSVJ4KV4ZhI{Ip%P_tjo> zSHipyWI%l45`H-MIAy~^3zFK5pQ zzcU$03WywCE;bd2_3}L!v-^IVFHo`)%C!AxXqbKJCh!K-Q+@?Dx765ytQl;kV;NBU z3A`Xx4UHmip_PONtHhf~*$0sSHEy(q&Y0a))rRZ>7i@rh93O$+i4W}U&8;o_olXAf znR0CgW@c>H1U>>!85tR#o6R4zddMwH zHc~nqV!CX%c=g_QE+C0EZ*uxn>i%G^ISB?}gs z9qFKrwmXlu7?&to(dNp23Py%}Y1uvxkl9o(}aLvKi}zq{Pm z24$pbwwjvr(ysCyXWwdSYOWe>mPk|NcXqa2-Kfn63}54?6>9VRlmuV)zqFRUDt;5@$xp0(AjM>vkA^BG<7IZ{F$P&mQ3*r zmVYd{>Xv^1n?Xe_<-=y{1pVAbc3xf(Sdb?>NXP-PpP((yZvnVn&HEvbZj1$$`s>6A zjOQa#7^u$#dFCh2h{q3*|A6S%a9>~FK)p9W){oW|ek7xe8r@_jVSr34gJ2@a`t}-U z<7n=xl9$c*8wuoWGb+>vHjayJALGP-t#EHJ>Ff3no0W)AKd<~uILFqFAMrl}dYx=O zWfk0Y7vrk(au_BwlUOlFT?+Lre@GNMted1~U@%;6bDzVF1U~0u(Kg^2F^}Dg2d#%n z8&}q*jTru-qN3G`)}x*+2jGKXgVlt%fkPdD$_AFvVOG~wNmKI|h3g{jHhCjO{uC>= z4)7S8mTZI`?j6z5(cjC;ZZ17|H$rdPUoFE{T%C=KXi!j4yx=!GO-o0{&+P_`T}92n zVXkNtZZkJjcQ-qk1J4Nv{sQya)%tK}GliV{_}B)}SV-Wx+p{s@Sm)NI>O(uELY5BR z*C5M8G0Lf~pZj>e3XrQ`+$&zaMM}B9*7pRV^-GpbITOJZrm9&kG}rt zkGG_f^oea9n@PxP6Zs#F!9S$^newxTlXa>mqr6w-f~ThV`%vz}Z$m#b<;sM279G#A znc;>8pl299H#gS>9*Sk~n4Q{Izu%1Lx*7a7*;_hb5cQnaJi9q@ES^^~b(ai#HwA3~6+D@dB${1|Qf9d*|wD-xpgsesOWJ2r974bXyYw z0ua~N*NHhT2r%^Y#tUjHYZKoezCB((K zW%|Nzh+jO;@oCvv=lt(0iGqv2W+p;H>~Mf!FMw;>Zn*J8&~m#B0Zgg*^2RH0*1N;T zQ~Q$jqNA8~=BBdzOrKG|LjYic0H?Lny>AG*lS372;Im*J!B>(S-BVGj2|F^l- z|24Y!-=OCICRO`dxc|fdtOfYrWP!)SiYJ>V(@QiFT2cI-^H_h1E~os~R@Ah}iOE|3vln-J zCU`1Z4J~!Q{;3Q#+!^+x?(<6_sUev{syVKAk8ErPDuT4KIIa*B$g&fY(N+*)e!5A_ zvGIskh!~>j`E~H-YlXi)8q>nre}szRz0!qfBAn9ZYzC*vUz-u!P?e2u{L`yG6Ugd8 z_E7RK0v%2xUrrh2^FC`e?UFK>ARpEwd-Ly;VRdhviBcGv^<18IX1gJ-j6(I#aBtis z56*Xk!Mi&M>aO~@JVg10zR#Wo74MLp1utVVi-yNXk>)PIV%T!7p{iR8- zH?p@KlLJ0bxqiy-8Ll}q{N7K@PPKiY&bLo_g4py<+Z*dVi0HLOCnKBdq=rEuM;XSg z394PlX?n)X9i=(mX9Cg1hb)D|hAc61J!u4Ax#s ziJD8*?ap>`7F}xHjoK~0B(e*7Iy>rS)rAmbO3a0FxQT?GJ=5{uutOWQd9b`BBfGLP zc{L4M?j|`4!%$PWRu&|e2TS8P9a-`h>hP}&^x-s!E zm7C;F55F^bRYf@$g3BI{4AVCA7Q~+HaVBKJncNjjz{!OE5r6BHU+Ah2EZw_YiV8TUIWV{ZQ*;YhtRhpkz%JvT`scJ(5e;IvQr6c-KGccPs_fnZa1w zVzLshk;%7PPol_X5gyo|I?(lQKpv2}46qPI|Gwr>hH>LTKEXn<^UXUwvhoX{+KRX3 zRV&ReU%LXr11%>!Or>$JRS=C15)&|9@Mn22^$7o#x8N!i$`~Jsr`)L zxDxv$ldtT4-brQ#to?A5u7EFHhSwK?QnCcbb$vZJ(DtwipQs}q*^O`AK#Zg6T-qql zum4uL^SEQ?`#x!lV+4r_{~Qmh{xA_6O$)&-%zoC5`kgUJ=s=l@V~A4ht@dhAjPi*wVmL#R ztIuF$q1HSyOBx_;F+p-E?^?|;BT zTO1~2o1Eo;AoG_~%r;1y2j$u~I?G2PF->+2os<@1atnF-DY5&{cj=4X3S;PE(!yg1 z{5vIgNo>2%t+WUs_#C1LIGBv0-^5xaA=7yI&Clnau=n@OcWqh?J3S}!XB*5genaOu zcx5}j7n`8*H@5gkf$0#!cygQngek-pX^bnHpxIBtZ7rt%PiIyo#%i$AYq7aWE$&K^ zQz4A}_L(c>DB^?Y-7`Z4Q`e?o>sDH9?Qg2B2WZ5sIFXz4Z!2NZCr{<1cW+e!h63={(+$6gW$*t_k+!O9tu5$7{ll%_|HUl~w zcSw$8`beq`6JAIj)z>m%vhaurwTrPilCJr$g3U@7V`)~TXb?g1xA9+`B|(qZr4t&& z`Ssy*gsC6(pC;qsG*FeJeT0g}4gw@3Lk}#I9H{MT^>ON9iGN{(5tGmUS1gF(3xAUq z3U{=IEup4olu1*=A)d0e`Ad1w?|znVK2KrDoI$n=van?{4R5O?F&Mg{NWP|{Onzjg z8;%@L*p1!Jp6;a=#4+}~wEK*Tv%&6Rtg_|bzaL^e!b$J+CU)9*!SyP1ZUt_ne^o+l z*%F=x`TWIr`)OMzyW<mGH&^QDL^C8BO z8H_d)VbV$-sQuf*J=a;yO1U22)eg9Y(pX7^>L~jP)#%$XHymfbrJ_-EWh%80%T6Xz z;m2csc_u|{gS_3F-o@S}cX|5;nR?y*c{wUBq}L>AUv`Ggagx`i8tvNaL6sEE@3_+< zAy(IFn^hH~#a9rAq3%w=Z;T`S^4ahwk7q2Vb>>_2`^J0$3%R8DESs+x?z>%scV)Wz^yDh#RaDFNdjx%QQu$$RoqBb`6f z-VzZ1U$wn;Sd>o~HoC#mDJ>1s(%m2k(jZDVl9JNB3rZ*<(v36{A}zUups;jHt)P^| z!qO~o*57x&bIx`CIM;QG|K^&PnR#btp1Gg~&b`pBuM( zNgs2WZA)WKKV#n&@1W*k#W8P04 zb6GKWxXab(%K>sEYWA<|J;LZ5uDzg~CKigWF+D}I>^d{auVa*`kLG2lz&)+q=Qzw5 zpADEo;6sTB%fxK72#v3iV@YOQ;cLMJd}v&`RRxUVKO{}gUO1MGZ~mW(Q6-M<|0Bub z|1DVke}vK$v}bw^UxLo5@F z6=||3Uh>>bxX}URPsRtMRPlw-hF2dW&AZLQ-MbC%AC<8B(Rh`d=qhtgycGCtjjIZi zg3A4=GbewI@1Ura3_OOuDk5wnZ@YaNbjQfkul7OS_$u_b>>OLC8-W}iIUr;j8SSAg z`yNOPo||lWg7hK6qOBdyR0g5HWR}?^Ay+ApH4W(nGE7b*y_0-c_^rn;iSd)Ak}^{a zCfNRAKmSBSq1^AlX!H8gY_3o1J2r{75|dxch2eGqhNR5P>(A94vzGq*E4JdS$`4T%M_$$P(Nhscc+RKGHK%FBSHg`nZ9d%I*Q8iNj`=$N~jTxL9!3ckt_&G{)#>BoZir$_m|Oa8G{sH z(>3CUC4P?IB^7GNMMn39I@l~1^R{=Anv9*6)CCs3rRxiEb1T49QWuZ)-;y!}NH9O% zQBr_xDaH68%jleqd(md~7rYb6z0*85a$lbiuDq9PC~}FJn$DH!E>zzcDuCR$NWbE0 z8m!>3qcs38%$Mtr!}tpU>HueekM|HelAY&PF%1+h%w8{r#5pJ+>&c%BTH7Tl+wnU4 zh^Ic}ug_$Vqo6FZZNZRv8HoPX?D`&;=l*~VOVORNEv2`N0ok4i2s7=AXqleebxl)* z9xaYZ{w^B@83?qfjTm5Ei{5N)VJ#e^tWh(rArm_sH;#MvKS=)B*r^9|B(!(nKU>st z){jL)s~eLoZ3y1mo~ZCt0d5il=tTO%@Dd1X2J>EjA&HpEURg@AiqAB>GDEs1OpG9K zy1y+89*VM*CHHp0A0e62x>eMQCRXs_C3kq2UOWmxDe?Hg-*+IIHG(kuF$95t&mZ+5 zp9c?KKlFu}O|VEWnJ-W-5Z_3FzSW;x#he62DmQ{`Z)?3pyQ}Vz;OUOme-jWX&x8xw z(uaIXBspOmVgAgQ@0+Y?p(!Sbh^2Vfn;KlYe}|8-#I+^EsOb!SeNJZ!NTz< z`5p|SwZ=y~UGGard4pae!ph(1%dd4rHn0CTk05Z8Os+j(os0rfKFz$V>^d64kk8(@}dJE)Ud0ZKUbv)CcE6(!4x0M0^bxe!ga zoDeRZ)(q|(UzP+dUA&7y{BH;MZ@@+^UwKBQ1_MHcM_ED)AV}|P`e?a z`uvSRMbw1K1&pP?CJ-6VfQ*+Ck$9d$5vkwlI+yDLBj?podYL;~-rcT5xLc|*vCEm}B0(L7-WMXanjC%9stS!g!SLwyx~kNQOEij zZFY~#De`($s@D)AqZyjM_XF(7ZtFYB4C8!`gX!M*N|qb{O{V{x_u|Z%h}vRN@g650 z+%K(VWUo(__k*x%jo`q-o*#lfu;tXuW$M}$|1xHk;>9RV2k)gs+A2iHl=uOk2N`iN zxXb~j{eIil`4t;iF%i5u3yoy5WkOuC=(GjkW5h=CI{W)SXsc{14~yh?alt9Ie^pr^ z!&qs9+^X zwCX}3OV)!{-p9Y6N^}y6XSB(!2pMajkwx4X5Rlwl>}lrQyjHX60e-Ok@jYg8_G3FQ z^+xrUMyr634@>chbV4O+TIa>KINcp1IZ>dJ3(by4>>d4q^Pt zsBeo|x3J6dcTiS8214Qd`4L!<(Z}$2&%b$}W6#mQFIV zAyV7c>JeqqO~!3^5>HE6`iX2Yc06PV%wh?gHv>N|Xj^?2K1q)G5{y$@pt8eV_nNx~ z$joAC=f2gicJc@>Ajq|TMXqF&S2UOsb5qQrpJ@|L_)bIB;`(lA4|too8B09g#Q*U& zYnYF!<8Ck({v^noPbY-*1XNpD`Xy*Fmg0e&Fk4Um+!?LI&u@A|mUP8$Ug>17&@mAA zEgVBv8;$wwH0xCu9fcS`?71dEz2Acu7A3Ds zj)I#4vKv23wea*VH~~na#v|szjT5_pF3m&^FLCLYoNdGG4g-(UhiLST9;*7{q5?KF zUDlLcY0HxrnS`Jb^>!;ZhF9hY8M$4EPGg;fVSYqiHbH_jU*h~#3Y0>+tMJ+nlj9P{9*sV`k2fRlq?b7<6&;~nZDAk_X=9rHxyB;KE`5>|B&Zb$#spHWa1yN~ zI~&LnOo#vQoO;{5s+m=pBJUu1{11AC1ILpj*&)gb)#B&yb?f(+-SNLi-9}Qm8`5vL z{4OTv;Z8y8O33&v6(uUG2$OOCn*mkSz#Ui}t~3r~X+{C!$`R^2+^ezQ=2e{_D86lt z(SSvso61?7*O4k2~Z3z#FBWX}<^3*F5xH#4{dwJ6q42GfmBb2B*UNQEyH z$53U7fEyY<`n6B?34zF(dhM=cYG*#DJF$AhFN$0Nu%D6$JK9m!q>DA z=xW6`u06zF%x^X?N4B|=gN&33UNFa0T=yOpyf#a2wbSrHl>}lpmON^JQq9?l>Sg*0 zc*aa}aqWsrQeU1x-^R;bpMa!9Ss2u{X?hd6SQQ0hE8TUB!%ZN@v z4#PtOT%F-TVy|T~;xFvl9z_++;jq(C;&RsAuLpNf*VDYIG;#T(l7Fsgt^2gg_0HU~ z<~59ko<*GYxQn{>%ppuV7`Kvou$84)d`Va_P@?hU#6hJJukM%Z>Ph|n@4>kubb;J7_ZJ;$#O8k!t%>YCdHI3vW-ro7eA*5(Lb{wA3k` zN=^z{q$F*Al8Jelrb?cKPJF6O@hh9G%+?ahb!bnj1vN<8KGH6PMKotSedokNEc&`t zKxZudeh02J?E=A7`rMtRBX7PGI7R@D*@@7(o>v04&L-D06qobqva5?ns(QayUwuZG z0Xf6T7Vx~|FY{pVl_~E*;#>q#S+4Yqg%4AT`B;A{Q@OR=fB{N-e%t1g8 zGv=TEv}lF<;G6UB;UERWGwlE-jLOW%d}gzrmgc*%sGcx0BFxM7JD=@q-Q7_{fkIa0 z5O`=|5tP?fm>?rJywcFp9(r>DTe8a}Ie?&MWXN~vJkpiuOvfx9oO)w6|e!q?VX;{q^ zCVq0_P$lSCRJ!6RO#Mr}7Mfe5UxuuYGE+rqR(CRl3jJ=Y(FlP0Zh~YXBFFzkB%M4g zyyb05h{2`16z(Lh0WJXVK979{QKZ=0rf=p!Zk)h>k$H#ULKtV(lDu!n{IXNllGTyP z_NhnJt3NNro@S4W*+j_{YWg<_&Q6-0ibXwT#F{=vHxM*d<0&Oz53qNA`B}^nfPNvk zc?f!rjYZ^=o`4IW?rIOG8G^{#N};@VDVz3u&>mqlGLaT`WLj z&{FSEn?Nt75zX2`u1Ls8Xeq}aP3QvdB&yM6X~^E*yuiPZo;^G;{VKx(zyt43r{+VG zDGd8UvLxwN*?zutXT}^ok|vO<7OoJOpfBj53*o0U72i`Dt)c|zjJxGTs=sjkNCmhs zIW}=71fT~tbEoMWQa6s`;gfLLbv&T*87-0w32vU&8u1m|bl_))x?JSkz&qDFyh|c5 zRMget6?i`HL+~&ihDt4Pc{wsYh@vVnS0te{$#!#w%l0dkBCuC~ZU3)alHGF^gk0IU zbc@<<1j**-dyjq1qCL7v&|WJJkFt(E=x>kwyQf#uQA~)M# zbQfFIqx*Q9k|MWt%y!u8i#Ggu6~_xR51MMxzdMfVDZTG`%X_m?%*d}1Y@R+~PdkU! z3P%QQ#I}rhz42v^`^Nkb#wJW=f6M%3G;^&T{g)}e!Jglc=d-$*;u`Pp*`wkbefHsQ z0kxw1)ZNPRu~Hs!ms_(S8TUQfRvD}Bk?7B6@XKRCl=*%?-nD9=J>&L=<9ao`r_Wy-1Tya`hq9MOa#PP zxZ~Cgy+0_U9kP>w`*F;_b4Bg~hP{_#FH_gvCS>SFYtBoaXHc#3A&*^=nHqy9iip^< z<2HJ<^*|?d3vXT$@^y6$I1T^&Mk>D4O?RWqb?dI;T%H|}Sv*m6S#cM=M+KlNzBIuV zwwa^Qfd6iIGx5@4dCpX`=`Fhe;w?Wi{;-$YkwUlzFNyR1fIqy5xPXqVr=#ZmOWwrb z+eh}6HY;=X9y%{-K&ziRP`J{*0XPq>pyMD7a*^Rnvc84LcSjR>Wj z(QaNy;Kl=62Y2)ug#rv)XNefPwMd)fDn=-3r~M)=)>$;Tmhqx+jKrTwYJOc=B3U(7 z>hj+l)4T6cx5~V6xs|{b)_4CPV+B2ZpZJHDoGD1wCeg5tuz%<%Ax13mOPS}acWHU!Cu#JplZzJ~JT zSuWNBTYyV;8-aFm6b~^JbmqN!{(YKo(ZoA`u2hl3M>D726Y@dO;hOTxtr&UcyBSEH z#-fSaq0N!7H!14Di)dDc{ETe#I0;HuYX+!3zy{aJ*?W-;S^ysrzV7f=6#4BM-aDs7 zaBt#&Y5@!awiaRDo8oR)m6*XSf7ufa`@m;dGwC692C92tR1G}}=1U)z;m(^cH zW`e*CCu&s-G)tYV?}%B|vL|AmkZcZ`Z;IBjkUMG(AXy+G<3&yZ{#~zoKUUT8<@yu7 zUeqn4k7OE!Y z#l4Ps%dxyC=xbeZoA8&Z`TBKw?l=SO23{myo)nlbwy*UGHmT<>&)U+14rjBg)rx$Cnozgd4%{Gtzm2dDc1cw=(i--tvxT=qvRWp0wH3wW2jT ztgQR)+eNY##>|_~?QaDrj6-_*C>Z%dx4J_UDIb4F5oR1>!&zo>nC`mdOySs@dQr-i z0XE}9?-=4y`>$#|{=~np{rLP4h~jfQr}a!+3f{S_f-I0>m#02Myh`Ehdq;|W3#Tz- zxAAPwsYkj@c#-;k{=|8Nic_QIId^_9@+j<7VDtI``-l$q(9BTx0q^Eh4rJx4i`%yH zaJ`qv6yNne)}^=&q{i9ZE=^Z5`BHZx&pVB=s>q!8E0+;8i*u(O#iYCC31K?J?4FA~ zfB9Lg^EV40zFX}UMG!4ws)?laJqIxc_RF4iMAGMw?*hILeBukesu@hp={gjw2zMM% zNU7qE^S^C3bm%1bpXvC;r2O94-D{gYPhAsKTbLxpS4LpXiZAV4ZB{FudZ{MyqW}AJ zuyts9O2$}(ZIX(lU?Pzh*>tS>5~@~#@mfHvg7OQP36G38so+GROP_FrtDL`Sh5+Dp zPg#Z+fcnx-W%=#{(Xrlxq}0FhMm@hl@Nwl)#jdn0CPh=ZrY7=$YMBb)yExdm{x|fk zg4A`l%zixVg%CgiYQiCBS~Q!^)gbEIt*nC^997w|b|{12^vd@(ChNg57e#O0BTL-I zH#YojPD?fqNUt>RxlVGqcQ|fh1nRTe-tUnjc@wh*0wh$dqX9)+0QUy~6x(H$kw0*2 zk`x)q5PUm(5~!6w#4don?#heb2Q`w9hf}QdLd*xXlyczZ@>{G_T0v9Cv=TQ$|K|4l zN-%X0gWEBgkV=;(hrputPJjRk*Jov|T-a^of|otDbm9+PX4Jo1Ab3Rx z0spX~Rsu*FTTHoE0x-Z9O9yxWRR6zLr;z<2MR>gZs^H|=BiV|F7!hubMeJ9dV8qdn zK5xPL%F9GU`G)Hgc#N+7Ln7W@GF8fxsolN#s*t^VqKVEGX??sISglwFKun(NshuV1 zifyGT%M}TrWKoL3I2RnK9(Vwf0bU3z{Pybhd23(I5v=z>+*uCAi3~yp6o-w26p0WZ zQrslA;XtDL`xx`|mtXk%zS1V7}8>eUBugL_5}ubAJr zP&&@0@N~EpKa?YP?8xT1c7RI46M`&TJ*kLkSgyay-276B9@zxt!vvK>+p0`(A{Q;* zD>xq9RbHiHu;4vd%wISmj6SGBZvxMoub!#Az`Xu>>PjVnU^jjZo-v?@wITEnbV#w7 zunISVYr<2oxbIPMgd8aL5VM#n%z~Cj+3&o-+t>5egS}n#cIZzS|D|Ro0F1z%&?#!d zU9WjI&fx0E61V}o_Cg9iPtvDaAxPBY--)tPOi;?WkY&d6#(5|=H2sa40;@2K8WxP|h$ z-!=Q>pKHbCb6s}RJhF$;ca>suKMurMHsJbDv8T2(eT(^0+0D+MjnbLL2RlYka#e`mzl*PH?(sSRMG^oU1?R-zw0aIigf!^5hhaiiW;}dm46W zM(}`nE~lyM%n2Ji;K*+SS>+@bDaCSrLFW4_=56Debi4Wyz+Pv>i zkX?v-yWzkhx^{JQGDV>ul!QP->h)4Rc=ceXz}LMm;}5F8L9FClbwaZyBtm>l0MFIP zr5ztoB)DtpyW`ywGBWl9t6_n0tWLfmHq|FXzm&P{K|lT;t-XlWE+Jaz+07u)BeUin zE~4}f^0<74{X`wtFlN@(kd$jUNX~H60-A0}>s5YU%ew3K$fWq4;oB%OpX=xPbS;cD z6#eo_Bqwa2&@C_Rrs4-gj&X`|MPXAIDu9;tawf$_#%l6XARt2{bkL1GYXN^z82S1; zh{j15^7QPGxKf(_>R$hNH*6`fEs-zQaQu;@jjcd^Vw~}m4surQMi4i{$f&tfGhZ;) zjeYo1Ak8^=sixSlfWiSIN$IGPHkzwuR{LPsQ^YW%n(ZuqKE7cUwp@m7Lixa^wTL8!?`{dkMJ&P0@0A zy%HVLiQgCzQuh{zs=PQ1}Tf={XUi`0tHBoao{5K zV$J6J@diXKaZVDg*;Eh5|yX%TPpT?;@1V^)5S!%sre zDb%$}&#c&fmN%d)aryImfIHXy-lv4OulPcT&ejxIV|MpP7nQJ<@RnKll~oAZ9%Uyd zq(S|g>-dS?$}0u;9>tJjU|oMLF?z4>JN{M}L+cl>tj2V@hZpZKpR3bwA<(Hkw?Xvj z1M`kk?p;(q0*G%2-v;d?7Gcz-9^LW?~$9%3xBh>|^bY|rMg;X6Q zk@_UoVMKiTI2nB&^!0kGnS?*AwX9;j_MAS>!vwqoTfcAC;W|m2hLl@u+)#G(mC(O% z?nR_{za+3EJ2gf)Cnb19h`$p>`WNfu*wSoPW0OyGFi^;Mcjro#x-OhO9T8fxKNa3o z<)YY_0IM z;tUOlyfGw)xzksg4p9Uih#~IqiiZ8*TGCU>;Z`w)_)ss861BA>(ZRW!ND9}0u0;)k zhHpy&2070c1sh~F?vdP-o?L}?1Vv`du9~neU~2mEjFD1%Uu(REI;nm53X|`NwUcSJ z_6Jg?>GXBxWT`boKk*BD7(S+=);i!X@DLwk_;b@^pe=VJ!|$? zlRHFV%DW(IqGz-L;pX>8K^bJD<=JaVm-2|hevAr2K!#j!cH%ftFxifJoekjEoN4QRL734&gP@Fal}jwtSw}Ml1!<2#tn0 z#2v4IYH+*DUkQX{WPctBfhT`W^@6I8}U?dBaNev*)a-rZ& zg`&3=p&*U`Nz-3g70jP2H|6tGC#fwyr*vF|@hpw1EwX@{fKH`D{(sebZI8_2zB=2I z^(~JSiA}u02Zfd)4{M2UiO}z!MNWabNWu#6&vtP`TJ2XUgUVCRF@)Qs-neecIV#p* zc(2i~KPf2EW)&8Am0Ew`?z6U6FBIpW>Uh!E z?iQ1kg?!Gp*xMnj1lhI%Dwf|$vgoDF-m~vSPpX*->W!ar4To@`3~hN*IQO35P-z%i z*bw5p8)EQ3@B`?v?)vz)-;od(kjl3kk&ARG7MH|idrucaGpDZ$ zqL-#Gdd1=o9HvIf*jsDm;zTcm5GG&@LBmjdnwvh7gs$bolj;ai!)-Ht@v=~Bj_h{c zYT%2R+2h>e_5-+OHhkRxLa~1u#pWBI@maw8p-u<+6|j&?bTd6G*|s&So2_x~0Zfv`gHN?$-va(SXR>?lRM^a2&?eHr)UUXG2?UJULR9#O~{~3k9pWBSt zHOBpec(3hp$Sq+88JLCwtbj$0z?S~z*53Hkb-G~C1c@W4%rQvr=6TtY^I%^YwGXDf z2~7j*f_d~?;hKm8ei3WNDdqqnK{(=+)2Xu*;_=gbNf;4*|{JECj4HQ!N#IN z$28{G=RtdubPc9F9C;IG`kvlVE)Ar&jspuj#OH_Q`t_}6NU<0y*6(g>$A@KGmLOw| zPK@g=>u#26@o<$xmOF`)#9Ai)eX(=X6UD}cL3+CqWR zey8j;QJgxC7{7vCikn*oJ8PPL#|rTLIA{(Y?%?p~JE8rf_k-YJ7@|C9`VC!{eBpNJ zvQ`t@tlDs>NIgh=ha>Vh1IU;`u}B(caQ6hozg#mFW(!HVS<=EhGA67?hP=nE^;)}Z zzQ!H=n-42tDL<0HiB4=uB^gM-AqJs`sBjW8lt zUgSoA;N8cz8>vk^@CdF->yiuRL1c$8I_8OWGuY`~1&F82H%yO-iRAhbl5hQdLOb-D zE!S?bej#(U=r(@VH!N?dD=YB&{a^m;A%S@fToi$uen_t4Y(H z!G67_z~RtfA!WaJOtf?PqomlRo-*a!%)025|M_Juj;MrQV-j3QA*Fko&rw|1%{_yR{=8ao|>;t;_Ff=`Xa&zv%mQ>4k3+_u0=1SYtc^ zhspl0a3e(UyC>24Dy0$g6jksc^8-5aT(_~z_?fjyWg#r}d)4TGMYH?Y&N;sSp;^>c z{*a60Gj&F2>`Ns+{1F8G6Te6S_TsbXlInS`9JFEz>7ic2hr8fT5361MxnBAR_KzKaEm?9J@y@K z%rb^Cn(J-n6mHXzGI$kRnPq=glg|?eJvb@0ww%EHlstH8%a@-5$XyR42NqdgMUR_T z41JxB*)KXyS*ylnYLh@Jh?{+4EQ+&-d5Pd6>_yrLnJ$X8MA^6=EvcF$z9Q$4TkJS=OP$r_vl zuB*ZIDod4;|Mdn5As1V0< zeS9#W*{p=eSh)K{P3=XG=;vw7bXQ&oP`Ub-E&uGTIIV^2s+;sF2zu}b+wPep!@_UC zguGSvUx6aR;ku-kCQ00N-c3~7kMj0HUq``ju%9|q$B9~NrCkOUlMdH$)d{BTYN*)S zEk5*JviIa4_4v5^=!MrJyRXH|ZYH$GYylMzEjy}YlKEu>0FSBeK9geb91{dVt4DSv z?)G%a7k&%ch7RUY!(R$VFouzss#x~^ab;)fjB1-%^DBepe#1vxQ?9`Z?`1|Sh%0o1 zdHA`H;Z|^^&$2u?OZH=0bb(JTchC8M(yE=sD|n8Xn<}ykrYsv@Kkb!&cS%^h<+B_V zzyP@D`c$!L+dsOf3ox)Yp2qk(QJ$xBL7)=!W#>gTOqQewz!>;by!N@($9%ER2Sc5d zDScJ|VhA%}(2K3^GjUs$-Z3vNCQ*i$xiAK#oD%N%XEP5ML%)qrBp55?7Rd*7xmyGO zOrLZCAWc45AOG0QntlSPcMQ`-lj$y)5^LR!ii&;oy#Idrtolz{Nvh+QC91GN1*FG7jl=Xl!xT8qt=oJo7_UjY%Z4QtU_JIPm5p z9!eTz4>QpyeJssHhhL%d<_|pM(Pw=Etx=_|qzY>Qa_iHLkhs!(qAU>pb>qD5U(-Qc z-qtTL-2|ANZRd>ji8qz0UibV5g4OahZ?VzTgbpwih80DmWUL#(xolrzD$Pxiv%HV1 zE=>RiHSGpMfQ8)6o*gT=9P%(;XG1GT@w-9JT6SCQgWb(TU;tG>xYpC>R~({HecD%6 zYUXbt@M+XK2`UnnO4y~y>4rB$1Q7pGA9S&`Qi;_o=%Ux!UGG$vJCzZN2R(s*xr4FH z2gwB6`D^vz-}AV(J`aHUcp{=v6Sei5rX_w{EYU2$eB!PX8b>*qws__hvcjv>tljhLlr zI8jL@0l=@WXWg!UIsv&`SyJJ8MQxT7!3MiTGx%7EkU zi^2=Vzf-0GZK6yaSd;GoWg~;xwELPVBm_%%?>x*>e82_p=Oj&Xd>1F~O@h(AwlJn?Txg^$BDNgDXeCQI3Mc zn4NHmGclx7?^;8prcYkt?&Q9H7r=Hd&gHWUB;v=|DY`JrMwUP0l;Ts*%9owZrud*w zUmBk*So(gln=2E3A&WH`j~%gL*Fv}Th^gNq(ACAnXy{PUo=DKWwhz*OAS=jww)Dbe zzMbJUv8DD!WvjsVZb36^tOz!y`p3$M`yx&LlL{)+202Ul= z)ux~x?y=-6D&cOv5W_3u{s}&NFDtxo?!hHFa$p3Tu~q3}7s*Kt$=R!#sl0-n)0hZI z4OA=+sYI3-F810l=C6dG`BXe)i}V0g9@g0_x*=MwV^rbTom=QrKtY zjj_f+O6DTEJPD|S-CMa7a)&-@0o{aItK3epcN{(;bf13pwR_2f6pN1HRRc`+d*PpX z6XA}5OUrL~_>)`=VyblX9}I_tumnldY_!RG&COu?j*N=;JXA1R4kXJczvU^GHi%~> zXp_8Taayz~s{0&1VxrN48p?{a$|iM<{|VfRp1t|#t2ntXQM?`#G(xcBXYy3~#@iyj zx>XjaT)2bX1)n}zZ}{Wvi2~X>#?Fz2+P||}mpl$YVef})^yuf(TnPbJI?fe-+awt+`V8_Lj*~(HPV{l>8dLXEIxolnC_V(RN_MDpsDM#(~ zZz2gc?X1H|YPdwpv3g+k;u_PRMZ}r?hjA>{^M)3iGS%J0Yo5Ox1B+1Tr>qx#FM7;$ zUr3E{jyZmbc|zm~z9Q$vd_8&=TI6tRVpeLl=&{)pO&@N%-TQ0h5C9-t&{R`-_Glf? zkl!r=XLOfL^&p;Q$Ul;5tQq1^N~5B1Q1FhHEzW>7LzOXItPHv zx!k<{lVP=XmL&tOA^_B7&lbst02!WU&+_*Fsb2yhN2=jN2jPqR{s7Z?KKnZ>y$9mm zdX`DV#Ud|N37z5s4teaK&c7BP^LRMX#b}ImS?&ZQa9VhB<2-Jtygg+)MM)##E=h~s zlZwwC^a)X}M9J;S-^!wJ>tDw)n3s)zSl@82U<%lx)OxsB0Je*KXFEK~qc8v}pTUwJJ4JXwBKyt)VsuK>hS@b;3~D$B?# z3NoLui)Ig1oD1n5^1q=%J#Sk{3_eIW8v;kiiJEGMDdDDp_wA5O11d)zwyJ59UQN^9K#LZCN{}zue+Bw*8m4?5{tG~`s~_CEHsEE%D|_9Ue@hDb*}LFew2l^b z!hJ^kW^%lAeyz5#hU&8d4nPjd8~#_~E{zQ8liaujD58piUK&Vs@axjNR>!^tFlD*J z!M1C&#|#85FT`(8(t~p-7amO}eocJhc(b-U1-Xkc6%$L6J03Sz@m|O!@igkG(U%W~9w9L7LOU8+ z0)$^EhE)QJepJ8~cM^ROm(nPPN}hMNO_bh0&g0bUm{M{qADpCyu5WnyYT;Q&YQkT51xfSQ zYTuVPRBeXA+MWhV7{X=;C~PSW&-14|ylg2diFC{f863vq;X`o_tM_<%WOJfbVGQNu zD`pmPNL${ZH&{)@UIfAjt#1aA0K(4&7q>PGKW8YDvBLAS4js_r=UZ5bUjmB}7VCUd z%vkA828Ib3N2LopshCgG?@(G8<akO{w#luiSd*~d-AW1+4g#%EX zk~<+ZYC$!CT;eC}%5eecLXw#PiMhA-_KtNpJiK7u=Im{<4!A z-0vKH5oY?BT`QfLFsWkYRteLKjRC_~;EOiD`vuDdf%hIV-}@FUCmZiA(ip#)I@AYI zdb{)lfp>2sG7_{bYzQoBl2_8J=$20S$@Pn&ZKa^#PP$q3jtW47?Ufq>XbhQo zdHa>HmBqfBZ1hgi`3tG|d4)FYz!5zj=$)J05L+e^lOm$Bg=ed^vq>^Q85ReHg2JG`WhNc$^EzmS$e>&nJFkT)j00kY-SIn@5&{aZ{&U5wH4 zQ-E-pm*vj}%m=zYQG2gl0SJHzV9on=lf_zdsXGdLR=wIH6zq909HC{S_zY054`eN+ z|DGRDNm-!!TU5xyoV+b&VN=mjS*q_bcdiAff}|(_gFZ*5y2pnF1mJyTp_e%k>vBR^tM_ ztA+Bh)T)PPP5Uh6h%#Zfh?!>&=fu9$cCW3vv6FTIX77JO;LT}m(4Hd-RH zMAy>8Ndb?4!=0P9H)`YJ_WBe9u_~XqxbHB{|EHqpQCrE)L%VK5G&Zf_$kKmpmHB@( zDJlylLr+5kHlWtX%$7av|52ks55L(~K$w8I6M?tp+s#<54TWnS2!8XM6S0*V)x)N& z?|Ao5h$CG^6r^;?I6+^8bxP`6imExVes_cRFyMf@8Y<;Wh6?~=gDU@=@s1K=WW-a5 z`wxX6#s%{>|9?#`GC`o%KX7eD)b6AFiug@Ud|4XM(#oOBd8cr#A|h{`3qT?*R_K$0 zF`z|79E%DQnnr+847S1YuG+hWcoXHh)6~+W(hS?wk&+r)ME^Z0tl=|s+dzmGP%}Zf zip8bbMj{tZes92KTz}0YTRu(z>5fNEmK%{9X#{B)krRJP3f{-q;c7gG-?zV5^H8oRpKzCfFp)ipNO6fR!!fS9V zV4gA_o(he{#%QP_?s=b%sI{P!;2M0CJfr&b$`mP6rJAgx$aihw6c;uKDXd1K73K@0 zjfZ+e>Pfc2evr)%1@2^ih-*IV&-{eI5U`Li#@-ObFKmPF&K{){SM-_i0^pJxs>*Nc zYyO`EDw_v@h&KEK{{fe*?3BJ29$Pvu3uufZiUWv*n*O&)#5odyh-f?!8{jkWN}Nxm z5V^|Qz4bmeZU9;7A31R5M-k{0MjY2btyJ8V#+$hlVhLb;{NOwT7)#+CBSU;aT@R3s z!p9Aya+3HL*;C^IXK_n8tP;?*<6dwkw2QXGEWm$^VDFIJLxTimJ+*s z;qv!ov$IH-f#qRLo`bcRzXJ*HTYp9Ucw_bN?qFULtP0!}$7d4D9OA%Amp+{Y8p7tZ zvFl0eEeI~(CYDd;{R+<>y4HeAPfetSi6 mshdO0KB|+djO}y!4v(kXIdvbcya&MkX+G9dt9xV{^}hhK;QrD8