From 9b3c9aaea29af0d1c80c03b0e72b54b443bcf5cc Mon Sep 17 00:00:00 2001 From: Anuken Date: Sat, 3 Mar 2018 23:46:51 -0500 Subject: [PATCH] Storage blocks, organized sprites, liquid tunnel implementation --- .../sprites/blocks/door-large-icon.png | Bin 253 -> 0 bytes .../sprites/blocks/duriumwall-large-icon.png | Bin 247 -> 0 bytes .../blocks/{ => environment}/blackrock1.png | Bin .../{ => environment}/blackrockshadow1.png | Bin .../blocks/{ => environment}/blackstone1.png | Bin .../blocks/{ => environment}/blackstone2.png | Bin .../blocks/{ => environment}/blackstone3.png | Bin .../{ => environment}/blackstoneblock1.png | Bin .../{ => environment}/blackstoneblock2.png | Bin .../{ => environment}/blackstoneblock3.png | Bin .../{ => environment}/blackstoneedge.png | Bin .../blocks/{ => environment}/coal1.png | Bin .../blocks/{ => environment}/coal2.png | Bin .../blocks/{ => environment}/coal3.png | Bin .../blocks/{ => environment}/deepwater.png | Bin .../blocks/{ => environment}/dirt1.png | Bin .../blocks/{ => environment}/dirt2.png | Bin .../blocks/{ => environment}/dirt3.png | Bin .../blocks/{ => environment}/dirtedge.png | Bin .../blocks/{ => environment}/grass1.png | Bin .../blocks/{ => environment}/grass2.png | Bin .../blocks/{ => environment}/grass3.png | Bin .../blocks/{ => environment}/grassblock1.png | Bin .../blocks/{ => environment}/grassblock2.png | Bin .../blocks/{ => environment}/grassedge.png | Bin .../sprites/blocks/{ => environment}/ice1.png | Bin .../sprites/blocks/{ => environment}/ice2.png | Bin .../sprites/blocks/{ => environment}/ice3.png | Bin .../blocks/{ => environment}/iceedge.png | Bin .../blocks/{ => environment}/icerock1.png | Bin .../blocks/{ => environment}/icerock2.png | Bin .../{ => environment}/icerockshadow1.png | Bin .../{ => environment}/icerockshadow2.png | Bin .../blocks/{ => environment}/iron1.png | Bin .../blocks/{ => environment}/iron2.png | Bin .../blocks/{ => environment}/iron3.png | Bin .../sprites/blocks/{ => environment}/lava.png | Bin .../blocks/{ => environment}/lavaedge.png | Bin .../blocks/{ => environment}/mossblock.png | Bin .../sprites/blocks/{ => environment}/oil.png | Bin .../blocks/{ => environment}/oiledge.png | Bin .../blocks/{ => environment}/rock1.png | Bin .../blocks/{ => environment}/rock2.png | Bin .../blocks/{ => environment}/rockshadow1.png | Bin .../blocks/{ => environment}/rockshadow2.png | Bin .../blocks/{ => environment}/sand1.png | Bin .../blocks/{ => environment}/sand2.png | Bin .../blocks/{ => environment}/sand3.png | Bin .../blocks/{ => environment}/sandblock1.png | Bin .../blocks/{ => environment}/sandblock2.png | Bin .../blocks/{ => environment}/sandblock3.png | Bin .../blocks/{ => environment}/sandedge.png | Bin .../blocks/{ => environment}/shrub.png | Bin .../blocks/{ => environment}/shrubshadow.png | Bin .../blocks/{ => environment}/snow1.png | Bin .../blocks/{ => environment}/snow2.png | Bin .../blocks/{ => environment}/snow3.png | Bin .../blocks/{ => environment}/snowblock1.png | Bin .../blocks/{ => environment}/snowblock2.png | Bin .../blocks/{ => environment}/snowblock3.png | Bin .../blocks/{ => environment}/snowedge.png | Bin .../blocks/{ => environment}/stone1.png | Bin .../blocks/{ => environment}/stone2.png | Bin .../blocks/{ => environment}/stone3.png | Bin .../blocks/{ => environment}/stoneblock1.png | Bin .../blocks/{ => environment}/stoneblock2.png | Bin .../blocks/{ => environment}/stoneblock3.png | Bin .../blocks/{ => environment}/stoneedge.png | Bin .../blocks/{ => environment}/titanium1.png | Bin .../blocks/{ => environment}/titanium2.png | Bin .../blocks/{ => environment}/titanium3.png | Bin .../blocks/{ => environment}/uranium1.png | Bin .../blocks/{ => environment}/uranium2.png | Bin .../blocks/{ => environment}/uranium3.png | Bin .../blocks/{ => environment}/water.png | Bin .../blocks/{ => environment}/wateredge.png | Bin .../blocks/{ => extra}/block-middle.png | Bin .../blocks/{ => extra}/conduitliquid.png | Bin .../sprites/blocks/{ => extra}/cross.png | Bin .../sprites/blocks/{ => extra}/enemyspawn.png | Bin .../blocks/{ => extra}/playerspawn.png | Bin .../sprites/blocks/{ => extra}/shadow.png | Bin .../sprites/blocks/liquiditemjunction.png | Bin 242 -> 0 bytes core/assets-raw/sprites/blocks/mossstone.png | Bin 250 -> 0 bytes .../sprites/blocks/nuclearreactor-icon.png | Bin 220 -> 0 bytes .../blocks/{ => production}/coaldrill.png | Bin .../{ => production}/coalgenerator-top.png | Bin .../blocks/{ => production}/coalgenerator.png | Bin .../blocks/{ => production}/coalpurifier.png | Bin .../{ => production}/combustiongenerator.png | Bin .../blocks/{ => production}/crucible.png | Bin .../blocks/{ => production}/fluxpump.png | Bin .../blocks/{ => production}/irondrill.png | Bin .../blocks/{ => production}/lavasmelter.png | Bin .../nuclearreactor-center.png | Bin .../nuclearreactor-lights.png | Bin .../{ => production}/nuclearreactor-small.png | Bin .../{ => production}/nuclearreactor.png | Bin .../blocks/{ => production}/oilrefinery.png | Bin .../blocks/{ => production}/omnidrill.png | Bin .../blocks/{ => production}/powerbooster.png | Bin .../blocks/{ => production}/pulverizer.png | Bin .../sprites/blocks/{ => production}/pump.png | Bin .../{ => production}/quartzextractor.png | Bin .../{ => production}/rtgenerator-top.png | Bin .../blocks/{ => production}/rtgenerator.png | Bin .../{ => production}/siliconextractor.png | Bin .../{ => production}/smelter-middle.png | Bin .../blocks/{ => production}/smelter.png | Bin .../blocks/{ => production}/stonedrill.png | Bin .../blocks/{ => production}/stoneformer.png | Bin .../{ => production}/thermalgenerator.png | Bin .../blocks/{ => production}/titaniumdrill.png | Bin .../{ => production}/titaniumpurifier.png | Bin .../blocks/{ => production}/uraniumdrill.png | Bin .../sprites/blocks/steelwall-large-icon.png | Bin 243 -> 0 bytes .../sprites/blocks/{ => tech}/conduit.png | Bin .../blocks/{ => tech}/conduitbottom.png | Bin .../sprites/blocks/{ => tech}/conduittop.png | Bin .../sprites/blocks/{ => tech}/conveyor.png | Bin .../blocks/{ => tech}/conveyormove.png | Bin .../blocks/{ => tech}/conveyortunnel.png | Bin .../sprites/blocks/{ => tech}/core.png | Bin .../sprites/blocks/{ => tech}/junction.png | Bin .../blocks/{ => tech}/liquidjunction.png | Bin .../blocks/{ => tech}/liquidrouter.png | Bin .../{vault.png => tech/multiplexer.png} | Bin .../blocks/{ => tech}/poweredconveyor.png | Bin .../blocks/{ => tech}/poweredconveyormove.png | Bin .../blocks/{ => tech}/powerinfinite.png | Bin .../sprites/blocks/{ => tech}/powerlaser.png | Bin .../blocks/{ => tech}/powerlasercorner.png | Bin .../blocks/{ => tech}/powerlaserrouter.png | Bin .../sprites/blocks/{ => tech}/powervoid.png | Bin .../blocks/{ => tech}/pulseconduit.png | Bin .../blocks/{ => tech}/pulseconduitbottom.png | Bin .../blocks/{ => tech}/pulseconduittop.png | Bin .../sprites/blocks/{ => tech}/router.png | Bin .../blocks/{ => tech}/shieldgenerator.png | Bin .../sprites/blocks/{ => tech}/sorter.png | Bin .../sprites/blocks/{ => tech}/splitter.png | Bin .../blocks/{ => tech}/steelconveyor.png | Bin .../blocks/{ => tech}/steelconveyormove.png | Bin .../blocks/{ => tech}/teleporter-top.png | Bin .../sprites/blocks/{ => tech}/teleporter.png | Bin .../sprites/blocks/tech/unloader.png | Bin 0 -> 267 bytes .../sprites/blocks/tech/vault-icon.png | Bin 0 -> 302 bytes core/assets-raw/sprites/blocks/tech/vault.png | Bin 0 -> 582 bytes .../blocks/{ => tech}/weaponfactory.png | Bin .../blocks/titaniumwall-large-icon.png | Bin 235 -> 0 bytes .../blocks/{ => turrets}/block-2x2.png | Bin .../blocks/{ => turrets}/block-3x3.png | Bin .../sprites/blocks/{ => turrets}/block.png | Bin .../blocks/{ => turrets}/chainturret-icon.png | Bin .../blocks/{ => turrets}/chainturret.png | Bin .../blocks/{ => turrets}/doubleturret.png | Bin .../blocks/{ => turrets}/flameturret.png | Bin .../blocks/{ => turrets}/laserturret.png | Bin .../blocks/{ => turrets}/machineturret.png | Bin .../blocks/{ => turrets}/megarepairturret.png | Bin .../blocks/{ => turrets}/mortarturret.png | Bin .../blocks/{ => turrets}/plasmaturret.png | Bin .../blocks/{ => turrets}/repairturret.png | Bin .../blocks/{ => turrets}/shotgunturret.png | Bin .../blocks/{ => turrets}/sniperturret.png | Bin .../blocks/{ => turrets}/titancannon-icon.png | Bin .../blocks/{ => turrets}/titancannon.png | Bin .../sprites/blocks/{ => turrets}/turret.png | Bin .../blocks/{ => turrets}/waveturret.png | Bin core/assets-raw/sprites/blocks/vault-icon.png | Bin 228 -> 0 bytes .../blocks/{ => walls}/compositewall.png | Bin .../blocks/{ => walls}/door-large-open.png | Bin .../sprites/blocks/{ => walls}/door-large.png | Bin .../sprites/blocks/{ => walls}/door-open.png | Bin .../sprites/blocks/{ => walls}/door.png | Bin .../blocks/{ => walls}/duriumwall-large.png | Bin .../sprites/blocks/{ => walls}/duriumwall.png | Bin .../sprites/blocks/{ => walls}/ironwall.png | Bin .../blocks/{ => walls}/steelwall-large.png | Bin .../sprites/blocks/{ => walls}/steelwall.png | Bin .../sprites/blocks/{ => walls}/stonewall.png | Bin .../blocks/{ => walls}/titaniumshieldwall.png | Bin .../blocks/{ => walls}/titaniumwall-large.png | Bin .../blocks/{ => walls}/titaniumwall.png | Bin .../sprites/blocks/weaponfactory-icon.png | Bin 271 -> 0 bytes core/assets/sprites/sprites.atlas | 1814 ++++++++--------- core/assets/sprites/sprites.png | Bin 87391 -> 85562 bytes core/assets/version.properties | 4 +- .../io/anuke/mindustry/core/NetServer.java | 4 +- .../io/anuke/mindustry/game/Inventory.java | 4 +- .../io/anuke/mindustry/resource/Recipes.java | 4 +- .../ui/fragments/BlocksFragment.java | 14 +- core/src/io/anuke/mindustry/world/Block.java | 11 + core/src/io/anuke/mindustry/world/Tile.java | 23 +- .../world/blocks/DistributionBlocks.java | 13 +- .../mindustry/world/blocks/WeaponBlocks.java | 2 +- .../blocks/types/distribution/Router.java | 4 +- .../types/distribution/TunnelConduit.java | 64 + .../world/blocks/types/storage/CoreBlock.java | 6 +- .../blocks/types/storage/StorageBlock.java | 25 + .../world/blocks/types/storage/Unloader.java | 38 + .../world/blocks/types/storage/Vault.java | 9 +- 202 files changed, 1080 insertions(+), 959 deletions(-) delete mode 100644 core/assets-raw/sprites/blocks/door-large-icon.png delete mode 100644 core/assets-raw/sprites/blocks/duriumwall-large-icon.png rename core/assets-raw/sprites/blocks/{ => environment}/blackrock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackrockshadow1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstone1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstone2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstone3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstoneblock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstoneblock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstoneblock3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/blackstoneedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/coal1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/coal2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/coal3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/deepwater.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/dirt1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/dirt2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/dirt3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/dirtedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/grass1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/grass2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/grass3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/grassblock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/grassblock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/grassedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/ice1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/ice2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/ice3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/iceedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/icerock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/icerock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/icerockshadow1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/icerockshadow2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/iron1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/iron2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/iron3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/lava.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/lavaedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/mossblock.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/oil.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/oiledge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/rock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/rock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/rockshadow1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/rockshadow2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sand1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sand2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sand3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sandblock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sandblock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sandblock3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/sandedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/shrub.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/shrubshadow.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snow1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snow2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snow3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snowblock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snowblock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snowblock3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/snowedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stone1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stone2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stone3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stoneblock1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stoneblock2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stoneblock3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/stoneedge.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/titanium1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/titanium2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/titanium3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/uranium1.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/uranium2.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/uranium3.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/water.png (100%) rename core/assets-raw/sprites/blocks/{ => environment}/wateredge.png (100%) rename core/assets-raw/sprites/blocks/{ => extra}/block-middle.png (100%) rename core/assets-raw/sprites/blocks/{ => extra}/conduitliquid.png (100%) rename core/assets-raw/sprites/blocks/{ => extra}/cross.png (100%) rename core/assets-raw/sprites/blocks/{ => extra}/enemyspawn.png (100%) rename core/assets-raw/sprites/blocks/{ => extra}/playerspawn.png (100%) rename core/assets-raw/sprites/blocks/{ => extra}/shadow.png (100%) delete mode 100644 core/assets-raw/sprites/blocks/liquiditemjunction.png delete mode 100644 core/assets-raw/sprites/blocks/mossstone.png delete mode 100644 core/assets-raw/sprites/blocks/nuclearreactor-icon.png rename core/assets-raw/sprites/blocks/{ => production}/coaldrill.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/coalgenerator-top.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/coalgenerator.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/coalpurifier.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/combustiongenerator.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/crucible.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/fluxpump.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/irondrill.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/lavasmelter.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/nuclearreactor-center.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/nuclearreactor-lights.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/nuclearreactor-small.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/nuclearreactor.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/oilrefinery.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/omnidrill.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/powerbooster.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/pulverizer.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/pump.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/quartzextractor.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/rtgenerator-top.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/rtgenerator.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/siliconextractor.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/smelter-middle.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/smelter.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/stonedrill.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/stoneformer.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/thermalgenerator.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/titaniumdrill.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/titaniumpurifier.png (100%) rename core/assets-raw/sprites/blocks/{ => production}/uraniumdrill.png (100%) delete mode 100644 core/assets-raw/sprites/blocks/steelwall-large-icon.png rename core/assets-raw/sprites/blocks/{ => tech}/conduit.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/conduitbottom.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/conduittop.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/conveyor.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/conveyormove.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/conveyortunnel.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/core.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/junction.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/liquidjunction.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/liquidrouter.png (100%) rename core/assets-raw/sprites/blocks/{vault.png => tech/multiplexer.png} (100%) rename core/assets-raw/sprites/blocks/{ => tech}/poweredconveyor.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/poweredconveyormove.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/powerinfinite.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/powerlaser.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/powerlasercorner.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/powerlaserrouter.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/powervoid.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/pulseconduit.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/pulseconduitbottom.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/pulseconduittop.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/router.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/shieldgenerator.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/sorter.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/splitter.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/steelconveyor.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/steelconveyormove.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/teleporter-top.png (100%) rename core/assets-raw/sprites/blocks/{ => tech}/teleporter.png (100%) create mode 100644 core/assets-raw/sprites/blocks/tech/unloader.png create mode 100644 core/assets-raw/sprites/blocks/tech/vault-icon.png create mode 100644 core/assets-raw/sprites/blocks/tech/vault.png rename core/assets-raw/sprites/blocks/{ => tech}/weaponfactory.png (100%) delete mode 100644 core/assets-raw/sprites/blocks/titaniumwall-large-icon.png rename core/assets-raw/sprites/blocks/{ => turrets}/block-2x2.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/block-3x3.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/block.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/chainturret-icon.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/chainturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/doubleturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/flameturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/laserturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/machineturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/megarepairturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/mortarturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/plasmaturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/repairturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/shotgunturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/sniperturret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/titancannon-icon.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/titancannon.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/turret.png (100%) rename core/assets-raw/sprites/blocks/{ => turrets}/waveturret.png (100%) delete mode 100644 core/assets-raw/sprites/blocks/vault-icon.png rename core/assets-raw/sprites/blocks/{ => walls}/compositewall.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/door-large-open.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/door-large.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/door-open.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/door.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/duriumwall-large.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/duriumwall.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/ironwall.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/steelwall-large.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/steelwall.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/stonewall.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/titaniumshieldwall.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/titaniumwall-large.png (100%) rename core/assets-raw/sprites/blocks/{ => walls}/titaniumwall.png (100%) delete mode 100644 core/assets-raw/sprites/blocks/weaponfactory-icon.png create mode 100644 core/src/io/anuke/mindustry/world/blocks/types/distribution/TunnelConduit.java create mode 100644 core/src/io/anuke/mindustry/world/blocks/types/storage/StorageBlock.java create mode 100644 core/src/io/anuke/mindustry/world/blocks/types/storage/Unloader.java diff --git a/core/assets-raw/sprites/blocks/door-large-icon.png b/core/assets-raw/sprites/blocks/door-large-icon.png deleted file mode 100644 index 87dd1a0fdf1e34e43fa2fb0c52c260956e89c22a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 253 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4I14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_J=%7LLz#T-@oc)U|^6eag8W(&d<$F%`0JWE=o--Nlj5G&n(GMaQE~L z2yf&QXJB9`_jGX#k+__^r|9XadNwvTwu5WW@_>N9Y`5eD#?#yL?@KKC{@uvHz`!8J z+%GlZ#~02}MxRf6%XOPsLO$Hyo?pP~V=(tb)BFiOiMO;~@H}6j{p-t1VPFxbat4Xm?#4S1B0ilpUXO@geCw`cu>{= diff --git a/core/assets-raw/sprites/blocks/duriumwall-large-icon.png b/core/assets-raw/sprites/blocks/duriumwall-large-icon.png deleted file mode 100644 index 02b6bc82ce4dcceafb0b3dbfe8e16af5a4f7fd06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 247 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4I14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_J`a|%*tXdde2K37#Ji=Tq8=H^K)}k^GX<;i&7IyQd1PlGfOfQ+&z5* z!W;R-85kG}JzX3_BrezXuH|YlkZ|okY}Gq0F+yPR)#YCjYdBUHD$LMnJ{TbHaQRrk z$7S!I->Kf5D5+mJWp?JWx7G}MO7j(XHt9@AWjwG`UQpoROu69B63z+R^{yS|GCs=? v5*27}C3Pe`XVw(^`DJ%EymnhE%3$8ORy)3FnOX`10|SGntDnm{r-UW|xxG-4 diff --git a/core/assets-raw/sprites/blocks/blackrock1.png b/core/assets-raw/sprites/blocks/environment/blackrock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackrock1.png rename to core/assets-raw/sprites/blocks/environment/blackrock1.png diff --git a/core/assets-raw/sprites/blocks/blackrockshadow1.png b/core/assets-raw/sprites/blocks/environment/blackrockshadow1.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackrockshadow1.png rename to core/assets-raw/sprites/blocks/environment/blackrockshadow1.png diff --git a/core/assets-raw/sprites/blocks/blackstone1.png b/core/assets-raw/sprites/blocks/environment/blackstone1.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstone1.png rename to core/assets-raw/sprites/blocks/environment/blackstone1.png diff --git a/core/assets-raw/sprites/blocks/blackstone2.png b/core/assets-raw/sprites/blocks/environment/blackstone2.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstone2.png rename to core/assets-raw/sprites/blocks/environment/blackstone2.png diff --git a/core/assets-raw/sprites/blocks/blackstone3.png b/core/assets-raw/sprites/blocks/environment/blackstone3.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstone3.png rename to core/assets-raw/sprites/blocks/environment/blackstone3.png diff --git a/core/assets-raw/sprites/blocks/blackstoneblock1.png b/core/assets-raw/sprites/blocks/environment/blackstoneblock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstoneblock1.png rename to core/assets-raw/sprites/blocks/environment/blackstoneblock1.png diff --git a/core/assets-raw/sprites/blocks/blackstoneblock2.png b/core/assets-raw/sprites/blocks/environment/blackstoneblock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstoneblock2.png rename to core/assets-raw/sprites/blocks/environment/blackstoneblock2.png diff --git a/core/assets-raw/sprites/blocks/blackstoneblock3.png b/core/assets-raw/sprites/blocks/environment/blackstoneblock3.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstoneblock3.png rename to core/assets-raw/sprites/blocks/environment/blackstoneblock3.png diff --git a/core/assets-raw/sprites/blocks/blackstoneedge.png b/core/assets-raw/sprites/blocks/environment/blackstoneedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/blackstoneedge.png rename to core/assets-raw/sprites/blocks/environment/blackstoneedge.png diff --git a/core/assets-raw/sprites/blocks/coal1.png b/core/assets-raw/sprites/blocks/environment/coal1.png similarity index 100% rename from core/assets-raw/sprites/blocks/coal1.png rename to core/assets-raw/sprites/blocks/environment/coal1.png diff --git a/core/assets-raw/sprites/blocks/coal2.png b/core/assets-raw/sprites/blocks/environment/coal2.png similarity index 100% rename from core/assets-raw/sprites/blocks/coal2.png rename to core/assets-raw/sprites/blocks/environment/coal2.png diff --git a/core/assets-raw/sprites/blocks/coal3.png b/core/assets-raw/sprites/blocks/environment/coal3.png similarity index 100% rename from core/assets-raw/sprites/blocks/coal3.png rename to core/assets-raw/sprites/blocks/environment/coal3.png diff --git a/core/assets-raw/sprites/blocks/deepwater.png b/core/assets-raw/sprites/blocks/environment/deepwater.png similarity index 100% rename from core/assets-raw/sprites/blocks/deepwater.png rename to core/assets-raw/sprites/blocks/environment/deepwater.png diff --git a/core/assets-raw/sprites/blocks/dirt1.png b/core/assets-raw/sprites/blocks/environment/dirt1.png similarity index 100% rename from core/assets-raw/sprites/blocks/dirt1.png rename to core/assets-raw/sprites/blocks/environment/dirt1.png diff --git a/core/assets-raw/sprites/blocks/dirt2.png b/core/assets-raw/sprites/blocks/environment/dirt2.png similarity index 100% rename from core/assets-raw/sprites/blocks/dirt2.png rename to core/assets-raw/sprites/blocks/environment/dirt2.png diff --git a/core/assets-raw/sprites/blocks/dirt3.png b/core/assets-raw/sprites/blocks/environment/dirt3.png similarity index 100% rename from core/assets-raw/sprites/blocks/dirt3.png rename to core/assets-raw/sprites/blocks/environment/dirt3.png diff --git a/core/assets-raw/sprites/blocks/dirtedge.png b/core/assets-raw/sprites/blocks/environment/dirtedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/dirtedge.png rename to core/assets-raw/sprites/blocks/environment/dirtedge.png diff --git a/core/assets-raw/sprites/blocks/grass1.png b/core/assets-raw/sprites/blocks/environment/grass1.png similarity index 100% rename from core/assets-raw/sprites/blocks/grass1.png rename to core/assets-raw/sprites/blocks/environment/grass1.png diff --git a/core/assets-raw/sprites/blocks/grass2.png b/core/assets-raw/sprites/blocks/environment/grass2.png similarity index 100% rename from core/assets-raw/sprites/blocks/grass2.png rename to core/assets-raw/sprites/blocks/environment/grass2.png diff --git a/core/assets-raw/sprites/blocks/grass3.png b/core/assets-raw/sprites/blocks/environment/grass3.png similarity index 100% rename from core/assets-raw/sprites/blocks/grass3.png rename to core/assets-raw/sprites/blocks/environment/grass3.png diff --git a/core/assets-raw/sprites/blocks/grassblock1.png b/core/assets-raw/sprites/blocks/environment/grassblock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/grassblock1.png rename to core/assets-raw/sprites/blocks/environment/grassblock1.png diff --git a/core/assets-raw/sprites/blocks/grassblock2.png b/core/assets-raw/sprites/blocks/environment/grassblock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/grassblock2.png rename to core/assets-raw/sprites/blocks/environment/grassblock2.png diff --git a/core/assets-raw/sprites/blocks/grassedge.png b/core/assets-raw/sprites/blocks/environment/grassedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/grassedge.png rename to core/assets-raw/sprites/blocks/environment/grassedge.png diff --git a/core/assets-raw/sprites/blocks/ice1.png b/core/assets-raw/sprites/blocks/environment/ice1.png similarity index 100% rename from core/assets-raw/sprites/blocks/ice1.png rename to core/assets-raw/sprites/blocks/environment/ice1.png diff --git a/core/assets-raw/sprites/blocks/ice2.png b/core/assets-raw/sprites/blocks/environment/ice2.png similarity index 100% rename from core/assets-raw/sprites/blocks/ice2.png rename to core/assets-raw/sprites/blocks/environment/ice2.png diff --git a/core/assets-raw/sprites/blocks/ice3.png b/core/assets-raw/sprites/blocks/environment/ice3.png similarity index 100% rename from core/assets-raw/sprites/blocks/ice3.png rename to core/assets-raw/sprites/blocks/environment/ice3.png diff --git a/core/assets-raw/sprites/blocks/iceedge.png b/core/assets-raw/sprites/blocks/environment/iceedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/iceedge.png rename to core/assets-raw/sprites/blocks/environment/iceedge.png diff --git a/core/assets-raw/sprites/blocks/icerock1.png b/core/assets-raw/sprites/blocks/environment/icerock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/icerock1.png rename to core/assets-raw/sprites/blocks/environment/icerock1.png diff --git a/core/assets-raw/sprites/blocks/icerock2.png b/core/assets-raw/sprites/blocks/environment/icerock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/icerock2.png rename to core/assets-raw/sprites/blocks/environment/icerock2.png diff --git a/core/assets-raw/sprites/blocks/icerockshadow1.png b/core/assets-raw/sprites/blocks/environment/icerockshadow1.png similarity index 100% rename from core/assets-raw/sprites/blocks/icerockshadow1.png rename to core/assets-raw/sprites/blocks/environment/icerockshadow1.png diff --git a/core/assets-raw/sprites/blocks/icerockshadow2.png b/core/assets-raw/sprites/blocks/environment/icerockshadow2.png similarity index 100% rename from core/assets-raw/sprites/blocks/icerockshadow2.png rename to core/assets-raw/sprites/blocks/environment/icerockshadow2.png diff --git a/core/assets-raw/sprites/blocks/iron1.png b/core/assets-raw/sprites/blocks/environment/iron1.png similarity index 100% rename from core/assets-raw/sprites/blocks/iron1.png rename to core/assets-raw/sprites/blocks/environment/iron1.png diff --git a/core/assets-raw/sprites/blocks/iron2.png b/core/assets-raw/sprites/blocks/environment/iron2.png similarity index 100% rename from core/assets-raw/sprites/blocks/iron2.png rename to core/assets-raw/sprites/blocks/environment/iron2.png diff --git a/core/assets-raw/sprites/blocks/iron3.png b/core/assets-raw/sprites/blocks/environment/iron3.png similarity index 100% rename from core/assets-raw/sprites/blocks/iron3.png rename to core/assets-raw/sprites/blocks/environment/iron3.png diff --git a/core/assets-raw/sprites/blocks/lava.png b/core/assets-raw/sprites/blocks/environment/lava.png similarity index 100% rename from core/assets-raw/sprites/blocks/lava.png rename to core/assets-raw/sprites/blocks/environment/lava.png diff --git a/core/assets-raw/sprites/blocks/lavaedge.png b/core/assets-raw/sprites/blocks/environment/lavaedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/lavaedge.png rename to core/assets-raw/sprites/blocks/environment/lavaedge.png diff --git a/core/assets-raw/sprites/blocks/mossblock.png b/core/assets-raw/sprites/blocks/environment/mossblock.png similarity index 100% rename from core/assets-raw/sprites/blocks/mossblock.png rename to core/assets-raw/sprites/blocks/environment/mossblock.png diff --git a/core/assets-raw/sprites/blocks/oil.png b/core/assets-raw/sprites/blocks/environment/oil.png similarity index 100% rename from core/assets-raw/sprites/blocks/oil.png rename to core/assets-raw/sprites/blocks/environment/oil.png diff --git a/core/assets-raw/sprites/blocks/oiledge.png b/core/assets-raw/sprites/blocks/environment/oiledge.png similarity index 100% rename from core/assets-raw/sprites/blocks/oiledge.png rename to core/assets-raw/sprites/blocks/environment/oiledge.png diff --git a/core/assets-raw/sprites/blocks/rock1.png b/core/assets-raw/sprites/blocks/environment/rock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/rock1.png rename to core/assets-raw/sprites/blocks/environment/rock1.png diff --git a/core/assets-raw/sprites/blocks/rock2.png b/core/assets-raw/sprites/blocks/environment/rock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/rock2.png rename to core/assets-raw/sprites/blocks/environment/rock2.png diff --git a/core/assets-raw/sprites/blocks/rockshadow1.png b/core/assets-raw/sprites/blocks/environment/rockshadow1.png similarity index 100% rename from core/assets-raw/sprites/blocks/rockshadow1.png rename to core/assets-raw/sprites/blocks/environment/rockshadow1.png diff --git a/core/assets-raw/sprites/blocks/rockshadow2.png b/core/assets-raw/sprites/blocks/environment/rockshadow2.png similarity index 100% rename from core/assets-raw/sprites/blocks/rockshadow2.png rename to core/assets-raw/sprites/blocks/environment/rockshadow2.png diff --git a/core/assets-raw/sprites/blocks/sand1.png b/core/assets-raw/sprites/blocks/environment/sand1.png similarity index 100% rename from core/assets-raw/sprites/blocks/sand1.png rename to core/assets-raw/sprites/blocks/environment/sand1.png diff --git a/core/assets-raw/sprites/blocks/sand2.png b/core/assets-raw/sprites/blocks/environment/sand2.png similarity index 100% rename from core/assets-raw/sprites/blocks/sand2.png rename to core/assets-raw/sprites/blocks/environment/sand2.png diff --git a/core/assets-raw/sprites/blocks/sand3.png b/core/assets-raw/sprites/blocks/environment/sand3.png similarity index 100% rename from core/assets-raw/sprites/blocks/sand3.png rename to core/assets-raw/sprites/blocks/environment/sand3.png diff --git a/core/assets-raw/sprites/blocks/sandblock1.png b/core/assets-raw/sprites/blocks/environment/sandblock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/sandblock1.png rename to core/assets-raw/sprites/blocks/environment/sandblock1.png diff --git a/core/assets-raw/sprites/blocks/sandblock2.png b/core/assets-raw/sprites/blocks/environment/sandblock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/sandblock2.png rename to core/assets-raw/sprites/blocks/environment/sandblock2.png diff --git a/core/assets-raw/sprites/blocks/sandblock3.png b/core/assets-raw/sprites/blocks/environment/sandblock3.png similarity index 100% rename from core/assets-raw/sprites/blocks/sandblock3.png rename to core/assets-raw/sprites/blocks/environment/sandblock3.png diff --git a/core/assets-raw/sprites/blocks/sandedge.png b/core/assets-raw/sprites/blocks/environment/sandedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/sandedge.png rename to core/assets-raw/sprites/blocks/environment/sandedge.png diff --git a/core/assets-raw/sprites/blocks/shrub.png b/core/assets-raw/sprites/blocks/environment/shrub.png similarity index 100% rename from core/assets-raw/sprites/blocks/shrub.png rename to core/assets-raw/sprites/blocks/environment/shrub.png diff --git a/core/assets-raw/sprites/blocks/shrubshadow.png b/core/assets-raw/sprites/blocks/environment/shrubshadow.png similarity index 100% rename from core/assets-raw/sprites/blocks/shrubshadow.png rename to core/assets-raw/sprites/blocks/environment/shrubshadow.png diff --git a/core/assets-raw/sprites/blocks/snow1.png b/core/assets-raw/sprites/blocks/environment/snow1.png similarity index 100% rename from core/assets-raw/sprites/blocks/snow1.png rename to core/assets-raw/sprites/blocks/environment/snow1.png diff --git a/core/assets-raw/sprites/blocks/snow2.png b/core/assets-raw/sprites/blocks/environment/snow2.png similarity index 100% rename from core/assets-raw/sprites/blocks/snow2.png rename to core/assets-raw/sprites/blocks/environment/snow2.png diff --git a/core/assets-raw/sprites/blocks/snow3.png b/core/assets-raw/sprites/blocks/environment/snow3.png similarity index 100% rename from core/assets-raw/sprites/blocks/snow3.png rename to core/assets-raw/sprites/blocks/environment/snow3.png diff --git a/core/assets-raw/sprites/blocks/snowblock1.png b/core/assets-raw/sprites/blocks/environment/snowblock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/snowblock1.png rename to core/assets-raw/sprites/blocks/environment/snowblock1.png diff --git a/core/assets-raw/sprites/blocks/snowblock2.png b/core/assets-raw/sprites/blocks/environment/snowblock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/snowblock2.png rename to core/assets-raw/sprites/blocks/environment/snowblock2.png diff --git a/core/assets-raw/sprites/blocks/snowblock3.png b/core/assets-raw/sprites/blocks/environment/snowblock3.png similarity index 100% rename from core/assets-raw/sprites/blocks/snowblock3.png rename to core/assets-raw/sprites/blocks/environment/snowblock3.png diff --git a/core/assets-raw/sprites/blocks/snowedge.png b/core/assets-raw/sprites/blocks/environment/snowedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/snowedge.png rename to core/assets-raw/sprites/blocks/environment/snowedge.png diff --git a/core/assets-raw/sprites/blocks/stone1.png b/core/assets-raw/sprites/blocks/environment/stone1.png similarity index 100% rename from core/assets-raw/sprites/blocks/stone1.png rename to core/assets-raw/sprites/blocks/environment/stone1.png diff --git a/core/assets-raw/sprites/blocks/stone2.png b/core/assets-raw/sprites/blocks/environment/stone2.png similarity index 100% rename from core/assets-raw/sprites/blocks/stone2.png rename to core/assets-raw/sprites/blocks/environment/stone2.png diff --git a/core/assets-raw/sprites/blocks/stone3.png b/core/assets-raw/sprites/blocks/environment/stone3.png similarity index 100% rename from core/assets-raw/sprites/blocks/stone3.png rename to core/assets-raw/sprites/blocks/environment/stone3.png diff --git a/core/assets-raw/sprites/blocks/stoneblock1.png b/core/assets-raw/sprites/blocks/environment/stoneblock1.png similarity index 100% rename from core/assets-raw/sprites/blocks/stoneblock1.png rename to core/assets-raw/sprites/blocks/environment/stoneblock1.png diff --git a/core/assets-raw/sprites/blocks/stoneblock2.png b/core/assets-raw/sprites/blocks/environment/stoneblock2.png similarity index 100% rename from core/assets-raw/sprites/blocks/stoneblock2.png rename to core/assets-raw/sprites/blocks/environment/stoneblock2.png diff --git a/core/assets-raw/sprites/blocks/stoneblock3.png b/core/assets-raw/sprites/blocks/environment/stoneblock3.png similarity index 100% rename from core/assets-raw/sprites/blocks/stoneblock3.png rename to core/assets-raw/sprites/blocks/environment/stoneblock3.png diff --git a/core/assets-raw/sprites/blocks/stoneedge.png b/core/assets-raw/sprites/blocks/environment/stoneedge.png similarity index 100% rename from core/assets-raw/sprites/blocks/stoneedge.png rename to core/assets-raw/sprites/blocks/environment/stoneedge.png diff --git a/core/assets-raw/sprites/blocks/titanium1.png b/core/assets-raw/sprites/blocks/environment/titanium1.png similarity index 100% rename from core/assets-raw/sprites/blocks/titanium1.png rename to core/assets-raw/sprites/blocks/environment/titanium1.png diff --git a/core/assets-raw/sprites/blocks/titanium2.png b/core/assets-raw/sprites/blocks/environment/titanium2.png similarity index 100% rename from core/assets-raw/sprites/blocks/titanium2.png rename to core/assets-raw/sprites/blocks/environment/titanium2.png diff --git a/core/assets-raw/sprites/blocks/titanium3.png b/core/assets-raw/sprites/blocks/environment/titanium3.png similarity index 100% rename from core/assets-raw/sprites/blocks/titanium3.png rename to core/assets-raw/sprites/blocks/environment/titanium3.png diff --git a/core/assets-raw/sprites/blocks/uranium1.png b/core/assets-raw/sprites/blocks/environment/uranium1.png similarity index 100% rename from core/assets-raw/sprites/blocks/uranium1.png rename to core/assets-raw/sprites/blocks/environment/uranium1.png diff --git a/core/assets-raw/sprites/blocks/uranium2.png b/core/assets-raw/sprites/blocks/environment/uranium2.png similarity index 100% rename from core/assets-raw/sprites/blocks/uranium2.png rename to core/assets-raw/sprites/blocks/environment/uranium2.png diff --git a/core/assets-raw/sprites/blocks/uranium3.png b/core/assets-raw/sprites/blocks/environment/uranium3.png similarity index 100% rename from core/assets-raw/sprites/blocks/uranium3.png rename to core/assets-raw/sprites/blocks/environment/uranium3.png diff --git a/core/assets-raw/sprites/blocks/water.png b/core/assets-raw/sprites/blocks/environment/water.png similarity index 100% rename from core/assets-raw/sprites/blocks/water.png rename to core/assets-raw/sprites/blocks/environment/water.png diff --git a/core/assets-raw/sprites/blocks/wateredge.png b/core/assets-raw/sprites/blocks/environment/wateredge.png similarity index 100% rename from core/assets-raw/sprites/blocks/wateredge.png rename to core/assets-raw/sprites/blocks/environment/wateredge.png diff --git a/core/assets-raw/sprites/blocks/block-middle.png b/core/assets-raw/sprites/blocks/extra/block-middle.png similarity index 100% rename from core/assets-raw/sprites/blocks/block-middle.png rename to core/assets-raw/sprites/blocks/extra/block-middle.png diff --git a/core/assets-raw/sprites/blocks/conduitliquid.png b/core/assets-raw/sprites/blocks/extra/conduitliquid.png similarity index 100% rename from core/assets-raw/sprites/blocks/conduitliquid.png rename to core/assets-raw/sprites/blocks/extra/conduitliquid.png diff --git a/core/assets-raw/sprites/blocks/cross.png b/core/assets-raw/sprites/blocks/extra/cross.png similarity index 100% rename from core/assets-raw/sprites/blocks/cross.png rename to core/assets-raw/sprites/blocks/extra/cross.png diff --git a/core/assets-raw/sprites/blocks/enemyspawn.png b/core/assets-raw/sprites/blocks/extra/enemyspawn.png similarity index 100% rename from core/assets-raw/sprites/blocks/enemyspawn.png rename to core/assets-raw/sprites/blocks/extra/enemyspawn.png diff --git a/core/assets-raw/sprites/blocks/playerspawn.png b/core/assets-raw/sprites/blocks/extra/playerspawn.png similarity index 100% rename from core/assets-raw/sprites/blocks/playerspawn.png rename to core/assets-raw/sprites/blocks/extra/playerspawn.png diff --git a/core/assets-raw/sprites/blocks/shadow.png b/core/assets-raw/sprites/blocks/extra/shadow.png similarity index 100% rename from core/assets-raw/sprites/blocks/shadow.png rename to core/assets-raw/sprites/blocks/extra/shadow.png diff --git a/core/assets-raw/sprites/blocks/liquiditemjunction.png b/core/assets-raw/sprites/blocks/liquiditemjunction.png deleted file mode 100644 index 9df1857781ff4491699081d0ce29afd76e556e7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 242 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4I14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_J`a&!cuJ6Pu9I;U|^6eag8W(&d<$F%`0JWE=o--Nlj5G&n(GMaQE~L z2yf&QXJBB+@pN$vk+|I2w~?3GkcU~nP5gtD-j-Ie&r!FUTDA2ToKmjodLZv<=de!6 zvFSl_Pa(q@%gW{7`5a7*RW^QqCT+ZU-lK4i041h|Gkc~gH64=g+8wWEY(MSJ->;5B q*=w~ew$2PxWxNoz`>gjP&X9DCh9BC?c^McO7(8A5T-G@yGywpqSWU73 diff --git a/core/assets-raw/sprites/blocks/mossstone.png b/core/assets-raw/sprites/blocks/mossstone.png deleted file mode 100644 index f49713af7c5bf579ab37573f23f9c30f320737b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 250 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4kiW$2Jc+WI}8jAoCO|{#S9GG!XV7ZFl&wk z0|NtliKnkC`$JX{CVB4oXgzlZ1_sFz*N775{M_8syb=cIqSVBa)D(sC%#sWRcTeAd z@J2py1_p)_PZ!4!j_bL-8@UcS2)N8w+$rG;@Gt0rXR=U$Ty0b zbCRadOuaX+=-i*+yxZq@`?Zz(t}jdFg1mmG|93q0ongyG2}z~cFdh=kXwYoltZ-l<}C&W2FViFh!W@g+}zZ>5(ej@ z)Wnk16ovB4k_-iRPv3y>Mm}){1_l>T7sn8Z%e}n^c@HS?9N{}6Albfhmt)x0O|F%$ zi~1e@+P=PX=dY=8Xo-VhAeZx`hRqY+tgLyv%V3q_W_iVY#Fdh=kXwXFNOqxMv=svbgJg+oM2T~LZftgChyTj!K1Ah^T&43CQO mⅅf>t#+#udtVS!Tx%p;X{kKb&?DW3=E#GelF{r5}E+FI!A;6 diff --git a/core/assets-raw/sprites/blocks/conduit.png b/core/assets-raw/sprites/blocks/tech/conduit.png similarity index 100% rename from core/assets-raw/sprites/blocks/conduit.png rename to core/assets-raw/sprites/blocks/tech/conduit.png diff --git a/core/assets-raw/sprites/blocks/conduitbottom.png b/core/assets-raw/sprites/blocks/tech/conduitbottom.png similarity index 100% rename from core/assets-raw/sprites/blocks/conduitbottom.png rename to core/assets-raw/sprites/blocks/tech/conduitbottom.png diff --git a/core/assets-raw/sprites/blocks/conduittop.png b/core/assets-raw/sprites/blocks/tech/conduittop.png similarity index 100% rename from core/assets-raw/sprites/blocks/conduittop.png rename to core/assets-raw/sprites/blocks/tech/conduittop.png diff --git a/core/assets-raw/sprites/blocks/conveyor.png b/core/assets-raw/sprites/blocks/tech/conveyor.png similarity index 100% rename from core/assets-raw/sprites/blocks/conveyor.png rename to core/assets-raw/sprites/blocks/tech/conveyor.png diff --git a/core/assets-raw/sprites/blocks/conveyormove.png b/core/assets-raw/sprites/blocks/tech/conveyormove.png similarity index 100% rename from core/assets-raw/sprites/blocks/conveyormove.png rename to core/assets-raw/sprites/blocks/tech/conveyormove.png diff --git a/core/assets-raw/sprites/blocks/conveyortunnel.png b/core/assets-raw/sprites/blocks/tech/conveyortunnel.png similarity index 100% rename from core/assets-raw/sprites/blocks/conveyortunnel.png rename to core/assets-raw/sprites/blocks/tech/conveyortunnel.png diff --git a/core/assets-raw/sprites/blocks/core.png b/core/assets-raw/sprites/blocks/tech/core.png similarity index 100% rename from core/assets-raw/sprites/blocks/core.png rename to core/assets-raw/sprites/blocks/tech/core.png diff --git a/core/assets-raw/sprites/blocks/junction.png b/core/assets-raw/sprites/blocks/tech/junction.png similarity index 100% rename from core/assets-raw/sprites/blocks/junction.png rename to core/assets-raw/sprites/blocks/tech/junction.png diff --git a/core/assets-raw/sprites/blocks/liquidjunction.png b/core/assets-raw/sprites/blocks/tech/liquidjunction.png similarity index 100% rename from core/assets-raw/sprites/blocks/liquidjunction.png rename to core/assets-raw/sprites/blocks/tech/liquidjunction.png diff --git a/core/assets-raw/sprites/blocks/liquidrouter.png b/core/assets-raw/sprites/blocks/tech/liquidrouter.png similarity index 100% rename from core/assets-raw/sprites/blocks/liquidrouter.png rename to core/assets-raw/sprites/blocks/tech/liquidrouter.png diff --git a/core/assets-raw/sprites/blocks/vault.png b/core/assets-raw/sprites/blocks/tech/multiplexer.png similarity index 100% rename from core/assets-raw/sprites/blocks/vault.png rename to core/assets-raw/sprites/blocks/tech/multiplexer.png diff --git a/core/assets-raw/sprites/blocks/poweredconveyor.png b/core/assets-raw/sprites/blocks/tech/poweredconveyor.png similarity index 100% rename from core/assets-raw/sprites/blocks/poweredconveyor.png rename to core/assets-raw/sprites/blocks/tech/poweredconveyor.png diff --git a/core/assets-raw/sprites/blocks/poweredconveyormove.png b/core/assets-raw/sprites/blocks/tech/poweredconveyormove.png similarity index 100% rename from core/assets-raw/sprites/blocks/poweredconveyormove.png rename to core/assets-raw/sprites/blocks/tech/poweredconveyormove.png diff --git a/core/assets-raw/sprites/blocks/powerinfinite.png b/core/assets-raw/sprites/blocks/tech/powerinfinite.png similarity index 100% rename from core/assets-raw/sprites/blocks/powerinfinite.png rename to core/assets-raw/sprites/blocks/tech/powerinfinite.png diff --git a/core/assets-raw/sprites/blocks/powerlaser.png b/core/assets-raw/sprites/blocks/tech/powerlaser.png similarity index 100% rename from core/assets-raw/sprites/blocks/powerlaser.png rename to core/assets-raw/sprites/blocks/tech/powerlaser.png diff --git a/core/assets-raw/sprites/blocks/powerlasercorner.png b/core/assets-raw/sprites/blocks/tech/powerlasercorner.png similarity index 100% rename from core/assets-raw/sprites/blocks/powerlasercorner.png rename to core/assets-raw/sprites/blocks/tech/powerlasercorner.png diff --git a/core/assets-raw/sprites/blocks/powerlaserrouter.png b/core/assets-raw/sprites/blocks/tech/powerlaserrouter.png similarity index 100% rename from core/assets-raw/sprites/blocks/powerlaserrouter.png rename to core/assets-raw/sprites/blocks/tech/powerlaserrouter.png diff --git a/core/assets-raw/sprites/blocks/powervoid.png b/core/assets-raw/sprites/blocks/tech/powervoid.png similarity index 100% rename from core/assets-raw/sprites/blocks/powervoid.png rename to core/assets-raw/sprites/blocks/tech/powervoid.png diff --git a/core/assets-raw/sprites/blocks/pulseconduit.png b/core/assets-raw/sprites/blocks/tech/pulseconduit.png similarity index 100% rename from core/assets-raw/sprites/blocks/pulseconduit.png rename to core/assets-raw/sprites/blocks/tech/pulseconduit.png diff --git a/core/assets-raw/sprites/blocks/pulseconduitbottom.png b/core/assets-raw/sprites/blocks/tech/pulseconduitbottom.png similarity index 100% rename from core/assets-raw/sprites/blocks/pulseconduitbottom.png rename to core/assets-raw/sprites/blocks/tech/pulseconduitbottom.png diff --git a/core/assets-raw/sprites/blocks/pulseconduittop.png b/core/assets-raw/sprites/blocks/tech/pulseconduittop.png similarity index 100% rename from core/assets-raw/sprites/blocks/pulseconduittop.png rename to core/assets-raw/sprites/blocks/tech/pulseconduittop.png diff --git a/core/assets-raw/sprites/blocks/router.png b/core/assets-raw/sprites/blocks/tech/router.png similarity index 100% rename from core/assets-raw/sprites/blocks/router.png rename to core/assets-raw/sprites/blocks/tech/router.png diff --git a/core/assets-raw/sprites/blocks/shieldgenerator.png b/core/assets-raw/sprites/blocks/tech/shieldgenerator.png similarity index 100% rename from core/assets-raw/sprites/blocks/shieldgenerator.png rename to core/assets-raw/sprites/blocks/tech/shieldgenerator.png diff --git a/core/assets-raw/sprites/blocks/sorter.png b/core/assets-raw/sprites/blocks/tech/sorter.png similarity index 100% rename from core/assets-raw/sprites/blocks/sorter.png rename to core/assets-raw/sprites/blocks/tech/sorter.png diff --git a/core/assets-raw/sprites/blocks/splitter.png b/core/assets-raw/sprites/blocks/tech/splitter.png similarity index 100% rename from core/assets-raw/sprites/blocks/splitter.png rename to core/assets-raw/sprites/blocks/tech/splitter.png diff --git a/core/assets-raw/sprites/blocks/steelconveyor.png b/core/assets-raw/sprites/blocks/tech/steelconveyor.png similarity index 100% rename from core/assets-raw/sprites/blocks/steelconveyor.png rename to core/assets-raw/sprites/blocks/tech/steelconveyor.png diff --git a/core/assets-raw/sprites/blocks/steelconveyormove.png b/core/assets-raw/sprites/blocks/tech/steelconveyormove.png similarity index 100% rename from core/assets-raw/sprites/blocks/steelconveyormove.png rename to core/assets-raw/sprites/blocks/tech/steelconveyormove.png diff --git a/core/assets-raw/sprites/blocks/teleporter-top.png b/core/assets-raw/sprites/blocks/tech/teleporter-top.png similarity index 100% rename from core/assets-raw/sprites/blocks/teleporter-top.png rename to core/assets-raw/sprites/blocks/tech/teleporter-top.png diff --git a/core/assets-raw/sprites/blocks/teleporter.png b/core/assets-raw/sprites/blocks/tech/teleporter.png similarity index 100% rename from core/assets-raw/sprites/blocks/teleporter.png rename to core/assets-raw/sprites/blocks/tech/teleporter.png diff --git a/core/assets-raw/sprites/blocks/tech/unloader.png b/core/assets-raw/sprites/blocks/tech/unloader.png new file mode 100644 index 0000000000000000000000000000000000000000..7de606ee518ce001ed97a5c0ad88fb930bf18341 GIT binary patch literal 267 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4I14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_D9StOw5)VW}mnj7#Ji=Tq8=H^K)}k^GX<;i&7IyQd1PlGfOfQ+&z5* z!W;R-85kH^JzX3_Brdo1E#y6HAmAFmW`bV9izO4*2~P8ys4DbA@1gE4mvBv!Um9FG zg^nrOj<(<4|E=Dow>0FAY{ML522*AhPhP#t$Bc5 z^g1Hqc+-+Ju0J#Njzyf|Y53)T_FbKX){OSKl{fUC?pvkuaoca!XLEis-Ym3F>o--+ RV_;xl@O1TaS?83{1OW7LTq*zn literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/tech/vault-icon.png b/core/assets-raw/sprites/blocks/tech/vault-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..13f2aa0fcdaa1aba539eb90951bac3a75a37e475 GIT binary patch literal 302 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4kiW$2Jc+WI}8jAoCO|{#S9GG!XV7ZFl&wk z0|NtliKnkC`y*x+Mh2m^51(CRU|^6eag8W(&d<$F%`0JWE=o--Nlj5G&n(GMaQE~L z2yf&QXJBAh;pyTS!g0N{Yc1EI1O|qD`$a}GU1NTxI38rxjW&w>!h7x7*?lMF4(xg6 z&C{)*CccHE>nK0V-x9XO1PM2N+2fgoGTe$z`j3wn*)#Cm|K7bQLO%QMsmE)(jxJj| zWm9f+e@tj!rreUsfT|a%Y64%^fArFxERd9wyKvQKc3}@bzumo4Hu-R#+f!^l>u_gk zlqjrI14-?iy0WWg+Z8+Vb&aw z3ic9DUsv`=%q$Eh+8#XLB^ekPBuiW)N}Tg^b5rw57@Uhz6H8K46v{J8G8EiBeFMT9 z`NSC*7!P>5IEGl9o*S~!@2~?;?MfxZmKSZCXOua5u`hd<^MU>DCr+IYs-`hli_O*R}fMYDR|c%bi=VMV&sw7^eSX z+iY3i3nhNf^3OA56s#@j=x}**oMp3GyVIg6G1+TRXfF**U&QMdkR>xSb^bSzBkW$r zo9}m=sH(dEF~!8cwjwxfJ-_?+t*jq5?&rQGxMuos(}t_x4=Px1-`02Hf4=v#{PSry z)w{MVtI^LyWa^I5FTb|5y7(PFw!Y*CTre3za6 kyC;huK0BY)OVEBs+W*^IUy7e(U|?YIboFyt=akR{029Fb(*OVf literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/weaponfactory.png b/core/assets-raw/sprites/blocks/tech/weaponfactory.png similarity index 100% rename from core/assets-raw/sprites/blocks/weaponfactory.png rename to core/assets-raw/sprites/blocks/tech/weaponfactory.png diff --git a/core/assets-raw/sprites/blocks/titaniumwall-large-icon.png b/core/assets-raw/sprites/blocks/titaniumwall-large-icon.png deleted file mode 100644 index 6361f084c52b5c92336895e0bb17e37966896048..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4I14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_J`a|%qncxZX{l3U|^6eag8W(&d<$F%`0JWE=o--Nlj5G&n(GMaQE~L z2yf&QXJBAR^>lFzk+_^ZXYaee^=xcxZRh9TGe}_8nQy;0@xfE!#ESp#RLfY+*Uw84 zm>iNYA^1WYx6%_m0wjxfs`og9i>A`0(l{v&icw jB3lAQ6?QW&<6!WfXBfEh&X?m13=9mOu6{1-oD!M<^Bhm8 diff --git a/core/assets-raw/sprites/blocks/block-2x2.png b/core/assets-raw/sprites/blocks/turrets/block-2x2.png similarity index 100% rename from core/assets-raw/sprites/blocks/block-2x2.png rename to core/assets-raw/sprites/blocks/turrets/block-2x2.png diff --git a/core/assets-raw/sprites/blocks/block-3x3.png b/core/assets-raw/sprites/blocks/turrets/block-3x3.png similarity index 100% rename from core/assets-raw/sprites/blocks/block-3x3.png rename to core/assets-raw/sprites/blocks/turrets/block-3x3.png diff --git a/core/assets-raw/sprites/blocks/block.png b/core/assets-raw/sprites/blocks/turrets/block.png similarity index 100% rename from core/assets-raw/sprites/blocks/block.png rename to core/assets-raw/sprites/blocks/turrets/block.png diff --git a/core/assets-raw/sprites/blocks/chainturret-icon.png b/core/assets-raw/sprites/blocks/turrets/chainturret-icon.png similarity index 100% rename from core/assets-raw/sprites/blocks/chainturret-icon.png rename to core/assets-raw/sprites/blocks/turrets/chainturret-icon.png diff --git a/core/assets-raw/sprites/blocks/chainturret.png b/core/assets-raw/sprites/blocks/turrets/chainturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/chainturret.png rename to core/assets-raw/sprites/blocks/turrets/chainturret.png diff --git a/core/assets-raw/sprites/blocks/doubleturret.png b/core/assets-raw/sprites/blocks/turrets/doubleturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/doubleturret.png rename to core/assets-raw/sprites/blocks/turrets/doubleturret.png diff --git a/core/assets-raw/sprites/blocks/flameturret.png b/core/assets-raw/sprites/blocks/turrets/flameturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/flameturret.png rename to core/assets-raw/sprites/blocks/turrets/flameturret.png diff --git a/core/assets-raw/sprites/blocks/laserturret.png b/core/assets-raw/sprites/blocks/turrets/laserturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/laserturret.png rename to core/assets-raw/sprites/blocks/turrets/laserturret.png diff --git a/core/assets-raw/sprites/blocks/machineturret.png b/core/assets-raw/sprites/blocks/turrets/machineturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/machineturret.png rename to core/assets-raw/sprites/blocks/turrets/machineturret.png diff --git a/core/assets-raw/sprites/blocks/megarepairturret.png b/core/assets-raw/sprites/blocks/turrets/megarepairturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/megarepairturret.png rename to core/assets-raw/sprites/blocks/turrets/megarepairturret.png diff --git a/core/assets-raw/sprites/blocks/mortarturret.png b/core/assets-raw/sprites/blocks/turrets/mortarturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/mortarturret.png rename to core/assets-raw/sprites/blocks/turrets/mortarturret.png diff --git a/core/assets-raw/sprites/blocks/plasmaturret.png b/core/assets-raw/sprites/blocks/turrets/plasmaturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/plasmaturret.png rename to core/assets-raw/sprites/blocks/turrets/plasmaturret.png diff --git a/core/assets-raw/sprites/blocks/repairturret.png b/core/assets-raw/sprites/blocks/turrets/repairturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/repairturret.png rename to core/assets-raw/sprites/blocks/turrets/repairturret.png diff --git a/core/assets-raw/sprites/blocks/shotgunturret.png b/core/assets-raw/sprites/blocks/turrets/shotgunturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/shotgunturret.png rename to core/assets-raw/sprites/blocks/turrets/shotgunturret.png diff --git a/core/assets-raw/sprites/blocks/sniperturret.png b/core/assets-raw/sprites/blocks/turrets/sniperturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/sniperturret.png rename to core/assets-raw/sprites/blocks/turrets/sniperturret.png diff --git a/core/assets-raw/sprites/blocks/titancannon-icon.png b/core/assets-raw/sprites/blocks/turrets/titancannon-icon.png similarity index 100% rename from core/assets-raw/sprites/blocks/titancannon-icon.png rename to core/assets-raw/sprites/blocks/turrets/titancannon-icon.png diff --git a/core/assets-raw/sprites/blocks/titancannon.png b/core/assets-raw/sprites/blocks/turrets/titancannon.png similarity index 100% rename from core/assets-raw/sprites/blocks/titancannon.png rename to core/assets-raw/sprites/blocks/turrets/titancannon.png diff --git a/core/assets-raw/sprites/blocks/turret.png b/core/assets-raw/sprites/blocks/turrets/turret.png similarity index 100% rename from core/assets-raw/sprites/blocks/turret.png rename to core/assets-raw/sprites/blocks/turrets/turret.png diff --git a/core/assets-raw/sprites/blocks/waveturret.png b/core/assets-raw/sprites/blocks/turrets/waveturret.png similarity index 100% rename from core/assets-raw/sprites/blocks/waveturret.png rename to core/assets-raw/sprites/blocks/turrets/waveturret.png diff --git a/core/assets-raw/sprites/blocks/vault-icon.png b/core/assets-raw/sprites/blocks/vault-icon.png deleted file mode 100644 index 9180cf5498bc14d47032349ef8d12d14a3cca8b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 228 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4*pj^6T^Rm@;DWu&Co?cG za29w(7Bet#3xhBt!>lda6MWtsGFB0- zYIQGUy;S(@)ERaLkEBzv%}XRV^mZIbnb;EA{r0d^QMkyJ#@6{BzodSdHsr2wuRhDo YWhbRQ->*}Tfq{X+)78&qol`;+0K=U}0{{R3 diff --git a/core/assets-raw/sprites/blocks/compositewall.png b/core/assets-raw/sprites/blocks/walls/compositewall.png similarity index 100% rename from core/assets-raw/sprites/blocks/compositewall.png rename to core/assets-raw/sprites/blocks/walls/compositewall.png diff --git a/core/assets-raw/sprites/blocks/door-large-open.png b/core/assets-raw/sprites/blocks/walls/door-large-open.png similarity index 100% rename from core/assets-raw/sprites/blocks/door-large-open.png rename to core/assets-raw/sprites/blocks/walls/door-large-open.png diff --git a/core/assets-raw/sprites/blocks/door-large.png b/core/assets-raw/sprites/blocks/walls/door-large.png similarity index 100% rename from core/assets-raw/sprites/blocks/door-large.png rename to core/assets-raw/sprites/blocks/walls/door-large.png diff --git a/core/assets-raw/sprites/blocks/door-open.png b/core/assets-raw/sprites/blocks/walls/door-open.png similarity index 100% rename from core/assets-raw/sprites/blocks/door-open.png rename to core/assets-raw/sprites/blocks/walls/door-open.png diff --git a/core/assets-raw/sprites/blocks/door.png b/core/assets-raw/sprites/blocks/walls/door.png similarity index 100% rename from core/assets-raw/sprites/blocks/door.png rename to core/assets-raw/sprites/blocks/walls/door.png diff --git a/core/assets-raw/sprites/blocks/duriumwall-large.png b/core/assets-raw/sprites/blocks/walls/duriumwall-large.png similarity index 100% rename from core/assets-raw/sprites/blocks/duriumwall-large.png rename to core/assets-raw/sprites/blocks/walls/duriumwall-large.png diff --git a/core/assets-raw/sprites/blocks/duriumwall.png b/core/assets-raw/sprites/blocks/walls/duriumwall.png similarity index 100% rename from core/assets-raw/sprites/blocks/duriumwall.png rename to core/assets-raw/sprites/blocks/walls/duriumwall.png diff --git a/core/assets-raw/sprites/blocks/ironwall.png b/core/assets-raw/sprites/blocks/walls/ironwall.png similarity index 100% rename from core/assets-raw/sprites/blocks/ironwall.png rename to core/assets-raw/sprites/blocks/walls/ironwall.png diff --git a/core/assets-raw/sprites/blocks/steelwall-large.png b/core/assets-raw/sprites/blocks/walls/steelwall-large.png similarity index 100% rename from core/assets-raw/sprites/blocks/steelwall-large.png rename to core/assets-raw/sprites/blocks/walls/steelwall-large.png diff --git a/core/assets-raw/sprites/blocks/steelwall.png b/core/assets-raw/sprites/blocks/walls/steelwall.png similarity index 100% rename from core/assets-raw/sprites/blocks/steelwall.png rename to core/assets-raw/sprites/blocks/walls/steelwall.png diff --git a/core/assets-raw/sprites/blocks/stonewall.png b/core/assets-raw/sprites/blocks/walls/stonewall.png similarity index 100% rename from core/assets-raw/sprites/blocks/stonewall.png rename to core/assets-raw/sprites/blocks/walls/stonewall.png diff --git a/core/assets-raw/sprites/blocks/titaniumshieldwall.png b/core/assets-raw/sprites/blocks/walls/titaniumshieldwall.png similarity index 100% rename from core/assets-raw/sprites/blocks/titaniumshieldwall.png rename to core/assets-raw/sprites/blocks/walls/titaniumshieldwall.png diff --git a/core/assets-raw/sprites/blocks/titaniumwall-large.png b/core/assets-raw/sprites/blocks/walls/titaniumwall-large.png similarity index 100% rename from core/assets-raw/sprites/blocks/titaniumwall-large.png rename to core/assets-raw/sprites/blocks/walls/titaniumwall-large.png diff --git a/core/assets-raw/sprites/blocks/titaniumwall.png b/core/assets-raw/sprites/blocks/walls/titaniumwall.png similarity index 100% rename from core/assets-raw/sprites/blocks/titaniumwall.png rename to core/assets-raw/sprites/blocks/walls/titaniumwall.png diff --git a/core/assets-raw/sprites/blocks/weaponfactory-icon.png b/core/assets-raw/sprites/blocks/weaponfactory-icon.png deleted file mode 100644 index 27065c56af4a144da4b8942242dd9017274f4748..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 271 zcmeAS@N?(olHy`uVBq!ia0y~yVBi2@4mJh`h9ms@x)~T4I14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_D75yVqC^X67Cud3=EPbt`Q~9`MJ5Nc_j?aMX8A;sVNHOnI#zt?w-B@ z;f;La3=9mNo-U3d5|=~!Hu4@;5OI;$u-@^*V~R#@ndi{}k$DGumwyn_jA7^U5MTOV zQ@~^2r+0T>`gnP|vLy33uR8VlAJciE5@szP7veZTYhiu3<(#%pi*yTQ4g&u6{UmGkUJ4)gozT(5cga_X!0<=0l5 zpUVw@zh{ekY*l4E=Y6aFt1s+}w5?BRwJOb6X;oaYwCdpxtFMnv_BMjN#=yY9ut1h+ zkp!DVwF!gWt1tJJKR$ZMujiTl{w*)(;V-#3nCfu zBl~G(oX#=P`H^$~AO1Ht+3;OyT4`N=ZmiC+I(y+c`*o!m_W!-T|Lp8}3x2&xx1W8C z;lrX03a?DJ=iOZu86Lj;As;7tCSE+*o~9Lg@cK z#)Mf6%On$|7#P(Uct93|Fv#%?YzLM%*)kUQGyM2_|9@>RL&@uFzL(Qj0@&l){TKdF z`S$zE%f+u=y)wz1-4}R!^4{S|6~t#;Qn)NuJv!W1`|dd zHiq^mzaRecu{!oPke5O3G+RRqlfwLFA!fUx2X>{~zsG9-{$fo;P-`$@ z=z98NRT2ZwjT^T$|INI`V6nx~^o_+@DL=c?)-Abj*2nDIqr!9`jpc?C!;{5lI1jKL z;68r+VLLzAFb0MM1{bjx6IrUSJ@-yva1nYFIbXk#Q6SUPLG1ZzL*@hDc2*~{HRy6V zNHK^!(!c)Ve$D5zs#9_!^%*rdYCMDg{Lba|j=wtR=PN$n>-#kSopldqY4~}9?ZC{# z+MI?Fk~{^IB}X0l#68VGBd-BOkh|d@|6x}D^O=_+j%&g(hK?w<3kD1}vwx@; znJ~pRzn(Z_E8~XR&u&|jU#I=~087d|V0UjaXV{j1UryuG;yeDASPXa>Zn`b~wsdvs@LH zXVEBc2X%e}m zK5p-+X$&U{YA-V+G@f<3b;o>X-QQmhW~Qc^*Vov~>)X^{WMsMr|t z$9tE{{>nX>FAcBm_#jaC18UTQz0wSlY9CLVJhAVYYQ``rE`2F4!)?y`{_Xvr&sm4=XO~0v^^ezHx||)NpX3iSoT&12STo_j1e?P(Z>Bkl z|8uV}d{A;>h(~$3$k8f7yo^B+6@6ty;hS`jWR>*chfkgNcD*!feI~k0&*RH0^Kl zW(wl`$EC+v!1XW6fZ^G>xvP_={QayX!EmnFruI#O4zt2*Rfg<&e~v7l84|GVs42q) z76F(!pv;nWk70ug;|-U(gee|ZI2sI?6TUv$Im?V$putM{ z(i8(T1DnH9-UbhEmql(2GBri*R~Zai_h&N9$bNga){G%0MLFTk8Rl7f&W*ebexJmr za7>u7mC+#ev8QSBYvUgeVVMi$f&_+;GYkQN#m+2K7Q2EnS+^=`Zx_UjILF-&@miAAf%n-~#hY0)qml!X$>ULku0hMhr4) z4xFBUge#BTH+!vrb9K1>*}sqFKAzK+Uc8;1UoNJor+@a7x=EKD7I-kQNiqa&2tUoB z5zu>gzo2~$%s^&PGHJMF#?a)$kd?hkK3t4ZAcbX%DDwfIfDARpl*afU9&4ruG8psg z9ze0KUsq+6?L)5O|791-Wv6fcmlovM z$KnyiCID{{fNO;#;)Dc3H>fAXFe`kC<1%Eh30G+}VK~FmkY?mCyJPz6e`h7@qUSN} zJfHms)QC9AH1GS)xxI|{$_=xG4*Z_he?7#5i31iLYWu5 z`Maivae`^{G=>!l!kUX11B&j?u`M;aD8vwaVs{ba4I!3Og+VVqZ+kmq&Q0_5&r2Vi zzr`T2d1<5|tS|=^hYV~EYo!^s&8*j7!PSua%s!v_Kq}J=wg!>Emv|Bq^^aPweVCr; ze|uB!`R7XW>+dvGnHK*vL8=cLDim)edj1a5;XHAQp<~Jx{iBmW*&+SXzMe^3*IF0_ z94}bEzdT{<|9}6EUF~*OW~i`aD7>>`Vb+<3-&YwG7zMsttxjb) zQfGg=gVCV;-5rgz30~e#6Br*X5c|FR{%q%dxy?J)KU*(O>|ASPZ9&X_5xLs3BMCXc^h0*6_uqJQq`Eh7cbQKcXf&L-7TC6Qj94K0i_Jl zKlYzxkT6JSkTTDkGt0hypIYwcf4fRwU+EInzS6vzZH097zL%x4mF-HO${Y`5^GTU_ z^hy{y@vfS`tm4@HRE8Oz45wN4Z`||XYVTnYq}G)JPs6q>29~f@97YUkGCK~NGcDoV z@bawYDHDbqONJ+P_xIIay|B>v>YB*SCd>WiuDW^W&YHIEc793mSI_?6C-!&lv-`_B zw#3>j+tvGO8E->-dXL)2_tFfroWtsNi8#2h3V2WAFq0G!Wcn#=jw|2Mx-try$?aH2Ac-+O) zVELMTdQ7qiJolt%@hJAJzxO@y)D+E`1`qyrZ)IudlXSW-Jmq%|!;d8f|2>=8R&ZYa zHOb=JjB=m1ir=>u>`QfI*L{(n^|Su(&HszFrT6mN|G9Ac=Q}UoTg#GVSRHEf=i9~H zHBM6QtTo+o|8&$B{+;hlU6;IlWN4c4$?)rsKfGE0_bIA;x@w(ov*Kvo$BR`u>wdJu ziZTXz2nfG(!R{g%a)4$ui-oWTVjU&fp2k9X}{*OF>H+9p7-jU_4|-= z-aYPjjsN9o_SrgrnJ&R_KlaAO`B$HR{ipIR^V<9t`-$6bGH86esL~k!Wa=r#R`=xS z?e;f5Z?f8zXvSTa|7^9jO;ye7n{izl{hZ7Px=%PHKe#V;Z(-it>#nuyf0mWrK4f(@ z_3hkMzrR&qoxA&Y*0(#Q^Iv^*kuN>ItUBcR)4QR^r@ha%(}pMRZxbz`}n`lFNH?^hbXuU&Gk{);duhystpnj#bWIlkR$W)xU>XKr|| zvcl@fs>>n|{1 zk7lO-OMS6ll2KtglR&l2j=S@JreD-QdE8Q{L4%i}>U>vIeE#!P27!|dKi;kJdv%R9 zb_?TyNAo?|7-ll5{IWjtc8%xlWk1q4F-{2iW9<25|DTWQv$n{l>%dBppB?q@v&s1B<%WiV&Byxv;606Hqx9IwfokoJs-c_&X4x|aeM#Y z+b+@BHrV(dMr!b(5R! z-M;WtM3aZ%EK5`5Ne>1;CXYq)(|=dap3G2m!@m2^|NQ^fvuu9rf8RM@^P44CL;8Q; zUV}N#)R-T%o_-(6`nOvC|B?H4^&fdlKOUd%> zF@CD5KQpsR=&Nzs8I74M)ff6rG5&g`{nxFuSGmuZ9)DEz@4)9%c9s$haYD-k&a84a zR8(+h+`yR zLd*}!>z@BKKdVb!s_ZLsWq+6aZK%E<% zUwf6V?tZ^-b=|Ma^SuJ!yQ)CDCJkDhN&0!uzLlx{(avL;;Z)nHc))Yc`*-)_1uK`$ zyS*Y`hFRfNWh|S+obT~Ut&9t-Y_GYNX6;aZC&X}{;XzA-4C{qlM|amLoBzkMuiNIv zuwlk@HHQcmhVQ&x3?4?W^IxB4YdFiYL6RZp!|eVO#5Jin$$ib31H&T1NG!LI{xTl0R2=zf_W zbL*8f!_nN*gr}c`gb%3x)8F&qv5@eB%injeUT0esdG!Bdi4!+mwJm!K++LIu7gaqr_uK9jvwc<7a1~oMEK9O3Z0q#`Q=2- z@3FZ$SB~y1vdrJg)1Y!_{>{R~^sjHH%}xnAFex`{_v?SlPw_CAG5(kl!>3TpP;jhX z@|*s2=7Q9Q1u_hQNB3tkd3=1|#bTh$kfY`>15`>JkKkIs+rVV2`OY`7{zq%^s~0=P zy?@PQbNIU^@|E%YpFQ=}e6m(omTSJ_tpAo?A9k((_o+ISfBU~I)xWqnT;Q)yEe%cHM^M9w$zOt76=R2FB^zJ*gi|-Aq@089rWAvM6v-0Ps)B4#T;|2cO z>BsL|)64kF7B+5oq3me=Y-2_(jX%YvOc85lEB@bhv*NnWz8IkdHI_5K_9)J8-OS`L z&6^=f?c!un#x-xQR`u)reICx3pm;th{@v_Q20fX*{wF;cEI-HRcuO4=$mDDg`Ty+A zeo01w6s9LTSrpbWCd|HRU+`?r{qq;E?|=U91ONYk`}6qi|7=)xmLs7^e)IYli+LHG z|4g63;L3bJdD07YW)HhfoEzROete5TK&|2X=l>tM|NiKX|K}yi*5E#cts#?X1LKEB zE6crj8ot+mDeUAtz{arA`S|UVEFU^l{{5WD)1d6$H-Yhi;L;z@JsSA!{{-kU!~Dy@ zyx`HH{XviHKc_OL&Db}mc6!s?ZA&$#*YXI)hq)@8{v39iLBox41&ikwFP;Xu&AVP- zzj*1=qMdnntxPkIy2PIW)sb~`Z2rXBOC{WS@Lgo$_wL+P|K~2hvgl;>)z7<+XEdIl z$S~<>a@Mo1g*&AfjF=kabJ-eBvz*A{bm&TDN?FGdHVMm~^ZvA% z^WJ-vQG@F-U1p7w?@J92F06~^dNhB9F9RFr@5b*n0h?qNoS*yoYOU?{AHTQUT^+7p z`aZVzpZv4^63?eQ2)!dmT z2qw5O1&DwLn!ts_0frSzeymqjF=Jd3@%+tiooh=a_TSjJc$wzCo%;p0r9Sz5>&U*> zdusAN?~#;Z(CYgkF36y@?#FaChK(CHZal&ev9Y%F@2-{c zi$A*myq9~}^GkK=o+Kuh#3d<>ml!w}^)PTG^)cCBVX!E9*#3-XzrWab)`{!B9}Q{{ zy7&Krb1Iv|j1Br~Y&x%{k1{9}IXQT-SQNC2{ck-UX(iRr!yxwGbyej0_a?jye=DB- zVf}kzC!+@Eg0n0W+(2W%pyF9fc)=Nl32F=*X9zo(p34gIxBWWh9CN{!7lHMb43dm8 zoD)h}7&!md>z=**@MQ9~|6)u(_WAyifA{e`sHXXwZ1(Yf!D{_qdzJnsJDsUETzP!r zh5z<)5oZ_O*S=(bEF(Af>XQ3Y;`iOWYa;p7a0a9~`f3Ampu(hZsrnFyA>)+LKlN6>^F>ci%l+zb`ES;PIqYlP zx&{8<+w=Hz$m@Gkt+*O)tvmC^Kg8)lb=wPlV}_2`Vg6Tga_9bg*|YyF!;dY#rSq&# z)$9Ik>U>*GEAAl;D07x?ubO&nG*9(Ww7bN_15_E)#>92Y-XG~4C>nx+kD zw|E*NrJqlH@SW}Nb(!@Kj~?xs&bWc`fxv&WU$wjMhAaJveYF1!N5VnHbm{iHw^zu? znZ)JW8&oZMwe6kU)l^r1-^_+PR_nWey<6kAO5sE8xm&lF*z;FCNxnbpn{DamDSWFG zJ~03Muj%9VJDTUsc&pDYQJge$lLUj`siFq= z?KxX!GQN6q@b9Z$@$)x%8ieNA{+xD}K|?W|{lRn9kMU>N7sz*CWSI5%c>nn$3<`z! z3;%6j!ucTl)&x=ObwA(z7j^w{d&Rpyr{X;qzMnsTF+)fDyIW-?8J!Q1@J)&6_=bwN%ykFgy%_w=!M+W((bIe`p85B|S7%Ng}&^Gui9 zN0aO3FLZ8Sb#HIAwdY$GuQyrA(fXX=)|ml=kW`*Z)l(4T;(h=~U!##$>lu@AY3V zd?ugYtJLOw?|)?VvoWc@-#3>FrQB=v>OU2KJ$SxeF!GJN;jJ4i8#)i|+O=!b#?Q~s>%a7V*6`NStxx8q z$p1?$5_^KX>+drxNLHQ~C32F%|LWjqkb@ZIEG@a_3EN6zaWdNluZchSzkOs0bS z&m?V`eHoM_qx6Iwq#$L|7Wt3yqQVcf1pjTk=Pa}&B>4838~Nwn%wBXq@R1n;!0A5M-QigCSv~Vr%=HQWdoyc`JA% zp4UX$m#^^H50ZbH(3YUUnBfy8rV|jav;KNoTkD>U7o1vN}9j!Ep0q}A>i~X^_AG=bsU)7Xh-}mePXIK4tSg$?v=l%`V zGne(SEU>$6^*yB9+ApB{eeCM}-B;ZD@5IY3wmZJ;><3;3%^$wZ4cnG7I(+xMeoVdg z$fU?GGds1gWo!>?Pa?wql)GFM1~`xEvjq`#aHHhRe7_w>BILM3=49t z+;Z>a|C+*S_EG-WBtzq6J>iqnd^NS1cVwJR3KjTyZD##!#sp)QB#!?^$_{PPlQ|wp zx{FEQxmWSJ>g%C(*Vk_T<0!}=+5K+KZ}+{^KN(pyotyfq(&LZ5{pRRgi}HZCl}|HE zADu0Jb(Q~Kpk-{fD=&jmZF$wVH#1iE^GS)6NF<&8)loY}QhK>-TSN zZl3#m>9z%*({dPIJlE*@FT~uS!Q0Wo<}i~pVf7?~^mB7m7XJSy)UfXR*+5U;hC17A zKaBfy%qosebY(wpAr;6_$lIX8bnEm1h7U$YJdfh)uly@KFYKKYuE3=fw%hs4^sl^v z{{zoUdlkR6KmX4-Rj)yXjlq>+&YSy=8#xt@?z^+xPKI&A2fw+X235)thVJ@T%E}BH zXYQMQ_BWZ%aANC!onK2O6C@a3eVzRMmm33jo!I}HJvZDpG6pO-&eo8~l);>EV?*K` z{sYA`8AL=`!IcqcG~ZI1ftQzepTV-+U(P=3eyd+H+#D~$d>~D3#*}5wF3bwosuiYd zo|$7AeC}Vh^Q`ZhO7DZEzh1NyTIScG{pWN~1FNs`*ERb;*1bp;`4r2`d|*!DlbdeK zEFVWWG9Ty`V#*h+%j9L#cV<>N^?R}!lfoC01m7Zq^C? zwfTJhb|w#ll)~iyGX)upBp*yJFA3t#n;k6Fd)Q4zy4XnT_!-6rT?_@13_8D-G75+> zCOl&(aAlam)?mQsHHmQ(V}cap7Mp}aEu23NgO;^0+*62F;#_e4 z>}iG$M>dBDy#^COhN5E^dl)7d_h~9K7>PcYlwhbl`+~jm&xUOaiqjJrmPBq6EVE5~ zAFZ=cPSL#aYRrZ`YS*hHlNbtw929^2eXBE>f$QM={9+-8bxaDA8BS@)+$&RM>`7)Q z;A2qy@i#Y|kKxx|rHAMD$L`5}#*n~#K#(;7G~moIk%z&nj1v@J4sW~v-{Ebr@oo5) z!cg+!!or>{d6WNHyuQAEzS>pW?X7EsSN8tCC?S9 zTFzPINfx`r*1RiXR1cqP=S(dNEJhDTA5IgqE} zK=#yBhMO!qsuR^+r#!OnHfqRWdh@n?wvyM!d~N0(g=d0)Rqrf%U8NT{crYn8$3K;@xc54 zZv79rPt4eAug}_@KmDYow@2=CF+UAMhNJ*q`HJnof{y>&BeI|;zOH2QE7OgUxp8)Z zvNz3q=HC6kLF~u-Js%ecE&Mm@X!0v{@m;5H)~nxSS@8W{64Mm$gh0bL?SI-yOk0AP z53FY4KC~z3idqAAS{&27m+2q%eHjErCsc7Z#JqB7s=rWw_F{^#!!wqSi2@hiYb!B? z$b7v2eBIitFS1J$kN4VM*H|R-U;Wx#|B!#@KSnQ%3ABxSJDss-R>^v?=?q6ay=Hu= z_20yz;3sroM_apiNzcVkZ^TO9%st(>=lMj(iM$PM>;EnNwc>L9^_V~W|Ca~MNahxv$K zRtE3dzr=aPv$-q=21yF-uRF7uRQ#ACG?^PRIBNX^ByYbu_P%7pzja^!thQI$_&#!l z%H}2mhNO@GcGW9_xV{ay^LIz~%3gEls`vji^RDxsWLIYgY33{9O|qaouki2o98L!2 z1+|h4I{zYn%s!*V-Vn*!cyzxB??RuSpC5kS{{Nn+eKnPxj1Hol71b{F%lMzI_ z=KPE*6v@HmivV}qmpyc?T6q#5pYFE-7b?ZX)S!QF)6(U~2`#eO7ies3A;ze-g? zavCF#u}zF1ua?7~b}5G9Yx$Sd4qX5LqI~O%`G4;Ji{bh+%a~!_oV(GwQjyEs?pJru zd0Q^U;FA38zVV8lw?al-`)5xCPb@p!7Wp4)%&^IfF@a%=KC{C!28Dz9x2G-qxuws3 z8Rvo)#s~K6d47xE&ief9tjayxG{+mq7s>3-yKS6i(s15U`I+@(gIijbEVbXu-`|t{ zZR2?Ut=0KIz4DuWe4oLZDBoT5=FCiEQ|?E1wL9wPZ;2Q9r@ADW@d}&6jK+xunTd~X z{#cUwG02S}r6_jUkN#g)lU!_AI_jnW?$g&_6W+GtyVH!7i~^$50_yc!^d8E)K!zVL zoa1R&#Tf-!QgKOwL8Q!o^Q#;dk6?%NoqAgeH#sQtH=Jb&*mmYWZ}72<#|_8L&CIm) zbWbeh=ssS-W-rX#u!!NAu6>l!pWk-7bT&OG+gpBnd;WEAzDx7e*D)GYKfP_!%+Gwl z_I9k=g7sp|3a@5ZcuMHkfBJ0kX#W|O4vjy|%8YgIzt{Qy{d@oa-e2d+_bv9kU82LG zGAH)FsMuA`mU=1X1xHvSc2+DC`T3=K)#=?rPYq{)k`n{N$M{lV1~!M?-b^oMGhSZq z|9vsjk+R76D*49}3@+>J403OoNY(~y+M9AxsPw@BM%AN#{{8)(95{<1MNQzRY4+yi zw*PbHYuo*s_8@&RSNSjJdj@WGt9Qs&$^B~Hzi;2Y`nR9m`>*wPv-6vse|++@PmbMc z&7*%#v?XuU@NGyu+?KgX(BaX1x!9AJQ{>I~a@ZUM^vd3>n5SLy{DrND_LA85g*SS% z?e|;St$r#~=&Km~B$&zSwwd9<|Nf0VmcQej1Q`WxGb~urQ2&9w{z1HP=f8EayR$Bt zIe(itUq6&5Gh;^dw|kcivliQB@-+PWUUu>d!-DKb**bCZ;9eYf`P71IJPk{jY~KAW zG7!1)^?Lk!9nTY~D}H@_yrFKdN!_9VI2BoJg3YX+>$Rs)(s&)Mwp}Qm8lt28)q6`1xx&Ju7a(;B@&*C}% z1D=0Aq0u=l@vz9njzt_c{DIRFmn`Xi&Gp`J;x_NkdOlbGw)@;z%+`N@={xC7my{tfjsv~r7I zxw$$0>cz$G-X5oI!q!GjjZA6JWY}?!+l=9ngizqo|EvH1D^z-TzDM!T=^lnv0uBo< ztymRd+HltWp8mF}jjVRH)75=r-pro1<*f0WE9#9O^b;?#c%-oCL|@TJ|Fu`rSnTI@ z&)YR~eg(+!!IO|FC<)y*X8j(yY-hQb;#mwiH#fO)-pCm2b9*9$Zr0Gtd6z8T;PK++zh( zk1+hLc*4do>bc?59!&8Pd`Amih27861?kq^@ zV;1^5$>_V|MGXzX;-HcfpG8`CpWpHPq2adA8w3r?-%Sm8e%$T+W+{fm(~M{A)^RY* z7EIu(4`(^hcXo9UcZIk8`HKB>oScaZ?E#d}UbKCG^{X9 zn=t$c)MGDrd%AD+&=cS|n& zs=n|3X}ie%)#a7J%Z->7a%8@)T)lerE=GZG)zFotxB7mpk7QO@3-MDc55w#96k~>* z)8KVfYz=>!XQ%)1E!6CfJ`#PivSQgin|>R)GP%w97wqOAPh+?-jd{nlzo*}R*8OXm zy2xJh$NZOnczr8bLL_2@2anwa(i9z3zdn!-dE2Y zjrKZ{dbvZeD+XQjM3{;rZd(*R`D{Bt4g4TBP zN-)ID;b4$tP4NCDew1N?)BOJ&(;t3Io9(@0w(<9EpJyC%nDTjsH$%*GP9ugKwT7KM z2T~b6ys>j<*zjYzTEiP<-UcR6>t=gbz2<>t7XKhdd6R2ti*}qlIREUMQuol;#q*4{ zns2S>=XreHQtH{(V{-n<8Ecf;9a1(=Kl=a5%HY4hS8M#+t9bUe$i(kI?H28e?w{)u z#i~#$dEj}~{Z*f%F1*&~`X9%?i#=IaUce`QSx{qb9 z3>T{EKkq!7t?`USVJ|tJGzNfWjmDJ3yp;FjvhlAJ09)mAv-cwZetRkD4%+?2pd- zw``VSU4zi(Uyhsqt>a**m+aXob7Y$iWO*N`^^m}jlE$D?t82L4@(csVp7ioJHw1UF z90>cT|4xWO%vEPcYSIA%zoW{q?Nj~KI3@*NhB{kMUIt6MPDTaa zsS3;vUFl*kw;k!Zb4+QLMfy1z`}2%j+k4ZS8;)JLp~K5i+218ue_z1hy{D9P5|hU4 zAL5(;t2rOt&$9o$iL&2&)`{DG{w-BJXK|Q;!-&c2mxtqf1IC=%E3;IMuS{|+K3ly@ zhu>q)D@gOl;m`9lCh!W$$&3P0=W^PLW_vO$Ju&?>9U*W|G7^#j!*@wCa`Qso5nCBP;OiC4x!UC*_w1O%52=X@1DQO$w&4XHs2Q-nwYIt zW%y)TaKiq+^PYTT1|2ofIQV(l>kKQz9!W9$*{5d6@Wj?K|DKKRw^S8@+{=bp%|F0P z%pf5e)63?tVnU%L!?v&g)M7aqTNwj{%JkEJrKU7U=H+wWHD_H^DHp79c%&1eoQamtkwJ>DKpdI7@w=k zgp0#V0DzVd^rE)Qt#>0BpK3H?AM%`!|eJ|)IA{Lt`xqAL9VWJ^QZevRiFQ~z(Dd)$QKOhA1eH)#Ec*+YG0ri$BXEE^ad za#p7@EUn0k+ji5u(xRwAne&I$ihkWSvyCrLJ~4eFyOB^MFGJLCePPaJn#>yO6VI#> z?NVkq!@<(Wu)xld?ZC0-_PLK{e_~^iWYE9&HFs;d!}%LZcB_7D?_Dp-{NPm4gwB6^ zk35=x@;lG>MzBX1w(9=7y@pZXJHLtqL-=yW4?oY>+Xe69VGwc@`}qEr{=;Lv(pQ)H z&YqHc*S@nl{HFd*_dd(oUt5%-uHBo~nLTmMYL^)^nYw?Q_shPv;os_ND*UWZ`ne7N z)|t;Mb51d)Mt}EzbWh~J&rNkNmWG`w2d2p%=wXQ1UAETyM0BRJ7~7#g*QN-U)$Tkl?Z^t|5rMX_8JdWOpSm0e&Gv%dn)|sLa&5ME>U>*w z|L%sRCT7eB;@`jTa+pxbn3Hs?sQ=csxsPI9oPV5rcSfb+j{544ir)jC{Pv&M%p-M9 z`#>d|#m&XMpLUt8kzVT)JaKz>Ze2XMRh@O6A!BosI2!{`gO?P;>hSe`D*rm!`D8Bi z2z`@JwLI|oy#4wP9hnR z7oGXV?#euat)VwYvB9$F$qA!v+qPxtMQ`&FeB5<&iJHSbHmAQ+PjF{g z_y5On`>;eyh8^$rWt&v^SGD%c`z>>RrZYSAO+RiS z!~iL+LB$;d^MfoShCM4D&Hr(y`255l=dUm*925NH=%M{D_W8}d)#W#<9gm->GoHTJ z@6rBeJPblBy2bU+oni3kHeq8*{P5u5s`~%`?AZBaR>;-=DO~+x`@~FY2Mz+|!9;pZWjOMe- z8&8+Nai)90$7P+0ybO=Ni3U%dnZ8hB-}^x6@5Oh`cb8AokadoLLI3T8n^m(Lo_jF7 zIz8cZUCNIAm4AyO8)Ebz4I|LVwgJPfHH;f_F4lZ~=e_)j`*Z&l{O4tZ-|zj@RQ0-D z{7NggxEJfciOjE#s)wzRUpH@ATy*&QxSQMK=2pL3BKBV7l~1k5ncyUcKv{?4<9)KP zPE1s`ikVgU?M>ugk7JCkLIE%SU(I3&P&v?ZbbW^5{})U4zG{3Zz4bu+#*Z&I8J6_i z`o$l;zRl;x;^QVdcI#h>%UowW&=EL!%ZugTOaK4-tD0Q@<&0lx;%S}x3^Pp9c8L8? zKGyS*x8djK=kcX%4)^!f-d@Xi!JuUFq{Q!=W--byw_DaQ->UT0@`>zW|N%$I-xY>sq-nNE#61Wzb@Pt zsKl_Oq1=@rppH?JQNS$Djp0HBI3N=ku5>XLT-9%GU<}yJc7T7LwV;~TXQ8ukQ9RV5p{yG-?Cd=kTl+9=3raxTDu|4<|Jk*kGn$V~B|c&|Ro)%uVKCy~bP^__ECfbCpL_WHd@0{VL z+|w>ktLn0hS2KM0y{G2ojY&og&pw~#Xh@2;6$1w~gPQ~2q5EdVoXiT*%nhx3EEm6@ z^>@1~k3i|ahSIN-@NDZSSDX_6E}T!X`Rtqg`IAAeQ|&hvjic}I5=!wre! z3MV8VG^O|?XPTTx=Q_Y@x zv3B~?*Kbx8ob#*V^;A3MXfGeGy|$ma8Ux-WM>{Q8){_@>$!0^Y`0t3*IbMzVyX(w2 zauz)17QZ&#MR11a?-jkjP87!&#;Z-O(F=NG-S-nxl``CF61{x^}~Nj}4cHTy(< z?9tDBefY7ap+YEohl0%H4k!Ke#+ha(W5p&iPvmV7aD2xa8w~2$wY_h@pMJQFcOjd@ zl+youa@T!+ezQ*VpRaJkuNjXs_Er?O#c}%z{c@SPpl{nx3+}U`+KVI^(md*FYxmAF zPVZC8We*j)aQxW$o_Vtu+}M7EVaAu0jE-%L(@!RIIXiyS{T=&!W+~VD=dYLN&Rfaf zWWssE>qP$OyvsHD{lPAj zUBOMHH#hdrZJvfT(~T=c%@{US%-{THO^`IhGERZiv-a<2d;UF>%5dkt*gyT_lQ`yE zzCNY%<<8o4(eqzsvoW|cn&jFnWYy%nuEN$J^0Uy3bD6HIMlqMfqx)8N*%yAhrg2NN z=crsT4FAI5?ppAKG1k~!-r%Okgj#UUYBL&(SVLT6ZRznh=c`G3vnr$>MFxyDcpqTdXug)SPv9BE=XF z+_yDmYM6Y@)sSJ;+$Cl!83VNwE;re!3;hz&J@9D$wwDrHT|1#0#To=BEd0=)#gKCL zTN=ZTGYqp|nDa6u$tX%0FRlqN+L0B)cj6R-M|9(YYdj31iiPoFY7TE?7_LS!1@O3j zceU%T^V~d_C1XlZLt%aJ<*>P(*83)<9XZ-38~SkX6{ovCzrbQp>$;DD;0zyeG4Q=gV7bT>s^2H%Y2JI9$XF+l=hy(97}v zTLwc&lcf|x99QD(vNRi=p9x}2wr}dbJGm4@B_HV4JfNM+u;i~z^51PDN9$KG3WP}+ z^cyv7<6_YHH&f?d>aj{LTmS0$M}DmB*M7o${COfnOK1JEw^kPJ4C|k750zeUe8C(@ z%rS(o=3MYe=wIZTzkjZ6-^a?l;H?D1RFR&_dCJ)j<9L}Ba(r|p88&{lEqQzEY9>R= z#Mb%=j0e;lrX+7OYB+oL>^~z0vA=(6AJ>{OtkCaOREy*jJj}rHCx-dodXB$m`!g6^ z{>4pl*k6BdbI^XV2|*@jNG!?_mcu#xJ}L zqO+%p%v*iDH`qnfWhei67xgo19~@mHwJ_$HV*{hWkDac6>{UNK*VE$6*qF~%VRg(~ z-G{lszIpBJ^jF`%P3D*TbcTb$%I)@1yDG>4Izvx`7FYc-@%=wsh5m=nWem`bn{~@| z^3gpa-?wovZ07H;&;97}b#eOl)!pLytD4#QUv0`+9kw{s_aetzYlasH}g{kUsOK#NP-`(=Wc`^^n%eSUGtTjzGZmmhDNuL*G9X0kebzQl67 z8^#fTbKW&;^`YRaE0zj9x0wp?uM|9`jQzW(~Tc;)%xH#ZDRpPZO@ z<+)|?vz|pWUrL!|3vJH7zfa}g)ZD%GbCxnhN-!8@HJoNRCGaIF=zvhs-pZTT6B%YC zS(=FKKgQGG;w`y^F@dA*vVev$gT_Vq@FazW=bv!#e3JOOaG!}9m(}(%Z%FoU*p|fP z!gcYiu6&v`b6uT!r(-sfL;ZI!Svl7Zpdz(hO%UqkdPmT8BVm@%+^ z4xlY6iH~QnHpU5_n`0TgS>ena9gaN?Y`v+wuFbeDu}#mmWuh;WndA)5W6%EDnBTA2 zY{FoYY3X37-tg?r#JyL4@0R=Au_gCi@cl5T!A7N0K^ddiM zL)_$TKYz5W&GxubEyxM=!?t{u5FrDGO-pm#?wkHTKShuk)Cj&Zi_zgUqsN(k**no& z{puQ8_U-y}MJN74yq$%!;NQR6xmibh+^<{_{AG9v;)#V?v?gQ|1QpWKEFP0@855? zUp?-(zc&Bww%pqy(hNCFH+Ga9zUQ#(SmoBE?2p>YwLdJU_B<};mA8x0XY8n!-?8oRyJiOF z1Kcxhzi%>P$a%g&f+2N@9V44V%4a1FrUM$c!#Cx2Gi(TDH1PG^%yr<>R`;v7Y~_Ej zIUK$ee)^QhCBr=Rhvy&JA7O#+5HMh1kYJel{Ok4j^}G!`i=VIhd)r*}$e*mQ%}*y^ z*?hJ?d*c2*sbw>NEKk1j&F8W~Y28g1+h!^?UlT0NQ2p(V;>Y+jh7Aejk_?W= z&wSjPz%avjThIf~iRp5id%2AmnvU3hz4_r<#n}x}UlZ9JCcIc?*ZTaz7S77zoC%B* zu795K=>Ktd@r;Y{H9Ce2d+z@^BK~iWE-yo|&fLwJr;@{%6<*kJ+~V8KFT>U#Uif#< z^mLYnM5ZY=^4r;M@)rs9t2~pImj0SA@HbBK_1C|-S&QwigiA4$95I;nPf2EwtAb`w-~R$NqvFRUnf2lmQ2%hGj2Mdb1>rm7Ej;I zh-FW{_x3RStJ}nR;4S1>ngw1vUM`#M#QC7Ow>r<@R`ok0h8V>^fin^~9ggxa1Rt5X z`Ckynt|Lhy%nDhZR*|dpIvF3FYI>g(#N5#DuKQm6DnkOJ|0BDVj0cYYys@qFAX~#9 zo2Sopc@?5})K6e6cyTiJ)zsS8SAU;>t6S|~_i6I{74m;yxPz8Pgs$IH5ViOFDelx- zz1Uq#&ds-9pULs@ifHVko|BudD09}Fdg1T+m+SpZ{ePLW`*QE^i;dk;aIh*?=S}8G z;n^G_h7Kv8AAERt_|=t_!Lx$X*PcJZutA3%n#87xbQ&;xxasugc{)>zBtzlR{byM^ zvKWrIMll}{Wz)O;NQzsD?ta~m^ViPbxj+BDo$j5J3=8(iOv!(IR6Q)?pnuKRtKolh zm9_@Tzw%Cw_z|DW<`CpH;evhLpNbbVUVi4wn&r(7B;h z!buFXn&#hQzsz9JztohWy8{py~N z%~N076{vnLPW`vNck0`iNawI;53*!~eu%H^FSfUw#@i4j@K7}E%2T#;ssdlv>QDIb zows3wN<-l^hBI$}`#$}9Q2qhGIVkm>i28Hd{=s4?hCA+UEW2CwtmU`;Brou+^yK4p zZx`&Fw5=}iSnAcZ>U|5opHE|G`C2H+FzvkQHco-h^FIDJGHKml^X?YkEA7PB;;AuV zxqZ+3zs~EIGxwZ)^#6}vtg4=WFG(=e$VDn`2x2?%bJ{<dLm`jMD8%f|c?qnGAm(>=ZU&5Rw4Z;7JSuKYyznt(Rd= zh@HMZ^CLf`%GzYiaH=IHg!zD4Tr69|>VC}yz6)hi7?ucr+M2^~gQaeYT_6v`bcM4& z=5dO=a%6LmQjA~C=5V3fuB>RW8fSf)92>*tS!@luD`$%o2VG$e<(Y8keCW0FG1v3Y z{X4C}FjN0PsM&;5iv-WM)D-Qlol!A~$$rh8`8D%&co;tKS;nYvbl(~s!7VHf-wda- z?%9;3&{;29BG2O5x#Q5k*zb*+ufD&(zut4<>t&1%$9LQ{Va%{(Fm#_dcgb3zL-)HQ zN)?Qm6E1&HRC#5ac6#sq0GW6Gw>R-Z#!*w!86sNm?7X%sfcb!G40p2g(X}_#-}Fy0 zSokjMxr$pMFT>_3(pzUfpOou4-+!O`mw7Cle>7@i<{Q?|OKdWET&-r3TQ(!0d~31T zs~v0&k%wp9I#Yad+miF*-)-g1_s%@>KQxF>_<$(arRYo2|c;IV&8 zu}df8fhkJ&=lpzLo5^=#V-CZfePsomj0&#%H2*bwvFuvJaOQVI>mISsYZqTNmKK|E z;<`=MmldF5qksO5O);Lr4J$sguUXx%J?rwhP1Tap44&&xTfVznexKKb;n~^Q%Xi(g z^_j&mYl?7#5VO!qmj}0OxJPpbYIFe`Z6nEki8hiNvW!=4SvUHJ?*(tgFVHRu{O@HRZMJk7)K)AEw? z_SUCO56(yRnJP0pIb+{hFZA92?X6ecwPp+z{~yeo8wT>_zk;t@TogZ;CNWfSo)@=h zyKjEGd-?mLU$4i0h-z{5n_ZesM=VG#s`w3Z#}$9>niv{*cp8>G zd>Glfmc8}fao&&q*$gbU`zzNb3i1R_X3ca2?k^Gv}&-Ugj%!AE9p^v`B!xnmqAD7Tf%;m(HNTQ+}n zJf4&0BEqcjs`}o&$qc)E7*rU~m~$@3WVqo2a@M*d4Q9*=?^PP~-_C#af7`m~?dQb5 zZ^<`i$@$5slFaoZOP|prS*~K*+fASER6OpT70BD*@jkKwv_}sVUMCJS6mafZ;mMH8 zWPj?{H=WZAZiWm`diJc=8mrA*CmWCRW)l4@w{kwf^1EWFypMVvG{{jE|rC z{ou(w*R12ee!e}+@WH4{j>ER>_1f)|e)Q)s1l*sh9lq=Q@5~?elNdmLbr9uYSiPXz z$~s4QgBkOItLkeR1=J2TpJCdp%gwCdHDBZX{I&5RALUaRZnR`DF)O^8=b6p0LW8a0 ztd7C$O$H1~-#ov}6F>StG@s$bhI+A|+b-k<-zv7z%=dyXBY#1+zGj0RX>|kAccYDDZ9ePo9Cu6q)h#wKZ)_erAt9+40npp z+cvT>T=rq}n15b)`~7!1U!Q9+|2R1R59hxMP-WR*Q9P-bb=ys+2akKWt=+|H z7sq8^Dh#|oU*mn@48{k)Viwo!<9sK1{d1+@%<%gwuFooodGp=o41-4!6H70@5kru{ zM8<^Gd6v}moDJDN zGZ+)<=3U~L5UO-$X1(RLJ^W3R7-qG-3!T7Xa60FI+>zu}>(=>se$1C*IJS@L@t)V~ z^#y-&@B3F;*SBfg@&9AH#1wsn2`3Kf7aXWy}elsE@wFfo>tyq*s&qG>oQA6Fsnn? z|3{Y0ybPCFCLHTGX=^&8Je%=ADuZk1{?%)F62h)BE!wA6KmUj&_kV$p^E(`$&-mDz zub~8XiKtK)gI)LxhMV30cd#|YRLhp=G%`-GTs);>^Vwg!wb%|YocLDhu^|4IrIG=c z!!rgB>%4RS-bekYcp=1a`xF25vKzGppm`ag&+6NB%vtMhzOmmf`uo@8_-LD;zXe~n zTuJ?06vZ^*>a71R*L9Q`J|*0k)MR)6C*Qwh@Zt>yhFfNfbQm{u)=D2<#JDPx;YLQ+ z{|%1|Co!;f{#KZ*kSE%pa8Xv}-s5KsCw^7t?fd!cLQq4^oiv6QI)4~d8MdF@?9R|~ zmwnya4Zj;$_hd2&WS-rrYu}*xuM;xE6)tbSWd9|$hEJO`B_*_#4o+h+$axmOjs0t{ zfa8Ms^57s~U|46xe85#pP{QT9MJ7|oVTOW>(?00F*paJddG1%;>;wE#%DxTDmZ`b+ zY}$8UZBO$tk3u>1eur7lC$b&jzAY`%oy+%e`CIe8Ez_oQrc6AayUBiIh2GYxu$_z( zp4S%q`%~$g$t0ku-Y}DS!3^~SlON4LzJF8xUZu1R+w5Ld{np5hjCWRJYsl4fxU!8! zkO|UJQsCS7>+1Sd`8AKFR~0`$x2pX8y;qIwashvTeGRVt{VnwS{rde?9}co#J*C+P-aaS({Oi)CKmU}}mb@2wX;J&EnVtXIceA_9B|Y!Fbb>COUb`?lD|LxqOd;8kD*wz2z zU)|cede_4?=_}Ls|4F^Nx4PUk=?I5u^|u_*$u^*!HA<6@EivU!n#S0Z%L5rnZ{TsP zXV}2#P|q_-Lh0dYrdi)2{|LA9$-e5=5PBWiZEBUiJ@4)pW!rX<_cgVD+;c9K{Zj7w z$FR&@^IxY5Q>yj+{&l_QPcJbGufFlx$J*{qO=W!iozJ&_g-?3+`SM>^r+M!Lf1NqW zu%LSOyIP@pDGUL%uh-YU&3>gF|Fi4Yuj~8Q8?){nJQu0KD1{N#cr#(>*w z40o+7>+K(HOaJ?KuKmLO`Y$qX+Z>BAs$C$L|IK`U|GxCC2@Dei53b*v!DPYPaO~Kz z8~5+8so(!1E}2=O@5K4p*W>H=uA1^=`(aLGFD@R|=BU%=b_$4he%P<;TbWyAzs9yF^LYDQ z{r9iCtLviwdtIuj`_=O_{oInrkB{|!&fE7h?ftCmbss@%jeT#a2Src$t^D?@Yi4<@ zeY&mq&GWU2D&IYCoT#l+X^ajJ4_E7XDbfAd=Jw?{`~JmcnhZN_yYH{}0{Qp(-``We zeog=TJM88C<$LPy|M=tbuYUJ6&t)r@o{3K?K9DE^i8k=MtON$gdJpiygj&Jw61#XB zGZ=VW6=8f^XT3>&4!seQ+#LDdMFfU z+Em%>+7uWpcY3$&+pnK1#QtBh0j+a>zu#uReCF-X|NfqO^y|~V+S8xEYrem4UioiZ z8iN3*99pVQd5&Yx=YKa? zwwTmgFdaB%!sc-4y#Bkd-i$g&H+s}PdlT%<=5Xn?e-=ZCc9ZJ)>it63XB_?d^zZL! z&))~%+n=8%4O(3RDlR8T$Xbw%&$p zB5`6qaE1|daxU`;h7PObiA!RiF>K(h+DE%tgt+>M8#NIYw%jF3>3g5oYCia!%Ir4r9lzhx4kYg6py6&=&X_ z9tO=BF9W3*)K0RT&{`+_S9$SB7P346gD`|$boz^?`Z};CV+?zJ-?WbQmZO?r*K3jH~Va3(= z?pvMzf8JOB`5!FEmasAWuaC=QlVoTu(|sT_NJ8j*!^`~Cw?C_yKVO`1KfIA z!^5z1pFP)Qjua{F!yj{fZp)SZm3ft)7I5B}o#BSrjBvgNuQ+?|*kaxqiAtI7yve${ zy1ypATK(DV>5}_g)lk5@=C3YfRdJI*U@=F|OdZS?kEN^`d9zlmGMYO!^*ro-`_^4(wd z+`hbTpI7bv+mFAq@6Z3aeY-02g7owAR5$+&x+CoQ<^9`hz2EA)w}F;dG6;hl#9(B^ zaK@#6ol1jaD#PP50k?#{+`RTd9ps>Jp#uwy8m6wh9Q(R-$LG3#Ue^u#r5PuD`+51A zW_fS)V*drU`^KXlm*}ea^Wxf8%@4IiEX53^EuUcP!>E8XT zQDLFkrv-B=nQu*ERA||4KRf;m=L2_!35*U?1Q|B*LuS@iOkhk9J`Y+NBH8Pe@{@me zUAUyfbjASg(p}j*`O5E|pIiA(GCXjZV{ z`~CCtnq;|>dbeH%kKaF^8WwBuGSp3Z_-S3OW%4<1hLj(BX9^f-I4Qg@yZ+kx=QYp# z>z{X0dTJ zVLc$92TBDKS{W6NZZcu`vE$~vWqsSuFeV6pD(bDj^ligy^V9!M=4LX4WIx-z_6pcd ztCHo)>W_6Ycxb=bJg?G(m*I91!|h!aml-B(ey6j?(%N4Ar7`R7nMd^3m)(9{{i@x+ zGP}1vh3Q6I{EhFsgS_iLty7+V{rmD;6J0C!@1OdsX41ZYs}-3X+J0}oF#R->03=*Q z4H$e5zERq`-1CKsGJ{Iw1@FZ9TWsI_TFRI($p^H=G#8vA;(I4N(kWs{`TA?poa3ns zH+&e3edcZVY&h-n$H&S|ts%#JyY|JreRi`x-mfdHp2_HN{IUc?W&Qil>y+nzuMJ;& z;s2id_q}TE-kxNbu=)2gL4{0XPN)kkB^ZioZQ6gZ8|F?cjeco&a?9IiuMIW5|9{-3 z@~UNf{IjXd3npEcPhpth`7wv7^3jpbx)-*&r)%xP&X#@tI`M~p5<^46jdIP^|G#fa ziC)8WAo6c+(*LC6eY4Dh9YRxxBvK&x-c6r-ppZy|#*U2zk z;+f#hu&&MO{))wSwJ-jaRApKa_Id-mF5`x&$2W66`SJ@yOXOy^PMmAfixinP=A+! zp~!$CC-vW_Rm!@&4AM&v_}_Zx#iUWpaAOj~u2T$QN|Q_PeB1N7B0jft+hV)=FhPc^ zs}6%yxNeByOYoj_ylHm&{h7-g)`wZQ|DFBl|4DEER~`&mi{~&ndNN$Dv#YG%S9m;q zZ;ry-&*8tmYo5L@zsvrR(2-|<|FJwx%UEs6kmJn|@y9r}k|_Zk77naD4SQaBgsq8{>RhFo=;|=pPf_bP%Rc`(`5D8Csa9_;F>F}--8|Eq!y{?7i-oOR?9COL z{h_<>n!P@M^Z!i8^`L#cDT;BI|I|JC`KR)~UFzT8&fnWt`{YO!ON26brT=T@VF&>y zvj#2+hBUqgoAij)i3}&MKR04%Dq?st@$9Zip8KXI@(54Ey$9?zOdBvly1>vd;|P_Rq`Z{ga=+rM~~kVVLpX{fVgT zHMt@NkBj+vn}19{&2lF93D~0zbCei-m=*f1E=@IJX!2=TaI=0Uv%-3-bCKO`Hm@qS zf3>>pIp5xouOVv9;XEk@od(~+GgE4_DmfWA|FD1lV`uH== zwm9bH^Yh@=ko;`U2d9`P9RDqRMNVNyb}y(C6w1rXt6Iqr@#FOI1<5W}$G^P13^_2? zA&jj-0me^H~05@572so2U>;&cVi=9@71T#~N}ynf_b){FYJ*H50?eXeZQ^L`=52U@~z zOY9s~O%`u)x81)w{>Ga63ptk33_g;R&i|g8wY~MvWxMmg?%(+2`~TL{vKy~ggO2)6 z+kKhqN!H#zo3oqOoY&tUzje}$Eo&ti+?4FkN*bqWX#QLJ;JI0*fC76%(Cq2{K9DW1 z4Obafr0h+$+P}7B{*svW^Vtv2lP^7VJAZDz8N)4O&z8$RHXpC+-&=n2x6Ae4$CiAo zikW=yQRRyBm)hTbD)W&IFq+qY@yGW2HG6Wd&F|B_yL(C+$JPhSi!Uy|lb4yvX%g|_ zF57LZ+lv?z)IKSnTFPj2CH~vS-d4s5-HZ<)2P8JEKFYA7WNzuamFgRFg&*4l>$~p0 z<9}Q3+n>PKd!EOp@4oiB;d<5FFB^()ys8n_yfQ!S*5|r6wyU;(zi_4f&v7r?{2R(= z_r({VHJzpN>*+sr{oG4;?B5B#zq85k*WM+$c7Bg)$-qu#KUbr7sUrjF--mOFXZ>1tN&^<-oLHus3ZQZn6r*Oapb_S-%g?w@-uFqgR@?NQ{F%Vx5V{~8pD9N6dk z*)(#`|D@+8xeRY2ZmwXp&o%yTck@y1&6xLd|0Vog-uaJD_u8MMKQqH4B>bJ`YcbdS zc-VgLTzPobB{SK@X44r1PQK5Vd-%2TpIyw`Gu9^)uI-Nx_hxZ;_`ci0aDIyc!y-ur z|GYKf*4O^?)l;+>^gimb*3J61;kh|)L)P`1=XUp%MGNpp#>Gd>eQ&}v z>uB|ahW7>W>}R)5s~6!s@HRy#MA@jJ#cC#lUg7`M@qe`@-05$z=Puv7_j6Z6{NAdq z+cPh#&ClOcb>wz&PXG5m^>*t$*%&6a{{R2yquBcg2b=Hxx7p}AnU`VKSM`VfOL8+A zQev0eb{myX-L>B^dH((X@mGKSo%DGB_r32mg|6qeIy~iR*xWw-hYE882dHVw;E~FZ zBDiVR6^029|76~tEX8nj)#kb7vTvhwi)UQ_+Isb;Up9lmWC@0C_0NJBtIphJFgRKl z#N2Sidg8YFx|+n9j0F#FGT&=`{{8o(`8%q^CyV{hQSe}PX!|!?kfBJ^;oA4GTfg5pqxXv!U%Kvqq!jBKK%ZF^gQ{;V=rRMv)yH`5|m9MU@Bc~v?809CF5de7`Pcv9OY8Q>Jif`G@uz<3@B8fY zo*zwHyFgcxA>?a==TCmF{k5Q5aI$V}NCe%4BWCLFHHW!jn%|n}?dy8LNjrfdWQpHy zP-E%QC58k+{iAzCet6zKJnz1U04S8hW#8^uzdr2M68B8=*EQkBoD1F>_GwNCUBd93 z!GM>+m~(;8gLH4E73uH06Mt_xTgjkt@&3=|&t9M9&s6zz*PmidP!qi3&3>c;eEjTc zh7V@yj6TN3bH4pMopdr_-u?Nj_u8KSzhCR)Z&9;-`S@0~uBYUIr^S zN#;{W>?iWDTHXtDn=o%aFT=c#({G0; z8Dz2e$KB^|`5nF;?0(62@)z8{zPr2o)}j5+dKfgnoPE7wnc#;1@%x@^Ub@tEZ`t8` z?T5!0Ya{+t`)qdV&FNP7vzCpa@Z+PSDt~Oj^I`@JtK#bKE{R#6zj$rQ{FECNS2)=( z-@}nH|n;I4xAC6ZYap-%941K)*%x7cX;zHqlHCwbS6J z4}RlPD{pb<{+(mCGXL$4|Gv0v#!AKsK|ijy2nLitj-STyKYs77v!}9VFkE6VIBIX) z$ta-k$D4;i=vVRcbE(1yl9>~pw!MAzt?qTQG{fCrKA|=Ipu@4;7hh0*e_2TM6tClH zNsDlohyO*+E?cH1+qt3Op;K;~iMjder`^w2G0#q4ZQkb-Y;SKI_j&H)udklWbA8pR zyZUMyuXN2KBNhe*hjVNWTVI7-mR}4m`**g@_hpzZDPT75bj#MSR+q1?W4?Fo^_1|{ zedTg*ZMx6N+_$ourg`9T$|T#%3=1O5j2I%`cndf5>(;)|vvu}=9B;ef#_oz|GrnJ* z|L=85(@&etO`rEI++pkt-kmUZqN{TUs z;l%SoNrp=-9$Z5EUA*clUa#H0YIfc(&$~6B&%XM0JOBD|tI}6XK%;M8x2~`CjjevW z_0_J|>n?BMs9*2F_whPY{cpqb^;5REGPFEpNMLU8XqwI2z#84ZT6OlfRgC?*LFHd^ zJ98MmyfD63|JP-ocxO!y55uY0fcW_Jto9SPRqp>#->epUevW1Fm&c8|#amu{kCRz@ zlC44HKR8_%88Bom?X#6;SQk`xiD84GMyEo*ztQ8+mm97{t!9pU`}(w1&h}ZQd$dK( z@@6p|(MV%B|L^uBhN8AwzQ5+{C+>?*VVLkk{o?;Oo6lE?+u1GNev?Jv(pC@Qg==f; zD)0Y~oPYmXyxRULZVu5q_kaHLch%MR^pzIrv^wGK1+zC(i_? z9m&W0Ud_J$XW28^@;eJ#3m#f8`M&?t)b&3e{cn7|zO=JGmqFzEpWmDR&bc$ilZ|1! zx+z1K@&9`(n&+9PAFr&gRhCwR~TCMcYTMa!oP5c_%$+i{wUycYB*Y=qt(! zgEmZDzsMqUGGK|F+j>?v1_lNPALa$qUfnp&(V)PrkSBT2fLXy;_NABV)>UD$AF|@( z#oov3Uj4Z4*z3pNG?qC`U_6lh_UX>2XKcCue9m9<_21*Qm!tj!voO4!%;-@6<*Di7 z*wdwVR#(=2{`ZheB8}50lVQu%-`4BzuaElqZ@D3Zmd+pTES5b+8z$GE+kUUg`|qz$ z#j_4Ee0U_qux-sx6(h|ndovhboNu4BSj?sFldcDy zW;@W8YE|Eum6P*@m*Lj3WRb`Q(0o!u3!8)Pm5t?+3`TS8J3(h;o!Hb@vUE~ZsJ3Cm z*7f?`-`7tQt`2?lm38aoBF06zoDC}7)zLx@W{fL(eVMwL5|kT`{BM`9dojQHxJxY4 z1va70S92bDf4*bJ>@e-%o?GwU>)g8?_3Pj9Sf+r~hw*~S4pIz9?$;D~PM&umjj15% zz=EYrX3Py5PWO~08ALb*RQ_Ere=l>IVZlD$&Ek_kgnMtVedot(8)fJ#5 zzdGbZ{?gYK;jg}`*4Fv0aIc>;F(LhXC}8~W@1>+SnB ze`UM=c%H*>i%8;q0%|9t=i|FJ@#id|0zT=9I$i1W-FFC4nJC`OZ}n2A@eC=@0c!wlUbY z_4+I8-Ew+Sf3I|lw&=S#VGdWSc2vZz*FXDtGvfi{A3Aq_O8hN6X8dDWg1Yko8U6Ez z>mSVAe8z}tfe`1_bZSaQ%Iksd zvY7%s-~K*ssdv0DKfBZ6DMRW$2D@#^uNd|mSC~=6>A=FgV6Dy2RkIi{-!>(3Nus zeJ}rg%B}J%^26t{jl7niSlDF1aOjoG@s-B8(eY7lt%_i$$+^EP-tT{J^=jq&{Fht0?Uv5I zabWja*?!SUm+w!1zW#kC<4$||$LkIS{Qj-~>DLxlhE|3dN(?+#|E|0{@AGoG zoDKT#>+-Kj9(bl)o}Y33?0ozEstg$m?L%MK-@CkW=Km!u3@-e4_EqJ(GbLCt{17*< zTV1Hikam9F+TOGaPrrYD8{)#qR97-f$l<;+BSYUsh8I&LW@vpe?`3(A_&-|iztiUf z{nNJSsi~={J@a6=k+LXncan7NFf?~Pk8ttKZO&^Y7p-Eq0y^PkVdv{&BU|6Y*C?m9c4<}c0q>nJB9Azj11o{_SbDGt~t+W zcel-ITYTNmr)LE`&VN|FZr7@v?{>YmdXTTokZ}8GxA@^w-UHXy$LE*qS@v1n&T_}A zZ~4Bz~0D9T>InO``>4(?kfvty_$0UilzQiX1i1CcG+3YUeEN#WXt_4=hFXHRyBB^a+jaC zf0otPo#*Y3f1dp7S5bfc+xPn?ye?K@ICik<34`T@>x}i{ObkAu7X44oZlB0d|4F_6 zlGPHnggmQdoCnMT9?I)`vHo+ObACgxJX75(-2>N`G9)k_DpX`p5PEQKx%i3xYC}Uq z!*C`CQ|T3#JIh$}=CBmJjn8_PA(Hkj>kTL`?0lckDEofZ+ikBeKmBpJsea#Es|)hp zf1cF*%X)d`x!wOe=l$RQ+d6;#o$JphFd1xPIgoJw=FvZA7nhqH@0ZW-leNBP^Y6#w zvnMC3&(5#=Jo~J2zs)5fMgh)(hppnw%A2{G03U0=60c>eD{-nRBzfAxDEJk;@VW*|#J&!PXlnGC9&4dwHycU1oS`Fu8L z=giNq>+A1Y=^VED@b~w3^ViqbIzO;)W^iD?${=-XJ=6bvnhep~^X5LwxmN$-rGNdd zQU#3#7vyd9H>aJ=I%oBI&9y|yYmWc^3;d`SX7FHoaUwQc^1w~*Z(I0o&)Z&UaCV{W zV#XJRmA*_>F)M@%o{H;3Q;s4_Lq(PCSAnn1Gxk0D_*h>qE}{1{)2txwBS(+!jp1mh zP3JeNuFhfj>%8IqToIkaRvCwjrx$+vuPp!5 z!<}JH^}C(9ElffT&L8et2{BwKdpb4TN|<5Q^NDVZ3ob9J|KJtOoFVAo$MB%ak6}fh z_hN<@>5m`noIe?onisMh(0HM8{o2CqvdyQ|KQVRa8N2LRpD%Ju<@J=~eg8FV_FK-+ z50%)jwLbo;-(sectqd`X7=Hb!={@vZdzQ{^kio>1;qd#)2)ham#)gRub68IJG9;)ls56$lGz4X< zBtaI3`6bti=g0e4Gx$zzYVu@tG_5}SdsdgmH{CV6mibkl__4fh->-i^3wF*IIkI}& z^{tna8kfC(efhih{VtSXnH&vwtZwcsos_+bb;W_|j-Ev;_v<%aFqeHd z$?EC8$M?%k+waWhpPpRU@SeFL>F~ee{`j}wZe>Ym9@BsRuekpIm%o2r{0mh`=Q;d; zD>$Xq*Z#`O=4F_`D#P^HOsIjWKBBGk0^8Idm7;&{?={$68u#N}+hl9&=b;}nXJ>OY zxJfQ3j%R8R`xV^!Z#4(Qb)|+qGZb?dxBd%R_}_`4qqDQqRe-^=bW`zbmG28RWZ6Hc zNxI(V*{0tZ5bV1!ALK-PuA^$jb#^72|1;e2)nr&!7N=s+#&W{8ZtLxAaqYL&j+gJ; zx39Igzc;v#2uGrBC-Wc*^w`cs0pVclfLC$0=HtAE5e zBszmip^Y3&3eV4EaLxUC%Xs^;GEolG)(@*W7^EA{u1vOjW%V?s$*9HQWbMDL_VUZh zCZCyqx;pmVe!ts$zWlgaH~;s~&RqYGKhOQF@jvu)rx>G5@Q3w2%m#uC|KHaCnBNpL zo5`SLcA^x6B4e6PGmkveeg2vU%xje&Jby3vAiw(c>b3fDrJG7?`rocIYM8_DW4ZsI z%-4^-7-H)Ge${=b1g&qU%=ziDbaPx%n%c6t%$0oqe19*ky;z&RKKpgW^=q2XRT$*= z-#H(C-(G%O8OvKMNr%|os~8q&zTf}lyZ75~ch39gRIfT;zV3N-(7E#$t~GEoPMFV- zAXGos_`!NrhHHB9S8`%2Pns|>H0ZlA957O45cs3?;CbIghLxNRmc`Gu*wz25S$w(n zatBMnt!J~?4l67FsQz+wb@=vw2blS{oV&l+`4sDp88c?gh)`jipuEQLYXA0qt^am= z{rovEd__-euIzie7gJ`ZF#MMK760nN;%x;V2I)gc>4X`&IOgv4jkoWs$+P>@n<5(0!>B_h68Kt8(!Tk z*Ugk&%s7GJ!qYFs<-Uv(;!FuI&fYD*uL~)Qi-Z^!FJZRtJT5LS-_BI{=+Pr5hAC!<|83iI(~7C?-@jYg>vLrf{(sOa9UVS_;cV^qyXp}8oH!c-FC=cuJ^b`@P3eQ+ zR~M$+{af<-hJO=Z&AE@InnE6j|I~8-?QJ?&`}TSKt>3o)MCbd9G8&u_8T z%jW+&js*e?KRFl}erSAbXJPRAeNlvA^85M^at!~CyBJ<|F+J+BXUdEfJP^au(8aPq zkYNjl;vD{W+|x3n8s6P}+RB_+=n$teVHu0Uh5EwJsk$HPU!O2td)Ua0sUiQ~o}D*$ zm9GA?LtI!`*n1*VK=krk<^Q!LZN(Ypz4}$#KR>A^_@&QtuFrZaljEb7?``p`xLA|RW4W;EhX=!!bE_U*mMjZrI$(O-PMon}^M9+a;))DMjvP7S*1#Y! z^`@^V!}gO0mah5suKJJA)dR)hli$zotM#1w?N*kEY00I+Z}&~J7Q8n;v-AA=^I593 zp~^4351zAgu@AUlQvU8v8poLy1`Q7epT;_AMuW$56xHXRV(8;$d@zg2;qd>^^F@6k z3@a`wfHSxQ!YRS9Z|8H4++gW<6`1||Ke!Dy$ z^~)PS`<3;T-e~<3`eA@Qk*8TIH&c{15_%wwoG9(2vY|FWM>D8s(Ooex= z-tE(5*l@nT{?(hj|2xibGBEtnQfd%qWI67^5VOpc!Pk_*$CaVfl~M46@{4v4h5{Al z76t)ORCq9aNleo)*%mdan}MN$!PCVtWY6TLf)c)e#q)N*{IN3SU6JR}qwn@_>#NP1 z`|Zx(-|Hr?Tg`aDvr*(oJn!7!x6ar5B}6{@z5L40>%ab7ud@@?WN>0gQDAttFE@|- z)AcoxmlIeHTq)XI@bJ*HPp9?svkh(jd^jA%l)&Lv?a09Jfc^NtKeoLL4=yrH;d#Kq zP#VG>aFXHBW*<*RKZXw;9RKDCF)Z_7@L*&BB^=>y55^O$_g31-mH${ibyaMsO@{v3 z%d)GS=XWEzjTGFP~ddr=!A>A8H$BhTJUpMQ5w`Mt`sq2aMt1sOK*ESSH$k738JSF4vVW%$5U^FyxD zVx9fQbl=w;4IgXOCqLI<_HcfsxnNle^N$?@49@x2)<#1Mh9rYoJ}e~t>xXJ!9q z&Xg#O-ktk@<)IJm7a!jGZB#cU;za3M%kTPndU|mOqgNU$GJFzbnE&%kdX#)q_3Ub4 z2Ak`#?hFZY8NSS6X?VT4{O{N6)|LXQ8sRtH*2ENM7k|83JxlRN{<-holO&f2_W=lt^`n>S2eXB_|g=c>K`?>xT#{d0fD z^2F!NiVUxW8LS>_GH@IU{MXN1Z1vfZ@2zhIvd2yg5C58F==xJ}tjn8eaV2 z!s4?F-REcV*?o)o{2^K2Z1=ahIbwIW$Z#@UPv75oOWb>!PG+!y!Ik>^`)beL+M0bk zd2Pf-Ck_TsQ5Mg%U<%(}Z-YWs_vhL^`&#S&R|FXt)~GNk$TNP}*k8M*)Qc&Dqj91F zLyjv$?Edug_W%D}6W56_;QjFVy92|U`}^aiB^l4_t1^VJGS6&s*lpWT%kXcBL9#a! zsDabTD!`yx`XW||A?APJt6Q;Y8@yjTe0NNrvy9=2jQv!fMZF9kB==AF`#fZ~1nc>~ zHOngMiqGEY`}Mq9WZwN--jwY@AENRvQ;=5X0`rKvajD- zdhd5o#D?|f^WXjs{{4C4s#s-ai*qUt!IK#_G}LP|GI%i_{=fQUH^Va}hMYX6|6)uD zw>~X&ZjWL*u=qko@zbf{We@+GFg-X}%fC&9VGF2n+F7}bValb>?<*MvCNn*lba-Ac z`>yp?kJo83SRU{9QhCKtb>_#;H}+d)B6%&h$XGpIIq!VT`TY2jd%r*YeE0ct^zVOH z?Ec5R*JNZcd!}+=OLq49?d*aKAd7d#SG`<%nS()E;Q8&Bzjg{S%>VO5{r2PkPvifk zey-mCy_)&U{(rCc=P3&-*e3qizp+!5A;gryhlQb^;lRxLV6FonEObw(KdAq3IO7cVPd|!K79T@ zhoR#2!uwnNE;B&lQ`?2%$O(p9N(?^#HFDo>`@8$umA1I_w*?7W^~*o)>z$w9T6cNt zLCaa&7QdY=_3Qrgg8xERUl#xS`R+F;7<;^T>|e>Dpl@T|rgDJiL;Pfh2kSi;Kt&qw z4n5Wfhq(1~?oK`NY||dCnQ`+)8u;rzG@t$dWB>m|?tkg^sd3Lg{A2$A{Qsp%46CyK z=&>+NVwl3?z{JocZ};Vb^Q}TgN$J)Ju$>_ZrISR9P=7XCNoWSE+4 zasX83o|$Fp&0TWd^0|!u&fQm77|#8eU;SXwHA_y0i467M((9kiWm-_I!X%~_b0g>W zwzZa(pHe=**?iuwIAVL@V>jK82RIpPo~_^cY*yOSO;dF_H>91NHI1dAsbTiD{48!} zFG!>_F)2*%+X{+wkp>Y^4ZEfIjML7RAJe7w%UIoCr^!=m``_;6g4=a(0)M*1{%sMw z8YtiSTl?+f?|MurFS2lN2Vlnfs zh?4JHF8jT{_t?ndpZ(#t0v|qqUuV=Xg~8#0|MZQvri=xj&zhSb{%m5E^Vo~wfQ4V{ z|6utKrQmMmJQjx>LA~&Rhr!GW%QzBpM1SA0x@%doF1Gv6Q;GdTR`=~(d4g9-^epPD zIrEwQ@#3HW1JTT$z5DJYeqMR_TeAKATJO^m?IzRq)!Q%sQS(WuK};wi$LYVfFhhj- zvq#bV20{0`lecP!24yv z?h}8O%I%+Ib^p(=6){2Qe%rsY`eb)Lo=@`VjgQ?g=P%NTJ$Jsm^Rx8#Z-GDS`fT_0 zGDs8(9pL!)+k;_E+}>SZ6)%|YdUr4AgMTnX#a?BWlQ-%P^P2m7W@hKxa_;(P4hBD_ z9xg@(L1vK;`FD41WrU35=`b<|B(lUgN)4evPBnSNBqGclz9FBR%v z$=P6h-e$8llgDBPfj`c-+wK26JhpXNgZ9E>!Jk7`R!Q`F)K9Wn3& z3{Lj)JCEC!dwHFm`EcK>E7Pm&SKU9~*=N6)<3Yz{2EPaU*%%j0TD??|;d)$k?rRU0 z0(T|{(SPf!_+o+?1U}rBc_rkqv|fdAh5uUS5AS^$ZrJ6Ee0crOznF<3uKxR>H`gjR zKB~1g_t*aCe(?VlD~L0bI2-0zU9&S~Nb0(=^9;lDON{GR9-h03V?pMhnDyH2=eB1H z9+&}+!%46pxP|Npl6 zB1^-o&&QUw{WRkL$}?GDFDsX_J_=9<2HOpKV>|Jc$)cIP&inNDDC- z|8bW86=1~VFqLV-EQSL&>s1(3Siz(Dii{JYqwg$bbMTX`{%GO9lu2Nbala`;(!2c` zx4OHZ|E%c}{}{luK=SH^|8{~5Q&?8GGT3~*65PxBr#yMjyNkYO->g3~`(gdY2Zzr} zKCjjB0@ecSc-_P>iKUoYQX7`!!^ zx8cT3+9?D%iiC++xFdghdqy4 z%l~98hCS_H7`_zq$6WdI_@Ot$7ygdzDhE=_V=l%N9u;+DX?Q8=AIl<;BF6aO@Yc^# z48gA<^;hxM@B9D%W&SY9>V*kY!?PnRvlx!Ny7Bs3|NjdcbWIEF%HG^~Ff}~x<+Z~` zYc7A?y!CNi?fK(d;;r;{mEHZ(B69I@&;+x&m6Lmxy#CwY$#7z=@VwWbr+T;BZ1tHQqcA zW)a|E(E5Mev*C8$?zNl~8A}uyO3raIl&COR7;Y$fdMfSarqs)?7%u$z|Mc{9Zbneg z?3p*ilq-(UO&J(cK1tr1V)bp+-(aQ#Y%R5MiSg|Ga&H>U_Z+H~YYXFiwus%O-&Pm5t|>7n4-eMQfdpI^y*|NF<28apqMv!8d? z@0)-A*7^GyqPjkX^*Kfj$_`8{jsNY08LZru8pQrSZv8*Q=s=G^-M_l4t3rEM^C;wW zvoJ8#yRmHf{o0z5VIn_h6x*Fifsx_#4nH5z^wIwy_t~m51i3Oi_{UJ8 zEZFe&k8Qo_*2^)D_dj2HYhF^X#&qDh6RGrSmux+Uz1INFQUz?6U-;&8H(vm#Gj{iP8zam#m7VCrmg*IyH zObUM!@4gB>`{BEf_`80-*YoQC{ao*v->%hMpiFi0V}JEgnO_ofbH(RY zM)NjY_&xv8pXBtq;@W*dTc2M81?H3rJ1?eZ6Mm=vuDMq8&+TAw&Aud#2Du3gfe-Gx zF)S$wXL@kSTR*qWA^xTL-I8GGxcalE*G=TQ5ki|3A+m!<;*#cx6kbgGOV&F+F)47woll zX34YA+SqP}S?}ssedhn$^W;y>(v0(KFW>wAQFE#C{Ae`;u^G4R=5L+1KXBI1^B;e5 z`7#3sjRCJ{

)oXt522=fqhyQ1#9c*HKyLZv%|1-{| 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 G&;$Uj83P;u literal 87391 zcmeAS@N?(olHy`uVBq!ia0y~yU}0cjU}E54V_;yAIV-o5fuVuH)5S5Q;?|qJnNwtr zm+DD8Hny|-eERsej}!Zk%k7_8uG9M_y}#s3#_99lW=NgpuiKN?SLXVs?N`}v<+Pn{|_ac1b$&=>E!rN6K0|9h`KbstGYYh?VRKma znERvb5rfr?6JGvss$n-glf_UWzkk0Z!?X|o4m6u4&$Id)A!PV|kNo0Wb(N2@&m{-l zUdOvRYe)HKnbL~mPNhll?P|G~?KaE9P3B>cU~rXW&{92}!f<5KTW&2}u~#C)k=8frB9X0<426on1t0$9HD!1-jm4$q`}BJZ9@0_soqk-G zWR&|J8zMh-L+s64Ei3p{=GX6uzI=xt5kL|Q1`JY33_liSFeesRC@}f}3m&(-Y4BuF&LR&_6iu`^O*&hB$AgPZn|Zh75YaHTcohHty~?oR9yf0s(}b%G8@~PjcJ#8T zAcNjRePxCOkPZlDW?(zuV8YNegQMZdA$v!bhEtiG4o^PjS~A46z$4aSF;Bx9COdKF zgNGSTXgw%46tIB`EIh*2;2ZPWOzYwFRL%ws#u-P~c-;=WtbdN-fDpt21_lPOCr+?A zJo%g8$+RNq%)jfZ;%5Xt#dk0!L^Cz0G{6*!q%l01aYX<6g#Q+1w-`LC=k}U0ny(1@M~j~ zs=|{~OV?%{Y+{`Swgf~NFeETcxyKN(t0eP^Rn7XylFJMkv#ou%p3e^K7CRH>ed}4) zHvJi^Z#_GI@zDL_3@0WRvK{b#?w=L7Kkw0{CV!2-`0wcNxC0iPUK-* zbjQ7Rg}!q0j_0nL!A}gyf$E{nf#Mgu&r@DqrkVawlb%nuIB-<6*s$grh<+v?gc65WgwRLork6kkl1VA%CO zx!?9!_P@h7{{_z$yE=h~0ok+$Ctd~>Mi-$2Hara8q75Nz4({&k?ccK(p0^3Nh*NaZ}RE_OE}cLiiIFUWY3%D}>Etk0~V zF@yOM!-AHIDNp0qeOJF&|MOP1Y3A({+yZGA&PT8+Y*%TBjg2++X1KvHVM-_CMtGWK z0EG(MTt)?Dh6>4sOooCV^)4(9!KWFDg6#c1xwADa@!{z}$weX(pXR@w)WGEYuQ*mH zAmK#)D^*5SV+N(`SARcaNMJr-%-+x?@OI_PVx6qzlj_hj&?SZqDvUlg_5wMf3_F+@ zE^p>?ILynCx4!GY3mbzzqHNMQ#Bjp(K)P)lqvC(9ww-#MClr2!@&xO1elTSSy0D#R z!RvdSrVJhz%FFey_iy?#e~AI}p?zjg6n{PDVZ8lMJg&lV7K7EE{j-D}CU0Bq&5{Mr z#tfj;^pdxs_V>4=oi*z@7|a-Fh&HGhr z+8W=xcW)i5{lslMLlR_cgoV^PvpjPdPH?b;bbxTfCP{`k&)=J-g`Gag@WJcW^h8gG zIJO4k%y>Uf*3&5rE2gkHD6IJY^Ud>8X903{u_N!}vgGpPZY6GjGF^>o;|n6+Zs9EZ}WWSjl)m^?!vXgFf$r zOO0xXBnb-J0||xrWY6 zD-X=F<6~a1(vu+(Y#NvVMd~{?hRuN<0Z!+&Ry;p5Q#hMJfdAXs@X&+t$Frj6Fg6&$ zs{$T5W(FA>or#PBl3w-aZNIxnF=&Ua;Yj~y|L5Z0S|z3<`<J(P=gZaYsx=v&)+M~sy(_a z!C+|of1=ufJ(>KO%nn`k5+F0cm`6=ehKG$=A=h%J+dlP3)?KGX9z4&@&3zbE`?>P` z-tSsU_UpIZoOiwR`_ zV+n>?q6hU?*8Mw{_(uV30|NttLB^4KgA2Y5B1=EaN@6;~QKh?T_pzQp7tJTNybNMb zljhXDzEbaYsea@pmyH$bn;T9j&ASy7$ffeC^S9Zytc~|?-js~f&%JDy z^|&sxb^lq0A4hjT7ZHTn!oYUmf$%?HQzoB{{!CGJ=?mj-{u7;|17#_4_)ez%s@UYXX+ zxPb3_-s+!!>VH18epUbH^XnghFv}7GI{!1KGF7zwUT((NRaJjxW|h!aZZVw|GgqoF z^qXS*^~!Rq+j7|q1@p7~8csYuWmm}N5cTKBhh9@Q25F%j7Z2u!Uq}hmL$53O=sN}R zf4t^QJ`3;Vauf(1Wq0ohaM7Iba^f#FLx!6E=q-#Ne$Bgm)!Vu~o4Miq(NLBjdq8Pd ze;Uk93=As5$K#yJ89M$e1$1ya9NM*YYv|1E*;Kkr;U<`gTldcxypt^2knUpeXf z{rU{yO-&5;LGrI=FK0w*e(|Jzy#L;(fsO0GQ!j(q>$DU5bItCVcI!`PnZe2U*)H$Q z@ArT2<;0n7T-Mak8{^sVYY`7Tq7Nt-GjQ>J&;PNB!PqDM+&=Gv=UzYdZPZJDCwrB# z$Tm;tqx{!>C%BkG7seOwTV*H^CbU6@8%2;dN_Z# zV8ZDu`CSEKFN4<1PO@8Mld$f%?}vZK_o)Xx2sUyS`s=c;=>S`!OAqG)pO5GNy!`pw z3Em(+z@V{`F~I5J{M(xtG_P6y-gl<-{T+Th>g4gQowe5sf8KajC|t+3 z@jbhK@Pki{F@6)K%ieg`x`d6P7t!EiI8xu~+fb+Q$5@*2na|#t9sS=ndZeGaSyRlr zUz_QG+Pm1}rqfw1lo%GpmB&WkE70Lw@$m2W`||tvMLZMSgyFHoqw;b6CxK0>g8x#* z|F4|J>N53JvS1!psrR&hH)I&LsWJo}->Sk>BFRuVKUDGir4tjCum1SR-*%e))~#Dv zCr)!%S*0ChU|?X*eI3WWGv#vml~=O&gQNNXdc3v#DC~P{S*^EueROGFjpN$8MQ*t_ zs+@A~mEG~m0=IK^^lh)W>uQ>Rv(U8KaeLNG(|F%`Hj%xO#%_13-|wBpZ}($C)sKhm z&VDnET-^=UzIhW6eXV5G-q-6kEU#{j+F!QypI>=d*{cB}X zN5W9)$=&k%Yv1j7%vbvPtodr`yd92{w`Iz2J-H9!bJy(AXHcIW6e( z(CYV-SG_&*QrqUw712+h@1=*{o;H2mgl)2a#bj!N&fYB#+A8xZ^m6~(fVcOfmX^(( zv*?^%ZL?bL<$WjFcU`@q%YC)ESbgQhWVsc>O(F-Kn9BeB_&95e@9&tu9vqV+;x-lR zy0tNB(XJgY9lsvjRee=I?Ecc9k9(D`W?LUy?QH#QwQ2RV)jQdDhn&86_T1~)yPu16 z|8IyCd}TT%SG4iH>;1=}ao)Vziy|k_50BfO_SE>=nwn{|mYeBbdh*<7^ZcJN0na5R zt;=%M`lL*|>=%EC`e|yAD*ZJ#Gc)k+-Md+jkM+K~=q`VCN$#!b+Z`co7@mfIX$(9j z75dBtoqu=Krmft!L!-gucxedZ2gAHIkM4UINCe!dGcB<<5R$kyldb64d|rm1R!{Bv zSQ;1&KJYLkUGdQmlxDc=A1C-N-7iKlclP;8H=AYm@5rWaVKjJJvb|0v@b9b5|9vNK z+u6&@5PZcr@`iAx^*Z_e_hj#e^EAYN2{}@qK6PrY5kueGdF!X;M6c#;*zr31eRWoV z6hq1WBby|@|!Ps6R7 zRf=t|T`afmOndpbFIsnRx^3RpFY`X{n8()eY3|SGku|rset5IjM7||+f$KgMb$yfX zpI_;2f)H;=EsuCCRanD=hJQEHcXZU6E0-ADe-v#oY|sK0%255wo3nupFlzr--Z zELW=gx5Eav2a|WG3pY$tlK6XQ-&KMCA4+eWc>C#^mr9(8$KH8qZ) z=l6cf-r^pDIIF|+a(#koDgK#b3Tn>#`~!z3>raCmd(z)!id~W^c%ciOvPwk8u6=Rhzh8Z3VJv3ok zrHp}rgYk~58-51xWCiMIus*u5(Am^8WtW`l;$K3M4(oqDd^}5M!_S?W3=yn*7Ob9s zbNcVr-z`6;Klyw){G40f_RhNN#qxEZXWv)Zc%J7-*^fIS=f3Rw^msdQ-Lr6TK&|C(M8U zZF|(A*AH_u83OzmuD^e=j(2kqxM|bSsQr)IoT1Bvk!><#!CBMmS3Vw-&cBklG)Ab~ zDIm7<!t=0Z2Y9GHS|6=>Ss@0!&Tyd*?VrO;kxc$G6E zQi&vkjHW`Xd~CbsmB<6L|IP^fo3noU?~h-1@-XbPlVJFIXr9OV=HHfQnnKtZIP0W; zeqJ_*!3EmF{2|5QdpeDuSz$M0fXMoNzp}p0JYS=>vE#gx_?cDgDqkYsoSxLO=l+^J z2gN-`Ob&XC6WAJjm`(^Xn21S82zY*SVm=U~9Jhq=K-2un>uqAb#ryZziG5kP;eClT z!=(cSUnd`m&+o3QshiGt;B9j$r^A#D>S4blelLq;I*QzSmTxw-jVjMn+N zFOvi1D}*4edxt;Mud_%jVRN{^5$004SR$L@#m)b$+)kjz@nx0;c31b!di(b6!%ZB< zH|6`csxmGyG!X+0jXY3hUU1Ws;U>$3+pcPiB5V#CZ)SeKTRy)?g27bH!PGFpSIA*H zV}g{d9h*apo+vaFm>Jj@cpB=`8BVCwseGw?HZT3tO$md^jGH7kB;Nfp%cvpklY=B< zz}wZw`OMbb`+8n6{9Q%7?(0f_-J4&gWySxW+kfhwrAO@w{ocr3FE`EF|7Xf9i`t!4 z8D~`H%GMrg;p{p!JJ9W)Mv(j~?_{}}501L?($3FYt895~ef;{@3-fPp^Zokn-kNzf zJECg8cecJ-etv7lC9}7$?{1C!o*3lfAvulVL)0&u=?o`c>s4_&Y(B*>E6Gx8N?ec| zgNtgQ$@kN$42#`*H*wbZMg=`JU?}lx$Vzf3eSTt^ODe-;9Y%rw?6>~)mrF66x4*ZR z6Ea4s@b7moCj)arfg6Lt(_i&FSsdILVpdKu*nP}pLel+>`ZC5dco~$W845uaI74qL zb3+S1oTu7&_0pw9VQV55@-hg0xxGFAdcVJ1)MD5Ag2Gj5(hNa=jMLA}xw%E9!RGOM zBZfg+Kp>;beWTWWPyc4|FnHVB^}YXk_Ko$5-g#H8_buNh z_iN%Rj#5zT?aH;CA6d7Sot6w0{1Nuf@=uG^&qJ*ZJOAG3e)w70zkdI_3gcV9t|(6y zYdvkDF=gJh%fgwn&#Goh2|o9eTy3VGcX3JXDyD-^6;_KXnw{Iu% zoWHQEtyXjRA+@TL@$mH|y->sHEFX%y85>j~rK<&R!!ph&&@j^^DTYm44zF9bhI=vk z#R5-JT>9<*f?Miqm<~A2I4yVSR-Mq#m}mW-zjrKIxY{LYF%Lsu#SHuUy2HE; zsq>d#*3!KTcpEr_Z(rHL8GL0&;o~hQ zo_DFKT=HDwKhwz7caBBi_Q0d+)DeC%hr&y|KYdHS8dXH7iu14PrlNmpL4zD$+XN)o`%cI{gpW(9h#*= z|66B*lEg&D3zy#Mr>(AiT76>CtZQE;U5MY5;;Hd3bN07DX?=MQ?LV0{zneZp)ouOt zL%Zq!>h%T7vxVH)<<&n}@=Y~da{cf`VeR!D^A@aDn$h!^<&(wcX}0S%kN$bG?Q*Av zZ-d3bx2L--E~h9r9I?0k_u+trcB;G?Uq`o??xf9YOrOlWzccss)jv=BS8f9}6K4vC zd)$6j9QRA$a{jMfkF(DFDqW?t?rN-TZdU5~+*dR6|L%PD>+koK?p4<`g|1yL(+@Td z)4eiZT6Mm1VY>3x!1=Owg|8m<7<6(YRy>#}k_phuMyeRJeeJ@zP(l1#vAVD&C zvUW=X$8UwU#QW0kXT4Yc_qvCncCP5f`(<~_%ov(p#=i{_&Y!V<`|-Ob!TOz%JBya8 zOzh|w-0nd$xj!!r~(OWpIM}B=r zQT(04jvR#x5~rqL2(Ik!*rMCNdB@h!@AVbW6it^sZFsb#K;=d4BE}SXGscc}TW>wn zslQW~$#6o0LG#B_MTPXgOBo$@GH7f%B=X-R+lTGIla-sVtoa$6_3zf}MSA~t*UuI0!Ry5Y|M zZ|<%8)sv%szv%H`+?#fGmefM`-zOL%uHKB=xqjKoeWJowCN6z^^>O#{EV&lVE@}2)#cV9n|z2vvY{m(8t`#m1nF8s0Hn6Xdh=F0w~-W54c^KPv;zpr<#d@aA# zvldYYB_4*@kI9ZtYrQo7z4l@7e;6;$Y4C5g_0}Kn_tdtF{gpL;AK-Fp-Miqo$ziXr z8>OFOZx)|1{%~42 zp8MX-`fjC5X54wd9>;RkwuzO6K6Fv#SXy9jmor1j>*2d%nVF9l%rXfKm6S_=`{d*< zeOD(NlSZ^4%;?HD)2HaI;+z;>)q0x}>0 zO5q0>H2N7YtWf0@dzQrDF)?&*E6-%1NiU{PImvB#bAd=Ys32L@{{TpT5 zdl{m*9Fvdx#^!Ep6_=n zdG2j5ddsExqj_8JXVHoCrE6dDFwDGhN$J5_PTlMy^=~)LI*@R;NJ=S|ozuVaF1Oek z!Jih_uEhM`W?Oxk>;DCY1)t~Nw6Zd}7*e%VE8e|Ze|5{n;*CBIpn(|%hK5GPf8N;)DW;5|IZurf3>-=C zw4)_Tdsj?Ia_th)bc<;^suuR7&___XRAzJjm14WTvkV(_*$dYG{%*?f=-S`YZ@snM zGETYF2Ys;rJ9YoHDZf+V*9m;Mt1hOM6vQZ>$iSlWAosQ*n}fnpd)rgF*9}WvR6n=6 zdT;A)w>RZ}vzBxe$$wqAPlh$YcLP?Mj?yCgewdaob0of1$C)}Cm9u&-LvV-McRl6}Gs9HAovm*6WvtAf$>tEV#M_N|K^kX+eB8`vXcHxg(KP>Fn z8fJc3zh8=BPe{`dv;E6;PPv9vuVz%39y#OjPg~P|#q`gad-qr7eU@5f$>{WI!{2My z0`7P*JGhl@U_9_>+VLwc3_W*Odc4?tWBPZk_si`9*&4EcI^1JpaMwP;A!Xcif1AiL z(c0wBOD9tpmUu8_JY(QU|6TcQ{$i$zXZ!zp-@fv1zqF+0zxp5Q{|&RY-Io*v`vW>X zG%Jl^Nv$sD`kU%Z4ohR14mf$7vzWznESVt=kD!@mM>N!aoKUm_D|(MiArMgfe0-8{d~ zeYObnWLSD)`f0{rg+d1|=`b2BcFj4yLG@SiVs|NyO=o!?o4*%~dmk?x8gy5DBa4F1 zoD4Mu6JgC|8mtkQ>p%C+T~+(<%!ePB5(L;>ZnP&DGFu!{HP}}AdrRi!D}TS=pMQmg z<98Pa!&H|){QFb;XZ`y6)>Q4lqS^AHE}H+uqSqhIXPd~@dU45ss2Sq{Yfe{bbC?n@bMkL;D-waMH4rW^g?8TubZc zJYCDEBRzY!%I)^~qb|&3^?IAT%<*Y|@0ZD3W-xI6yHj_S{}e_6cd>tF%m>u|q`ENV z-|k^BW9az1m1lv-!PD2?bDdS{lX>95w2$wVvg;-t<`WM;<`#!(e3pA$d&PYk~7 z*ckTf+p!&}|9Lz5in{&JlM{M)jm4u+f1GJ!_cw3#kM%X?KFkWiLJslF4JX(dME?7j zF`O|3XPYP5|9-D!oN$GufziN#x1qoGP4Z5orHlecR5;fB?9nlvQu-*W#pgOF|Llr* zv)WysEv`JvR?}Jg=ipl_zO6HlOPYV*v1#pZ^}_tF`ekn(PiDDLULV8Kuv6v0H2DKP z3^#U_uJ%3=o#`yccIebr?JORasQ2-)pXH@E7Wr4qzp&=dq;uN8r|ZS8iU2iU>bHg8 zDv6(W^7-$umgDR-=Y#4O?Qmx{-}TW$MPYo+}I)<9?cT{%NRuWu1TO`9e;G z^VuAK4>+wBoFFpIgF!oYf*QlwFX1h92@A~__WkO2zVhYc;iV_|d9;$Pm%RP&9lmn^ z3Zn)y=7dK_I(4ow%m31OxiZLio{ePv7DfgJh64)o{+<_M1s8{XpkmH{sUbtgu@LnN z<4OG=b5><^8!;TZ8GgO+$iE#oeP?p4duDOW?rweA?=sWuo1agqzqy}o>2Rm2KHiJ@ zz?{F^FK#nw*ird8&9z71)5b^l%X97+>IAZE%YA-BRD0bFhTCd>Yi1u@Uc0IP=j_aT z>fGXbA+oZvv$o`JoBe%v>NHSS?Gn%bmDlx7NB%n?@VAtW;iBQ?cq`@xm%sD>pAGOe zy!_sTp`&fXcQb~LIJN`2+hczI+4n0npE=>miojWw(hQ5;`@ksnP!Jv-;{dFw0ZybGEu$MIdfeS5Xv9E*i|vAdS+ z%)YMo{O?1KkNimz-%ML-1rBd`uf1CQSI2)Vz>b9MOobqg~E3ieyS-xDkdidx9( zJ~ju*X$&jYur>5E^gD%pd~bE`U^Dycb#uSX{Cn$qefyFB4WVJ5S`0eK(`P zEC&6#_AftMhi2#4eQ;RA=&-+6v~m6o28E61Z`=IV{~fv_Z_h`!KM%o!b^`xj`hXX~ z%*ti>;_T*T6>@aHnk&Dn#1@JIc~rx3sU}`0X+!+4IkQo5~=4S%XQQuWI|(%uf*gcmIyD%{2yz{rf{p=UPv> z!f-)EkfD>eVV(W|{a5liCVDTLpS~k=_D5+k#WljFWo4_jZChIUX#Tgt6gM&Egd=mE zgQXdixD>wr*EI_{TCc_2;L9)_wm^*yT;}qcGu(Q1E@-{n-DPp_BUkL(n>ugTj{3z_ z-=2K@6?y5D9b`gpPsO{Fvm`G!rZEJl9B5h>zI8@@$~VE%`$uG>9^~Ko7;;zQmV2)9 zvHW2E^EOM4>qHa>ZY`U4f$hKw_G4Lw_SN5Vwk99%o3-)w_Wbb6%l+32{#QA3gJH+_ zd)3a&32$y}T=-+Tz_%Ii_gPhaS+VZ@Ikp3*rfPd9Gx*Fh@!Z_Q=HTz&pLUhy0vki_ z=eo-b2_N4lGO>8J+8Z~1SZ~a9%kD4xFY_WqGnm#)PpQ)(b&&uu;8dZXw^%lG=r|LZq$y+GwPEM zn|!Uho}&9HcHt%P)OW9;^D^O%_j_7vCf#ApJhsG0DCc{@mFkHX-t<)aH&0o=Jduq- z-TAR9pWejx*$f_r^>1!$beW>Ypv%63>u|?uU>AYFl`|Hm``G1MMj0e;jvSrj`_I$gQZ7j*4 z*;2odjX}_p0qjaPhnc($jQe?**c>W(8KU?C8WQxg%(X@&_*@m-G5fbcQ3ni|w|QES)dOu<`!PMW+}p1<9R)PNYv*&Uk5kt36M{ zBhW0}?>6t*py*IY6K#=9pWeJ6WhcufDF)AJ{3#r7&;Q!tA znSOrWhTd(J`*Tk=WHKDlWjFZ!;j`~-vzMP*bbj1qNN{errKUgQR3L+v*Pq)y4O`e8 zx>On#G8TMj+kf3@-o4_w`949?UnT8oD&{giF!qyRSlQDsXA;A+EQSdl=WjEtkP`-% zGz<*Qw>Un`Vr*rcu%7XN)4e$tzjMx|2O^U&_ z#;)=B&o9NR5)29-xh!XNXo~Nu`)PBI;eq>3nFC*A+*oD^GU)tU%BirLNkx}=#wIR@ zXGRUr-|g^IZ(Pz+8+tI#cyhexk6rybD?M-Tdu$}Z@M`sc3m0E`dz(Z)sqV`C z1G4Z|g7NP`mJe~i7?>AGFe~JqFzH`@q#;CB;jry>j*st!ZtYOy)8c17sp~#JzgegG&sVtN*Nn$L%m=o~9N79UKJWd#z1BR{(-Z$ES$imroJ+dhb!Z3&RSPNAopV?bhB_|LFI`^pDOLUlrNu7g#R*-DmJ5 z|4P%eiC$-3xu5;je%s%EpE1Ak>09r6&F=-gzP>&@H#c{uG(*V6=Dyo^@2=G@E^uK0 zE%#9_=7Giw^GObmIiDHW9QLs}#3^15k$v!Kvim8$f4OW9ae*uwzn40)IRrHPIQc13 z)ri4wzTMh%tFue$o*6Op@oi}Re|n=H^MN#`8Q-@gR%Isc&bX+Q%QQhk`BGWw{AbE< zA75R2x_!46(~R4SOIK{4!Ej3L-_bYwPey#ycf9WFEphAi?XNk;6Srl~pYzjvV#=IE z1{X<2)7lh|{fAjryqlBI;l;;$DnC12%M zj0fI(3o$pO{dfIQuf(kI?Emo%_dlPvUmsWZ^XY_=rr_m%no3(ge(uT$2etnpQy>ft zf)koQd^ctI^en-cAttTC_si_2mv6V<|0ddZR_K4F6hox8z?8EL0dk$cKN&D)-TL+G zm((_v1Jh0`y{Z#C&9KJAzF%2ie)~+uQzHL`z^&0A1qUO-T^gqU@Q-R#ds}`^kT<}& zxF>hn{W)L%AMcefygBpMNB=#ND~hN7SAS8wXesBmRNlh%-5)2<|D*Emx1inf&p)IX zYUK5!x2@6Za(K7<<+9l(@)ZvleT9BMQ-)L%43qwC3_ev*FTuckjN!y;yV|(a-=B;a zHqDT%jE$bh){wvK%bisW6B4pqgdB{!j>f!7+C6{e7S*#KKIObW*vy_9((w6v$+^h!6M0Vx(s=Zs7&@uNWFONiy!__Hga#PIg5#Vax~I zrWcrJN_#J=`}N1~Z^iFb(^tkT9Anwy|81jeGf$&scGcA{rtVj5@7@nIU;AGjJlW({ zoAKx5WcAVt`^je%swOY7bUB|{d0pjX0Pi%FkGi_iz@YaZ_fn~o519Um6gPdA} zme-GT(f=*`|Nq|K&S+4<)3E2-pXaJ~W+yVJXy#taVOA*I*S_koE7tK)>mwd zTO>H+ac2D1wRtx0XJ5a!lJ(!=*z*~mD(d`lueARPVmhESi9yYj;fWE0k}ETG(3v6C zfQd`+U(f3G`=W%|91PhSME;l^oT9{;Ah*ca|KqH0cIQ4@{5{JMpn0@jXE6`M>;vYL z{~eWN(D`t-dgjYjSre7MJHB~S?ZvFn;i2-f_Ww}{!HI3YXZ{O!{?|_s)JuEc+&*14 z)TQp+<{xH^_ix>jQcEf6eV)>L=emt~q1SOUp`v%GxeW@_r;6t!uU^Woe7v~Qshv^4gZW^G14qAmt@d~E&i{va81Aby zxa?$U_`Z?RAnlBVD`fR*MvGv;jt}X7F3SHE?EKG|&S290ehc4KA8DhrkK^CZT652? z+Nbva@B88F_k8NA`gm0QYAd(+m7T@UuWaAP~^ zcd>b7FsRI`{Vs4}e;Lpj?W<=9=lfG9F363-|8nrT>4e#Id6H zmjs)GM;FJ7ckiyPabwT$n`;&7JKM}Rl%-DPrB%&o1~29VZhdSOFBY~#*On^y3m?$F zvfU%(s69`^9A1W`OA|6Jzx_4d`)l+5nxC7j>i+DA+F!T#+zh?e{VLK7I{#*F>Aw~8 zct#GxjU)B*_H3x#b8BoG&1_Sg*$W`)g+6Eb-BKHhHX@oD$0&q56A?|5v8~!N%OrDB)aJC_S8v~jp11qG#%y8PyE~H88mu=} zHvW3pSjaeW+u7$SS{G-0etv%S`?~MDUmdsqSNQI9s7*`BrHzg*``Q&;E%z_+WDu5S z(0O(8&93sVu16pJ{j~LZ)~1f-X0HyXHSVmNf9r-r!bg2yhOE`!Hf}s-W1!5j$cJSg z-zjc|e)s2(vM23ieo^@3#6(jy@z($R(q?PgwwyQFdV}ME-Lk-f+qv6U-p=12d$;(! zZP!tIXdNS!#9|_3!0>5luA6<{vJf{O@VMm^Mu()fG=I-8lV>PhGJE^@Q=`hd6ATM( zUYn{NzUuGq@2^$WRi5>~dllB7pRK-d{XN@_79xM%+ii0YJp4TT)|JogyRLZq%ZKIf z`?<`F;osl;|81|!aLjvT?=j<`{YFNIA5S~iSI!nN{Lij(icul`VPwnZAL*NZJiA#w zo6#Wmx!r{g=+v-(zEN6}S2G z;qWbn1;x;@%mfD}Hiw_Q4JRk7XS>a0(EB+52usEkMuWOP6=yYs52${bEWxmCNtvq@ zgI$wdH{$`PeJ?)qNE)fAa8^#%f0KPV>Hnvvr)TN>dHOkPzSXJZY&+m)fnwHDQtT1Qo^N*7@`N|#cVKSJ`zhj!>jAxB8 zhYnn~{r_ya>DfQbSGIq;z3}kAR3-;K))OV6>>aCQ9NNU6YJy8k1y(8BZr&yTby^r1 z(w>;_`^bCs;>Cr|%i^tmtf&HY3Vm*ST;07zm1nM*XYQ5uN&hZN7^hUdzqhxGm%)rN zCuaL!50%)*voaYra3&~sd)@!LZAH_HpbEPr`-3wA7R)|$+r8y?-^9&7UFW%X{r}## zi_%ww;VWZ0G*!P8(BG@pa{!0kO9T?`2ub8h!_ zF--XD!+dZW%LN(h%9rnMa4@|}wq|Sn6)wz@bB76HZQ2wbFt#a3w%{4kGHlZJvLX?ZBm_-d8u)T5BiObypQ0&M7Us z$)fwod`(1<`oB#1t+sb9<6@)iz56Sl-duiY!b|6NzKNh3H)6wXo`w~*&wdz5Fg!c6 zSL9dFo7ul}9xvi)&?xk;-M0VgqD*6+GaCch9HzWjW;eAs<5tTaOS4l98n0}Y{rLZH zWoXowaQSSWh6mH_Ia}@Xy_pZlX!|zsER~tO?&o*kN7FT#4j3?Iojd+k@VRg3w~0p# zRL?KIFZ}CmqN2X@%a;>xt>9O`wfQMSf?%Gs{?YOfJ_h5e12Jt636uGlnNZ3_EKY4*l2ERAhhv6V}j=?^7965}lY8vY-7w!p0EHRp%LA zFTt=mi8Wb>*@3G<@Kt;|gGZDS!=a6b95hZbeCU(=An+(olp&`r`_9itztmJYt7q*^ zQ}j3fJ4xrxO8&2=ye!5%`*+Do+}_2%{^53A#Sc9S95I$GDL3q;*^4Y2&L}cK8f9FE zp4}+JcByYku|11WVsV9r4p7Ty- zIFkC*eC9QV2Y>gaGJ$q9d{B9JS&CuL{O@~f_r%8TD)HR=`JDC2)3W=%Uow96JAdCi z6UPN!fyeX%CtXuX{-pE2;?)&R-6bnGF`vD*`N#6yTk5UVK6;HFyFT$>`1n|fBjSa- zB*QumrppWl(-}^@*McngcR1+8cOaenV|)*%Kstkp=zlZe1J@Zmy4J8YHclLYIFMetbY&K?Jqoe4jF5ic>KqMW`3d0-;HSuDXDJE3y$#=xC*#z zNaJL9&i5dOX`3oT=46IlTFeTN^)rnT`aVqDdtH*IoahvG$~<;dcCkIDWBkGyA$xw; ztn>73VENwjx~5Tm@)uoc;l0l%FZYoaVQV;F^>4>E6;B4=gZ}TEGZ|+5-Xz7~@+z52 z|CajiDR&tv-oJP=i;KaGxgq`c&h?oLF?M@rwpK@cbqYJQB1rPe@165yPOCZ0WGQWa zv9&~jfAb->_{$1?IYI?1_Mc%^_|ECPaD!1p_cFgD^59KIN9?;rezNab&v>9V#bbl_ ziQB&}DE|*kikp7t{jI)N+L^DP8|$q%yZv*~J^R^=0@shHGDO&2KcePvs9NpM>Z>A$ ziuPw)uUg--cK-Ptdv3`*_y01_f39Kl}k~z*13Vr&FbW zbsj98@qAPLra$v@p1a%iy^&63*uW_e&KBUt>>|mqW!o*aGm&#{AK9PDbmK_v9L5Qu zF2AH0(oWh(vK|omuf()qnSTaDP4?P#WfPY(et5J~J(1ywMD2rSo9O~4a{i~y47qts zkU?18@626>h_c@XTfg0l{@@N;&1CR`x4}yBc{an1Bdbp{6nr&g-J&^VF;9bz)4nro z4ZaV4fB9(05YuGxyjm@2g}Wp}WJ^sXZ^Mf3HNWP#&Qkd^(^Z1uOqvu!T8F(WyGNk@ z(b|xs44Di&PW_ts`q$Z;^^&X#pILXDVk;{v(^@ohg8#bh{lYOp4~|d$Jo)*_!wd%f z*-{KaZ%&^Q3iM`3kuQ!sFq{2W=}GV4EArN5KA$_)=NTN`zo_<3-YkYKG7S+6PWWBE z#_>>oy39qbXSKa8YXliOkNLk1NxR2Ty!)2=8R-YooL>)q{eQE&|Nf77QSdTZw#|$Q zqDA7@__|FQVh(LJG7GyitM<`9i7w$+>&oC6gmOON(_7Wv=l!*E}+UY|MP z+n!k|O=+Udvz|0g-8W@LztFd*xeOsI^yij6?17&B{ur(xmIxYIX zN9*5fo`yX|3{#FW7_{2Foqmxq=+EcHk!lyVB{w18EE=PB1LqKg&4X zPvgu}tKUnSyw^SNH)dGWviGL_DUA)13`eF{KW}4e$X#|nmEndG^9_a-a>2Hj&4NzO ztQY#P^3Gr8hHzJ{8N-jC$?d<^s4>jsynoL~|7B0*Or8dXryqs%89k&t9|*luIn*og zZ&&WS$4%Kk8%!82Uhh|_z233zl*Y67$wJHx;Ju^<3~!8guH<1TzIJPQzsQAcZ&%Fx zwI%VNCoe-dU!%@x=AQFP*BClp3!5g#Z(&SOJ2;u?);3ww;Q3}}>{l{AIHfotwbJ3z zcNsQ^5*7xYh9usG9XbC!zn|7AzvM`g?D z<2{|u%17&0tzzYjOJ2h0pwg&!{psnif39u|VQV-envgx)Y^|B)s<+z(AXWbo6NXD| z?axKG$%$6YH#uUzno*#%?sL>*C5f78d^6Y_u00hAWOJC6Dku3)GW|vEC4v8I*c`6> zl;z}}E68K#%|2=0^X5v<23_|C6Xp#p3vQ?~6tX$Q2pzCsUhpe=`F`oy=K1S{f2Hv; zY~DLdUBO4<$D5OnJzMvjy2+Ap>`c9!H-pl9cj;$a%dbs&Z_LZEv;WsFo|Y}AInI1q z0U03zrMk0k3gQx9>j}P#W>v_%QG4y?uNAds#)qymoJh8Goh12t4V%Lm+hoy)`$8Ee zwcSmhySD#Uy0LN%55xWMH5=3!OJ*{7Fh%4DIb3GgFq5IslOeW~k(XH^#oymwG zA!!CZ$LF(IE~tH|y|(>%B-@4K3=@n$t=ne9!|*w3(KNmtJPev|V%Zwj_V+U;a9q6N z$&mbR=9yH6S{?>V<@Z^q4>N3V;bRe8Z+NlV?#5{bFX4vYr&5_Um?L~79cD8oaMi^# zA6Ub6fbGD|+|93i7{vYsvNibrh~{Zn@Py4lZX)x&<3$I*M#U^RpL+7s)~G4^FD;i| zo45Oubj7<_*@t}oZt?xSqW9N}eW%yg*hl=?zHQsApG-NHEKE1WA+c_9jA4aviDz27 zZ)5)KiG8n=&;2@GxJ~EJvu!4fXTGh-`R92%=DJkryB*ghzW05~ z29M@#Jll2sZF#P@@PVBEQ_tpa(R~y(_xOj3-p+fUPX=dQ-!+SK{ibIO2K^T`m>XPd zg1ah<)8;EPs-(`odH;@lD#HxpzuRusg9fS-8uO$W_RPDV%5-85V-AywA;X!^N1jT3 zuBlVY$kT5u`6 z|K*!CGyjUu{CoH*lbc_ogBnARF~bBF0Z?RpGG zqC56$emMItlZU}ry&=0kjQPM+VFx$PDOVXboc(ipX5D3m4NsX0o-jz{cr$$R`Z4_k z!->_i9NgX8qxMv6Olmx@G~Z>v%53HwfeR8++Pn;LS^`q6lhsyE4PM@Md|D;TwDQu` zm+x1bKlxSr`*odo?vwZGkpAF_1g3~XGcU_%Z#pZ+G(RQgj^U>ludCN)9{;(|-tK+j z9L5K~VruR0i$EGT-LJrMs&(fd^E8;KIb8Xn!K}a>EXlC#6+_y#|4Y~!YVK}2+n%P^ zsKI_iVml+Z!9{}|RSzqnWyZudyx#7o)iOJ2!7%IMeXje4< z{?}pc?ZUvdFK(?C(~Vr|d3#I#+mF*je*avYb!WHkt9SG7uF2!w_retvTOO*L7;Cmg z@`zmcH*Yr&!}J;7m*&pRk>p{Ryp4+?O~~Q)CPsPY12LcFO>gH*zs_cuar5`$wBNbO zwY&`X=P=kkPh@`Z^xjTCVFgc72F-t~k8hdAD5Cn0ElTpho>i@zIlq+uQgd}OdycyL$7S`RcYyEt!xdMOahwf4Z8LXn*TaW z)?BX^Q{#P^zlCu@Q;io}TBpZ}5}COd>rV>(ow?@TcOQ%9d?|(^S^KZ5hZ~OFD&pAi zV!Fxg%$hlj4u|G%k9;6M`{ROVtzR!6sx6w$!;o}yHa%YvD{i_ZV5oBg3rO8IEzBpas4bIQC8 z;@`Gvn#EcinZND6#m;T(d=$EC@+SZ7yqdi7H2btw)A{UH>Ba665m?IUuw)KH8ec=! zyatD^db$6vF6MU4IDD&WYC&#ozy(Y1Oa_53&o?d&mu65pVsFCmj#qIBvq}gD(~Df-|q7%`LXZeR1vPCzhh3qq#ItjA^$M27U{OhO{uH4ZVjEhE%W}PrLkF$u9T^=?w|8f{gT~3+4&z` zR(pSlUJM%hY;ffG#Xpyq;n(BVBLbZ9Vi&&5Ici@BS_09bv~k|{h{ehGDjxU#ns`p} zsCB&j|B2JL%{^lKx6z|N=#Q``%c(LuxmaoW>7KdkzU{a^v$W>U$F6<*mK@*yHDBfI z=gWUxo#wq0{B`Ce!-DGB?`nnar7*;l-z|N0{@g&zHT`U~X_aJ^SzPkT36Nn`pf>fAMPddOp_5o1XvQPnz*mm0`=<+0G5WF3s5D z&5-eI|3z;GyPqfht0w+?mL%N3!w~gqQ_)i|)8u13kg1`zhBM(#6B&4n7<`c4G};6t)9HNxVX8?;?kOqe^!2TEDTrtd7kRKZ8H1I8&mCzveup4vv18?^SdR% z0fK+R!de#WW4rCsR3mp??)aL=kNd*Ed{wpGmz}mO(B!=T{EdIk%-pj76MKX~%83aN zgy;WoDYzOMo_VQQY3t8B@{#M$FTY#*cTQ|QLE+NRn+=zk!wvDS8Zb=hzrr3w>uAxo+LE<;7C&)6?~@ zPvnwm^S`~N|JDlruc}p242}G?ybL>88a^`$K#uk~k;5>-B8~Zg+P}p-4Lj`XYHr_T z*w9(AZ{M1?DGWP&7{mfy|1gGMsrY$3ar3(K-}|qx`R*?Fp1*eAv*-Cz49@L*SJ@aQ z&lA4Mkn!aC^e?}bGNf$^Fw6X=*m%a+_e(|AWhLL8>tB3ZbN&3|$Uokn52P}r?ET;M zr!FN||JQfz{@2>SzOOxTfBB;N`%gZyH!ucFc5XP$VwB3qn08C0;o0vjDTXP@O|G_c zr(b(KJMqVs{#!flpP6Y~YR9aXoe_3>!5nr^9tO=XmAAL?gBO`JER$eR`7?8!{esUk z4rVQ5RB#QsXndiv@BHKb$8LWbW1sLOP5ORZZNbu?hXonT(hM0c)zx{fkLOCz>~oD+ zyV-vxPs5h$^RF>vgt2%}{9dQL&Jfv&XSV&zVz`iF)tNRgQ(e*bq+sNq%VuvM&n$m+ z`}dLHRtbifpH1h&1-~&~H03`3_VO~{%c90N7z(D|k+CYtNMb&a$~1$G;o=|JrydMb z7(r8BdqDeXSzKm=io_dE3qDuf(_lVe`dgp3LB}|HpW^DsW9c(*o~o*iOn=t3tG;IX z%o{!m#!Ls?G8shv{#?4ZE|_7mh1pT#%VJ9L(^MHU*WXX)bddWVE}8bMyGuvo)4$v! z@1rm7_jmoj&voN|35NK8pQdLQF?4t_+>6vK7k@4WuOe_rWNVlSS~Ql)Hi7Yh zb@IezvCkMba8~X-W}j=_tu7W&bi0Sa!?<|z6aMo$k1u~a3G%}+DbY_drFB(PzB5j= z`@Tew!L_a~@a-iQgZ1`$Id*z;;@YOoTDUCefcVvUUw_3uuB^XyfBmBU^1ZVn^RNAl z{sQyLQQ7_bB^W|j8;)2^P4?0H<7-#-U_#ZGlasR!e_noNmv{f<59w^7ub#{H=Y~&y zcK*sz?pj_3%gcUF^Xn%s(R5H@UYyBxV9wN4N?$^sKk9vTgVc1<|82eZuWV6eXaU#GCwLh&XS@uQVo*EDazcBd5VzQ5oja;ezozDzw@%LF zNQq^-u%acX@@$@|)s}66isuWTo4>c-r(Ubf(Dm=nqg%1p<;}C@OlO~CYlwX3XE*)r z^8NoJ&)VF6`n9-v((CkDZzWVNewc5YFuY7TT`xZ8a|MmAW+$0&M zek;heSN~}||NEWl^-7~eV>Ual zy;m7?*8ci(-iF)rcYEI5lD%SA?T-^y_jY}ED}AjU-v|l^2IdE|W_|r@cSdPK<{F;k z+YPg;?|dy@v45uH-V-tm3I7uUEg7UL|LT;SHT_Wdq)=y<@4ASMPWIcjZ*RZ-hh2ZW zaChGMU%x*5W&3UXdorWL>xYqNy3hQ7__=uM#~g+W+t%{ii?ca6s9e1NFDn16@@$4> zj1QvnRE*zzUSpp>nNi`kT;&tNRAcwtGuE6BmOY)Db^Vc=XI!BJ|fiZ_mVe|G9E+|N8J*Q#+fNVLIoAUw8Ab>M(xr^q6&xVZvrmw=(?1 z{z$fhvq#)bmNF*HV#r|-Sikez>J%mx7oq=uIKZ_82QP#1#rfKt2_cdPRE(!=W2xO{ z`X}@D<8}9^vKXx5Nm%^4Wcpsd@{7;&OJqMU5oCxwKYy#=&g?y_c@pld+2J!uz16(4 zPAPx0z;k<_ow4Vxh=Uxy^k{jdGr9eH}ysckX`r?S>D~uY}ZK^P1ZaBJK+KNKPu9x|6S5dDB$$ zthTi)WEd(rRPJ-IMN95ov7utK&pZ=`Cp~*=&KZ9`TQTqJSJl6D;(ui`j{NNY^UuV3 z*NPY4w?|&(hBEtihIX0*BtL3h$EoSie(|>RO4=)vmt1Jp$%nOtb?VZflIsi zHFVY&sb^>AtlVWaZH1|B@J)t*G?RwY3=`BCHqH`efVQ@7aWG^uxOBeIDcvHS%HR@P zf8|ZR@??f@->vSr&fkB+>RI6T<@qcQ*Uqo+m>HbO@L@5}^m5zj#?SV!IJDiL&B?e} ziKQ#AeD6Nv{JETbbLr>tmMbusLKf39Pnc zyuxdKmk*qU*bYqne_(0EG&Y9!=C?Orxj4;|A;&3h-ADi1a^-*1ZrbnE^G{dS_PzUr z@7oFHnEso{nNVF@c>led?oZ8KeKmpi=cl=giT?d(_Ug0e?_carEDb#0(--PbXLWI9 zn80{I?Z6B>-G9!^4)3Fl)h99<)cz{r+RZ;hM)AOu+@T=IGQ%YCVw)+^qD_qZt3@7xS5w{ zzUXdEt;ys4??3IcVs7}BZphH}@1A(9`@R>y*F`S;@4A0~@2?uR$&3o=-+h%GE~N?0 z5M&Sv{kVQHLq`fjPuA=+Yz`i$I2{!KxZHa7e9OB1YuBE=&9Fj^DWv{;d40I?=KoJ; z?^|HS?;m3F+5ge}@4FZA9KCUYAwl?n80Udy?o&7q)GqR2cn6BI0}Lx7<5 zo&QbP7&wmAPXF|)Uf=)QaV>^9SMRHR(~qxSyX>rpfGFdX(+m>D3!HmjzP|92VTDyg zCPR;mWf1qjkB^UM2U*%HNiwMXyS_Ghxy!Qp*ZFqagX5bdZ~focUwh`yXRr6=Po;_^ z87^^bkYuo{`S`PZ4!GgKa7BWlF#FHvRiAaHGwe80bFFON%jt{mPi1zP#aP67z+uJb zUaMQ%m+!K#Rbn_5)oz=`*|64Tp0C1j)pJ>8*87*ObB>)AE&G4bGzJmd)ANr%zy0QY zdHw!>YeIz=^*nUjW54d(zZlj7BHx!WCKz)rQexP&Xz^m_^gGjU{_BI! zlGoN}IsbNMK48LF!^5!1hhs)NKo`leWG1#(vFz z{QHX|+?fKTpR#m#G0ph;S@YLtUn{%!smzh*@4vXe+@`+%#lH@3f#@&4g{RJ5xc?c$ z23^L4kLOFCa%!An$jHqNy}IF_!AE)9S!@j3>tA}u2krkkd;dz-eU!sW56`4HCJJ%bM1?dSC+ZXDvIBHJ9qQH zIe+I%e*JZ72a5v#$5~ImFFx^E{O|86-{14!m0x$^t_5w(@aLfXAIG_z2`*e2iydY#l&S>!vo#nnHqHO{`uvy2=l{KZe#(SF&+hYHDdq?5 z`Tutu1MN#@U|?WYFkv_&!{B;ugV|w*3G2_NGPpct&`_FPsyw-F>Q2A1nXfi1?`6>N zmMzOGQeeuUx8)_!+qCe@bla_c%VozP|1q+kq}oZ6Q_05YB7gyoDX47=r$UA6p^+ z_jLQjC3cq>5`^l$`2UX)X8iDFUD?+&FU_y)oIJfV>dR-y^4$f;7$zj$>|r>uyKl=G z#suL{MZNX6%AzBkZwoQ}mI_#?*5~ys7Ia$Ck`}tMmMOCxgbWE8*8(_jCX5 zkLC+lrqW>Y+P_5ghxg}SoBr)Hef3#4D{W8UbNyFfPk2UG-biyd`>M{|!1DXi(eA05 zZ*Jedy>=PH#9KbW4Sj(wEDW;KUqrJNytuHiH2e3=Qyg#qUn>2-LQc;9US*!px9NKO z7wXmjzZ)TZz<}Y)MuLla^DKSz)5Hu-6J z@#{Xr%sq0~GdEPpyxRQkUv$&GYZFZ$SIYPPe>YqBRodUo`@581XS4-y*I9|#o_Z^) z9p)mX^CPeM@7%u^84QGf3O>EWAo)uF_l;xEI#>PRw@f=DVOsN}AXM-l=ybakxnE|_X3!i^q`#G*;?%Pe* z8TG5@e%XC1_WoY0{5#5L_Z3@eiT(Zbvt9q~6&th1 z2Ok{zmHBJ$lH7a#k8fH`cr<@!?%6vJp31&8ecZX_{hNhHOBMgy*DO;0@i1HV;g64x zkGC(150YZ&{qfJ__m8vxY9-#hb^Tw*tH8XVZ%VDbZ}ddA15Zv)c4mGceg8*WS_VT- z)S*LmAC_4CIWixL4Na}{M7cn)$QJOi|2m-YP#F6Dx^AQ?)x=NzgDeY*OjBLX#3^h z!cyZqkIj0yZ@-i{YsQeFHqX^I_p)7`oO>UW#jfI|YTe)Ge?5Dd&Efqr*QgJd%|4%a zD0=W+EO&Ey{g$_jUFz?@y7cGf(#r4%Nq?vLTFiU?|NHHDzj`)k>tEpP(+n9;zHjgN z@Jp#)p3SP;&uGT?_tzad8CLwM71Vroc>~7`rdv;TiTAH~>7V<>j3G+@-37J=k#E~R z{Cj-fR{mS@42E6tm$E?zj5LG@GPqvN{JxUufzbP)2kDvp*84LVOm?3uyI8vAcXP#w z&%YkMs!12TpmT3A%OBJ7*u^`qe(G0Z+%eauDb0m#LV&vP0o8Z)|31%mpY(g;hxCW* zw*Owo@k2Ly8;f=MJD#7%velcNm-Dke|9`yF*NCA*=g z=6@=GI=ATZHtc!5<$2(HEH@x<1;qe}lckIfff`4-HM1 zt#`h=b)l-lrVI0ncHQ=x&6qIz=K61)uV$ZOXaHZt@Fb1liQuML*BB-|{1bWmvJ}JF zRhwf=WZ!O@W~uWE>>X2v8JRo`x9y8pGT4gcGR#P_U(4w5Xs*X?``V<^xr_yW-h6!U z^z(72kN!3l3xd1r%>{IegYdYtLMXKv}|VJPNo%;jX@1RW%A#H8Ro_uHE9@we_DcdM;u`}KLzzyDcR-cQfA zk!G0sfBh^w?YL)=&wJP$dVi?r*=*i_jA21!T_)3xA_foP18Q%y|Nnnsr#`RtS`XU= zoBww#zdqWjeubO8`pQz<>?^aM&+js3V1f*>sWC6;uzG96-r(Ee&D`L+N91$RgXOvX z*84RTW`(BjUSW01H9kJ_)so*^W|!`pJ(K0aw;4x7PG|=;6obyBnaL8M_F=OsRvO@&3F+zW%5G>)rm;9qrx!``vEQjhu(>w*^TuF8lD^l<84VZ)>}G1ZaJ$#g}*~ zhS_>HX`)|`O!xb?GTdJ_algIi|JLhq#kFFk z^TEfOTktlxUCW#<$S_Ig#LGagipe@JHg7pT*Iu7_!Oe#s&hFZ`N%f6a(DU6FQyIkV zb_E!(i#6)hOpul@_fku$u%$oknQx=-qxqh>3mGqbpUAl3(}TlR@zws-21Vyi zSbg+Yadzz6K2>nZ=go`3Xd-UtgGgJ=T`_>g&3b zQD^3h9@>AZ;fLSr3k!D1z7zl5wEcdaG};L}=6=8HQyxDpliPgftX%xF$HF_ms6OBK zA=b(;U=`b!>+kF1ycvqbKxbv2V3_c{P?F&i%Zbwr6MnN?{q|V;O6%nIt3R~^8RFO) zawZEhU46S@?!5Q4o7`WQ-^D942xpw;r z28ECQi{}5!sQr2T{L5T3#*Px*OD-?+=f_|CUVrcS_OH`V>Ms?%5dZGIQvLo@zy6+A z=1e$vXuqbL!(7G>#}dW7Lmif9<$?T%^N@p|J}%e*f1sV*f=L9nPO*Sa70YQQDT% zF~|4LJZ}D8eqBT2v;$Mv9P0P(@BZ~y>-2Z~ZpI4<5AO#kKe*byj=%rswdnkn@q4QM zf+ZLn{n#3$wiY+09bb5Mo9XXu2LA$n2&bAfSf>5|_c!b6s?b^0+w!=S8E&vByxZ|% z#-}5A9eny-V|7He8DWAPpvzPHamnoZR2Z!h@&==|hue=_U$?Povq-M*Fag8YP& zEE)-%4oes}BpwwKd%lvV!NSLNr`>I-zbnf8cwR_N z4!_#kKD$u^dQcI5W%Cd-8POndfKf{5ZR$ z9&+$niV=gy8uzQ6eX||6q|P{Je7Z!gbc1x{^L_i}_rEE<^7&tl^xij%d`|m5I#L~D zJzx9mtbd#C)ThRa1$_CQydXR=w+d4k1;W*|{0^k+8i%IHK3}vc^LgpNO<)V9KmHVp ze7@)A+kJwJnYS08`u)^2IqJ#Z@HVTju5tAjzx!`KKK!s%0+q-fdkHYyk#;GUlzS`c}?Ja9t6*AYZHp=$zm&>p2>@0qDW~TA4 z%JA^%plK*6!z34nKS$K<7M^UnUvrMFp&Ohr8S2hvZvOTOEmc5S8puV39e>Oa-hy6*pf z_TOLc&%bPV8yXuzo-+6@oFDe%xFiGUc=E$-yj`ni39Q_cDY8B9?y7kH&VOAG_~TVT zJI!aCWCrbEY4BmFdy>0TC7~#N^(u~9?c-lcL0ys%oqyl=|K|C3gO!1S;SF0uuGxi9 z^;_XPW~w#3|KWC4=4<=Ry=gL_1l9eoMmpg5?v-x~*Pq{dEMD!8_pNtAeb%BZfX1%SS#D8K185-#;k7n}LC$VLqcn$<*`SpW2gWedPF?|L)`IIQP9T&Tkid z<|+wVblb$bH+Sy-)pxJOOEIPLUC%3<`)kqq{ej>8Hy`^xy`@$1-uzuE4a^#U?29BF z7V|O){Z{#9ZDsW$ko)JlRPHNVGB2AP@0XVsxXEFVDa8;d$ly7RK}6OQ)X?W~VrDqA ze_qwBSL~6;nr_~&H>hng-K>*v%wF3aTk_3vSF>`9shBZj@VE-) z+}h$PpL}~;Zq;m`w!+89u1YW%eYqdQFitxYAhPpdig5dh-|u$4)`N6El6e~zy-pF2 zRo^-DDpSrQTVKheD?WPiwrslkFfV29rzP*}Z?3i!`TO^S<#f#tlQ|ZwN&N4+zy54q zewk^H&At6f{qbMk``=veFLytUf#<-7`sYRsX?lzbmxLNj1R3^yce%=PVaXhZDH0Pr zZvXkS^ZC4BNZ{Y$X;6Y#%j5adhfzM%%`lJ6dS&BV+IvOzlJDJr zJ!Q74#$^c&*ZBI)`{e`Q2B!Y2nYa7ezuj50&42yP{`Ps%`}u3$R@UtA-m{Fxaez4m3Gl)jts!ikyvdtR+EPfAns-mUq>_oIAijODbM zCEs@4EZs9ZcKIC>#xvj7zW~L5|Bf=Tx9f}=)|Evw9avHNzxQ8lW?A*c@BY`m?b&zV z_3r)Vr@xeLeVJ7#!EjWPL9|i+)3)1rt1IV{gvj~R*TiY z0nH(up|LmJ9pSv?I*WjHPM>;8)O?w7WnU&bhK zHP4u5k{+|htH0T0)i<60&zAJNf8zf9P4V;l84Vf^|6hBW;Zzz!$gK)Z2ifJmvzLKJ z3XT7$?+8yy|FRl1ytK{?)Jb93Dar76CEuR}8+#7E7M4NY2i z$K`R7Q5957$<_TxJoiQZ+`r3b_8%8wP~W|K_g-FxSKgo|HiJI%0{bh8eXoxk3rPuC%!un);iB|{2fByTW!Z{`JpQrHOukBXf&+hwwG49>>{hi;JpJk9Zk&(sX zFo&_=wC?tTl@6i0!YjO4FWGr1Mf}~9#lvvDc)lt_ZfGZUX8qW|Ns2G=DoXC z?YiW4eZBR&^S=V${w>abwc6|5-(w!Vfs5NhOY`&gy$ae`wBIPJr%S2B?Er^TqlVc6 zj;2e^CQ3|AN=#k69BiT@j)upM+)$Y$(d(-!HQOsGC_X9j=egSF=VtDH7Ww|w?!D(N zi}xk>Z9X4Y{Wk4w?YZiC>1QqFWq(|6{j+@EJTqH)-`6Lm*VWyc;5W7Sk9WPj>%96{ zmI<5<&o~>r^>!`^V!yE|)!UchfYBQ1pY!iKGbp@RzLnv_-fTgK35_ld^`|tKYslVC zjGn-sk_-aHT?`qM{kFdU7iv_c$6#~y>u)*xqd%5int4w2S!~epeOvshIp==Z_Ik<-WQ{pZ%2uuEa4P1{7?pFh+O?Ne#cXEdn%l(I4BrqRZ-w^1KY?Dal!x_$i$ znQ7*^w?ZsML{pd=dV70&b!RbTWIeN+&bLEn|8k}WmZiI5`{K1!OhZ*m@BcMln>;^y zxo!D>v)4;ztNeSCd@Lq@vekEA`~MrCPyhUT?UA2P<^C_*Ki}zmyfXt&v#2VAz?oqxUI5U(u?w`i6!18}ZeP-eTR&KEnJEkw%|6jD8ocg%B#E&rn6#l2(7`7y)X_)Mp z+*D8^`RBP!`Q?wnC+|F+)YW~r{<77#ou#*mzvu7v+qI6Z!G~*!!oOJ;cIN;3d7e|p zyXOBCtN+XF{`=a`?-F59V=xkA&@*Mo(PYpPZ3tmu5N8C(Ft-|mS97^mzxwZ)>GNi; zi7mCs&|iC5c9rvd@AO+{b<5snR7aP-DSo}>`MdjNb4z|kcyL^>Vvu=v|IX)$zklaW zIQ;kahdEX<;X09LPeDM!sa*)3n{`7|& zNCykl|TV;8W@zqjXHr~14VB^ir(cAV*WY!$pa_y5X6AAVna zcQh7(IC_pmUWQCTf>>w)}(8HUMP z$Ll+O$o>0y^H%Qf_Tm@pvae)*w`b=c{?T~)Q-{ck={M^0WPhrqdluWz*Gx-nk4@kA z^7-nQf1k_k-!{MAW%rK%|9-b~{@Ff_!Q%Cr&06w|zudy_x=XP(^fk!;Q&;}ruGFxM z<;22&96v%e876dropEfL3WL|n3%gwy6cmou*S#=eT#$Xa7)?7nyGJ>*tw|f3|r(-}~}>`R)1lm%aDDea^m= zT08G2YIcs9teFjz=~z-|An~p3VZn}b*WMX5$40U5 z;TK)f8@Sd@3*zP?!%q)>0QswulMBcuiy9k;m_P(|4jb=^tj3A z`jp|yMxF#?Q-&A6g8gl`7I`tP;9$JE#{S>?rROVNi7@Cfod5-Nnks|WizBpz~mfioD_nM3hW)D;x&TkF9ep`WYK^Ip6<9`#T zhI79zmlg>+l*|%xPG|&7^ZA#*FMs*@{9Qgx zh6fpk9T=`$zqLuJVHrom9F_*2FQF+65&{g{@7G!XzmW0zT(T? zwRgAGU!Qa9!s{F>nHi__eZ`p4F5UOA^(! zI}bk#Zhw2cZr|-`(+oK>b#njL`F;F3rJEtjqoI-WZ~i2Pg0+kZN({&P<@NP;J`pNB z%xm89_4RdS#tW5s-?ctox%+wwOT)YWv-uedzTR?8`q%dKPx5q7&6I1xIKe6XcBuPJ zRVIa2o(27VwVbjaf~@Z78P%^mzJAHM?KQRT+t#kJ`TqBPxoqY9=lbnENpF4}{o)@u zMeq6Z-A8`%R#oq>u|F<%-;LpmC1(Q5|6CP@4F}$|ipOP?c--Fc=hJCzri3Hb59HtN zT=eY_pf)ROmjeP>h<+zm@;Ew@mfX! z?u6R32JaUQ)3wT`b}@L^HqY~VetRl|NA3ULvF`W6R~~kCGraossoZ~&G-NBo5M{G0!m=kD6r#lXPy!2P@4ic1XB z^kQeVGgwru-tjDZ`^WxRGcz-@Z5LS_d`>K0-?s^r0R_tLOTLk@dglA0V7V7#!O4aB zPS0VrtimH0T|;|Kr@lQ_pqmqb&Cw z|MoNfw)TOWH$Y$wi-VtR_IxP@L)SMkX${3M8_ZW8p1X=;LFS*B_1f*{wr2|-nDP7m zd#g_?=h@F>Dd_#vA-g~1vHY#LSD)v;1_jCd{qu!o_fMLzInrK;;aawq3xmQ3^Tv8F zh70e#d_x)}e%=ojWQf1LYmXN*!-xL|-e#{Vb>M4oYRDEmaB_OyY8l4;ZzOmN4&Ob_ z0;vpU8#7K&zH`Zx>A;d;`PIq#r)QnC`nb{R^R|B*kDG5*b~tBQw~_UH(mdnouZw#b zIIhmj-`!Vp>cTSt$pbe&YCF~~v8ana-+%b;={x(`?C1NjILx2GaPGnWP7a3IuMh0+ zVrY2Ax3(Otz-* zdU!QN?0W0^Z{uljrJ>GHl-<4i3d4z&$>-&suMA;uDtWe%&Ed@7bl>W-Z#MJ&zbVOi zF?7`N{>`7oaN#QBhfW5D`+F*jO&{}bWthMau|03@fig7)P}tv)Qe`N5wc|05uE=)F zhb_Wd;a3?tu5P^kRz8lA=hNzcqQ`x&_L(vyrJv8S`n-&TVfyd<)rl9%=6>AvYQl7@ z{oCa0C#?RoyT*UvF+;X$bky9}IE8n{OZc>-R9n1+mX{V@PO?W|>vQ+YljJefOW>iKOVP2Q@D) zEIjw|@$uJRH}JeJ`J3~0NBsTIhHt0$b+3yxw^PiTTU)`v(7@p7;uzxkB}LO?_PITt zZkN9PJMO~pTsUNy#PXoq{{LtD^?coY?-OlzX)`hi)d&3GclcjhekVwn zVFyp{1SW_7*MkrAzpmkIke0in11$lvvYpuPhO#Ow@3VdWhClD#|I4e@Q=ZQXszJ*SsQb)FDAD-Q&e!n&ux)q<-{~#B-*o~%@UPRV zTm4D8JXh!esI8rov($3$NF8}o}{kL%b#5wcV zi@e=gdh52G-O`dL#iv=0F%{o_zIo;I_4CvI71!)@3TEI@aVX@s`+kUpLFQ8vx84fb zP6h=w1*rp5863Dj2`gP;~Qy3W9&7xQY(*KvLOweXDc=YJmS|5fDp!Pzg0K?9b zJF!X(MXzpbK3=(MPQFyp8!o*G3>`cFYo51HvA493ZSk1v$@cGDoq5Yq&_XqP{y|FP_J6w=)#S#}!23|!4 zhfn-zKQ%wJr%qx1b7i@mYRJR?T1*W8?_U(Lm?h-S$xr}J@Y`<9x-_lqW(xeON&L$kFUn9>R`zXLl?mg8_20Uq{ny)= zGd3{D{|i@Obns-D$>1Q=u*-*`hoRQ-@L$#UiVPv93@@s^7;3&8dLow&?N82NII%R@ zhf!l~o<4KHReMKKZMj|l9WONUTkg|lRDRuX`oVt9xw+Rx7q&WO)eeKF3>V{hNRM-*!l}A(q07K^J81E#WwB#DvpM2FAq$= zwD4Oe!vxa*``i5Cb$kcv1DPB|Sp|d`3vQ-P&*W_I*54~q*KY{ve}(lioQQlI zlQ*4Fz}&%x}y8>@$%0&8uWgg_hUHo|53f@{_oZM)ipR9 z^me&2{C{))pU;f6|4%s>G*~ih4P->>yxxWe~cathnOZ~6blf|yr{Fm?#du&Lbi z!ISaEhD2s)%lfh~gKAoO45J3`{q0K`THfsUwfdmi9k^3S#fULs(o1d0yfY zO~SkXFDrd8dsgM=PKE$i#w`mu7It2I zaeMoRe}nJb@AxSCd~SK%#rs^ATEDi>Wtj27Tz<8Fe9=eHVd{%H7^Vg@F~k@z%P85Y zymtMsl7ssfcv)y2|KE9fnyxUs&@eQ9Z0y``nZHVA$Be(`Ynksa;oIuZ%b>z|A@#$3 zmxYGcl^WIwGWfo_us!y*O-Q=k_P(l>f1h94*e`1@pK$uT|F84$UP&rXq>lH?>o4=0 zd&}ZSeiMrVi$mG|ADjQXR?FS}@c)`HgR@ zeExj-zvT-~fA2rFF!uZ2C%5u$@Aqvh{rBf*(v#{nnjh{ndwEZ0$W>(c_elRA6DPyk z`DM26!_fr+f~!zR-Y-utZOUtoZ4@-Hh3ET^W7Kp$o=ZPSO3h{8s96E z{kCm>{bj57zTfo~Z{OVZ_;9-X!7s}FHjkd(Sby^01Ap7EQ$S}@&SLxT?9a5|@9pi& zrS2y7%;jX5|N9`=gP^{9>*8RBuFAg*S8^FdJehXMncfS%eYtiuL&EJte``w@Irryx zGcK&w!vqnAqkk_fO9$5!8zng# zgsv_~ooUB1hvCvwffC6L7d;rS&x})HC^0^uTDrsgMa6Ep`yz}D3nU%)Wu@J{68CB9 zz3N~UhpylAx#nyOUB2h7)!W?vHB)cYzx${9iqRyt+d+*%Zbu9nXloSG49F99N89)lGXMPM*RvcTyyny3fDN6(2h1E`fa@X&R z`j)%m+dQwe2gDc|9(N|MV!pTR+ogs76rVq={-6Bb|90uA+v_gh`*uED`d#6Eu_-#W zIWrkHv_3w4`vk+jl6n<}1JNx1+9$CvFfpwAe0chMb1PLwAt8oc9t_a7>m7~;A^RUb ziZ4pq_Pg*|J!^P=?cuqVk7cX=B(7kb@aW(23m@|~`&Hg9y>T$D==))WQ4Rm zdIcDAr!Fi$>&bg{quYk{pMxImQ)61t!jl|*cl(2Re(racJ(gW%ocDVE=bstPe$^{K zKQH)yko!BoDnp1u4BugM#veg{gM}F+5B$F{fkB8dps~(mCQHCo<{xL1)32;!`n4tY z*0N+p#u*IYvD3@ZldZm}F=R1$XxhB~8hOCJmn9>JJNmi0p3TaR=lhQDd{-}Ba-`V) z@S8WyugsVnLQBrGA9((5{v?JI9RJ#zSSD~X+)UzRn8}hLdBEWJvxU7=>tA0y`{<|g z?IYgt`=e|A&;H&mZ}Z!s-~Rs-+ea7w-afKT*SxbdJ6|OG`Z`hN`TiR-FRLxyym8}3 zUJ=F#(e3v{7$2;*mu=<4Ae1U&Le}e@XSP%R^FqvT`2ZMLT{;4V#ETi=q8Twcn zc>Y~%WZ02=S!!d>%}rel8yf4u>4>d~;l#?zYr7c^aQ!P{aky;tO7XgWbG$T1UXXjN zq+B-R_g$|i-i}>w-+r$AUBM%>7ah+#7&J`leBauC{qDYM(TbIQ^3f_Ab%Sbm?%!YP z%8)uicXG)#rMjiRmMbuDHT`c?V+>l#aHHtYOoool>+MT~g&1T%2rkI~0vXSKmwS$d zL0bCu16PJ8mrgDdWZ1OKrk5dOcHgekhB1f#mp<69DO)Pb_`v$LeAQpe)hCzFD9oAN zx1&$NyRdfW@%5d5r~mlZvG?DM$IB(|hunXkyQh8^2Sez-y>HgB#I5|dk;Q@eL4AT} z!wsbdF{T6&&I2qCGi>*jyFP`qGgFlqV(Ok;*iOlxfu@nzFyJp zVz}enr|AleMd54mXZP*!Zt?Nl+O+Nc{v+Sr-+VP+xGmt5%&a~2R!k0R*9}zS!{^?2 zdocAyKg)p=|IgGh{b%-MI&zA^>d7}_#t8@H?ilX>ba!@o>48)shdTSzQ&Ubgvdq}9 z@A6|I!vi4yN7qOB%}u{sy_1b$0>gu491UjY)~sB2zI@xBOxe<%^%@h(3$K2CKIf*-lU;5qrRk7|5PCk&nJN1C}Rrx-VoeltE>8{_9W%(6omqL#zvf5Cg}r zr{BS$!)wDh!CC!wDC+`G*{>H~e?PhK`$XX>)1Q`k*{xV4Sn}8XY+gFs|4(0^&$9G! z)!7p2ey23XY5w0ikHeGx?@WIeJU4#b%tHAj#joG1XTO`jYVN9vA7T$fYRzW9_NB^Z- zy8rwYbG!6$^6Px*`*)7}m)31O@1Ie<^7r!M+iP}bn$25PVRBJk=FtD|@9y4S|Db+> z2LsnT-vjY%|0l9E=m|9hGuUu4hzcqQGfZJg05#2XS8z5=(PCJ}(Xj98tar%_^FB#{ zii&S@Tp8MZ-R~@uNeC8s@%+5_+=IM(>)xIJoBZqczxsUU+YH&FDrcZ>@i5;r-O=%O8`wemBnF_3q5MC+^Fyzw>6=;`n^eTB}Ff4mB=o zYVu(C(%iQv?@#jj`M-<*&-l0Pe>{WOu^!1_%O>_3{sW53WdBU^))Sl_TNb&$`Tsse z#=4&uwygPQzprrdj}Pp>dox*l7+QoG9{As}v|@6o`>M;t;UWVX9l9Oh%5da`!SW6U zjkU>hqtdOnwKZ_Q*&X)cy6pY!hxYH0ZK#i6&r@Q&wWjzUzttnX%`;b3F=;9>6urK& zyQlue*W&tj@|W*_`_Ij2eeT}k(+u`YWNZHX_?YzQNM|#{zu!$PCwv)J{JDR>W)b@z z>l3VezFZ89-(=;NvoxGaWpa4_qcUb&&P;~%Z%N zecM!521S{BPgefg-pU|RSortrb>j&M$;q$lnHIE&8TT?AkT-W=xS_-_>&iyGg_~uq zx#zFqb69n!zK6l#L;rdct_AZ;&fQ+6oX4FWc5*^%&Ay-$xyx>B_d9m>`LCV!-}_&_ z4`N=x$+V#VVEt;(1~Fj<&r}9)#)|uOn@+PFn6_JPRh;$ypOyWW%|1MTH_w%u>Dv$G z?>d6#Wp;(WxnJ8Iv9n~K#LqdQ`_j%zef;zJeEEUI%4cV0CVhKzlj(rHm9(_ri>S2*ZtXcJ1-fWYYjLWrdVAvlTEwLJd|MeyS_MOwG^~?7fAg9>YeDYfz8&j27VN2y6?DAbG5yAKYxk7) zl^ly-f8D;e&nli2Fzl(u`!{?xWfP8 zMuvG-B1b2CzIkV*Ixrp5yqzzTSg@<-7i#4@`RD2jqG0d*3zyB{FFnCWYlZ3o_YML(dfkTRpQ> zWeHx&F~!1eDr3k>hAGo5d2{ z9ZVHjLDA2TN$0O=F#Xn=8sYBAx@HdlX#?i|+H~9fn~D#Ao4WYdVXKV8wKg@!9|f{7 zu>LiYbl_|_p1*$=(|_&ob#D|I^6qcm%l4(@S-hF0Py;7}nc22RC5D;<6aFOMTh8Xt z!{x9)W7_XN|92q_(hhp8mu9OmhA?cO!ngNNb6jW&$I>>ts>GtFA?$Zp5}wRr)M5~> z{%1Jc6?K_W#VDJ@tY86owbuU%x;8PtTO$!{#oAd3AM((vxr7{Wti{Z_2f>XuQ87QV(?^V`1!e9 zSN^K}HATjT+9x6mSI^k*n8Q@?;M&elZ|a{fQ{UF*%bzQJyiYdx+@IAR3_Z{);sFQ4 zbjeGRo71l9HEYDyhl@6dSUvLHw!5c4Q{HGsFYDoTt>25T$$YqJ=laok{_p1RD_Zz$ zS=l~3{wIF_Zmgv$+k?%GuM?|v*p?|Xlq5v5CM2D||Mm0C>_18C_v`*;{L}pY!k?eZ z7{1*8`aQe;x)j4MfqDh5gy_54b^kto_Ot*0VE+F<&yU{OSr^X>K)$#zJIh&D|4 zd)RcwvE$1Yugm(*dVAkvL9S<|4{W!%IcC&f{`&ojmBM$oeeTEKOVNbEuYB1z!t)AYw3psE!i&<&ZnRH=w14E>2Ky2^>2Rn_cHxE9%mo6 z_2d$UJ^7b^7T0g*V3>VoelJ7Ad5fIx1M-~=J!}n949+b7+$S>lFf37JVCc9USySQ4 z;CKCD*_B-hQ74SQuKMS}(9o9U|`%(|G!QTG~;eIho#~Cn{E0HtF*VXyD%Jib>R86nf``$mamvuUfvNub+KPJ z=|%D1UB4GAW!7*u2*?&zKC_>~FyY|Fm^~-i7C4``fAV=|(Vw8W`j!7UK4~6cH)6PU z`Jag@!?yg>Ka2m1@6BQmQDSI2JA>hb1H*~UKR!KoFs;@XW+;+sSZA-w@SybKBG<1Q zGwUsx8iY8i&Ejr5GgMS8W!jMNc2S^FL-4gcabdByE6#a`@=Qqock{*#HZ#@(+b2xt zb$IF2lq$;bqfq7if*lPh(WA)kav9L(xL(YcU(mUP^|0eydeLwN^U(bck?}dNm zdoeC}aAS$g0_F<~pTGA?dMdR)aPyE$nWH{|R-~PM&T}W-k(8nNQ z$Mk^z-vj=pJ8ldL8uPcO7V;jcUiG2BV*6UQ_fr@gm=12WzsugMup{rTQf~dFu-1?5 zLJSW!^y{D7=lbX2^!GAPr!Y)VW~_KNzqdCxK_@M34wFWS+SWg=5PJ?rO9eKcrr`}XOHwxh2P{I?auu< z>B{hQQNp$jsnHh2Z+_mko4@n8{643{~d0-MO5bGWqx9o4@AGtPidC;=1u` z@%o)) zD9bD%XSQRZDnpUzKku#ebKg~Vi8S0%{9;-Bf3}}uz}2N6CNlP16`an=pu$+Ntlx|2 z5s$)DjwPF?xu5^_`c$d$j88eseBI7J{Zq@)AOkACw?*E+@o&|ue;?%1{^b6B%F&>9 zZvOAtzjwPZTsW`&*XQsiUp9g5Qx`WB{M|Y|US->zJx!quGZ;La7y=ahoIXu`U9ybv z)8acDaxh1?S7`wTboPWi`F1ijt)in-;^<_Ou3qS|34|MLFc?@?k%xclqt z>$O&oF34|Ve$f3oLGoJTYpvI_l^ANy*{_CFZ<8!sb_iMXT zm>dj#q%$c@Vc5V}DgK%DKj*J+e(${N+I~-!X@TZ<+kNl9G5k`ux7zzH`1;() zEp82(O{!t;f4a2S83-|K6G(c&uOQ;^zV`dwa7!I!gKMo8w}TjB&f7oxJTvQ0!L#{s z_7)SmKG-td*WA$a-f)l9^@rtry!(%R{m}LP>Aw$M-}&DiotUd#-DMK=!2kMX5x(Fb z-&w=s1HSK1xu|-rpm2Klsx3*k@0ISpaQ)72{jXft8;@o`ExY|(+>U(rNrjmMW~)>r+tVEZw*iA9;IGN%2l*7V;2P7I84ca$0a*&UVH*fE=@K~tdR z`ee2FSDcj&ROdKf@Ra@LeE)JxVb1jH4?jNr_eG+_mUYjUn5W^p>aYHs_3Ki&?1g2| zgP9)8z7_gdQwa$i-`T|0&yvCWBb~`1fAPHC zXXA~2zj$5}a=+ZXCQ>G{cIA%LlUt`AHd?dzcZVVa!;SfSKRNLJE0?WaS){_aD|c%D zpY=k|=M?u@e7{r7_@cbyy8wgx_w{T4bh76Q#n)FX{&DSL?xUURWnJQZcXLb3%*?ih zxiPf-Iq=<+G2m~9(MpCRXLjrs`Fh&&@qDNDxbPMF<$Co#>-KufU;Q_c!Qp}b^h_&< z7ym*Z-2eJ7h(UUla-K3nj!}}uXWvGBoyR^q^1^JV^6h&6e6rpDjgQ%{w_jhitFFRT zNa2X!2W8I&K`)LE250K;-@d&kRVGzIkGZVGi|N3oENRgX*K*aFb8c_jmAoS_|JCD7 z_M#IVuRm2|NKrcC!m#32?)>dn+yCJZ_t8}2eaKg0 zT$0Q1F zf(+|eKW4Bn%w1{Z%5X$P=gdk8fucVGvcIGpzIy(v<0*7dW)S%ESX+oevrC}uPJHC? zd*SXf&c{PHAKxJdcF(z*WDc8s-xV30N-xyf&o}xhT3u81SK^od{a^$C^gpp243*ZR zj0~IqYY821XE10?3};$!R?eGg#vT^N1g0O`!sVG5lo>-*8u}O{3O`<5@3Zy%2_sOM zkj%@#-0}X-?nhdTe5dEJIHX_i{hY1J5Haoh#3qIX3+7K^)M8?=TkpZ(q2l1mV6!b< z6g<#YkY5ZQ=9^_2FI#n)zfOE^Wh@KBzZH|S8D@NYUsNN1VE(VY+=5A$7KXpIFXgM5 zY|0qJ!NBsb#4^?Kz=Yr0%r^vN3t1+Xh)GTpjJW00k@>@ZF5_{t>mm&oK9~Qj*|j8~ zMecst--!5@wqKXOb6nB5;LfmIi7`Zz;l(~phAnaof8Q;BulQY_lVJtt0_Fo|4KmCt zLZ7R?5C0lh&Qtj;X8T^ghT{yMF0J2oUcZK|Was}c#!HkL!t{4}HCVT%8vjUVIxvxe zVZr{2kBf9u{a%PhSwel2|S|F7Tebq-tIVbA$} zy#CMelS&L4j0?IMCU7!1F@>-ka4y$fH3!n`P-LiS*xS#y!`J<0sheR*n0?z1kHQ*R zPKD7AA9cCY17*mH{I zfP%1E-!pNp^h`#SCK$InSxOchV=nLavjPWrCX=HJaM8M;5@#h4OUa=Lv_*K>cF zt{)%A{Nr8GRkqtZ1Q?7OwhJ;mSigRL)YsaayE2V`3+y-W-Aa(Y@eQ;acQFUU8b$|( z`n@{W8621#gjoXw8NTPv4gUFUc3R1Wi5wRMn84$DU(>l9d>n117#Ca)EIX^oXM29m z!+-m3uS{X^Zh7$h%wK<3sQ}3X0Uy@i2KoCp$lojs=YCvHUGc=f^oZbtAlbqf{R$Cr zZU461vj5hes>Lr+{BND9eF=+0*T=i1>_`7$`{&!1Bg^mIcHi^JaDCI*K^4E?^pFPq)?W<39=j{#$Y7J~;< zP2NLhra4XZA&d$v4HHynFVtfYVz4%k;d)Rn!kC}{8UBCm&!liHlcgah)p|LX!~Tl> zPkwygecWchh{x|8Hq8771aBuuUcX)PF4yYuwtpL+%YXjqV_3KCwf4ft`<_nXoV&MM zZ{2aGck;2~kG0Fzt>A1h{}y}mXU5wn_p7FRblkO%@ptuEGu7tezn?$Sw%6L_m^!_? zztOSb_8NYVhHK6L6BQU3Lf*$&#n&W%e0ufG@BDQ(i{~}AKjoUxzvZBriKxT8zyB{T zdnwA;@IY4fTIp>!K?d(>IxD~Zd~ixTOUU7>{HS zmbraEg(+c5y!rDtT?{Xp>K8KopTl(E*s*KnEDq}yRhlq0gxw0e%5Wld>iw^OiskRO zGkA!uo3Fjx{_D4${rSp_F-iW?neQdVu--lbF91@{ZKJ5Q@vcmA`o9|X1 zyrze;CH()eUWN)2FUsuHNdw<NOSzrUyIK%ZwNj zlasUA86PZ8p0C8pkp3q#HBXB1LG_;-l0PprW%1Wy0IR3oU{=v<@Pifws z_p9Unzm9fc`Xc&6-i^s&USqi;!;_d=6@e#r>O>hGxLB_#{;#On)pw1N!T#ao>7D!k zo=#=>c63d5U-*LmmrmLXJlJq2HawU4w$cyx`WK6WvzZp`j z`-1gR{I#_l3_UCc6B+F8`+6|!`F!LR*Pr^|_WSNu{@=?iYEk?0!&^5d2X>=OX{Iyv z)sLoS&Hw-JakaKQ8&iXj!m8KTd)M>+*`4!vQ~w+m2XBvtea!z4yD*e=|GgT>P_i>x z=7I;q10CCaS=TZ-8G39Mlrj{|T*l}y|K{|2>dSiTS2O*HU2muSK}$FM?S{9!>37x3 zdiT#@`aAE0Va)#*E%htnG=KbmnteU=LH*Iw)!OY(-&uV;v@jF2`Xt%vz;*e18uKbk zxS0ja%(i_KX3$LA79z;7No|WBlY)xsLDSTOp_&KEYn;xlKkNFri23g&Q@#|{1_9aX znxzll?D{V9;C2v0j@9>V0;SRaZ+t#3#o*gJ|LrdyvngLPZ|Swx6T911BzIVzt4Wq>kzu`1!o{#x?QZGJTcwYach_AP;lBN2_Z|7G zKX)%th9tzC^39nyLa2G?;mE}T>R^? z)s16fj0pjPFBBOBZah9?-&FT%hnzCw0md8l6(=K|!kw4hR*ReQJM!bVM*S}h^%J;U zm>8yMa&E}~ZIjOQ;O61zqub^8&t>G0mX5aOXt-m1dlh(r&H=V_&LwwZvl%Tse@vX2 zvP-6_E|>M{!p(127XJvAvv)f_k0~P5Vz*X)toS9lMaA!fST0<#|Mn+&pL9^q{I|bi zzTVpSjbq=gS38`y*56%I&*K>(%%J~g8=HeH{fSvG-yi?$fB!0u1wKxV=jYi*$83MG`r!ZX(h7{f z#QyLzGcvF(s5yJ-sHsAGQgy@}{%elXIm-6#qJ{;Jg}9y_{q*$o#`xvCW2|$ug&DrD z+p+3i-TB_|ekFkd*^2VpRoCX9`*v8Hp}1fd-}c=v*GL}?zPw){$228j_H?m-dn?M{ z+jn1||1XID$ML_xLJZq}9^9yXw0z#4waot(KjxSI`}_PICtTQM>GQfg>T^Y~&SF=8_vismXMTkLq{;s9PpPQ#&YcMGLV>m}9Z5HF7L;n&b zm+-`XlXqTs>GA56A0ehrkzpH0)C@09rzbq2nd*SZ6si5w}ukPQH4I4IY+&Z1%#G+#T zs|*LM7|cW&?(U1(GIjF2`nkn@-&k1laMsJOhj$5Ge_vJiVa>tSdul!{ntY@sHQn|9e|-n0FSej|z8^!t^{=71 z*|+XJF;?4W(8a)Dz}FzpXr&j-l<+h1_K}U6>YUNMk~f}x^;PeRw<+wZczWZ=t`G7| zbu9mP$Zf0qEFFB5`F2|Qfl!x*FL4c^WffZ|F`Ni3jqhVv@bkY3(}Ab%pVvfg&YE6t zv&R(E;K{+yUzEFd`JrqhMkV1^LOzGWf| z*FT3}Wzev#+x6O6)1K$0d#j)pJICXvUVJN#O?P8>ux9@pp@eL6MhBJ}2Ct8|;_Y_q zWM6Qs=D*T}mfC&4)-JyKPm`hTdPLA-m+BXv+0XL}F<9&~V!UwW>&4HLi)Ve@=X8zf4a-h_MhEWy7daSM{!d|9z`}5iVZ+r42bmg*SQ=uO z9r{4+d^JXqKt^!Gerr2Jf$ps7Mob67m=A25|MK$ka6Ms0Mc1D(>-62S&MjZokpE*( z_Kx~D|7Pcv@3p)BO~m-ds>m#38y@-3S4c)hmM^C*^p>5nC<|5-69EaO;k z{$uX-_JsMTem^u?v;4q3tD5f#vomW#O&K!08hHLaEnCdxA-;fFq4s0DwUz$gH_=lM zSF124DKixO-(WA{f5(1@)*;2#<$SZh*ZzC*u{Hbu%h&hU92cMF`*^mp?75P<1vVe= zRlhI&ws-H^q6jzFuG!mSw8HLJMQ*y!DCyDA$oOB6#UbmxIFrK5;_W}Z^XxXQ?P72c zVz_>>gkdJb0i}jjQbrLh8@w5=m@+WDVE%BNgCXXa6vKJ@qKy+c8Cd>zbwE}!-Ew63 zA)?zg_u~X*28BQI;mi)(>oerd^J07%0)!5Hd93^GS53q6_aB`@7-AS|a`ftQbQ@=U z6S@A}>D&*y{ad>BuUjxb=7#^ePwP)RmQ4I(*U&Z?vEKcQPk~ z)#rYehJGFe)*s7Wmoxr1a$t4%caU8^#E;Qx3#ehAPh%pn^u z%Q)fDpP1wALJS4#8Gke%HnQvfy?vcvd2Zws{+^=~8JJoB&1CpseEmz~ymUXtFY*zU zsZUp#IWb((Vz5x|Pnf@Nxfa9hW4dn?8Rd4p2x0U)_OCNbsF@cZ`m{>w(z?}o>o09QE>JeBS;Cp&z-ry&hTr};b2i94UcSqY z>rd!uO%8@RcdxsO-n`{|KbM1naRIXddwXhxxRrD7TaFKjVUi5`@8lT@y8b?&^|${g z-}2hbjJ-DdOs?2%m+CwH^Q0id4mpkn>-^YBTV=OFkdJZqmEYe*=>K2z+>L73b=iGQ_0$JP`F{D2aWMw(9j~*8jUwE4SU>_Wr`n4>zQke4qb& zzQ$MJ^PgLXuH`;_V6UsGL8|K`gJ&+C6V{x?~Lp>1~a;U7oe*dJZ9gMY*KUYiAvy^o7c zU&-b0;^)zx{fif3r}7&yZb&@bb}E0*$76vH} zKDQwE?4_!2`_&2p_wnC)^6$r{B?o!mdD@Ethr~u@mti!FaLM1X68G+f$!G0dv@-Uj0?Ise*81ueWZNet#ja1 za+k&7Re}3XwuU!T7z#Mm%}%;M-LWr`b78*G_x(qH9<|xOEi(IZju}$~%f?Se8jJw} zUG^C(T;}>NpZ9LE)jRude{zkN`1Z%I;aQMdlgh-xxL@o1{VRD)4O3Vg9zeL)@F;iH41au#VAArpK?n7@kPT-~QP+zv6BB(V5rhPWrmNk)6}v z!UOp?Q{O%h`}b#=;as6ShBqtssxf@KvttF@&rdvd>)LZm+Wwa7&9d%dXeeFv@5dRN z%^zQ_`s+S>SvU*Bm*2-c)kDD^PLRG4rpB=A!2WYjkKd__Xm??l`}cT39nZt-Yni1P ze#t?KTR~d;g)J}cz^ZFKfC^e##i*Fv7f#n zzir`4h7V^LR@|>X9i+mjwW0rkysRhV4YqBqc0cwop0KxhxBu&j-+`9)Ig42s#J(Kn z`WNw1{`$i*h7Z%{Zrfb-wkme>a&MN9*XHp%!|s&dwkbTH%Wb9i?}P2>qYHnB8-n}3 z>Wl)bi+TK>{xq<^ugY{FG~FgVH0|=g*u!UUPuo2I*Po#F@8%Qr1b)}Nbh?wuX&t`Y z_zuIP)Vb9x-}E%W{Wo#YXp`N>zYne3#MoGv7-Tp-ZvVKoH{g1(vvU6GRlolK)=sYCV3_i8u~EGT!=9fnrXPKG`dS!6{naCHznFj1N9HbJRUqt@TBj^MMd!!sSZ7tBrkJ@})fP-+A-Dv+iH`+rPAK z<>BAKOND>Dvw!yU($?20?_$!n3NE=MQ@*NL|2oG7(UqIO_S^2CaX!84W9M7``-U3A z9S`QaG2A#dz3toTb@RoTO=|6*{`q(6jh@3zguy@{tbUz z;r|lZoXt;PnYw|xY1^-X7q&*P1}#21XExJrI!D74#i=VxmKBGbJ3mu9{?VUVeM$y% z=Xbj#_kD<++#*{#`OI9u=l5LIE?l$!_9rQrA*o;f_Ix)61;z#yhGh&lQW##E-aPax z_RzoLy85NR{&nB1_xT^<`hC_Xk>~!m_4a&lVvM`gCi;h8n6ZH&ZeHVc#tIXqzu~#u z2jqVrHhRl{dsPQB%g+dw33Bq+FE47E!m#1*eq|O1{u{?N80P$)?#Vdk>G8jZj5Ibk zC^I&sFzn#{bD5)|)>_OMoTT{~CwLvdsdhPh7n_6E+?SKAzUH#NQ$43&KJh?|N`v3C zb0X8$P1<>QCL53C607feEDbB`-~3#v!r;^g&f>G!8s2#`%t-kkbIZG?e(9fo*-BQ5 zAKz3avp979=C;edWnx(RD&!yIVHSrVriA;8EKB+9moYpr+VYa4A@%gMtF6o%`I#!- z^s}-iMvF2wFvPE8R#<;skYU;XaxEr?gZ2$|EdPq44iw+k6W=~3`YOW;PX?*Ph6nQ7 zHo7u+=)K$jxawcR#*G`d&S&8GyHI~JXs4fLdYx0rGVf<^rr)c-oy9cegN$*%$b(1P zyy4gPE;qhrHn%#uW7pdHH$RWo*ai3a=hRCxW=hBJV2jPOk6XQV?~(7}uio#!G?CHw z{2p`3$_2aacXBi&&OF<%!m#Q0v(^AD_b1M9{B=QjSB4q??$1NSS7C88p)~$Q{ zY13>d@8D%9kPwZk4=??P8eq>-fC+ zHq3EVHA%m3b9mhTk+(CYsVpo$oZ-Th@9(XPj=Z-0M6Pq&QXZ|LMgf%>i*5&ts z4h@;5&L9{4_2?{yAItauukR9MNDz6z9MB$9T@bO1rSa6Yb+OUjtV)dq=Qq7(u}~E_ zkQnX7uqI;5f<7jP1pU(jmpm9Z#RxO-#}!Sx@OS^~ZC6bhHaxQD{k{Ap!wMdUsSF!9 z6x#k>PK_0G;Qf#eTFtjMmZd?@#A?SS^PA!gbtN_VzZv^(Kb!Y6H|W)R%?maFv zEUOq+aVgOHD5Jn1d+YD>wL}}@_tuoLzKXXp zioD>#VD?WLJVTdk_{`e_wv3_+?dqh>j>WHHM%jDWiFD!e-{MPEy zfhQ6hoje()=1Xl4xKnbicfYEPTf^V;@m9;#g&M5R{kdQIL1g38iT~riGB)ggH^+7c zm%*w1zplPMvg&Dg^+|?9+oH{NRz2Zy{}&HBa;3}q{hr`Ax3+q}+54UE{Q z)c(DV{_Og^H9HHmV&SwC!-}*Z=QQ)2hc_1rGFYZnKnPFUi`a zc_fxq&6gomFQff+p<4VkTeqYGphB_4sA1_b^=1e5=SmcYp0)Dcj5RFEf7MvUKSWm9zK1@nvvGVYLuqVEFfb*Xwn! zzMfp4yM}{->mN9JPCGHYIJC01+ihn{db zQ?f7D^_>RC(u7MPPx{UU1six5|4F@@JnQlL*ZTACd&mFu+WN0u`FCsT?Vm3>7{nbW z7u5vytk;!t2=!-BX3*dau$ptX{7?Jc+T-?Le)?^#4-RyTIZD@5}Vt z?)!I~{;{K{P=isRDnImZ$nBWA`&le+=eo$bGMsQ>VECK)_`cJH`!B6x!!4hEZ+>rE zB-HSO@63<$d*2_)l63f+e!YHKI}5|&*Sl|r-md#OZSzEif^T|^0TaI|FW7I)^e?;p zyK=+)T|fHM*QXsgbnMtPb*2L*zu!ljoL2=6?)zIjWXWZ5Si`qRduO86{~0l#?^u1` z_D$q>ew3s_`r4K$LXBI4SQvM#swugAHzj+6@y_CEC>-6*Qi?i3QY_Q+;_D@YP z!;A0kr#^Zb?px)-80^BfhhLX%x)-~h2m^n1^}DQpORqA82r_UTxE8p>_`;v3&X=>U zGge+T`_Og3$4-4$-1eMX({^Q9Pp?~fE9AIw@BA)?4Y`YV?!Wc>)uw*Kq zn{|0tclbHM>vpBp+MEmw-!7l8-dr`e^y0@^3@`Mq=Xx+OJYfG|_w1RmmO=fkv&*>( zBHpcgt;q1A$Nt;G+kST~!tU&=Z?^dLEZVQ`_1)cbIUC~ZYqwSW*Kh}|9#l19aL`jY z@%(tVKW~G7%_Ct^Mg~21hAA3O(>Jp@Tz36;E6!zue3wjH14HEVc}?y-k=H}le^+Gi z*>!v!3xlm0!~f&wEtePF{@E(TVB|O{36u&t9Rgef61W)7{Mo&PVakfM`y~hWnr(ls zr*^|(Nm5P9BvEz31)IAuk&DNIg_(YX8w(Tu$AW_f(%<; z?a!b3UqH6v`pnem|Bm(ZKgm7uTHDbfBk(|qDM92%xgtZ!0nsNfa~_1=mCALkz4DmDJwmg~dfaQxH0GKO#BeihsK{D%W#%eCxhf&=d7 zzW%sU`n=c_jRi*>x9iSeSP;m-@n@pMjlCbM3g53aHvospbfyK-)6!3`?Aw*QEwqo} zfJTFWXoEz+tD=7^i|*X!+6AhfYyT=f7w6i;Aam=`rPxDPb6puqcOBPrWe9z{ON1e` zUW)O7_2*f|H8Hgg?G=_k;!D&+EBv@YR*?Vt>7g-!fmaw0=C}GBQU|TQWo@ft-=OPT@i!~Xvm>3xM z$-L6v&#%H@WyQqM`2XnhJ+bHiDL-fr-_;Yy!12uRzWf2}3C|h+988pCtSz4%$indL zV6GEQU5=3zSE&e||{@0R0#9M~Hq9&fbzs#)^R zSB^VjmYlpWVLs4ah7gjgY?rgDLeCWqh4hG9T@#p>?&%Kzb%b>u(@ZxmB{V7Ze?SF!e7I^XQ z$lC_qQFGdfVac`9@|BDWigt1&1V4PT@o`{P+TJUFwWsz?@cL!&?ANRnQGV$soJ(H? zzqqqK)ZO;zj~77n|ur$Chwj&)+i->H#T=XepLR{MKXZ?{-&GaJjL&8?{8D{u>zdXUUD{EvHG~ql%YhBVfi|1EP zgW+e4&q`)1rUs^JS;hso+}s&jmQ|kkUAUI9;kT(EL&@BgpZ5DO$W;HYUbX7~E-8k^ z9t=GU4lnJ!m`*&9S7kI5W$0!|(zA~}rqnQB)r%p5Wdg&$D$6At3aShq`|A0Byx;ZX z*3NWrn$w=mG$ATIwvVBKsX@_{A?DnAUDq!~joH&5FW*VBJ><|$tQT0fASKsx|@bT>3w`w~-pZ;6(EQI^R&$D{yXkF#ZNeo51SI*j>Kl@#b@9}N1i*sw9eB6-x*ok4qfqHvE z2B{D4mAE5vtDihre`L$Y{N70nO9B}~xCFMfnlwzF?k5v^!(Z>k@=1&?LJS;CDgpw3 zexG94CB(43cdr9@G*Z==!C`6Xi&Rkt1qP>3h8-RcZan&)KjYYXPT3+zEOE{Ky-h5{ z+tyCx&S_WXTFyxqe$QW2f98i7@4w>y_;=Ylu|5|jFd1~QIDl#fhA>x#7uz~j8FCcv zxQLwqMb7lxm}CB1=W725Us~z$eXFuPv+ojy3v=p!?rmlG!1&+xwEe%2`#W~OtMOVB z|Ml%W4~7%pkMClz_-y}okNN6wgGjD|H*J$ycjz#7xOp;6b-w-fzTFE~hMK}taq9bD zd3%FTREoaH(Qsw+LlY*3RECv84Sft5pK}UVW;B|`$6tOvUHR5xPT3-^0!Xe}ej)Mv z!r=KuH5!%)L3{y%DjUDsAN?$Byl-adtIhM{-#y=aBGbyf7a{^*aXyVhM=_}`4_fT+eMUNy!C8~Gof z*{>($;K~rN(|)I1gA8a(9FHqQ?nK5gCWc$r*4NaDFgE?J3C9g}88{pIj;$`^ z`V}jC)`elmyW}hH-{~!Y^rx>1GFWCatk@I6%V2Q~w3oE+Qgd#ofX7_s`M-V@^@j^T zzTeWfQ}f8((B*cm=k~t*vu?*DE^WpM-s-kTf85|=pT)(c#2DbzzVH5b`RYG+{?5+h zx2@M;u*kfm@{jSbmhiv}W>T2$w?~WV!HYlSbhE?6Ts-`%Jk&Y%=5PU*1g@iPXF7VqW<~$ z|EE~pTlet5E~RoitFM-&?^2l(u5X;K^&NB|nWw*{ok{Egv)A*ZR1bdt75w_n@pqv0 zJ-?$@)n9(Q@HxNUYK9Fs`d=jIk~oW$^K4ga0n`9jyP;%E@D`o5}6g+buQ<)>F(G8pds z;2W|}-}d$WYf&64SJ&=-H7B@1dR6fJ;OBCm|HjvTy(;xXS&-rN1~CUO*>5qA7k7&o zi1LQ?`oGKiq+0SWcK-P}JHP0z*%rS=t?Bj8VipErhK+#?+kP>w$~~q(@1_=0L&$&q znM@Z9uV}p}-~#QNKOoGo@IaRv!<(C%m#Z;8;b@rS`Xqyep{c$m*W0#1P3!*ll^u!p zR~bDbd1J2aMUyCyx z*v@v~3A=p~e*rr~#HF6+msV~3t^1?@)B1POy6b9Rl{G$)xA{_&!s#$qU5%mT^j^@_ zTdSSs2CK&^JoEj(DWd-B(WJ|F)^|v!`3lF++jeI*gM@YF!~>7!?_yd2I_klZ#bM>m z6e&gqE(QmthTp3gmMDM%G4<}o+hM{BdN=>fwfjHepP_O0LaXOS2Y4^8^j}zgjQ8&>edj#?{G^HeJAa$sl`H%w z%8_6&pXbB&X$%>niUOSfmcQAtP>n%s|Bl_fEDgb24a%GsF8dw)b*Eds+xl7U(od=g{dO3>pljG3f8>&-CtVfQSZPs zBSa|Z%&B$(<&9R~4bP{aI?*y^qVeAd9)m}JW-@p%|G1s=R-NV70o|9fH#rzOF1)Ps zTYdhG^5=b*D(ha~nOCA6)Bala@+NSu$u?tE5SemPkl}&)oPwrumIlr#PW2iu+~Y6W zZ+|gm-uF$*v+{ra$j#s0>wo6QQU%>4r}E?jk`1RLKurKW(6sL-BM+8G+a!1!0+~N> z&Hp&#!V8hd%?s*3UpEWi_x!5u)YB{sE=*6<7;cHZJHPP%TE4&OObUEozHc^^ydc0R zFo|hH&CgF+%jSbuS1(j%h{<9|5NYsbRY>`7Xa_p%;CPSZ<;Oeh%KkUMQ$5yiXRJAY z{sg54%PsF_mtEeO_|SeXGiSnN&YY|oy?y^4aeZOlaX<0rW^n7+@;XCCyk32KHaib1 zeFr@Oui20~14RT>I^lwKG7)hqfO>OI!HtEQS>^>icR*^Z8k(tB-4bIJ5S19@G6PcP5^cWB3)K z7U0e><xf1$BXjhRc3 zVG0MwM8-SY^W*s$8&n$JSvO2#)SBd=_W#C>8#lTH81`9xQrn>F&amUmgI_ZDTNxZ) zI#w*z%A8_*&8ft ze|?dg?%8n1>iw=<4aN-#2b<)=1sMWlCTOwjaARnBwc-?Aw%9FY9NZ~7wLXn_MuLmR_}clqz{?X}fpxKgV4Uu(K2 z^Pe}M1vaUw3_&8blMjmZGAu|4GHsSFsu5;nIKKE&vk_;*IM@5!&=Km8@* z!>ZT)eQ&q;-qWwuzaHe!>1t!9yMyEQifzkZKl!}qx%YSN`Rz7!48QjOJL(_q$Jx-# z&VNlozVYA2%0EP_jC4k#=2Qd4O9PVUT|k}2#vU?#(d*h&6f$k<5$(^ znKs;z{CVg2_q+c$xG)&JIPcD8z$oCtVDY;zcl&n{#wGJhT_gT$6gjxEH93bIys|P_ za?gg18=opO6ou9;7i2KA$J2 zEKw>GPpMw|`>1-S{NA`ba@!aF4xP*XB~a7k#kbW~{L+jK4e|}Pb6>hY@aJT-(aT$} z#9wrUp&*p$MBoG-(CIQAstit7d7L;HxPEC$CMYq)96z5vP5#zInTFIzw+T(vJ2Mt! zNeeSxSkLlh0b6>~Y9`KMVa5XF4p=}%wLP0~uwmnkuplrj{( z+;cmN;YAQb1`C5KsH=AVhhjxJ@9X8aSDl;RR6TnU!`)-sIT9vYect$ezsvs{Gr!Jw z?f>!TiN8OM-_$FFGD!R|77S=&IPo%r;org1oqs>2-w9!E*!Nrnw0C?7i^H3o{r!B_ zy$ll$pK(qvc=<7v$wB;7o_5l5WriIb37;Q7k77Qs-Hr9`KBn$jsehKQ&0c>nt$gmD zwddc+t1`xo zGesUKHRR;vc&_D~TQ0@uaQIAedO@jC!xsr1W(y0W1~buy7)>3`VD6aDZMm0fc9!0I zX=cL8z_52u53D?1RkWz~&@aV)d714?jp{$}+~8oiy=K3r)Pd;?8JqX*@qgvs_iv}u z|6q-RCpL9Wg;E?$4UP7~jLl9Ad%k^nCiQ1={;qO=F{Xx8hMPBTEL!V1VTSkdST%_a z7IS$7eDjz$Z2R~3o#s1z-`5iut7gxizilEzZZX4thDW|e^%wq?zy7~0ihccq4RY~` z^82p-Dzs+!7ZDNgbV65xvbRQ}z@s(J@BgjYQhDdsk9prpc^TOL`LOUvF&Z%anEPj1 zue26J{oyq$w<@o2Zx{IAYOF7I``MWW5vGlmDYNrT8o_6&=yobyF*5zml_I)w8mNtE5e_2lr^nYVm@ z`#Ulmun3&WD!E{}0)vkr!?NGAAN~8WO#H>R(<__jc`uJqV_2|5e(i^T&hlQq?nmO3U?GM+-}s3P8kTlD zuQGVOxU$@)K4e3{Lmp1mV zm56VW`D9r?wI!8{N#QEb9(~7&zyGnsM8{uYNO*AG#i5(CAz-DwK9d8}e^JH_?`CEu z{Zmf1(t@68@rcFYb~eKfrdtG)@bG;l81J;7&7U9%q3 zgI@D{FKRvG;?HU!msFqq6_3P`FcI=AQfwUy^<|7i(1 zgtIFg|1ta5as`c`JM%k!U#}8nVEgaGWWcz;PyhYT<;~))kmB-JCquzj2_^?WMh2#Yhl`W7 zg&fqFAkDTU-%|{?vKU_cDem?woV4-q%#@u{d%d|Dx_J_U7fjlAxRPPT@z-HZm5=m( z`>Qf%bTN2*{nMb#DIo0_^y}ZwC2TJknmiZr9b=fzIN|i^3wgKr->$#S$HAb&_#|}# zLrb^<(}$_27@c;%{c&TRReb@=uc8o!I=k58$IJfQ__vY8;qpqwl~Y)1mVPS|zf(L_ z^Gt2M(z?x4Ss0q@)fi_mY*@~a^ZT1v57P@p#sq#! z(SXD1v*Alth7Bv$S=IKxPP!F4k3X2@purt^;f$4^-j~0o+kgb=#BVo`BaYLS2wmVtUvd+Ik?g;^l!rr z4Tj458&@hXJ+?kqi-G6gOqL93&I@5o39mo%ci*00<#(s@fw=9yXBW;UU7T2~EyQqa zVsCHnS`NkstCQsyH|ss05xlp8>slt?e!qDF-A4i+F-&_Z!YrvUtK?BELx$1ZN|x74 z?`&*iVk(=n*L^x;UB+%b*@IIXKK3$vsNLs$J9sj;mV*N)!`(C1tQP|2^oPAz&eE{1 z{_@*xpWPRz2{TyOP1e5~##l7{X3Z|%rXM%{=^3BeX!ULB@84~!kI#|snZL@Z-e;oS zRFMUH@^{ro|G)9Ee`PKM3xh@bpUs6{4%QqE=k@+PKXv?GdE>?Pc6*%GRQ`})`tNr= zTZ!R#Kj`9@)ro~W0%U&+d|0hz#IC}?`g#=y+OEs4#smbJh7`Joi!gGEdNpKEs8{9k#3d1q{R$(dG$1);xQ&nyjEy8kUp z!`nZxoD5tSKH8SvHQV^N^yib6C2zdHmupr{|MaIO^;b>*`dj<;4^F81Q+sYduOI`@ zzniywn6^x1kod^;BLC*+e;P~=rrpi&p7>uL+=Dfp%`{>4iMd@26Vm^c3NkJ8`nY95 z0#5_~R6!o8{cN5L!GZ@Su{d~ewXNrJ;Cm2f#Og53pqTN3h)J-)U452@mw!rG82b2G zKWriKYA{1m7Q>cM)&(xS4AUh`xEB02WO69|w~mEj-=%`OyVX{U zu)PIGyMk#(pO%_2aB8Ylo*m4_pfn&&-LJ`%#RB)#ri@ESTz~Um=wwd z9fEn=L`)fq&fj}}>aY8U_00O~T)zkyTz*=o#k9h@UY^N8^xXPWx33E_DE>`e`lzO% zvhUwIql%s9`nLrx&};rbOU-ReX^7-G2-YkFJ|GIeoe$E4@U4Peb zGEDzhyF&Z?z4*8-Yz)oy+v=1VXZ0~m@MMT$DPZ~2EqVQ&=nOsuP$O-_#*JHNGklmE z`E}(dIq4)hCIQg4goOuJa4>M~n$7lKOUR+H&UV4%J?sUOtz8vdSsLC}_V)5T z2$*Rj%CN0>{aX8`ukLb{M^2{-IpiJxy7PRz_@VWa-hcLFEO^^*%1{*6+OK;md{O=7 z-||J{qVOt&(~``a(A@ieO|81^y0F8s9q(X z?9UsE>Q)}QSNr{b(}v$}m(4QnHe_C2*10lxxzUgGWT6GEf(&Z*nPr(&#=ogd3a)`WrdWM4bbaac>-f9-Q)@D^YLdUd zFaEcbgMsaT&R-vYBFqeWym#U zNaAd`pj2q&*!YUY(ejxO1B)<&o*;vK%?HP)4ooM$tCtHNxKzrJ@zBWXw{Pkv0h!$l z8Nv0E2WDSl3^D$r$Kr7Ab9m^x<%)lIz4~XwC~zy@o#DtCx#x2p>P24BKW;cn?*5Ix zzvZmUxxfifozY8}VSaQ~(bMO46$>wAavg9rk5`(e7klgRryZbEh(W~$*OnNkH^D6v zez$y>t;DdQK7g0OkFjG{{WgvUaLdYJjhC}@Hq#2HWluR6xEfya?8>ak{VRCjv9>S! zg}uue?oVTy@cYlxJ+%zajVj!i-(JDdFyWtO7em^$iTXm40-Ninzs|0zN&a^Kni41x zvNf_~Xfqa^o7cJc!2T`{(0R7mQy4f-e*7NDc%k*iat)>DQit-DH8$+ue(n#$GKP@2 z6&wq^Ss2dzk+-SXpv06E!ccNP|IKIl%kk_I8N3WEdrEFD@0bTVrzzwm!>T>?v0e=; zITF@=-ro9lcgyGFU#5S3<(&G>=+y~xqvE&0s}-KFsa^Gv_ilaD$J0v8Cmzht4e)4K z#?fF{?z=+9VgDa4yLXMAk8WkJXWelB<*rFAAP1h#+QR1W>Q1_N!&>f*{a0u9b3U9N zEV7_}!nr>U!VHGrk3au+Q;DI0#Y2$s!n8Z}SKsXKVsH@9(QkH&cigjE?9|D5B;$Ibnx*ZmE&YWsKo$U?}fmSg<}s_Q4t1=UpeYm%Z?4$h!OH=4Ob) z+!>zeF=eb~6!2zPvVt*Ts$dF}!Vl2{wnB_rOb1+96?V8ecc=f&1>Iek;LRRz_QGop zmYpl+_c{a!GMIdc?_Ep#ALy*O)UV zF&O;Rls+di{a)G98@o!iRT2)r9$c2UctST0EPBC7O$Yp}u12>0B?y1L3py z7F7EyGi_jN@b;)$ArqT7_t%Zj=lA{>dVKxSzl)H_naNV1z%Xf-Hsgo$tNnz#UMvzP-U^wVLox}SXdXs3EfJ!+qGE?PcBWI&ba8+pEX8JbC@PfWhm%mSYXtk)}$V8 z;>{__Ak4Txn`wpiBlp8!ox6VAjM;X^z1~Vya7m3N6TXp^KbEbDYyBVMD+jr-0GA9Gy-*o9O zAq|&U8eaeZ8k}bpoKyYB4|F6#_xAgB(LI0qR<557s<$?ZG~6+2*v8Q?$LdoI^Mb!d z4SIqM4?LJ!t}wg^mvm5IDB)wcrt)|>(+eZUgxO!sU70WZJ^j{*k-_+%2g3s+4+bY| z3x@hi$y?b!_ide2p8m<#^~ZwVy83`e4EyavSQ@%mCR_$>VR%{aHDGQP-}n6T|3_FD zq;DT^WrXwy{`~)O+|afX z|1n-*esEl}E~brxVQvxQI&)k5ZCrmY@SW%Iecu@V>u-V*!;?kz;6$1raHsUl&B@gU zj0Yaf&z10KnE!VEB`>Cgd+%Bw{rLEpNm=~j{i@e%x&A0i9yoUF*tIAog^={Spi9-b z8h906ox88ew7`++!RGX}D{bAYHQzG|J=x3On6ip-g4G@S?MeXi{_U&Y_L3riVRJo#V3;*fLo_npw+$^HC( z+7YK+96CR1&$XKH>z~UPekBHrFY|LFf*9}Z%MW_$E5xws|4)I99DWDw-IzeD-$Z}> zzh3`0oJ~C^CnuGIA^yXo*}<|=%nHjm7G(Zcn_HnS+Tg^(!1`Ks&&L-`?a%w~$;a|C zT>jh3_0yUmN0}0I`Hgf7jk&|{>}b9Mc2Q+(1J{9FK203+X31`$GO^# ziJ`mZ(er3=#s#yUE`Q0eOQ~UF;=_H{r%PS9)yIF`qW0I9Q>jV|coV;F`+WZHykGy8 z1u!OjIB%vC$gn=ge*35A=Djbc6kPxRlbv5~jZFRS6B8K(7(e{`{odFjF**5k_J^la zoYtLTkJ#zLuw(+GPaw0yYNi7$4u(t)b^lVBG`F!ey!@$W_9h|g=HcG$JI!8CI(KsV3r20`|)L=jt+Bq z7VyfnF+G@b^;4H47UEax7~@AYKZTAzOU zCc{5zWrmWvujeX3$C-?EJel|PyDy^y!$W6=6AS+p1=?LTGha6%tK4gfB&Jy#Nf#w%qUO{a^+iB_Ee$7TU)@(zGQx# zKem!V>V4DyYk~{`;7*FNdmo1nJA)E~GNT2knZ5Qs2SfOR$HB}BYODv$nH!WA(XUa?jEyYT!N#O#m z&-!-Z^XAz7{@_-2q6%Z*8q3XsOa~rr-yl)_)57qRz0867seBiD*;f3S8XlJ@3Yzx$ z8`Fcn%Jh(XW=s#{)oQ~2e2xEK`nFqKU(CH< zPSoG#ql+)o0aMUTkY9bd8uU9h?p$N|cCm2&-EtL2!xJnHk6j#?m^58^8@5@+%+~rd z--;>Kvi;t(QpW>dgSD1d{^fX}Im7*?z1DyC+aE>0H{U)wFTUs9o>goNsy{PW8g%}q z7rzlNu6y%lWeBKS&a2H?@Uu03&7b-9|6Bbs9cyMb;`OzE@_U+=ihh2ezaKZ9U@ zM_bnKYDXFFsD1lWV$`4)`Z!gTVb0%hSB4+U7!vGl_V-wQ@cd=I_y4l<>tBB4w%wP_ z#URX(bJ&YvPVF&qhCkcqF+>}C&xm|ylJ=__V*wvlnU{GT?)XlKVjp50Z*V=*h z4tDnPOb)6amruHCEXZIqq5Z3gRYOyK&D2z;r&}6teE!V4arpz!KF~#8LLO?J_OI3% zHLNUsQ2Zso>c8dr^+$d@S8;#w6STC8#bGyR!}&jtJ8difU5_bQb>M&NhMw2&Bdhi) z{8vBP|LyELkA`zQpND~N44QU!mIl*{&GlE;c)oi)9aMZN?BP(j!+qsk?jkmaU{{t} zPKM|md%e=mw=-ODW!NFap!i(ei(y3;!-F^Wp^O118D<^&7i!e7v*f{SEr}Z?j)z2w zsx6P(r#m`T-rol9Q5^PTGVx?MPV;F?BDXeP3pz|uQygzZQH*)X6^et z<+%C>vt~hxR2`-TnetQjM{^{cbUh>>Q^4Y2tjVzJH}j`@52hvS7$;P1vk&!UkY{3u z&)l*1UG4dv-Kwk(p~?-D7}sesEPVc4+x&SDvx6vO!+H~0hwt;;Sat}BC|Z432}(P6 zo=>m-6FevW$WQ5R1|!A;$5Yz|8dC$pdQ6^h7*w%6Wac~K2YEH__XD-0y)bp1|F#&{!UCRcjQ$VLj)OC&g;K% z^WOy%mRPQqwHykpH&zu?hsN#oVYt!7@XCW>x>Cc&=g+k)muFqR%CLY%NREP@R6zn0fay;Wm+Fs)KJdqV#M&^Quk z+GlU?pZs-yZ@F?Gx%1Wgi0St=qT%*M-cL91yk5|ow|X<^s*}3EU$1wko}Sh@`}#Vu z+ve*;zvus4`+iU9-W$7KiWz>|z3TYQ8*TF#PRxwH`{bkdRfYs61wXb6Vay9&J~vM9 z;sTds4y+qO6{7hzUk9gtFQy0EOmYvXFiTX|g(!uTRj{SRR#i%0mtvU05HOLUNXmhO z@xa4>KM%bu?yWyp0KV>pZ8F1)KhK^oR(|Go&5-edKSRTHmID`~wcVK&(fj`EEEZ2fL)a5ktgTCIC8#2{PHv&d#sZtBx64sSJv z8#5R(oc&7IJ-#gY?D6sbaz0tBBU%hgK?@}m-aqAF;P`L8lA*;ef8`R@VEgrknhaV7 zIm!$fH|(2gLOb^J{CWB|m!;wS&zsPdiw~lh9rQR>C^3exIIQur`2jv4rn5mP^n3Bk z8`E#qzxjAuij|R-LEU#2s6{Qz(8%KOj-%nWcjH%z<`bB{{B!td zUl7a7aKB_?$V=6o^YSZrb(uUIO;``FQmQs%a#+fz5dOPdmBHy8|L=<>jJMa=s|wd- zF|0`YnQ7&aA?Prh&*n|?uP-mBo_2BIJTNor_`UDHYQMjio_7Ds&-QK2uVIzN1v93G zu>Z?78K&?YNS(#hkj3D`(6jAy_&M?LHGBMgW*RMJ?qgw4W!7M1c*#)BFMmOZ;rspF z(P!pZZoVfk#OT3r;s`@S{R++l$IMJv95M~AeEIlPGEIR|L8w8Q;g&1I0??4iDh`I} z)%Qwt87_a!b!Et9Y0#PAw z049g2@AY@DQdq#Xb$>{qk?km>QbuD_obeFzi~z#}K_fc4zX^8Cz>-E-?Nlec$rV<1M^dOg6vn zE-$^``RK*s{toGN^R7BG9C+=n@3T&(&OeZeA&aSD^TtB10|HkV4u~|!m@>>@;3(e7 zcHm$$yS9=;A45j<#Qisv8uVBic^Ius7S5QmlViafqaWMXUKeHLv9%B7YLxL@ zprxYW&Jgfn{VGO>&wo=t^!sg}n9b1g>WDJqf-WYFNC5-2B86waf?d>($n8J!(|t>S z5U5jfER*4{BSXN;{dH;#2PQI1aJ02*__y6{8{_|#iPj1Xbw9rOA36R1)8a0M2?yGd3LB<-GKl_gPi@#H%%K1Ohpq~P)dOXQ zdoR}S{har7+uOLBukBO&8EO|V_hPgtdXe~Eq~WbJsNL8k(vW!i@ApeH)0q}*)MyA1 zWXL`D7qlON@BfON&99c-ER$z)c)o0(1JjXt^F7@HLc<+g8BRR>KgD6w*a>nfjt7kt`LzjR>*`MmEr&SvM{Ck+bFVa$#F{Guzhatedv>}SE;CAjK(B)Op z_kV@;AKvx#_4V%p3@<>%(1A^pY3ZO;WpuPS!4PMs1QGNt2=ciw~+hZDR^E(#OkKPg|2PxA2aP%vLN%cV!bMP$zw z4JDDKiyA8WqH@}|S?oO{nLhvi=U>%j^Y_-h{0S zu5>8y){mzQ9&Ry!4ItrGZGqk85ABcfAm+BzZd=C#x|3q zKga~@)VBTjEg_{85_?0^PX&Wn|nbfL&5W1+HMLB^FGF}=W#gt z-`-}Q9tXpPV)lppX##(hub))=Vfn3B{6F83{{jpOEDj&nSFEGyU=1AYmllSvqRPFe;jEhszQ>ga2c-24Cc3+;=3>*v- z)YjHAB;0KB=WqS3VPRPC zV0qeSh6Rt}*%?Fr1amB?W(;`Yz5jRVW?!Qh+X^2aJGCwU{yUQyf5rJ3GLwawCPcaK zUHK!6g+b%b%j8#bd8;?ax$`kFGQ5;yNQhuFSjOcb`#s%j9pml4H`y2*(l2}!m>I+1 zF#qax#syT4zN{CnZ` z_Jo5>tZMK6Us^KrFvBc126@ZZ`d3XqpAVfMYn}h%(*H}HrCrlbv(BzuYZM{A&GPk{ z%}qUux7gJf4n&^+A~ogp=1PVgP7Ea+3EYeqj@Cyr9N4mQZS?l8f+^Sf+crP(Rr$D@ znIS-*A!d<9$<;`4{)W5?h9x148CIMLZ$554$=q=4;`9#;9~c?#UXAyc%7{AtlySjx zR)-B63mzUi6~yQuyZN!@=9kZH_D}iy`mbTCkhl6b?ZC4K*f^)@L@pB3jZ)eC|I(7k zJq%K;4C!-oMP5mV$60VQ9LQeSWY5T;!Op<3>zE!x!e@pHiVeCf2UPxPvRv5zTa#zO z`HQXcr&(T|7i7?h-?ztzg>hFP1B06HEEUF_!nvid7#BD*%(qw~$M7p>K?TE>^UMv= ztP4uc)Wupd-g?5wV83bdEd}0+Dwww>Obhv+S`jg2`3?lzCL>R6Z7ROy$y8p?? zr#JTNGcI`9zu@1!B~yMEfBk*T-?sktHztN9p4sLMGsK>jO0qNXNH8e;uzIb?V8zjJ z+>D>$@5YnN4*aYQOL-Y?96Gq-!EuW^6GnzhEDR!IZ+)lzxxAOb;!*r6hAr|;M=BUh zLMIuSu``M@n9O7mNZ?juWZ_8o#Go;i<-+rC@449xDh(8#T>c%yaNzm9*zad5Rut%$ z*6jRtUb6Y0WDldU;qeK|D#}lPC2}-$)Ms8gBajfoaNyO|)y?VunPdO=zJ4Lcpyn*G zpqk-^4?Ba|;rBJtEEgCV)IMF7=Vq9o#-MQNsGQK+i>kL~3a9tmTwnY4Z)qr_07Jlf zc8BPgAI_)4XYsIXIs1TpZHc|_p$-9u?+hN2^V5DWcRS6zEA4OWJq8Yj4;6tgEW+`9|9H|1pou%YI+^`#SY+#!CAiJ->h5e)Der%U_|M46FKZdRG~P*Vmh?8T&E(j(?l{*=Ll-87SZ@s@|!~cD3gC{Hodq{0x1qdW|JD@%Go59dyoZz5o2- zRxZJ%Whyh zzyI%I`PJfazgO=1f24DwQT4X}R}$iX-z(O6eCFSDF2)<%a%Xe6XFld-h%w!?djreF z`adfV7I^Y9HoQHbs>h%pkf3!F9WNhm&*39w#jvQy?wo0N%&v1aul{+<*fTLq zZ|{Hq@1RkyYWm07HUAI%{r})#Gbj;mW@vaDJYP1P!9YXexBcrVf9|@k)$jl1D>EcK z+qvt{D{aR=;>-*pEEkS1oy3rLbCYYM=j3bJ3<9$f^xFmQZ~4FU;6(R(J@5P@ALaa? z%)Y%xf`Q@1VSVns^8ad_<})-rYiO9q%y63FlB5%d_esfS`CI;<{bwjNWZOg>S7_y$ z#J~{B=jq}Y67uYv`D)+EcYdze{{C}g0P8&Y%Fi!Py?DLLftjOWzUG$=3pel{XY**7 z$0Wm$VEymX_2bv;Z)Gk&EA)qhC1}#4sUl16-1xSvfBs{}1B?tSkI%mq&t;Jybf8_n zF5<|3lT5M1suv$F7V^YqnhYC&Q3%I`;lrm%sIUs&Z4!7(QHoJ|}P{Lqi#3gN!9Z(fMDqR|Q-U znxf{ySFCtojh(=Ei^uu1-Z=O-*#DetA6UY6&uk@In$YiDCWh?m>p~MQE%D@V zSR}AN>+Qyc7y4g{GbqS0+|gnv4V||kbio1v1rdfHckcS8z6)YtXbWTDVAxoHb>rFQ zv-)#a@WgNDG-+Y@VrbgHAi{FMNR;77%zPOJhV=iIOYhC{Vw>?=;+4%mAvp%$uKz+0 z*#wvj{{9qXQ1G3_${=I^v2`N@!!)A?zw7lmj0Fit^7j3F7RhkHK0YXZ6Th!!=dO>tt}4ka$8)8a3{ERQ_qJYR$&kb{Yo57+8Owqz zUmvzG%y{%S`R)hrj^K5tt544SJ4L0z(w5=XjG61LITsxH?>+h1Ipzyt3<_7#qHtuL+U1FJ24E)r<@|n`hU0FmW(6Ncr+)6ic3($r8X) zFT>LDk-KowH`@t(s@n|K?n8-}UEpBKx*FtHV6? z4hB99pBV~X-`Q_x=BMPk-5dS7qd3W%y#r%Aj_ckwLCMPEYdp`&$KjZxx=_670Kl z%$h}EYoFQL{(CKjX%k|@V!0U^=6+;&G3h5m!@Mi!R0>|EpG~oAOg+8EKmPxI;pgXG z9lu_4`|&@`lEuHjgR;s+*5#fpyMD!Tep_(A{Lj+f*G%_Y3e$enKKosp`T1u$AL9fy z-&-@78v?}Zaya-d)RjLJeEjP|IupbGzwvd|EKC8jE7y8RI=uU?!o(oVvOtdEOT>fk z%~ihx`CDJF+ZA(nTh&Sq_sqY{3^Cs`1T8i5{d;*nfAaD=`(@t_8%|l{Jm08#uJW<@#sB8q{CVZG_TIgqOwPi#uMzDOxi4Y`$^juC3b1x&93g>t5>EiC#9lxc2+)ZO8v!&SEI}Z|KS3ypEsC zMeEVZ1mn)?SC8_W7`F7pzWSb=wg0TQ;&SU<=l@>1HedOe{j)#CJKi5xsW=nb6$q*& znHau&v^jL2lgZ{#{ex!4=KnhE8C&@4e;m#_JImDT`z52w+{U8}4B`8v^%yQp{_Dxn zV8Y3`p+k~~@j%6m)z|Bn8%0a%2G@6Vmv!CPq-yx2iot?)P6*?R5YdL9rwql_f&mN( zUFqA;u4}bweS5i`wH|}Q zk6RTC4VSAAurS>FzVG`=%i?D%G7D`@X8hIXWr*2-H{{Q3hX!7T7nWQqoC~&W^k#Z- znlV6}!9z5Bn@XD#{5)zKUbcH7Qo-QJdO%%CxKjh-nx!=C>PjR(A# z8YVrDsH)~lT;e(TSavcOLxduu7{i0FG7A_O-rP)|9}1d^+`7cam#ULW>nnqdM3fWFN&ZaIg(!@VXywd6?tDjoQ4ocID-MLJnH{4hSCz zVO@|SH?$z)>SVrWp{aCqBmes9GQdlME0fmJTf3?=%BQhW@@SQ&nQf4}|> zyE=bJTJ{y5IEmZ z6v}W*=J)&E_O+XDt-G1W!eGX|l4(Kz`ss{Uet$J;*!H#-QkX4dn%Jcy@}=tJ{>y&W zxfuohH@#S#?0FeC$kxC7XT|8SPKM#j=hw#f-*>NGqWosD_Pc-E>M}1a;bhPdVG`hG zY89&()oY6_87$-&wp}XQR~J9GVm`y?-uJ)OH2>Uoy_lil;@{tW_s#a5fAR6M zWbLbK|K01qxZiuf{EF4LrEAv-G{jgke0lwR_rH~YbNAWFOjh%q#lWzZi(&gp7lsEd z494>qLj4+erOhOq8FCaE%@`IOX85zVpt7s6PsKN%>Ou_l>rorvJ4$F zU+yV+njG3>|3~5C@eAp%p6@tujKgAGb@}Wf1`ZaF&kR4FneVr3Vc1#B@I=dYCKE%9 zCk4P<_ndw=sGD47%l| zoCKqe@B1QjfBv%9H)daZSix{bR4K4%n%&k{4HXO?lhqgwuru_@+n+mmC!du;^639H za~QhC_1Qk2_hUM-mPvq%q2~Tw4h8|H7itU+QR^8QuFKwHVF-9K`=7wfUzVPmat!ap zl;>Uld8C3N;=4Y>f{$7Z{r3MVSecTF7=Anm%&Bn5_`wkCuh0C#>rndZ=PHaX@*b}o z6IU@MNZ+5DD*MaAlVRf*>6E(TNAhf{*Xh zWDrow2!4Iz_O|C03|kaE7rp-zyx!j{qR}Mt5(|UF{fCF!7uzso2-)*%a0vasl6GYO zrNdWz5~J72Fjz7+XzuUw{=>~M!R(qMgPGyuU(AnJPnHc*yP&!(Xc9w_EyJ4M`a1tu z8J0X}cyLGF_vo+N-||;62}Gs!2eS#(X{=;#UCGsuTN6IFl8YfGmBH|(G$_wCTrg_b z_IKtfhD(o^$1(i+E?mWR;rgxzj1!D!*Y{a{QuPuUSLrt|X^ZUzgWjTH-0p zz)%|;92~g$I~&7;&k6za-deMQnmA$)^%)$Z{!4ZAi9Bq6bXSZi;T1nC!_L;|Z88jx z7%y<~Gu-}teai;_lZ*lE3I`2BZh=o?y7cl3^ADgQ_Bf`fGdfOCFQed>I(NI0jiQR+G7t-GEjOW*KjV`F645WBl8Mv?MgnZr>v+h}a z>PwyIP1Q4R75=vq`0vWt@cQ?3CWaOU5jF(|h8s$u3`=@>845bZM829_lb;`aasBsp z6~;5B)!ymN&Nd8lezQAfRqH(3KTV6lptx5+;aIb>iJN`7A47Csm(?VOqE!q#CNbQq z3)$((P*~5vc))4Wfk1`?E_Q>Xe}fqqI{$rPX}IDvNyF?VqeHRA4I74{vo^=ucy2H- zsIxn~RB13gKL7Kt9}gOHtHGt&g2zWY%HLJ3Yhy^b#ddj-ysxbFrv56a@UoMKxgEdo zcZ3QgyozRTVsP-0JRrc3z{Her`G4@0FF`GfxBO#fh*z==?%dyh{_guVlX?GE&CLn6 z3GfupTgUEj=^rb@l^|9IZN?X#Zyx;Jd~>F7did%7cQ)lIE5HBV=Kps4+xbikd;9k4 z<>mg}XZ6vJ@tO2|ZibxO#ViY6|L|ovz{2>&fZ-M6g7d!?t1~?Rt+}5|hby{Le@BVdWXi#CCqUOusaH2x7$u9IyFvEuA z<9w|Q539O7WV*r75XZE^lcC`0)Nn0>%uC12SQuEmvSgp-82;d7Sn%T? zD}x9tLsI6kj|>}9ue6_U_ni~aka+uEIO~D!d$}22c>d2}I3RlHz~6t17IOdk?!Ky! z)#O<~!|Mq1h8L?^pLt}=_5`Ky2D`WuZ|eKljQ=Y9xya1$CjR}O6A#>fuMem%K7VVK z{4Wg#hllGM8I&0oJeqH}tRejSr$x2vv>dne|K7X1;Gq+%ns3y51_tvs$$xW}?Miso zaj?I4XWv;yfvxt946Y0glR2;b+VG@`;YQ4lkDnhhGprL}cy(x9IOB)hd~QaAzXy&p zFueONel{`Tvx3)2!-Kwy+UGGO(WVAtnXiSqu#)WEigP_&0}vfhXzz z``epWeqvx?_;4$>-t^67Mux9U2cD+(>v3^0W^gh1%${Xkz7EtxXJSw^JR`zzL@kkP zZsYmL<+jI|6{_l)7`jv#OaAV(|8!#Z)Q817#q8(J-_~b_*~eb0VOsXq_isrhs71MW z{bREm&u`7s`xxQ-`myB$s~=XnFWdVw7rFec$zeD%{m6M1hE+lhXH?p@a4|47O!zx{ z5<}2L|HF(qo(#E7J(HJAsjE-mWB&D*F;UjC$fsq>#lv1)A`A=4S(&C;wQkcicYO1! zg3mY9bH!n&Nm^c$)z<6APE^uzxZ&m3k!my#T zVkSd__WU3R%?MUC-&;4-7>@`rgiG4T*Pr02c^AWQg_*%MGDo&Df06?u!&c^o)z{>t zxl%L=+nFSISd8CZ-+sJ?=|{}{xcBlm-)}tY#^4|5zG8$x_CKNzVk{?DUnjtFho>;Q1lSxJHge;luL!^!82$^W0k@jSX*aZ(sel zx~z|>A^G!4^#dKbKVQvtWN_eTJTSAqrl)qDfFmD+L5(_Sbk&ogxP{@#49D)Xi4NcQ zKk~NL3JhD)w}+v@jlp5E_m25%jDKIQjXl9AAj}ld`Mg1Z!D_SjUIr&8hK%`o|1SF6 zE-q&Hv2VWtyF;IhlA7_(mSS55m23CsGaq`+5$`Iqp5colvW5Ip?IVue^m>tUhK6`T?JS6>L zs^OEm`our>YuN-QJ0DT|=X>4!2(!bqXR76H`$FnDLc8jxrPi03Cs)vOb*42 z2Z|XOUPwN;eZ1#~{Kn<~-?hJLoxdkc(&pH8^PHQDUgQ^_6JTK5BFdoP%ixeDo7Ttf zu+r-79W4ge*9V$Aw%(X2{_g9y|1aJ1Hr$f@|J!)(yYF-NPhmWhJV%S+SI(|D)&t-E zKDa%PE91-}e_Mu{+rOd1(<{Uq;?nwm|7Dfq;b82l5OAGlC|WFSuC_mvMM}Z{PK1(`k{vwadh2 zvrJ%$KL33q14AYg!xR4{5wl<4ux4~>lX|=KY}l@2>A!d?SJvqga{lD&?hm{i85*ufw2LLxWJj|yFfxEz{Ty5QYaTFLIy2n3 z{r`!&{mPcV$9ko&K6#?TReR>2{R~fzh_45&IGE(|dq-Zu(;#Xm08`*No)yvJIdg`ve}UwqX{s~6e7Z99&4b22fq zfQCpLiuW%$7qorrIor)D!52T?zN7Cu%OuYF@0ZKj+qduk`*!P%-S@ugl^&NZS5al` z;bg4%bW**2k=&!dS3Ey>{r-Pdtc-R4KF<$lOAh3Cz|3I$Xul!D zhP=C0ph{^yV}o{@DLcc4sfmlfp3nWebov&PgcCn+yt=si)w$_5=PrCMkX5hs_lhZx zue8}a|1skM!T%dA)q=K{ciP%^&O0xCAmmx!Y#04)_eCF{^JMB!x*zh7_sEvDGBSJI zKC>mrF&ap9=kIDyh>1P0`&#+e|a|vKl}Ht z^Y-7r7Csf7pyn&J{;KLRX`|AMuHsi&8QRv%T9ss2y!LPXzyIFPiKk5b8%{|-cye;` z)oli!|G(LMK8%@(rQtargTV|#b%q6Qzb)>yB+U6Anc&_hv+`W*tSuY)7(GO5w)E{> z{jXB<;7hH?ZAp`Z*UL7t&RQ#1%ei3TbOWBZ=2NE{%PxOud$LyU%dFyGi)|UW&Kz2n zx4zqUZ_hlvcfK=oav2(e-Sn5;pSol+s3~9a@$Vu5h9f3+?uq?ueU8|SO&so-ObnA+@B7FWhyN`Ou78=@Q((r(5Y>M#wA?PWQ)Uki!(fUW7}0{Feh;N$*%z)nr|$t z{UOn6V=Bzxu$XCHUh-=1{MY5W-p?5{7#Y2;ZS)s?zw~JR%OmwWk52=4UD+7|*4_N? zz+jLa&BV~Q`H#jwO%{Vnh6fwZRxpKFGVV}hn7}YWjd9D)WmDtDs?oW%tcj2R?A|jdEi+P#P@TF2k_!>n%r_W{M}kAaEd6C;BG3xnQA zeTD^W3<8gqX?ZfF-u!0uZ6U*gl{f3=bKCw+G)jGW-I>`(k+D>j(Ik|yK$USzDB}w! zAqPDMj^4lgJNK{p)XKtgV-Hi##t*;DzHD4?|NKn-sWX*t44;&o%s;f+0X)J|!mxn* z`~1Ie(qGL?pBEVa=aKl;MrQU^KfW$@?_c%%-EM!|4;P+a{Wy8~mFfHc&H44pczqaK z|3lLk&80cZxHsxXZ_~&>3PAg-m(AN6%|+g zn)%hD*2!5{UzKM4J)3>?TBr1!Z6z0(1pasJ`aPS0;oETrhVUDz9rYZk6Q=Pnu-WPN zNd^lG3uoQlmb>e?=hs_%zu&WFVtQb>XW49q<}->6L2Z6(&X&F@Zef^W)&~lUqST+; z85zQ#-JSw2z5R2uU_|G_3q!-H~9a|ls|Iy|1`DS zm?+hngI9lix$M85hqd_rnQPzP-L*DhVF)>)%uw;_=lt+Ch6Aeq4z74`YeVAUH3bYC zR)_npvj2Z&%5?#TA4lw?WEl>K@qIWV?4QEQP%T%LoKbG`fj{f{-u(f$`Tn`&+I@I@ z>Ve@Nw%To9&ED3Z%-WYWJCc8HX8Wg(gwJBJi`MOWYE=4n?&m9K%k{%ntBbEp&DIY; zef@m+cH4s1U5UpZDKIeHV+?Q;a*vy>#!*H>ERl$|QKdNha zzXxi5jMw5^7%_p9VS?IOW`=q7|9)~Y%qcu3xz(xR^LhLDwUL{b&06Zx{QN`JTm}X& zmU9dZj5oGa%ul_1sQ!r0YXNCS20g*be@(gyAJ}DPi+zic=49N!*f2$aA^gVEV1L`G zrYsFi3}RfGm~mnYC({;1mIk@~`PHuuIwt@4$iC;~Pa-yX^CJ@BiPgj@$p+`0J&A{i=T-<^OL4H8O0!-zly#Ww%W~ ze4_YQ+~GIB&)6>g_Wpi6XHJEG8iT{v-zA@ui`l;afAVbNeZv}FpY=BqydQNO-o%#bSl$j`*k z{@pj!ZT@S91ul{f(hLR;3}3hI|GBd2$IAH7X}8K`entv1Y^eMG`PD`B__Zzn^y@xy zfA#G&byui)A>##&nB`Vc#!v zd-<;aq2K)*>%2Ct{&sJr+P9i|7KWJpFINg0ch+65y28M4U@z;U`lt{5`F0gN>mBcB zuiqQ?wB9eeNPxCEHnMVd}GS%`pJj(_B~FYJD;K9S{uU^%h&IPE`;29?fEq)GW)f_ zg*%V8GcxqCI|v_-7q3{8TrJLW;^W`h*=&3JZvIwV#XH5rhl363NgIX)u6lJ2jjL%# z_KPy?SmVj?fQ#{f&!_9__C&Gf9B<@q&P=pVdVOu}YM=VQ)6UC#iv7>v-u@=w^K^Nc zhJ_EVx7yiVzrMMWS?1TD{Iq|$=JHic4HvceLjF9?vFA!ZvuA(p@3L2Y`78_^j5!Rq z*%>b6?fK}oHS_YaS2r9kEPinOxN+^&#^+2jr)AsyHMlrg7(_gnZloT(7t*tyq2b-J z|K?L!ChS`O`jPzFmhPGr+IrkF_^eGe)e0D_HUt&f{vj)=x?F#qx+Po7CF=|IPN`F}ZctxCN>BZ#~V4Lpzb zi*Xb@_T3)V#&F=tqxVbTAzE$4J0?R>+z=yvA-hdIB%ow5*y z*ME08^u2w~#BlrD3q}S82E~SzTn@s=?@tq0zO8=$Q;&@BQ@M7cep`;-y+4)Z!;Ou} zprtOw9It<>|BsJut=Cm}V7xtd<(p@>%lQu^F*1a4{P=WzesIFR?9Hj?SEeu|2)$7F zSAM5%vN*$zw4bqUi=>WfaMg*dv|{l1n`;iL-5B&TEg0x9gxoZ`s(VdZ@2T;D=^$R z)+@dGt9kxC8>K(23_XP$4Gs)~|6?~^Dt+aBedqUF|6&FO(Dd_FyK|PyJ9@i+*JrNY z`EKtFP^VLhnSu3ay&*@z%8ztPtZ{m2feO1$LxQXWdHe= z2Oqh;kS<^=ju1vNimq%7DsLWU9N1Yqjb!j;lU}!2Bp0&bH4>$U;VCNxtUCT*0n#A zBERq6@c+i+W`Tz4cRSrbF@UnxrJW28i4WhiFy=Bdod5UXx!p&54Nisw2e=c|L=q-k z-oc>o{rzswCyNUi8W@>YIDenNX&R$V)t8K^7x*W=$-S{5QH7tO_dh!a!_5DQYO-lJ zw&&in+obp9{q4>Exp&MAA2B+l|9zQlx#|T6!-nmk6$%S)+RZPK4Lv1mKc(;Kt$ihP z-$s1D^Wv@R1@+GVcfR|-e%C+i^_Ay8YF^4QEYo68W0uJw89^ z`8_e|_;9g*yS~fcdVflmfq~&4xH+>{hG9kGwf!s19XbUX-v58`|BTS@wruCm3>I%8 zZP1B3>XzI7zq|ZuxP0{vCWd7<{!M9VsN!I-+uq9XWR-F&_6?T_N?JN;L( zO?doIW9R=lo~##{6YlM)1ZS8X|Cci~upO;8;|NgVd~kaGzbhrWQ|j)N+kdz|^}zmT z%i34XVfYZU{V;#6_ubMLfu+aaRbTlv`}(Tm`%8L6;~17zGwg6^;1^1;_uVHxnZ@AS zcd7l?^<#hDc<}1$eaWAD4_*K8RW0q@&euD=gfH36-f_L2IaiU@Dq+EUVL53jRt64( zTURW;S7|V8aI}egsKjPJYo zU+sIm!pa4pkrq&O8^*w3qVs2SE6WrO<`X;Al%1NjUu-SSO-TGuIVHa(!peBVF) z(S8kP>K13FGAnH9tD0S`F=gL=FPVC;xxZ)3d@ph_?)$&udCd=hXqlfA>lDen6!rX{ zJQqWh!Rz@~r4!u#^fNF_K42~xd!B*8XHm@p`T4F_q|f*6%*$qU=(`^%@LPmQfx+Q& z{Nb-(a&ulcUOXOiy|U)-vb+0N@WfxAA3X7W6LZLk#S!JL3=guG-7nq{!_ctnc=O+P zhm?;U-+1iA+=qYf{8o@+-*xsAL&oo%$+^FG3Fl9>vU~h(o7J~{R^OQzHtn@vyU*TA zLCW`bu`NT!nSK8v=AY$%xxUzJpI*j=BOjj&U6Z-~H5r!A90~s1BITP-7 zm-D*u{1ROAg5ki|JK=#0Iw~v-ljL_XI4n8t#plh&Ft6~g97AnUW7$*%(1d!{&x>=P z_vtwQik5Fu5Lj@1n2lC=`GaMOxYa z=L`*e9RD)}5||jS1bld%_LvemjwUzv7wrs}~#7uN=Ad`^sBuxit(29^d~{UHa(d`=+#0S>o~k!%uyY z%`g7Bz4OnE`>wUmWSn`w%q*_86}cn9*6`Pg;lTA=hK60AFIUw2@ioj)Y0zb7==vDh z&&cwZg<+r6lllMtq`IBHs{fN&g}p)I{bmn){VU85j*7?2%&{sxHH+C{&E9Kn(|;No z2{Q$kz3fsQxHF{US+kIZJ>*2%bw9cxE-0Q*RVSleYFx~aYJ``yfftck?YO>QX;gY`w1%Fl*fm1xuESLyO0PwxN9rzK5Ok;5kA>~d*T?`x6Sm)% zerjJ?%6(mHvc>Yezw2ZeWf&5w@0D;k++|3(btQNE-7qeO6$}@i?3Uk~bpK103B!ur zeU&Gzu5mD|NVq|8LEft$a1>9y5RB?>|_=;b6-Uwk{^J zlCdF>pW(*7BOjN~i(mIKc;Ee5clPr$6ij-zRrg?A?D6BiUJ^m946c2k+B>bgUYOy< zhc)#Z%nz`N#{}HmVj(YL#>dd{m4Ty?LGe+y_NE(pH>Q2wS|#4_WBnPS+w1>_?I>cn zv4>SaX~rbZV`_|BR9TmF{woRe`<=JzFH4o3hDK)hwu-l|&WG!E-P;uXe3dj`+@fVi z_eX7gfB9-v@$++Qe=YkS2wFyYWtM5SR`c;6GDqyAPTMe8yyms}o-4y}!2V@yZ|b(A z{~z=0^E`4{^52a*7KWv-H>mgOZ~niwV}D+;?2n-1?Z!VeKpPPl8x$Ef^qgg!z~mfc zKi~3L{-@u{Pk&7lIN|$ky3IbBt86c}{b)bQ0B$kgtmkHUvG7N^Q$v64n`8^?`(g|W zW<0uSCOylGtMD zz5a7-!ghX*ulxCQ>UM69e^*zBufDsxd^NjVg@f&{7mHtgJT4#ZZ}YL`*RAXO!XmqE z7}y%W%X2e09Bt~2uc*6b@j+^B+J)094Of^Cs67h)y|TL~*z-}u<9Hhh%5!FC{rxlBR^NXv6#uL8 zj?YzCJ4<+yC0C|9tIh-#qJ8 z+uqmj68a`wy>ETk+WHt@?*FGA81891WG}){kbX}0wuQ5qQQMl9Gxyp%>c9Qv;$`_) zA6p`E^j`zVf5x|~qh93%y_2{mvw5K!Kf^AQvme^OJ!fKY{r@G{agF`E*$>XE{42f> zDoo-({V36AFwj}KGMw>3F+)Ld&K9GOX}z1jF8%&qO5R12mC&(B+3LGwAtN{(jEr&OJ`aCKlRG|$WyETH;p@5etJ>x36Q|Aid+_xCb^AX5tv{{!&wZUHGlRum zHlvm`1-76)M!#bMKI|_)deH03{^Fa8tZe=1alic;9EurAG{4QCCcatn+@sgiR^Lxc z_nUL~pVh;lSNU(i>G*znOBkaA$AW5x9d_{>TxK+!zEF4n`S#a}Qoeom=idFZ>}%e5 zcLNt_x{HaS$%cW2!RPk-eNS@(uN5&&*vgZT$siCgYtq|Ga+~tr{1a}iKDCiY$d+Nw zae=6#ip>r3JeQo~dKeg3>{Zg{%>22$|FA7X(KW{Nrq5i}#U*-g`+NTheEjYAvFRTg z-gW;M`ksHEmv!HH19k=n27_0O7q*=IeRtg-hR0dY=MI%OFd zE*<$B&)_hh@j&&x&+{Hu`uh5w6>>Cq%)4wq-|ItbzCJwMzW4Qfo64eVRWb~svsf-D zS2aHne{6T&>b4Ar;*HH881w$0D|EVNF3Ygvh;91ZWef})zwgIa%@=2QV6|$CfWcM9 z^M>zcPOi6{QT+et)W#Rrrthnpb9VWmdB=YK{#E<<_z{EWW#(yX?>DQ|FTJxkxAcwo z&hy*v&b3uxXFv0#dB%3#uUZUMd<@sOmFif|zrXEii$-mY;X~!6n}02@;+%4?epNZc zlM@Tt6c{!sT{dcX#0sj=-!deeQDD$!cMxYhu>1bsyehw=XIXfB*j^vlH7EDQF16}+ zJD=BlIPhaeWxu%S>c*dDPC`FebLAO=HdVOnIOcKJZpp(p|7LElOXOg9_xl;YmNSFF zWpOqJr~f{ee#G;!a7fBCHh8uKGdy^;J@xzb)eJX&)jlpxo>BarefRrsCWq^@<`##` z{+?5M#e47n(&rB@*n?K|d-wcbK9wPcp<$i7GrJcv!{0yN_v=@_&tLiYabG?Y!_K?k zayNdy^Dkt<1gm}7)dD}gr|ZcYaxp1LPM*gSz|dgA$iT$#i-#d=MVdj-wGEui@0)oT z6n@P+xurHEr$)np9{NMM+t%)BFx-Nv1RLG*q|%WNBlFLlwK_IH^NTzfAqe}4bEQ|!r8*%ur$ zDpP%Tf7iYL%ih@wGcbtPPiAL0_Me&Iz*2n{hR>`QRGJK(7is8v0<(I3O=V`My>|4Tc;HrQ6kJ5?js~Kkes(rlOuye-8zi%i0 zI4}8GruhH2y?(V^3=9{W3jdj~H=KNRf^k8$d_fVzmZd2P(~Eqbh&)w2{dMXm8IPOy zSQu**8JHNCbp8-$P+)Lia7bgAa7%vk|BR3F(QF0^6O%X?658!u96BOB84jMi{po}N zQ-Y8~jm>3qE(WhFH_fgx^7}4Hdv)EG;f0XTcLsy6uOH3R^Oa+$+MoYt7lT6%&-;Ks zx8+_p?e_gEnZDWief$aD3E6*^#cuI_d!LQr!U~Y{yqG-p@&_?GbpFzcF$91 zsya6K&D^X1cIJd#d-)h^JQ-LSJcJn%*cp-q*bJ1^SQx%AG3>ba+KPeUxT>8uUjyUf zszVBUcovq{SE;f+`?=AHla0}m!-k=ume=vh|Bqel?g|Vle-AHd(D+v<8+xlXV*TN{ z$$t{}zLPw-cJ_Mt;|C+_?$-Rh^S8fx?$2$~&wsr%ef0a;qS&PWcZ?eJ_!|l}m~V6m zEI5?P5X|WC(x^JO`0w|rOiNN3^!NQpTK++hLm~Ih(f#ZUEB3{SGcxRDW>|OQhgloL zkC^+5A2My{y)^mT&%Qv`GmqFS1q>9s3wg9Y_?n6QzpyL9UG}(hdG*~5^QV1S-1hj# zujJ$WmiPBvpZWgx&(4|mi{~7@e)mmbTm9W#rH9`v`7p!o`1PP)r3H&;pJ#S_cio0z z!E3jp=AsXL-^W99=rLXf6HckDCdrEo3mUlV3>XSHB9<%o3BEOCP&k_1P%L*wrGc6K z04J;Jwv+}p>1~q?7wofowb5{u346o5+W7OI{97%1AAkS4yw87f$I)vu_2*vPTM}Do zAzxLu>vv6T>C4$`n&Z-Y%HDmq|Mn*!;q}IEC2jw^wAV?TnQ6S-sKRG{bA$ie^4fnd zKHjtu@R@&fUG2Z1N2j!>tF50YVH{E;6P6pS$@7&w`1v3=SU79V-LML)KZZUf);MWxZx47eiOE z)&<|2zrX7I-}djy$G|tY&MklP^mEdH?5);jx~||ECxl z?vx(eS$ZXS62m2ynr)I*lRd6){xkbm@bT|wpH1Imw=?}?Qqsho&#!+g%3QiW{_f^~ zr7`j6c&s~01wL-5`Sf7gsTbKR|E{anIl{bP_5A%Y-{VjHFf@MWoBH^AKmX+SGhKFY zGCW!5_Tbk3^*jq47&4Xq9T#SJ;mhD4$?##d`*ascb_O3`U)Jdj#b*?*XKAXwDUzwr zl51exf2mP?pDGiB-_q8|wnOuF&pQ-(>rTCnCD^5}jK72|nZ4=HZ5xK1zbhXXGdgs> zzTBpgH0Sec=Sc_DCLh@P_3!gD8@4kt{IFrz_2*}{x6sL5LcgC%%wed2niQ5~+;K0UkpmaI^8Ri53-c+7D z`TU^Z)Q$<<3~j%4bQzpqt!VGb)jGJGyJWVRK z$D7~eg_sls9Bx^3*Mn-XU2F^oW_UgciCw#{c3GQ&!IAyqOgu{75^nQ?4Oj}dCh#{* zs@HOUwcgh+&(ux){?JCrhe}A^=~&H zRDAB9ej{)L1B<~^292347p6Kd$qi-jy1RepyZtjh?mT3h`fbkUeu)nby)YY#avIG8gwBww?*`PTMot(`lk-Lp5= z>CfgcGc+Bzd0&tUTEQvdnj-L?EdltV7MKw!f|JN>M__+18Sj?)tJxOsB1cVqAa_^-5XJ%-4^=qpj z!-d-d4UT*tXS}eRZ~D#d@Ehyv%nB0omd>j_v-QN)CPs%W+23l}rx#oA%e#?pWo{sI z{Cd80y~S?Xo&UGR#~W^pv1E90X8$~9hO}1)0}ebcu34K>f7^!PSK89n{}wlr&0|d~ z-W|9lD8RVB@on@@58v40$_)}i916K}j_hY(U}T78W{46x@Zh`Mqq=XM4;&x)*hwew zoO-5^aQ4A-p?{V!zp_~w7M8wwea0c~Y>Pw@!;70gzv}$m_WASI-^cv#*7qDZQM>oH zopJ2e0=deUGw1j?)tvh z)minY-c-x}?w6JS74SxxWdXy32VcWi$7)Ys!o<+XaH;C`uk(xywj9g_T^x)IcbP#O zB+aIOS;KHZu*^V$<%v?knrx}{eKHI>3@dTcxX2QT*v^$zB1 z2=Zj8{cFe1aQ}OJ@ci``zUNP~u6%Yrf3ESPeM@S0t@!qJIaBMM$Fr}s-nY5@db?iq zn!LSLg;NwjaT=5MpP8}Y)vK?93>UH)7U(G1baPiLFcfh8U|?7vvF`UlO9mUUO?lI7 zxYn{WY%G2AxGQsxul*m$ z&%nZvP|~)yMA9L?{+tYhs(rlX`}v+B&;Ha*n-SQ5a$3BVbp6XLmN}o7E6C&=Y+}uN z`ILK+>qG~J%*P7DLk>YwHH?XOFZ?Vk5@-|O4vrgmQ$Eb9LJ z5MX#=2|6bs_dMf-$DebB7A{TtTfF1R@|55DGkpw7|KG`CSXaQn%cQY_WdbJy2g`(O z*4OLx7+z#ZFnHT=FuX|RYq-<-C5ItF;M1KVp8xLz_U)HTImb9b>w)Y%HktgEV?vy6 z%nX-(Oqci7#u}bb6Azor&Y-uFVS8u6UFHK<-b>q;{?GL>QnO^VyZiEUezcIooIrLC zhItIjWEgzg7+R_rw&5 zweL6o7i4fKeJjPu@WPbALpS-l34??SQ$q-ULkPoy8IPscJNhvgBur_kc^qB7V1<0k zjSI{Q%lc|xTD@Jy;;~GIp@cJSR^#>a=dXj^R8i~Q-E^t+$ZMgezO9m5T)#~H^i87> z6p6Qas--6}v{f)1sk1A}mH+%N@L+!TfB&B~%Q*7a6`b4X*Ol)0>R)c{K0{wlhLvmM zcY4HbFG<{FA;h7u_WYy$?->qU2RGU(_A+v{GW=j*FrPU;{D{~I#tGUj2e$N;?v_cF zNVbuw`+8XaIAg;Vt8c2Vy_(8KH$GUTv22GHAos7nmy$ncpZfo>Q5)~Im(TX>ukHK$ z-dXnBHYe7*%m+*k_brMkzj^%m(%;2T7$m+6ObUAU@A0!=@0%HRg)>MnG^~_fcZL_# z;&|Qrx}JmKg#=5&Za!{?2`UW}84?c6tkmOSD5_vsQssCh?395J1J4$N2Cp0Zb$`!K z-6)qOC^)iTkZoTg9 z5A(JevM{7y$z)}i#eAUj|3RyzzV_>cEE#^))L)5YT<~6Omi&W*Cq=WK-&(ziL#2`7 z(l0G=TGwD?n0MP+{nV`(wh4x}-+yH~!NJg!dvjCj)T4RzZ*CY~FWhis|I=Ta=czkQ z5M=o9>9l^hQ~m$H{d}(Wc5VA285Fjhvt902#`it{F0YW><(s8idot(jeg7l)ckS=z zM+C0N9-ntD^ZQPZ;~dk>QnsxBT(KbJ4(KqMsGQ8>+nxn<*w*dkVwk1L-thI`>^S}- z6)RPJ{W3l?c+}R{e0PssYT|v*e&y!ZD;HUm{!!b0{q7%M#r$RW?Kj+Bzd!13;ptB~ zN}dW0TkN|23ou+*n9}g(%tI!IUF-}Jo(yvpGA5|AJ1k~+@NW0}u*=t1gf%bORm;er z@a>`ogM&0v!wswN`>by6ytDu1e1)D&SB8XB>+(-OlCP@US9kwkt>F>hs~eA7z1^ph zxiM*5pVjBmD~aE8`M=wLX`Ja2xAOb;64{?J-_^e|958Aq**14Fi$Umv$91`X3wUPC zx$tD+gWq+ZW9#q#4YZoG?8@J#+N>{xPgvf4>3rP(uHDx^8S_2w%#Qi@^}hX;tquU?u1tmr(SOt#7_NTHR%KW)pCRGvtE+Er{6D0~a4|qDLFVyZpO&8s)K-7H zzFmM}GW!7!j)u5HebLYNy%S)Vb#zu0!wi=ln%(s;zzHPZdy@TZhtE?z7r)P6Y4x=9 z%0_)r?_T308gE`azB9j9r0_>RL)3go-6;E=VZ*s)|Bv_Y zTk-Gf%iLGt{d$sy6>smyTSR>==DBvX@Im34hSuDV5>Ce!-d3gePR z@-hDo?qN_^a;`SkaP5mv8C;A8Q*UgpWN4W;fBpUK|Cdev^Yhh~c7}#^*EZ_QKJPQ$ zqw%ib=Cq3U%hs)*$IRejHe(+10u_b@9}coHIIUusvcvw?JeSGFb+MeEXZakPp3HN3 z+mGF8pS=#utPkcm@G&?0%E7hT-prty)9Upvd1eMH0k#8T|Cty*F*VFOqxs8W!|SA- z>&u?b`EJI`5K}2MCqPe>$zcENHK`1S>%E_{q^R<~h(jSxx z=6zz|u(glhpZ{Mq=|%D1i~XF8FPfj8;dDr^D4qDc_;X(H+#f-fY6WezPfty4K6%nJ zS+rr2BE!B^AJK*ge!+KtFMj)dKb-TxGokldt(-Suf!0LyEl!Ap^Bd&ZSVL0-}csOZTsaAzSfc9fzbbJrAdqqN4{U` zINR|*(vm@g!$H4cq6|ZoZFSz<>b$vcrqo64mO8qB9`k`MS8N%Q&Yi#h{&xL~`G2g^ ze>+WLnC7=6eEJH_z~iy=pRyjl@iFFoe)Iyzj6TjeiR>Ty1rAJMUa(T7VWAv@;d}oR ze=lD7J-z7vk}01ab3MOOnzWr?@Y}ktKKoNmw%xzBKHvX3>+Zz+HLPJ?CY&r2uCagA z2le@<$&)v!gD|Y>P_4;bH{f~{Hq3C7n z*>69xvim*%|7-oLyZ^m8{Hp){XUDJY{~!N-CHvk+`Q)|OuPX%^4w$B{O17V~cUEEf zb>9DHW^FrqGvBX%-LG3_pWoguuhYENYV}r+@yY7TdZq7=?yzKFU<%M@m}YVQgXEjn z&$shVi~7FreAwmc1qZyk)f*Wu?E-D5E4mvXl-9y_|$O03X8JTi|&O!j18K`eSgs3 zg_aB}7#S9P{I1BL@csGv_kVZV$!j*<6N^6o_B^jhQ19mdQug<^GJ>-4F0FsZWf}JT z|NDNu4}*hw&e>U}2Q3+ryoGM{XrFt1V?9GdQdlLAMzn0TE#thi%m=pZU2h*g$@21i z&Ana@XMVQI#J`Mqd*^ns4MWis&K&2b%`%U-@03Z*ydhBh*P@}5o8i@uKVSFSr(T;s zTSVVfx;|@L{kea^X@7S9UjOlPtTt#;b#3>f`a6sVtndFkcgoNH?-xf;;g9pqzS(-O zK3LA5p@E@6hk+r7gQ3RwNr=kqO%K5R-YczpTx5&x|Eql-{^`fANz4mO7&4^heEIq} zS4yXVK{$+~fRUlHewIJejioogPg3Mmy!}m+y}^MYGgj>XV?Ks^AN$H1euy(%5UhS3 zeLpI7as0NNn;&+I${o(G4y%m-S-OYefJt!PEXCuhtPExo*Mdgwl37&3IbO&y7(T!5 zqO@UG5mU<(h7H#;`#Ub?d3zpMmi*-RBw++MZ$ z#szc!Vqq|O!RWyIKV^Z!HD2%3ncG+&f4j}|>P+#k+|pM&e}A7Fe?RHJvn@kR>8;{D z^||l2-;Iy8+;`>QjmM7})chnJI{)U2tt!3w)&6?n@t$DeD>)(z5ef|r41)jG3jJqd zU|~?%@rav2fZ;+uLxbM?Dm*su>r3daBZ_&HGzyALN zc6I&`w*IF(ZO;F^!@l6vFP^^B>2_ia9Zz|gPt0U~AY4B8{*E1>2J6{J`$ZTUKEIY= z(8!x`V4eQAY1{X>f}-#vBf~bG{~;BZEvn-8>+ZJGs|AghBwd-kPWgUFPqk`=jO2|} z&C{2>=eIj_$|$P&&-fW1X=S358+rY?ed%ATK6SHfyY2Q{-^9Os-2HOB^6}FHzf!ZR5{>%71-*^PAU?e}l%8 zj;=6|b>9~vTXyb;A_IJV!7cvU4SsrwFQoOi?$`CcU;1@!_{z^m3S%E9@6VNqw?E5# z;48z4uRj+oHF#(!!OryL-=F1m|EH`nUcWy6(As-j_vvfKpDbvRxjp^gzhl*63=9#o zTc&|lwdD%`e=NtOpu6WRB(jgOgL;3yN-^g@<-fWv{N^TP?5O>UVE(SY8ZX&z5g!kW zwjA%5Uw>qd=LJW3(e9N@BF73ilXvZ(@y|>*_WITGxyAA2wf6fyzT9~GSmD?9DuyLB zb~%4J7y^D=KEAAW`kz1Buddc8587*0#CqhN{q=7<-}B%8miw7u!UTrGpZSY_d}nOn zulvv(H~HG$X`l9SF$gdiOk;4+|D3M1aCtSujbC3St7>cF>tFq_eAV&YbaQP62LqSW z>ndyou6Zy5INogxAaBpT}IkyG{Q7j~maWj$fUx%UYT z?I*va{qr~VCtDg<{yx96*4Hy3dLpxfLPN)Yv+jCvh6f!kj0}HS8Mb{710|4+%nTaK z;QhROt&Pi>8N%yd{ZLKn_&tSX!`Y@C+gp5QFD?`koOX_yX z+dlVR6nz{cf6nyV9`$SAubTCNQcN;4!wVlPJF~L~AcI%ek6%3w8qt;irM_>a)hFLS zFY}9q92yvuCLCvGI3UEp;KVSQ-N931c{Sq{f&V*;dQ2X!owArGeq~Vgoxhih4IO!- z>rZ_%b)0_<)J#+QcbkJD=h1vKJ%$6N%Z{G9kmGc33!l!%s#nKd;MJ|1J zOzpD2JJ-$UWcYDyBO}A%->+I2KsmNYmSI6#y-|T!oO#~<%$yC0wuS!tb8FsxTW9sG z^xTW7MT&j0@uwJ0eKwoIcto(4Y{(h4zHbVvN8m<)XZjV@O)5w?I8n$G>ZU( z0z<-@(+ok<{~Qg!T&#;))Gw9(`xXDbrSktXZXbL8?e{VH=Ti6WJT~Rs-F5KZ-fHdU z<6kWIO}liylTrNj`llxtCltN^JxSnKj?6xLukPn$;Y$% zmhbwuyl=iR!;@eC*1Y_D%aTDs!J(!8Hba9aIMi;uel%~hpBBT0wbI-SKFQ0N7%tDS zV%Wf0!^IHudIv)TGZP1c0E2=jL!eA>W1i5(kOi|heZIZv%X2yV(*GMvk9qI>{ans| zDW3%^gGF`!GVVV&{@t+pu=4u)FTZbpef#>wbB+)F?`+Ip{d;=vz8!-g7lV_1{l@v{ z13u2Qs_R@*ztrgO>{B0(*4YK^voDURKlW`dD+3>gg2IB-L;GJpvS(u`n8dIv?OQE_ zLwq||#^vPeKDBFR*K06rcq-t*$$#OnVGYB9?R}?DC&w@x`0};Wh>;PoJ}lA3ArRd*ACJETC{`zb1o#k@XtphLG*0vpJrJF>;jd z_Mf}9d~aHlU<|_qGupu=1Uo~3PH^M8={GL3?(%J!o%W!(fBvrjg+5Ft{w|IR z=WtjjnXvJl>VhNR<-Hl2u1;lM6vEfAthi;$jJ4l(ekpdfT^{7X*I}S%>2PlEbEndC z`~1KAt>NSlco<(Urmr7spMQ$l+J}~`IgxE zf9aq6VLKy(ILn1I+zdL&mcM=UJ}BP)dF;eSz3&mp+aJe)>Lx~p+rP7<-N7Xs3xi3Y zT>9nQzuVsYs+v|Gy+8lYmA}WY2(G_2;jr@sErAIye=W)5 z|IYBY?%<`VbKakya^HPJaev&3Wz&<@pRurYyg1Lu;MBT#OWxKg@G5(o&hKBZx9R-; z@w}CZAsphQYl8Z*>HA(28SQwukro{I@@x)4y0Y*&q4(zlmGVz^P%v`Fzdw>!-XI zf5j;9`*#FmL$$t8qc|IL$b8oQ9sdd-+xZz8lKB~Oj6ZC%SNz4p_E$Lh6T^kywU3v- zvv(KTxlaA3cI0tec7_j?3`=6{t(@EI&lRpb+`4R%Lz%41k~YxP;fmMgvl$(tC;xeR zj(I}VGX0cl76vPp1q=&Ls?5^7udl}6FyX%Y27lXv&RNCxk1Bn*l+f^M*8}m3prxXq zVvC7k5ko`fGROIi=3i%fy?M!S;3|03TJ?2@xoGm;X^+o~GEInLZLoG;{@+u7>Ve!l zMNB=;d<=OU4${RvPj1+YzFGM6&zI}Y+sz#rqB$Jys+tGyi}#UZSh&BRfx+(UgQZFz zJ~20{9dNj?@#Jq!@RToT(vXD#T=_A8>SzW=hGZ6oWxjL2Phe=6_k>U2Ai{N7tPKC< Z%`Y?D3jQ_a5Ca1PgQu&X%Q~loCIBTHDN+Cc diff --git a/core/assets/version.properties b/core/assets/version.properties index 8fb8eb020f..8e04aacd74 100644 --- a/core/assets/version.properties +++ b/core/assets/version.properties @@ -1,7 +1,7 @@ #Autogenerated file. Do not modify. -#Sat Mar 03 18:05:41 EST 2018 +#Sat Mar 03 23:20:20 EST 2018 version=release -androidBuildCode=335 +androidBuildCode=344 name=Mindustry code=3.4 build=custom build diff --git a/core/src/io/anuke/mindustry/core/NetServer.java b/core/src/io/anuke/mindustry/core/NetServer.java index fac5247df8..a10963d50f 100644 --- a/core/src/io/anuke/mindustry/core/NetServer.java +++ b/core/src/io/anuke/mindustry/core/NetServer.java @@ -33,12 +33,10 @@ import java.nio.ByteBuffer; import static io.anuke.mindustry.Vars.*; public class NetServer extends Module{ - private final static float serverSyncTime = 4, itemSyncTime = 10, blockSyncTime = 120; - private final static boolean sendBlockSync = false; + private final static float serverSyncTime = 4, itemSyncTime = 10; private final static int timerEntitySync = 0; private final static int timerStateSync = 1; - private final static int timerBlockSync = 2; public final Administration admins = new Administration(); diff --git a/core/src/io/anuke/mindustry/game/Inventory.java b/core/src/io/anuke/mindustry/game/Inventory.java index c3b48b6459..99e4939ab7 100644 --- a/core/src/io/anuke/mindustry/game/Inventory.java +++ b/core/src/io/anuke/mindustry/game/Inventory.java @@ -26,7 +26,9 @@ public class Inventory { addItem(Item.stone, 40); if(debug){ - Arrays.fill(items, 99999); + for(Item item : Item.getAllItems()){ + if(item.material) items[item.id] = 99999; + } } } diff --git a/core/src/io/anuke/mindustry/resource/Recipes.java b/core/src/io/anuke/mindustry/resource/Recipes.java index ef7985717b..91c24c1120 100644 --- a/core/src/io/anuke/mindustry/resource/Recipes.java +++ b/core/src/io/anuke/mindustry/resource/Recipes.java @@ -26,11 +26,13 @@ public class Recipes { new Recipe(distribution, DistributionBlocks.steelconveyor, stack(Item.steel, 1)), new Recipe(distribution, DistributionBlocks.pulseconveyor, stack(Item.dirium, 1)), new Recipe(distribution, DistributionBlocks.router, stack(Item.stone, 2)), - new Recipe(distribution, DistributionBlocks.vault, stack(Item.iron, 8)), + new Recipe(distribution, DistributionBlocks.multiplexer, stack(Item.iron, 8)), new Recipe(distribution, DistributionBlocks.junction, stack(Item.iron, 2)), new Recipe(distribution, DistributionBlocks.tunnel, stack(Item.iron, 2)), new Recipe(distribution, DistributionBlocks.sorter, stack(Item.steel, 2)), new Recipe(distribution, DistributionBlocks.splitter, stack(Item.steel, 1)), + new Recipe(distribution, DistributionBlocks.vault, stack(Item.steel, 50)), + new Recipe(distribution, DistributionBlocks.unloader, stack(Item.steel, 5)), //new Recipe(weapon, WeaponBlocks.turret, stack(Item.stone, 4)), new Recipe(weapon, WeaponBlocks.doubleturret, stack(Item.stone, 7)), diff --git a/core/src/io/anuke/mindustry/ui/fragments/BlocksFragment.java b/core/src/io/anuke/mindustry/ui/fragments/BlocksFragment.java index 65fc790012..5e798dc40e 100644 --- a/core/src/io/anuke/mindustry/ui/fragments/BlocksFragment.java +++ b/core/src/io/anuke/mindustry/ui/fragments/BlocksFragment.java @@ -2,7 +2,6 @@ package io.anuke.mindustry.ui.fragments; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Colors; -import com.badlogic.gdx.graphics.g2d.TextureRegion; import com.badlogic.gdx.math.Interpolation; import com.badlogic.gdx.utils.Array; import io.anuke.mindustry.core.GameState.State; @@ -115,9 +114,7 @@ public class BlocksFragment implements Fragment{ int i = 0; for (Recipe r : recipes) { - TextureRegion region = Draw.hasRegion(r.result.name() + "-icon") ? - Draw.region(r.result.name() + "-icon") : Draw.region(r.result.name()); - ImageButton image = new ImageButton(region, "select"); + ImageButton image = new ImageButton(r.result.getIcon(), "select"); image.addListener(new ClickListener(){ @Override @@ -252,10 +249,7 @@ public class BlocksFragment implements Fragment{ desctable.row(); - TextureRegion region = Draw.hasRegion(recipe.result.name() + "-icon") ? - Draw.region(recipe.result.name() + "-icon") : Draw.region(recipe.result.name()); - - header.addImage(region).size(8*5).padTop(4); + header.addImage(recipe.result.getIcon()).size(8*5).padTop(4); Label nameLabel = new Label(recipe.result.formalName); nameLabel.setWrap(true); header.add(nameLabel).padLeft(2).width(120f); @@ -357,6 +351,8 @@ public class BlocksFragment implements Fragment{ return; } + int index = 0; + for(int i = 0; i < state.inventory.getItems().length; i ++){ int amount = state.inventory.getItems()[i]; if(amount == 0) continue; @@ -367,7 +363,7 @@ public class BlocksFragment implements Fragment{ label.setFontScale(fontscale*1.5f); itemtable.add(image).size(8*3); itemtable.add(label).expandX().left(); - if(i % 2 == 1 && i > 0) itemtable.row(); + if(index++ % 2 == 1 && index > 0) itemtable.row(); } } diff --git a/core/src/io/anuke/mindustry/world/Block.java b/core/src/io/anuke/mindustry/world/Block.java index 2bb6322367..00b36eccab 100644 --- a/core/src/io/anuke/mindustry/world/Block.java +++ b/core/src/io/anuke/mindustry/world/Block.java @@ -170,6 +170,17 @@ public class Block{ Effects.effect(explosionEffect, x, y); Effects.sound(explosionSound, x, y); } + + public TextureRegion getIcon(){ + if(Draw.hasRegion(name + "-icon")){ + return Draw.region(name + "-icon"); + }else{ + TextureRegion region = new TextureRegion(Draw.region(name)); + region.setRegionWidth(8); + region.setRegionHeight(8); + return region; + } + } public TileEntity getEntity(){ return new TileEntity(); diff --git a/core/src/io/anuke/mindustry/world/Tile.java b/core/src/io/anuke/mindustry/world/Tile.java index 4d63045707..727c7f10ef 100644 --- a/core/src/io/anuke/mindustry/world/Tile.java +++ b/core/src/io/anuke/mindustry/world/Tile.java @@ -6,6 +6,7 @@ import com.badlogic.gdx.utils.Array; import com.badlogic.gdx.utils.reflect.ClassReflection; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.world.blocks.Blocks; +import io.anuke.ucore.function.Consumer; import io.anuke.ucore.util.Bits; import io.anuke.ucore.util.Mathf; @@ -227,8 +228,22 @@ public class Tile{ } } - public Tile getNearby(GridPoint2 relative){ - return world.tile(x + relative.x, y + relative.y); + public void allNearby(Consumer cons){ + for(GridPoint2 point : Edges.getEdges(block().width)){ + Tile tile = world.tile(x + point.x, y + point.y); + if(tile != null){ + cons.accept(tile.target()); + } + } + } + + public void allInside(Consumer cons){ + for(GridPoint2 point : Edges.getInsideEdges(block().width)){ + Tile tile = world.tile(x + point.x, y + point.y); + if(tile != null){ + cons.accept(tile); + } + } } public Tile target(){ @@ -236,6 +251,10 @@ public class Tile{ return link == null ? this : link; } + public Tile getNearby(GridPoint2 relative){ + return world.tile(x + relative.x, y + relative.y); + } + public Tile getNearby(int rotation){ if(rotation == 0) return world.tile(x + 1, y); if(rotation == 1) return world.tile(x, y + 1); diff --git a/core/src/io/anuke/mindustry/world/blocks/DistributionBlocks.java b/core/src/io/anuke/mindustry/world/blocks/DistributionBlocks.java index 675820d989..c4840f1f17 100644 --- a/core/src/io/anuke/mindustry/world/blocks/DistributionBlocks.java +++ b/core/src/io/anuke/mindustry/world/blocks/DistributionBlocks.java @@ -2,6 +2,8 @@ package io.anuke.mindustry.world.blocks; import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.blocks.types.distribution.*; +import io.anuke.mindustry.world.blocks.types.storage.Unloader; +import io.anuke.mindustry.world.blocks.types.storage.Vault; public class DistributionBlocks{ @@ -38,8 +40,17 @@ public class DistributionBlocks{ }}, - vault = new Router("vault"){{ + multiplexer = new Router("multiplexer"){{ width = height = 2; + capacity = 80; + }}, + + vault = new Vault("vault"){{ + width = height = 3; + }}, + + unloader = new Unloader("unloader"){{ + }}, junction = new Junction("junction"){{ diff --git a/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java b/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java index e69b377800..58c6c4ed41 100644 --- a/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java +++ b/core/src/io/anuke/mindustry/world/blocks/WeaponBlocks.java @@ -160,7 +160,7 @@ public class WeaponBlocks{ shootsound = "bigshot"; inaccuracy = 8f; range = 80f; - reload = 5f; + reload = 8f; bullet = BulletType.chain; ammo = Item.uranium; health = 430; diff --git a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java index fdeb8eac44..e7679c6658 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/distribution/Router.java @@ -9,9 +9,7 @@ import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Timers; public class Router extends Block{ - protected final int timerDump = timers++; - - int capacity = 20; + protected int capacity = 20; public Router(String name) { super(name); diff --git a/core/src/io/anuke/mindustry/world/blocks/types/distribution/TunnelConduit.java b/core/src/io/anuke/mindustry/world/blocks/types/distribution/TunnelConduit.java new file mode 100644 index 0000000000..7933340361 --- /dev/null +++ b/core/src/io/anuke/mindustry/world/blocks/types/distribution/TunnelConduit.java @@ -0,0 +1,64 @@ +package io.anuke.mindustry.world.blocks.types.distribution; + +import io.anuke.mindustry.resource.Liquid; +import io.anuke.mindustry.world.Tile; +import io.anuke.mindustry.world.blocks.types.LiquidAcceptor; + +public class TunnelConduit extends Conduit { + protected int maxdist = 3; + protected float speed = 53; + + protected TunnelConduit(String name) { + super(name); + rotate = true; + update = false; + solid = true; + health = 70; + instantTransfer = true; + } + + @Override + public void handleLiquid(Tile tile, Tile source, Liquid liquid, float amount) { + Tile tunnel = getDestTunnel(tile, liquid, amount); + if (tunnel == null) return; + Tile to = tunnel.getNearby(tunnel.getRotation()); + if (to == null || !(to instanceof LiquidAcceptor)) return; + + LiquidAcceptor a = (LiquidAcceptor) to.block(); + + if (a.acceptLiquid(tile, source, liquid, amount)) a.handleLiquid(to, tunnel, liquid, amount); + } + + @Override + public boolean acceptLiquid(Tile tile, Tile source, Liquid liquid, float amount) { + TunnelConveyor.TunnelEntity entity = tile.entity(); + + if (entity.index >= entity.buffer.length - 1) return false; + + int rot = source.relativeTo(tile.x, tile.y); + if (rot != (tile.getRotation() + 2) % 4) return false; + Tile tunnel = getDestTunnel(tile, liquid, amount); + + if (tunnel != null) { + Tile to = tunnel.getNearby(tunnel.getRotation()); + return to != null && (to instanceof LiquidAcceptor) && ((LiquidAcceptor) to.block()).acceptLiquid(to, tunnel, liquid, amount); + } else { + return false; + } + } + + Tile getDestTunnel(Tile tile, Liquid liquid, float amount) { + Tile dest = tile; + int rel = (tile.getRotation() + 2) % 4; + for (int i = 0; i < maxdist; i++) { + if (dest == null) return null; + dest = dest.getNearby(rel); + if (dest != null && dest.block() instanceof TunnelConduit && dest.getRotation() == rel + && dest.getNearby(rel) != null + && ((TunnelConduit) dest.getNearby(rel).block()).acceptLiquid(dest.getNearby(rel), dest, liquid, amount)) { + return dest; + } + } + return null; + } +} diff --git a/core/src/io/anuke/mindustry/world/blocks/types/storage/CoreBlock.java b/core/src/io/anuke/mindustry/world/blocks/types/storage/CoreBlock.java index ba4e6a9e0e..0cb3116950 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/storage/CoreBlock.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/storage/CoreBlock.java @@ -2,13 +2,13 @@ package io.anuke.mindustry.world.blocks.types.storage; import io.anuke.mindustry.net.Net; import io.anuke.mindustry.resource.Item; -import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import static io.anuke.mindustry.Vars.debug; import static io.anuke.mindustry.Vars.state; -public class CoreBlock extends Block { +public class CoreBlock extends StorageBlock { + protected int capacity = 1000; public CoreBlock(String name) { super(name); @@ -32,6 +32,6 @@ public class CoreBlock extends Block { @Override public boolean acceptItem(Item item, Tile tile, Tile source){ - return item.material; + return item.material && tile.entity.getItem(item) < capacity; } } diff --git a/core/src/io/anuke/mindustry/world/blocks/types/storage/StorageBlock.java b/core/src/io/anuke/mindustry/world/blocks/types/storage/StorageBlock.java new file mode 100644 index 0000000000..a0b2333e95 --- /dev/null +++ b/core/src/io/anuke/mindustry/world/blocks/types/storage/StorageBlock.java @@ -0,0 +1,25 @@ +package io.anuke.mindustry.world.blocks.types.storage; + +import io.anuke.mindustry.entities.TileEntity; +import io.anuke.mindustry.resource.Item; +import io.anuke.mindustry.world.Block; +import io.anuke.mindustry.world.Tile; + +public abstract class StorageBlock extends Block { + + public StorageBlock(String name){ + super(name); + } + + /**Removes any one item and returns it. Returns null if no items are there.*/ + public Item removeItem(Tile tile){ + TileEntity entity = tile.entity; + for(int i = 0; i < entity.items.length; i ++){ + if(entity.items[i] > 0){ + entity.items[i] --; + return Item.getByID(i); + } + } + return null; + } +} diff --git a/core/src/io/anuke/mindustry/world/blocks/types/storage/Unloader.java b/core/src/io/anuke/mindustry/world/blocks/types/storage/Unloader.java new file mode 100644 index 0000000000..3b9e6fda48 --- /dev/null +++ b/core/src/io/anuke/mindustry/world/blocks/types/storage/Unloader.java @@ -0,0 +1,38 @@ +package io.anuke.mindustry.world.blocks.types.storage; + +import io.anuke.mindustry.resource.Item; +import io.anuke.mindustry.world.Block; +import io.anuke.mindustry.world.Tile; + +public class Unloader extends Block { + protected final int timerUnload = timers++; + + public Unloader(String name){ + super(name); + update = true; + solid = true; + health = 70; + } + + @Override + public void update(Tile tile){ + if(tile.entity.totalItems() == 0 && tile.entity.timer.get(timerUnload, 5)){ + tile.allNearby(other -> { + if(tile.entity.totalItems() == 0 && other.block() instanceof StorageBlock && + other.entity.totalItems() > 0){ + offloadNear(tile, ((StorageBlock)other.block()).removeItem(other)); + } + }); + } + + if(tile.entity.totalItems() > 0){ + tryDump(tile); + } + } + + @Override + public boolean canDump(Tile tile, Tile to, Item item) { + Block block = to.target().block(); + return !(block instanceof StorageBlock); + } +} diff --git a/core/src/io/anuke/mindustry/world/blocks/types/storage/Vault.java b/core/src/io/anuke/mindustry/world/blocks/types/storage/Vault.java index a14f3db3a0..4b303270de 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/storage/Vault.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/storage/Vault.java @@ -3,13 +3,12 @@ package io.anuke.mindustry.world.blocks.types.storage; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.utils.Array; import io.anuke.mindustry.resource.Item; -import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.BlockBar; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Timers; -public class Vault extends Block { - public int capacity; +public class Vault extends StorageBlock { + public int capacity = 1000; public Vault(String name){ super(name); @@ -29,7 +28,7 @@ public class Vault extends Block { int iterations = Math.max(1, (int) (Timers.delta() + 0.4f)); for(int i = 0; i < iterations; i ++) { - if (tile.entity.totalItems() > 0) { //TODO only output to the right blocks + if (tile.entity.totalItems() > 0) { tryDump(tile); } } @@ -48,6 +47,6 @@ public class Vault extends Block { @Override public boolean canDump(Tile tile, Tile to, Item item){ - return to != null && (to.block() instanceof Vault || to.block() instanceof CoreBlock); + return to.target().block() instanceof StorageBlock; } }