commit 1e9878672e03c4910d12fa16208161ad8daea8ca Author: SirusDoma Date: Sun Apr 19 03:24:48 2020 +0700 Initial commit diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..dfe0770 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8bc1697 --- /dev/null +++ b/.gitignore @@ -0,0 +1,247 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs +.idea/ + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +[Xx]64/ +[Xx]86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Tt]mp/ +[Tt]emp/ + +# Visual Studio 2015 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# DNX +project.lock.json +artifacts/ + +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml + +# TODO: Un-comment the next line if you do not want to checkin +# your web deploy settings because they may include unencrypted +# passwords +#*.pubxml +*.publishproj + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +# except build/, which is used as an MSBuild target. +!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config +# NuGet v3's project.json files produces more ignoreable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Microsoft Azure ApplicationInsights config file +ApplicationInsights.config + +# Windows Store app package directory +AppPackages/ +BundleArtifacts/ + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +[Ss]tyle[Cc]op.* +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.pfx +*.publishsettings +node_modules/ +orleans.codegen.cs + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# LightSwitch generated files +GeneratedArtifacts/ +ModelManifest.xml + +# Paket dependency manager +.paket/paket.exe + +# FAKE - F# Make +.fake/ \ No newline at end of file diff --git a/2dxbuild.exe b/2dxbuild.exe new file mode 100644 index 0000000..5d7980f Binary files /dev/null and b/2dxbuild.exe differ diff --git a/2dxwavconvert.exe b/2dxwavconvert.exe new file mode 100644 index 0000000..4419126 Binary files /dev/null and b/2dxwavconvert.exe differ diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f39bab4 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 CXO2 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Program.cs b/Program.cs new file mode 100644 index 0000000..d2dbae9 --- /dev/null +++ b/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace VoxCharger +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new MainForm()); + } + } +} diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..f219f3b --- /dev/null +++ b/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("VoxCharger")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("VoxCharger")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("b049dc1d-7404-4437-ae8c-1ff6a0a321dc")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs new file mode 100644 index 0000000..25184f9 --- /dev/null +++ b/Properties/Resources.Designer.cs @@ -0,0 +1,93 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace VoxCharger.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("VoxCharger.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap jk_dummy { + get { + object obj = ResourceManager.GetObject("jk_dummy", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap jk_dummy_b { + get { + object obj = ResourceManager.GetObject("jk_dummy_b", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap jk_dummy_s { + get { + object obj = ResourceManager.GetObject("jk_dummy_s", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/Properties/Resources.resx b/Properties/Resources.resx new file mode 100644 index 0000000..f84b4c6 --- /dev/null +++ b/Properties/Resources.resx @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + ..\Resources\jk_dummy.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\jk_dummy_b.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\jk_dummy_s.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/Properties/Settings.Designer.cs b/Properties/Settings.Designer.cs new file mode 100644 index 0000000..c4a1504 --- /dev/null +++ b/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace VoxCharger.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default + { + get + { + return defaultInstance; + } + } + } +} diff --git a/Properties/Settings.settings b/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/README.md b/README.md new file mode 100644 index 0000000..772aad8 --- /dev/null +++ b/README.md @@ -0,0 +1,64 @@ +# VoxCharger # + +- **Author**: CXO2 +- **Email**: com@cxo2.me +- **Version**: 0.9.7b + +Recharge your KFC Chicken sauce. + +Written under C# language, this program allow you to manage music asset files of your KFC installation. +Additionally, it include built-in converter to import ksh into vox that can be consumed by KFC. + +If you're not familiar with these file formats, then this sauce is not for you. + +## Prerequisite ## + +### .NET Framework 4.7 +This program require .NET Framework 4.7 in order to run properly. + +### Latest datecodes or newer only +Latest omnimix structures is slightly changed compared to previous datecodes, it won't load anything that doesn't match with `2020011500` structure. + +### Backup +Backup your data before using this program, it able to modify and delete your music assets. +Keep in mind that the program won't allow you to make any changes against original mix. + +### No IFS Support +Use [IFS LayeredFS](https://github.com/mon/ifs_layeredfs) in your KFC installation. This program will not pack your assets into IFS, nor attempt to process existing ones. +When mix with ifs files is selected, the program won't be able load music assets properly. + +If you need to pack your music assets into ifs, use another tool that process ifs file (for an instance: [mon ifs tools](https://github.com/mon/ifstools)). + +### 2DX Tools +Make sure that mon `2dxwavconvert.exe` and `2dxbuild.exe` are placed in the same directory along with the program. +Can't find it? you can grab the tools [here](https://github.com/mon/2dxTools/releases). + +## Remarks ## + +### Mix Lock +Original mix is locked to prevent you (yes, you) to break your KFC installation. +Again, use [IFS LayeredFS](https://github.com/mon/ifs_layeredfs). If you haven't heard this then you're totally missing out! + +### Conversion Output +Vox have some sense in it's file format than ksh file, as the result, not all attributes can be mapped precisely and potentially lead into bug in the output file. + +Remember, stupid input get stupid output. But if you believe it's a bug, feel free to open issue or PR. + +### Music Preview +Imported music preview from normal audio files may broken or not trimmed properly in the output file. Preview offset in ksh is also ignored, you need dedicated preview file with proper fade in and out. Keep in mind that `2dxbuld.exe` will not do this for you. Until program supports built in encoder, you have to provide 2dx preview manually for proper preview file. + +If you can't live without it, consider making PR to this feature. + +### Music DB +Some attributes are kept hidden from editor, For existing songs, some of their attributes might untouched throughout save iteration, but the rest of attributes might be replaced with dummy / stub data. + +If this really concern you, make sure to backup your `music_db.xml` / `music_db.merged.xml`. + +### Asset File Modification +Replacing asset files such as vox, 2dx and graphic files are happen immediately after changes are confirmed. In other hand, metadata need to be saved manually by `File -> Save` or `CTRL+S`. + +Note that you can postpone asset modification until you save metadata by disabling autosave in `Edit -> Autosave Assets` + +# License # + +This is an open-sourced application licensed under the [MIT License](http://github.com/SirusDoma/VoxCharger/blob/master/LICENSE) diff --git a/Resources/icon.ico b/Resources/icon.ico new file mode 100644 index 0000000..c6afbff Binary files /dev/null and b/Resources/icon.ico differ diff --git a/Resources/jk_dummy.png b/Resources/jk_dummy.png new file mode 100644 index 0000000..427af1b Binary files /dev/null and b/Resources/jk_dummy.png differ diff --git a/Resources/jk_dummy_b.png b/Resources/jk_dummy_b.png new file mode 100644 index 0000000..483a6ec Binary files /dev/null and b/Resources/jk_dummy_b.png differ diff --git a/Resources/jk_dummy_s.png b/Resources/jk_dummy_s.png new file mode 100644 index 0000000..b5094be Binary files /dev/null and b/Resources/jk_dummy_s.png differ diff --git a/Sources/2dx/DxTool.cs b/Sources/2dx/DxTool.cs new file mode 100644 index 0000000..b8112eb --- /dev/null +++ b/Sources/2dx/DxTool.cs @@ -0,0 +1,62 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using System.Diagnostics; + +namespace VoxCharger +{ + public static class DxTool + { + private const string ConverterFileName = "2dxwavconvert.exe"; + private const string BuilderFileName = "2dxbuild.exe"; + + public static string ConvertToWave(string inputFileName, bool preview = false) + { + string tempDir = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); + Directory.CreateDirectory(tempDir); + + string output = Path.Combine(tempDir, $"{Directory.GetFiles(tempDir).Length}.wav"); + Execute( + ConverterFileName, + $"{inputFileName} {output}" + (preview ? " preview" : string.Empty) + ); + + return tempDir; + } + + public static void Build(string inputDir, string outputFileName) + { + Execute( + BuilderFileName, + outputFileName, + inputDir + ); + } + + private static void Execute(string fileName, string args, string workingDir = null) + { + if (!File.Exists(fileName)) + throw new FileNotFoundException($"{fileName} not found", fileName); + + workingDir = workingDir ?? Environment.CurrentDirectory; + var info = new ProcessStartInfo() + { + FileName = fileName, + Arguments = args, + WorkingDirectory = workingDir, + CreateNoWindow = true, + UseShellExecute = false, + RedirectStandardOutput = true + }; + + using (var process = Process.Start(info)) + { + process.WaitForExit(); + if (process.ExitCode != 0) + throw new ApplicationException($"{fileName} execution failed:\n{process.StandardOutput.ReadToEnd()}"); + } + } + + } +} diff --git a/Sources/AssetManager.cs b/Sources/AssetManager.cs new file mode 100644 index 0000000..e9898ea --- /dev/null +++ b/Sources/AssetManager.cs @@ -0,0 +1,325 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Drawing.Imaging; +using System.IO; +using System.Diagnostics; +using System.Text; + +namespace VoxCharger +{ + public static class AssetManager + { + #region --- Properties --- + private static List MixList = new List(); + + public static string MixName { get; private set; } + + public static string GamePath { get; private set; } + + public static string MixPath { get; set; } + + public static MusicDb Headers { get; private set; } = new MusicDb(); + + public static string MdbFilename { get; private set; } + #endregion + + #region --- Mix Management --- + public static void Initialize(string gamePath) + { + // Validate the existence of main music db + string dbFilename = Path.Combine(gamePath, @"data\others\music_db.xml"); + if (!File.Exists(dbFilename)) + throw new FormatException("Invalid Game Directory"); + + // Validate whether cache exists, perform full load when cache is not available + string cacheFilename = Path.Combine(gamePath, @"data_mods\_cache\others\music_db.xml"); + + // Load original headers data + Headers = new MusicDb(); + Headers.Load(File.Exists(cacheFilename) ? cacheFilename : dbFilename); + + // Look for other mixes + MixList.Clear(); + string modsPath = Path.Combine(gamePath, @"data_mods\"); + foreach (var modDir in Directory.GetDirectories(modsPath)) + { + // Get directory name + string modName = new DirectoryInfo(modDir).Name; + if (modName == "_cache") + continue; + + // Validate whether the mod is a mix mod + dbFilename = Path.Combine(modDir, @"others\music_db.merged.xml"); + if (!File.Exists(dbFilename)) + continue; + + // Only supports latest KFC datecode with music folder + if (!Directory.Exists(Path.Combine(modDir, @"music\"))) + continue; + + // Confirmed mod path, append into music db, ignore cache to avoid uncached mix being excluded + Headers.Load(dbFilename, true); + MixList.Add(modName); + } + + GamePath = gamePath; + } + + public static void CreateMix(string mixName) + { + string mixPath = Path.Combine(GamePath, @"data_mods\", mixName); + if (Directory.Exists(mixPath)) + throw new IOException("Mix directory is already exists"); + + // Create necessary directory + Directory.CreateDirectory(Path.Combine(mixPath, @"graphics\s_jacket00_ifs\")); + Directory.CreateDirectory(Path.Combine(mixPath, @"music\")); + Directory.CreateDirectory(Path.Combine(mixPath, @"others\")); + + // Create empty db + MdbFilename = Path.Combine(mixPath, @"others\music_db.merged.xml"); + File.WriteAllText(MdbFilename, ""); + Headers.Clear(); + + MixName = mixName; + MixPath = mixPath; + } + + public static void LoadMix(string mixName) + { + string dataPath = string.IsNullOrEmpty(mixName) ? @"data\" : @"data_mods\"; + string mixPath = Path.Combine(GamePath, dataPath, mixName); + if (!Directory.Exists(mixPath)) + throw new DirectoryNotFoundException("Mix directory missing"); + + // No way it happen since combo box is dropdownlist, but well.. :v + if (!string.IsNullOrEmpty(mixName) && !MixList.Contains(mixName)) + MixList.Add(mixName); + + // Locate the music db, if unavailable, create it + MdbFilename = Path.Combine(mixPath, @"others\", string.IsNullOrEmpty(mixName) ? "music_db.xml" : "music_db.merged.xml"); + Headers.Load(MdbFilename); + + MixName = mixName; + MixPath = mixPath; + } + + public static string[] GetMixes() + { + return MixList.ToArray(); + } + + #endregion + + #region --- Asset Management --- + + public static void Import2DX(string source, VoxHeader header, bool preview = false) + { + if (!File.Exists(source)) + throw new FileNotFoundException($"{source} not found", source); + + Import2DX(source, Get2DXPath(header, preview), preview); + } + + public static void Import2DX(string source, VoxHeader header, Difficulty difficulty, bool preview = false) + { + if (!File.Exists(source)) + throw new FileNotFoundException($"{source} not found", source); + + Import2DX(source, Get2DXPath(header, difficulty, preview), preview); + } + + private static void Import2DX(string source, string output, bool preview = false) + { + if (!source.EndsWith(".2dx") && !source.EndsWith(".s3v")) + { + string tmp = DxTool.ConvertToWave(source, preview); + DxTool.Build(tmp, output); + + Directory.Delete(tmp, true); + } + else + { + File.Copy(source, output); + } + } + + public static void ImportJacket(VoxHeader header, Image image) + { + ImportJacket(header, Difficulty.Novice, image); + } + + public static void ImportJacket(VoxHeader header, Difficulty diff, Image image) + { + // Texture Small + Image texSmall = new Bitmap(image, new Size(130, 130)); + texSmall.Save($"{GetThumbnailJacketPath(header, diff)}.png", ImageFormat.Png); + texSmall.Dispose(); + texSmall = new Bitmap(image, new Size(108, 108)); + texSmall.Save($"{GetJacketPath(header, diff)}_s.png", ImageFormat.Png); + texSmall.Dispose(); + + // Texture Big + Image texBig = new Bitmap(image, new Size(676, 676)); + texBig.Save($"{GetJacketPath(header, diff)}_b.png", ImageFormat.Png); + texBig.Dispose(); + + // Texture Normal + Image texNormal = new Bitmap(image, new Size(300, 300)); + texNormal.Save($"{GetJacketPath(header, diff)}.png", ImageFormat.Png); + texNormal.Dispose(); + } + + + public static void ImportVox(VoxHeader header) + { + Directory.CreateDirectory(GetMusicPath(header)); + foreach (var level in header.Levels.Values) + { + if (level.Chart == null) + continue; + + var path = GetVoxPath(header, level.Difficulty); + level.Chart.Serialize(path); + } + } + + public static void ImportVox(VoxHeader header, Difficulty diff, VoxChart chart) + { + Directory.CreateDirectory(GetMusicPath(header)); + chart.Serialize(GetVoxPath(header, diff)); + } + + public static void ImportVox(VoxHeader header, Difficulty diff, string content) + { + File.WriteAllText(GetVoxPath(header, diff), content); + } + + public static void DeleteAssets(VoxHeader header) + { + string musicPath = GetMusicPath(header); + if (Directory.Exists(musicPath)) + Directory.Delete(musicPath, true); + + string jacketPath = Path.Combine( + MixPath, + $"graphics\\s_jacket00_ifs\\" + ); + + string pattern = $"jk_{header.ID:D4}*"; + foreach (string jacket in Directory.GetFiles(jacketPath, pattern)) + { + if (File.Exists(jacket)) + File.Delete(jacket); + } + } + #endregion + + #region --- Asset Identifier --- + + public static string GetDifficultyCodes(VoxHeader header, Difficulty difficulty) + { + switch (difficulty) + { + case Difficulty.Novice: return "1n"; + case Difficulty.Advanced: return "2a"; + case Difficulty.Exhaust: return "3e"; + default: + if (header.InfVersion == InfiniteVersion.MXM) + return "5m"; + + return "4i"; + } + } + + public static string GetMusicPath(VoxHeader header) + { + return Path.Combine( + MixPath, + $"music\\{header.CodeName}\\" + ); + } + + public static string GetVoxPath(VoxHeader header, Difficulty difficulty) + { + return Path.Combine( + GetMusicPath(header), + $"{header.CodeName}_{GetDifficultyCodes(header, difficulty)}.vox" + ); + } + + public static string Get2DXPath(VoxHeader header, bool preview = false) + { + string ext = preview ? "_pre.2dx" : ".2dx"; + return Path.Combine( + GetMusicPath(header), + $"{header.CodeName}{ext}" + ); + } + + public static string Get2DXPath(VoxHeader header, Difficulty difficulty, bool preview = false) + { + string ext = preview ? "_pre.2dx" : ".2dx"; + return Path.Combine( + GetMusicPath(header), + $"{header.CodeName}_{GetDifficultyCodes(header, difficulty)}{ext}" + ); + } + + public static string GetJacketPath(VoxHeader header, Difficulty difficulty) + { + int index = (int)difficulty; + if (difficulty == Difficulty.Infinite && header.InfVersion == InfiniteVersion.MXM) + index = 5; + + return Path.Combine(GetMusicPath(header), $"jk_{header.ID:D4}_{index}"); + } + + public static string GetDefaultJacketPath(VoxHeader header) + { + return GetJacketPath(header, Difficulty.Novice); + } + + public static string GetThumbnailJacketPath(VoxHeader header, Difficulty difficulty) + { + int index = (int)difficulty; + if (difficulty == Difficulty.Infinite && header.InfVersion == InfiniteVersion.MXM) + index = 5; + + string thumbnailDir = "s_jacket00_ifs"; + string graphicsDir = Path.Combine(MixPath, @"graphics\"); + + if (Directory.Exists(graphicsDir)) + { + foreach (string dir in Directory.GetDirectories(graphicsDir)) + { + string name = new DirectoryInfo(dir).Name; + if (name.StartsWith("s_jacket") && name.EndsWith("_ifs")) + { + thumbnailDir = name; + break; + } + } + } + + return Path.Combine( + graphicsDir, + $"{thumbnailDir}\\", + $"jk_{header.ID:D4}_{index}_t" + ); + } + + public static string GetDefaultThumbnailJacketPath(VoxHeader header) + { + return GetThumbnailJacketPath(header, Difficulty.Novice); + } + + #endregion + + #region --- Utilities --- + + + #endregion + } +} diff --git a/Sources/Effects/BitCrusher.cs b/Sources/Effects/BitCrusher.cs new file mode 100644 index 0000000..5ec60e0 --- /dev/null +++ b/Sources/Effects/BitCrusher.cs @@ -0,0 +1,80 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class BitCrusher : Effect + { + public float Mix { get; set; } + + public int Reduction { get; set; } + + public BitCrusher(float mix, int reduction) + : base(FxType.BitCrusher) + { + Mix = mix; + Reduction = reduction; + } + + private BitCrusher() + : base(FxType.None) + { + } + + public static new BitCrusher FromVox(string data) + { + var bitCrusher = new BitCrusher(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.BitCrusher) + return bitCrusher; + + if (prop.Length != 3) + return bitCrusher; + + try + { + bitCrusher.Type = type; + bitCrusher.Mix = float.Parse(prop[1]); + bitCrusher.Reduction = int.Parse(prop[2]); + } + catch (Exception) + { + bitCrusher.Type = FxType.None; + } + + return bitCrusher; + } + + public static new BitCrusher FromKsh(KshDefinition definition) + { + var bitCrusher = new BitCrusher(); + + try + { + definition.GetValue("mix", out float mix); + definition.GetValue("reduction", out int samples); + + bitCrusher.Mix = mix; + bitCrusher.Reduction = samples; + bitCrusher.Type = FxType.BitCrusher; + } + catch (Exception) + { + bitCrusher.Type = FxType.None; + } + + return bitCrusher; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type},\t{Mix:0.00},\t{Reduction}"; + } + } + } +} diff --git a/Sources/Effects/Effect.cs b/Sources/Effects/Effect.cs new file mode 100644 index 0000000..edada2e --- /dev/null +++ b/Sources/Effects/Effect.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; + +namespace VoxCharger +{ + public partial class Effect + { + public static readonly Effect Empty = new Effect(); + + public static readonly Effect Default = new Retrigger(24, 95f, 1f, 1f, 0.85f, 0.16f, true); + + public FxType Type { get; private set; } + + public int Id { get; set; } = 1; + + public Effect() + : this(FxType.None) + { + } + + public Effect(FxType type) + { + Type = type; + } + + public override string ToString() + { + return "0,\t0,\t0,\t0,\t0,\t0,\t0"; + } + + public static Effect FromVox(string data) + { + if (string.IsNullOrEmpty(data)) + return null; + + var prop = data.Trim().Split(','); + if (!Enum.TryParse(prop[0], out FxType type)) + return null; + + switch(type) + { + case FxType.Retrigger: + case FxType.RetriggerEx: return Retrigger.FromVox(data); + case FxType.Gate: return Gate.FromVox(data); + case FxType.Phaser: return Phaser.FromVox(data); + case FxType.TapeStopEx: + case FxType.TapeStop: return TapeStop.FromVox(data); + case FxType.SideChain: return SideChain.FromVox(data); + case FxType.Wobble: return Wobble.FromVox(data); + case FxType.BitCrusher: return BitCrusher.FromVox(data); + case FxType.PitchShift: return PitchShift.FromVox(data); + case FxType.LowPass: return LowPass.FromVox(data); + case FxType.Flanger: return Flanger.FromVox(data); + default: return new Effect(); + } + } + + public static Effect FromKsh(string data) + { + if (string.IsNullOrEmpty(data)) + return null; + + var prop = data.Trim().Split(','); + if (!Enum.TryParse(prop[0].Replace("Echo", "Retrigger"), out FxType type)) + return null; + + switch(type) + { + case FxType.Retrigger: + case FxType.RetriggerEx: return Retrigger.FromKsh(data); + case FxType.Gate: return Gate.FromKsh(data); + case FxType.Phaser: return Phaser.FromKsh(data); + case FxType.TapeStopEx: + case FxType.TapeStop: return TapeStop.FromKsh(data); + case FxType.SideChain: return SideChain.FromKsh(data); + case FxType.Wobble: return Wobble.FromKsh(data); + case FxType.PitchShift: return PitchShift.FromKsh(data); + case FxType.Flanger: return Flanger.FromKsh(data); + default: return Default; + } + } + + public static Effect FromKsh(KshDefinition definition) + { + if (!definition.GetString("type", out string type)) + return new Effect(); + + switch(type) + { + case "Echo": + case "Retrigger": return Retrigger.FromKsh(definition); + case "Gate": return Gate.FromKsh(definition); + case "Phaser": return Phaser.FromKsh(definition); + case "TapeStop": return TapeStop.FromKsh(definition); + case "SideChain": return SideChain.FromKsh(definition); + case "LowPass": + case "Wobble": return Wobble.FromKsh(definition); + case "PitchShift": + case "BitCrusher": return BitCrusher.FromKsh(definition); + case "Flanger": return Flanger.FromKsh(definition); + default: return new Effect(); + } + } + } +} diff --git a/Sources/Effects/Flanger.cs b/Sources/Effects/Flanger.cs new file mode 100644 index 0000000..4befe9f --- /dev/null +++ b/Sources/Effects/Flanger.cs @@ -0,0 +1,102 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class Flanger : Effect + { + public float Mix { get; set; } + public float Samples { get; set; } + public float Depth { get; set; } + public float Period { get; set; } + + public Flanger(float mix, float samples, float depth, float period) + : base(FxType.Flanger) + { + Mix = mix; + Samples = samples; + Depth = depth; + Period = period; + } + + public Flanger() + : base(FxType.None) + { + } + + public static new Flanger FromVox(string data) + { + var highPass = new Flanger(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Flanger) + return highPass; + + if (prop.Length != 5) + return highPass; + + try + { + highPass.Type = type; + highPass.Mix = float.Parse(prop[1]); + highPass.Samples = float.Parse(prop[2]); + highPass.Depth = float.Parse(prop[3]); + highPass.Period = float.Parse(prop[4]); + } + catch (Exception) + { + highPass.Type = FxType.None; + } + + return highPass; + } + + public static new Phaser FromKsh(string data) + { + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Flanger) + return null; + + return new Phaser(80.00f, 2.00f, 0.50f, 90, 2.00f); + } + + public static new Flanger FromKsh(KshDefinition definition) + { + var flanger = new Flanger(); + + try + { + definition.GetValue("mix", out float mix); + definition.GetValue("depth", out int depth); + definition.GetValue("period", out float period); + + flanger.Mix = mix; + flanger.Samples = int.TryParse(definition.Value, out int samples) ? samples * 10 : 0; + flanger.Depth = depth; + flanger.Period = period; + flanger.Type = FxType.Flanger; + } + catch (Exception) + { + flanger.Type = FxType.None; + } + + return flanger; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type}," + + $"\t{Mix:0.00}," + + $"\t{Samples:0.00}," + + $"\t{Depth:0.00}," + + $"\t{Period:0.00}"; + } + } + + } +} diff --git a/Sources/Effects/FxType.cs b/Sources/Effects/FxType.cs new file mode 100644 index 0000000..c3baf75 --- /dev/null +++ b/Sources/Effects/FxType.cs @@ -0,0 +1,21 @@ +using System; + +namespace VoxCharger +{ + public enum FxType + { + None = 0, + Retrigger = 1, + Gate = 2, + Phaser = 3, + TapeStop = 4, + SideChain = 5, + Wobble = 6, + BitCrusher = 7, + RetriggerEx = 8, + PitchShift = 9, + TapeStopEx = 10, + LowPass = 11, + Flanger = 12, + } +} diff --git a/Sources/Effects/Gate.cs b/Sources/Effects/Gate.cs new file mode 100644 index 0000000..97535ba --- /dev/null +++ b/Sources/Effects/Gate.cs @@ -0,0 +1,104 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class Gate : Effect + { + public float Mix { get; set; } + public int Length { get; set; } + public float Rate { get; set; } + + public Gate(float mix, int length, float rate) + : base(FxType.Gate) + { + Mix = mix; + Length = length; + Rate = rate; + } + + private Gate() + : base(FxType.None) + { + + } + + public static new Gate FromVox(string data) + { + var gate = new Gate(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Gate) + return gate; + + if (prop.Length != 4) + return gate; + + try + { + gate.Type = type; + gate.Mix = float.Parse(prop[1]); + gate.Length = int.Parse(prop[2]); + gate.Rate = float.Parse(prop[3]); + } + catch (Exception) + { + gate.Type = FxType.None; + } + + return gate; + } + + public static new Gate FromKsh(string data) + { + var gate = new Gate(); + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Gate) + return gate; + + float waveLength = 8f; + if (prop.Length > 1) + waveLength = float.TryParse(prop[1], out waveLength) ? waveLength : 8f; + + gate.Type = type; + gate.Mix = 100.00f; + gate.Length = (int)(waveLength / 2); + gate.Rate = 1.00f; + + return gate; + } + + public static new Gate FromKsh(KshDefinition definition) + { + var gate = new Gate(); + + try + { + if (!definition.GetValue("mix", out float mix) || !definition.GetValue("waveLength", out int waveLength)) + return gate; + + gate.Mix = mix; + gate.Length = waveLength / 2; + gate.Rate = 1.00f; + gate.Type = FxType.Gate; + } + catch (Exception) + { + gate.Type = FxType.None; + } + + return gate; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type},\t{Mix:0.00},\t{Length},\t{Rate:0.00}"; + } + } + + } +} diff --git a/Sources/Effects/LowPass.cs b/Sources/Effects/LowPass.cs new file mode 100644 index 0000000..8ed3201 --- /dev/null +++ b/Sources/Effects/LowPass.cs @@ -0,0 +1,84 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class LowPass : Effect + { + public float Mix { get; set; } + public float Frequency { get; set; } + + public LowPass(float mix, float frequency) + : base(FxType.LowPass) + { + Mix = mix; + Frequency = frequency; + } + + private LowPass() + : base(FxType.None) + { + } + + public static new LowPass FromVox(string data) + { + var lowPass = new LowPass(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.LowPass) + return lowPass; + + if (prop.Length != 5) + return lowPass; + + try + { + lowPass.Type = type; + lowPass.Mix = float.Parse(prop[1]); + lowPass.Frequency = float.Parse(prop[3]); + } + catch (Exception) + { + lowPass.Type = FxType.None; + } + + return lowPass; + } + + + public static new LowPass FromKsh(KshDefinition definition) + { + var lowPass = new LowPass(); + + try + { + definition.GetValue("loFreq", out int loFreq); + definition.GetValue("hiFreq", out int hiFreq); + + lowPass.Mix = 100f; + lowPass.Frequency = loFreq != 0f ? loFreq : hiFreq; + lowPass.Type = FxType.LowPass; + } + catch (Exception) + { + lowPass.Type = FxType.None; + } + + return lowPass; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type}," + + $"\t{Mix:0.00}," + + $"\t0," + // Unknown param + $"\t{Frequency:0.00}," + + $"\t0"; // Unknown too + } + } + } +} diff --git a/Sources/Effects/Phaser.cs b/Sources/Effects/Phaser.cs new file mode 100644 index 0000000..27eca52 --- /dev/null +++ b/Sources/Effects/Phaser.cs @@ -0,0 +1,111 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class Phaser : Effect + { + public float Mix { get; set; } + public float Period { get; set; } + public float Feedback { get; set; } + public int StereoWidth { get; set; } + public float HiCutGain { get; set; } + + public Phaser(float mix, float period, float feedback, int stereoWidth, float hiCutGain) + : base(FxType.Phaser) + { + Mix = mix; + Period = period; + Feedback = feedback; + StereoWidth = stereoWidth; + HiCutGain = hiCutGain; + } + + private Phaser() + : base(FxType.None) + { + } + + public static new Phaser FromVox(string data) + { + var flanger = new Phaser(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Phaser) + return flanger; + + if (prop.Length != 6) + return flanger; + + try + { + flanger.Type = type; + flanger.Mix = float.Parse(prop[1]); + flanger.Period = int.Parse(prop[2]); + flanger.Feedback = float.Parse(prop[3]); + flanger.StereoWidth = int.Parse(prop[4]); + flanger.HiCutGain = float.Parse(prop[5]); + } + catch (Exception) + { + flanger.Type = FxType.None; + } + + return flanger; + } + + public static new Wobble FromKsh(string data) + { + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Phaser) + return null; + + var wobble = new Wobble(100.00f, 1500.00f, 20000.00f, 0.50f, 1.41f); + wobble.Flag = 1; + + return wobble; + } + + public static new Phaser FromKsh(KshDefinition definition) + { + var phaser = new Phaser(); + + try + { + definition.GetValue("mix", out float mix); + definition.GetValue("period", out float period); + definition.GetValue("feedback", out float feedback); + definition.GetValue("stereoWidth", out int stereoWidth); + definition.GetValue("hiCutGain", out float hiCutGain); + + phaser.Mix = mix; + phaser.Period = period; + phaser.Feedback = feedback; + phaser.StereoWidth = stereoWidth; + phaser.HiCutGain = hiCutGain; + phaser.Type = FxType.Phaser; + } + catch (Exception) + { + phaser.Type = FxType.None; + } + + return phaser; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type}," + + $"\t{Mix:0.00}," + + $"\t{Period:0.00}," + + $"\t{Feedback:0.00}," + + $"\t{StereoWidth}," + + $"\t{HiCutGain:0.00}"; + } + } + } +} diff --git a/Sources/Effects/PitchShift.cs b/Sources/Effects/PitchShift.cs new file mode 100644 index 0000000..a202fdf --- /dev/null +++ b/Sources/Effects/PitchShift.cs @@ -0,0 +1,98 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class PitchShift : Effect + { + public float Mix { get; set; } + + public float Reduction { get; set; } + + public PitchShift(float mix, float reduction) + : base(FxType.PitchShift) + { + Mix = mix; + Reduction = reduction; + } + + private PitchShift() + : base(FxType.None) + { + } + + public static new PitchShift FromVox(string data) + { + var pitchShift = new PitchShift(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.PitchShift) + return pitchShift; + + if (prop.Length != 3) + return pitchShift; + + try + { + pitchShift.Type = type; + pitchShift.Mix = float.Parse(prop[1]); + pitchShift.Reduction = float.Parse(prop[2]); + } + catch (Exception) + { + pitchShift.Type = FxType.None; + } + + return pitchShift; + } + + public static new PitchShift FromKsh(string data) + { + var pitchShift = new PitchShift(); + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.PitchShift) + return pitchShift; + + float pitch = 12f; + if (prop.Length > 1) + pitch = float.TryParse(prop[1], out pitch) ? pitch : 12f; + + pitchShift.Type = type; + pitchShift.Mix = 100.00f; + pitchShift.Reduction = pitch; + + return pitchShift; + } + + public static new PitchShift FromKsh(KshDefinition definition) + { + var pitchShift = new PitchShift(); + + try + { + definition.GetValue("mix", out float mix); + definition.GetValue("reduction", out float samples); + + pitchShift.Mix = mix; + pitchShift.Reduction = samples; + pitchShift.Type = FxType.PitchShift; + } + catch (Exception) + { + pitchShift.Type = FxType.None; + } + + return pitchShift; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type},\t{Mix:0.00},\t{Reduction:0.00}"; + } + } + } +} diff --git a/Sources/Effects/Retrigger.cs b/Sources/Effects/Retrigger.cs new file mode 100644 index 0000000..2476a0b --- /dev/null +++ b/Sources/Effects/Retrigger.cs @@ -0,0 +1,138 @@ +using System; +using System.Linq; +using System.Diagnostics; +using System.Collections.Generic; + +namespace VoxCharger +{ + public partial class Effect + { + public class Retrigger : Effect + { + public int WaveLength { get; set; } + public float Mix { get; set; } + public float UpdatePeriod { get; set; } + public float Feedback { get; set; } + public float Rate { get; set; } + public float Tick { get; set; } + public bool Updatable { get; set; } + + public Retrigger(int waveLength, float mix, float updatePeriod, float feedback, float rate, float tick, bool updatable = false) + : base(updatable ? FxType.RetriggerEx : FxType.Retrigger) + { + WaveLength = waveLength; + Mix = mix; + UpdatePeriod = updatePeriod; + Feedback = feedback; + Rate = rate; + Tick = tick; + Updatable = updatable; + } + + private Retrigger() + : base(FxType.None) + { + } + + public static new Retrigger FromVox(string data) + { + var retrigger = new Retrigger(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || (type != FxType.Retrigger && type != FxType.RetriggerEx)) + return retrigger; + + if (prop.Length < 7) + return retrigger; + + try + { + retrigger.WaveLength = int.Parse(prop[1]); + retrigger.Mix = float.Parse(prop[2]); + retrigger.UpdatePeriod = float.Parse(prop[3]); + retrigger.Feedback = float.Parse(prop[4]); + retrigger.Rate = float.Parse(prop[5]); + retrigger.Tick = float.Parse(prop[6]); + retrigger.Updatable = type == FxType.RetriggerEx; + + retrigger.Type = type; + } + catch (Exception) + { + retrigger.Type = FxType.None; + } + + return retrigger; + } + + public static new Retrigger FromKsh(string data) + { + var retrigger = new Retrigger(); + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0].Replace("Echo", "Retrigger"), out FxType type) || (type != FxType.Retrigger && type != FxType.RetriggerEx)) + return retrigger; + + float waveLength = 8f; + if (prop.Length > 1) + waveLength = float.TryParse(prop[1], out waveLength) ? waveLength : 8f; + + float defaultFeedback = prop[0] == "Echo" ? 0.6f : 1.0f; + float feedback = defaultFeedback; + if (prop.Length > 2) + feedback = float.TryParse(prop[2], out feedback) ? feedback : defaultFeedback; + + retrigger.WaveLength = (int)(waveLength / 2); + retrigger.Mix = 100.0f; + retrigger.UpdatePeriod = 2.00f; + retrigger.Feedback = 1.00f; + retrigger.Rate = 0.70f; + retrigger.Tick = 0.15f; + retrigger.Updatable = true; + + retrigger.Type = FxType.RetriggerEx; + + return retrigger; + } + + public static new Retrigger FromKsh(KshDefinition definition) + { + var retrigger = new Retrigger(); + + try + { + if (!definition.GetValue("mix", out float mix) || !definition.GetValue("updatePeriod", out float updatePeriod)) + return retrigger; + + retrigger.WaveLength = definition.GetValue("waveLength", out int waveLength) ? waveLength : 0; + retrigger.Mix = mix; + retrigger.Feedback = definition.GetValue("feedbackLevel", out float feedback) ? feedback : 0f; + retrigger.Rate = definition.GetValue("rate", out float rate) ? rate : 0f; + retrigger.UpdatePeriod = updatePeriod * 4f; + retrigger.Tick = updatePeriod < 1.0f ? 1.0f - updatePeriod : 0f; + retrigger.Updatable = definition.GetString("updateTrigger", out string _); + retrigger.Type = retrigger.Updatable ? FxType.RetriggerEx : FxType.Retrigger; + } + catch (Exception) + { + retrigger.Type = FxType.None; + } + + return retrigger; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type}," + + $"\t{WaveLength}," + + $"\t{Mix:0.00}," + + $"\t{UpdatePeriod:0.00}," + + $"\t{Feedback:0.00}," + + $"\t{Rate:0.00}," + + $"\t{Tick:0.00}" + + (Updatable ? ",\t0.00" : string.Empty); + } + } + } +} diff --git a/Sources/Effects/SideChain.cs b/Sources/Effects/SideChain.cs new file mode 100644 index 0000000..9cbebab --- /dev/null +++ b/Sources/Effects/SideChain.cs @@ -0,0 +1,117 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class SideChain : Effect + { + public float Mix { get; set; } + public float Period { get; set; } + public int Hold { get; set; } + public int Attack { get; set; } + public int Release { get; set; } + + public SideChain(float mix, float period, int hold, int attack, int release) + : base(FxType.SideChain) + { + Mix = mix; + Period = period; + Hold = hold; + Attack = attack; + Release = release; + } + + public SideChain() + : base(FxType.None) + { + } + + public static new SideChain FromVox(string data) + { + var sideChain = new SideChain(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.SideChain) + return sideChain; + + if (prop.Length != 6) + return sideChain; + + try + { + sideChain.Type = type; + sideChain.Mix = float.Parse(prop[1]); + sideChain.Period = int.Parse(prop[2]); + sideChain.Hold = int.Parse(prop[3]); + sideChain.Attack = int.Parse(prop[4]); + sideChain.Release = int.Parse(prop[5]); + } + catch (Exception) + { + sideChain.Type = FxType.None; + } + + return sideChain; + } + + public static new SideChain FromKsh(string data) + { + var sideChain = new SideChain(); + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.SideChain) + return sideChain; + + sideChain.Type = type; + sideChain.Mix = 90.00f; + sideChain.Period = 1.00f; + sideChain.Hold = 45; + sideChain.Attack = 50; + sideChain.Release = 60; + + return sideChain; + } + + public static new SideChain FromKsh(KshDefinition definition) + { + var sideChain = new SideChain(); + + try + { + definition.GetValue("mix", out float mix); + definition.GetValue("period", out float period); + definition.GetValue("holdTime", out int hold); + definition.GetValue("attackTime", out int attack); + definition.GetValue("releaseTime", out int release); + + sideChain.Mix = mix; + sideChain.Period = period / 2f; + sideChain.Hold = hold; + sideChain.Attack = attack; + sideChain.Release = release; + sideChain.Type = FxType.SideChain; + } + catch (Exception) + { + sideChain.Type = FxType.None; + } + + return sideChain; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type}," + + $"\t{Mix:0.00}," + + $"\t{Period:0.00}," + + $"\t{Hold}," + + $"\t{Attack}," + + $"\t{Release}"; + } + } + + } +} diff --git a/Sources/Effects/TapeStop.cs b/Sources/Effects/TapeStop.cs new file mode 100644 index 0000000..4728a12 --- /dev/null +++ b/Sources/Effects/TapeStop.cs @@ -0,0 +1,110 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class TapeStop : Effect + { + public float Mix { get; set; } + public float Speed { get; set; } + public float Rate { get; set; } + + public TapeStop(float mix, float speed, float rate) + : base(FxType.TapeStop) + { + Mix = mix; + Speed = speed; + Rate = rate; + } + + private TapeStop() + : base(FxType.None) + { + } + + public static new TapeStop FromVox(string data) + { + var tapeStop = new TapeStop(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || (type != FxType.TapeStop && type != FxType.TapeStopEx)) + return tapeStop; + + if (prop.Length < 4) + return tapeStop; + + try + { + tapeStop.Type = type; + tapeStop.Mix = float.Parse(prop[1]); + tapeStop.Speed = float.Parse(prop[2]); + tapeStop.Rate = float.Parse(prop[3]); + } + catch (Exception) + { + tapeStop.Type = FxType.None; + } + + return tapeStop; + } + + public static new TapeStop FromKsh(string data) + { + var tapeStop = new TapeStop(); + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || (type != FxType.TapeStop && type != FxType.TapeStopEx)) + return tapeStop; + + if (prop.Length < 4) + return tapeStop; + + float rate = 50f; + if (prop.Length > 1) + rate = float.TryParse(prop[1], out rate) ? rate : 50f; + + rate = -(rate - 20 - 40) / 40f; + if (rate < 0) + rate = 0.1f; + + tapeStop.Type = type; + tapeStop.Mix = 100.00f; + tapeStop.Speed = 8.00f; + tapeStop.Rate = rate; + + return tapeStop; + } + + public static new TapeStop FromKsh(KshDefinition definition) + { + var tapeStop = new TapeStop(); + + try + { + if (!definition.GetValue("mix", out float mix) || !definition.GetValue("speed", out int speed)) + return tapeStop; + + tapeStop.Mix = mix; + tapeStop.Speed = speed / 10f; + tapeStop.Rate = (tapeStop.Speed / 2f) / 10f; + tapeStop.Type = FxType.TapeStop; + } + catch (Exception) + { + tapeStop.Type = FxType.None; + } + + return tapeStop; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type},\t{Mix:0.00},\t{Speed:0.00},\t{Rate:0.00}"; + } + } + + } +} diff --git a/Sources/Effects/Wobble.cs b/Sources/Effects/Wobble.cs new file mode 100644 index 0000000..8f0c6c3 --- /dev/null +++ b/Sources/Effects/Wobble.cs @@ -0,0 +1,119 @@ +using System; +using System.Linq; + +namespace VoxCharger +{ + public partial class Effect + { + public class Wobble : Effect + { + public float Mix { get; set; } + public float LowFrequency { get; set; } + public float HiFrequency { get; set; } + public float WaveLength { get; set; } + public float Resonance { get; set; } + public int Flag { get; set; } = 1; + + public Wobble(float mix, float lowFrequency, float hiFrequency, float waveLength, float resonance) + : base(FxType.Wobble) + { + Mix = mix; + LowFrequency = lowFrequency; + HiFrequency = hiFrequency; + WaveLength = waveLength; + Resonance = resonance; + } + + private Wobble() + : base(FxType.None) + { + } + + public static new Wobble FromVox(string data) + { + var wobble = new Wobble(); + var prop = data.Trim().Split(',').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Wobble) + return wobble; + + if (prop.Length != 8) + return wobble; + + try + { + wobble.Type = type; + wobble.Mix = float.Parse(prop[3]); + wobble.LowFrequency = float.Parse(prop[4]); + wobble.HiFrequency = float.Parse(prop[5]); + wobble.WaveLength = float.Parse(prop[6]); + wobble.Resonance = float.Parse(prop[7]); + } + catch (Exception) + { + wobble.Type = FxType.None; + } + + return wobble; + } + + public static new Wobble FromKsh(string data) + { + var wobble = new Wobble(); + var prop = data.Trim().Split(';').Select(p => p.Trim()).ToArray(); + if (!Enum.TryParse(prop[0], out FxType type) || type != FxType.Wobble) + return wobble; + + wobble.Type = type; + wobble.Mix = 100.00f; + wobble.LowFrequency = 500.00f; + wobble.HiFrequency = 20000.00f; + wobble.WaveLength = 4.00f; + wobble.Resonance = 1.41f; + + return wobble; + } + + public static new Wobble FromKsh(KshDefinition definition) + { + var wobble = new Wobble(); + + try + { + definition.GetValue("mix", out float mix); + definition.GetValue("loFreq", out float lowFreq); + definition.GetValue("hiFreq", out float highFreq); + definition.GetValue("waveLength", out float waveLength); + definition.GetValue("resonance", out float resonance); + + wobble.Flag = 3; + wobble.Mix = mix; + wobble.LowFrequency = lowFreq; + wobble.HiFrequency = highFreq; + wobble.WaveLength = waveLength * 4; + wobble.Resonance = resonance; + wobble.Type = FxType.Wobble; + } + catch (Exception) + { + wobble.Type = FxType.None; + } + + return wobble; + } + + public override string ToString() + { + if (Type == FxType.None) + return base.ToString(); + + return $"{(int)Type}," + + $"\t,0,\t{Flag}," + // Unknown params + $"\t{Mix:0.00}," + + $"\t{LowFrequency:0.00}," + + $"\t{HiFrequency:0.00}," + + $"\t{WaveLength:0.00}," + + $"\t{Resonance:0.00}"; + } + } + } +} diff --git a/Sources/Events/BPM.cs b/Sources/Events/BPM.cs new file mode 100644 index 0000000..a7bce7f --- /dev/null +++ b/Sources/Events/BPM.cs @@ -0,0 +1,25 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Event + { + public class BPM : Event + { + public float Value { get; set; } + + public bool IsStop { get; set; } + + public BPM(Time time, float value) + : base(time) + { + Value = value; + } + + public override string ToString() + { + return $"{base.ToString()}\t{Value:0.00}\t{4}" + (IsStop ? "-" : string.Empty); + } + } + } +} diff --git a/Sources/Events/Button.cs b/Sources/Events/Button.cs new file mode 100644 index 0000000..4baab12 --- /dev/null +++ b/Sources/Events/Button.cs @@ -0,0 +1,64 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Event + { + public enum ButtonTrack + { + A = 3, + B = 4, + C = 5, + D = 6, + FxL = 2, + FxR = 7 + } + + public enum ChipFx + { + None = 0, + Fx2 = 2, + Clap = 4, + ClapImpact = 3, + ClapPunchy = 5, + Snare = 6, + SnareLow = 8, + Fx7 = 7, + Fx9 = 9, + Fx10 = 10, + Fx11 = 11, + Fx12 = 12, + Fx13 = 13, + Fx14 = 14 + } + + public class Button : Event + { + public ButtonTrack Track { get; set; } + public int HoldLength { get; set; } + public Effect HoldFx { get; set; } + public ChipFx HitFx { get; set; } + public bool IsFx => Track == ButtonTrack.FxL || Track == ButtonTrack.FxR; + + public Button(Time time, ButtonTrack track, int holdLength, Effect holdFx = null, ChipFx chipFx = ChipFx.None) + : base (time) + { + Track = track; + HoldLength = holdLength; + HoldFx = holdFx; + HitFx = chipFx; + } + + public override string ToString() + { + int fx = 0; + if (HoldFx != null) + fx = HoldFx.Id; + else + fx = (int)HitFx; + + return $"{base.ToString()}\t{HoldLength}\t{fx}"; + } + } + } +} diff --git a/Sources/Events/Controller/Camera.cs b/Sources/Events/Controller/Camera.cs new file mode 100644 index 0000000..32e4c16 --- /dev/null +++ b/Sources/Events/Controller/Camera.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace VoxCharger +{ + public abstract partial class Camera : Event + { + public WorkType Work { get; private set; } = WorkType.None; + public int Duration { get; set; } + public float Start { get; set; } + public float End { get; set; } + + public Camera(Time time, WorkType work) + : base(time) + { + Work = work; + } + + public static Camera Create(WorkType work, Time time, int duration, float start, float end) + { + switch (work) + { + case WorkType.Rotation: return new Rotation(time, duration, start, end); + case WorkType.Radian: return new Radian(time, duration, start, end); + case WorkType.Tilt: return new Tilt(time, duration, start, end); + case WorkType.LaneClear: return new LaneClear(time, duration, start, end); + } + + return null; + } + } +} diff --git a/Sources/Events/Controller/LaneClear.cs b/Sources/Events/Controller/LaneClear.cs new file mode 100644 index 0000000..8062ab3 --- /dev/null +++ b/Sources/Events/Controller/LaneClear.cs @@ -0,0 +1,34 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace VoxCharger +{ + public abstract partial class Camera + { + public class LaneClear : Camera + { + public LaneClear(Time time, int duration, float start, float end) + : base(time, WorkType.LaneClear) + { + Duration = duration; + Start = start; + End = end; + } + + public override string ToString() + { + return $"{base.ToString()}" + + $"\tLaneY" + + $"\t2" + + $"\t{Duration:0.00}" + + $"\t{Start:0.00}" + + $"\t{End:0.00}" + + $"\t0.00" + + $"\t0.00"; + } + } + } +} diff --git a/Sources/Events/Controller/Radian.cs b/Sources/Events/Controller/Radian.cs new file mode 100644 index 0000000..dd1333b --- /dev/null +++ b/Sources/Events/Controller/Radian.cs @@ -0,0 +1,31 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Camera + { + public class Radian : Camera + { + + public Radian(Time time, int duration, float start, float end) + : base(time, WorkType.Radian) + { + Duration = duration; + Start = start; + End = end; + } + + public override string ToString() + { + return $"{base.ToString()}" + + $"\tCAM_Radi" + + $"\t2" + + $"\t{Duration}" + + $"\t{Start:0.00}" + + $"\t{End:0.00}" + + $"\t0.00" + + $"\t0.00"; + } + } + } +} diff --git a/Sources/Events/Controller/Rotation.cs b/Sources/Events/Controller/Rotation.cs new file mode 100644 index 0000000..a214021 --- /dev/null +++ b/Sources/Events/Controller/Rotation.cs @@ -0,0 +1,30 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Camera + { + public class Rotation : Camera + { + public Rotation(Time time, int duration, float start, float end) + : base(time, WorkType.Rotation) + { + Duration = duration; + Start = start; + End = end; + } + + public override string ToString() + { + return $"{base.ToString()}" + + $"\tCAM_RotX" + + $"\t2" + + $"\t{Duration}" + + $"\t{Start:0.00}" + + $"\t{End:0.00}" + + $"\t0.00" + + $"\t0.00"; + } + } + } +} diff --git a/Sources/Events/Controller/Tilt.cs b/Sources/Events/Controller/Tilt.cs new file mode 100644 index 0000000..0fb66c1 --- /dev/null +++ b/Sources/Events/Controller/Tilt.cs @@ -0,0 +1,30 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Camera + { + public class Tilt : Camera + { + public Tilt(Time time, int duration, float start, float end) + : base(time, WorkType.Rotation) + { + Duration = duration; + Start = start; + End = end; + } + + public override string ToString() + { + return $"{base.ToString()}" + + $"\tTilt" + + $"\t2" + + $"\t{Duration}" + + $"\t{Start:0.00}" + + $"\t{End:0.00}" + + $"\t0.00" + // Can be 0.00, 2.00 or 3.00 + $"\t0.00"; + } + } + } +} diff --git a/Sources/Events/Controller/WorkType.cs b/Sources/Events/Controller/WorkType.cs new file mode 100644 index 0000000..92e2125 --- /dev/null +++ b/Sources/Events/Controller/WorkType.cs @@ -0,0 +1,19 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Camera + { + public enum WorkType + { + None, + Rotation, + Radian, + Realize, + AirLeftScaleX, + AirLeftScaleY, + Tilt, + LaneClear + } + } +} diff --git a/Sources/Events/Event.cs b/Sources/Events/Event.cs new file mode 100644 index 0000000..8a3918b --- /dev/null +++ b/Sources/Events/Event.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections; +using System.Collections.Generic; + +namespace VoxCharger +{ + public abstract partial class Event + { + public Time Time { get; set; } + + protected Event(Time time) + { + Time = new Time(time.Measure, time.Beat, time.Offset); + } + + public override string ToString() + { + return Time.ToString(); + } + } +} diff --git a/Sources/Events/EventCollection.cs b/Sources/Events/EventCollection.cs new file mode 100644 index 0000000..b250b9e --- /dev/null +++ b/Sources/Events/EventCollection.cs @@ -0,0 +1,99 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace VoxCharger +{ + public class EventCollection : ICollection + { + private List Events = new List(); + + public int Count => Events.Count; + + public bool IsReadOnly => false; + + public EventCollection() + { + } + + public Event[] this[int measure] + { + get => Events.FindAll((ev) => ev.Time.Measure == measure).ToArray(); + } + + public Event[] this[Time time] + { + get => Events.FindAll((ev) => ev.Time == time).ToArray(); + set => Events.AddRange(value.Where(ev => ev != null).Select(ev => { ev.Time = time; return ev; })); + } + + public Event.TimeSignature GetTimeSignature(int measure) + { + return GetTimeSignature(new Time(measure, 1, 0)); + } + + public Event.TimeSignature GetTimeSignature(Time time) + { + var timeSig = Events.LastOrDefault(ev => + ev is Event.TimeSignature && (ev.Time == time || ev.Time.Measure < time.Measure) + ) as Event.TimeSignature; + + return timeSig != null ? timeSig : new Event.TimeSignature(time, 4, 4); + } + + public Event.BPM GetBPM(int measure) + { + return GetBPM(new Time(measure, 1, 0)); + } + + public Event.BPM GetBPM(Time time) + { + return Events.LastOrDefault(ev => + ev is Event.BPM && (ev.Time == time || ev.Time.Measure < time.Measure) + ) as Event.BPM; + } + + public void Add(Event ev) + { + if (ev != null) + Events.Add(ev); + } + + public void Add(params Event[] ev) + { + Events.AddRange(new List(ev).FindAll(e => e != null)); + } + + public bool Remove(Event ev) + { + return Events.Remove(ev); + } + + public bool Contains(Event ev) + { + return Events.Contains(ev); + } + + public void CopyTo(Event[] events, int index) + { + Events.CopyTo(events, index); + } + + public void Clear() + { + Events.Clear(); + } + + public IEnumerator GetEnumerator() + { + return Events.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() + { + return Events.GetEnumerator(); + } + } +} diff --git a/Sources/Events/Laser.cs b/Sources/Events/Laser.cs new file mode 100644 index 0000000..f97bdd8 --- /dev/null +++ b/Sources/Events/Laser.cs @@ -0,0 +1,92 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Event + { + public enum LaserTrack + { + Left = 1, + Right = 8 + } + + public enum LaserFlag + { + Tick = 0, + Start = 1, + End = 2 + } + + public enum SlamImpact + { + None = 0, + Measure = 1, + HalfMeasure = 2, + ThreeBeat = 3, + TripleMeasure = 4, + Swing = 5 + } + + public enum LaserFilter + { + Peak = 0, + LowPass = 1, + HighPass = 3, + BitCrusher = 5 + } + + public enum SlamDirection + { + Left, + Right + } + + public class Laser : Event + { + public LaserTrack Track { get; set; } + public int Offset { get; set; } + public LaserFlag Flag { get; set; } + public SlamImpact Impact { get; set; } + public int Range { get; set; } + public LaserFilter Filter { get; set; } + public bool Slam { get; set; } + + public Laser(Time time, LaserTrack track, int offset, LaserFlag flag, SlamImpact impact) + : base (time) + { + Track = track; + Offset = offset; + Flag = flag; + Impact = impact; + } + + public Laser(Time time, LaserTrack track, int offset, LaserFlag flag, SlamImpact impact, LaserFilter filter, int range) + : this(time, track, offset, flag, impact) + { + Filter = filter; + Range = range; + } + + public override string ToString() + { + return $"{base.ToString()}\t{Offset}\t{(int)Flag}\t{(int)Impact}\t{(int)Filter}\t{Range}\t0"; + } + } + + // TODO: Pairing like this tend to break stuffs, need more tests, or don't use it at all + public class Slam : Event + { + public Laser Start { get; set; } + public Laser End { get; set; } + public LaserTrack Track => Start.Track; + public SlamDirection Direction => Start.Offset > End.Offset ? SlamDirection.Left : SlamDirection.Right; + + public Slam(Time time, Laser start, Laser end) + : base (time) + { + Start = start; + End = end; + } + } + } +} diff --git a/Sources/Events/Signature.cs b/Sources/Events/Signature.cs new file mode 100644 index 0000000..f08c3d0 --- /dev/null +++ b/Sources/Events/Signature.cs @@ -0,0 +1,30 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Event + { + public class TimeSignature : Event + { + public int Beat { get; set; } + public int Note { get; set; } + + public TimeSignature(Time time, int beat, int note) + : base(time) + { + Beat = beat; + Note = note; + } + + public static implicit operator (int beat, int note)(TimeSignature signature) + { + return (signature.Beat, signature.Note); + } + + public override string ToString() + { + return $"{base.ToString()}\t{Beat}\t{Note}"; + } + } + } +} diff --git a/Sources/Events/Stop.cs b/Sources/Events/Stop.cs new file mode 100644 index 0000000..492a409 --- /dev/null +++ b/Sources/Events/Stop.cs @@ -0,0 +1,23 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Event + { + public class Stop : Event + { + public int Duration { get; set; } + + public Stop(Time time) + : base(time) + { + } + + public Stop(Time time, int duration) + : base(time) + { + Duration = duration; + } + } + } +} diff --git a/Sources/Events/TiltMode.cs b/Sources/Events/TiltMode.cs new file mode 100644 index 0000000..b90036b --- /dev/null +++ b/Sources/Events/TiltMode.cs @@ -0,0 +1,30 @@ +using System; + +namespace VoxCharger +{ + public abstract partial class Event + { + public enum TiltType + { + Normal = 0, + Large = 1, + Incremental = 2 + } + + public class TiltMode : Event + { + public TiltType Mode { get; set; } + + public TiltMode(Time time, TiltType mode) + : base(time) + { + Mode = mode; + } + + public override string ToString() + { + return $"{base.ToString()}\t{(int)Mode}"; + } + } + } +} diff --git a/Sources/Events/Time.cs b/Sources/Events/Time.cs new file mode 100644 index 0000000..4762634 --- /dev/null +++ b/Sources/Events/Time.cs @@ -0,0 +1,165 @@ +using System; + +namespace VoxCharger +{ + public class Time + { + public int Measure { get; set; } + public int Beat { get; set; } + public int Offset { get; set; } + + public Time() + : this(1, 1, 0) + { + } + + public Time(int measure, int beat, int cell) + { + Measure = measure; + Beat = beat; + Offset = cell; + } + + public static Time FromString(string input) + { + try + { + var data = input.Split(','); + if (data.Length != 3) + return null; + + return new Time() + { + Measure = int.Parse(data[0]), + Beat = int.Parse(data[1]), + Offset = int.Parse(data[2]) + }; + } + catch (Exception) + { + return null; + } + } + + public static Time FromOffset(float absOffset, (int beat, int note) signature) + { + float remaining = (absOffset % 192f) % (192f / signature.beat); + float divisor = (192f / signature.beat); + + int measure = (int)(absOffset / 192f); + int beat = (int)((absOffset % 192f) / divisor) + 1; + int offset = (int)Math.Round((remaining / (divisor / signature.note)) * ((192f / 4f) / 4f)); + + // Since the value rounded up, there's chance this happen (precision rounding problem) + beat += offset / 48; + measure += beat > signature.beat ? 1 : 0; + beat = beat > signature.beat ? signature.beat - (beat - 1) : beat; + offset %= 48; + + return new Time(measure, beat, offset); + } + + public int GetAbsoluteOffset((int beat, int note) signature) + { + float offset = Measure * 192f; + offset += ((Beat - 1) * (192f / signature.beat)); + offset += ((Offset / (192f / 4f)) * (192f / signature.beat)); + + return (int)Math.Round(offset); + } + + public int Difference(Time time, (int beat, int note) signature) + { + // Only effective when both using same time signature + float tick = ((192f / 4f) * (4f / signature.note)); + return (int)((Measure - time.Measure) * (tick * signature.beat) + + (Beat - time.Beat) * tick + + (Offset - time.Offset)); + } + + public Time Add(int position, (int beat, int note) signature) + { + int measure = Measure + (int)(position / 192f); + int beat = Beat + (int)((position % 192f) / (192f / signature.beat)); + + float absolute = (position % 192f) % (192f / signature.beat); + int offset = Offset + (int)Math.Round((absolute / ((192f / signature.beat) / signature.note)) * ((192f / 4f) / 4f)); + + beat += offset / 48; + offset %= 48; + + measure += beat / signature.beat; + beat %= signature.beat; + + if (beat == 0) + { + measure -= 1; + beat = signature.beat; + } + + return new Time(measure, beat, offset); + } + + public Time Add(Time time, (int beat, int note) signature) + { + int measure = Measure + time.Measure; + int beat = Beat + time.Beat; + int offset = Offset + time.Offset; + + beat += offset / 48; + offset %= 48; + + measure += beat / signature.beat; + beat %= signature.beat; + + if (beat == 0) + { + measure -= 1; + beat = signature.beat; + } + + return new Time(measure, beat, offset); + } + + public static bool operator ==(Time a, Time b) + { + if (ReferenceEquals(a, null) || ReferenceEquals(b, null)) + return ReferenceEquals(a, b); + + return a.Measure == b.Measure && a.Beat == b.Beat && a.Offset == b.Offset; + } + + public static bool operator !=(Time a, Time b) + { + if (ReferenceEquals(a, null) || ReferenceEquals(b, null)) + return ReferenceEquals(a, b); + + return a.Measure != b.Measure || a.Beat != b.Beat || a.Offset != b.Offset; + } + + public static Time operator +(Time time, int position) + { + return time.Add(position, (4, 4)); + } + + public static Time operator +(Time a, Time b) + { + return a.Add(b, (4, 4)); + } + + public override bool Equals(object obj) + { + return obj is Time time && time == this; + } + + public override int GetHashCode() + { + return Measure + Beat + Offset; + } + + public override string ToString() + { + return $"{Measure:D3},{Beat:D2},{Offset:D2}"; + } + } +} diff --git a/Sources/Forms/AboutForm.cs b/Sources/Forms/AboutForm.cs new file mode 100644 index 0000000..e6c5589 --- /dev/null +++ b/Sources/Forms/AboutForm.cs @@ -0,0 +1,23 @@ +using System; +using System.Windows.Forms; + +namespace VoxCharger +{ + public partial class AboutForm : Form + { + public AboutForm() + { + InitializeComponent(); + } + + private void OnEmailLinkLabelLinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + System.Diagnostics.Process.Start("mailto://o2jam@cxo2.me"); + } + + private void OnCloseButtonClick(object sender, EventArgs e) + { + Close(); + } + } +} diff --git a/Sources/Forms/AboutForm.designer.cs b/Sources/Forms/AboutForm.designer.cs new file mode 100644 index 0000000..aaed2a1 --- /dev/null +++ b/Sources/Forms/AboutForm.designer.cs @@ -0,0 +1,152 @@ +namespace VoxCharger +{ + partial class AboutForm + { + /// + /// 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(AboutForm)); + this.ProfilePictureBox = new System.Windows.Forms.PictureBox(); + this.label1 = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.EmailLinkLabel = new System.Windows.Forms.LinkLabel(); + this.label4 = new System.Windows.Forms.Label(); + this.CloseButton = new System.Windows.Forms.Button(); + ((System.ComponentModel.ISupportInitialize)(this.ProfilePictureBox)).BeginInit(); + this.SuspendLayout(); + // + // ProfilePictureBox + // + this.ProfilePictureBox.Image = ((System.Drawing.Image)(resources.GetObject("ProfilePictureBox.Image"))); + this.ProfilePictureBox.Location = new System.Drawing.Point(21, 21); + this.ProfilePictureBox.Name = "ProfilePictureBox"; + this.ProfilePictureBox.Size = new System.Drawing.Size(80, 80); + this.ProfilePictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.ProfilePictureBox.TabIndex = 0; + this.ProfilePictureBox.TabStop = false; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label1.Location = new System.Drawing.Point(107, 21); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(64, 13); + this.label1.TabIndex = 1; + this.label1.Text = "VoxCharger"; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label2.Location = new System.Drawing.Point(107, 36); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(77, 13); + this.label2.TabIndex = 2; + this.label2.Text = "Version 0.9.7b"; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label3.Location = new System.Drawing.Point(107, 51); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(131, 13); + this.label3.TabIndex = 3; + this.label3.Text = "Copyright © 2020 - CXO2"; + // + // EmailLinkLabel + // + this.EmailLinkLabel.AutoSize = true; + this.EmailLinkLabel.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.EmailLinkLabel.Location = new System.Drawing.Point(107, 67); + this.EmailLinkLabel.Name = "EmailLinkLabel"; + this.EmailLinkLabel.Size = new System.Drawing.Size(87, 13); + this.EmailLinkLabel.TabIndex = 4; + this.EmailLinkLabel.TabStop = true; + this.EmailLinkLabel.Text = "o2jam@cxo2.me"; + this.EmailLinkLabel.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.OnEmailLinkLabelLinkClicked); + // + // label4 + // + this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.label4.AutoSize = true; + this.label4.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label4.Location = new System.Drawing.Point(21, 118); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(250, 26); + this.label4.TabIndex = 5; + this.label4.Text = "This freeware program.\r\nUse at your own risk with no warranty of any kind.\r\n"; + // + // CloseButton + // + this.CloseButton.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.CloseButton.Location = new System.Drawing.Point(21, 151); + this.CloseButton.Name = "CloseButton"; + this.CloseButton.Size = new System.Drawing.Size(292, 26); + this.CloseButton.TabIndex = 6; + this.CloseButton.Text = "OK"; + this.CloseButton.UseVisualStyleBackColor = true; + this.CloseButton.Click += new System.EventHandler(this.OnCloseButtonClick); + // + // AboutForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(334, 189); + this.Controls.Add(this.CloseButton); + this.Controls.Add(this.label4); + this.Controls.Add(this.EmailLinkLabel); + this.Controls.Add(this.label3); + this.Controls.Add(this.label2); + this.Controls.Add(this.label1); + this.Controls.Add(this.ProfilePictureBox); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "AboutForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "About VoxCharger"; + ((System.ComponentModel.ISupportInitialize)(this.ProfilePictureBox)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.PictureBox ProfilePictureBox; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.LinkLabel EmailLinkLabel; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.Button CloseButton; + } +} \ No newline at end of file diff --git a/Sources/Forms/AboutForm.resx b/Sources/Forms/AboutForm.resx new file mode 100644 index 0000000..67b1d7d --- /dev/null +++ b/Sources/Forms/AboutForm.resx @@ -0,0 +1,3180 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + + /9j/4AAQSkZJRgABAQEAYABgAAD/4QBCRXhpZgAATU0AKgAAAAgAAgESAAMAAAABAAEAAIdpAAQAAAAB + AAAAJgAAAAAAAZKGAAcAAAAEKgAAAAAAAAAAAP/iC/hJQ0NfUFJPRklMRQABAQAAC+gAAAAAAgAAAG1u + dHJSR0IgWFlaIAfZAAMAGwAVACQAH2Fjc3AAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAD21gAB + AAAAANMtAAAAACn4Pd6v8lWueEL65MqDOQ0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEGRl + c2MAAAFEAAAAeWJYWVoAAAHAAAAAFGJUUkMAAAHUAAAIDGRtZGQAAAngAAAAiGdYWVoAAApoAAAAFGdU + UkMAAAHUAAAIDGx1bWkAAAp8AAAAFG1lYXMAAAqQAAAAJGJrcHQAAAq0AAAAFHJYWVoAAArIAAAAFHJU + UkMAAAHUAAAIDHRlY2gAAArcAAAADHZ1ZWQAAAroAAAAh3d0cHQAAAtwAAAAFGNwcnQAAAuEAAAAN2No + YWQAAAu8AAAALGRlc2MAAAAAAAAAH3NSR0IgSUVDNjE5NjYtMi0xIGJsYWNrIHNjYWxlZAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAABYWVogAAAAAAAAJKAAAA+EAAC2z2N1cnYAAAAAAAAEAAAAAAUACgAPABQAGQAe + ACMAKAAtADIANwA7AEAARQBKAE8AVABZAF4AYwBoAG0AcgB3AHwAgQCGAIsAkACVAJoAnwCkAKkArgCy + ALcAvADBAMYAywDQANUA2wDgAOUA6wDwAPYA+wEBAQcBDQETARkBHwElASsBMgE4AT4BRQFMAVIBWQFg + AWcBbgF1AXwBgwGLAZIBmgGhAakBsQG5AcEByQHRAdkB4QHpAfIB+gIDAgwCFAIdAiYCLwI4AkECSwJU + Al0CZwJxAnoChAKOApgCogKsArYCwQLLAtUC4ALrAvUDAAMLAxYDIQMtAzgDQwNPA1oDZgNyA34DigOW + A6IDrgO6A8cD0wPgA+wD+QQGBBMEIAQtBDsESARVBGMEcQR+BIwEmgSoBLYExATTBOEE8AT+BQ0FHAUr + BToFSQVYBWcFdwWGBZYFpgW1BcUF1QXlBfYGBgYWBicGNwZIBlkGagZ7BowGnQavBsAG0QbjBvUHBwcZ + BysHPQdPB2EHdAeGB5kHrAe/B9IH5Qf4CAsIHwgyCEYIWghuCIIIlgiqCL4I0gjnCPsJEAklCToJTwlk + CXkJjwmkCboJzwnlCfsKEQonCj0KVApqCoEKmAquCsUK3ArzCwsLIgs5C1ELaQuAC5gLsAvIC+EL+QwS + DCoMQwxcDHUMjgynDMAM2QzzDQ0NJg1ADVoNdA2ODakNww3eDfgOEw4uDkkOZA5/DpsOtg7SDu4PCQ8l + D0EPXg96D5YPsw/PD+wQCRAmEEMQYRB+EJsQuRDXEPURExExEU8RbRGMEaoRyRHoEgcSJhJFEmQShBKj + EsMS4xMDEyMTQxNjE4MTpBPFE+UUBhQnFEkUahSLFK0UzhTwFRIVNBVWFXgVmxW9FeAWAxYmFkkWbBaP + FrIW1hb6Fx0XQRdlF4kXrhfSF/cYGxhAGGUYihivGNUY+hkgGUUZaxmRGbcZ3RoEGioaURp3Gp4axRrs + GxQbOxtjG4obshvaHAIcKhxSHHscoxzMHPUdHh1HHXAdmR3DHeweFh5AHmoelB6+HukfEx8+H2kflB+/ + H+ogFSBBIGwgmCDEIPAhHCFIIXUhoSHOIfsiJyJVIoIiryLdIwojOCNmI5QjwiPwJB8kTSR8JKsk2iUJ + JTglaCWXJccl9yYnJlcmhya3JugnGCdJJ3onqyfcKA0oPyhxKKIo1CkGKTgpaymdKdAqAio1KmgqmyrP + KwIrNitpK50r0SwFLDksbiyiLNctDC1BLXYtqy3hLhYuTC6CLrcu7i8kL1ovkS/HL/4wNTBsMKQw2zES + MUoxgjG6MfIyKjJjMpsy1DMNM0YzfzO4M/E0KzRlNJ402DUTNU01hzXCNf02NzZyNq426TckN2A3nDfX + OBQ4UDiMOMg5BTlCOX85vDn5OjY6dDqyOu87LTtrO6o76DwnPGU8pDzjPSI9YT2hPeA+ID5gPqA+4D8h + P2E/oj/iQCNAZECmQOdBKUFqQaxB7kIwQnJCtUL3QzpDfUPARANER0SKRM5FEkVVRZpF3kYiRmdGq0bw + RzVHe0fASAVIS0iRSNdJHUljSalJ8Eo3Sn1KxEsMS1NLmkviTCpMcky6TQJNSk2TTdxOJU5uTrdPAE9J + T5NP3VAnUHFQu1EGUVBRm1HmUjFSfFLHUxNTX1OqU/ZUQlSPVNtVKFV1VcJWD1ZcVqlW91dEV5JX4Fgv + WH1Yy1kaWWlZuFoHWlZaplr1W0VblVvlXDVchlzWXSddeF3JXhpebF69Xw9fYV+zYAVgV2CqYPxhT2Gi + YfViSWKcYvBjQ2OXY+tkQGSUZOllPWWSZedmPWaSZuhnPWeTZ+loP2iWaOxpQ2maafFqSGqfavdrT2un + a/9sV2yvbQhtYG25bhJua27Ebx5veG/RcCtwhnDgcTpxlXHwcktypnMBc11zuHQUdHB0zHUodYV14XY+ + dpt2+HdWd7N4EXhueMx5KnmJeed6RnqlewR7Y3vCfCF8gXzhfUF9oX4BfmJ+wn8jf4R/5YBHgKiBCoFr + gc2CMIKSgvSDV4O6hB2EgITjhUeFq4YOhnKG14c7h5+IBIhpiM6JM4mZif6KZIrKizCLlov8jGOMyo0x + jZiN/45mjs6PNo+ekAaQbpDWkT+RqJIRknqS45NNk7aUIJSKlPSVX5XJljSWn5cKl3WX4JhMmLiZJJmQ + mfyaaJrVm0Kbr5wcnImc951kndKeQJ6unx2fi5/6oGmg2KFHobaiJqKWowajdqPmpFakx6U4pammGqaL + pv2nbqfgqFKoxKk3qamqHKqPqwKrdavprFys0K1ErbiuLa6hrxavi7AAsHWw6rFgsdayS7LCszizrrQl + tJy1E7WKtgG2ebbwt2i34LhZuNG5SrnCuju6tbsuu6e8IbybvRW9j74KvoS+/796v/XAcMDswWfB48Jf + wtvDWMPUxFHEzsVLxcjGRsbDx0HHv8g9yLzJOsm5yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE8 + 0b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp22vvbgNwF3IrdEN2W3hzeot8p36/gNuC9 + 4UThzOJT4tvjY+Pr5HPk/OWE5g3mlucf56noMui86Ubp0Opb6uXrcOv77IbtEe2c7ijutO9A78zwWPDl + 8XLx//KM8xnzp/Q09ML1UPXe9m32+/eK+Bn4qPk4+cf6V/rn+3f8B/yY/Sn9uv5L/tz/bf//ZGVzYwAA + AAAAAAAuSUVDIDYxOTY2LTItMSBEZWZhdWx0IFJHQiBDb2xvdXIgU3BhY2UgLSBzUkdCAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAAAAAAFAAAAAAAABtZWFzAAAAAAAA + AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJYWVogAAAAAAAAAxYAAAMzAAACpFhZWiAAAAAAAABvogAA + OPUAAAOQc2lnIAAAAABDUlQgZGVzYwAAAAAAAAAtUmVmZXJlbmNlIFZpZXdpbmcgQ29uZGl0aW9uIGlu + IElFQyA2MTk2Ni0yLTEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAAD21gABAAAAANMtdGV4dAAA + AABDb3B5cmlnaHQgSW50ZXJuYXRpb25hbCBDb2xvciBDb25zb3J0aXVtLCAyMDA5AABzZjMyAAAAAAAB + DEQAAAXf///zJgAAB5QAAP2P///7of///aIAAAPbAADAdf/bAEMAAgEBAQEBAgEBAQICAgICBAMCAgIC + BQQEAwQGBQYGBgUGBgYHCQgGBwkHBgYICwgJCgoKCgoGCAsMCwoMCQoKCv/bAEMBAgICAgICBQMDBQoH + BgcKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCv/AABEIAFAA + UAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUE + BAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4 + OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmq + srO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEB + AQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIy + gQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZn + aGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV + 1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP5/6KKKACiiuz/Z++Cniz9of4vaH8If + BdjJcX2tahFbRpCuW+d1QAf7RZlUZ43MuaAOw/Y2/YV/aI/bp+Kul/CH4A+B7nVtW1aZktYo1Cgxr/rZ + 2ZyqJBF8plmdgib0GS7xo/6X+Pv+DT7wn8OPhJqnxB8Tf8FP/hhY3nhfTkuPF39tyvYaTpxdiqGS+YO0 + Ksdoj8yAGYn5Pb6E/avvfgR/wQi/Yab9m/4a3Gnt8SPFGg2snxAvLO8gS/nhlDrY6DDG4udschWSa5wh + SVI53YobuEL+cB+JXi7w54n0v4s/tAeJ9S1LxxpWpNfaToepfvdM8LzNsBht7J3IaRUhijdnaFEMfkou + IWmQA5L4lf8ABEH9tqwGt+If2fPgn8QPiT4V0i9kih8Xad8Pbyxtb+JGlVpYIrnbcyjMecxwsux1YuNw + FfNNh+z/APFTUtam8OWPhmWa/t133FpbqZZIk/vuEDbFzkbjgAggkGv3y+C3/BZXXP2oPhZY3HiDQ7Ka + 7u7RrTX11C6Bh89HO8QBVQiFv9YPlQJviCK5L4+DP2gfirqPivxz8QvEGq/ELX7zQI/E0ln4et9U1me6 + ku3jQLLPJcMWkmTKpsLOxcbWkeaSMySAH55eKPhZ4k8HnytaNusinDxw3Acj+Q/XvXNzR+VIYxu4/vLi + vRPiv4otdQ1maOzA8pG6hQAfbA4A9MdsV57PKJ7hpCPvNQBHRRRQAV+kP/BrnD8Mh/wU00PU/iLLbrJZ + RrJosdwzDzb1w8MCACNgx8+WFsM0YyoIbKhG/N4cnk16R+yV8edV/Zs/aA8O/FfTdQuLeKxvlTUJLViJ + BbsQHdP9tOJEPZ0U9RQB+oX/AAU81Pxx8Tv+CoXxa8VeMtS1K8s/hf4mk0vw3IurGa3/ALcuIop7i5iw + oEUltbCztcICyGG3Zt2GWvlPxL8LnvrOS91KPybeMYYsoSNVGOCxYqABjJJzgAcAKB9OftX/ABe8N/GH + 4WN+0D8PBHq3ibxr8YfGN34o0PR4Vz9sRrOQXIj6xwtay2knmsSux49zBsCvHbHwb4u1rSINV1K3Gpai + rPtZGWSw0tiuHLSki385NwBTc88YO5YmOxgAeW+HvF2o/CexupvDUslnBJNtt9QaQRtIzxqhMe4jecfN + uAKgovGcVT+InjWxsPANro1rpDiJLd1huryF381gDkoXKqTuDLtClsBSWOc1qeI9Y8A+ANcmkd49c1IM + Wa4tozsEn8X76QBiM/MHjjhfP3gR8teaeO/ijp/i7UJGu9dskmmf95HYZmkfJ6SSLvkk6jl2JPJzu4Mu + RSieS+JBpU07lfMkZW5DLtB9xkDjrjA/AdKxF/s0SjamOezNXR68mms5NvBc9PvSQ7c/mfp2rH+yRK28 + wH/vnms1I05TGooorYxCiiigD7a/4I3/ALZ/7Mv7MXxpm1H9rH4SaH4w8O6p5Nt4gtPEmn/2jHLYrsRJ + Le1lDwteW+PMiJQsw3xqQXDL9uftAfsPftV/tJ+Mbz4reH7K8+DvwX1q583wzrvxGs2bxBq2nlP3b2+i + xzvJG23Eifb7i2EiMSAP9XX4r+GvEGseFvEmn+KPD98bW/069iurK5XrFLG4ZG/BgDX9LX7SfxsufEX/ + AATS+GHxAvdTsoX0VofDniTUIVAs7G4jhjiVpDN+78oyfZ8JNJA4aaLDZUqQD8w/G37H/wCyl8IC32u0 + 1Xxtqn2koNQ8aaqfKMquq7Ut7cRwW0gd0jlhuPP2CdZFkKEOPK/Gfw8uZ4BDpOiR6XZuAY7e309LLfH5 + YcZhVVjB8ry8hT1nOCwNe5atZC+vv7TuluJvNjWGa6sZZZxHDsdSizoyRsI4V1BUL3U4eOBEJ2x5r2f9 + iX9nKy/aN8ZQ6M8FtHNqDKrIrRqivNIZnwsSgbRlF2sxK7Mf7KxGKnvpY0cuRXPzO8efCPVNKupHe0bg + qGO0jJ25PqK4eTQJI3CldrdfunIFfuh/wU//AOCTvh79nT4dR+Lk1W3uvOjYyMIhuD4r8g9c8UXPw08Q + 3kXh22tfOmtnt5WuIBJhTkZXPQ4NRUilaUdVexVOr7S6e6PmOiiitjEKKKKACv0q/ZS+Nv7df7bn7Lmo + fsS+Gvi94O17SvFGL/QdF8SaPYo8eqW1u1rJplvLeR+TbTyW07Sw+Wm4zFNjI7lh+atdJ8Mvif4p+Ffi + GPxB4Y1GS3ljkV1khbbJDIv3Jo2GDHLG3zo6kFWUEHigD0bVdQ+LPw38UXPhHxhqmpaZqVpeSLewTX0w + xJuw/wAqsYz85kYMoIJdiMgivqb9jn9vnx38GfEkPiCbVgfJlEytCy43AAFuOcnH0HpXnfxh/ai8P/tp + aKnjHxrr/leM/MU6xa2uiwxpqbNcX11NeIUUFXMkyloySQZW2ny0VU+b5Nfm0qfyYZJAGQE8/wCcis1L + lkb8sasbM/UL9t3/AILAeN/2jfB0Og61r8s6LbgIpY4HGK/N/wAZ+LW1fWJrsgPubr+f/wBasG98WXM9 + mjPMx+Urt/H/AOvWJdarJLJlHOByMGiU+ZWSsio0oU4s5qiiitDmCiiigAooooAkt7q5tXEltO8bA5DI + xGD61cj1UyBTPIzMBglmNZ9FS4qRSlY1H1GIx+W0vRs/mKqyX+77g5z96qtAxnmhQiP2jP/Z + + + + + AAABAAEAzdEAAAEAIAB4tAIAFgAAACgAAADNAAAAogEAAAEAIAAAAAAAdJ0CABMLAAATCwAAAAAAAAAA + AAD///8A////AOPd5AHu6+MC6OjVAf///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ALKG5AqznNgqwbbLbdHO + sVLc3KMa6+ylBv//zQL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AMmV/wKPWOERiFffT4VZz7Wwmai4zcieeN/fpS3p7a8M9//WBP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wChXuUCgkfoEXEz4UppJ9rCgkvM47KeoMzV0p2S4+a0Q+3uvBP//9AC////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgGDeAnw56BBuKeZJZh7lx20m + 5fSHVczyuKWg29nYn6bm6LdI6/C5EfH/ygP///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AIBg/wKANukOcCrmRmYc5sxrJOf5birl+4pWzvS3paDe1dSfmeDh + rDXn7rAM///fAv///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAAP8BejntDXAr6ENmG+XMbibn+28o5/9vKen9iVbQ9LaioNHOy51619adJOHipAb//4AB////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AX856gtwK+dBZhrk02sk + 5fxvLOf/cCno/m4o6PyFUdDtsZygvcrBnV/Uz50b0tKcBv///wH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AICA/wGAQfAKcS3mQGUa5NZrJOX8cCvm/3Ar5/9uKuf+bibq+oNN + 0uWulaSqwrafTM7FmxTe3pgE//8AAf///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8Af0TpCnEt5j9lG+TaayTl/HAr5v9wLOb/cS7n/m4p6P5sIev5f0jT3auOqJi7q6BAzMSdFeTj + rgb//98C////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AX0/7QpzLudAZBrk22wl + 5f1wKub/cCzm/3Es5v9wLOf/byfo/Wse7fR+RtXXqIqokb6voEPT0qUb8PHEC+/u6QTp/+oC////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AJUrwAKBROMLcS/mQGUb5dxsI+X9cCrm/3Ar5v9wK+b/cCvm/3Aq + 5/9vKOj9ah/u9n5G1titkaacysGgXOLjtzbx9NUh/PzwFP///wf///8C////Af///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD/AP8BhEnnC3Mv6EFlHOXcayPl/XAp5v9wK+b/cCvm/3Ar5v9wK+b/byvm/28p6P5qHu73gEnU4rSg + ob3X1aOV7e7Mc/b26FL8+/Up+Pn3Df///wH///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYhD5wlxLudAZBrk22wl + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wLOf/bijo/msh7vqFUNHzvKye5N7eqdTy8Nu7+vrwgvr8 + 9zL///4L////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCAQuIKcSznQ2Ub5NprJOX8bivm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/28q5v9tJun/bCPo/4hXzvvBsKD54eCw7fLy28v6+ux7/v71KP///wj///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8Ag0fwC3Er6ENkG+TZayTl/G4q5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCzm/20n + 6f9rJej/h1XN/sCxn/vg4q/u8/PZwPr662b5+vMf9//pB////wH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wDZ75kB////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AII/7gpxK+hDZRrk12sk + 5fpwKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9vKuf/bibo/2wi6P+HVc7+wLKf+t/h + q+jw8tav+PnnVPj48Br//+0F////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AEBA/wKCQesLcSrmQ2Uc5NdrJOX8cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvn/3Et5/9tJun/ayHp/4dVz//Bs5733+Cq3+7w0qP29+JM8/jpF/// + 8AX///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AekPpC28r5kRnG+TVbCTl/HAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+f/cSvn/28l6f9qIOn/h1XQ/sCxnPff4qfd7/DRnvb34kn29uwY///sBv///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AYE/7ApxK+ZFZhvk1Gsj + 5fxwKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/bybp/2oe + 6v6HUs7+v7Kb9t/hqd3u8NCj9vjiUPr67xr///wG////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AFVVqgGCQPEJcSrnRWUc5dNrI+X8cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Er5v9vJun/aB/r/4dSz/7Bs5v34OGp4+/x + 06z39uVV+vrxG////Qf///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgEHhC28r5kZnHOTRayXl+3Aq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/24m6f9oH+r/hVLQ/r+ym/rf36rn7/DTsPj44ln4/Osc9f/iCP// + 3wL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AH9D7QtwK+dGZhzk0msl + 5PxwK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9xK+f/bibq/2kf6f+ET9L/uKqj+97hqujv8tC0+PrhWvr86hz///gG////Af///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wF+P+kLcivlRWcb5dJrJOb7byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Et5v9uJun/aBrr/4NO + 0f64qqP63eCq6fHy0K72+N9R9vflF///5wX///8B////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD/AP8BfkHpCnIr5UZnHOXSbCTl/HAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSzm/24m6v9nGuv/gk/S/rirofve4Krl8PLOp/b4 + 20fz+OQV///qA///gAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYA87AtwKeZGZhzk0Gsl + 5fxuKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wLef/bibq/2gb7P+CTdP+uKmi+t3hqOLv8cyc9PjYPvb74RH///QD//+AAf// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ABca + JAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AHZL/wKDPu8JbyrnRmYb5NBrI+b7cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Et + 5v9vKuf/Zxvt/4JN0f+3qqH43t2o3uzwyZLy9tQ4+fjdD8L3ugT///8B////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AfEDjCnAr6EZnG+TQayTl+28q5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wLOb/cS3m/28q6P9pGuv/g07T/req + ovjc3qbY6u3FiuzzyjHx89IN///uA////wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AX038ApwLOdGZx3k0Wsj + 5ftvKeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/bynn/2YX9P+CTdT+tqqh9dHZnNHl6r166vHDKvHz + zwn//6oB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAA/wGBQe8LbSnlRGUc5dFrJOb7bynm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Es5v9uKef/ZRfy/4FN0/yypp7yztiZxOHntmbm7rce6vSxBv///wH///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAP8BfELnCnAr5kVmHOXQbCTl+24r5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/28p + 6P9nGfP/gEzS/KufmO7M1JS12eOqUOLqrBfi6awG////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AX1C6gtvK+ZFZxzl0mwj + 5ftvKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/24m6v9xLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/bynn/2cX8v9/TNH7q56V58jO + lKPV2qFB3eigFM35sgT//wAB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCCO+8LcizmRWcb5NFrI+X7byrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/dDHl/3k/2/9iFuT/bCXl/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Er5/9vKej/Zhny/oBJ0fqpmpjgxMqTmdDanjva56AR3v/VBP// + /wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAgIABez/kCm8p5kVmHOXQbCTm/HAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/bibq/24m + 6v+rrK3/m42q/18L8/9sJeX/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cjHn/28q5/9mGPL/fUHY+aeYmd3CypOVz9ecON/qoxHm5psD////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wAZGyYCGRsmAv///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AYJD4gxvK+ZFZhzl0Gsl + 5ftvKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/24m6v9rHvD/v7yI//v6tf+ncfr/TQHg/2wl + 5f90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Er5v9zLuX/cCro/2UZ + 8f99Qtj4p5aZ28TGk5HQ2Js32uaiEd7/rQT//4AB////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ABod + JwYaHScOGh0nA////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AKkq1AKFSOkLcSrnRWcc5NFrJOX6cCrm/nAr5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9uJur/ax7w/6Ggov/7+rX/9u/9/6Bz7/9NAeD/bCXl/3Qx5f9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Iv5v9vKeb/Zxnx/XxC1/eplpnZwcaUkNDW + nDrX5aIT0vqyBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AGx4nCxseJyYbHicN////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAgP8Bg0HvCnAq5kVmHOTQbCPl+3Aq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/bibq/2se + 8P+hoKL/7fmd///////27/3/mWzo/00B4P9sJeX/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9xK+b/ci/m/24o5/9oGvP8fkPX96eUnNnDxpOQ0tmgPtnkohTu77kF////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wAdHygGHR8oHh0fKBIdHygEHR8oAf///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AX487QtvKOdIZRvk0Wwk + 5fxvK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/24m6v9rHvD/oaCi//v6tf////////////bv + /f+gc+//TQHg/2wl5f90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As + 5v9yL+X/bynn/2cZ8v5/Q9f2p5ac2sXKlJTW36JB2euoFdH5sQT///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wAeISoB////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AJVq/wJ8PeoKbiflTmEW49BsJuX8byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9uJur/ax7w/6Ggov/t+Z3/////////////////9u/9/6Bz7/9NAeD/Yhbk/3Qx + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSvm/3Iv5v9vKuj/aBvx/35E + 1vernJXbx8yTmtbeoELZ5KAU3v+tBP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AjVftCXw/6EBpIuXPaSLl/G8q5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/bibq/2se + 8P+hoKL/7fmd///////////////////////27/3/mWzo/00B4P9iFuT/dDHl/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cjDl/24p6P9oHe/9fkjU9qyfldzFy5KZ1NueP9no + oBL3984E////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ALid6Qm0ku9ApHvtz3Qw + 6PtoH+X/cS3l/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/24m6v9rHvD/oaCi/+35nf////////////// + //////////////bv/f+ZbOj/TQHg/2IW5P90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Es5v90L+b/bino/2od7v6ASNP1rJ2V2sXKkpPU2Zo62eCeEObmpgP///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wHj1f8J5dn5QOLT+c6yivX8bSfm/2Qb5P9yL+X/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9uJur/ax7w/6Ggov/t+Z3/////////////////////////////////9u/9/5ls + 6P9NAeD/Yhbk/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCzm/3Iv + 5v9wKuf+ah7u/oBI0/WrnJfXxciQjdDXmTXY3pYOv7+AAf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A7e34Cvv2/kD39P3Q6uL7+7GR7/9dF+H/ZRnk/3Ix5f9wK+b/cCvm/3Ar5v9wK+b/bibq/2se + 8P+hoKL/7fmd///////////////////////////////////////27/3/mWzo/00B4P9iFuT/dDHl/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wLOb/ci/n/28q6f9qIe78gUfT9quZ + mNDExJGDy9OZMdfkog2//78B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8Aqqr/AfLi/An49/0//fz/0Pr4 + /vvw6vv/sZHt/1gN4v9iGeT/cjDl/3Ar5v9wK+b/cCvm/24m6v9rHvD/oaCi/+35nf////////////// + //////////////////////////////bv/f+ZbOj/TQHg/2IW5P90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Er5v9zL+X/byno/2of7P1/R9PyqZeayMDCknnN1Jos0eCeCczM + mQH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wChfOwOz7j3SfDp/df7+f39/Pv///by/f+yk+3/UQfh/2MW + 5P9zMeX/cCvm/3Ar5v9uJur/ax7w/6Ggov/t+Z3///////////////////////////////////////// + ////////9u/9/5ls6P9NAeD/bCXl/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Iu5f9vKen+aiDt/X5F0+2nlprBwMCUccnSkyfZ35QJtP+0Av///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCqVf8Bg0nrFYtW6nO/ovLc7eT7/fv6///8/v//+fb//7ST7v9PBOH/Yxbk/3Qx5f9wK+b/bibq/2se + 8P+hoKL/7fmd///////////////////////////////////////////////////////27/3/mWzo/00B + 4P9iFuT/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cy7l/24o + 6P5qIOv6fkbU6aeVnLy9v5Jpys+QIcvflQn///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AQCDfAopS7w2UYutEiE/o2L2d + 8Pzx7fz//f3////////9/f//tYn4/00B4P9iFuT/dDHl/24m6v9rHvD/oaCi/+35nf////////////// + //////////////////////////////////////////////bv/f+XZPL/TQHg/2wl5f90MeX/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLOf/bijo/msj6/qAStLnppGctby5 + k2DHyY4ex9iGBv///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////ANUr1QK7nPEIvZ3zPK+K7dSGS+n8vJzw//bx/v///f////////7+ + //+0lO3/TQHg/2IW5P9xLeb/ax7w/6Ggov/t+Z3///////////////////////////////////////// + ////////////////////////9u/9/5dk8v9NAeD/bCXl/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cSzm/3Et5f9uKOj+ayDr+n1E1eSijpyvuLSTWb7FjhrU1YsG//+AAf// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD/AP8B5d34Cejf/D3o3frWt5fv/Hs86P+7nPD/+vT////+//////////7//7SU7f9NAeD/Yhbk/24m + 6v+hoKL/7fmd//////////////////////////////////////////////////////////////////// + ///69f//l2Ty/00B4P9sJeX/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCrm/24r5v9vKub/byvm/24o + 5v9uKOX/bijm/2sj6P1rHuv5fkjQ4qGMm6i0sJdPw7+YFtHQswT///8B////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////Af30/wn8+f48+ff+1/Dq + /P68nPD/cizl/7yc8f/8+//////////////+/f//tYv4/00B4P9fC/P/m5+A/+35nf////////////// + //////////////////////////////////////////////////////////////r1//+XZPL/TQHg/00B + 4P9ZCuL/WQri/1kK4v9ZCuL/Wgri/1oL4v9bDOL/XA7k/14Q4v9fFOL/Yhjk/2cf5f9pIuT/bSbm/nUy + 6/eCUNDcq5mpnNPMvUPv69kR+Pj4BP///wH///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wH///8J//7/PP/+/9j7/P7+9PL+/7yb8f9pIOT/vJzw//79 + //////////////79//+1i/j/TQHg/6Wbr//t+Z3///////////////////////////////////////// + ////////////////////////////////////////9u/9/7SU7f+gc+//rIbq/6yG6v+shur/rIbq/6yG + 6v+shur/rIbq/6yG6v+shur/rIbq/6yG6/+shuv/rIbs/62F7f+thu/9q4Xs9Mew6Nft6OWO/fzzOP// + +g7///8D////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8B////CP/+/zz////Z/v///f39///49v7/vJ3w/2Ub5P+8nfD//v//////////////+vX//6yG + 6v/LtO/////x//79//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v///v3///z7 + /v/6+P7/+fX+//bz/f/07vz/8en8/+3k+/3x6fvy+vf7zv7+/YD///4y////D////wT///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wj///88////2v// + //3//////v7+//z7//+8nfD/ZBjk/9C1+f/////////////////+/f//9u/9//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/////////+ + ///+/f///vz//f3///D////G////fv///zT///8S////Bv///wL///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8I////Ov///9v////9//////////////////7//8So + 8P/ayvX///////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////7////7////7f// + /8r///+K////Sf7+/SP9/PwN////Av///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8B////B////zn///7c/////v////////////////7////+/v///v3///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////7+//r//v7x///+1/7+/a79/vt6/Pz5Qfn5 + 9hb///YF////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wf+/Ps5/f373vv/ + +/39/vv//v/8/////////v7///////////////////////////////////////////////////////// + //////////////79//////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+//7///////7//f39//// + /P/+//n//P75//z99//7/Pb++vr1/fj68/j4+vLr+Pnx0/X57avz9+lZ7/bYFtnZtQP///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wDs3vAH4dfwN+7q7d7j6c3+5u/K/+nyyf/r9cf/6vfG/+n3 + xv/r98b/6/fG/+v3xv/r98b/6/fG/+v3xv/r98b/6/fG/+v3xv/r98b/6/fG/+v3xv/u8NL/9vb2//// + //////////////////////////////z6///+/f//+P3a/+v3xv/r98b/6/fG/+v3xv/r98b/6/fG/+v3 + xv/r98b/6/fG/+v3xv/r98b/6/fG/+v3xv/r98b/6vbH/+v2yP/p8sf/6O/J/+Psyf/i6Mz/4OPM/97f + zv/Z28//2tjQ/dnXz/bY28jj2+S9q93puz/c7bENu+aiAv///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAgP8BuIruB5544jSRZtnfiWTE/Ydiwv+FXsD/hl6//4Ndv/+DXb//g12//4Ndv/+DXb//g12//4Nd + v/+DXb//g12//4Ndv/+DXb//g12//4Ndv/+Ib6r/vdGA//j92v/69f//y8zN/8vMzf////H///////// + ///69f//tYv4/3xMyv+DXb//g12//4Ndv/+DXb//g12//4Ndv/+DXb//g12//4Ndv/+DXb//g12//4Nd + v/+DXb//g12//4RdwP+DXr//hV/A/4VgwP+HYsH/iGXD/4pmw/+NaMb/j2vH/5Bsx/+Sbsj+mYG497C0 + ldvG0paMzN2eLdDengnMzJkB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AY5W7Al6O+ZDWBHg42Qc + 4f5kGuP/Yxjj/2IY5P9iFuT/Yxbk/2IW5P9iFuT/Yhbk/2IW5P9iFuT/Yhbk/2IW5P9iFuT/Yhbk/2IW + 5P9fC/P/aTjG/73RgP/4/dr//////46Imf80OCT/v8Vs///+4////////////9TB8f9wK+b/TQHg/2IW + 5P9iFuT/ax7w/2IW5P9iFuT/Yhbk/2IW5P9iFuT/Yhbk/2IW5P9iFuT/Yhbk/2IW5P9iFuT/Yxbj/2IX + 5P9lF+P/ZRjk/2Qb5P9nHOL/aB/h/2ki3/9rJeD/ayTk/3Ey3P6HZrvyp6uOy7/LkXXI25Un2uOjCebl + zAL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGBROkJczHoPGQZ5ORrI+r9bSbq/20l6v9uJur/bibq/24m + 6v9uJur/bibq/24m6v9uJur/bibq/24m6v9uJur/bibq/24m6v9uJur/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/AgMN/0dILv+/xWz///7j////////////4dT3/3Qx5f9ZCuL/bibq/3Ar5v9uJur/bibq/24m + 6v9uJur/bibq/24m6v9uJur/bibq/24m6v9uJur/bibq/24m6v9uJur/bibq/20m6v9tJer/bibo/24m + 6f9sJej/bSXn/24n5/9uJ+f+cC3f+4Zive6lqI/FwM2Rdc/enyzY5KsMzMzMAv///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AhkjlCHUw5ztlGOXkbCTl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/x0eIP8ZGyb/R0gu/7/F + bP///uP////////////h1Pf/gUXq/1kK4v9wK+b/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5/9wKuf/cCrm/3Ar5v9vKuf/cCrm/24n + 5/9uLOD7h2K97qeqjcrD0JOF1OOqOeDqsQ/T08gD////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYtO+Ad2Muc4ZRjk52wl + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8iJiD/Ky0y/yAiK/9HSC7/v8Vs///+4////////////+ba + 9/+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5/9vKuj/bijn/20t3/2HZLzyqa2N0cbU + lZfY5rJE4Ou6E+f44AT///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGFUe8IdjPmN2MZ5OdsJOX/byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/HR4g/zEyNv80NTj/GBYu/0dILv+/xWz///7j////////////5tr3/4FF6v9ZCuL/cCvm/3Et + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9uJ+b/cC3h/YhlvPOrrpDbxtaWodvptUrf770U8PjOA/// + wAL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AiErrB3g26TVjGeTobCTl/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/x0eIP8vMDT/ODg7/zQ1 + OP8YFi7/R0gu/7/FbP///uP////////////r4fr/gUXq/1kK4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCrm/24m5/9vLOT9iWa99quvjt7I15ak1+ezSuPxvRP1/8kD////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIJQ+Ad3Nuk0Yhjk6Wwl + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8dHiD/LzA0/zg4O/84ODv/MjM3/xgWLv9HSC7/v8Vs//j9 + 2v///////////+vh+v+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Aq5v9wKuf/bifo/28t + 5P6IZr32q6+O3snVl6Pa47JK3ua5FNzcxQT///8B////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCPWukHeTnnNGMZ5OtrJOX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/HR4g/y0uNP84ODv/NDU4/zg4O/80NTj/GBYu/0dILv+/xWz/+P3a////////////6+H6/4FF + 6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar6P9vKOj/bivj/YplvfevqJPfyc+Yptvh + skrn6LoU6v/cBP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8Ah0rpBXs66DFkF+TtbCXl/m8q5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/x0eIP8tLjT/NDU4/zQ1 + OP80NTj/ODg7/zIzN/8YFi7/NDgk/7/FbP/4/dr////////////r4fr/gUXq/1kK4v9sJeX/cS3m/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+f/cSzo/20n6f5xK+T9iWK+97CmkuHRz5qp4eOzS+ftvBX3/+ID////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIhW5QZ7OugxYxnk72wl + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8dHiD/Ky0y/zQ1OP80NTj/NDU4/zQ1OP80NTj/NDU4/xgW + Lv80OCT/v8Vs//j92v///////////+vh+v+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9yLef/bibp/28r5f6JZL33sqeS5NbYnK3l57RN6/K5FOrq3AT///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCHUOYFfDvoMGQX5O5rJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/HR4g/ystMv80NTj/NDU4/zQ1OP80NTj/NDU4/zQ1OP80NTj/GBYu/zQ4JP+/xWz/+P3a//// + ////////6+H6/4FF6v9ZCuL/cCvm/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSvm/3Et6P9vJ+n/bivk/oxk + vvi7rJnl2dmer+fqtE/s8roV+frbBP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AjlHrBns76C9jGOTwbCXl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/x0eIP8rLTL/NDU4/zIz + N/8yMzf/MjM3/zIzN/8yMzf/NDU4/zQ1OP8YFi7/NDgk/7/FbP/4/dr////////////w6fr/gUXq/1kK + 4v9wK+b/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ci3n/24n6f9vK+X+i1/D+bqrmuXa2p6w6OuzUPD0 + uhb//98C////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AYtL7AV+PukvZBjk8Gwl + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8dHiD/Kisx/zQ1OP8yMzf/MjM3/zIzN/8yMzf/MjM3/zIz + N/80NTj/MjM3/xgWLv80OCT/v8Vs//j92v////////////Dp+v+BRer/WQri/3Ar5v9xLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9yLub/byfo/24p5/+LXcX4u6yd5NrZn6zr67pL7+7DFOHhwwT///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAA/wGJUOgGfj/pLmQY5PBsJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/HR4g/yorMf80NTj/MjM3/zIzN/8yMzf/MjM3/zIzN/8yMzf/MjM3/zQ1OP8yMzf/DQwn/zQ4 + JP+7uGD/+P3a////////////8On6/4FF6v9ZCuL/cCvm/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSvm/3It + 5v9uJ+r/byfn/oxdxvm8qp/g29StoNLMvj+wo7wNgICAAf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AjkjmBHs+6C5jGuTybCTl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xYbGv8pKzD/MjM3/zEy + Nv8xMjb/MTI2/zEyNv8xMjb/MTI2/zEyNv8xMjb/NDU4/zIzN/8NDCf/NDgk/7u4YP/4/dr///////// + ///w6fr/gUXq/1kK4v9wK+b/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/cy7l/24n6f9vKen+jmHP9rGb + q8ydhq11kHysFYhemQP///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AYlR/AZ/Q+otYxjk8Wwj + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8WGxr/KSsw/zIzN/8xMjb/MTI2/zEyNv8xMjb/MTI2/zEy + Nv8xMjb/MTI2/zEyNv80NTj/MjM3/w0MJ/80OCT/v8Vs///+4/////////////Dp+v+BRer/TQHg/3Ar + 5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Es5v9yLef/bijr/m4m6/p1P87VhWK7S4RoqBOXaMUD////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCSVvkEf0boK2MX5PNsJeX/cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/Fhsa/ykrMP8yMzf/MTI2/zEyNv8xMjb/MTI2/zEyNv8xMjb/MTI2/zEyNv8xMjb/MTI2/zQ1 + OP8yMzf/DQwn/zQ4JP+/xWz///7j////////////8On6/4FF6v9NAeD/cCvm/3Et5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wLOb/dC/m/24l7P90MOf8h1jR3pJxwmKVdsQeckm0Cj4t0gMAAP8B////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AmFfyBYBB6CpjGOT0bCXl/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xYbGv8pKzD/MTI2/y8w + NP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/MjM3/zEyNv8NDCf/NDgk/7/F + bP///uP////////////w6fr/dDHl/00B4P9wK+b/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/cy/n/24n6v9qH+r/k3O//t3R + 0/HVwOywmHnLYo5ryCBxSLYKjVPFAv///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAD/AYpd9gSCQ+oqZBjk9Wsl + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8WGxr/KCkw/zEyNv8vMDT/LzA0/y8wNP8vMDT/LzA0/y8w + NP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8yMzf/MTI2/w0MJ/80OCT/v8Vs///+4/////////////Dp + +v90MeX/TQHg/3Ar5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cS3m/3Er5/9hEPb/g1XN/9bOuf/09On89vL47NbC87CcfM5plHPKJXxQ + tgqAgP8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCNUe8FgELqK2MX5PRrJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EhQe/ygpMP8xMjb/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8w + NP8vMDT/LzA0/zIzN/8xMjb/DQwn/zQ4JP+/xWz///7j////////////8On6/3Qx5f9NAeD/cCvm/3Qx + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qw + 5v9gDPH/ZSfR/8jFvP/5+OH//f36//39/vv38f7w28X50p+B0XGQc8QmeU+0CYBAgAH///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AklfuA4JE6ipiGOT0bCXl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xYbGv8mKC7/LzA0/y8w + NP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8tLjT/MTI2/y8w + NP8NDCf/NDgk/7/FbP///uP////////////r4fr/dDHl/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qx5f9rHu//Ww3i/6Gdpv/5+c///v/6//// + /////v/+/vz//ffy/fbcxffUoILScI9uwiZvTa4KmWbMAf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AJRj/wWBRusqYxfk9Wwk + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8SFB7/Jigu/y8wNP8tLjT/LS40/y0uNP8tLjT/LS40/y0u + NP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8xMjb/LS40/w0MJ/80OCT/v8Vs///+ + 4////////////+vh+v90MeX/TQHg/3Et5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Et5v9xLeb/Xgj8/3ZZsP/d3az//v/u/////v/////////////////+/P/99/H99tzF + +Nacfs1vk3HGJnNRuAqZZswB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCUTvoEg0XqKWIY5PVrJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EhQe/yYoLv8vMDT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0u + NP8tLjT/LS40/y0uNP8tLjT/LS40/y8wNP8tLjT/DQwn/zQ4JP+/xWz///7j////////////6+H6/3Qx + 5f9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v90MeX/Xwvz/2IW + 4/++u4j/+Pza/////////////////////////////v////38//728P3228T31KCAz3GQcsAnfVqtCmZm + mQH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8AAgMNAwIDDQL///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AhFLtBIFF6SpiF+T1ayTl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xIUHv8lJy7/LS40/y0u + NP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0u + NP8tLjT/LzA0/y0uNP8NDCf/NDgk/7/FbP///uP////////////r4fr/dDHl/00B4P9wK+b/dDHl/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/bibq/18L8/+Ib6r/7+2w////+f////////////// + /////////////////////////fz//vfx/fXcxPfVnH/McY5uvydmRpgLMjOEBAAAgAH///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGpb + eAQ1JlclDQwnEP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AI1V4wODRusqYhfk9Wwl + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8SFB7/JCUt/y0uNP8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8vMDT/Ky0y/w0M + J/80OCT/v8Vs///+4////////////+vh+v90MeX/TQHg/3Et5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/dDHl/18L8/9gINH/v7yI//3/zv////////////////////////////////////////////// + ///8/P7++PL99dzF99SbfspvfGCnLFlBhQ1VHXID////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A4NjtAamXxARTPIMC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCQU/oEgkXrKWUY5PNsJeX/byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EhQe/yQlLf8tLjT/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/y8wNP8qKzH/DQwn/zQ4JP/Qz3f/+/vs//// + ////////6+H6/3Qx5f9NAeD/cS3m/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9fC/P/hWS2/9/e + qv////r///////////////////////////////////////////////////7///39//718vz22sX11pl9 + x3F3XqQrXz+LDDMpZwQAAAAB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AilXvA4FD6SliGOX0bCTm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xERF/8kJS3/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/LS40/yorMf8NDCf/NDgk/9DPd////uP////////////m2vf/dDHl/00B + 4P9xLeb/dDHl/3Ar5v9wK+b/cCvm/3Et5v9rHvD/Yhbk/6usrf/9/87///////////////////////// + /////////////////////////////////////////v3+/vXy/PXaxfbWmXzHcXhfpC5cQoMQSjBWBltb + WgOAgIAB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AI1Q5QOCR+wpYhfk9Gwl + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8RERf/JCUt/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8tLjT/Kisx/w0MJ/80OCT/v8Vs///+4////////////+ba9/+BRer/TQHg/3Ar5v90MeX/cCvm/3Ar + 5v9xLeb/Xwvz/3xMyv/Pzo7///7j//////////////////////////////////////////////////// + ///////////////////9/P/+9/H89trD9teSd8J5cV6RQVxSZSZwbl4Rl5dtBP//AAH///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCJVvkDgUTqKWQX5fVsJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EREX/yIkLP8rLTL/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/y0uNP8oKTD/DQwn/zQ4 + JP+/xWz///7j////////////5tr3/3Qx5f9NAeD/cS3m/3Qx5f9wK+b/bibq/2se8P+RgaT/7+2w//// + //////////////////////////////////////////////////////////////////////////////79 + //718f32zbns4oNuqMNvZXWOl5GAP7i1iBG5uYwD//8AAf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8Ag0vuA4FD6StiF+T0bCTl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xERF/8iJCz/Ky0y/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Ky0y/ygpMP8NDCf/NDgk/9DPd////uP///////// + ///m2vf/gUXq/00B4P9wK+b/dDHl/2se8P9sLtv/v7yI//3/zv////////////////////////////// + /////////////////////////////////////////////////////////Pv+/u/o+P3It+nylXHMz6eb + qIWwrZoztLmNDbi4gAP///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AI5V/wN/QeorZBfk82sl + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8RERf/IiQs/ystMv8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8rLTL/KCkw/w0MJ/80OCT/0M93///+4////////////+ba9/+BRer/TQHg/3Et + 5v9rHvD/fEzK/8/Ojv///uP///////////////////////////////////////////////////////// + //////////////////////////7///37///u5vv/p3n1/XYx7vCBVsvImo6feaKhli2nrYMLtLSAAv// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCNTfIEgEPpLGIY5PJsJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EREX/yAiK/8qKzH/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykr + MP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/yor + Mf8lJy7/DQwn/zQ4JP/Qz3f///7j////////////4dT3/4FF6v9NAeD/ax7w/4hvqv/m553////6//// + //////////////////////////////////////////////////////////////////////////////7/ + ///79/7/vqLw/2cj5f5nHub8ah/s8H1RyMiXipx3oJuXKqiziQu4uIAD//8AAf///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AlVjxBYBC6SxjGOTybCXl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xERF/8gIiv/Kisx/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/Ky0y/yUnLv8NDCf/NDgk/9DP + d////uP////////////h1Pf/gUXq/00B4P+Yl5z/+/q1//////////////////////////////////// + ///////////////////////////////////////////////////9/v//9e38/3o76P9mHOX/bynm/20k + 6ftrIOvyflDIyJaKnnejnpcsr7aGDczMmQL///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AY1Q8QZ9PekvYxfk82wl + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8RERf/ICIr/yorMf8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8qKzH/JCUt/w0MJ/80OCT/v8Vs///+4////////////9TB + 8f+OVO3/yLrd///+4//+/f////////////////////////////////////////////////////////// + /////////////////////////P3//7yb8f9XDuL/bivm/28r5v9xK+f+bibq/Wkh7PJ/UMjImIyceKim + lS+wvY0PurqJAv///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGMV+sFfDnqP1wN4/JtKeb/cCzm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/CwsV/x4hKv8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ykrMP8iJCz/DQwn/zQ4JP+/xWz///7j///////8+v//9u/9//r1/////////v3///// + //////////////////////////////////////////////////////////////////////////////78 + //+DR+r/Yxjk/3Er5v9wK+b/cCvm/3Aq6P9tJOv+aSDs8H5SxseZjpt4qqmUMrC9ig/D5IsGgP+AAf// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAP8BlWvfA4VN6SNdEuPwYxjk/3Er5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/wsLFf8eISr/KCkw/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/KSsw/yIk + LP8LDR7/NDgk/7/FbP///uP///////////////////////////////////////////////////////// + ///////////////////////////////////////////////////m2vf/Yhfl/2sl5f9wK+b/cCvm/3Ar + 5v9wK+b/cCrn/24m6fxpIubtf1LExJySmXyvspM4t8qKE73WlAeqqqoB////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AOLN/wPJsvMnvp7w710T + 4v9jFuT/cCzm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8LCxX/HiEq/ygpMP8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8oKTD/IiQs/w0MJ/80OCT/v8Vs///+ + 4/////////////////////////////////////////////////////////////////////////////// + ////////////////////////xKjw/1oL4v9vK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+f+bSbp/Gkh + 5/CAVMXKnZeWiLK4kULB0IwaxNyeB+blogL///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wDo4fgD8uv8Kffz/u7BpPD/XA3i/2IW5P9wLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/CwsV/x0fKP8oKTD/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/ygpMP8iJCz/Cw0e/zQ4JP+/xWz///7j//////////////////// + /////////////////////////////////////////////////////////////////////////////6yG + 6v9ZCuL/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Eq6P9uJ+j9aiPm8YFYw9OhnpCcuMCQVcbY + kiLV6Z8KvPOwA////wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A8/L/BP7+/yn9/v7u+/j9/8Sm8P9aDOL/Yhbk/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wsLFf8dHyj/Jigu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/KCkw/yAiK/8LDR7/NDgk/7/FbP///uP///////////////////////////////////////// + //////////////////////////////////////////////////+XZPL/Yhbk/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cSvn/24n6f5qI+X4g1vA4aOljLG9yZBrz9+eMNXnrRLt7rgF////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wT7/vYq/P787P7+ + /v/8+/7/xKbw/2IW5P9iFuT/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8LCxX/HR8o/yYoLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8oKTD/ICIr/wsN + Hv80OCT/v8Vs///+4/////////////////////////////////////////////////////////////// + ////////////////////////jlTt/2IW5P9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/bSbp/mok5vqEXr3sp6uMyMLSk4nX5K1G5O66GPX91gj///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wDSwO4G3NPkK+nwyuvp9cj//v75//79///DqPD/Yhbk/2IW + 5P9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/CwsV/x0fKP8lJy7/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yYoLv8gIiv/Cw0e/zQ4JP+/xWz///7j//// + /////////////////////////////////////////////////////////////////////////////45U + 7f9iFuT/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Aq5v9tJ+n+aiXj/IVi + vfOrsYvYx9aXotzotVfg7cQg6/TcCP///wH///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8BoHruB5pv5T2addXsuNBy/+n0xf/9/f////3//8So8P9iFuT/Yhbk/3Et5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wsLFf8dHyj/JScu/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JScu/yAiK/8EBR7/NDgk/7/FbP///uP///////////////////////// + //////////////////////////////////////////////////+OVO3/Yhbk/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCzn/24m6P9rJOT8h2O89quzjOPJ2Jix2+i4YeXw + wyH1994J////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AZBW6wl/Q+o+VxPb7JF/ + p/+30mv/6vbG//79/v//////xKjw/2IW5P9iFuT/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8LCxX/Gx4n/yUnLv8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8lJy7/ICIr/wQFHv80OCT/v8Vs///+4/////////////////////////////////////////////// + ////////////////////////jlTt/2IW5P9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9xLOf/bifo/2ok5f6GY7z6rbWK6MnZmLjb6bdf4e7CHen7yQf///8B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAA/wGIUvEHczLqNWIR7+tkFe3/kYCm/7fTZ//q98b///7///// + ///EqPD/WQri/2IW5P9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/CwsV/xseJ/8kJS3/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/ICIr/yIkK/8iJCz/IiQs/yIkLP8jJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yUnLv8gIiv/BAUe/zQ4 + JP+/xWz///7j/////////////////////////////////////////////////////////////////45U + 7f9iFuT/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9tJun/ayPl/odku/mts4roydeYsNrntVTf7rwZ8f/RBP///wH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8Ai1L4B3c27DZjF+bqah7t/mER7/+RgaX/t9Nm/+r3xv///////////8So8P9ZCuL/Yhbk/3Et + 5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wsLFf8aHSf/JCUt/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/JCUt/xwe + Jv8bHCf/IyQt/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/JScu/yAiK/8EBR7/KCwk/7/FbP///uP///////// + //////////////////////////////////////////////////+OVO3/Yhbk/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cC3o/20m6f9qIej/g1nB+qyy + i+TJ1Zej2OGtRd7prxLX/64D////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIdP3wh3Neg3ZBjk6m8o + 5/9rH/D/Xgv8/5GApP+31Wb/6/fG//79///+/f//xKjw/1kK4v9iFuT/cS3m/3Et5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8LCxX/Gh0n/yQlLf8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8hJCz/ISIr/yYoLP9PUTn/Jyou/xcbIv8kJS3/JCUt/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8kJS3/ICIr/wQFHv8oLCT/v8Vs///+4/////////////////////////////// + ////////////////////////l2Ty/2IW5P9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wLOf/bSbp/2gc7v+DVsX6r6mM38jQlZHP2p0zzt2XDL/A + oAL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AICAgAGJVuUHeDfoN2QZ5OhrJeX+dDDm/2sf8P9eCfz/kYGk/7fV + Zf/r98b//v3///79///EqPD/WQri/2IW5P9xLeb/cS3m/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/CwsV/xodJ/8kJS3/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iIyz/ISMr/x8gKv8iJCj/hodV/4iQaf8rLTH/GRcd/yMlLP8jJSz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yQl + Lf8gIiv/BAUe/yYvGP+7uGD///7j/////////////////////////////////////////////////6yG + 6v9ZCuL/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Er5/9uJer/aBrw/4NTxvexpozXxM2Sfc3UkijX3p0MzMyZAf///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAAIABhE7vB3c26TZkGeTrbCXl/3Aq5v9xLeb/ax7w/14H/f+RgaT/t9Vl/+v3xv///////v3//8u0 + 7/9iFuT/Yhbk/3Qx5f9xLeb/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wcJDv8ZGyb/IiQs/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yEiK/8gIyv/ISIr/yAiK/8dICn/IyUq/3t8 + Tf/JyZf/mpqU/S0sMf8YFx3+IyMr/yIkK/8gIiv/ICMr/yEiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/IiQs/yAiK/8EBR7/Ji8Y/7u4 + YP/4/dr////////////////////////////////////////////EqPD/WQri/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ci7m/24l + 6v9nGPH+glLG9q+liNDFypF1zdaTJdDfnQrU/5UD////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AYVM5wd3M+g4Yxfk6Gsl + 5v9wK+b/cCvn/3Qx5f9rHvD/Xgf9/5GBpP+31WX/6/fG///////+/f//0LX5/1kK4v9iFuT/dDHl/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8HCQ7/GRsm/yIkLP8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gISv/HR8q/yosKv96fFD9zs6f9tnazu2VlZjrJiYs9xET + G/wjIyv/ISQs/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8iJCz/ICIr/wQFHv8mLxj/u7hg//j92v////////////// + ////////////////////////5tr3/2IW5P9sJeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5v9zMOX/bibq/2YX8f6CUcf1raaIysXL + k2/R3J0m1eGdCszMmQH///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGNVusHdjPlN2QY5OdrJOX+cCvm/3Ar5v9xK+b/czHl/2se + 8P9eB/3/kYGk/8XrY//r98b///////z6///LtO//WQri/1kK4v9xLeb/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/BwkO/xkbJv8iJCz/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/HyIr/x8hKf8vLyz+eHlO9snIk9ro59CnysrJi4iIir8bGyHxDxAY/SQjK/8hJCz/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yIkLP8gIiv/BAUe/yYvGP+7uGD/+P3a//////////////////////////////////// + //+BRer/WQri/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qv5/9uJur/ZRbz/oBRyPOuqIrExsyUatbdnibf46AM//+/Av// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAP8BiEftCHcy6DdkGeTobCTl/3Ar5v9wK+b/cCvm/3Ar5v90MeX/ax7w/14H/f+RgaT/xetj/+v3 + xv///////Pr//8u07/9ZCuL/WQri/2se8P98TMr/vdGA//j92v//////mJec/wcJDv8XGiT/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/HyIr/x8hK/8eICj/LzIs/nJ0 + TO29vIK03+C3WdTVyzKsrq5TiIiKxRwbH/cMDhP+IyMq/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/IiQs/yAi + K/8EBR7/Ji8Y/7u4YP/4/dr/////////////////////////////////xKjw/00B4P9xLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/czDm/24m6/5lFfT+gE/J8LGniMDR1Jdr4OOnKejqqQ3//7YE////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AINM7Ad2Muc6ZBjk5mwk + 5f1wKub/cCvm/3Ar5v9wK+b/cCvm/3Qx5f9rHvD/Xgf9/5GBpP/F62P/6/fG///////8+v//y7Tv/1kK + 4v9ZCuL/fEzK/73RgP/4/dr//////5iXnP8HCQ7/Fxok/yAiK/8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8fISr/HiEq/x8hKv8eISr/HiIp/zAyLvxxc0rptLZ7p9XVnEDg4cIVysrIIsLE + xmmQkJLVFxsf9QwNFP4iJCv/ICIr/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8iJCz/ICIr/wQFHv8iJiD/u7hg///+ + 4/////////////////////////////z6//9wK+b/Yhbk/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5v90MOb/bSbq/2QT + 9P6AT8nvs6yHwtbYmnPp57Yu5OW/D7i4uAP///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCKQ+kIdTPnOmQY5OZsJOX9cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/dDHl/2se8P9eB/3/kYGk/8XrY//r98b///////79///EqPD/Xwvz/2k4xv+90YD/+P3a//// + //+Yl5z/BwkO/xcaJP8gIiv/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4fKf8tLy7+cXRK7La4e6/W1qFH7OzCE+Xl5A7U1NYoysvMcY6PkL8SFhnyCw0R/SMj + LP8gISv/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/yIkLP8gIiv/BAUe/yImIP+7uGD///7j//////////////////// + ////////xKjw/00B4P9wK+b/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Mw5v9tJur/YhL0/YFRyfLBtpDJ4t2td9LF + yCSqjsoHAAAAAf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAgP8BhUblCHcz5zplGuTkayTl/28r5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v90MeX/ax7w/14H + /f+RgaT/xetj/+v3xv///////Pr//8So8P+BRer/2tvZ//j92v//////mJec/wcJDv8WGSP/ICIr/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x0gKv8cHyn/LC4t/XF0 + Su+5u3+43t6wU+3txxTn6OQF3d3pC8zM0hyytbZIh4aItRIWGPUHBxL9IyQp/yAiK/8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/IiQs/yAiK/8EBR7/GiQP/7u4YP///uP///////////////////////////+OVO3/TQHg/3Et + 5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9xK+b/cy/m/24l6v9lE/b9kmbY7bGgoYODbJsufmeqB0EAQQL///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AYxM7wl2Muc6ZRjk5Wwl + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qx5f9rHvD/Xgf9/5GBpP/F62P/6/fG//// + ///69f//5tr3//r1/////////////5iXnP8CAw3/Fhkj/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eICn/Gx4o/ystK/xxc0rrubuAsNvaqkrm58IR//+7Av// + /wHT0+YGvb29E7W3uEaPkZTBExQZ9AQHEf4hJSz/ICIr/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8iJCz/HiEq/wQF + Hv8aJA//u7hg///+4///////////////////////9u/9/3Ar5v9NAeD/dDHl/3Et5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9zL+X/bSXq/2MP+PdoKtOQeU+2GWxQqAYAAP8B////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCCQ+cIczHoOmQZ5eVsJOX+cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/dDHl/2se8P9eB/3/kYGk/8XrY//r98b//v3///////////////////// + //+Yl5z/AgMN/xYZI/8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/Hh8p/xsfJ/8pKyn7b3BG6bq6e6LU1Zk36ei1DP//qgL///8A////ANTU4wTMy80WyMjKXJOT + lsgTFBn2BwYQ/yQlLP8eISr/HR8o/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HR8o/yAiK/8eISr/BAUe/xokD/+7uGD///7j//// + ///////////////////h1Pf/bCXl/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/cSzm/2MX5P9lHuT9i1jdn3lb + pkmObMEPYDmrBIAAgAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgUPpCHUx6DtkGuTkbCXl/m8r5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v90MeX/ax7w/14H/f+RgaT/xetj/+v3xv/+/f//////////////////mJec/wIDDf8WGSP/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dICj/HSAo/x0gKP8dHyn/HSAo/x0fKP8aHSf/Jigo/G5u + Rue3uXqaz8+RLN3eowj//2QD////AP///wD///8B09XgBtPS1B3Pz9JklJWXzBITGfgGCAf/ISEr/x4h + Kv8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/ICIr/x4hKv8EBR7/GiQP/7u4YP///uP//////////////////v3//9rK + 9f9sJeX/TQHg/2IW5P90MeX/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Et5v90MeX/bCXl/1kL4v9QBeD/qZXH//j04/jdwPq3b0myV4hhwRBoO7AE////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYxI9Ql1Mek5ZBnl42wl + 5f5vK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qx5f9rHvD/Xgf9/5GB + pP/F62P/6/fG/////////////////4qHjP8BAgP/Fxok/yAiK/8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHij/Gh0n/yUoKP5vb0bovLx8m87PjSXg5JMG////AP// + /wD///8A////AOrp6gPk5ecH19faHs7N0GuPkJHXFRYa/AYGCP8hIir/HiEq/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8gIiv/HR8o/wQFHv8aJA//v8Vs///+4//////////////////+/f//5tr3/45U7f9NAeD/WQri/2IW + 5P90MeX/dDHl/3Et5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/cS3m/3Qx5f9sJeX/WQri/00B + 4P9uLtv/uKjO//v47P/9/v7//fv++t7D/LhvSbFYh2HEEGlGtwT///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGHT+oIdDHpOmQa5eNrJeX/cCnm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/dDHl/2se8P9fC/P/kYGk/8XrY//r98b///////// + //+7u7r/EREX/wECA/8gIiv/HiEq/xseJ/8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR4n/xsbJv8lKCj8bnBC6b++fprN0YwjyNiRBP///wD///8A////AP///wD///8A////AuHh + 4gna2t0o1tXXipGQlekWGBz9BgcJ/yEhKv8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x4hKv8dHyj/BAUe/xok + D/+/xWz///7j///////////////////////69f//tJTt/3Ar5v9ZCuL/WQri/1kK4v9iFuT/bCXl/3Et + 5v9xLeb/cS3m/3Et5v9wK+b/bCXl/2IW5P9ZCuL/WQri/2IW5P+ZbOj/5Nvo//7++f////3///////// + //7++//53sL8uG9KsliAXsERTCulBP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgETmCHMw6TtkGOXjbCTl/28q5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9xLeb/ax7w/18L8/+RgaT/t9Vl//j92v///////////6Ggov8RERf/AgMN/x4h + Kv8eISr/Gx4n/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/xsdJ/8ZGyb/ISYm/G5v + ROfBwoCX1NiVIM3ZmgP///8A////AP///wD///8A////AP///wD///8C7/DvD+jn6UDc2961lJKU8RgX + HP4GBwr/ICMr/x0fKP8bHif/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8bHif/HiEq/x0fKP8BAhf/GiQP/7/FbP///uP///////// + //////////////79///r4fr/tJTt/4FF6v9iFuT/WQri/1kK4v9ZCuL/WQri/1kK4v9ZCuL/WQri/1kK + 4v9iFuT/dDHl/6Bz7//ayvX/+vn7///////////////////////+/////v///v/8//3dwvy5bkmyWIVd + wA9fPqcEgICAAf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYZF7gh1Mug8ZBrk5Gsk + 5P5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cS3m/3Ar + 5v9fC/P/bC7b/73RgP/4/dr/////////////////oaCi/xERF/8CAw3/HiEq/x4hKv8bHif/Gx4n/xse + J/8bHif/Gx4n/xseJ/8cHif/HB4n/xseJ/8bHSf/GRsl/yQkJ/xucUPpw8J+l9nZmiHo6LED////AP// + /wD///8A////AP///wD///8A////AP///wX19vcb8O7vZt3c37+SkpTvFxke/QcICv4gIir/HR8o/xse + J/8cHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xse + J/8bHif/Gx4n/xseJ/8eISr/Gx4n/wECF/8aJA//v8Vs///+4/////////////////////////////// + ///27/3/2sr1/7yd8P+gc+//l2Ty/45U7f+OVO3/jlTt/6Bz7/+0lO3/0LX5/+vh+v////////////// + ///////////////////////////////////////+/f3/+t3C/LltR7FYhmLCD1YxlgQAAP8B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGGTvIJdTLoOWUY5OJrJOX9byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //////////////////+hoKL/EREX/wIDDf8eISr/HiEq/xodJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xse + J/8bHif/Gh4n/xcbJv8jJSf9cHJD68bGgaPh36ch4eG1Av//AAH///8A////AP///wD///8A////AP// + /wD///8B////Cfj4+Cft7e9k3NrcuJGQk+0ZGh/8CAgT/x8gKP8dHyj/Gh0n/xseJ/8bHif/Gx4n/xse + J/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gh0n/x0f + KP8bHif/AQIX/xokD/+/xWz///7j//////////////////////////////////////////////////79 + ///69f//+vX///z6//////////////////////////////////////////////////////////////// + //////////////7////++//63sL8umpGr1eBW78QSzh+Bv///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AikTwCXQx5ztlGuTiayTl/nAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v///////////////////////////6Gg + ov8RERf/AgMN/x4hKv8dHyj/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xocJ/8XGSb/IiQo/nFz + RPPKy4az5OewKeDgxgP///8A////AP///wD///8A////AP///wD///8A////AP///wT5+PgJ9/j2Iu3t + 71zZ2Ny0kZCT7xobIfwIChP+Hh4p/xwfKP8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xod + J/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/HR8o/xodJ/8BAhf/GiQP/7/F + bP///uP///////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v38 + //rewv25aEGuWIJevg5aPa0D////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AItM9Ah2L+g7ZRnk42sl + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//Pr//+fm6f/6+fv/////////////////oaCi/xERF/8CAw3/HiEq/xse + J/8ZGyb/GRsm/xkbJv8ZHCb/GRsm/xkbJv8ZGyb/Fxkm/yMjKP50dUb1y8uJvubotSrr68EE////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AvLz8wn4+Psf6+zuWNzZ27OQj5LrGhog/AkK + FP8cHyn/HR4o/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8dHyj/Gh0n/wECF/8aJA//v8Vs///+4/////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////7//N7B/btoQq1Yg1zBDV0v + sAL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wB9R+oJdDDnPWUZ5eJsJOT+byrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//r1 + //+OiJn/ZWVn/+/tsP////H///////////+hoKL/EREX/wgJDv8dHyf/Gx4n/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GBsm/xcaJf8hJSf/dHRG8srOiLrm5bEn9/fJA////wH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8B////CfT09hzq6OxU1tfZrYiIi+UaGyD8CgoU/hweKf8bHif/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xseJ/8ZGyb/AQIX/yYvGP+/xWz///7j//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/f773sL8umdArVeFXL4MTDSDBQAAAAH///8A////Af// + qgH//4AB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgkbnCXMv6DxkG+TibCTl/3Aq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////ioeM/wECA/9mZz//7fmd//// + +v///////////6Ggov8REhj/AwMO/x0hKP8aHib/GRwm/xkbJv8ZGyb/GRsm/xkaJv8YGSX/IyMm/nJz + RvLMy4i15+ezJenovwT///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////Af// + /wH//P8H9vL2Gejn6k7V1NemhoaL5RoeIvkMDxT+HB8p/xseJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/Gx4n/xca + JP8BAhf/Ji8Y/7/FbP/7++z///////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+//zewvy6ZTurV4Favw1aLqADqqqqAdPenwbHyJIN6em6CcbGsQP///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAD/AYFF5Qp0L+c8ZBjl4mwk + 5f9vK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8BAgP/AQID/2ZnP//t+Z3////6////////////oaCh/xER + F/8HCw7/HB4m/xodJv8ZGyb/GRsm/xkbJv8ZGib/Fhgk/yMkJ/9zc0bzzsyItufptif29swC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8B////AfHy8Qf08vUY5uXoSdHQ + 1J+FhYniHx8o+Q4PFv8cICn/Gh0m/xocJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8bHif/Fxok/wECF/8mLxj/v8Vs///+ + 4/////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////z//d3C + /rtlP6xZh2q2DJiZggjP1J8Z5uiwUPP03CHu7usH////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AICA/wGJR+EJdDDnPWQZ5eBrJeT/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/wECF/8CAw3/Zmc//+35nf////r///////7///+goKL/FBMZ/wkMD/8aHCX/Gh0n/xkc + Jv8ZGyb/GBsl/xYZJP8jIif+cnRF8svMibTn6bkn///bAf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8B////Bu/w8Rbi4+JFz8/Rm4aFieIkIyr6DREX/hsd + Jv8aHSf/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xodJ/8UFyP/AQIX/yYvGP+/xWz///7j//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////78/f/93cL9unlhpEuShY8sxMmEiPP3 + 4K72+uhL+f3yEf///wL///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD/AP8Bg0noCXIv5z1lGeTgbCTl/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/Cw0e/wID + Df9mZz//7fmd////+v///////v7//6Cgov8XFh7/DA8S/xkdJv8aHSb/GRsm/xgaJv8XFyP/JCIn/XN0 + RPDLy4ew5+q2Ju7uxwP///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wHd3dwG7+7vFOLh5EPP0NKZhYWJ3yYkKvoODxX+Gh0m/xkdJ/8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/Gh0n/xQXI/8BAhf/Ji8Y/7/FbP///uP///////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v///vz8//3iyP33kGTY89DelPPV557n7/Xfk/P34Cr4+egJ///fAv// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYFI8QpxLuc+ZBrl32sl + 5f1wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/EhQe/xseJ/8LDR7/AgMN/2ZnP//m553////6//// + ///9/f3/n5+g/xwdI/8PDxf/GBsj/xgaJf8XGiT/Fxgj/yMkJ/51dUXyzM6ItunrvSzy/9QC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////APv7 + +wbt7O4W4ODhQs7Nz5mEhInfJSYs+g4SF/8ZHST/GRsm/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8ZGyb/FBcj/wEC + F/8mLxj/v8Vs///+4/////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///p4Pn/j1bt/2IP+P+BU8n/tMV4+tPmnNnr89Rw7PXVHvLy4Aj//8oC////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAA/wGBUu4Kcy3nQGQa5t9rJOb+cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xIUHv8aHSf/Gx4n/wsNHv8CAw3/eXo8/+34nP/+//r////+//r5+v+enJ//IyQq/xIV + GP8YGSP/Fxoj/xUXIv8fIiT9c3RE8szOibvr7cAs///kA////wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8B+/r7BfPw8hfg3+JEzczOm4OD + ieAkJyz4DxEW/xkbJP8ZGyX/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xkbJv8UFyP/AQIX/yYvGP+/xWz///7j//// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////ZyvX/cjDm/1sM4/9sJeX/YQ75/35S + x/+zxnb50+WYyenyzVvo9MwY6P/eBv///wL///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAP8BfkTqC3Iu5z9kGuTebCPl/XAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/GRsm/xkb + Jv8aHSf/BAUe/wIDDf9mZz//5Oad////8P/9/fz/9vf2/5uanf8sLDH/Fxgd/xcaIv8UFyH/ICEi/W9w + Qu3Jy4Wl5OWuIf//1QH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP/V/wLt7f8G8PDwF+Pi4kbOz86ehoWI4CcoLPcPERX+GRwl/xkb + Jv8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/GRsm/xQXI/8BAhf/Ji8Y/7/FbP///uP///////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////LtO//bCXl/1kK4v9wKub/dDHl/24m6v9iD/n/f1HH/7LEePPR45e95vDKU+by + yhjt7dYH////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AqivUAoNF8ApxLuZBZBzk3Wwk + 5f5wKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/Cw0e/xcaJP8WGSP/Fxok/xodJ/8EBR7/AgQN/2dn + P//k5Zz//Pzu//79+//x8vD/mZma/zI0OP8WGh//FBcg/x8fIfxsbUHow8WAjODgoxb///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AfLy8gbx7/AX4+PjSs3Nz6GGhInhKCcs+RERFv4YGiP/Fxok/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8ZGyb/FBcj/wECF/8mLxj/v8Vs///+4/////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////+shur/Yhbk/2IW + 5P9wK+b/cS3m/3Ar5v9xLOb/bibq/2EO+f9/Ucf+scR58dDjl7nk8MRR6PPGF+/7zwX///8B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAA/wF6QOYKcC7mQGQZ5N5rJeX+cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/wsNHv8XGiT/Fhkj/xYZI/8XGiT/GRsm/wQFHv8EAw3/ZmdA/+Hinf/5/Ov/+/v4/+rp + 6f+Wlpj/Nzg+/xgXIP8iIiP7a2s+47/BfX/b254SqqqqAf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8D9vD2Bu/q + 7hjj4uNLzMvPoIWEh98oJy37DxEZ/xgaI/8XGiP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xkbJv8UFyP/AQIX/yYv + GP+/xWz///7j//////////////////////////////////////////////////////////////////// + /////////////////////////////9rK9f+OVO3/WQri/2IW5P9xLeb/cS3m/3Ar5v9wK+b/cCvm/3Et + 5v9uJur/YQ74/oBRxv6yw3fy0eOYu+Psvkzh8LkT///VBP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBVVaoBfkTqCnIt50BlGuTdayTl/XAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8LDR7/Fxok/xYZ + I/8WGSP/Fhkj/xcaJP8ZGyb/BQUe/wUGDv9naEH/3t6d//j55v/4+fP/4ePh/5SSl/86O0D/KCol+2xt + P+S9v36C3t+hFN/fnwL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wHy8/IG7u3vF+De4EjKysydhIKI4Ccp + L/kPFBj+FRoi/xcaI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fxok/xQXI/8BAhf/Ji8Y/7/FbP///uP///////// + ////////////////////////////////////////////////////////////////////////8On6/6yG + 6v9sJeX/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cS3m/24m6v9iFO/+f1LG/bHC + efLQ4pe13OqwPN3wsg/d3Z4D////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYhL8wlyLudAZRrl22wl + 5f5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/Cw0e/xYZI/8UFyP/FBcj/xQXI/8UFyP/Fhkj/xkb + Jv8EBh7/BggS/2doQ//a2Zr/9fbj//b28P/d3d3/k5OV/0dHRvxpaU7nxMWKiuHhqRbm5dEC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////Aebm7gbr6+sX3t/gRcrKzJiJiIzeKCkw+BASF/0WGCD/Fhgj/xQY + I/8UFyP/FBgj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQX + I/8UFyP/FBcj/xQXI/8XGiT/EhQe/wECF/8mLxj/v8Vs///+4/////////////////////////////// + ///////////////////////////////////w6fr/up3p/3Qx5f9ZCuL/Yhbk/3Ar5v9xLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/bibq/2MR7v9/Usf/ssF6783clJvV5aAs2OmeCt/f + 3wL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCCP/AKdC3oQGUa5d1rJeb+cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/wsNHv8WGSP/FBcj/xQXI/8UFyP/FBcj/xQXI/8WGSP/GRom/wQGHv8KDBT/aWtI/9DS + mv/x8d3/9PXt/9zc2v+hnaD8mpmL6NrWqpPu7swb///VAv///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A7u/vBe3u7hfg4OFGy8vOm4eHi+EqKzD5ERMZ/xUXIf8VGCP/FBcj/xQXI/8UFyP/FBcj/xQX + I/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xca + JP8SFB7/AQIX/yYvGP+/xWz///7j///////////////////////////////////////////////x/+Tb + 6P+wj+f/eT/b/2IW5P9iFuT/bCXl/3Et5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Et5v9tJer/YxTt/35SxfyuvnrjydqRfMzglCDY5pkI//+VAv///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCAgP8BhULqCnIu50FlGubbayXl/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8LDR7/Fhkj/xQX + I/8UFyP/FBcj/xQXI/8UFyP/FBcj/xYZI/8XGST/CAcf/xISGP9tbUr/y8qa/+3t2P/z8uz/6Ofo/Ofn + 5Oj08+qU+PjtHP///wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wH7+/sG9O/yGOLi + 40rMy86hiYmN5CwtM/sSExj/FRgh/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQX + I/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/Fxok/xIUHv8BAhf/Ji8Y/7/F + bP///uP////////////////////////////n5un/uKnO/5Zr3f9sLtv/WQri/2IW5P9sJeX/cCvm/3Et + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSzm/24l + 6v9iFe/+fVLG+ay8etTD0pBkx9qLG9fWkQf///8B////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYVF6gtyLedBZBvl22wl + 5f1wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/Cw0e/xYZI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQX + I/8UFyP/Fhkj/xcYJP8JCx//GRod/21uT//HyJn/7O3a/vn48/z8/fvp/f79k//+/Rz///8B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8AqqqqAfv7+wXx8vIb5ebmVs/O0bOMi4/qLzA1+xUW + Hv4VGCH/FBci/xQYI/8VGCP/FBcj/xUXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQX + I/8UFyP/FBcj/xQXI/8UFyP/FBcj/xQXI/8XGiT/EhQe/wECF/8mLxj/v8Vs///+4/////////////// + //+0lO3/bC7b/1kK4v9iFuT/bCXl/2wl5f9wK+b/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/bibq/2QU7/5/Ucf3q7h9xcDM + j1DC1osX19eTBP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////ALhH/wOOQ/QKdCzoQWUb5NtsJOX+cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/wsNHv8XGiT/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8VGSP/Fxkj/wwN + IP8hISf/cHJU/8XEnP/t7t38+/v15v7+/JD//f4a////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A8PDwB/Ly9SLo6epp0tPSwY2Nj+8xMTn8FhYf/xYYIv8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xcaJP8UFyP/AQIX/yYvGP+7uGD///7j////////////4dT3/3Qx5f9ZCuL/bCXl/3Et + 5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Et5v9tJur/ZRXu/35QxvGps4Gzu8WQR77PiBO556EDAP8AAf// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AhELrCnEs6EFmGuXcbCTl/XAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8LDR7/Fxok/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGST/ExUi/ygnK/9xclX+xMWa/O/u + 1+T6+vKF/Pz2FP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD5+foJ9fTzK+vs63nS09LLjo2Q8jUzOf0XFyD/Fhgj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fxok/xQX + I/8BAhf/Ji8Y/7u4YP///uP////////////r4fr/gUXq/1kK4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cS3m/24m6v9jFe3+f07J66esg6S3wI89uc6HEsTDiQP///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AgID/AYZG4ApzLOdBZhnk2Wwk + 5f1vK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/Cw0e/xcaJP8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkk/xYYJP8VFyL/KSot/3FyVPrGx5Pi7evQefb14BD//6oB////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////Avr4+Q349vcx7O3tgdPT + 1NCQj5PyNTY8/RcYIf8WGSP/Fhki/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8ZGyb/FBcj/wECF/8mLxj/u7hg//j9 + 2v///////////+vh+v+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLeb/bSbq/2QS + 9Px8TsnmpKiHl620kje1wIsQwsKSBYCAgAH///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wGDPOgJcirnQWYZ5NlrJeX9byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/wsNHv8XGiT/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xca + JP8WGSP/Fhgl/xUXIv8uLiv8fX1N48/Pl3nm47MQ////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8Ag12/Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wH///8C/P/8Dvb39zTu7e6G1tbV0ZSUl/I2Njz+GBkg/xYZ + Iv8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xYZ + I/8WGSP/Fhkj/xYZI/8WGSP/Fhkj/xkbJv8UFyP/AQIX/yYvGP+7uGD/+P3a////////////8On6/4FF + 6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/28s5/9tJur/ZRPz+3xMyeGZl4+PqayTOLK5 + hhG7yZME////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgUHrDHIs50NmG+TYayTl+3Aq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xYZJP8UFiL/HiEj/GVm + Q+XFxIWF4OGjEdTUtQL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AIVktgNeB/0D////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wL59PkO+Pf4Ne/v74jW19jTk5WV9Dk4PvwZGR/+Fhkj/xYaI/8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/GRsm/xQXI/8BAhf/GiQP/7u4YP/4/dr////////////w6fr/gUXq/1kK4v9sJeX/cS3m/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cS3m/24l6v5kE/T6fEvK4JmVj5Ksr5I8tsGKFMbHkgb//9QC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/wD/AYNE5gtyLehEZxvk12sk + 5fxvKeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/EhQe/xkbJv8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/FBgi/x8fI/5ubkLsyciHmeXkrBj//6oB////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AXgf9DP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////A/3+ + /Q74+Pg38PDwj9jY2NmUlZb2OTk+/RgaIP8WGiT/GBsl/xcaJf8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8ZGyb/Fxok/wEC + F/8iJiD/u7hg//j92v////////////Dp+v+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9xLeb/biXq/2YU8/l8S8rhmpeOn6+2k0u2x4oYutSSCb+/gAH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AICA/wF9OOwLcSrnQ2Yb5dZrJeX8byrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xIUHv8ZGyb/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxkk/xUXIv8hISL+cXNE8c/QirLs6rog////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8D/v7+EPr6+j/y8/Oh2Nna4pWX + mfk6O0D/GBkg/xgZI/8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xkbJv8WGSP/AQIX/xokD/+7uGD/+P3a//// + ////////9u/9/4FF6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5/9uJer/Zhfz/H1M + yeaamY+ss7uRVLvJjBzQ2o4KqqqqAf///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBAQP8CgkDvC3Er6ERmG+XWbCTl/HAq5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/GRsm/xca + JP8XGiT/Fxok/xcaJP8XGiT/Fxok/xgaJf8XGiX/Fxok/xgaJP8YGiX/GBol/xcZJP8WGCP/ISIm/nZ3 + RvfS1I7H7+/ILf//2gL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wL5+vkU/Pv8VvX19LzZ2t3slpea/Ds6Qf4XGSH/Fxok/xgb + Jf8XGyX/Fxol/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xcaJP8XGiT/Fxok/xca + JP8XGiT/Fxok/xcaJP8XGiT/GRsm/xcaJP8BAhf/GiQP/7u4YP/4/dr////////////27/3/gUXq/1kK + 4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSvm/24m6/5kFvL8fE7J6ZyYjbK0vI1bv82LIc3X + jwrl5swC////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AqlX/AXtB4wtxK+ZEZBvk1Gok + 5ftwKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/EhQe/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8YGiX/Fhkk/yEjJ/52eEf51dWQ1fPz1Dr5+vED////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////A/7//x38/fx49PX2yNvb3OuVlpj4Ojo//BYXIP0YGST/GRsm/xgbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8aHSf/Fxok/wECF/8aJA//u7hg//j92v////////////bv/f+BRer/WQri/2wl5f9xLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3As5v9yL+b/bibq/2UY8ft9T8jrnpqOt7jBjGbH1JMo1eScDfT0vQP///8B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AKpVqgGCOu0LcCvoRGUb5NRsJOX8byrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xIUHv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GBsl/xYZI/8gIyb+d3lH+9bWk9/2+NxN///sBP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wH///8J/P39Kf39 + /Hf09PSx19fY05CQlOw0NTz6Fxgh/xgaJP8YGib/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xseJ/8ZGyb/AQIX/xok + D/+7uGD/+P3a////////////9u/9/4FF6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSvm/3Mv + 5f9uJur/ZRrv+39RyOyfm47AvcaNeM/amjbc6aQT7/u6Bf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgT/pC3Aq6ERlGuTUayPl/G8q5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xgaJv8WGiT/ICMm/Xd3 + R/nV1pLZ9fffT/r67gT///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wj9/v0c+vj5Qe7u73fR0dO6jI2R5zQ2 + PfkXFyD+GBoj/xkcJf8ZGyf/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/Gx4n/xkbJv8BAhf/GiQP/7u4YP/4/dr///////// + ///27/3/gUXq/1kK4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/cy7l/24m6v5nGu78f1DG8qGe + jc7By4+O0+CiReDvrhjj+sEH3t/fAv///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A1Cv/AnpA4gxuKuZFZhvk1Gwk + 5fxwKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/EhQe/xodJ/8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8YGyb/Fxkl/yAjJ/11dkTz0tKPvPHw0C/x8d8D////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8B////A/7+/gr18/Mf6OjqWc/P0rKMjZHoMzU7+hYYH/0aGyT/GRwm/xob + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8bHif/Gh0n/wECF/8aJA//u7hg//j92v////////////bv/f+BRer/WQri/3Ar + 5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5v90L+X/bifp/2gb7f2AVMb1oqKN3MXRj6XX46lS3+y0HOjy + zwff3t4C////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP8A/wF5N+MKcCnnRGUb5NNsJOX8cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xIUHv8aHSf/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xcYJP8gIif9cnFC683OiJbm57MU////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8B////BvPy8hbn6OlU0tDTuY2Nkew0Njv8Fhkd/hkcJP8aHSX/GRwm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xse + J/8aHSf/AQIX/xokD/+7uGD/+P3a////////////+vX//4FF6v9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cSvm/3Mv5/9uJur/aR3u/YFWxPmkoo/mxdSQstnlsF3i7Loh4+/OCv//qgH///8B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wAAAAAAAAAAAP///wD///8A////AP// + /wD///8A////AP///wAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wCqVf8BgzzmC3Iq5kNlG+TTayTl/HAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/Gh0n/xkb + Jv8ZGyb/GRsm/xkbJv8ZHCb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRwm/xkbJv8YGSX/HyAo/W9v + QebJyoSC4OCjD////wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wH///8D8fLyGOvs + 7WTT09bKkJGT8TY3Ov0XGR3/GRsj/hscJ/8aGyf/Ghsm/xkbJv8ZGyb/GRwm/xkbJv8ZGyb/GRsm/xkb + Jv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/GRsm/xkbJv8ZGyb/HR8o/xseJ/8BAhf/GiQP/7u4 + YP///uP////////////27/3/gUXq/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cy7m/2wl + 5v9oHO3+gVfD+qOljerI1ZK82+e1aOLvxCTp8tYK////Av///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8AgAD/AYFC6A1wK+hEZhvl02sj + 5f1vK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/EhQe/xseJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xod + J/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8ZHCf/GBgl/yAhJv5vcD/qycqFieLiow7///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////Afz7+wX29vYi8PDzhdjX2daSkpTyNjY6+xcY + G/0ZGyL+Gx0m/xsdJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xod + J/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8dHyj/Gx4n/wECF/8aJA//u7hg///+4/////////////bv + /f+BRer/TQHg/3Ar5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9zMOX/bybq/2kd7P6BV8T7paaN7sfX + k7/d5rlt6PHJJ+/z3gvx8fED////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP// + /wD///8A////AP///wD///8A////AP///wCBN+cKcSrmRmYa5NRrI+X8cCrm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xIUHv8bHif/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xod + J/8aHSf/Gh0n/xgaJv8gISb+cnNE7s/PiaLm6LEX////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A+vv6CPn2+DHz8fKN1tbXy4yNkOMuMDLtExUY9xobI/0bHSX/Gh4n/xod + J/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xod + J/8aHSf/Gh0n/x0fKP8bHif/AQIX/xokD/+7uGD///7j////////////9u/9/4FF6v9NAeD/cCvm/3Qx + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Mv5v9tJ+r/Zx3t/4JZxPump4/tyNOUwN7nvHDo8cwq7u3cDP// + zAL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP// + /wD///8AhD3nCnEq50VlHOTUayPl/XAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8SFB7/HR8o/xod + J/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8YGiX/IiMn/3V2 + RPbT0o3A7e/CI///2AL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AczM + zAH+/f4J+vj5Kezt7WLHycqIeXt8rSAiKNQREhfvGhoh/B0eJf8bHSf/Gh0n/xodJ/8aHSf/Gh0n/xod + J/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/Gh0n/xodJ/8aHSf/HR8o/x0f + KP8EBR7/GiQP/7u4YP///uP////////////27/3/gUXq/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9xK+b/czDm/20m6v9oHuz/gVfE/KWnkO3I1pa/3+i8cujxzCzz8+AM///HA////wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AHs+4wpxK+VEZRrk1Gwl + 5ftwKub/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/EhQe/x0fKP8bHif/Gx4n/xseJ/8bHif/Gx4n/xse + J/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHSf/GBom/yEjJ/91d0b409SO0/Ly0DX19eAC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////Af///wTz8/MP0dHSHp6f + oEBkZmmBHx8kyhITFvIbHCP9HB4m/xseKP8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xse + J/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8eISr/Gx4n/wECF/8QGQ//u7hg///+ + 4/////////////bv/f+BRer/TQHg/3Ar5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9zLeX/bibq/2gd + 7f6CV8T7paeP68vZlr/h67527PPPLvb45A7//+MD////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wD///8A////AP8A/wGAQeILcCvmRWcb5NRrI+b7byvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xIUHv8dHyj/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/HB4n/xseJ/8bHif/HB4n/xwe + J/8bHif/Gx0n/xcbJv8iJSf/d3lH+tXWkN/09t1N+//tBv///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AdnY2QOop64MhIWJLmxrbo4kJizcFRYa+Boc + JP8dHif/HB4o/xweJ/8cHif/HB4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xseJ/8bHif/Gx4n/xse + J/8bHif/Gx4n/xseJ/8bHif/Gx4n/x4hKv8dHyj/AQIX/xokD/+7uGD///7j////////////9u/9/4FF + 6v9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Iu5v9uJ+j/aR/t/oJZxPqsso3ry9uVweTt + wHft9M8t7PjaDv//6QL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD/AP8BfEDqC3Es50RlHOXSayXl+3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8UFyP/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8cHyj/HB8o/xwdJ/8ZGyb/IiQn/3Z4 + R/rU15Le9vfiWvz87gT///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8Au7u7ArKytg2rrK5MgYCEvy8wM/IYFx3+Gx0k/xwfKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HiEq/x4hKv8EBR7/GiQP/7u4YP///uP////////////w6fr/gUXq/00B4P9wK+b/dDHl/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/ci/m/20m6/9pH+7+glnD+q60jO7N3JXG4+3Be+z10DD09t4O////Av// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AGoY9gxtJOwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AH075wpxLOZGZhzl0msl + 5ftwK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/FBcj/x4hKv8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8cHyj/Ghwm/yEkKf50dUX10tKNyPP01Tj29uUE////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wDo6PYD1dbaI8/P0paLjY3fMTI39RUXHPwaHiX+HSEn/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8eISr/HiEq/wQF + Hv8aJA//v8Vs///+4/////////////Dp+v+BRer/TQHg/3Ar5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As + 5v9yLub/bSbq/2kf7P+EXMP8rrSN8c/bls7i7cGC7PPSNO/13g///+0C////Af///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8Aahj2B20k + 7BcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wCEQewLdC7qSWcc5tRsJOb7cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/AgMN/xQXI/8eISr/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR4o/xscJ/8gIyj+cHND7c3NiZ7p6LQZ///zA////wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AqqqqAfLx8Q3t7e5R0tLSpIGB + hM0pKi/oFBUf+BsdJf4dHyf/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x4hKv8dHyj/BAUe/xokD/+/xWz///7j//// + ////////8uT//4FF6v9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Mu5v9uJen/aB/u/4Rb + wv2vtYvzzt2W0OXux4rw9Ng8+PfjEufn5wT///8B////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wBqGPYBbSTsEAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD/AP8BeTrmCnAp6kFrIO7SbCTn/HAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wIDDf8UFyP/HiEq/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HSAp/x0gKf8dICn/HSAo/x0fKP8aHCf/IiMo/Wxv + QObGxYKB3t6gEf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8C9/f2EOLg4zC9vb5neHV6sicoMOYWFx/6Gx0m/x0e + KP8dHyj/HR8o/x0fKP8dHyn/HR8p/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0fKP8dHyj/HR8o/x0f + KP8dHyj/HR8o/x0fKP8dHyj/HiEq/x4hKv8EBR7/IiYg/7/FbP///uP////////////r4fr/gUXq/00B + 4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/czDn/24l6v9oHu3/hFvD/a60jfTO3pjW5+/IlPH3 + 3EH6+uwV////A////wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wBtJOwWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAD/AW8r3QtuJus+ayDt1G4m + 6vtwK+f/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8CAw3/Fhkj/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8dICn/HB0m/yIiJ/xtb0HlxsaCgNnZkw////8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////Af///wHp3ukGysXMGLOxtVV6en27Ly827xkZIP0cHib/Hh8n/x0gKf8eICn/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x0f + KP8gIiv/HiEq/wQFHv8aJA//v8Vs///+4////////////+vh+v+BRer/TQHg/3Ar5v90MeX/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3As5v9zMOb/bifp/2se7f+EXML9r7WM9tDdmNnq8M2b8vfgSvn57Bf39+sF////Av// + /wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8Aahj2AW0k7B+jloYJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAF1EuwJxMukScS7kWXAr5tpwKuf9cCvn/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/BwkO/xYZI/8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiAq/xwdJ/8iIyn9cXBC6sjKhJDf35gQ////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ANHR + 4gPJycsYxMTGd4SDhtczNDr1Gxwi/R4fJ/8gISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/yAiK/8dHyj/BAUe/yIm + IP+/xWz///7j////////////6+H6/4FF6v9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSvm/3Qv + 5/9uJur/aR3s/4Nbw/2wtoz20d+a3Ory0KX09+NU+PnzHP///Qf///8B////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBrHvAEbSTsJqOW + hgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AABVQOoCbi7mGXAp5nZwK+XfcCvm/HAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wcJDv8XGiT/ICIr/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8aHij/IyQp/XJz + Q+/NzYmo4eChFv//vwH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A6unuBt3d3inRz9CWhoaK2zU1 + OfUbHSP+Hh8n/x8hKf8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8eISr/HiEq/x4hKv8eISr/ICIr/x4hKv8EBR7/IiYg/7/FbP///uP///////// + ///r4fr/gUXq/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/cy/m/24m6v9oHe//glvC/7G5 + jPjR4Zzj6/PSrfT45V33+PIi+vr5Cf///wL///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AGse8ARtJOwmo5aGCQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZEe4A24s6BtxK+ZycCvl4XAr + 5v1wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8HCQ7/Fxok/yAiK/8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HyEq/x4hKv8eISr/HiEq/x4hKv8eISr/HB4o/yMlKP90dUbz0M+Kt+TkqRr//78B////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AKqqqgHw7e0J3+DhL8/P0JaHh4jeNzg7+BweI/0eICb/HyEq/x8h + Kv8eISr/HiEq/x8hKv8eISr/HyEq/x4hKv8eISr/HyEq/x4hKv8eISr/HiEq/x4hKv8eISr/HiEq/x4h + Kv8eISr/HiEq/x4hKv8gIiv/HR8o/wQFHv8iJiD/v8Vs///+4////////////+vh+v+BRer/TQHg/3Ar + 5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/biXs/2gd7v+DWsT+sbiL+tPhm+br79S69Pjpavj6 + 9ij///4L////A////wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8Aax7wB20k7CCjloYIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEc/wNxK+gZcCvncnAr5uBwK+b9cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/BwkO/xcaJP8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/x4gKf8oKSj/dndG99HSjMbp6rck7+/FAv///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////Au3s6wrj4+M11NPVpIiHit40MzfuGBoh9x4eJ/seISr9HyEq/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/HiEq/yAi + K/8dHyj/BAUe/yYvGP+/xWz///7j////////////6+H6/4FF6v9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Aq5/9tJer/aBzv/4JbxP6xuIr80+Ke7e3y18H2+Ot2+vv0L/v7+g7///8D////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBrHvAFbSTsFqOWhgcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAB5N/MDci3pG28r5nFwK+bgcCvm/HAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wcJDv8ZGyb/IiQs/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAhK/8eHyr/KCkp/3h4 + R/jR0o7P7u/JMfn44QP///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8C9PXzC+nq + 6UHOz8+Lenp8sCgoLtAWFh3sHh8n+h8jKv4hIyv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/IiQs/x4hKv8EBR7/Ji8Y/7/F + bP///uP////////////r4fr/gUXq/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cS3n/20m + 6v9mG/D/hFnE/bK5ivzS4p3v7O/XyPf47H36+vYw+Pj5Df///wP///8B////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGse8AFtJOwGo5aGAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVir/Am4o5xpwK+VxcSzm4XAr + 5v1wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8HCQ7/GRsm/yIkLP8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8fIiv/Hh8p/ygqKf94eUb60tKP2fXy1En//+0E////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////Af///wLz8/QJ0NDQHJ+foTphY2R0IiUouRgZ + IekfISr7ICMr/yAjK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8iJCz/HiEq/wQFHv8oLCT/v8Vs///+4////////////+vh + +v+BRer/TQHg/3Ar5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLOb/bibq/2ca8f+DWcP/sruK/NTh + n/Dt79nL9/fvgPz89y////YN////Av///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEd/wNvK+sbbyrncHAr5uBwK+b9cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/BwkO/xkbJv8iJCz/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICEq/x0gKf8oKir+d3hJ+9LSkNv19Nlc9vftB////wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AMrK2gKamZsKdHR1IFtaYGonKSzGGxsj8iAhKv4hIyv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAi + K/8gIiv/ICIr/yIkLP8dHyj/BAUe/ygsJP+/xWz///7j////////////6+H6/4FF6v9NAeD/cCvm/3Qx + 5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5v9tJOr/aBnw/4JYwv+yu4n90uCk8ezx3Mz2+Ox5+fzzKfb1 + 9gn///8C////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACWI+0CdCzoGHAs5nJwK+bgcCvm/XAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wcJDv8ZGyb/IiQs/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8hIiv/ICIr/yEiK/8gIiv/ICIr/yAiK/8fISr/KSwq/3d5 + SPvR04/a9PbaW/X15gb///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AI6PmAd/gIInbW1wjy4wM98dHiX3ICIo/yEjK/8gIyv/ICIr/yAiK/8hIiv/ICIr/yAi + K/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/ICIr/yAiK/8gIiv/IiQs/x4h + Kv8EBR7/Ji8Y/7/FbP///uP////////////r4fr/gUXq/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cS3m/24m6v9nGPH/hFnE/7G7iv3U5J3y7fTXx/X362j7+fMf///7Bf///wH///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAakD/AnIu5xpwLOZxcCvn33Ar + 5v1wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8LCxX/Gh0n/yQlLf8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yEkLP8hIyz/HyAr/ywqLv94ekn5z9KN1/Py1VH/9egH////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC/v78BqamqDauq + qkt7e326MzQ47CEhJvshIyn/IiMs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8kJS3/HiEq/wQFHv8oLCT/v8Vs///+ + 4////////////+vh+v+BRer/TQHg/3Ar5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLOf/biXq/2cZ + 8P+DWcP+s72H/dLioe/q8di19PfnUvX37Rn///8E////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AAAAAAAAAAAAAAAAAAAAAAHko4wNzKuUacCvncXAr5+FwK+b9cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/CwsV/xodJ/8kJS3/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiMs/x8gK/8qKi7/eHhI+tDOjNDy8M9H9fbnBv///wH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AM/IxwTExsUYvL29Z31/f8M1NzrvHyEo/CEk + K/4jIyz/IyQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yQlLf8eISr/BAUe/ygsJP+/xWz///7j////////////6+H6/4FF + 6v9NAeD/cCvm/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5/9uJur/Zxvq/4NZxP+yu4f80uGg4+nv + 1p7x9OA+9/juEPf/9wT///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wAAAAAAAAAAAAAA + AACLIukDcCvlG3Ar5nBwK+bhcCvm/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wsLFf8bHif/JCUt/yIk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yMkLP8iJCz/IiQs/yIjLP8fIiz/Kyst/Xh4 + SPfO0IzM7u7HPvHx5AX///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A5OPkBMvLzR3CwcJwgoKDyzc8PPEhJCn9IiMq/iQkK/8iJCz/IiQs/yMk + LP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIkLP8iJCz/IiQs/yIk + LP8iJCz/JScu/yAiK/8EBR7/KCwk/7/FbP///uP////////////r4fr/gUXq/1kK4v9sJeX/cS3m/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCzm/24n6v9nGur/g1bD/rK9hfbP4Z3Y5/DPhO3z2DD1/ucN///mAv// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AAAAAAAAAAAAcy3SA3Is5RtwK+VxcCvm4HAr + 5v5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8LCxX/Gx4n/yUnLv8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yMlLf8jJS3/IiEr/yssL/92d0r2y82JxuvtwDj2+9kE////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wDk5OQH2NjXJcbJyIGGi4nQNzs97iAjKPoiIin+IyUs/yMlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8lJy7/ICIr/wQF + Hv8oLCT/u7hg///+4////////////+vh+v+BRer/WQri/3Ar5v9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9xLOb/bibq/2cZ7P+BV8T+sb2D9M/gnMrk7sdx6/XQJO751wr//9UC////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8AAAAAAEcd4wNwKOgZcCvncHAr5eFwK+b9cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/CwsV/x0fKP8lJy7/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/IyUt/yEhLP8rKy3/dXZJ9svLicXn67w09vbZBP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////Au7u7wnc3uAsxsfIe4CC + hLowMjjhHiAk9iEjKv0jJCz/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yYoLv8iJCz/Cw0e/ygsJP+7uGD/+P3a//// + ////////6+H6/4FF6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Et5/9uJun/Zhjs/4BV + xP2yvIHx0N2avOLqwmHm8sog6PTeCf///wL///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBwHv8CcCvoGXAs5XFwK+XjcCvm/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wsLFf8dHyj/JScu/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yMkLf8hIiz/Kiov/nV2 + SPTLy4fB5+m4NPH12gX///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8C6enpCc/Qzx+urq9Sc3R1mywwM9gfICn0IiQp/SQl + LP8kJi3/JCYt/yQmLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQlLf8kJS3/JCUt/yQl + Lf8kJS3/JCUt/yQlLf8kJS3/Jigu/yIkLP8LDR7/KCwk/7u4YP/4/dr////////////r4fr/gUXq/1kK + 4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cS3m/20m6v9lGOz/gVTE/rWwhu3O2pu04Oi+Wufw + yBzr6+YH397fAv///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8ApCHzA3At6BpxK+ZxcCvm4nAr + 5v5wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////5iXnP8LCxX/HR8o/yYoLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJS3/IiMt/ysqLv53d0n0yMqHwebmtDP6+uME////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AICAgAHQz9AEtba6EpSWlz1wc3OXLjI13B8hKfYiJCr8IyUt/iQmLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8mKC7/JCUt/w0MJ/8oLCT/u7hg//j92v////////////Dp+v+BRer/WQri/2wl5f9xLeb/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9xLOb/bSXp/2QW7P6AU8X8trGE7c/ZmbTg6L9Y5+3EHOXp2Aj///8A////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AGMc/wNwKOcZbyvncXAr5uJwLOX8cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+Yl5z/CwsV/x0fKP8mKC7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yEjLf8rKi/9dXZJ9cvKhsLm5rc07u7UBP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ALW2 + tQKqqqsQmZycQ3Nydp4vMDPYHiAm8yQlLPwlJi7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/ygpMP8lJy7/DQwn/ygs + JP+7uGD/+P3a////////////8On6/4FF6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Es + 5v9uJen/ZBbs/4FUxvy2sYXsz9mas+HovVnj6cMb7e7VCf//3wL///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBwH/8CbinlGXAr53BxK+bicCvm/HAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////mJec/wsLFf8dHyj/Jigu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUmLv8iIy3/Kyou/3Z3 + SvXKyobD6em4OPT00AX///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8Bz8/PA6qpsRGUl5g/a21wiywt + Ms0fICjwIyYs/SUmLf8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/JScu/yUn + Lv8lJy7/JScu/yUnLv8lJy7/JScu/yUnLv8lJy7/KCkw/yUnLv8NDCf/KCwk/7u4YP/4/dr///////// + ///w6fr/gUXq/1kK4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cS3n/24l6v9kFuz/gFPF/Lax + hevO2Jqz3ua7WOLtxB3y8uEJ39/fAv///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AdjLtAm4t5RlwK+VycCvm4W8r + 5vxwK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8LCxX/HiEq/ygpMP8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8lJy7/IyQt/ysrL/53d0r2yMqHxOjouD3v8MwG////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wDNztkDpKOnD4WHhzNoa22GLTEz1B8hKfUkJCz+Jicv/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYo + Lv8mKC7/Jigu/yYoLv8oKTD/JScu/w0MJ/8oLCT/u7hg//j92v////////////Dp+v+BRer/WQri/2wl + 5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLOb/bibq/2UW7f+BUsb8trCF7NDambTi575a5e3IH/b2 + 2gn//+4D////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AIAr1QJvKOYbcCvmcHAr5uNwK+b9cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/CwsV/x4hKv8oKTD/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jygu/yYo + Lv8mKC7/Jigu/yMkLf8rKi/+dXdJ98jKhsbr671D/PzkCP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AKqqqgKhoaEPk5WWPXN0eJ0yMjriICEp+iUmLP4mKC//Jigv/ycoL/8mKC//Jygu/yYo + Lv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/yYoLv8mKC7/Jigu/ykr + MP8mKC7/DQwn/ygsJP+7uGD/+P3a////////////9u/9/4FF6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Es5v9uJer/ZBT1/4BSxfy1r4frztqas+Dpvl/o9cgk7/LSC///vwL///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBzGf8CbinlGXAs53BwLObjcCvm/nAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/wsLFf8eISr/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygoMP8kJi7/Kiwv/nR2 + SvbJyYjI6+vAS/Pz4gr///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AqqqqA7q6 + uBaurq9Wg4WGtTc4P+ojIin7JiYu/ygoLv8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KSsw/ygpMP8NDCf/KCwk/7Su + a//4/dr////////////27/3/gUXq/1kK4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cSzn/24l + 6v9kFPP/gVTH+rSwhuvP3JO35u67Z+nyxST2/tgL//+/Af///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AcSv2Amwr5xpwLOZxcCvm43Ar + 5v1wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8RERf/ICIr/ykrMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKDD/Iycu/yosMP52d0r2yciJyOvswk/4990J////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wDe3t4GzczMIL28vWyKiovDOjo/7iIj + KPsnJiz/KCkv/ykpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8pKzD/KCkw/w0MJ/8oLCT/qaZg//j92v////////////bv + /f+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xLef/biXq/2UU9P+CVMf8tbGI7NHb + mcDk7Lpo6PK6I+/uwwj//78B////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AE8n9ANtLegZcCzlcG8r5uJwK+b8cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EREX/yAiK/8qKzH/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/Jykv/yQnLf8rLy3+dHVI8sbFg7vo6bhA8vHaCf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8AqqqqAeDg4gnU1dUnwcLCdouLi8U4OD7rIiMn+SYoLv4pKTD/KSow/ygq + MP8oKTD/KCkw/ygqMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygpMP8oKTD/KCkw/ygp + MP8oKTD/KCkw/yorMf8qKzH/DQwn/yImIP+ppmD/+P3a////////////+vX//45U7f9ZCuL/bCXl/3Et + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Mw5f9uJur/ZBX0/4JUxf20r4nuz9ySweLps2Lk77Qe7f3ICP// + 1AL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBvIv8DbynoGXAr5XBwLObhcCvm/XAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j92v//////oaCi/xERF/8gIiv/Kisx/ykr + MP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8mKC//LC8r/HFy + ROm/v3ye4OCiK/v7xAX///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A7u3uCtbX1ii/vr5vh4aIuDM0N+IfICf1Jygu/CkqMf8pKzH/KSsw/ykrMP8pKzD/KSsw/ykr + MP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/KSsw/ykrMP8pKzD/Kisx/yst + Mv8NDCf/IiYg/7u4YP/4/dr////////////69f//jlTt/1kK4v9sJeX/cS3m/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cy/m/20l5/9lFfL/glXG/bSuiO/O2JG74OmuWeLurRvo/b4HwP+VAv///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AZjPMAnIs5BtxLOZxcCvm4nAr + 5vxwK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//////6Ggov8RERf/IiQs/ystMv8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8pKjH/Jygv/ysuK/tucEHitbV0gdPSkB/Cw54C////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wLs7ewJ0c/PIra3 + tll8fH6fKiwx0BscJO0nJi75Kisw/SorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8rLTL/Ky0y/w0MJ/8iJiD/u7hg//j9 + 2v////////////r1//+BRer/WQri/2wl5f9xLeb/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v90MeX/byno/2YX + 8f+CVsT7tauK7M3YkLLd56dO4+umF+78tgb//9UC////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AJUp/wNwJegccCvlc3Er5uNwK+b+cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xMyv+90YD/+P3a//// + //+hoKL/EhEX/yIkLP8rLTL/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kiox/ygoMP8sKzH7a21A3bCwb3bT04wbv8CqAv///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8Av7+/AeDf4AbDw8QWn5+gO2tqcHkkJCq5Ghoi5CYn + LfcpKzH9Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/ystMv8tLjT/DQwn/yImIP+7uGD/+P3a////////////+vX//4FF + 6v9ZCuL/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qw5/9sJef/ZRjx/4NOzvuyqI3nytSQptvk + pknf6K4W8/vGBqr/qgH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wBkGuUEZxnjIWcd5IhuKeblcCvl/XAr5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98TMr/vdGA//j82v//////oZ+i/xMUHv8iJCz/Ky0y/yor + Mf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qLDH/Kisx/yorMf8qKzH/Kisx/yorMf8oJzD/Kyws+2xt + Qt6ys3J5zdGKG+3tiQL///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A39/fA7Kysgx7e4AjWFhcWx4fJKUZGiPcJygs9SsrMPwrKzH/Kywx/yor + Mf8qKzH/Kiwx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yorMf8qKzH/Kisx/yor + Mf8qKzH/LS40/y0uNP8NDCf/IiYg/7u4YP/4/dr////////////69f//gUXq/00B4P9sJeX/cS3m/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cy/m/2wl6P9mGPH/gk7Q+q+ljuDK0ZCe1+KkSOLqqxjp6LAG//+qAf// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AaAz/A2QT5B9hFOSGZhzk4W0o + 5vtwK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rHvD/fEzK/73RgP/4/dr//v7+/5iXm/8MDBb/Jigu/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTH/Jygw/ywrMv1ubkLjtLNzgtXUjx/V1KoC////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wC2t7cCl5aWB2BjZRlKS1BJGholmhYYHtcmKC3zLCwy/SwtMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8tLjT/LzA0/w0M + J/8iJiD/u7hg//j92v////////////r1//+BRer/TQHg/2wl5f90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9yMOb/birn/2Yb7/6ATdD5rqSS3sfQkpza4qVK5Oy2GOj0vwf///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AIAg/wJ1MukUeDbpU2oh5tNoIOX6cSzm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7w/3xNyf+90YD/+P3a//7+ + /v+Yl5z/AwQH/x0fKP8yMjf/Kisx/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ygqMf8tKjH+cHJE6Lm8eZHZ2ZYm7fC9Bf///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAf///wCBgYQGTE1UE0ND + SUAaGySVGBkf1ycpLvUtKzP+LC0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/y0uNP8vMDT/DQwn/yImIP+7uGD/+P3a//// + ////////+vX//4FF6v9NAeD/bCXl/3Et5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Qv5f9sJeb/aBzv/YBO + zvetpJTeydCSodvkqlDk8Lkb9/fXCP//1QL///8A////AP///wD///8A////AP///wD///8A////AP// + /wCVa/8CqYD0DKuB8kOebfDDcy/o9Ggh5f5tK+b+cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2se8P98Tcr/vdCB//f92f/+//3/19jX/0Y+TP8HBgf/JSgt/zEz + Nv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8pKjH/LCsx/nN0 + R+7Aw36l3N+iMfT0xwj///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AVVVVQNHSFERPz5FPhkaH5IWGRzYKCsu9i0t + Mf0rLjL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/LzA0/y8wNP8NDCf/IiYg/7u4YP/4/dr////////////69f//gUXq/00B + 4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wLOb/cy/l/24p6P9nHO/+gU7P966jkuDM0Jaq4ue2W+zw + xx/s7NIJ////AP///wD///8A////AP///wD///8A////AP///wD///8A////ANvK/wnXw/o00rz6n6Z6 + 8t5vKeX3Zx3l/HMt5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9sHvD/fE3J/73Qg//4/Nn///7+/vz7+vna0d36SEFO/ggIDP8mKCz/MDI3/ystMv8rLTL/Ky0y/yst + Mv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystM/8rLTL/KCkz/yspMf52dkj1xcaDu+Tmskb089IM////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8Ao6SlA0lJThBAQUM/GxwemxcZHN4pKS34LC0x/iwtMv8rLTL/LC0y/yst + Mv8rLTP/LC0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/ystMv8rLTL/Ky0y/yst + Mv8vMDT/LzA0/w0MJ/8iJiD/u7hg//j92v////////////r1//+BRer/TQHg/3Ar5v90MeX/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3As5v9yL+X/cCnn/2oe7v6EUM74s6eW5dfXobXo6r9n8fLMJfb23Qr//+UC////AP// + /wD///8A////AP///wD///8A////AP///wHt2fkE7OP+HOPY+1bTu/iZonXq1mkk5fRlHOT8ci7l/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/ax7v/31Myf+90IX/9fvX/v7/ + /Nz+/v6n9vb2usrKyuxLRU/8DQ0R/ycoLv8zNDb/Ky4y/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0u + NP8tLjT/LS00/yosMv8rKjL+eHpI+MjLis7p7MBb+vveEv//vwH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAA + AAGKi2UETkxNEElJSkccHSGnGBke4ykqLvgtLjH/LS4y/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0u + NP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y8wNP8vMDT/DQwn/yIm + IP+7uGD/+P3a////////////+vX//4FF6v9NAeD/bCXl/3Qx5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCzm/3Ev + 5v9vKOj/bB/t/4dTzvq9rJ/q2tujv+rswm7u8c4m7+/gC////wL///8A////AP///wD///8A////AP// + /wD///8A////AvHv/wru5/sd4dL3Qc+69YOecuvOYBjj8WQb5P9xL+X/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2sf7/99Tsj/vc2H/vT61fH+/vqC//7+Kvn5+UHu7e2pw8LD7k5I + UvsQERP9Jygt/zAxNP8rLjL/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8qKzL/Kikx/3l4 + SfnMzIvW6+7Gavb24hb///8C////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIaGZANTVFMUUFFVUB4f + I7AYGh/lKysv+i0tMv8uLzT/Li40/y0uNP8uLjT/Li80/y0vNP8tLjT/LS40/y0uNP8uLzT/LS40/y0u + NP8tLjT/LS40/y0uNP8tLjT/LS40/y0uNP8tLjT/LzA0/zEyNv8NDCf/IiYg/7u4YP///uP///////// + ///27/3/gUXq/00B4P9wK+b/dDHl/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/cTDm/28o6P9tIu39iVbO+ryt + n+3a26TE6evEcu7z0Cfu8tgK////Av///wD///8A////AP///wD///8A////AP///wH///8C/+f/Bu7j + +hPbyvcxzrj3dKNy88NdFePxZBnk/XIu5P9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9rH+//f07K/73Lh/ry+NLM/P7yRf///w79/v0W+Pf4UOjn6ai/uMPeUEdT9RUUF/0oKi7/MjI2/y4u + NP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LCw0/yopMP95eUn6y82N2e3ux2v7/OcY///qA/// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wCAgIABenp6A1ldXBZPUVZVHiEntBkbH+gqKi75LS40/i4v + NP8vLzT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8w + NP8vMDT/LzA0/y0uNP8vMDT/MTI2/w0MJ/8jJiD/u7hg///+4/////7///////bv/f+BRer/TQHg/3Ar + 5v90MeX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3As5v9xL+b/cCro/2wl6v+JWM38vKyg7dnZpsTn6cVy7fDMJfT0 + 1Qj///8A////AP///wD///8A////AP///wD///8A////Af///wL27PUD6+D3D9vN+inOtvtqonPzu14V + 4+1kG+T9cy/l/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+f/ax/v/39PyP28yYnm7vbLhPr9 + 5iH5//kG////B/z7/Bnw8PRE4NvhjbixvNNSSFX1FxgZ/SgqLf8xMzb/MDA0/y8wNP8vMDT/LzA0/y8w + NP8vMDT/LzA0/yssNP8pJzH/eXlJ+8zNjtnt78hr9/jjF////wL///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wCAgYEDXGBiGFdXWlohJCa4GRsf6CorMPkvLzP/LzA1/y8wNP8vMDT/LzA0/y8w + NP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/zEy + Nv8wMjX/DQwn/ygtJP+6t2H//v7j////////////9u39/4NF7P9NAeD/cCrm/3Qx5f9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Iu5/9wKOj/byfp/oxby/u8qqPs2timwenqxGvr7ckg8O/SCf///wH///8A////AP// + /wD///8A////AP///wD///8B////AcbH/wPo2f8L2Mb9Isyz+F6gcfS0WxTj7mMa5PtyLuX+cCvl/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/2wh7v9/T8j8t8aKxuDrukjv9dMO////Af///wL19PUG9fD1FO3p + 7zrd2uCOuLG721NOWPcZGR39KSku/zMyNv8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8rLTT/Jicx/3l6 + SPzOzozW7e/GZvf44hb///8D////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AHJy + gARcYWQaWFpcYB8hJ7ocHCHoKysw+C8vM/4wMDT+LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8w + NP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/LzA0/y8wNP8vMDT/MTI2/zExNf8PDSj/Ki8l/7q3 + Yf/9/OH////+//79/v/z7Pz/gkfq/1AE4f9sJeT/czHl/3Er5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wLOb/cizn/24l + 5/9vKuf/jV3M+rqopOjY1qa55+bAZezvyh7y89sG////AP///wD///8A////AP///wD///8A////AP// + /wD///8B49H/A+XZ/wnWvvoex6v3VJ1s8bBbFeLrZBnk+nAt5f9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9tIO7/fk/J+rXAjLnY4aw24/LHCf//gAH///8A////Af///wX19vYW7uzvSeDf4qe7ub/oVlJb/Bsb + JP8rKzD/MTI2/zAwNP8vMDT/LzA0/y8wNP8vMDT/LC40/yclM/94eUj6y8yLzOvrv1jy894S///lAv// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AcHuAB1teYBxQUFNeISUntRwf + JOQrLDH3Ly41/DAyNP4vMTX/MDA0/y8wNP8vMTT/LzA1/zAwNP8wMDT/LzA1/y8wNP8vMDT/LzA0/y8x + Nf8vMDX/LzA0/y8wNP8vMDT/LzA0/y8wNP8xMzf/MDE2/xoaLv8uMSr/t7Vj//r63//9//z//f7+/+zk + +v+ESuz/Uwnh/28q5v90MOX/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar + 5v9wK+b/cCvm/3As5v9wK+b/cCvm/3Ar5v9wK+b/cCvm/3Ar5v9xK+b/bCfm/nEv5f2PXcr4uKem49fT + qLLo6MNk8PHRIf7+5wj///8B////AP///wD///8A////AP///wD///8A////AP///wDf3/8C7NX1Bsqy + +Ri5mPJIkWHnn1wS4eFlGuT5cS3l/XAr5v9wK+b/cCvm/3Ar5v9wK+b/bCPu/4BQyvu2wYzI2eOxRO3z + yQ///8MD////AP///wD///8B////CPb29iL08/Vp5uPmw7u7v+1YUFz5Hh0n/SssMv8xMjX/MDA1/zEy + Nf8xMjb/MTI1/y4uM/8mJTH+dHdG9MfIhbbk57Q+9fXcC////wH///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AFVVVQFrb3AHVFdYH0lOT18jJievICEl3ikpL/QsKzL6LC4y/S0u + M/0uMTT9LTE1/zAxNP8wMTb/MDI3/zIyN/8xMzf/MTI2/zM0Nv8xMzb/MzM3/zI0N/80NDf/MzM2/zQ0 + N/8zMzf/MzQ3/zMzOP8xMDb/HBov/zU4MP+zsmb/9vbb//3++v/7+v3/59v5/4hO7P9WEOT/cCnm/3Eu + 5f9wK+X/cSvm/28r5v9wKub/binm/3Aq5v9wKub/byvm/28p5v9vKeb/binm/3Ap5v9uKub/byrm/20o + 5v9tKeb/byrm/24p5f9vKeb/bijm/W0n5/5tJOf7czHk+ZJiy/C6p6jc19Sos+rpyXD089op9/jnCf// + /wH///8A////AP///wD///8A////AP///wD///8A////Aerp6gPYwP8Fu5zvEqZ+7TeLWOeGWhHh1GMb + 4/VxLeX+cCvm/3Ar5v9wK+b/cCvm/20h7/+BUsf9uMGP4ePrvnLx99Yf///nBv///wH///8A////AP// + /wL///8N/Pv9Mvf19nvk4uW2trW62VNOWO8fHSf4Kioy/zIyNv8xMjb/MTI2/zEyNv8uLjP/Kiwu/3Jz + QurBwX2V29yeKt3ctQf///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgICAAWRlZQhQUlMiQkRHXCEmKKIcHSTNICIq4CQmLOYlJi3sIyUs8CMlLPMkJSv3IyUr/CEl + K/0hIyv+IyIr/iAjKv4fIyv/ISIq/iEjKv8iISr/IyMp/yAhK/8gIiz+ICEq/iAhKf8fISn/HyEp/h4h + Kf8PESL+LTUf/6SiaP/w8Mf//Pz3/fv5/f/j1Pf/ilPq/1sU4/5kGuT/ZBnk/2Ua5f9lGuX/ZRvl/2Ub + 5P9mHOX/Zhzl/2Uc5P9mHeT/Zxzl/2cd5f5nHeT9Zh7m/mYd5P9oHeX+Zhzl/Gcf5P1oHeT6Zh/l+Wge + 5fVlHeTzZx3m7Ggf5+l1M+DkkGHF3b6tpc3c2ayw8vHWevr67y3///4E////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////Ac6t3gSrhu0Pk2TpKYRM5m5aD+PBZBrk63At5ftwK+b+cCvm/3Ar + 5v9uIuv/gVTF/bnEkPHo8cey9/ziQfX98RD//+4D////AP///wD///8B////BP///w/8+/0o8fLyTtjY + 24Crqq+4TklW5B8eKPgrLTL+MjI2/zIyNv8xMjb/LzA2/y4xLf1uckDltbVzddHRjB3S05sD////Af// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAgIACVlZeCElJ + TyI4OUFPICIrgBwgJpkkJiylKCkurCkrMLcsLjHCLS4y0C4uM9wuMDLmLjM07TEyMvIxMTb1MzM1+TQz + NvsyNDX8MjM2/DEyNv0wMTX8MDIz+y0wM/ktLzH1LC4v8ywsL/IpKi7uJygt7R4fKO9DSTHvsrB58Pb2 + 0fP//Pv29vP999jH9/mPWuz6aifl+nMv5fxzMOX7dTLl/HU06Px1Nef9dzXn+3g25/x3Nub7eTfn/HY1 + 5/t4Neb6eDXm+ng25vh2Neb3dTPm9XYz5vByL+Xpcy3m4HEp59NqJebLaCLlwGoh5bVqH+ataybmqX4/ + 3aSfecGezsasmOvrzYT6+vVY/v7+EP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8ArqHdA6d78AuJVOsigUXrWVsS4q1jG+TkcS3l+m8r5v9wKef/biPr/4NWxf68xJX36/HKz/f7 + 6Wj+//QZ////BP///wH///8A////AP///wD///8D////CPT1+BHk5ugky8nNV6ekqqpPS1XkJCUr+i4v + M/4wNDf/MTI2/zAyM/8vMi78a3A+3quramvKyYQbxMOIA////wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AGBggAJRUWUJPT1IGjY1PS4zNTpAOz1AS0NF + SFFOTVBbWVhbY2VlaHBxcXR+fX5/joiJiaCQkI+ulpSVvpqbmc2enp/an5+f35+fn96fn57anZye2Jub + nM+Xl5fBlJSVtZGSkqmQkJGhj46NmouLjpeJiouWkZSMmsHEpqPw89Ww/v73uvz9/sHz7P7I28j4zb+c + 9NK8nO/Xvp/v3b6f7uK/ou/lv6Hw5sCh8Oa/ovDnvqHw576f7+O+oO/gvZ7w2rqb7ta6me/RuZbvy7aU + 7sGzkO61rorupKmD7o6ecex2lmPoZYxW6FmFSehQfkDoSn096EeHS+dFoXnTQsy8xDzt6tcy/f3zHv// + /Aj///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wDAr+MDoXP9CYZN + 6x18P+tRWxPipGQb5OJvLOX5bynn/20l6P6CWMX/u8CZ9ujvyMb3++Vc/fz2GP///wT///8A////AP// + /wD///8A////AP///wHx8fED6OrrCNzb3RzKyMtZqaetuVdSXO4oKC/9LS4y/jAwNf8vMTX+MzUv+Wxt + QN2oqmtyxsiHIMvMlQb///8B////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wAAAAABv7+/AkdHVwRKUlIKUFBWEFZaXRViY2cXcHBvG3x8ex2IioshmJmbJqep + qCy2tbY0w8PCQMzMy03S0tJb19fWZ9jX2G3X1tds1dbUZdLS0lvLzMtPw8PBP7u7uja4t7cutbW2K7a0 + tSiysrQnrq6uKLa1ryrU1cAs8PTfMfz+9jj//v9B+vn+SPHo/FTo3Ppi5tr4cOjc+H3q3/qI7OP5k+zj + +Zjt4/mZ7OT6me3i95jr4viQ6uH5iOjd+IHn3PV35dv4bOLV92Dh0fdU2sn0RdTA8zTKsPIqxKf0HbiX + 7xaqgO4Unm/oEZpo6xCUX+0Qm2npDrSI5Q3HvtgL6eDgCP//+AT///8C////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AKpV/wGjZ+gIilXqG3g85lFbFOOnZRzk4m8p + 5/pwKef9hVvC/rm+nfLn7cS29PnfTfn77RP///gF////AP///wD///8A////AP///wD///8A////AP// + /wDw7+8H4+XlJtjW2n6zsbbVXFhh+C8tMv4uMDb/LzE1/zc4MvltcELgrrFwic7NjC3h4KQI////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AgICAAVtbWgNycnIDgICAA4CAgAWjoaIGsbKzBcHBwQbOzc0I1tXVCd3e3Q3k4uQQ5ufmFO3p + 6Bbr6+wW9PT0F+7u7hbq7OwS6ujnD+DW1gvV1dUIwcLCBsXExAXX2NcGzs3MBtHR0QTLy7sG3t7bB/n5 + 5Ab///cI/v7+C////w3+9P8R9O/+FvLv+hr18Pkg+fb+I/j2+yr69/0s+fb/Lvv3/i76+P8t+vf9Kvn2 + /CX39P8g9/T+HPby+xnw7fsT9+r/Dujg+Arj1vEI3MbnBMq67wO1tf8C34D/Av///wGAgIAB/4D/AdUr + /wKqqv8B////Av///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD/AP8BjXPWAppz7AiKUuodekHnXmAZ47ZmG+brcCri+oZew/24u6Ly5erEufb5 + 4VT39/IV///0A////wD///8A////AP///wD///8A////AP///wD///8A////APHv8RDy8PRL5OLmubm4 + vO9jXmb9MjE4/i4xNP43PDP6b3FE5bGzc53P0pQ+3+GtD///3wL///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8AAAAAAf///wD///8A////Af///wH///8BxsfHA+Xl5gL///8C////A////wL///8D////Ab+/ + vwH///8B////Af///wD///8A////AP///wH///8B////AP///wD///8A////AP///wH///8B////Av// + /wH///8C9fX1A////wT///8F/f39B/z8/wX///8F////Bv/0/wT5+f8E+Pj/BPb2/wL///8C////Av// + /wD///8A////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AAAA + /wGqVf8BqHbqCpVm6yqGTuh6Yxzkz2sk4/GFXsH8uLqj9ufsyND3+uhz///3IP///wb///8A////AP// + /wD///8A////AP///wD///8A////AP///wD8+/wF/Pv7KPf195fp5+rgvby+82Zhavg1Njr6PD01+HFz + SOSvs3Wm0dOaTOTluhX29r0E////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////Af///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ALSA/wKzmPARrIbvR45d + 6aJtL+HhhF3C9bm7pPTn7c7f+fzulf/++yz///8G////Af///wD///8A////AP///wD///8A////AP// + /wD///8A////Av///xL9/fxZ+fv4qebo5cq3trnZX1tg4kNEOuV0dk3Zr7F4o9XWoFHp6cEa///IBf// + /wH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A3cr7Bsy09CK8m/Vrm2bstZJo19XIwMPf7vDa2fv8 + 9KL8//wv////Bf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8F/P/8GP3+ + /j319vZg2dnbe6CgoY1hYVidgH5eorq7i4Xa27BJ6u3LGfz93gb///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wHk2/0M1b77LMao9FrCp+h83tXokfb08Jr8/vp9////J////wX///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wH9/fwD9vf1B+bm5gy2trURk5OIF6Gh + ix3Ly6we6OjLFPPz2gj//+EB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8Bv7//AuLT + /Qffz/gS3s/0Gezk9xz4+fkd//78Fv///wf///8B////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// + /wD///8A////AP///wD///8A////AMf////////////////////////////////4AACA//////////// + ////////////////////+AAAAH////////////////////////////////gAAAA///////////////// + ///////////////4AAAAH///////////////////////////////+AAAAA////////////////////// + //////////gAAAAH///////////////////////////////4AAAAA/////////////////////////// + ////+AAAAAH///////////////////////////////gAAIAA///////////////////////////////4 + AAAAAB//////////////////////////////+AAAAAAH//////////////////////////////gAAAAA + B//////////////////////////////4AAAAAAP/////////////////////////////+AAAgAAD//// + //////////////////////////gAAIAAAP//////+//////////////////////4AACAAAB///////// + ////////////////////+AAAAAAAf/////////////////////////////gAAIAAAD////////////// + ///////////////4AAAAAAAP////////////////////////////+AAAAAAAB/////////////////// + //////////gAAIAAAAP////////////////////////////4AACAAAAB//////////////////////// + ////+AAAAAAAAP////////////////////////////gAAAAAAAB////////////////////////////4 + AAAAAAAAP////3//////////////////////+AAAAAAAAB////////////////////////////gAAIAA + AAAf///////////////////////////4AAAAAAAAD///////////////////////////+AAAAAAAAAf/ + //////////////////////////gAAAAAAAAD///////////////////////////4AAAAAAAAAf////// + ////////////////////+AAAgAAAAAD///////////////////////////gAAAAAAAAA//////z///// + ///////////////4AAAAAAAAAD/////+P///////////////////+AAAAAAAAAA//////x////////// + //////////gAAAAAAAAAH/////+D///////////////////4AAAAAAAAAA///////f////////////// + ////+AAAAAAAAAAH//////////////////////////gAAIAAAAAAA//////////////////////////4 + AACAAAAAAAH/////////////////////////+AAAAAAAAAAA//////////////////////////gAAIAA + AAAAAH/////////////////////////4AAAAAAAAAAA/////////////////////////+AAAgAAAAAAA + H/////////////////////////gAAAAAAAAAAB/////////////////////////4AAAAAAAAAAAP//// + ////////////////////+AAAAAAAAAAAA/////////////////////////gAAAAAAAAAAAH///////// + ///////////////4AAAAAAAAAAAA////////////////////////+AAAAAAAAAAAAP////////////// + //////////gAAAAAAAAAAAB////////////////////////4AACAAAAAAAAAH/////////////////// + ////+AAAgAAAAAAAAA////////////////////////gAAAAAAAAAAAAH///////////////////////4 + AACAAAAAAAAAA///////////////////////+AAAgAAAAAAAAAH///////////////////////gAAAAA + AAAAAAAA///////////////////////4AAAAAAAAAAAAAH//////////////////////+AAAAAAAAAAA + AAA///////////////////////gAAIAAAAAAAAAAH//////////////////////4AAAAAAAAAAAAAA// + ////////////////////+AAAAAAAAAAAAAAD//////////////////////gAAIAAAAAAAAAAA/////// + ///////////////4AACAAAAAAAAAAAD/////////////////////+AAAgAAAAAAAAAAA//////////// + //////////gAAIAAAAAAAAAAAH/////////////////////4AACAAAAAAAAAAAA///////////////// + ////+AAAgAAAAAAAAAAAH/////////////////////gAAIAAAAAAAAAAAA/////////////////////4 + AAAAAAAAAAAAAAAH////////////////////+AAAAAAAAAAAAAAAA/////////////////////gAAIAA + AAAAAAAAAAP////////////////////4AAAAAAAAAAAAAAAD////////////////////+AAAgAAAAAAA + AAAAAP////////////////////gAAIAAAAAAAAAAAAD////////////////////4AAAAAAAAAAAAAAAA + f///////////////////+AAAgAAAAAAAAAAAAD////////////////////gAAIAAAAAAAAAAAAAf//// + ///////////////4AACAAAAAAAAAAAAAD///////////////////+AAAgAAAAAAAAAAAAAf//z////// + //////////gAAIAAAAAAAAAAAAAB//8f///////////////4AACAAAAAAAAAAAAAAf//j/////////// + ////+AAAgAAAAAAAAAAAAAB///////////////////gAAIAAAAAAAAAAAAAAH//////////////////4 + AACAAAAAAAAAAAAAAA//////////////////+AAAgAAAAAAAAAAAAAAH//////////////////gAAIAA + AAAAAAAAAAAAB//////////////////4AACAAAAAAAAAAAAAAAP/////////////////+AAAgAAAAAAA + AAAAAAAA//////////////////gAAIAAAAAAAAAAAAAAAP/////////////////4AAAAAAAAAAAAAAAA + AAB/////////////////+AAAAAAAAAAAAAAAAAAAH/////////////////gAAAAAAAAAAAAAAAAAAA// + ///////////////4AACAAAAAAAAAAAAAAAAH////////////////+AAAgAAAAAAAAAAAAAAAA/////// + //////////gAAIAAAAAAAAAAAAAAAAD////////////////4AACAAAAAAAAAAAAAAAAA//////////// + ////+AAAgAAAAAAAAAAAAAAAAD////////////////gAAAAAAAAAAAAAAAAAAAAf///////////////4 + AAAAAAAAAAAAAAAAAAAAD///////////////+AAAAAAAAAAAAAAAAAAAAAf///////////////gAAIAA + AAAAAAAAAAAAAAAH///////////////4AACAAAAAAAAAAAAAAAAAA///////////////+AAAAAAAAAAA + AAAAAAAAAAH///////////////gAAAAAAAAAAAAAAAAAAAAA///////////////4AAAAAAAAAAAAAAAA + AAAAAD//////////////+AAAAAAAAAAAAAAAAAAAAAA///////////////gAAAAAAAAAAAAAAAAAAAAA + H//////////////4AACAAAAAAAAAAAAAAAAAAA//////////////+AAAgAAAAAAAAAAAAAAAAAAH//// + //////////gAAAAAAAAAAAAAAAAAAAAAB//////////////4AAAAAAAAAAAAAAAAAAAAAAf///////// + ////+AAAgAAAAAAAYAAAAAAAAAAD//////////////gAAIAAAAAAAGAAAAAAAAAAA//////////////4 + AAAAAAAAAADwAAAAAAAAAAH/////////////+AAAAAAAAAAA+AAAAAAAAAAA//////////////gAAIAA + AAAAAPwAAAAAAAAAAD/////////////4AAAAAAAAAAD+AAAAAAAAAAAf////////////+AAAAAAAAAAA + fgAAAAAAAAAAH/////////////gAAIAAAAAAAP8AAAAAAAAAAA/////////////4AACAAAAAAAB/gAAA + AAAAAAAH////////////+AAAgAAAAAAAf8AAAAAAAAAAAR////////////gAAIAAAAAAAP/AAAAAAAAA + AAAP///////////4AAAAAAAAAAD/4AAAAAAAAAAAD///////////+AAAAAAAAAAA//gAAAAAAAAAAAP/ + //////////gAAAAAAAAAAP/8AAAAAAAAAAAD///////////4AAAAAAAAAAD//wAAAAAAAAAAAf////// + ////+AAAAAAAAAAA//8AAAAAAAAAAAD///////////gAAAAAAAAAAP//gAAAAAAAAAAAf//////////4 + AAAAAAAAAAH//8AAAAAAAAAAAD//////////+AAAAAAAAAAA///gAAAAAAAAAAA///////////gAAAAA + AAAAAP//8AAAAAAAAAAAD//////////4AAAAAAAAAAD///gAAAAAAAAAAA//////////+AAAgAAAAAAA + ///+AAAAAAAAAAAH//////////gAAAAAAAAAAP///gAAAAAAAAAAA//////////4AAAAAAAAAAD///8A + AAAAAAAAAAP/////////+AAAAAAAAAAA////wAAAAAAAAAAA//////////gAAIAAAAAAAf///+AAAAAA + AAAAAP/////////4AAAAAAAAAAD////gAAAAAAAAAAA/////////+AAAAAAAAAAB//3/4AAAAAAAAAAA + H/////////gAAIAAAAAAAP/8//gAAAAAAAAAAA/////////4AAAAAAAAAAD//v/8AAAAAAAAAAAH//// + ////+AAAAAAAAAAA/////gAAAAAAAAAAA/////////gAAAAAAAAAAP////8AAAAAAAAAAAD////////4 + AAAAAAAAAAD/////gAAAAAAAAAAAf///////+AAAAAAAAAAA/////4AAAAAAAAAAAH////////gAAIAA + AAAAAH/////gAAAAAAAAAAAf///////4AAAAAAAAAAD/////4AAAAAAAAAAAB///////+AAAAAAAAAAB + //////gAAAAAAAAAAAP///////gAAAAAAAAAAP/////8AAAAAAAAAAAD///////4AAAAAAAAAAH///// + /gAAAAAAAAAAAP//////+AAAgAAAAAAB//////+AAAAAAAAAAAD///////gAAIAAAAAAAP//////AAAA + AAAAAAAAf//////4AACAAAAAAAD//////8AAAAAAAAAAAB//////+AAAAAAAAAAA///////wAAAAAAAA + AAAf//////gAAAAAAAAAAH///////AAAAAAAAAAAD//8///4AACAAAAAAAD///////4AAAAAAAAAAAP/ + /n//+AAAgAAAAAAA///////+AAAAAAAAAAAB//8///gAAAAAAAAAAf///////wAAAAAAAAAAAP//3//4 + AAAAAAAAAAH///////8AAAAAAAAAAAA//8f/+AAAAAAAAAAB////////4AAAAAAAAAAAP//j//gAAAAA + AAAAAP////////AAAAAAAAAAAB//8f/4AAAAAAAAAAD////////wAAAAAAAAAAAH//j/+AAAAAAAAAAA + ////////+AAAAAAAAAAAA//8f/gAAAAAAAAAAP////////wAAAAAAAAAAAH//j/4AAAAAAAAAAD///// + ///8AAAAAAAAAAAB////+AAAAAAAAAAA/////////4AAAAAAAAAAAP////gAAAAAAAAAAH/////////g + AAAAAAAAAAB////4AAAAAAAAAAD/////////4AAAAAAAAAAAP///+AAAAAAAAAAAf/////////AAAAAA + AAAAAB////gAAAAAAAAAAP/////////4AAAAAAAAAAAf///4AAAAAAAAAAD//////////AAAAAAAAAAA + D///+AAAAAAAAAAA//////////wAAAAAAAAAAAf///gAAAAAAAAAAP/////////+AAAAAAAAAAAD///4 + AAAAAAAAAAB//////////wAAAAAAAAAAAv//+AAAAAAAAAAA///////////AAAAAAAAAAAD///gAAAAA + AAAAAP//////////wAAAAAAAAAAAf//4AAAAAAAAAAD///////////AAAAAAAAAAAD//+AAAAAAAAAAA + ///////////4AAAAAAAAAAAf//gAAAAAAAAAAP///////////AAAAAAAAAAAD//4AAAAAAAAAAD///// + //////4AAAAAAAAAAAP/+AAAAAAAAAAA///////////+AAAAAAAAAAAD//gAAAAAAAAAAP////////// + /4AAAAAAAAAAAf/4AAAAAAAAAAD///////////+AAAAAAAAAAAD/+AAAAAAAAAAA////////////wAAA + AAAAAAAAf/gAAAAAAAAAAP////////////AAAAAAAAAAAD/4AAAAAAAAAAD////////////4AAAAAAAA + AAA/+AAAAAAAAAAA////////////+gAAAAAAAAAAD/gAAAAAAAAAAP////////////4AAAAAAAAAAA/4 + AACAAAAAAAD/////////////gAAAAAAAAAAD+AAAAAAAAAAAf////////////4AAAAAAAAAAAfgAAIAA + AAAAAH/////////////gAAAAAAAAAAD4AACAAAAAAAB/////////////4AAAAAAAAAAA+AAAwAAAAAAA + f/////////////gAAAAAAAAAADgAAOAAAAAAAH/////////////8AAAAAAAAAAA4AAD4AAAgAAB///// + /////////gAAAAAAAAAACAAA/gAAMAAAf/////////////4AAAAAAAAAAAAAAP4AABgAAP////////// + ////AAAAAAAAAAAAAAD/gAAYAAB//////////////4AAAAAAAAAAAAAA/+AADgAA///////////////A + AAAAAAAAAAAAAP/wAB8AAH//////////////wAAAAAAAAAAAAAD/+AAf4AD///////////////gAAAAA + AAAAOAAA//gAH/AAf///////////////2AA54AAG//gAAP/8AB/wAH/////////////////////7///4 + AAD//wAP8AA/////////////////////////+AAA//+AH/gAf/////////////////////////gAAP// + gB/8AH/////////////////////////4AAD//4Af////////////////////////////+AAA + + + \ No newline at end of file diff --git a/Sources/Forms/ConverterForm.Designer.cs b/Sources/Forms/ConverterForm.Designer.cs new file mode 100644 index 0000000..9e0c3d1 --- /dev/null +++ b/Sources/Forms/ConverterForm.Designer.cs @@ -0,0 +1,596 @@ +namespace VoxCharger +{ + partial class ConverterForm + { + /// + /// 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() + { + this.LevelGroupBox = new System.Windows.Forms.GroupBox(); + this.InfEditButton = new System.Windows.Forms.Button(); + this.ExhEditButton = new System.Windows.Forms.Button(); + this.AdvEditButton = new System.Windows.Forms.Button(); + this.NovEditButton = new System.Windows.Forms.Button(); + this.JacketInfPictureBox = new System.Windows.Forms.PictureBox(); + this.JacketExhPictureBox = new System.Windows.Forms.PictureBox(); + this.JacketAdvPictureBox = new System.Windows.Forms.PictureBox(); + this.JacketNovPictureBox = new System.Windows.Forms.PictureBox(); + this.PathTextBox = new System.Windows.Forms.TextBox(); + this.OptionsGroupBox = new System.Windows.Forms.GroupBox(); + this.SlamImpactCheckBox = new System.Windows.Forms.CheckBox(); + this.VersionDropDown = new System.Windows.Forms.ComboBox(); + this.InfVerDropDown = new System.Windows.Forms.ComboBox(); + this.BackgroundDropDown = new System.Windows.Forms.ComboBox(); + this.BackgroundLabel = new System.Windows.Forms.Label(); + this.RealignOffsetCheckBox = new System.Windows.Forms.CheckBox(); + this.AsciiAutoCheckBox = new System.Windows.Forms.CheckBox(); + this.InfVerLabel = new System.Windows.Forms.Label(); + this.CameraCheckBox = new System.Windows.Forms.CheckBox(); + this.TrackButtonCheckBox = new System.Windows.Forms.CheckBox(); + this.TrackLaserCheckBox = new System.Windows.Forms.CheckBox(); + this.TrackLabel = new System.Windows.Forms.Label(); + this.EffectsLabel = new System.Windows.Forms.Label(); + this.MeasureLabel = new System.Windows.Forms.Label(); + this.AsciiTextBox = new System.Windows.Forms.TextBox(); + this.LongFxCheckBox = new System.Windows.Forms.CheckBox(); + this.ChipFxCheckBox = new System.Windows.Forms.CheckBox(); + this.MusicCodeLabel = new System.Windows.Forms.Label(); + this.CancelConvertButton = new System.Windows.Forms.Button(); + this.ProcessConvertButton = new System.Windows.Forms.Button(); + this.TargetLabel = new System.Windows.Forms.Label(); + this.LevelGroupBox.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.JacketInfPictureBox)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.JacketExhPictureBox)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.JacketAdvPictureBox)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.JacketNovPictureBox)).BeginInit(); + this.OptionsGroupBox.SuspendLayout(); + this.SuspendLayout(); + // + // LevelGroupBox + // + this.LevelGroupBox.Controls.Add(this.InfEditButton); + this.LevelGroupBox.Controls.Add(this.ExhEditButton); + this.LevelGroupBox.Controls.Add(this.AdvEditButton); + this.LevelGroupBox.Controls.Add(this.NovEditButton); + this.LevelGroupBox.Controls.Add(this.JacketInfPictureBox); + this.LevelGroupBox.Controls.Add(this.JacketExhPictureBox); + this.LevelGroupBox.Controls.Add(this.JacketAdvPictureBox); + this.LevelGroupBox.Controls.Add(this.JacketNovPictureBox); + this.LevelGroupBox.Location = new System.Drawing.Point(12, 44); + this.LevelGroupBox.Name = "LevelGroupBox"; + this.LevelGroupBox.Size = new System.Drawing.Size(447, 165); + this.LevelGroupBox.TabIndex = 15; + this.LevelGroupBox.TabStop = false; + this.LevelGroupBox.Text = "Levels"; + // + // InfEditButton + // + this.InfEditButton.Location = new System.Drawing.Point(331, 133); + this.InfEditButton.Name = "InfEditButton"; + this.InfEditButton.Size = new System.Drawing.Size(108, 26); + this.InfEditButton.TabIndex = 18; + this.InfEditButton.Tag = "4"; + this.InfEditButton.Text = "--"; + this.InfEditButton.UseVisualStyleBackColor = true; + this.InfEditButton.Click += new System.EventHandler(this.OnLevelEditButtonClick); + // + // ExhEditButton + // + this.ExhEditButton.Location = new System.Drawing.Point(223, 133); + this.ExhEditButton.Name = "ExhEditButton"; + this.ExhEditButton.Size = new System.Drawing.Size(108, 26); + this.ExhEditButton.TabIndex = 17; + this.ExhEditButton.Tag = "3"; + this.ExhEditButton.Text = "EXH"; + this.ExhEditButton.UseVisualStyleBackColor = true; + this.ExhEditButton.Click += new System.EventHandler(this.OnLevelEditButtonClick); + // + // AdvEditButton + // + this.AdvEditButton.Location = new System.Drawing.Point(115, 133); + this.AdvEditButton.Name = "AdvEditButton"; + this.AdvEditButton.Size = new System.Drawing.Size(108, 26); + this.AdvEditButton.TabIndex = 16; + this.AdvEditButton.Tag = "2"; + this.AdvEditButton.Text = "ADV"; + this.AdvEditButton.UseVisualStyleBackColor = true; + this.AdvEditButton.Click += new System.EventHandler(this.OnLevelEditButtonClick); + // + // NovEditButton + // + this.NovEditButton.Location = new System.Drawing.Point(7, 133); + this.NovEditButton.Name = "NovEditButton"; + this.NovEditButton.Size = new System.Drawing.Size(108, 26); + this.NovEditButton.TabIndex = 15; + this.NovEditButton.Tag = "1"; + this.NovEditButton.Text = "NOV"; + this.NovEditButton.UseVisualStyleBackColor = true; + this.NovEditButton.Click += new System.EventHandler(this.OnLevelEditButtonClick); + // + // JacketInfPictureBox + // + this.JacketInfPictureBox.Image = global::VoxCharger.Properties.Resources.jk_dummy_s; + this.JacketInfPictureBox.Location = new System.Drawing.Point(331, 19); + this.JacketInfPictureBox.Name = "JacketInfPictureBox"; + this.JacketInfPictureBox.Size = new System.Drawing.Size(108, 108); + this.JacketInfPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.JacketInfPictureBox.TabIndex = 6; + this.JacketInfPictureBox.TabStop = false; + this.JacketInfPictureBox.Tag = "4"; + // + // JacketExhPictureBox + // + this.JacketExhPictureBox.Image = global::VoxCharger.Properties.Resources.jk_dummy_s; + this.JacketExhPictureBox.Location = new System.Drawing.Point(223, 19); + this.JacketExhPictureBox.Name = "JacketExhPictureBox"; + this.JacketExhPictureBox.Size = new System.Drawing.Size(108, 108); + this.JacketExhPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.JacketExhPictureBox.TabIndex = 29; + this.JacketExhPictureBox.TabStop = false; + this.JacketExhPictureBox.Tag = "3"; + // + // JacketAdvPictureBox + // + this.JacketAdvPictureBox.Image = global::VoxCharger.Properties.Resources.jk_dummy_s; + this.JacketAdvPictureBox.Location = new System.Drawing.Point(115, 19); + this.JacketAdvPictureBox.Name = "JacketAdvPictureBox"; + this.JacketAdvPictureBox.Size = new System.Drawing.Size(108, 108); + this.JacketAdvPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.JacketAdvPictureBox.TabIndex = 1; + this.JacketAdvPictureBox.TabStop = false; + this.JacketAdvPictureBox.Tag = "2"; + // + // JacketNovPictureBox + // + this.JacketNovPictureBox.Image = global::VoxCharger.Properties.Resources.jk_dummy_s; + this.JacketNovPictureBox.Location = new System.Drawing.Point(7, 19); + this.JacketNovPictureBox.Name = "JacketNovPictureBox"; + this.JacketNovPictureBox.Size = new System.Drawing.Size(108, 108); + this.JacketNovPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.JacketNovPictureBox.TabIndex = 0; + this.JacketNovPictureBox.TabStop = false; + this.JacketNovPictureBox.Tag = "1"; + // + // PathTextBox + // + this.PathTextBox.Location = new System.Drawing.Point(50, 17); + this.PathTextBox.Name = "PathTextBox"; + this.PathTextBox.ReadOnly = true; + this.PathTextBox.Size = new System.Drawing.Size(409, 20); + this.PathTextBox.TabIndex = 16; + // + // OptionsGroupBox + // + this.OptionsGroupBox.Controls.Add(this.SlamImpactCheckBox); + this.OptionsGroupBox.Controls.Add(this.VersionDropDown); + this.OptionsGroupBox.Controls.Add(this.InfVerDropDown); + this.OptionsGroupBox.Controls.Add(this.BackgroundDropDown); + this.OptionsGroupBox.Controls.Add(this.BackgroundLabel); + this.OptionsGroupBox.Controls.Add(this.RealignOffsetCheckBox); + this.OptionsGroupBox.Controls.Add(this.AsciiAutoCheckBox); + this.OptionsGroupBox.Controls.Add(this.InfVerLabel); + this.OptionsGroupBox.Controls.Add(this.CameraCheckBox); + this.OptionsGroupBox.Controls.Add(this.TrackButtonCheckBox); + this.OptionsGroupBox.Controls.Add(this.TrackLaserCheckBox); + this.OptionsGroupBox.Controls.Add(this.TrackLabel); + this.OptionsGroupBox.Controls.Add(this.EffectsLabel); + this.OptionsGroupBox.Controls.Add(this.MeasureLabel); + this.OptionsGroupBox.Controls.Add(this.AsciiTextBox); + this.OptionsGroupBox.Controls.Add(this.LongFxCheckBox); + this.OptionsGroupBox.Controls.Add(this.ChipFxCheckBox); + this.OptionsGroupBox.Controls.Add(this.MusicCodeLabel); + this.OptionsGroupBox.Location = new System.Drawing.Point(12, 215); + this.OptionsGroupBox.Name = "OptionsGroupBox"; + this.OptionsGroupBox.Size = new System.Drawing.Size(447, 170); + this.OptionsGroupBox.TabIndex = 1; + this.OptionsGroupBox.TabStop = false; + this.OptionsGroupBox.Text = "Options"; + // + // SlamImpactCheckBox + // + this.SlamImpactCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.SlamImpactCheckBox.AutoSize = true; + this.SlamImpactCheckBox.Checked = true; + this.SlamImpactCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.SlamImpactCheckBox.Location = new System.Drawing.Point(293, 114); + this.SlamImpactCheckBox.Name = "SlamImpactCheckBox"; + this.SlamImpactCheckBox.Size = new System.Drawing.Size(84, 17); + this.SlamImpactCheckBox.TabIndex = 20; + this.SlamImpactCheckBox.Text = "Slam Impact"; + this.SlamImpactCheckBox.UseVisualStyleBackColor = true; + // + // VersionDropDown + // + this.VersionDropDown.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.VersionDropDown.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.VersionDropDown.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.VersionDropDown.FormattingEnabled = true; + this.VersionDropDown.Items.AddRange(new object[] { + "Sound Voltex: Booth", + "Sound Voltex II: Infinite Infection", + "Sound Voltex III: Gravity Wars", + "Sound Voltex IV: Heavenly Haven", + "Sound Voltex V: VividWave"}); + this.VersionDropDown.Location = new System.Drawing.Point(90, 42); + this.VersionDropDown.Name = "VersionDropDown"; + this.VersionDropDown.Size = new System.Drawing.Size(247, 21); + this.VersionDropDown.TabIndex = 19; + // + // InfVerDropDown + // + this.InfVerDropDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.InfVerDropDown.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.InfVerDropDown.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.InfVerDropDown.FormattingEnabled = true; + this.InfVerDropDown.Items.AddRange(new object[] { + "MXM", + "INF", + "GRV", + "HVN", + "VVD"}); + this.InfVerDropDown.Location = new System.Drawing.Point(343, 42); + this.InfVerDropDown.Name = "InfVerDropDown"; + this.InfVerDropDown.Size = new System.Drawing.Size(96, 21); + this.InfVerDropDown.TabIndex = 18; + this.InfVerDropDown.SelectedIndexChanged += new System.EventHandler(this.OnInfVerDropDownSelectedIndexChanged); + // + // BackgroundDropDown + // + this.BackgroundDropDown.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.BackgroundDropDown.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.BackgroundDropDown.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.BackgroundDropDown.FormattingEnabled = true; + this.BackgroundDropDown.Items.AddRange(new object[] { + "00", + "01", + "02", + "03", + "04", + "05", + "06", + "07", + "08", + "09", + "10", + "11", + "12", + "13", + "14", + "15", + "16", + "18", + "19", + "27", + "29", + "30", + "31", + "34", + "36", + "38", + "39", + "40", + "41", + "42", + "43", + "44", + "45", + "46", + "47", + "48", + "49", + "50", + "51", + "53", + "54", + "57", + "58", + "59", + "60", + "61", + "63", + "65", + "66", + "67", + "68", + "69", + "70", + "71", + "72", + "73", + "74", + "75", + "76", + "77", + "78", + "79", + "80", + "81"}); + this.BackgroundDropDown.Location = new System.Drawing.Point(90, 65); + this.BackgroundDropDown.Name = "BackgroundDropDown"; + this.BackgroundDropDown.Size = new System.Drawing.Size(349, 21); + this.BackgroundDropDown.TabIndex = 17; + this.BackgroundDropDown.SelectedIndexChanged += new System.EventHandler(this.OnBackgroundDropDownSelectedIndexChanged); + // + // BackgroundLabel + // + this.BackgroundLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.BackgroundLabel.Location = new System.Drawing.Point(10, 65); + this.BackgroundLabel.Name = "BackgroundLabel"; + this.BackgroundLabel.Size = new System.Drawing.Size(74, 20); + this.BackgroundLabel.TabIndex = 16; + this.BackgroundLabel.Text = "Background"; + this.BackgroundLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // RealignOffsetCheckBox + // + this.RealignOffsetCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.RealignOffsetCheckBox.AutoSize = true; + this.RealignOffsetCheckBox.Location = new System.Drawing.Point(90, 91); + this.RealignOffsetCheckBox.Name = "RealignOffsetCheckBox"; + this.RealignOffsetCheckBox.Size = new System.Drawing.Size(141, 17); + this.RealignOffsetCheckBox.TabIndex = 15; + this.RealignOffsetCheckBox.Text = "Adapt Start Music Offset"; + this.RealignOffsetCheckBox.UseVisualStyleBackColor = true; + // + // AsciiAutoCheckBox + // + this.AsciiAutoCheckBox.AutoSize = true; + this.AsciiAutoCheckBox.Checked = true; + this.AsciiAutoCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.AsciiAutoCheckBox.Location = new System.Drawing.Point(391, 23); + this.AsciiAutoCheckBox.Name = "AsciiAutoCheckBox"; + this.AsciiAutoCheckBox.Size = new System.Drawing.Size(48, 17); + this.AsciiAutoCheckBox.TabIndex = 14; + this.AsciiAutoCheckBox.Text = "Auto"; + this.AsciiAutoCheckBox.UseVisualStyleBackColor = true; + this.AsciiAutoCheckBox.CheckedChanged += new System.EventHandler(this.OnAsciiAutoCheckBoxCheckedChanged); + // + // InfVerLabel + // + this.InfVerLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.InfVerLabel.Location = new System.Drawing.Point(10, 42); + this.InfVerLabel.Name = "InfVerLabel"; + this.InfVerLabel.Size = new System.Drawing.Size(74, 20); + this.InfVerLabel.TabIndex = 12; + this.InfVerLabel.Text = "Version"; + this.InfVerLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // CameraCheckBox + // + this.CameraCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.CameraCheckBox.AutoSize = true; + this.CameraCheckBox.Checked = true; + this.CameraCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.CameraCheckBox.Location = new System.Drawing.Point(225, 114); + this.CameraCheckBox.Name = "CameraCheckBox"; + this.CameraCheckBox.Size = new System.Drawing.Size(62, 17); + this.CameraCheckBox.TabIndex = 5; + this.CameraCheckBox.Text = "Camera"; + this.CameraCheckBox.UseVisualStyleBackColor = true; + // + // TrackButtonCheckBox + // + this.TrackButtonCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.TrackButtonCheckBox.AutoSize = true; + this.TrackButtonCheckBox.Checked = true; + this.TrackButtonCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.TrackButtonCheckBox.Location = new System.Drawing.Point(157, 137); + this.TrackButtonCheckBox.Name = "TrackButtonCheckBox"; + this.TrackButtonCheckBox.Size = new System.Drawing.Size(62, 17); + this.TrackButtonCheckBox.TabIndex = 7; + this.TrackButtonCheckBox.Text = "Buttons"; + this.TrackButtonCheckBox.UseVisualStyleBackColor = true; + // + // TrackLaserCheckBox + // + this.TrackLaserCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.TrackLaserCheckBox.AutoSize = true; + this.TrackLaserCheckBox.Checked = true; + this.TrackLaserCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.TrackLaserCheckBox.Location = new System.Drawing.Point(90, 137); + this.TrackLaserCheckBox.Name = "TrackLaserCheckBox"; + this.TrackLaserCheckBox.Size = new System.Drawing.Size(57, 17); + this.TrackLaserCheckBox.TabIndex = 6; + this.TrackLaserCheckBox.Text = "Lasers"; + this.TrackLaserCheckBox.UseVisualStyleBackColor = true; + // + // TrackLabel + // + this.TrackLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.TrackLabel.Location = new System.Drawing.Point(10, 134); + this.TrackLabel.Name = "TrackLabel"; + this.TrackLabel.Size = new System.Drawing.Size(74, 20); + this.TrackLabel.TabIndex = 11; + this.TrackLabel.Text = "Tracks"; + this.TrackLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // EffectsLabel + // + this.EffectsLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.EffectsLabel.Location = new System.Drawing.Point(10, 111); + this.EffectsLabel.Name = "EffectsLabel"; + this.EffectsLabel.Size = new System.Drawing.Size(74, 20); + this.EffectsLabel.TabIndex = 10; + this.EffectsLabel.Text = "Effects"; + this.EffectsLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // MeasureLabel + // + this.MeasureLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.MeasureLabel.Location = new System.Drawing.Point(10, 88); + this.MeasureLabel.Name = "MeasureLabel"; + this.MeasureLabel.Size = new System.Drawing.Size(74, 20); + this.MeasureLabel.TabIndex = 6; + this.MeasureLabel.Text = "Offset"; + this.MeasureLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // AsciiTextBox + // + this.AsciiTextBox.Location = new System.Drawing.Point(90, 20); + this.AsciiTextBox.Name = "AsciiTextBox"; + this.AsciiTextBox.ReadOnly = true; + this.AsciiTextBox.Size = new System.Drawing.Size(295, 20); + this.AsciiTextBox.TabIndex = 0; + // + // LongFxCheckBox + // + this.LongFxCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.LongFxCheckBox.AutoSize = true; + this.LongFxCheckBox.Checked = true; + this.LongFxCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.LongFxCheckBox.Location = new System.Drawing.Point(157, 114); + this.LongFxCheckBox.Name = "LongFxCheckBox"; + this.LongFxCheckBox.Size = new System.Drawing.Size(64, 17); + this.LongFxCheckBox.TabIndex = 4; + this.LongFxCheckBox.Text = "Long Fx"; + this.LongFxCheckBox.UseVisualStyleBackColor = true; + // + // ChipFxCheckBox + // + this.ChipFxCheckBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.ChipFxCheckBox.AutoSize = true; + this.ChipFxCheckBox.Checked = true; + this.ChipFxCheckBox.CheckState = System.Windows.Forms.CheckState.Checked; + this.ChipFxCheckBox.Location = new System.Drawing.Point(90, 114); + this.ChipFxCheckBox.Name = "ChipFxCheckBox"; + this.ChipFxCheckBox.Size = new System.Drawing.Size(61, 17); + this.ChipFxCheckBox.TabIndex = 3; + this.ChipFxCheckBox.Text = "Chip Fx"; + this.ChipFxCheckBox.UseVisualStyleBackColor = true; + // + // MusicCodeLabel + // + this.MusicCodeLabel.Location = new System.Drawing.Point(10, 19); + this.MusicCodeLabel.Name = "MusicCodeLabel"; + this.MusicCodeLabel.Size = new System.Drawing.Size(74, 20); + this.MusicCodeLabel.TabIndex = 0; + this.MusicCodeLabel.Text = "Music Code"; + this.MusicCodeLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // CancelConvertButton + // + this.CancelConvertButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.CancelConvertButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.CancelConvertButton.Location = new System.Drawing.Point(343, 401); + this.CancelConvertButton.Name = "CancelConvertButton"; + this.CancelConvertButton.Size = new System.Drawing.Size(116, 28); + this.CancelConvertButton.TabIndex = 20; + this.CancelConvertButton.Text = "Cancel"; + this.CancelConvertButton.UseVisualStyleBackColor = true; + this.CancelConvertButton.Click += new System.EventHandler(this.OnCancelConvertButtonClick); + // + // ProcessConvertButton + // + this.ProcessConvertButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.ProcessConvertButton.Location = new System.Drawing.Point(221, 401); + this.ProcessConvertButton.Name = "ProcessConvertButton"; + this.ProcessConvertButton.Size = new System.Drawing.Size(116, 28); + this.ProcessConvertButton.TabIndex = 19; + this.ProcessConvertButton.Text = "Continue"; + this.ProcessConvertButton.UseVisualStyleBackColor = true; + this.ProcessConvertButton.Click += new System.EventHandler(this.OnProcessConvertButtonClick); + // + // TargetLabel + // + this.TargetLabel.AutoSize = true; + this.TargetLabel.Location = new System.Drawing.Point(9, 20); + this.TargetLabel.Name = "TargetLabel"; + this.TargetLabel.Size = new System.Drawing.Size(38, 13); + this.TargetLabel.TabIndex = 21; + this.TargetLabel.Text = "Target"; + this.TargetLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // ConverterForm + // + this.AcceptButton = this.ProcessConvertButton; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.CancelButton = this.CancelConvertButton; + this.ClientSize = new System.Drawing.Size(471, 441); + this.Controls.Add(this.TargetLabel); + this.Controls.Add(this.CancelConvertButton); + this.Controls.Add(this.ProcessConvertButton); + this.Controls.Add(this.OptionsGroupBox); + this.Controls.Add(this.PathTextBox); + this.Controls.Add(this.LevelGroupBox); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.HelpButton = true; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "ConverterForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "Add Music"; + this.HelpButtonClicked += new System.ComponentModel.CancelEventHandler(this.OnHelpButtonClicked); + this.Load += new System.EventHandler(this.OnConverterFormLoad); + this.LevelGroupBox.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.JacketInfPictureBox)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.JacketExhPictureBox)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.JacketAdvPictureBox)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.JacketNovPictureBox)).EndInit(); + this.OptionsGroupBox.ResumeLayout(false); + this.OptionsGroupBox.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.GroupBox LevelGroupBox; + private System.Windows.Forms.Button InfEditButton; + private System.Windows.Forms.Button ExhEditButton; + private System.Windows.Forms.Button AdvEditButton; + private System.Windows.Forms.Button NovEditButton; + private System.Windows.Forms.PictureBox JacketInfPictureBox; + private System.Windows.Forms.PictureBox JacketExhPictureBox; + private System.Windows.Forms.PictureBox JacketAdvPictureBox; + private System.Windows.Forms.PictureBox JacketNovPictureBox; + private System.Windows.Forms.TextBox PathTextBox; + private System.Windows.Forms.GroupBox OptionsGroupBox; + private System.Windows.Forms.CheckBox LongFxCheckBox; + private System.Windows.Forms.CheckBox ChipFxCheckBox; + private System.Windows.Forms.Label MusicCodeLabel; + private System.Windows.Forms.Label MeasureLabel; + private System.Windows.Forms.TextBox AsciiTextBox; + private System.Windows.Forms.CheckBox CameraCheckBox; + private System.Windows.Forms.CheckBox TrackButtonCheckBox; + private System.Windows.Forms.CheckBox TrackLaserCheckBox; + private System.Windows.Forms.Label TrackLabel; + private System.Windows.Forms.Label EffectsLabel; + private System.Windows.Forms.Label InfVerLabel; + private System.Windows.Forms.CheckBox AsciiAutoCheckBox; + private System.Windows.Forms.Button CancelConvertButton; + private System.Windows.Forms.Button ProcessConvertButton; + private System.Windows.Forms.CheckBox RealignOffsetCheckBox; + private System.Windows.Forms.Label BackgroundLabel; + private System.Windows.Forms.ComboBox BackgroundDropDown; + private System.Windows.Forms.ComboBox InfVerDropDown; + private System.Windows.Forms.ComboBox VersionDropDown; + private System.Windows.Forms.Label TargetLabel; + private System.Windows.Forms.CheckBox SlamImpactCheckBox; + } +} \ No newline at end of file diff --git a/Sources/Forms/ConverterForm.cs b/Sources/Forms/ConverterForm.cs new file mode 100644 index 0000000..6f4683e --- /dev/null +++ b/Sources/Forms/ConverterForm.cs @@ -0,0 +1,698 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.IO; +using System.Windows.Forms; +using System.Diagnostics; + +namespace VoxCharger +{ + public partial class ConverterForm : Form + { + private class ChartInfo + { + public Ksh Source { get; set; } + public VoxLevelHeader Header { get; set; } + public string FileName { get; set; } + public string MusicFileName { get; set; } + public string JacketFileName { get; set; } + + public ChartInfo(Ksh source, VoxLevelHeader header, string fileName) + { + Source = source; + Header = header; + FileName = fileName; + } + } + + private readonly Image DummyJacket = VoxCharger.Properties.Resources.jk_dummy_s; + public static string LastBackground { get; private set; } = "63"; + + private string target; + private string defaultAscii; + private bool converter; + private Dictionary charts = new Dictionary(); + + public VoxHeader Header { get; private set; } = null; + public Action Action { get; private set; } = null; + + public ConverterForm(string path, bool asConverter = false) + { + InitializeComponent(); + + target = path; + converter = asConverter; + if (asConverter) + { + MusicCodeLabel.Visible = false; + InfVerLabel.Visible = false; + BackgroundLabel.Visible = false; + LevelGroupBox.Enabled = LevelGroupBox.Visible = false; + AsciiTextBox.Enabled = AsciiTextBox.Visible = false; + AsciiAutoCheckBox.Enabled = AsciiAutoCheckBox.Visible = false; + VersionDropDown.Enabled = VersionDropDown.Visible = false; + InfVerDropDown.Enabled = InfVerDropDown.Visible = false; + BackgroundDropDown.Enabled = BackgroundDropDown.Visible = false; + + int componentHeight = AsciiTextBox.Height + VersionDropDown.Height + BackgroundDropDown.Height; + OptionsGroupBox.Location = LevelGroupBox.Location; + OptionsGroupBox.Height -= componentHeight; + Height -= LevelGroupBox.Height + componentHeight; + + ProcessConvertButton.Text = "Convert"; + } + else + ProcessConvertButton.Text = "Add"; + + PathTextBox.Text = target; + } + + private void OnConverterFormLoad(object sender, EventArgs e) + { + var main = new Ksh(); + if (converter) + return; + + try + { + main.Parse(target); + + Header = ToHeader(main); + Header.Ascii = new DirectoryInfo(Path.GetDirectoryName(target)).Name; + defaultAscii = AsciiTextBox.Text = Header.Ascii; + + for (int i = 1; Directory.Exists(AssetManager.GetMusicPath(Header)); i++) + { + if (i >= 100) + break; // seriously? stupid input get stupid output + + Header.Ascii = $"{defaultAscii}{i:D2}"; + } + + defaultAscii = AsciiTextBox.Text = Header.Ascii; + BackgroundDropDown.SelectedItem = LastBackground; + VersionDropDown.SelectedIndex = 4; + InfVerDropDown.SelectedIndex = 0; + + charts[main.Difficulty] = new ChartInfo(main, ToLevelHeader(main), target); + LoadJacket(charts[main.Difficulty]); + } + catch (Exception ex) + { + MessageBox.Show( + $"Failed to load ksh chart.\n{ex.Message}", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + + CancelButton.PerformClick(); + } + + // Try to locate another difficulty + string dir = Path.GetDirectoryName(target); + foreach (string fn in Directory.GetFiles(dir, "*.ksh")) + { + try + { + var chart = new Ksh(); + chart.Parse(fn); + + // Different chart + if (chart.Title != main.Title) + continue; + + charts[chart.Difficulty] = new ChartInfo(chart, ToLevelHeader(chart), fn); + } + catch (Exception ex) + { + Debug.WriteLine("Failed attempt to parse ksh file: {0} ({1})", fn, ex.Message); + } + } + + UpdateUI(); + } + + private void OnAsciiAutoCheckBoxCheckedChanged(object sender, EventArgs e) + { + AsciiTextBox.ReadOnly = AsciiAutoCheckBox.Checked; + if (AsciiTextBox.ReadOnly) + AsciiTextBox.Text = defaultAscii; + } + + private void OnBackgroundDropDownSelectedIndexChanged(object sender, EventArgs e) + { + LastBackground = BackgroundDropDown.SelectedItem.ToString(); + } + + private void OnInfVerDropDownSelectedIndexChanged(object sender, EventArgs e) + { + if (!charts.ContainsKey(Difficulty.Infinite)) + InfEditButton.Text = "--"; + else + InfEditButton.Text = InfVerDropDown.SelectedItem.ToString(); + } + + private void OnLevelEditButtonClick(object sender, EventArgs e) + { + using (var browser = new OpenFileDialog()) + { + browser.Filter = "KShoot Mania Chart|*.ksh"; + browser.CheckFileExists = true; + + if (browser.ShowDialog() != DialogResult.OK) + return; + + var control = (Button)sender; + if (!Enum.TryParse(control.Tag.ToString(), out Difficulty diff)) + return; + + try + { + var chart = new Ksh(); + chart.Parse(browser.FileName); + chart.Difficulty = diff; // make sure to replace diff + + charts[diff] = new ChartInfo(chart, ToLevelHeader(chart), browser.FileName); + UpdateUI(); + } + catch (Exception ex) + { + MessageBox.Show( + $"Failed to load ksh chart.\n{ex.Message}", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + } + } + } + + private void OnHelpButtonClicked(object sender, CancelEventArgs e) + { + e.Cancel = true; + using (var help = new HelpForm()) + help.ShowDialog(); + } + + private void OnCancelConvertButtonClick(object sender, EventArgs e) + { + DialogResult = DialogResult.Cancel; + Close(); + } + + private void OnProcessConvertButtonClick(object sender, EventArgs e) + { + bool warned = false; + var options = new Ksh.ParseOption() + { + RealignOffset = RealignOffsetCheckBox.Checked, + EnableChipFx = ChipFxCheckBox.Checked, + EnableLongFx = LongFxCheckBox.Checked, + EnableCamera = CameraCheckBox.Checked, + EnableSlamImpact = SlamImpactCheckBox.Checked, + EnableLaserTrack = TrackLaserCheckBox.Checked, + EnableButtonTrack = TrackButtonCheckBox.Checked + }; + + // Act as converter + if (converter) + { + try + { + if (File.Exists(target) || Directory.Exists(target)) + { + if (File.Exists(target)) + SingleConvert(options); + else if (Directory.Exists(target)) + BulkConvert(options); + } + else + { + MessageBox.Show( + "Target path not found", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + + Close(); + } + } + catch (Exception ex) + { + MessageBox.Show( + $"Failed to convert ksh chart.\n{ex.Message}", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + } + + return; + } + + // Again, stupid input get stupid output + foreach (var header in AssetManager.Headers) + { + if (Header.Ascii == header.Ascii) + { + MessageBox.Show( + $"Music Code is already exists.\n{AssetManager.GetMusicPath(header)}", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + + return; + } + } + + // Assign metadata + Header.Ascii = AsciiTextBox.Text; + Header.BackgroundId = short.Parse((BackgroundDropDown.SelectedItem ?? "0").ToString().Split(' ')[0]); + Header.Version = (GameVersion)(VersionDropDown.SelectedIndex + 1); + Header.InfVersion = InfVerDropDown.SelectedIndex == 0 ? InfiniteVersion.MXM : (InfiniteVersion)(InfVerDropDown.SelectedIndex + 1); + Header.GenreId = 16; + Header.Levels = new Dictionary(); + + // Again, stupid input get stupid output + if (Directory.Exists(AssetManager.GetMusicPath(Header))) + { + MessageBox.Show( + $"Music asset for {Header.CodeName} is already exists.", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + + return; + } + + // Uhh, remove empty level? + var entries = charts.Where(x => x.Value != null); + charts = new Dictionary(); + foreach (var entry in entries) + charts[entry.Key] = entry.Value; + + // Assign level info and charts + foreach (var chart in charts) + { + var info = chart.Value; + if (!File.Exists(info.FileName)) + { + MessageBox.Show( + $"Chart file was moved or deleted\n{info.FileName}", + "Error", + MessageBoxButtons.OK, + MessageBoxIcon.Error + ); + + charts[chart.Key] = null; + UpdateUI(); + + return; + } + + // If you happen to read the source, this is probably what you're looking for + var ksh = new Ksh(); + ksh.Parse(info.FileName, options); + + var bpmCount = ksh.Events.Count(ev => ev is Event.BPM); + if (!warned && bpmCount > 1 && ksh.MusicOffset % 48 != 0 && options.RealignOffset) + { + // You've been warned! + var prompt = MessageBox.Show( + "Chart contains multiple bpm with music offset that non multiple of 48.\n" + + "Adapting music offset could break the chart.\n\n" + + "Do you want to continue?", + "Warning", + MessageBoxButtons.YesNo, + MessageBoxIcon.Warning + ); + + warned = true; + if (prompt == DialogResult.No) + return; + } + + var vox = new VoxChart(); + vox.Import(ksh); + + var level = ToLevelHeader(ksh); + level.Chart = vox; + + info.Source = ksh; + Header.Levels[chart.Key] = charts[chart.Key].Header = level; + } + + // Prevent resource files being moved or deleted, copy them into temporary storage + string musicFile = string.Empty; + string tmpFile = string.Empty; + foreach (var chart in charts) + { + var info = chart.Value; + + // Make sure to reuse 2dx file for music that share same file + if (string.IsNullOrEmpty(musicFile) || chart.Value.MusicFileName != musicFile) + { + string music = Path.Combine(Path.GetDirectoryName(info.FileName), info.Source.MusicFileName); + if (File.Exists(music)) + { + string tmp = Path.Combine( + Path.GetTempPath(), + $"{Path.GetRandomFileName()}{new FileInfo(info.Source.MusicFileName).Extension}" + ); + + musicFile = music; + info.MusicFileName = tmpFile = tmp; + + File.Copy(music, tmp); + } + else + info.MusicFileName = string.Empty; + } + else + info.MusicFileName = tmpFile; + + string jacket = Path.Combine(Path.GetDirectoryName(info.FileName), info.Source.JacketFileName); + if (File.Exists(jacket)) + { + string tmp = Path.Combine( + Path.GetTempPath(), + $"{Path.GetRandomFileName()}{new FileInfo(info.Source.JacketFileName).Extension}" + ); + + try + { + using (var image = Image.FromFile(jacket)) + info.Header.Jacket = new Bitmap(image); + } + catch (Exception) + { + info.Header.Jacket = null; + } + + info.JacketFileName = tmp; + File.Copy(jacket, tmp); + } + } + + Action = new Action(() => + { + bool unique = false; + musicFile = charts.Values.First().MusicFileName; + foreach (var chart in charts) + { + if (chart.Value.MusicFileName != musicFile) + { + unique = true; + break; + } + } + + // Import all music assets + AssetManager.ImportVox(Header); + + // Make sure to use single asset for music for shared music file + if (!unique) + { + AssetManager.Import2DX(musicFile, Header); + AssetManager.Import2DX(musicFile, Header, true); + } + + foreach (var chart in charts.Values) + { + if (unique && File.Exists(chart.MusicFileName)) + { + AssetManager.Import2DX(chart.MusicFileName, Header, chart.Header.Difficulty); + AssetManager.Import2DX(chart.MusicFileName, Header, chart.Header.Difficulty, true); + } + + if (File.Exists(chart.JacketFileName)) + { + using (var image = Image.FromFile(chart.JacketFileName)) + AssetManager.ImportJacket(Header, chart.Header.Difficulty, new Bitmap(image)); + } + } + }); + + DialogResult = DialogResult.OK; + Close(); + } + + private VoxHeader ToHeader(Ksh chart) + { + return new VoxHeader() + { + ID = AssetManager.Headers.LastID + 1, + Title = chart.Title, + Artist = chart.Artist, + BpmMin = chart.BpmMin, + BpmMax = chart.BpmMax, + Volume = chart.Volume > 0 ? (short)chart.Volume : (short)91, + DistributionDate = DateTime.Now, + BackgroundId = 63, + GenreId = 16, + }; + } + + private VoxLevelHeader ToLevelHeader(Ksh chart) + { + return new VoxLevelHeader + { + Difficulty = chart.Difficulty, + Illustrator = chart.Illustrator, + Effector = chart.Effector, + Level = chart.Level + }; + } + + private void LoadJacket(ChartInfo info) + { + var chart = info.Source; + if (chart == null) + return; + + PictureBox pictureBox = null; + string tag = ((int)chart.Difficulty).ToString(); + foreach (var control in LevelGroupBox.Controls) + { + if (control is PictureBox p && p.Tag.ToString() == tag) + { + pictureBox = p; + break; + } + } + + if (pictureBox == null) + return; + + string filename = Path.Combine(Path.GetDirectoryName(info.FileName), chart.JacketFileName); + if (!File.Exists(filename)) + { + pictureBox.Image = DummyJacket; + return; + } + + try + { + using (var image = Image.FromFile(filename)) + pictureBox.Image = new Bitmap(image); + } + catch (Exception ex) + { + pictureBox.Image = DummyJacket; + Debug.WriteLine("Failed load ksh jacket: {0} ({1})", filename, ex.Message); + } + } + + private void UpdateUI() + { + var buttons = new List