From b7df5c43db535e319f43a6f33686f27941616c34 Mon Sep 17 00:00:00 2001 From: Jonathan Williams Date: Thu, 7 May 2015 11:26:26 -0700 Subject: [PATCH 1/5] Updated all name lookups to only use most recently logged in account. --- .../Models/AccountAdministrator.cs | 36 ++- .../LOC.Website.Web.Publish.xml | 208 +++++++++--------- Website/LOCWebsite.suo | Bin 474624 -> 474624 bytes 3 files changed, 121 insertions(+), 123 deletions(-) diff --git a/Website/LOC.Website.Common/Models/AccountAdministrator.cs b/Website/LOC.Website.Common/Models/AccountAdministrator.cs index b205de2ef..5aa571908 100644 --- a/Website/LOC.Website.Common/Models/AccountAdministrator.cs +++ b/Website/LOC.Website.Common/Models/AccountAdministrator.cs @@ -93,9 +93,6 @@ { var account = repository.Where(x => x.Uuid == loginToken.Uuid).FirstOrDefault(); - if (account == default(Account)) - account = repository.Where(x => x.Name == loginToken.Name).FirstOrDefault(); - if (account == default(Account)) account = CreateAccount(loginToken, repository); @@ -241,7 +238,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Name).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Name).OrderByDescending(x => x.LastLogin).FirstOrDefault(); if (account == null) return false; @@ -268,7 +265,7 @@ using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Name).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Name).OrderByDescending(x => x.LastLogin).FirstOrDefault(); if (account == null) return false; @@ -287,7 +284,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Name).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Name).OrderByDescending(x => x.LastLogin).FirstOrDefault(); if (account == null) return false; @@ -314,7 +311,7 @@ using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Name).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Name).OrderByDescending(x => x.LastLogin).FirstOrDefault(); if (account == null) return false; @@ -331,7 +328,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Name).Include(x => x.Tasks).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Name).OrderByDescending(x => x.LastLogin).Include(x => x.Tasks).FirstOrDefault(); if (account != null) { @@ -356,7 +353,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == punish.Target).Include(x => x.Rank).FirstOrDefault(); + var account = repository.Where(x => x.Name == punish.Target).OrderByDescending(x => x.LastLogin).Include(x => x.Rank).FirstOrDefault(); if (account == null) return PunishmentResponse.AccountDoesNotExist; @@ -364,7 +361,7 @@ if (!String.Equals(punish.Admin, "Mineplex Enjin Server")) { var punisher = - repository.Where(x => x.Name == punish.Admin).Include(x => x.Rank).FirstOrDefault(); + repository.Where(x => x.Name == punish.Admin).OrderByDescending(x => x.LastLogin).Include(x => x.Rank).FirstOrDefault(); if (punisher == null) return PunishmentResponse.NotPunished; @@ -399,7 +396,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Target).Include(x => x.Punishments).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Target).OrderByDescending(x => x.LastLogin).Include(x => x.Punishments).FirstOrDefault(); if (account == null) return PunishmentResponse.AccountDoesNotExist; @@ -436,7 +433,7 @@ using (var repository = _repositoryFactory.CreateRepository()) { var account = - repository.Where(x => x.Name == token.AccountName) + repository.Where(x => x.Name == token.AccountName).OrderByDescending(x => x.LastLogin) .Include(x => x.PvpTransactions) .First(); @@ -496,7 +493,7 @@ using (var repository = _repositoryFactory.CreateRepository()) { var account = - repository.Where(x => x.Name == token.PlayerName).Include(x => x.CustomBuilds).First(); + repository.Where(x => x.Name == token.PlayerName).OrderByDescending(x => x.LastLogin).Include(x => x.CustomBuilds).First(); var customBuild = account.CustomBuilds.FirstOrDefault( @@ -538,7 +535,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == accountName).First(); + var account = repository.Where(x => x.Name == accountName).OrderByDescending(x => x.LastLogin).First(); account.IgnoredPlayers.Add(ignoredPlayer); @@ -550,7 +547,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == accountName).First(); + var account = repository.Where(x => x.Name == accountName).OrderByDescending(x => x.LastLogin).First(); account.IgnoredPlayers.Remove(ignoredPlayer); @@ -568,6 +565,7 @@ { var account = repository.Where(x => x.Name == token.AccountName) + .OrderByDescending(x => x.LastLogin) .Include(x => x.AccountTransactions) .First(); @@ -617,7 +615,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => String.Equals(x.Name, name)).Include(x => x.Rank).FirstOrDefault(); + var account = repository.Where(x => String.Equals(x.Name, name)).OrderByDescending(x => x.LastLogin).Include(x => x.Rank).FirstOrDefault(); account.LoadNavigationProperties(repository.Context); addAccountTransaction(repository, account, "Bacon Brawl Bebe Piggles", 0, 0); @@ -700,7 +698,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => String.Equals(x.Name, token.Name)).Include(x => x.Rank).FirstOrDefault(); + var account = repository.Where(x => String.Equals(x.Name, token.Name)).OrderByDescending(x => x.LastLogin).Include(x => x.Rank).FirstOrDefault(); rank = repository.Where(x => String.Equals(x.Name, token.Rank)).FirstOrDefault(); if (account == null) @@ -724,7 +722,7 @@ using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => String.Equals(x.Name, token.Name)).Include(x => x.Rank).FirstOrDefault(); + var account = repository.Where(x => String.Equals(x.Name, token.Name)).OrderByDescending(x => x.LastLogin).Include(x => x.Rank).FirstOrDefault(); if (token.Retries >= 3) _logger.Log("ERROR", "Applying UpdateRank, retried 3 times and something didn't stick."); @@ -747,7 +745,7 @@ { using (var repository = _repositoryFactory.CreateRepository()) { - var account = repository.Where(x => x.Name == token.Target).Include(x => x.Punishments).FirstOrDefault(); + var account = repository.Where(x => x.Name == token.Target).OrderByDescending(x => x.LastLogin).Include(x => x.Punishments).FirstOrDefault(); if (account == null) return; diff --git a/Website/LOC.Website.Web/LOC.Website.Web.Publish.xml b/Website/LOC.Website.Web/LOC.Website.Web.Publish.xml index 3aaebf02d..2d91aaa08 100644 --- a/Website/LOC.Website.Web/LOC.Website.Web.Publish.xml +++ b/Website/LOC.Website.Web/LOC.Website.Web.Publish.xml @@ -7,7 +7,6 @@ - @@ -18,7 +17,7 @@ - + @@ -27,27 +26,27 @@ - - + - + - + + @@ -61,9 +60,10 @@ - + + @@ -78,7 +78,9 @@ + + @@ -92,12 +94,11 @@ - - + @@ -107,17 +108,17 @@ - + - + + - + - @@ -125,24 +126,22 @@ - - + - + - - + @@ -156,7 +155,7 @@ - + @@ -176,8 +175,8 @@ - - + + @@ -188,13 +187,12 @@ - - + @@ -215,16 +213,16 @@ - + - + - + - + @@ -239,14 +237,15 @@ - + - + + - + @@ -261,12 +260,14 @@ + + @@ -280,27 +281,28 @@ - + + + - - + - + @@ -319,7 +321,6 @@ - @@ -335,8 +336,6 @@ - - @@ -348,7 +347,6 @@ - @@ -365,17 +363,20 @@ + - + + + @@ -388,16 +389,17 @@ + - + - + @@ -409,7 +411,7 @@ - + @@ -437,10 +439,9 @@ - - + @@ -448,7 +449,6 @@ - @@ -461,13 +461,13 @@ - + - + @@ -481,7 +481,7 @@ - + @@ -500,9 +500,9 @@ - + - + @@ -516,7 +516,7 @@ - + @@ -526,10 +526,11 @@ - + + @@ -543,28 +544,29 @@ - + - + + - + - + @@ -582,7 +584,7 @@ - + @@ -599,8 +601,6 @@ - - @@ -611,10 +611,10 @@ - + @@ -622,24 +622,23 @@ - - + + - - + - + @@ -649,13 +648,15 @@ - + + + @@ -673,13 +674,13 @@ - + - + @@ -694,16 +695,15 @@ - + - + - - + @@ -711,7 +711,6 @@ - @@ -724,13 +723,13 @@ - + - + - + @@ -744,11 +743,12 @@ + - + - + @@ -763,9 +763,9 @@ - + - + @@ -779,7 +779,7 @@ - + @@ -793,6 +793,7 @@ + @@ -806,28 +807,29 @@ - + - + + - + - + @@ -862,8 +864,6 @@ - - @@ -874,10 +874,10 @@ - + @@ -890,19 +890,18 @@ - - + - + @@ -912,13 +911,15 @@ - + + + @@ -936,13 +937,13 @@ - + - + @@ -963,10 +964,9 @@ - - + @@ -974,7 +974,6 @@ - @@ -987,13 +986,13 @@ - + - + - + @@ -1007,8 +1006,9 @@ + - + @@ -1026,9 +1026,9 @@ - + - + @@ -1042,7 +1042,7 @@ - + diff --git a/Website/LOCWebsite.suo b/Website/LOCWebsite.suo index e04015bc97ed66f58583fa005b775a2b178eb120..2b103f237324a6eaa86dfcf9c60f6b65c8c18b4b 100644 GIT binary patch delta 12654 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 Date: Wed, 13 May 2015 14:04:19 +1200 Subject: [PATCH 2/5] Wizards: Lowered ice shards max level to 3, removed damage from web shot --- .../game/arcade/game/games/wizards/SpellType.java | 4 +--- .../arcade/game/games/wizards/spells/SpellWebShot.java | 8 ++++---- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/SpellType.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/SpellType.java index 8490fa2d5..10a79928f 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/SpellType.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/SpellType.java @@ -160,7 +160,7 @@ public enum SpellType // ❤ "Ice Shards", // Spell name new ItemStack(Material.GOLDEN_CARROT), // Spell icon SpellIceShards.class, // Spell class - 5, // Spell max level + 3, // Spell max level 30, // Mana cost 20, // Spell cooldown 0, // Mana cost change per level @@ -445,8 +445,6 @@ public enum SpellType // ❤ 0, // Cooldown change per level 3, // Item amount in loot - C.cYellow + C.Bold + "Damage: " + C.Bold + C.cWhite + "1 heart", - C.cYellow + C.Bold + "Webs: " + C.Bold + C.cWhite + "Spell Level x 2", "", diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/spells/SpellWebShot.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/spells/SpellWebShot.java index c3763e50b..73e1f544b 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/spells/SpellWebShot.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/spells/SpellWebShot.java @@ -92,10 +92,10 @@ public class SpellWebShot extends Spell implements SpellClick, IThrown } // Damage Event - Wizards.getArcadeManager() - .GetDamage() - .NewDamageEvent(target, data.GetThrower(), null, DamageCause.PROJECTILE, 2, false, false, false, - "Web Shot", "Web Shot"); + /* Wizards.getArcadeManager() + .GetDamage() + .NewDamageEvent(target, data.GetThrower(), null, DamageCause.PROJECTILE, 2, false, false, false, + "Web Shot", "Web Shot");*/ } Web(data, loc); From 98dcb9747a3ad18db4b52f38e7e418c24bdcaf64 Mon Sep 17 00:00:00 2001 From: Jonathan Williams Date: Wed, 13 May 2015 00:10:17 -0700 Subject: [PATCH 3/5] Added UHC support to server sorter. --- .../src/mineplex/hub/server/ServerSorter.java | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java index d778d7989..9f069027d 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java @@ -19,12 +19,36 @@ public class ServerSorter implements Comparator if ((a.MOTD.contains("Restarting"))) return 1; - if ((a.MOTD.contains("Recruiting") || a.MOTD.contains("Waiting") || a.MOTD.contains("Starting") || a.MOTD.contains("Cup")) && !b.MOTD.contains("Recruiting") && !b.MOTD.contains("Waiting") && !b.MOTD.contains("Starting") && !b.MOTD.contains("Cup")) + if ((a.MOTD.contains("Recruiting") || a.MOTD.contains("Waiting") || a.MOTD.contains("Starting") || a.MOTD.contains("Cup") || a.MOTD.contains("Generating")) && !b.MOTD.contains("Recruiting") && !b.MOTD.contains("Waiting") && !b.MOTD.contains("Starting") && !b.MOTD.contains("Cup") && !b.MOTD.contains("Generating")) return -1; - if ((b.MOTD.contains("Recruiting") || b.MOTD.contains("Waiting") || b.MOTD.contains("Starting") || b.MOTD.contains("Cup")) && !a.MOTD.contains("Recruiting") && !a.MOTD.contains("Waiting") && !a.MOTD.contains("Starting") && !a.MOTD.contains("Cup")) + if ((b.MOTD.contains("Recruiting") || b.MOTD.contains("Waiting") || b.MOTD.contains("Starting") || b.MOTD.contains("Cup") || b.MOTD.contains("Generating")) && !a.MOTD.contains("Recruiting") && !a.MOTD.contains("Waiting") && !a.MOTD.contains("Starting") && !a.MOTD.contains("Cup") && !a.MOTD.contains("Generating")) return 1; + if (a.MOTD.contains("Generating") && b.MOTD.contains("Generating")) + { + try + { + String aTime = a.MOTD.substring(a.MOTD.indexOf("(") + 1, a.MOTD.indexOf(")")); + String bTime = a.MOTD.substring(b.MOTD.indexOf("(") + 1, b.MOTD.indexOf(")")); + + int timeOfA = (int)Double.parseDouble(aTime.split(" ")[0]) * (aTime.contains("Minute") ? 60 : 1); + int timeOfB = (int)Double.parseDouble(bTime.split(" ")[0]) * (bTime.contains("Minute") ? 60 : 1); + + if (timeOfA < timeOfB) + return -1; + else if (timeOfB < timeOfA) + return 1; + else + return 0; + } + catch (Exception exception) + { + exception.printStackTrace(); + return 0; + } + } + if (a.MaxPlayers - a.CurrentPlayers < _requiredSlots && b.MaxPlayers - b.CurrentPlayers >= _requiredSlots) return -1; From 938386bf77ae3e39da2a67f70437518eace5ea65 Mon Sep 17 00:00:00 2001 From: libraryaddict Date: Wed, 13 May 2015 19:14:40 +1200 Subject: [PATCH 4/5] Wizards: Removed chainmail loot, added gold armor instead --- .../nautilus/game/arcade/game/games/wizards/Wizards.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/Wizards.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/Wizards.java index 57f402af8..be15c1195 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/Wizards.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/wizards/Wizards.java @@ -694,10 +694,10 @@ public class Wizards extends SoloGame _chestLoot.addLoot(Material.LEATHER_CHESTPLATE, 6, 1, 1); _chestLoot.addLoot(Material.LEATHER_HELMET, 6, 1, 1); - _chestLoot.addLoot(Material.CHAINMAIL_BOOTS, 5, 1, 1); - _chestLoot.addLoot(Material.CHAINMAIL_CHESTPLATE, 5, 1, 1); - _chestLoot.addLoot(Material.CHAINMAIL_HELMET, 5, 1, 1); - _chestLoot.addLoot(Material.CHAINMAIL_LEGGINGS, 5, 1, 1); + _chestLoot.addLoot(Material.GOLD_BOOTS, 5, 1, 1); + _chestLoot.addLoot(Material.GOLD_CHESTPLATE, 5, 1, 1); + _chestLoot.addLoot(Material.GOLD_HELMET, 5, 1, 1); + _chestLoot.addLoot(Material.GOLD_LEGGINGS, 5, 1, 1); _chestLoot.addLoot(Material.IRON_BOOTS, 2, 1, 1); _chestLoot.addLoot(Material.IRON_CHESTPLATE, 2, 1, 1); From 1c6a12528c51d0010c98f54a53ab96e26098f068 Mon Sep 17 00:00:00 2001 From: Jonathan Williams Date: Wed, 13 May 2015 00:58:45 -0700 Subject: [PATCH 5/5] Added ability for LT to modify Admin ranks. Added Twithc rank to the updateRank list. Fixed server sorting issues with UHC Generating servers. --- .../core/account/command/UpdateRank.java | 8 +++++++- .../src/mineplex/hub/server/ServerSorter.java | 7 +++++-- .../mineplex/hub/server/ui/ServerNpcPage.java | 2 +- .../serverdata/data/MinecraftServer.java | 2 +- Website/LOCWebsite.suo | Bin 474624 -> 474624 bytes 5 files changed, 14 insertions(+), 5 deletions(-) diff --git a/Plugins/Mineplex.Core/src/mineplex/core/account/command/UpdateRank.java b/Plugins/Mineplex.Core/src/mineplex/core/account/command/UpdateRank.java index 7bf400dd2..8a7efe8fe 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/account/command/UpdateRank.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/account/command/UpdateRank.java @@ -52,8 +52,14 @@ public class UpdateRank extends CommandBase final Rank rank = tempRank; - if (rank == Rank.YOUTUBE || rank == Rank.MODERATOR || rank == Rank.HELPER || rank == Rank.ALL || rank == Rank.MAPDEV || rank == Rank.SNR_MODERATOR) + if (rank == Rank.ADMIN || rank == Rank.YOUTUBE || rank == Rank.TWITCH || rank == Rank.MODERATOR || rank == Rank.HELPER || rank == Rank.ALL || rank == Rank.MAPDEV || rank == Rank.SNR_MODERATOR) { + if (rank == Rank.ADMIN && !Plugin.hasRank(caller, Rank.LT)) + { + UtilPlayer.message(caller, F.main(Plugin.getName(), ChatColor.RED + "" + ChatColor.BOLD + "Insufficient privileges!")); + return; + } + Plugin.getRepository().matchPlayerName(new Callback>() { public void run(List matches) diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java index 9f069027d..68b487d49 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ServerSorter.java @@ -1,7 +1,10 @@ package mineplex.hub.server; +import java.awt.Color; import java.util.Comparator; +import org.bukkit.ChatColor; + public class ServerSorter implements Comparator { private int _requiredSlots; @@ -29,8 +32,8 @@ public class ServerSorter implements Comparator { try { - String aTime = a.MOTD.substring(a.MOTD.indexOf("(") + 1, a.MOTD.indexOf(")")); - String bTime = a.MOTD.substring(b.MOTD.indexOf("(") + 1, b.MOTD.indexOf(")")); + String aTime = ChatColor.stripColor(a.MOTD.substring(a.MOTD.indexOf("(") + 1, a.MOTD.indexOf(")"))); + String bTime = ChatColor.stripColor(b.MOTD.substring(b.MOTD.indexOf("(") + 1, b.MOTD.indexOf(")"))); int timeOfA = (int)Double.parseDouble(aTime.split(" ")[0]) * (aTime.contains("Minute") ? 60 : 1); int timeOfB = (int)Double.parseDouble(bTime.split(" ")[0]) * (bTime.contains("Minute") ? 60 : 1); diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerNpcPage.java b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerNpcPage.java index d44b40c67..8504c0a66 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerNpcPage.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/server/ui/ServerNpcPage.java @@ -327,7 +327,7 @@ public class ServerNpcPage extends ShopPageBase im private boolean isStarting(ServerInfo serverInfo) { - return (serverInfo.MOTD.contains("Starting") || serverInfo.MOTD.contains("Recruiting") || serverInfo.MOTD.contains("Waiting") || serverInfo.MOTD.contains("Open")); + return (serverInfo.MOTD.contains("Starting") || serverInfo.MOTD.contains("Recruiting") || serverInfo.MOTD.contains("Generating") || serverInfo.MOTD.contains("Waiting") || serverInfo.MOTD.contains("Open")); } private boolean isInProgress(ServerInfo serverInfo) diff --git a/Plugins/Mineplex.ServerData/src/mineplex/serverdata/data/MinecraftServer.java b/Plugins/Mineplex.ServerData/src/mineplex/serverdata/data/MinecraftServer.java index b1aaf1c97..31adb7fe8 100644 --- a/Plugins/Mineplex.ServerData/src/mineplex/serverdata/data/MinecraftServer.java +++ b/Plugins/Mineplex.ServerData/src/mineplex/serverdata/data/MinecraftServer.java @@ -96,7 +96,7 @@ public class MinecraftServer public boolean isJoinable() { if (_motd != null && (_motd.contains("Starting") || _motd.contains("Recruiting") - || _motd.contains("Waiting") || _motd.contains("Open in") || _motd.isEmpty())) + || _motd.contains("Waiting") || _motd.contains("Open in") || _motd.isEmpty() || _motd.contains("Generating"))) { if (_playerCount < _maxPlayerCount) { diff --git a/Website/LOCWebsite.suo b/Website/LOCWebsite.suo index 2b103f237324a6eaa86dfcf9c60f6b65c8c18b4b..16718f8373f79bc8476fa81210a5402d3071e300 100644 GIT binary patch delta 14175 zcma)j4_H*y*8c2$_BkMqI3N-s;zUG5L?e-TiEvabLc|ftkjzFxGc!XZD>EC-PtA;w zt+UL$Hky~LTSn4#{JN&&pW8Jv8_U~YBl6lm|AmTaUDNN~=K%Kge81=U`8=pIbLO1A z*Iw&g?|Rq5cRtB?KB=jgGmjj>kFs9Pf6{JX(Y^;quPJ&q%rqPRoNt~b-iwkuMSoe_ z(<9>XmfXKSv$?%zSVZ>3tM2$AHiV}eUT(9+yX3ENx67d^w@6>_q1{*%K8^0YqPe~I z{BEqV`LTXaYAm(+mz2jji<1vuRibX++&AjD;PBYhvN#s7uZY6Io zCW1|N=IKGM%d{lxwR00|)yQpU1+;a(=CZ)3#+d~@A|HS$W^`@4 z_NgUYu5~8MP;()SdKs}4(VHA!umZX2Y#N&+_n#X~fxj7cdiEqsknXbvE&G+nO83q} zD*lYc($Q4zh_Knd!X5o`P5L!!7e&j4AyaX$&*b%?rS#S|UML;I-8Ah!ElMVZ;_0Ii z_*$#MZVmEAej$R79=bNbU*j_-!j#5k%?VX^*EMx69+iDci%ZQl--9(S5dJD+0i zgxs+#hqeq8Y1rUcI$5SoCr67m5EkeUyY8UDrRkD&v1;=aDyjS{MP3WwuZFov9yw0L^)8fL)4SIbdt z&2(Tn90uzvlTA|`GQBM`*w|)NFmjdX1-SopFnpD|zid681-MX8a?Rk;j6s}+{%Ae1orQ?GXcD3w(j1XHL%ffAs+1V_3`|Z*(+D;*-h?H+1O`)=Grq9f# zjX&!}_$ZQ^P8iYTt<_SoJ}=D;vl|3~Rlat*NczsD`*-mi z={jvtY6WiP-dQT=oJwPhsehq1f!z1&>G)bevXlMSwsV<%vYb*!BkTeTz0!NysSeMj zFUAfx)AR!4Sql6t3<^EL?Q->kWJ-Cb!)V?@7D=u%S`u#d27Ob@dsB6l=9A^4qetERFq^tIISi zVqAZU_Y1892u}QFmm7bokfH07;N{P)k2J z(fD#LQh(7rj=9O=adP%!L+GPITwL9kr&INpO!(og3Oy*0%mnQUup%-~C-ejj}OD2&b3W18^0;7EkjjUkStKy>w+4OK^F!F72PSYN+ ztt6Jo1_j-TETqZGQ%U6P!wo8q!X_*4fsr?NV;R&M$!cjwgjPt-)gqTRL}Gp32o~>u zK%`PyEKdyPJK2sNG&6#2GJQzFv5#_|W?pi>p_c&y4s-vLS_-AE=1IYP7psd97cO4B z7!2RUTy~mwRFu=4VJwr@6~N@DPT`2XAF(vKZE+l}E?{Pk$fo*F*g!hblf}Z|6KVgQ zNG!fdMzP!`m7BgwOE0kA(v@CB_Tem^HlAS~@@&_0sJ;k>37_lmn6|O_u=RF44AzO2 zf$uUXd;yzuZsW1~@eXVmOj`C7+t z7u`pDZv~FKOW9#IAI^NU^j0Ux=p)&PiS7OPApcW%9BvcO-lW$(Y$3%?)rOF-FObbO zPQCJ}_5rMI+iX1O9wVh3LMFks1?k`x1^eu>#>&_;!B7ls-dto9xd2+xG_LaaW zNPz(>n>kLgN!@4IvTXO7NqHD;E7XQl_1(-)zDIa6AIT^nMGdtMhg+{NW?3CT^m77T z7|zluWjI1+*I7M}!edyq>9W#ycq&EjL=LPQgQJLBrN`o}ar9xWP%*W^T6?&REugY; zSk%4KO$}vmt4r_)l(ADv8B0byAfwHoFw7U#xyV*V)r)v3c|Oofal_ZBpQhc7Y+@x&>VKaLIPGF^hqt4fDwWi#?D69v>(fye+RE~W#6L?(q7;aZ$^4i)I! z%>JoVJr*$mCI+vZEfhWZn%+3WMmHPNaiFKr(mp_d|x0x z9heArLh>3yj)^Rv-g-#O@juE^gQ=5QAVy4wS1Kmjo$&qjc%fdenK6y^-u#W-PWcO26eT{v>}(13j}jxP`e!{KoYj8}YY%Va^C)XJ9HQ)yHd`G{ zHv1RFtkQccv@AB?&>z8i$6>!$k?(|_N{xM4qTCuiAXw{TOBlue8)*64OqL9@*4QZ2 zCgP}dK0Bo1F^=jhaqlfjB9f1^k?$0|+@duO3JI3Px~cf+4QDH(&z@qbRJlO+QQH_T zL%;b_b~C+v>y;vrLi3maVM5NEdns|i5-V`=E}FX<;O+PoTrcXR8GZjv{hwy<(5`ua zG4IPFowA0R!hL_Ql#Cl|2m=zJd@NqcfdY%p;#`%ago zE~m1jlWMLKc@0z2{2%HLI@GU_tl8$`G6JT(` zC|ro>sISseO?pB{8W0`JF5rn_28wxCn+D8i0C22JwiZ=PThFm%Ucjm846<93SL9Im zdXc2pz=#Jd+lE#N6~nt|kWc?F3csTzQuRwJT;`|Hx}I8+-1=%%uy6(296`JSH`~U@ z`8bcWGMH|{9 zsG80#Gbui%Pkl~m_HLc9vxFYHO58>J{5YG+eyjqBlSt=U z5k9^T^c0xr6?3EG$hREMcj2!rmW330^{4EYVAZ`-MRssZBYTxmO_+NC(ssqo6RG5{ zup{W*5O9_xTAi<@QQ%c9$>b#NUlQooSCIL6KP}e(3L*=66|7()GHhr)+yKcxk38)n zf!eMUVtFBVvKwh`4{Cm}R#wpofv$*kKP zID;Q()K%Jzr_Npv{iUkz;4J;wGR3+mL?7u`eRs%$^pq?D1#6qx5+3BgiV9Bk?-+69o2H+m;tOIW`R-Rx^)@@GQ)IS&gu)kvgEkN#-S>B+ zffny$n63(P`)q*q>E6NmMk+p!yELWf zZ%fCEZNUuMMXzm#>6O-q8-BGe>Yzny!0x49XsTf^4 zl`a#?IZQ%}YVAun$DxyA3^mp86q@-3o~J^VLZ2fQR4vzsP|4@`R!5y&N+&*pgPr=6 ztx%O#M*?Y_hXanLuRdYZ0S>^BPY|;WEA(vg%oNHXH^4ilqM#m28~?=;*e)wvorjR_ zO{#f$rk0A!u2G1s?1nJ`co#XVAjpm7(N45w$1`yHc7 zx#=o$Z#4#XsTw)K$xeMGla)Kul;)5@`~D4-1Fq-O6VLNRxWo6frT}4Q63%OMp{T%p zCQ0e=1ZOYUT2<}%pxH!;BxE=h1Si-*P4eF+qry+-w{dcP&8O1JGdO+)|EMTa{1%{4WlL48lpF+UC=^5$JJ+Ld0rS zpup#gi(%tial^MSaVy%V%$of*&qH04F56}#U{^~lV&xt-!2ciI%q&OhpN9uI?iVTe zd?}5b!S9g1ospIl6Y^?Ne6x*O&ar70{cmc43vW5cQrSuX&Ex97PJWU}S15;EXW2M5 zPrbeT2X3d@acq*wI{{&-)V=`Z?CI-}4Z;`k=v`65g<3X&N-lyEPBj@3lKucF5MUmo zXwC(oxCuy+GAAtv=SR6^=K~UlHb#8RN;kiw_72mu;C5+)_<#>YO zyd0%kB&%C~lE0*CC6&YYELC;@4L$}@a7H03fshWN>TWO_vKcbcX6_=_D6rZD+NO87 znDPi(5sAM#mrCa&c#Ew$*O$M0BlfH~(O0MSVidinB*cg@f|0)_f@=3` zP)zDxpdAv%6&w-bPbg3hBHtLDeWJ%7hitTbxV-V~jNT z_FO>M7s|J{OV3Rx#!s_IHi2GzgpWqSZFq3hNJ*hWEnkI~Ss+qNEu&NEbHb4fzXF(KCTKF)IB zSKy*+Y5E-gy4>+?9=Y!WL{-nh?MjD>x-Nc}WtGJp=WCatvN&vPG&W`e@w19K`%eeiu;h6U46G}8NFSArp1;@WV_S$5UBnGwiPt^ zeh%4TKHtHpv<$?1-(0}2az3S~l6x+maX42~08oH!JZs5@kRK}WstoehW&TCHhI|VF zuO@h+{w$WB`yy%TLOAyPFrv_u_yP+dBs~W}N_|>*slJYvt4xt?s-|5ui_SgE2g;md z9m_swN5!}jZ&@7o&=Q`(HbDwlNQFyy4p3oDA2C7ca5%#O$bp+JSZXQ*b8TCUD?(Ow zbsW;%Y&m3WOVazduBgT$EWWo|TNP!#%^fu4h;Wf-DW7Dr{m!yC&XmL02u1yRH%uI( z4Yu7IWGVVZfb9znG$6po2iwy17$&cK|Kl!oK8iK2;5=Brmb${Ud~x+sY@Y=ei)+X9odm9au<{TA2_F$G$*4)yfnJz4m2x&qi6 z6oSY>^;z)iE6th?@dCw;roDp*!yOt;NroJGVjy|c4cAIYP$tl$bjk8>!Gk)uQxYYg z*1+}uj<--P7y6Ik^5We*nT=C*?J(N39e8vo#Oo}l3VavUxC7S?c>?r0Ybnd%!%-|n zz~N095|UOHZ!y#LeAb90b`K(Md#Qe(bX^}s;gPuR`@dNVemu^94hrd( zsXPOl`O)O!r42{3X?zQ|^6ptZ7m`l_HGK|5g_?3HBcxFD=LimDzN;5AJk}Z1-IiVd$8a_EvJ*vO-5KPuvk^{Uo@qJoPmV> z9O3aLM-D%?f;S`kq=ol6C5x}{`&XFjh3D@<`ahkU=G^J1=`dW!}o zbDn1@QQAB+d2n>Ho(UYRr8hl5^+*4MYf-$JLP$KNOfd!q2cF=&yVJ2>5rvf|RZtZ% zO1&ug;jCDy`xUziAJg;Y8*eEy#oK7>Cy1uH<8Xk^<^jZm> z)dC7E8st36S4eTvL#-%ENntOX_B|7HmT6uK|CHjh;U+^J_>){I68V&wEfSHv6IBHo zYl@LjvXJyVCexyDq?Si-eT|PiW!j_E^s0ac6{#8437MduNIwikt=H5Y^28P;Alzsz zq16CaGOK{rE1?ffHZ&-WwEYu)FNJjt$G8O|q(j%nDep&46xsrHj)h<+S&DmAbSMp2 z>^i2Tl_FVvHdE!Jc)C!oWw7qFeIAM#G%fw^*+TH*aP{z}-;l&#G!o2otNM2Z$kyL7nlrGB7E=3f6vbHG?DtinS|~Ck)Q2Uqo7;OlzXS zvVi`HXia_-iNZuRUHExMEhX>_3Y-}y)Z zopOp&f0>rA>O4h91bIhmC2FbarbQGzT0;o{Dy%qV(Iq8*&UQVGS|?%cO89N~1^faaU zqTGm+&e<@EJQF_yME1lshYRsA?#2};+Za^0z|G8K3bKo8YU z#j*J&Ysi63vW~%VH{dzXKumjbRSn*dZX8e4}Eu**n=tS3E67%kUlJ=!;ej z8TAqFX*eo^yZ{mgU3k~92km8gJCm)o2919eqFdW;28#7I8r*@+#xYBSTXe7fDES_P ztn8SkkE1E^5$1JhQf)Upv^8ir$oYZs5k)?x|4P0!I&3;yYZ*j4UN_RIsaHg8FtASd zYOE%Bahs~F4^-$`6xFJwT4h7qqsTYjuar}Dr84(;k;Y>|ZQRC(n80%rpyU;wSX4DzG*EK3U(wrHD~EFBQ5dhrT6U9U`Xb*RSyZU~_5nWnV;0G;3MS_Oe#y3>IVKJ>QL(Z%;QW}huR9?m9C@cue=9( zd2a{WD2cr3FwTrKqz2XHB+p^o)hvT%{~J3+Ut}XH0W&MrzXYVqTg=nQa|oE*k!vS6 z9>I0Y&Mv+Vns%jA(X42R(yQ#*Tc4xAHpU>n4hs0)iK+ zKn*p!yO`|nE;7g!C6*~o8%6&N^!`U?!c)Ieg?I-OREfram!5;SCs|a*I}%@;9RmnN zon*D{3E^s2@t>B z6I2J8<@X~FziFzbn4l8=$i`SqZfv|hgMRHHk~`!HbEO95XBtWHp-+FWyh4#lqpkf= zDk#y)>;)>$i`!*eYAedAF`()$d~qidXJ66KIbdN|>X{5p5tQ8*YV)a2VU)lxrL-&w zCjtzvv^0)Yl*o&Bj~v%Gvt^}Hg@eSdX!}`xkaW2V$(xF2lxB;)Rt05t22-s@(|57{3<1Nq+nw}>RRTa`=CQfoHWj^0foe-Fp2 z)G^edlT9gvpof*4tVLI2fESdyJyO;`SuI=riG(&^Dh_tGO|=SgEHyno7u#1Y9&+6v zpr;(e$~@Ec0$jI&qkmdTo>E;28;umxkKaIRPxH(!mK_;%yG4l6+C|($Q4a&se76h3 zTBp^$1mrqt&P;Rz!-c?u_E88~-%v57u>cJ;Pc15)f6|2M{6=z|(em)j)24#gQEfL3 zf#jpIzrS2$nA&pg5O|zfD!Eb+?OO(kgyqYams)pnpxPij0TqQwb!2o+hN`n5e0<+k z3ADL~;B_5dPep>g%>)Yl7<{dx$$$bLLuDheG}8`_5>aH8c)k(Btq4zEr|RL7W&TS- z6N(kojm08OLHZ6_*BynFsXKu<$o!j?P`^x7G3N1ijoK+xI7AmK#GlcISaXN=KH0~Z zu2N<8!=>Y>liZMEV3s12pEoFRZ;tA|`@n+CuHx1^Q6{0B%2vgg6B28}axaf$>*z&^ zMzInkx=sL3drY;W`%?H0R4x$byBGxeJJ*Rw7D4Zni5ID$3=yrSNC2MYH05TVK>20Z zpcyGEMvGL?c+^$?(ZbF4ShWP|GLtOlm_rxl-l=tko=R<_gpg{gs#8yPDe7Q~f0#On zl;=y7(lnEfSJ?LxQHTOsgB+MhMEOK9Ed=faIUr`fm7{XG8 zwS`nD=qULa>|JRuYVg{fAA~COv3G>vLb;s+2U<8GWLA^>m_44rN^`=n0V6~ssOVYLP*u-^U7$bV zq3|ut5#+ZT0oIW2?{-hivBhd8da&Go?On~krcctySE=AXAPzElsA^L4yO}HX#`S{B z(reMBtmVmm2NTVEvzJBq<8+*C8U~nCH;RK1l4oY94Gd@w`sa)?yPRi z!>(Hjdg(cV!!r-Ntr%?sTp4E$B>W-xjvRw0sCcmCD_3(oEjflt)Evn`FF2ZhI4Y9O zk-o0l-l7QAM>`-~`uy?MICcFIq{pfBW<9@4_5b0B!%aaS;ZiB{u2;R?gK(Y6G$Ddr zL+&%8z;r#cLGp7um=T7By(VY0W--p4hKH&`>UYy5B^~c&s(IXj^wPEFkkmmNwVo7p zztiSa6Ej6=4Vx*h_;+j)BOq;XN?4}O8a4gj#dGLsk)VHoMIKQoFoNnzja6`kAC!$p zOUL#!vi~CT6bKEmiofb}2t|0uI!O0LbpB_30C~>BGATccnN;Z!`OT~Icj)9R#`ZQN znLu_i=a^K34+hdWxqbQptAAjM&T2edF3W_BQVn`}WfZ9PyV2Y>%@Gl7-Gg6spakNzWUnzC!B;iij-eq}#36Hfqib42 zuKe@6u%rh=)v6-(+gS z(s6yHN@79hJRQ@Er3nxVXNS!8&NxNr(3kuDd5zuM#G3DMg zS1++dIg`bkq;%S|7!TNEkf`f;Ac?_m_ZP)BvRK;NJ!4v@7-9(yPbd;S80 zJu4t3m{o=KiwX0!A&9{3mM|TTG_vvPHQGN&;3WLXDvw07MYO$MpQuuDYH)GA{wJ<} z#f91%F!y^4g4voVs+GDY5)OTFXy;qq)l|xE&}sak!Ox2;sc<>=+0lh9qly2;)!5E| zD;=}9nscYjWk@b34kJX>tJj{x)zEhG*h<=dt?`J`r&EKg{CX9m`fiw)NqbI5qXl3A z(CJcV_5X{GE-T0yDGu#~ShRS9N`?bQhcL7WMJ} zXUe;&BW(BREip9VlyOw;s?DMnf54DER!j# zbM_tu;Z+(rPQ8#;Ud27|if=4+TTRDM@)1}bJSO{6Jq`^b-Ry!W@-dJ-tmaZ*0br(J zs1`wcLPsgM@p*(^(L$&_j#av#>H=evHTdk=3YF4R0E%jjiK$;!D(L}raO+teqU+E4 zV&$ZkWQ%54iu$bvdhKTfUE3Mmt-83$o6hO4MFlr=BaSWg*@JsE!|NvB8N_nyClGYU z?opN7ZH7xat1v@Rq9y4%PTEE>1;*#WwR4Ttj8@-fTwp%==G|AadCI@fxJ!ysiOvK>@Z=a|BH^UyDcX_mo2AM1^Gz##`PDU~ehI!%4KAVaR zUk|t$n)Mg8Qu|Q^V8=AEjlQ|dNK;2NU&ge2{m9?1|KYlP$IUB;??1L|Z<<_lbuX&E Z8jT%q0!!I+%qScsR3oS(v~P)6@;@ZBP2>Oo delta 14385 zcma)jeO#1P`ab78=XpTHab%HY5ow%=SRx!*H6q1{kjNBAG&M3CjkL6skkr(4G$S>m zkq76tm$i}1wbnHhb6nSKWUZ_%Be&hPLYi7L*VOPOGc)^M=RCal`Th0t^Qq6gJo7x~ z+~T~6^`PH7m)S%Nu=f5$wHH*0@jHh<64$5yRqW?EEKRQOWk0`Y!qH})(3 z^~49n3V4QD)zc$vcxQgHIjiw}&t?%LzfbJ=-th9Ms4s3ZFD2a3jm6^A9v$D9RlP@> ze-{H9&-Y&5jX4@0zh;TX1~&fWT*%pP%*U=P>BcH??V}ynH=e)F&S~R|qPE+`>cA6@ ziyyOF&3>cr3BB-=n5I$WS8kY>hm9xy1Qr{bRxe)AsY2)@C_J2{h8}!ftc#{LO&>_> zM{9QS8@hwGWa+c0!J)^I-y@RAw?~N3<=sMP)SRm4o1W@K+MK0($@RKOr^TkT?Je6AOh_h}wWwz14E@8C5nzR3=?#p(@)89z4B^p!ejzf%;D;|XCm zcmI@6X-BjX`$@rvGxe-FKi zd@Do@*;1lY$z6&YI6h$+<{LZWLP^)?D|qdnoMzhml*atBrf#8NKi$j8t?A|D_VM`8 z+zfpcBX2xQ38iG|%eDH4`JaOQ^_cB*3wx-;n$v0GswY=-s(Z_rOl_~R?AnVi^ZbRy zRC|&ao52f<>sQ#QaIcYOPA<%ZM_i$8{Y7sx{8lcxHuDi?IP9S6x!gs*DOwtR_>4$n zx6_$r><^~vdb|0yHwC}3)1w~Nmz+s#RmeBn*u~7mhpNm;W9*^Le`j%wnqARf)8zNq zG0GdNzZI8u#;;R>{xNvX0m_8Vkq-AeQy26B(w6i0{S9LOT#0s zqos5CeN@3&thseh67hMwjJ&__95WIy%)C7|QyeS9DW#as8{^6ShCZ;dXzy-DwVIwn zoBHc^+~X;8c3_R%cRV%xMR;k!6_FMl6?GWCTtl}`z`i2qM5g)fWhbkn4e#S|!Nb}> zv*fZtht@I=H8%)1d8&m?L`8kY$lg~>qx6$3-ZZ|kn@2xNF&$@Ip@JjEEJn8B`dKsK zp>-ke|Cqtd$usLi?x}j1HHK#gnfdjZO!7?@G3L~x+2-<(ycFMxjkrH5q_j1B2)UkQ z3H0$8>3?Iic>N>}vWeIVc6a^3n9!jB&t}wikU2t*7x-x&YI#*pgEuWRrcuRU-3Ylh z7n!$Hc%={Au)qVzxIqqVE1J`K@W@}3lRs5O7@OzjUKE8mJ(uR6=i|P5^ zFt;2}q||S8CpGA-!1NqXrb#RHG;;hCHd_B}2_-(lGXuA?aTL5?%Y_mD%1mEVDK+;q zGR?)uvdJ04M^NxPp19T_(#$Ju2E~7cN4rXxCvZVa#}W3TuZFYULg>3%DQf6PtyxmvlKcna#Q)J!>-F4KXF+`q6S+VU(fV%=$VKyBf40lT)ugwh6!9mC)*nBEqV6ES68n@ZVE?62>9l}Q* zn<%IC8eY{sjvQm}&vMzj<~G;$6rasDvaK=_m(s}tJe$XG3a7HUmY2$trgf<-Q=W%) z@RX8@BSK~%_YrLzDnkPKyR!^(23ZZAjAe+)H8O*}n@DHvY#K#A;zefLAknzh<>|30 znF(@@)}3&-v$SC^A4LBBdM0^lQO)6I*jul)Y%C($4BwK6i|(VhCun2I@g&cpMIY+U zz)X=w>G3={l<#0oJ-TH_-5({3!pk%zn!QHjV)=s<{uj<_&y9L);A7oRlcQlF745!h z#z^yRGleD>;UjorZeWS#q_p)sC6w=CHPPY*JTcUK6LZB;dJ7!mj~QA#wGNjzC`Q>0 zx3YBe?Ntf5%0){H+0*8@rxD3AZYLJPHJYx(D>rk!p%>zsqx9TK-kTx@%H`=1Y#{Cb z5!KbRny1m^5wMs#8D-&5@4!K&ErO5xE;<6Em<_(St(e^-t=^tGdye6WsMOLNbdw3m2WgMV__M>$h}wQq3%EpA5oESGV*=1%sls`h~`qPWuwB3ETn z|1~0xs>icbT0YluT{m64i)GRIRJ=vzucjTn#7GKugY7Hkid1ZJE2HoPSimz59?#Ro zTmpD<;frOQf*)&%X2rfT(=kXozybPrEt^TFC$S;KqmeKili=)ASK@8(9+pcxbhu8W z3|qnOSJB3^?ZAp+%aF-s;*eWTp-4YnLV+CGP$KRp$FtfDs;I@NtJ}N2Pw_ zZ<-ye_{1tLfQ=K$*@|=ZPh>-OPG)fi?OlKs*D-kt)3kD${4|fFk_8+!&O;VFx@9P{;hItO)d{^fH6PQeWR}Wg%`}FPAaHzf zwHM>5>H(xLWRg7cJ;c&NX%DhsFVP2KD4}(C!eMR38~Og$>_OB}4ht{8R`ZZ|3mm&l z*QEhpq&17#o2ncrqr{IqEWGz{riU&@%HsDu6gHyI%rIH?4mPo?{(sPv*r^ZfQpmo;rOTWi6KhyN1i09E%EU zCr=SDUPT5DCHy4v#rb83!kkq&4^^A8@5lO)CSxeFjCst+DI0a0$KvtKO4{%gzeZ;7 z07MMR7D@B}>9xH$IBX-0m@BX18Tp~i4p+5i^_|d6g44gc2s55 z%+N0@nFeHdTw6hrks^!zRl50~Xh#g7qW@ZBBsHuB20>D(q{?m`#ZiJ5T2_aZA*B^i z#AHS0p>yq-QN`f`6ZZOaG*YTRmgU!8%tC?bw}uZ>_=3K$YZ89m$O6&Y2n4hjD_saM zqKdZJJS+=e{+GinU?Uq*|I3SDW{-}bYkLJYK_*`&ZIWvGmOE)# z4j^9wyUnu-CL%43CayGWNN6mLy`~_LD{~TUeTQe^vd>I*Y%Geji~OG=CVg+<5ox8e z5N>5piEdGn8OI@j6?3NZ+u3M6s=Ewm1bC>bk*(%t!A*|F)clCno&$EX7Ts(rC}?yS z?CpssEV2T*c^Gc*C=oI2N0XgFxu1Y1dH%`rrLU|omo=d}eU7qpVYEo4ibIIf_{-cX zwbGC6^zke%Ih6$`M_z;>gkriBM#x(SkIsk78+D1YuJ#Hk+Ei z#F1c?F0*ZFDSi|$`EXyEPl{=IA$-r1fqb&46~$n`<@LTAZcwBdXeOl@w1Gi(H3y=nPOE$F941QzK!3)gA7Soc`?7C3eY1X1qPPQll zOH`Q0WibYoi%;)`0ebG>$vBxPM*dEGvA3Q+wJi=h4S5LUbR917r~tGpDVNCN)`TEkl8pXM8MmpQq~!EQ(F!WB=k zfLR#;b+Xtmb`pi1ykPx2GLz@wlQTGjt!i)Nx`d;fW>raKqZF$B37&^VUB$F=Vb ztwhU_v~#dUbJbzAU51GPy2?yfAc-danK__L0Jybl9*=NIIliM`=kl?Z>Z9sXvjK$F zbR6i-;AxvU=bccphBo|{4XV8<%WS?q7eD=jdQbK@^m4o#N>lD(gRC1Z6X1RdRDyL* zw$!9E^vP(ME+iH!`2{$*hQU|BP684(&86H}FgE9SZ7?t=Y_mD~XF-FEfdoyfpeEU~uG2D#acKq>hO}x*V7a{?wc?PRVlQjmCbv91-9P1qM#S-*J!tBy0E5s4<9QQQm(Tb#I-H6H zp6|<#(&4^%RX72O0ooXq^~KZbQg}7^?+7d+iylk?HG>h`Ieyt$`X+94WN~|;ysm#}p16(?I#r5`@ z?RBrczH01OK9Wmd{PGOsDkU*qIGGjCs5-ampL#U%)I|2+I1&;N>}Zgw(P+<&-?L z2^bjIvW|Uzm5So349d^{Bt@M^eoapb7zzSc(9&x` zZta7OEZX~ukjQ%w?fVfaQsphFysA@&SrR!NT*Ozi{VK5^oT^m@oVvglVjH9t&4DviiKE;%Gyf_fFYd@F5pg6oM|TukZujKF95$hG@my~ z)oey!2^Ug?r0{%X%=&r!b*fv6SIWZ=_;|MZwd*_apcHPCP{yGo_A}C``bS}>`X#U@ zG$iOdZ{QV zXh61@Kq+y$jT|d+)A+ukoYt*?bCiCr`6xUGbvSzkkDFNGb;>UCVQDh_6JEYZc#Z9SNiw^WX)0XC|5`k+3E1f^=u;pCZp9JJpNnv?rF^ zsA2+EUa?0=hWH-Dn+-@P{&iX|)vUo@6%P&i`Escj#>=?M4e<}ycph@!riVH7+!LGD zaZbL!8G}Q1GBU3ccFpkYeABnh8FH@Yt&AG#cy?n}#ix3x;g7~f*0}NcGJ^*Ezpfi+HgPkP>>cEL! zI)dT~{la0@gUDX)Mu;hZlun>diR9mldIY{DrMEa!Hzj3u$Q*1b_QU+y_~2Tp$&978 zM>H1@SHC0ROaLX5rD~EW1-Zo#ht*kT(&-2AM8rlqqGP}cfFs9hK8_}3i4=AxjcG>8 zb;KA&)VdFQ0hNOWvyZ2@tUpjr(_W^1B{FGFWwOdWLL1IPh7BI(dF={5%1ku;E(`UdlNU?z z8F$&DB#-pK7c$j;&RaCI;PXl3subz`O-AeA=Tj;8FfYOx{tqd<3!K=g=6xQ|wt~Jd zk)h$@tqswNt4s^u&;S*G<`i%Uxp22 z%QN|{6kAkEBi9w!Lh&p6CA7(czi_){T&uYuO&&u-ri-}1FSro+;lWPLr<5-KjEa@; zGxsU6&V5o8l5>WU8_GS+4|J!qsX8j(&-hvSClFp;9GL^^XoC6if_PeeiRVILr;l%D zSulVd2B=c`*NY-Y{!^&e8^>GeA=6q!+$mVN@Pw)k6}4YVy`@MJvim7`+9;%!?~p4Y zM1#}9N09aSF;3opER^h{4jAWOSJ)Ij6!8l*1?6mV#L6%QyS|4l|Q917$g<)LfU>e*o@Ta0=kxu0L4kPi%5f|9Tbi%r2`sLkD@!SR4tZgQm#2be>>1%AvM^P>-KD4#RWEX?WdX(a7xNjvJXQq^wl6dq-g$4vA_>G zeYJEtdP0ZX@*1m<6gs1bhQhMxFkQlfOw+Yp z1PV1|pdngIcM5(AR9^EMSo%oZVl{oT$Xcgt<^E(jWEa~+Yb(xDs(o)s?q7>?p#X)O z1_(Bm-4^=w4vlfDb+RG&{SfLm3z(~2U%W+;iBj2^l*fERemPvmYAQuu1i_5F7Y9U( zy`i*UeQ;o(==Y3*MO4QHeeO!)rCJu%j?pT*geJurk=~PKJ{ke3TmwizyNj9+0xkqS zxN*~HZN5cguzZOH2C5}JNcAV-+^Q9I@DRWRBHuCtR) zL+FO7+P@fWpM#3F+lzH6?giOk5;?qh9G1CEVGCMyH(~+@1Z;YcON8K(x%e;bdRe_* z0&6Vi=xYKn{TAuj_n>sa2Q^@wWe;mf7EU}q6QLlL2?b_7GjW7&ONa!T8E8FTYF{cr)I5R}AsM&BcRSvqx37qX9a#^`uN2b@nukh_>a2Zsp=OKVu{KmtyB)1L zG)KC!i2~z_sAjSr?MGr0%jIcQZi*L%dHxFtX{Lb+-5bc!lgQgmi=l^qRyDkell>a8 z3y=^z?{>L>WICQIGUOEahUFa6q(Ey*?!rOuk+u@xK8ht>Ou$Y#%iHHA#*?kTHbTwiCq*4Fr22Qy@cR z2+)VAZ3%i3JXm!>Ea`(9`U@dF5L(|BA**ni)ZM|lI-4=4e-RSc7Pq%c+HS;DlA`JN z-wF9?>y7ZP%3KXi>?07GKz4GV9dvEpcOSqM*qcL=HOUPmvXSMETyMe=XU&8tJ5pyc zp|DH1A*VV)L7%W|sR*_dIK{ixj$PLy`$BL4=*btWt)4bAJeu;70uL0eIt5G6Fx@p& z6tOFk2$(fXDk(e!qXEgQR4^?9CsSRV$zmb}M`|wKGm6}|h(%PDCk`U5b+%C{yb9EB zVje=%Qlr+LEbY9v@7R7%evBc8f5h90vU=y^Tp| z^c*t2xS70f83wsm!buJn0}z$pqs9vI^>Yv_KCl+hd>dSL9M=*z6$+t0j4$4!NAtu} zR@p?u)L|}qSISZGN}p40RFni4%8Y7lDQ7|dEY14hQId6sT*Gim9X;r2a#GPDi*b$R zn`rPjsctd6v`gGl^doz;$WSg=G7*ARumr9GkuFC9l#%Q@I#bn7OV&1Xhu(Ks0NO9wJ2@}fkaUJa|G={1nP0L|7 z07(WxfZOM#@@3~9S#*wAY|R`%tSwfx12?!0H(1cYi0!niQaBNO{Yu#sS+z5zoU=&w zi9Ph(Q7-$>S7<;gF#i@WzLeD-lPC5rxa#u4fXJ&r%AF#b|2|xbJP7&uwY>I|v~@_} zS>&546VFu9(o^>TFc~FVNNNxzt{-60R+^%rEoXV$Oz1)%0F)pRTP+}iUb5-w*vDMy z4WaMnh+YX)+n_JPN)O{-DB>Q7{#C1U4)wA%ZwS~NZY@?6yL3>1kj@p?T` zH@UK*uZEIlk^7)7yNdf!%){6ckZU_@_3G#q{az}xW2t#48;I?VRdWiM2F<1s&tlnV zJ0!9vIzbNFM20!_iy&mtfxv~UP%%(gB!cvPu~@VpQ&6;EPV^lVo0(d+8B>hmuphLd zM#onXPFIeg5sB+f-xo8wGz$uL*F~r$4hq<&&4QabcVvgMZ0t~Upi!RtcF__|8#nQz zviWDWyts>ee+I~Y_+4hF$a}^i`M+55561M1eKVgy-ruqH=GViLL&GIAn~oCK_~o^bLQd2q$VM*ZuisHnIo+*cf?zy4kPhayelGq#<2 zO)?&*mg9OJCMNKD4%vS&Y_{nSJW~0=Gg37Ey1=H1|so50y=B(=_I=5S~5MIpPAE9F@y9X*fLd@AuG6qh8c5&2sf1ll($Xfvj>siuBSg`>c69pzZW-JeGrUVPc{AjOJ^-oQF}}+cx|el z%xVD9?jZM1$YGce*eH`6hLoIKP6odeMfM-X4su=)yC~;EaoGWTQAyWk z!#|u92i${CF4Fhs*ihR4D&KB?FapDn@3CFhIQoLuF{F!+74+zD+M; zs!3k^!C&yAEhB+E@3Z(&@Bs5ho3EGeq2}SbD|GT0i)VrD0t4F#`igGs%9=+fkoRu} zh8zfOApcv2!i#~u#(X(09^|I4f0pU-#E0^0IdF@wr-ArQ(*YRkXSan;*YRGMYrhjm zqW(rfZZC98rv45KojquzX^jnYY%Jt@i8nKI-ScrF80lb2Q*W*|eP1z_$2NI(_ zw0^F390xO>oVRF$Lxaop54zQkPN3AswTbeqF#msWlaUbk4v^ik&&b?ap`Yiyp7{Cs zoG%`@zx$34&#l_F=}>D5^=jt*&4vqcA@>|TOS8{-^Y!4WIWM}ueB$QhEyK=Up{3nK zQmAgO{xGAniP7om?*>fI^h0DU)GpDo1-dhowm`>Vjc-pHVeTY`Vtsm|oI+YgfUDWE zlb5O=K(Y^5^bb=K#cP{&ff}utoTplk2k~99K*u!0GFZwi?{Bx-co&}1|DTbIc10CE zq8S}MXt-^?oI3PT_Hr;yHBZ*OKbO4E>e*1{6y@}Mrb$fyt8DQNm-=A}eci?iLxn5! zJq&|TpBUPWfa~A)!8im)*pp-il0TTOn&^_0VnWbCvCrrwRB;#+py6dGdec_v0|Cnv zV3u3OxPJ@cKoH%F!uz@0DE2!1v4ll(h|jCE-26|U8Na)L#{ z>2%m)pI?8V3owRO`SqJQ-L_sIK<8`qadN2$*Rx0O4agQyyff|b#z+Rwz zHyHD1>t&R(mjZe@qX89qHU*b!lX2lb9BPGCmL}EUq{JM_2%go;ts!Th2b5=zLyz6` zg3f!-j+zt++pM7=M!F z{8miIREkuKUe{athE^UI^BDd7sd&#V`nr7%p#zpyS}QQrgl#!X-A2JJhbj|z=C4vs+{6ApRuJ3UK6u?C5Zl>3aM zX#?QhttW6bJ{v))Cv^OoRL7VghMm*s5#q6EwSC? zbl{En@5;7Ef6GE2YK9jz{0F^|s)rj3$P*u(Z&semA$N>{vBBYnFVwWnSdZrLcGRf) z+l@>3X_Pr2xgP~zL^h9q3M$e6&)?h(+&RMV^)L^|Vw52^LH!qg6Mql#D6r;N_ZaD+ z^ohoDv)8M)=H&kV=ig-R{P~SH8v8xjcAdH5`rlB+^%|NfpJ~pWCynAUVrWOyQq|Dt G)&B>P{A|Sl