From 332dfbe082f58bc25d21d19d16a36d88bd943a3e Mon Sep 17 00:00:00 2001 From: Herp Derpinstine Date: Mon, 1 Jun 2020 10:29:37 -0500 Subject: [PATCH] v0.2.1 Update, See CHANGELOG for Full Details --- .gitignore | 11 +- CHANGELOG.MD | 10 + .../AssemblyGenerator.cs | 276 +++ MelonLoader.GeneratorProcess/AssemblyInfo.cs | 17 + .../DownloaderAndUnpacker.cs | 46 + .../ExternalToolVersions.cs | 13 + .../GeneratorProcessProgram.cs | 28 + MelonLoader.GeneratorProcess/Logger.cs | 20 + .../MelonLoader.GeneratorProcess.csproj | 79 + .../TinyJSON/Decoder.cs | 0 .../TinyJSON/EncodeOptions.cs | 0 .../TinyJSON/Encoder.cs | 0 .../TinyJSON/Extensions.cs | 0 .../TinyJSON/JSON.cs | 0 .../TinyJSON/LICENSE.md | 0 .../TinyJSON/README.md | 0 .../TinyJSON/Types/ProxyArray.cs | 0 .../TinyJSON/Types/ProxyBoolean.cs | 0 .../TinyJSON/Types/ProxyNumber.cs | 0 .../TinyJSON/Types/ProxyObject.cs | 0 .../TinyJSON/Types/ProxyString.cs | 0 .../TinyJSON/Types/Variant.cs | 0 MelonLoader.Installer/BuildInfo.cs | 10 + MelonLoader.Installer/MainForm.Designer.cs | 65 + MelonLoader.Installer/MainForm.cs | 19 + MelonLoader.Installer/MainForm.resx | 1485 +++++++++++++++++ .../MelonLoader.Installer.csproj | 19 + MelonLoader.Installer/Program.cs | 64 + MelonLoader.Installer/app.manifest | 76 + MelonLoader.Installer/icon.ico | Bin 0 -> 85182 bytes MelonLoader.ModHandler/AssemblyGenerator.cs | 253 +-- MelonLoader.ModHandler/BuildInfo.cs | 2 +- MelonLoader.ModHandler/Main.cs | 4 +- .../MelonLoader.ModHandler.csproj | 11 - MelonLoader.Support.Il2Cpp/AssemblyInfo.cs | 4 +- MelonLoader.Support.Il2Cpp/Main.cs | 2 +- .../AssemblyInfo.cs | 4 +- MelonLoader.Support.Mono/AssemblyInfo.cs | 4 +- MelonLoader.sln | 34 + README.MD | 18 +- 40 files changed, 2312 insertions(+), 262 deletions(-) create mode 100644 MelonLoader.GeneratorProcess/AssemblyGenerator.cs create mode 100644 MelonLoader.GeneratorProcess/AssemblyInfo.cs create mode 100644 MelonLoader.GeneratorProcess/DownloaderAndUnpacker.cs create mode 100644 MelonLoader.GeneratorProcess/ExternalToolVersions.cs create mode 100644 MelonLoader.GeneratorProcess/GeneratorProcessProgram.cs create mode 100644 MelonLoader.GeneratorProcess/Logger.cs create mode 100644 MelonLoader.GeneratorProcess/MelonLoader.GeneratorProcess.csproj rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Decoder.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/EncodeOptions.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Encoder.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Extensions.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/JSON.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/LICENSE.md (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/README.md (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Types/ProxyArray.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Types/ProxyBoolean.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Types/ProxyNumber.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Types/ProxyObject.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Types/ProxyString.cs (100%) rename {MelonLoader.ModHandler => MelonLoader.GeneratorProcess}/TinyJSON/Types/Variant.cs (100%) create mode 100644 MelonLoader.Installer/BuildInfo.cs create mode 100644 MelonLoader.Installer/MainForm.Designer.cs create mode 100644 MelonLoader.Installer/MainForm.cs create mode 100644 MelonLoader.Installer/MainForm.resx create mode 100644 MelonLoader.Installer/MelonLoader.Installer.csproj create mode 100644 MelonLoader.Installer/Program.cs create mode 100644 MelonLoader.Installer/app.manifest create mode 100644 MelonLoader.Installer/icon.ico diff --git a/.gitignore b/.gitignore index 61aec9028..f43453edd 100644 --- a/.gitignore +++ b/.gitignore @@ -49,6 +49,12 @@ TestMod\.vs TestModCpp\bin TestModCpp\obj TestModCpp\.vs +MelonLoader.GeneratorProcess\bin +MelonLoader.GeneratorProcess\obj +MelonLoader.GeneratorProcess\.vs +MelonLoader.Installer\bin +MelonLoader.Installer\obj +MelonLoader.Installer\.vs version\bin version\obj version\.vs @@ -404,5 +410,6 @@ MigrationBackup/ /.idea /Detours/lib.X64 /Detours/lib.X86 -/MelonLoader_Mono.zip -/MelonLoader_Il2Cpp.zip \ No newline at end of file +/MelonLoader.Mono.zip +/MelonLoader.Il2Cpp.zip +/MelonLoader.Installer.zip \ No newline at end of file diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 6d8c375c2..4e8c41bb1 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -20,6 +20,7 @@ ### Version List: +[v0.2.1 Open-Beta](#v021-open-beta) [v0.2.0 Open-Beta](#v020-open-beta) [v0.1.0 Open-Beta](#v010-open-beta) [v0.0.3 Closed-Beta](#v003-closed-beta) @@ -28,6 +29,15 @@ --- +### v0.2.1 Open-Beta: + +1. Overwrite files when copying freshly generated assemblies. (Credits to knah :D) +2. Implemented auto-download of required tools for IL2CPP games. (Credits to knah :D) +3. Fixed Config Issue causing Assembly to always need to Regenerate. +4. Added an Installer. +5. Fixed Console Display Issue. +6. Temporarily removed --melonloader.hideconsole. + ### v0.2.0 Open-Beta: 1. Fixed issue with the Console still showing as Closed-Beta. diff --git a/MelonLoader.GeneratorProcess/AssemblyGenerator.cs b/MelonLoader.GeneratorProcess/AssemblyGenerator.cs new file mode 100644 index 000000000..1f67c1a60 --- /dev/null +++ b/MelonLoader.GeneratorProcess/AssemblyGenerator.cs @@ -0,0 +1,276 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Security.Cryptography; +using MelonLoader.GeneratorProcess; +using TinyJSON; + +namespace MelonLoader.AssemblyGenerator +{ + internal static class Main + { + private static string GameAssembly_Path = null; + private static string MSCORLIB_Path = null; + internal static string BaseFolder = null; + internal static string AssemblyFolder = null; + private static Package UnityDependencies = new Package(); + private static Executable_Package Il2CppDumper = new Executable_Package(); + private static Executable_Package Il2CppAssemblyUnhollower = new Executable_Package(); + private static string localConfigPath = null; + private static LocalConfig localConfig = new LocalConfig(); + private static Il2CppConfig il2cppConfig = new Il2CppConfig(); + + internal static bool Initialize(string unityVersion, string gameRoot, string gameDataDir) + { + PreSetup(gameRoot); + if (AssemblyGenerateCheck(unityVersion)) + { + Logger.Log("Assembly Generation Needed!"); + if (!AssemblyGenerate(gameRoot, unityVersion, gameDataDir)) + return false; + Cleanup(); + Logger.Log("Assembly Generation was Successful!"); + } + WriteLocalConfig(unityVersion); + return true; + } + + private static void PreSetup(string gameRoot) + { + GameAssembly_Path = Path.Combine(gameRoot, "GameAssembly.dll"); + + AssemblyFolder = Path.Combine(gameRoot, "MelonLoader", "Managed"); + + MSCORLIB_Path = Path.Combine(AssemblyFolder, "mscorlib.dll"); + + BaseFolder = SetupDirectory(Path.Combine(Path.Combine(gameRoot, "MelonLoader"), "AssemblyGenerator")); + + Il2CppDumper.BaseFolder = SetupDirectory(Path.Combine(BaseFolder, "Il2CppDumper")); + Il2CppAssemblyUnhollower.BaseFolder = SetupDirectory(Path.Combine(BaseFolder, "Il2CppAssemblyUnhollower")); + UnityDependencies.BaseFolder = SetupDirectory(Path.Combine(BaseFolder, "UnityDependencies")); + + localConfigPath = Path.Combine(BaseFolder, "config.json"); + if (File.Exists(localConfigPath)) + localConfig = Decoder.Decode(File.ReadAllText(localConfigPath)).Make(); + } + + private static void Setup(string gameRoot) + { + Il2CppDumper.OutputDirectory = SetupDirectory(Path.Combine(Il2CppDumper.BaseFolder, "DummyDll")); + Il2CppDumper.FileName = "Il2CppDumper.exe"; + + Il2CppAssemblyUnhollower.OutputDirectory = SetupDirectory(Path.Combine(Il2CppAssemblyUnhollower.BaseFolder, "Output")); + Il2CppAssemblyUnhollower.FileName = "AssemblyUnhollower.exe"; + } + + private static bool AssemblyGenerateCheck(string unityVersion) + { + if (localConfig.UnityVersion != unityVersion || localConfig.DumperVersion != ExternalToolVersions.Il2CppDumperVersion || localConfig.UnhollowerVersion != ExternalToolVersions.Il2CppAssemblyUnhollowerVersion) + return true; + string game_assembly_hash = null; + using (var md5 = MD5.Create()) + { + using (var stream = File.OpenRead(GameAssembly_Path)) + { + var hash = md5.ComputeHash(stream); + game_assembly_hash = BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant(); + } + } + if (string.IsNullOrEmpty(localConfig.GameAssemblyHash) || (game_assembly_hash != localConfig.GameAssemblyHash)) + return true; + return false; + } + + private static void DownloadDependencies(string unityVersion) + { + Logger.Log("Downloading Il2CppDumper"); + DownloaderAndUnpacker.Run(ExternalToolVersions.Il2CppDumperUrl, ExternalToolVersions.Il2CppDumperVersion, Il2CppDumper.BaseFolder); + Logger.Log("Downloading Il2CppAssemblyUnhollower"); + DownloaderAndUnpacker.Run(ExternalToolVersions.Il2CppAssemblyUnhollowerUrl, ExternalToolVersions.Il2CppAssemblyUnhollowerVersion, Il2CppAssemblyUnhollower.BaseFolder); + Logger.Log("Downloading unity dependencies"); + try + { + DownloaderAndUnpacker.Run($"{ExternalToolVersions.UnityDependenciesBaseUrl}{unityVersion}.zip", unityVersion, UnityDependencies.BaseFolder); + } + catch (Exception ex) + { + Logger.LogError("Can't download unity dependencies, no unstripping will be done"); + Logger.Log(ex.ToString()); + } + } + + private static bool AssemblyGenerate(string gameRoot, string unityVersion, string gameDataDir) + { + DownloadDependencies(unityVersion); + + Setup(gameRoot); + + FixIl2CppDumperConfig(); + + Logger.Log("Executing Il2CppDumper..."); + if (!Il2CppDumper.Execute(new string[] { + GameAssembly_Path, + Path.Combine(gameDataDir, "il2cpp_data", "Metadata", "global-metadata.dat") + })) + { + Logger.LogError("Failed to Execute Il2CppDumper!"); + return false; + } + + Logger.Log("Executing Il2CppAssemblyUnhollower..."); + if (!Il2CppAssemblyUnhollower.Execute(new string[] { + ("--input=" + Il2CppDumper.OutputDirectory), + ("--output=" + Il2CppAssemblyUnhollower.OutputDirectory), + ("--mscorlib=" + MSCORLIB_Path), + ("--unity=" + UnityDependencies.BaseFolder), + "--blacklist-assembly=Mono.Security", + "--blacklist-assembly=Newtonsoft.Json", + "--blacklist-assembly=Valve.Newtonsoft.Json" + })) + { + Logger.LogError("Failed to Execute Il2CppAssemblyUnhollower!"); + return false; + } + + return true; + } + + private static void Cleanup() + { + if (localConfig.OldFiles.Count() > 0) + { + for (int i = 0; i < localConfig.OldFiles.Count(); i++) + { + string oldFile = localConfig.OldFiles[i]; + if (!string.IsNullOrEmpty(oldFile)) + { + string oldFilePath = Path.Combine(AssemblyFolder, oldFile); + if (File.Exists(oldFilePath)) + File.Delete(oldFilePath); + } + } + localConfig.OldFiles.Clear(); + } + string[] files = Directory.GetFiles(Il2CppAssemblyUnhollower.OutputDirectory, "*.dll", SearchOption.TopDirectoryOnly); + if (files.Length > 0) + { + for (int i = 0; i < files.Count(); i++) + { + string file = files[i]; + if (!string.IsNullOrEmpty(file)) + { + string filename = Path.GetFileName(file); + localConfig.OldFiles.Add(filename); + File.Copy(file, Path.Combine(AssemblyFolder, filename), true); + } + } + } + Directory.Delete(Il2CppAssemblyUnhollower.OutputDirectory, true); + Il2CppAssemblyUnhollower.OutputDirectory = SetupDirectory(Path.Combine(Il2CppAssemblyUnhollower.BaseFolder, "Output")); + } + + private static string SetupDirectory(string path) { if (!Directory.Exists(path)) Directory.CreateDirectory(path); return path; } + private static void FixIl2CppDumperConfig() => File.WriteAllText(Path.Combine(Il2CppDumper.BaseFolder, "config.json"), Encoder.Encode(il2cppConfig, EncodeOptions.NoTypeHints | EncodeOptions.PrettyPrint)); + private static void WriteLocalConfig(string unityVersion) + { + localConfig.UnityVersion = unityVersion; + localConfig.DumperVersion = ExternalToolVersions.Il2CppDumperVersion; + localConfig.UnhollowerVersion = ExternalToolVersions.Il2CppAssemblyUnhollowerVersion; + using (var md5 = MD5.Create()) + { + using (var stream = File.OpenRead(GameAssembly_Path)) + { + var hash = md5.ComputeHash(stream); + localConfig.GameAssemblyHash = BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant(); + } + } + File.WriteAllText(localConfigPath, Encoder.Encode(localConfig, EncodeOptions.NoTypeHints | EncodeOptions.PrettyPrint)); + } + } + + internal class Package + { + internal string Version = null; + internal string BaseFolder = null; + } + + internal class Executable_Package : Package + { + internal string FileName = null; + internal string OutputDirectory = null; + + private static void OverrideAppDomainBase(string @base) + { + var appDomainBase = ((AppDomainSetup)typeof(AppDomain).GetProperty("FusionStore", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(AppDomain.CurrentDomain, new object[0])); + appDomainBase.ApplicationBase = @base; + Directory.SetCurrentDirectory(@base); + } + + internal bool Execute(string[] argv) + { + string assembly_path = Path.Combine(BaseFolder, FileName); + foreach (var enumerateFile in Directory.EnumerateFiles(BaseFolder, "*.dll")) + Assembly.LoadFrom(enumerateFile); + + if (File.Exists(assembly_path)) + { + var originalCwd = AppDomain.CurrentDomain.BaseDirectory; + try + { + OverrideAppDomainBase(BaseFolder + Path.DirectorySeparatorChar); + Assembly a = Assembly.LoadFrom(assembly_path); + if (a != null) + { + MethodInfo c = a.EntryPoint; + if (c != null) + { + Directory.SetCurrentDirectory(BaseFolder); + c.Invoke(null, new object[] {argv}); + } + else + return false; + } + else + return false; + } + catch (Exception e) + { + Logger.LogError(e.ToString()); + return false; + } + finally + { + OverrideAppDomainBase(originalCwd); + } + } + return true; + } + } + + internal class Il2CppConfig + { + public bool DumpMethod = true; + public bool DumpField = true; + public bool DumpProperty = true; + public bool DumpAttribute = true; + public bool DumpFieldOffset = false; + public bool DumpMethodOffset = false; + public bool DumpTypeDefIndex = false; + public bool DummyDll = true; + public bool MakeFunction = true; + public bool RequireAnyKey = false; + public bool ForceIl2CppVersion = false; + public float ForceVersion = 24.3f; + } + + internal class LocalConfig + { + public string UnityVersion = null; + public string GameAssemblyHash = null; + public string DumperVersion = null; + public string UnhollowerVersion = null; + public List OldFiles = new List(); + } +} diff --git a/MelonLoader.GeneratorProcess/AssemblyInfo.cs b/MelonLoader.GeneratorProcess/AssemblyInfo.cs new file mode 100644 index 000000000..db01e563b --- /dev/null +++ b/MelonLoader.GeneratorProcess/AssemblyInfo.cs @@ -0,0 +1,17 @@ +using System.Resources; +using System.Reflection; +using System.Runtime.InteropServices; + +[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name + ".GeneratorProcess")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany(MelonLoader.BuildInfo.Company)] +[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name + ".GeneratorProcess")] +[assembly: AssemblyCopyright("Created by " + MelonLoader.BuildInfo.Author)] +[assembly: AssemblyTrademark(MelonLoader.BuildInfo.Company)] +[assembly: AssemblyCulture("")] +[assembly: ComVisible(false)] +//[assembly: Guid("")] +[assembly: AssemblyVersion(MelonLoader.BuildInfo.Version)] +[assembly: AssemblyFileVersion(MelonLoader.BuildInfo.Version)] +[assembly: NeutralResourcesLanguage("en")] \ No newline at end of file diff --git a/MelonLoader.GeneratorProcess/DownloaderAndUnpacker.cs b/MelonLoader.GeneratorProcess/DownloaderAndUnpacker.cs new file mode 100644 index 000000000..b21d93a4f --- /dev/null +++ b/MelonLoader.GeneratorProcess/DownloaderAndUnpacker.cs @@ -0,0 +1,46 @@ +using System.IO; +using System.IO.Compression; +using System.Net; + +namespace MelonLoader.GeneratorProcess +{ + public static class DownloaderAndUnpacker + { + public static void Run(string url, string targetVersion, string destinationFolder) + { + var downloadVersionMark = Path.Combine(destinationFolder, ".v-" + targetVersion); + if (File.Exists(downloadVersionMark)) + { + Logger.Log($"{destinationFolder} already contains required version, skipping download"); + return; + } + + Logger.Log($"Cleaning {destinationFolder}"); + foreach (var entry in Directory.EnumerateFileSystemEntries(destinationFolder)) + { + if (Directory.Exists(entry)) + Directory.Delete(entry, true); + else + File.Delete(entry); + } + + var tempFile = Path.GetTempFileName(); + Logger.Log($"Downloading {url} to {tempFile}"); + new WebClient().DownloadFile(url, tempFile); + Logger.Log($"Extracting {tempFile} to {destinationFolder}"); + + using var stream = new FileStream(tempFile, FileMode.Open, FileAccess.Read); + using var zip = new ZipArchive(stream); + + foreach (var zipArchiveEntry in zip.Entries) + { + Logger.Log($"Extracting {zipArchiveEntry.FullName}"); + using var entryStream = zipArchiveEntry.Open(); + using var targetStream = new FileStream(Path.Combine(destinationFolder, zipArchiveEntry.FullName), FileMode.OpenOrCreate, FileAccess.Write); + entryStream.CopyTo(targetStream); + } + + File.WriteAllBytes(downloadVersionMark, new byte[0]); + } + } +} \ No newline at end of file diff --git a/MelonLoader.GeneratorProcess/ExternalToolVersions.cs b/MelonLoader.GeneratorProcess/ExternalToolVersions.cs new file mode 100644 index 000000000..f56161ff3 --- /dev/null +++ b/MelonLoader.GeneratorProcess/ExternalToolVersions.cs @@ -0,0 +1,13 @@ +namespace MelonLoader.GeneratorProcess +{ + public static class ExternalToolVersions + { + public static string Il2CppDumperUrl = "https://github.com/Perfare/Il2CppDumper/releases/download/v6.2.1/Il2CppDumper-v6.2.1.zip"; + public static string Il2CppDumperVersion = "6.2.1"; + + public static string Il2CppAssemblyUnhollowerUrl = "https://github.com/knah/Il2CppAssemblyUnhollower/releases/download/v0.4.3.0/Il2CppAssemblyUnhollower.0.4.3.0.zip"; + public static string Il2CppAssemblyUnhollowerVersion = "0.4.3.0"; + + public static string UnityDependenciesBaseUrl = "https://github.com/HerpDerpinstine/MelonLoader/raw/master/BaseLibs/UnityDependencies/"; + } +} \ No newline at end of file diff --git a/MelonLoader.GeneratorProcess/GeneratorProcessProgram.cs b/MelonLoader.GeneratorProcess/GeneratorProcessProgram.cs new file mode 100644 index 000000000..a1b2f350c --- /dev/null +++ b/MelonLoader.GeneratorProcess/GeneratorProcessProgram.cs @@ -0,0 +1,28 @@ +using System; + +namespace MelonLoader.GeneratorProcess +{ + public static class GeneratorProcessProgram + { + public static int Main(string[] args) + { + if (args.Length != 3) + { + Logger.LogError("Bad arguments for generator process; expected 2 arguments: "); + return -1; + } + + try + { + return AssemblyGenerator.Main.Initialize(args[0], args[1], args[2]) ? 0 : -2; + } + catch (Exception ex) + { + Logger.LogError("Failed to generate assemblies;"); + Logger.LogError(ex.ToString()); + + return -3; + } + } + } +} \ No newline at end of file diff --git a/MelonLoader.GeneratorProcess/Logger.cs b/MelonLoader.GeneratorProcess/Logger.cs new file mode 100644 index 000000000..d2cd6be5a --- /dev/null +++ b/MelonLoader.GeneratorProcess/Logger.cs @@ -0,0 +1,20 @@ +using System; + +namespace MelonLoader.GeneratorProcess +{ + public class Logger + { + public static void Log(string str) + { + Console.WriteLine(str); + } + + public static void LogError(string str) + { + var oldColor = Console.ForegroundColor; + Console.ForegroundColor = ConsoleColor.Red; + Console.WriteLine(str); + Console.ForegroundColor = oldColor; + } + } +} \ No newline at end of file diff --git a/MelonLoader.GeneratorProcess/MelonLoader.GeneratorProcess.csproj b/MelonLoader.GeneratorProcess/MelonLoader.GeneratorProcess.csproj new file mode 100644 index 000000000..7724bdcb8 --- /dev/null +++ b/MelonLoader.GeneratorProcess/MelonLoader.GeneratorProcess.csproj @@ -0,0 +1,79 @@ + + + + + Debug + AnyCPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F} + Exe + Properties + MelonLoader.GeneratorProcess + MelonLoader.GeneratorProcess + v4.7.2 + 512 + $(SolutionDir)Output\$(Configuration)\MelonLoader\ + latest + + + AnyCPU + true + full + false + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + TRACE + prompt + 4 + + + + + + + + + + + + BuildInfo.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MelonLoader.ModHandler/TinyJSON/Decoder.cs b/MelonLoader.GeneratorProcess/TinyJSON/Decoder.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Decoder.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Decoder.cs diff --git a/MelonLoader.ModHandler/TinyJSON/EncodeOptions.cs b/MelonLoader.GeneratorProcess/TinyJSON/EncodeOptions.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/EncodeOptions.cs rename to MelonLoader.GeneratorProcess/TinyJSON/EncodeOptions.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Encoder.cs b/MelonLoader.GeneratorProcess/TinyJSON/Encoder.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Encoder.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Encoder.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Extensions.cs b/MelonLoader.GeneratorProcess/TinyJSON/Extensions.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Extensions.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Extensions.cs diff --git a/MelonLoader.ModHandler/TinyJSON/JSON.cs b/MelonLoader.GeneratorProcess/TinyJSON/JSON.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/JSON.cs rename to MelonLoader.GeneratorProcess/TinyJSON/JSON.cs diff --git a/MelonLoader.ModHandler/TinyJSON/LICENSE.md b/MelonLoader.GeneratorProcess/TinyJSON/LICENSE.md similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/LICENSE.md rename to MelonLoader.GeneratorProcess/TinyJSON/LICENSE.md diff --git a/MelonLoader.ModHandler/TinyJSON/README.md b/MelonLoader.GeneratorProcess/TinyJSON/README.md similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/README.md rename to MelonLoader.GeneratorProcess/TinyJSON/README.md diff --git a/MelonLoader.ModHandler/TinyJSON/Types/ProxyArray.cs b/MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyArray.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Types/ProxyArray.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyArray.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Types/ProxyBoolean.cs b/MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyBoolean.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Types/ProxyBoolean.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyBoolean.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Types/ProxyNumber.cs b/MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyNumber.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Types/ProxyNumber.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyNumber.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Types/ProxyObject.cs b/MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyObject.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Types/ProxyObject.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyObject.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Types/ProxyString.cs b/MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyString.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Types/ProxyString.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Types/ProxyString.cs diff --git a/MelonLoader.ModHandler/TinyJSON/Types/Variant.cs b/MelonLoader.GeneratorProcess/TinyJSON/Types/Variant.cs similarity index 100% rename from MelonLoader.ModHandler/TinyJSON/Types/Variant.cs rename to MelonLoader.GeneratorProcess/TinyJSON/Types/Variant.cs diff --git a/MelonLoader.Installer/BuildInfo.cs b/MelonLoader.Installer/BuildInfo.cs new file mode 100644 index 000000000..5d5fb559c --- /dev/null +++ b/MelonLoader.Installer/BuildInfo.cs @@ -0,0 +1,10 @@ +namespace MelonLoader +{ + public static class BuildInfo + { + public const string Name = "MelonLoader"; + public const string Author = "Lava Gang"; + public const string Company = "discord.gg/2Wn3N2P"; + public const string Version = "0.2.1"; + } +} \ No newline at end of file diff --git a/MelonLoader.Installer/MainForm.Designer.cs b/MelonLoader.Installer/MainForm.Designer.cs new file mode 100644 index 000000000..ce31f5e07 --- /dev/null +++ b/MelonLoader.Installer/MainForm.Designer.cs @@ -0,0 +1,65 @@ +namespace MelonLoader.Installer +{ + partial class MainForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); + this.label1 = new System.Windows.Forms.Label(); + this.SuspendLayout(); + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Segoe UI", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point); + this.label1.Location = new System.Drawing.Point(13, 35); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(400, 32); + this.label1.TabIndex = 0; + this.label1.Text = "Please Select your Unity Game\'s EXE"; + // + // MainForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(425, 113); + this.Controls.Add(this.label1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "MainForm"; + this.Text = "MelonLoader Installer for v0.0.0 Open-Beta"; + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + internal System.Windows.Forms.Label label1; + } +} \ No newline at end of file diff --git a/MelonLoader.Installer/MainForm.cs b/MelonLoader.Installer/MainForm.cs new file mode 100644 index 000000000..555084309 --- /dev/null +++ b/MelonLoader.Installer/MainForm.cs @@ -0,0 +1,19 @@ +using System; +using System.IO; +using System.IO.Packaging; +using System.Linq; +using System.Threading; +using System.Windows.Forms; + +namespace MelonLoader.Installer +{ + public partial class MainForm : Form + { + public MainForm() + { + InitializeComponent(); + Text = Program.Title; + FormBorderStyle = FormBorderStyle.FixedSingle; + } + } +} diff --git a/MelonLoader.Installer/MainForm.resx b/MelonLoader.Installer/MainForm.resx new file mode 100644 index 000000000..84ae4f5b3 --- /dev/null +++ b/MelonLoader.Installer/MainForm.resx @@ -0,0 +1,1485 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB1J3UAEjYSADMuMw4eOx5GEUIRjQRDA8gCUQHrAVwB+gBh + AP8AZAD/AGYA/wBnAP8AZwD/AGcA/wBnAP8AZwD/AGYA/wBjAP8BXgH+AVMB8AJFArUGMgZlDRwNIx0A + HQIXCBcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAABgYGAAYGBgAGBgYAE49TgAASAAAKz0rLBJLEq8FWQX0AWEB/wBl + AP8AZwD/AGcA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGcA/wBl + AP8BXAH8A0sD2gYzBnwMGAwcDioOAAYABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALS0tACysrIBs7SzA8AswAEhQCFGDVEN0wFi + Af8AZwD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZwD/AGYA/wFcAf4CRgLCBScFSgwADAQJCgkAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPXm9QD///8AonyiBBlC + GVkIVgjjAGUA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBlAP8AZQD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZQD/AGUA/wBlAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBnAP8AZQD/AVMB6wM0A3QKCAoMAxcDAD8A + PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVj + ZQCMbowGHkkeYwVYBegAZgD/AGYA/wBmAP8AZgD/AGYA/wBlAP8AZwD/AG0A/wB2AP8AewD/AH4A/wCB + AP8AggD/AIIA/wCBAP8AfQD/AHkA/wBxAP8AawD/AGcA/wBlAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBa + APgDOgOXCA8IEwQdBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAPkc+AI05jQInUCdqCVwJ8QBmAP8AZgD/AGYA/wBmAP8AZQD/AGgA/wBzAP8AhAD/AJIA/wCY + AP8AmQD/AJkA/wCaAP8AmgD/AJoA/wCaAP8AmQD/AJgA/wCWAP8AkAD/AIYA/wB5AP8AbQD/AGYA/wBl + AP8AZgD/AGYA/wBnAP8AXgD7Aj4CngoVChUIIggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACZe5kA////ASZPJloGWgbqAGYA/wBmAP8AZgD/AGYA/wBmAP8AcQD/AIcA/wCW + AP8AmgD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmgD/AJoA/wCY + AP8AkgD/AIMA/wBwAP8AZgD/AGYA/wBmAP8AZwD/AF4A/QI+ApADAwMIAhwCAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAI58jgAAJQAAM1UzPwxaDN4AZgD/AGYA/wBmAP8AZQD/AGoA/wB/ + AP8AlAD/AJoA/wCZAP8AmQD/AJkA/wCZAP8AmgD/AJoA/wCaAP8AmgD/AJoA/wCaAP8AmwD/AJoA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCTAP8AgAD/AGwA/wBlAP8AZgD/AGcA/wBcAPQBPgFoBgAGAQIH + AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABg+GAAiOCIWEFgQwgFlAf8AZgD/AGYA/wBm + AP8AcQD/AIsA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCaAP8EkRX/EnVZ/xZtb/8WbW7/Fm5s/xNz + X/8OfEn/CYcs/wSSEv8BmAT/AJoA/wCaAP8AmQD/AJkA/wCZAP8AmQD/AI4A/wB0AP8AZgD/AGYA/wBm + AP8AWADlAjQCRQBvAAAGAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAS1BLAHhGeAUSTRKGAWEB/ABm + AP8AZgD/AGYA/wB1AP8AkQD/AJoA/wCZAP8AmQD/AJkA/wCZAP8AmgD/ApYJ/xB4Uf8mTL//MjX6/zMz + //8zM///MzP//zM0/f8yNvj/Lj3m/yhIyf8gWZ//FW9o/wmHLv8Blwf/AJoA/wCZAP8AmQD/AJoA/wCV + AP8AfAD/AGgA/wBmAP8AZQD/Ak8CzQkjCSYEMAQAAAAAAAAAAAAAAAAAAAAAAAAAAABYS1gAAkcCABpE + GkIHXAfsAGYA/wBmAP8AZgD/AHYA/wCTAP8AmgD/AJkA/wCZAP8AmQD/AJkA/wCaAP8IiSn/IFqg/zE4 + 8/80Mv//MzP//zMz//8zM///MzP//zIy+P8zMvz/MzL//zQy//80Mv//MzT8/y4+5f8hVqb/D3pN/wOU + Df8AmgD/AJkA/wCZAP8AlwD/AIIA/wBpAP8AZgD/AGIA/wRCBJgRABEGChgKAAAAAAAAAAAAAAAAAAAA + AAAsPCwAMjEyCwpSCq0AZAD/AGYA/wBmAP8AcgD/AJMA/wCaAP8AmQD/AJkA/wCZAP8AmgD/ApcI/xJ1 + Wv8qRNT/MC/y/y4u6P8zM///LS3j/xwcjv8wMO7/MzP//x0dkP8fH5v/MzP//zMz//8wMO//MDDu/zMy + //80Mv//MTjz/yNTr/8Nf0H/AZgE/wCaAP8AmQD/AJgA/wCDAP8AaAD/AGYA/wFZAfAHMwdOAk0CAA8N + DwAAAAAAAAAAAAAAAAANTA0AF0oXTANeA/IAZgD/AGYA/wBtAP8AjgD/AJoA/wCZAP8AmQD/AJkA/wCa + AP8FkBf/HGCN/zE48v80M///JCSz/w8PTv8vL+3/LS3g/w0NQP8oKMj/NDT//xcXcv8QEE//MjL7/zMz + //8cHI3/FBRm/zIy+f8zM///MzP//zQy//8vPOn/GWaA/wSSE/8AmgD/AJkA/wCYAP8AgAD/AGcA/wBl + AP8DSwO4DBMMEQsdCwAAAAAAAAAAAAAAAABeQl4HClUKnwBlAP8AZgD/AGcA/wCEAP8AmQD/AJkA/wCZ + AP8AmQD/AJoA/weKJf8jUrD/MzP9/zMy//8zM///Li7n/yAgo/8wMPH/MzP+/yoq0v8wMPD/MzP//yws + 2v8kJLX/MzP+/zQ0//8iIqv/GhqC/zMz/v8zM///MzP//zMz//8zMv//MzT8/yJWqv8GjSD/AJoA/wCZ + AP8AlwD/AHwA/wBnAP8BXAH6CDcIaQD/AAAeGR4AAAAAAAAAAAAkSyQwB14H4gBmAP8AZQD/AHMA/wCV + AP8AmQD/AJkA/wCZAP8AmgD/CIgq/yZMv/8yMf7/MDDy/zk54/88POH/MzPs/zEx/f8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8xMfT/MDDx/zMz//8lJbf/JCSz/zMz/v8zM///LS3j/yYl + v/8kT7T/B4wi/wCaAP8AmQD/AJQA/wB0AP8AZQD/A04DzAsfCxkKJwoAAAAAAAAAAAASThJtAmIC+wBm + AP8AZwD/AIYA/wCaAP8AmQD/AJkA/wCaAP8HiiX/J0zA/zEw+f9ISND/kJDG/8nJ3v/T0+T/qqrR/19f + zP8yMu7/MzP//zMz//8zM///MzP9/zMz//8zM///MzP//y0t4/8YGHn/LCzc/zQ0//8YGHv/EBBQ/zIy + +P80NP//IiKs/w4OR/8vLuz/I1Su/wSRFf8AmgD/AJoA/wCNAP8AbAD/AV4B/Qk9CW8AgQAAPyg/AAAA + AAANVA2rAGUA/wBmAP8AbwD/AJQA/wCZAP8AmQD/AJoA/wSSE/8iVKz/MTD8/1VUzP/Q0Nz////9//// + /////////////+rq6/91dcX/MTHz/zQ0//8rK9j/ERFg/yQkuf8zM///NDT//yoq0P8ICCn/JyfD/zQ0 + //8oKMb/JCSy/zMz//80NP//JSW4/yIirP8zM///MzT8/xtiiv8Blwb/AJkA/wCZAP8AgQD/AGYA/wZQ + Bs0ZJRkXFi0WAAAAAAAMWwzYAGYA/wBlAP8AewD/AJkA/wCZAP8AmQD/AJkB/xhoef8yM/3/Pj7f/8TE + 2f/////////////////////////////////f3+b/T0/U/zEx//8wMM7/JSUt/yYmg/8yMv//MzP//y4u + 5f8YGH//Ly/u/zMz//8zM///MzP//zMz//8zM///MTH3/zIy+P8zM///MzL//zA58P8ReFP/AJoA/wCZ + AP8AlQD/AHMA/wFdAfgJPAlYAVMBABcVFwAMXgz4AGYA/wBnAP8AiAD/AJoA/wCZAP8AmgD/CoYx/y0/ + 4f8xL/v/fX3P/9PT0P+kpKT/yMjI//v7+/////////////////////z/i4vQ/zs79/+mpvr/5OTk/8PD + 7v9fX///MTH//zg4/v8/P/j/PT3+/zMz//8yMv//MzP//zMz//8zM///MzP//zMz//8zM///MzP//zQy + //8oSMn/BY4c/wCaAP8AmgD/AIkA/wBnAP8FTQWuHQ4dCRkjGQACWQL/AGYA/wBrAP8AkAD/AJoA/wCZ + AP8AmQH/HGGM/zQy//85Oez/hISi/ysrKf8DAwP/GRkZ/6urq///////////////////////tLTa/3t7 + 7//X1///ysr//+vr///d3f//m5v//8DA///W1v//0dH//5eX//9DQ///MjL//zMz//8zM///MzP//zMz + //8nJ8b/KSnO/zMz//8zM/3/GGh6/wCZAP8AmQD/AJcA/wB4AP8BWQHnBzQHMQY5BgAAWwD/AGYA/wBv + AP8AlQD/AJkA/wCaAP8Gjh7/J0DE/yclyP89PdL/OjpE/wAAAP8AAAD/AAAA/zw8PP/t7e3///////// + ////////xsbh/2Rk6/9MTP//Ozv//11d///Pz/////////39///h4f//3Nz///j4//+srP//OTn//zEx + 9/8zM/3/MzP//zQ0//8fH5z/HR2T/zQ0//80Mv//K0PV/waMIP8AmgD/AJoA/wCMAP8AZgD/B0YHgAD/ + AAAAWgD/AGYA/wB0AP8AlwD/AJkA/wCaAP8PfUv/Iier/woKNf8vL6//EBAa/wAAAP8AAAD/AAAA/xgY + GP/W1tb/////////////////rq7V/zMz7/8xMf//MjL//zAw//9eXv//5+f//7Cwwf84OJn/QUHy/39/ + ///U1P//ZWX5/xcXff8oKMb/MzP//zMz//8xMfP/Li7m/zMz//8zM///MzT9/xZtbf8AmgD/AJkA/wCX + AP8AdgD/BFMEyhksGRkHWwf/AGYA/wB4AP8AmQD/AJoA/wCaAP8Vbm3/LCzd/yMjsf8tLdT/CQkg/wAA + AP8AAAD/AAAA/x8fH//d3d3////////////9/fv/goLP/zAw+P8zM///MzP//zMz//80NP//cHD8/zIy + Wv8KCj7/LS3o/zEx//9lZf//bW3z/wsLPP8ZGX3/MzP//zMz//8yMv//MDD9/y8v+f8wMPv/MjD//yZO + vP8Dkw7/AJkA/wCaAP8AiAD/A18D9R5LHl0KXArpAWIB/wZpBvELgQvpEYQR6hiIFuolXXTqMTHo9jMz + +v8wMPT/FhZS/wICAP8AAAD/AAAA/1paWv/39/f////////////c3OX/S0vZ/zIy//8xMfb/MDDy/zMz + //8zM///MDD3/xUVbf8oKMr/MzP//zMz//8zM///Nzf9/x4elP8lJbr/MzP//zAw+f89Pdn/amrN/4WF + y/98fM3/T07Y/zA84P8LhDb/AJoA/wCaAP8AkAD/AGkA/xJSEqwTTBOgG1EbkiRGJD4wSTAqSF5IK2V2 + ZCtPV2UsNTWPTzExqpQwMMzVMTGm+zg4RP8uLi3/VVVV/9XV1f////////////Ly8f95ecb/MTH0/zQ0 + //8iIqr/ERFV/y0t4f8zM///MjL7/ygoyf8xMfb/MzP//zMz//8zM///MzP//zMz/f8zM/7/MTH2/1xc + yP/Hx9j/+Pj2/////f/h4d7/kJCW/z0+hf8PaU//AJsA/wCZAP8AlQD/AG8A/wtZC/IzMDMLf1t/BVs8 + WwAAAAAAAAAAAAAAAAAAAAAAPj4AAD4+AAM+PmAeNTV+XWRkdqq+vr3w7u7u///////9/fz/2tri/3d3 + xP8zM+n/MzP//zQ0//8fH5r/AQEF/yIiqf80NP//MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8xMf7/UlLP/9ra4v///////////9fX1/8+Pj7/CQkI/wcECP8FPBj/AJcB/wCZAP8AlwD/AHUA/wBX + AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWVlZAFNTUwmAgIBHrq6tip2d + o857e7T5SEjP/zAw9P8zM///MzP//zQ0//8mJr7/BAQU/yMjr/80NP//MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//81Ner/ra3U/////v///////v7+/3Fxcf8AAAD/AAAA/wAAAP8AEgD/AIAA/wCa + AP8AmQD/AHsA/wBaAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAANDQ0ANTUAAC4uOBk0NH9fMDC2tTAw3fIyMvj/MzP//zMz//8wMPL/GxuH/yws3f8zM///MzP//zMz + //8zM///MDDw/y0t5P8zM///MzP//zEx//9UVNT/6urt////////////9vb2/0NDQ/8AAAD/AAAA/wAA + AP8GCQb/CWwJ/wCbAP8AmQD/AH8A/wBZAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGlpAAAAAP8AR0c8DDY2fUowMK6nLS3b6DIy9/8zM///MjL7/zMz + /v8zM///MzP//zMz//80NP//JCSz/w8PS/8vL+r/MzP//zAw/P95ec7//f36////////////+/v7/1lZ + Wf8AAAD/AAAA/wAAAP8wMDD/Noo2/wCZAP8AmgD/AIIA/wBXAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAuLgUHGxxpOyQl + pKcsLNrtMjL5/zMz//8zM///MzP//zMz//80NP//IyOx/xAQUf8wMPH/MzP//zAw+v+JidD////7//// + /////////////7u7u/8jIyP/BQUF/yEhIf+goKH/R5xJ/wCYAP8AmgD/AIUA/wdbB/8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAFBYtAAoMBwgZG2tAJiazpS4u4vMzM/3/MzP//zMz//8zM///LS3f/ygoyv8zM///MzP//zAw + /P97e9D//f36//////////////////39/f/Q0ND/r6+v/9jY1//i4ev/MYFY/wCZAP8AmgD/AIcA/w5g + DvgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaGz8AFBUiCiAgh0soKcO2Ly/q+zMz/v8zM///MzP//zMz + //8zM///NDT//zEx//9aWtX/7+/x//////////////////////////////////////+xr9n/HmN5/wCZ + AP8AmgD/AIgA/wNYA9wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIjbQAZGjwUICGUaioq + 0NQxMfX/MzP//zMz//8zM/7/KSnO/yYmw/83N+H/tbXV/////////////////////////////////+Tk + 6P9bWdD/HFqV/wCYAf8AmgD/AIcA/w1cDdIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAADAwoA////ABcXXyQkJKqXLS3h8DMz/f8zM///Fxdy/wUFGv8oKNH/T0/R/8vL2v////3///////// + //////7/4eHl/3Bwxf8yL/X/HlyY/wCYAf8AmgD/AIYA/wlWCbQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQUQAAMCxoHHB15VCgoutUxMfP+KirQ/xISWv8rK9j/MTH8/0dH + 0/+Xl8z/vLzT/7290/+Zmcn/UFDL/zEx8v80Mf//HV+Q/wCZAP8AmgD/AYQB/xNTE54AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOFAUAAAwAARQXRCQiI52TLi7k6zEx + 8/8zM/3/MzP//zEx/v8xMfH/Njbm/zY25f8xMfD/MTH9/zMz//80Mv//GmWC/wCaAP8AmgD/AX8B/RZS + FnUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoa + RQAKCwQFGxtzWCgnutwxMfT/MzP//zMz//8zM///MzP//zIy/v8yMv3/MzP//zMz//8zM///Fmxx/wCb + AP8AmgD/BHoE9xdKF1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAQDQIAAgAAARYUQy0jIputLi7k+jMz//8zM///MzP//yIirf8VFWj/Ly/q/zMz + //8yNfn/EXdV/wCaAP8AmQD/B3cH5y5KLjcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMTRAAPDhgSJyeJeDAw1ekzM/v/NDT//ykp + zP8QEFL/LS3j/zQz//8vOu3/CoUz/wCaAP8AmAD/CG8IyzA8MBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOTkQAb3AAAi4u + cFAoKLXTMTH0/jMz/v8uLuP/MjL5/zQy//8qRdL/BY8Z/wCaAP8AlAD/EWkRp3UfdQYAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAACwgAAAAAAAEVEzssJiahrTEx6/kzM///MzP//zQy//8hVqb/AZcE/wCaAP8CjwL/E18TdgB6 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAA+QJcALy8/Ei8voIIvL+DwMzP+/zMz/v8Vb2r/AJoA/wCa + AP8FiAX2Jl0mSQBeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyc+AB8fAAUsLI5dMTDU5C09 + 4v8JhjD/AJoA/wCZAP8JgAnaMkwyIBg7GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFZW + QQCEhAACNi+JRSFPe9MCkQv/AJoA/wCXAP8RdxGtcSxxBoGegQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAiJRgAAJgAAB1QGzAJdwi9AZUB/wKSAv8XbBdtAIsAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuECwAiTSIhA2wDsAN6A+kYTxg2FVwVAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0ADQADNQMABSgFJwQw + BI4GFwYWCBgIAAAAAAD/+AAD//8AAP/gAAB//wAA/8AAAD//AAD8AAAAD/8AAP4AAAAH/wAA/AAAAAP/ + AAD4AAAAAf8AAPAAAAAA/wAA8AAAAAB/AADgAAAAAH8AAMAAAAAAPwAAwAAAAAAfAACAAAAAAB8AAIAA + AAAADwAAAAAAAAAPAAAAAAAAAAcAAAAAAAAABwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAB + AAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPwAAAAAAAAD/4AAAAAAAAP/8 + AAAAAAAA//8AAAAAAAD//8AAAAAAAP//8AAAAAAA///8AAAAAAD///8AAAAAAP///8AAAAAA////4AAA + AAD////wAAAAAP////wAAAAA/////gAAAAD/////gAAAAP/////AAAAA/////+ABAAD/////+AEAAP// + ///8AQAA//////4BAAD//////4MAAP//////wwAA///////jAAAoAAAAgAAAAAABAAABACAAAAAAAAAA + AQDCDgAAwg4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAIAAAABAAAAAAAAAAAcHBwbFxcTQQ8PC0EDAwNBBQUCWgcLBfgCDgPsCBcL+wYZ + B/wFGQf/BRkH/wUZB/8FGQf/BRkH/wUZB/8FGQf/BRkH/wYZCP8LGg7/DhgS/w0REa0DAwNBCwsPQRMX + G0EaGhoTAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAADMzMwUZGRkKExMTDRMTD0AVFhDICw8IyQML + At8FHwT/AzMD/wFEAf8AUQD/AFUA/wBZAP8AWwD/AGAA/wBgAP8AYAD/AGAA/wBgAP8AYAD/AGAA/wBg + AP8AYAD/AF8A/wBbAP8AVwD/AFIA/wFIAf8CMQP/BBwF/wILBNkLEA3JFBkZyRUVFSMSEhIOAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMzMzBRcU + EmMODgx8DgwJtQoXB+IGJgX4ADkA/wBIAP8AVQD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AF8A/wBPAP8APgD/AysE/wkTC/8FBwePDQ0NdREREQ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAABoaGgxPDw8NwsLCJoNFgrtAhYC/QA2AP4AUgD/AGMA/wBkAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZQD/AGMA/wBJ + AP8AIwD9BxYHzgQJBDcZGRkUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVRUVAlOTk4xMjMywBkjGfkPOA//AEUA/wBX + AP8AYwD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AWgD/Aj8C/wMRA9cPEg/AGhoaMCQk + JAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRU + VAkwMDCKKTYp/wQvBP8ARwD/AGIA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGMA/wBOAP8CLAL/DRUN3hYWFnsfHx8IAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdXV0xNTw17wM4A/8AYQD/AGUA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBl + AP8AWwD/ASwB/wsVC+8KCgozHh4eGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/f38CUFBQViAs + IP8ATwD/AGUA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZQD/AFcA/wIwAv8LDQvfHR0dXwAA + AAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/f38CAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAEVFRaQLKwv/AF0A/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBPAP8DIAP8BQcFZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALKysgoAAAAAAAAAAAAAAAAAAAAAAAAAAEVFRQtDR0PaBTcF/gBi + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBj + AP8APwD9BQ4F5g8SD1MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8BqampEgAA + AAAAAAAAAAAAAAAAAABnZ2cvGiIayAFHAf8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AWQD/AiQC8gsLC4sAAAACAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wGysrIKAAAAAAAAAAAAAAAAW1tbSyAwIOcAUwD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZAD/ADcA/wgPCNUAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AZmZ + mQUAAAAAAAAAADc8NzMWKxb4AVkB/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZQD/AE8A/wMP + A+AMDAwoAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8BqqqqAwAAAABcX1xrCCoI5gBdAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AFoA/wMfA/8MDwxmAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACZmZkFJCQkOA8vD/8AYQD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBq + AP8AbgD/AHIA/wBzAP8AdgD/AHkA/wB+AP8AfgD/AH4A/wB+AP8AfgD/AH4A/wB+AP8AfgD/AH4A/wB4 + AP8AdQD/AHIA/wBvAP8AawD/AGcA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGEA/wEnAf8ODg6wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHR0dIwGKwbrAGIA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBoAP8AcQD/AIYA/wCHAP8AkAD/AJMA/wCVAP8AlwD/AJcA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AlwD/AJUA/wCTAP8AkQD/AIgA/wB7 + AP8AcQD/AGkA/wBoAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGMA/wEyAf8GCAZ1HBwcCQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AABwcHCcDzUP/QBjAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBrAP8AfgD/AI4A/wCYAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AkwD/AI0A/wCCAP8AcQD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGUA/wA8AP8JDAm8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdnZ2jAstC/8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGcA/wBw + AP8AgwD/AJcA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AkwD/AIUA/wB3AP8AbAD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wA6 + AP8FDQWFHBwcEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF9i + X1ASMhL9AGEA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGcA/wBxAP8AjQD/AJYA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCTAP8AiQD/AHEA/wBoAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGQA/wE9Af8NEQ25AAAAAwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkrDjMO+ABjAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wB0AP8AiwD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AI8A/wB9 + AP8AagD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGUA/wE6Af8JDQmHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlZWVYRQv + FPwAYwD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBuAP8AhwD/AJgA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCVAP8AfQD/AGwA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGUA/wEsAf4DCgNGAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKmpqSc1RDX2AFsA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBoAP8AgAD/AJQA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AkwD/AH8A/wBnAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGMA/wImAu8ACgAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMjIwUHCscmgFR + Af8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AdAD/AI8A/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJAA/wB4 + AP8AZwD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGAA/wIh + AtcAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAmZmZBV5kXrwCSgL/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AagD/AIIA/wCYAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJgA/wCJAP8AbQD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AFoA/wERAawAAAABAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4enh/Cz8L/wBl + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AHAA/wCQ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCUAP8AegD/AGcA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AU0B/wIGAnMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAW1tbDh8+H/8AYwD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGgA/wB7AP8AlgD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + Af8KhTH/Fm1v/xdrcv8Xa3L/F2ty/xdrcv8Xa3L/F2ty/xdrcv8XbHH/EnVa/xB4U/8MgTv/Bowg/wKV + Cv8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AhwD/AGsA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AT0B/wQIBD8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMGgyRAFcA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBqAP8AhwD/AJgA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8Fjxj/GmOF/zA48/8zM/7/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8yNfr/MjX5/zE39f8wOe//Lzvr/yxB2/8eXZf/Fmxx/wiJKP8GjR3/ApQM/wCZ + Af8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AkwD/AHIA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZQD/AikC9QAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAALS0tWQJCAv8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AawD/AI0A/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8Blgf/F2pz/yxA + 3/8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//y876/8oSMn/HV6U/xJ0XP8HiSb/AZgD/wCZAf8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AlgD/AH4A/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AXQD/BhcG0gAA + AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFxcXCwYNxj+AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AHAA/wCQAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8BlwT/EHhR/yhHzP8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8rQtr/G2OH/w97Sv8EkBb/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIcA/wBqAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8ATAD/DhMOnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAATFJM6gBeAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBvAP8AkwD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmAL/B4ol/yJVqv8xNvf/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MTb3/y49 + 5/8cYYz/B4om/wKVC/8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AI4A/wBrAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBl + AP8DMQP9FhkWWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4iHkMAPwD+AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AcAD/AJMA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/ApYI/xlmfv8vO+r/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8yNfn/J0rF/xNzX/8Blgb/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJEA/wBv + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBeAP8JGwneAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACenp4dGjQa+ABlAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AG4A/wCTAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wiIKv8lTrv/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//yw/4P8Vb2j/BJEU/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJMA/wBxAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wFGAf8IEQhyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsgG2UBUgH/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBqAP8AkQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wGW + B/8TcWL/Lzvq/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MTH3/y4u + 6f8yMvz/MzP//zMz//8zM///MzP//zMz//8zM///LCzb/w8PTv8pKc7/MzP+/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zM0 + /f8sQN3/FHBl/wKUDP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJQA/wBwAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGQA/wUpBfgXGxc3AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAB8fHwvEDUQ+ABlAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AaAD/AI4A/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8Gjhz/JFC1/zI0/f8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz/f8TE2H/AQEI/xoagf8zM/7/MzP//zMz//8zM///MzP//zMz + //8bG4f/AAAA/wMDEf8kJLP/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///KUbN/xF3Vf8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJMA/wBvAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AFoA/wwYDMUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEcEXYAWgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGcA/wCFAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8BmAP/EXdV/y87 + 7P8zM///MzP//zMz//8zM///MzP//ykpzv8bG4j/IyOy/zEx9v8zM///MzP//zMz//8zM///Li7m/wQE + Fv8AAAD/AwMP/y4u6P8zM///MzP//zMz//8zM///MzP//w4OSf8AAAD/AAAA/woKMf8yMvr/MzP//zMz + //8zM///MzP//zMz//8zM///LCzb/yQktv8nJ8L/MjL7/zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP+/yFXpf8HiyP/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJQA/wBuAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AzsD/xMW + E04AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAB1dXUyEDgQ+gBlAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AegD/AJgA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/ApQM/x1fkP8xNvf/MzP//zMz//8zM///MzP//zMz//8zM///FhZv/wAA + AP8BAQT/ExNh/zMz/v8zM///MzP//zMz//8wMO7/Bwci/wAAAP8AAAD/Hh6W/zMz//8zM///MzP//zMz + //8zM///Dg5G/wAAAP8AAAD/AgIJ/zEx9f8zM///MzP//zMz//8zM///MzP//zMz//8MDDv/AAAB/wIC + Cf8bG4j/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP+/y0+ + 4/8Ub2f/AZcF/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJEA/wBr + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AXwD/BhkGvgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADpIOpgBXAH/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AHAA/wCXAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wiJJ/8nSsX/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8ZGX//AAAA/wAAAP8CAgj/MzP9/zMz//8zM///MzP//zMz + //8iIqn/AQEE/wAAAP8VFWf/MzP//zMz//8zM///MzP//zMz//8gIKD/AAAC/wAAAP8EBBT/MTH3/zMz + //8zM///MzP//zMz//8zM///MzP//w0NQ/8AAAD/AAAA/wYGIf8yMvz/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zI1+/8hV6X/BJES/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AI8A/wBqAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8BRQH/DxQPcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAA/Pz8MAzAD3wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBp + AP8AkAD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCYAv8NfkP/MDnx/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yoq + 0/8DAxL/AAAA/wUFGv8zM/7/MzP//zMz//8zM///MzP//zEx9/8MDDz/CAgp/yoq0/8zM///MzP//zMz + //8zM///MzP//zAw8f8MDDz/AAAA/wwMPv8yMvz/MzP//zMz//8zM///MzP//zMz//8zM///GhqD/wAA + AP8AAAD/FRVn/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8rQdv/CYct/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AIoA/wBoAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBkAP8JHgn/FRUVDAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYoFjkCVgL/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AIEA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8BlwT/FHBl/zA58P8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP+/ygoyf8VFW3/GRl9/zMz//8zM///MzP//zMz + //8zM///MzP//y4u5f8uLuj/MzP//zMz//8zM///MzP//zMz//8zM///MzP//y4u6P8PD0v/Hx+c/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8oKMr/AQEG/wEBBv8sLNv/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8tPuT/Dn1G/wCZ + Af8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIUA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBNAP8NEQ2FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACysrIUK0Yr5ABjAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBw + AP8AlgD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AZcE/xpjhf8yNfn/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zIy + +P8JCS3/Dg5F/zIy/P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8xN/T/FW5r/wCZAf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AH0A/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGUA/wUpBf8rKytSAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADc3NyUNSQ3/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZwD/AIoA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wKVCf8bYof/MzT9/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//y8v6v8tLeD/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8yNPz/FW1s/wGYA/8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmAD/AHIA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AFYA/w0SDaoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAQ1JDjwBaAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBy + AP8AmAD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8BmAP/IFih/zI0/P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP+/zMz/f8zM/3/MzP9/zMz + /v8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MjL8/xsbiP8NDUD/FhZt/zEx9/8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MTH2/xgYff8mJsH/MzP//zMz//8yNfr/GGd8/wCYAf8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AkQD/AGkA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AysD/wAA + AAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJSUlAwZOBnWAGUA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZwD/AIsA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/ApUJ/x9anf8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MTH3/yMjsP8fH4L/MjKC/zIygv8yMoL/JCSH/yIirf8vL+n/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8yMvj/Cws2/wAAAP8AAAD/Hh6W/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8oKMz/AQEF/wIC + Df8mJr//MzP//zMz//8zNP3/Fm1u/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AhQD/AGcA/wBmAP8AZgD/AGYA/wBmAP8AWwD/ERcRwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAHigeGQpICv8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBx + AP8AmAD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wKW + CP8cX5D/MzT9/zMz//8zM///MzP//zMz//8yMvv/KSnP/yMjZf83N0b/k5OY/+3t7f/x8fH/8fHx//Hx + 8f/o6On/pKSp/z4+Uv8mJpj/LS3g/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zIy + +v8nJ8T/Fxd2/yQktP8zM/7/MzP//zMz//8zM///MzP//zIy+f8LCzn/AAAA/wAAAP8NDUH/MjL8/zMz + //8zM///MzP//zMz//8zM///MzP//yAgof8AAAD/AAAA/wcHI/8wMO//MzP//zMz//8xN/X/EHhR/wCZ + Af8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCYAP8AeAD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8DLwP/GBgYFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABKU0p3AFUA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZwD/AIgA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQH/HV+R/zMz/v8zM///MzP//zMz//8zM///MTHz/xkZ + bP9qanX/1dXV//7+/v//////////////////////////////////////+Pj4/8bGxv9iYnX/HByE/zIy + /P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///IyOw/wICC/8AAAD/BAQV/zAw8f8zM///MzP//zMz + //8zM///MzP//xISXP8AAAD/AAAA/xAQT/8zM/7/MzP//zMz//8zM///MzP//zMz//8zM///GhqB/wAA + AP8AAAD/Cgoy/y0t4/8zM///MzP//zMz//8vO+v/CoUw/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCUAP8AbAD/AGYA/wBmAP8AZgD/AGYA/wBbAP8aHhrSAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgdCJ0AZAD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBs + AP8AlgD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJgC/xRx + Zf8yNPz/MzP//zMz//8zM///MzP//yws2/8sLFr/tra2//////////////////////////////////// + //////////////////////////////////+dnZ3/IiJl/y8v7P8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8iIqv/AAAA/wAAAP8AAAD/IyOu/zMz//8zM///MzP//zMz//8zM///Hx+d/wAAAP8BAQP/IyOw/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8ZGX7/AAAA/w0NQv8wMPP/MzP//zMz//8zM///MzP//zMz + //8qRNT/BJAW/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCJAP8AZwD/AGYA/wBm + AP8AZgD/AGYA/wQyBPkwMDAqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcXFwLI0kj9QBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AHwA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8Pe0n/MDjz/zMz//8zM///MzP//zMz//8vL+n/MTFT/9bW + 1v////////////////////////////////////////////////////////////////////////////7+ + /v/CwsL/HBxi/zIy+v8zM///MzP//zMz//8zM///MzP//zMz//8zM///GRl//wUFG/8GBh7/GBh7/y8v + 7v8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yYmwf8AAAD/AAAA/wAAAv8dHZX/MzP//zMz + //8zM///MzP//zMz//8tLd//Bwck/xERV/8xMfj/MzP//zMz//8zM///MzP//zMz//8zM///MzP//xkZ + fv8CAgz/KyvY/zMz//8zM///MzP//zMz//8zM///MzP//zMz/v8iVKv/AZYH/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJgA/wB2AP8AZgD/AGYA/wBmAP8AZgD/AFcA/ygrKNsAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAABMTEw0EQQT/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AjwD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/BY8Y/y0/ + 4P8zM///MzP//zMz//8zM///MjL7/yQkW//T09P///////////////////////////////////////// + //////////////////////////////////////////////////+ioqP/HByL/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8HByX/AAAA/wAAAP8AAAH/ERFV/zMz/f8zM///MzP//zMz//8zM///MzP//zMz + //8zM///KyvZ/wAAAP8AAAD/ExNh/zEx9/8zM///MzP//zMz//8zM///MzP//zMz//8wMO//MjL5/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///ISGn/wwMO/8yMvv/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zI0/P8YZ3v/AJkB/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJIA/wBq + AP8AZgD/AGYA/wBmAP8AZQD/BCgE6AAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYWBhgBO + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AG0A/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wKWCP8jUrH/MzP//zMz//8zM///MzP//zMz//8fH4r/sLCw//// + //////////////////////////////////////////////////////////////////////////////// + //////////////39/f9lZXD/Kyva/zMz//8zM///MzP//zMz//8zM///MzP//wgIKP8AAAD/AAAA/wAA + AP8HByT/MTH0/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8tLeL/AwMO/wAAAP8eHpb/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8yMv3/Ly/r/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zA48f8KhDX/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIQA/wBmAP8AZgD/AGYA/wBmAP8BUgH/HSEdgwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvNS+GAF4A/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AfgD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQH/E3Jf/zI0 + /P8zM///MzP//zMz//8zM///LCze/2FhaP/8/Pz///////////////////////////////////////// + /////////////////////////////////////////////////////////////97e3v8mJnX/MzP+/zMz + //8zM///MzP//zMz//8zM///ERFU/wAAAP8AAAD/AAAA/wkJL/8yMvn/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zAw8v8LCzX/AQEH/yYmvf8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//yhKxv8ClQn/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmAD/AG8A/wBmAP8AZgD/AGYA/wBjAP8KJArgJCQkBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY + AIYAZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wCPAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wWPGf8uPOj/MzP//zMz//8zM///MzP//zMz//8mJnb/6Ojo//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f39/2VldP8tLeP/MzP//zMz//8zM///MzP//zMz//9AQLX/Y2Nj/3t7 + e/9LS0v/JCSM/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//y4u6f8kJLX/MjL7/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//xll + gP8AmQH/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AjQD/AGcA/wBmAP8AZgD/AGYA/wJF + Av8QEBA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR2BH/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AawD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmAP/H1ub/zMz + //8zM///MzP//zMz//8zM///Kyva/3p6e/////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////1NTU/yQk + ov8zM///MzP//zMz//86Ov//lZX////////////////////////t7f//eXn//zY2//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MDjz/wiJKP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AegD/AGYA/wBmAP8AZgD/AGAA/xYnFtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAApUCn/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wB1AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wiJKP8wOPP/MzP//zMz//8zM///MzP//zMz//8nJ4f/6urq//// + ///5+fn/0dHR/39/f/9bW1v/YWFh/7W1tf/39/f///////////////////////////////////////// + ///////////////////////////////////z8/P/Nzdw/zMz/v8zM///NTX//6Gh///9/f////////// + ///////////////////5+f//qan//zs7//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///I1Gy/wCYAv8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCTAP8AaQD/AGYA/wBm + AP8AZgD/BToF9yIiIiUAAAAAAAAAAAAAAAAAAAAAAAAAAAw8DP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AIIA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQH/IFij/zMz + //8zM///MzP//zMz//8zM///MDDx/11dbf/+/v7/39/f/0hISP8EBAT/AAAA/wAAAP8AAAD/BAQE/zw8 + PP/T09P///////////////////////////////////////////////////////////////////////// + //9jY3v/Ly/t/zMz//9ra////Pz////////////////////////////////////////+/v//u7v//zY2 + //8zM///MzP//zMz//82Nv//V1f//3Jy//9ycv//cnL//3Jy//9ZWf//MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8yNPz/DnxH/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCBAP8AZgD/AGYA/wBmAP8AWAD/GyYbigAAAAAAAAAAAAAAAAAA + AAAAAAAAADYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AjQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/waNHf8yNfr/MzP//zMz//8zM///MzP//zMz//8mJr//tLS2/+zs + 7P8pKSn/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/xwcHP/m5ub///////////////////////// + /////////////////////////////////////////////5OTmv8rK9r/Ojr//9ra//////////////// + ////////////////////////////////////////trb//0pK//+Fhf//rq7///T0//////////////// + ///////////////////q6v//iYn//0JC//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zIy+f8REVj/LS3h/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8qRNT/AZYG/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJgA/wBs + AP8AZgD/AGYA/wBlAP8BIwHTHx8fCAAAAAAAAAAAAAAAAAAAAAAAQAD/AGYA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGcA/wCXAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/GmSE/zMz + //8zM///MzP//zMz//8zM///MzP//yUlkP/y8vL/YWFh/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/01NTf/9/f3///////////////////////////////////////////////////////// + ////////tbW1/yoq0P9oaP//+/v///n5///MzP//h4f//4KC//+Dg///rKz///Ly///+/v////////// + ///9/f//5+f////////////////////////////////////////////////////////+/v//3Nz//1RU + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///Hx+f/wAAAv8bG4n/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8TcmD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIMA/wBmAP8AZgD/AGYA/wFIAf8MEwwoAAAAAAAA + AAAAAAAAAAAAAABBAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AbQD/AJgA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wGWCP8uPOn/MzP//zMz//8zM///MzP//zMz//8zM///Ojp1/87O + zv8FBQX/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/7e3t/////////////// + ///////////////////////////////////////////////////R0dH/IyOv/8HB//+zs///Xl7//zMz + //8zM///MzP//zMz//8zM///TU3//7W1///9/f////////////////////////////////////////// + ////////////////////////////////////////6Oj//1tb//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8PD07/AAAA/woKMf8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//ytC2P8Blgf/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AlgD/AG0A/wBmAP8AZgD/AGAA/xAhELcAAAAAAAAAAAAAAAAAAAAAAEEA/wBmAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wB0AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/Dn1G/zMz + //8zM///LS3j/yws3f8xMfj/MzP//zMz//9PT3T/cXFx/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/SEhI//////////////////////////////////////////////////// + /////////////9HR0f8tLav/gYH//zY2//8zM///MzP//zMz//8zM///MzP//zMz//8zM///Nzf//6qq + ///9/f////////////////////////////////////////////////////////////////////////// + ////////1dX//z8///8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//xkZgP8AAAD/AwMQ/zAw8v8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzT9/xF3 + Vf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AhAD/AGYA/wBmAP8AZgD/BTYF/QwZ + DBQAAAAAAAAAAAAAAAAAQQD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AHkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8cX5D/MzP//y8v6/8HByf/BQUY/w8PTf8xMfP/MzP//1pa + af8jIyP/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8KCgr/7+/v//// + ////////////////////////////////////////////////////////tLS0/ygoyP8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///Ojr//7S0//////////////////////////////7+ + ///c3P//eXn//2Nj//9jY///jIz//+fn///9/f/////////////+/v//kpL//zMz//8zM///MzP//zEx + 9/8tLeT/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MTH1/xYWcP8EBBX/Ly/q/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///J0vC/wCYAf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCVAP8AbAD/AGYA/wBmAP8AVAD/KS8phwAAAAAAAAAAAAAAAABBAP8AZgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AgAD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/yxA + 3f8zM///ICCh/wAAAP8AAAD/AAAA/ysr2f8zM///TExZ/wcHB/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wQEBP/R0dH///////////////////////////////////////// + //////////////////+Wlpv/KyvW/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///QED//9fX///////////////////+/v//r6/t/zg44f8yMvv/MzP//zMz//8zM///OTn//39/ + ///o6P/////////////p6f//QkL//zMz//8zM///FBRo/wUFGf8uLuf/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//ysr2/8yMvr/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8yNvj/DIA9/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wB/AP8AZgD/AGYA/wBk + AP8KIQrVKioqBgAAAAAAAAAAAEAA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AGYA/wCIAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8FjRz/MjT8/zMz//8dHZH/AAAA/wAAAP8DAw7/LS3i/zMz + //8/P2L/BQUF/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/BAQE/8rK + yv///////////////////////////////////////////////////////////2Jidv8vL+n/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///XFz///r6/////////////8rK + 4v8ODiL/AgIL/wsLOf8rK9j/MzP+/zMz//8zM///MzP//0tL///Q0P///v7///7+//9xcf//MzP//y4u + 5f8CAgj/AAAA/xUVbP8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8hVan/AJgB/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJQA/wBqAP8AZgD/AGYA/wFAAf86QTonAAAAAAAAAAAANgD/AGYA/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AIwA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/w59 + Rf8zM/7/MzP//yAgo/8AAAD/AAAB/xISW/8yMvv/MzP//y8vav8DAwP/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8EBAT/ysrK//////////////////////////////////// + ///////////////////19fX/NjZf/zIy/P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//80NP//r6/////////4+P//QEB3/wAAAP8AAAD/AAAA/wYGHP8uLuX/MzP//zMz + //8zM///MzP//0FB//+5uf///v7//7q6//8zM///JibA/wAAA/8AAAD/AgIL/yoq1P8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zA67v8GjCD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AHoA/wBm + AP8AZgD/AFoA/x8mH6EAAAAAAAAAAA09Df8AZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AkAD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/FHBl/zMz//8zM///Ly/q/xgYdv8cHI3/MTH0/zMz + //8zM///KSma/wUFBf8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wUF + Bf/g4OD//////////////////////////////////////////////////////9vb2/8mJpX/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//9ISP//uLj//4uL + +f8LCzf/AAAA/wAAAP8AAAL/FhZv/zIy/f8zM///MzP//zMz//8zM///MzP//zo6//+xsf//4OD//zw8 + //8nJ8P/AQED/wAAAP8AAAD/GBh4/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//xRwZf8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AkAD/AGgA/wBmAP8AZgD/Gzsb/zMzMwUAAAAAI0oj/wBm + AP8AZgD/AGYA/wBmAP8AZgD/AGYA/wCSAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8aY4b/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8mJr3/AQED/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/Gxsb//39/f////////////////////////////// + ////////////////////////hISN/yoq0v8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//83N///MzP1/wUFGP8AAAD/AAAC/w4OSP8xMfP/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//z4+//+srP//QUH//yws3/8BAQb/AAAA/wAAAP8eHpf/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///KEjJ/wGXBf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCX + AP8AbQD/AGYA/wBmAP8BRQH/goKChQAAAABBXEH9AGYA/wBmAP8AZgD/AGYA/wBmAP8AZgD/AJcA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/yBYov8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//y8v6v8BAQf/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP9iYmL///////////////////////////////////////////////////////X19f89PXn/MjL6/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8wMPL/AQEE/wEBBf8TE2D/Ly/t/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MjL8/wUFHP8AAAD/AgIJ/y0t4P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM/7/MjL8/yws3P8qKtH/KirR/yoq0f8wMPP/MzP9/zMz//8zM///MzP//zMz//8wOfD/Bowh/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wB0AP8AZgD/AGYA/wBfAP8NFg2TAAAAAAAY + AIYAZgD/AGYA/wBmAP8AZgD/AGYA/wBmAP8AiQD/AIoA/wCKAP8AigD/AIoA/wB/AP8AewD/AHsA/wB7 + AP8AewD/HESQ/zEx+P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//xERUP8NDQ3/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/BQUF/8vLy/////////////////////////////// + ////////////////////////rKyw/yMjsv8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zAw8v8AAAD/GRl+/zIy/f8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///ICCg/wcHI/8XF3P/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8wMO7/IyOv/yYmiv9OTmb/eXl5/4mJif+JiYn/iYmJ/2Rk + av89PXf/IyOj/zEx8/8zM///MzP//zMz//8SdFv/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AH8A/wBmAP8AZgD/AGYA/xk9Gf8AAAABHicehgBhAP8AZgD/AGYA/wBgAP8CUAL/CykL9S09 + LeA2RjbgNkY24DZGNuA4SDjgYW5h4G54buBueG7gbnhu4G54buBmaXDgEhI74CYmg/8tLdr/MDDy/zMz + /v8zM///MzP//zMz//8zM///Jia9/zY2OP8DAwP/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wEB + Af98fHz//v7+//////////////////////////////////////////////////Hx8f8wMFv/MjL6/zMz + //8zM///MzP//zMz//8zM///MjL8/yQkt/8tLeH/MjL6/zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MDDy/wAAAv8TE2D/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8yMvz/Ly/r/zEx9v8zM///MzP//zMz//8zM///MzP//zMz//8yMvn/JSW1/yUl + Rf+ZmZ7/5OTk//b29v///////////////////////f39/+7u7v+urrL/Li5F/yMjmP8xMfX/MzP//yNS + sP8AmQH/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AigD/AGYA/wBmAP8AZgD/AEcA/3Fx + cXVla2WFAFUA/wBdAP8BMgH/OUo5/ikrKWmGhoY5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAf39/Vh8fL2BHR2/+Fxdx/icnwf8yMvv/MzP//zMz//8yMv3/JiZq/2Vl + Zf8BAQH/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/TU1N//X19f////////////////////////////// + ////////////////////////ZmZv/ykpzP8zM///MzP//zMz//8zM///MzP//zMz//8oKMn/AAAB/wQE + Ev8cHI3/MTH4/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8yMvr/Dg5G/xkZf/8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MDDx/xoaYf+MjJD/7e3t//////////////////////////////////// + ///////////////////4+Pj/rKyt/x8fVv8uLub/LT/h/wOTEP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCQAP8AZwD/AGYA/wBmAP8AYQD/SE5I1gAXAAsOKw7xHyMfxImJiYkAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACEhIQbTExMqhcXNsAnJ4z/KSnP/zEx+P8tLeL/U1No/4qKiv8fHx//AQEB/wAAAP8VFRX/MDAw/4KC + gv/9/f3//////////////////////////////////////////////////////5SUlv8bG4b/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//yEhpf8AAAD/AAAA/wEBB/8YGHv/MzP+/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//y8v6v8mJlj/vLy8//// + ///////////////////////////////////////////////////T09P/qKio/39/f/+AgID/goKC/xMT + Nv8sLt7/CIgp/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJQA/wBqAP8AZgD/AGYA/wBm + AP8UNxT/P38/BDZFNiGqqqoMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf39/CiwsLChhYXHcERE58SUl + mP8iIqT/cXF0/9/f3//Y2Nj/19fX/+Hh4f/u7u7//v7+//////////////////////////////////// + //////////////z8/P+mpqj/HR1u/zIy+f8zM///MzP//zMz//8zM///MzP//zMz//8zM///HR2T/wAA + AP8AAAD/AAAA/wQEFv8tLeP/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8xMff/JSVj/87Oz//+/v7///////////////////////////////////////// + ///v7+//eXl5/xQUFP8EBAT/AAAA/wAAAP8EBAT/BAQE/w4OR/8VaWj/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmAD/AGwA/wBmAP8AZgD/AGYA/wA1AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACurq4mVFRUXkpKV64SEh7/VlZW/+/v7/////////////// + ///////////////////////////////////////////////////19fX/cHBz/x0dgf8yMvv/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8gIJ//AAAA/wAAAP8AAAD/AAAC/ygox/8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP9/yAggf+0tLX//v7+//// + ////////////////////////////////////////7+/v/zY2Nv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAB/ww3P/8AmAH/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AcgD/AGYA/wBm + AP8AZgD/ADUA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALCwsA10dHS2RkZG68nJyf/8/Pz///////////////////////////////////////// + ///29vb/urq6/zs7Wf8jI6//MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yQk + s/8AAAD/AAAA/wAAAP8AAAD/JyfD/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8pKcn/cnJ5//39/f////////////////////////////////////////////z8 + /P9nZ2f/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/ABAA/wCNAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wB8AP8AZgD/AGYA/wBmAP8APwD/AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0dHQjWVlZyFdX + V/K0tLT/7u7u//T09P/29vb/9vb2//b29v/y8vL/0tLT/0NDU/8kJIn/Li7m/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///LCza/wAAAf8AAAD/AAAA/wAAAf8nJ8T/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MjL5/y4ubP/q6ur///////// + ////////////////////////////////////////y8vL/wwMDP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AFAA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIMA/wBm + AP8AZgD/AGYA/wBBAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf39/HDIyMmkfHx9pcnJy+zU1Nf87O1X/QkJ//zAw + hv8fH57/LS3j/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///Bwci/wAAAP8AAAD/AwMQ/yws3f8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8pKcT/nZ2i//////////////////////////////////////////////////39 + /f9UVFT/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AGAD/AJUA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AjAD/AGYA/wBmAP8AZgD/AEEA/wAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAB/f38Cm5ubWigoKcMrK1//Jye9/zAw7/8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8dHZX/AAAA/wAAAP8ICCv/MjL5/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MjL7/y4uav/x8fH///////// + ////////////////////////////////////////6+vr/xsbG/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AfwD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCO + AP8AZwD/AGYA/wBmAP8AQQD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf39/Anh4 + eDlycnm1JCRK9SMjov8xMfP/MzP+/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zEx8/8ICCn/AAAA/xoagv8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8tLeD/eHh+//////////////////////////////////////////////////// + ///c3Nz/CgoK/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AQEB/wBU + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJEA/wBoAP8AZgD/AGYA/wBBAP8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ0VTU1NeT8/YO0dHYj/Li7n/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yoq0/8KCjL/LCze/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yws + 3v8yMvv/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yQkkv/Q0ND///////// + /////////////////////////////////////////////9XV1f8CAgL/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8fHx//E0QT/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AlQD/AGkA/wBmAP8AZgD/AD4A/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAcXFxCWNjZkggIDDeJSWM/y0t3/8zM/3/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zIy+P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8oKMb/AgIK/w4ORv8vL+3/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM/3/LS1m//7+/v////////////////////////////////////////////// + ////////39/f/w4ODv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/z8/ + P/88Xjz/AJgA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCXAP8AagD/AGYA/wBmAP8ANgD/AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALS0 + tBg6OjpBU1No9hYWZ/stLeH/MzP9/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//x8f + nP8AAAD/AAAA/w4ORf8yMvn/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zIy+/9VVWr///////// + ///////////////////////////////////////////////////x8fH/IiIi/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/j4+P/1dzV/8AlwD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wBqAP8AZgD/AGYA/wA1AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaWlpRhERHo8cHHnpKSnP/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///GhqE/wAAAP8AAAD/AgIJ/yws2v8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MDDw/3p6ev////////////////////////////////////////////// + //////////////////9ZWVn/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/xIS + Ev/q6ur/aX5p/wCXAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AHEA/wBmAP8AZgD/ADUA/wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAASIiIh4PDyOlFxhv9yws3/8zM/7/MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8fH5v/AAAA/wAAAP8ODkT/MzP+/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8sLNz/jo6O//// + /////////////////////////////////////////////////////////////9TU1P8NDQ3/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8EBAT/ioqK//7+/v9Xc1f/AJcA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AdAD/AGYA/wBmAP8FNgX/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAARFRU8GR005BYWa/wuLun/MzP+/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yIirf8AAAH/AAAB/yEhp/8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//yws3P+Pj4////////////////////////////////////////// + /////////////////////////f39/5SUlP8FBQX/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AQEB/2Bg + YP/5+fn//////0hnSf8AlwD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wB5AP8AZgD/AGYA/x5G + Hv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhofMQ0OIb4aG33/LS3g/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///Jia+/wAAAf8JCS3/MjL7/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///LCzf/4+P + j////////////////////////////////////////////////////////////////////////////6Gh + of8YGBj/AAAA/wAAAP8AAAD/AQEB/yEhIf+Hh4f/+vr6///////9/f3/IUI2/wCYAv8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AHkA/wBmAP8AZgD/Ikgi/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAGTMzCgkJEhwREybcHR2W7zAw7/8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8tLeL/BAQW/yMjrf8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8yMvj/cXFz//////////////////////////////////// + /////////////////////////////////////////v7+/+Xl5f+Li4v/goKC/5ycnP/Z2dn/7Ozs//39 + /f///////////+Tk5P8cK23/AZcE/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AgAD/AGYA/wBm + AP86Vjr/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAFBQsrExRFuh8fmf4yMvn/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8sLNz/MjL8/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zIy + /P9SUnL///////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////s7Oz/youzf8BlwX/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCAAP8AZgD/AGYA/zxVPP4AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHR8hchYXT+omJr7/MjL8/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP+/ywsdP/7+/v///////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////9fX3j/MTH3/wOTD/8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIAA/wBm + AP8AZgD/ABgAhgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAJCQkHA0NNDoVF27HLCzd/jIy/P8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///Jiae/9PT0/////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////5eXl/yQkdv8zM/7/CIko/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AgAD/AGYA/wBmAP8ADQCGAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYW + FhcWGDGRFhZr/y8v7P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8tLd7/iYmM//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////+Ghor/LCzY/zMz//8LgTr/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCA + AP8AZgD/AGQA/wkLCYYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtMDREEBAq0yMjsf8xMfb/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zIy+/8xMWr/8PDw//////////////////////////////////////////////////// + ////////////////////////////////////////////////////////3Nzc/yEhYv8yMvv/MzP//w96 + Tf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIAA/wBmAP8AWgD/PkA+hgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAoNTUTBQUnLRERTOwqKtP/MzP9/zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MjL8/y8v7P8vL+v/Ly/t/zIy/P8zM///MzP//yYmtv+goKL//v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////n5+f9aWmr/LCzb/zMz//8zM///D3pN/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AgAD/AGYA/wBRAP90dHSGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQ0N + I3MYGG3/MDDw/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8hIaf/AQEF/wAA + AP8CAgz/Fxdz/zMz//8zM///MjL5/yUlZ//b29v///////////////////////////////////////// + ///////////////////////////////////////////////////+/v7/h4eL/yMjo/8zM///MzP//zMz + //8Pek3/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCAAP8AZgD/AEgA/319fTUAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABISEhwNDTHKJCW0/zIy+/8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//xwckP8AAAD/AAAA/wAAAP8AAAD/KirS/zMz//8zM///LCzf/0BA + WP/t7e3///////////////////////////////////////////////////////////////////////// + /////////f39/5+fov8ZGXb/MjL9/zMz//8zM///MzP//w96Tf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AIAA/wBmAP8APgD/AAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAABkZGQoSEiRjExNa9S4u5/8zM/7/MzP//zMz//8zM///MzP//zMz//8zM///KirS/wIC + C/8AAAD/AAAA/wAAAP8gIKH/MzP//zMz//8zM/7/KCjG/0REVP/t7e3///////////////////////// + //////////////////////////////////////////////n5+f+Kio7/ISF8/zEx9/8zM///MzP//zMz + //8zM///D3pN/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AgAD/AGYA/ww9DP8AAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeHiUiDg4uoxwc + jf8yMvn/MzP//zMz//8zM///MzP//zMz//8yMvv/ExNg/wAAAP8AAAD/AAAA/x8fnv8zM///MzP//zMz + //8zM///KSnL/zMzW/+8vLz//v7+//////////////////////////////////////////////////// + ///Nzc3/TU1d/x8fnP8yMvr/MzP//zMz//8zM///MzP//zMz//8Pek3/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wB8AP8AZgD/Kk0q/wAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACDxIYUhMURv4qKtT/MzP//zMz//8zM///MzP//zMz + //8vL+3/CQkr/wAAAP8AAAD/JyfE/zMz//8zM///MzP//zMz//8zM///MDDz/xUVXP+VlZv/2dnZ//j4 + +P////////////////////////////T09P/R0dH/W1tt/xYWXP8tLeH/MzP+/zMz//8zM///MzP//zMz + //8zM///MzP//wuCN/8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AHkA/wBmAP86Tjrn////AQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAISUpPRcbLvUZGYL7MjL6/zMz//8zM///MzP//zMz//8uLuf/GRl+/wsLN/8xMff/MzP//zMz + //8zM///MzP//zMz//8zM///MjL5/ygoyf8pKYH/OztL/2Njaf9sbHL/bGxy/2xscv9aWmD/ODhQ/yoq + ff8rK9n/MjL9/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///CIgp/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AeQD/AGYA/wEIAZIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkMEE8WF0//JyfF/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///Li7l/yws3v8sLN7/LCze/y4u5/8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8Fjxj/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wB0AP8AWwD/Njc2kgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ4VFSQODx/RIyOq5TEx9P0zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzT9/wGXBv8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AHEA/wBPAP93eXd4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABcX + FwsmJjMoFxdZzSws4P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8vO+r/AZcF/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AbAD/AEMA/wAA + AAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEEBAQ5CAggqyAgn/8yMvn/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//ytC2v8BmAT/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJgA/wBqAP8OQQ7/MzMzBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAHGBYXzRMSUP4vL+n/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///J0vD/wCYAv8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AlQD/AGkA/zFS + Mf+ZmZkFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFxQQTBIQ + K/ojI7D/MzP+/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + /v8yMvz/MjL8/zMz/f8zM/7/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8hVqf/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCSAP8AaAD/HCgcvH9/fwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJCaAZGXX/MDDu/zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///JSW9/wEBBP8AAAD/Cgo0/xoahf8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//xpkg/8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AI8A/wBe + AP8zOjOeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAARsZF40PDzz1KyvZ/zMz/v8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8pKc3/AQEG/wAAAP8AAAD/EBBS/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///EXdV/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AjAD/AFEA/36Cfo0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsWEjgJCSLBHx+Y/jIy + +/8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zIy+v8QEFL/AAAA/wAAAP8VFWn/MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8GjB//AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCF + AP8ERAT/ABcACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAADMzMxRDQ0eaHh5y8y8v6/8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//y4u5f8HByH/AAAA/xgYev8zM///MzP//zMz//8zM///MzP//zMz//8zM///Ljzp/wKV + Cf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AH8A/yFKIf9cXFwLAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AABjY2ZVICBK7ysr2P8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//yYmwf8EBBP/Hh6a/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8oScj/AZcE/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AdQD/DCIMuH9/fwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgYGAdQkJU4B8fmv8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//yws3P8wMPD/MzP//zMz//8zM///MzP//zMz//8zM///MzP//x9a + nf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wBkAP8xOjGrAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAPDwowExANwxYWcPEvL+3/MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///EnRa/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AlQD/AFQA/4eLh4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEcHBwSDw8PUBAP + POgsLN7/MzP+/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zE2 + 9/8Fjxj/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCSAP8MSgz/JiYmFAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAABAAAABAAAAAQAAAACJyMXQQ0MItwiIq3+MzP//zMz//8zM///MzP//zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///K0PY/wKVCv8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AI0A/w8xD9V/f38IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAA + AAYAAAACIRwWLSwsNashIZf4MTH2/zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8gWKL/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AfwD/GSgZtwAAAAAAAAAAAAAAAX9/ + fwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABh4eHESsrNFMeHmT7MTHz/zMz + //8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//w57Sf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wBnAP9zeXOwAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHV1dVkmJl3mKirR/zMz//8zM///MzP//zMz//8zM///MzP//zMz + //8vO+v/BJAW/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmAD/ClIK/ykpKR8AAAAA////AT8/ + PwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMz + MwofHzvLKCjD/zMz/v8zM///MzP//zMz//8zM///MzP//yZNvv8AmAL/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCUAP8eRh7zmJiYGQAAAABVVVUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGFhYRUgIDaEISGa/zIy/P8zM///MzP//zMz + //8zM///E3Fi/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AIoA/x4vHsMAAAAAAAAAAH9/ + fwIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAABJSUmHJCR6/jAw8f8zM///MzP//y867f8GjR3/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AcwD/ZmxmfwAAAAAAAAAAf39/AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwcHJtGBhQ6y8v + 6/8zM///JE+4/wCYAf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/xBcEP9UVFQtAAAAAAAA + AAB/f38CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5OTksODhd+yss1/8RdlX/AJkA/wCZAP8AmQD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AlgD/CzIL3pycnA0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAA6OjoNNT5C3gNvCf8AmQD/AJkA/wCZAP8AmQD/AJkA/wCZAP8AmQD/AJkA/wCKAP9ZZlnQAAAAAAAA + AAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABycnIUIjEiswNtA/8AmAD/AJkA/wCZ + AP8AmQD/AJkA/wCZAP8AmQD/BXEF/0RERE4AAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAgAAAAB3d3cPGSwZeQNcA/4AmAD/AJkA/wCZAP8AmQD/AJkA/wCYAP8FRwXncnJyFAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAFAAAAAAAAAAAAAAAAR0tHiAVa + BfMAlgD/AJkA/wCZAP8AmQD/AJIA/zdRN9wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAMAAAABAAAAAAAAAACZmZkFQUlBXgJJAu4AlAD/AJkA/wCZAP8CfQL/MjUyZAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAADBgYGUQA0APcAkgD/AJkA/wNNA/crKys7AAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACCgoKYgEsAeAAhgD/AyAD4Q8P + DxEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAABAAAAAAAAAAEAAAAJDQ0NTgIaAvYICQi3AAAABQAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA + AAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMREREPDAwMegwM + DD0AAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////5gAAAOf/////////////+4AAAAAH + //////////////gAAAAAAf/////////////gAAAAAAB////////////+AAAAAAAAD////////////AAA + AAAAAAP///////////gAAAAAAAAA///////////gAAAAAAAAAHv////////v4AAAAAAAAAA///////// + 74AAAAAAAAAAD////////88AAAAAAAAAAAP////////OAAAAAAAAAAAB////////zAAAAAAAAAAAAH// + /////8gAAAAAAAAAAAA////////gAAAAAAAAAAAAP///////4AAAAAAAAAAAAA///////8AAAAAAAAAA + AAAP//////+AAAAAAAAAAAAAA///////AAAAAAAAAAAAAAH//////gAAAAAAAAAAAAAB//////wAAAAA + AAAAAAAAAP/////4AAAAAAAAAAAAAAB/////8AAAAAAAAAAAAAAAP////+AAAAAAAAAAAAAAAB/////g + AAAAAAAAAAAAAAAf////wAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAAf///+AAAAAAAAAAAAAAAAD + ////AAAAAAAAAAAAAAAAA////wAAAAAAAAAAAAAAAAH///4AAAAAAAAAAAAAAAAB///8AAAAAAAAAAAA + AAAAAP///AAAAAAAAAAAAAAAAAB///gAAAAAAAAAAAAAAAAAf//4AAAAAAAAAAAAAAAAAD//8AAAAAAA + AAAAAAAAAAAf//AAAAAAAAAAAAAAAAAAH//gAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAP/8AA + AAAAAAAAAAAAAAAAB//AAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAAAAAAAA + A/+AAAAAAAAAAAAAAAAAAAH/gAAAAAAAAAAAAAAAAAAB/4AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAA + AAAAAAD/AAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAA/AAAAAAAA + AAAAAAAAAAAAPwAAAAAAAAAAAAAAAAAAAD8AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAAHwAA + AAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAA + AAcAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAA + AAAAAAADAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/+AAAAAAAAAAAAAAAAAAD//8AAAAAAAAAAAAAAAAAB// + /wAAAAAAAAAAAAAAAAD////gAAAAAAAAAAAAAAAA/////AAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAA + AAD/////wAAAAAAAAAAAAAAA//////gAAAAAAAAAAAAAAP/////+AAAAAAAAAAAAAAD//////8AAAAAA + AAAAAAAA///////wAAAAAAAAAAAAAP///////AAAAAAAAAAAAAD///////+AAAAAAAAAAAAA//////// + wAAAAAAAAAAAAP////////gAAAAAAAAAAAD////////+AAAAAAAAAAAA/////////wAAAAAAAAAAAP// + ///////gAAAAAAAAAAD/////////+AAAAAAAAAAA//////////wAAAAAAAAAAP//////////AAAAAAAA + AAD//////////8AAAAAAAAAA///////////gAAAAAAAAAP//////////+AAAAAAAAAD///////////4A + AAAAAAAA////////////AAAAAAAAAP///////////8AAAAAAAAD////////////gAAAAAAAA//////// + ////+AAAAAAAAf////////////4AAAAAAAH////////////+AAAAAAAB/////////////4AAAAAAAf// + //////////9AAAAAAAH/////////////8AAAAAAB//////////////wAAAAAAf//////////////AAAA + AAP//////////////wAAAAAD///////////////AAAAAA///////////////4AAAAAP///////////// + //gAAAAD///////////////8AAAAB////////////////gAAAAf///////////////4AAAAH//////// + ///////8AAAAB////////////////wAAAAz///////////////+AAAAN/////////////////AAACf// + //////////////4AAAv/////////////////AAAb/////////////////8AAG//////////////////g + ABv/////////////////8AAf//////////////////gAO//////////////////8ADv///////////// + ////+gA//////////////////+uAf//////////////////5gH///////////////////8Bv//////// + ///////////gf///////////////////oDb///////////////////B/ + + + \ No newline at end of file diff --git a/MelonLoader.Installer/MelonLoader.Installer.csproj b/MelonLoader.Installer/MelonLoader.Installer.csproj new file mode 100644 index 000000000..d80ea7158 --- /dev/null +++ b/MelonLoader.Installer/MelonLoader.Installer.csproj @@ -0,0 +1,19 @@ + + + + WinExe + netcoreapp3.1 + true + icon.ico + app.manifest + + + + ..\Output\Installer\Release\ + + + + ..\Output\Installer\Debug\ + + + \ No newline at end of file diff --git a/MelonLoader.Installer/Program.cs b/MelonLoader.Installer/Program.cs new file mode 100644 index 000000000..360d765b8 --- /dev/null +++ b/MelonLoader.Installer/Program.cs @@ -0,0 +1,64 @@ +using System; +using System.IO; +using System.IO.Compression; +using System.Threading; +using System.Windows.Forms; +using System.Net; + +namespace MelonLoader.Installer +{ + static class Program + { + internal static string Title = (BuildInfo.Name + " Installer for v" + BuildInfo.Version + " Open-Beta"); + internal static string VersionToDownload = "0.2.1"; + internal static MainForm mainForm = new MainForm(); + + [STAThread] + static void Main() + { + Application.SetHighDpiMode(HighDpiMode.SystemAware); + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + new Thread(() => mainForm.ShowDialog()).Start(); + Thread.Sleep(1000); + string filePath = null; + using (OpenFileDialog openFileDialog = new OpenFileDialog()) + { + openFileDialog.Filter = "Unity Game (*.exe)|*.exe"; + openFileDialog.RestoreDirectory = true; + if (openFileDialog.ShowDialog() == DialogResult.OK) + filePath = openFileDialog.FileName; + } + if (!string.IsNullOrEmpty(filePath)) + { + string dirpath = Path.GetDirectoryName(filePath); + mainForm.label1.Text = "Downloading..."; + var tempFile = Path.GetTempFileName(); + using var zipdata = new WebClient().OpenRead(("https://github.com/HerpDerpinstine/MelonLoader/releases/download/v" + VersionToDownload + "/" + (File.Exists(Path.Combine(dirpath, "GameAssembly.dll")) ? "MelonLoader.Il2Cpp.zip" : "MelonLoader.Mono.zip"))); + + Program.mainForm.label1.Text = "Extracting..."; + if (File.Exists(Path.Combine(dirpath, "version.dll"))) + File.Delete(Path.Combine(dirpath, "version.dll")); + if (File.Exists(Path.Combine(dirpath, "winmm.dll"))) + File.Delete(Path.Combine(dirpath, "winmm.dll")); + if (Directory.Exists(Path.Combine(dirpath, "MelonLoader"))) + Directory.Delete(Path.Combine(dirpath, "MelonLoader"), true); + if (Directory.Exists(Path.Combine(dirpath, "Logs"))) + Directory.Delete(Path.Combine(dirpath, "Logs"), true); + + using var zip = new ZipArchive(zipdata); + foreach (var zipArchiveEntry in zip.Entries) + { + string filepath = Path.Combine(dirpath, zipArchiveEntry.FullName); + if (File.Exists(filepath)) + File.Delete(filepath); + } + zip.ExtractToDirectory(dirpath); + + mainForm.Close(); + DialogResult dlg = MessageBox.Show("Installation Successful!", Title, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly); + } + Application.Exit(); + } + } +} diff --git a/MelonLoader.Installer/app.manifest b/MelonLoader.Installer/app.manifest new file mode 100644 index 000000000..169e61850 --- /dev/null +++ b/MelonLoader.Installer/app.manifest @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MelonLoader.Installer/icon.ico b/MelonLoader.Installer/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..03542d69c59a44dffdbd620d34648a0c8259560d GIT binary patch literal 85182 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 - } - - private static bool AssemblyGenerateCheck() - { - if (string.IsNullOrEmpty(localConfig.UnityVersion) || (localConfig.UnityVersion != MelonLoader.Main.UnityVersion)) - return true; - string game_assembly_hash = null; - using (var md5 = MD5.Create()) - { - using (var stream = File.OpenRead(GameAssembly_Path)) - { - var hash = md5.ComputeHash(stream); - game_assembly_hash = BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant(); - } - } - if (string.IsNullOrEmpty(localConfig.GameAssemblyHash) || (game_assembly_hash != localConfig.GameAssemblyHash)) - return true; - return false; - } - - private static bool AssemblyGenerate() - { - FixIl2CppDumperConfig(); - - MelonModLogger.Log("Executing Il2CppDumper..."); - ((AppDomainSetup)typeof(AppDomain).GetProperty("SetupInformationNoCopy", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(AppDomain.CurrentDomain, new object[0])).ApplicationBase = (Il2CppDumper.BaseFolder + "\\"); - if (!Il2CppDumper.Execute(new string[] { - GameAssembly_Path, - Path.Combine(Path.Combine(Path.Combine(Imports.GetGameDataDirectory(), "il2cpp_data"), "Metadata"), "global-metadata.dat") - })) - { - MelonModLogger.LogError("Failed to Execute Il2CppDumper!"); - return false; - } - ((AppDomainSetup)typeof(AppDomain).GetProperty("SetupInformationNoCopy", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(AppDomain.CurrentDomain, new object[0])).ApplicationBase = Imports.GetGameDirectory(); - - MelonModLogger.Log("Executing Il2CppAssemblyUnhollower..."); - if (!Il2CppAssemblyUnhollower.Execute(new string[] { - ("--input=" + Il2CppDumper.OutputDirectory), - ("--output=" + Il2CppAssemblyUnhollower.OutputDirectory), - ("--mscorlib=" + MSCORLIB_Path), - ("--unity=" + UnityDependencies.BaseFolder), - "--blacklist-assembly=Mono.Security", - "--blacklist-assembly=Newtonsoft.Json", - "--blacklist-assembly=Valve.Newtonsoft.Json" - })) - { - MelonModLogger.LogError("Failed to Execute Il2CppAssemblyUnhollower!"); - return false; - } - - return true; - } - - private static void Cleanup() - { - if (localConfig.OldFiles.Count() > 0) - { - for (int i = 0; i < localConfig.OldFiles.Count(); i++) - { - string oldFile = localConfig.OldFiles[i]; - if (!string.IsNullOrEmpty(oldFile)) - { - string oldFilePath = Path.Combine(AssemblyFolder, oldFile); - if (File.Exists(oldFilePath)) - File.Delete(oldFilePath); - } - } - localConfig.OldFiles.Clear(); - } - string[] files = Directory.GetFiles(Il2CppAssemblyUnhollower.OutputDirectory, "*.dll", SearchOption.TopDirectoryOnly); - if (files.Length > 0) - { - for (int i = 0; i < files.Count(); i++) - { - string file = files[i]; - if (!string.IsNullOrEmpty(file)) - { - string filename = Path.GetFileName(file); - localConfig.OldFiles.Add(filename); - File.Copy(file, Path.Combine(AssemblyFolder, filename)); - } - } - } - Directory.Delete(Il2CppAssemblyUnhollower.OutputDirectory, true); - Il2CppAssemblyUnhollower.OutputDirectory = SetupDirectory(Path.Combine(Il2CppAssemblyUnhollower.BaseFolder, "Output")); - } - - private static string SetupDirectory(string path) { if (!Directory.Exists(path)) Directory.CreateDirectory(path); return path; } - private static void FixIl2CppDumperConfig() => File.WriteAllText(Path.Combine(Il2CppDumper.BaseFolder, "config.json"), Encoder.Encode(il2cppConfig, EncodeOptions.NoTypeHints | EncodeOptions.PrettyPrint)); - private static void WriteLocalConfig() - { - localConfig.UnityVersion = MelonLoader.Main.UnityVersion; - using (var md5 = MD5.Create()) - { - using (var stream = File.OpenRead(GameAssembly_Path)) + string GeneratorProcessPath = Path.Combine(Path.Combine(Imports.GetGameDirectory(), "MelonLoader"), "MelonLoader.GeneratorProcess.exe"); + if (File.Exists(GeneratorProcessPath)) + { + var generatorProcessInfo = new ProcessStartInfo(GeneratorProcessPath); + generatorProcessInfo.Arguments = $"\"{MelonLoader.Main.UnityVersion}\" \"{Imports.GetGameDirectory()}\" \"{Imports.GetGameDataDirectory()}\""; + generatorProcessInfo.UseShellExecute = false; + generatorProcessInfo.RedirectStandardOutput = true; + generatorProcessInfo.CreateNoWindow = true; + var process = Process.Start(generatorProcessInfo); + if (process == null) + MelonModLogger.LogError("Unable to Start Generator Process!"); + else { - var hash = md5.ComputeHash(stream); - localConfig.GameAssemblyHash = BitConverter.ToString(hash).Replace("-", "").ToLowerInvariant(); - } - } - File.WriteAllText(localConfigPath, Encoder.Encode(localConfig, EncodeOptions.NoTypeHints | EncodeOptions.PrettyPrint)); - } - } - - internal class Package - { - internal string Version = null; - internal string BaseFolder = null; - internal string FileName = null; - } - - internal class Executable_Package : Package - { - internal string OutputDirectory = null; - internal string TypeName = null; - internal bool isIl2CppAssemblyUnhollower = false; - - internal bool Execute(string[] argv) - { - string assembly_path = Path.Combine(BaseFolder, FileName); - if (File.Exists(assembly_path)) - { - try - { - Assembly a = Assembly.LoadFrom(assembly_path); - if (a != null) + var stdout = process.StandardOutput; + while (!process.HasExited && !stdout.EndOfStream) { - Type b = a.GetType(TypeName); - if (b != null) - { - MethodInfo c = null; - if (isIl2CppAssemblyUnhollower) - c = b.GetMethods(BindingFlags.Public | BindingFlags.Static).First(x => ((x.GetParameters().Count() == 1) && (x.GetParameters()[0].ParameterType == typeof(string[])))); - else - c = b.GetMethod("Main", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static); - if (c != null) - { - Directory.SetCurrentDirectory(BaseFolder); - c.Invoke(null, new object[] { argv }); - } - else - return false; - } - else - return false; + var line = stdout.ReadLine(); + MelonModLogger.Log(line); } - else - return false; + while (!process.HasExited) + Thread.Sleep(100); + if (Imports.IsDebugMode()) + MelonModLogger.Log($"Generator Process exited with code {process.ExitCode}"); + return (process.ExitCode == 0); } - catch (Exception e) { MelonModLogger.LogError(e.ToString()); return false; } } - return true; + else + MelonModLogger.LogError("MelonLoader.GeneratorProcess.exe does not Exist!"); + return false; } } - - internal class Il2CppConfig - { - public bool DumpMethod = true; - public bool DumpField = true; - public bool DumpProperty = true; - public bool DumpAttribute = true; - public bool DumpFieldOffset = false; - public bool DumpMethodOffset = false; - public bool DumpTypeDefIndex = false; - public bool DummyDll = true; - public bool MakeFunction = true; - public bool RequireAnyKey = false; - public bool ForceIl2CppVersion = false; - public float ForceVersion = 24.3f; - } - - internal class LocalConfig - { - public string UnityVersion = null; - public string GameAssemblyHash = null; - public List OldFiles = new List(); - } } diff --git a/MelonLoader.ModHandler/BuildInfo.cs b/MelonLoader.ModHandler/BuildInfo.cs index d3743ef16..5d5fb559c 100644 --- a/MelonLoader.ModHandler/BuildInfo.cs +++ b/MelonLoader.ModHandler/BuildInfo.cs @@ -5,6 +5,6 @@ public static class BuildInfo public const string Name = "MelonLoader"; public const string Author = "Lava Gang"; public const string Company = "discord.gg/2Wn3N2P"; - public const string Version = "0.2.0"; + public const string Version = "0.2.1"; } } \ No newline at end of file diff --git a/MelonLoader.ModHandler/Main.cs b/MelonLoader.ModHandler/Main.cs index 094fb4f53..50dce2690 100644 --- a/MelonLoader.ModHandler/Main.cs +++ b/MelonLoader.ModHandler/Main.cs @@ -34,9 +34,7 @@ private static void Initialize() IsBoneworks = CurrentGameAttribute.IsGame("Stress Level Zero", "BONEWORKS"); } - if (!Imports.IsDebugMode() - && !Environment.CommandLine.Contains("--melonloader.hideconsole") - ) + if (!Imports.IsDebugMode()) { Console.Enabled = true; Console.Create(); diff --git a/MelonLoader.ModHandler/MelonLoader.ModHandler.csproj b/MelonLoader.ModHandler/MelonLoader.ModHandler.csproj index d0f8ce2a5..e99961ece 100644 --- a/MelonLoader.ModHandler/MelonLoader.ModHandler.csproj +++ b/MelonLoader.ModHandler/MelonLoader.ModHandler.csproj @@ -86,17 +86,6 @@ - - - - - - - - - - - diff --git a/MelonLoader.Support.Il2Cpp/AssemblyInfo.cs b/MelonLoader.Support.Il2Cpp/AssemblyInfo.cs index 8fa603309..9788655d5 100644 --- a/MelonLoader.Support.Il2Cpp/AssemblyInfo.cs +++ b/MelonLoader.Support.Il2Cpp/AssemblyInfo.cs @@ -2,11 +2,11 @@ using System.Reflection; using System.Runtime.InteropServices; -[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name)] +[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name + ".Support.Il2Cpp")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany(MelonLoader.BuildInfo.Company)] -[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name)] +[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name + ".Support.Il2Cpp")] [assembly: AssemblyCopyright("Created by " + MelonLoader.BuildInfo.Author)] [assembly: AssemblyTrademark(MelonLoader.BuildInfo.Company)] [assembly: AssemblyCulture("")] diff --git a/MelonLoader.Support.Il2Cpp/Main.cs b/MelonLoader.Support.Il2Cpp/Main.cs index e1d16a514..a984efea1 100644 --- a/MelonLoader.Support.Il2Cpp/Main.cs +++ b/MelonLoader.Support.Il2Cpp/Main.cs @@ -27,7 +27,7 @@ private static ISupportModule Initialize() if (Imports.IsDebugMode()) { LogSupport.TraceHandler -= System.Console.WriteLine; - LogSupport.TraceHandler += MelonModLogger.LogWarning; + LogSupport.TraceHandler += MelonModLogger.Log; } ClassInjector.DoHook += Imports.Hook; GetUnityVersionNumbers(out var major, out var minor, out var patch); diff --git a/MelonLoader.Support.Mono.Pre2017/AssemblyInfo.cs b/MelonLoader.Support.Mono.Pre2017/AssemblyInfo.cs index 8fa603309..421f63477 100644 --- a/MelonLoader.Support.Mono.Pre2017/AssemblyInfo.cs +++ b/MelonLoader.Support.Mono.Pre2017/AssemblyInfo.cs @@ -2,11 +2,11 @@ using System.Reflection; using System.Runtime.InteropServices; -[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name)] +[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name + ".Support.Mono.Pre2017")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany(MelonLoader.BuildInfo.Company)] -[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name)] +[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name + ".Support.Mono.Pre2017")] [assembly: AssemblyCopyright("Created by " + MelonLoader.BuildInfo.Author)] [assembly: AssemblyTrademark(MelonLoader.BuildInfo.Company)] [assembly: AssemblyCulture("")] diff --git a/MelonLoader.Support.Mono/AssemblyInfo.cs b/MelonLoader.Support.Mono/AssemblyInfo.cs index 8fa603309..8011149b0 100644 --- a/MelonLoader.Support.Mono/AssemblyInfo.cs +++ b/MelonLoader.Support.Mono/AssemblyInfo.cs @@ -2,11 +2,11 @@ using System.Reflection; using System.Runtime.InteropServices; -[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name)] +[assembly: AssemblyTitle(MelonLoader.BuildInfo.Name + ".Support.Mono")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany(MelonLoader.BuildInfo.Company)] -[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name)] +[assembly: AssemblyProduct(MelonLoader.BuildInfo.Name + ".Support.Mono")] [assembly: AssemblyCopyright("Created by " + MelonLoader.BuildInfo.Author)] [assembly: AssemblyTrademark(MelonLoader.BuildInfo.Company)] [assembly: AssemblyCulture("")] diff --git a/MelonLoader.sln b/MelonLoader.sln index db8c0700a..72444b61f 100644 --- a/MelonLoader.sln +++ b/MelonLoader.sln @@ -17,6 +17,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MelonLoader.Support.Mono", EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MelonLoader.Support.Mono.Pre2017", "MelonLoader.Support.Mono.Pre2017\MelonLoader.Support.Mono.Pre2017.csproj", "{1522ED55-C1BF-4057-86ED-BD482462A498}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MelonLoader.GeneratorProcess", "MelonLoader.GeneratorProcess\MelonLoader.GeneratorProcess.csproj", "{84B12E10-41B3-479C-87A6-8CE5D8C82C2F}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{49B47EEB-1061-49AF-83F3-B32377B08F3E}" + ProjectSection(SolutionItems) = preProject + CHANGELOG.MD = CHANGELOG.MD + README.MD = README.MD + EndProjectSection +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MelonLoader.Installer", "MelonLoader.Installer\MelonLoader.Installer.csproj", "{17AFE406-2361-4849-9B15-CB03AEF5E9F9}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -103,6 +113,30 @@ Global {1522ED55-C1BF-4057-86ED-BD482462A498}.Release|x64.Build.0 = Release|Any CPU {1522ED55-C1BF-4057-86ED-BD482462A498}.Release|x86.ActiveCfg = Release|Any CPU {1522ED55-C1BF-4057-86ED-BD482462A498}.Release|x86.Build.0 = Release|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Debug|x64.ActiveCfg = Debug|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Debug|x64.Build.0 = Debug|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Debug|x86.ActiveCfg = Debug|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Debug|x86.Build.0 = Debug|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Release|Any CPU.Build.0 = Release|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Release|x64.ActiveCfg = Release|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Release|x64.Build.0 = Release|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Release|x86.ActiveCfg = Release|Any CPU + {84B12E10-41B3-479C-87A6-8CE5D8C82C2F}.Release|x86.Build.0 = Release|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Debug|x64.ActiveCfg = Debug|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Debug|x64.Build.0 = Debug|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Debug|x86.ActiveCfg = Debug|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Debug|x86.Build.0 = Debug|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Release|Any CPU.Build.0 = Release|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Release|x64.ActiveCfg = Release|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Release|x64.Build.0 = Release|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Release|x86.ActiveCfg = Release|Any CPU + {17AFE406-2361-4849-9B15-CB03AEF5E9F9}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/README.MD b/README.MD index e02029722..89b53e35c 100644 --- a/README.MD +++ b/README.MD @@ -1,24 +1,21 @@ -### AUTOMATED INSTALL / UNINSTALL: +### AUTOMATED INSTALL: -- Coming Soon... +1. Download MelonLoader.Installer.zip from the latest version in [Releases](https://github.com/HerpDerpinstine/MelonLoader/releases). +2. Run MelonLoader.Installer.exe and Follow the Instructions. --- ### MANUAL INSTALLATION FOR MONO GAMES: -1. Download MelonLoader_Mono.zip from the latest version in [Releases](https://github.com/HerpDerpinstine/MelonLoader/releases). -2. Extract MelonLoader_Mono.zip to the Game's Installation Folder. +1. Download MelonLoader.Mono.zip from the latest version in [Releases](https://github.com/HerpDerpinstine/MelonLoader/releases). +2. Extract MelonLoader.Mono.zip to the Game's Installation Folder. --- ### MANUAL INSTALLATION FOR IL2CPP GAMES: -1. Download MelonLoader_Il2Cpp.zip from the latest version in [Releases](https://github.com/HerpDerpinstine/MelonLoader/releases). -2. Extract MelonLoader_Il2Cpp.zip to the Game's Installation Folder. -3. Download the latest version of Il2CppDumper from [HERE](https://github.com/Perfare/Il2CppDumper/releases) and extract it to MelonLoader/AssemblyGenerator/Il2CppDumper -4. Download the latest version of Il2CppAssemblyUnhollower from [HERE](https://github.com/knah/Il2CppAssemblyUnhollower/releases) and extract it to MelonLoader/AssemblyGenerator/Il2CppAssemblyUnhollower -5. Download the Unity Dependencies ZIP for the Game's Engine Version from [BaseLibs/UnityDependencies](https://github.com/HerpDerpinstine/MelonLoader/tree/master/BaseLibs/UnityDependencies). -6. Extract the ZIP to MelonLoader/AssemblyGenerator/Il2CppAssemblyUnhollower/UnityDependencies in the Game's Installation Folder. +1. Download MelonLoader.Il2Cpp.zip from the latest version in [Releases](https://github.com/HerpDerpinstine/MelonLoader/releases). +2. Extract MelonLoader.Il2Cpp.zip to the Game's Installation Folder. --- @@ -44,7 +41,6 @@ | Argument | Description | | --------------------- | ---------------------------------------- | | --no-mods | Launch game without loading Mods | -| --melonloader.hideconsole | Hides the Normal Console | | --melonloader.debug | Debug Console | | --melonloader.quitfix | Fixes the Hanging Process Issue with some Games | | --melonloader.maxlogs | Max Log Files [ Default: 10 ] [ Disable: 0 ] |