From 0c6796d235da76bf0f8a37fbe878cd76913b05f6 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Sun, 30 Aug 2020 05:25:48 +0200 Subject: [PATCH] [MIRROR] Implements jungle generation and area map generator datums (#571) * Implements jungle generation and area map generator datums (#51082) * Implements jungle generation and area map generator datums Co-authored-by: Qustinnus --- code/__DEFINES/maps.dm | 16 ++++ code/controllers/subsystem/mapping.dm | 10 +- code/datums/mapgen/JungleGenerator.dm | 91 +++++++++++++++++++ code/datums/mapgen/_MapGenerator.dm | 6 ++ code/datums/mapgen/biomes/_biome.dm | 50 ++++++++++ code/game/area/areas.dm | 6 ++ code/game/turfs/open/floor/plating/dirt.dm | 21 ----- code/game/turfs/open/floor/plating/planet.dm | 59 ++++++++++++ code/game/turfs/open/water.dm | 3 + icons/turf/debug.dmi | Bin 0 -> 270 bytes icons/turf/floors.dmi | Bin 373006 -> 378691 bytes tgstation.dme | 5 +- 12 files changed, 244 insertions(+), 23 deletions(-) create mode 100644 code/datums/mapgen/JungleGenerator.dm create mode 100644 code/datums/mapgen/_MapGenerator.dm create mode 100644 code/datums/mapgen/biomes/_biome.dm delete mode 100644 code/game/turfs/open/floor/plating/dirt.dm create mode 100644 code/game/turfs/open/floor/plating/planet.dm create mode 100644 icons/turf/debug.dmi diff --git a/code/__DEFINES/maps.dm b/code/__DEFINES/maps.dm index 7204712058b..d45e5682a63 100644 --- a/code/__DEFINES/maps.dm +++ b/code/__DEFINES/maps.dm @@ -108,3 +108,19 @@ require only minor tweaks. #define PLACE_LAVA_RUIN "lavaland" //On lavaland ruin z levels(s) #define PLACE_BELOW "below" //On z levl below - centered on same tile #define PLACE_ISOLATED "isolated" //On isolated ruin z level + + +///Map generation defines +#define PERLIN_LAYER_HEIGHT "perlin_height" +#define PERLIN_LAYER_HUMIDITY "perlin_humidity" +#define PERLIN_LAYER_HEAT "perlin_heat" + +#define BIOME_LOW_HEAT "low_heat" +#define BIOME_LOWMEDIUM_HEAT "lowmedium_heat" +#define BIOME_HIGHMEDIUM_HEAT "highmedium_heat" +#define BIOME_HIGH_HEAT "high_heat" + +#define BIOME_LOW_HUMIDITY "low_humidity" +#define BIOME_LOWMEDIUM_HUMIDITY "lowmedium_humidity" +#define BIOME_HIGHMEDIUM_HUMIDITY "highmedium_humidity" +#define BIOME_HIGH_HUMIDITY "high_humidity" diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index 18f9de9a6d1..28ef539fb01 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -34,6 +34,9 @@ SUBSYSTEM_DEF(mapping) var/list/reservation_ready = list() var/clearing_reserved_turfs = FALSE + ///All possible biomes in assoc list as type || instance + var/list/biomes = list() + // Z-manager stuff var/station_start // should only be used for maploading-related tasks var/space_levels_so_far = 0 @@ -61,6 +64,7 @@ SUBSYSTEM_DEF(mapping) if(!config || config.defaulted) to_chat(world, "Unable to load next or default map config, defaulting to Meta Station") config = old_config + initialize_biomes() loadWorld() repopulate_sorted_areas() process_teleport_locs() //Sets up the wizard teleport locations @@ -551,7 +555,11 @@ GLOBAL_LIST_EMPTY(the_station_areas) used_turfs.Cut() reserve_turfs(clearing) - +///Initialize all biomes, assoc as type || instance +/datum/controller/subsystem/mapping/proc/initialize_biomes() + for(var/biome_path in subtypesof(/datum/biome)) + var/datum/biome/biome_instance = new biome_path() + biomes[biome_path] += biome_instance /datum/controller/subsystem/mapping/proc/reg_in_areas_in_z(list/areas) for(var/B in areas) diff --git a/code/datums/mapgen/JungleGenerator.dm b/code/datums/mapgen/JungleGenerator.dm new file mode 100644 index 00000000000..25348640ef7 --- /dev/null +++ b/code/datums/mapgen/JungleGenerator.dm @@ -0,0 +1,91 @@ +//the random offset applied to square coordinates, causes intermingling at biome borders +#define BIOME_RANDOM_SQUARE_DRIFT 2 + +/datum/map_generator/jungle_generator + ///2D list of all biomes based on heat and humidity combos. + var/list/possible_biomes = list( + BIOME_LOW_HEAT = list( + BIOME_LOW_HUMIDITY = /datum/biome/plains, + BIOME_LOWMEDIUM_HUMIDITY = /datum/biome/mudlands, + BIOME_HIGHMEDIUM_HUMIDITY = /datum/biome/mudlands, + BIOME_HIGH_HUMIDITY = /datum/biome/water + ), + BIOME_LOWMEDIUM_HEAT = list( + BIOME_LOW_HUMIDITY = /datum/biome/plains, + BIOME_LOWMEDIUM_HUMIDITY = /datum/biome/jungle, + BIOME_HIGHMEDIUM_HUMIDITY = /datum/biome/jungle, + BIOME_HIGH_HUMIDITY = /datum/biome/mudlands + ), + BIOME_HIGHMEDIUM_HEAT = list( + BIOME_LOW_HUMIDITY = /datum/biome/plains, + BIOME_LOWMEDIUM_HUMIDITY = /datum/biome/plains, + BIOME_HIGHMEDIUM_HUMIDITY = /datum/biome/jungle/deep, + BIOME_HIGH_HUMIDITY = /datum/biome/jungle + ), + BIOME_HIGH_HEAT = list( + BIOME_LOW_HUMIDITY = /datum/biome/wasteland, + BIOME_LOWMEDIUM_HUMIDITY = /datum/biome/plains, + BIOME_HIGHMEDIUM_HUMIDITY = /datum/biome/jungle, + BIOME_HIGH_HUMIDITY = /datum/biome/jungle/deep + ) + ) + ///Used to select "zoom" level into the perlin noise, higher numbers result in slower transitions + var/perlin_zoom = 65 + +///Seeds the rust-g perlin noise with a random number. +/datum/map_generator/jungle_generator/generate_terrain(var/list/turfs) + . = ..() + var/height_seed = rand(0, 50000) + var/humidity_seed = rand(0, 50000) + var/heat_seed = rand(0, 50000) + + for(var/t in turfs) //Go through all the turfs and generate them + var/turf/gen_turf = t + var/drift_x = (gen_turf.x + rand(-BIOME_RANDOM_SQUARE_DRIFT, BIOME_RANDOM_SQUARE_DRIFT)) / perlin_zoom + var/drift_y = (gen_turf.y + rand(-BIOME_RANDOM_SQUARE_DRIFT, BIOME_RANDOM_SQUARE_DRIFT)) / perlin_zoom + + var/height = text2num(rustg_noise_get_at_coordinates("[height_seed]", "[drift_x]", "[drift_y]")) + + + var/datum/biome/selected_biome + if(height <= 0.85) //If height is less than 0.85, we generate biomes based on the heat and humidity of the area. + var/humidity = text2num(rustg_noise_get_at_coordinates("[humidity_seed]", "[drift_x]", "[drift_y]")) + var/heat = text2num(rustg_noise_get_at_coordinates("[heat_seed]", "[drift_x]", "[drift_y]")) + var/heat_level //Type of heat zone we're in LOW-MEDIUM-HIGH + var/humidity_level //Type of humidity zone we're in LOW-MEDIUM-HIGH + + switch(heat) + if(0 to 0.25) + heat_level = BIOME_LOW_HEAT + if(0.25 to 0.5) + heat_level = BIOME_LOWMEDIUM_HEAT + if(0.5 to 0.75) + heat_level = BIOME_HIGHMEDIUM_HEAT + if(0.75 to 1) + heat_level = BIOME_HIGH_HEAT + switch(humidity) + if(0 to 0.25) + humidity_level = BIOME_LOW_HUMIDITY + if(0.25 to 0.5) + humidity_level = BIOME_LOWMEDIUM_HUMIDITY + if(0.5 to 0.75) + humidity_level = BIOME_HIGHMEDIUM_HUMIDITY + if(0.75 to 1) + humidity_level = BIOME_HIGH_HUMIDITY + selected_biome = possible_biomes[heat_level][humidity_level] + else //Over 0.85; It's a mountain + selected_biome = /datum/biome/mountain + selected_biome = SSmapping.biomes[selected_biome] //Get the instance of this biome from SSmapping + selected_biome.generate_turf(gen_turf) + CHECK_TICK + +/turf/open/genturf + name = "ungenerated turf" + desc = "If you see this, and you're not a ghost, yell at coders" + icon = 'icons/turf/debug.dmi' + icon_state = "genturf" + +/area/mine/planetgeneration + name = "planet generation area" + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + map_generator = /datum/map_generator/jungle_generator diff --git a/code/datums/mapgen/_MapGenerator.dm b/code/datums/mapgen/_MapGenerator.dm new file mode 100644 index 00000000000..aa4406bf789 --- /dev/null +++ b/code/datums/mapgen/_MapGenerator.dm @@ -0,0 +1,6 @@ +///This type is responsible for any map generation behavior that is done in areas, override this to allow for area-specific map generation. This generation is ran by areas in initialize. +/datum/map_generator + +///This proc will be ran by areas on Initialize, and provides the areas turfs as argument to allow for generation. +/datum/map_generator/proc/generate_terrain(var/list/turfs) + return diff --git a/code/datums/mapgen/biomes/_biome.dm b/code/datums/mapgen/biomes/_biome.dm new file mode 100644 index 00000000000..bf0f02cfbaa --- /dev/null +++ b/code/datums/mapgen/biomes/_biome.dm @@ -0,0 +1,50 @@ +///This datum handles the transitioning from a turf to a specific biome, and handles spawning decorative structures and mobs. +/datum/biome + ///Type of turf this biome creates + var/turf_type + ///Chance of having a structure from the flora types list spawn + var/flora_density = 0 + ///Chance of having a mob from the fauna types list spawn + var/fauna_density = 0 + ///list of type paths of objects that can be spawned when the turf spawns flora + var/list/flora_types = list(/obj/structure/flora/grass/jungle) + ///list of type paths of mobs that can be spawned when the turf spawns fauna + var/list/fauna_types = list() + +///This proc handles the creation of a turf of a specific biome type +/datum/biome/proc/generate_turf(var/turf/gen_turf) + gen_turf.ChangeTurf(turf_type, null, CHANGETURF_DEFER_CHANGE) + if(length(fauna_types) && prob(fauna_density)) + var/mob/fauna = pick(fauna_types) + new fauna(gen_turf) + + if(length(flora_types) && prob(flora_density)) + var/obj/structure/flora = pick(flora_types) + new flora(gen_turf) + +/datum/biome/mudlands + turf_type = /turf/open/floor/plating/dirt/jungle/dark + flora_types = list(/obj/structure/flora/grass/jungle,/obj/structure/flora/grass/jungle/b, /obj/structure/flora/rock/jungle, /obj/structure/flora/rock/pile/largejungle) + flora_density = 3 + +/datum/biome/plains + turf_type = /turf/open/floor/plating/grass/jungle + flora_types = list(/obj/structure/flora/grass/jungle,/obj/structure/flora/grass/jungle/b, /obj/structure/flora/tree/jungle, /obj/structure/flora/rock/jungle, /obj/structure/flora/junglebush, /obj/structure/flora/junglebush/b, /obj/structure/flora/junglebush/c, /obj/structure/flora/junglebush/large, /obj/structure/flora/rock/pile/largejungle) + flora_density = 15 + +/datum/biome/jungle + turf_type = /turf/open/floor/plating/grass/jungle + flora_types = list(/obj/structure/flora/grass/jungle,/obj/structure/flora/grass/jungle/b, /obj/structure/flora/tree/jungle, /obj/structure/flora/rock/jungle, /obj/structure/flora/junglebush, /obj/structure/flora/junglebush/b, /obj/structure/flora/junglebush/c, /obj/structure/flora/junglebush/large, /obj/structure/flora/rock/pile/largejungle) + flora_density = 40 + +/datum/biome/jungle/deep + flora_density = 65 + +/datum/biome/wasteland + turf_type = /turf/open/floor/plating/dirt/jungle/wasteland + +/datum/biome/water + turf_type = /turf/open/water/jungle + +/datum/biome/mountain + turf_type = /turf/closed/mineral/random/jungle diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 91da87f1a24..d3fe5b6b218 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -67,6 +67,9 @@ /// Wire assignment for airlocks in this area var/airlock_wires = /datum/wires/airlock + + ///This datum, if set, allows terrain generation behavior to be ran on Initialize() + var/datum/map_generator/map_generator /** @@ -157,6 +160,9 @@ GLOBAL_LIST_EMPTY(teleportlocs) /area/LateInitialize() power_change() // all machines set to current power level, also updates icon update_beauty() + if(map_generator) + map_generator = new map_generator() + map_generator.generate_terrain(get_area_turfs(src)) /** * Register this area as belonging to a z level diff --git a/code/game/turfs/open/floor/plating/dirt.dm b/code/game/turfs/open/floor/plating/dirt.dm deleted file mode 100644 index 9cfbe8433b3..00000000000 --- a/code/game/turfs/open/floor/plating/dirt.dm +++ /dev/null @@ -1,21 +0,0 @@ -/turf/open/floor/plating/dirt - gender = PLURAL - name = "dirt" - desc = "Upon closer examination, it's still dirt." - icon = 'icons/turf/floors.dmi' - icon_state = "dirt" - baseturfs = /turf/open/chasm/jungle - initial_gas_mix = OPENTURF_LOW_PRESSURE - planetary_atmos = TRUE - attachment_holes = FALSE - footstep = FOOTSTEP_SAND - barefootstep = FOOTSTEP_SAND - clawfootstep = FOOTSTEP_SAND - heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE - -/turf/open/floor/plating/dirt/dark - icon_state = "greenerdirt" - -/turf/open/floor/plating/dirt/try_replace_tile(obj/item/stack/tile/T, mob/user, params) - return diff --git a/code/game/turfs/open/floor/plating/planet.dm b/code/game/turfs/open/floor/plating/planet.dm new file mode 100644 index 00000000000..9f6c54a029f --- /dev/null +++ b/code/game/turfs/open/floor/plating/planet.dm @@ -0,0 +1,59 @@ +/turf/open/floor/plating/dirt + gender = PLURAL + name = "dirt" + desc = "Upon closer examination, it's still dirt." + icon = 'icons/turf/floors.dmi' + icon_state = "dirt" + baseturfs = /turf/open/chasm/jungle + initial_gas_mix = OPENTURF_LOW_PRESSURE + planetary_atmos = TRUE + attachment_holes = FALSE + footstep = FOOTSTEP_SAND + barefootstep = FOOTSTEP_SAND + clawfootstep = FOOTSTEP_SAND + heavyfootstep = FOOTSTEP_GENERIC_HEAVY + tiled_dirt = FALSE + +/turf/open/floor/plating/dirt/dark + icon_state = "greenerdirt" + +/turf/open/floor/plating/dirt/try_replace_tile(obj/item/stack/tile/T, mob/user, params) + return + +/turf/open/floor/plating/dirt/jungle + slowdown = 0.5 + initial_gas_mix = OPENTURF_DEFAULT_ATMOS + +/turf/open/floor/plating/dirt/jungle/dark + icon_state = "greenerdirt" + +/turf/open/floor/plating/dirt/jungle/wasteland //Like a more fun version of living in Arizona. + name = "cracked earth" + desc = "Looks a bit dry." + icon = 'icons/turf/floors.dmi' + icon_state = "wasteland" + slowdown = 1 + var/floor_variance = 15 + +/turf/open/floor/plating/dirt/jungle/wasteland/Initialize() + .=..() + if(prob(floor_variance)) + icon_state = "[initial(icon_state)][rand(0,12)]" + +/turf/open/floor/plating/grass/jungle + name = "jungle grass" + initial_gas_mix = OPENTURF_DEFAULT_ATMOS + planetary_atmos = TRUE + desc = "Greener on the other side." + icon = 'icons/turf/floors.dmi' + icon_state = "junglegrass" + +/turf/open/floor/plating/grass/jungle/Initialize() + .=..() + icon_state = "[initial(icon_state)][rand(1,3)]" + +/turf/closed/mineral/random/jungle + mineralSpawnChanceList = list(/obj/item/stack/ore/uranium = 5, /obj/item/stack/ore/diamond = 1, /obj/item/stack/ore/gold = 10, + /obj/item/stack/ore/silver = 12, /obj/item/stack/ore/plasma = 20, /obj/item/stack/ore/iron = 40, /obj/item/stack/ore/titanium = 11, + /obj/item/stack/ore/bluespace_crystal = 1) + baseturfs = /turf/open/floor/plating/dirt/dark diff --git a/code/game/turfs/open/water.dm b/code/game/turfs/open/water.dm index 957fb3df19b..b29cb95c11d 100644 --- a/code/game/turfs/open/water.dm +++ b/code/game/turfs/open/water.dm @@ -15,3 +15,6 @@ barefootstep = FOOTSTEP_WATER clawfootstep = FOOTSTEP_WATER heavyfootstep = FOOTSTEP_WATER + +/turf/open/water/jungle + initial_gas_mix = OPENTURF_DEFAULT_ATMOS diff --git a/icons/turf/debug.dmi b/icons/turf/debug.dmi new file mode 100644 index 0000000000000000000000000000000000000000..e419b2bf46d5b8d2429703d91de24b64fbfd989b GIT binary patch literal 270 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ⅅ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 delta 36509 zcmagFWmHv<);)}*h=_u8cXu}m2#4B2X4Do&3>g6Hp`_*{V(e(>U~cDRZfgSt<(AQwHf96ndh0te zrijI=>iU8ADP0(a_m|#O&nPWc#Mt6zqaooX#AewJ1hLTgAYwE<4C+bPTX9gnhtvU3^c z&cTn4pF1Ps(GNQ&aJ^B(ivLoNYSmLSltxS`bWM|f(c+W)Bzvlg%O--xVMCXa*tNcu zKzH7htZ0f(0C2Jtghox{&-{Dasm^r;bfMt(EXn4u72@lo;`8w z%369w%gZ9w))M3sDO0c3ZoBo<2^Q%~6UFh_jt9)wL}6Jd)xdS$*`IpIJoq@$U2wIJ zgNvryDOBXc%s<5v457oR21MS%)J7VV5 zP#j;|)$QRbdK0g*!aA@o+KQZXG10#t`@9e?uld)BZV=U#j3ADkGa{@+FYTZgWiS$` zaqIF`Igohi?P%S0I;`ArC#_^q>ipJ`(P&s#y}@)%t}U}#LZnM~fgY*P?5we;tg>2z zd|ZfeeU-8G13(8YnZ+j1V}O>lViT+(pX6d^HA6?P1>#qq?fTEPHU+;Pv?c7XCG0;X z?Bgd6Ws%U~e!~ez8We(rvGk)_$~uG#j@;(RZWSgXB@$@+4HJ=gqiW- zI3+o=0ep2sLkYc1P&{p+%~IZGPN+W-Y3^~)-_Rol*qa1s*!RO}*qcb3_oX@)qMLT- zt7L>`YS>eJv*=5uq77v{_RaYkH_|;mqC1WO;}X`bWb2{b8>(0RBW$IOpFc_EvbExO z{XmN!5A8)};5UN(j|}4WlC8nCW;=Qu1v}!9XOO30C(~Y{^dzarnUp_KZjCkg@QW7> zar8Z)^qJre6?#!;JnTzU^~eu+c3JR7F_R%lCX*q3W|dWAtl?;ZrHG85n2d}s|c9>k!kVM<21xKrzkCx)Kp>3hkU$*H-`%~H>mrH3}crwlPxo1|Z_nF(++Zj&Xue+Hji3LXU zY3I8)KM1yvuHvX>9^v=DvOm4gLIH+#6n?UDZ@h1ue3heUrCma)woS@iT-m;Yq#0d`?AL=&HaTJ}dd^L6bL?ql$yG%2+|xm7C>Y`hryST3{z08z zVk(ECb!~@MCT^AhC|9eOvHmKtufp)b!tk#k4>aU~fjqDc!tihrq<}2}DJW^<#(S$T zRm|8#o8Oy|m$zk%*p-{4iD+Oujx^>YoTKz~f?ilYrrK*ZSal|3%b#$sMt;ANtgn@26}aFUM|N5(-`w8?mfx=G z@?+VTv8G|REE~Xsuav_oiCXN8Kl5|ZT(SFEcyUne)}eI@a%OmBx-=@rcSKW$i~$tr z{D3ccp9&QE-Uy%ASR34xR4JQ4S8kydAWm`RH_Z}-8IJ3=4n}I)UOa~<+uTIFBY+f|+H1h&OvvUC@MFHqDsNub%QtWJr z3~gC1Vr+)LQlgRmq`+re%qKvz!Dgor^EByBG}dc>k>b)b8W&OX5>2lylLhYlwpl2N zI>z|Tw!O4pglnFHpT;-n#2><_)Hx_BJu2hz^)T4CS;3y|{#Dk!HIXeU`iUPtQ)g3{@Lo=)l|i>Xg4aG`X8SOY@QEs!QFm7{`(CLXPWi%_`sHDWGF$0TYEY^6 zpnBUD**)FEZ z0PFYhD*Ho>wl)S(8i|VPYrJ5lH$(589{5{3_sUCEn`*1O%2yh=J$Ly4rW6^(+1?SQ zDz>JyWDT=IN{f_3^IQ{~3w!5Jtb`n7`#e0))4bbx`URQTq| z$3Ygjntyjo)31jPaD~uLAsIb@xl&Wb2+vg^*2w=2^|seLw2U&M@*R|DjoIru!PH)7 zE7VkC)>O{U>jj!#&Y*y)XYVAN2!5PsJ01a+_(3BDn8Kk+KCfNY?4NZDI)9UMzBAHm zKe{uLytJ}1g5rQT(0aXW$$fW!`CTxx@@1H|ax_w(L+<*kUWv?z6_8){5@bGID9sl3 z)b4bwD*sB+JWPU`w|bfg@03&So&T^>N$!%k`U|oYH(}aI7=;wCXMDgun`qmp#&5Kc z*iR1Uh5dmh1GOP@t?;91Y^iS&&0lo1C@IxfNd;ysmi(+EBW_y|z?GT0h7bMq8Usa? zp65@5n^&|8;^ayt>_7ndFO-k!)%?j^qaolFDm?isZw^kI+Ljdx5Na;jZp2=7%?WFi zA%k}FU}8f>P0LK-#%XPBU0+~0<~|Di+aO^rMm=};z|)uKj_!_U)t5L8>t(CF6a}u+ zHup+t^0J~Vb6k&FlOub73eIE(Z39nFUez8p#2LeN(8rV^{HQ1d+c|8>?IMn%t1NZmj%*f zea_=se|IBs1N+mHz(%{bC&OJcW`*^U6uT-%=op=APYb8*wh5leK`w=4FgJn4$iw)x z$-1D_%2fJTiYdE1M*YOh<25mRJ^?&mC<2FBdb{TXegX9Nh<5+Z#6Rff^d}eMa3v18K{2RH zp`r1x3-%$lZ|zmQy36HdtO^nWp@Y!23ZheaP~M@p zz&qm#{s>vaW(cA9G51I*cn1uvTIDTS?T*}BU!QlRkC|j86(RFL37mz>;$e_bYBYbx zJoQO|0 z;{0g)Scp>VvxV4x8z`8gQyDw>k?}Q`^EI7ixv@+(x1{Uh_u7T7F!Cp#Xj`{?b2=oQ zhXd6m%TtyU7j=ueB2E?i5@nhzczd?~8*iB`9??1lV`uA3OgcMNcCZ5`&3ZAlqw+Nh|kJCRYvToh0cU5-Cd#6He4W?%;mWI_S-a?;CXCxRa@Ir zR6co-{$Ock`|ymc;Fu(1Tf)s_TJV;`#*O>^{&)AQIaS1---pY|!I5AsSlz$9^S6zf ziav_B*C~C&C>A2Gwy?<*m)@mFdOl`mvo_K!j!yiRYXKb9c(d#=AXubl!dj)GP0H}} z-|#&;N4pt+p2aDVqHV)QtrOlB@pgh*_ZTrFW9h1$5Exl&adkiI!@TG;0X7h{V_$gKM91X!$EaL^>u+I>j{A)GWoj+qbw~&x70UTaeU3 zfOI)8u{aPs=Z~&`jri4D5m|aOOhloBAX-du1s>xWwp%I8gxzp_;_PkhJ82`60;+M# zZN755iw zSoW726JJyvX9&61R#GRo$mIpBFO( zyn{5_x(Y7#?p95KWDRNbsk9)hi)oZG0iD7(CQ*!W3}}56qtWSz!HCioe@Mdo{JaDC z+s%Wy($f%Vm9jmL{et9o-P(^85DsS~*)hM1 z!wQb3XBE~w$7|Io%leB_>;@X*gdezEF{qnIE8~C9ju@3&)v+GOCEfv z@l5`{W8MZe4GYvShNzM?N~N{+HQiMU-&dA;KL4Ii*CqY!9q`_Xr{&0n$7+39uUH|Q zFElM$T{_wH3I^sKo9+Cmd5uZCPbHfHha&32{QPY@xmI2k<|vfEv^5#dQ_E$c?jG{o0;KLfc6@nJcO~jl&=%)}_1kTIPqAxS})N&FocW zx;ATZ-AuoW{>PGpDXxC(=C=*kgAwhOpX24@_OJUs`pZ4656v4>gb4_Dxf9xx^tenB$bvdiGXqFn4@b;CpMXA& zC@=7U5Lv1C?vT>LYGW}AccTo>Fn>$O=N^~1_I3;NIbcRM!{l&WdwxNN3GdRLKRdBb z`M!tv6FCuxJn!uN`yWY~5nqIpN|fOhYCO(AE>vn2=oH)Ehf@B!@)Vb}yB@{%C)zw- z!ChTymQKrujS`kCu36Ri3I7m;Rk&sRtStrb&IVYhH0S83DD{qh?8j~4B$Pypa#w>z zq}{S7)9viehGJ}f-Ts$3|0U55^3*Xt*I$Z-=;i#*8RzV+gWX&sTJU1lm2@kf3&;mq za@RtrK4BLYaF|mLWs;lICMqy|Uo`a=(Ip8W3N`HQB#A`JbqRS7ZCmFr8pH}MoWw*CK@47Sg7jg)v>!Hpo&BU2}iXcm;)tYrF8)Tkm{wYa9XMT~;g>nAXMeEsY6c*?xt zZc+Cs`mTKAxxCmN1D6?djy}^xO{qt!_FXOKVwrWD>RA=yM46KaS~Te$v@@yGzX0ri z@N3^|#^Cg2(~VXxaj;Mj=R=uNl})K(Vqx6LA@3qRrmZM@cT!!15#y`yRt{MSQJ$Gn z?^R`hu$197WpU=&w%edoWPGMtBsZ>H9sL#?>00=#cOHc?FrzPBzE-R|;MW z^01XVs9GfufiRgU!Wk4%|Aow+ul7^To#(n|-<6c`TSe@zp=rkR7U=iB`#6kpKvZDu z7O$j%iC0@z{dZ2VrGZKRMte0sIxx9kRa@;hs^__AdbF&Ev<{q+(9({qwzmv%y;*8> zj_iNNt;9KYmKVqG0O z--PMaqbLWMx##nJDTQj9)P8~pkZGd^(cXAYUf}M?=ui8k*$z!I4LruviIYz_wRx}1qTISAf6t^iZ zrnwq$WaFhWp%D@4^$Ug4_DyNv9Lz1UuLKTmu8^JNr6&#hhENFQ27{h-+ACBB%0>wD z9p*=DOX{FWWPGp=M^hhLCnWrO#r@bSBQx#D1;uvHrYcPfge>Ze7f*}9D&l^y*Odrh z4TEBx#!u^%RCIIbIk&*3apLEJh>wH3y5oDPb)VTMhN@@wK&ROPHoNu<3$D-HDXXIs z_pN555`MFS9_bS3$}3YBF<)to8f>IziR)w?;-J+Z>TO4E)U#!gy=}xe^HQ_1r7rUzuc zi&~x+-bfP)Up!dM*`Ail$DeXt@Ji`Q-t$VH=H00itVIm!czWME@-xCYIFu<37u~

7Zz%d!7)i|0e6g!Amfnrc;u3=vd#M^sN5Qdj^Wv}Y} zc=g6*M1I%BlX~jvl{#miX89%?enzNrhsw9^%#gBl7Mp0S=GbMMlGiHlVF%gz+T{AQ z-<>yc*XQA=!KA{S1k$KzZ#z4i)5NBd$)M5^zyBPo-+a&rAUB8&vWdE&W|(GsV>I%p z-rX;vJkG%Mg39y0J$RMZXYn%GBpoPA3D1Vj@497_e$nV+nPZl2?LOmj<(%!1W<{R4 z`+Y^rNimj$j!jcYXEF0`ZGje#_HzL`-Av!4QqQQ5VIfQ|s7mMqv-E0O`3?+q_}Dy4 z)FHzqA}rGaQ2xF!RBp=5FsWFy`kfRZCToznW%hunZZ%DR_M8`Y^aTIbDFMMtYP1*9 z@tU^Ha|^PJPNR^mDGGvF2Cpo@WN>^5f-fd><`qzck;84#>HgUrm{qb2kOsAtpcdq~x4zl{; zm>aa@v{ZHhUBH$)9*nd61180yV%3V?(GYASQ^?kp#xl;7CU9uIpU_8AXuWsy@YQ_g zou#9D4tJF(uG`ZxTOZTfTm3XVbRd#vl=S^vVXYmbbVP6WHa%>d({+5Ew}<@VsZ1@Z0=E=ls0D*IQ# zjZwm8>Z@&@!R5y-8EtlcC_bAkkrt6M9g=lTy;qhC;xhrN?T_RF=SK~-Ex<}D5BxRtTbp!+|iD{*Cs{+9bMU7PZ8aB6o`Z9yoI_k(&I zi;2jt#B^8tXAIa^AUv>c5%rbjH19w)zLjQyfeD7&Ua6W9!bhr9DoxR^A3@;?lfPB(mx80K6%(9kVz)wDxQjHgbV~^#Iv|^6SZ(> z-NFYb`M)_&kbW6^R}YQ>fl$f0c)TasMpKNFUM&;Lf2bn4n@*|AYT|#=EHyLHAZDt) zNp|6x6&ZDsVN+&m<45MN7jJh81J^}nX1Jx+Y4ic>y36}=Xv{NfRlge5oCIdg!zr#U zSJiIOLJUZ^NkXZcKVr~tkL`#mzI*b_y8A+4Xb>|6F_C`U7Dl$2_uC)NOMj6c+}))B zVSP@rKkF7lZ{w^@sxUmP}e~T<|l0>y{D;0K}@`mo0am>?x&nGr4 zt}X-pNHnXEX?DG4UG=lHvMor8?C|igth{Wpy$xifRVq4KlgatQao9e(%$yme_M?Q6 zhcxN-UJnQ0tJp?@yym7TW*1{KirhZ5I>ZNOh#6RftAQ8}B|_$oA5uZv)VT0*Mg|*| z&Dq5 zPsaZ3zyro^VPNaNLyG2ncAIP`~I>Gppdzr zFE4WI@X-xD<3pW#zy8_S?&zxvaQYWqce+AQiqENtW9Yg}`kYGm+?8|l8vnZ2g=Geh zW0HQ_X9{c=9<8T?QYA~tm_iy^o{{(U!sQyqo~D}4g|6Os0|ir7Tgx1oI@tv~@L$^) zG;v+IouBEzJ}8{=Y+lKAi95xHfI%EBmstgKxKpaLc3=M}IROKK=~e-=Gppy@|793l zacmra9E2swZyTxYPsDUOVgW7|$`$SDenczZR5~)&c6IrGdl_j>+nXydSGPXr4*NZHj^kbV7 z53}WoLk|YMLf+iFh9$JODL%mG-5<)&5QS>z{em~95Pf;tlg1W}OpeSIgJH&lF|JU{ z#+-((8xNF|ghCf4rLLqM5SsMw>3L0DRAWz{Ufc1Dep@9XswG0hXb0C!TYZ2P_|zux z{F&_YvJyR})Pj4evtD2SFpjA6h!%i(9m#8R^u>J?bpZEH@lcfimB6mI z@3()0JU9(nJ#?J`y$Fs*uDd=F#+U{)4Xeq+^;u}7-=;atS6lhwYJt{Bc@XORevGs@ z`B971e6pr^DoZ=T;MLKyzLc(+s|DImU* z5jgHhZKS6`O-{Fdo45MmL!mNl34zahyrNU+Lh)3ciLxn{NIofqUa!>Hc{d2aw`(ib zO-BX)j7VUPPuRa2WotGl$2#H_y#G}7oANzQ?Lm9kn^`(km9nwn!-_YR(sdHinWk0D z=-FS%-f~sx5CAvNTc=kZi%~u2!@wK$w5pZ{F|5G1_b^%u1vhqDypg> zxdH1s!4`EAo(<9og%Lr*R>U#p5^-c!Yi%RhFZ9&T3Q+UBz&q3eK*)%d* zoU#}n_p_x4N3gxyd||>;KtH77ky+Q?r&vns<_7fVW*1~VK(`j z#kAkXRHz)VzlP1>%5F7RW_qRuRX9HW{5#66$Z1C3YxO-^aZhKfRB3 zyPMG6l?0wy2yZ(PmTVgCrU)Mp*NY{4*r1?@pg11}E4m2Ft|hOYM-s=q$^O!PlD2S-2rG*$FD7JZmxCXYg3`@mE2-#ZrI z&ypo#y<_q3Ml28{l>`bPKc|>so3jsh9e7Rry5UQe=m|@zGue}i`0+NXdD>@L>R1;s zA`OPTGb&qjs7>y$-{!fdby{0wT}f!r*R?N?2-Mv_(p2~TAIyXM?kg#?y&QHq!d7T( z5C&)7hK~nP3{B5pYBWuohl}<^0=dftipb9Qx%H)-y6GarWP1PlwL)E~K-}d$COrBPEg9`Uf-P^YR^g zy{#4N5z3G+Rm5$Oty@}UE023gmT^XhonJiW#0++HwVw?i#RyA1uwtDiAF=m9$DYj9 zc1{d&^h;Zx=PJ*aHlDNx6~;5T2lOUQKStfny_~9Yd7eNscAUS#ZD~;hedhb+cznR_ zbGwufU;4Y_rKWG7U70^o-G&L%#R$$8cumouMQiiWL9S4i-k& zf0aK2Kn2Hwyg~K1{<}YO39!vRk09pYxHPLFr~g0$d)~Jwh|ZK4V2LhzUuC5MUuNG` zYch<>smoZPmI0oov?BO(jP&J5W#6+rBqsEU8y{yCSrw7=HQZSq+|134%ZlXC2QUWA z6-=*R(ee;>vvom!j(#(N$7yM0pF!a~2F$Z`^~K+zy}m$1I1*Hcs=|lN==gjKEidmB z-QGL2kWi$k!{*ykf|`owdFd0QG}M!bi%0zxd#pBhOB!Q`q|`4TJf!R&TX~q&Tx;hbMh?olAR zI5c*M3Ud^Qf#y~}-PJ_U^eDTxp2Kq2d1K_gKlwDGNEG>$k_vs-HG&Y8)891bc7T_< z(AhfS`=w%6$^cW)c9#R9&*R&!?`QF@_Sl2%$1o=}&oZD96o?XQIHfzU>;)Te2)O{U zr?LrLMLw7L9TezMDPU4>YkGQHVsQRscg_MO`{u@+kanMBbi+Y8S zK9w9AT)B$_Xl}|9Za9ldF8!-8I@OedOpJ@}RvBz#z0f@VXF&KaoU&K?hn5j#Kk8?E z%&So1SnTm8UnfS2!$KppZd1fhhcM->OEp#KXEnGsJ`B?`x#JCBy{F$3k7^t^!DOC@ zQ&Dl_UK3*TEYoyf+t@a!7o4kQc#XV6Tkx1x4|;S;CWZG|%XtvT3fC3j`6&$@ZX8cSka))xDVwCotHyqkrqN#69- z@i{jtd>7N9BEMFioT$Oxnww%XFMWaK;W>9hf2?bS97`xy${=3**0qLloQiZcGz83b znp@6Dwcs3EC*}Om&J5Ar&R)i8H`aFexGxGYsfF${{DA&Se6@~FX#pb%eh(_NZQleV z7u140{up}=Xv$>wDs!yF$qzF22uNauW}vVZ4! zsxuPJ^6az02quia4b}!<)N@*9<{h1uaosF$JgDzgodx%)lM!t5f_*xYcgrt`7Dk_R zl7q_?fqvizc;l4)LdH88&sgAMp8LQR6i2qz`OOvcbX;+Qd$1<(fbbCvTt;Kyyu93- zzMw%x9y}XQ;t!_+m>b#bE(D|YeGB0crJh$zx(=AGrNMQ4;no70Q2>j z(okFkXgSBAu^+i(O^J@b_By?HC(y?eaovI(Fugq~5o_gzkg48<;MbDdMhwg0KQrRd z7@!s$mA;=AhOaq=V*Nzn&p;<^*(bh7%+&M@(e^v!A`9TACDc8Rr&o7Bv0TO7($!E1 zC`B5t@j%@~819oPYlKt=WI3QDGAQHUNfIS|6czVr4L!IldwK)sXEQ^psLVQ@*!DT_ zeGM(&CE`6tQjBH`~ACdO5I5l>8f+Gd# zWJ1Bn7tQLuJQwwj3F-BDQG#^it!KLc4@x`~!}-JBr*_tp8_#_zdkMa@#*K-)rzjw1 z;^@hT5sw`5rwGzkY|X-<#-D7-)JuvU)M+JO`6U)y!c$AKC$IOG<;y!pi}>RxcbR3# zA!Za;hew^djre@>Q#c4&bNIbL`}XAWHRXBQaH&!NZFm{AJ98-NQIceRvXC~Q$9@E9 zV=IJI>ix-jxcPvOT_S!Gln081=L+nhXY@$b2eQ<1S;sOTsX)fkJ1snU5x?)5R405h zv>IVVF}_MV7YG?sSIEKUKirSEL)WQ@GSI>e%VcW#N!;X8!@Z%vAK>+uhuBqTplLGI zMF%(<#ki`ICAltgi7hR^8YqB5fpIOMtxczbW4V5CXEPr^u1;$;Cw`(7RY_^1cN< z$b2u7l3{jkOI(83nm+Ls4+%5 z=YkY*!kbwGbSmkjI3n_q1Zy)aQN`{08WqLjP_!Mn;e_QO@){Zu)i3Y46vL9#uBve> zNMaWfuiTRI^RXwP2b_mWh&ZFJ$=&g?I`Lhh8-LxBzv5e`Lev96?a?zL>V=}7N=NjA zWb8b?a#0FGNutNnN&}MYH&7qqLcDO9vL7$unO~=mD%@;qL_*t}J$9Tev=era+$O&q zG!STbQLaZyz*+dcQJQ`S$`255r%yBFjiIKMzwv_8UkNeBbuI6<)13RE?wtPHf{++i z9@WrzyO&`du^QJ#N2zEikB5+9$^1O)Lo|#8^zCoN&0KIYY!%Q;B9Gb`2Q{v#gW8Eo zPVkP#FaG=Pm}1)XeXYiY5KR|)oW$lNF35w_Iogs&p8IZyC>}A36zUVX9mT=i<89l? z%55Uj<0WtfW=lGFJeu&?Jq&vp%6>*vQB}FqeQC%Z0rNtxM%3UWaP32q!mZU8F=6l) zNLLBu5WTkAMSyvD$QzzlT25Y$nQ>4_u)n!-$$ZIQWi+%xzD1FGd{s+bN2HX!!tIM8i=&(A$3Dmc zifgjrxx#W3HXYKul>PH`Z!&en4GSjL3Anm{nhIRG0=I$?<&yV z_Yb>~%dlkpqqRM=N{ZuAgD}h)MKT%^Ee!<8S8-xjK@P6NklirvaMX-0^0(xl-v%?Q z;GR81$Jm!#4QB(ChCd#g@6$b~wRs1Rphhzga6sPr@y|O~^&0$Fyit$<4ezu-^)NNO zQ(jbzF-A5-=*~4ja3n>t{ayIRvDj*3d)NJa+HyV` zQ9EzmNkF@KK`Is;{ve;Px52Pp^YJHk1bH_`(-xbkzfi$T0b*haXIIy(kH5 zYf`o=Y_fTY#lAw_gv*R!D}OHmRd*S$A0=9%!t3!n>3okb?{$)r$e zz7Ed@x@u*2CPEUO7x5?IcJs~Tue?sb{V7q}QIo;7oYm8E_B-pSDY;&YY(9V-)U9_k zO7=-t_OaAfn|qS>C^OXfEcE~XDZwh>@mh~Vw*^fWWM3VzTr{2TT@>^P?FGGmTPfP?XFd3&}v(5fPo;o9JNGb==p3) zk=$A(IoRX5Loy+*eR$=o^7 zm2uDFq2|CfC&c-Z098-5FB2RsJ258M>T4#goD`Y)2_8|+9(bBeSjT8pqQI+USi5RY zy@6EUB)1>(z+dpuXn=%Af^VJ4veT&~C)Gg>sn<`bOa85cgP;}?>{zn|^Xj2kK9{1! zT-nDS`LZpVnjed|{}liK+Cjg4^_!9YQ__dyFCvIs-Tt!_$7D^lWYz@=!#f`z%A$Ws z2D~S;kHAvPxBoo*?!)KJauuLz(5~N~ERn3Z_vR4>b0Aj^GD!9|300vrAb1#@^A}+1 zY#?z>jnG#^u(VUbd1y+NNNAX_hIF-v#OiX{n)sug_sT04cn#cM$QO!6;K zlh^D=e}P=`l&u`76%<1z& zYB#zxC;yk%V?@g`n(> zz$-d?zMS$^`k#|!w7fSba$C&?VMKG#%%H28Q+ye}G-p|0sn2v@NjjOMf3jo_5~jSd zPk&Dvri~clEr98^*Dd=$e+YMrAM;XAhJG{rG*VEbLmYv&mB}QSrA`652WKQSjl5bK zV+PS+M+!sM((c2BFD3{p_JjFkq1P|+boYPyj~pZPFBYty$3YR;Ccysw`G=RFNurGa zuE#7XWQg50Z*yy-b00SO-uA~S`O}gm>OD(*t=4k$`VKMEONI7lW&RH{Jx{A^+9p1V zJjC_0)`Dmw;<=SCQdMb!So6UMW4uDF;oj68G{YY>{|Ax&c?&!QNb+uh?jLRq0X@@i zFT&JQ7R1$gG5ZzXj}?Qb!Rte}5D$cK6Xp4Ll7x$wsx8-Hch3y51MgPJI?Z0D$qMi9xk83)CX z^rw14`~FOC;Ggk5fQyn2l|-eFqmEbLcSh&>S^K*(60Ay6oVv@2)NK_w*dD%fz~`5` z4|qYB&*5J|L0nOJmjJmQL9^Q5eEo_Zw`HFO+C_P6LANqSnHVOcP?&=_vFemXUDt-# zc=&c%sLzb|?he{vT1~r@$>tPoP?#~!5cmyy(unqlI3jMI{R5A-?ti=ev|H+!)zb_g zZn=7rOt)%dM3Nn(@+M)4?9ONF<(KY*&&lfk8R7G0w!9gn{Y#G9_0tCxfg4Z2 zBmZCMG|UnA=(ZF^BAImjo=){cy)>#A8Yx=(*<3qMyK}f+fj>}2%L2cd`?@NDdg)8< z!KIuL_8_8e5Q)C<;Lu85R2-Cm*FQv(u3G#*#I{N#)D>a*M=oa^Q z0i0C9i#cbHyJ7g*%lgElbaR`4YNhq2+OcQ<%XxCe#ccfdrl}6^?OU0I-oMR9BV_>8 zNRiORYCg^=4bZRSlLip2;&fp&jTp_xUak<=#Y^U!zu_+sS;qG>Yl`U4YgLBw-J|OM z9-1}h0J;9v6d-`LnsTfB6TklrOn-V%ZL3iT4Og?6Bi}*Sm<0k1@9SZf$nfPBZ=`Tx z=ZNl@Pz%8?z~#mrS5H?;=>kVc95HT#ry_W_@5bVAb*;It_+qcg8{E(TFYp@vfYE)H zlXI;r^Lnmorq5zAKND+XhEC)E_Qx_qq$H;Ar^1jW=`bKQ_HWoSsQ!nS1AmFRD@rV0peS;dksEhqY=QVbu^T*C^^Iu3NAuwd4y&-qssfw(AnUnf|MmWWHv?^4Awj? zq=~CzC_z)Ic8#W0Y7ku?b{I*-b-uQzLR?7)OQ=O;O9W4GZJ!+DL)ok?dr_U?tB?Fu z3<(>TuU!XvZQq>}SPk{o==SI;j+M={VR@id0Y&^vL^jdl@5s%V& zX1^VUXw@^kIvwWnYOI$l&J8_RSIkNS#qtUVN5j3G-hYt_z;l|U7)j)SWm*0~8l% z`gXl5_m38=O{1~=^#kbbQFz2ro`Z7N`D$W4O{^Fyq=1+KbJ($RmRa<7k2*I|kJTWy zm=uVm)?2Oc`Z(!phmOA8cQLNibdtI-JLA|yG!tT2P=a2AR!tl10d%Q8ghBtDe?8z5 zlS&p}!kIqjV3+*0*s$%_-}kwOKjK20M2+V7hd=;-7=%dZ0O3td5Q3=2m;F!EN+J|! zbU#Pgw|~7OuSi)RC;2ydSjRWy)ZRK24j`|h{KuyGYIq8fZjR#ly*AB@(#atoo+o?M z&#Kc2aVg;1A-4dZL->g`!KL0c7y9aF+hDW{<*d1Xt)8Io*-g*C#Cg%rL~*<-WIb8ZzhS&tQ|d_Y*FQP!mvTWr9eL?Kv+{|L!kh4$b7 z3k-PQ7!}z8F=xK#uVL{jKTU0s5w9t3OO64$$EH}KAyIm>(q}4OacrMV;@#3>Odw1! zwV+?sE;KHs5D2OJ3qJO2Y&Y#a zzk#aLNc1R=vR;9#-MHQYvE~wW8stSvN`-#!1N6o52Ao8mv1)GqG9KUlEFy6nSCUkLmX^Hl< za`3cV?AUsJx3Rm0(19qcb_=~#R||Dy-RiB^_UmNDO;)PI^`UR$=R${<_ci91P>5f{ zlaY}lJ&7;j9M5z29YxQWny9KKVV!7<_cIKe#YyZlB4^f5(XuNjSuwmS_zRM*lr;rgUSw zc!IuB(@D`+GkYZ%r2svV!zq4#7fk}{s~yB%d5d~oMDSt<;B9fytO=8X(8RlDKLquB zdT!Pz1us5GZzDVj%vmJrbO1y)0Mj=?EIcIQ6EzwBdnaEZ3IU#+ws4<72YxI|_iTf5XZa91nz70F{2S>m|#5u2Ughx2*N~>3wOdQ{Z!r zy0*?x(-0oH)e8QUZR1oqkVGz#;Fe?;! zcoM|1jl3+a80Z$JqYFl`F1IBll6w-LVe-GIpB;mSzZr+ZoDu64qY}~ijT&Xe{o)o- zC?sRiPbpvpAL8b=`8erbAe>k}d$eL-RNdWB_Lg96K&Lq;Q%PY*vTDTN&Iu7AqnhMA zF99J#w)t_Mop!>lvcz0W?sv#-;k%6mN-l~1-e?_R*xf^MS7a334f=3?EO^os%gD%9YE2yhas(^4~E8qw!|J55kK>-#vHB=2Gs>eNY5!^09P{VruQ9b&wl(ru->S z(|KhtYCQ$Io4cXCK(y}bBJyDz%4e{V3|sDPMUZ!5Ielrz>*{YcaRDm&QHF@kum5&* z;2CO3A5?hIUaw!!i%m>a)YMW;c-gV474-K-ki`Wg;BsJC3;Gk6`5qHAhQx(1u zcqPcJL=lTO*@App_|nT;mN9z9mS?m^m3mkW+!@_GItmwc0;E)LfDR%8M)FnDQ5F8T zF~1PxnHLa-J}>qp22tKX7x-SDeqIy+FT0^1M?7g9;qfBO{Kp7+)5|qk`QlE@^yuPg zWRf&Xu4SlDC|3sD{9iygav|oM_>A-a?%zZVq+3{?lB}p3nWQyq;IT}>2|uJ(YcyTSIZWReld@g1>Gbz~m)%8wlxoKC z^CFfQ9#22a5G16q)F0Vj&&D=ZAf|xVAHNmD6j$bJD?Hvlrou1E+a-vg0BIn;Pl`27 zJp7t(yJ)J)yb?qF_3b)EetZ}mqqxff$mH!er}WEB^tL|xFSt0{rwag>dgYDIp^|Cx z>X=>6gU%9)k~G_6AY{xMo=^kc3f53Hsf_-wpB@EfdYFMrXiZb4X5koqh)LDL^&EEujk!(StY{i07w(9V+9BKY%( zqI2F=URZ<+3>rpF7!5o(tr1{2RFjU8#_GE|RK2)J`VK?^y;*vF#KL0LMx3{_dE~bWtfo(2Fq|1U_tdw!f zhOJE7!Ty=4t1}$JG0~| zy}jX>eEMKCXF%K;d>{1gB`SOyd-C}?HsUc46(8-e3vYV zF6IticOV`i1rmrDt}q17*VG1yTgv1Y3%{+-lcRL;I$uyl)4p^zN-sYvTeoAx4F2Xl zRoE3s=yZcg>9ziuwwyOIo6)+c(BEiDNE{yxZTg#~5S@g{((Jl}oz(}x$skd{44*@A%Oa01Z|Sw&fb!bHLz-{ZbjAE zA=-Aplvjm3PUFo-igl9Ex*{#F?@2NGKX2({QfJWd8Hp};R{Cdpk()C6aYBd%(5jF- zoWH9%m8h}s&w4#tE@VU5wpnHxWsES&&95MG9kMH1?(Vz62x9sH}2NIruAX+G9dy zzQosj!bK+khNMT}S*GRTZezjx#J6&%X)24qtih&5)nXb1$=qrI$0E?&aH@!LgeeG- zpZ{5eB@b-&>qiMod)Q`Whnl#e=d}0O)af8{<&P*4sNc&QMmXhPNNT`{j0j z9LQF~acLiAnk{*ASn`|Puvpl5;7*k*s->)TBhq1zP1Tcjpt&lilIn%sWvwZf!nuD? zEmdlq0Z9?zmO!5ich*NY_-i$m3!|RJ3?S*VCGx*m+WRNi&fw1D$yCf@T1obAp3ld5 zVW3p|&GuvIwjK3px<3hINUi_$ly7V-$|O6qVsZN54~6SU8(|tDq~|~_e2AZ0WeJX zrq~nB!~GDz67RIaM}xRmrF!{5wSJLK4os9{8=$%C|CCSR{R39+)ui+iGrxukoraX) z1$G`C-sos+ldZRp@@vyoTOGC9L^-TzK9Ap&`fw9Kqdga5WVblm^$vx%fI|(RmXW!* z*&!LnSD@*gb!G4w50>N%Z}G=P)3c*x2(lJ`Cp){FUbFr2rK22z#_0}h*}*1BkqIpb z7@PU&_@wED=;Yg&x!dxtZZC9$AK#-mopWHm80#eW)nRA)jeg8s6`EY@9%SK30$MlB zL1)`VIJ7ZUk`S@|C-CJ?2b-3ZN-u6ULO{v-udP6{qSN0VFV@hDmnbXpWjbjnm)E^L z-bySHMM=z8vHDXe?F#7GMJ2;Z0O24(>s+3WSosh(yI z0_Z-`){=#h7jpIS{I;U#!Ck#zsZ|)5yD`d^J7VZH?)AcBd5`S=IuB9ii{|P3a*Jl? zD-;ATE54y~k9}7!)nXeYD9Y^5{#R7Y-A53ttMC;o?bq&E8_N=31MfpUZok*R0CmfG zC#s$Mc={W1;@3F6^5YqR3w4x-%bn!6bq6F`t6F9x-TN`x|5Zfa^BXO%vo%Yn8p)Q9 zp%wt@g$lLRb*UUgiteSw)^LZF7#aG&n}xtgx4nsrs`X1MK?0r;osQMPD-o8|S19lc zF*x+TYm)P+7csI9>p)O_RvDzW(6mzsW1hF73a^pvoUzT0s{npb(x9D5y~=3vNM+9@DIuULC!dzH>$Q6K<6Cu%!+Ph=v{L>a8w>43lU&vmWeFm=)! z4oT*(a@i#>O7Lf080)Tte7X3-V2Z-ieRmbmznsgx3@%g6WgKu|X|qmPZ2DVuyTyvm#3WLOzn*}7^3{~DLUnthlwG_w+1s!p zs#`L~=P7{a_b0xvQE@qcQVFrod|hqn4co|G9b+|YOP~ARp0IPQHBf^M3_Fkqont~3UF7!7eHI%mAEL4N2uMJ&q;oNE>bf| zd$KvwVhbg~9J^-rZ;N%A_@<4WSmOhg&_~_LNcw)j?Xd8T88dTFPRb;JM`lAfN#LU# zslN@qQNH`ITP*#_cu}lm+TQi@r&+Rww<>>w5o7&4Sv9dlvGk^Hz?%VX2_E?|VtJFJ zZou-*KTHh-4LeRa^k$s|^ZDY+iX|`g)XDXS!M|$tKK`&H&bOf^4h}y8f#SG0Ew!>j zIkIlXPjE^UPX7a+YQwhPCc6c11aw^$?3ETDxUKQ~ym(K|Vtur#ihbgTa0E-?dz-A8 z6Hlu+oh9f&9(?7gU-hZVk2>88%MR%x04FEYwk_#VU;nVuYOhd|j+^t2q~izA&CO*x z)EKt8#vA{Gc1imr*JNj8U*hDd7uhI)uw0API$H2owF;(jB}lC?1{rUu!JpeBWjG-wo=neY?!<*!9vC!IV|tESOGkl+ZGl| zN&>Y~%E_i_)?)0zNG++H{wR4uAo=U_dUZ{Pb2?g6Am__|a5s^)xmF^U(U*Oj*)=^h=(|i)O%cg`?8mBrG*hm+&_Nf5t|Qv8&kAxpeiO-3de11$zYHcYD~{Gnn8%n> zk}_#+D2i*78CY53RDI@(0X{0&>F57kza7iA(k|&b0A}~f;jB90Z2b18r2ja=60#un zp_VGx&%epr?p!i1O_!BK#3K57PfuTWRvR6cf7ckX=JcF(wlEkh; z#I(VC0=Qyu2te{}(^)sU3v?fbDEzdh`qaO!FPG|1Oshaho0bst{vnHWTvr>a)wvc^ zz@A(SvTR5S6FZ$0IrTsoN}AGgoV6*GzB?DCTX<`?!aFzig4|EKo`VW=9LdU_V*gF^xd&f?>mKJMu8s8HPKcs z)>of0_HCTfFTLEdv9w^yVFgTNj2f7bFu7p@fl>Ix=jj`?Lb6MVWLD*x6YeN%U)DgX zw-v{%4#U_X^bU#M8}gnnilcP5|NIT78Va06W@KHom5Yi3{C8R8aHsRb+E=$b= ziMUnW^w(8*TJ2j*xf>nSFFH&&m}NdxHcCELeZ+m=fo9y;2tQJRFLVaKA;-Q799LX? zK6D96kF})2WMz*Km~%JKa^g%kwLj{ViOiJGwZ%ZKo#t^Ez2N7l>RvvQN>VF0XtBr2 z;r+`{S^bI#7`g(tjaMSho^B9KOPn!^(&h`o%rn-bXi|ehL+HVu>0?5~xkg;uH|c_& zEN|9_?}Eu`|Ge(JZ0($<4v~+S{~d%MKW%OT!t)Z4^JS`$EpZTCG$mt1SC^v$C2Zs0 z2MYvgZzsKOUQ@SGHcnw(m~niLOUM*6`189)gf{IoK&IbCJL2F_nwj}erGj0wWfSat zPAP5(|3t=WDEkM$T1}r8r;$G0rQiUK11-&YyzlmXvWHY9S5{yn!`4l$&L+jJ#p1c+EBz507nnpj|dE%{WUou^&2-fF!k2yUu$oh z8>uC5_}dZr_P+!5zw>m47ui1D-rX@r1&^h3UZo={z!PF{Mg;yhWH!;Br8+TiK?>wo zBYcS?b;9g)YA*X9u8vPmsQmIQZp@s$rt9YBv{p9S3}Jq{0p0VtfmtJP4x$!mu)o+# z)SR!~&Fgz2MAgL!;jEP;=DW$9Evo>>TduWsc|Qo-^*qxzPd>9_FK1O8sAXS;q&*O}_BY&Z^EQ8ZojBLr`i$Qvk)q8Q- zo-2lkCD}z|lYCA&H%Zp=8GT9yKK7ENT>fPhl<+zUECalY#VDf(@_}*&<90yBrjpK7 zc1bJ_p=GaYdX>qX-$AwO{m{E16#UFXg9Zcc+d4!$_K!6OyxErXLnmVRlX!OfNjc`FV zx-b@`=qFK|+_PkXUqn7Jqrm#0E?q1N_yash(df?Nn|PaV%||7|6+9&q`HUV~d^sEE z8+)8VkF&EU9dE{J1cn0`obFaDwEAHbN6M@DOg>!%+Xd}qne&gv<{D|^mGt)#)_I${ zvv$m=HMHk(X~I7IFfa%jcSpu0RWG?cqK`S9zCy;32$nR=G0&)60AQVTz<16TyPbX? z!d>t9M3NRv(TXh}uF-==BN=mPVj<$?FU;w7?8va8wJ|vS87r$OwU}32O#lq9Ex<0i zhim8xt=dj5wKo+tw%e=X2T8IhPpQ1Dm(OxaQm zJe_of43Y$%-62Tw9=ENIAllpI3SQ7m1nlhcWF0=#1_Z)bP;8i+r(*oI0I|^lJm+CfJj zJ~B|ps=Y-1eb!b6Q(%cb#L zo5YAe8mL*xH)QgRcbigJIMYc!3sDR2{h?Roc)IXU3~SZ3zR`O9rF_i}S4OG&&J;fH zd!s(x!lt(qyg#P$iF}IMEP3TI1N?p~#Qi4H>a@zKum1CsKz7;b_Oad9=jaOp`C$LV_nh`?%Juni|BX<&>`s z!}hT3K#)>+SkAyV{f5?GVA*JFi(5 zJ^F?#BsE-zOg~XaM*Am;eow5iHI3BZXG7f&xE(W`2Th$x-z}^w%?!0<=j}%7b1QK| z$N@4d?RLN&1F^Yjh&T&{y?=;u`|eBqh#^q#yw*ETTJ4TOpNk<|2McP%oyE zsBWtJ+mX5v$u0=nuNSSZK!0D;)PU(B0DcV-`Ye-n&Pqvd68qDadFJrb|gqy3~jMS`Xw)KhHlLQ*d8&9SfIe3Ivq59;l9rH$b#E=U!$e!ab0QBn( z*4xAVg{GGE?I$ADO#zjv*863<8t0os1CQ$w7s_DT(n4dd*aWTb=Gh8dl(<$;h?DgP zI#aUCBhbCir;Cfdk^}3VIx*y%`%xVro>$op%Gq^~@n6K;__*@7WjNkbH{KNm_+rcu zDK=Dr#|Av_ziWd39AX!^c>(!_5P>yeOlGv~b?@ZAPDEytAkL+sM*kRQ?__GLKN$vb zB(E++y zRG$%^>Y_Uosx`2t=qu}F2Kh=DDR)(1oY#*`3QRX+{@N=z{ep_`4Kx$f9O>Qk^76-+ z4G5^YOJEef(#vn_teI9QjP3S7SO2z$<;yOZ>`LZc&{z}K2qLJdNN+h^L5khQxiJH5 zxGY@r89}$#^MBkH__X8Qca*e4?0!B)K7$NDutwjYq8-Eppse$}i)^?7H3uHwL&QKU zTKVJ_8F%1?`Wu}a;KAu{yw*^5yvetB+EEHgf%<>NBC(5{54%8f_p(9Vv|KNeP$fun z!V$}#Ig{kd{Q-O#E_vcX>li;PWX&2Q&Qf5WCEZu2)?&<*^-6C? zbHVjlqaSaMl%TQU-g@Fy@BVzZ-}K@mCdKyQB2aH=+z|Z+Sct!3o;)T?$sev#$^;^jN}Z zrd);2Orf7`lv`$HU#bxyhkG8?ov`=ow+?xmNRMG1b>mMa57Knl-L+Is=|Vt(?^RVR zzaMswP#ENu$YhA6d&00)38dN4T*bK{JixIVia)SZ0Up8z`Q{=Ag=_7XP5S=NGafp6 zodp=8Dk-h9N{VboNx}E%-?IEg%cpC6c#qo3Wk#>gIHRM+$Hr(p{>Wm+q3CpzCw`{m zGX3suG{d$RwZixk^>XtWt0fKRIsRyx#%~Lu9KK{5nW0nm;HIQd^00H!VDCJs-f;f+ z8ZUstS1OsVOUnV-A&^^h!T-+YI1}b)6mf3t4o>fzDkD9athTf5&}#=nfB7!**}YuO z57=)pXpqW}ubvJ|PPbT}(M0%s5 zP>GRtPF;(ZFM`SSXK^!8Q+vAb$vnhpO_bC}#`Uo$rwG@JC&sZtauS@hP#b$>=eJ_c zTX*Q-TCK!@h2~Q55*4GazY8Vlj|xiipJkoF`EgzHvyLl(`fU3K@$*ZI7Kw%b@fl&tQh*)eOWoH@@#cJ zplqr6w}G@gY--vuxZp2FY&p$EFqed#gLtHRLXGXZ1*Y#UFr{P}4Z#Ac1y*C!x-as$OR za9{nL2w*Nl!};xrSnB5HK{Hh9{4477=V%`3f5HH zXuT^bC1a%D`s%6f7*jTf8$sVOb;AmNj6eLYSuAm17atJAh12H$;94bd-!>UQnui=> zJv*0$4_mc*Uj!VVp4K)u8%Mh$J>rtp`l6qgV8V@77l?v#y{D(=sP#&;dxw#6#}l0@ z$oF+IF|dmP#E48jq=I08?2YH%WS$iOfQh#j%V%l9dc!(lO-)UiOxnqxsZx^!5XQ;& z<1`JueW%ZFr8vz_Mt-&4V1V*zZqHN9)=xIRVt5FdVT6SA@T14kdlxLylSb8)JliW4 zr-Bk zDweRya=_WBCC-yqhx6lQ+?=Si8VbCZ#VYlbYL8868&8Hj%yYl79J64ur(QE^{$C-oDQ> zqRjzev;$XFKS$Ky5!H0epCg$!F)q5F5QXa(Y~Y*8t{ADSYm5c&lT@Qz-(9u~22%lr zj3Loj#8>oCNn%XySL$zO{!BT(6YwE5eZgQ8F&@I9wx4Jd$t}ulL7`ORxmF%u9G%T{ z_MCVSz`w`Lq8@#Th9Mxq)|B^JaAWH1Q9%9YNB`~2yQ|xkg@;AiwMk?!hKzW6H$R1+cM#hT`IUy!UN3L>^Io^6C-JaR$;9FFm+^cxR2q3n- zvGFYsteU&G?K6Sg+HZ5-L_P7$X4R=aZxDmtkseb~Ql5JuP7%J7<~NRz+V7-F8n3d? zXrz17Hcc14Nh3Wxqk!Zgi{9@CZIpY=ZKTdDtJ37HJMKRE@jl8;6tV&)8+V6@Ti%~1 z@Hpl}b3whh^wV0RTLFP7k$_!PVC{(0jag3Bwp+zHIO65SpX9{pLAIiJpIpNXTFz`< zny?-z`WXG?sRoI64gVVRzG}PEUzWhSQB~`O)lGQAxEoO;#$h;yg69Di#i1+P^U&mFDlYP>;9`LJU$8WD{tAv;vIu+*zu`K>*LMQ zZ^Y8w#bI>KdS?JoXBw$vg3j3ZY=OjkqVbe<_SZ0prf4+(ohl?1LF_X+I64tCEK{Po zL~Zmq9}Fv@l~uEzG0cyVta*nF)uzQ4K;`)4k;`Ozfz+&SyVpYej*djq4lxtMsb&ry zsZ~FWq6{~o)OwaRm>A;vOpWtsxzV40DsE<#(8;d46)q@ZZsWlpDsl8b5?9?RgW6<%CLh{5)7Mfu~g!u#HW;Frh=I$Q+h zm&%WV^|Py|t4W%+^_IY+A<`L~_+Buq1(6jS8ymLJ(ro_*Iym^^zfgzPfEB{F2CF>X z#r0*FHXu_-U^V#(={WGLAaAcAS@VX?nFC!u|L}auoRQHc6JifvR|_lX46hKA=AW`W z7WrhUu9oL2M4)x?bq$?H$z_m&wn^AA7&ZfzrO1BozoOL9UUQg{%Xu&JL5t{M~x96YJ=GbFXIZwt{I*=c;Sa~Mm2S!u!u8W72dI9Y{|AkM=*sid&CcM(?Sq>Q-SujB9=qmZ4f6pBi4GV z9P{x9ygJZa5{Uvw6QUM&M;XyQhnDM5OKCNr{^0#n1!T`>ufn~;I-H!PO}rsQ9VicU zmxoV=ageFZbX+1@OAB5PU4V5;+I^~}UQU%GAGD>F_|4o`p6Z8f&CS>)i8$tOu0}57 z1r|)YQ(sK7(uXS!FPK6QwUfYXU<1Kb@Zh{N-1V6u)dlKOfY~ zyMf!+)Q*P?O-s3l7%eLfgQUC4pIma zhy%e{cU$_m+-#eVTK}hUP`)WuKjA{7+RYD`j8vJ z7w*}ioVZt{H^>RQL<}_0z|4siHU(9vNS-H1&{Z@_6(-Jn;xSx!H|922NC1L9p3U7l zt#^$KM4#*`g1) zf5G?8O>|Aln_#qY@ygdfntJBqT`qqA=y|xKTRB-l%v&vXoS#t{XAik&rT~yPzK$4& zUOu296$h**Ob>{(dTZ3KXzQM~S?in2a>BNdbetfRX4_$LyCCFRVsmL?rUkc;LW*vh z80`AqDF;E~(J7~nN{>z<{j^=nG8ixaF|ONkzFR5G?*^<#&v%C4)_WWc+*rY=rSI{` zCs__3wV|GMs?xjE{Pg)wX4af|v~WF+j4?!=d|Cxf5?CjkGgJ(R#Hc6|`Knd@ENu$z zy(QOZ&$vL;x_M9{_U!uO+~5|HX2vE%;Mt@d1(>F7V7Rp@h;krnBIj@GGYJs4JZ~nU zQhm%m{_gqDNyL*229bcjvTGa6^R0`{zbx-!*&<(R3qY~sXIlkSm5fw5yP5HWCEue* z%k9}702iCM-?IrKZS7AE)%Z2Pw6lI^o_!K9oaJnwk~*OEqsNj5IJlHg@RHq3bf0lRnghOW^0q$=l+Mt%2wm zUA*(V+FBb%OGLEu-@nM)!}{5An0z?wLY* zTEAv+-}N%ZI3NB^6Esk*1)gpkBW7kJn*Y_^nA2lEwAfr8$m`>Wb5xSDm-)^NsvD zl3Mub4|vTom3lmu6e}u|0HA?c7fgSwx}kshx9rV+xT`|fXkPieB1)fp9Ki$*b9T`i zX0#Lh7;Wp#zbpR^^xVJ;K!dg-YxeE?m^lv-Tf$FH>qai*gKwyNVd=XZiHzUfl<_Iq z)%d9?ikt~#=C>&EF5w_P_+;QC;RVCy9482}LA&#W-a(iX6LBpBycPEQ0C^q&x-Icl-HTT&bTWv%C7I7T!eYJASiA++_ z7qse7?vFNhZqZfa%8wOC|5`g0lVV01DDlavB9keZO^esfoz76$nfyHE4JUh;-MqtU z3&=jR+t22NR(S>R0e5WE1j|u#yz;u}lXYlybcXqM^dO0qT7zW&wwa`w!!?Hz8dRnC z=Ex`_yZ9p?9uMuYgdIVBW)Y{y;^HyuOd7PW2bW4geN&C=3?K{)C{Dy}j&Pi0lI~1X zTiXb-LP_I@(4M7p1ccIl_lCsQ%sEK3|5*Fu355zbt~gKvjQX|f*I+$PZA`DHS>RC- zDV@19k#Ob<@7xIWD909qv00rw^bO>tCjMhB{@DCZOQmZfm{7}Z|5poYH^$C)gx7c- zFJk;-_`=!g3>qqkJ8xbE(|$f%Gy7+ZoaLC!yKDt)t(oU!*3OZ2!c~S`yyw$9Z}ig#8AEd_vCiYQXNQdC>pP>X0Dp2BLFI zydRLC>Ns{PT_($lLwxc-9A<>$EpBD&=*AuXRzw9p^U$y`WeDlt5ZVw(I$B|_FpBqN zYHQ0*v<&YiWymx$oZn~6tfCPH6Z|D;?j}+^p#h}3(jJh%T*L!nRI%k@Bf<(A{OqOr z)}K!zv6#%762_%MC$;PP=1mPfYu3?@jS|{LN?Qa9cJJ$|(#N8rzP5X-WDiFOP$U<< zkoE0fA`_R}U%~v66H5@W{gT|R6)k}1svJ0RR?9Ij0cM-^z1InX(?BIJ-w4BBRD|m$ zRs-R^AFqy@3td!xo#Rgl@;?Wfh;$usy$%jswrp!MqCPx-7Ywb~1Y{xja@NxtC}DVuC~$MUMv zJ=i=6R?xiVAflJ7sL|{r$%Bwwlu)^rbi0Twu#uW4 z%#4$7ceH2n=2^ufP8*>iv)pALSc65vgOX6&y0bPGloaRp)>Iiv@(BCyRc!=)apD=# z)Z~#1!1>dYIBT1<(m8=tBweYRXeB7|^1sIq(iTh}sZDEYY3>b!Wy9B7FFaw7obWA9 zd})GJ$8-ky`+s|I-bpb4k$vqex+SoSyk6-)#~PcIqqd`CYyf)_MdL&K0ta{)xw&CN z@)}Gox9A_RpvGVy2=0?xFnyIt!^iz`!i+O1epv2VD!z>P5snNU)IRu{747{R&Lp)2@TaW~hv033C?6 zoWgY=9__&gyaQK>Dl;t?qbi5L&%AjnGUKls7yr&4r5Zx;AQ;9mCG#8^m|Y7C3hmDr z7^yye={sBu=cm`5vr|TOWz<~Zji*QV+>NZO3Xdt6y%fk`YlHV+>$L2A`2H&oOe8n< zHlu{q_W6%y5K$|{81V9dDMoAx?1>?Iz}#2xv!@0iPwx-`TXagQ@!Ep(6nsu53dhw; zOiByJ9eeVEB?!!Uo27ZL#s>)eLqz#&snv?Gf3cCEe%6+i5g4TtWD;{<-iGGe}QKxzX!={NRT zBW@+YVo*-sSx);>``E#-J zz8gF61qIl!f)c(T4<`w{wL*N-sW#k1O76<4s=5}S^YsbJ;`%z$@yk0oaR5Hu2RU_A z)cKI<&fnQBL9ZApnQK3QVTJS1ipblgD+Xu>^3Fio7dt+oKd1*xNCRpm|A8VTh=4FyZK30V1Vgnlc8soUROmac9Snf75w$tdup0+q71yEt{+EgIbBdit} zBUh>~-p01yK5B(?hMZCw8E|D-Z=Kk<7prp+OVFaZj~=PM#E%PcTy&D@egScPLRWf^ z4$)k>d$Vn~^tkq;8r;zZZz>;In3&+Tbv+GP?`gve#8|&9I|Hmv%xlCvzARFMyt+4$ zmvSr-i)RhJ%uin?1qR=ZKYuST&ViFjKp8`cJ4kIq%_ey2azb;0(3o80twN3$j~%Jc z2ai@LDT|8a2XBt(9ao!~%^)EJ#&_qFE{srd_cVcz7NP}GV@ONc;6t2)dtJoeg@nTj zwA?ZSBVIL3Pu{zazF%acP>P6eWnUUH?|b-f{YCEh`4Ucg0aK-y%ltQV&t)_+f_cZ8 zxDD`D4(>)~De1pbiO&wwmfaF4nUTGFQ*}hP;%*-!gC!5Pf9}Fn7wCs7AsFi(q%8R- zH6N#xs6Cn;qdTegaEQRw^aB&hg+wS^nta z-Ty&FTOD1%5mXN(HqbB`NU?s`3Dl`TE1I(-@Xdn!k>d&f@<&ft82CK>$k^CqWWg(N z?~aE${$ZNt2gkktVRD{@n_IFDC?Hk4Vqi8scL%A$QP2N#`~IUz`ZmuwWOg?5R}cO? zAq#&_Y)INI?*TFn350%IJ%e{F)GU`ARMP^nkM8x)POamI?_7$cUU{B0y?eL$6^}CB z>Nh4ROX}X@tKQ2Ia&s`^$@_CmUl9sFH7(?=Z*4T|yJ~!qo%BvAC*#5$YFOo`|0XvR zX5rsnnH!PL^Usd_YYSf86lj4J6fC(H-jhvE8Y@ySH&}R;k`2tmZHMyLJtI*u94Y~P zjL%tiw-Mxf^O9?R^GR_^nDr7wFK~Yhmt}L|y^m6>T>LlL>dI>BlrkHeBY7g`V*`;x zRO};3JMit?O8-OS{E;J!(>-X08q)7LYxi)iANXLbqFwaWqNYZ^a=-E4av-a#+!f`d z1Lt3Ft*@1Y7Xr3VLG-Yi0_{|UG7ey_oU`H(M`wCP>RRU49r4SQ-Ic2FYd;l zBKLN`*=WVRO(4sEbp+wp2}hg(+$Sv!4Glb!{YXy7>Na5N)*y2;1;Tal4mz}7?4AM> znH;V^ehE!t!y6%#XMDN;Vk0s*jfPhF+bB#psn+iXFf6!vsD`1^uKroqBcRlQO|;CYo{G+6lyUyLsDN3^M?D zKE@{d?EZ*xY;TnNK){Boy`UxQ1^@WEzGIzIxy8Z3gU2(0W_Cbs7p#Hu=`m520PR^v zM+YU2{7ERw{=$bKg8uu)+XtxFy*uY!+OI>EwnXqKZ6<3A*H$a$9# zJVo$3bLpt+2ovyycd}CDZJ;r>0)LsmyL@6FcD!97KrNW6(iqSB$awNa*dnbBI_7MOtASj%E*EuVF zqo{cT#=QP^H5@iTQO>}9C#3g*(QF^3x+0jddecxBOnLd_*n7O0Xwgxfe0aA4pTL1T ze107t1{kbztoekf4V>`y^Po3G@u9TA@cK!=nq!E-fsE5fwKd6*G^# z&P9-gjIbbqy^Y%CvEc^g&#t~ZFS0S>lNsIubcPt7ag+#NjY{4bLXXTB0wW5mIJE5L zf#!TvwIqTJWhF#y{dz%rLNVr&#JYm_z|{(8!XVa=n=Z(XXOU*Zo0_Gi{JRWUXx)cK zhN{=9N|}$s(d9DsN!Ccmr7^On(P#=u0w%qVYW(7jt2AnD++zQ#AjUF@yr`&}=D7eM zhinVLTyP1Ie_Hnzw-x(3R|uNNe41yaBMT9quBS5{x}d5E^gtN4SiE}FB>dv+MJeWj z>Gly9l!T8@xR#pu={IW!GD!l=hnhcaFGT^6tZAs5Y?)w% zqxD^O-mq-$3G8Fu8{MVJR9fnfK~2+2dN?8@@X`&< zNh4bXatK|Vw0yUP;BM+GueQ%bNXT(9pJb7ixEGQXCA7x9A3+P#;EE*DPi!z*PfV(u z%3zaCbG?Pl>sRG2;sSnOrG2;W#}Wl+5Qd7r>^{~SD-VGxSEU73SGUow^C!X^(yniP z=O_{4^1Ud_L6v@J@}^TW`NZB86#SDAm4$VfAp*F^0Haf`c0c}TM9`js3y(?B_BE%m zL~x>L)ioo(#w91&VJv*(eHK@3D`-Wpe0PM%t~vb+HS}J`0t}o~>6K`p{eoRj?>fF+ zJ}#tT@BbSKB(ZVez%hWfaBcA-OIM-gVrS((_98ww)a8xozA2HZgZ|9#7#P>Qz>b2K z1xQcJ8#Ud=t>aP(>nD|bz2;jg`4W;`)-jp!=J!fu;#qHchd2MV4Yl6h^5xn&Q$~)~ z=5rcFIrq0K0eZokr9WpqZAOxqgj`0C6A#V@ zF>f{Gp_b@?LXGyU0;25L7O+-$=VQ9C@?o{1g-oaMfO zJ>oV%mzN_+kmBeCDQbJZ!$12}Jc|JTVw@QgO6?uDzc+WaH3-?cE_ZtUI0jBMmt2S- zdTvG(R5rhagn=^Vvn>Xx99BfPfzplN7x*kK2$_sUb<$3Qfc)L)5XMfe1LonlkSF4i zezxOC*ESAyHs04 zHKt!7K_pY#k$EmH58_H1pj`>efSv8Fl$8T@A-7B<+3%$u*{~}na zPH=LT8mG7sX}$yi_;94AG%uk(R)J$DCXhnfjj>C%D8s*X&&kQoZ;yF}WQA(orp_P7 z+gIso7kzwiEmj0m(T4u!L_nUL2ReKZ9D)My7GMyRFe^G$=>`u9$Ig3Uh z9|64YfGRXKT06pd+l1Of*#eue%P*Hr_D>Zr#_+I*>cDjui>ME_GQ(*E71|YwEwjJo z4!OuqdB{%Pb|})9mb;{L8NDnJTu-XN8DQY8%sgP14%*%dv+{nNX}I%0_QFn8*c5pX z!WwU{?x-TI2o+@MK$@jWj-9XgYyQ?S7qdkIGbM0}jXHZg4HjAuFJIV0aJDX7pcWg& zCX0Kmsc32mEWMra=mC0T%)ZQX%gD%mjXX#s!$J$SdRVNBPs;bH>SdG!H^r0^%(?3D z)-8>uxuG`I2U56pNb7T-O9d+&LK#_xnHKA+jCkQZcAc(H|d;NSM(D zN^3?*DL=23eP23AAsNN@=6|p%j`V+Cc%u^JnC~Yx@4vx{Z`=vh_17e5OEcKD!V!W( zmFkLfZ{O?re>boHWom}+_Wf5u7#FEMP!4$xf4y*CJFj6|6c`RD9d)G#000Q7NklF|&QfPT~2omZD#oauXXBbQbv>mOOhoIOX>q$^xf2O?~NVI{o7x>nW{ld!goF}p!-Yf$0Jm+k> zO_C%?qsa1{S5lu>(vb6JgfcJ;diW@kBq7_mjnnGj>4L}2@iI!NU6$(K^ik<}sJ~ue8Dg zBELvxK9?}(VknKS3=zndhi`oH=NmHj)_d9AG--J)a}=F<|Jn70p> za6O7*8%Lp;8d&{*SX1TWe~4`?+opNUD%$oaG-r;>ug6pw4n_y|pKi{1HR0un51pKY zk>V@B`-7D8PK+xBFOEDQ)Z8*;HeHUZwK8M*yI4Gr%PO#LzC0SD+ zuU_6d(*LF`{r&hK`jBLh7YUv_u3yiJ)JC$30#{Osa(K9o$KGg*)y@V7lU*DUp-i!0 ze`3Jz1Zbm~Bq>See~@PJ;p3mop8uMB9pZmemcHBeYK1eUX$Xo;F_`EwLUH){ztinTqIv=6MGfSf0Cw5+bCC(D7>JD!A|Hj zJ@QjnwS^OsQzEpRQY~w%#*M2XmsCwyzU1(+uN*`56Y)M_k+w=gIy|r zUj*XoZ(+*T4z3hjJbQs(`?X)=Kl!dd%cW~?(La9?fW514vijsx0KB){zY^W>H?QzL zfAqqAedZIK-~OIyOB`l&iYEmSkK`=BvIw z6{?4CQ;xW4zlwT|6HQ?Rj)YUa>4UtIm#^#xo`*J&r1rsX-xr74Kf4~1=7#NqlvDj+ z!TxdluOej+(*G!Q87DbjslbsJ4ryV@S2Zb0^O!V`X@@=9VUI~-g$D|ilNEZwe&E9} z&S;04e=N^XS}nB?hu3u-b^a?iDtfbVqvk2C&I_5&Li^xGan3X)XWG)tfp zO5zNHK(aShwW8Zm`&Gm%3>_RP(D^=sU3@9=!)=Die>#CLIEdGY0)Y|g?(9ztt}Ae)rWFa$ zZliIs6`9Ghg3$Lc8uCoxdJe`2S|Mb)B=m&sYvzMehP;4Y)nxgu$KR5$vC=j9l4aB3 z=Av1%<_oyv_}{$oHvRtU!ntjttaPg}91Td5=@No53fH~6sCtFt*uT?f_-3|$uXz6X zf9F|0b&BVof1c-_d+wf(bNZJRS~W##c`f|oqzI4*4NkXnMhUj zU-z^B+S(d#eeJ8PKK>-(&f6sGPb}ZKJ$sFa%P#|P;}2i5b=3R&B)6^+o;km?PaJ?Z z9Fgt6OsWmxne&`?5?;HfPkw?EoZvw~e|++Ty@isFYSp=V@XoJ}R+H<&MB~WAC+`)i zqWEPp=gV-n_FYFT2y(oe_TO#)wf2xQr%)coXgqhZv1=3KvgUhPRO&GMcdE64#mUu! z+V)QVPZCWxl1vhf=h(h)l_Fxb7_1E_1BEv1Pc+*6f9L$a)AkQi2crz3F9==rfB!rG zk8A%RUdI(%@2Gtt?e%WVRP8e@G=ban-}d;LPSdM?47S(TU}AfQdB@EEJIw#)7&KqM zAOAo6=|6X@&vb%!25-Fn>OJqfe(KbHM}ev@>}yxA)}(7*l%pbOcZ+!m`{wbh_bLK* zw_+O2eeP%fw_p5y1km**Z{-0WVeb}vY3Op%OVP&gjiQW@1t|u&oCZ7{q`a2e#j_`z zgru-Fqf$bl?Q;)cUq-dPZ|&sd+E8diuHp48;JtpzKY#ffC(Xc4aDs<~{}<)+RcXQs RKED6}002ovPDHLkV1i0@FtY#v diff --git a/tgstation.dme b/tgstation.dme index a243b83d3a5..e4167adc208 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -604,6 +604,9 @@ #include "code\datums\looping_sounds\item_sounds.dm" #include "code\datums\looping_sounds\machinery_sounds.dm" #include "code\datums\looping_sounds\weather.dm" +#include "code\datums\mapgen\_MapGenerator.dm" +#include "code\datums\mapgen\JungleGenerator.dm" +#include "code\datums\mapgen\biomes\_biome.dm" #include "code\datums\martial\_martial.dm" #include "code\datums\martial\boxing.dm" #include "code\datums\martial\cqc.dm" @@ -1331,8 +1334,8 @@ #include "code\game\turfs\open\floor\plating.dm" #include "code\game\turfs\open\floor\reinf_floor.dm" #include "code\game\turfs\open\floor\plating\asteroid.dm" -#include "code\game\turfs\open\floor\plating\dirt.dm" #include "code\game\turfs\open\floor\plating\misc_plating.dm" +#include "code\game\turfs\open\floor\plating\planet.dm" #include "code\game\turfs\open\space\space.dm" #include "code\game\turfs\open\space\transit.dm" #include "code\modules\actionspeed\_actionspeed_modifier.dm"