From 9b5dd9c28dcdf37c10ef742718f2f71928cb0c96 Mon Sep 17 00:00:00 2001 From: Sierra Helper <125094432+SierraHelper@users.noreply.github.com> Date: Fri, 20 Dec 2024 16:57:16 +0300 Subject: [PATCH] [MIRROR] Better contrasted wall sprites & wall paint layering system (#2936) Co-authored-by: CakeQ <17550641+CakeQ@users.noreply.github.com> Co-authored-by: Lexanx <61974560+Lexanx@users.noreply.github.com> --- code/__defines/doors.dm | 11 -- code/__defines/materials.dm | 7 + code/_global_vars/lists/objects.dm | 21 +++ code/game/machinery/doors/airlock.dm | 10 +- code/game/objects/effects/misc.dm | 6 +- .../objects/items/devices/paint_sprayer.dm | 126 ++++++++++++++---- code/game/objects/structures/door_assembly.dm | 2 +- code/game/objects/structures/wall_frame.dm | 24 ++-- code/game/turfs/simulated/wall_icon.dm | 105 ++++++++------- code/game/turfs/simulated/wall_types.dm | 17 +-- code/game/turfs/simulated/walls.dm | 3 - code/modules/materials/_materials.dm | 5 + .../materials/definitions/materials_metal.dm | 36 +++++ .../definitions/materials_mineral.dm | 61 +++++++++ .../definitions/materials_organic.dm | 17 +++ .../materials/definitions/materials_other.dm | 7 + .../materials/definitions/materials_stone.dm | 6 + .../materials/definitions/materials_wood.dm | 6 + code/modules/turbolift/turbolift_door.dm | 2 +- html/changelogs/Cakey-prettywalls.yml | 39 ++++++ icons/obj/structures/wall_frame.dmi | Bin 3181 -> 3699 bytes icons/screen/radial.dmi | Bin 27880 -> 28595 bytes icons/turf/wall_masks.dmi | Bin 43381 -> 57500 bytes 23 files changed, 398 insertions(+), 113 deletions(-) create mode 100644 html/changelogs/Cakey-prettywalls.yml diff --git a/code/__defines/doors.dm b/code/__defines/doors.dm index 2060e68bf7a66..f7a2a4c5c0362 100644 --- a/code/__defines/doors.dm +++ b/code/__defines/doors.dm @@ -5,14 +5,3 @@ #define DOOR_OPERATING_YES 1 /// Door has been emagged or is otherwise non functional. #define DOOR_OPERATING_BROKEN -1 - - -// Flags for `/obj/machinery/door/airlock/var/paintable` -/// The main airlock body is paintable. -#define AIRLOCK_PAINTABLE_MAIN FLAG(0) -/// The stripe decal is paintable. -#define AIRLOCK_PAINTABLE_STRIPE FLAG(1) -/// Other detailing is paintable. -#define AIRLOCK_PAINTABLE_DETAIL FLAG(2) -/// The window is paintable. -#define AIRLOCK_PAINTABLE_WINDOW FLAG(3) diff --git a/code/__defines/materials.dm b/code/__defines/materials.dm index 7f7d475c40098..1d6cae0f1116c 100644 --- a/code/__defines/materials.dm +++ b/code/__defines/materials.dm @@ -137,3 +137,10 @@ #define MATERIAL_RIGID 40 #define MATERIAL_HARD 60 #define MATERIAL_VERY_HARD 80 + +//Wall & Airlock layering flags +#define MATERIAL_PAINTABLE_MAIN FLAG(0) +#define MATERIAL_PAINTABLE_STRIPE FLAG(1) +#define MATERIAL_PAINTABLE_DETAIL FLAG(2) +#define MATERIAL_PAINTABLE_WINDOW FLAG(3) +#define MATERIAL_WALL_HAS_EDGES FLAG(4) diff --git a/code/_global_vars/lists/objects.dm b/code/_global_vars/lists/objects.dm index 84f043c2886b6..8f9796681cef4 100644 --- a/code/_global_vars/lists/objects.dm +++ b/code/_global_vars/lists/objects.dm @@ -20,3 +20,24 @@ GLOBAL_DATUM_INIT(universe, /datum/universal_state, new) GLOBAL_LIST_INIT(full_alphabet, list("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z")) GLOBAL_LIST_EMPTY(meteor_list) + +GLOBAL_LIST_EMPTY(shield_generators) // All shield generators + +GLOBAL_LIST_INIT(wall_blend_objects, list( + /obj/machinery/door, + /obj/structure/wall_frame, + /obj/structure/grille, + /obj/structure/window/reinforced/full, + /obj/structure/window/reinforced/polarized/full, + /obj/structure/window/shuttle, + /obj/structure/window/boron_basic/full, + /obj/structure/window/boron_reinforced/full +)) + +GLOBAL_LIST_INIT(wall_noblend_objects, list( + /obj/machinery/door/window +)) + +GLOBAL_LIST_INIT(wall_fullblend_objects, list( + /obj/structure/wall_frame +)) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index f342acac9d865..a625d28d238c0 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -79,8 +79,8 @@ /// String. Partial icon state for generating the airlock appearance overlay. var/airlock_type = "Standard" var/static/list/airlock_icon_cache = list() - /// Bitflag (Any of `AIRLOCK_PAINTABLE_*`). Determines what parts of the airlock can be recolored with paint. - var/paintable = AIRLOCK_PAINTABLE_MAIN | AIRLOCK_PAINTABLE_STRIPE + /// Bitflag (Any of `MATERIAL_PAINTABLE*`). Determines what parts of the airlock can be recolored with paint. + var/paintable = MATERIAL_PAINTABLE_MAIN | MATERIAL_PAINTABLE_STRIPE /// Color. The color of the main door body. var/door_color = null /// Color. The color of the stripe detail. @@ -255,7 +255,7 @@ emag_file = 'icons/obj/doors/external/emag.dmi' assembly_type = /obj/structure/door_assembly/door_assembly_ext door_color = COLOR_NT_RED - paintable = AIRLOCK_PAINTABLE_MAIN + paintable = MATERIAL_PAINTABLE_MAIN /obj/machinery/door/airlock/external/inherit_access_from_area() ..() @@ -380,7 +380,7 @@ explosion_resistance = 20 opacity = 1 assembly_type = /obj/structure/door_assembly/door_assembly_hatch - paintable = AIRLOCK_PAINTABLE_STRIPE + paintable = MATERIAL_PAINTABLE_STRIPE /obj/machinery/door/airlock/hatch/maintenance name = "Maintenance Hatch" @@ -1344,7 +1344,7 @@ About the new airlock wires panel: brace.update_access() update_icon() if (glass) - paintable |= AIRLOCK_PAINTABLE_WINDOW + paintable |= MATERIAL_PAINTABLE_WINDOW window_material = SSmaterials.get_material_by_name(init_material_window) if (!window_color) window_color = window_material.icon_colour diff --git a/code/game/objects/effects/misc.dm b/code/game/objects/effects/misc.dm index a798296b2d032..9feaa101d9c08 100644 --- a/code/game/objects/effects/misc.dm +++ b/code/game/objects/effects/misc.dm @@ -19,11 +19,15 @@ /obj/paint/LateInitialize(mapload) var/turf/simulated/wall/W = get_turf(src) if(istype(W)) - W.paint_color = color + if(W.material.wall_flags & MATERIAL_PAINTABLE_MAIN) + W.paint_color = color + if(W.material.wall_flags & MATERIAL_PAINTABLE_STRIPE) + W.stripe_color = color W.update_icon() var/obj/structure/wall_frame/WF = locate() in loc if(WF) WF.paint_color = color + WF.stripe_color = color WF.update_icon() qdel(src) diff --git a/code/game/objects/items/devices/paint_sprayer.dm b/code/game/objects/items/devices/paint_sprayer.dm index 2acb9213db83e..a08cabe227d76 100644 --- a/code/game/objects/items/devices/paint_sprayer.dm +++ b/code/game/objects/items/devices/paint_sprayer.dm @@ -1,6 +1,6 @@ -#define AIRLOCK_REGION_PAINT "Paint" -#define AIRLOCK_REGION_STRIPE "Stripe" -#define AIRLOCK_REGION_WINDOW "Window" +#define PAINT_REGION_PAINT "Paint" +#define PAINT_REGION_STRIPE "Stripe" +#define PAINT_REGION_WINDOW "Window" #define PLACEMENT_MODE_QUARTERS 1 #define PLACEMENT_MODE_TRIANGLES 2 @@ -19,6 +19,7 @@ desc = "A slender and none-too-sophisticated device capable of applying paint on floors, walls, exosuits and certain airlocks." var/decal = "Quarter-Tile" var/paint_color + var/wall_paint_region = PAINT_REGION_PAINT var/category var/list/decals = list( @@ -109,6 +110,7 @@ var/radial = list() radial["Remove all decals"] = mutable_appearance("icons/screen/radial.dmi", "cable_invalid") radial["Pick color"] = mutable_appearance("icons/screen/radial.dmi", "color_hexagon") + radial["Switch wall paint region"] = mutable_appearance("icons/screen/radial.dmi", "wall_paint_swap") for (var/key in categories) radial[key] = mutable_appearance("icons/screen/radial.dmi", categories[key]["icon_state"]) var/choice = show_radial_menu(user, user, radial, require_near = TRUE, radius = 50, tooltips = TRUE, check_locs = list(src)) @@ -121,6 +123,9 @@ if ("Pick color") choose_color(user) return + if ("Switch wall paint region") + choose_wall_paint_region(user) + return category = categories[choice]["id"] show_decals_by_category(user) @@ -178,6 +183,11 @@ new_color = pick_color_from_floor(A, user) else if (istype(A, /obj/machinery/door/airlock)) new_color = pick_color_from_airlock(A, user) + else if (istype(A, /turf/simulated/wall)) + new_color = pick_color_from_wall(A, user) + else if (istype(A, /obj/structure/wall_frame)) + var/obj/structure/wall_frame/wall_frame = A + new_color = wall_frame.stripe_color else if (A.atom_flags & ATOM_FLAG_CAN_BE_PAINTED) new_color = A.get_color() if (!change_color(new_color, user)) @@ -185,15 +195,19 @@ return TRUE // There was an attempt to pick a color. /obj/item/device/paint_sprayer/proc/apply_paint(atom/A, mob/user, click_parameters) - if (A.atom_flags & ATOM_FLAG_CAN_BE_PAINTED) - A.set_color(paint_color) - . = TRUE + if (istype(A, /turf/simulated/wall)) + . = paint_wall(A, user) else if (istype(A, /turf/simulated/floor)) . = paint_floor(A, user, click_parameters) else if (istype(A, /obj/machinery/door/airlock)) . = paint_airlock(A, user) + else if (istype(A, /obj/structure/wall_frame)) + . = paint_wall_frame(A, user) else if (istype(A, /mob/living/exosuit)) to_chat(user, SPAN_WARNING("You can't paint an active exosuit. Dismantle it first.")) + else if (A.atom_flags & ATOM_FLAG_CAN_BE_PAINTED) + A.set_color(paint_color) + . = TRUE if (.) playsound(get_turf(src), 'sound/effects/spray3.ogg', 30, 1, -6) return . @@ -207,6 +221,14 @@ LIST_DEC(F.decals) F.update_icon() . = TRUE + else if (istype(A, /turf/simulated/wall)) + var/turf/simulated/wall/wall = A + wall.paint_wall(null) + wall.stripe_wall(null) + . = TRUE + else if (istype(A, /obj/structure/wall_frame)) + var/obj/structure/wall_frame/wall_frame = A + . = wall_frame.stripe_wall_frame(null) else if (istype(A, /obj/machinery/door/airlock)) var/obj/machinery/door/airlock/D = A if (D.paintable) @@ -308,11 +330,11 @@ if (!D.paintable) return FALSE switch (select_airlock_region(D, user, "Where do you wish to pick the color from?")) - if (AIRLOCK_REGION_PAINT) + if (PAINT_REGION_PAINT) return D.door_color - if (AIRLOCK_REGION_STRIPE) + if (PAINT_REGION_STRIPE) return D.stripe_color - if (AIRLOCK_REGION_WINDOW) + if (PAINT_REGION_WINDOW) return D.window_color else return FALSE @@ -323,30 +345,80 @@ return FALSE switch (select_airlock_region(D, user, "What do you wish to paint?")) - if (AIRLOCK_REGION_PAINT) + if (PAINT_REGION_PAINT) D.paint_airlock(paint_color) - if (AIRLOCK_REGION_STRIPE) + if (PAINT_REGION_STRIPE) D.stripe_airlock(paint_color) - if (AIRLOCK_REGION_WINDOW) + if (PAINT_REGION_WINDOW) D.paint_window(paint_color) else return FALSE return TRUE -/obj/item/device/paint_sprayer/proc/select_airlock_region(obj/machinery/door/airlock/D, mob/user, input_text) +/obj/item/device/paint_sprayer/proc/select_airlock_region(obj/machinery/door/airlock/door, mob/user, input_text) var/choice var/list/choices = list() - if (D.paintable & AIRLOCK_PAINTABLE_MAIN) - choices |= AIRLOCK_REGION_PAINT - if (D.paintable & AIRLOCK_PAINTABLE_STRIPE) - choices |= AIRLOCK_REGION_STRIPE - if (D.paintable & AIRLOCK_PAINTABLE_WINDOW) - choices |= AIRLOCK_REGION_WINDOW + if (door.paintable & MATERIAL_PAINTABLE_MAIN) + choices |= PAINT_REGION_PAINT + if (door.paintable & MATERIAL_PAINTABLE_STRIPE) + choices |= PAINT_REGION_STRIPE + if (door.paintable & MATERIAL_PAINTABLE_WINDOW) + choices |= PAINT_REGION_WINDOW choice = input(user, input_text) as null|anything in sortList(choices) - if (user.incapacitated() || !D || !user.Adjacent(D)) + if (!user.use_sanity_check(door, src)) return FALSE return choice +/obj/item/device/paint_sprayer/proc/paint_wall(turf/simulated/wall/wall, mob/user) + if(istype(wall) && (!wall.material?.wall_flags)) + to_chat(user, SPAN_WARNING("You can't paint this wall type.")) + return + if (!user.use_sanity_check(wall, src)) + return FALSE + if(istype(wall)) + if(wall_paint_region == PAINT_REGION_PAINT) + if(!(wall.material?.wall_flags & MATERIAL_PAINTABLE_MAIN)) + to_chat(user, SPAN_WARNING("You can't paint this wall type.")) + return FALSE + wall.paint_wall(paint_color) + return TRUE + else if(wall_paint_region == PAINT_REGION_STRIPE) + if(!(wall.material?.wall_flags & MATERIAL_PAINTABLE_STRIPE)) + to_chat(user, SPAN_WARNING("You can't stripe this wall type.")) + return FALSE + wall.stripe_wall(paint_color) + return TRUE + + +/obj/item/device/paint_sprayer/proc/pick_color_from_wall(turf/simulated/wall/wall, mob/user) + if (!wall.material || !wall.material.wall_flags) + return FALSE + + switch (select_wall_region(wall, user, "Where do you wish to select the color from?")) + if (PAINT_REGION_PAINT) + return wall.paint_color + if (PAINT_REGION_STRIPE) + return wall.stripe_color + else + return FALSE + +/obj/item/device/paint_sprayer/proc/select_wall_region(turf/simulated/wall/wall, mob/user, input_text) + var/list/choices = list() + if (wall.material.wall_flags & MATERIAL_PAINTABLE_MAIN) + choices |= PAINT_REGION_PAINT + if (wall.material.wall_flags & MATERIAL_PAINTABLE_STRIPE) + choices |= PAINT_REGION_STRIPE + var/choice = input(user, input_text) as null|anything in sortTim(choices, /proc/cmp_text_asc) + if (!user.use_sanity_check(wall, src)) + return FALSE + return choice + +/obj/item/device/paint_sprayer/proc/paint_wall_frame(obj/structure/wall_frame/wall_frame, mob/user) + if (!user.use_sanity_check(wall_frame, src)) + return FALSE + wall_frame.stripe_wall_frame(paint_color) + return TRUE + /obj/item/device/paint_sprayer/proc/change_color(new_color, mob/user) if (new_color) paint_color = new_color @@ -382,6 +454,14 @@ return change_color(new_color, user) +/obj/item/device/paint_sprayer/proc/choose_wall_paint_region(mob/user) + if(wall_paint_region == PAINT_REGION_STRIPE) + wall_paint_region = PAINT_REGION_PAINT + to_chat(user, SPAN_NOTICE("You set \the [src] to paint walls.")) + else + wall_paint_region = PAINT_REGION_STRIPE + to_chat(user, SPAN_NOTICE("You set \the [src] to stripe walls.")) + /obj/item/device/paint_sprayer/verb/choose_preset_color() set name = "Choose Preset Color" set desc = "Choose a preset color." @@ -409,9 +489,9 @@ return user.ClickOn(A, params) -#undef AIRLOCK_REGION_PAINT -#undef AIRLOCK_REGION_STRIPE -#undef AIRLOCK_REGION_WINDOW +#undef PAINT_REGION_PAINT +#undef PAINT_REGION_STRIPE +#undef PAINT_REGION_WINDOW #undef PLACEMENT_MODE_QUARTERS #undef PLACEMENT_MODE_TRIANGLES diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index 421c4481e3adb..16cf981efa826 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -31,7 +31,7 @@ var/panel_icon = 'icons/obj/doors/station/panel.dmi' var/fill_icon = 'icons/obj/doors/station/fill_steel.dmi' var/glass_icon = 'icons/obj/doors/station/fill_glass.dmi' - var/paintable = AIRLOCK_PAINTABLE_MAIN|AIRLOCK_PAINTABLE_STRIPE + var/paintable = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE var/door_color = "none" var/stripe_color = "none" var/symbol_color = "none" diff --git a/code/game/objects/structures/wall_frame.dm b/code/game/objects/structures/wall_frame.dm index 933c2cf87df21..dc4b09434d96b 100644 --- a/code/game/objects/structures/wall_frame.dm +++ b/code/game/objects/structures/wall_frame.dm @@ -139,24 +139,23 @@ ClearOverlays() var/image/I - var/new_color = (paint_color ? paint_color : material.icon_colour) - color = new_color + var/new_color = stripe_color ? stripe_color : material.icon_colour for(var/i = 1 to 4) if(other_connections[i] != "0") I = image('icons/obj/structures/wall_frame.dmi', "frame_other[connections[i]]", dir = SHIFTL(1, i - 1)) else I = image('icons/obj/structures/wall_frame.dmi', "frame[connections[i]]", dir = SHIFTL(1, i - 1)) + I.color = new_color AddOverlays(I) - if(stripe_color) - for(var/i = 1 to 4) - if(other_connections[i] != "0") - I = image('icons/obj/structures/wall_frame.dmi', "stripe_other[connections[i]]", dir = SHIFTL(1, i - 1)) - else - I = image('icons/obj/structures/wall_frame.dmi', "stripe[connections[i]]", dir = SHIFTL(1, i - 1)) - I.color = stripe_color - AddOverlays(I) +/obj/structure/wall_frame/proc/paint_wall_frame(new_paint_color) + paint_color = new_paint_color + update_icon() + +/obj/structure/wall_frame/proc/stripe_wall_frame(new_paint_color) + stripe_color = new_paint_color + update_icon() /obj/structure/wall_frame/hull/Initialize() . = ..() @@ -171,6 +170,7 @@ if(spacefacing) var/bleach_factor = rand(10,50) paint_color = adjust_brightness(paint_color, bleach_factor) + stripe_color = adjust_brightness(stripe_color, bleach_factor) update_icon() /obj/structure/wall_frame/on_death() @@ -190,6 +190,7 @@ //Subtypes /obj/structure/wall_frame/standard paint_color = COLOR_WALL_GUNMETAL + stripe_color = COLOR_GUNMETAL /obj/structure/wall_frame/titanium material = MATERIAL_TITANIUM @@ -200,9 +201,12 @@ /obj/structure/wall_frame/hull paint_color = COLOR_SOL + stripe_color = COLOR_SOL /obj/structure/wall_frame/hull/vox paint_color = COLOR_GREEN_GRAY + stripe_color = COLOR_GREEN_GRAY /obj/structure/wall_frame/hull/verne paint_color = COLOR_GUNMETAL + stripe_color = COLOR_GUNMETAL diff --git a/code/game/turfs/simulated/wall_icon.dm b/code/game/turfs/simulated/wall_icon.dm index c8e188b87c9fa..023258ca4b656 100644 --- a/code/game/turfs/simulated/wall_icon.dm +++ b/code/game/turfs/simulated/wall_icon.dm @@ -30,6 +30,13 @@ update_icon() calculate_damage_data() +/turf/simulated/wall/proc/paint_wall(new_paint_color) + paint_color = new_paint_color + update_icon() + +/turf/simulated/wall/proc/stripe_wall(new_paint_color) + stripe_color = new_paint_color + update_icon() /turf/simulated/wall/proc/set_material(material/newmaterial, material/newrmaterial) material = newmaterial @@ -60,9 +67,13 @@ I = image('icons/turf/wall_masks.dmi', "[material.wall_icon_base][wall_connections[i]]", dir = SHIFTL(1, i - 1)) I.color = base_color AddOverlays(I) - if(other_connections[i] != "0") - I = image('icons/turf/wall_masks.dmi', "[material.wall_icon_base]_other[wall_connections[i]]", dir = SHIFTL(1, i - 1)) - I.color = base_color + if(paint_color) + I = image('icons/turf/wall_masks.dmi', "[material.wall_icon_base]_paint[wall_connections[i]]", dir = SHIFTL(1, i-1)) + I.color = paint_color + AddOverlays(I) + if(stripe_color) + I = image('icons/turf/wall_masks.dmi', "[material.wall_icon_base]_stripe[wall_connections[i]]", dir = SHIFTL(1, i-1)) + I.color = stripe_color AddOverlays(I) if(reinf_material) @@ -82,17 +93,16 @@ I = image('icons/turf/wall_masks.dmi', material.wall_icon_reinf) I.color = reinf_color AddOverlays(I) + + if(material.wall_flags & MATERIAL_WALL_HAS_EDGES) + for(var/i = 1 to 4) + I = image('icons/turf/wall_masks.dmi', "[material.wall_icon_base]_other[other_connections[i]]", dir = SHIFTL(1, i-1)) + I.color = stripe_color ? stripe_color : base_color + AddOverlays(I) + var/image/texture = material.get_wall_texture() if(texture) AddOverlays(texture) - if(stripe_color) - for(var/i = 1 to 4) - if(other_connections[i] != "0") - I = image('icons/turf/wall_masks.dmi', "stripe_other[wall_connections[i]]", dir = SHIFTL(1, i - 1)) - else - I = image('icons/turf/wall_masks.dmi', "stripe[wall_connections[i]]", dir = SHIFTL(1, i - 1)) - I.color = stripe_color - AddOverlays(I) if(get_damage_value() != 0) var/overlay = round((get_damage_percentage() / 100) * length(damage_overlays)) + 1 @@ -117,47 +127,50 @@ var/list/wall_dirs = list() var/list/other_dirs = list() - for(var/turf/simulated/wall/W in orange(src, 1)) - switch(can_join_with(W)) - if(0) - continue - if(1) - wall_dirs += get_dir(src, W) - if(2) - wall_dirs += get_dir(src, W) - other_dirs += get_dir(src, W) - if(propagate) - W.update_connections() - W.update_icon() - - for(var/turf/T in orange(src, 1)) + for(var/stepdir in GLOB.alldirs) + var/turf/T = get_step(src, stepdir) + if(!T) + continue + if(istype(T, /turf/simulated/wall)) + switch(can_join_with(T)) + if(0) + continue + if(1) + wall_dirs += get_dir(src, T) + if(2) + wall_dirs += get_dir(src, T) + other_dirs += get_dir(src, T) + if(propagate) + var/turf/simulated/wall/W = T + W.update_connections() + W.update_icon() var/success = 0 - for(var/obj/O in T) - for(var/b_type in blend_objects) + for(var/O in T) + for(var/b_type in GLOB.wall_blend_objects) if(istype(O, b_type)) - success = 1 - for(var/nb_type in noblend_objects) - if(istype(O, nb_type)) - success = 0 - if(success) + success = TRUE + break + for(var/nb_type in GLOB.wall_noblend_objects) + if(istype(O, nb_type)) + success = FALSE break if(success) + wall_dirs += get_dir(src, T) + var/blendable = FALSE + for(var/fb_type in GLOB.wall_fullblend_objects) + if(istype(O, fb_type)) + blendable = TRUE + break + if(!blendable) + other_dirs += get_dir(src, T) break - - if(success) - wall_dirs += get_dir(src, T) - if(get_dir(src, T) in GLOB.cardinal) - other_dirs += get_dir(src, T) - - wall_connections = dirs_to_corner_states(wall_dirs) - other_connections = dirs_to_corner_states(other_dirs) + wall_connections = dirs_to_corner_states(wall_dirs) + other_connections = dirs_to_corner_states(other_dirs) /turf/simulated/wall/proc/can_join_with(turf/simulated/wall/W) - if(material && W.material && material.wall_icon_base == W.material.wall_icon_base) - if((reinf_material && W.reinf_material) || (!reinf_material && !W.reinf_material)) - return 1 - return 2 - for(var/wb_type in blend_turfs) - if(istype(W, wb_type)) + if(material && istype(W.material)) + if(material.wall_blend_icons[W.material.wall_icon_base]) return 2 + if(material.wall_icon_base == W.material.wall_icon_base) + return 1 return 0 diff --git a/code/game/turfs/simulated/wall_types.dm b/code/game/turfs/simulated/wall_types.dm index d1947c33ae25a..af025eeb39828 100644 --- a/code/game/turfs/simulated/wall_types.dm +++ b/code/game/turfs/simulated/wall_types.dm @@ -1,9 +1,4 @@ //Commonly used -/turf/simulated/wall/prepainted - paint_color = COLOR_GUNMETAL - -/turf/simulated/wall/r_wall/prepainted - paint_color = COLOR_GUNMETAL /turf/simulated/wall/r_wall icon_state = "r_generic" @@ -21,12 +16,16 @@ /turf/simulated/wall/prepainted paint_color = COLOR_WALL_GUNMETAL + stripe_color = COLOR_GUNMETAL + /turf/simulated/wall/r_wall/prepainted paint_color = COLOR_WALL_GUNMETAL + stripe_color = COLOR_GUNMETAL /turf/simulated/wall/r_wall/hull/Initialize() . = ..() paint_color = color + stripe_color = color color = null //color is just for mapping if(prob(40)) var/spacefacing = FALSE @@ -39,6 +38,7 @@ if(spacefacing) var/bleach_factor = rand(10,50) paint_color = adjust_brightness(paint_color, bleach_factor) + stripe_color = adjust_brightness(stripe_color, bleach_factor) update_icon() /turf/simulated/wall/titanium @@ -90,35 +90,30 @@ ..(newloc,MATERIAL_RUTILE) /turf/simulated/wall/wood - blend_turfs = list(/turf/simulated/wall/cult, /turf/simulated/wall) icon_state = "woodneric" /turf/simulated/wall/wood/New(newloc) ..(newloc,MATERIAL_WOOD) /turf/simulated/wall/mahogany - blend_turfs = list(/turf/simulated/wall/cult, /turf/simulated/wall) icon_state = "woodneric" /turf/simulated/wall/mahogany/New(newloc) ..(newloc,MATERIAL_MAHOGANY) /turf/simulated/wall/maple - blend_turfs = list(/turf/simulated/wall/cult, /turf/simulated/wall) icon_state = "woodneric" /turf/simulated/wall/maple/New(newloc) ..(newloc,MATERIAL_MAPLE) /turf/simulated/wall/ebony - blend_turfs = list(/turf/simulated/wall/cult, /turf/simulated/wall) icon_state = "woodneric" /turf/simulated/wall/ebony/New(newloc) ..(newloc,MATERIAL_EBONY) /turf/simulated/wall/walnut - blend_turfs = list(/turf/simulated/wall/cult, /turf/simulated/wall) icon_state = "woodneric" /turf/simulated/wall/walnut/New(newloc) @@ -155,7 +150,6 @@ /turf/simulated/wall/alium icon_state = "jaggy" floor_type = /turf/simulated/floor/fixed/alium - blend_objects = newlist() /turf/simulated/wall/alium/New(newloc) ..(newloc,MATERIAL_ALIENALLOY) @@ -163,7 +157,6 @@ //Cult wall /turf/simulated/wall/cult icon_state = "cult" - blend_turfs = list(/turf/simulated/wall) /turf/simulated/wall/cult/New(newloc, reinforce = 0) ..(newloc, MATERIAL_CULT, reinforce ? MATERIAL_REINFORCED_CULT : null) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index c9adce1661d20..4a0f40dc59f2d 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -26,9 +26,6 @@ var/paint_color var/stripe_color var/static/list/wall_stripe_cache = list() - var/list/blend_turfs = list(/turf/simulated/wall/cult, /turf/simulated/wall/wood, /turf/simulated/wall/walnut, /turf/simulated/wall/maple, /turf/simulated/wall/mahogany, /turf/simulated/wall/ebony) - var/list/blend_objects = list(/obj/machinery/door, /obj/structure/wall_frame, /obj/structure/grille, /obj/structure/window/reinforced/full, /obj/structure/window/reinforced/polarized/full, /obj/structure/window/shuttle, ,/obj/structure/window/boron_basic/full, /obj/structure/window/boron_reinforced/full) // Objects which to blend with - var/list/noblend_objects = list(/obj/machinery/door/window) //Objects to avoid blending with (such as children of listed blend objects.) /turf/simulated/wall/New(newloc, materialtype, rmaterialtype) ..(newloc) diff --git a/code/modules/materials/_materials.dm b/code/modules/materials/_materials.dm index 849bfcc203371..09f4eaf54aba3 100644 --- a/code/modules/materials/_materials.dm +++ b/code/modules/materials/_materials.dm @@ -16,6 +16,7 @@ stone metal solid + wood cult DOORS stone @@ -90,6 +91,10 @@ var/wall_icon_base = "metal" /// String. Icon overlay used for reinforced walls. var/wall_icon_reinf = "reinf_metal" + /// Bitflag. What icon layers to look for + var/wall_flags = MATERIAL_PAINTABLE_MAIN + /// Which wall icon types walls of this material type will consider blending with. Assoc list (icon string = TRUE/FALSE) + var/list/wall_blend_icons = list() /// String. Unpowered door base icon state. See header. var/door_icon_base = "metal" /// String. Table base icon state. diff --git a/code/modules/materials/definitions/materials_metal.dm b/code/modules/materials/definitions/materials_metal.dm index f7da50c3954e5..e7e31da62927e 100644 --- a/code/modules/materials/definitions/materials_metal.dm +++ b/code/modules/materials/definitions/materials_metal.dm @@ -7,6 +7,12 @@ radioactivity = 12 sheet_icon_base = "puck" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) door_icon_base = "stone" table_icon_base = "stone" wall_icon_reinf = "reinf_stone" @@ -121,6 +127,11 @@ brute_armor = 7 wall_icon_base = "solid" wall_icon_reinf = "reinf_over" + wall_flags = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE|MATERIAL_WALL_HAS_EDGES + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = COLOR_STEEL hitsound = 'sound/weapons/smash.ogg' chem_products = list( @@ -159,6 +170,11 @@ sheet_icon_base = "sheet-sheen" wall_icon_base = "solid" wall_icon_reinf = "reinf_over" + wall_flags = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE|MATERIAL_WALL_HAS_EDGES + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = "#cccdcc" hitsound = 'sound/weapons/smash.ogg' sale_price = 1 @@ -184,6 +200,11 @@ sheet_icon_base = "sheet-reinf" wall_icon_base = "solid" wall_icon_reinf = "reinf_over" + wall_flags = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE|MATERIAL_WALL_HAS_EDGES + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = "#a8a9b2" explosion_resistance = 7.5 brute_armor = 8 @@ -209,6 +230,11 @@ weight = 18 stack_type = /obj/item/stack/material/titanium wall_icon_base = "metal" + wall_flags = MATERIAL_PAINTABLE_MAIN + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) door_icon_base = "metal" icon_colour = "#d1e6e3" wall_icon_reinf = "reinf_metal" @@ -225,6 +251,11 @@ sheet_icon_base = "sheet-reinf" wall_icon_base = "solid" wall_icon_reinf = "reinf_over" + wall_flags = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE|MATERIAL_WALL_HAS_EDGES + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = "#9bc6f2" brute_armor = 4 burn_armor = 20 @@ -386,6 +417,11 @@ /material/aliumium/New() wall_icon_base = "metal" + wall_flags = MATERIAL_PAINTABLE_MAIN + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = rgb(rand(10,150),rand(10,150),rand(10,150)) explosion_resistance = rand(25,40) brute_armor = rand(10,20) diff --git a/code/modules/materials/definitions/materials_mineral.dm b/code/modules/materials/definitions/materials_mineral.dm index a2e7fad21e3b2..9cdf27d236e9f 100644 --- a/code/modules/materials/definitions/materials_mineral.dm +++ b/code/modules/materials/definitions/materials_mineral.dm @@ -18,6 +18,13 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE, + "brick" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -83,6 +90,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -104,6 +117,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" ore_compresses_to = MATERIAL_PYRITE @@ -126,6 +145,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -147,6 +172,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -168,6 +199,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -189,6 +226,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -210,6 +253,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" sale_price = 2 @@ -230,6 +279,12 @@ sheet_singular_name = "brick" sheet_plural_name = "bricks" wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" ore_smelts_to = MATERIAL_ALUMINIUM @@ -253,6 +308,12 @@ stack_type = /obj/item/stack/material/phoron ignition_point = PHORON_MINIMUM_BURN_TEMPERATURE wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" icon_colour = "#e37108" shard_type = SHARD_SHARD diff --git a/code/modules/materials/definitions/materials_organic.dm b/code/modules/materials/definitions/materials_organic.dm index 2a5b9e10bb590..0566a34ca24df 100644 --- a/code/modules/materials/definitions/materials_organic.dm +++ b/code/modules/materials/definitions/materials_organic.dm @@ -6,6 +6,10 @@ wall_icon_base = "solid" door_icon_base = "plastic" wall_icon_reinf = "reinf_over" + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = COLOR_WHITE hardness = MATERIAL_FLEXIBLE weight = 5 @@ -36,6 +40,11 @@ sheet_icon_base = "sheet-card" wall_icon_base = "solid" wall_icon_reinf = "reinf_over" + wall_flags = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE|MATERIAL_WALL_HAS_EDGES + wall_blend_icons = list( + "wood" = TRUE, + "stone" = TRUE + ) icon_colour = "#aaaaaa" hardness = MATERIAL_SOFT brute_armor = 1 @@ -314,6 +323,14 @@ display_name = "organic material" sheet_icon_base = "skin" wall_icon_base = "cult" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE, + "stone" = TRUE + ) + wall_flags = EMPTY_BITFIELD door_icon_base = "cult" table_icon_base = "cult" wall_icon_reinf = "reinf_cult" diff --git a/code/modules/materials/definitions/materials_other.dm b/code/modules/materials/definitions/materials_other.dm index f6a69a9e19679..4c9a3f138d7f2 100644 --- a/code/modules/materials/definitions/materials_other.dm +++ b/code/modules/materials/definitions/materials_other.dm @@ -12,6 +12,13 @@ name = MATERIAL_CULT display_name = "disturbing stone" wall_icon_base = "cult" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE, + "stone" = TRUE + ) icon_colour = "#402821" wall_icon_reinf = "reinf_cult" shard_type = SHARD_STONE_PIECE diff --git a/code/modules/materials/definitions/materials_stone.dm b/code/modules/materials/definitions/materials_stone.dm index 7ece6965b682e..f68441c16a832 100644 --- a/code/modules/materials/definitions/materials_stone.dm +++ b/code/modules/materials/definitions/materials_stone.dm @@ -40,6 +40,12 @@ lore_text = "A clastic sedimentary rock. The cost of boosting it to orbit is almost universally much higher than the actual value of the material." stack_type = /obj/item/stack/material/sandstone wall_icon_base = "stone" + wall_flags = EMPTY_BITFIELD + wall_blend_icons = list( + "solid" = TRUE, + "wood" = TRUE, + "metal" = TRUE + ) table_icon_base = "stone" wall_icon_reinf = "reinf_stone" icon_colour = "#d9c179" diff --git a/code/modules/materials/definitions/materials_wood.dm b/code/modules/materials/definitions/materials_wood.dm index 75e87ac0e9f06..00748eb3dc6f8 100644 --- a/code/modules/materials/definitions/materials_wood.dm +++ b/code/modules/materials/definitions/materials_wood.dm @@ -7,6 +7,12 @@ integrity = 75 sheet_icon_base = "sheet-wood" wall_icon_base = "wood" + wall_flags = MATERIAL_PAINTABLE_MAIN|MATERIAL_PAINTABLE_STRIPE|MATERIAL_WALL_HAS_EDGES + wall_blend_icons = list( + "solid" = TRUE, + "stone" = TRUE, + "metal" = TRUE + ) table_icon_base = "wood" explosion_resistance = 2 shard_type = SHARD_SPLINTER diff --git a/code/modules/turbolift/turbolift_door.dm b/code/modules/turbolift/turbolift_door.dm index 20b38c710bb99..c19b20dde6512 100644 --- a/code/modules/turbolift/turbolift_door.dm +++ b/code/modules/turbolift/turbolift_door.dm @@ -12,7 +12,7 @@ deny_file = 'icons/obj/doors/elevator/lights_deny.dmi' lights_file = 'icons/obj/doors/elevator/lights_green.dmi' - paintable = AIRLOCK_PAINTABLE_WINDOW + paintable = MATERIAL_PAINTABLE_WINDOW var/datum/turbolift/lift var/datum/turbolift_floor/floor diff --git a/html/changelogs/Cakey-prettywalls.yml b/html/changelogs/Cakey-prettywalls.yml new file mode 100644 index 0000000000000..d2e354bb5720f --- /dev/null +++ b/html/changelogs/Cakey-prettywalls.yml @@ -0,0 +1,39 @@ +################################ +# 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 +# admin +################################# + +# Your name. +author: Cakey + +# 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: + - rscadd: "Added wall paint layering system. You can now paint walls in two-tones using main and stripe layering via the paint tool." + - tweak: "Torch walls now have a two-tone of gunmetal and a slightly lighter gunmetal." + - imageadd: "Updated wall and wall frame sprites to be better contrasted." diff --git a/icons/obj/structures/wall_frame.dmi b/icons/obj/structures/wall_frame.dmi index 74df196d0b2eb0ba1bad11b06aaec9193e51458a..dbd03e631b2739388ab6873b7f165bf6c9650b1c 100644 GIT binary patch literal 3699 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 literal 3181 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%0D-M34c`NxtdSh`lH?rUM`}FO zfDP#=i+WzJCzb)W-13?8r$uD4S)d27{-^ffW5{sz@u?A5XGqGn;sk}Q7Nr;>NE-4k zaK$$j%RWu9dn0stD6F&Wmv!g=_9*DL`^zGIX8ooZj9r%!UxF)7c${&CL?Yd-XiWg4 zAhd;Auo^1e>?NNFumf7a+!b7|KYFIzv)F3PuhBwC8y*k&fj^M4AsmgJO@ftX5F`v^ zih+VMJGWJX!xyWD4UH?P3!LB~26qu}z862BkPpr)&fo;9%Uv2DJ$qai$^RKe)05$( ziXHIU`SnG+bhBxhuV1qi2YItEnpJR^kN#0$!P~*4xdRVAYrsoPfz|SRXFrS_GJPY* z2xl60WJt(Q*gx>j{IPc=`ntt~@$8l{M$mCzM=t*a5M_sHA%z9(u^KtMoeU0}xPaVh z;C}&m+BMJRNR^@T%WMdAVE;XhKh9#e2mY2id4X-Ine57)hyV8aM_BD zH4k|_sYC>wBb+AB&JB^^xNZk9Z1mINFkkxF>^UB0dNa~ZJwI&t#GWvAd~T1cq9PCo zyC0b-#}i4L%$l*4nwZE~*^EId(7VIvrCVEDTN)aaEWhZ%aa$MKG9mH`{FmW(GRmP& z3@M{Y7FPpr8;({}3#zk%o!@Ks4-R(RXFjmc1^D}0bPvU%qrtv~IBx8%QwU~J=yTs~ z4jU%Hn*&jeUwaC|9&%F`i+1w^AKYhXvJgnvU5*(!Y^!Z>pz)ztV!Q_DQ!)b}t$Ze0 zMzejJHGlRC_9@K}gTXdG7Z(6Lny!260L#fjgzS6~NhF^(c+MNivEjD3KQOe6GmC;0iCz590y0 z4rV-;Hk*k(=@QlqX{x~o;>RZ^aeb_?1x;}jAV7Yu4|{P*S&=m(>q)$Xbx_M?z4O1m zaGkxB1FQ^HC>dsgg6tn!#CPue?x!aNNAg{i;-f<*AbUbmYx!MRtuiVqG6I zOzTaxJVgWILymlI+_>RzInAriY&<>#k@0V_!lIH-<+m%AcO4yzw#e&KwXf5$W4{qN zaEm{k0c%Or9ImfKJNu`DIcm}ZqFkZ(tLustp$6U)Cw8gzu|6AZcs&2v*;#u3UvEQd znE+A$7c9GP60qrS%J52ZZo@iPyeTU2=3{^VtjjYqGjYp#!HfVm6t^Yz;R5Coi&oDc z7G#QbhmH);t{_3&ew*3*ZV+B45ArTuQv%;EorXIK6)3{i?(x@?tP>b-sd#IWNlQh< z!5rlXUR8epFv_`7xax)$k=7!itWh1Z$-K7bNkf~?Ec_iWUMqz#Q`a@PF*U4BTBLju zO;i7m^WyablEFUa}v`` zF(v8IInq!jwJo6SWV5+*d0}BeJ9T7hOB!$(|6Xoc?&Q3H|M-I_r{i&COo;b$k5(XSGd z=4Yhx}@Q8SBR48y_c+T;O?shRpH{*~$5fiVgX zG+>qbuR=)?h z!ifRI9=H?N-S^U2`FVNYTftv(QeNjL#3f>psT!%9lUirk_8l`tZgg|fI0TYjIQhkx zs!H=m@x|yepu+PuZ(GvH-g?`D5#!BV%wnx;uqRkjI*i$}$|A$R*C_O&OBDOwwc&`!1aKp=C^I1`fR1NNKFo1>c8l^7aiO(P=lySpU6s39_rt1 zKX9CvS0e=O<26m#kXj@@`wbWkc6F-vj^U_`q|;Y_TMzLGOX0s)aCC=H>Lu-)+S(LE zX_d-HJ%SvT`da&1O%ex1*8o^+&(?ACCOmA5!RhI}SNWOl8EE*#b}j_i=@qtE3YRvM zOJdJ6To3uK{SXE#Sv*YxpJDnbKlaWgf4vM(Y{_O?Qwt$gWiAG~R)lcwFy6zVPotzR zU=*B$QE#k<`^%3A!pU-<{3_e%*5?vFwgx{Ztah9o&fAkVnHpwk01`oyY>LM<2^V+( zw#@-f!S?yT+mNsY#zo04v}d*9Se6iwXg6n(jyCL{^LL0+&Y zQ5CYOwe;OXARoJ6w>yDUaw(Vk66nJz=a=k-JZ+Nz#l3K?&_OCB02M zujGW5A<@wwI(%Bj=JIqeBJar`ZlL`x;O9%kpY9l{G5)L_(y;bA-)NXm%=T}S`#LS7e$rS$A}C{?LPY(Hhck1+QYj@SXD0LE>eJ|t0_2$n z&x!ZTiK?5!5@u_vf5Y~g)za`ZJB!IXCh0*esPoHjFwpwWw$wzXE8m%t0{`NjBf6R$ zcF=nNjZ$2b02!t=M)TfNQmyhuCu-51K0U@ND^cRX{0hPkVNVZ+>!>`wS~~9(9XMGetj<*!f2!{_Z{d95bF4(T5Hwu)Nu8Vti$~GT z4i=|&(kkyf@=1Gzit1CTnzOs26GlkKM4pryr#7=fm=V3 zVIh;(`_21n$?MBH;llZO%h_e?4Ix*84?)|WDfM8b(Q^#&&nvPnv3?6&Z*OmRE8{8Q zjZkN?&X4UK1k-dKuTXsj@o}!bz=*f|y}yXRmcQge>OxdK7ScgYFTiH&=k-*_H&T1k zUH#MPMeG~qe1LH)}%YFGf$qFkciIni}kx*yuIybRW{?irFqG7^0 z`mHs3*bKx7Zu>~+iQ;Wtk_S^Tic6;|nXn)HbUdk7(`u?p{ zIiUi@cff%h5B{+kDPO@2?iLi}=2_O3HxIOu2Eog3xxN>LmV1Jd+mYMxy5G$4Q%=x` zxkX46V@Ldi_O9gV+yILCZ;u_bC(Smr-WVvM-IPY2Y?in(Trm9=C`~`?DjDF9kvUkd z7XLLGGTwF6#kkhhxH-mtu0}MlunZycP9wy-JaaJJ>F78z7CDmsRv@kHMy&0^Z%#?B z%jX8l4F}4kO6@>48@Uw+Y;A+&^DM!gj>)p-Y=tlMMYjU%%t8^nK~c)OrG5)d-s^sJH?-wRl?#)&!s_O7q zjG>KMqfr}l?y>H$*}*q+(*|d1-6FBk zH?(XD3s$N;dm%DWH?b(-MV+$rUOh$ocuArig^D5zk-WPIQV{q44X+qUbrQGjoYN8RfPNQ3|)#omnb&m=T z8`rpaXtJ#ol}BRqZ1);@La zjHr++-)~qyztxpeT74Ni+N|A75c4@z_=|nun7mlqNzU{D_8$jzqzj8{8#jRB4ESr} zOgF-OdNc77Kue}2Uv1PF-P^5`-FjHt`F$vN{OULN9~HjW!)_SsNe#513!v%! zAUfYlDww@n5eSq|UOs@2CCI!R!PZ0>&XK#9dmm!&MhLuqsk(k3N~fH&kqLEn=zjRr zp;E%sVhkHEbX5#@sl@W@aB5Tv!G#eTMV}8Y4oPM~OOh%F)GqgU&e>-f`JYXkqyZ_b z10N#Yb+PKe0~rYqM?)zh?kZp#j&=iiN;5^}My2hRcb2pBoKB;A1Z;Y)6wHeaM5i)L zLzi}M%YJn<=h(cjz;b7KM4kgU+#e^;2ArTPDJ`JTMGeeghOwSxv~(&?r{+hf5^9EC z)MvIOLoC)yg@XJ%jflZ0T&pPV{&7En0eeWa#LagsPPMVwBUMm8AHla`+hCgJn01c4 zVUJr*Hfb>*j^X^I3N(h2vHJOs;n4i=s1!GPm~_ofeS~49V7XIFOzmbS@Tf<<{-c&+ zs2{t^W%e5aH#30uoHqsV1&{{TAQS$AGxJFQKEuN@*crD!|F-=2VcvY&^7H;e4lm#u zy)!zHd(KKvyUI`N!PIroP)kcEX{zXfumqdRPXG@|*1`MW?AU|2(i(8+qrt@qo{|K% zmkRjw!~D0m&cpKH81qlNkRZc70WOKrvPV&dg-&Hsb+0g|xFlsDi?|G21ALD#Z5em?ef5QU6$n2umW!;rC_nM`oow_DlKKmfDaRqQ?K2#3e6+0Xqb`- zZlCp0TmX`l{kT?-()8bE|7U+0)Q*+yVE~RX$;TkjCa*wxu=akcs8_(5*-XA*phcJb zdA570=3YN2;-kn8Afjrx0jFh!%!_-KZj8Ly71s$=(1v6mV@|e0+{@tn;m3krBX?cO ztMujYq#sR_#3yc6Lh~$CO3-KWAA3}rGwML;mDWsN%z@9aQ*|x9kW9qRP`=ZT7n4bLfwf@rYAPP%I5#HZ2hyaaA&#& zBCZqE?WYOjkWhj=jL(#dJR_801FI$)jLsT;9}QNf=oU=HDlO#KI)iJY>fS?QOlwK@ zJjoYn^j+QVh{=R-Ym$`-p+yD{KbyGq5g9PAM4xgMSABIWa7$*Vg1)2NOjAwUjco$^ zj)s(W`B2f`XElHP*^R-#xX`69jOUpCc|Te3U}G+h>%VB_FhAnU7m)-@*f`D%jl7<+ zz|nYBxfbzS>P1=%j!n|&srW;_U@HIN`qRI;HUAj-#HaO0TK%Z(^6o7B$jG{T*mnOf z`X94|Y3XQLzac7FsIuP*f$o-82mfJWZx-PWWH^IDLdFKM8s&j^CI2rHVCncmT!X~F z-4o_JjzL?V2QD`dscU=tqp2Ic0eX|0&BT~+7Ukx>^dg;rsfPJC$6Si8DkVyLcbG>U z(n*wk9{?l$)<(;w4xw&2towP7WULi^Q1d0yjkEBU^POyvyV-t=$Zj#z&o>`okD-qaT~Phm%f4aDGmvtrzbA7Zv!3||91xAt|WXw$W6H6ioLxn^YR$v1D_6t1%%*neXC)v@krN~cwFW{JijF>5o$!B7%Fl0N2DaxuP;BbjWGA>PDW=jM|j2Z)NvO--{ zyuzYm2&_BwO^Q`~=t)f=X4}!&MSm$Qnj!g%i$t9z=flbEogAw_jv<2gi}`j^M*UkQ zs^f0+im^=pKV$!NrqO7fX{Uzw(e>Z&hYtpg5nO6AH1GWAgT&ShN5lDgEYqZ}0xD z#oqfba<8y9A(2yDAv@YjMJ_I`NjMP@X_Uxg-Ii}zLce^=%$h{3;QD9#B0OcO_zA&< z8ne7HA%xUuEbwAAW_U_9uJj5WSLcd7_@V6EUZL-NhP}S2Q$`XKFH4ID;ZSiI?54fk zrahU!U_d4!n}&SmPVgr|PsaTu+0z;ayZk-)!Hz*Nmj%jy=-(y+AlpISghMv3KV-9d z1?Tnpzmy#E`@+Zf6OJFv{wWNU^qp>`7AjepRPxp;OZq1D5wimA;a7sJh1)v;qo!wd z#84=o#|1(nA%oYrat;984yUJ|=O05lamHo**C7PAi?g;i@&{-O)hP{8Lz@RQgBmlE z1ryJsuxbCufPOw0?1zh=bqP=tby+GBVlqD;=(zW_Oqj{?FuC7KXSm-6-SQ|N(e$)h z4XWv;H6ki-0}cW>A1qu`m7Zs%mqJf9JPlxQH^o~Gbkpc#p(BdR8s~5FAX$-sh#NI) zi4wJZcNH9Y3&0@4M~bbb!0KwDn_S0o!)M@tm?0dzlx>ElpSZw$GWd7}r*@B&sv3y! z5Oy3nP#>-d$H8OQfRHb>w|->jMv$J!o(HWgSO&;8YNliq^4dUU%CvW0wB6^O;rx$l z1Sio0LZohNuzb2|C8aBDpFKX7nE||32UlnUc6X@@7Or0GRr>`OzDEP*M+{&-$D$#- zCZK%IIb5Vr;Yt#_7BgOdVm3n`{Q|s>@7HW2!a6?f1~e~p2%%Zfu&Ou`G4FXgO2Zbl z2s9rI(*cckLWNIn4bNTaW<9AFIXQ_JB&0=2Th!EVLhv|5fpasgJiQqXT?*0}NOlh? zimFUUzk;;CDCK5F4)SIZ3AynNP3s{4?D|Ydu(lrG&#+3jS4QmPna2vF-3?b+xLIU2 zkx8`k-5p5pUZ!f5{ znYO1v9&ooTITcJr$MhIm3{kCK%}~f$X|9Dn0P|rOr_1(jP$_06%IQlKFzUdR3=)Q! zHEz$q+`{6*6gvindV{T=|g6ENp`_z>M30qtB(T?L+dZot~zrj3;Y;ndXuxm7rUv)OA z(=6MedQagdD-7wnvC3ji%J20m@DX*@jdXH7fB1-;4pNs7C`QVnIFFgQ{}m6O#T&r8 zxXFt&f#Km{t&r6h?|Ja4IJigWFemy63b=e);D)LQCvrYqyIb*56N#pN{VHQ{E~<;# z)z#(fiZ0(n=!S51rAXY0(dc9SKF^fhq!JMv?_sWPs7H9XNO`6$K6lx3#Jt5qq@0KF z42(?fjD=&qhp7VIeQt2TX^cTvJY)@b$JpLE`0ne|b(=MbI98?9Xl=DKzWP_aa^E=< z^3QM1o1TDD9%xval^>C`GGpKmZM?IaKrk6yZ7IxiBHMts{#{@8a{A#(XB}n z3lZrcel{|aVkXT=JAL57+r2<{Y>Qdg^22KHxy2Uid*Noith7GZ>G@|EunP)EX8O{X zbK?nxKCFGYEPc5vi_#inrp)Cw?L$D=JTnyLnJcp^nJ$Fh@n#)~ere8@dGUy$iMkub zvu=O=dhJ#MfO|NRxuCAQsoAwJW=z!z^{*a^#I}T`UI`b4VB*sqgmDvf-q7-%#SB+h zSAW-gzO4T)H3H&`Y{%g@J&gdh$|J1|Iyal05HcVCN`6c=$MeZB4b*JrXFJ1ajR`1jB3oAUGWeyg(F+<$2ieucsu zeJOe$&dbe$UlH@jX>+|{{8`yTICtn`sY2$_gdL}Q+hBH1Lk17*zGb>a2p0IT%b}Ls zqPH1p%ZA_M!)QEt2(ivkK*1j@(PJOQj^QJJzmD3ZiM73-xoKQ-8*iC}8=Sc%K9fV? z5H4Wi-^FJ_09Pu@GN1P&pA&^V)b1lH{p$J#v!-z%?U)4oRdv;9cxlWC`2!Iqp5qWl z7V}l90Irr@7j-Q2$Cavb_#U8{T=^KA=`8wt&en(>NlkHi-V|}-1LB>=J?;7|IOf-& z8bBd`I=#|*LGPm{bun`2Q(rz06;OmMf-X{b4pYj9!iHWx+XlYJ;5Iim&)A@`NyptV zuqC5mpj76G$Bfaoxodfm$d&jvSD4yT6wsr#>!fpcqE{&np7t}s-@o!MahLLXkZ1C^ zLdpA!B7;g4Zi(hNc!^pxu$=UZ8hSO;_M+J)A%IG?gr;Qu9Es4PKIaeQ9y{9KC-Rm0|};-H7}nPgCwAk?Ft^gzDLoasn^ZF>N$HIwUhPQ`4$7Hm)lk=wj7#wy)YO_ z-Lo<`-&LAWrSX6)(~-69BWAUa&N(z_{Q4AKeGmXaE2J diff --git a/icons/turf/wall_masks.dmi b/icons/turf/wall_masks.dmi index f60de15fd869c5b3ad9c21345cbe02e3c756df0a..e0cc514c37f350c13481fcc0ed3ab2321ad61021 100644 GIT binary patch literal 57500 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�Ko?c~-#ww4(bhaS>~` ziIogac4gK{KOEr=wQhx;^wMIy`)3dGUl#R714K_Ubf;Ks+RWa1^1g%-e2hw9^)vdo zeSXDXfBi)Yl@BKw-@M6=efkcIKAnh-tgOV_jLJd_?mG5icX&j^TeHBUcWvAT^%yRsf`h}MSFc`mj5?=X{VoCIqYFF>@D*0z`9|pV;3B`=Az+ zaShDgatJaZ4#bxtWBgeh)mTpo(F5AJR_J5{rT7!***gyxQ`UOK2Q*=y=o{i$Dm=hF zLz=rRwNcQ>h&8YR!FOS?(di6SYHDa0BQ7C-6RWMJMyX-3Rqhg4qU#E2ATuEUQmO8)^P?4c zWSVqr{T^b2DN^vFzzr0K?uw2CFBQbD5SuGfN00g=(jRH?@nOPFN&+w@9kbprRh#R^ z816~YvpMJQ7j>HdFj3iF5_@b5;th%zBGM394MEcE=FOIm1SUsRGr?hDM7c2YIfi-% z7lQi+$@6Xh_=l)86d}Z}=^r<-vtxnb+t?{q5@iIxi?#TojmV5^|B0XP5v8!-h-lI{ z7^1xcEa)A0R#z`IBeAoxvLYyia1%l@IM?*9tE;J5BOo9^JTH725+iCIL>Q#TDhecF}7f$d?FEcr@VJ10JL!k|>x&=&}otd31DiO4_MY zhfAx-s0Di48-cgs>7o|EO%cxu1+`A@RnDUMu`|eFJYXB61aL1lGL+!b(LH2~3xFR~ z=~6wAe5DndSnI{m^UqD1!+vUJtXdf1jHn@rVCx~}pYr;3%g1#(d@RRMaBgN}>#e}# z4gV5f1InujLN?w2N{cc7AXHC1A*;2Mbv@y?cIWFFx+hs#2M2S`Dl4;(<^PF2sy=7J zgr26PtRv?2ekgQs^|0bI#ybEby!@4BBFk09q+H>mnPvFUrff?#JO)INYuK8E@EQZl zeW*6EBazI{X=-}nBk+jf84!m6fJ-3){Jwo>b@GX90&U}9j=!JZma+URgMNSdGB(Oj z6|&Fm+smK@i38mg+XPyMJwihAC{_{VSblwo&qdYfjEuEu6GG#1EOCGU8!ueA@cUuR zyqx=YaMeT)9N-NUOExMtG)$3x2qT%K)+uhnX1^@(AsMGKi?)^K0X6$jwqr$+u96Wdj*Z? zNQAj0SKzi5I^S~BJ$v)-Eayf~?V|nAxIwF>)Pch;|)2O)3H7Llt2b zw@zTpUR3hbuR~%1g9Y3)?H)CK^`KL#&rkk(zhu0~etCN0URFf` zeaXOpz&dVezu{qPLNAzS-@guY+H8Jzm1wD3;I6|o3WgT}z=qc>D&-qCD@RLtW8GL; zSv|?lX7vpCdt^GS*Ui6SD+HSa{yi2hyWIo90M1Pth&6+cQ`OdHEN)Lds#~b9rLCQw zlXEvYdEYSqUtQxRZ6_oe8XM_kT{4UiHKL1s)@Ea;fqtBwr=+0i^>j`5l z!s&HtN^HpQBBl@wvaOb}n35CK9%ww!BmdSWPioIl>c|1+`@QYTD1o$@z;cbp7LbE| z&xmT3N565R)#F)iZf?i45%krmMYFG_bRFjj+;uYz0;Oxfif_vtIC$`xo9n`?!^_d? z=c&b}udz4DE}Sbe|Uo*ERO2 zOz{@SV3RvZb{1iH0v0i35cV*AM?>(bt+mz}{9WSHva;@Ag;%7^2uJ? zBI@iQp}g9&N#GUL=MXp;pu6c+*YrbG*3{g5OhG}RrGNLXU0H$U<&C)AtU5%%rp;zz zvpRBCvob|6;=J50gZ&NCY&W=-Ipr@hV6(IuIKaNy`LOR)_`2MkvdxLCvLYLgaG*XA zKp|Dl6{9XfEA*zQpc#bTv^{K2_9m6S$tfkcg<3@P4FnB}1W!KtropWcYIo=NN7JV{ z1b7#l~w$Ab$)2o?jH-%OcCg>$1F z^9BYd;asR^Qy4NuK`uBhI6}1KIk~yjn=isu3q^Hjcrt{o!9P8sWXN2gv7$|GorauB z44vXL1J`B)ZORX`eEWXomXkU;GDV~;nS%u@TY0n&Fpo~P97W;Tn%Y`Z2Zyf>&Sl*yX6aj& z-6El7zu$1{^T>O{0P#X)^61z4`dip15KBXaaG}EIvfG~||9r4DK^s>bKfJ1IGy1+3UZ)Q(P1N@yv=9FHr74P5 z1kD3t%F~Pt79x}peaz2<7-C1a&o<f*6(@+?#>WxLtG$~0%f(e>!PLI zP_{C?w7uzR;8Zj;g~Gde$9*|iK7`YH42{!n-@Q>*36& zu%bJNX9Pl&=Q#W*_>eJtu*PlShc_i=IRxiX=Q+s*x~HrjpN0!P_<$+@nG!{*#)5` z5@JdMe#s&u^vR>nhw#%Mi3GinnS})d$|=Ilb87p&|6`F5Zf?j?(CHNc{%_%`BQ~%M zZCpkHdWIZsbkvOQzyIRy`1te$0m*wj<)POX$WohK$x|1}cY!Wh|FFJs zV=J*pJ4^4OrlL0b$%(64HMcgQWBCCsVfjBeIT0 zYY2GKGp_4Eyea+lO9+|Iwx^PL=-00+t1nE7hVs^;_2&qA~PRU+;5{-9sYUcLX^~vj3JAj&mTW-|8Ec=2y!mGK}c%2)EL@) zKk-EHQi(uwd8D}_P%0b&eJeDIWf@zRG~rsII@qbrX~aI5|Bc_eEn)-W_Duk7ExXNezzJR zNn=qzV7rq>q*m3tsu@)w=do17+^DNiA;O;}j3v-{r~qXLYJrA^hP0xhl%xLr&=Zz{ zO@F>?`F%%)&&u)C(dE(QT3ac;wwJ zHk0^zo8w!(B{rHRYFFN3)RvzTuqj84fI{Z zqplP63N5F;8c}0VoRNQHIxb_H7Iqhqgb6V$6g zquXL|O~Am&h}dGErFRdw+1jegpPK6usjjlW-(x}z;~tNBAtiuNljU28CAZiwVRZo8 zdv(-zc|5~ET!127mAyUO+}w`>w@g;Kc{~@P(vo% z@2V1saF5-KSO1PEWdIDUm!2VE@(2JMgX)i5B#{FL;=X$`P6_q7kNO&28a(Giyzxqb ze_r>8m2-0|OdbU~V(R3?hP((iNHOJan>1AUsJsCvb|E7vmi^=d=6hLP zDQ|O`)ZzApT~21yumFmRhIKp=Ahtgwo)HYJwHueRHAe9-)OLLRw(}V3a`InXysiQK87d85Eo}iMJmPg5>u7i5* z?6yr@3e8`%%g+Lx+)kFGDh# z@Z%;;Ntj~$wbZ2~Ctv2(K*^5!|Na;8sJl*YeJk+A*K259aETmJ?VO&=cG$B>P+h8* zQ8EuRH2Hy4zuit0&dGxOp_~?5b|mUI|0xrR>IqGIo7O^l|x@JrN~i<+_SO1#(wboh*f`fYeL6OPFT;w z1ldgh6%D#Ce@qQP1B6__QXM+IS6RDX(z!S_H8wN={2LuKqOlWgHKGLi0-tpy0sH;# zYo-h>g+d#oYT~iaRr^3W)(saKqKqOv!SY60ZxA~pbTJZPxn){NSh)MI_0l4oUUre5gi>K;FN(o@WTmB-Xgto6jiMD)TRg??dS z5)m6o2HVLM@d=zrej;#GDrhY=b7*BqSwZn24Yqc_M8S+&k#JEUAOK>o;AV(M)Zc$C zZuU}Cn%#T;U)O8@{<{+wU9Np$-RyKoe*cz{+x>kFZ`wK0#gB^60_ef1kA;d5Yu<{S#raf@sq6umyqkH%iRSoF1GOn|KoSS^reySZJ`g z+_F?`RMMrj}9!#F8Bt$SHXj+YR&Iq~v5G{-Op$btI@483<3|S8b7e zMT{i!udK;@#NT z{?M?nYw32*kT7OMU;1f}JQ>-oL*)A^zRN z>Fs#;cN@C{ePrZx9v4cPdrH;_JAkiU^5NsKQuiv8; z+}#KNT#2wJ46Pj|C7;e0N5c(V6=M@O$PKj$)i%vzez~)dDl9Z5r`^) z7&)F>fTcPTWES`_>`ud4!phDl`^h@{rUNHMJcv`pYkSx#vb1DMr!mykb{TRIda1z# zzr+%>1(@PK_`nA!8vlWv4EkJ5j!n?k##AF=1pfKf;)Tcmjj&YYgRNNpI);WTNW?K7 zIqx$wG7$6viHZ}oiMZ>G2*e`kuV4F+XA{VuibfEm_MC|%CJ-W9vWCft;rzL=vA3O^ z$3Hgue;?LKGOd&OMNha25~*>hca8uuh;df?%=^P>d3jzqGlxbzGAaO44uV~iwN|g3 zdIG6z=AjH_BY~x(z9Hfei}!M@H8l;AV{lO2@84w2q=0xAD&j9JP$L$Lv3ocCk*cl9|jtd zk|Kn$d-b~V4SmJg;k35Ctog&QaGDJ|LJK7SO{}Ef6qth(^LO;^NRp1n2q3u|kH>ke zXBDBHAeys8qXhw6SkYKWDyhlE>m4FqJ>9>W&-Il@X{1Ymj$zDoQ&TxpRJ_<34B7nA zZ(|*!=8D61K(lQTcz`P~4)YCc4N}!q@tz8S3)L#S9)^Yti_N|k)s4wub)k-S3BJK~ z|781mL4=kJEoDM)u__u=9LMv3^SyKtF(rQgFL2L=?OI9OcLKbE6~Z$$eq!aJ0xCyi z^L&`c9WLAm6sEYh7o?#*yfMX;$HhTv|G_WdrA-=gI0e&BFE9x7x|`eD&`pJio&Al- zEm1VnwR$*x%#`V=PP>IeB#}ibD^IC9XbT8N%L9D7Fnf`p_hUW*kZpbEwY;7!k%Z`# z6#dove8ymE_!L1sAROjR4%YT(NwzPh?+DsWee#^*xiB|_3gINE_3ZnpdOu$z_6tn=@aIRahw4_A# z!-%TVP*<1l)DPizHK2MGeeDca8^{-wbpQIY$X0Z`_&NchVnar zW;|U&Gw7$}{{lDw@a(dSlqvg@AFkd(nFx%y8RQIOH#biFAg)+e)k!+pxO}CKX!>}U zWwGg?+!W_;wOWHVy7mJiBBYqQi$6>)F{41qhp~j1oYt1{cJ>mR%*&O0+XcQ$OtK3pXyR1gHO6CZM)jC{*ipQuw-Rt}wH z9#kgGm^)zs4FkmI?#dHW7LDydf9Pa=X|P)sna{MM9bJOz00>qTrCPMT{UD`np4`q7 zPKy`ZMPq0lw%OHwAbr8xt1?mXmq*C{Oq61%wU!GrmhCJMbDN? zDnA2v@bXmWIdCt!l(eXisc$$liMtPWzJEd#t$Mul$wVAg^en;S18|Cj#u#ZTG|uSL zuc+*;$!08vCveWFg*eC5^*NU#G+N$@s_|hOi~}|u<R#A7?iIq&bM+YkxzC{uQNx6t;P9;bmBH%D|c6P?P z8}>%klm}6#ww zeXA;BCO+GH)Uc9xwmiq+UEONCDM=*2eeoLE(&#Vn2Hftgs23*w*iO>1#Oj@D+P5X| zLOH{?>%#vQXA0%~a|^2h5|^8%$5NeG0&WlEhn5utEv^C&9?mpqC5=UNzR;A*RMV~- zZdri+-&>R(Ln6UF*^4(|qaI7Ig=P$+Z-9x7?R5PsRjyu5f$uasaL*6xPMkKZTD;1b zArc0Y>6w|>qEHyGj!UltpAs_!j%~%70G1)b7n1bLaDnh+XhU$%*TqjCdC*3Ope6XT zf26(GMwM@hrDFKYOtKw}1xVL=H7zwHxW#rYe%1h|&E z430KQRhrM3n4Y$b65$2c&iB=zT{Y|Hva+(GI*O~bwxhUj=fpf*+E3DwuJotv%)C3Le+>`sn^_>FZi%TyuL|A4kXj$Sd%szm`<(SY zDqKlB!1re$U$}JX)Z7ea>uTL$XN}0^_rFs?@>238W7dfuK5(6D-gedfFEjChi`ITY z9Q}1M6)3-8$MH!zHRkOO2_sOF>ZNzPEZ61s^*T!)jmlq6Q1^(x2PV0duc`&?PB+&^ zA02Gkx^i(QG1}9^2gSqZqG;LjEV6%R_*ZkY{5V^ zsDYw(c_2$V6qo+Y;hkM_@#ZKc$9GdN@}8CMar^f4+@56mzB`lCic)u@i5)Q%H{$Am zkHCF^9dW*Rda}_d_i!FhkB{n5=}VagOifxjq8>%IQ1+kr>ZY?~JUEtzVgoHr<+@V4 zZ}&d8YFLw(C_Q6&m?Ssv2xge>oDkD&jZs;&`mzg0@iWYS4e0~{|4a0;Fw3=m)E&z+ zVwUaJLo)DwUFk~l-ri8+{ram)bL+Qn!MfzxDdD?AGZqiOQzQRyt(fD7Oinj+Y?341 z-o1JwxpvUb5b|#*6jv4yaMSBTz{pdFngdOQ<2Uwt-m`fTurvd|S3hzCgsI)4EH)dW zL^?5zW{JD?bnU(IAkN~(bi$Weu1Cc5;4T(#W9WmxBgLm~*|Mc$Px$`>?F;nysnG4S zL()BUY4lxbf=Z7BUFB()?*z)0+Fhcoa~VisRv=m?-J|p#Fr#M)+upS&bZDmVpQ~c# zTvmvAzV#+Q#YP~C_4V~xb>26P^!0<8KNX4B_*8UnRybbXp}v6#ha5uVxAkRipXf7h zFi4N$WX=Dn6ZvPvAGRUR7*J50k(?GRUx_HkAkL&EaX8RDNMeaIWXBwEJLGPhk;c^} zUPAtIg||Kk4H>JK7Lrh@YFbyG+k~&mF%2BKfaf76^iEY|{F}t=SJ348W609O_GtYd z#O?s$oOu3hI5X_XRgMK+L&Nus+^+Yh@?j2oy8b?4uZ5gheQi^Xcy53@T?y!msLhfK z9Y3cZfv9)!qstNSi10PAMEt4r+^--BVbQZwk$>^RkaLNmq3;)GOtGEt9a_KES}WU+6Kf1%p(v0_wmn_fL68dMx5#Y&k+rH^mdMQF0U7`hN~*y zKZ#YwAdQk$2Tw}HhG(rV^K&p6IW z9;Kq<`9i2!rd{w~Rhzrf4z$g_L67LVM=TC49)GsU_`u9|KvQVv_^4h*X zU@9L>saDe(`K8eLy`dp=Y5@ujaWYkE}sS*@3}Kv3~vwXtCTsL&8;!05B^MG&$DeJj{Gq-24 zHx?!vhu436rZ0-q*Nn~0`G$2a2da}Pk9M@k*fXt-uMVSK?e-jRTiHOr3i!pGx#Jcz z?=XAYdb*xOXtcpqh#Vh`S2|teXf+!U9x`GXY&Yl8yuji9h7jq(xXN)0->TO3ExCO% z%&hQCdvM}9A8{BDe=ixdOL6@UXBR5E#Lc4Z^V^QB|EOc_P!Ase~ zl}Vp(=KxP*mR$M@7( zlVi|6I{zQFboQ4i8sXBrY${sT9b>Qg3i3Ro#{|EVqZEUxQ5#rS)&%S0vdU`VlSO7O zGrvvFw>8=#nT@DgFbf1JDI4A~Wa=w+YK@NWJR+Mx%oR}$l%Z)WV&)L-$^?xlXDriS z;;8$)&Y)|Qgu|<6)56yYW=WibmK~!KZRX?uYc|KAlpYw!khd~orE^ZcnW%X`c?TuH zmtvGRd|u&Kf8YG>NpI!wD{}pbO@~Y{l@M~aDlf>aVpszul2T^|k>9+DQ$CL^p&jg39xj5kMwhs$C} z6YcWr2>5L{42zdz9sPYWqmm4}_L}C=jUV7{R{!5lA|rW@ZyM6fjpyUTf8O@w5;RiW zt5sz4fp8UGMgp(mlOayWS=KZtp0-hoePLHH`r+hgIv|f{yw7Z~-E@YyqkK^^9ztPZ zVaMppEyYnxUsZ7MpQMRUA699|2`TEOphEPp($eit9ryO(}Lfo)#4{(xltd?$~0-BKvsNvGT#8p)Xg> z+X`-EKD);i^a!6K7w=44n6BP$ea<4(sbsk*lYIOKG1!nldsXAGk7HO&II~vKKoEKI z3V*dUbbn_rlV$TZ*GM6qGY8E=6I9c?+j$DHcR5KgvR6rRry_sm}y2jhAXk6ra91ZoS z4jf}Aj+gb{lD@!^J+UoLW28cVfFNCwnwP`f0+oJFmsQwRafGg39 zxxha#@QlyhQ)?rR+~21X84zdO2QzZXg8Q@{j*REaTb}AyXjRRHx)B!_e*XWi7dE`y zaey(S*ZZL@>V*LJ8-cCkF_9;rKaqbw zV)xa5wNA0e3-Y*XLKp8tJ|BgHSAlPwu_y5#mx@g#EP4kj&o2~NG&Am1?<+Evj@ef( z!LEQ>>1>{`jyuN!504~vt9XCoP!nU)$KX;#s<{08{1*X%L1u!DbL`0n^jwacZt^3W zXLOgZV$KK5uh+6^&{?YXu@V`FRq{OO1ty$vqH+MgzzbHRZCzl{bY()*bk3_kC{VX_Ai!@)QU1ppeNpk*)zX2ztD{inE)``vRFLMr#6Y$B)1J!3G1g z)LxmFCyH0R%Fl1kP*xF@qae|ouFXErCZu2a=Bi+0qdn(i_vN)!(}$`aFpC_Z?SA+{ z&G-5~x9?k$RhnyZaO{WzZcWmNUsF9wqTr9O+l+i?kK75(od<(dZu2zlYmaQ6Ku;SJraf4uI5LW*$hl{i2l%;{*MC?!Y z+pSHJuNF8|3ku}U;q35rhv3zK`wuM1A^w+vL-e;c`Y242onhydx{)9 z*h86ex=9s3>fQ`+{wfV8LqEIe;$jP?CZ=>CnbRDHcN#hX{dk9D_+1Mx?lwvpg zhYJ8vQjRj&);9gwY^DS61s*jOC#Svk*A&Js52~z((M={46hcu2M`6+ z5#Sa`iDuWYYe+g_tbvJQwL&Oc$^7)LJ{b#i-*hf|a^7M5QPYr(QuJvC1hiFo7fV#d0O37yi#yShSV1F9DPu9yN zZ69V!k5;VU5qh_uz#beOH)Eii=Ss=AQ~4!9rhU@sP?Wp0uVg#Uy8+SBZ0<3h);c^b z7K-rLZhO9OiqD-+HrRw}2{{HoRl_7URhOgr#pcH$ql6gfpQ_YrZ`75^=MuJ^hcLs% zaw545c4HtIqAw-%e7pA{*V#OK135K`#9vpc?l)6QGJQpIif;hq#)+u+lgBj!=BFbf zioX0QTAh9-=MCB@Y?ZIdeWU-iip~6MaZ;0FGvm7f=ZVL&26@+Z^q&eJ5-)u6k>lFe zU+zBqry?v#q-$$E7<;aeQ|S2DA+Oz`*z9{V);>*~a(A~lKR37W)5Q*Y*$b53J*B58 zj$w(ql-o(Ohu;N^*ZJ9%jn9ml4IfQ@6em3REu$3Nu~+a_1Mqlxb^QV1ZIhBU(f zj#T<^gwc@3xQ8q74B02%nJIiLsPJ!E4F=Sc%pW#WXU8l|s0V0&Q`d~QAEgMlw7;al zz-=J-sSP0qfud;Y`%yNh*09h}A0}BN_x!3o8by9~ngT}mHEHrqw$um{O{r%2OmrAY z4n;oxb(bPdANg!=UVBkpkDOM%0Kur%JVL8UOH5g+ ziRHWXb#y*TZzk&>=$Fu==o%TmEHe-u^_l~>Wcb&v{t`CfMh@o%$7KRZp6LUw@z*IW zWP;qps36uyz5&Yb-~1HeAB`nP_-W%Qbo5ivEV~=-_smL=kd9bcJ;K>F|Hb8Ht(7^D z6re!c^xg{Ju5Vie<;vwb+kL{q^v+Y&T4`h1A#-GJ=X>|=*}@gZ?eqFFPLbMMhZSfm zEsbr~&BJ;T`_ktWUu<>)0HQ4xKl>AhW;8>R7c}+h%jbpH_Z8>DGt<-6vO}Ymc6*y> zYr11u@}PR;@!nbOePUZj!-rkHV?@~#+|7Efi6^-k($Y0kd4s&-w}}o`hvOuG?HihM zeceD$y!!oheA)AeS2*i%24u~Ao3*kaG-7a#@Q@{;ZNjAXa`CGlCN3P9eyhqb-mXhL zcwOqnhxzLtRZ)!Kt$kLM?T$d`;(il;!J;7cs{FaGRDO?-da-B*wN|UoKq%2rFQ3^y zN7AB2&~Xwmo?YbFg6)Y)(aG9M|^CE8)cWfdHrC z!jtWY6^FJfzy0%L(KJjZF1HT8h@_oNru&>}mMS1wb?zm|58C?ztTcSjW;@$`$X*}* z7$gTUD&wc=RD;~Px3n!xMc24_lm$yCm{8dk5r#^#?PpnvTZy6@y(Cx2RfVkrA&H8V zSLH$eSJET=6&mQJCIX*2@!GOUZT200OdoxUkMCrBN{s}w!}~YwZO@8l6n8x&eQ9Id zLmVL3C-W1=pa-VufO)m#S06H#3ubL}3(?Mz%tI<=;ZfDgk?8zxGs0piTUH)6U@2>7 zLfwYJ@lm{uoI}PR%pbsQ-fL*TxcCdVBr*?sMA-1J+#>f6QIQ2J5Xd!@B*A2I(5g2?AX91wyFbr{l}}I$pneJs z{V9)MaHhZ1umte~z0DJwkZyZ~ETk0xuTPU35z(1*z_CbN(*&lO2SorD_zJDnXzd#etF zrTP$D7XaK4$MzH&TU%O|c64kf2GwTQ=e(zcr(AAn#4F|Js z>&JOFHn`ef)9b+Pe5`hs8ye)#GFNug6U=w9R}eKIhx(2dD*T2L8zrcO&V}L$3uADq7 z;P&0?=I5Bz0^bjP=`PQnjLagI$l5-cRmxQ~{m6_JHDMz>XGhQ&S*%*h75@p{5(wRK zDFpplJwch3GtPPaO~+fJxUZq|I|OkD_uuBkEZ+tU$m`V{iS^xlT_8mTQ~+9yTZzXv z%My*Q1NOI|2lEA#n^hO`n)&MgmQU9Rc74eCmH4loiatbmv1+x>5^Su{${2GSFASqv zVtPOJ+33#Cml8a$uIMZG2Orvw#Ux5wbxoPN`T}B9*>u#1YsGIAc!w?3V-@oSQ^U@? zAE^>iEBfC1N~>slBGo^wd;UNi$EerzYapD&8OJ|e`h3)B=ZLfG&QyKb==++k1J;g)d_to>c(jFiX08~Ez${gDv&w1BQIa2%7goUk`U~bvT2C*l#EVEUBt@E!9NL))W<+Wg<>K=iyE3!M;1j$uf?mE4Ab`zi z=WGZwDQ8bJ?HV2#A!cxjLaqBy*ra7<{so2gqm;V2>5(vg0W-y;Miv#RJiC+Wz&HlA z^(I!e6-V|8B}bARUmaWs&G zNb4>>rxr~Yjy#1vo0R3Y1-jJu|F%sjf4^mDqRJE4|5t1S(8Vsfe8pqmzS%c^VGKtR z!TIgWbGjFwaHQ=guX+B^A+%5Pa*i!cO{c2aira-J=ZoQ%KLFs};`_j^$3WT%UJeLi z(;C#o25QEQWa<5ZxjoEj@G>NQ6k5X&mx|SYX6@VhnueJ0!B;Knmtd!WyUq@8rpA9L z7!N+eD9Pfzr=AMTnWwuf?z862?Xnjy_7~l|h7JvDi(n#yr2~78A2`7Rm|Vkj<$N^s zI#A&byVSt~H9Y!q=PrSqVkN`G^$Vk+-{@9*9w$vX#%|_*d}Fv*Zh1{(JJ{Kn$pp7} z>tA1vDn^Mru(4HU8?Swu<_}jo;+qfHIT)L>b8<4Ikqxf)S@N=dh-g>;akNmrd@AgN z<>XVDwg-~NU6=O&<+!XO|6y9!ukFPYAM4hM$pr4Ndo*HR?YEQ0QI+a# z3hhqi*c~)rewJ>{y;6Ph$!P5zap$O`f7c35c7=5BJ(=Prj{X8J!Th2bpVAjH#}x~m zd&M!lvkUq}#~VA(luS7B@$g&}xWQ!lQYHP9%*n*?m;4zqv6?mNB@-3=l2oEMlOLPTxyjJpue|w&^K~^ZR?R(5xmb?`jw+bOpQZF}FXlNZ5$j zfw_A_rg@6B=$!8Jn%c0SJPjYC=la7j{?1H%Pue6{L}w34OQ)3Yk}#Rw&8{YKxJQOL zNY#+c^rSI;;WO6DM1^1>eNI8a8siZBkD~FN0fKC--C;Yl=PtfV zPCo0hsrX76)e3*>^5^xSB#CSZ=6L!D9)xmop3WAX2mG`0Xj_(|Mi zLhvz!XAbZ3)-Q_YR}FcDsPy4gc&AJ^E;2iBHT)_8-~`YoWJ@3 zTb&pGGjq74w2At&K#O~}J4Bjc6n;U3o^2|9hJ5p;#9;pc8aEeLj%3empc{m54LWEy zqm8_hU3r=yEyZ$yEXcfOMW%Zl&PT#uVGgXY4oDG?7#42uKvQr!KKH@b`e2AT;*RVtvaXQUSSM8M0dfMsjiN&dI_95BW?(OojnD=d1vm!fT&id-r zsx{hMWBs+Yv`D1Iv9?m;fgSd1!>{;?t-Hm1 z`zB+}TFa*xgzM_*eU=W(U$F=luUQ!(xu|p$N=hQNvphPA~9X>fEY9&w>));&HqD zKdB2u*Np6M|IJ-8#+Gl5=Pr)vy6wqcF$71*oeT4@F(9~V`3)rE)QLt36X1zluptP> z`$zdw0=$>N!i;T#e*hjiJ?Lt?Hrxetd~Yv1=Hl^!jJ|R&u+LnlnlD~HY_`#RIi3mV z)Pcxb*4{XD@BhwX7|A{xst8{FuQiV<0HS67+5XbbG|zgSic0BoFn`+K;GkAvjKBv9}K2d!pGjIopmj|I=u0!Cf2XB9d*#3k)YC*r;bYP{*YWo5w3N6`(uz0;r;Co%J6d%c%ud`D@uS?z=VP%)mkmKWetw& zvNcNjq)@V4c0CENa5EpL>V7IPId z0dbC6${G(Gpb%L{I`^EuFJ#9h%^UetdxLYYLmC5eH#9Jg$DCSGA4HlG>cSR+4^u+j zhf{nHn3gXiJvr(psMmkSlhGD|{VAOD@pbq}sE_t;KI3v9b|0rbOHCZ#?f1&r)L&#g zkUdp+u7Y?LeR5F%_)KI^gqch-#6OZ20nJJB#@Hl%tj(cY_Xz1V=f0+$$PK)e)Ved5g)iQ*KSfXt>+3<|i0JJosR_E&b-=(sSO{ z8e{$`hTOGG@?ll~GcPjwd4k*b<%>qc&wFH7rpSznrw@o#4Mfb->hlIn@nEi!Wq)!i z|EUdmA>VQ$8?3YLm0NB^H;NTb{P)Tp9P!`Fv5uF;Tf8swO9gT8A8;p}OeA*mbA5e~ zJvU#AuwH*+dO9=82f!D)M{$nk&%w?K>qo=-LKE;~$iN$n?$16eT z%Yx5PvNy6OhfQ5%%W~3*x$X7trrZY?4$7$}lw<;!9wmr__52?r&J02i4x~$LnS9@mL1mfQlfT|A5|5Zel>Bac z2MMRI@bjxrr5pV5qvJ=I@1J!Q%FKKC8)FT}g0wNmg5BXI3RWe{Y__pJ{e|ck2Ljyl z2}4ohwetsbYzlPfcVD7Rsh&pS%nqE4Gd4HOsTX!zcrb3uEizVssMx%tsmiiKZ{=WV zYZLVudqVU>9DUI;eI%eKd92l`ffT zj$5+DWKgoSMIj4**oVf6_s0p>rIev9UeB5lQr%#(#Xus|DNtdhP|Z5CyZ7Ch?6kHb zKX{ptaIyU)I{e(X_75r-a1Qt4W?3XgZV2N0Q;W%&ZzMLrPL@^w<1z7_NwE*?=L?!! zTrI&2by}nUU4x&#e_v~CBVdZ@t4HA>W2xQV-vXEDc#pjg8FP&CjB%wbwHQ1Z-u((C z@Rtmd07VL{E317@=H|M<`6WG6)J%-ZNt(Z-3E`Qy3;)C zjTwgmA@ijhqIrf;3sJ##RO4rLM(UmOawd}fWZfQJA04zrc2FF&j42-U90VqYivi!k^b3ZAq60Rg`fOVKm*y2Hf^pEn`lFiR19+&qgG`f{?9ygSvXyPLT1!YMQg)3k*|$+-EwW{cDN76{VGL%w z-t(&aexB#|KJV{%|9{7Q9CXh$*Y&-=%ej8e&$%mW=P77~O=(sViQXr$MQmrJ^BcB+ zW?tZrNpTwtD@#sJ?p0S@vbtY-3`MXMLh$JoJ_N0-gY@6=_zy3w%da`#V*6{hzG>W( zkwoN7k=5}2 ze`OKnAwY6KGh4Ci5xDk4wgwAUgr@s;xU4sCjGv!8s;JmRQPP;ex1@fIxgI~=X`epj z3Ns2b)jd^c8}SKizDrqjfVp-AsnzR^9KJPqJSBt{GPy^^4(j`$T5mlIB&nTl-8%pL z$EzJjq_y){KR2h~c=U+L^wSb=8Mm*bpn1eWnL4u$?9t@F7YT8eGasay&jVg;-)GSage`9qdTapOg_3`C zsDSxe=yC8WHub`}*LnLK(0KD|1BH%o_(K6W3tAup341haVa>Mh=Z`qg!65|T2!QS#5>+u?k%z=y_6H}5!X;>L z$G@0=+le{#Ba7bUS4VzxnU;NlE$Zg5S$ z`^&%M9jNs;%w=Hy5j&2;%I*Ur=iuJCxKg$sjX`o`s45S+BFypg?nT2g3cnBMUpOy5 z=Ehm4mZ;`A*P-zYdgp!G%U$DTbZ#!k-}JsvAGs0$uJE zl>n@e>fh9^yuK@!=J1aRBJ|7TVi|VN_Cq%{PW}8|LZ4EV5)XZDK1F@D;G`RbxCnF8RXrS`BzsEzZRt9`ji}ITxBOh3+P@88%H1XZG&jibI^7v1hfCUthn&U>C> za;#&8VpC7F;3v)ly}z!{`u>ph>sX=Qp2ek*wKW47Z&&{IBV5I6QPffLMb9F}Ypbq& zQm@Q=z>+*szR_U(_`UpW3-oaVUtb<7oLaVNpl*D{s!7mRT^XTw5+bu5)sQNLd?nno zfOX+Gyv?IKya#7moRvnwiN2@_T|efwA1knCQ$%xTA0-ZDwo-J?+2bb+4Lh(Qt|z8< z{S$(Li4vD9+3-=1#$sFL?M#?D9_wURpwe!EpOArTHU7FI_)Tzo;rPSjUdf8o_^nW& zWj6IJsGdy2PXB)zMvK?15^!~wTG2JupF-E;M5d=d^P(%(lV>l4Y-qMnZdFX2-6#0a zCEcD%4ETs$x#7>`nFLr@+_S{Q$51Q!h`@0e5@FY`Z~r?H#)MW^-=NxcE-=X(n%}a4 z(R6Zn|VQCB~iH1ztRqCH(QNeZA^J^?-a0mmjoTxh=E*zO0OVA>`cyrE; zp!+K4)DOHWTH$qrNF?eR0KGMEIuxH8oI)||D?#!g-5_KIO^b$Pzd@TSpnTX7(|%k6 zfpT!r-l)SNa}(Seln+GZF{mUsnsnPqdF^3Q7Dz^w#uP!J(u>V1P-K(~y4LNeXd;p! z*~R=28^mn;L8i_Ui4p<`nOs8g6pJ|lyetq;Rok+4>-XQ4J$@sCa$=GXcQ2;8o~SV( zFi##6)B>?SKU{hcRDa@ITZpjYg}pA@FnMuLq;ft|!7;RDSR8g|a|W zVKZ^M^3oS{!M>jGu7hY%A9jn{w;F{#niqw$Co%mYH=oB)rdli=(;mT|$*9s4i&?h+ z(XTmmTA|J@^O3 z25B&kQ-tgbQ=1PtZcQ`|-o+E63^_8lH`lj@`3X2<UDeRhQnUciFUxB(b4fJ zIpipB?S{PE+}5Wo;Vr?C)BrsKI~vs2GEhcYpmCOP{+RQQbmtlGy1=?TT%lV+Dce)mtsA*3Q+t;1Z{Hpz5&bS~ z-FS;_7=H}T)r~u7grCa60z8y}Z;TaMdyzL%4?MuG_J}wfyLs9sg=->Y?qis$L(sr`KRO!z!!YTS=@b4)i^E)n8ZxFuA1eh zv|RG~jS(y6TEgQ010qK9Y=uY?EnSP@znb3NI?SQ8W6XSOTk>Jt!!&V*U_P2M&9b@n}!7mu^H-w9> z9+OmMk8Sxxn*ZVSmUFfR%A%Op)D^|rApe>4WHtoii0#{M@4w+it6m$(d#|#ns8o)B z9{n(E(TQn#a8l*Bv!3SRG3fcY_G{gSoa}6I z1>hf7-7*RGQ!8n$a4OU3KpGT21MnwA7`WI#($s8R5>P5+o%v4zU@QU&awu0#s`1X# z1gbitJ4U`Nl>)UJcZ-OqJLvpX`NaR#A=O~XhcT4Y7ca{8?(hSXu+qMOp7i2{HgG1q zOZB_J1oI;sI#9FMCoNd(mEikl-{EQ!5&t&t`aec3H=J5k_ObU0F}jBW`a}5pN1x&t zZ&Th;YeHH;*< zq={&z{L*_jI#x>W%+Ta;10(=JB^t(^*&n=7TPCmeb6j~u&lep&7sSRD#VNN5#J`pM zoeh5e{fCp((}Zhh!aMlC<&Ssh*mI@v{2)ipfHg{PS(j!nSd zbJAC!4OZvdPrBdIn;1{<%;~n-vx5h^Z{lj6@c%0Ud|ZD*+OCuJK*2ho-Tfy+D#uIP-kH3 z9N~=op%p0H(sdlY$Mc#e7;5O|+Lh6O>DgH?Gy3Fp7%U)XzdVI`^Pv_knX zOGMqCt)UG&buM&3Ex+FEt&7b@nZ)^dCC1UYKoYQ|EsDrabwWGGa6qxPZ#(r`i4e#G zQlYqEk6ukO!gBpjZRxKPJYyIiU$ye#m5}LoCLY*2*;sxdbqrGS!ubWYvDsoe^eUD! zLjcML5Urt=HCgOhd)tRpsV{D58A}(XQ_GjZfNON~f#wCYBV;kefT%9N6sw~Xs@O-= z!BDwJZ;o#Tx}%JsXoyxhG2b#yuiYA41|-ubQ6M;fk`oCH^?u@Tpr8N=J&m7&XvB6O znQCToFthD)8Iw%nLW!kr=q+c%#!RRM>P3?_2Ji%PvRwTnzvZyXnZdftA65=a%Q^)+ zzVrS#`FL&fIr>;1vTi4kJ|t4!7Khd!9j^?cl~LX>xr&%rhNwefdmiTP#d7@Wsk1E@ zdIRQWa9xlLIG7h;&C`7@mHcdPMLp-tFZQ_utfu#-w+tS5+f!arlT4wWgV=c|0u9+T z+;}aY)h`r^N3DCoS0XT!qIEBRz3b^c+EyIAyctIt#MZ7>90~aL_-e+-+oud;C}Ycx zT*{um9Mg9l2o+MS(-4)ubZSL^kB*qgruIW}Z$59oS2X-)sOu4{mht?%TOVd;UeCaP z{)JQqHg?k2&j)Wg-`D@Mkbtv1@4mDG{GgVKS87KCm${Sy@w3a@M~vtb?tk=qs)t-H zBUWw%@yzk?=H^*1?7|D(w_LMu-Eo_n=l5i~<4bhw58wD!f7_;QaGPEtnOh?M z`2B|_xy^T9>@KnW>^giIAjjj@PTa&*inZU|z!7flTM#3?wjB9d=X3cWkYbI7%9k2t z5w5$X56MdOFhsSMk$5S~8ZJjN_V^ej!1SCQcK+5Xf@~T&?vtUjDV> z+RK{`B47%o->C3p=Iu%-{y5aVNrczlATmST#Xw(00kQ zi!OXQzzO1K@UGivfIsGu`Agm&QnTb);(ij6XK}kNjX9&ZK){TpGG%Yj33x1CTFe%A zB4Rt@$*UGjW*WWsX6#};b$FH#GxDF|pOZ%SG16j_K)Ys3mQl*pdnowcf0ESoiJwC+a*rjB-v1|iw< z!!_8pm)PER6BZ+8w?d!z>9OAp}HZ=R+692Un0u8jCv^s_Fd;$NjA z-|W}xBTu(flPRX+?l`O!pttM-a!F@o2{Q@gi5vZvw@t{DB`ixnjbPD;RcXWzM~EQ7 z{&f4w8<|e2VbDFg>7n~VA-NipHJ-}8MQ!~7d;QNXiT;oD-#^iax z&#jl7xfsyDCaWn?Jp91rz@Z?QP?u9Z9uCF~(a>4k38EP?OJm zkf>Djk~v?RQupv7a^j4XN#1s3a36C-G3t$c6z$1+wVm%TXkM|Vhc5IJzO0JFX3L4m zf9c-qfh=uExp%+TIBd?Y;Z)G(tgJo14hk8TJ{+}RdSDnNck0%|IS8X?AB2CZ%S?w8 zU$9+^d&w*p{?~Zz9(bk}XN>KU)PC~P{Y*3V$#L3c6{cSOcI$z#M9lX#(_Whih%!8y z^i$rYWR+}#)L2Ukriv}H-*AqQ0hu$@9DG6(T1PQ z>wHOqxR<}#rsq$+#un7zQ77iYfJp;zOs zE{I;bb!(8e<97SmMzkXX^eqv7lMY{5e#FHWpg2rl8!9OiWA*xq4Wc?ble*FiXv>j@ zaoqWEmS+V!3jb5Joq7TP6e8AYKD=AGeNXSkhMi-v( zC0l4fK2UbYC^9nz0$q5ev$HdR@O7}5OY!`w~~meQx%%rdT1Ut3bk2~=Lu<#K8NWjywI z(bQNU$1gG4qoJ#v+ZN`_#G0@+E~yXP@!gyew_noeN6e3Tt{nA<3VGEq8brGY8e7)M^-eVYlf7PsGxg$G*Nt8dBkda^{(q z$n45nPOB3A%x(n(l)QY=$~uc185CoVm^ZF+@tC3QCF(*JHd(JXjuz(L6t#Ev7@i+F zl<2--wC;fno>TXUzwMLr6Xs)liefv-Rn9~yN)BEt!>Mh{)E%-8Lb1k#k6lPuCZL0k2@90vgYxhgvN_bN3@%BOOSB8TJP8w)P zwv~Tq#Fm9&%lV|4<0k3;Wzj1ZD7ag2<$rRGKU zkDkafF+20O;_K(&YD4$ae0iBlN8gN(ZDFu>T`&1m%$!W45ELH_NS+JaEbz zVrgl)l%HW_hTt~qy~gs+3>z&EKQMp%_|Fl!e)@Ajmbz6=2WzPUbNq9*ScGnWaAM;| zfhsyFIt^LW=$n~J$BEyN|jnA-hiq#kJii2Ew}GyzC8t!HfKRpyRXtD*V{mi zJTGOp&>Te_JNZVM*|16@5T+EPg2Uz3bMN)HJvN9%K$9$j(OUiVSwByK#^F;Kpxl8R zmb|+9s3-PZh_sAM8$`O|mu?%Fh~o^6j8+1@y75|n-I!>3iQ6fWhxCP0g3D?ahVpbz zEAk+Ndzi0yC79!aO+jrZlZiK(n(bMu(XPS4c7W@uB~F3%C?Bg0Vc#NbNB@g)_P{yG z+Yz*{{B^`g>g=j$`yJ}#Q?(M)8hpn_PPlj8+Ea)M;)U^MHp?wLV(Pgry%sj;WaXO0 zE~~n=Z6e&!?#U(%M6DV{uZG$ik72eUA2Pf0Et3ZX!Nz8;q;9^!^A3aR)@4 z6fJyR1FBuWZ&k43^D#VUF`V&AriNe9Xavh@F$o6iZrz{=U1WP!WKRKD10ZsBr;fbz zXg|~<Tx#yJKPwCLF++Fpvj2XwYLB{~4#a9%)AeO1)H?=$> zgU1>ltVZwXMO1e0Xfdg^Gg@8;?HN5H!{!KhjQ6%%PoQr{M%_-cKjMoSo}*L`5a~yb zJ)oVt%FhFY1!xpCDDagU1`y@PO1_b|#rBxd_xpf5oldeOQ`uNpCZw0Ri-L`=Nx#<% zycMa+K?@ZPZh58H)&1h*83aDBKah0LLCp(M zP0~Mk=`NL3R2+hA=qRry_nTm*&rsZXA{H*G*#DM&4)u4^rXZCphLhxdhR~IR*gyW@ z3y7supZxQHygOI-`fL;E&xdcYJUBgLzP(4kD&mDz$a}J+iw5q*%;{UN!f`vAQ8 zOWi1O2Y-`HtiX!6wU+3Shyc$^{f#7S(C#4Br*GgUCt~0ky=KMGSf_w%gzBV~87rf( zK4yQOX)@FDPMIV77I=`>g}+!$A1o(}lu};_vf|7nvv3zPk26F|wnkouk6-ErJ65d& zYNTz#GgRZ1NM0=URdG>~Llx(jE*cfsDdjO3S#Vu!S2%=s!|$eUIt<1 z&1Z7n&W@60G=tkC_7zCMpx(Z9ZZ0n@Y~{D1xT6rt;lIwJZ=B)yfwwV7^R#VI#np5N z>W4(FbNBW|&CnnfJ#XaH_=W2tkJ6&NCWOI~6jo1F7t+XV#u| z@Sazrj5Nqbn8Vat_Kv;0npt~&IcMgNy*8_Z0|P$jZUqrIyi>$^L9TBFYAl6&wv2z>0G~%R-CUPtq)NsDK>mfuvkWbR1gGAt zxKYG~{czil9|xs=54tGt`JLlY>Gqta+Z(_IqiQ8G_%Cj&=7Jj(B`t6l6%j9LsjqBa zfVt__+1$7O*>dypR9-=WV2%P@@;HibpM#5jk~*~%+NXWGYzk`1z(P76j;FKYb6DkX z25L4oHpgtFs@e1JPq=RTm0gYAe8zgUcQv&zaWM7&00Nx-gq)HvVFEJZ3_zrXiX zsk~TK?!;*%U);)N{~75am_Zia@CAvm2z9DL)af#=arH~@F!^#}n67Re?r0%p`NRnH z8a4-mby?6kt_=uRRI^BYBcL#elILXIT(ShEw+J5Kt1E>#{jWa0aBG*s!j9JFn)SVX_}SRB5u$Azoh#R&aCmjNJwEW4GL62}Ijol&F#AOsZHbytF$d6u)>I}r z+hmNtrK{f_I}$vbU#{o%~2jBgV<{<)t5 z*|YE$JXtm}<)Z3=hoB(qDe%5uQ7N4U7$*skYHiSevBWC>{h6+Hay94)2SHi`)hcah z-0%^BIUKO^ljLvs*_YW*L@6jh{mTFlBp#9@St{ixv&HREqB^o5u*+H4hkB%j)dY2i=}h*HRSPvIFBLo#b@uVS9fC zg0Rm!xhuViv0-6!pp)4gNQZn|IOg5~y*ePTtP3QniTKh`viid`VED*{p_j?p)f@t7 zzE+y1L<_%t;NBU9w=ae^vgpNxu(CM30cypU`8#AMQ<=n6%?WcciY)LJjF#!e6{QAK zTTd6KU8AKg0ZHqveYTF}0r#LmBRLh|0JqW|8U8Rcniu^_aQ*HKWweQV=kSTA>de*g zj~zT2fvWLCU6`!Qe9=v?8Fq4>uH%irx0b2*z8l0>)z*uX(756nexYf1Q|$Ksb{)k; zIGG`r?!?N*Ux&=E9vaS74xr@u;jzQ1aYaZ)FoTM1lzy?nefUOy8qwT}$beLJ`%fAeIsEXsog$(#6lXM>9u z3I4Ov9pT4v%nJJr`r#1J^ZHv7TCR0xiaSF7WDyb-1)6ifb@*zt7us}F0Z3NC2*uDfnDi-3 z=(ThaED+rsC5X3S&6&X1CG^+L&jDu`25WbvuxGP6Qlo|5%_=-B9L?E1(!XTdwd}Ey zBaH6KbB7OC`cvkT{H%={drA8@lyas$9D5W(+{XnC1?K!yfX{YqDHX}n-lHPYet}(6 z7KLcoiq2jetr_gV(ZPlCQ(J+IWhDuLrvfp(&tEGr5iPa!yBu8p%W}p{;558Ms0+$% zyTbnQur|8n=t1bEh@aIk-O|ABUR_ecdox82**Jh293JnsDBPEuroih>KMYx>C8s?K z2@j*s;+Z)55(e=iLX6&Si~^|TZj{uVf-**gg>7+T&**n;9z5v2#%w&LS%dG(`S`NU z5_;ejUYjznL;UO}agFUrz~f0SPV}wotu$IK2XrmJYD%}jlLkC%3yOxFQ=KA%b?P-W zq42ajcyS_pWi@7>&Jfz9vzD|$d0qEuk;%{lqIV_jrH{XAd!!%St8DDQLq2Tr?u2=r zep&IMRBpMqzt3O`+Dvg?#eT*{R$&B;_fFuM6d-l;Pj7r)JnaXzBSmMZ?_oUpJQf^o!IbUo2d4X!E|zD&-x>Lf2}Wk_vm ztqP1M-#>8Su8jS|oABGYT_^bW(;w>>kqIsnrw>^9@5mCr;;H=}q{`Z9d_B?8}#nTE5YYJnfh7+bn%H>c3x8Xj@Wv9NId zfRhm<-N7BI|CDOG$#|p?V~MvV&xYi3zl5F0%{`x7m|BXh!+zU$7RW8#Li6t=>a1z> zFnhi0p~cv)^Y^>V*8ERiObb+71KO>rkR&Zs_#Z%P{kl=X_(i9l-cRqIUs@8sWDG&y z)3Jf!jn)rFo7O8+l{wDXUeU9s+ONQ|a(p@Ekh|D-^-1pHvg=t1Si$!EKyG5yww;q# zEY%lJp||~TN4v6D*&#x|r8_E&0dm_emd|GxNd|)cPrHen)$ZxAoyO=Q6B{>9;srNx z1|%=;VwK`Vb#=YGXy7l6;nXwt^Zf-B`QG$TTYgq{5UZ7Kn!|7$?#MYG)5&_*w)Z_R zbG`T>jD0fO(+=4)mMknR-c`X2f4u|eBQULtg~2(qS7u(xd;2;%QcL{QoJbOr?H0fRctM(dMI5NGqZ ztg(*-CnKu1I#iUL?!ts=|9(%i9Xp?fh0h(dbB>k$Fu~i1stoMXb3%y{kj8XM6Cs|X zO+y=z(LjwR)gENY_&x2DP-tO?j@KEQ+}sK79d~Y%Q(nLDkE(^t!6eiTIs2wJph^zh z*Bj86NAKA^bIEvL%)gZ1F)u&0AgN* z#-eMm2yX|3xw+9l{?^YgR#kLecFkA(`-c7K0(gQcQ2Cd5lzttsW*mm52_17=V!;?l z=xyo$V+7>c39{_ihhFOle(Fz}GDv7$a*bTR1@0KMX9v}mRGXEyqbj4-^6lUgFdmwi z|3ejDH+#mtS38bn&n|Q|guLP0r+0F&SjNvRR}obN6u`83ZSEwvT-AjWPEL&|z!th5 zNi4uSYkA=9nmuxxyKFr^BgWCgqe$%xA##>sPhORvBC1Nml6}3d326+bdHu_(M1p?5-xbD|G9n5|KaWL{r00+ZkV`4 zYT8M^>@Q`Xc?j=%AURbfb;gAQ!gNEuYts}de`KZVsZP2fqN8RqnL;tT=`R7?DVZXx9f6avdK?jlvIoi2)=1Kq~#;}kn zU7C)y>Bj}RMT-v4UQr!uaBpBDZ>N_l&Tj2WC16PZH=JVGm+wljh^T*`nyMw9Z+$ZgqhS*xT_c=Va z%Ksv=YnO9m7*JbgkGPbo1VhOfr(f&)@bK^g1~l?Cw7$3^YM5^!^;Mnq?g=^@%VSv> z;_>?)^{jr}NQwX}+eZiXE%I>VYo%5lf&0F?l-79AS^K#WSnbHam*d}4zYk>{?|@04kZj-&}Sd0RgY;rj|cfPtmsq5ba7fYy(4?M^LWcvLZUAsMh?fvcjq zZ`GJ)+e^KoRf_g(efY!(?)p%B--1_XvT~fGK?JVFJu&O2*pJz0?})&;p|lovT{>H9 zr4Z(!cKYY#&Xeg~aw?n_ulr}4IQhAi(H$l9)j$0wS;&Hg2w4A;RP`Xq$s0*4JL-=V ze8A%RT)?e42auBF0ekN>L^UZ2``iEi519b&Jg=t*CptSUN=MdhsLz4jMQLo*eC?$X z*;vZ(>4Lwj`&@kJ=q{8lrrmcMn&sNc(?9kOKIC2ywa>S3jfO{SX+lG}p1x}hLQ+v7 zta7jWTuQYXlUDuQv9}Kue7NgM+q_3$p98F6MxVVqP@|V$_vHH4za`K= z%X?u$NKS^GqaxC4k4l%wH7}CT)kiCaC85JMQCM|k{=(l|x47ARJxj$TG(gzN9RuBZ z1Pa21uX0t~8?WUdu~vk$Z#hu_Ei1m!d)b6ZtO?g^{L<9m9oKW8D5%)(EZ#rVP|DB} zr{d#WN#BQ<>m1>{JO&giuK>t z{8Oe@Ew*IJ!G({DF|SC)sEvtU=h^4*pwuegY*V5X;aR;QLj;eW{ud2zs!w}F?n@*5@6uhSAHC9X(TwLM7M^mYBYELpPjTMy@9~&!NA=Yn@x!OM zSVH!~(9}SLfe#B3@Apnb+pek@353)>IKqVHvsILF;A(J>8SxtJmQhza4C@GA4@nkK z=E$>=NjT2R!}8UaMj@Re+_RA6gOJS|ySJ(Coj@H!K3!iz^KfEB_A;~hY7uDlDK?9* ztCQ(-F?T6_W`;B0wR?A5X66AXI(mHht#i%qtHKfQbNARf;Bb)$2y>+vSonb^*^mZa zk8m`eK^b0z?w{F&Lm?WuW|C^<%D~$N{XZK0Yb%DE7?0(yo}b6QxHDr{LQ#@1Bt#Aj zBf8P6e*BvRl9i4g9e>zTx749(8~z2{r5lAj-(tbBKT{T7O#+i@uD|Wn7g}mUkqTcv z!=QCBQQH%e(qgQ4mu#xHi#enN3G)MW3Sib+nrVZ+&d#~>Rg-&Lnb@UIN_X>2j5K^C zU1-lAQxX+NkQPWyih%kL;S*8w=e>zQ9pPMm*pRQATi(3Nq(mg6)AVdm`%fI<9^*$x7lh+UHgPQOLExjfOsh4rQ<@A$0U&ux|g6Fox160yE+vDcalL;8g~a4r{!E z`R7Rdx8y)yXCeaxL?$Y6QOU)Fds$hAudVnZ0;XvY@FzpzuIB}8fM-797(HC>Q7#o9 z;kTp8YLnaL%LmCrI*hZ0++`b^;dq${FG2aFd)y?y?GV%Bn4tEsYz{(GzGl!*C~=&_ z3NMJd3()YXt5^QZcKDx$CIy}5dIJaz8m6cm5F1Mgkrpck-lmkIf@HM-#V@Wion7{) zYJE$s;$2FiF_u))++Fuce!X*ulpa;|Ll+KVVEI`WL{n!MIzjW-hh2Uv0aq2n(FEA} z=#249Dhc|}@G!>vQnQ0`<}HBygckQ&fP&HvaI|03;{Jl@cQbX4K-xAw?;c|yVl}#X z889JXEf7MPfM`_KZ0zoSN;&^fgF6|L4<~{t5FLa5$v!hy>;)tbSD{BohddQSSo}uCwJ^;;dxDJeCqr-GT0Y-*FRmPKEQU&aD&Xw;5gl4fX znA0WeZ6dL}ch!Y2IXkzumzgf{6f=jKWzXW9sp38RJUXHX+-Vo{A6kmoI^otU=BX_^+)91OlmBESx zuCTeeo8{v}gM)hJtfu53-z1k%Pz-_vo6dM1VLBGR^x%Uo2Ts`G0eF?ne5tDCo-A4W zx{vAluevFCB6Xke7$!jG13C)rbl?F%Mf0_0AD{xND=XJa?>gkoc>DS4F@fdl$+!hB z8q^ja@IU;i%=un?oaI_W7J;dxwqC*=d0v3&-phPDY4v+xKym9Q5*i$EF1~%T8`^P* zia`AvD2OPo$sc;l7~jgBNKstyCw{z3so>hpZucHeN%79bP`y~D5(6vsue*(3pmUM# zCxW0KvJYA|Zw`XwS%Tl_t!&g{W-f9{rx$ zC$Ow%%-ZzW1W%78{!+ZENF3ANON;D zhjHe>zh+l0VH{6RMb=W^JWVMule{hK50#PW=^Np^#VlKjH}<(G%eWEA4)6aj~?Zjz4%@`-LZrL$kdTO#If0BI~6~`FrsIh zlEG2xA@X5r6MrIU{Rklca%Z@B2f?>a2}VXtbImTe--NbM=g*(tb=@a~$u5i+!Y$-- z;lO*%!o}h)zuk3n?&Y~KgluC|`Y9`@4g!raH$1*pIGV3PK=?lJpLu@6yGvs{%I5Ix z6!Ox$_EIkABKv_Ot#1T7VW1%8+5qMm&tD~sHU(4$KnBre4_hPFzihwQtz!4oC8pdA z^4S9*vy8G*dd)x?QZU4`a;hKv<-D353SW16pLrmR)3Ct=o2#b4Tcd>cmDj)D`7XHi zi+F0F7|=$%SSbhZ*Sit(;KOY;jvEqJ0s@9#FXEx|S$4an4FStfx&?uQysfa~Ic)e| zVl|p&n_U9^X+RXJQAb~Fe?5b@4!PwFi^o zQ;S4CTJ5yM=tU5@8-r)8N+!Db4ys4Z>V*;)4ZMO7gP}NI<)7N=F~;U0Oiy~&c-sxS zBaP^f@Cz?+@jegd8h701aIj73(=tOTw~$+|UQq~7toR%(GnbB=9)2fra=0lsoz%0< z_KH7yllNLyWgT*m6i)lWTjqu%N^HDt{rSjX=Z=N~QGD%CD}~FkcBbDIv6)BGKwPy` zAYee_{}^4LC_^~bze33Ptq!Zraebdfd)x|kv+Q}6%PnC2=jqPTM9z$OP;Set4Oy56R|D1-wjrad>dTGfB=u^8!-!F~*9EKgk%y`z0YS6ZuVQWbd zLr7H)W1-x>kfLv*o|a^Hzw@6LMZ*#yUz0>`AF-`-E||yb{nqO(DMYWwXA(S~&C)zf zz8A8g7ttX_A@Pd|9SfTL>xi>w@5hUl+B4LDctjrWVQx5IC*w{NCt?fO$|8Te+M9uo zP~z7q_W_2Uos?1SjDtV>!RSQ>E!D5vxtMX6n#x^d+YudN{u#E~KVQk`s6 z4(9b=lFn9izL0Ao%kukCc;~yL2%tlq z5rZ2LMT+=H;U024v77CLe66;&n<(pPebHO`H?|GzY46`!_4lavJ6yMlm9SAHUSVe+ z@h^=g?fa&iJ-y)Jl=2{)NZESYjxJh|&MZqIav$oMeEx&Ve6G1}L-sN?WaKordWa6m ziF*d4YwYesZQ$QfIK7Zs#@xuC?QTH97B=Dzg%1=x3Q4kCUvvm}wknE!iy>I|xi9Qx z5{|xZb+}KuVmyO60YFU?K=Z5Mw8sgS1{Fdsb=Wc3J!rz_JOx-nwW(UcK@}F(7N$ zOtdn>%CQ6at~xirU$kxM;=j*$OvpQDFnw~%6x7z|iUOVcV<;goK?~^S>%{u7+sW#T zi8!MP5NS=Aki8hKXl&M=%Qyl>$P58(RDzw_oA)uT;EuqR@ReZE&61c|c`AvPH-t}R zUSW4boeyYY!s}WMnz+KfD{Bv0vjJ?*sW;RA(!ycCn57mJ6tqD}vN)6i%G>OlXf0h0 zt%YWZ51)QFS<}!9Jw3TXJNISs=(;ipD;Ywg`LI&kQmd_B%fdwK4PX2v0o@x-pe^co zCds5(-wDv3q@3nH^t81beWb zku@C6GzwkKM#kMNdspW_kQZE^5h*Ax@%7?uu>i=Q_RM1tuD;WIzi;$bT14$>JuO4c Jf|Cw+{vQac^KAeC literal 43381 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