From 37d207f5b74dfa05c18a8608a29e1c128b4d7f73 Mon Sep 17 00:00:00 2001 From: Michael Guedko Date: Sat, 5 May 2018 19:09:40 -0400 Subject: [PATCH] Add files via upload --- IPA.Tests/IPA.Tests.csproj | 93 +++++ IPA.Tests/ProgramTest.cs | 39 ++ IPA.Tests/Properties/AssemblyInfo.cs | 36 ++ IPA.Tests/ShortcutTest.cs | 37 ++ IPA.Tests/packages.config | 11 + IPA/IPA.csproj | 99 +++++ IPA/PatchContext.cs | 63 +++ IPA/Patcher/BackupManager.cs | 39 ++ IPA/Patcher/BackupUnit.cs | 128 ++++++ IPA/Patcher/Patcher.cs | 99 +++++ IPA/Patcher/Virtualizer.cs | 115 ++++++ IPA/Program.cs | 365 ++++++++++++++++++ IPA/Properties/AssemblyInfo.cs | 36 ++ IPA/Shortcut.cs | 61 +++ IPA/favicon.ico | Bin 0 -> 32988 bytes .../Debug/IPA.csproj.CoreCompileInputs.cache | 1 + IPA/packages.config | 4 + IllusionInjector/Bootstrapper.cs | 30 ++ IllusionInjector/CompositePlugin.cs | 109 ++++++ IllusionInjector/ConsoleWindow.cs | 71 ++++ IllusionInjector/IllusionInjector.csproj | 66 ++++ IllusionInjector/Injector.cs | 25 ++ IllusionInjector/PluginComponent.cs | 74 ++++ IllusionInjector/PluginManager.cs | 128 ++++++ IllusionInjector/Properties/AssemblyInfo.cs | 36 ++ ...ionInjector.csproj.CoreCompileInputs.cache | 1 + LICENSE | 42 +- Launcher/Launcher.csproj | 91 +++++ Launcher/Program.cs | 100 +++++ Launcher/Properties/AssemblyInfo.cs | 36 ++ Launcher/Properties/Resources.Designer.cs | 63 +++ Launcher/Properties/Resources.resx | 117 ++++++ Launcher/Properties/Settings.Designer.cs | 26 ++ Launcher/Properties/Settings.settings | 7 + Launcher/Resources.Designer.cs | 63 +++ Launcher/Resources.resx | 121 ++++++ .../Launcher.csproj.CoreCompileInputs.cache | 1 + Launcher/packages.config | 4 + Launcher/syringe.ico | Bin 0 -> 32988 bytes Libs/UnityEngine.dll | Bin 0 -> 612352 bytes 40 files changed, 2416 insertions(+), 21 deletions(-) create mode 100644 IPA.Tests/IPA.Tests.csproj create mode 100644 IPA.Tests/ProgramTest.cs create mode 100644 IPA.Tests/Properties/AssemblyInfo.cs create mode 100644 IPA.Tests/ShortcutTest.cs create mode 100644 IPA.Tests/packages.config create mode 100644 IPA/IPA.csproj create mode 100644 IPA/PatchContext.cs create mode 100644 IPA/Patcher/BackupManager.cs create mode 100644 IPA/Patcher/BackupUnit.cs create mode 100644 IPA/Patcher/Patcher.cs create mode 100644 IPA/Patcher/Virtualizer.cs create mode 100644 IPA/Program.cs create mode 100644 IPA/Properties/AssemblyInfo.cs create mode 100644 IPA/Shortcut.cs create mode 100644 IPA/favicon.ico create mode 100644 IPA/obj/Debug/IPA.csproj.CoreCompileInputs.cache create mode 100644 IPA/packages.config create mode 100644 IllusionInjector/Bootstrapper.cs create mode 100644 IllusionInjector/CompositePlugin.cs create mode 100644 IllusionInjector/ConsoleWindow.cs create mode 100644 IllusionInjector/IllusionInjector.csproj create mode 100644 IllusionInjector/Injector.cs create mode 100644 IllusionInjector/PluginComponent.cs create mode 100644 IllusionInjector/PluginManager.cs create mode 100644 IllusionInjector/Properties/AssemblyInfo.cs create mode 100644 IllusionInjector/obj/Debug/IllusionInjector.csproj.CoreCompileInputs.cache create mode 100644 Launcher/Launcher.csproj create mode 100644 Launcher/Program.cs create mode 100644 Launcher/Properties/AssemblyInfo.cs create mode 100644 Launcher/Properties/Resources.Designer.cs create mode 100644 Launcher/Properties/Resources.resx create mode 100644 Launcher/Properties/Settings.Designer.cs create mode 100644 Launcher/Properties/Settings.settings create mode 100644 Launcher/Resources.Designer.cs create mode 100644 Launcher/Resources.resx create mode 100644 Launcher/obj/Debug/Launcher.csproj.CoreCompileInputs.cache create mode 100644 Launcher/packages.config create mode 100644 Launcher/syringe.ico create mode 100644 Libs/UnityEngine.dll diff --git a/IPA.Tests/IPA.Tests.csproj b/IPA.Tests/IPA.Tests.csproj new file mode 100644 index 00000000..43612e6d --- /dev/null +++ b/IPA.Tests/IPA.Tests.csproj @@ -0,0 +1,93 @@ + + + + + + Debug + AnyCPU + {C66092B0-5C1E-44E9-B524-E0E8E1425379} + Library + Properties + IPA.Tests + IPA.Tests + v4.5.2 + 512 + + + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + ..\packages\xunit.abstractions.2.0.0\lib\net35\xunit.abstractions.dll + True + + + ..\packages\xunit.assert.2.1.0\lib\dotnet\xunit.assert.dll + True + + + ..\packages\xunit.extensibility.core.2.1.0\lib\dotnet\xunit.core.dll + True + + + ..\packages\xunit.extensibility.execution.2.1.0\lib\net45\xunit.execution.desktop.dll + True + + + + + + + + + + + + + {14092533-98bb-40a4-9afc-27bb75672a70} + IPA + + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + \ No newline at end of file diff --git a/IPA.Tests/ProgramTest.cs b/IPA.Tests/ProgramTest.cs new file mode 100644 index 00000000..c13b6c83 --- /dev/null +++ b/IPA.Tests/ProgramTest.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Xunit; + +namespace IPA.Tests +{ + public class ProgramTest + { + [Theory] + // Unrelated path + [InlineData("test/from.dll", "test/to.dll", "native", false, new string[] { "test/to.dll" })] + + // Flat -> Not-Flat + [InlineData("native/from.dll", "native/to.dll", "native", false, new string[] { "native/x86/to.dll", "native/x86_64/to.dll" })] + + // Flat -> Flat + [InlineData("native/from.dll", "native/to.dll", "native", true, new string[] { "native/to.dll" })] + + // Not-Flat -> Flat + [InlineData("native/x86/from.dll", "native/x86/to.dll", "native", true, new string[] { })] + [InlineData("native/x86_64/from.dll", "native/x86_64/to.dll", "native", true, new string[] { "native/to.dll" })] + + // Not-flat -> Not-Flat + [InlineData("native/x86/from.dll", "native/x86/to.dll", "native", false, new string[] { "native/x86/to.dll" })] + [InlineData("native/x86_64/from.dll", "native/x86_64/to.dll", "native", false, new string[] { "native/x86_64/to.dll" })] + + public void CopiesCorrectly(string from, string to, string nativeFolder, bool isFlat, string[] expected) + { + var outcome = Program.NativePluginInterceptor(new FileInfo(from), new FileInfo(to), new DirectoryInfo(nativeFolder), isFlat).Select(f => f.FullName).ToList(); + + var expectedPaths = expected.Select(e => new FileInfo(e)).Select(f => f.FullName).ToList(); + Assert.Equal(expectedPaths, outcome); + } + } +} diff --git a/IPA.Tests/Properties/AssemblyInfo.cs b/IPA.Tests/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..d237d239 --- /dev/null +++ b/IPA.Tests/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("IPA.Tests")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("IPA.Tests")] +[assembly: AssemblyCopyright("Copyright © 2017")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("c66092b0-5c1e-44e9-b524-e0e8e1425379")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/IPA.Tests/ShortcutTest.cs b/IPA.Tests/ShortcutTest.cs new file mode 100644 index 00000000..338b48f4 --- /dev/null +++ b/IPA.Tests/ShortcutTest.cs @@ -0,0 +1,37 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Xunit; + +namespace IPA.Tests +{ + public class ShortcutTest + { + [Fact] + public void CanDealWithEmptyFiles() + { + Shortcut.Create(".lnk", "", "", "", "", "", ""); + } + + [Fact] + public void CanDealWithLongFiles() + { + Shortcut.Create(".lnk", Path.Combine(Path.GetTempPath(), string.Join("_", new string[500])), "", "", "", "", ""); + } + + [Fact] + public void CantDealWithNull() + { + Assert.Throws(() => Shortcut.Create(".lnk", null, "", "", "", "", "")); + } + + [Fact] + public void CanDealWithWeirdCharacters() + { + Shortcut.Create(".lnk", "äöü", "", "", "", "", ""); + } + } +} diff --git a/IPA.Tests/packages.config b/IPA.Tests/packages.config new file mode 100644 index 00000000..221bd9f3 --- /dev/null +++ b/IPA.Tests/packages.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/IPA/IPA.csproj b/IPA/IPA.csproj new file mode 100644 index 00000000..ea60e62b --- /dev/null +++ b/IPA/IPA.csproj @@ -0,0 +1,99 @@ + + + + + Debug + AnyCPU + {14092533-98BB-40A4-9AFC-27BB75672A70} + Exe + Properties + IPA + IPA + v3.5 + 512 + Client + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + none + true + bin\Release\ + TRACE + prompt + 4 + + + favicon.ico + + + + ..\packages\Mono.Cecil.0.9.6.4\lib\net35\Mono.Cecil.dll + True + + + ..\packages\Mono.Cecil.0.9.6.4\lib\net35\Mono.Cecil.Mdb.dll + False + + + ..\packages\Mono.Cecil.0.9.6.4\lib\net35\Mono.Cecil.Pdb.dll + False + + + ..\packages\Mono.Cecil.0.9.6.4\lib\net35\Mono.Cecil.Rocks.dll + False + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/IPA/PatchContext.cs b/IPA/PatchContext.cs new file mode 100644 index 00000000..2ca0e519 --- /dev/null +++ b/IPA/PatchContext.cs @@ -0,0 +1,63 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; + +namespace IPA +{ + public class PatchContext + { + /// + /// Gets the filename of the executable. + /// + public string Executable { get; private set; } + + /// + /// Gets the path to the launcher executable (in the IPA folder) + /// + public string LauncherPathSrc { get; private set; } + public string DataPathSrc { get; private set; } + public string PluginsFolder { get; private set; } + public string ProjectName { get; private set; } + public string DataPathDst { get; private set; } + public string ManagedPath { get; private set; } + public string EngineFile { get; private set; } + public string AssemblyFile { get; private set; } + public string[] Args { get; private set; } + public string ProjectRoot { get; private set; } + public string IPARoot { get; private set; } + public string ShortcutPath { get; private set; } + public string IPA { get; private set; } + public string BackupPath { get; private set; } + + private PatchContext() { } + + public static PatchContext Create(String[] args) + { + var context = new PatchContext(); + + context.Args = args; + context.Executable = args[0]; + context.ProjectRoot = new FileInfo(context.Executable).Directory.FullName; + context.IPARoot = Path.Combine(context.ProjectRoot, "IPA"); + context.IPA = Assembly.GetExecutingAssembly().Location ?? Path.Combine(context.ProjectRoot, "IPA.exe"); + context.LauncherPathSrc = Path.Combine(context.IPARoot, "Launcher.exe"); + context.DataPathSrc = Path.Combine(context.IPARoot, "Data"); + context.PluginsFolder = Path.Combine(context.ProjectRoot, "Plugins"); + context.ProjectName = Path.GetFileNameWithoutExtension(context.Executable); + context.DataPathDst = Path.Combine(context.ProjectRoot, context.ProjectName + "_Data"); + context.ManagedPath = Path.Combine(context.DataPathDst, "Managed"); + context.EngineFile = Path.Combine(context.ManagedPath, "UnityEngineCore.dll"); + context.AssemblyFile = Path.Combine(context.ManagedPath, "Assembly-CSharp.dll"); + context.BackupPath = Path.Combine(Path.Combine(context.IPARoot, "Backups"), context.ProjectName); + string shortcutName = string.Format("{0} (Patch & Launch)", context.ProjectName); + context.ShortcutPath = Path.Combine(context.ProjectRoot, shortcutName) + ".lnk"; + + Directory.CreateDirectory(context.BackupPath); + + return context; + } + } +} diff --git a/IPA/Patcher/BackupManager.cs b/IPA/Patcher/BackupManager.cs new file mode 100644 index 00000000..c129c397 --- /dev/null +++ b/IPA/Patcher/BackupManager.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Text.RegularExpressions; + +namespace IPA.Patcher +{ + public class BackupManager + { + public static BackupUnit FindLatestBackup(PatchContext context) + { + return new DirectoryInfo(context.BackupPath) + .GetDirectories() + .OrderByDescending(p => p.Name) + .Select(p => BackupUnit.FromDirectory(p, context)) + .FirstOrDefault(); + } + + public static bool HasBackup(PatchContext context) + { + return FindLatestBackup(context) != null; + } + + public static bool Restore(PatchContext context) + { + var backup = FindLatestBackup(context); + if(backup != null) + { + backup.Restore(); + backup.Delete(); + return true; + } + return false; + } + + } +} diff --git a/IPA/Patcher/BackupUnit.cs b/IPA/Patcher/BackupUnit.cs new file mode 100644 index 00000000..70674834 --- /dev/null +++ b/IPA/Patcher/BackupUnit.cs @@ -0,0 +1,128 @@ +using System; +using System.Collections.Generic; +using System.Collections.Specialized; +using System.IO; +using System.Linq; +using System.Text; + +namespace IPA.Patcher +{ + /// + /// A unit for backup. WIP. + /// + public class BackupUnit + { + public string Name { get; private set; } + + private DirectoryInfo _BackupPath; + private PatchContext _Context; + private List _Files = new List(); + + + + public BackupUnit(PatchContext context) : this(context, DateTime.Now.ToString("yyyy-MM-dd_h-mm-ss")) + { + } + + private BackupUnit(PatchContext context, string name) + { + Name = name; + _Context = context; + _BackupPath = new DirectoryInfo(Path.Combine(_Context.BackupPath, Name)); + } + + public static BackupUnit FromDirectory(DirectoryInfo directory, PatchContext context) + { + var unit = new BackupUnit(context, directory.Name); + + // Parse directory + foreach(var file in directory.GetFiles("*", SearchOption.AllDirectories)) { + var relativePath = file.FullName.Substring(directory.FullName.Length + 1); + unit._Files.Add(relativePath); + } + + return unit; + } + + public void Add(string file) + { + Add(new FileInfo(file)); + } + + internal void Delete() + { + _BackupPath.Delete(true); + } + + /// + /// Adds a file to the list of changed files and backups it. + /// + /// + public void Add(FileInfo file) + { + if(!file.FullName.StartsWith(_Context.ProjectRoot)) + { + Console.Error.WriteLine("Invalid file path for backup! {0}", file); + return; + } + + var relativePath = file.FullName.Substring(_Context.ProjectRoot.Length + 1); + var backupPath = new FileInfo(Path.Combine(_BackupPath.FullName, relativePath)); + + if(_Files.Contains(relativePath)) + { + Console.WriteLine("Skipping backup of {0}", relativePath); + return; + } + + + // Copy over + backupPath.Directory.Create(); + if (file.Exists) + { + file.CopyTo(backupPath.FullName); + } else + { + // Make empty file + backupPath.Create().Close(); + } + + // Add to list + _Files.Add(relativePath); + } + + /// + /// Reverts the changes made in this unit. + /// + public void Restore() + { + foreach(var relativePath in _Files) + { + Console.WriteLine("Restoring {0}", relativePath); + // Original version + var backupFile = new FileInfo(Path.Combine(_BackupPath.FullName, relativePath)); + var target = new FileInfo(Path.Combine(_Context.ProjectRoot, relativePath)); + + if (backupFile.Exists) + { + if (backupFile.Length > 0) + { + Console.WriteLine(" {0} => {1}", backupFile.FullName, target.FullName); + target.Directory.Create(); + backupFile.CopyTo(target.FullName, true); + } else + { + Console.WriteLine(" x {0}", target.FullName); + if(target.Exists) + { + target.Delete(); + } + } + } else { + Console.Error.WriteLine("Backup not found!"); + } + } + } + + } +} diff --git a/IPA/Patcher/Patcher.cs b/IPA/Patcher/Patcher.cs new file mode 100644 index 00000000..f9f7d28c --- /dev/null +++ b/IPA/Patcher/Patcher.cs @@ -0,0 +1,99 @@ +using Mono.Cecil; +using Mono.Cecil.Cil; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; + +namespace IPA.Patcher +{ + class PatchedModule + { + private static readonly string[] ENTRY_TYPES = { "Input", "Display" }; + + private FileInfo _File; + private ModuleDefinition _Module; + + public static PatchedModule Load(string engineFile) + { + return new PatchedModule(engineFile); + } + + private PatchedModule(string engineFile) + { + _File = new FileInfo(engineFile); + + LoadModules(); + } + + private void LoadModules() + { + var resolver = new DefaultAssemblyResolver(); + resolver.AddSearchDirectory(_File.DirectoryName); + + var parameters = new ReaderParameters + { + AssemblyResolver = resolver, + }; + + _Module = ModuleDefinition.ReadModule(_File.FullName, parameters); + } + + public bool IsPatched + { + get + { + foreach (var @ref in _Module.AssemblyReferences) + { + if (@ref.Name == "IllusionInjector") return true; + } + return false; + } + } + + public void Patch() + { + // First, let's add the reference + var nameReference = new AssemblyNameReference("IllusionInjector", new Version(1, 0, 0, 0)); + var injectorPath = Path.Combine(_File.DirectoryName, "IllusionInjector.dll"); + var injector = ModuleDefinition.ReadModule(injectorPath); + + _Module.AssemblyReferences.Add(nameReference); + int patched = 0; + foreach(var type in FindEntryTypes()) + { + if(PatchType(type, injector)) + { + patched++; + } + } + + if(patched > 0) + { + _Module.Write(_File.FullName); + } else + { + throw new Exception("Could not find any entry type!"); + } + } + + private bool PatchType(TypeDefinition targetType, ModuleDefinition injector) + { + var targetMethod = targetType.Methods.FirstOrDefault(m => m.IsConstructor && m.IsStatic); + if (targetMethod != null) + { + var methodReference = _Module.Import(injector.GetType("IllusionInjector.Injector").Methods.First(m => m.Name == "Inject")); + targetMethod.Body.Instructions.Insert(0, Instruction.Create(OpCodes.Call, methodReference)); + return true; + } + return false; + } + + + private IEnumerable FindEntryTypes() + { + return _Module.GetTypes().Where(m => ENTRY_TYPES.Contains(m.Name)); + } + } +} diff --git a/IPA/Patcher/Virtualizer.cs b/IPA/Patcher/Virtualizer.cs new file mode 100644 index 00000000..c5dab7a2 --- /dev/null +++ b/IPA/Patcher/Virtualizer.cs @@ -0,0 +1,115 @@ +using Mono.Cecil; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; + +namespace IPA.Patcher +{ + class VirtualizedModule + { + private const string ENTRY_TYPE = "Display"; + + private FileInfo _File; + private ModuleDefinition _Module; + + public static VirtualizedModule Load(string engineFile) + { + return new VirtualizedModule(engineFile); + } + + private VirtualizedModule(string assemblyFile) + { + _File = new FileInfo(assemblyFile); + + LoadModules(); + } + + private void LoadModules() + { + var resolver = new DefaultAssemblyResolver(); + resolver.AddSearchDirectory(_File.DirectoryName); + + var parameters = new ReaderParameters + { + AssemblyResolver = resolver, + }; + + _Module = ModuleDefinition.ReadModule(_File.FullName, parameters); + } + + /// + /// + /// + /// + public void Virtualize() + { + foreach (var type in _Module.Types) + { + VirtualizeType(type); + } + + _Module.Write(_File.FullName); + } + + private void VirtualizeType(TypeDefinition type) + { + if(type.IsSealed) + { + // Unseal + type.IsSealed = false; + } + + if (type.IsInterface) return; + if (type.IsAbstract) return; + + // These two don't seem to work. + if (type.Name == "SceneControl" || type.Name == "ConfigUI") return; + + Console.WriteLine("Virtualizing {0}", type.Name); + // Take care of sub types + foreach (var subType in type.NestedTypes) + { + VirtualizeType(subType); + } + + foreach (var method in type.Methods) + { + if (method.IsManaged + && method.IsIL + && !method.IsStatic + && !method.IsVirtual + && !method.IsAbstract + && !method.IsAddOn + && !method.IsConstructor + && !method.IsSpecialName + && !method.IsGenericInstance + && !method.HasOverrides) + { + method.IsVirtual = true; + method.IsPublic = true; + method.IsPrivate = false; + method.IsNewSlot = true; + method.IsHideBySig = true; + } + } + + foreach (var field in type.Fields) + { + if (field.IsPrivate) field.IsFamily = true; + } + } + + public bool IsVirtualized + { + get + { + var awakeMethods = _Module.GetTypes().SelectMany(t => t.Methods.Where(m => m.Name == "Awake")); + if (awakeMethods.Count() == 0) return false; + + return ((float)awakeMethods.Count(m => m.IsVirtual) / awakeMethods.Count()) > 0.5f; + } + } + } +} diff --git a/IPA/Program.cs b/IPA/Program.cs new file mode 100644 index 00000000..d188f204 --- /dev/null +++ b/IPA/Program.cs @@ -0,0 +1,365 @@ +using IPA.Patcher; +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Runtime.InteropServices; +using System.Text; +using System.Text.RegularExpressions; +using System.Windows.Forms; + +namespace IPA +{ + + public class Program + { + public enum Architecture { + x86, + x64, + Unknown + } + + static void Main(string[] args) + { + if(args.Length < 1 || !args[0].EndsWith(".exe")) + { + Fail("Drag an (executable) file on the exe!"); + } + + try + { + var context = PatchContext.Create(args); + bool isRevert = args.Contains("--revert") || Keyboard.IsKeyDown(Keys.LMenu); + // Sanitizing + Validate(context); + + if (isRevert) + { + Revert(context); + } + else + { + Install(context); + StartIfNeedBe(context); + } + } catch(Exception e) + { + Fail(e.Message); + } + } + + private static void Validate(PatchContext c) + { + if (!File.Exists(c.LauncherPathSrc)) Fail("Couldn't find DLLs! Make sure you extracted all contents of the release archive."); + if (!Directory.Exists(c.DataPathDst) || !File.Exists(c.EngineFile)) + { + Fail("Game does not seem to be a Unity project. Could not find the libraries to patch."); + } + } + + private static void Install(PatchContext context) + { + try + { + var backup = new BackupUnit(context); + + // Copying + Console.WriteLine("Updating files... "); + var nativePluginFolder = Path.Combine(context.DataPathDst, "Plugins"); + bool isFlat = Directory.Exists(nativePluginFolder) && Directory.GetFiles(nativePluginFolder).Any(f => f.EndsWith(".dll")); + bool force = !BackupManager.HasBackup(context) || context.Args.Contains("-f") || context.Args.Contains("--force"); + var architecture = DetectArchitecture(context.Executable); + + Console.WriteLine("Architecture: {0}", architecture); + + CopyAll(new DirectoryInfo(context.DataPathSrc), new DirectoryInfo(context.DataPathDst), force, backup, + (from, to) => NativePluginInterceptor(from, to, new DirectoryInfo(nativePluginFolder), isFlat, architecture) ); + + Console.WriteLine("Successfully updated files!"); + + if (!Directory.Exists(context.PluginsFolder)) + { + Console.WriteLine("Creating plugins folder... "); + Directory.CreateDirectory(context.PluginsFolder); + } + + // Patching + var patchedModule = PatchedModule.Load(context.EngineFile); + if (!patchedModule.IsPatched) + { + Console.Write("Patching UnityEngine.dll... "); + backup.Add(context.EngineFile); + patchedModule.Patch(); + Console.WriteLine("Done!"); + } + + // Virtualizing + if (File.Exists(context.AssemblyFile)) + { + var virtualizedModule = VirtualizedModule.Load(context.AssemblyFile); + if (!virtualizedModule.IsVirtualized) + { + Console.Write("Virtualizing Assembly-Csharp.dll... "); + backup.Add(context.AssemblyFile); + virtualizedModule.Virtualize(); + Console.WriteLine("Done!"); + } + } + + // Creating shortcut + if(!File.Exists(context.ShortcutPath)) + { + Console.Write("Creating shortcut to IPA ({0})... ", context.IPA); + try + { + Shortcut.Create( + fileName: context.ShortcutPath, + targetPath: context.IPA, + arguments: Args(context.Executable, "--launch"), + workingDirectory: context.ProjectRoot, + description: "Launches the game and makes sure it's in a patched state", + hotkey: "", + iconPath: context.Executable + ); + Console.WriteLine("Created"); + } catch (Exception e) + { + Console.Error.WriteLine("Failed to create shortcut, but game was patched!"); + } + } + } + catch (Exception e) + { + Fail("Oops! This should not have happened.\n\n" + e); + } + + + Console.ForegroundColor = ConsoleColor.Green; + Console.WriteLine("Finished!"); + Console.ResetColor(); + + } + + private static void Revert(PatchContext context) + { + Console.Write("Restoring backup... "); + if(BackupManager.Restore(context)) + { + Console.WriteLine("Done!"); + } else + { + Console.WriteLine("Already vanilla!"); + } + + + if (File.Exists(context.ShortcutPath)) + { + Console.WriteLine("Deleting shortcut..."); + File.Delete(context.ShortcutPath); + } + + Console.WriteLine(""); + Console.WriteLine("--- Done reverting ---"); + + if (!Environment.CommandLine.Contains("--nowait")) + { + Console.WriteLine("\n\n[Press any key to quit]"); + Console.ReadKey(); + } + } + + private static void StartIfNeedBe(PatchContext context) + { + var argList = context.Args.ToList(); + bool launch = argList.Remove("--launch"); + + argList.RemoveAt(0); + + if(launch) + { + Process.Start(context.Executable, Args(argList.ToArray())); + } + } + + public static IEnumerable NativePluginInterceptor(FileInfo from, FileInfo to, DirectoryInfo nativePluginFolder, bool isFlat, Architecture preferredArchitecture) + { + if (to.FullName.StartsWith(nativePluginFolder.FullName)) + { + var relevantBit = to.FullName.Substring(nativePluginFolder.FullName.Length + 1); + // Goes into the plugin folder! + bool isFileFlat = !relevantBit.StartsWith("x86"); + if (isFlat && !isFileFlat) + { + // Flatten structure + bool is64Bit = relevantBit.StartsWith("x86_64"); + if (!is64Bit && preferredArchitecture == Architecture.x86) + { + // 32 bit + yield return new FileInfo(Path.Combine(nativePluginFolder.FullName, relevantBit.Substring("x86".Length + 1))); + } + else if(is64Bit && (preferredArchitecture == Architecture.x64 || preferredArchitecture == Architecture.Unknown)) + { + // 64 bit + yield return new FileInfo(Path.Combine(nativePluginFolder.FullName, relevantBit.Substring("x86_64".Length + 1))); + } else { + // Throw away + yield break; + } + } + else if (!isFlat && isFileFlat) + { + // Deepen structure + yield return new FileInfo(Path.Combine(Path.Combine(nativePluginFolder.FullName, "x86"), relevantBit)); + yield return new FileInfo(Path.Combine(Path.Combine(nativePluginFolder.FullName, "x86_64"), relevantBit)); + } + else + { + yield return to; + } + } + else + { + yield return to; + } + } + private static IEnumerable PassThroughInterceptor(FileInfo from, FileInfo to) + { + yield return to; + } + + public static void CopyAll(DirectoryInfo source, DirectoryInfo target, bool aggressive, BackupUnit backup, Func> interceptor = null) + { + if(interceptor == null) + { + interceptor = PassThroughInterceptor; + } + + // Copy each file into the new directory. + foreach (FileInfo fi in source.GetFiles()) + { + foreach(var targetFile in interceptor(fi, new FileInfo(Path.Combine(target.FullName, fi.Name)))) { + if (!targetFile.Exists || targetFile.LastWriteTimeUtc < fi.LastWriteTimeUtc || aggressive) + { + targetFile.Directory.Create(); + + Console.WriteLine(@"Copying {0}", targetFile.FullName); + backup.Add(targetFile); + fi.CopyTo(targetFile.FullName, true); + } + } + } + + // Copy each subdirectory using recursion. + foreach (DirectoryInfo diSourceSubDir in source.GetDirectories()) + { + DirectoryInfo nextTargetSubDir = new DirectoryInfo(Path.Combine(target.FullName, diSourceSubDir.Name)); + CopyAll(diSourceSubDir, nextTargetSubDir, aggressive, backup, interceptor); + } + } + + + static void Fail(string message) + { + Console.Error.Write("ERROR: " + message); + if (!Environment.CommandLine.Contains("--nowait")) + { + Console.WriteLine("\n\n[Press any key to quit]"); + Console.ReadKey(); + } + Environment.Exit(1); + } + + public static string Args(params string[] args) + { + return string.Join(" ", args.Select(EncodeParameterArgument).ToArray()); + } + + /// + /// Encodes an argument for passing into a program + /// + /// The value that should be received by the program + /// The value which needs to be passed to the program for the original value + /// to come through + public static string EncodeParameterArgument(string original) + { + if (string.IsNullOrEmpty(original)) + return original; + string value = Regex.Replace(original, @"(\\*)" + "\"", @"$1\$0"); + value = Regex.Replace(value, @"^(.*\s.*?)(\\*)$", "\"$1$2$2\""); + return value; + } + + public static Architecture DetectArchitecture(string assembly) + { + using (var reader = new BinaryReader(File.OpenRead(assembly))) + { + var header = reader.ReadUInt16(); + if(header == 0x5a4d) + { + reader.BaseStream.Seek(60, SeekOrigin.Begin); // this location contains the offset for the PE header + var peOffset = reader.ReadUInt32(); + + reader.BaseStream.Seek(peOffset + 4, SeekOrigin.Begin); + var machine = reader.ReadUInt16(); + + if (machine == 0x8664) // IMAGE_FILE_MACHINE_AMD64 + return Architecture.x64; + else if (machine == 0x014c) // IMAGE_FILE_MACHINE_I386 + return Architecture.x86; + else if (machine == 0x0200) // IMAGE_FILE_MACHINE_IA64 + return Architecture.x64; + else + return Architecture.Unknown; + } else + { + // Not a supported binary + return Architecture.Unknown; + } + } + } + + public abstract class Keyboard + { + [Flags] + private enum KeyStates + { + None = 0, + Down = 1, + Toggled = 2 + } + + [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)] + private static extern short GetKeyState(int keyCode); + + private static KeyStates GetKeyState(Keys key) + { + KeyStates state = KeyStates.None; + + short retVal = GetKeyState((int)key); + + //If the high-order bit is 1, the key is down + //otherwise, it is up. + if ((retVal & 0x8000) == 0x8000) + state |= KeyStates.Down; + + //If the low-order bit is 1, the key is toggled. + if ((retVal & 1) == 1) + state |= KeyStates.Toggled; + + return state; + } + + public static bool IsKeyDown(Keys key) + { + return KeyStates.Down == (GetKeyState(key) & KeyStates.Down); + } + + public static bool IsKeyToggled(Keys key) + { + return KeyStates.Toggled == (GetKeyState(key) & KeyStates.Toggled); + } + } + } +} diff --git a/IPA/Properties/AssemblyInfo.cs b/IPA/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..01143c29 --- /dev/null +++ b/IPA/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Illusion Plugin Architecture")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Illusion Plugin Architecture")] +[assembly: AssemblyCopyright("Copyright © 2016")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("14092533-98bb-40a4-9afc-27bb75672a70")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("3.1.1.0")] +[assembly: AssemblyFileVersion("3.1.1.0")] diff --git a/IPA/Shortcut.cs b/IPA/Shortcut.cs new file mode 100644 index 00000000..980bdc13 --- /dev/null +++ b/IPA/Shortcut.cs @@ -0,0 +1,61 @@ +using System; +using System.Runtime.InteropServices; + +namespace IPA +{ + public class Shortcut + { + private static Type m_type = Type.GetTypeFromProgID("WScript.Shell"); + private static object m_shell = Activator.CreateInstance(m_type); + + [ComImport, TypeLibType((short)0x1040), Guid("F935DC23-1CF0-11D0-ADB9-00C04FD58A0B")] + private interface IWshShortcut + { + [DispId(0)] + string FullName { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0)] get; } + + [DispId(0x3e8)] + string Arguments { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0x3e8)] get; [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3e8)] set; } + + [DispId(0x3e9)] + string Description { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0x3e9)] get; [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3e9)] set; } + + [DispId(0x3ea)] + string Hotkey { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0x3ea)] get; [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3ea)] set; } + + [DispId(0x3eb)] + string IconLocation { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0x3eb)] get; [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3eb)] set; } + + [DispId(0x3ec)] + string RelativePath { [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3ec)] set; } + + [DispId(0x3ed)] + string TargetPath { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0x3ed)] get; [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3ed)] set; } + + [DispId(0x3ee)] + int WindowStyle { [DispId(0x3ee)] get; [param: In] [DispId(0x3ee)] set; } + + [DispId(0x3ef)] + string WorkingDirectory { [return: MarshalAs(UnmanagedType.BStr)] [DispId(0x3ef)] get; [param: In, MarshalAs(UnmanagedType.BStr)] [DispId(0x3ef)] set; } + + [TypeLibFunc((short)0x40), DispId(0x7d0)] + void Load([In, MarshalAs(UnmanagedType.BStr)] string PathLink); + + [DispId(0x7d1)] + void Save(); + } + + public static void Create(string fileName, string targetPath, string arguments, string workingDirectory, string description, string hotkey, string iconPath) + { + IWshShortcut shortcut = (IWshShortcut)m_type.InvokeMember("CreateShortcut", System.Reflection.BindingFlags.InvokeMethod, null, m_shell, new object[] { fileName }); + shortcut.Description = description; + shortcut.Hotkey = hotkey; + shortcut.TargetPath = targetPath; + shortcut.WorkingDirectory = workingDirectory; + shortcut.Arguments = arguments; + if (!string.IsNullOrEmpty(iconPath)) + shortcut.IconLocation = iconPath; + shortcut.Save(); + } + } +} \ No newline at end of file diff --git a/IPA/favicon.ico b/IPA/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..ae925ef5c6673b102f82b0d1cb6f619a34c5780e GIT binary patch literal 32988 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 literal 0 HcmV?d00001 diff --git a/IPA/obj/Debug/IPA.csproj.CoreCompileInputs.cache b/IPA/obj/Debug/IPA.csproj.CoreCompileInputs.cache new file mode 100644 index 00000000..48437bcb --- /dev/null +++ b/IPA/obj/Debug/IPA.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +f7c20aca6b99cd3b62d50a05d9bdca1eb41dca2a diff --git a/IPA/packages.config b/IPA/packages.config new file mode 100644 index 00000000..bc985110 --- /dev/null +++ b/IPA/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/IllusionInjector/Bootstrapper.cs b/IllusionInjector/Bootstrapper.cs new file mode 100644 index 00000000..f84bbe73 --- /dev/null +++ b/IllusionInjector/Bootstrapper.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEngine; + +namespace IllusionInjector +{ + class Bootstrapper : MonoBehaviour + { + public event Action Destroyed = delegate {}; + + void Awake() + { + if (Environment.CommandLine.Contains("--verbose") && !Screen.fullScreen) + { + Windows.GuiConsole.CreateConsole(); + } + } + + void Start() + { + Destroy(gameObject); + } + void OnDestroy() + { + Destroyed(); + } + } +} diff --git a/IllusionInjector/CompositePlugin.cs b/IllusionInjector/CompositePlugin.cs new file mode 100644 index 00000000..1e4de7f9 --- /dev/null +++ b/IllusionInjector/CompositePlugin.cs @@ -0,0 +1,109 @@ +using IllusionPlugin; +using System; +using System.Collections.Generic; +using System.Text; +using UnityEngine; + +namespace IllusionInjector +{ + public class CompositePlugin : IPlugin + { + IEnumerable plugins; + + private delegate void CompositeCall(IPlugin plugin); + + public CompositePlugin(IEnumerable plugins) + { + this.plugins = plugins; + } + + public void OnApplicationStart() + { + Invoke(plugin => plugin.OnApplicationStart()); + } + + public void OnApplicationQuit() + { + Invoke(plugin => plugin.OnApplicationQuit()); + } + + public void OnLevelWasLoaded(int level) + { + foreach (var plugin in plugins) + { + try + { + plugin.OnLevelWasLoaded(level); + } + catch (Exception ex) + { + Console.WriteLine("{0}: {1}", plugin.Name, ex); + } + } + } + + + private void Invoke(CompositeCall callback) + { + foreach (var plugin in plugins) + { + try + { + callback(plugin); + } + catch (Exception ex) + { + Console.WriteLine("{0}: {1}", plugin.Name, ex); + } + } + } + + + + public void OnLevelWasInitialized(int level) + { + foreach (var plugin in plugins) + { + try + { + plugin.OnLevelWasInitialized(level); + } + catch (Exception ex) + { + Console.WriteLine("{0}: {1}", plugin.Name, ex); + } + } + } + + + public void OnUpdate() + { + Invoke(plugin => plugin.OnUpdate()); + } + + public void OnFixedUpdate() + { + Invoke(plugin => plugin.OnFixedUpdate()); + } + + + public string Name + { + get { throw new NotImplementedException(); } + } + + public string Version + { + get { throw new NotImplementedException(); } + } + + public void OnLateUpdate() + { + Invoke(plugin => + { + if (plugin is IEnhancedPlugin) + ((IEnhancedPlugin)plugin).OnLateUpdate(); + }); + } + } +} diff --git a/IllusionInjector/ConsoleWindow.cs b/IllusionInjector/ConsoleWindow.cs new file mode 100644 index 00000000..ff46c0fd --- /dev/null +++ b/IllusionInjector/ConsoleWindow.cs @@ -0,0 +1,71 @@ +using System; +using System.Collections; +using System.Runtime.InteropServices; +using System.IO; +using System.Text; + +namespace Windows +{ + + class GuiConsole + { + public static void CreateConsole() + { + if (hasConsole) + return; + if (oldOut == IntPtr.Zero) + oldOut = GetStdHandle( -11 ); + if (! AllocConsole()) + throw new Exception("AllocConsole() failed"); + conOut = CreateFile( "CONOUT$", 0x40000000, 2, IntPtr.Zero, 3, 0, IntPtr.Zero ); + if (! SetStdHandle(-11, conOut)) + throw new Exception("SetStdHandle() failed"); + StreamToConsole(); + hasConsole = true; + } + public static void ReleaseConsole() + { + if (! hasConsole) + return; + if (! CloseHandle(conOut)) + throw new Exception("CloseHandle() failed"); + conOut = IntPtr.Zero; + if (! FreeConsole()) + throw new Exception("FreeConsole() failed"); + if (! SetStdHandle(-11, oldOut)) + throw new Exception("SetStdHandle() failed"); + StreamToConsole(); + hasConsole = false; + } + private static void StreamToConsole() + { + Stream cstm = Console.OpenStandardOutput(); + StreamWriter cstw = new StreamWriter( cstm, Encoding.Default ); + cstw.AutoFlush = true; + Console.SetOut( cstw ); + Console.SetError( cstw ); + } + private static bool hasConsole = false; + private static IntPtr conOut; + private static IntPtr oldOut; + [DllImport("kernel32.dll", SetLastError=true)] + private static extern bool AllocConsole(); + [DllImport("kernel32.dll", SetLastError=false)] + private static extern bool FreeConsole(); + [DllImport("kernel32.dll", SetLastError=true)] + private static extern IntPtr GetStdHandle( int nStdHandle ); + [DllImport("kernel32.dll", SetLastError=true)] + private static extern bool SetStdHandle(int nStdHandle, IntPtr hConsoleOutput); + [DllImport("kernel32.dll", CharSet=CharSet.Auto, SetLastError=true)] + private static extern IntPtr CreateFile( + string fileName, + int desiredAccess, + int shareMode, + IntPtr securityAttributes, + int creationDisposition, + int flagsAndAttributes, + IntPtr templateFile ); + [DllImport("kernel32.dll", ExactSpelling=true, SetLastError=true)] + private static extern bool CloseHandle(IntPtr handle); + } +} \ No newline at end of file diff --git a/IllusionInjector/IllusionInjector.csproj b/IllusionInjector/IllusionInjector.csproj new file mode 100644 index 00000000..6d15b941 --- /dev/null +++ b/IllusionInjector/IllusionInjector.csproj @@ -0,0 +1,66 @@ + + + + + Debug + AnyCPU + {D1C61AF5-0D2D-4752-8203-1C6929025F7C} + Library + Properties + IllusionInjector + IllusionInjector + v3.5 + 512 + + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + none + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + ..\Libs\UnityEngine.dll + False + + + + + + + + + + + + + + {e2848bfb-5432-42f4-8ae0-d2ec0cdf2f71} + IllusionPlugin + + + + + \ No newline at end of file diff --git a/IllusionInjector/Injector.cs b/IllusionInjector/Injector.cs new file mode 100644 index 00000000..9138c6a5 --- /dev/null +++ b/IllusionInjector/Injector.cs @@ -0,0 +1,25 @@ +using System; +using System.IO; +using UnityEngine; + +namespace IllusionInjector +{ + public static class Injector + { + private static bool injected = false; + public static void Inject() + { + if (!injected) + { + injected = true; + var bootstrapper = new GameObject("Bootstrapper").AddComponent(); + bootstrapper.Destroyed += Bootstrapper_Destroyed; + } + } + + private static void Bootstrapper_Destroyed() + { + PluginComponent.Create(); + } + } +} diff --git a/IllusionInjector/PluginComponent.cs b/IllusionInjector/PluginComponent.cs new file mode 100644 index 00000000..0214398b --- /dev/null +++ b/IllusionInjector/PluginComponent.cs @@ -0,0 +1,74 @@ +using System; +using System.Collections.Generic; +using System.Text; +using UnityEngine; + +namespace IllusionInjector +{ + public class PluginComponent : MonoBehaviour + { + private CompositePlugin plugins; + private bool freshlyLoaded = false; + private bool quitting = false; + + public static PluginComponent Create() + { + return new GameObject("IPA_PluginManager").AddComponent(); + } + + void Awake() + { + DontDestroyOnLoad(gameObject); + + plugins = new CompositePlugin(PluginManager.Plugins); + plugins.OnApplicationStart(); + } + + void Start() + { + OnLevelWasLoaded(Application.loadedLevel); + } + + void Update() + { + if (freshlyLoaded) + { + freshlyLoaded = false; + plugins.OnLevelWasInitialized(Application.loadedLevel); + } + plugins.OnUpdate(); + } + + void LateUpdate() + { + plugins.OnLateUpdate(); + } + + void FixedUpdate() + { + plugins.OnFixedUpdate(); + } + + void OnDestroy() + { + if (!quitting) + { + Create(); + } + } + + void OnApplicationQuit() + { + plugins.OnApplicationQuit(); + + quitting = true; + } + + void OnLevelWasLoaded(int level) + { + plugins.OnLevelWasLoaded(level); + freshlyLoaded = true; + } + + } +} diff --git a/IllusionInjector/PluginManager.cs b/IllusionInjector/PluginManager.cs new file mode 100644 index 00000000..5e7444b4 --- /dev/null +++ b/IllusionInjector/PluginManager.cs @@ -0,0 +1,128 @@ +using IllusionPlugin; +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Text; + +namespace IllusionInjector +{ + public static class PluginManager + { + private static List _Plugins = null; + + /// + /// Gets the list of loaded plugins and loads them if necessary. + /// + public static IEnumerable Plugins + { + get + { + if(_Plugins == null) + { + LoadPlugins(); + } + return _Plugins; + } + } + + + private static void LoadPlugins() + { + string pluginDirectory = Path.Combine(Environment.CurrentDirectory, "Plugins"); + + // Process.GetCurrentProcess().MainModule crashes the game and Assembly.GetEntryAssembly() is NULL, + // so we need to resort to P/Invoke + string exeName = Path.GetFileNameWithoutExtension(AppInfo.StartupPath); + Console.WriteLine(exeName); + _Plugins = new List(); + + if (!Directory.Exists(pluginDirectory)) return; + + String[] files = Directory.GetFiles(pluginDirectory, "*.dll"); + foreach (var s in files) + { + _Plugins.AddRange(LoadPluginsFromFile(Path.Combine(pluginDirectory, s), exeName)); + } + + + // DEBUG + Console.WriteLine("Running on Unity {0}", UnityEngine.Application.unityVersion); + Console.WriteLine("-----------------------------"); + Console.WriteLine("Loading plugins from {0} and found {1}", pluginDirectory, _Plugins.Count); + Console.WriteLine("-----------------------------"); + foreach (var plugin in _Plugins) + { + + Console.WriteLine(" {0}: {1}", plugin.Name, plugin.Version); + } + Console.WriteLine("-----------------------------"); + } + + private static IEnumerable LoadPluginsFromFile(string file, string exeName) + { + List plugins = new List(); + + if (!File.Exists(file) || !file.EndsWith(".dll", true, null)) + return plugins; + + try + { + Assembly assembly = Assembly.LoadFrom(file); + + foreach (Type t in assembly.GetTypes()) + { + if (t.GetInterface("IPlugin") != null) + { + try + { + + IPlugin pluginInstance = Activator.CreateInstance(t) as IPlugin; + string[] filter = null; + + if (pluginInstance is IEnhancedPlugin) + { + filter = ((IEnhancedPlugin)pluginInstance).Filter; + } + + if(filter == null || Enumerable.Contains(filter, exeName, StringComparer.OrdinalIgnoreCase)) + plugins.Add(pluginInstance); + } + catch (Exception e) + { + Console.WriteLine("[WARN] Could not load plugin {0} in {1}! {2}", t.FullName, Path.GetFileName(file), e); + } + } + } + + } + catch (Exception e) + { + Console.WriteLine("[ERROR] Could not load {0}! {1}", Path.GetFileName(file), e); + } + + return plugins; + } + + public class AppInfo + { + [DllImport("kernel32.dll", CharSet = CharSet.Auto, ExactSpelling = false)] + private static extern int GetModuleFileName(HandleRef hModule, StringBuilder buffer, int length); + private static HandleRef NullHandleRef = new HandleRef(null, IntPtr.Zero); + public static string StartupPath + { + get + { + StringBuilder stringBuilder = new StringBuilder(260); + GetModuleFileName(NullHandleRef, stringBuilder, stringBuilder.Capacity); + return stringBuilder.ToString(); + } + } + } + + } +} diff --git a/IllusionInjector/Properties/AssemblyInfo.cs b/IllusionInjector/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..8f033530 --- /dev/null +++ b/IllusionInjector/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("IllusionInjector")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("IllusionInjector")] +[assembly: AssemblyCopyright("Copyright © 2015")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("400a540a-d21f-4609-966b-206059b6e73b")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/IllusionInjector/obj/Debug/IllusionInjector.csproj.CoreCompileInputs.cache b/IllusionInjector/obj/Debug/IllusionInjector.csproj.CoreCompileInputs.cache new file mode 100644 index 00000000..00efea32 --- /dev/null +++ b/IllusionInjector/obj/Debug/IllusionInjector.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +207669803f9c3f5ead7136a41944fdaa372fd294 diff --git a/LICENSE b/LICENSE index df8472aa..381ba02f 100644 --- a/LICENSE +++ b/LICENSE @@ -1,21 +1,21 @@ -MIT License - -Copyright (c) 2018 Michael Guedko - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +MIT License + +Copyright (c) 2016 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Launcher/Launcher.csproj b/Launcher/Launcher.csproj new file mode 100644 index 00000000..41f8b12d --- /dev/null +++ b/Launcher/Launcher.csproj @@ -0,0 +1,91 @@ + + + + + Debug + AnyCPU + {D1390268-F68B-4A55-B50D-EAD25756C8EF} + WinExe + Properties + Launcher + Launcher + v3.5 + 512 + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + syringe.ico + + + + + + + + + + + + + + + + + True + True + Resources.resx + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + ResXFileCodeGenerator + Resources.Designer.cs + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + \ No newline at end of file diff --git a/Launcher/Program.cs b/Launcher/Program.cs new file mode 100644 index 00000000..711fef76 --- /dev/null +++ b/Launcher/Program.cs @@ -0,0 +1,100 @@ +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Text.RegularExpressions; +using System.Windows.Forms; + +namespace Launcher +{ + static class Program + { + private static string[] TABOO_NAMES = { + //"Start", + //"Update", + //"Awake", + //"OnDestroy" + }; + private static string[] ENTRY_TYPES = { "Display" }; + + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + try { + var execPath = Application.ExecutablePath; + var fileName = Path.GetFileNameWithoutExtension(execPath); + if (fileName.IndexOf("VR") == -1 && fileName.IndexOf("_") == -1) + { + Fail("File not named correctly!"); + } + + bool vrMode = fileName.IndexOf("VR") > 0; + string baseName = execPath.Substring(0, vrMode + ? execPath.LastIndexOf("VR") + : execPath.LastIndexOf("_")); + + string executable = baseName + ".exe"; + var file = new FileInfo(executable); + if (file.Exists) + { + var args = Environment.GetCommandLineArgs().ToList(); + if (vrMode) args.Add("--vr"); + EnsureIPA(executable); + StartGame(executable, args.ToArray()); + } + else + { + MessageBox.Show("Could not find: " + file.FullName, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } catch(Exception globalException) { + MessageBox.Show(globalException.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + + } + + private static void EnsureIPA(string executable) + { + var processStart = new ProcessStartInfo("IPA.exe", EncodeParameterArgument(executable) + " --nowait"); + processStart.UseShellExecute = false; + processStart.CreateNoWindow = true; + processStart.RedirectStandardError = true; + + var process = Process.Start(processStart); + process.WaitForExit(); + if(process.ExitCode != 0) + { + Fail(process.StandardError.ReadToEnd()); + } + } + + private static void StartGame(string executable, string[] args) + { + var arguments = string.Join(" ", args.ToArray()); + Process.Start(executable, arguments); + } + + private static void Fail(string reason) { + throw new Exception(reason); + } + + /// + /// Encodes an argument for passing into a program + /// + /// The value that should be received by the program + /// The value which needs to be passed to the program for the original value + /// to come through + private static string EncodeParameterArgument(string original) + { + if (string.IsNullOrEmpty(original)) + return original; + string value = Regex.Replace(original, @"(\\*)" + "\"", @"$1\$0"); + value = Regex.Replace(value, @"^(.*\s.*?)(\\*)$", "\"$1$2$2\""); + return value; + } + + } +} diff --git a/Launcher/Properties/AssemblyInfo.cs b/Launcher/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..f7570c31 --- /dev/null +++ b/Launcher/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Launcher")] +[assembly: AssemblyDescription("Rename to [EXE]_Patched.exe or [EXE]VR.exe")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Launcher")] +[assembly: AssemblyCopyright("Copyright © 2015")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("d590f676-c2c0-4b80-ae93-6edf274320e6")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Launcher/Properties/Resources.Designer.cs b/Launcher/Properties/Resources.Designer.cs new file mode 100644 index 00000000..f20450db --- /dev/null +++ b/Launcher/Properties/Resources.Designer.cs @@ -0,0 +1,63 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Launcher.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Launcher.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + } +} diff --git a/Launcher/Properties/Resources.resx b/Launcher/Properties/Resources.resx new file mode 100644 index 00000000..ffecec85 --- /dev/null +++ b/Launcher/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Launcher/Properties/Settings.Designer.cs b/Launcher/Properties/Settings.Designer.cs new file mode 100644 index 00000000..18739306 --- /dev/null +++ b/Launcher/Properties/Settings.Designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Launcher.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + } +} diff --git a/Launcher/Properties/Settings.settings b/Launcher/Properties/Settings.settings new file mode 100644 index 00000000..abf36c5d --- /dev/null +++ b/Launcher/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/Launcher/Resources.Designer.cs b/Launcher/Resources.Designer.cs new file mode 100644 index 00000000..ce6216de --- /dev/null +++ b/Launcher/Resources.Designer.cs @@ -0,0 +1,63 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Launcher { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Launcher.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + } +} diff --git a/Launcher/Resources.resx b/Launcher/Resources.resx new file mode 100644 index 00000000..4d26a2af --- /dev/null +++ b/Launcher/Resources.resx @@ -0,0 +1,121 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + \ No newline at end of file diff --git a/Launcher/obj/Debug/Launcher.csproj.CoreCompileInputs.cache b/Launcher/obj/Debug/Launcher.csproj.CoreCompileInputs.cache new file mode 100644 index 00000000..67d70831 --- /dev/null +++ b/Launcher/obj/Debug/Launcher.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +7c6dbd91916854c83d27e1fd6e1b9ccedbe983b8 diff --git a/Launcher/packages.config b/Launcher/packages.config new file mode 100644 index 00000000..6f7c8833 --- /dev/null +++ b/Launcher/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Launcher/syringe.ico b/Launcher/syringe.ico new file mode 100644 index 0000000000000000000000000000000000000000..db70bbab55c99098dc823371e47368fdb3264068 GIT binary patch literal 32988 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⪼AD+9@B0=kM)j2g#0|_Q@iPQI$kYF1fL&sSkzAg8^(6neObPo zJO=g|+bQPr64-C-xAt(ByU1tY;IZF{{0KN|?DzIe%uj<8#-6Zupy~T#X=8sB)Wwi_AZ{Qe&9y(vpwVvzCIGcQ^x)*>L-Awk3D0LW4Zo(`Kx_0vzz@s+udV-wU_et z`26{sy#n*QKd0{}{ARD@CJ%rs$NpyDBH2Cmg8i`Mrm_Fp&r5!H>?M0ZKAoSNwLdsk zab!#Weyq{4RPwp8CPyi=em-k=RG|6!tld$`>(#f}{2Y!d^d2zWpTSX$_4N6&k!X%O zG=08Y_mc)=_~z0iFTok7o@z3oc9@=Get@_`Tw< z=%WH(=ZKxp{elq{cf+C4ZJW(ouz8 z3HfKK31WHO;Lg+}#|F$_2Y00=i+nG*J9Uhs0rTT5PZjwuEKhedV{ZD9_Ma*8YrvhU zS&m(p$Fh99$P-yU(b10iWblR5Y)6OWOR1AY{Vd4MX*W8$F@FeL9G2rSEmUC5!1X-f zvaqQRU&+sg-QtLnygDpj^j8V>-f6Rh>F*Il1>P&nzt1txk)mssei<|dy){ou4kqWwwmu(T4#MwaXEM?8eN zOC|rK_m}dxFE|O@B-Ky%dDyXoTYcC-?3G5l8YOy8c`w9okR#dCZZ` z>?TvdDQV@7I`lN=3P&fp7<^;elMYhM+fxtpUExSZF99oLrK6NvEdw8kSm|hB*3So4 zI*wyK-M;6TS2_ajqy6do!zxEIn(q&*9F@#&@)YzpJ*~>Ih1sRng5iF-j$`N-(Y;vz z7OP+5NWPzMFFTm49l7W|;Mr+w9VO@^;00-Qjt$K4{WCD!@7A#c^Kn+X{OcU2&^L~x zUhnW*%=_eaqo^z(owM-e&zU4{-v*P-eAC$zo^ z9RvA|X-$s9=+VrtI(pC(!PAnrIJ_U=)H19TiR|% z;S#?78esh2()Nh`;Z<;N+CE1y%WKGPaA)cPkso3H$We;rw(!X<@$DBUindv7Sz7KjH|EcLG z9m$esr=M{oETy>%_s4UNQZ(Nme|L0nv;FZ@+MkYYW;dbx*NXJN9I+3v_RQA69>-E< zH))3XtVsXIaf(^rfBtg>JWT8L-`DxiQO4{h+gW|DqaIE7*LCTa9PP|5!uQ|H4)0}r zzI6Y+7;xDU!mRJVmmPC?PWb+N+0nwx_s{3kiFOM8B^%G6g_qL)+~g>;NlQTg#cbBb zqv`(oe7dTYq3Qnme7a5RLDT)UDczy@J;M9zdlFuMr8~8JX8m~3N85lo-GARo@1q^W zoF5;&wI0mr{=6dHTO0o4S4UzVf~N16(mWYW_iySP^jNH)%T2BYKM#35=5+sGk=|cBhNk=figZ6Mpp1`4 z_y2Y2gS1pM-T#}?{k0;=@23Z9^=P{PH>C$_2hnu@|0q3F>q680|D*IUt(Tea-(RK= z(E`fpc>4Yxtxaaux0hJ0f#Y4fT(b4qbTEKEzznsj4 z<$q;pyfz+P&OB0^E9IxsM`;_G-D(Zwae)ciF7(srPV~#@^XM&T?+U*DwxeUwZRl+D zC+I?S2f7S>99@q-joyL&1Kq*wQhULzJ_(xo1Y4h~?PvOaeu6e0-49)c=Fjg5+F>+5 zo+N6?E1kT7WJ^YdR)(hA$Hnw< z+7>k3KCa2QR%=7k?c&(t;{7jy^_`nBQ;Xwf=O4F&OVP_AFU%;=VB>@n%Nnv4yf9;yR>^YseMIm> z8HHK{)^7(d&zK|Xe*iy~F;{EG`d;vJ8S}I@taqNG^+no2$&DEcMf)(wpUPOIox=9% zU~AxgnyHE{KcRju<9^MT*-hy4YjZ}4XiuMCTQeTiLNKT2f6W;Wi+mciZ_Ri_i^ZHi zA2w%{X@$%+WC`TW8Oufe6Rh5)6=VHN;DZ?}ME)xHtBjReDa-Z8dzIF~?83);l@_;} zt$#wF4{pz>(&jR|)HY~;F<^~WhCU3o2CmUIVEu9M4;fEsEs`5E)@tp{a6bjePi54K z`H<7F{b$r^9heUWH)gC8c{2FF47YY1^L(&Z=6aDY0sCY=qjlqW_23^ep3{0IH)d?q zOl$b#@haq}(q7a8BwGU;v{>|ekY5bgq@^;u$zImqCT+6h#*8K{7wZo}9+J6PD?}e< z{lBJ_NVW#Pp;ch}Gc?b5Q>((9`eHz{R*!iPcxYy`SU$rUcz-bSEv*Ub2Z1v(TeKa_ z`tf_a){ExH@9o;sr}+Luk0&=~zN1xEdptdJr?#(#n;t(N%zRJlK-1&LgPE<`DQ5lo z<$X=+qF_|^$y5eeGY0B=)1tV;A-?eEdNy7 zfL_4zPqha0gXQ$~%V*jSbOm^z?`K*En*Lt(k%&W@qn6E2tpyMCJ*4HJ7ejwXA`WYX z=w;x6zK69k^m3MeuGOJevHWwb8BOn}*y{6zwgXM?FO>`4ho<+JYW4Y2JBX(Dm&yfq zqUrr6jzn~5-DrBhiGjWynp(%_OV2-AeZJDX(e(U-Is{EWkEM=6)6ZY2lhL&>U+PSB zJvbL!gx|^Sl+1}Mt{NbPVG3ee*E}GOJ2v8 z2ag}$XdBUI;jkRy`>oa^`KjomT8^97)BMTIV_Nol>Kbwi`p-}PUfaP8pAUea%KSm| z-oWdr-I>R=@yu>=5&V4Sk6IOa)GyRsS_iYff1K39pQi2g^YN3~7H0nYmMxh-Yw9yJ z=f8j1l6hJyWah6Ic4z*gm7wYK)xONLT7{HX2A|XNo@Mh>@%4mOR?o-dzqk3P)`8~x z=bzfr=h%3J9-q52&x`$?9-l8{UeGEqZ-C|L&iqT{Z-6gk{;gHB9IlTW1>Yyi>=F4P z$Zg~P)#_R9QoF#`pk8eY`WzY-7M?F%>LqX^>D6}eoM_$j_YHcrbLaug7q#%`+47Mf za8BqYtr#7}Oq{#WBf$N~8Jt}&@cJ}nqjTd%?kUVBXZDMH`RVJc;Bj8g@Ryj``F?JM z+1ZO`&;Q_#mwEdc&^~IM+1bVHCWYX{aaJc^o*FV2Jbs+Rd7kC^_SwhT+rZoN*Gqk{ z-c25c`di0&3$Fst8rR?H`wE{AJ$@FA8|18d)#Ih(0-P|($WXBV0t&#Zw%oafN=cyciy!fAS) zj^|S8@x&S!;q*fvfcakxh;)XazXV$YBb~8mdOW-s5arB7)8nBvFv^*OrpLpJ0nyGv zG(8?#1EZZK+~f!7@41Yj&MoNEtp8YNr{v z*gP)IIr&XmUqhVWBje)5;~4@zF>aJIkL4}`Bu_;rI_F}2Cj7_QaY>^77VzKWlAR@3 zzZ7iD8sn_M`UN%IE&Hr{fCKJi=2nK+3~0->po{Un!f))t-izBtMv8V zL~tH@H1lF-6PmvMpPKc6^DvqoPwvlJ;_Q`Nnzhs!wS)IZU*FxI^{_J+O}8gkR;jZH zO}8gk)}zh}G=2S5omJ*+lKga5xpSZ7m$Dvrc1eCMYq_(RSwB8iIDL20@m=b9*#0jD zxSRp#%V2Au%Nd2X{YvvEopESCur=^WXC^m^0JmgSI`f(J$A5)$1LpkkU*YWFX6KXd zWvz5}bF=Y}L{vG?qv`kqeXE@0T|PfL{*j2)P8ChZALzT<>Br5+|1fKfGl5wj|0!oN z=6w98oLjir_|IijJKH5^WUh4{mwYg*&guIeAD>>&bunPQGXPDm=duQ_cSfPJU_S7B zY0fzGO*0atH=u)sT>v?B0x(@tQ^b5{|=z8!sSsR@J zyV!ilR&a3EOU^Q8`289ieBNkoa8{wim^V2$pd*=IaWZqV=s4yk=Pq<2^JZr| zdJOn~S+6=f(3vdX;yjL?!2G(iTXLEC4d;0@-QWI~^`_I*O6L#vrvabN+Um@f{GQia z&OFH%vRa%Q{?FE($3<1We*iy|sDsHYcNUl#5HK}0Dm7FrDH0GAM8Hv8P!MrRP1H2~ zhM6ScUXn^$xMUbsl$KgJomW=UO)fn^?LVt&bj9< zbLVpBE@=MwywGQdWwYX+`n+ekqIgg9otApV*Zb_Y^nPDXub&wI9!oNMfEaJJ#gEPq z`TLe!#f2^QStg?gi~0{Ov(cvC`10OwDMpVG`2ovv^drItE#>GIQ2%eAk1U(fHsM2- z?P#Cy$CiEQ4x<0VmRfY+y|CEgKe60Y+%o=%#rc7pzq>^JQA=+$KcB$jk6BXD_d(9$ zPgsi4{QH5$pR`n_|+I!>wv@BQLF8-!vyW+d!>n+F7x82Lv|83TD=x3n)g+2k+ zdi1kk7T>}O|Aph*GWH^PUW-6-6}YfPEAj`zx08>9`&;5QYx)6Rzk+oV4z?yAh#(&YkMkM6+$67Wl55u**LMcDSK2=S9`A^>W{dIZ-~W-;$!PigA89R@<2PqO zeHv?P-G|Nr!}Su@i|7fMn?K_7tM7l?T0?|O%+oNBK+nVW9fenzOTlIFZLM*_^6#;7 zupiC8|H|Xr;qrj<%TQkx-@!Urwr9t|?|@YOb+c|q%jMV2dQrHSbP;kfqm~CqO>lF^v2qI8X8O;4KNmDPIrXVVG5c&jgLY9GkKUx>|9I#Oc-w z#kRzm)_sbPCOmFEqBuBlw)L{&h{XTt^UHd{^b5lZt-TNPRTgDQ^7_pZ<%KcK|m8ky#x0mBg1YFJ*r4%&>LjDI(usO~(0K zEb>>Ze#NgOZld~f$g2`JTXSVD_J{8zzDCo36Y_CB!=Hf*!wmlfp6Gj>>aT$tf(+jR zk9WL5x$|HCc{SV#JkD1|c^tSfjLfpYyA$8E&c^X`f0+1|UeBhA{4MKp%(*{I+@j~^ zr@`YLhSz}e6mJEO^KGU2Pr!v?WcEFHqVH|WuZeoYE$ex`VJ~>R;~lE+0M1j~4Lr`b zjq*6r-f$XtqHjCpBft$ohWT^M#yfUU{scG=yjje@{(bc>=0$971H3;a(eNVhxy1J< z=g$TEA#o>py{O+sejR)zakq7==)Z{V2mhJ47xPl~Ik-OYed}J#e*l~Nen|Q6V0+&K z*29>$`j3Bq9irR?4(t1|wMLGg-2?8}_Y+e)8xL5TqNcvq3>yHjchOe{x-3%t+h>jQQFKuUzLzwL-Ws9f#qv!>(9jUF`tC~ z)7UpwC;9@o(DaQp0$nHaGuDpi29ck!Mx$HZ;@|(Z*52rF@D5Y0H5nZ(@^7u_X#QNZ z9j0%s*=T;eG|~E)pQo6QcbxAc z)${QdhLM>WjxO^Ym-L*q2lwy$1GyVG16(Vn5ARz85AFLC{?9g_ z@#nm8_m(*>FFjwuxPyUh!PVNY*uDgALo>no9mDzHO7gia&t*YV8lok2LXjV84=|F6N(yKdHVBa@Dur#^=w- z+koMD2vpw{T&-Or_W}DA4-)xx%JW2Sc$&y>Q2vz2br-Q^;BDc5VP3>G3E#9P;QFlw z?+O3gnvLeq<@*pU*LR8e47ghRhkO<6SA0w4|59#m#&g4WfUC87%6p33a0)n%Pw}UH?Y1LmH_XotlZMNul#PY@qkSE=(@K7-ugjKvR8EiAU+L?m z<+&K@|Lp6t`9;2htp@+wH`KOVxRh-LTa&_Up~vL@X;u+GpB!#$hb{&OhK1X@pi4y_ zVT(bp6M2L!0iD@`Z;z3-RCEp)?q{(LMa%8Ett}TVx97ID$!PgLj5};I(DHp4ci85k zCqsV?q3vu7(NBQ`!`j(aqR+#4s&yI@?mE@%x}NuHO=Kd&tuv*Y_vU;310dU&NQkU6l6+`xOrt zc@*W7MQ(Vm$nU1SOyq{&68Sxp?-#k@uck3}BkW$vzXR8U{f*|Q3+C{9A&h@alHp0< zDM|NH{tWo>r0%xtM(ul2|MK}0hW{MG-&fevmM`k{^M5^Ulbf`k(ZphTvO~>ZhUu9Y z_6OdEp7a0J!}(otz9mVY{t9*o>YqxAq4Dwi87o;YnxEs4=Q#{t7QUbA{{qLd2gohV zeE+Sx%^YzyIGj|3ThUqRbKLn0tv9@9{-ZC~2T#^)PTdDZjq=&G5DH{cOS<=I{ z4VV{#*C)l>wkobnO0?}mKL`1iq$GX%jC)5?Kie_P*MavWrPyi}KW!giyNrGV@(+^+ zQhV-Ck}_;JG2aXRGHH;_e4Ky2${6?8NrP#;{JEm%ld`D&&)}bvhLQgR5A8dG+%C|> z{zw{0egNFrmqShlp9#vfImPt!^O?D}c8dQ=8f}YK{C#*Hwl6U+g!ZQ7G2|8Cf0D-7 z5@bETe=OhTNAvy5hvE6QeDpe~-_~iYZ3g-+@GfvM`hD=J4&!Vq(KTR?bDXUL{jacw}`0nKSlur=(Gq!rn7l6AbFSI#pOBnZ| z$QNw+n7;=7^@&_fIrp;g7i}{z-vIShk>!+gFAQI6E5`gJj4!(RI@@x^DcS~GIr>}3 z&zLsaHY+~d{1xi&BIL=*6}Ih|{|e4zuTsu^wRt7^A8>l|X4^rm=gvxggL3|R-^k=Q zb(`DX&i6-Kbu<1P-K)*XxW9T^&&@HA?=Zb>J16=t6Yq1Jko*qjr7R2bg5+)FY2aDO zJIG7GMal2!{jo~$_u;$9eE(Z$+D+#B-$K(K-RAvJKhe6E{1y1CpuM)sa(?mqxY}0N z#Q1&8ZVxiC*OROD_UvwOCNn%h_|gMI$=~TY{3T&x&HItfwbS|W#92KzcY(aXa@H0i z*Dr3L=k%N%fV@pV-Sc5dm{>bBxnX|4 z^0sg@<@|o-ZQ+4-8}=vPN7>5W5iO55TG^weaXhzUd$_*<`q%m!{zAAlmVE+B*vC&*O@;R|uD~ z)6l*Y+DCoI>*4(<;C21)u=|C}*q`8OA?@u`70(IjV6RgAM*oiXgXk7cUf;=nPVtAb1-)*;@lhc0y{Bi$o_6XrJHc0drZSSpkPDpqARK;)f z?`bbaj}-MW_6>^Xg!Ho4D1M{=1NO`4aZvw7|K9fU^KyKTf+sb5$i7qYss3^H!-~)L z?_+1*^LqXFj(EFSxQs1>_Lus{)AqxCwSSV`spL2Mr`p>ozSTd2>bF7tMBiZY`(iwX zzYrcm`FG&XzAW+|;Q886@@+2e;kwO1;Fc-b`piTdosr!gUgdYpAY_?u_p*0 zGRH!`EF{;SD$V$lq+2?3?b(V8O{4Ak!utBmvriU==jAqIY^f>FKD$w#kJB$=Y0y6$ zQP}5+T)*B!&*6M0?0+jEhmA#C?|%zitr;E#?PHaE5_pHn$Y+D$c~;cE6b#R^vhQs) zo^iB14ny81Wt{zBqx=!drv>xxf5VSAwz&vA&PTbq6g=MXi2aD@uZ(R17lu7zKdl(v zZ)d-V-U4~|lu7nF#l2G|+w0MXMgFMWd_jKRxO=Be!STWK^}+Ee1$HOqtwZ?q9douH;~n$# z_U5W4KG?)(n)r_xAL?Y2c-%`S$!D zWIha>=XeIkSIQn0E}`+x2ak6wK(Amc!Q*^}Ujuh0mznp0C;Apr`%|Jlnf(gRa~Qq> zE(}{l^#MNK|6+0oxG>Cc6u2a1iG4GU{~_>F@ILei;idM|!li5$cty%G><_MA1ed2Q zr~Y?>H>NyKJ_+8e_!@Xi$_mPZLizj|_B1xT54^*uXQ|-#Q&wX86>K!PJY|*rrWl`e zL(mJDm$K!MkMpgz+kWKhX9e2@{wQU&Jw#aF->$~`5`5pYVfnu2)%J)+^=s@MrOgN0 z@Z;Sz_AcnpzCJ`{abN!dVoS8ydW+zVV_G5ouj-pf?q z;we5}!$%>nWE&|z2QIJ}ei-`uJLMJ1hl6i{^KtpSCfZlnC!_a@_7zlLv7RrlP2}Ah z`1B1w2K`lQuTnl2>{q-99Lp*xUjyD@GW?pzH&gze$aNQq_e*aJe+}~@#@{c!E&O%+ zY#i@k@SgBD?90)QfIkHDuV?=J;*X%eeVwYvr-a|Mmt(#Bd+ROxcJxn>AMW%P)&C*t zw~zxPcz;{%`>;L&+}`oF{WSU>@ZnBxV||IaH@HRWJLEKQYjP3G1v^r=QU5c+;i)_9 z7iE8J8ThW$_w03wyQl7={?lf{o4qu>8zMIx9Leje z?as^m^9|RZfCJmSZ;wK!gRS5gX*L0DVjp0CrK|`Xm#VvnZ3cf4zK^DNNccm09QJn+ z9N1>ReJJ{Guoaw-{af1d{tr<9?Z9!V2ketEPZs$>%KakOUBsq;&@x#VS@WPKcVr4 zf&HnU+E-)#pvaFP_zbW#Q z_QRNmw&UYFO?fx4KlN*S4dz3@qf^gN{s?$tYOVbo=8HxC9px{H{4Bc6yc;|#^*otB z&rbCL$e&d5cgMpzi%7v z2Kmxd!%<=q3z1|=DuOmOdYgqpN&_KETJ>iypDE2RZ z?=fle`=OK_fZr#~1Da|1mWo+?zxc+oNlr~xM;{&>C z3l$d+=&n^M{-Spb&0iU`UpL@>tp@Yi;Kv6%q}3@d9uTkDelfu+m(Q2{qIX{{M)CLo z$u!;`U-R<~1IQ7b`QO*NOW9rEtpg1A0q+`+uBBps{C>C3n`dg16(1NdNLz{?3iY2i zAFNd=J}_ViO>eZA-ca4TC2!z;iIK|{5@*nSK6vjM}j!-{te7_QZz_d@=8^K9*+ z;sXOlQvV-|{&UbP*lF;Ypd9U*sMp_rm!p}l@Z~4n`OX|IL|8xnn5)HsBj9-t@pr-A zbU>~)6g^CMv^G`Lmzbx6V_BZI68#K%CwdLK7X2EUUFFj+F|XVR_b+$K(<0Cn=s0P% z8|vXNI4vE00Gy)bX}QAk`{$1V`Pu~GQdSH3P4ISf9r#SpSX>^ZEFcPgzZhWHB|L%h zPT-bllgJN)ooQ3Z+2H)%)3hUUJh=T&*J|W=*k;J{9MiSa==Z?0QXbQ4(VK3E>zP~5 z)Gjt^KTEqJbMqHaKi)A*yNN!B4)~QXuNCY%cv{FTt)sC1_t|W%OB2U5F*N4qw{X0( zaej(er@Q&`HQWbWNiJdCVSm&oQqN1+Fvug*p3vfC|7?b6|0MQTB3x)PTm*S0o2w;b zJ$EI0N=rvC1$Rt)irT*-Jde!tu4zSDwo>0KZ9e7iL0)Jo)@ESN9hdfuHcxR7D$rXY=dMEULvKeP2UlxLw7uwaVBX(B^i}ZCv?baRbn?CY`m-fk4O(ws zD=a_XJ4{P(yzu^RsDC7FDS4srGV-g!&ywF0evbSlcxu{m@&#~wd@1=a@XWC1$+vgm z=kr#QJAij2t9ClesQfHJp$eOH@Sb9feuB_Lr0-kfoG+?p!G)c^VOB?1uYdV z&riIdWurGjJ=}k;O-Ank!~N&l9Q3rVJYS;~qvxWRqL-pqqSv6y(Oc0KXnDQ$8m&qi zKYwd*d6bwtb>rKU;aKp~X@--*3k|cagZcAt*J#^if5Lw4CGD7EIOC)D&*b%@<=VAI z)2G~A0sX`I6TRNNvxyHkaV@wZ)To#9XIL(O!*cnTYxRw$zg7#V#g5%>2&j3$qwvOtHM82N9OynELvB$X^cKLM{Zy#~WTOyp{5`!f%t`0>k^v zb&Kca?|RU1HRRkw<@C+R!4rK(exZq3cfS0LJPbV1w~hMm*u*`-;~hrM_kX({+@|H@ z^pYTdH;r;O3Vg`0`7!V~-*&A6>z@UGp0-_|9(xh|tzq*kqJD>-o8JLX^cg-5ZV1|; zUBv$W5c#`Q-@FH}H|zs91ih<{i)rs^0l)LlLz($O@XuiWbq)9DoBM<7z!5TM zx!|ebj_8@-N78mueG&LZ+Ai{HaJ}L!;PH;#lz#-C=+j-wPJuVZ82(#$kJbgp=j#c7 zkH+lPlF`xNW&`(XeqsIi0^WEdtUphzTAPfP&-;2`n;~4vK8-Q42L`^6<0)m|3h&eA z$^O_)a4g$Td5c~qmN;;~wjA60z-a>yP<}snAq@N<26Fn<5(jDbhB(^$_P8TuvVbD@6Dz~kCA%(){&Ybf6Y{=oN@*7^^zJ{k96 z-$|_<`aN**z>`|C;&*(fuziVHzAwwLd|#Gs{r8^JRDT%yTQTr!@=5R-GF%S+hXcsyJm=sSzKe!cQJtyt#beJL9Tp3|12`SW-l z7!-F8-C+md^Oh0I~ie2eH zXjjll&^{>rN3C9Qf$6g5{8Jo%vCx+A{DSn$T9o4U=|5?`6>kstMN3t@H{gnvt@z&b zU$qH}dw^%49~aaAO)FMhV5-x~(a~c1b=r2t?bCnP4l3Rr@TXRz_}=tuxO__366ima zT*TH0U&p+N?FB!aenUHl?RovZ>Hlgs6{mu2*W~ixd5`o4y??WOpU!_|`92-PfxY?l zbhjwCg9}Y$<^gBID{18VEMfdT;=|HSj@~#u?)#euIQ)tWO)VT#6&Iwpr1rV7aD12^ z=$L~!_x;UVJ60+#G+7*56&IviseMl|eY;~X=G^x;cRFem7niO)!H#-qJihhl z{h6m9hv)C78!iN&A{Q}vy_gs4iXB zSNt#dyYx1cw~U4FTg47=wH8i!2e4mpFOf%3o-A_1St5_5e4@w=KPmFIl&=)I;g5Rp z-{bC}{3zJ3_zls%9p$@3d&3`#yglV7MQ->Kcw46ql-GfGDfYqjd9Q}wNqKv4mFkvo zJ!yJJ%K7~~zbpP1`m1D}DAyk3e-9g$zZZ6f6DyUcv^QGP$|U6_}dTTkKl(~?;y z=A}Mexf59JzC`VI(nm@5c$21IP?l|CF|lyK)(zwuyk=G zON;Hd(A3p2R583y)GuW_HgV|>`L!}^+oXP zZ8(3Q-qUdebGbi`aV)V>4bM6Au{SH5x?=SZT+^>(vycGJc zWWC92zy%iF^Ube{Jk~J}+splBtYf+2d($6uR4GmcA5+{TJK%!%^;(ODR9J3Yo02ia>_d&9wTygvKevT@|+XGS@hZWzOo=VG` z@9#4+3?GE~AC-|w%SRrMWRd0ZhhcgAVOSo27?#H$hUM{xVR`&vSRQ{Emd784ABN@ehvBQRykeQ*zrZ_8isAfiB^yf1PktYg znJJEMf5Rxh9bCzVlf8}2x`=usm*1x&s9t`blJWaA8}l-j2<<0jjC9n9?V*f~5FSPO zc<}U$9KApM{>^pN;`SrIf5$kkDK0dPb=dxv+c(b((#KJI`TaY=5sJC|{+;BAR$OR$ z)RC^ZAbkq8m*2lr9od-6@88E9GZYt^W;&KDE=Yfz+Ruggai!08lw-~vl>R@=;rK`R z3CCt7FEABiUdrBs{D}e{3 zAKw3B#{@KgUOAkfb<9EY_elqaEpaSI^Y^bbgf4Ydpd&^5rH-9w{{EJR&}EJz=#C;^ zM&pSFNB4b}++X-PM=jQ$hvhXZZMowb`d4si#&W9974@a$LgD8f>|eRO%D}VIRyab? zo57_SE2w@q_T}8gyF;&*H1mQK9mk6)Uc#+1F@&vs9Exg<@2m7A{4s5fQ@~1_<*0B=vjUr#? zsKWjyK>vYZ>l_CaznZb$VXha;hw&WVm*8lpcxy(5BS!J=jLnXDiVtSI?pTRlB>I2L zQKk6Rj4h6c2H8K)FUP*^=&g8b#&$=#@O-uj@`vJf;{24d-QX`Wc000_`iJ7G9WxYv zlktILJNjFwzm&1x!Tyue`x!hV{3A!G;`)q3ju^#jA3E$vP#hTcDNVm+0$d-J`I#dh z^H8w+;V&q^7wpPB>X@qJZ8N`g%tNP(`WmXADC)m*ELHNhnWr4(=;uZKH&nk-)Sq!| zR`Rx)-#T`p_lf#*RDVj;pLZNo^0t{595v{AQU3$g-=4_F|D)ralDEzL$x(;y2)X;= zD^&lWsK4r{SMs)*zhPct&VzhP_#fm+;8;dxPk`ZyLp^7Un)szAt^)5c8TEU?@O%<# z&+iAnD^qt7I|BLj&})v?x8&#jBDf*+I@SLP?v_b5H-IbI4Lvuv?#sW=Z#de?_RI&q zEAuZ$7vUdFKS8%i&2KtlFz4IbLvc5;eJN`X^;I*lhvMInpL8oS%aGr<_&jfF!#|{&|XW9%*9v`7LGdLOtuCw=ZR%3E%Ckk>fG*-+y;Kc#rc6`W)nc zx4%c9p7{zmKI~p{U<&{I814X$59>nt{UYz;yovp#iM*?mnfUrGGmjQInE!*{UuKBB z8@WW}hF6RHKFZ$~x#3Sm9!>dqksH1V9_Q;$xjmJCUb;KYVm$D^dvJDU56ny9T2>RA zocVw=1oO$@xtVd4KL>t3Gszi+`8(j(GSevk7`!7h)7e|juXsNCfy^P!p^86waF}zp z;@2`qIExjZ$jotWQ2c%780S94*_q><#}wCPPJ+vi#qt%?yP5f@(|nuZTbWawQHsrj zra6-pI|t2hPEZ^^=yB&#^fj2Ds6kISD-`z}G{<>R@xz0jbY50GV9-40O~u)Rik(jW z!v$PV#`~K%XaOy+Ti{uP7CB=u4;cW@19@b4dFOJ)D+aA{?nFmI z`;CLvI1eg*Yfw2&?_S7v4O-`{#XJRkXwb{fn~J|0^r|y7K#rH^7Y4oVj8XjepsmiK zid*~Nb>{9iij71w3fI76Gu@$mk# z{3o5sibwmuapo(Y;{VQBtoRB4dFNJi9<*QR|G{}s@k{I>++UQk&5++U*yXy2`F`+gnIW!giVtLlQvFfLcVvd6%gjH6%f6w-KhO;QGXx#lyJ0bGS>eq+IM#qqxti$0>ipvJ-lB7 z>Z`RL!& zYqR3Ouz0L5Wp_fpU~qzKpORmWO>)&LUNyMCs}B93=r7GxuQ)I)o%$On`pa;^4jVRc zcpo?Ta;)FgMe(Y^S*`^16w%)ZSGwZBu#wc?Q=-37t_ezhId-(GSn;aC`L5OI7es#( zTosA~!zNOHuZjL9x%Mjg<=82%(~4IOp60rO{sijR51#3&SG@M2+0^n@b%C&bu$QQQfv7Kc zZN>amQNNb*z2NA+hR+JGa~;O|+x-0e(0bQ7bSStqV?DL+0lpr(ft(@yvg-=gPX;%H zZgd5-63g2>7aSP25$j9L%fXfG74jxo3Z6?d}Yp=PYv7Y}uF)QtLS1S5faB0TtuA$QGdl*k(*c;d$o<{+0 zHl)gxk9n)Xe0jY^c`(>AWDB~)+zsp*@-{gE91fm}?T3Kj4i0Lc4el`H9oKBkr-Ccl zHp&aZcMsX-nuqyH(SAGSFNyZLOU(TEG?wk4>GR{$9VWy4__$homvVl5>{rZ>kE^x! zDCft=e#QLwxLVsuIX^!3gBRlXw!(O#hwO5#R2(;CFV@5PF33}cyzknM`El@wA^TnX z6ptHnkm}DuK6S`Pu3F6h0sFPXuFKNquq-~FPh55AE?_^n9$mD6|6cp4E8upyy)FU! z!8UX})K{|4Tp{RmaDnABS35L+zZ|^p(-np0@0Wx3eY#@M$HnwNcg3O4iRpjtN=5Vc z&sA$*xcq4T{y9H57yYYff7CSrT`$@nb1ciTpO@{;yivlaniLDJrf)lc9QBh zi276HYT?tagINC!xFPgwS1tNiaA4TiSYKkkZ5Ur4-;nPB7g!7@fUC7Lln(;?73Yb( zmh$N$H~ciXl6^~g8Mwgmt?RNJ4=(TTFfU@Qhnv{iA%??+&${Yx{N2EthMaSmTg&aM zH~4L^JiaVqeZf12oF@+#{@&%p`YGUjLoT?Y(EkG;0qgCH!6$}XB(D~}%Rqiu@XI%JdK=>SFPvc^(*a@Mf+cNXW_XmyuTVZkJ5(QQQjhwB)+cLu!QG3!s)X>=mk2EK^?P_)11x`M6|?XS6RqJI?mbr%bg z+vh(bzwT;{4jRd)f5YWOw*mXX5z@H+{=(&1#D+tDJ=E|t;hV0G*nT0nA@pxo9J&k~ z81^@{uKC z`{q>7a`^FC3v#G%OLr~S$AD+0ncdgWDd5r!Gu4j*Uk?o=7YVm=GmBim72t-@+ub4P z_rZZ-w^RLTa7BsI9VFE2P?Jz0P^dhhQATExzn-z zb#Ozd-8})_ax@>09ov_fJ>W;OG;(`zf#R+rcTgTHa>M;Z?xcLM$PJGcxr_1{A~(E1 zVRLUabE_w2yGtpwEi-5mbL&)JKwSWB7R5 zy3b+#UEuavcern&W5Hd)`uGQm`gY`r!tLDw{D&L3U+@{xzJogy{eo!Uf$CoaUk|;L z{E=`+cSo#04~F;my5rE-!0`TFs&ARk+jl14A$*rR73=x&VMAz?J0H!D4+F!ZsQw|S zkIA~5JV^K+_f)JO501;a*S!!u9h?f*=l@Aj--TQ%+||7j>oFKV;dbvM|abH8r{Yebf%l%0&vfQ8C z?`Af2fAWAk1TFU`4`6+X`EMA{<5|7Q*0FHCJ-LXr2ghW^QvY$n54zi7ed{1Z?1>4|3l`e5`L!>kby~?$uZ?-{)T7-ins*b1!i3Ma%cOPjw$d%lElY zbzhXm@lK=u<#-Lt@lJPN!S-^zkGTUhxqZm-K8Ec}%m-loRckZIUx58!o2mR{F}&UQ{HMK-@azMqZ*Cp zf0*m*%dnjPC*09EJ~{t|?o_m#|3d0t&i@>;oPWdTOZne#Pf~sb>{ra+PaVtVQqJE` zy~8xuJ+#qypTb-puVFdfdG6ds<1KQ}ZZzH^>OUTqN454eISuRw7i0Y)|k40YW-hlpEHne=7$6|K~TE35avAZ4m zmT14k9fh_`=IxibW6)t>xIWPxhrV0nOWmnxzW=Y*mbv|Cc|L5JI~N@b_0`(5?g{7t zU_W>^dZfsobI(Ih5&3iOrPBC$THa)PFf6x+Quj)1FSp<4-BoD0{XS3YUv9rE$a4EN zyhV&>CFO_2cyt%BZ^0*qtfKM!D_rK@iPQ5u%Fmy?;68@F2mB*g|NfW1Ppu})-=}mJ zv3RKeFKZ3;pDX;LyB7O<65L|wOYUpvQm_Wrk8d`K`f~CC;k9n&l-tL7(SDsf1bsua zUq|D)eF|S+>&ZT_U-4Zc-$3~TA~&2O@|P(eE^@<ejLNJ`K zCqD;<^Y!FcME)N6U6C7>=bv^`F3&&hbg#zo$@5RU+#AsH{L?P1FJhlSf7e5IlYbK4 z``uU2a{JuxzJ`8fI)8uCes?{3J31g( ztZ!VO``xXj&9^_sr?=njM9b}AzdIByx0n6yc4)bM?04s)<@Nac-R0;A=x@=`{q73k zLwJ4We)o3F@5brvMaQ8Jq6dRx6JUO%X}tBAx0nIfvqAp>A#(fG$JZK7<45b`i$d$; z?~Rt9|NZU+w7xu3(Jq)CUp{{Ho#1M1zdKvF$lL>5$@aS^qaOknSoXV%Wj&7nfP1Ml zn+ExFoetpoFJ(`I-yC|-y&ChEz&nQ?qP!CP;n0t1dy)IMPtf}H6rZ>&WP7}R;!~>M z4eh@eYFK_h8J6EqhUM|qXVhLEU+LD5myXc%<@e*~?!7pD`Th8Xy9O=4AHSgfK8NvC zYe&hoV87yDM1G9&e?)Fr{$Bef0I+pUdEe(9>?_k=wKBasGJ+ zi~Va6^MbF3eoek#_#1a?tRD_;2tDI&hn^rHCO@_G})3!xrvQ=YXkNxzDwli zDeozA!`n{qxq{t0l z1;g)K?ijgz7{6ZRo1s6tlNDde_yya;^Tr^*JoHz+KlTr_|99x0?tHB04j6XBJxB3h zSvRS^!)$&$|F?U!%yE7Eqvz)CD;R4%%y3_@L-7~TzFPa2>Mw!eeVpWak=K)h|HpGO z>jw4>YjAJC@o^VeZn^h18V?JW+k1)mDab3C;TJ?b3qIJW-bD2WAn!QL@Cooe;3JLd zZwsyw)}IG-8@4Yq2R^~Ck2M?tE(|l=Q{>I4K27Ah<@LoIV*)Uj*B5V$X&!t|Ob@Q_ z?ZU4YZxMVG&95(RHn0WtHx~Mv=xa%S65J4Ec$LV_l)oc#!$(CPNcm-v8#Wd4{##M* z1vdm4z7HH9c01+$z)6a8MBbY6St2+5oXCSH-z;*&ABx;U`PU*h{JY4ll((3}r*BwZ ze{G{&UVm-a2leq`cFOM&?F~OHa*gsVksE$glt0AaWPwUyGb9 zuBS{G<_-?<^8I_6@W5dny`KFE^}~kw$nyHiu;5Uvm)BQDP%f{pY#SUc@)fMblW_b! ztX*)3kM|Gf+rZ0)b-?;kHVnLOSX6M7$jcbNzWD87-GWmUe=w{^@KnV|hV=?wt@yiP z4+L*V{}1~6b68yPLB-96Ck9_stPSrM+&WawFRzano=W3+27LGMwBTsW*MlD#J}5X@ zar*FK!IKr|4j&b~QgOlXJnC;Nw10B=*x-F4m**Ro51&LiKi{}<`1If!Y|qa(zB~MX z!PgXjG<}g&bDAFgqlqPVtM`;US@sa{9dfjqLUz$%^-6 zcc%UeA^$Y{o{%{rFJjpyJ4p14FJTzHj8%x{9vj$9ftS@HFet3p;PZZ&Fc$U((zMpcAdQ`~jb>(sybDcB#6+7i;S z9iM(F>j2IkwUhEb;73O74T%Dle;jo>#Mxdh z&j#@IQMDlvicLA^LgEy+&bbhhuh^Y)iTZ0b53aAw`5|N}=Iy~zIX{Q2R@^J+*N~lx z6LWqKsa2ew^C$J!9oi4ixfT-8L5^<_ctXz25U1kDa~eXT70=Hxd4?)}E+@dFf1V~l z`xkRsc;;cg1pHdg?Vja|-_5akwkqDA?0 zFZZ80cX*-{v)ns9>55zDcBcLgL49y;lxH^Pm%trzyLuKX?w;GzvsrO`Zg0;q#p$_m z)Zf3*K07zwa})FMBDnu4x1Yz{QI3zhFgMN9QSqYOOi#MvvfRPcUoWWNn49I9jrkz( zw%lybLd6GiM|(CaKAt<)b4>BM+zHfQ9<;xjJJE9!^QXYKatl1IJIV2J+eXjybWt2J z`U%fa#rKY$OZ}~Y`qC(DLM%3aW3$zM)UI{r#dY3Y(Vq#qaNo% zPZgS*GfHgvR+)D?QuR& z%b#DL{q*P+o_fsr_1S)H73KW;>}8|N(DMAw)lRF){C=6Moz{5FcgguL72|u+6M8HCoO1blf$k!4{r}ZYYiauY`v0q))_J0Edi?tTQytcO z643nme~)uL)${BBuXfttNynUD|9`5(%QU?iV*MMQC)U4VdB4s^s+afc7?$_zyh6FW zU&ruL(SHTyYeoNt<^49BD3|x!7=8=tE7_}*SAz>IWVm;R=aqWSj);20^7?th@_Kl( zxu$Ww`Fqj7k@M^GSB>7R_iyIc=f9-54(d0KevR_~z?&8G`+c^Iew}iDzt0Zv1i3yK zzu#x?=r=qw6nmU+V!gcI=g8={JWDa>_vh>#{kCVdVvlnh)${v#j*Q;!*^0S1zcKnf z&pyR_`s}89etzS}(R=mrF@Ar~-=p_=YO$W%ukH6-LwA7V^XLZ-cv?sC?Z1?@E{6LP z@(xmeUBTA8k3AtGFJbxM=m$Rabiw+WqW&|g-ze(8@bt!d{{HUh2fp<9vHn|8f1K)@ zJ;VF|%9D%rJ;Biroc7Gd`k`P`-q%!LBI;{B#aPepw~2n>tfw67_lx>-RR5c(zu?)7 z_5A*w=m&oA?8ExbCA|M1sXhm6&HLGNMAqZ}?JDLaW_f*xVR?OsVSYWywt>G={YmIA zmg&~7@A%bIBm2kq&;Ew>^Uar_zDwS3o+~(BetZ<+)bmotk9T_H)lvWadXk6p{vh+~ zNs_=f8;$=@%;ov!tDOw<^UYT~UGuQJ<^GSKZ$8!Gx+et9&o_IV*QtMbzWWAQp6|Zl zX(#J(dHvO7dWPlnZhE2`P490{LZj*ZP3`&hCRaQCL+00;ThVb#$dnTay z^(G!?y=R6rj;BE%FO$!YAe&n);Oob5NE0vU3HRf-G4eYh_k-s&>i<8zf3vJNEbGZE z3EB_OyQSB&f#AG6=9R~b@Vrzp{oBZ6!8=T3_L#_LEbtv|NZN?fkEDz(ztwsyzCyi z{mA2qAg>v%x3{6???pl0RJ8m(DagAJ&42IOm>1+-j^@9oo$3(eU5%Fa;{xLW_0}|MZ}ZkRYH#yiMnAleA79zMb?9`kA6$>l z5xM3KxK}QZ=_1#>HuQdxJG>$26C!tb+o3Ot-06)%{~>axHwG>5uW)(e&}2JHTZB|2k)^)cs{51bffWfrs*|b4A=kV-Q}%o zG@g4X=i{l(yVqOaXgpo1e|dk9VR?U$VR?U0H>&@6I3JI0d4JT!y!$XOV*LK7i+R!B zfG%?T=l4fl$?NV7Mf3ZkZi40hPTn7NE3XHc-yd}=ucx;o*7N(LT8@eF#-aKBQ4X-a zzw8V1?;X>NJQ!T98J^I@v(TxsKU}|heJLw}JYvlK-h9mE`i;f@OBr9DQDYwTPQ`pX zuXn^zegGUb=3(y~nd9~vPveuHU&HeAYgn$21ge+o!?0W*iImIrp<7=ceKFV9N0PT# zj>jz5N3ypZE!Rgf)${w+`i|*G=If*HnEu|)SkKo-+L#pYJ~Uq+!@-T$M=Dva55u-4 zeEk@f>m${BME1wpLmuJK^HO#nc=VV7-qSM2wOH%--Aa|E`JXm z>Gdo9!xL7$**Lz3mh$T>M$z=rz?;V8po`cf@b%EqtK>{U$gt zYz$4m8Vv96CLag;$@=veW2t}ne2a13rPv?;d%Yoayte|q4jdRZp6Y*u{;r2kAe)wP zKjPhr^*(Sz=tS>fbQBn#S3vc#qJEOM2J>N}elq2gMLyYk1@lEBe-!f)^ICAVW_Vi@ z?+5#p{7Y~po1(X8m%s&zy4?Mm|6OG#QSy%EdTQ+ zV7+|*&J&bZK!5OrRq`86%#Ytc9`l4Z8^^Z;@-M~|dS|2G2Y&;W`MH;E zQ=SICOYsD7EL%hQT<{Ll8t+bA-_uv{@xAChjGlu&jb02MnE#^p9Qp-tL+Fd%%jgPp z9eN9RFx2bY&j;WU-1o`-!7Q==d&z4?^Yf|jyb!MwEw8^T_lBb7^|s~Sj%ay2y4KqT zEssandV8b)gXzVxb>0MY%awe7*Ll;?HgF|d@6APrfD0_^y|bn9`)h-Do^Y9Xp4jaC z4LCn?`(BV=;a!e7-@aGpZ}wIQ!|(C1{#WN$Q9a+jU(Mg@-H!GA^Yd>0cFKFe^!Mk# z=iP_7AAB@_H{}K3+Why?WsH9wb|md5^Up(O%0co{sPF9i$a@6)s{sF;e+csxY!CPb zxr`kJHy`^6wLb$s6Z9GR7j(VoPk)}1o|l;A_G0)SsE6lKVEYoYc@Zu?y(g zGB;mq)V{>b-{2h8%t`9c`~qM8r^rrlfyHnHxLP|+c`vXZyuH!*ApEVXC+eY}IlUh+o6^!fEiyI*E(_}Cx4e#Mi=UiHpUTsZccH>3xzhx^5$e{cJG zZ#4QEc!#M0$6Lz0FT(fp*#FQ)>~8Q1aJs11_ZI;^`F&7k&Vd}BXG@+4hUd|eXM!jC znvfq9=v62OUz5z3GlmP1ARlqc*@vM;C*9T`(`NK zGS=dohraD4`2Aw6&9_1EyJH=`Dq($o+%$bYKh>IHK0kiNh0tHM7EJZefc=WcE#%j$ zijOVaPf=nn0Q(g`2lcVcL+#gtcbE)s0dETNQoa-X!&ovK6aeR|#`=8Q<@kl+jYWDr z`xxr|n&A`RUo2sipBHXJ{!2KVERR1Ud`GbVHYfS}q9ZUbWw)2Z_sv+{CFXn+-(DlB zeK_O|VQOvCF@T4GH`*#uzdba56b29Zw$-l-}IzhKL5sWnHXOTb6lKnHRgPO@bI{J-%iCn z$MvP@9TMZ~N3Id$GyJ{C`%_*ga>M_LJcV-GI=+5Vdd&9>>`z*@OiS~x; zL_U;q_A(#8VH>zw8%BAA$PIT9`EbhnirjFv$VX5Mw_K*`HzApWzbGUoO>`i~e$bwT=24P5D7lZ}_yR zAMLx?s6LPC>qWic7O(L6F>C`@Yh$QBT;zuD5qUo4y+m#}LF8j8A1Ly%zAKH!GmdiE zpJCab;m1UO5-m1z$e}RR4eMy$zg|WBLbv zJo=Tr=Z5IYE!K?rFpgAg0qnrf;+h_YKsS{v#oDccgF5JK5dF!iHhMs#KR*No9_?rQ!&YtcSHF_gRiQHb}{=w-H%VHXu(+aw^KxaI-HOC z;|5QuC>J^JSAXZpFCqEwDpDfn{p&TJ-0WY+4OTok-uraG{r2xgK3Vpk7W4koV&3mg z_4N6C&Eh8=lkce&m0Z7kpLc3SC&BYDzWFe2qIW#N;OH&rai!uUmBuf1EazMBTmu2{ix$>%Me+~o82!M9Yb5;^DVR!?s7 zb^G93E7pjd^F7y-n|$9sSh1cD+$QqL@te=X?llN)?* z2a8WcylC*f728GM;K`YVsvp0b>bH0W;`w0ldcoy~WsmQL6{!H`^BH`<_T{PEz2D|%$v ze=~SVMV~BtcgQ22{s*YvV#rbt{}Zu0AJ0jkB$g+wyhf{mw2O&NT zF}H65bVYpBkmVjeS#TfLr}=;*!jnIS*EbBVCAnUIvvTvjZL2>y{t4cX)!Vbj>j~(8 ztfTsq<98$O4Nr*w$?@eRxA-N*%ac!f@{NdVvhdf4yTJ-i9>3d+M~inwoZ9&*PkspE z-Lvp1hna8aHs2pwo_xJxkl-PRYY^89?su=r?;90k1P?@9gLsnQktBb!VyfUPNd9KU zEWuL|cZ2m6a|F*pyu?{wF_$sLzhuZ;6^pVke$m*=N4EuLzPw$rg5)}%R6ZGwMR~i{ zZ&z#=|I1B0L*A)~cIEl}jHwT?j30Or@ya0^DiSOw{M?ZDDpG_ez^f>KZpizhKOH_q z{L+w(6&*!Cx)6U48SYwhY;wkyVTD%nTm3=K9d7oKt zcX;}f5RYnQG0&H8Jvq;pZ!5NNee`=X-r*#2yq^q@-`#4ztJsz$AB#(vuGcrC|FMpf zigu&^hx-Y;o_q=6NGg#f$0yiDj?Yh{yjyKF)kfqS5aSgoT_%qi-=R-WzBMbMfjeGV+-oLga)hA2d51M=OqWc{fSlc31D{_O6 zZeN-jpM}RdWuAT#<7wYJnVKtdgO6^%Q)*cj9_#Gl>32kb^|ftM8$@pKZ)#Ji?OFJD zwQW;vx^sSwyhm+&&%Qh2d9}Nzx{BQ32W$6C)nwrwwH;FRf=@vC~d9hCQ|wRjWazt?v6U> zui^1zK&D3uj^y={k2lAr+6d<3&9SLU!u$c`#mgv2jgF!?CI%$g19CN^ZIduC+GFUV&0#e=*ju`XYp6$ z|0GWyUu67S%=d5f^5lH~hQ$@AzdU)eCqIDfE$017Z%@wOm$sO{FKscer@vHvI0pUA z>if&o49*|n(QW&B@-tCBx@|wja{hLTho8ge;l?@^*Q0*Np*5cTH;DH~ypa9Jx&BjA zs|9oZPZj;?@Ez(OJM`4lT8U@igJ!)uEd|v)euf~%?`Nmtf;qpZrxJoWAE&3<2p%o^ z?HI#&@^^Zwv&i}PmHw$}k#l|hQ+)*AMEYl>28uq{e`cyy@a^RP%v8N#j_1tO7{+uw zJF@!B)D)2yJ!I}L8IYPLIEA<*Js>ql@Ii?2dS+^#;A0Wv^~}^F#&Uc-$IEYjl+Oo? zhXwE@0Xzlq^5i+GrR)#P_YD`eKPR;^3r}hLtJE67=KF|8w;z~VpM_5wdR}UC7QVLa z;MBG(e9q9?RQxDjzvp6o{h%&Yo`pY)jYzcOS@^Tq6<+>V>~H$>Hy-{s>R;Mh@dRl3u(@B(;tqs=n_9&F;zuFgks6;` zCAc5rlJt1-Hv!H^Ty@+84_`s}%G6rXzX|cBy(gwN3toVDdf$m&JdYxt50gCnSHz=Q zO-gMOeLfysm5LtC^NWuMS9$vHqW<8alRdlzaa|Vvj{ILO@`>?X7n}MlJ_hlqR*EOb zM<8CFoFe)Y;J1jsN?AOc@b6M7iRWR&J5txAssyh@jNb?M?Ei+i>bT!~`0s?Lrm981 zWQobowWo8TLhd(a`HsgIEsT5sw>sy~y$XB8Vpso$l#hjCjV-8L4{F zpNRO6LvQr-Z$UhN=uMvfV~Cdwz1hPrAYL}~4<3Gx8)f4~IVH;j;-p?%_)je->M&I6fIMzTeQpHzUUP8+!PDl0V_$ClK#QJ(22o46j#f z5Pv@OiB#7t48vB6{&YBEDZbxh*k9BhPDMPb)tb~m(Ki^+=u{pbgLr-x=HtDU^YQ+r z)EKe97WMJ{ZK+9u&Hj7uVXvg-W#OaSznWT^g*y*hr}cr+?=ozCYF(DRdf0~4wk&*Y z+xJs#dT@Kq{YXk99su)nwu0hi&rw8~v5lpQZ+7$xljto*JKpmpEHI{g<#k zy@!3FIL_Y>_=ku2efS=Rk5K=heu^i;R>E6Fe_}lPsDt;jeWmu$8u4kvJRI+g_*cXJ zsq%O=;$K?~eGuartjggWKaLMaygcd2KwtMoHi0g*!@NgT%7kYRi?18v9d@J$^&?GLAzs+t_3){Pr?icDcp%~jdqzDx67d43$irh0_k*~HCnNqWR^s7l zh^u1FJbWAClaehwd_UqhomL)x67i~7sfSl19_u7L{1)ORPML>4A$iinJ4oKz!z~^+ z@s)e{0K}igcJgp<#HS72*~8}|K4<7|f+xr85zmK=hkuWFR4a?`LcBcL){{T!$M8Dh z8Y_nlh#hFB^~FCzJm16keuDsRzRc98`jg`oi1B_SufBaq-ab87=A(Ju`?6uXrx#@5 z@x%5=FB1GH?(eQ1R+(O$h4*j2S9+=7!_eRL!#bu{WZ{{^_D-)7d_2nkIBcKv>MVTc zuukbUjAg&Nzr;5a4tc_XCx=;lKH_(G?VMi6`tgSln^!x4{l4oMFZd_2hyP1gxNmE?z}#|VB8@$zJs^mxHr z5!WD|D!6Ecksp?xA-E0V8pLx2??dv#(+dQ5CHdj$#e#d2{D|~2!2?NtM0%Cr3rXHJ zy+-f^l6Ot77d(yR-O?Kc-%9ds=`DiqCwceuHo;Gjyn8x&9QBX%_mSxqgl9s>ryO{F z*pbrz)1f!w4~8A(jfWA4zZ`ZYoVR5qBPbvdE`HU&P&p_epmV`7p%4 z9A4we#~?mq_-UTMX^6)UJ0so0*Pb&)j`#bbd~k)uOAz0dvUp`c{<2>V?;w6W=IO)N zh{qQVQ2$W$9Nv$5%-M?Ltq~8dI7jdeus7l%!xhhjgAw;TX`t%E353s0_wvPmUb=>H z`~j2~_c<>;K=5OTM-4wOT`Ty{i1B`vbiLrUh-(m!V=UukP`b_WJili>Z~P5Pw-bC9 z;!(o~r8@~;jCg6QU#F`C{{`_p#MOe|M!Y;ZINek5r-*A1*9hK5@*(K~f@7kH|wgeS(YMZ7$DdAf(-I}q0(?!)?$@3Au9 zCerhx`=4R)cc}kNuW_Ed_(d}xuJCXv;ok_J9N!J`{L_Ey;r$TbmxZelcZ2bs{FDG5 z62QMjyu`8kHzD4UnjrQQfWJRuF@JyN%Je|Vhj|~!j?~2T7{UDgnTc9I+=Kp}sGj8E z#fYyPKH0<1A)YaON_rC8!@G#*4xj4PzZLPl!>{*ne2u{~(gRL3{WlRR5ziey+w*rQ z;_HUb@o*2sONZYgcp{vMcvWn!%HzWjFHhd);VTi>WZ|1he!C}ML~@ItA^9Di{7sT8 zo&Z}AKiqbn$nkp7O9tPW9#8R4j_-r`@wRuRX9@0(_$kDCJnV-Uzpvoo^ZXbtLVQxv z%I_ul-J(A+zQT{;EyVanJoN{E_v5(pGCp50+>^(5M*OVBurJ~lhu`DbpNe?h@cYyA zIDQy}_=DjOi+lo%Mf}C^KdFBFR>a>8U+&=t5f{~2{50ZLbx(NmR}t^z;fe4u;w8?L zBA*C55M#t1-uV?HS3Ei132`@gO8vo+h|_f*j`t$@pH&_|pX@EZoaE1V@~HuQYXC1H z`)AUtB_Gct-n;Huv7Z3z5m(hcCwL-!i5N5L;TCJndaZZ@?2h=Tx;1JaKNxX0cq!fS zBpUzm-iUkFy(DscpB&=Tv+$*e&++g?_&wtJ@UmCm9K?g`UQQ2We{eVAk#(<#d^#*a zd}-aQ={l0@?=Nqpw-cTa|HV27-rDPpbpMl0JQL!_A>OCM8|gue;S9uh#;5Va`2lQx zpWmm$o9RiUkI%=T{E@o#=^27=MZ63#&xZ-H1o6{#Z+ZAR#H;GwPR|p4exLS+^d`al zKJ5*j{s*Z4LfyL_-hudUb?>F2Hy;mndfluC8`E6{?}fMqvDSYm;8XN0L0p4a z+aGz;)c=)-D-pj}_s{e^(LWaP^5nMk2Ek_|u0gE!7nA)r9=?(6|CQb*`b)@ud%CI* z$NyKd-|p#uK=wO499wVd|2ExA^!G&E4Inc`a5uzw$u*<(pNjbDI>*BoBVJYKX6B0i zjfj^gqnY)B??zmMSnZc1eyc9#;nxwrS67tTD*9iMeLS;WaI?3JeLNHI%k7ys)_mWq zB-2Cijfj^xC7A()@%?1`%+JTHrXdU{1DlfWmc2^B3-j~Fzx4F^d1H(J@}5~g`grnJ5!Ynl_etK@lmC4wAo8+ft=5l*rHBPi|N7Q8I3BISu^vCI$1-|y4o>_#r z9n6gXZ6m&acjW1rRf4}D++X}pfIqjz-PPV_WHzvU{J}CDudUDYS7 zU}lWq#}SvL2YUWqM*P{{=X!Vx;qx-fM8DOCCcg7CYX$Ftc-QjtJ^e0-Kihkdhkr@< z*O?8XKbY(XXSN9*P47-zykdm#Jp|Z~)>%G9xlu1@|F5GBcpRiDx1V zM7(F~QJLr&9N)!=U)yU`rnBIQh<7a?m6;=WI?3xZYXsj)^7>5IGszzALwxec3o>oa zV*D!N;Uh<9>Ivid5!qjoS-@E4?uL);tg z^W^`Fc&wv%Cftej^-A9_@|p02;5L-s>F_4vH(TDH=}dSgd?^@{kN=*DUAGzgYt;Rj zF5Dk7Ulw`wEk^nBq{UAluF1ly5YLAPJ^j}ak7{M{CnSH!lkXt8#fi_1{llKT1L9Gw z9?n!#JRdq7-{MS9!a9E+$!zk)`$%RBV|WvPpL(k8BjRs5Y()IRs6VNHC~s!2k38z( zIauHFq{Vk4uCX|NKgIW$>c=0Y_&f|N5x+j_ah1aw#OvEG&uo`?)+4@kr{yA_0GkkR zi#?I)buNv6F!J|DJ?Y7}6Mo9`$H&{J6~}k_+>AeqJ7nRAJpWbdusj0KI0s`j_y$a} zH~3=I-#p6VIf(x`>RFNV`cUeu^7M`U66ZM&8~Yujp7$`@zYws0(UWuiFL{{jx0vl; z3D~do^o@PI{#6ef`?C7iJx2yli z!)*Ua!2VNDZtRyhpLy8W?-=#DhuQv%fc=-A+}L-j-|Asw|BL#sJk0jn0`}i{a&G^> zJJZ$XGtZ(CCwoeD_GoIYo9~WuoVPik6zS6^NzfZt^ zUr%oA$JOuWVPikBet!?M{ec1dgFLyhpH^SxVPpTt`olbI>>sGFMvT9s>}Pt((vJlz zjo`BrMxG$*!fr$(&{p`Y*N}g($h(T&F@jGJ+FST%_%NRL34gfo8RPkvVDtZHkRXch?~(fa{3z@~@))FjdiXv*!OBCm=e5bi-562UQ-3Z5Ef1*WF zZ!z>BjMoPwe)XgI&W$6mh3ulham3(j@mqw?Vwv%yaR=jMJG}lbdg@>4!H4e0G@q)c z^(eitE5|X0C_djO_y)my;{`_3j$aVP^-XYZ!8~5^zIx%05&jgRnwMa^?iBqWt6e`= zJ;8nqV$Q4WKh3k|KS(w1AXU8}e`t5^kBf-vc(LO?s2_%Poq0g~EETHbK-bk3Qr}9E zuM+x#@LvvjnwJ;E?|nxB{?qjr_rZeqJlc$Y7djJ-Ko_J&?+l_Y zoG)1UM$gEZy0BRA)1tr1C;$2N2K3<{p&#a<|8pGc-!Am20R337`U~QqK4TZ| z?a6+>6S~t0jE^Pi!U=-mB*S+hM$~~I-c9&-3;j@Ni(YK^LviLr<0k@p5RJm#L}PFe z(IWVg`n4Fk6OO|Gq9t$v(Pl7_XmglE@w9-43AcnBiME0piC+qHh$dhi@yps!LE#1{dMFDiM8NuG)%PsNg_xa6rs^3+W7)Lin^ zLh{s7@`U-JJd{eF62S450mqk=_*zSRyD*5T1DXe=!SVR2=;{80<<_q^&Ly9!cYTeiCj!O9kHRd%_jzR7Xjxq)8BaCme?unEc~N{ay%|@y%Fdm{40Ib1>IkT@heW} z`iA6v`z=0`pIkHt@Jz5Mp&XL5W@U8od%2vNLF zA-IR&lZZy(6rxc$n`jI!A&S2<5p`jK;H3fjw&2Ik;(C?tGJvtt;|23NV9z&nUC`@f zL9G0X#9sU3=(E{>jnKhDFA#c((Ax7@Z|Sd@e(a+z{5vO(K&!#5f25DPaJQWIX*+ly z=z!8sMPK7q+F}U%Q>^*$Qx`gko}Z8JpQiS^-t|PqVftK;D|Tv+-^C;U)(>L`#z?)I z-yq$umgCoUYd>`l@O2-l*KY<4HFgou^PF=D<8hNHUw<>_nfD?#^GNmd`rfDgjlB!s zioW8KVeGdtzKioM*balk_-20oC-k%H)&0}F5vG0iIInRjU#ar{uhAJYU!S><+wr{6 zro`FQelq#$GMeiYhi~UBi|A*N7`S^RI@YSEv(=PV+ z>m7ns{(Y%l2MAt|4C1EvZ!G^Y=}-SY)Xh16bbL4FPvg?@pSs-6(?aajzA@SqKU2qX zKP?a%=6A0vST9Wef05smJp7#ThsD)YzK*v-s2;b^m*e_+x}N329#@)vwbxlY5su0A z9h~0<=@r3|WLFG5i8`S5=y`bOs~V1<@7vz*Ygb5~e$H`_D;~bi?aFm--EZNJp_==t zgeczEOEkZp_Jdx>Q>^O`UvIbdFh2sy*L>(cNby5cO+0oT%qQ3S*)HO(pa0kF^2L)+ z{@>M3yg!cm(VnLiiut&R=gaat4bT55@NpsreBM$7XLK{;q!{+S&QN@NARSK&wJTJ= zP`zM0anR$R#?^)5j7U48(vFz4qo_eU8rQdR<<`q557t}UAl|0sU)x&(m(%gQ8BCVr zdehpkam2+>iRXu}qq-8O%_IBQ_Tc%pTxaF{hwEuv{&w2D`T0>89~ftxcdM`c5Y)@( zC!ajbZ;;RXaTgBgZRSG+%C6^m;paP`_z;pu;Mjm3^KHBQ@rCi5o}c%xHSxK?=c9PP zpbtl&gXBBN|AzFU5G8pG5=4t&x9_E299qxkQV-V`llqFJzT(jO3bTv zLhI+>BTKwE^mmGLX*}TdD%rRDvF(@K{3z7Qcv89cqaQ~a=y84OU;V^jV!&TeZ)Sn= zm7>Sg#c!VS{P5!ltP%d-h`R8u;Lid$mz~)^8as16CfiQ2kzYKG&&v!o$1UA2-SItf zzv=8p_fLgVp4Tq$^~eZ(`9JJO_Zd3xSswM|h5F~?GrmV?2K&8=sGAqRFX!{Buh@UT zQ3Ni!(fEzRZ;0aaS6vNuf$u|6dG6~`x%S8T+U5UUHv&h`GWFq8S^=u}F(?hn{eJMi z$=)0{|6XkUK1zOFkw?7WlXLTNKOu3bT_I z4LgrA`O4O#ez=+2-;*fzR}k-Sa!z@0+~NC5L{E=Dir*x@3mb_>U^CIESAT9fJ|E<> zb3peW@mo!v@b@XAQ79)GCb#2*?IXbUQL&GC_8*Pm{PTT;^Nj_h0PxX^u!ju-W-{pjawKQ`=Fou}Nc;QV*s8p&U<|9QO)&SyK0 zw0?g)8V5d)DChI+*RBujHzxTl^70$3U)QPoL*nzx?K&1#udYk%PuC@U?v?zz@DHL9 znI}=udHDV0!TEvr8_;pV=JUY0Jl=xs_UncD!S|QSzBXvj`_^DRc>nzcx$DcV->_c4 zUYI<{ci<9fC-+NmTqstm#}kVmI*{Yecbxp8a-P4sUNodVZZ~nb(3dF7bDa--BJyB7 z!Q;60pB~5lgzqFX{&io%SmSVkam14wy~g%wrv7~L?0uQ)>pny8+tqbVaj;$A2R9ZM zUq`k3MfDGNaejhw-KVRbQoi34e>XqU*x~un(T3u80!}tm`HF3Qe7`NeKLhJC`!2nI zMejFPKe^>WJA6)?`Zd^(_`b#Y9LGqcjpakzqx3tn)ALSz?rs75;rk5mJ2L^Se6?44 zo#@RXYTK`JL&M@~DnB^Rnu7H_SMQ5Ztj`ZA{zUp$G3(oYS3cV{u8dG)hB z-WM9E_or^JjtkCT!+h}lS`lEqC~TvA#iafEoQR!Qh3OZ=;rE&OY=4K->oHGT$R)Z;qqJ-W=E1-i}+1H+LLGVvo-s zk$t>@J>T~bk$R(W9K{iXJ`x{~<6`j>7e6K9rx~0jabHQ)h3kk$;3nbgc+>f_nD|k6 zq9Az;T2`BO7s>OCw%zJ)o%nk<#GhZD-=FSt`96}upQ{YEQ~hvzW1;QMt!LNEUp`>k z@4}fx8y=@L59){88-uWXLK|cFyn71X8&y_@Ne13iu{z~!~yq8DsE72=iWcsU6e?`D{#qh)I;;`Qj zs@K{d=ksIRF<$t5d~#tL;RyVJXw>W1FuC?~m|XikOwRpo*WoZdt|z}<`Jtwt^6Tlo zs`2{ldnAH+`MKN0_2qAuU#|!r%hSJM`rQBaeIB37c-TrbCclpq$?qfj9Bg>L{QaVF z6+`iZJg>s~A)g(uH#(jj(C4j!bS~9{&v{6FemfU*9w?v3n+vx-#PRWXv6%B_vFh_W zh0hHI?1Fr?FO;wTgMJmOKgFsa^sns*^3}djzWUet)URUor&#ra{?#tXSNlTw>R;wElv8J+BM1%jZ|^Suf_* zukop0#Xna2g8ultQ_nAK9K27m*Pk>V<+C4~ALVm@HstfT(0zr?x7w+{VBS=&ew!-i z{k|*bb2cvJ^Z8LjzSgJhR((DnYS<2ytG{5JD(CZ#aC`O7=QTD@YOnso}%kA-4*AM2~c@wto^LVu9=jvDKPvxKQleG7l za@-bkycTnu7IRz{``0JS_pfV~uk%p-@OhHWqhdZ^ipcqrofj(S^PPyC?=+ML{WG@x zqJDz)uwOi1r+ud#SB2{H`BSksFZDb~_nVym;Q5Xn?_qkJ&-{9v-~4*qZ@Ry??aWs{ z=P|#&#_>b-`FD8-j(pgxdk*v!s_)qvF8H@XZw%183FC9YL?iGgqET2uGzNbmYWMN{ zyr~PjF6R35`BUECH=M8gi(VI@8t){*{JuBqU;R8M@*v)Q3D?Vc(|HkrAU_Oq-Zf6V zPl~ReE4Jf5jPJh>B6uHy9-kZXb=~sYtG=C|+>iMCzw`(9Ulg?e8kg&M)$tJK$BzHP z{Mqr`RQ(0gUraU6_#IT@YyVjsT!&OI$k*p^+dpE)gNxsKHZ%eU6OBSOQ9FJM)3fd5 zk&ByN_HU9Ct;6zP{_hd~(?Zt^)%``YWyaox z1W|miVF0TieQu-b7^5G7C8USHSBhOeIX^$E&(T`S*SYb1z;eCSqsvV_$Pdu#1PAGB z!Z+01uc7z#X#D?gqeuLi^P^Pvhq^ChtmnV@eYT!PAD^G-&UUP4vC4HnsCrL7!}?+Q zz}&WA$vdB0Y;f7Rcmiu0#&`uW-(J8@gR;XOpf87Ua+&W*B&-t_OF*MlR@1X72Ch=(g)lU6s{*}-6 zE}b_TKYHGnt#9~dzwhFG5h~aFRyFR+Uov^X_kk0&_an_DTm*k4YLA1B>*v!8lLz^V zmAcS)y&7jR+#&Jm`WmEq96Ix5?*AZGeO*@+E7jwh!Hpdk3e{7;KQ-0%9`rYEH@`nw z-;?Knp0A%n`yBlJ?p@YXd_xF+p58C!!ZMM6U(DAj9Z>tGV!q!k0;j&majPG_56+LR zp6nN_gZ#M$J68+%&7Ww?kk>`c*KFE`d z|AyZk@YmDuy^U)mF8%^PhZM|1 zZmjLV_t8rnOkH_zWkY$eeL<|x9V_+syM4ad&kyfsf4|uN598-^~ikL4FvRIN=}vHeWv#f3U>SRR8?`F#O%*N^WQF{h|N2&6aj{ey8i#gBY ze#7-7grBdzA0jv7#EcI!PBe~u{CNFs9o zV^r>c)aUda?>jE4$KQ9c*DLe+(c{feO?A9!`~B2~HzhB6omBJ4)XGagHTlEeXNfwX zSpBJ8FrPs@Tm1Y{{P?kbe`44=ruAh1K4A9KLHrE*H{(vdKVh3~(j^T7z{_Xr#3hhLBI=fUoKgY#LRa|q*ytqU60 z8Gkq94&S#U`+0x8g`Usn)5|AscwHdao}cS_gx>e@8_J9QU0iW6pE{lkrT%s`T>p38 zV)_I3UqmC2A{vFZL}Rc!Q3ndu)9+YL{fF_Z*FhUnUH5~>wII&bPP1MlzheJJ9>k_z zwF~+S;zHwiUh32HMZNxB+|R^;@9pZt@dV}k`;?Wloh#q%ig=(+8{%L+Z-}3_#Lp(8_`WE4A3<)p z1NUs@`Wx5F@5k@o0YApy9VLzq+qgcC6W`nD!&Yx!;yb|9_3S$fpQ+{R_gVG#$Qsl$ z=c$_KSEL^PT^4_*r1SPDluEwy$<>e2-{6a@12aH`t5rgCrCU>?-jg-uGhQpy5K_d^Hb|-T;~>>yhcEOFCRnL_3#Y= zta?f}klX>K!MOQ-clf;+x$lR+6A_M8|Mzk3Z`D_--QU^Ryi&hmdDU^u@$2`gH9l>( zVpo1|Q@+JqkMga)-Z!E7Q5@9gyzzK4*Msyv<1oIq>)d9XKWzu|BcOb(NA>kON>E?< zL4E$dg0>64gLWN{2esF{DPQfGZ}XtzPV=Dn$I{nv6ZGdaH~GOk;)vpTDp3dg{NVR~ z?D?#|$6w>^Dfaq)R2`p+b(|{J@v8Ge=f6_*drV92M?baqgEW<|{lj+ldUlwfrs{|J z3FYH?S7Y;3^H7HC;uML0q9q(%`Gk#()muL|zAX*H+o@ex% zYFDU!KD{t`7(ahIj!Zh(di!2;%_H-}_aR1Z^3WK~_IrG5qi@HfA4k0J_9|b0&rrM7WrIL`HVJl$6) zeqtA%2SNM}@m;Ztz-NS`@Xvt0`cprbw_$&Zl?M5hyK+1BBkBNSJ74+uf%~4`96x_g z9p6hX*NuXB@NQhMQvdg;9l3sF{hw07`bw`RjK}w*O??sX`@r*s|A6Rgo{Q-^mi0R! z#qGJ8D8?;R_5YJJ?0l@Ld_8^{JF}lO>m$Esyde&LHzylwy-L+@HZ{lNd~&0oPfzpC z=V$i)$%>Wg@n5mh|112hl{{W~e}%`PJ#%A@*N*cqMXzWt)@SNMD<5_sH$SLnvF25& zUKduZRKII}dSU_w#vT6n2jpy%_9VkY1RdAU}xpd^5bhdwcSF?2pU(@ymn!AP%pu z3$@dQ?vkIurmBoF&P$N0f6bp#CRUb)Ogfy)lS`>l@$Kh0iG;#`Uq>mG4Sh{`n-g&r|CCjm&po6zwZrnb-Q(4j-wY@(#)qddbDcf-xj6>HCrZ|p{p{49n9_heKn64rFwl>$JI!hSN8h^jCtP>cH9W#>v?28 zx#}qm({CzY{bkeM$8h_Zx^OCD^{dqAUnqJ^UHFY)|N5`bn*@&o%E#}aHp!3GKSb_B zXKL%8M*i@68&SMpSN!MZTYtgl1@yd)`S!Vppq?K`y!P<@!}`37wb$dU-cRy{#P^NF z?Z@^y0L$^ap`t(jT^_F*r{b{utGrNse%{R1uQ<%V%GJN(F#WLW7C)B0?)S{R%^tTp zzI8p(dF}5<+wOe*uk8)$Y5iXu$MZ?+%SVIvy*GwUyY%L8 z*5BuJA0FoChv{*A+5MLsy%|KHaxJ1(=&>p5N~$_qW%Kn=n706qFyoz0F@3-{xQa z>vI-*e>`LR`~~yz{Xr6s-gnOV*1Xu~F_<63s)yg{$?{`Xjza4V%Tum#Wc$mXhsN@) zej?Ro-FKmcsJ(8)*ybTyFFWtK`L^A>F6( z64Vd5=acnQo$`VHq_+>-f>}p!qS!U-SMN9)C6ujqBO*(YPO*2c0jf zule@#?fmiU*>RAqZ^w_$PrtpDhw;@8zauU4tFivd?q41Eh3PlmUuJ$4=BKE^I;wf% zeU!E*cmHJ1w@vmaogibZh6D?Cupa~ zNdw#BZG;cgFY}|gn zZJ+iR>)ZU7_T#){h~jtCiQ@ZyiN?HsYFrPWi_YoC*3a??a6M6}Cnoh2dG&C7)=u$L ztH@P+v&Q> z>ut9G>~$}UukFYuSG_RWRQsmtht>N-`Gv-jPcKX!#t)0z==Uz*eb7dauV1>r<0Jy> zE;jpTyq}k@@5f-x^#&Kw{hdwKH}UE9-R$Qx!s1qbQ`@U{x#+mj{(Y9>xdFbxVfBXb zbJdqUU&7>J{=)cSetrzTf8TA-JN0}cx7_Zdg8Oqm|Frw>R59<)uM0(?E6HPUEK(Qeeea({Kdk;BKZy0Zia$=%zDTuMr}Vn)_tgvY6XXYR;q~$T z2728nCiyO+eCKLMZvBS!`}M-)Vf^rT^!g~DKk4~cZhgG!;*FP|*3Mq{%N#akJtRI3Rn!|-x#jpCF1n6`-$jz&{TT=Oh5GyH>(e~tIv+LbjL={d!^Y zFn)M{=etg)a(!;uTvspTdZPYb6a4)~->a{DgA4K3*mcZ8?albm_7qC>`mg_baKr1r zDnDo_&mTXw`YaE-?<0(F?St2wwVts1SM+$-kDeRh_mZ36$+Z1pe7#RYhycAPPe$oH6|-h0BbIw5__=Wyn zs?RZLJO+Q?c*5+Iuhhh+;{>kbai%z%X6s*eJ?m+liuL_e%2zx~^p79lpT`CpzxuoO z#M8~Vc0H_qm>==@1{+KD7sT0i=Jzz!J7pT%-E$VtAFY?4f5mx4atHD~51XBr?EK~9 zH}yTM9cFO6{`NejBisJ_%58tCe~zmVzUc>ZU&8s+j)rzYd00Qy zoXz9vfRhcyejIIR1lplrGrkPp#KU|$-t+ZWWAg0z(3oDX@li30`?VudN((-Te~oS!F~$EPyK=WO{u;gB}jQ4!}Fgx z+@8)v6)V;ES_E+fl2T7t96vYTpSNIsgZ&i5Hvd0Wzx>?!`2XuO>$IK6`~KQs7s}}U zQxT}R(~Nsvw{U!uJU2D#=Siq<_Qj`=o$mV^Qq8;8x03WD@QT#;zS!rM+xpoKzqcs% zYUk%`{Vue;%d`i-KO^<9T@2F1SG|T*;|-(!=UN)R7a;iF*iYzwKwFRc<@HzhtM++j zU6&u5&+C?AUYB&;QEKfDBz=4zz1S)4E?DdRp;XsN^)vDwUN8B*A$XmO-nSivvBbCS z4%%%+d1J?QUY~9I{20Fnaxah9vQFn>ONPW7uWM;#VTih zM4n5x?*rBIY^`6h`Z;AG_xG7ZT^K|(0;7mV;nD)-+8(7^pW-0Ze({e-9ha7>p3q1PPyOKa7139!`BkdzQ>^DzIxZD!zv=i>92^%0H#R?; z`d)}!{>|~|v_-sr@cXM2TN<>}^E!=N-{+%P=?4$8->-=_Tpv`grMxGIv0ZQcI0834 zWc=atYgZw`xY^F?`*B14eD(S5?Ys+%uP}X$)9){=U&Hv>`-WhDG&W8e^LN-1lTQbj zy3k9oj#uVKJbqArdWgRAgZdhG7(ew0$D{Qt=5^VHvq&C+!9=5Q0nr$Y6T8Os9LOyX z@)g_hx=Q@}sVn{*@bmLy&BOXX@%;FNXau$q#r1Nj;m06JvOf)odc4Q?0*YVu z9~J+2U%U8a|HYpFVN#FAHeX*lRMzIv-SAn z2=XHh>Sg^fzSiTwn-Ztyoxcm?fYQoGd7NsVlrHa?o3Cn`g@L>~3z%y(h5_zmhS zU+dHFS${72`ke@+&n)M5C=OC>$A3G0|1$1}&4**RVV;9DyM2uvuNyz_b>MF=az5WA z+VDH_LHTCV%V!sZAF8MJ`QqpM3GH#W(7asz61RI6QEMM;Z}*ptUKCCsn!nw8d~@*)pyvTf{dsEGk3svO{<>Fqyao9eb~WQK3S)@IK=o2< zSzqfn{>?a?Cw#tMZQtkg_6w}9^PlDRxjU6>oR_U*{UBz(3-9EStDREyr}oNM`u}yg z=0U0cF8SY@7k+Q01KQt;b^I|u0?OBRe)JBHJGE0Bv{OEuWaftphs-uK0x`l-IDoLN zpY`y4+r*EGUM!%e`VHTgr1L}L3Y$N{I9V?$?^TL{`qBBL{`}a+aoW57d8p%~PBJZB**Xl5!LT4 zIiTU&K8O8lt27u^AsGhg2)jo*!FO)v@w|X&`eLzpo1NFRz?IL;Y3iW@N)EE4YRBnD0*e_mpCA;vr z3$0&&PuKea3T+>+qjp^`)K1qArmnQ-$IEA-?Y`<%)Bg@IEj$j@zb0VMI3n$d=ItN9 zp9owZ;*a@-_j_)?QJ9g(Kg(khe^K7}7s>czT6q2*mhsN-iI2c?!cq7u(HN{3zlG@) zNxa3rc=v#1um`M!O8mbktb)B@HFSVA&=EGk-mnx7Kz=_s7S4qY(ORT+$Q=P+z)1XG z4`t3-&arTj<2a+8*WnAKUm~q^r^ZX5g2qgl&=wvwi%JICgGq8FQgbuW-p~RjBkc?a z!hEC$BQ^)QZcr|Em_z6iLaN~ z)rfv4(HkIov*B3u^BfEiy-JY}5_u=_Gsu&3eRZBc#-jyKqIP_aai5ER!I>oXlO)cm zqBn!|N>P3>>ZOrhjlr%L#D!|xIQ!kHs^n*+BaKGJy#mLlzm z{AZE&Mr!`%T zXixkl$mj8LAbdyiU7dK8^~#Cv>gK%dfa-!VMYLs7%_%@g)<6xeQlXIP0k$<+cknj>`vCw5g%iu1Q zJ22FF#OS$09W(z1B7Ge3V7EOyi?lafAo1g+ts;Pt?qN=Ir1Rl2rw!7J+{>IjkY0-P zAf#6!HTk~MT@7EO{dMkIp^MzZjh(w*=EY{>FLAdERk_lwq}SUicZ{F)Zc3=igS65y z>qJSU2kEtr^b#7>3*s8GJ1#QL>4ow2i%g>So)eksVdMALkrUt)ln;;0A$fgdp3sFt z7Yl7q>)=h1_HZuh--2`k(z}pOL;65u0@b%9vW)Z{Smy9Lu*~6gVVT40?K0;!)L-H( zbM8TE^vrr&>8>QZQsgf~{%Z8Y>)~pL*U{Auub*qh|61|CR{XA&de(}+_2O@>_**OW zt#zJ3|DWT!&hxE3yo$It&I2)G4=y<_Qmm$B3ze-gD7xM?{qv9LM%UItPFS^D1ki@cfJRke>7^G%>8-R5G*vB$%zLEC!bsj=~RgCH3NFPW1rqkD1gS0y4Q2UOLl}P+w z&^S9eR_2=HQ@_|Z&NrxcR&29*5d!SyZYI6a=x2At-5?s_d_*IhkIlGpV7s02h{=Nk zU4g7n&0LN}+qZM`68>qdxafO8iy|<>Tg4vGNGd z$JgojyDD~|v`@#A(!<h5(sBG#dekPa)QWDfJx}@OZ0m!(z(uoZXc{? z8^(VJ;)~n^-N}dz<@m-)9>+y^9F2?ccstPLd`^n+`Z6`b>&w&#kJm|JH%an1N!mF{ z+QD%-Fe9=Q>)p9%4*A))Xdd|~jm;B3echK)ep1m4@;5p*L+YO)@tgpgP~ICBl6;A? zko@;X%JCirTTtG=s0{vzbYRgL)K6ob>2w?&Tr{1IgTsryp>=F<(cW&`W&rg__Ym4a z=)OWb3q4rq;Ycq={c6F-A{~p^(D6u55c$a>?@ zw^+v0G}*5Wb#FlZ8;XXybCAwPYVcg7cOt#3Xqnir6ndM?V_wG|E4s}w{ko!Pwqxv` zDY}5_UE*BeK8|>G(Mlbs&QplZe$DJ_*P>rJE=fOM;F@{(2I|XkO6Y874cT4bu1ES# zQJHJ@FB^+4llDz;zd`<&MVCR#<^bOy{RPr*v470*C0hIv^-r{z_lFLALC2})h|Rt) zQGB<1I_m#5)*fn+R>FhsEl77M9!l+8;%sSlC*pK*aGlq6y-e1rs;HTF4pc>XTz8G~ zxb7O|aa|SVaj$-=qTJ5uj@gG-7xy6hB~Fhh&yyZeo<}{RPhkDMi+e@QdUs}Vnfol_ zRk0e<{~T(hz5!C-0I5&+<9a+=DCY$Wf#di>^5;;$zFJ>GbgWY*{k*H-_Ja2odZ17K zV9&!u?FtjG#d07#f#o208p~Q(g=HQ570Y^f z8Ozb|8kS>VJ(lC(T`b4LhgeR6PqCZ=Td~ms3Z1ZAhDX6TtbjwXTnR^DxeBVWTn)!!xrU-$OVO^Q zXxCG;8!0E7C=Z({4_hb?TPY9QC=cM6tVSJ^)wpA_+QKneN;oD<<<5!dzl~#Zm2!TG zf46gLu&i`U#yUDCW1Sq6vChsJ$ggtF!Lo~UK9*gbS}d!b5m@%5T6$3}eW;fH#2G-G zfy5c)m_Dkd+UuzHda8Xi)jr0#5dDm!7{)uM*QSt%spMfAd6+>SW|42!5zB$H+j zmqxN{`ly#{`Y0MP{^JqjzeU9OuOdzt;&dfWb;Nk+5ixc3B55Cz_NTuG(BA_|b5>*= zdY%(8b75^{0{*?8%8gWR#xjQM#bhk|N2j24VARw;C~9i2jhfo)qNc9V#2-Waal{`_ z{7F$0!<49L#nh;2#k8nt#f+%Q)vTx)Z*!uiujfY1sGAoxqi#XejJkzUGwK#aO_ml% z&8S-%HKT4>)Qq|nQ8VgRMomwxie7`|>ge@Yu8GdTa&2@rmg}OoV7Wee2bLS63$WZ6 zy${Px(TA|y95t=p5;ZHp)~Hzlwnfbfusv#40En3tAR03(Ks@#*)Nc_p>p&uA)`9Yv zSqIw0%sP;YnRTFD%&Y^IF|!VIjG1+yQ_QRbonvMlsEV0&pi9iG1B+rNhl^t-hf8B7 zhs$Cnhbv+xS1V&CSF2(sS5Ra$qeVtDUSu?Dik2b2f6-G|jxKs8-U`MPJ&%9SCCz!H zxqvhm78#$biNA*UYl*+E$kejF$mD-Rk;(HW(%DQpTj}p@^!IkshhpO=T5PQ1#U{2y zv5Bg@*hJNi{;s6II~JP=JCS~8(yt=@F2$zDyB3=otBXxv_b4{~-m}>Bc&}p9<9&)v zBsImRulpC9{vA+k`gdTl>EA)crhjXTP5;(WSzl~=d33SqE)>u+cb)82E{guVw*#;&867p6`MRSpa>UIgo`M)#T4gKif|c4xPl^FS!~ASDvEP; zu^E$Vip`i@OEIsbnAcOx8z|FUY+>FWcxEYge;$}>y;$}>?i<>c788>6HW893%PH{6PJI77-y2MQ%b&Z=os*am} z=@B>m*fVbWu@6aWNZOyI14ufR_|u3#gZQ&Ze=+fw5`P8#y^{W3MLMg=b}jMO5q~}L zHxg$PaW)fYEB(EV{@zYj(GnA9yu`%WqQu0RC^2!CmzX%)l$i0>j&v$XrxTT(NwbQ| zE~MX;^m~wIPtxf{(i-CQC(Z!k3?%(Qq+d(^>q%!c>5L(r@$~m3`g;m#&LN$-#Ff>HZ6_+R7>N(T}!h*RJJs0MaPzAmFU#c ztP-7DnpL7pOXIUE`K%_N{fRSxI0K2(rj^l2wKDa#Yh~)KY-Q@LC;n*Sk0Jgz;;$tB zD&nu9zt_^=>quuk>1=3aV&2%w#Js7MiFtD?6LYkbvRY~)Z&A7h%S5S(zr57M+@{pT zoGLY|S-VoRI#rgMdEK$}EBw1t>A$e-T>2fBRi)7qY+Y#ymR(C*VOd?;8p|G~ZLsWF zn#QtM>F!weDeZt|O=%}A`Kl(i5?)Fa0H!qf2YB z98-D*mg7p#!E$`*`B+XWt;KRm=?E;RmR^YEw9-qloKZRs%UPupu$)sm8Oyn)zsGW3 z=`<`Cl-`Kt!qS_uTvU21mWxa0VY#&QZY-CT-jC&q(uc8JS-KRxdS7HN}eG(sFS(Eq#%l?VKV>uwP z70ZE%Z?GJc_!i6BM5Gz!KM}{WKG71((TOCMV-mYyIWCdHa(tpamXi{DVL2tSFP2ji zow1yjI2g+riNmp+l{ga1If))v&P|+v<-A01EEgnB!E#}uKbDIUXJffIaUPaS6GO0E zmZ-yWMdAW1S0*mOa#dn1ma7xvv0Rh53d^;LYp`6GxE{;(i5XaKNX*7^W8xMpHzn@C za&uw%k5M`*`M(5XxTC><7H1_*`n+jEE8qVV_9Cd2Fo^Of5S3W z_6C;i%HF}UvTP%k9m_t(vQydTSavS^2bNW3+pz3XwgbzqWo~oKe_1h>J<3{O*|V$+ z%U)$WW7(&y0?V4Rc3Ac=+Y`$HW&2<`u;^0sm(9X*Y1tpKTvm2FmMhBUW4W?yA(pGk9>j8W*&|r4DSI5t zwPh=?TvzsIEZ3JkhvkN{7qQ$}wie4xWv^qox$JE$x0Jn)<<_!ISZ*u(49o3hUt$T# zud$3Kw__PkIxR5&$s#Nh$>vy=C(T~5O)`Ohr;l3lRun(T&Ub@FH|dnAv?vS+dvmc5dFvFwvP4a=J3Sy=W@4#aXm^4C}n zOb)|xP;wNOwaL*~)+H~)vOf76EJr6NVmT%`1KTkST0Sj!*W^j zEi6|g-@|fc@*^x)C(SCoCTWfcYm?@Pur6ti2_tNO;IS=Bcs&8ogRY1Z>C zNwbn~O`0RowxrpeZcm!y5wtdId$hG#+vBaxp0Gu0vl~pbHno(uHnp^AZE8uiHnp^C zZEC4(ZEES*+SJmiwW+0ZYg0>AYg0>?)~1%Ot&RU`^52uZ^&)S5$XgBh=}%SzsK$Y< z&Cz5~>sL!!KyB;IEn2{6D(AKS0{>2w8&22qe_~l({%f_;HclnmX=F8{ z+_Z64xoP8EvYJLmYaMoDmVMp#pTyyxwPEma2eIIf@)k@UfL4pPI)<& ztIK!Aa!q*#%eCcuV7acmBbFP=%{juxa&v^;OtoyG*tSw^+bFi}6kBvBI#Tas+S_8M z|A)OhkMnc7|Nnok$;^mlkVP_)N#;E=R0x9DYP-mk*w<7jbs~cxMTkhOCo+~0gj#Dm zVXW2KHPmv#*jkj*Qk0_^Tkw%uN{zPP*Xx|eb^EyG*6;84@9&S_&CT5NJll1yb6xN2 z{eEBbo*CV{!KtJ!$KCseEiI=}IN%rIPun<$_dx*&4dn*QQ#ZYClQ; zUY7p-Wor3NYH5b(*6WAp*8309t*!#W^?+~*WN>P<@X<=D}Qk6WmB)t)N5+$H7)fzKJ}WBdUdCkx22YM zrj~c7miMQYi&D!+Qp=FW?@8l7J4Dakmr~zXQ{T7JzvB=+z8|K4f0E}sR9B!Jsw>bj zR99f{^zZ%CzYiX&XO~TFI#c=7RDOIanUP9nr4pA)x>Ct`sbv08UBd-K^)=ORQpuO8-@KA z*7=vsIF2 zEcj-9bayxFE0Eio^*VEBv%V6zyLkf{b5ZL1NZMjZBlI7pGhAhu&T#c%=?ovHGi*ua zwN&1o%C|`+Wh&`NCA+7Ry;I4g^zVbyziq0$Kb0&>|9&Kuhcxnssr-{vvMkkpIZW5> zn^f{$Dluzn$=LLD+?u)?Tdt|AaqyZtTf3&twsTFL?X*;Kd@7ldN={29E|r{@{yjha z`?B=!tJ1%(O)Yy;$+M~C`Bd`Kn!4}brE)V|w^Bb`x6*&Omaj5gXEk`Z&Y?NgwxrsF zQ;AI_ovCC-Dw&l^PD>>&jnI`wIB&R~A@hgp8M0t_y5gnw*QWM9weKFT*Y?|n>$Aq4 z!}VF??%{eg?;oyr4;BsAE7&8$_1YMQ>y@x)xLzTj9j^B`UQeUFl}3wcv=39sC#hsv zD)}ONMmLqh1wi%)8(~;UtNNsjcZT3!WY%1?e<FA$EKF!Qp+t<%WX#LF)ByuG3pqp$7sSxJx05a z)MK>wNIgcA(r5>#(QF#6GmSPijW#Wfc6=IbMjCBa8qK9%U8&c3sn`6}YeDLDS?YCF z>UC}E1D=-@8-a`%~XVsqZ7HZ%?XyHuZgeq@E!!jnw1*>PUT0_xebEr}oy! z^iFW3zVGWDsqe@>9I02oPeyJc*NtT(w~()2j@(ARelv0h`TE_+o#d-&-A%sMx9YpI zRa(>WZPnEt+^VbH+^VbH(yFUnYt_|mZ`IXaw^i40OslTp*j8P`ajm+BTej*NZqur3 zShnhU-qEV(`Gi(I&v$Rt^L+1CJU-Y1TlGEf{jK_*cTuaZJ@4-JwE4eJq|I4(kZ&JCbrSrL#&gWV> zpKIxSuBG$2md@u|TH(}kOlmncwY)5qT$M_$O(j0{>aOWgxUHsZduL6b$L~*V7Ns_i zq&A_Z$7_|gbbQ-%>&@xkEp7U2Qft$hw72OT)@{?##Z3oHM32leU*WKGXw}hV#>`7PRU5T$ReNP35_&y&bKFZrPjv$8l|)OqM<#`>C`nXaD! z>uY**`r_oW>F*}%PZ%Yi0b0^D?1b^j@`Nemx#XMhNy?XCKY7qFZOs8A%D0bG`4Vxhq351Bs!6x==8W;lzaGDf*w=L7iBnSUoe@PH z$E=#IVTl$Udb~;0^$FzX#J;9qpEzZ;ypE#=X#EB!jZcn0sWvc=@5H~&K6iyBgS7pf zCl!Npc^gg<^*9u3|GM`7IGgt-AD-ersh%;S{_Hm*Dudbv>q^ z`Q$pfy)Vz4J6e6ht+<|g^vOqw!&eO_&%@hs^!i%={>kG-U6)-_9y05w-(Rmrg2jqa^f8F!j#uJQPujz zDUUr-)%e14fh&?B{l9(cunT>v$`l^rZYGu%0(lh?Z|m0 z>f?5asOQ^9Vqa6=>?z}OeUG?w(1aQ79oZFk((`8FDfK&ResxBBdO8vALi9 zo^K4k=p-*$&jVG*jc6t_547meW59^!u-vcqJwI-`@}yF-YAIJWJF@?tS{}#|%@oGP z5-mCmxJ#$5?-TC1jA)Kx`&gpKfX|72O{bj|$seV>@GNt5?!Thg*YxaJ zHFBG%uV+f~4rEJq7%-wahWUtkeQFc+d99>;2eKtkCOh&RvKO`gLUN#fF*#EIE?GX{ zmmdeBZm&jeBbVeI$d){r?8tM-p1hD8$cxF5{4QC3bS`gSOxq{7kxTLpWJ{h*cH}u^ zPhLn4`*-IbcL{9LE{k#B`j= zJCH4TGTD(mMwE|c=J|_y-qpw@POi$Q=XMqydQs1pK#pimV4hf_MTZ^(Ml>hVA02ws zA976BUop*_T%tvX9&Z=rd3|mmM>Hp~JuK0pLyrL?nwj($`{Itt#o!6dc?{bPd{cI=dd^`q>XijCj zSfa&%5#^Y})dhTDMMTZ^(Ml@&Sehxj}F6#aU zazt|`^F)gtZx{QTRya41BN|6PEYYGvj{zf^IrPU8EjsiVFk*RD?r+hd$ACTJ(m{94 zisasuU!7s*=Kl4f*4M}-T6E|!V8mKi9;ZZ$4m}2pXwGK-=&(!F`FL`7%CFA2U6l77 z^8)2Psa)oL4%^3F#J;A{^DNn6z=*YT>4z2_dJGs*K9-)(Yb?>CLyrL?%8xte{#c?# zhaLk)H0S63ZhqEdz=-C;TwgCP9rVzw8hNxheAOrBm1K(!J$8%welL(Cnv0k}mT1wT zM{_al(V<8AXn$IddNG}cj(&bU}&mzd5| za=_iY<`j3 z9VNNNC(3=93vN&Dalv!RV=jo)m)GU~9`!fV z>+@!b4r5h*1MM+l&F6B99=k<-+(okdz;_;B)Yk0?PW5k|9!1^GyJY#{n$*4~YI!O4HHBFg9eNC+wlg==9vuczw;$2mLOXP#)(3RA zGG7c>yDgWO=rLf#j@xxTSDEcZ9oPLb+a>D#8cz-wQGSpp?>Aa>=rLeK^DFvciLomG zb*{JQF<=za`rXAiSfWLTU1Hh~a=?i4qfmK2utbXvJqCl!HUN#)zkjFk7LJYlAJjCqUNzFpMEO-Z>$M}4=bubTqpk#h4m zrYnpL!P1N-*(TchqhXEt?W-;?Yj{zh0 zis}CJ6M4Lvn6^W>$^$u)<%cfwc_XHEBU=pkoY>d&tBWJq zJVie&(W1jHQTMM`)b%${=YI9#(n0&ru94eQK52F->O4A9erT2@JMz&||=ey`sKeH7_t9+(qnbI&^_0J8}4`SI_PewS5%z_?Q>zhoz|Hj_lF=fp%D; z#eflOFXi?nT6E|!V)=4z-y!OGX2}jc28?L_$h@#!)bq0>cclF6Y)f|NFxj!ZjU-jKftf-HFhY`(NY#$v))L(L-{c6}Q zE*a`SfXSE9#&y`nyUhj((jh$iOaP{R^EMp5Tu-pz);;d|M| zqP{+eWb=M5uYHg;OS2YhpXKZ@pjk#gEYYIJh^DSc^D5Dz6ZLa4ZH+~`pS=T4#yPkU z7vsBFtdRS);SM+%=iowIjPGL6Klk@5=lR)HvH@#N%o{B_^cc~sn%mdVqQh8~ua?_6 z^i^IxmwOCY8^Ao!qQi)0U~XqIU~Lfn(W1wI@{0`e`Ljm0XK0b$zt=ZsJFpw;hvo84 ztY4FM*oD1S`S4udjU6pHcVQ2-P#us&d zC3aA5$qqesQ(wP!?%!3pPR>Ep@gnw8-tmK6--GfiEmFH0me?VtbtOCW7_djwc9CpG zGai;`v0K#kX1(05UesJ8cak01W59^LVj5?CwudEJ>=d<~BYO)1m)DZ}o>r1Ay5y6md2+y*-1jtdp!VPQv|4i9>7|&CFS$0Ej2_Kl zx!h05n$Bzu%Oj~r`SnC;+^*?`ypEOoV>3B!Xim<#hC$SML^QJ)A4_y7zpga3uVIN6 z9eNBH(VUX|yHm3P8 z_ZYD@H@COwMI9%QBiVE@K3eqR8-ouzGmy>Mxm}44Yv)jo79DyF7}1=|cCkc@4n4{* z(aPrqT6E|!U_>*I?O=%=qQ1YgV!Ccn?#Y21(VWjXSfWLTU1IuvB{^V3a{=REi55FW z?eE9|Bg!w5&gTP`=rEwUFt_uf?q9^(MLByhoevl*FUjTRQnrI7T6E|!h-o`y`9;@x zo>-zqhvu@}u0)FtJqGL%mk#>!lt}JPx&Nu=a<+#hT6E|!U_^5T{jo%g4m}2pXs)C` zmT1voL~|AGu|$gwJqCvkmuurC0cZ%9#4-EYuDs*iykAE*XD6O z_FR{bS8uZasn+LuhaLk)Gz*y@mT1wT$AIQW`eBI1G@((V|0-=H}eq zp}8eziw->ojA(A9KYBE`=kgNG9b~lVFktPMxt+&|wL5dUMe{4hLyJyK$DiCSE*@i?Oa~I=ai5>$+GvBj?9CmS{1E>AH>P!JKPYiuycZ z(V@qH5o^E6?Mt-i&|_^8?a-n_^APjK5*-Fn=Usa^TUP!yXOHD0WUM`!a}agEqS)88 z{T%aHwkB$M`91Y>^fuLZ&QZ1Aeb2t8E9Q7|z=-B?_5(|_=+I-ph$he?i55LZG*8kV%PRNea)%xRMyx%R+m&e1W59^!>D=C;6VvsE9MC+&ys#AenzlGg zP3I*#^cXOr{Gp4~K43)i9OGk&79D!AuW9mGs%|%6MDx2`?$Bevi01cf4@ngQWegVTm3CMl>(c9!s?7&||>b%eh~P z9s}0?NIhC~7}31K_R*q4^D6aNVnFjJ>d~S@j{zgfA5O{ZgzaLw&qD4Zdve5H%4@IX z{vBfKNA?)8_IhqtqD6-u1De0+`Mb(oRnOmA%InWnHJ9JBuW7frmh8}DMDqsYV2Ku; zn9g66KX8z@izQlg=rLeK^A`QFM2j9Hn!nN>EqaV--liS4i~9beBzL4N?=Rk=9a?ng zMg2Zn5cTJqR9)9dx%?XD{BuvDme-5Aof^44<^HESFt?qSDzBe@&}9Z_*kMvhaP)H?ce)pw(EbgLDYFh?4{g% z#`su@x*r{)j$_H4DerTp6Lp+`5zR8j!4fSxj3~e6KkpZoXwjj^fDz5-^v4n{dJI+m zf_Y;^^Cjb8i55KujA*{1AC~CQW4EaH*?KTiZvH`kEYYDy{Uc@R{1S(+dTCdQmU4$4 z14fiTY?Y5YntvAg=b=O$*P;{kKAOi!d9S#1(3CUHw>+Lj?N^dJM6I`?{@kmo^*-f` zPU@yUQf~TkeGN;r=+KMlx=apYU(;{9B3YH+Q_y9;Q-_{i6Lq^0&A)Q47xg@@kxR7b z&||=e@(01vxHT-%qC<}XBbxu@{w3P)sXx~nB&+(@KGXh+DHl0+ihBRgiMoGXWKZrU z2XYU&7whYC|8^`z9mk?Wj{zg=l;|I@y^Kxx8M~&nvbk=emyMbBur`wIV8Do` zHP_d$M2ikR1~fJLVToSsYr5*ZK#pY7Mtdy3r#w%cXV#(~OSI_FW4EZkXC;s$no*2{ zC0caoF<``AF@4^)J&z-QelO)3*`h;_5qm}H@66iF154}_wce3E28?1~)8EcB>tvmn z&I1hCBc|>AfbEFsb*QN2mU2gVAV;!UmwwnTYQK_fF<``Ubna)-p+~bG<6?;x9eNBH zv9>)SqvDdHyh>p8d`MNCF_8Utv?LXO( zJvpKo$9&LXME&EWy8RlKXwhN7h-P#8VTl$UdJGuRY?1qyV%iU~BS$n_vK>*|IrNkV za&4aj$No#N6#7teKMk3E!| z?dXplBbx20M~faKnv!-{qD6-u14ir>_582xz`BXLUY%lkTu|;Q4`N@_&*z2lxm`rl z!938RNByJL={!V-9s~A>O9x#!HojA(YDA9jd3Z%gh>`L?-^+?BHYo+fg@h`nO^`KDd-xHW7SwLI*e%OjS1l?6k7~91TQOE5}%6ODVG*fc>8kT6$W58M`J z^N4&M=$x9@xpoxW!46T^-;)DIG)FT&mgq5HL~~4TZ_!~yGmY`EUDS0f$sH*-pJT}m zJqC=}{~8C>bi8K+wartrRL@oCiFrqo0`C*A3LsdULw=2=2LyrL? zniF!r`WZUU^UmuUix&8ch$OSI_FV?=Wr{jfxf4m}2pXild;mT1wT z$AA%QXYe{p)bq}wqugVl+?>hwutbXvJqC=TzMihR+`mMJ9?cxa#}X|%^k~kaJ(g(E zp~rv`&0P9pi54At4A>*;`?*LqU5tYzTI>|l^B37;z=-DTJWjos?z@vqwCK=dz$ofE zn{${CmSTF}Lk<`zH|KJE(4ohGQB2qK^K$zVEjm%_14hctJjTZoJqCHEr}w(m%J;yg$8 zqRuN|#9mSRnTv9Ly|{GH#CewN&||UQcc&i!kmj^Cd0#CavzqC+ogzaCMy8_B&X z%X%zezpz8pcAZJtAId!jQO7fv&<{&d%N^Ncz({@VQsyn{ewSp6PSkM%IimS_?pH5r zznZA+Eajc4{J43J>@kRGzLzmyEYXTu@5uopn#*&2DW>xb9eV0}#I(MY_ogiCdj;FY zQq=7^vd4gt`ueN#c=kt$^}k@9MBQGA76V2!*W`BfqV}(m+f$a~ zM79{vT+6($M2il)L>lhD9>=3oTC3mJQ=O@`?z=-C0#={aVI`kMY zV(o@}{7Nw$H?k*3vhi#OOHt1kPwp0V{yj-Ko(pq(ivfE?ZP%NW^Zdr#u0z!G-jM@F zG&iw*EU{Be{m20$n(o}MM2i7?M7{43$+eqlkDa2{dvd7iZ^`W}I`kOO+{(PMM2ikR z1~j+vxWZD@bUK{%9f&T&tgRLYxW0A zwCJ!))bRqjmu&80UTD#w$B4DNbNhBtUw3pQ&zNT^cjz%-L~{@Ofes^@d)Xf>(P2Py zAM-|w4m}2pXzpixbm-AMKs}ad(PKpOU~X^Gp~rx=-!Nb76!mfE$PvvVwvQ!R>=dhqvC0caoFoj8%S;{dy`J&^(=U zi54AtjA)+8?N#}?+4(hci4HvmjA)+C{cBjFMTZ^(Ml{dSA4|08&|^gNyWG!Vz=-De zjEf~&3>eWoPkXfJ&||=e<^}p;iRMMhu|$gwJ%+0M54oSmh~_26!xAkz^cXOTeNDfZ zUwc_y=|U&!^N7cQ5zQaj4wh)qp~rwx)W@NDh5lHgMTY?+npf#3>Nq7j$~^{*X#PY$ zEYYGvj{zf^KhqyewCJ!))ce_<95AAJjd8FojA&k`KbC0Gp~rwx>}$IGqS{|_ z|5EI0DlT?pj{zf^H`pFpbm%c)MDr&7utbXvJqC5nCLi2C}* zk{x;s7}31VI9Q@Zhh3uHC+@~Tc|`LLO9wr1fr<1(iw->ojA-7aAC~CQ zW59^!Z}h_wEjsiVFrrzK``3%<`;z1mEqV+Xu~*c7rk8nOi54At3>eY8M}I8QqC<}X zBbxW=k0n}k=rLeK^8x*_M2il)MSUL>$UP}H&yVEZl;yt6hm40Mc8J>Fk~>pwp5K*} z*MF3ok8=MKEjsiVFrrzS`}K&ro!(^g{Q8eI%lmOLz288O5zQye8%wn4&||=e=2QA( zi4HvmQJ)VY+58Xv(4ogr)qj@TmFO{Gtm>ELb{0KGG=FD%*e>e&l;n<-Eh`rRC&+~TbMLixha(l|n^Gk9^%5q#apl$T%U_6{SK-%ySoBbtA*9W2pez=-Bs+GB|hJqCLpnm5^Fz=-nK>E!jtMhj|a zMct0afDvm&t}oG|LyrL?n!4PtOVs`APEMTHlWd;fOS$Qn+tsi{iw->ojA-iVk0n}k z=rLeK(?EYL(TcjBj_fgDMAMl2TMYekj%Ze7d<-j7k7gC>u|rIc%cR`jqr5BS=J}r7 zowA%?P4veOG4)SMf6BX3mj2}Kl;wGf9MP=GcvzyvfU&AyEw^{*F``+W@vuaT9s@>E z*WC=r*04k?>iO!>W59@JAlt=uQP-s;ccd)O3*^p}<#~bJm9jkE$pIspL5zQ%^Iu+mT1w7x-Nkn(F|dGSfc%&!&e=4i6eUq7|{%6 z94yhILyrL?nr8ZAi54ApiF%woxjSXK&XObcrgAy|hvjkW#q_*PF43Yxj{zf^HJKl_ zi|KqJccd)m3)!K^fDz4b#={aVI`r5r>ih$_CuMm)A@`;%``f~}SfWLT9s@=+BlJ9* zd`S(<=bn#F6HYk=}K9y8|3bk<+_pbojA+I(Z!FPbz=&pJ+GB|p9eNBH z(QLvz(V|0-0VA4C*)Eo7(V@qH5zRRIqeX`v14gWE#(dGD!!B{@pbh2+a>wR5TQQwC z7}0Ez%iBfmXUPsDnk{K3rgmh95zSV)okfQc%@3(ZhY`)z)T6_QW}93e(QHe5bQsZW zM?E@>Xtt*w9Y(B`x!z%yxO7m*{O;t$`GIn?LvB~1$B1S}>d~RcP}PrTKIk!EMAMPm z)v!d14m}2pXnvIY2Q)h|9y;_`?##R}V8n6)^%yXs*@f}Z?3QzfsP}0t*r zfDz4pY#&Rs=rEw!pY~Xy#m*_Z4zJGW=u|JbsQ&P5`-%Cub)Ka8u32589>?xkcxu1& zx&Hb&TL1CI9oU^*VL=bM^Q=5xS8{~~?Q=D+u%IJ3U_oc{f)$L|>U8c@k(4D+&K@Yh%dBcLvtF->1S@plj?K`efKbX~-{MUjWaxc04x?JCp z{MUjmayPm2uDqW&H7#m-scD~8_gJm}>T9n4qt#DX{qEIYUj4n*m#tn5Xc{nRz}Nvl z8Zddlc>^98aQMJ^1Fsplc;GVwUm5u3z)uGLYhc}=p@Y^RwDF*A2kkfLm_a8Ga)T}! zbkm@R27NK;yFqn>R~bBT@P>o89z1^VE`#?NJZbQugQpEXb?{?@2dvRJ#0|M($VWp) z4c&6+q@kA#y?f|uL*vl@8Cq-Js`-HCnaw|M?l)}vVFwJGJ#79kKkSxa_Y7M$Y~Y$d zTXVshcdohF@ZEQYh&%Y+JD-Ht+nx5 z`>l1uTBnS9c~oQjlkKOiJ!_qTquWMrJo<{!8?U#;dNbEQb^S}%e{lW3uD|D)L&n@S z=FKr*jtLvs4X@bn{tZ9huw|odH~Q^HFKqPAMhnJ1H}>_hePhigcWg3g)9IU@yy-)m zzO?BI<1QQ*#>H{}Gj65LhHiHHW|KERe)EeqzjpH*H-BLBH#TqDV$&^-*y7|ZPTS(F zEpFW6nJs>{tnkfvfGs1&e-jeJ+9c}qdgwo^VL1)?{(PTQ}-UR&qn*~ zw2$9s**-7s`^A29CcZuKmp^{`$M61l{R4J7V3kRGO`0@m+JUbh`00W1pox>8o_xk( zpC8sVW&bIsPkD99vd$w8f9CMd4`1_$-ySjI$YSb>Q+Jzs)YMC+{$lDsrtUTE%Aeiz zv!Tb1J9g`1e|+qT$Id;r@wguyH~qMaj(hgF159BinL2Zz>1Pfy_44P{8_YYV(Hv5& zVE$P2HzVp+GHcbXY>fH3!I;oLdo1}BycF*c&%fE2Yo*=B>lfxu@u8~&b6Wd8Gd+*?zlhcWtwxS;wqueqh!x>zd(aw3LpK(ha0!Ln+xvN;Z~~P2}sQ zW^*&nY-_eO6{erf(De-dt~)coDtZN4)1n3alq<&P=cXVxh0H*Lj(@(b>NBfrFZk?ANN zHWP~9njaU7%>l&|vZ7BKTRd&16wjC=i{F`Jis$8*6TfUuFaBuGDPA$>7q6NNia*IO zRQIN6n>eeVuuNzWy)eSA?)ioCv*9|K!sav!7d0l&PdEMH@HFfJ0*Vp}^SXj4i zackY^;*q-bi^uB56wlUeP&{8Zw)jKc#>IPen-t6HHZ8ua+pPGuZmZ(Ex*ry%-ws9p zemfQe`|Vr|?l++r*>BgP)^Cqut$uqJ>-XEc7}IaRVr;*O#UA}86?^vkNpW(&gNxby z4k=FUcW7}|zbQpmzaxsX`%Nw8_dBY%sNd1W<^84=*Yx{YaecpIi|&5M6_55izIeRf z^y1ZiClnv{JF%#%pHU31KdD%wer7SM{s_&H{aM8x^>d4T>br^q>(4GG z*PmM)UVnaZbo~XzvGo@fGwUxdF0H?$xT5~j;@bM37dO;jRxGT)ytujkisJVAD~n&& zUsc>)e|52_{uf10{k6qQ_16_|)L&n`UGIwz>K7J&ufMVQw*ID~q2cCY)rMP&0S&hn z0~>BD1~uGXtle-|u|dP##dZz%6deus7CSZES4?QQzu2wefntw_2aA0g78M6HJX9Rm z@Nn^yhTj&4G(1w+hDVFT8XhY;8y+u?YzW0s4U3EE4NnxOG(1_H+3-{`r{S66hK6U0 zn;U*#+|lqtac{$m#r+L06%RH1v3RuM)#8bU*NUea{!+Zt@J6w$;mzXnhPR3@8~$2+ z)$n%l&xUu3qA?Z&8s9AjHZCcKHue_78s9J0YW%QRr}3j=qsFDhW{n>gKWzMav3=v` z#e~K$id`E2QA}+7XK_H|x5dGYeZ`@T-xZS^|5KdXXzJ!S7IhajHq~9;xN6;%jjPpN z+c==^`o@8EcQg*F`*q{sx(6DE*1g!+T(_ig&AQ&k5p_!&*Q)!fvAwR}3hUIZu!1qC zj+6gaHRku?S>j)C{$|EJCbWqU*KY6@dEBc1 zn&b^}DE&Glue_Qu&uy67j~CaKJe~2rru{N(+%mVX{V;F8n)kYrZ-XQ+@AmET@pyg5eEg^G zl8?(tqMlbH_B7^CYZ!CY9>zrRS!w^VI7-U@A#Nn<@!uMEMTVCy{Z5t4QO zV?^DbZA5MV&cwXkog|Nyysx;qc&zv%@eEPtSJj(?^ZuTX`Z&_@ww;pO?SVfLwfty2 z6)&QGAwEd?Gx#>;Uy}QG=5a=fx<4D@kMIyY0nf&3@h*H?)cL%Nf2X|v;l`XfTpp*Q z?&tcrIqoRxb|>M{cotqJc1iymL>>QUN91u%6*b>TuGa1Asd>EOsN8NvQO6&KZK7U3 zUKHGBOr}!Q9EB-9k55aca zR6Jbz|LAyQ9u{{K9~UQyx<6CJrzFoNpC{^et|Z?f{$A=Ir~DbpU&BvDo%eU-Ri@{0 zhhn?N@hRl8owcUKY5^u!UXBqQz8SicJ7vcw^7pwjMOtP+HAFeh#&-*6vS!s8>sK@1g z9JOmcFAkA)((yJrJ#W7hb)5Z0UB4r-Iv-D={v2FK)brzV>=xIo$#$?>zsDr&{(URk zYm@rtCF^$njPHp$kAH~zxLe_j+>pFzIon)OywZ0#2pC6~A z&dQDvwf&~3*Ky6;lP6%+|A%Mi@wOMW-Ojid9*9%$I6M^>hi@F%wT$-{@!w)EF2ia)4!p#e zkJ^nn2CM7;>5}!lJRh$Tb$?FSCU1Wh4!tzz>qLD%z8&wy<9?p6JD*Fgt!>Pd?Q;9s zQm*^4@@2+Ml=3yigT+yzUjH@~50gClN_mbJH^cGb`;sS$Iv? z{53v{OTxdsq zo^(U5pL&?=$A6{{Gjgq`txw{Z<4F)Pjx+- zesf-r>Uy;Nb!YkO&GOf)<*z^0xL@CrpTCP+Wo_3pW;O8`aUD_Ds~Ts>ZTWFsU6t74kTph=s zJeB8lC?1Z-;Ve88&%q1vdb}T>#INqk<-bZ?M7NwUs=F3uCL-A49J&Idgn zmrA}-^0lJQ=VnpM?-p;9@`puz96T-FDfvZF=kY4Og%Ll*zvDmgll$Z~xAbrLbMC(~ zR@cGm@xIQI{5&|l*O(>p*qbTp{O5=|zYFjx%CEzPsOOiq|9*dco%7%NYq|DU_kKS+ z33WUzKZLC3uVx)zJ&f|!5Ayjv3PZC+>%n@Ta2g?-tkP@uyN=?N{Xn zOJ(0mc^@R|yyoti`<;#YI#bs}-xsPuuBU1b>hrR0M_;F?dVSY=-CxbRzp6f7Reijw zKl(VkEAEB+qt5T59sc(?T=_}9p5K7Ci+UdEan$z{x*zKD?_aOoJ@1#!TlY`rtycT5 z=SQ17ZvWfy)p9+)>ZhOPe(v3@X5CNCs$OSw-0P)W_s@Ts&-?jb@y1$~YYqkB=vcCFw`ujiRu_x`n6|WMH5VikmU*~qqk2C+f z-0wQ^nIFmXrL=oN9LRQVk#b$nyKs^Cs?;wQb$@M|k|G#toDOTg(^PfE4!}z4A+kX{xUGzRewcb(6b==QI zokz9)%O95;jr>&v8Ru7`wjW#+Y5zuwy8dg6$L=Jr#p;W+4quAe?%&wIA?E=&1grNU zYf0AiTOX_UJzGiE?e0zcL#dyJC*vGZpYP|Be}T8*B2mYAN?dJyv0(l^RLETZH3&vI^V1JpDj|ptF#|49wPp~y}zpNt5nZZ z)&0ln`Rl+H^L};WNjOKmV8Z{t4*YQCBE5e2Qq;#`<0{#qqOMETuT8R^AKR~9m{oR> zd*q_lA0q1UJQ^KdCJvN#)qJ`oH%op*)bpvj|FhbF+`oF?P~Dd}=&t;{da2aw`c?N) zcN$ov=i7Znoo}b8+doG9LdHK?{HLg|JM_AX>({|e#NW$&wg2YeGh6m`3O ziy@P#n&VsENc5stk&l*f6LdunLo(K@l>qt6D@!L=uD|!BF{M& z;zCi!t?nCD_mOUv@{golb$?0UkLY=F+XLB$rCyKQ(^$RVsm`nM@;s`q+g_4-eP8&t zsQo{}uS9)5Tyfp(2&^8j8%q96w!f9A^V?a}{*&-%@hhp<*InvylKaF{M4i|9)L$-Y z|Jy~q@9+ru4`SUO@;pJV?nlfYo%?^dUhZe)d;Qw~_%XTsOuQJc!R6l%>->iADfcNi z$mdBj4*PAs?ti@@+mYu5eVmz%^5bn49D8hpM2|LoYD|Ab5N zbL_WqkzPMl=gTURbse9=7x8s`7r(^n`KD`=ybhO%7s))X5ib*$iaOr6*tluVLqwft z)xX;Q9$Vyb4#nfdmG+YB;GgpAlNpk=-`Uh(ioe8r@ljD9f7NkDzH zU~uq&p)~!`o5{(KL2~YzH7UDydDx) zl=8*om+(zoiu(OtJ>LH!udsdYKTy>7$<=*#eV$!S#v3N(x^C6=qWb>H82W9G`_t}U zWp3ZNL-zk`>$>A1`E^~juFcGI6jtk8t$+18XWmZvysqBITuH9pZ&mNds`qL7dPm>) z+$QbR2Wh|O_#&NWizVy%w*2=iekre`wEQKh*T=z|^m|{_K-iMEhy1i%dP0E*%FWDv6kKZt#KUYZB$N8?SMFCmuju`L-R|l?&gE-h8?GbjI&F;G;_l*^KbGeo z@oe!pQO7wAFA{aW-Q;^k9p_1`&Vy?IUXk((WSnZA|F``(i2JSzKf(>eOA+x1xety4}@++iWp#DYtD}E?mEA?NCY2Bx0*A(^mY>d_S zqc%AzZ-3T4*^*p6FW)LzpSKu?{BKr`-cD9{fnyn5xL)>^QqoHRo|yw z`{+FG7+k)6b$`Z5e|_9m^=EvR$J^(aynjE%X?P0G!|M6*2Xenf*SmTjc;>Xc-{)iX zc)CKe&i6*Fwp;DTg~#T4FY5VUT_^65+$QgF7ULgj_ckuYuS8u>b6g&0`FXt~It#Tj_6sQankPi;F; zzCScO_n(S)iCVuz+)U~pn8Wik>hr2T@4hKn+kJ-p&&qiOZX)Wsbl@cX8P2KPGq<~x zyb$lh$MIDhH#cuzkEhNdIM`O|b-Q{#=<8fPAN2KfbskjreXILIdYrX?_5J+n zajMVLTCUI2>W$~*ahHGozk~AXdH*+(bzPo7eZC%fn0$Uia=WOn1J)C(>!n^lb$(w; zy*_@c>*aqW?IuEN{-Iw0v+}wW~)X!_`=W{CWpnUmttJX;$m)~En zs=Qja>hYwH$J=E-`uNrPRIewh*AdI-v(L-xwg6X}m-A3uiRXQN-J$ESo0RMN>FW+1 zUtf2q)$v`ve^tKu`MKZnuQT-Z$hax_^~ev!DD6t|V^PnOZ?WNmoU8f#KaF$Le;H>l z`d8!pTJojRt{SJB$MWr}>umLSzU-2GUGQSMuAG&hkM5!TF?<34O1sbSTT$0=L(>{uhgSo!a?eW44oggJeBVPvg3Ir(~U{zMobflC0Z# z7OV5Mx^BKEUM1=}--vfn{#)|% zjiKyRCXq4xEJ&&sM zr#hdi^RxQ?Pjx@*LFuRGSJkfi9M}@Z?Gg2OzJj`)C*(MPaZ4_5yfyb9i9fxqFcXf< z-_P6=CyKMA{HJ2|`R-rep6^dRChC5?AnJDB5cPBAN6YsW^!`=#IQc@#PnZ66cgTG; zv3fjyBU$^`{W7~U>gTWSl6KYSL#uJdZ}89rgRUt4aM;)ZdDah(n~jnpbsyrh47DpNy~jQ;k>6d;Z&%_482M%lBin zd>=dp&%}?Voz_?Vzm}}uKdyfvtM`r1J4SxqNwThA^?gY%S;xOa)Yp;sVf8xVp%?SG zJy?D2<|WBG{@bFS2cJ^^hgXYqU*l~tmE*r~z@PH@p|8vJJgG_6d5^=L@BmTAKT_0j zPQ-Ix&e@T#7Q3d&{KX5zMdGF6Gt~bXKf~g32~b*VdL)7J>cJD5LejmT`$n#!1JG(o(JM*6R{M(wpgZN#} zarg224Su_i8)9?25TE0BE5BBI??tv{dS5Yrx0$~O_?78AZEpYD{Pq4$$G?SNx&Pzl z_5vovGPnf@7G=Ht}#DAaC?>+ku`q#^^d@udY?Yqq1w;#~$jr-Y_^~QI9Z-_5+;K!N! zXPUn-va-)-jaSTo)X^S99qkMk>^*OO+rHE-XV$8XK+ zANi^-7x$gj*PCGeK4kvh^Jg7?Kfm&Plhtpw*lpNEf%rMJu};`7vRNhTAmo3cP24J+ zgd8-o2zd+I#BHJ%AxBu>Tp-?oHZg+r$JyeTkweIDp-tQ+atZlHRvsa%piPVv`Gnl) zaTC%P+E{_?A*3x(Ku9~ZF-fwJkdA^uu!>ppViCL_mwuuH-QQKG}Jpx9#GedNecAJPnL&U`>^lWH|BrC0LA^{CC zM~p#tDb5w8=y}|qjTO}u@G(+t6AMKZF<)frm`yBKe2F`t--=Y*#J3gKkZKz%t83v_ z)@<9v55)|)jn&&W@gr8D+r)P6z$Si7+HGP7X*a}ANwrPvgogMTYrAb?mm=$_(Ld)t zY+?^9y|J~T9sLW%Uvf`2v5&j4v4%SV_j3m}@hjGY+gQ=vP5if59c~i`A?*%Uh}*;= z#lx%;w~4p8C!07T7QuJKV)z^JG%F=#z@4 z#8UJhSZ8h%r&(#v7Z=4c;+*9<*~Fg|N8%!r2aFZ4(pU*!Fjm2@7^~qj<7N1DrfJ*6 zN@ERNZLEdgGS(AmE@bzKQOkSw?Nk5vqqh_ z0I4&LZRl-^?;G3Er;HthpJwekDOdcXv5SyDv5MU$&M2NY_Mn}%y>O;&AAHERA3kh5 z06$?n2tR2%1nX^w;iI-AFl>7lHrS5BM%ytMu^or)wi7UBI|<{qQ!rsW4U@JraE|RP zoNN04&a<5(C6C$8qq`NKv|T_ivR#DVuw8Ira$#GmcnoZxgxD z5N>-lIv-La*r%X9iUC&P+eAOs;oHQ`_8IIQW}k^33YlBOx_oRSH2A>MBj~%K!N-v5 z(W9Ut?z4x{qoKjah8obNkbVz)1YHIVG0xtMu7I?2SkF)1hK87EZ$(dl^#8H8-zFwO zgOAz7(ACi3!!xtdQ=q{|V_4@eY89v3y9jxhE@bi>G(_0mjeZo;s{Tz*3LoBtwg8m{j#Pjww=r2J-ykK98{xUSgGW$C8 zS0LVzeLecCkQo*B4d@r4Ay(QqqQ4HAVPW5d{suI}YWrsNH=!Y3wQoVcqWC@gRzki{ z1H&fPL;NiJcJvz%AK$(M{ifm%?K=tiv3(aI+aWDt`)>3Oh;6s;LGOgvcKcrRE{Hd4 z--q4}4e<;6e)Jw_h+oD_w7eg^$F#lPFnqW@w40RGc{4*tu2o;d%uUqD}m25$XD^cDL>w9Rn|Z9qdf93P_X z&=6UU%V;MwM7HA!x))?tki)RqgiA5kVYe9~-{B-A4;rG-(FQD40iNI4}$a_I{Kl9KrD}=KYA#n7uzuaJscWhq+=lZE@+64 zJ8nbY1F=GmLFiEsE94l09t{m~zhfwR48$TihNDX%7RfOJT?Vm8j*;jJh(&VTgRX>( z+Brs{t030NF&aGqVx1gg(32n*$x(`)0axl<)}w@LTr~KjE+O>m7@VY2O46&BZ7VmGK<5}jD8Z*Q{afA zpMvxvIa<-5hRpDAw4*-*4e_)ihW;#M=9XhN`g4k(cO(dT!O=y?m!ToP>X?gO1{s@o zbfaH_w9_2((JP@LzUg=Zy$Uja+pz%sGBm_@91GEFAm0{pEJCk^hWMUiF?t=u7CD|q zuZOf<9M7O%gLp)aXVI@iY?NaO`VEMU;(uL;je__>j-}|W5MPM@r5~OE#A-QSKyQaw zEyptS4v5uqEJyEzSS|h+byzKk)pD#r?}k_{$4c}bh}CkeLhprGEyrr~K4^$vIbKHZ zhlcn+$1CUq5Wm#127M6Xmpay>4?#m5cdSGIR&k7TJ^Fs<1~}fi5mq@j!3Uh1;RNRv z;!k#NMNfj%tDy=muzrCg%Zk1TvE0Jcw?FhWM285IU-ua2`e{okw7o^Ii6KJCCC0 zL2{$>82T~A$DPN~PdHD&C!HtR`;_w(dI6-~be={pgw&hPGw4N-deeCpy%A^K;~5PO`L(Laa0 zP3IN#KFHg28g||$2#tGLf)pc7y1x1#M@36`mo|V&Rq0yXFfdX^uYI> zh47Tq2LoAt*gGo-Z^{b6Te5n?0a-V|k7f1YY@@UKqVI)<7?afxeIGPLX;y#q{g5_k z)&TTa#qz9ygpA9&jgSh6JuJPSD_(RWQEaRgNFE4Rs(u9q_vwBL4O-E zf}GWieihOio)txZPx1AvR`jN@>SevZb=wrDiQgpM-|^ zL)O#iQxMN5>lyTEi06~_Ecy(@^T}F*KC5^x>p4RHmbH|S^N^JhSzAt+BAFUW@L8 z~^BpL+nHLF7yT{ziPJ|y%8GXjqE+>O;CR2ZZCQ>q{W@R z54{D-uiouPZ-u<~>;vd+koTT_5WO8z%VZxy?|{@Y*@w|PA+=2Q5%exdEtCB&dN-t& z$v%qS1F2=QkD>QM>{9k|^gf7P%07YK53x(xC(#EWb}9Q5`XD41WuHbLg5;v?Gw8$6 z5btE4MITXoH~Rzhd)em*Kbw6X{U^vugzO9GKSM*D%f5*Ii{f9iFA-vMeMpD_@n&6@ z(N0Lq)O7`&4{4dY3$(Ab zH#Ed3S0D7pA@?%V);i`box+>vPR~2zybWK1nhxlx+N$8iLA-?Xa zMz2s@>6(K6hN~8?a!rHZbj^TkT{DTf&h;?*yO46^dIY^5;+47T(XT_wh%1cV0x2V| z2J}`)8F59>+aP7c)r{T_DI=~ZdIzM8xLVOWA!WqXj@|_+Bd!>FH>8ZXW~28&%7`n0 z-U}%st}gUGNEva>Mem1{5mz_*0Hln#=A#cP9&$ZF$YIw4LVm4y)U^=(8`mPjKXffd z{}USGitB0gzag!;oM+H>Xoy}p&!V#w-8oCpMLEwwf6h{PW6txiZ_W$wrkrK4U(Rxl zx>V8cSA!wp4%Ti zAL2FT4nQx0)SI~j(Tf!i=H7;WD|Zk)lsg0-&K(Nh&K(Yqa_@nE$Q=bg z$Q=#;k~;>T%Pr-c|Hv&vUxdsH&aFUSf|QHgO7y>>A&k5#G|M@mEpGy}=S?C!FRvP% z3#lXWrl9i`Z_KMj-;_5E4$YeZhvm(L!}A^{=G}RZphrUb3i9gF_b8U;g$XIkYanDS z#3tuO(B%-DoY#yV2eHX{QS^9-9nNb-Plkq=lGl!|fq1rgF?21Y)t@&TJq^<8&r6_Z zKwABIUFeyRR)5}H^uvl>dEMwadGiUMpZ5g%F^DIVw*dV(#LLZFh<*|pVqxAQ^iz=5 zciv+3ry->*?`iaBAg%AbXV9O8c)xkiqCW@me)E=~KM(PK^PWS00W!xpZz=jY$oOjB z^XR1zJD>LgdO5_-=Pg6Oq_`q)Ir{5)FTs_0E7<$3yp`zHiZAD_LVr7NHGC!SW%jPg zdjxm z#HY&Jg5C_NFY>mcw?OKMylv=hkUAo7J9;~$j>y}A-T|p2@^+$kLh6XTUFcnqIwEg3 zdN-tw$lHV70~z(m+l&4KWHdEzANr3Fi;=e<{U?aU$UA`kGsI%#9Yp^HVlna#q5lf$ z56nA^{u?yJ#k?cvze83C=e>*m2c*`>JBt1%G{oh+W9WY={yXnD`bypjDDqE2BmWd} z9Qmiwc8E8Xe+KP@^bO{pMfZaA4d#DU>A-O1j40@O1TluBvL-}R!VtxhuM}8%7{+VBe zzNGkJ{si>D@+ZN|`PJ;bl0OCgZ-^yy*P?}@%{>jB<(>iE?wQczewa9g?nlrC&=5X% zJ=&`na);3+?gn_XI|BQ=o8drr6b^E?!olu#IK&-;cerQ6q3#46=I-Kbce&@HM<|YT zccVwS=fiv5Pr%Xc1@J!iLO8~~2;T2r3`^Zl!%Fuv@B#O;aDsaYXRCHUhn}oh<6cV0 zbocXwOjDfUegXZUdl{VRUe4ZG?w8PENS~*B1-cQ^=jmRFZi4iAx>uoFAbp`>>3wok3sqk+-K3p6+d);fc}^J9N_`ad9+`#x90--CeKCK&vOah?D-J(_gsdzc&@+! z9-|lSGLIdO^f=+&o?gs1nd)(&rzqBXa?y33d^pYHfzv&OaE8YRAN2U)OivI#uClePPto4}QwipYykQ2B2FZ-vsdtM7Jx(Jh!1cJ%iwE&kz{*4222L zaG3OrfO9+};atx>aGqxre9|)-F7S+jPkBn=LQfg|w5Njef5uaZUIcm9o+|WG#pgW} z&|mgUg5UI1!_}TC@LQf*Vt(5*4gIp>E1ntXS3NV~8qdS=UMn?&l327=Q;Qn z&r*2K^E~{k=LLA)vkd;tvm9RVyafO5SphG4R>FUHR>4c2)m+_I@G{y94dE|%1ziN` z2PjyBz8TW?FIbEI7^LlAunv7Ir0rj@9(_Bc?O(6~Js8sVFW88_1Jd>{*n}PiY5Ny! zM&Ah;fhyR7z6;V1P_Pw!H>4k+U>o}5keabzJNjNo%~-GleIKM|EZB*@A5t?G>_U%) z)QknY(d7{TvtSQ;9Hhs!U@y7~(&JjN4?O|W<65vEJqhw{mVyK5Pbhw};2=6ya0qr5 z9EP(Cj=*@qyD(936ebIf!LEYia8AJqIJe*=oL6uPb{Cw6j}@GO^9#%a#9`qZK@tT4{^qbHS+X{T>A3{Uy zDDb0y3|ZS>5JdkJ(qmr`LjMfXV_(o4{d2{A1vjAg7xaODFX#&|7W9Kx3i=b%RyY7{ zDCQLoL>Cm^1`7)ZL2uy@=qnrwiwcKBf8hv@3Kot;2cRKBh4-L~6-x?75%Q73(S-C? zyrFOm`lE%Vuuowbd;1nvpl^iuU4@nCeu^I}tU?bgoB(etoCI$#tcHUMr@+C5wZyL~ zoQ56`X)PAcKtBNKQ!1Q^o(QRt3m-;LhO}i0A3@hZ`j-mp(NiJ)ONC){9i)G$umL?C z(uyyPpqD{Ie6z3_y$WKf3Zv+kA+rJsThXsTdQc17(Q6>}RACIg7UJy}&PK0?SgOJV zdIQAUFYH2Zgn0XfbJ3e1-hN>>dNZUxDx8mgPw`mc6NH>7TtLY0AT9mEh3NMoetY2} z^dBI8d*NdAA0fVa;nV0pL;Ul?XV8Cz_~C`mqW=N$!Msb*0@Bj=K8LnJTKe9lXa}VC z#``=v3({lheF5!(^jLbAp$j2Bmfq!PAEajVzJ&HezCPq#feu2(+`TK&AxPfvu0r>Q zhUnv6js7S!L_hD#=$jxtoZeT^w?HhLcMbYhh-LGxMc)pwY~FR~!4S*lU5~y4V%fYK z(8C~YWba1wNXQtvcN2OPq<_h~89fFXVyt%yx)d^Q?%j$mgNze-x1lQ(E4|y%%4o=HINpxcQ3jY;u(7Pp{GGw(BA#%8ITsV_W*h( zqy_Cgh<+F{ZtgvVegx9P={=0Dhxm}*Bj_-shtvBmx&h)hdXJ)8Aikpa7`hGOA9|0Y zJ0Wv;yeH5}$k>zjBzhjCRqj27ejL&g_nt;S1!;YI&!9g8v31_F=w~3Fp7#Uvvyd;q zc+a7iK)gQhdGvD-Pr!Qty%h3w81F^&^N^M7-b?5gAT1s5hv?-HKhS#_y#iADyjRex zAf?Z1xF~&)66dv}*FZ+Yy-xHxNGbF7LT`YSEUyc_3DS1<=AySi+Rom5^fpMn@AaT} zKw3B6Li8?38`+&2R~7*fW4GtqZI%DC@g^e~9`;(G*rC&YX4 z)uZo%crU&%`fiB#;%h*E9OAwBBItV|-ixmpeILYo@kP=1L%bJXD|#%%d-1iS%OT#2 zFNPim@mPGb(GwsZi!Xtm1Q{dtb)l;vW#2a!T?;AuzHan1NO||oN6&nLWp1F zdj-7+(h~HoK|c+#6~49TXCSu1w+{U*#8&v$qnAKzg>M7;If$+BZA33seBQSS{bk=~ z_=0Z>{EBZY{HkvoT<+TrU-a#OFZp)DulaVt6~5hYrEd@XhHo!i<=Y2W`}V_c`3}IB zeFx#UeTU#HzQgcU-x0XR_b&X7?z1629R(#ojl4r_q}s z7RGl5y#-=nd}q7zUY5J{Li9(Xai!Siu$7+5F1rA0G$o7QAGpM zIgqbN72Sq*L;8q{2B8ZeEvBL&XfMQG6%9ofLF`r0aC87-uZl*Xiy`)^Xe7D>^2NEL zd(a<&_#{Q6&>w|(szsyGH$wcAqA}>3Ag!>XQuNIbU!|xFeG8;TR#buh7{sO(RibZ& z*tDW5^z9I@zGwpaO~?wJqDklLz6V@1t`950Fz z@>@vVRMd+89b}}bs2%-#NIg{)L%$F4KZ|Cg{{X48iW2BQLi&e`y3l`t_@6~{(SL>1 zRz=rNqWS2*L*9}933NcQ*uMZB@-KwF{fpp7{ELZmqyK4iAIS6fKZCv*^8EeJ zqHlqWH~E*KZ-b06`JY1%Q5^1HioVnTJmGiwUqFw5)Diw==({2Hf`2*sUd1y1OXza{ z3RvM^3CH%+eZT?c7>_&1}cLq@m#ThI?eMz{T2(GNjd!TxRNPeA6R`M0A#38^FeJJ4ZB9pT@J zZh+Ja{$1!6NL}FHjc$XieDUu=#~>qU{=MkgklsT7K6C;yQsdu`ehlIh`VXKVhuC@l zLG&WX2%7&8dNIV#`wyd^f!KEc5%dzp=lt)Yzvw>-m->&vFZquX=OzCM^ox)=MgEiM zuR-Qx`%j_24w<{+KaKt-WWI|34Eo!OulmoT*Z4nx-|?S=YyIbm^P2wxdIO||<-dsD z2(i-sOX$stTl^oQf8f7N_zwRS^p7Dkj{HV0Gmao*B7Qr155)KLJJEX~zMsDrdOyVX z^SjUo6@Tr|MZfLOhe!O3h>Caph3Iz_-}C#>zw!IwZ~Z~`{@x!#pMY3be{b|jh;{Yf zfIg*o+TRELM}J><#@`SA$=@IT**}1om;3|K|A1J_z-?#;q@@-ZgwBFk&cG0KHpFrU zhN5#I^Q8mB(RmOn8W@3gL#$|EB)R}%MFaPsy$~xJ7=f>f z#rpy?2)REnlaMix_FCX!bScC)3p|1@hxlfJdh|F*FF_!T9uH}+1sc!~DAood=(<2N z;WGkJ^mItM3$&sigp{>FJNgrlvKEM;KM4&H4$MYBs@M=n5E2P=5z?sG6qrj$OQ4&O zX2s6HeDv(V6EGfF026_QFd0}x%%=j2(F-8nRN!g!LP#kKJcC{Y8OIDfi~a&+7GGcq z`hOtfM}gD>x!M*kF2y9KtOe+iix z7}$#bUx-H(*oOWUq-+MZqYpybWq}>&Ly&e^U?=)8q+J%+g+2mlmj!mC--Wcx0(;O$ zA>L77FZvk7I|}SWABU9Rz<%@zNcjyMK%az^-@rliDTsFzID|e8@s0wA(PtpuQQ!#r zEHuPl0`HCP+H=svC=1~Oupzne77X|yGM=9PP?1!EZ>`(Zl-~jYQ#mT{e z=<48YuqHSNP6-ZyQ-ed{qru_CpA{T|4nykb;7D`>WHwsx9&`j^H-e+k&5F_BXml(% z26hHZ;p|`;apnXo&|Q#GykI4IE@b2`ScRSs>9+|^KtBbU9TA*_{v2d>M6eqDd5BdB zPCLIOmEbh=7a>+9I0OA9h*b&BM1L7FH#qn(`YVcG4L*W?DOeA`77W7` z!3N^23`WpjhxFS7o6#>r>`X9<{tm>p1Y6PHgV>f}JNo+&+Y*eSUxV0|;B55k5Ze+= zpx=PBu!3FaZHhk&&PDGIb`!ooI3NAL5StKu0{tt9CmdXWehcCW2N$A$4e^A7i_mW? z{yw-E{eJLi!gGqBLAxMx35uUZ=R)QZ6fZ&NL;6OFpFKL4^bRiycRvIcpV&3ydK_FyaA3Z-U#n5-UL5hycv!z-U9C{-U`PQ zZ{s{;i?^doA-$l*JJ4l{P1RzIY$;8;bX%XF*1>iw~fi zAYN$kL39hGccST(O|hf+2qB%t?-CMIoLzjBkgnomgd`!ol*Px<^B_G5 z#V63uDlRELNyt}=PZ6?Aae47+^ozx3;5UlTviFAv@ zL~n+S4;EiSZ-unni$6qfhqT;_FQa!rTJFVH&^sY5_hKWTmOG^GD7K@IDjq9#qJLZ5 z3!W%;vG-(gF8cS7)>Cml`hAGCFZQ6%LuQf}7osmf=8_fr&=(G}@^mK^d7z(2wgtXT}4d{m;K4d6@{shE_3^k)a3GpFAQS_q_n;&XLH!DU% z?dVU1VuZJaW}{mb+d~OLW{0{6>4db%LUYlNL*~wfy3tQUEPrS|`YA|{edr1FXB0mh zT7Z5!v=BZMS_D5IT1=e(2|bNo0_m9#J%fH8(lZ}=7X5Hj}$Q|(4a!4zw$!T;AWEES<8FW;!wd5=z?Ij-&(xwx|s$2g_3 z?5AyUN8Hq9oUfIuTK|6TXtn*;amCTg+2Cw*E^vO{`DN#F=PKtKrxnBc{XgeP=VfPB zmOJaFtdUuzSyQqWXRXU(%~p?dwc6wvHE-=TtXD;^S-skNC3`uZ5?B3qAXf*_8cF@< zy{wfBwG-Z#`}&sjy$DFnP6Kq|)-s)ZSmF_Wn}sl~?;^Dpl`^i(EsV`91M3^JuI#4_O_(B zQr7W>l(+akieaxrSD`1MCmHwIcN^;+d-&VS-#-5K^LK#1gZw>gThAK#^^S|SC9ID9 zGiyu0(=dXf4vRHefAr^0o&Jv}`WIQ^nD;W{B-HBwRT?}qW#^R!S)~6y3Nl}{&H?%%F z)Z90?EY{XWa5UDD7+e|Yh{XB6Z(Vn1MAUR8T10asSwA+Mh^UaMT^-42yVB#s9gS@f zQ5i|fJ>%lBb~B_V)+r`M+Gj=LRUJ(+>mpMlP3A@9A!S{OWUM`v%7nT~S&XxbiP1!o zw3RkCin>^7JRastQXO6GY}9g39nGX({glNzlHq7aLR8gu#pAK&a57RGk(b~;^-T{p zQ#-hpTMD;D9}CNS6l0?u;duABSiC))Oh*2DGihN1DQ2ZOLmdY(5Qn zjYiTst}Wc0P#avQCL9m9N4VmoSYxy)N=O;!=!!=&A5&#pY*sp{RULC;tr7h&)l-PX z!}9*PjC>~MRx>Fo;~7MFda=&>irHP9A=xb^#pXmNN9H9(Re3bg8B2s`@xHW-h*I^! zdC>YAqMYYf$E#IuVsdP*s4}m>K`K`At~&+Kydj+Ar@b>Ak0xRrG84t(Np(<_%xAo| z@^E*;j1sAfaY1z@9{HogL|wd_v`-JWb?Fq$QMXeTk8t&>jzlut(GXEjSe>jYVTDyU zsq8m47Hf-yJH(`DhdxJntV`ZhRY!98Fj3Lo$z4y=8(c;vGu9!WN^PW}E6yXSnAZ^L zRGGlcA=VBuY_cWRsNMue>Mb$0n*yYBfGABQ$kT1zVqz@ZC~tF8w5=_gh&04H8WZxd zPmClIbuA=Lm9DyYm^(4AQXUOAcf=COXhTBojVBW`qRAFf8gJ$ub|llON-OzJGfpHo zCq_D&IZ9{$v0c%&#&qVbldoAunoJf`ViL&-H%EBl(RTfMIw;xc3zT+tMmicrSxcA_ z&`Ew#k>n;Ns-rP7uewRpcFjuY!dAgesx(iHw3DmE)JSKWyupd#MAC}QyNZw%RI10x ztS+;u7W#QgE26Ga9%*PJ|8z8~mue+D(J9ZEDkavtNCjvkk=j(p$}2?MBI>S9Ju%u5 zncOAKkGhshfVM39ZKNN8EXm`iMiP`la!7`W&;>F{u52ff($L7qYZ;sgk#13ym>7}9 zqdHz5ZRXikC1$ilF+l1T$P85-5vvrcjH(i=3T8r#!~S55RIaT_#>GRCcubYsdAx=O z^F>(MZHg?*7>h=Ai&l=A+||~WzK?Ruo-}{ze$A{aA8J*CcR{98;dS9SVL}(R)DaYs zSv)UM*AkD-t?s}UaJfb;Yz_tcCJ}#k@M4>?I9GMMnchn#zVV zn)QuLMrmzXRh1YYPP8PIF*VC~Mg=Nut!3{rOtfW8rSZ;;kc@Y$`;&P}UO-zlwv?y| zN8=bxoq(y4a7KZzs^*D>8)asvW}HT0*4cep-MG8W1JYJn-bLme$r~t(HR?xOmB@Uf z#LU>Fo{M(yps6*}JFHA7Yu?OKld28H0QVsw=^3lnBgI({y-&CF!NtP9ZuF{polCd%aMU~!J6OYY_%JNoOMm5;k8K*i; z8E$T>Lg#K}1t;+uT6njnHL$!+QiEmhq>RjoHt+;$vH4W0JXd)#S*9rGSLFgil&Lc7 z`e|gs?uw3PS<3IlZR~1`+$S;u2RBN4SzXs7tTxtww_DQ|PB!7=;?h$Um&uYC?-6Y( z)j!3Tcba*^s}Gjt_`gNyv9Dqdmr3*pQV)UL+as`t*~r{;{n(u{Z}dDZjx|ja3TdoH z+yAm~TiYyJHK`^AIVvozVjIu8s)4=fHqrP<8#~O$S{Cjwb8B5poi%+1^S!oJceHhn zi^dbU8j&_!Ca#^B7@ZZzrLB_IQPt*nQITXq^S^Ro2;A)zQ$_)ku9up;nDC z!jwtv88kN5*xe(JS*2wjMt&sC$?j|7T07Dw(6*{J+?08hbVc2Bhb&04DoY=3c^*}X zibiPyt!(Ke2# zoK_`WqKM@bWYkhs9lAwS+Ypa-Cex2&VvNi)Eg=gJ;AuDEZ(=!HqLDeOg3Hw9k%T&2 z7VcV_;yB34n$3!Z<@;A{)UWT>S}pQtr;o91&Jr{!!Xs-9h3b%s?b<&U0JxHB_iZgQ)WmS2Web& zKf(34RQ~{8xV0Cbwa2lK4!>&qPNA+sdpq-}q2?2pwTQf=eoN`(s$}%sti;-O_B^@r zG4-pHCsK{h^k&8-NOd}#Bxh_4&)m3EmHg5!Itb!s9}*4vHe90_GiC_0D@eI->1;;c zkd|LIddg!BiS!O>1F4j{ttv3mSemg{B_ZWUr@FJ`Em;TXS8erpWi%$PA3?nevJO?S ze4NpSvEd}PtE1V<iTeV zq*`_H;Kf?4L{)Bd+k9fUoBS?o1=CGSSz28hC(`ol;vCZLRfm;Fr1z%Jpt@3(v6jY% zS7|x@=H|HQyh!7;&c-mt#SEh3q`FCWf}~vo`rydkvAN3H(N2;TneM2PcO1pbPX*Aj zNNq@KD_!2CX?bxav3auNOxgogh~@LBq8Xp)G&@37btKEB+4W0zN31K}5V0PuwatrD zO&p#Xxg6tX)^zy#kT8fFX;iDdvQo15n=~COZE#b!4 z+=QrZpm0bBSeo_pRt+bmejFETR)^@LQ$|g7ge1EsQtMKOsxy&9*_|ybTXSzJb{Rfz zJgj;dboMBx->*d)Mtl@?dNlb_$H|e>YqY~mn$pw|GK#)6Tnf^re1wjKR;eB4t;q&xYxk_! zJZ00>*=h4pig7_KU%7&w5G&BK;pBZYn%pZre`}k2rQ2Iq3sG8cvJH^2TL-A8VjYo+ zBl{Xs8#I?y+nMVm62F`gf1D&_Tgwm zA~fBj)FaC7;?&6yJcmf6Q@Tv}`l528dhe-6bA3Bo)s9uE;K4K`sgXMps%=I?zI>|4 z*j3#b#tN#pO-8kThm}*6XE{I_ zTQRY^T>j~*nm5-dAE$aHve(NBC~fO(31t%)Vf?mzQ-D%;2; zE6=np*45CW%LK1ZwQ|%QUMF0r=8o?2pt-2FR9vMfrfNux&X4G0?et2ivZ>0ceizeK zeKt(!-{F{Hns}Ow{9t3Hk0Z^1d=#=X4|{RvygM<*xEKlZusg+6Micp?K=H(Bq!Y2F zNldLNGwlRpB&tHG!xPcXgsy~`97)cN#answ=H3d%8{<|mm3c#I4<}Ry(&s}DgY-YG zXzE4Pc2nTubS;`gk>;7{6x6=GxsC6k>p5$GoAg?&Gs!Yg#SO?>%8Vd`EX{DE?6Q`f zYTOrPJCRf-F*9XWTnw*tm{fVS?7jAbv_0uj5$GMY(e^I7mUz_Kp!PgWzLB=5tlRa? z_uQK@k*4o8jRLFfko5Uzvgt9H2u=tCgOTa7?+({RHs;Jdx(B9bzq4!>$gUsWe1stZ zs!Y5Ceyl1=x-t!s#;!P>Vp1jWTBfP7vGfjQ9b`eyh%5*Cc*bKRE#WyhMHzcIPE~p; z|E5n;-IeU@(*936(2ASc`cCh?P8uz1U8}mi()Lk6{U_-RjO<* z>PY5K>IKLgVc8&BF|t)6TQjO=V&sFTr=E!FN>);4Hq|;IZrFS_t5mrwd_p@Du4a}Y$Cm&)#V3&tV%*hv(~D?W(LQalIi30VddB%olLcdVr#ZH)H_mPDoWZZ(&yqHnxf4Z9E_I= zF>l){qv`Wr6O)&qra{QoCHC5%r99UYAx@meR4Yc`Az3wVf^a@~KT}0a6=f z;ZBCR(>tjH8>p#L`)9O7B5mWC_#W>Q{wD8Z%<0j9^`a*+o&h|ILSK=0%)?^i9eQD;M_2dzm{_b3ncr0@c}M1=!<_ zu_Kk|tw_8xUy(ohtnT)TUWM zqgCEi<-|&Z3MrMt?z;F`kyQEDg|6ogRrst}wOzQ&9rEU_5Po$VBhsi&&9*M1))uB$ zP5QC6(*;#VRhit{r81i7FV|2nm|Y$!%6J;iSBJ@$NA=75&Wu?>n=*5|j3#DR zk8|k+m~kdWX>xV8$ZIoUEt+c4GVn_;jy4Zk>*`SG4a-f^9U9VV(I}ATqZ)$$r^TX95^u@2eWCB}EPhdY#E&@vsE>GtZI zv1YEBZ2;>68E;9BahAu%2{~3IeiS=bEIl~0c#l?owCuPlJ-!q$dRojt`kzcZzY+m!cV( za(b;nMP`cV33;j8R5^`cvL#iLGzHwO8Vw*{TLS`W;()A21u@Mrf%G^)LbS>$2)IX) zhE{8s-fXqBtBKdrqbGaM(oI*|PqHZ@)La-`Qg+HIbJ8L(Ij}`NP?6|vpA~B(j+~k+ z9dS8Fi^6ATL?v8!@MAwv^Pxsp>f+B=zs zhG`;&G*KBnZ4`16p-}ydcZ<@gm1FPZKf&)X#Zvl_WGFvy#9bpq`Ga*sB}T}AQWbk_ zw;4t81AXrS%WgRHpVwT~W%_ zH0x`tDkoRq_sJl0Ph~2wu56e*oxG$Hr9;z_i`D7`)XSc+)W(Q;Bhnjp&AThTareB8 zV}{-_k9lCJqlONfHb&{^4;x!kqi(0? zW~upf@9eqT+GMwCO3#TrNIw@7V`(HjmTx))Sg;AQ+f>|naAow7}8D3*##67{G~)BwLK|3 zPY#00K>#(5W^G_@Eh(p6W@_w;tQh1>7j@j^7)wD+t@l}5rA!~RBGH#%>FT(pCi4W$ z2oI(uGaTs|WFnB9dakd*naq@Dgj}7F>iAW0su`{@(<;p`Mv>`^@&Vv%U|H2nN+q>2 zCvwV(tvv$tMrqqzx#WS?gkZp58Yb#tZD<%q#GGOn2#(KRSq_g|IBD=DWxvGE|`1b(0hg+5yIr;<(BgmmFd4 zY_F%$Pv2TX&i7`90|}Ddaip}pp59q{nivYt+`&T*H(JM#6)f3go`#^z=#6yUCQ~P( z?x?pSN*(TTMHxb8y}oA8U8!JFMK7V65X#K&ayk7wp_71AHztGR$c2bD3Vkh+kT)!7 z6v#Q{B*!{~sW}ZwA0&l!LbN`kN|<$!+~Cye$BHR8^hH##x=@#OK-7xWUT@ZX>gh64 z-$8cNkoDtb4{RpNa@tcEi;8u zUX#l9`nqTmr-clvoebQ;L~53u%%)_1IT`P&aOEQ;a318r*Nf71-2*$NYoV8#=tE_q zu6MW$zy2xY9`iKq_3D*U%<$gBI8o+wcb$(_2Bt5yRovUdg&VpH#bnGA|uUtc4~(E;GR=m z6N9gs`#LzYViEEl{(l`U->+cYWp&~I% zq;eOTfv#0GrpWY#j4iV>mq{(@80pSNn9hc&qrnkm+CD>|eQgLLCkv2{*I>vcb zuAp4*z;c~N4x1rYE8(-&$%Vm9as^+5TB9xHbk$R!>H)o$>R#r+2TX{=rk9r7N zX*O9C_mg_kxL~!Vz-|edI7~;BE=486^R#G^i!kKGN)eC9PWiaf+`B50WekKS%46-} zXop_mVJ?NF^N*#yst2TwZjX+-*m(M`l2WQ-$TQOUUd}vKOMK~EQ9|W<>50nuQEJ3d zPEb;1@#aX^S_Rekkc2)4_t+ODiV5xFxkSAC!y|ug^Oy* zel^n`&0<8x(3(?QdRiw6|AFU7Pl~>RDipG_$_k*ni6MqMre8O=)Y8e$T2Hk^R1evx zB~#pPqK2X(m!Zp+j+~U3-qLB7A=6keqGPDZI@T4`CG}D{ycRPZDzR2?A5&Jjx75@n z*}W;$)3Y9woZY0aqhhKEylOSEEgh1c{gw_>9Y~BCW1%aWTD6o6OK7ph<^U%u~&8(rvCj;7OV@ZDf$#sYkL>5#*74yBng+ZWK@#W^#w^~N|DTZvNNqySANzR<>-NQKxKEO zdHs}|nQ>cm#L0!$U2;)HMld6`jDx0bAS$O0$_8u1T+rUZls@@Kp2vX5H60{T#~^zq z>u%&W7n7R$V1av`RKB#968+Ck-mE$Xw(h`)Oqg z@sl!^eXu#}fi5}eU*524FGfq-SjA}F5HCcgRK6H_w0u9QXOpPMO3C_!nFREN(#@1U zuDV0tb#=!?UbNQCz?{XOoKTy2XWCeBDqRre@Cd!Oj0<-}RR4zFl=pMhCNF=kT<)YJ z$Uy=gKJ7#qEzv1ged)Byz7VZcN3E#vb`PVXbMR((dud^qD%PBhw>X zJ}^f78s&FPYU$jk6O-=1gjGjI&F?TwjJ8JPY!MZgDtJyhu6#Z+m!{vk{E`f>wz^54 zRPItQwl2oCs+;7&QL0B3ZrV2* zEFh*H*MU8rm41f*akqSw|M95n>`2E?WlSr#>e#8^RDRXrYQ zsP7Rwbuys`{j`Ij?Q#`wD$E5;Sr>!UMbu>wk^wG5~WmHL;+a6|0--T(SW>ilt zuN5_=Q%e~rsu^EPAF>=dli8Ey;cA3U{|sYV6|0){99sGIwI`%76>1%k+E8a}l3mjcYHUGDHQTjK+Bs~ptlAkRQ**)TPqLnLk#S+>a`vhmL0JV6ymyN=#HD~j6c z5mEKgs}FYIkC3tOESQzYqi3;|cK8Noe5Yx!90HFqIaFO-CZ^U(BaVt*=gIhhIrCJS zP1W$A;IR%uw#jkSdW34HCe^G@33Kp5R<`oxFmf#C6q%pOXh`3wj39Fh&1s#o`i4%{ zEttIov{TLYk35NVB;@O47;LVfeM;*CA6380YmQLoG50=bMVqPL`Gfjrrl^`+S21;R z>BRc7(uou6uYZn2gz-9=%s4)im36H9iZD-7eqF4RPl~7%aw9sah>XD0ePo2`Z;Z$@ zrJjdA*|kB_nfoqB*f~1m<);o)mrC!*yjVIkeL4BOQ_0pDjT0-8d8i6VA7vHpY4mSo zlvR1RbX8 zZfvAu*o@AwClz3NoAavgqA_(zeSo5)(VQ!0t=UyQRJ7HIs2Xj$qsPoBYATcZdX+kf zw$0XJa`_zb{p4X%>XfMi)ux;-DW7b+6f(q0iXITcteK0_Wu)|0RYF%0l?G_1 zU6dC@9~kMfLew{mtPM4Than{ST2f(FV%05OC&ku&S>XT6Zv7zsO9X7if7z=F{(sr8 z4Z(kjAPvKHcW2(Lo_TO2exyJ?3f+I9o`L$ZfHs#n7O7XLA9j0vMoy4rNk{%8#6cAouAedwQqnv?egh(_~mgb)xbpABE{L4)Wg@M-8s-7#qPsrgdyC zsrvtSaA_0ymGPg{(Xy=T@~8U0RRc_K(~V2!#+8zWLX}0;fk>uH-<*1osVXiVZWiqx zarIeMVO4jXj;$Z5Ip^@I;8fe8HuJhxuEu|+XF@Krmrq{j_|mpEYqxd{q?4sDt|rRH zFlkoTwMtFq?J28xhrHvV62l~hi@7|c*j&~BNV{GxQK+JiOLtb%*(ygv%45{mJ=Z^( zUzyMcGgiCQX|^mdk#4o2GQyDy1pg)-`)4-~BdRys!z-6U3Pfe>+4Wo)g zL%1_CZR$k6Ks~J^z157Bq(Q*94Y;@(UesxUJ(GPY{MNnwr}R%CpKPqsbOHaSX0 zVc!V8adm)l4rdWs4m*%C zR>f@FgPY7K5&^X3hb|tx(0_jW*8ZLS)5iC*JwM;D{%+-)d7nnNb)C_7L}_>3)~-=e zEmnK1y8Q3mSCp?d4WwW7R|+3v5P&wsyc37|8oorIKcp&SKW6Ap8+OsKok%1?Y4VeI zP&68H?CDu>CUC=+XlK4)((mypp*Ev)Ob5(~!Em9XPfVbQeXMRD(KgKu|CK!~;%3@U zOy|Ren3wwowuqc8;0c+1F{}Y6rwpDUfKLf|Z3h29i>{ie&(q=z8+$&{A@D_;*cg1Etxi-cn?$GoN^UM z)bzHQd@Q7b!K93v6YubWJ>Op5JhS-85R!9p8CW9p+Y~J#&So<%?BH2N{hGHBJ)d-wit2kVHYvr%(5kN#06tBDQT$-jjn;YFm|7P2+(i%s*ySKY<{i86h3>QyZP|KVIX- zifaehAsEr8M_j`}g1mjPdA&s$V6ofH_xU$2II_bsGL*1Z@7WV$lC1C^w=bkEe?pVrYp9J#-C}gck)Fyf7sk1UM z&K>@=iC!H|=A~&rJ1%Hb#EQkrW_^+>2G0}^Kurp{`_sJV+o=%@!O@>rp3i&>se;mU?}^LBer2pKATWToxcvGP+MNaDMQY4hkysfm2Fb)7B$g z9LN(>2>PkL#nnOG&$4}!sKEe}r-Qal^3p1#LA^v1)Rh62M)4u+oT48Snfon4j(KN} z$AKT9H)9|`&gkCm29$We0gAaBK;iig9Q+>8hSvku@_FjU#N#R6d|^p^_BD3_&b*!A z4PPf<#nTDY@pA%KyqrKC9|w4fhjWVH-xTk7w`R&c4C!F|C?0f1Oc}OJn4pCL6QpOp z1pks5&vQ2(>KG0)=kOW6i{DRd3FbRg{>g{1OL)J8-seU9zC>U)H-Y6!;21JN^osN& ze}d@ZWwxie1tYD;JUlO%j#v|MuOY948ZQ}Q3AB-@2y)DkT*AODY|czM3t&Z9AZ>%c zy6njbCSG?X_PGSfa{1t@t@h+6gD<%!u(SLm83!6yACShC1TL!o1?&(v+9>#PI-fbw@!6Dh7U zDVuGfr3IFvLRd~kqdeEB9_t_6^BJ!3a#WTC%Y`mBlsiG_^HE7_^Vx{kyGoyVuREnpS8 zf@VsgO;eX4qB2MhR5`IQuZ@>2V1KZ2vAGEiJtl`aJp0!pUE+i2Dh7ytRUp6CH7X&6 zbNNBw7cVn3NFCacOks}X`2<~j;8HZwp=;SPqoG8RxpvUBz@TKL^>j5T*G}YfbUAzm zch{6L%DusiNGB<7=C>F+ZI|}SkSH2})lTk88w_x07P7qvnXZ+In z51vdt(*W!iD8hlG?G|W`sq}l9AsZuvggODUp6^}f+BfKdg^~wHF8P|sg=Dxhx(q5* z4aYiF28jwq36n*L+wLet`AvXDt*!9LA+P8s5lV5pSsbqLT_K_r_HuvVuka4{qorFB z!y1_A*h%qaZ~@~#VE~=De=paknb==+<`W=gVz`(V3agob#uRJF1y^QF~ zh;y&as9qHDM}!ydY_?g516HAxw1Qr0aC#jgC|VEVYDCmIg6?~MdujLb!T_>@B#x8= z;=81qqoZkvEG?EO9Dos=O78wRl+Lt0=cl6+N!wWskZDY zy+6n?VjnmkK6+;EV}1W@$EGURM0GzpX2Z3_i$ukKHciZKIQjM_(ttzFtOl~JX#=4P zIma!DjH2S`!p(_CGk?N|kKbSN{{^0T@P(k>Fs8|j(R6Ly2c?CjWUubsSMMij7d#~W zf`?w_kaPx`hphG@%@I-Oh!W(;EBg{pc8i8fpnR1S))(-wkDwGTaA$aj`)KpYFyT*i8dIqHR0QLoD{L#lVGXR2c+{e=$|ou+RV!IvfY3QNfK z@`e3Mp+hpTVajnx) z+W=eUQ}8^SDWNv&w=wl(gi5FpJz}WAiMF@4XLGdtEOt+ z*U3bGYo~`)&kHjbC;RC15*7BU-N)ouZn}tU5SE2Nt#wdA7MPb@m0F4rIs3!s3CKX>5x;@GS zxak<{|MQKVxK_#bfaQ;tsZ$4@_KoVeDuJ>>=e{*b2NKm?SQS_nIbt2;5>t)ewV*MT z*Q6!$F`2S>AsKx|{~_(-f;+GUZl!)=t|na^|Dw zFqErK=2f(r)Xa@*V+I ziyDXw+tbC7U{JXZx}tG_pJ;GskGv_(Q8k|YQ%wzo2_~Ol;F?)Gu57tyXrnSA@Y-;D zB{(6~C4H*yn;2Q$^>x>HCsw_xzVfK|f%;OO$IM%*J%ONZY9XSz>PZ@aQONoC>6JY_ zpggXsxbSm)0bk-?hT}K;Ty z2F#REUQ1a6t#0<#sD!h?e5 znxx^H6V(D>n?6t&j`w;9Y{5r0xmLsY(?^St8!sLiBvW+HF z!6PUrvr;ZWs5)+)km@NUzGz+hBn%rpImO7;7C{fo6-b3wrRB`}L{?e6>3dZb5Cs1m z`75Qc!Q#DfiC;}oixQP9MA%3#DxEswO{ ztnU4`U%}))B;0pY>6R4oE>R~fuz@=;$KtN@H8vjsb8jh$)iIT4ZlW_qY6X4YO*8QxZ1(YKtb9J`lcqhS&gO>u6 zs#v#<3q+-+0pfyxKK`8miyGbCHIF!ui#M%~3;#W4)k4uiMB|Ra()?Q}r{JPz3OS2e z%%&c(O%D^@r(3XXss$bM7nk{22<%!8I%V#hFlUMuY zvcL)XnTvnlQ9d;i+AL0w2n&X*MXnDx(loaTB}PJ%kB$IrF>~kKsOT4{bA6>vV_5n^Rud2kTl&4poR)eHCk>w? zYHAh3^@`1%y%%`y&3l}G_Y2M=RM&_;W#6hEUsc>qZj*I2ElGfKLm=DfA~!65z!a#M z?lj3frc-Ar<3c9~PmEeU?wnMJ-DgM&NX+jKZV`rV|0<`b+RpZ%ayE$$2;zB>D$xfG4kBg((0LAPj+x{c-Vcw4ynsk_GnWIe7@gtLr@osxtztJxbC2vgR~rTmv0Ab zveLG*P#VWF*y8zc=YwNS#tCE;mu{3-L1zsOmVvi%fXZ!do;}AZrys@G7AF^F`jl1F zz9Oe32&!o5eMFV0u#5YZ)kEdDrLs{~QBi5TX2KxX7E|{a-6UdPimF3Z&#AN(NuNvZ zb^8W=1}%1PTK{5u6FXX|@yLtmj_W=}UdM&s)i1P*paIn1{kZv_kYzZhs@vMCZnDSd# zN7CipB=@@tTnTk=2B$hPvWpvL${u2>t|wP2A_QabBtNz$U3$=2?*jZam!;NWp=t7Qk$z1PTza+LaX8ZcO7@?* zMSAh6H)D2@TkG8;cdj3~CS$&82I{qb(55VZwbIDaq_p0J4Vy-fnW$;cWoNVQrTytN|kEA|b6Mv941oRsqMkpyyZ25MAtcP#P1T z&9P+su(T zFfL?)^6zZH_`sPGb5fgz?13VMKIQ$bSvsat++;&D;f^GFqy2es1FH|#W3pQKhR>Dv z8w_ZRQ6xf=RDF0yg-jOF`71l-*LUWYlf@Sos>twI1)KF+JGn4q%r6c;i*iTtjE_%5 z_yV0T>|GW#WwPQwc;I@JF^_CBqeG-p|Bcg~-NWxpBq(&LU;9 z$@386l%C(CgW(hBh312{AM*|awHv+1%s95NT%v8(_CZe8Q8)2`PgCUTSqk)k8q~jB zidCa?wQ~+k4sfLuHEZ{luE#DCwUnL_ z@%G6?nt_Z=yVU(9^Go06HASIbs8m(fpZ2ATPRZ8t61CDI3h(&BH^VXzM~QA!_MEKC zo^35v5w4H%J&!4C%H(rwir;1O@!v&fol68tbTz3<7!BvuJcaEB@`3SFVV2ArH6M(> zc2t&!YP81;YH^O8hqT0UybKNgZjw!M5h5F%Mvo^Y8ZZG9;BgU-Y9oYo-!d1z_ zM6gO85ZmRwhM~|o`_|<1JqCXUwou?K>;xZphmMEk&F8)agT&!Z!%gYP#6m$~VJEO> z59M4KXQfZW`Ia|iOirsL9h+%Ggyf)mQZnn8GmtKcgM9t_fT!aO@?0@C_eL*m|B-jrOdUV z+SfwlUvcPrPrEZ2Z(Yj!`#eI?4c*SbA zwc{Fj0nZ~%werLEEwICknEsJw4j_^)f>K z{uVkZJgjjP;uYemou_4L9_F|AH*?d15L z&_Z3|{7nCR^OocM!Oq7I*t{{VdqfDE5b+>4dsw=I0op}W>leR>`aF8d{RV!{@#T8X z`&~K>!|@c1f1^A5ymNN=$a&Y=01tTfL-Y~u!l1|7)xx6wLXu}kAa$tfDI=oM%UA!)D}J6INg7e88^;;hDmDQYb)TitP6O3PmPCPu zMf+`YMvC2fq_XH?Q*=2KC9oHK^jv9kbgE0_g^JNvxTR@MsprBYe zC$0`OrSqUX)7;tiDne?QT@^!5gJdbPQH z+?lTywL2bW;;A=xKybzxD<==}V3ST<6=UPM`=14MmT!Fhu;iM`=Hzo*x68C z$=F{r%5l@>u)<)KU{29+x~6w!X6PD79aD`7mt?J9+%~GZI+w9&i0PGRik#aVqXIq9 z_eOxlJQsGXrmMkl@dJhN8ie-a()h4;>N=`>24&}{nQDlK3*^Mc?6r5OI&dKAw%d0r z2jY}4feg!*6>liOj8)8|ikVHxmQzb=`fgT&xXGB?83-ptcfJ}b6pI})i;Kmk8}P5I z#Fj2sIA&PS#|Dy?*DI>713t;R#ds@Tin~P|bWf^V9qW0}^=0$hpg}|HaM##+IB?=l zzRMY1=+iMBysL|`nOnV{#xhJeU#-p0~6KhOWRxy(%t_E`3%3Q)Q|bRJ=B7 z>UYyO(to+8d~kF1Q_3xKy6WbXTHw&%=#@YRa7B>mi!s2>-ipM7=bPxa^Nn7sl2+&k zPW|!99KCvZt3w)VjT~n4xXogI8@QuQ9n)35(JWaLz@w3p68x0`yVdAwPb=bR6Iq)k zRG`y!TpsVoW2yshRz(|{LL5{M-;VSiuXR6iu^fN+ z%HVVI$&vYsUQMtgPEj|H_pU(6p%^dzBVTH7Y+(#$E?}5e8X%U;1Y64Vn(YH~wJW0? zfrBfgZ%1YBWj^s7t=bv<0cWUDQg3fJMU!*c#f4!VYoOK1eHD?&s zG7K|p?Gj^{p|rDGL=sDKVM&|>B{T7$J3CG$``i@DtSn$8w7TTWV$P0&;S7PDl1UYw zT*5=7L3*kNBC$O5>@@^4YK@1^rM|2yzG$2 zOy%!8_|$&+R_FOm~sV?P?GzKPf8J=%=2|ciKS&C64m*SXIh@(=>*3+n)g#*FjSc?fh{UR&? zO+6W~HBPyzCsG|Mk--oxvA{5l%Q9Xn4AMjsHtLbl5&s&(>xGF%&Whq9E@|jKKYwhk zR*y%Di05v_g?;*77R(LiULsp@RBm?d&sB&XW*mD!FR1bqjE9o9ZNK0`-Dy%E$Hs`o^&z&~c<>08Y6Wbb0Oy zCdfp4O#m(mQ8oZfc#H=6{ojc^sM%Y9doFCnv|)q;>u;JY_-oBV8_%Y11=x^Z4KbQ;*YQ%f<#ProyIp0!JVFU)Mq0A(u+)4dm7okO0z<2Bxsdw0Br&nf~MM z>kXELf1rWNN|!O{{O0lQg5=+mb^*_Loc{HIL{{aP)eudl3Hp-+IxKX7gJLE!v@^j> zkSmsQuIrXysk9OC=llH`$;vomnSSFifc#%0WNhwCv_X!=rFY1;ce}6t9)rowhGO@R z>eAHLr`#+yUx4BteL69heiipmCWwawE1ysB5=%JyoC#$S%h}n%GWVd-J8u}Z2L%mI z5Hx~O1>>=$+fCp`sg7WWfsryuI33|3Yp04 zrzKS!+qFIAT~X{Qz2@pYnbagrAEi>P#kq$vbdt8Tc9fvBb%e^}MOEC7oh-2$Pm`%D zywW55q!B0bDk?0Jb{T@gHvmhYMx~@f*O=S8WD+QRS7M{oB;TxPw@0y98W2$Ico6|n zXE|l;nyxW~;07*VUze zJp{`e&AE2K<=>IJlG!FWE%9+}&k5pk#(^C3=RQ#X-8|5)b`^iMv1%6jk92mn>sF?}T73 zu67W2PhXul)DR_AuP*7?+622MZlskhcfznF29VybkRC4`B~49q)9 ze#ySZ8ts;SLksA0xj#^c`TG(65!I{uvNzVhf^AZJ1kMr1c=H_LVTVU!9T5>>OoI_S z*%bB^sZTsfiXF#PY6cQA(q3Ug!!R>N4LV4J54-K9jl+mhPU!xWb+YYM#wlz?(o!?` zvJz8-0=19w-J%Ng!U{}vgQRBG<{LdB)Xx`Zr;>PQ(Vn!1()*#dQ>Xhhrui;6$4oEtxVtn>!Hn%M4t`X#swGyvu#H;|)KwXdHFPZM^Hx>%#sWtxi@< zYn>Bihy_d`=;t6lvy6$Wk;gJ@x6DyiF4qfO;-5y9lo$H$EZmZ_{@>*XF4;&!p`PDR4gmDp)m|_qOd|_WI<6cYbWEO@Citt%+oE z_PD-$z{U}k&7g;q9mBdl_!FB1v=zvaH#}#0i#UXK((ehcc40Qo`gp46X_5}qw8y%> zdAVWVU`ipDXxMJakpyCv?H;)Ce7U?qNMdYWGcVnsMk$Kc5))4EQX0_{R=xH*H$@6D zmxYr8p%+BHDs?J(So%7xrAujcQrg-6W~aAMnJipk|G)moPb=In{XblS_+_|f zd6kr+WmbhU5m{3ee&F3)lS3?UjI9U&Y^&0-foPH~Q1Ox2LNe1alXM!*=^1oPmnJzX z(B`1>&C{Dz(nF*2+-_yhXitR&QD2gSb2E8E#7eRjD&m-hy@bdqrgcY(31`=x#3DlF zh%m4_H;&E7SGX!_*gPv6GRF+J!Epj+S4o)UI$@3r55vCZev=iM!h-K^R7G0W>G7!_~>DQ}J}*9h&;A?k}%*s`L5$ zV)%qxlkFOdNj2gP2S1Eg+J=PvOZ>iw- zUO@8V&%=Ri;eYX;7yiQyNCA0gSwDaBpP>AU$NuU+|AUne4->BLsIAUY{_(iMj-G>J zo-Iay#c}$<9d~4Q3{0Lx5l#)j0URrcwaSABnuu4tENwmWS|fMx4vYSs>5PTDl((#3 zvn5YfScqqaIPV5@@L>5KBL00tZjuUPXDO_V1b$7i51gN|3hh{}cnc6ZuhqeDIJ_Q? zhBw38;dppAoD6>({yw}PJ`5j+(*e%`!>0jv0>kIw%kb;)+wlAFPpzT4eTrpB@TP0Y zZQNVAGn-k|U=JBEtq}sJuptg$cl)~WYrUWw{`%saih0-l8Wu2-mrZfrlTKssL`0Uy zJUza=g+q`$xi|5=<9f?*$V&QcuxBo9od1HIA|vI6|Ge}c{1FJqtJ(Vbv;X{M_}hkK zZRTh{8~CM*zv$vGyZEav{--Yf=Purt_ty^p-(CEFx;Q-FR+s_M0s1O3G&+jDk_?)T zqOazQzMe1oioPf{ebIMi07^{*P-+^0QqusGng*cMGytWh0Vp*MK&fc}Mm4QEHAt#n zO^{J#tA0&1qv}>Yn`lNAuKG67jH+Dq?#sS+15kQ50HwkKD7_niQr!TQ-VH#hYye8{ z2B1_m0Ht>WQ1xztjOxl1o;WbkjB3mD-qVcg`(jk#s&`Y)qbgUu`>OBV0F)XBpj0>j zrM>|u)eS(YZ2(GT15kQ50Hvw{D7_nis&^A)RM)C^6V0f$RqrO6QGKi4O*Eq#R}({` zDRur+-@5@QH4Z@O-2jyO2B7qA07`8GPS{lZ5WcytsBtbr=3q;CR{tNcx zW+>6^p~?7@OPXRS8ab4mIEE7+&6KkV-_qUKhE0mn1d z^_FR(ysKjf z^HLPf^;};?^z#}|A0KtiM$8N#Z{HS*X=i88G1yb?Rf{>!jg~g8v9O*Q9qp*C=gU}@>1er_ z8rnT_%~=3isJ0q-k}#+~`tp$p!aBz%?>hcQxWORhQ0shSUQQu68evQ|Tt`LF$@HgsNCdaj4QZUIrp!JyInsw5exw5U3k3+n1p;3O}R zd%e5M@qDoCvg+}>ufL&b!pPxw{qUb-AswOH@Nz3fw^4Kzw+}#8X4By6SDz3D@i@PV z|4?4L6cFS&K`h`jk%(C|N>D(lo)s`DB=O0qJe`w;5T~%tEjp*N4D(W<+q~-lW^N0t z&)`~=)fl@@#0?K#eD^nq&o@4m+Ny1}wR%}qtn|BIc={A^{_Z9JU-ADJUOz>czkA95 zSN#8l2T<84-M!>LF4OLQc}1N6FZuuKm9Dy=yv2po8jm$B8TY(E+kLA7SGzbG?LFCB zvnSG$w+S&wxc#fl{KNq3wxfRF%bQTN_zVy}Ln>GFB~IXu;q==_tM zh|c<&1F^Mp_(Qk6hd<=u8KHWo8-lWI?mbn;&LyTirQvBb&U?ON^hdxMtSRIx#;Kd>Z3OTv;aDlc*-C z!@1O46YUJNl;BLurMx{kHVK*t)=694NurO+YJk1AKzqb_`Y=Ug-ZEIBVV-}3(@;UP)w-|<$%IKG$PsNwZ;b!&gl zH*_HPhPgQC!B4syo_-c&Uq#qRA69_G%E#0v+V)SmEk zgRsiMq)acG(T241akFAtQ7)N#^!4vw4EHaG`&YyLpYUVAs6n$1&1`vnN540uv*ngL z52p_|4BzsknL2e-F5tYZU4&mH-2Xue&2r%O)GK5jl9oa=D?=HZ5`M%On5#UV(- zohKYeB&*AlGd$I8)@#kx9GMJf0hJqTdpSe}1nlF+D>&1|Kj7y1bh$_wN1;l|B}}GJ z^RY2aG<&|gTZ&{L^?g<4w>a9SKHL>-;c@(5GIpYk8~J~l9e5>CkbGFdEPA*I2AHGe zNS;biAy_l{CU3DPp#B)eeweR0h&A|ffo%V*jxU6Vb5QDf&L|dzkjrHLrN)SZHBKnG z*y?yUIGk}XvwS$+((`1a!flt1hf6b3;M9r1$>-ehK-&F7DkffRFa|-4@|h>977d_} zoa&?9FVsh*wi#O5@t!+Zg4fIuc?eYq2PTor)E{h(u9=~5w3qvgv9Yv6?P-)5C5%yt zaheQgkC&HRQ=-D}sDkdvBOK_7VJ4a7?MmEeLk!K29o_=}yxs;zx4;-Z`BT|=m%_{H z$~y+;O*-|R{0^O*B@2=oDrSXIVkLr1i=d=d9CS~CNAw)9jff34qIB*W+gqWVIcmzX zfCJV?NS)fodri1DZ{$daE&Sq5OGb21R(#$QpxB&hoNCW{7JV^f%0V=J>fxy3A`xD%E_v!&7wqlgO7%Ch(5oK_hG-zog*^J;Y#72wN-0XK87)|CDlJ9Vf4bitQ``pZmdNO$8P6d7F z?qbalQ(&#u_~ zFNEj3cFjMrTW3d*jY2Lteu&MddtGHiq&0mqa!n#QyS zmXqFUM6k+V;?f;~rbQs$bmKvI+=qE3$}q`bRig*zicBKj&A%^Q(5x3__9mr%(RVFK zC28;S9Frj2 zGsq;pTCqapVE;x-g~-9)t6GJ~!I+&su{Y5Cps$O=D3&C}R@g{6yuj|heq^P*`zm4F z<}DAJT#h~`iSNDu=<2hFY$ryHj@Mi4EM&S&|`cb6~J%V~IyfI#Q3A_B9 znw2X)s$X5V`%wwVAl6mNy-3&Lv^i~ShSXu!HD_2NW{hu@mRkXAcccAQMD4m|rc_(} z4T!wfR8e8sNl7f=9KcsL)v1S7NqQ7_L~)`!d(g?I?$OIIkwAzDD&PS;3qN?pG*>{O z;F|NQ&Gwr}u|vGQ{aD3IqDW8^C+}b4|cs??6Ts`21NhC}qR8;j}#t=dAUm4pr1DpuVv(b5Hq2 zlys<)iKr&0*;$m! z_QBR&r3}MY?ZW1k_d?|S3*!jju2o81;Mi0+vM3kDRHc+}N?nb|G8PdhVjKeVF=)fC z9&&kjwF7C-AnHa-Gcc-A;6XN+_?@EzoSiM0S<_;L2|EUC_-fbjPsJ?UVUBmWv&{z} zP9smRa!EWQT9{3*ea28=N>$~mxIWFn<>lj@&QUg7PPM*vpcgg^<*zH&%@MIRl1p8* z@Eu50-T-&nTe#oj9eGWv=Sf+Lbe5x?ro;lDpv$D~6K+kV@@$l7X;{^m47DoR+Q9_i zQv{5z14TuvAVbp*<)qbvK_!u3wh&MIlAX-@p2}iVB-w1e2th zXhy)&GqztuNR7u=oTJ-;-yw4}P75(zD(N|gL0-%xeAg05He(q(dHC65bDZSIOLwYU z!(@i$8M#nu2dWm#RN;p1!d`!teGO{2hi8t6j)q_7+q=hmv=aX63=%AS8a+4aHRl-b zv7NnAV{9409lc*cxk$K9Ef%Vd`)ADf>e6>b70`~>4bi#`9e8Y~zFK#a@&!m#p}$>O zFrJpaYAH8YR}@l~a9aXKR3)1zpip?eBTkA^a*dlfsl_qm8jKTPjw7Y?)r3692K0gd zJISzsa!{AgpGGlTo*s5#zFWo434s-LqZ8{+)AJPAIj+A7LV)Ys`9$1;w>Q!$V|P z4uk)`48 z7*`>zX4rhj&OZ%A7Fr5ja{cWzJjk*Uy64nxjiwAIJ$4*T7sosBiA|Vg{fQK*ew}?f z3f2r>Ahd}BmMS?M;=X2yHJUgkXPbZxWuEH_or4;xVpCDb0yY{PBZ?*`pPQR{?U}Ai zK2FeN^M<}`TW64lCPrmTmVlg8=Z+y{lc|05;D#~Q{rNa!T*LR5^UE9e>$_`W!ttcz zooSri#60g+rr`11P*iNkf_x#bPbq%Fjv2d6JHl7i2#cyX90+quf(-g})7u*%HTl7J zPENJ(y4=AP%=tol)-)nqxL-}cRSs*Q)GLR}8+ISe$Aa=Y!DH6y7?`=GniYFsdPvb&T>b3&9cxwj08`!C^beWDfQfdmLLmQxq6o)1-H+UrRT$H6xzsZnsjzL0`bG5$Bl0*f5)d< z%B(v|X7yigvB2`2xk){j@rN7B%@vb-j3YKQFzr9iA`m~bB`+Z#;<(Bd#tUk;`z*Z| z?;T)xMt45)4mS=LmjkK~gp@%>0CT$^VkCZmXsK;3vE^W`FBZZA>Nkv1Bpx}Qul$9M zW;0k|C-M|8kWWXLyKlc8cs=xO*h$e@3R%nFVzg|rkmvJ+j@*KhO?@MV-H**Vow9Gf zm+^as%={dLpv}JJ zfWAn`-B&sw6~~j`Jn%~WDZ%wk|Ha9v)QSJa!NfgaGp@4dy8rRWtnO}EEU1pqg121w ziGLTjMORXTV{_76bpC-e5GsLw{&>FW&3!rbTM=&T?5U zG+*u1L7r`N%i&Tj7uFiG4;>YLV=s_I{IWpW_@O8k~K;|=C zcNeG@gS9${tq)&P^OI`KJEAA+Ll!j|jbK?K&h25MLkjZpef#hpHsG;U$sPv_nW@mk z039)r#?av%A{uPvEa1tr`GY@T>D|QFIFL6=l$HUfVmmWTG3$&B)Y_093^?cmxfp0u9vIW)@Ogz1)8pBLQ_k~Q+&w1ZE7u)XH8qb#x$q27j! zXC{k2At5anmHDVCCFW(V;+C_`GZirIQ8r*Dep+74r1vEYSAKcFRbU-SeO7aDyrgEr z`|MC>kE=`B87mJIo&4B1$UB7|Cc2#|qu(R9Jxc0Mhhg<(;8P7x+?pjKPt%r(!mTM; z1Jv*ej(N^?bnpzzjgkNtX=X2rM#6rvSC#DG4V1FNc~88;*Ey@F+WlCyV`Zux8E@Dm zC+ml}BgGau8Jt~v*q$*cYegItvRZ7@g6&f`96bhd+4mL|*$5H2pgom~7c7;Qa5fnLpyT8F2TkNdczM6matGHd` z6CmH`yF!*W3Vuc5I#>-FO`*cH5YceE6^BBfOwE@l1;1H@7gc^0_ggA+GPr!6apIp( z2__Mi^G-Kitk`(jNl-Ld*yLZE^_Xf@$Ay>p%wxycmI+&8X?Mh%^=bwgXNWf}ifU0J zwhg3h7Mm0W+!86b7Uvvujts%B)2h`%X40~1YIP0l?gXJjo45w};nVpf+&b6Fb61GD zGRY-peO`RY3ca15Z+_iud5_7jLn*-&JU3PZoR6UD*}#mXkA#^(EuJFSmvA5bCuv`- zYWqqu#rVG`vp(<}zU*P9s(asKCzGh6BT6eCNlw;}6SCHp7vhsmj>cqjw2|ULVx3NYt8*JkFl@gi_Ub@sCZQ@r;%vu;#~9pp${r%M?{T+e z>yFnu=`DPfFgBiodj++ZAVW^+*^}bU@BVc-K}1lFHZT+6@dIa_xP|cFE85|<%jx9L zGs~2p&WjM=q0$e_xs^+Zcz%4#3g6X1s0{E=V~#)hHJq=0n{CQXhl42$Kxy+>^a zx9MDd1XKYwo6IK-v> zbln6we~R3s5=kW6Mz)xeHzaFJiV@_Sg@qytw5xBmc3Lo4*#|(oR6b3tf}{1JnwHxs zc{KAnpq^iCtd@bP>)A16eT-Hkaf+)acqfAjgN#1^&p)i}CjQPgR!>lBJGvkb zZp$L(>cU5{IT%7U5D+nTq@Zf1ZKgVQuPVjShTfUF;4gf6Ul9hSmSaV5!pZ$wO`1ni80mm7Hb^mkTi_Re7TCuA zqDzo)eHoZt*aZc3#tP>Ws;ra}w$qQoq^jpgf4Zr(#%!8J`RM z_62U3<&kBWs-kN4tnXV`t*NMY3B(+h2%$}|ikoK7piObpI5mqS1 zb(_v(RhrD^uDf-8GeSk-|C5~o`3eq}LYgI?FQBoElt9RIOLY#Yj#DZ%N~VBl6G?$x zS^T!(ujpJhcIaFvbp)MbXsdM&FN2HCc7nQqsAf*Zy(V*Ts{Ug7#ftvDy&IgQi~`_= zOspE@dRb?q(=I)QY|A48wq*2Encp$JUUQiRe?M3lK4ljGvgCJXTO2XqqsPs- zb9hc$UthxW^JQvH}SQwA}SkjogNb9Tc&q#TtPZ$spn^Q-e(s5UvDoXS&h zMM#c<_2Yi!cpOGejqQiBp4WgT!nK6wE&c^`w6qO}E@FkE&Z?oG*B2`)xhU8$H7)=? z(Y7wXVCHC1 zl|EU2;G9Y4-PXY@2ev23;6B^P693aK)+ld0Y;g-?#VNVpED{XM2p(rCaUH8u^Hi+W ziSZpqQhg3}>ON(aiboDsYmHvJLaW(s2ETJ)lWdAH3E(pKj%nPRW#)BxxR)_>ynMhw z4<6P=lThgUJ@Wa!AU@wWD9ttnsaQcD$YGcaqD`$$RswuNz9i_bPlpS8XwLB0^qDHl z@e`wo>oU6yABCx40xH_oPR%Haf5EQR6FGOA33H6;kuXh*pM(YCsN_ypwK03U4|3BP z6(wmEO=&9-dDsrw-n}^ZK@Qhc2p>MXCHrxN>T-l z-hhP$NrFnLfxA;P4mK+kdpyOy=g;uDj9E716bO_4hm{qW)NEpmF;uj66I)WgBEkL^ zM#^SnoN|)RG-y)jF`{JhVCGnir2*z;R#~u6b0T*iLP6G^Pk>W_L0a`b#3x*k*0Z{Z zA6c=|B|r%R(^Gh%Nc89+>CNi$p_>GaC101G4lVpcujQ&i|B zmP`uVsezK3(apXbxu2slPVmwAXzQt0qU4v_N+0IiE;jtt(8a|DgCtca$6g-!L}3Rk z7Q8hBND*bTQ74Jr7zcmo=`9mekcF%tl)m^@iVt@ZT6auF+mEKCslx^;C)uWOqD(!STBMumxP#?dT14VgBqT zMBn=tFJJqz`O@)W(?_j7sDtz|s}EUy#PqS!2TbwmKafgf0^b4)*@5IVWGoJqp5)Y%%eT5+SG8}NJVmr7mZV-#vDq&Z1#&=bei&vTW7^K zgh8m)2GK*-{i{ojd9%~CFK$Y6>s1fU*fjX$q(Xe2LX5g{_At!J`W>c`nojUwn8;Bs z`Xqw&j+T@%8Jc*_L71R*xKP-9rkMpp!`unBkFp8WCaKg8`5ezQmL1K>v+!5%){?c| zK0ZiSKTuF@@YNU>LF7;plgARzot*-uZ>x^*VBHCgbeW`>A`oZwkKp_1^)wtKEQKSyz%s#=`-6puQbdmaeIzVcU5&EH1ZaYw^db>zKf zx1SI@o?3gZDd64F&VLrGCoBV4VPZpzdE>g_d09HR>Vc|N9I7CsvUX{#d%u0Mn{lth zK0=+R-6dPS%cYsJXG?5*xjG*!Jg#@NcWL+eY_&`P(?ex4OH@FbT{@6TjC&g`-3Tbk zoxkRxvx;1X)mN3V>8Zp-e1d@S;k#pAJ zC5(VMY3Z=iS*c&n$sem!@3qp>t~W-F?i*a1S2b;-SqNO?CXH%tU7EbC>=bZk704Y~Nhh}kR^V}o9kL`7sp$(R3$8I1j(ocIG$?&>j(!sB z2jBb9)<@rm^U=xufA<%b^)N4Th|gvt*oJcrdTXObC{SxskF z)Q6pSvqVNJNsm;5h2Fmt(gIZ$Sfn{3QdwMhMz|}nEHJ~OEVOFeM>g$RF4M+RMWECi z(jCVEyh^R2!tww$;|)8WtoSH#;jipVq@J^ScOX%jPI1d|ElMgCQpX)1JdEfa2JXph z)Rc=du5D519(;hbZOdQ+_ZFLrB zoHI#sER!_vY1>xi^>AB5yZLW#A`opZu^XmR<1AXr+(6?f_7KbM=@rXL)e7Ui8Z#mt zQ8c+)W!!s2WUUOw&?XV%hog-7xt;3gk&;PN;xvi!p2qA?ld~NqF5Ndu9RhMyO&g_6 z*+#Rl;h7f_AIu}5ie?%?9n0o~cRRE%RGB?YmTH-ObH$C*8k8dAe#>+j74BATvpKr7L_wblA>t+TXWzIVp%=@sfmwro{(v#w&aG6CzK6=TNhBcokA&p=Q`y zjKxJ;4(h4jX8UTouBYm54zB0hJrgQdpUZ$5b9BQCxyKtQmb{w0EAHq&c>5_%@`u4| z6wXxU_StZ#k_|;;J;hwnwmJN=+RS)a!I+V)Fkd`RH{!4kB!*B=SQ6oLq$A95xi^6U z7O11yA30TK(YvoWE1`P))%3{5%fjzCce8UOV!SJ4e+z#8BjZ&agsQ-)J|$+j`Hvcx zV}%O2DJVqGSM^6)4t21r{8~t6QxVG+sW7gH4U$nA(x&2NiQdgC7vmdPQ!qv{~w4UUYg&OakiNf&4vzBvPlzKUjSEYuktapBp6a- zp?SpJW*BsMK_nsMbiLMf~Z`IrmEFxGY6~e-4kqfFq#|-xFu4# z1=r++%bfEk_{A9@qm-gWDaRHvrpd`ge8chnzN|ak1i3QrsG8iZIWHz^T_bWY1Yz!n zK4B(&xi7~+^n^LbKA{MGCC-eQ>#sx|Zi0M*D(6th4}P{&_d zDrXE;L1SoBQhbTuCmPeDs@@M`<=)av<^0e6IR~oBIUrTeeR2`|s5zT7B(1KOTa3$a_K3Bex67junMizJ*CipOr#E2g;wec+DtRq?0gK( zJ)o@Oga0;BV2c_PtN4~?D(Bz-xj*ZKtMX2uD)R(taz{nJy`RXrf-Bc5svN7Ru+@$5 zq&n?DEmf9Sl~>X_pQrgdeXp2rBbsL9h^DExo-|n@)1^?$VzPdnG-rOXV4*kJ+O1QCi5DCMOp$`%r1j zGfdfOsP*At0h@-}ItQVuh zY)eL{l+QF)dB#K5Dk*~YHanN#AMa-P#$aD3<(r~k^!he&98~ghFi&^|KF1Tmj7KA{ zY#XW)u=X#xshkE-Q+WEC#37=YH-(C(g)}rJqfAtC+U43QmlA8Ll_H)j=VC3+u_z|z zr!BA!B1|DEgGZOR9>!V2#}R#5NgFSGlep9%)k5s(Pqc1{#6{*TA@5_Qfi5fky)!RdBBKdc&hVT;B@I zw`q(T05QuiPw$#-=IiA6CtIoT-X=MfWz0@w_L5nSOdqC?R=OVWas)|FFL6nOs~le1 zbamUR;%u=LQ%7DVzwVY7mK?hOk+Y6BWrq*`*%{C2pk^EXY@ zqJ^)B`QwRcdYI_AfQM~BL)L-vC=mHo90)R(_(6YVS)?K+@OzT|gu1KeOPhs8z;W%J zu&us-%~UP!J6y1D_vtvAl3>cu)UF&C6si_7*_I}^+%ZE}VZBFI_jIaKPVll%L35fU zFNc&SRj{pG!sZ+qcIP+pof_-Z-PhBH8@URq)-B$VDFkXBFUwRU4Z20)dL%3a@}?C~ z7P{>1Q6#ar*ObJ$OsldGe+tElTc(!}Z*^2SN>}1p_R*Jeh^%_m??=SBVo~l{Wzv z^^R+2#>o1j##$|8)X7sFS-NeqA0~=!3sFVVU~HyL8|ul{O|3{_rO4d#Y00Hbxpx=E z7%JKa6tV~$2wFx|MTPa9o;j0j=_V0vil*>FpTVML-$=fUy93*R;@L6Hv#N;QE97O| zU+3~vf?=@R)g0Mf6?;P?QRhAyH?nF`sf0?6Ru^EdS*}%e%4xSmbMC$=4Xd*bnspdz zpjnlq`PT1<=vz#HGj+|^U5YVkmR%=thg65hjlGH8ahNE}K;z6*g?l|b`s>Yd&Epiw z&z)*K1)qW`4?dL)AI%Yh($?`h%)v26*YuZp(#^|YT#o-9wx!u5+_eG|V5@hipF8Sw zCR%|-y>;8_9rAvtI6U(ycuhY;8;zZL;?g$J2&t3{yT+iKpS(Dgp7c|vOd^zm`?Oqu znn*E;P>R$g?R9`LRJ5@4dpm`R8~kZDJ18j*#|g%WNMYC2{8r)2mQ^*F5=QW# z{}e}p4RH$;<;DE*?wSvPhn;l0r~@@r=cgwVgc&MY-QK~Wuo=S{r&e*{U4?4+a~|Pf zz78GlBtj|pcIvE&B-5B%nQXg=hw z2&NZtH9*!G@3Sc*^bb$+uTDw!lowq zr6Rkou&3S?#bj{Yj6x<{iS4P|6hW%q;pWHB>Xy*m@3=}qAVdWBRAz)tHGy~NMEjcQ zmEk=dHbMCxfyT8SClk#Wx~DBaAw1=l&+Yu))s1aC8dMz_*RRLc@jZ2#BnhB1LdWPW zu8HlfkY^-xL;v$Cd7?}cDG#vj^D9aR{&P58KclPC?5&#!tC}gA%bffW4MkdKswH+} z)s4xhS#c9=v~W(Yjg!k?D!eRxQwtfe@me*t9sz5Yoo;=}(Y%V(E6A-atliWnav$|w^%>rVYKEbsf<%lp`FfE4VIg&{-#Jcm~3Ee0jCs-~IcDBBK+{|ux zM{hTLGH1Yxh$(04EpvSBSZ z%H`v3tE$B+aq#Qw&$IK>5Bc52ug7s?qT~DjC<$qk4#uaNf0L>uZimDFRnmV$Jn1Xo zKTA_JDRL>ABiq^in`}}O|G!kBOZ#t1vL633x-@1|$^TW-e?y#V_5Y*1=`8Z-@atnf zGAgbwyj?iixLiZ8TySTDwAnH^rN=Lr3aT{A#dVeBUWaAnR;)#LL!qhg@PoZ0gdl0Z z%Iuzpg{ss!2JJc0H-2DB_NMG>IlXrnRIHfE!+E&>`-?t1i#;fjhXi|@u zfwh|7!xF)NT%kS#6?7{;^Z};mHaTZ3U&)%$MV)Kj@$uX%-+$5_G_>ZCQ7_cUs#aZ% zs@ho4Yoe-Kv>pYiK>v!<?BnWgjQg-$?8O~#Hv5t9IQ83`a;9s*7(eLcgprzlA5v}PaATZGt*sF~;S_#{ zo=0Op@vx1}5wQ6TYc#{twv!D;r8fW--vF9i?R=SvoZE#l(-wE2hMacFM|NJBqpc$t zMlUG#>IRDPLS9aTAn zX%vrf+2h`EI!sb)SZmca9bUWCk7IC7#tEUlL0cuWtaO`+0cb9wYMj2nKAajZ+#x0k zbeHu@9Zz_kWJoXm2^~>k@ew{Y~LJT%#1-_?9p!QZSGnZ1;@ zhy6O=-Vf_#dBh;+U{aZ(#lh}!U%Q7L?>XqFlP;`{%AK>p`{y$PI1)3rOyDnjR92MccG~88rq}?vIVD-2Hs6r;6%8%Gg0^PikGENpVjZQ&PULC3LMR3%>>jAHC!>t-y zXry=`RCjs@uo_6_ca+_alzZ)6SaT}xIuj_PS&qEapBNq^N7Ji z9y;yJ(9bwAC#2g6b3OCE}2B@1ZR@tZm z))7ey`E0LUq(1X+x31b}Ng9B1)wt5L=RE8Yl0yntaGeVkrKhokCuk8VW&F0t51X|fZ^8i|KZsQF zf5KZzi{+n9nef8Ge~s`N<~W<{uoqwG?%q~@o_uoPH7OpRD_XoNt~xJv_jVMmFfI@8 zA0K?Mv5$7!gb{FtC_g*%r@idaxQoXt{OgD94lhc@t6y5cTf(Yptk1bxsS2Z#K7aiC z$J1Xw4hOGa4+kf2-wr3|!-vzO;ltURa{{OWX5 zc=h@Yoy0A=UxlSe=aE5=@InjK=1p`SjC>xLly|t~3*uWd%Sy4F?CYze;r{Y&Yt6k( z%>_cz`lAX$IFKT()&OqmKxZ$=dIM!!%=n9;X5zV zA-+=8uMt$2m?eV&JtSBc1*aFJN)NFn-O;hCB5+USiG znMtCsX`zO`VQr9S&US4+lU0i4b;^qvH#~S@#d+_z5>^GhrZRFlwMw2c-Nzdj)a88q zOZoJxDTJESBD`2NdkQZ4`}x|Oj0W#SM3{?bZ9U#FYss8bd9;v1qZbcUzcFo(DQP~* z+xo>naW_=wT|-5?KpTP8LaAW`5XJ6Z!`P}9K|$|uOKUI-2tqqk6KxKWZKfo+bnmW? zTMnyr)!lGo#0)q8QR8w?=9k8zn2h?gjR;rx$QuiuDSW-;Q25h^cZ6~HeuH!7yW#yxOTPtY4}4<_9q`@= zBI61>UuMHgPV8=&dl4uwUgbb`J=b_=Km*y{bL(sI4m6i#0Q;|Hg>ZrpiM8JW_P999 zM+RjZ{8|rE@EjGU#W;5z(6DWJMUf$e^B<%msW9F%=w?e){AVj%-hYl%eZ%MU16Wm31E3Huk=h43d6AGs^T5q<}|NUA#$KoYD@;+f(2S96{@77 zE=f6UN$a@MzwhvM-13KEKKW>DMokYDEpG9y?A2~7sl=KOV&6c2=yd(i%cV~(l)4Wc zcJ8_=>}~Tru{kfzt(#UiL#4D$C{=$Z0b!IR-1Ap zm67uF-&cbr%T!8FU8}__MTDt%#_CbW4PSV(-nGuj(ksw)RsmCP-#I4VB+cxBo!Vyb7unNj55(xyQ9sM0aEsN#cN6E_AbKlT z_`^gl2AarWB6WJrO@i;h=Ft>H7D+0Jc#|eSGc)6m#`?lvt#kNBPoby#Hr6eBu{qyk zj$tS@UJK$5$>VnI5-h5LwhEM4k@h(hE(p2-0srxK@s9pIdc41-A0PCJqdi-vd}0@C zAyxL$Le!@v5}@jl-LT!;D9_x$`$$h_hcMCM|#L41U?iBttyVT+;( zdpKTYOiNOUiOU|h2+iBLif1Z44jcfzS?`#75Pzk?r7JWnaGW6NxZRNcgwS<>%C4Vn zYYh6}H+q(JSbj$+&RgN!f>K|9`587u({H{CPS)oL`brCHK0c(#DudB+C7^nxAoT4^ zOt^|v$SNwVR11`ocX@TZ4u4znsE`s^Kp9zpHtPKb|0$}PwkLb6RFq29QYGjo(~${( zY>)evTs^)UX66?n+P@o~mbxb##xC&6fO_|l+Z76G8;QQbK?=O#Ap2xZpIT$s8vlxi z*4+9!uEwJ4dT0r1Kuz6HYJo-FvwUywQ7Fb%j4fRpKIU0Fb^4F~`Sh}Y)rT|_z~pFWHLwhcp%%)7o@J`>OO4(?j(#z;CQW*EqfC03WaK@eEDG1 z_gDX#nZo*GF|hE{ElM8%I?SdB&b4jQyV6rezTn<+<;X+x#X_^aN1U-N(IuT`sbDDq z+-$B8ytIKrIz2RYay(_sc8pViUtU^~OU2p_bttAAu}{={HQ(9MLAWuHf8CO7iciKb3o6 zt8Zq7&-H^($mnekVrrT0RO@L&SzaR7ocPo1)|bpcytES!de5&de6kbqI-wpiShI!= z2_;1pYY|J*MC2^SpA-D;_kTvCxZfVPy8@7o2nxxzB~Te-B7N*JRJ2`k5q2O^VPSxD zbGQ0K)*UvsR=anP(uxa5)Ht=xWzYxa|eq*)W> z~gp*n0b1b)txRm~wiwljuC+s;IDhh&*!3L!ZL1I&GflID{n(p&2T+a4^!- zcePJvrT#~h$}{dW1ZOsVqnD!-H@7|BV3bP(Pz4&mDA(Mt8I#gvOv*I_Mij^J+uw8j zt~VTC&qkn(&n4Neza_MsazTd6G3A>h6PaXOQ=RC}rkH>=h1GN^rvmeLA9E9K?ZwC( z9aW|yr*MZvhWaECyy3(ng3IUSE`pcZ^F{cYZwQ-Rth6M(U4~s_3lR+hhx~r9ugr#I zHcJ}ZUGLCf6AB_{RZEE?3N}_qpWWk9fW2e|PS%Q(hy=8uV(+)6Bu#eO!Dyh^cCE>; z!JJ^gP;#=_4=voo+3GtlI?E`<4}*HxH9c@InyS|2oT%J!u4zoD5$KDHWG##u&_Z+d07npo@BFRsr2C&3My{ObB zrsP{wJuY>RB@S|TlhBqncIYi>0B5FAINw;`DVcYK33?Gcb{U#|-tytCG%KDaM{%45 zNsUQSFr?ACU6Lr~DJnP#0uFtw?8&Z!x4JKak}p4sh3St^OT%n^s12R4tDRusVp(YMFA z){|D_Ny^!F#hmkDzMdmH>Fm|m9{VE9jb&c$JDobNLfOSFO=;rjDoW26rHxuy#ah8H z34N`=XM-w)y+#OYoYjjql^ioI!~AFRODmByf`lTuc;=aEd9sh_3sFBy*E4iG zJFn#Z%sc{}`;1pjJM}Em%nIW{Um!7xW2Ek3tlKHhndX|FM{0hkK7Po5WezQJBM*dO zdtR&!WzDzoZNL=yL)tSkd+G%-+0x2=d)`a24~l)iDdSw}#TKXqYV3@FVqkpHrMyH_ zMMvZnPVZ{0eZj#{R?~mpid`gxvda+_WgKmELX}u1Dj*9DyKnMT!U{%{w|DmR0zoOk ztEgY>TV5yh`x1nTX-Tf6wA)|=(iBTxqQYvlrM3xO$J=(c^>6Fm)~Tw%Z7HqJ z`S6h^v)_pm4op(uX_)oK;ux#C+F*45X_UqQVTuyjXoB-CaF$1mh4h#d@0uaB9LloM zqS9=bQp2MIsM;z-)&6XkUYFOUG6~{Yq?jt?5V+8u z7d*v-EOogq7-^9TN-A`GO!5o*A7kv7unQVmcj zq`iu46pS`d4a@%R@PC+l|Jb;$E6?*)vB)Y?#geLI#d1O><=BqpjxEc-l1?IbBwMnj zZpvaT+EzMBtP)ugnNTD{7A-MxPxCi9+s=%7N3-kRc5l0PJ-eP=H;_LXSpT60JXjCl zKODdfcz`q}3%CIf)(d#B9>9O7XWcvd`JVIcd#{R=$CG0;d$Bn-f$yBwVeiRJrfJEO3;Z|*YFDff=3hp!m_4B$@Wy-E zIx7nhg0q!D$O42gg5^6$MJY}5&)Xm;CdS4l(U%O;lQ7r@7@BCcGC0OeJ8c8C6E{!? zb%V8$H%JG435oinV>${|JA!8UCS#H^A=yjW%?qA26jC;V^^?AMUK&y+U85D0#|tE> zq#9(HsYa=!nk37r30YEEFJUoZGsqmG2;<2}n81S0q>!xMq)^uzOPf^N${A!!IhQ`J zrrxZ92^W1^K?iLq8Fx}zR6W#IP=GDPtRK@t-id9+9JHli+}&Q(6rf!;DX6Vz3XY{? zfOheupshu-0y4Y~31whg3%AM0Fx!NbK(?05h{>=zp3f@r$Mbsg*pNg$3vjY*5QJ~=NmgDkcESYx@YtMe#*T@y0Q);PUzE@8Aogp+iLGa{r8kg!@?xD(=5XokToGws!O(BDc0tH#jd zYW~=mJ^j$yqQewKg&PFBy-eP>;<;mvt8)MO={z*GDpW+raEn`Orz*)r=`8 zAXqrX?UR4yQ?OAWncVP;n|_|yfit4gTb!8`B|U$jG? z4(u4(ft%h{$P%^-49THIN0E^UPLz_&j#?~py8<`D<2R}s6O*YrcslN=Q@S;*{7ip4 zLIyCK=*Tede`wRt^lA&9xatHZC7?%L6SFPe4O4}z3YvV`Xl{Hs%q+g0<^(c8wQCFT zar%6I2Gc>04%rrV#H`tfn`zOwgkMYPdDujf9$qqHslwRRpHWx1rl1 z0jGn1A!R^5vPZH&q``$@_FWm@mJ#2ikeKvds56z&unuTU&Wtx0>ahT5>ERgSq73<& zu9Psh0gLSbPBkS!Vo3_=9D|t&rGw&DC}KXG@B)i%<2=pDG+G7%#N+2pN7PR-#M5Ka z92>_m*)SPqS&w07=eVP>uQ|lrpMKd)?9(M*ixH2ycaAb&qaA z#d>W8p0^ih66c13SzSorl+D6r-&$EM5gToQq@*ZjF_R3D%w`0dTU9L(-)sAW^}Frt7>cTV+l*|@ zZKGA&fm$9V2voZ*!j?MYalWO>7@iP(yn|q8erJVozUoUXUB-f_zU|=I`VxbZDVO9^ z-*)+J^~FM$A!@5H15fDDzJ%U(`Puq1`KnJ-6814Mg{rF)maQl8T(;@7&OFh#sjIVs zEkGCy*3_-*sqqQULD~#%mWvzYY#}2KCSxjQrq#SQz;;v(Gs(yhZO=gJ*$E7Cl zvFn`7t`qV4DMMq-oa+Q5S^KuL*hvT>JRu+J+%&JeBn)j2MWV^QMDy^{0v*Y$3x5Mf zvM48~;@R50&CCliTXO97vc6)I)_rp7=#s>-la zaKcIl8wqM!Ujj-?AD-g#9vseuv2;4>gnV}kfPx~X3OnKbG5FfB|uBj-*I3aQv{TK*4!N@-; z#`~h9c+uglA_Gpb>g8)sE&ZT7qtA?{K8==zH~8Gwjq+ywlV3N=POOiOf0Mj8PQcQf zMgnd}YR^lGWRPfa0?uFqZb!ONUMgVZnIg4;lL}IjY5sQAXL7eKvRyqX9Tk~NdM~M5 zg;H=kQhQ!fL`ZgBG9@ld2c?#C7vWshe-ZE`xM$#?u zlBUFNoI))!d8AHh;~x+Uc?}pH>pEHc(64@&fFGkHUx-3@hA)jJZzsrz%&7q}C*((| zCdV-<@mQ)9Xj&&IN_)0L*l9b`HjMBZoL^dwj`8(`pKwJDd;N6$y@qIxtq2#U1jX*r zq&~FIcJ)$Am;M$ zCT#fe2KmV;-Cc-&)NJx&PX0O|+h`et!Z1*l zD6copKztR1&wfPKLIXsX*lP2wnMX}>5R{$W1{|B%ZE~dCd@fK|?Ogf-*iR$I^`X3N zY30u$t7hhCKbuxQ*8z9~n`zzpYK|S$rC6B z)nzf;0ERKym`b-6)fV>9G7#rhFN~j@B`~8O_&B96713uZ)d_oC+XUwu{J^%0EiALt zqiq@5txYmz&a^+;(P{RQjqkfA9og0=ZT*pv{SAZ}m~9hen`qjFKvyLK2xUX#`M8dM zpIpO6-izPnnVaF84Oq`uNhC(wiZ)?+Ot1-^YvLf9b1ylz0fcdmf%l_Oho3@pfQ*iP zs?g1(ex#l|e@1O9xUGT?O8!B-HY)Sa9l+d$9<%EtNpd9qzyv>M!@5z{QN4RuCoeMR z9x?8Chamo9vtB3gZ>%SsPMIW5G10Nl7G>gL)h4nbKfrtvQ#IjJ9sa|Hf;7(Au{FM+ ze)BM{yB)0^#eNZfR97c4z8AEaJnggeBTc?6<6j|-jvt=mEq)Fv(C*0M*g^lC>rvf! z)wfLfa6Dh)H*dCineR}tyoz6=Z_JL4Yj;Pm2VIwifsq+}Vk9`ubuL^LI1&@$HcH)Li32GfC-NfX+>0G6h;SCcYHLuW;}a zmaR-t+tp4HPBlm8`5frNsm6I0a`mS%;ESIvv(xU?Vmq(`0J zR$3$XMI-k|BM(F)4@M&gq7i-1W5nL5h@xosGf^`-7Y#>~Q6pL)J{v{7_eBTn|7gdM zL1v<#MA3bRqtS@Y2l5<$7x|ltT2VbZ9vvZ^il!}fp65KNu_)SEkN8d!C4@H@MPC)Q z205zb961f1W80TKdWyQHqf62Dwa!IPQEyu71pLgD!r+pfo=uRcz_>baEb8{$6nB)Fse zO<1q1w?0Fu8*)gi?>J=?r%gw0SnoZ7M}BpS`hN}f*SB){nabUePkQ3E5z}_p&|fD> zX@xXE^0@)-Hj?}drEWe3-3w5!N2g2<(k;f)7q-`E(}6t?*y!yTeS7YY9^(HF=dp1k3>tVj1yR@R^nwzOOQCvB4*5NwQCi+n82LKvS%3|Hf8(rVaF zZy%*h809T!NGBda+Ee^5i}LrX`DCbhdpWvg_ZoNKiI#9AA59bgnY zchOGS#vkz~+cp(N{hp3fJD;@n{3!Y+t+_Lb_T0(yX`?m|tr+?RK_3Mw+rv*3)Aoh7 zysR~sb&kvJRyme*RxXC^JPsGnSq&4iSvxZLR{MyxNR~A&af_%7QL8MuT6`ho7{0gQ zLX7{tDC)W!ZT&uF+>W*9)5e=cFRR;eJ%fTjWje)4us6e4n5Vvg}P{63hR#cKB1wDTl#$#O%IwmLA)^6(`z4Zx-oXpl$8AC(VYU z_Z{$~*mvnobW1z_QR;KPqob~0EqYo|etMp;8SO_xu5$}$#4H@*uv&XA!hvv(fi+1x zY-XR^9%qrn;w~nM0mIo!kZENj?1c;D66{w4%mO;pm&l@c!ucqMyQH8oxgie;^ZoFcW_$ z6aQK!{`Djt-I8*7G-JQ^(_`73Y`;W1Ptits1oBD1ye-9)zRn_x8FKeCmL#7G!rA=@ zQl4&yJ(QMf@A*?uZXtWVphy|@y`=7X5q0%N(NCpU-Vd_Cr!1~~wg(LVBD#cA4IOdf zJ$#&e*SRU{zdHHqM_B;%+$HcdZ^_2XT2B&dZlMw_{?Grgl}lvp6}zJ;)f$IkO*of$ z&KaZbnoctrWmT`egSLty>Xx~PZr0Q%suJ-fAWk(Jlql=bKE%L#yg(%|8NRXTt|)3| zyDgpa_9OB%^|-mQPeENKN`jRkSA7~L8iJ2QQzq_da+}ny0id)77j8hW>Q`%{ukRyQ z&>8+$e!YXId%&7zau%1WPfk31KCrc%YF2k&Fw7=p)Y9iD{Ua~)Etl^>hTUcU!vDWT zod-=C=>#V(Tzb>A=(m^-G$nkW3DIdp#qSxF=z%(=U7`og#S{nPRpsj)RDTO8F{$oI z%P8)WpvSssR~N&n>zn-Ti=u9ssc46sjB`+uVb1nWI&7nF9|kkctJ4?iUCGP&kYuF? zlJ7J_W0ZVB)a$oK(U-hza8p#qhtn7w!$YrHbzc3oLk2*O9r11r;;45FislsTxXt8m zc>T9QJ;5yAMt$Idkzn_S{?f3GcArCLqx94qc!~kra~tj60^RY0Of5gi*0SR(nVhd= zbBbSy>;Fnx|BgE{*mtyH-w|Wqk-@%=Hp`KNuio1TZK+5rGu-S{D${E4e&Cc0FKzj4 zQHE1Wwed=+m|IF^_$8I$m{M&#Q!3`#@RGW^??8ePAxkmBQ460V`~huKIBwxN3t7?u z5&jR<&Yh~=$CUNap08}zAA9cD4%(YYs~F3w7|VkGOSs#qc(#TgY)1=j#QhJ9`yVi( zBU;~94muixKK-Ma5u@2+CX?Be=}-;ZQ5F|}FWUVr z<5Z>`5me8^;}jf(88TY@135`@w47lz>jFq&w99pO*jyy*_I=VRgFXjo6G1bSY>Dho zIxp=fK0?#o*_CVadq6Zh2_iOB>o?8O`MoHb|LnY^T(~{=MT$fox>9v_)|BRkHn7dm zg)Mt#1f5qaW@v@1S_7S{!?_$0pM70XH1D`=mx4%HBud$TmG+Jc&IDciRG_OlSDZ>Z z|BtDD=^5)2U!+~Y8Inz%LX~)33wcJ1|IEFzCQNBsceb2$ZpTvCeI18r3YUTPT{CI6 z?+i(EH7b0HRoB)b?(4y6DwKc^e=4qO*Hk|yE#K)5!YRzT1QFdD+<^eO7m-h+8fu0F z72UZVhIkX--dw|b;M4KyW~6-tC$t~>b!9Zg1lJ-dwGBt|A!RW%-6eP@veT~bO4i%< zB|lwqa+-dOWMyd>wMCapwD@;Hn|u>VI_FyHo#Q$t)1fio8hHuEvjr@Ba|Z?~8|{oS@I%eCdARCfm3^Oov2q zk$fNKqPx8S|9{)y?RzwB@Ei>c{kDCBx1;bGdbsxpeLaQXqK6Knty=SF*{Q)IgXJrh zFr}v2F8e2ajdrAX(c{lV`ac-IbW2~uRR&MmsZkO94$)7yfz*9AWggz1j`UO5(%4@^ z;iPJuL1OLexUk^#v6yaE97C~2Fc!z+8Z_Rr%iX9qU_||=z&y;~Q(#25JQ|&ho*;G9 z!h48uzll_|Q(KT>D+GgbugueS?uw+ZK_D|P(;9Cvb+NUz<5^0$lN9wo8%vzuUc#w( zHg=DcukjyMALXfagF8uV5`E!!Xw5=q`%mrlV}@w%yI^bO(Y{*oO&oC)Y=|@=^rN`f zhOBIlrWm(_K{q5XpSDIRqm5O5_YE0%tC)=VO-9)wE&U}Kw?DErvQ`?HZvT9;Q!Xp7 zTkqm2t@HJ|IN10^v||pQ#5tP#rO+-JlWh)v zirP%U-@Qc~%6AfnZCiQ$BVh2EEXE1+_GI%Or(W9-MPDRUSycK29IcBb6Je+iSdHxw zS4wHbg_U}ABKS0tKod^1S>w`DFQ@*aYqL-F``NtHTyY6a%$A9YvJdzvOSgL0r{1)7 zcovK$cOx}Ti5+jSI!9B_Dbi|Y>c@sA%GSylsAJ{Nt0D5FrCcf@Mzz(VcyMtAakhQx zY4?Y`8zm&~eDR=Z&V3`PyHrg(M=B>yQ?4{ih*u5#%eJ#6v#FHVr?zOl;M28lW7HW; zqNmv(Mctvc$Q@@fwntoRA+3df@PeY7#fdMz+u&7oXB%WsFjQ^O-iuJz|Iv;P=$zdS_~9&u294^BtufW0VB22Y6~bNE>ZGjUJ4l5AkHvsP_qY7~=nEkG7Wl%tp^= z-28Oi!_w!g^tvbS77oZ09YziqG=r zXL6mZamgX|AJtk}2AS(RQ@hNx%E8B1wNa^?^TF`ul9n$j{4h1JNp5dX=2AD zt&!E^Y@1@Ht1`#)IPLPy7SX= zGgR)}zQ%M?i|xvNpA9cV`CFf@#I{!Y;m=m~2DbdRt!>}Zo_l^hPNppn{Ceyy^T*eJ zeVJ`%m^PQ>Dy8|QFV(eZi1baWl&tU7OT4WciXWYR?;$m zVV_@Xi@;VGo~c2UwqacB-raQhRGdy%L4X&*S2tyspIf<* z_~a&~hx_g=yD9e-K-wv(>51k~QOZqC>fNO)yI_jlkqQRSr@7QIbAIG2tG&T@mvV}W z(0RdtVeS_HV7qFEvD@;8CYTjv>)nq1gEKR@Rh)OmI)pxc{iumQ>*YzDGYGBSw#!my znrKHyI!gK;bG|?CkDm|3&j;h@L-F%#@$>8P^Ecz?H{$31_<3*qyeEEsHGV#tkV5H4{4TU>DbG!r-98vVW%8_ZRuzuiFChm!uXGNr@0BNC{J03 z3g>B~!uu_Jz`_SDyIcoXm03Q`-&a)Cy_4Og$F{wT4+xQ(q=(S?Swa87;V&YC&pWd)2|eZgsMS5wH_uAb;-FV|T|bSg_- zo{n2fVe76%Si5L2%f}5Cbh|o~E8jJ`?M5`e9GCwx^TTl{rnhuf=QCJq_oATEDcl)_`U8 zGc!HTLjEwD1Cp#t2CqKwpQfF1n$|54$ET+I+9_q*nbzpBcrJUOQ^MadJK%b$3Bsp? zHaQZI$?trU&cS3BkD7D7JVlr^Nht3%3J zR;mw7UHEy7>yKVeSANozF8!n_UHkEr%Kc`NQhncOOUbkbT<69G9O}Feakl5DJUMV-J$kUSf4_PXD(6LwfqBHDHH zBT9D#orp%OuT|U2`<5xMWtn%OF{N$Y_6Er{cB#3W8s_Abrc>7JkUeVlS;JS;?X{{N z39|i2cON!_hO*%;(d&qS9Vs@vwF{u09iipgmQ`-*%xdf1551#rU$hRBt1XX6KGeO| z9zK-B9?lpr)%h*jqg@W|4+^GT(1#;t!7lzD^@~uxA)Y$w_fqpcNL~NmlcA}NS*@wU zR=#8&b>9O{)ZMRrioqLkD?N=)bmqzln~)FjGH*E*!y5Jaz*N`M9HS zqP0o%z#*>de2dY3kPBmK@s}C6_u}*28tHP*SEJjpIzPqsJkPbD@8PSS<=T@<1YF@f zi{BmA3Q^Y?q;&=g3egTieA=#li=mxe5r6yYTpX)MyhQ}H3Zsk>4bKxQz6qN2|A|QEJbq8B^AZ|Y%FbsAHIAxdM*)73L54b>`u+^iaGzfLT<9UIy%TmKuJsBph z&t9W8uEVj}mO2}cS*~9)(L^ENL9+Y%wCPi87(59z$xvp*5g)_+FiAJX`oWQulCTu;J{$@8?}cA zD@8+Jyb?cOjGtHI=gXyfw5NKQN{f2b7GLg;^7%>y!ujq!wd1*b48KxRYOuEWW(>Gm zz~?;?CteJ>Z->ZR1#n;Lr9FFU-!bxHd+{a6R|We^Eg&x1Sm{wXI3P(cE?G{sQl$CS6V(%9td#GGy1oPU=s3>Jc*fGqs@tV4-ZrXqRPKk!GRK8x716YX&@0RA^Y#gmDQH|k+qB0qk~qlYqD5S3{$oCmiJuz ztS))Fy7YE$WK?TQRfblnRFX*;7#L918j-nJEtW?ZW_>+q8#vIyo-L1nlo#KXlE!UL zW)CA)TY23pTe;@ubLE;uR9m{$xG|(kZS^LT+tM8dlv>=H7qoXz6_{cY`_f%5@KQ1A z!X8%g8vn+fS*?5-7W?}F_V@P_Eh}yOVT@PbkXVLXST{+mTW_I`PqS@#NTGE&6rYq@|hYN7~u)1yO1V*z` zTlx;T10}bkU63fzg%tc^BYFLBIk6jS58teG1A7SV3d)6?{>_mlV_$+^XQq z3T{(yy8<>Uq5|iAQGsQ2RKUNB3csO%8#PhkZUyYOLhtpSv_z3} zC&OE(@B{uBQd{!azJZ|EwRQ;=8Cr9fR!=vL69ps1jvpjSbkf*lIV3i=gP6zo*6 zOF>mZO~GyjH!0Yo;ByLYRrr>r3cPRLZ zf;$!LQ*cl%Vm~S>@U~x6V4o@~98$oGe^G%gn5e+ML{#{J0(NPl!dV3k1?LouDi~AH zRKSK%RJfpET)~8bA1e5f0xsc11@@hy0?UJ_z%nT+%qaM=0=9Od!kmJZf_VkcDc~+e zRA3V_DsXW+D*Qyj-QxZp1^X4;s{sE91ypdqf(H~lsNib~zOLXQ1;44_8w$Rq;Glws z75tWhZ!36I!4U;V6+EWkaRtW|99Qt$3Vuhykb)Bmo=|X7!LWkwD0ouADFq`6o>K6% zf@c(*R`6W~zpLPT3eG6_zJebpcvit#1q}t~6pShuQ_xg!Ucm(g;|eAe{7}J<6ih0( zs9;LLw1OE0KUOfSU`|0x!MuX!6kJkpS;2yWpD6gLg69?do`Qd*;P(|U45Pxbf)xd; z3f2^?E7(x5so)ys?!p1KCzJmW$c<4X=lY@o7+24Gm@OQEipD6f06daYF zKCa-nf`6poh=OAZh7=4d7*TLq!J>i)OJ3lA{$cG35oWLu)fF6408Zh(NHL6k0pE)N zb6Mc5h~N!2N$bo}zT~P^%f&8Vjp48j6qy`rRaRm}n*{|b)t2|kD~aS9Vz&l09kL97 zb`I}gV4y-Nn~ll9XQ`ATxp%Ck3Pkd(FmgCLzs&cPSfmW|H^Sd({?71smcKFn#`&A% zZ-&1Xf0y}tzR*)$TrAp*Ut-ykXU4~I$_;e)XknJ`$>X+7rcWPZhQMo=c z`(SYKoqSKPHSZn#{EGN~SHZ6o{IXPp<6rSltb(hOy>Zh?M1yi5Dd8=7*Aj+H5lj5i zbACyJ;xOIovUGuE#4Q*^Krmf*J*@qo0PzJlLX;^9TEq%kdf zDtP`V-RFxidet$m))rs%*o)A2=qr}8hMckkc`Bf{(qs zf+tQ}U*aD+-)H@C4b`YFzNT>f6{*SE*?O@L$PNF2#`r6hZZGbtt{%cyFHxqtI?Vn+ zZRJdL^=!FZT^}#0{OTbMRYi-%E);z6HM)H5Ed^)cMF9Tc-YV7|(YV*m*Ij(w64&}E zo%R_k@X#YWqKw$n_*+7W#a^atB4Q)=o`r8&vtO6)y{>^%Vg!|?_GP8YN4(5`O0C|+ zh^%1aYg zZ`Vk+ByFJ;Dn4vADTKPPmTuZpEQVUWZVQbdl~9918Clt4lfvR!g>-&^)+$mNfCU-k zuH3+`$}ZNS2=Zsz$iXTtt|1u=Q>EBDNa_zuY~k=9eX6{hi#r6XE&fq$@lOy}37!5k zq=&3lu1jhM36_3yhgoOewy_Z$x9xzoaf)5gg98G(tV`)isi#=5YJfmQW&DwYnu$QL z>e9h3qBaUW|!3? z3JL@(;|gXJOtLctPe=G?-E^$FddxxUSz~xf<(7`P$zx+Gj;t(($SN}v2>fGUm#JUR zyq?C@kv>}hH*%CsqAQDOboKUnl|}E$^I`%WDA4c{{J~uwUg3j(`7hSlP3k~mgn%F| z&VM<&iLHWT!eH>HbTTNuRWK+%G!qy*8mvH877Ze<0%X-8t9>Oc-<|sq1uu!NG6?Av z8I9V~5dY}70qr{~DamQXtzDCnuU$i++Og6=U%SS9!(v<$!C$iT!Gym6=H?rQv&jrz zU1|YX8qtVZ8Wxy`4HgHr9MsZ=*3#+P(rOXYumDa!8-f6|Ge+@Bv0F|K|1bV4VDybx zu&Ew$a6%0UYjqA@U7W#>9Wm3OPAq1Fml@KJ)IOftr5AjsNi`-hBeftF(r^)5vFObxDp&O z;KpfGNOG`PQo|WWtzM+FFi^qE+gt3DDYe1Q;Qup4*r~wris0-teL+nt8W^>ekNGEZ zYr~>bsjcmkcgUtM33gbJ43FC4UzI)PJ7wm8m3oW#nV6Zs>MwRPrB@gKm)hdLsU7VT z)bVx~3uMIGX7MgsZ-i=UyREXT$YzIPwZ;Dpn}Uh+I&hgVU)C9mzhF8O!Y@kdG$Bh- z7Jt!K?7`5F7P7%>KAy4Oi)BOj#;RYQ(JnU5IXsu0n@5i7!?Ek zu(S9daLgC~d{^x*pYgO&%P~j+_V1!w7XO1BnSppyT@KgZmg|Lq7*M-QzQy9-((b>8 z3wpDclvU8%S2V$DbMRjI+qQQonF*3^Atrl?DM-@=s`M6()g%A8qP&u~%)428i`40@$cbct-3l=TYFm@m)MylLuTi(qfBl2CGu*^uMXB$KhPfraOv%VsN2oc)?#m$ z28w-yl;Q8~3I(lzDqVgRVmJ(?fq@;2{N*?Jr#VEMaKw-Wpfz*PmS4iitd1x+BXjc( zS^fs1RlKa(Qw>{q<)OH^^cGAI^*U;m^a3Qkvo<-E~Ypk}kDq)8iq8}>w zNWsSnu1jaNxyo@00cv0DF3Hn14y#L_PzPbjhVCbnSdJ8E+FEAxSC`97|0Vv|4P`bR zD@0NCH0~1_T7{f8Z7Q3QV<2l>n(5Q}kCq=)3ziR>yR>`|1F=g-NGKRPn$nY)d!PV> zOZ$4*F=yjau9mgdNF1sZ0oRrf8Jq`oMR^q`hPW&y6zIf7@hgl8%zuRWKcvQJ+{l<* zqe1M_nmLWF-|~pIV6|w1FkLsozf!T#*C!8pXR&u+kn^odsUM8$3APId$!7u>&{GvG zkI<|E9`e$cM+8RfESuyYRd)67s@PfwWJV#|*>H23nl!+Pl|fRBxp(D@wZFRDLOv>TL_k6nIbvC>N05WIv2l56 z!s-Wt@~}>A8Mz~3cl85R{k(!jbNOxc&0aNX@Vr;@yd@Sr0TMY^J#kfu745KBmtSmuj1FEYZI4Ayu$QkRKGloz1iIhER%O4pVuE&N}Tfu*U)XMW#rr_8GC052Pu`*_f zaZikkC6J{<1%+fQ97iy*<}APCU9tR5PbBsFWrfWfGWn;4nhmq%cXzQ#lK~=c*w|HF ze%E^h(_dZonf-mMd6|bg7O%(p+5FE9I-e>wUK0;sSf86Kx$&B;OKthXav48DvgBXI zK@zk6Wb(i$xj(jgXoqK)$is+W4$XR35MGRN#xXt;hQY`~+vUxz9?9exj68JG@fpK-}Q7nzHC> z&Z4(u$%9#jf9CVHQoSyk1j&;!Eq_uCG)F>R38?_-=M2VZ8zA8?WCvO+ z(Jc`tWu2^3Q$GK>s5e6*Ws8_-OvPPhlS)z+87GzFSzDVlVjdM)RFnRZ=vO}w2c9O;kIXzF zYqEaOl_Ry4 zcuG~wxTCuaOv2?uYV`w?kHtzAX-k5V-z9N{BqQ>m4fB=LHk?*YLqn7F=~7kuSIFvP z{+TE0Q5%x1;?DeY2#k*+{!KmoMub# zhwv;1%hs(cd)2L$*8Ib!4+Z6*4VKMSSt&cI70vTdQCpISrsmqpUT@!CGo9ec-0dPH zhoun$7)KA|7%J1lY7CgScy%0zH*R%Y3I#Z?Y-UTq76mL*TIgR9$>XKIV3>SX7J;F+| zCywpymyujKW(fJcoaRTd`+pF5n&_03d61P}}c|#Nb*l|LxG}yCTF4d*3+T5{9 zN+nC|u)5=fV;qyKlh=g?)ULaT+oMt-+Eb&wuU-go&sGsGz~K87wEJ|1b+Wdhd~_Yl z_Z$B3pz+3uN*AT$)DAB2g@m?2%osq&Y*DGyZ^QT)?ZM1IRktc6LS{1BOhvGgtDd#i z`;Z?}O6~8hv*~(7DJD~~tEe}odbW?^F-%jfN7eVWm7%mt6hra=W#mYNE`y|ZSt-uP z=vL3Lc!e79$FS-c=2g~)LV}i~?lc7xA~|h zbHmzM)-cdH1G2J^BK<)Gx@b9=NCnkrTccn5^&Uqo>>G4frzgaix)h!d#3 z$J_{A79*Q4(F{A-IK+_xk=n|p+NZM;R{AJKS&_Kb7vvS8LuDBBhs@s9IQOcv_+p%V z5v3NZSNVI+M}Y_5*t`_61AhTVWJl=96aRFtTKDSFKYx@5y#tAEHSB;nTKU* z$*)D-2z!`VS)}#1gM){BoSh-O$~J0J=jw1?yMU`7K#7Klgc_zNEG02D(ek{BadtKl zH_>yfiTTh(Ce9d4f$GY8s0BK3H`U?O4%;^0%5{d4rQ{G<1l%3mo)HF3y(#2(^~S(1 zCVbECGCsNuwM)1q}ZTB|Go%G>GQ6Z6A$HXpc;#vodHu;yM=0tLjLCI=#U z1~}XIcT>IEz&>vrK{{#lI;?m$6sgbRV6>$qA$n1HC6ro8tV@za6S_@gmWeBXMFDfL zg0^@Jf|>YrW|SDi2*(MpwG#5Yo*lU3b{a;A5sQmq+|okX#C6&BfJBjj zuWEH|uuw|kaqNS6MhJKAR3Bzk2YM)u&f%y89f)Hwy{I=%Cx?bIU`u=ZqVABvv=E{c zQrC+#QMRraE^JlZ9Q9=|V#=_IA~_c@GMo=qL%P5u$O(}6BSc!+WIlgWJHQDd>UJy# z-x5(pN{bVlAogkzOR@5*s+OuDQ7MA}pdYmP=2eY>l~?28Uq*jH6w9^Emn#h3G)4b+ zq^}#>3AU;g+X3L(*a4E}?}=Dq=6UO@v--JuN_>VM(>(D zw$RDnEHMqs*H9x8LY$H^gTH}wC&bef^^J30Z=J zm}$|n#-rv=sV#NgQkZGOiz_ihCgy^40>EYz2>_v*^&+|pL&1Muu?weL09=-pcPpN$ zTqSMby<5b`a3ZWsG8u1ZcV*>`GCq*0-$AEh%!&Av@eK9&9Egr$z8Jikm zDNTP$p!~Z@BhJY=K-o5WvcR~Qofp1|38`ksxb+|VCTK@&G~#aTfLU)^eE~0YYCP;A zV1qSieg`;ou?g+xIA(CFH6{HH*W}wZmS9)tO`TOm^VdZOfio8q@~FlwtBcpB7MVF z2`jH_Wfj+0VNDxHMa32$HyIk9nidWKb(FvIu43Ge_+=T-SLbGSmbk)U8%vYEdNMfr zWyBL?sROGRO<~t;(R0mNxORIH8p!!t+*@GL@!1qy-Cz71@DwaY%N@xq5j=`J%vtFm z+@4Gb8@Z119n{k#H;-hn6BfDKg!|5Y8>n#KMzl&u!TMq+OIXB}7@%6QSNX2;*JbO< zRa1a0l4+7$fc`pLYMOCvOlsltOIt*({Bl5v_s|0R;XM=%v$^sf+F<72V*pSCv)vw* zxrUS{&`2wzsTVRerffa9rr~C`Q9vYlwLn z+cQ)R{2kOE_fu_!D~E=p8u6jb!Kx|cM?UOjZe%E4sW6CfLBcC3cKi}_5tU}Sy7Cc9 z1dc6EFrzwbiIx2$NeT-CBE{Q%EI%!#fdS*!e56u5gTL{h=EYxsRE zC|BNF!G+ojA!_BsE6;GLuCmlpORiG^+eWs$RNfB8E0`6<`#lbyZ7HMCNBf;38&L6r z^13!%xaxq_1(l}YvPYBhI z3iqn>Ef~<=)M}m8?0~vMds9hDCNmGY1cKe53mK*Xf(cQdN-e!qvDj^$Y!%nJ!PH|( zsG}{R6eYO8jF|lfH#h%KF_Nxack{rWxF)UM?vjCLZBdb-U8w5n0Z$xYqm?&G0qk?Y zKAS>rx2{^f9W~AEB@TB25ms2>@j!37{5lccYFh`oOh|@F=WYwnT6lmfHeD9mM+k-_ zw@<;{3J$0ym~x|XsHzh>9U0g$%^}U*MCm4nslNo^{YuYaU&OX;fK;{MHLX6PA#2AQ zb|xtsyaP28QN=Nht^|bGa82ao>*4=k#g`VWPGhL_z+jrFV>HRNT;`yp9a0O<8(>E% z*NR$3J6aoMC8#5=Bv@ZI?bSx|c#Ek_-`cLfaV`0%6}C*(L6-foc6K2IfHmrnFB(G; z9hJoRLW3W*CC+t-wIvI&wqyZJW^r2tg?&9tb}?39{g4Y$P!pn|yAV0Bh!U_!xCDeD zdzcmrtezNZL@nE6(1|z31T-$rga{C}zYDo;{xc~aW4oDuC=+rf=J=o; zGuDP63B4iy8Sx=8X)f20w($=2)=@@_8AsrWckXCYAoPH69B!2e$Ep@l{&@!q+y0yr zW%P1Z?}?!=4<*>bX`AOT~-9z4gMt*zV>6x9K)J zLU!+({tEwukFybyt7l9GI+3!L+kq5Kp$3ammp17vZrY;$2t^Jtfp}M_JvMM41co(F zLRL8wtDZYFd`G;w=B-=YTBG{;XK`2~e#YA)Xg8BAR!7!EwVS_m+T$*n(_hhzbLD;d zKPRc8akF&f5D%vqS_WcJD2pcjuJ)fbuy)*G;%v$K<*fBSX^QGhI1#EFzB6w4VnLh8 z6o&`sD&|90=VlIesB6?2;W)cO4W$$Fl|T+!)N=mqFMe#4__&vMm5&eYVCIh?fgw zjqN|^g;o>E=iRPcfgq$?(=D=w8Q z)zvFDNE~_McC^|DZkS4AS4)h{i2gfmBl&r1!x^V3cBeP0Zz|LxshidSoF$r0#Q*HuBIO?4% zoCm8q01U~1!2Aw1`A4f}zAobr+5(w~3FZYFM6`VKfxuS;4vm`3naO+x~dBvN#2`*0S71%YPZja`6^>f{@pVRYx zH08x4M8O1R=f|VNVa!3Cdg216CQeS}VR{@fdh012jV)BcLQu z&`~fHiV7hRKd%@R$!R6^n%08)$_Opt6&_UjiUKJat%prQ0obLfu3n=Jwe=$~NoU*Q zo`*O=z;BiyuPy&K`*6r>TvV>EzNPc-GLrz4hx`dVbx-ZmXVJEVBjO+*4%ec#{=t|RJyx*S)+cbN=8#+f(+6ROK*3QHDp z60qfYlFl5UHZnoWwpb<#=Cuq5IdX zA1U})!F2_n*jj!qk_u=!B$*b(m0z{<_z^hcx!=FUJ+NwE-%}EkQ)( zUSKfC)w(TUR;TSSoAA$2z>G{6)=rmvmKGO0SSmqK!iR6hsZ%9S|94W8$I@{@ZxK??U3l*jUrvlTO@3m z6zu8maQqbmj+aO7Dc(HTo&H~2`bG&_>3ZF$r7w{&F%Z98PH^jRVXJsU&en3zo& zYiEmc$4F|_${Iq3{WYc+oi+`XJbBuayl7?0YWok%FDOy92Y1Havby9^TV1@vA`Z@& zEbJu+UJB|u$ug@cElM*JkitPH=+PF4) zbjPy<(52y~b%|f6l98HJrr+^6WIn=?GMi`G4hua+MWd+iu6v$m#SlL=W`^_pyqb)Jd7C0}B2uc+0jGpxh~0QzF#w^a?PAd z2gvcE5gIe{lFYCU3G+3xQXal)U1e9a*Irc%UQzIK1%F{|zd~{Rv3=%)t-Z|f$3x&L zs`kJ&TYE7E^Xj|6FKTo_#X^y(uDxX8RkF$VhnYnx^nw4fKVCEu{M^F7Fy3CW@G6Wi zeLxTB^&0-!c(iv4Wu+Cd&K=qnl5zhHX+#hBB)E31td0X0r$rCmK+=&Oui9X?mp+t4 z^`OCmp|?w#j%sVy74rEZ#Wf0Q+-)V?uyFmL;>&WzYa2eSTZ*rE-0;^ecU==hZTXi9 z`Q{QKFNx8oYn*9OH&1N3_#w^6_ej3yfW2na#}~NFW%^>I?Pa~L#LJ+155HD5-)Zd) zn<22Bb{%}_BW)%veKepU&Re!0nMkiIq$Sd`Hx<$bK@KXU4T79exFY{nZBVEITcZsM zcPXR|gtUQh4HuCS?wgd$YA&z)m?)RWEivYaG3G;>^d_j%a~>9sTR3K1^0K9-7yJC0 zb?{r&rH?;XWR`!!y*c@XisKsUwm}SjL!0a_5J{vv795+cbS3=J`;w}j>ixHT1Z}*c zI{8QxR)>C`+7Z99MIx|v?=g<`h3Wii_v0x5Dtt{kVJlO|IFs)kc zYd|F?gw#o$Eo)q9f5S4*mgVLuZ6(l+ByO}EtgUdq>oBh3y>y~SDHwoQd2Z+mLA8}( zGtROkb5fegCaDrhJ2Q*v*5g=gfklCD7$lOG9JOT|Q&5sSQJECJ z30}$iIJ>eLsI^=D1HLHmCs5pjAsIv)(ws4?KuEH66^j%3h=a4t8@eT;nAH$V*%BNe zr5PpINu?u#rY;?zSZd_PwQ|>}O^iVrp&N`)+6_w5q?oGLlIcJ8^y7kJ+}i>lt}^U5 z(KxTbCie9sh~F-K@#LQdfiDd{_Mv^fEQ_=Dv5n}pkCj+IWQlbfdTPenhw6>B58;u) zbzS61g+addVc7?<)+~?}lhuU?{iK36n%J@jqFoIJxK)T! z1+r;$$aw$6dH;mbA`}f89y{tbqI|5>ZJW)NrJ!7~7P5k*dzndmU|?w!i}CCg2}FYh zUO%L8?GyO~RxKz+Y$2o~6PyZmEinGj-Sa+2+&#<~)in9t<%I+(#7rd0Y#gJ2V zX7<+$RJSg-W&L(TuRCJhQ0g(I0n5_6-qm&aJ$l4h`z&jpW$p8al}gjw9&9Wqm>~kCqHRz!;=OHhqbznpNa3rLoep7kv1`}uxmO7ew*#&c1T2EU-9`V&Z_g!Zs$qu2l$ z^FjiFq^apEZUIvgK5HduHU!5RRhsgjR!Sqas0hVnSu&hip=hG^961wXsvY$R#JO@K@kS$QPQ!|F>& ziF`br$j6e2e3aq>t_vnEsfMU4L?;M5kyQ*yW#xcWR+df`NJ*L%bVl=!bs^1?Xq2ry zH7%B31{AAS3W?>H0Al%tG=eetSuKI=9(&(W`YE&^!@WSo%N9BEvVgZeEx>!M9U!*v z+95g!i!~*!F5d!-bqlNnF&=gqkUK&_9m(KbTv6K6DB2$@VGvWy z%vPxMFRj7_r~%pmgP9Hx(o7V$P53%LlIutA`YY(5WFDumjwT|KtkESrUikB23&?#k z0n4$|ZE<(HEoxqbnhOTiz|mRfn4(F7=_16bT|6d81?(~nqhqKx#9=CqYQ1L&&?X|W zf=U829hVc2AwfkUE*>3Bm5Rk>@pdIPL7Y;Wa+W>IS++Q1*u2|v6K-~s%{z_>B z%B7?MSVUo~ZlRNknNlik2C1|eF6x*pl?Uckgv-t1m-~sve%zRlbUWs$xG|Q%Dp?Bx z9z>nIixUB5lc67!$xN1HX}8>)5{pviC&@MDLbn)QnV(E{(lumiAhpxV%wJ?cEMue% zkTKFqXXY=GZS$9xm(TKsoS*e;I191^Jz8n5vy)X_XHToT{+a^zw5scWp@8Edc^}u* zIQNvU*}7rAg10v9A%M!Tjer!-JgHYLv|YLNpBn?>SskPj0BRd$am2$gUzdBdQO1qp$nGHfryNWv z)(1nBTDHJw^n{&;d>VTDkk&3 zk$K<9yzgY*Hzqa;Ug-T8@k2wjwcq-Oj`*P?a;&G-iBb}%PEa>?nYcG@LNHngR5xrv zvT?vP$HCCx6IfbGC`A1>Y<0nd8u8;d>g?HT&8H}x46>0^5;d~b;KqX}P{^QUFU!0V z4d19+rMryJ4Q;uJ1BF_rs6NGaiPOD?sj#+jH~56M<sYcgxjZJ;VW0+a||G9nUx2 z(NT@I#RDq;O4OiLjasiirRkN>7`c0K9>uV2Awy1ED78`dBbklc)i)crOU-wQm0g1+ z{$XyCq?(}>+r~j{5^o&riCFJ#*wEBQxwRGb=H zA8{lNRB@ojrMA~MMiltT&c-p0$a6cmJFr8IVsBN$kP0biPvl`snT=z_*!N&H|Ca9} z$0Y1w^`RRv1H`hG>ZEDotf|3S=lQHLb5^Hhw3aOrHdeTlf-IejRh8J()jBoWKR?H; z&vI?!ib0ImE4Jmo@d6(^q~DI|&p)4V%vOvWFVGPivb7X@QTn%8_U_PwocKuC_F0w8 zv$@Taf3^!6Vh*yEU~S{-7mCF}AbNp>hyIjg$+mITb{Q10Bjk-&q~BD@7f~QyvIjBo z298?zl4Qa@I9;IqZ;g<*B^lof-+0?ue}z+KPUou?eW^x6{UsNoJ!%^-n=D@{LS(SI z!3@D-d4m~(ajJIG^{-+SP^;G%M6c4l(uP+VEdpU&RRnE*6$PRA{Kw*c6Ph$e7wW+#!N>Q0PTjl%yzz4_vMXi5*%{dQ zdAYw%#cvDp7bN@Ye8bOE6tJkKgpHq*tq+-4q|8jFEH6TL#R=EmSNKU4>58PzHyxNp zEb44ri`ls5=JZX}ORQ?Yh=&RI4M6byhB{CkrVP6YumkG-ZO2MaN&opDO+iuST^26^B7+gv-x}DT@p5PZ+ryIESwOAvIs+M z2r>o;@LdUjhwfui|3_ZbU(S&>R5#vNd#f8CNLlICUzVzv7S%24?^HKFWQC3J+913k z7KlMmc&H7CehvsF^b?oRTgLr4`j;DZK5T)Cqj%VVWcTOo>ZWavZTw0yL^M*GO`n(S zLA^Rn-~m~k3#}fqL$OO5yy9tkdtf~Dzmvu!A%PGDi~0p{lLxJ6=?r%^KJzPyrI%X7!fo2r(0%2Vnd?R zA6-gFwz@RUJB0qJR`rMY6-ArMH`QXk?s`Z~6DW_i@Up~B<$T0?Rv-P)F|#Ghbd^As zKqOS6Zo$HA9x;o+vs5qeoizRfnK!MSMoDj9sGtCP&%!V)Wfo);0n4Cl4mq`hF|~un z2zMfc9~jZs?h-~wz`s5)VkK9O`D-w7a`RYB$ezf42y1|Bv?gKAz!n-JBVkr@^N5)q zc#zH9JZKL-`fjOX5}2m4P39NMX*_NEO$HzsK3tAGXVzk7b9k@xWiJtO%AQjun)fKi zU007{Bz*}jU*@I`7iGK3waqh}f}0xBDW-ROd6ETPWo-`al!@6qll&_ojJ^5~vXtB_ zgJ-RhErKrXW4RO;x7J#Rj~I_MN^}0^8M_IwdB)Ef;oJ@s-%=&(FY(E9J5#kvZTE2V z46j4Tr9ucc4(#J~U~7c&!AL3D@>;UCq1);DQ9$-_z8ll-E|@%3cMVtwr^f$w}UtI!|M-5Cpi7p&F9NI z?X7uRnAl=Kj)oOC#$W>y3Z9o|XE_Hs>1I4BA&nu01Lt(D?oHfB2|Z3I2Y{o(+NNUI z12}|&(l~|*VfDA>n$@$_)p5Ov(U#@q&QfKdq3S7O^!Q-0?)B~E3*AN!%gR4KOCt-w zU1@D@tO|+w7O}Q)1$XPMeKj`~0DB@A>v4-}o7Y_8*Q^&-y%)3>PBxZC zT?8}2wyV5+t6Ju8^F^9;M3W0@UgI4#V)}A)2~ch6$F-&T0n?DBA2X%_lmxMPT9=M0 z^=@Ex|48s1hB8=AN^Q1K8j(SgN&ap=iaS4`xqa!!`XsGVJB^T1yQy}5fVn5m-OVqi z31VC<{w$`)T^3;27Cwp04@a@1QmxjDswqw>8-t=RCja=0{9;fvlK_t3(BV`3c1H?$=J*p& z^6MS9fSbir!zDpRPIi~7$`PB$_j(VlC~PE1`$Y4_)%(!|tUt1&eS zm7Te$?_#qxK0W4C#s0)%osJ9Vw#P1xHb5XH5)i^iV9P_-3&mIj)>Da|*hbHD) z&8g-r$o%Hho{P^86E|2ZlhtkASkFaY7@ll4=*W5go_Xe({jKKZR$YuW8`Qv$5e@C1 zzHs5`>DhA=bM?mPXmf6EdbUn{tT{8=9Bt4^cU$58jrp;O=|?9gX6hh3-fSHX>3w$v zg8c3mKZx|m$T;PvpKHz{rm=Qf`|Hx6)_Ai%J=LsVnrMyJk4%heq%~$2>Om0DVL;w; zY5_Jc?jM2W{YR%pr^k@+{-;JBCqnnR@>_5=ckO+Tz$OpT(f?z z*_>)?2BR;CLbXqyH%1zB3sa*E^Qr0ixeSR|M*9(D52FH2V{k+a^)^**A3vybs@oC2 zw>6;FJ~G)D{m~=M+1Z8R$;Ltx=?3xdaoyEG%#_0nNTat7&)l84=*yybbZnwEJ^NH^ zVsfIju>VxEb!1|;wUE+>N6U+9W#_rK44nHz<^x5GjPd;{h=;)JC#BW7Cd#c&2 ze`mfSLeOa;%DMehX#U*YTfpSUm_yCynv-|e8&hLjkWh>)QWV{ti|!Q99T`@*gCgI5 zrs=KOdB#OwF6uttn4BZZ4^RDA6u=&tooGy5m~764w(hSVpK3K{ry7%!3-l&>7nA_y zLO({Qr_jTebu=T?3fDDOXX>r#dZRwc$T3Ao2sfq{E;Sa=z(szMYH>AY{qIw8Tqnb6 z8}e4GF>rT%Zn{3vs$ZPAFy2C0>vPN!ceg0^B6H;PvxTF z#?-_`4N(n|`Pt^9)ALg;lz+~3f3`V;>NUse=N9Vo&mA^gM%w9-iOHtPKLh-(fKa_7 z7k$abZz9JGxr+?yF^!0ObJ1^Dm)HnBK6QS2{{?2w@rlv7BhBX~M$LF8eH2Ca<)XVk z760kx)R^p!j|}*@KNsEeYf51Drl&GR9>_)eJBrNB&&*8Ew&tEj2b!0MXQ$!vVyZl@ za8vV>lRn7#p+csUTSesYxH3Z_9jadX{eAf24W7fmh)ZSsTKWSodc% z!=^ZN+rBm&*^Ni0XQ}eh=}BaN3ALGRS{Kv9n5JEiO;5E>wHDBeCsZLqQgcs@HYS@V zn7sC%YRxuVqvIpfk1^Duh@XXuq{xCdmgeV^u4#PQw1t`Po@L zFETqcho|QzG*{iF-w2egI?nv$qw_?gHGY0SBVl3+Q|hphiHptsW6jA{L$N5C5T0fL zPtQKE|NQjqCHPDP5JmfP(QRTbV4$&bSx!zdb1-A2!-L=J`(YOGu&iQ|U$^8V&DJGN zfiOCq2i~3Zm)b zJo;ZhK76m{2^w(m+{9GFS^zbqG*;h7_(Y@iuz4eQ$@y*6F&9Tvoe)C4{Fb}0Mo;9T z<4+-8XS$8&eW`%(ujG3)r-rH5JZ$Q?D{WM)W#+oc>{Gt7hdiP^F49=YS;3?|k{{t@i9W~V1H9-@NH z#;=}002q&%#%yb16iO7S_t0Y#&B-xIS2CEHop=r-QGc#ME(@DEpp902 zVR{~`fV)CHa(+VDgn=mfja+m`kRgtoWMBk4a z(K>QdHXMoGceqH z@!^79Sv9*toWNGfxNaFW~PfyG}zA!s|__@Z!q(<)ztw^Saecf)Wg5ZFQ#@s0O zC)57(xv0@>v~bskXIbW)oRaHnrsJ{cQP$$y+bdsos>6lw9KPh3Oh{Z&eX@C>F)ER` zsX_$oBzO)t-1a6ELDa}+~$}>;JbeOyxHlC&Dc=;)>Qr8`q;#rX+xtvhuuRh z652K%<1MVfCB2}ni&IRynB=*}h2}}yU7g$iWb?=K6SK`Ho1;y5=hwau<)UxeVru`~ zcw=n(5|g$z(OQp8VA3*66yKD}VhV%)d?Xhg%!0jTvZ?4MaN`XSzp9>| zkF^O2ijYtk%d_**U0q#WRbBP3Szl{CcT3WblCj}#t2Fm!AICVmd^lCi0s+h>O_Q1? z@?GGWs$XXFM<=DdT*A`V-Iz2t!Ih~csm0zQmMKVY(%x}a>cV`FGX!Ehy^oGpVV#46bEc0}z>EL=}NZBqJtj$h;lM8^obencKd3gvli3 zlAUcBUD&=gqN$R7GSgvLl=})K0s%h-zP>GL?xp%scFyjS;EeNLVd0DO zuc!z1_&zAs^b%Og;9txuK8>QpkE7Pm8rCzl&bpX{ z>UOB_VwOjV1)pwHR$|~m4l)A*+4Q|dSQeZ8(R5kFLmzcsK6}M-RIn>;$GJna0cBk> zRFg*>3WsVRW6$slSVIHOqDz)SRqc|%OhZ>lX;9ZvwH8Ic(Ce*X&@-p_D!8WYuv)f8 z0*Y&F^xnZ{J_%&UqDEJ`=tdvTg5A`M&F$WBs)nG(S8U-Q2VmZ{rogOf=CxIj zG-^96!z#|zL@->llFk=jb?4|dnQkWyuje6F5VF&<=~COXDhb7loLHrjxy435?V`EMHE<8U#Rtn+2kk$94CWh5qz@c;caY7A(VC$ zEb?j~S9Ra6u;6Uor@QS$KE1e(?A3>TwulxEGTtHt)hzXpfK~S|EhLx=t?2ln6=JBj z{(2CXcPq#BI~#m4A7T1!t#t(?MM>~u&r(Z55&R|2O)rlF`P3XvU*iCWaIyqZI z^USa_JWX*LA+-#k(Bz4JIsdrAr+Z7(_ZM%qB1zu{w7t+@ThRXjEr>;4(s>LhrBd+l z?gP%``Lo^k#y`Ju^ZTb?_~zH>r|&GQ{7;-HcEIP$WK&&s-RBU1Zx^0xJ1qv^`}P_6 z!4+He5!Za{AScq7`6yt$7BYm&2|VPCYOV&nbuQG_> zcLYspSh8;8c=EZtbIF_NE~&PT_@r`fS#vhs9Rr6esGsjO6&l<&i8 yKFXEO()ZUpC$YchUwLZe