diff options
author | Elie Rodrigue <elie.rodrigue@nubik.ca> | 2017-05-09 16:44:53 +0300 |
---|---|---|
committer | Elie Rodrigue <elie.rodrigue@nubik.ca> | 2017-05-09 16:44:53 +0300 |
commit | 7e13b4c8f0aa672b8f859585d8a5b966559f97eb (patch) | |
tree | 95551a8b9faa40d12a48948c406e1138a43afaa0 | |
parent | 6e84fd6f7d834044943fc80d8bc9fe3a44c9398e (diff) |
Basic game manager implantation, still a WIP
-rw-r--r-- | Apps/AppTypeCollection.cs | 342 | ||||
-rw-r--r-- | Apps/NesMiniApplication.cs | 1131 | ||||
-rw-r--r-- | FoldersManagerForm.cs | 1938 | ||||
-rw-r--r-- | MainForm.Designer.cs | 2281 | ||||
-rw-r--r-- | MainForm.cs | 2907 | ||||
-rw-r--r-- | MainForm.resx | 6412 | ||||
-rw-r--r-- | Manager/GameManager.cs | 205 | ||||
-rw-r--r-- | NesDefaultGame.cs | 71 | ||||
-rw-r--r-- | hakchi_gui.csproj | 3374 |
9 files changed, 9210 insertions, 9451 deletions
diff --git a/Apps/AppTypeCollection.cs b/Apps/AppTypeCollection.cs index 79061fa3..c590b1d9 100644 --- a/Apps/AppTypeCollection.cs +++ b/Apps/AppTypeCollection.cs @@ -1,156 +1,186 @@ -using com.clusterrr.hakchi_gui.Properties;
-using System;
-using System.Collections.Generic;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-
-namespace com.clusterrr.hakchi_gui
-{
- static class AppTypeCollection
- {
- //public delegate NesMiniApplication
-
- public class AppInfo
- {
- public Type Class;
- public string[] Extensions;
- public string[] DefaultApps;
- public char Prefix;
- public Image DefaultCover;
- }
-
- public static AppInfo[] ApplicationTypes = new AppInfo[]
- {
- new AppInfo
- {
- Class = typeof(FdsGame),
- Extensions = new string[] {".fds"},
- DefaultApps = new string[] {},
- Prefix = 'D',
- DefaultCover = Resources.blank_fds
- },
- new AppInfo
- {
- Class = typeof(NesUGame),
- Extensions = new string[] {".nes", ".unf", ".unif"},
- DefaultApps = new string[] {"/bin/nes"},
- Prefix = 'I',
- DefaultCover = Resources.blank_jp
- },
- new AppInfo
- {
- Class = typeof(SnesGame),
- Extensions = new string[] { ".sfc", ".smc" },
- DefaultApps = new string[] {"/bin/snes"},
- Prefix = 'U',
- DefaultCover = Resources.blank_snes_us
- },
- new AppInfo
- {
- Class = typeof(N64Game),
- Extensions = new string[] { ".n64", ".z64", ".v64" },
- DefaultApps = new string[] {"/bin/n64"},
- Prefix = '6',
- DefaultCover = Resources.blank_n64
- },
- new AppInfo
- {
- Class = typeof(SmsGame),
- Extensions = new string[] { ".sms" },
- DefaultApps = new string[] {"/bin/sms"},
- Prefix = 'M',
- DefaultCover = Resources.blank_sms
- },
- new AppInfo
- {
- Class = typeof(GenesisGame),
- Extensions = new string[] { ".gen", ".md", ".smd" },
- DefaultApps = new string[] {"/bin/md"},
- Prefix = 'G',
- DefaultCover = Resources.blank_genesis
- },
- new AppInfo
- {
- Class = typeof(Sega32XGame),
- Extensions = new string[] { ".32x" },
- DefaultApps = new string[] {"/bin/32x"},
- Prefix = '3',
- DefaultCover = Resources.blank_32x
- },
- new AppInfo
- {
- Class = typeof(GbGame),
- Extensions = new string[] { ".gb" },
- DefaultApps = new string[] {"/bin/gb"},
- Prefix = 'B',
- DefaultCover = Resources.blank_gb
- },
- new AppInfo
- {
- Class = typeof(GbcGame),
- Extensions = new string[] {".gbc"},
- DefaultApps = new string[] {"/bin/gbc"},
- Prefix = 'C',
- DefaultCover = Resources.blank_gbc
- },
- new AppInfo
- {
- Class = typeof(GbaGame),
- Extensions = new string[] {".gba"},
- DefaultApps = new string[] {"/bin/gba"},
- Prefix = 'A',
- DefaultCover = Resources.blank_gba
- },
- new AppInfo
- {
- Class = typeof(PceGame),
- Extensions = new string[] {".pce"},
- DefaultApps = new string[] {"/bin/pce"},
- Prefix = 'E',
- DefaultCover = Resources.blank_pce
- },
- new AppInfo
- {
- Class = typeof(GameGearGame),
- Extensions = new string[] {".gg"},
- DefaultApps = new string[] {"/bin/gg"},
- Prefix = 'R',
- DefaultCover = Resources.blank_gg
- },
- new AppInfo
- {
- Class = typeof(GameGearGame),
- Extensions = new string[] {".a26"},
- DefaultApps = new string[] {"/bin/a26"},
- Prefix = 'T',
- DefaultCover = Resources.blank_2600
- },
- new AppInfo
- {
- Class = typeof(GameGearGame),
- Extensions = new string[] {},
- DefaultApps = new string[] {"/bin/fba", "/bin/mame", "/bin/cps2", "/bin/neogeo" },
- Prefix = 'X',
- DefaultCover = Resources.blank_arcade
- },
- };
-
- public static AppInfo GetAppByExtension(string extension)
- {
- foreach (var app in ApplicationTypes)
- if (Array.IndexOf(app.Extensions, extension) >= 0)
- return app;
- return null;
- }
-
- public static AppInfo GetAppByExec(string exec)
- {
- foreach (var app in ApplicationTypes)
- foreach (var cmd in app.DefaultApps)
- if (exec.StartsWith(cmd + " "))
- return app;
- return null;
- }
- }
-}
+using com.clusterrr.hakchi_gui.Properties; +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using System.Text; + +namespace com.clusterrr.hakchi_gui +{ + static class AppTypeCollection + { + //public delegate NesMiniApplication + + public class AppInfo + { + public string SystemName; + public List<Type> Class; + public string[] Extensions; + public string[] DefaultApps; + public char Prefix; + public Image DefaultCover; + } + + public static AppInfo[] ApplicationTypes = new AppInfo[] + { + new AppInfo + { + SystemName = "Famicom Disk System", + Class = new List<Type>(){typeof(FdsGame) }, + Extensions = new string[] {".fds"}, + DefaultApps = new string[] {}, + Prefix = 'D', + DefaultCover = Resources.blank_fds + }, + new AppInfo + { + SystemName = "NES", + Class = new List<Type>(){typeof(NesUGame),typeof(NesGame) }, + Extensions = new string[] {".nes", ".unf", ".unif"}, + DefaultApps = new string[] {"/bin/nes"}, + Prefix = 'I', + DefaultCover = Resources.blank_jp + }, + new AppInfo + { + SystemName = "NES Default Game", + Class = new List<Type>(){typeof(NesDefaultGame),typeof(NesGame) }, + Extensions = new string[] {}, + DefaultApps = new string[] {}, + Prefix = 'S', + DefaultCover = Resources.blank_nes + }, + new AppInfo + { + SystemName = "SNES", + Class = new List<Type>(){typeof(SnesGame) }, + Extensions = new string[] { ".sfc", ".smc" }, + DefaultApps = new string[] {"/bin/snes"}, + Prefix = 'U', + DefaultCover = Resources.blank_snes_us + }, + new AppInfo + { + SystemName = "Nintendo 64", + Class = new List<Type>(){typeof(N64Game) }, + Extensions = new string[] { ".n64", ".z64", ".v64" }, + DefaultApps = new string[] {"/bin/n64"}, + Prefix = '6', + DefaultCover = Resources.blank_n64 + }, + new AppInfo + { + SystemName = "Sega Master System", + Class = new List<Type>(){typeof(SmsGame) }, + Extensions = new string[] { ".sms" }, + DefaultApps = new string[] {"/bin/sms"}, + Prefix = 'M', + DefaultCover = Resources.blank_sms + }, + new AppInfo + { + SystemName = "Sega Genesis", + Class = new List<Type>(){typeof(GenesisGame) }, + Extensions = new string[] { ".gen", ".md", ".smd" }, + DefaultApps = new string[] {"/bin/md"}, + Prefix = 'G', + DefaultCover = Resources.blank_genesis + }, + new AppInfo + { + SystemName = "Sega 32X", + Class = new List<Type>(){ typeof(Sega32XGame) }, + Extensions = new string[] { ".32x" }, + DefaultApps = new string[] {"/bin/32x"}, + Prefix = '3', + DefaultCover = Resources.blank_32x + }, + new AppInfo + { + SystemName = "GameBoy", + Class = new List<Type>(){typeof(GbGame) }, + Extensions = new string[] { ".gb" }, + DefaultApps = new string[] {"/bin/gb"}, + Prefix = 'B', + DefaultCover = Resources.blank_gb + }, + new AppInfo + { + SystemName = "GameBoy Color", + Class = new List<Type>(){typeof(GbcGame) }, + Extensions = new string[] {".gbc"}, + DefaultApps = new string[] {"/bin/gbc"}, + Prefix = 'C', + DefaultCover = Resources.blank_gbc + }, + new AppInfo + { + SystemName = "GameBoy Advance", + Class = new List<Type>(){typeof(GbaGame) }, + Extensions = new string[] {".gba"}, + DefaultApps = new string[] {"/bin/gba"}, + Prefix = 'A', + DefaultCover = Resources.blank_gba + }, + new AppInfo + { + SystemName = "PC Engine", + Class = new List<Type>(){typeof(PceGame) }, + Extensions = new string[] {".pce"}, + DefaultApps = new string[] {"/bin/pce"}, + Prefix = 'E', + DefaultCover = Resources.blank_pce + }, + new AppInfo + { + SystemName = "Sega GameGear", + Class = new List<Type>(){typeof(GameGearGame) }, + Extensions = new string[] {".gg"}, + DefaultApps = new string[] {"/bin/gg"}, + Prefix = 'R', + DefaultCover = Resources.blank_gg + }, + new AppInfo + { + SystemName="Atari 2600", + Class = new List<Type>(){typeof(Atari2600Game) }, + Extensions = new string[] {".a26"}, + DefaultApps = new string[] {"/bin/a26"}, + Prefix = 'T', + DefaultCover = Resources.blank_2600 + }, + new AppInfo + { + SystemName = "Arcade", + Class = new List<Type>(){typeof(GameGearGame) }, + Extensions = new string[] {}, + DefaultApps = new string[] {"/bin/fba", "/bin/mame", "/bin/cps2", "/bin/neogeo" }, + Prefix = 'X', + DefaultCover = Resources.blank_arcade + }, + }; + public static AppInfo GetAppByClass(Type theClass) + { + foreach (var app in ApplicationTypes) + if(app.Class.Contains(theClass)) + return app; + return null; + } + public static AppInfo GetAppByExtension(string extension) + { + foreach (var app in ApplicationTypes) + if (Array.IndexOf(app.Extensions, extension) >= 0) + return app; + return null; + } + + public static AppInfo GetAppByExec(string exec) + { + foreach (var app in ApplicationTypes) + foreach (var cmd in app.DefaultApps) + if (exec.StartsWith(cmd + " ")) + return app; + return null; + } + } +} diff --git a/Apps/NesMiniApplication.cs b/Apps/NesMiniApplication.cs index d2b21946..9c730b3a 100644 --- a/Apps/NesMiniApplication.cs +++ b/Apps/NesMiniApplication.cs @@ -1,563 +1,568 @@ -using com.clusterrr.hakchi_gui.Properties;
-using SevenZip;
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Drawing;
-using System.Drawing.Imaging;
-using System.IO;
-using System.Text.RegularExpressions;
-using System.Windows.Forms;
-
-namespace com.clusterrr.hakchi_gui
-{
- public class NesMiniApplication : INesMenuElement
- {
- public readonly static string GamesDirectory = Path.Combine(Program.BaseDirectoryExternal, "games");
- const string DefaultReleaseDate = "1900-01-01";
- const string DefaultPublisher = "UNKNOWN";
-
- protected string code;
- public string Code
- {
- get { return code; }
- }
- public const char DefaultPrefix = 'Z';
- public static Image DefaultCover { get { return Resources.blank_app; } }
- internal const string DefaultApp = "/bin/path-to-your-app";
- public virtual string GoogleSuffix
- {
- get { return "game"; }
- }
-
- public readonly string GamePath;
- public readonly string ConfigPath;
- public readonly string IconPath;
- public readonly string SmallIconPath;
- protected string command;
- protected bool hasUnsavedChanges = true;
-
- private string name;
- public string Name
- {
- get { return name; }
- set
- {
- if (name != value) hasUnsavedChanges = true;
- name = value;
- }
- }
- public string Command
- {
- get { return command; }
- set
- {
- if (command != value) hasUnsavedChanges = true;
- command = value;
- }
- }
- private byte players;
- public byte Players
- {
- get { return players; }
- set
- {
- if (players != value) hasUnsavedChanges = true;
- players = value;
- }
- }
- private bool simultaneous;
- public bool Simultaneous
- {
- get { return simultaneous; }
- set
- {
- if (simultaneous != value) hasUnsavedChanges = true;
- simultaneous = value;
- }
- }
- private string releaseDate;
- public string ReleaseDate
- {
- get { return releaseDate; }
- set
- {
- if (releaseDate != value) hasUnsavedChanges = true;
- releaseDate = value;
- }
- }
- private string publisher;
- public string Publisher
- {
- get { return publisher; }
- set
- {
- if (publisher != value) hasUnsavedChanges = true;
- publisher = value;
- }
- }
-
- public static NesMiniApplication FromDirectory(string path, bool ignoreEmptyConfig = false)
- {
- var files = Directory.GetFiles(path, "*.desktop", SearchOption.TopDirectoryOnly);
- if (files.Length == 0)
- throw new FileNotFoundException("Invalid app folder");
- var config = File.ReadAllLines(files[0]);
- foreach (var line in config)
- {
- if (line.StartsWith("Exec="))
- {
- string command = line.Substring(5);
- if (command.StartsWith("/usr/bin/clover-kachikachi") || command.StartsWith("/bin/clover-kachikachi-wr"))
- {
- if (command.Contains(".nes"))
- return new NesGame(path, ignoreEmptyConfig);
- if (command.Contains(".fds"))
- return new FdsGame(path, ignoreEmptyConfig);
- }
- var app = AppTypeCollection.GetAppByExec(command);
- if (app != null)
- {
- var constructor = app.Class.GetConstructor(new Type[] { typeof(string), typeof(bool) });
- return (NesMiniApplication)constructor.Invoke(new object[] { path, ignoreEmptyConfig });
- }
- break;
- }
- }
- return new NesMiniApplication(path, ignoreEmptyConfig);
- }
-
- public static NesMiniApplication Import(string fileName, string sourceFile = null, byte[] rawRomData = null)
- {
- var extension = Path.GetExtension(fileName).ToLower();
- if (extension == ".desktop")
- return ImportApp(fileName);
- if (rawRomData == null)
- rawRomData = File.ReadAllBytes(fileName);
- var appinfo = AppTypeCollection.GetAppByExtension(extension);
- if (appinfo != null)
- {
- var import = appinfo.Class.GetMethod("Import", new Type[] { typeof(string), typeof(string), typeof(byte[]) });
- if (import != null)
- return (NesMiniApplication)import.Invoke(null, new object[] { fileName, sourceFile, rawRomData });
- else
- return Import(fileName, sourceFile, rawRomData, appinfo.Prefix,
- appinfo.DefaultApps.Length > 0 ? appinfo.DefaultApps[0] : DefaultApp,
- appinfo.DefaultCover, ConfigIni.Compress);
- }
- string application = extension.Length > 2 ? ("/bin/" + extension.Substring(1)) : DefaultApp;
- return Import(fileName, sourceFile, rawRomData, DefaultPrefix, application, DefaultCover);
- }
-
- private static NesMiniApplication Import(string fileName, string sourceFile, byte[] rawRomData, char prefixCode, string application, Image defaultCover, bool compress = false)
- {
- var crc32 = CRC32(rawRomData);
- var code = GenerateCode(crc32, prefixCode);
- var gamePath = Path.Combine(GamesDirectory, code);
- bool sevenZipped = false;
- if (compress)
- {
- string temp = null;
- try
- {
- if (!File.Exists(fileName))
- {
- temp = Path.Combine(Path.GetTempPath(), Path.GetFileName(fileName));
- File.WriteAllBytes(temp, rawRomData);
- rawRomData = Compress(temp);
- sevenZipped = true;
- }
- else
- {
- rawRomData = Compress(fileName);
- sevenZipped = true;
- }
- }
- catch (Exception ex)
- {
- Debug.WriteLine("Compression error: " + ex.Message + ex.Source);
- }
- finally
- {
- if (!string.IsNullOrEmpty(temp) && File.Exists(temp))
- File.Delete(temp);
- }
- }
- var romName = Regex.Replace(Path.GetFileName(fileName), @"[^A-Za-z0-9.-]", "_").Trim() + (sevenZipped ? ".7z" : "");
- var romPath = Path.Combine(gamePath, romName);
- if (Directory.Exists(gamePath))
- Directory.Delete(gamePath, true);
- Directory.CreateDirectory(gamePath);
- File.WriteAllBytes(romPath, rawRomData);
- var game = new NesMiniApplication(gamePath, true);
- game.Name = Path.GetFileNameWithoutExtension(fileName);
- game.Name = Regex.Replace(game.Name, @" ?\(.*?\)", string.Empty).Trim();
- game.Name = Regex.Replace(game.Name, @" ?\[.*?\]", string.Empty).Trim();
- game.Name = game.Name.Replace("_", " ").Replace(" ", " ").Trim();
- game.FindCover(fileName, sourceFile, defaultCover, crc32);
- game.Command = string.Format("{0} /usr/share/games/nes/kachikachi/{1}/{2}", application, code, romName);
- game.Save();
- return NesMiniApplication.FromDirectory(gamePath);
- }
-
- private static NesMiniApplication ImportApp(string fileName)
- {
- if (!File.Exists(fileName)) // Archives are not allowed
- throw new FileNotFoundException("Invalid app folder");
- var code = Path.GetFileNameWithoutExtension(fileName).ToUpper();
- var targetDir = Path.Combine(GamesDirectory, code);
- DirectoryCopy(Path.GetDirectoryName(fileName), targetDir, true);
- return FromDirectory(targetDir);
- }
-
- protected NesMiniApplication()
- {
- GamePath = null;
- ConfigPath = null;
- Players = 1;
- Simultaneous = false;
- ReleaseDate = DefaultReleaseDate;
- Publisher = DefaultPublisher;
- Command = "";
- }
-
- protected NesMiniApplication(string path, bool ignoreEmptyConfig = false)
- {
- GamePath = path;
- code = Path.GetFileName(path);
- Name = Code;
- ConfigPath = Path.Combine(path, Code + ".desktop");
- IconPath = Path.Combine(path, Code + ".png");
- SmallIconPath = Path.Combine(path, Code + "_small.png");
- Players = 1;
- Simultaneous = false;
- ReleaseDate = DefaultReleaseDate;
- Publisher = DefaultPublisher;
- Command = "";
-
- if (!File.Exists(ConfigPath))
- {
- if (ignoreEmptyConfig) return;
- throw new FileNotFoundException("Invalid application directory: " + path);
- }
- var configLines = File.ReadAllLines(ConfigPath);
- foreach (var line in configLines)
- {
- int pos = line.IndexOf('=');
- if (pos <= 0) continue;
- var param = line.Substring(0, pos).Trim().ToLower();
- var value = line.Substring(pos + 1).Trim();
- switch (param)
- {
- case "exec":
- Command = value;
- break;
- case "name":
- Name = value;
- break;
- case "players":
- Players = byte.Parse(value);
- break;
- case "simultaneous":
- Simultaneous = value != "0";
- break;
- case "releasedate":
- ReleaseDate = value;
- break;
- case "sortrawpublisher":
- Publisher = value;
- break;
- }
- }
- hasUnsavedChanges = false;
- }
-
- public virtual bool Save()
- {
- if (!hasUnsavedChanges) return false;
- Debug.WriteLine(string.Format("Saving application \"{0}\" as {1}", Name, Code));
- Name = Regex.Replace(Name, @"'(\d)", @"`$1"); // Apostrophe + any number in game name crashes whole system. What. The. Fuck?
- File.WriteAllText(ConfigPath, string.Format(
- "[Desktop Entry]\n" +
- "Type=Application\n" +
- "Exec={1}\n" +
- "Path=/var/lib/clover/profiles/0/{0}\n" +
- "Name={2}\n" +
- "Icon=/usr/share/games/nes/kachikachi/{0}/{0}.png\n\n" +
- "[X-CLOVER Game]\n" +
- "Code={0}\n" +
- "TestID=777\n" +
- "ID=0\n" +
- "Players={3}\n" +
- "Simultaneous={7}\n" +
- "ReleaseDate={4}\n" +
- "SaveCount=0\n" +
- "SortRawTitle={5}\n" +
- "SortRawPublisher={6}\n" +
- "Copyright=hakchi2 ©2017 Alexey 'Cluster' Avdyukhin\n",
- Code, command, Name ?? Code, Players, ReleaseDate ?? DefaultReleaseDate,
- (Name ?? Code).ToLower(), (Publisher ?? DefaultPublisher).ToUpper(),
- Simultaneous ? 1 : 0));
- hasUnsavedChanges = false;
- return true;
- }
-
- public override string ToString()
- {
- return Name;
- }
-
- public Image Image
- {
- set
- {
- SetImage(value);
- }
- get
- {
- if (File.Exists(IconPath))
- return LoadBitmap(IconPath);
- else
- return null;
- }
- }
-
- private void SetImage(Image image, bool EightBitCompression = false)
- {
- Bitmap outImage;
- Bitmap outImageSmall;
- Graphics gr;
-
- // Just keep aspect ratio
- const int maxX = 204;
- const int maxY = 204;
- if ((double)image.Width / (double)image.Height > (double)maxX / (double)maxY)
- outImage = new Bitmap(maxX, (int)((double)maxY * (double)image.Height / (double)image.Width));
- else
- outImage = new Bitmap((int)(maxX * (double)image.Width / (double)image.Height), maxY);
-
- int maxXsmall = 40;
- int maxYsmall = 40;
- if ((double)image.Width / (double)image.Height > (double)maxXsmall / (double)maxYsmall)
- outImageSmall = new Bitmap(maxXsmall, (int)((double)maxYsmall * (double)image.Height / (double)image.Width));
- else
- outImageSmall = new Bitmap((int)(maxXsmall * (double)image.Width / (double)image.Height), maxYsmall);
-
- gr = Graphics.FromImage(outImage);
- gr.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
- gr.DrawImage(image, new Rectangle(0, 0, outImage.Width, outImage.Height),
- new Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel);
- gr.Flush();
- outImage.Save(IconPath, ImageFormat.Png);
- gr = Graphics.FromImage(outImageSmall);
- gr.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
- gr.DrawImage(outImage, new Rectangle(0, 0, outImageSmall.Width, outImageSmall.Height),
- new Rectangle(0, 0, outImage.Width, outImage.Height), GraphicsUnit.Pixel);
- gr.Flush();
- outImageSmall.Save(SmallIconPath, ImageFormat.Png);
- }
-
- internal bool FindCover(string romFileName, string sourceFileName, Image defaultCover, uint crc32 = 0)
- {
- // Trying to find cover file
- Image cover = null;
- if (!string.IsNullOrEmpty(romFileName))
- {
- if (!string.IsNullOrEmpty(sourceFileName) && sourceFileName != romFileName)
- {
- var archImagePath = Path.Combine(Path.GetDirectoryName(sourceFileName), Path.GetFileNameWithoutExtension(romFileName) + ".png");
- if (File.Exists(archImagePath))
- cover = LoadBitmap(archImagePath);
- archImagePath = Path.Combine(Path.GetDirectoryName(sourceFileName), Path.GetFileNameWithoutExtension(romFileName) + ".jpg");
- if (File.Exists(archImagePath))
- cover = LoadBitmap(archImagePath);
- }
- var imagePath = Path.Combine(Path.GetDirectoryName(romFileName), Path.GetFileNameWithoutExtension(romFileName) + ".png");
- if (File.Exists(imagePath))
- cover = LoadBitmap(imagePath);
- imagePath = Path.Combine(Path.GetDirectoryName(romFileName), Path.GetFileNameWithoutExtension(romFileName) + ".jpg");
- if (File.Exists(imagePath))
- cover = LoadBitmap(imagePath);
- var artDirectory = Path.Combine(Program.BaseDirectoryExternal, "art");
- Directory.CreateDirectory(artDirectory);
- imagePath = Path.Combine(artDirectory, Path.GetFileNameWithoutExtension(romFileName) + ".png");
- if (File.Exists(imagePath))
- cover = LoadBitmap(imagePath);
- imagePath = Path.Combine(artDirectory, Path.GetFileNameWithoutExtension(romFileName) + ".jpg");
- if (File.Exists(imagePath))
- cover = LoadBitmap(imagePath);
- if (crc32 != 0)
- {
- var covers = Directory.GetFiles(artDirectory, string.Format("{0:X8}*.*", crc32), SearchOption.AllDirectories);
- if (covers.Length > 0)
- cover = LoadBitmap(covers[0]);
- }
- }
- if (cover == null)
- {
- Image = defaultCover;
- return false;
- }
- Image = cover;
- return true;
- }
-
- protected static string GenerateCode(uint crc32, char prefixCode)
- {
- return string.Format("CLV-{5}-{0}{1}{2}{3}{4}",
- (char)('A' + (crc32 % 26)),
- (char)('A' + (crc32 >> 5) % 26),
- (char)('A' + ((crc32 >> 10) % 26)),
- (char)('A' + ((crc32 >> 15) % 26)),
- (char)('A' + ((crc32 >> 20) % 26)),
- prefixCode);
- }
-
- public NesMiniApplication CopyTo(string path)
- {
- var targetDir = Path.Combine(path, code);
- DirectoryCopy(GamePath, targetDir, true);
- return FromDirectory(targetDir);
- }
-
- internal static long DirectoryCopy(string sourceDirName, string destDirName, bool copySubDirs)
- {
- long size = 0;
- // Get the subdirectories for the specified directory.
- DirectoryInfo dir = new DirectoryInfo(sourceDirName);
-
- if (!dir.Exists)
- {
- throw new DirectoryNotFoundException(
- "Source directory does not exist or could not be found: "
- + sourceDirName);
- }
-
- DirectoryInfo[] dirs = dir.GetDirectories();
- // If the destination directory doesn't exist, create it.
- if (!Directory.Exists(destDirName))
- {
- Directory.CreateDirectory(destDirName);
- }
-
- // Get the files in the directory and copy them to the new location.
- FileInfo[] files = dir.GetFiles();
- foreach (FileInfo file in files)
- {
- string temppath = Path.Combine(destDirName, file.Name);
- size += file.CopyTo(temppath, true).Length;
- }
-
- // If copying subdirectories, copy them and their contents to new location.
- if (copySubDirs)
- {
- foreach (DirectoryInfo subdir in dirs)
- {
- string temppath = Path.Combine(destDirName, subdir.Name);
- size += DirectoryCopy(subdir.FullName, temppath, copySubDirs);
- }
- }
- return size;
- }
-
- public long Size(string path = null)
- {
- if (path == null)
- path = GamePath;
- long size = 0;
- // Get the subdirectories for the specified directory.
- DirectoryInfo dir = new DirectoryInfo(path);
-
- if (!dir.Exists)
- {
- throw new DirectoryNotFoundException(
- "Source directory does not exist or could not be found: "
- + path);
- }
-
- DirectoryInfo[] dirs = dir.GetDirectories();
- FileInfo[] files = dir.GetFiles();
- foreach (FileInfo file in files)
- {
- size += file.Length;
- }
- foreach (DirectoryInfo subdir in dirs)
- {
- size += Size(subdir.FullName);
- }
- return size;
- }
-
- protected static uint CRC32(byte[] data)
- {
- uint poly = 0xedb88320;
- uint[] table = new uint[256];
- uint temp = 0;
- for (uint i = 0; i < table.Length; ++i)
- {
- temp = i;
- for (int j = 8; j > 0; --j)
- {
- if ((temp & 1) == 1)
- {
- temp = (uint)((temp >> 1) ^ poly);
- }
- else
- {
- temp >>= 1;
- }
- }
- table[i] = temp;
- }
- uint crc = 0xffffffff;
- for (int i = 0; i < data.Length; ++i)
- {
- byte index = (byte)(((crc) & 0xff) ^ data[i]);
- crc = (uint)((crc >> 8) ^ table[index]);
- }
- return ~crc;
- }
-
- public static Bitmap LoadBitmap(string path)
- {
- //Open file in read only mode
- using (FileStream stream = new FileStream(path, FileMode.Open, FileAccess.Read))
- //Get a binary reader for the file stream
- using (BinaryReader reader = new BinaryReader(stream))
- {
- //copy the content of the file into a memory stream
- var memoryStream = new MemoryStream(reader.ReadBytes((int)stream.Length));
- //make a new Bitmap object the owner of the MemoryStream
- return new Bitmap(memoryStream);
- }
- }
-
- private static byte[] Compress(string filename)
- {
- SevenZipExtractor.SetLibraryPath(Path.Combine(Program.BaseDirectoryInternal, IntPtr.Size == 8 ? @"tools\7z64.dll" : @"tools\7z.dll"));
- var arch = new MemoryStream();
- var compressor = new SevenZipCompressor();
- compressor.CompressionLevel = CompressionLevel.High;
- compressor.CompressFiles(arch, filename);
- arch.Seek(0, SeekOrigin.Begin);
- var result = new byte[arch.Length];
- arch.Read(result, 0, result.Length);
- return result;
- }
-
- public class NesMiniAppEqualityComparer : IEqualityComparer<NesMiniApplication>
- {
- public bool Equals(NesMiniApplication x, NesMiniApplication y)
- {
- return x.Code == y.Code;
- }
-
- public int GetHashCode(NesMiniApplication obj)
- {
- return obj.Code.GetHashCode();
- }
- }
- }
-}
-
+using com.clusterrr.hakchi_gui.Properties; +using SevenZip; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics; +using System.Drawing; +using System.Drawing.Imaging; +using System.IO; +using System.Text.RegularExpressions; +using System.Windows.Forms; + +namespace com.clusterrr.hakchi_gui +{ + public class NesMiniApplication : INesMenuElement + { + public readonly static string GamesDirectory = Path.Combine(Program.BaseDirectoryExternal, "games"); + const string DefaultReleaseDate = "1900-01-01"; + const string DefaultPublisher = "UNKNOWN"; + public bool Selected = false; + protected string code; + public string Code + { + get { return code; } + } + public const char DefaultPrefix = 'Z'; + public static Image DefaultCover { get { return Resources.blank_app; } } + internal const string DefaultApp = "/bin/path-to-your-app"; + public virtual string GoogleSuffix + { + get { return "game"; } + } + + public readonly string GamePath; + public readonly string ConfigPath; + public readonly string IconPath; + public readonly string SmallIconPath; + protected string command; + protected bool hasUnsavedChanges = true; + + private string name; + public string Name + { + get { return name; } + set + { + if (name != value) hasUnsavedChanges = true; + name = value; + } + } + public string Command + { + get { return command; } + set + { + if (command != value) hasUnsavedChanges = true; + command = value; + } + } + private byte players; + public byte Players + { + get { return players; } + set + { + if (players != value) hasUnsavedChanges = true; + players = value; + } + } + private bool simultaneous; + public bool Simultaneous + { + get { return simultaneous; } + set + { + if (simultaneous != value) hasUnsavedChanges = true; + simultaneous = value; + } + } + private string releaseDate; + public string ReleaseDate + { + get { return releaseDate; } + set + { + if (releaseDate != value) hasUnsavedChanges = true; + releaseDate = value; + } + } + private string publisher; + public string Publisher + { + get { return publisher; } + set + { + if (publisher != value) hasUnsavedChanges = true; + publisher = value; + } + } + + public static NesMiniApplication FromDirectory(string path, bool ignoreEmptyConfig = false) + { + var files = Directory.GetFiles(path, "*.desktop", SearchOption.TopDirectoryOnly); + if (files.Length == 0) + throw new FileNotFoundException("Invalid app folder"); + var config = File.ReadAllLines(files[0]); + foreach (var line in config) + { + if (line.StartsWith("Exec=")) + { + string command = line.Substring(5); + if (command.StartsWith("/usr/bin/clover-kachikachi") || command.StartsWith("/bin/clover-kachikachi-wr")) + { + if (command.Contains(".nes")) + return new NesGame(path, ignoreEmptyConfig); + if (command.Contains(".fds")) + return new FdsGame(path, ignoreEmptyConfig); + } + var app = AppTypeCollection.GetAppByExec(command); + if (app != null) + { + var constructor = app.Class[0].GetConstructor(new Type[] { typeof(string), typeof(bool) }); + return (NesMiniApplication)constructor.Invoke(new object[] { path, ignoreEmptyConfig }); + } + break; + } + } + return new NesMiniApplication(path, ignoreEmptyConfig); + } + + public static NesMiniApplication Import(string fileName, string sourceFile = null, byte[] rawRomData = null) + { + var extension = Path.GetExtension(fileName).ToLower(); + if (extension == ".desktop") + return ImportApp(fileName); + if (rawRomData == null) + rawRomData = File.ReadAllBytes(fileName); + var appinfo = AppTypeCollection.GetAppByExtension(extension); + if (appinfo != null) + { + var import = appinfo.Class[0].GetMethod("Import", new Type[] { typeof(string), typeof(string), typeof(byte[]) }); + if (import != null) + return (NesMiniApplication)import.Invoke(null, new object[] { fileName, sourceFile, rawRomData }); + else + return Import(fileName, sourceFile, rawRomData, appinfo.Prefix, + appinfo.DefaultApps.Length > 0 ? appinfo.DefaultApps[0] : DefaultApp, + appinfo.DefaultCover, ConfigIni.Compress); + } + string application = extension.Length > 2 ? ("/bin/" + extension.Substring(1)) : DefaultApp; + return Import(fileName, sourceFile, rawRomData, DefaultPrefix, application, DefaultCover); + } + + private static NesMiniApplication Import(string fileName, string sourceFile, byte[] rawRomData, char prefixCode, string application, Image defaultCover, bool compress = false) + { + var crc32 = CRC32(rawRomData); + var code = GenerateCode(crc32, prefixCode); + var gamePath = Path.Combine(GamesDirectory, code); + bool sevenZipped = false; + if (compress) + { + string temp = null; + try + { + if (!File.Exists(fileName)) + { + temp = Path.Combine(Path.GetTempPath(), Path.GetFileName(fileName)); + File.WriteAllBytes(temp, rawRomData); + rawRomData = Compress(temp); + sevenZipped = true; + } + else + { + rawRomData = Compress(fileName); + sevenZipped = true; + } + } + catch (Exception ex) + { + Debug.WriteLine("Compression error: " + ex.Message + ex.Source); + } + finally + { + if (!string.IsNullOrEmpty(temp) && File.Exists(temp)) + File.Delete(temp); + } + } + var romName = Regex.Replace(Path.GetFileName(fileName), @"[^A-Za-z0-9.-]", "_").Trim() + (sevenZipped ? ".7z" : ""); + var romPath = Path.Combine(gamePath, romName); + if (Directory.Exists(gamePath)) + Directory.Delete(gamePath, true); + Directory.CreateDirectory(gamePath); + File.WriteAllBytes(romPath, rawRomData); + var game = new NesMiniApplication(gamePath, true); + game.Name = Path.GetFileNameWithoutExtension(fileName); + game.Name = Regex.Replace(game.Name, @" ?\(.*?\)", string.Empty).Trim(); + game.Name = Regex.Replace(game.Name, @" ?\[.*?\]", string.Empty).Trim(); + game.Name = game.Name.Replace("_", " ").Replace(" ", " ").Trim(); + game.FindCover(fileName, sourceFile, defaultCover, crc32); + game.Command = string.Format("{0} /usr/share/games/nes/kachikachi/{1}/{2}", application, code, romName); + game.Save(); + return NesMiniApplication.FromDirectory(gamePath); + } + + private static NesMiniApplication ImportApp(string fileName) + { + if (!File.Exists(fileName)) // Archives are not allowed + throw new FileNotFoundException("Invalid app folder"); + var code = Path.GetFileNameWithoutExtension(fileName).ToUpper(); + var targetDir = Path.Combine(GamesDirectory, code); + DirectoryCopy(Path.GetDirectoryName(fileName), targetDir, true); + return FromDirectory(targetDir); + } + + protected NesMiniApplication() + { + GamePath = null; + ConfigPath = null; + Players = 1; + Simultaneous = false; + ReleaseDate = DefaultReleaseDate; + Publisher = DefaultPublisher; + Command = ""; + } + + protected NesMiniApplication(string path, bool ignoreEmptyConfig = false) + { + GamePath = path; + code = Path.GetFileName(path); + Name = Code; + ConfigPath = Path.Combine(path, Code + ".desktop"); + IconPath = Path.Combine(path, Code + ".png"); + SmallIconPath = Path.Combine(path, Code + "_small.png"); + Players = 1; + Simultaneous = false; + ReleaseDate = DefaultReleaseDate; + Publisher = DefaultPublisher; + Command = ""; + + if (!File.Exists(ConfigPath)) + { + if (ignoreEmptyConfig) return; + throw new FileNotFoundException("Invalid application directory: " + path); + } + var configLines = File.ReadAllLines(ConfigPath); + foreach (var line in configLines) + { + int pos = line.IndexOf('='); + if (pos <= 0) continue; + var param = line.Substring(0, pos).Trim().ToLower(); + var value = line.Substring(pos + 1).Trim(); + switch (param) + { + case "exec": + Command = value; + break; + case "name": + Name = value; + break; + case "players": + Players = byte.Parse(value); + break; + case "simultaneous": + Simultaneous = value != "0"; + break; + case "releasedate": + ReleaseDate = value; + break; + case "sortrawpublisher": + Publisher = value; + break; + } + } + hasUnsavedChanges = false; + } + + public virtual bool Save() + { + + if (!hasUnsavedChanges) return false; + Debug.WriteLine(string.Format("Saving application \"{0}\" as {1}", Name, Code)); + Name = Regex.Replace(Name, @"'(\d)", @"`$1"); // Apostrophe + any number in game name crashes whole system. What. The. Fuck? + File.WriteAllText(ConfigPath, string.Format( + "[Desktop Entry]\n" + + "Type=Application\n" + + "Exec={1}\n" + + "Path=/var/lib/clover/profiles/0/{0}\n" + + "Name={2}\n" + + "Icon=/usr/share/games/nes/kachikachi/{0}/{0}.png\n\n" + + "[X-CLOVER Game]\n" + + "Code={0}\n" + + "TestID=777\n" + + "ID=0\n" + + "Players={3}\n" + + "Simultaneous={7}\n" + + "ReleaseDate={4}\n" + + "SaveCount=0\n" + + "SortRawTitle={5}\n" + + "SortRawPublisher={6}\n" + + "Copyright=hakchi2 ©2017 Alexey 'Cluster' Avdyukhin\n", + Code, command, Name ?? Code, Players, ReleaseDate ?? DefaultReleaseDate, + (Name ?? Code).ToLower(), (Publisher ?? DefaultPublisher).ToUpper(), + Simultaneous ? 1 : 0)); + hasUnsavedChanges = false; + return true; + } + + public override string ToString() + { + return Name; + } + + public Image Image + { + set + { + SetImage(value); + } + get + { + if (File.Exists(IconPath)) + return LoadBitmap(IconPath); + else + return null; + } + } + + private void SetImage(Image image, bool EightBitCompression = false) + { + Bitmap outImage; + Bitmap outImageSmall; + Graphics gr; + + // Just keep aspect ratio + const int maxX = 204; + const int maxY = 204; + if ((double)image.Width / (double)image.Height > (double)maxX / (double)maxY) + outImage = new Bitmap(maxX, (int)((double)maxY * (double)image.Height / (double)image.Width)); + else + outImage = new Bitmap((int)(maxX * (double)image.Width / (double)image.Height), maxY); + + int maxXsmall = 40; + int maxYsmall = 40; + if ((double)image.Width / (double)image.Height > (double)maxXsmall / (double)maxYsmall) + outImageSmall = new Bitmap(maxXsmall, (int)((double)maxYsmall * (double)image.Height / (double)image.Width)); + else + outImageSmall = new Bitmap((int)(maxXsmall * (double)image.Width / (double)image.Height), maxYsmall); + + gr = Graphics.FromImage(outImage); + gr.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; + gr.DrawImage(image, new Rectangle(0, 0, outImage.Width, outImage.Height), + new Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel); + gr.Flush(); + outImage.Save(IconPath, ImageFormat.Png); + gr = Graphics.FromImage(outImageSmall); + gr.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; + gr.DrawImage(outImage, new Rectangle(0, 0, outImageSmall.Width, outImageSmall.Height), + new Rectangle(0, 0, outImage.Width, outImage.Height), GraphicsUnit.Pixel); + gr.Flush(); + outImageSmall.Save(SmallIconPath, ImageFormat.Png); + } + + internal bool FindCover(string romFileName, string sourceFileName, Image defaultCover, uint crc32 = 0) + { + // Trying to find cover file + Image cover = null; + if (!string.IsNullOrEmpty(romFileName)) + { + if (!string.IsNullOrEmpty(sourceFileName) && sourceFileName != romFileName) + { + var archImagePath = Path.Combine(Path.GetDirectoryName(sourceFileName), Path.GetFileNameWithoutExtension(romFileName) + ".png"); + if (File.Exists(archImagePath)) + cover = LoadBitmap(archImagePath); + archImagePath = Path.Combine(Path.GetDirectoryName(sourceFileName), Path.GetFileNameWithoutExtension(romFileName) + ".jpg"); + if (File.Exists(archImagePath)) + cover = LoadBitmap(archImagePath); + } + var imagePath = Path.Combine(Path.GetDirectoryName(romFileName), Path.GetFileNameWithoutExtension(romFileName) + ".png"); + if (File.Exists(imagePath)) + cover = LoadBitmap(imagePath); + imagePath = Path.Combine(Path.GetDirectoryName(romFileName), Path.GetFileNameWithoutExtension(romFileName) + ".jpg"); + if (File.Exists(imagePath)) + cover = LoadBitmap(imagePath); + var artDirectory = Path.Combine(Program.BaseDirectoryExternal, "art"); + Directory.CreateDirectory(artDirectory); + imagePath = Path.Combine(artDirectory, Path.GetFileNameWithoutExtension(romFileName) + ".png"); + if (File.Exists(imagePath)) + cover = LoadBitmap(imagePath); + imagePath = Path.Combine(artDirectory, Path.GetFileNameWithoutExtension(romFileName) + ".jpg"); + if (File.Exists(imagePath)) + cover = LoadBitmap(imagePath); + if (crc32 != 0) + { + var covers = Directory.GetFiles(artDirectory, string.Format("{0:X8}*.*", crc32), SearchOption.AllDirectories); + if (covers.Length > 0) + cover = LoadBitmap(covers[0]); + } + } + if (cover == null) + { + Image = defaultCover; + return false; + } + Image = cover; + return true; + } + + protected static string GenerateCode(uint crc32, char prefixCode) + { + return string.Format("CLV-{5}-{0}{1}{2}{3}{4}", + (char)('A' + (crc32 % 26)), + (char)('A' + (crc32 >> 5) % 26), + (char)('A' + ((crc32 >> 10) % 26)), + (char)('A' + ((crc32 >> 15) % 26)), + (char)('A' + ((crc32 >> 20) % 26)), + prefixCode); + } + + public NesMiniApplication CopyTo(string path) + { + var targetDir = Path.Combine(path, code); + DirectoryCopy(GamePath, targetDir, true); + return FromDirectory(targetDir); + } + + internal static long DirectoryCopy(string sourceDirName, string destDirName, bool copySubDirs) + { + long size = 0; + // Get the subdirectories for the specified directory. + DirectoryInfo dir = new DirectoryInfo(sourceDirName); + + if (!dir.Exists) + { + throw new DirectoryNotFoundException( + "Source directory does not exist or could not be found: " + + sourceDirName); + } + + DirectoryInfo[] dirs = dir.GetDirectories(); + // If the destination directory doesn't exist, create it. + if (!Directory.Exists(destDirName)) + { + Directory.CreateDirectory(destDirName); + } + + // Get the files in the directory and copy them to the new location. + FileInfo[] files = dir.GetFiles(); + foreach (FileInfo file in files) + { + string temppath = Path.Combine(destDirName, file.Name); + size += file.CopyTo(temppath, true).Length; + } + + // If copying subdirectories, copy them and their contents to new location. + if (copySubDirs) + { + foreach (DirectoryInfo subdir in dirs) + { + string temppath = Path.Combine(destDirName, subdir.Name); + size += DirectoryCopy(subdir.FullName, temppath, copySubDirs); + } + } + return size; + } + + public long Size(string path = null) + { + if(this.GetType() == typeof(NesDefaultGame)) + { + return ((NesDefaultGame)this).Size; + } + if (path == null) + path = GamePath; + long size = 0; + // Get the subdirectories for the specified directory. + DirectoryInfo dir = new DirectoryInfo(path); + + if (!dir.Exists) + { + throw new DirectoryNotFoundException( + "Source directory does not exist or could not be found: " + + path); + } + + DirectoryInfo[] dirs = dir.GetDirectories(); + FileInfo[] files = dir.GetFiles(); + foreach (FileInfo file in files) + { + size += file.Length; + } + foreach (DirectoryInfo subdir in dirs) + { + size += Size(subdir.FullName); + } + return size; + } + + protected static uint CRC32(byte[] data) + { + uint poly = 0xedb88320; + uint[] table = new uint[256]; + uint temp = 0; + for (uint i = 0; i < table.Length; ++i) + { + temp = i; + for (int j = 8; j > 0; --j) + { + if ((temp & 1) == 1) + { + temp = (uint)((temp >> 1) ^ poly); + } + else + { + temp >>= 1; + } + } + table[i] = temp; + } + uint crc = 0xffffffff; + for (int i = 0; i < data.Length; ++i) + { + byte index = (byte)(((crc) & 0xff) ^ data[i]); + crc = (uint)((crc >> 8) ^ table[index]); + } + return ~crc; + } + + public static Bitmap LoadBitmap(string path) + { + //Open file in read only mode + using (FileStream stream = new FileStream(path, FileMode.Open, FileAccess.Read)) + //Get a binary reader for the file stream + using (BinaryReader reader = new BinaryReader(stream)) + { + //copy the content of the file into a memory stream + var memoryStream = new MemoryStream(reader.ReadBytes((int)stream.Length)); + //make a new Bitmap object the owner of the MemoryStream + return new Bitmap(memoryStream); + } + } + + private static byte[] Compress(string filename) + { + SevenZipExtractor.SetLibraryPath(Path.Combine(Program.BaseDirectoryInternal, IntPtr.Size == 8 ? @"tools\7z64.dll" : @"tools\7z.dll")); + var arch = new MemoryStream(); + var compressor = new SevenZipCompressor(); + compressor.CompressionLevel = CompressionLevel.High; + compressor.CompressFiles(arch, filename); + arch.Seek(0, SeekOrigin.Begin); + var result = new byte[arch.Length]; + arch.Read(result, 0, result.Length); + return result; + } + + public class NesMiniAppEqualityComparer : IEqualityComparer<NesMiniApplication> + { + public bool Equals(NesMiniApplication x, NesMiniApplication y) + { + return x.Code == y.Code; + } + + public int GetHashCode(NesMiniApplication obj) + { + return obj.Code.GetHashCode(); + } + } + } +} + diff --git a/FoldersManagerForm.cs b/FoldersManagerForm.cs index 629f4ef7..f8d759b7 100644 --- a/FoldersManagerForm.cs +++ b/FoldersManagerForm.cs @@ -1,971 +1,967 @@ -using com.clusterrr.hakchi_gui.Properties;
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Drawing;
-using System.IO;
-using System.Linq;
-using System.Threading;
-using System.Windows.Forms;
-using System.Xml;
-
-namespace com.clusterrr.hakchi_gui
-{
- public partial class FoldersManagerForm : Form
- {
- public static string FoldersXmlPath = Path.Combine(Path.Combine(Program.BaseDirectoryExternal, ConfigIni.ConfigDir), "folders.xml");
- List<TreeNode> cuttedNodes = new List<TreeNode>();
- List<INesMenuElement> deletedGames = new List<INesMenuElement>();
- NesMenuCollection gamesCollection = new NesMenuCollection();
- MainForm mainForm;
- private class NodeSorter : IComparer
- {
- public int Compare(object o1, object o2)
- {
- if (o1 is ListViewItem)
- o1 = (o1 as ListViewItem).Tag;
- if (o2 is ListViewItem)
- o2 = (o2 as ListViewItem).Tag;
-
- if ((o1 as TreeNode).Tag is NesMenuCollection) return -1; // Root is always first
- if ((o2 as TreeNode).Tag is NesMenuCollection) return 1;
- INesMenuElement el1 = (o1 as TreeNode).Tag as INesMenuElement;
- INesMenuElement el2 = (o2 as TreeNode).Tag as INesMenuElement;
- var pos1 = 2;
- var pos2 = 2;
- if (el1 is NesMenuFolder) pos1 = (int)(el1 as NesMenuFolder).Position;
- if (el2 is NesMenuFolder) pos2 = (int)(el2 as NesMenuFolder).Position;
- if (pos1 != pos2) return pos1.CompareTo(pos2);
- return el1.Name.CompareTo(el2.Name);
- }
- }
-
- public FoldersManagerForm(NesMenuCollection nesMenuCollection, MainForm mainForm = null)
- {
- try
- {
- InitializeComponent();
- gamesCollection = nesMenuCollection;
- this.mainForm = mainForm;
- if (File.Exists(FoldersXmlPath))
- {
- try
- {
- XmlToTree(File.ReadAllText(FoldersXmlPath));
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- File.Delete(FoldersXmlPath);
- throw ex;
- }
- }
- else DrawTree();
- splitContainer.Panel2MinSize = 485;
- comboBoxPosition.Left = labelPosition.Left + labelPosition.Width;
- treeView.TreeViewNodeSorter = new NodeSorter();
- listViewContent.ListViewItemSorter = new NodeSorter();
- }
- catch (Exception ex)
- {
- var message = ex.Message;
-#if DEBUG
- message += ex.StackTrace;
-#endif
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- void DrawTree()
- {
- cuttedNodes.Clear();
- treeView.Nodes.Clear();
- var folderImageIndex = getImageIndex(null);
- var rootNode = new TreeNode(Resources.MainMenu, folderImageIndex, folderImageIndex);
- treeView.Nodes.Add(rootNode);
- rootNode.Tag = gamesCollection;
- AddNodes(rootNode.Nodes, gamesCollection);
- rootNode.Expand();
- treeView.SelectedNode = rootNode;
- }
-
- void DrawSplitTree(NesMenuCollection.SplitStyle splitStyle = NesMenuCollection.SplitStyle.NoSplit)
- {
- var node = treeView.SelectedNode;
- NesMenuCollection collection;
- if (node.Tag is NesMenuFolder)
- collection = (node.Tag as NesMenuFolder).ChildMenuCollection;
- else if (node.Tag is NesMenuCollection)
- collection = node.Tag as NesMenuCollection;
- else return;
- // Collide and resplit collection
- collection.Unsplit();
- collection.Split(splitStyle, ConfigIni.MaxGamesPerFolder);
- // Refill nodes with new collection
- node.Nodes.Clear();
- AddNodes(node.Nodes, collection);
- node.Expand();
- treeView.SelectedNode = node;
- ShowSelected();
- }
-
- static int getImageIndex(INesMenuElement nesElement)
- {
- if (nesElement == null || nesElement is NesMenuFolder || nesElement is NesMenuCollection)
- return 12;
-
- if (nesElement is Sega32XGame)
- return 0;
- if (nesElement is Atari2600Game)
- return 2;
- if (nesElement is ArcadeGame)
- return 6;
- if (nesElement is NesUGame)
- return 8;
- if (nesElement is FdsGame)
- return 10;
- if (nesElement is GbGame)
- return 14;
- if (nesElement is GbaGame)
- return 16;
- if (nesElement is GbcGame)
- return 18;
- if (nesElement is GenesisGame)
- return 20;
- if (nesElement is GameGearGame)
- return 22;
- if (nesElement is N64Game)
- return 24;
- if (nesElement is NesGame)
- return 28;
- if (nesElement is NesDefaultGame)
- return 30;
- if (nesElement is PceGame)
- return 32;
- if (nesElement is SmsGame)
- return 34;
- if (nesElement is SnesGame)
- return 36;
-
- return 4;
- }
-
- void AddNodes(TreeNodeCollection treeNodeCollection, NesMenuCollection nesMenuCollection, List<NesMenuCollection> usedFolders = null)
- {
- if (usedFolders == null)
- usedFolders = new List<NesMenuCollection>();
- if (usedFolders.Contains(nesMenuCollection))
- return;
- usedFolders.Add(nesMenuCollection);
- var sorted = nesMenuCollection.OrderBy(o => o.Name).OrderBy(o => (o is NesMenuFolder) ? (byte)(o as NesMenuFolder).Position : 2);
- foreach (var nesElement in sorted)
- {
- var newNode = new TreeNode();
- if (nesElement is NesMenuFolder)
- {
- if (usedFolders.Contains((nesElement as NesMenuFolder).ChildMenuCollection))
- {
- nesMenuCollection.Remove(nesElement); // We don't need any "back" folders
- continue;
- }
- }
- newNode.SelectedImageIndex = newNode.ImageIndex = getImageIndex(nesElement as INesMenuElement);
- newNode.Text = nesElement.Name;
- newNode.Tag = nesElement;
- treeNodeCollection.Add(newNode);
- if (nesElement is NesMenuFolder)
- {
- AddNodes(newNode.Nodes, (nesElement as NesMenuFolder).ChildMenuCollection, usedFolders);
- }
- }
- }
-
- private void buttonNoFolders_Click(object sender, EventArgs e)
- {
- DrawSplitTree(NesMenuCollection.SplitStyle.NoSplit);
- }
-
- private void buttonNoFoldersOriginal_Click(object sender, EventArgs e)
- {
- DrawSplitTree(NesMenuCollection.SplitStyle.Original_NoSplit);
- }
-
- private void buttonFoldersEqually_Click(object sender, EventArgs e)
- {
- DrawSplitTree(NesMenuCollection.SplitStyle.FoldersEqual);
- }
-
- private void buttonFoldersEquallyOriginal_Click(object sender, EventArgs e)
- {
- DrawSplitTree(NesMenuCollection.SplitStyle.Original_FoldersEqual);
- }
-
- private void buttonFoldersLetters_Click(object sender, EventArgs e)
- {
- DrawSplitTree(NesMenuCollection.SplitStyle.FoldersAlphabetic_FoldersEqual);
- }
-
- private void buttonFoldersLettersOriginal_Click(object sender, EventArgs e)
- {
- DrawSplitTree(NesMenuCollection.SplitStyle.Original_FoldersAlphabetic_FoldersEqual);
- }
-
- private void treeView_AfterSelect(object sender, TreeViewEventArgs e)
- {
- ShowSelected();
- }
-
- private void ShowSelected()
- {
- var node = treeView.SelectedNode;
- listViewContent.Clear();
- if (node != null && (node.Nodes.Count > 0 || node.Tag is NesMenuFolder)) // Folder or root
- {
- pictureBoxArt.Image = (node.Tag is NesMenuFolder) ? (node.Tag as NesMenuFolder).Image : null;
- groupBoxArt.Enabled = (node.Tag is NesMenuFolder);
- groupBoxSplitModes.Enabled = true;
- pictureBoxArt.Cursor = Cursors.Hand;
- listViewContent.Enabled = true;
- foreach (TreeNode n in node.Nodes)
- {
- var element = (INesMenuElement)n.Tag;
- var item = new ListViewItem();
- item.Text = element.Name;
- var transparency = cuttedNodes.Contains(n) ? 1 : 0;
- item.ImageIndex = getImageIndex(element) + transparency;
- item.Tag = n;
- listViewContent.Items.Add(item);
- }
- }
- else
- {
- if (node != null && node.Tag is NesMiniApplication)
- {
- var game = node.Tag as NesMiniApplication;
- pictureBoxArt.Image = NesMiniApplication.LoadBitmap(game.IconPath);
- groupBoxArt.Enabled = true;
- listViewContent.Enabled = false;
- }
- else //if (e.Node.Tag is NesDefaultGame)
- {
- pictureBoxArt.Image = null;
- groupBoxArt.Enabled = false;
- }
- listViewContent.Enabled = false;
- groupBoxSplitModes.Enabled = false;
- pictureBoxArt.Cursor = Cursors.Default;
- }
- ShowFolderStats();
- }
-
- void ShowFolderStats()
- {
- var node = treeView.SelectedNode;
- if (node != null && (node.Tag is NesMenuCollection || node.Tag is NesMenuFolder)) // Folder or root
- {
- labelElementCount.Text = string.Format(Resources.FolderStatistics, node.Text, node.Nodes.Count);
- buttonNewFolder.Enabled = true;
- }
- else
- {
- labelElementCount.Text = "";
- buttonNewFolder.Enabled = false;
- }
- if (node != null && node.Tag is NesMenuFolder) // Folder
- {
- labelPosition.Enabled = comboBoxPosition.Enabled = true;
- var folder = node.Tag as NesMenuFolder;
- var position = (int)folder.Position;
- if (position > 1) position--;
- comboBoxPosition.SelectedIndex = position;
- }
- else
- {
- labelPosition.Enabled = comboBoxPosition.Enabled = false;
- comboBoxPosition.SelectedIndex = -1;
- }
- }
-
- private void listViewContent_MouseDoubleClick(object sender, MouseEventArgs e)
- {
- if (e.Button == System.Windows.Forms.MouseButtons.Left && listViewContent.SelectedItems.Count == 1)
- {
- var node = (listViewContent.SelectedItems[0].Tag as TreeNode);
- treeView.SelectedNode = node;
- //node.Expand();
- }
- }
-
- private void treeView_BeforeLabelEdit(object sender, NodeLabelEditEventArgs e)
- {
- if (!(e.Node.Tag is NesMenuFolder))
- e.CancelEdit = true;
- }
-
- private void treeView_AfterLabelEdit(object sender, NodeLabelEditEventArgs e)
- {
- if (!(e.Node.Tag is NesMenuFolder) ||
- string.IsNullOrEmpty(e.Label) || string.IsNullOrEmpty(e.Label.Trim()))
- e.CancelEdit = true;
- else
- {
- e.Node.Text = e.Label;
- (e.Node.Tag as INesMenuElement).Name = e.Label;
- var parent = e.Node.Parent;
- FixSort(e.Node);
- }
- }
-
- private void listViewContent_BeforeLabelEdit(object sender, LabelEditEventArgs e)
- {
- if (!((listViewContent.Items[e.Item].Tag as TreeNode).Tag is NesMenuFolder))
- e.CancelEdit = true;
- }
-
- private void listViewContent_AfterLabelEdit(object sender, LabelEditEventArgs e)
- {
- if (string.IsNullOrEmpty(e.Label) || string.IsNullOrEmpty(e.Label.Trim()))
- e.CancelEdit = true;
- else
- {
- var item = listViewContent.Items[e.Item];
- var node = item.Tag as TreeNode;
- node.Text = e.Label;
- (node.Tag as INesMenuElement).Name = e.Label;
- FixSort(item);
- }
- }
-
- private void FixSort(object o)
- {
- // This is most simple to resort node without resorting the whole tree/list
- new Thread(KostilKostilevich).Start(o);
- }
- private void KostilKostilevich(object o)
- {
- // This is stupid workaround for resort after renaming item, lol
- if (InvokeRequired)
- {
- Invoke(new Action<object>(KostilKostilevich), new object[] { o });
- return;
- }
- if (o is TreeNode)
- {
- var node = o as TreeNode;
- var parent = node.Parent;
- parent.Nodes.Remove(node);
- parent.Nodes.Add(node);
- treeView.SelectedNode = node;
- ShowFolderStats();
- }
- if (o is ListViewItem)
- {
- var item = o as ListViewItem;
- listViewContent.Items.Remove(item);
- listViewContent.Items.Add(item);
- var node = item.Tag as TreeNode;
- var parent = node.Parent;
- parent.Nodes.Remove(node);
- parent.Nodes.Add(node);
- }
- }
-
- private void treeView_ItemDrag(object sender, ItemDragEventArgs e)
- {
- if ((e.Button == MouseButtons.Left) && !((e.Item as TreeNode).Tag is NesMenuCollection)) // We can't drag root
- DoDragDrop(new TreeNode[] { (TreeNode)e.Item }, DragDropEffects.Move);
- }
-
- private void listViewContent_ItemDrag(object sender, ItemDragEventArgs e)
- {
- if (e.Button != MouseButtons.Left) return;
- var nodes = new List<TreeNode>();
- foreach (ListViewItem i in listViewContent.SelectedItems)
- nodes.Add(i.Tag as TreeNode);
- DoDragDrop(nodes.ToArray(), DragDropEffects.Move);
- }
-
- private void treeView_DragEnter(object sender, DragEventArgs e)
- {
- if (e.Data.GetDataPresent("System.Windows.Forms.TreeNode[]", false))
- e.Effect = DragDropEffects.Move;
- }
-
- private void treeView_DragDrop(object sender, DragEventArgs e)
- {
- if (e.Data.GetDataPresent("System.Windows.Forms.TreeNode[]", false))
- {
- TreeNode destinationNode;
- if (sender is TreeView)
- {
- Point pt = ((TreeView)sender).PointToClient(new Point(e.X, e.Y));
- destinationNode = ((TreeView)sender).GetNodeAt(pt);
- }
- else
- {
- Point pt = ((ListView)sender).PointToClient(new Point(e.X, e.Y));
- var item = ((ListView)sender).GetItemAt(pt.X, pt.Y);
- if (item == null)
- destinationNode = treeView.SelectedNode;
- else
- destinationNode = (TreeNode)item.Tag;
- }
- var newNodes = (TreeNode[])e.Data.GetData("System.Windows.Forms.TreeNode[]");
- MoveToFolder(newNodes, destinationNode, false);
- if (sender is TreeView)
- treeView.Select();
- else
- listViewContent.Select();
- }
- }
-
- private void buttonNewFolder_Click(object sender, EventArgs e)
- {
- newFolder(null);
- }
-
- private void comboBoxPosition_SelectionChangeCommitted(object sender, EventArgs e)
- {
- if (!(treeView.SelectedNode.Tag is NesMenuFolder)) return;
- int value = comboBoxPosition.SelectedIndex;
- if (value >= 2) value++;
- var node = treeView.SelectedNode;
- var folder = (node.Tag as NesMenuFolder);
- folder.Position = (NesMenuFolder.Priority)value;
- FixSort(node);
- }
-
- private void renameToolStripMenuItem_Click(object sender, EventArgs e)
- {
- renameFolder((sender as ToolStripMenuItem).Tag);
- }
-
- private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if ((sender as ToolStripMenuItem).Tag is TreeNode)
- deleteElements(new TreeNode[] { treeView.SelectedNode });
- else
- if ((sender as ToolStripMenuItem).Tag is ListView)
- deleteElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode);
- }
- private void cutToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if ((sender as ToolStripMenuItem).Tag is TreeNode)
- cutElements(new TreeNode[] { treeView.SelectedNode });
- else
- if ((sender as ToolStripMenuItem).Tag is ListView)
- cutElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode);
- }
-
- private void pasteToolStripMenuItem_Click(object sender, EventArgs e)
- {
- pasteElements(treeView.SelectedNode);
- }
-
- private void treeView_MouseDown(object sender, MouseEventArgs e)
- {
- if (e.Button != MouseButtons.Right) return;
- if (sender is TreeView)
- {
- var destinationNode = ((TreeView)sender).GetNodeAt(e.X, e.Y);
- if (destinationNode == null) destinationNode = treeView.Nodes[0]; // Root
-
- newFolderToolStripMenuItem.Tag = deleteToolStripMenuItem.Tag = renameToolStripMenuItem.Tag =
- cutToolStripMenuItem.Tag = pasteToolStripMenuItem.Tag = destinationNode;
- newFolderToolStripMenuItem.Enabled = true;
- if ((destinationNode.Tag is NesMenuFolder || destinationNode.Tag is NesMenuCollection)) // Folder
- treeView.SelectedNode = destinationNode;
- else
- newFolderToolStripMenuItem.Tag = destinationNode.Parent;
- renameToolStripMenuItem.Enabled = destinationNode.Tag is NesMenuFolder; // Folder
- cutToolStripMenuItem.Enabled = deleteToolStripMenuItem.Enabled = !(destinationNode.Tag is NesMenuCollection); // Not root
- pasteToolStripMenuItem.Enabled = cuttedNodes.Count > 0;
- }
- else
- {
- var item = ((ListView)sender).GetItemAt(e.X, e.Y);
- if (listViewContent.SelectedItems.Count == 0 && item != null) item.Selected = true;
- renameToolStripMenuItem.Tag = item;
- newFolderToolStripMenuItem.Tag = deleteToolStripMenuItem.Tag = cutToolStripMenuItem.Tag = pasteToolStripMenuItem.Tag = listViewContent;
- newFolderToolStripMenuItem.Enabled = treeView.SelectedNode != null && (treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection); // Folder
- renameToolStripMenuItem.Enabled = (item != null) && (item.Tag as TreeNode).Tag is NesMenuFolder;
- cutToolStripMenuItem.Enabled = deleteToolStripMenuItem.Enabled = listViewContent.SelectedItems.Count > 0;
- pasteToolStripMenuItem.Enabled = cuttedNodes.Count > 0;
- }
- contextMenuStrip.Show(sender as Control, e.X, e.Y);
- }
-
- private void newFolderToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if ((sender as ToolStripMenuItem).Tag is TreeNode)
- newFolder((sender as ToolStripMenuItem).Tag as TreeNode);
- else
- newFolder(null);
- }
- bool MoveToFolder(IEnumerable<TreeNode> newNodes, TreeNode destinationNode, bool showDest = true)
- {
- if (destinationNode == null)
- destinationNode = treeView.Nodes[0]; // Root
- if (destinationNode.Tag is NesMiniApplication || destinationNode.Tag is NesDefaultGame)
- destinationNode = destinationNode.Parent;
- foreach (var newNode in newNodes)
- {
- if (!destinationNode.FullPath.StartsWith(newNode.FullPath) && (destinationNode != newNode.Parent))
- {
- Debug.WriteLine(string.Format("Drag: {0}->{1}", newNode, destinationNode));
- if (newNode.Parent.Tag is NesMenuFolder)
- (newNode.Parent.Tag as NesMenuFolder).ChildMenuCollection.Remove(newNode.Tag as INesMenuElement);
- else if (newNode.Parent.Tag is NesMenuCollection)
- (newNode.Parent.Tag as NesMenuCollection).Remove(newNode.Tag as INesMenuElement);
- newNode.Parent.Nodes.Remove(newNode);
- destinationNode.Nodes.Add(newNode);
- if (destinationNode.Tag is NesMenuFolder)
- (destinationNode.Tag as NesMenuFolder).ChildMenuCollection.Add(newNode.Tag as INesMenuElement);
- else if (destinationNode.Tag is NesMenuCollection)
- (destinationNode.Tag as NesMenuCollection).Add(newNode.Tag as INesMenuElement);
- }
- else
- {
- System.Media.SystemSounds.Hand.Play();
- return false;
- }
- }
- if (showDest)
- treeView.SelectedNode = destinationNode;
-
- if (treeView.SelectedNode == destinationNode)
- ShowSelected();
- else
- foreach (var i in (from n in listViewContent.Items.Cast<ListViewItem>().ToArray() where newNodes.Contains(n.Tag as TreeNode) select n))
- listViewContent.Items.Remove(i);
- foreach (ListViewItem item in listViewContent.Items)
- item.Selected = newNodes.Contains(item.Tag as TreeNode) || item.Tag == destinationNode;
- ShowFolderStats();
- return true;
- }
-
- void newFolder(TreeNode parent = null)
- {
- var newFolder = new NesMenuFolder(Resources.FolderNameNewFolder);
- var folderImageIndex = getImageIndex(newFolder);
- var newnode = new TreeNode(Resources.FolderNameNewFolder, folderImageIndex, folderImageIndex);
- newnode.Tag = newFolder;
- if (parent != null)
- {
- parent.Nodes.Add(newnode);
- treeView.SelectedNode = newnode;
- ShowSelected();
- newnode.BeginEdit();
- }
- else if (treeView.SelectedNode != null)
- {
- parent = treeView.SelectedNode;
- parent.Nodes.Add(newnode);
- ShowFolderStats();
- var item = new ListViewItem(newnode.Text, folderImageIndex);
- item.Tag = newnode;
- listViewContent.SelectedItems.Clear();
- listViewContent.Items.Add(item);
- item.BeginEdit();
- }
- if (parent != null)
- {
- if (parent.Tag is NesMenuFolder)
- (parent.Tag as NesMenuFolder).ChildMenuCollection.Add(newFolder);
- else if (parent.Tag is NesMenuCollection)
- (parent.Tag as NesMenuCollection).Add(newFolder);
- }
- }
-
- TreeNode getFolder(string name)
- {
- var root = treeView.Nodes[0];
- foreach (TreeNode el in root.Nodes)
- {
- if (el.Text == name && el.Tag is NesMenuFolder)
- return el;
- }
- var newFolder = new NesMenuFolder(name);
- var folderImageIndex = getImageIndex(newFolder);
- var newNode = new TreeNode(name, folderImageIndex, folderImageIndex);
- newFolder.Position = NesMenuFolder.Priority.Leftmost;
- newNode.Tag = newFolder;
- (root.Tag as NesMenuCollection).Add(newFolder);
- root.Nodes.Add(newNode);
- return newNode;
- }
-
- void deleteElements(IEnumerable<TreeNode> nodes)
- {
- if (nodes.Count() == 1)
- {
- if (MessageBox.Show(this, string.Format(Resources.DeleteElement, nodes.First().Text),
- Resources.AreYouSure, MessageBoxButtons.YesNo,
- MessageBoxIcon.Warning) != DialogResult.Yes)
- return;
- }
- else
- {
- if (MessageBox.Show(this, string.Format(Resources.DeleteElements, nodes.Count()),
- Resources.AreYouSure, MessageBoxButtons.YesNo,
- MessageBoxIcon.Warning) != DialogResult.Yes)
- return;
- }
- bool needWarn = false;
- TreeNode parent = null;
- foreach (var node in nodes)
- {
- parent = node.Parent;
- if (node.Tag is NesMenuFolder) // Folder
- {
- if (node.Nodes.Count > 0)
- {
- var unsortedFolder = getFolder(Resources.FolderNameTrashBin);
- if (node.FullPath.StartsWith(unsortedFolder.FullPath)) // It's already in trash bin
- {
- (node.Tag as NesMenuFolder).ChildMenuCollection.Unsplit();
- deletedGames.AddRange((node.Tag as NesMenuFolder).ChildMenuCollection);
- (node.Tag as NesMenuFolder).ChildMenuCollection.Clear();
- }
- else
- {
- MoveToFolder(node.Nodes.Cast<TreeNode>().ToArray(), unsortedFolder, false);
- needWarn = true;
- }
- }
- if (parent.Tag is NesMenuFolder)
- (parent.Tag as NesMenuFolder).ChildMenuCollection.Remove(node.Tag as INesMenuElement);
- else if (parent.Tag is NesMenuCollection)
- (parent.Tag as NesMenuCollection).Remove(node.Tag as INesMenuElement);
- parent.Nodes.Remove(node);
- }
- else
- { // Game
- var unsortedFolder = getFolder(Resources.FolderNameTrashBin);
- if (node.FullPath.StartsWith(unsortedFolder.FullPath)) // It's already in trash bin
- {
- deletedGames.Add(node.Tag as INesMenuElement);
- if (parent.Tag is NesMenuFolder)
- (parent.Tag as NesMenuFolder).ChildMenuCollection.Remove(node.Tag as INesMenuElement);
- else if (parent.Tag is NesMenuCollection)
- (parent.Tag as NesMenuCollection).Remove(node.Tag as INesMenuElement);
- parent.Nodes.Remove(node);
- }
- else
- {
- MoveToFolder(new TreeNode[] { node }, unsortedFolder, false);
- needWarn = true;
- }
- }
- foreach (var i in from i in listViewContent.Items.Cast<ListViewItem>().ToArray() where i.Tag == node select i)
- listViewContent.Items.Remove(i);
- cuttedNodes.Remove(node);
- }
- if (parent != null)
- treeView.SelectedNode = parent;
- if (needWarn)
- MessageBox.Show(this, Resources.FolderContent, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- buttonOk.Enabled = treeView.Nodes[0].Nodes.Count > 0;
- }
-
- void cutElements(IEnumerable<TreeNode> nodes)
- {
- foreach (var node in cuttedNodes)
- node.SelectedImageIndex = node.ImageIndex = node.ImageIndex / 2 * 2;
- cuttedNodes.Clear();
-
- foreach (var node in nodes)
- {
- cuttedNodes.Add(node);
- node.SelectedImageIndex = node.ImageIndex = node.ImageIndex / 2 * 2 + 1;
- }
- foreach (ListViewItem item in listViewContent.Items)
- {
- item.ImageIndex = item.ImageIndex / 2 * 2 +
- ((cuttedNodes.Contains(item.Tag as TreeNode)) ? 1 : 0);
- }
- }
-
- void pasteElements(TreeNode node)
- {
- if ((cuttedNodes.Count > 0) && MoveToFolder(cuttedNodes, node))
- {
- cutElements(new TreeNode[0]);
- }
- }
-
- private void renameFolder(object folder)
- {
- if (folder is TreeNode)
- (folder as TreeNode).BeginEdit();
- else if (folder is ListViewItem)
- (folder as ListViewItem).BeginEdit();
- }
-
- private void treeView_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.Delete && e.Modifiers == Keys.None)
- {
- if ((treeView.SelectedNode != null) && !(treeView.SelectedNode.Tag is NesMenuCollection))
- deleteElements(new TreeNode[] { treeView.SelectedNode });
- }
- else if (e.KeyCode == Keys.F2 && e.Modifiers == Keys.None)
- {
- if ((treeView.SelectedNode != null) && (treeView.SelectedNode.Tag is NesMenuFolder))
- renameFolder(treeView.SelectedNode);
- }
- else if (e.KeyCode == Keys.X && e.Modifiers == Keys.Control)
- {
- if ((treeView.SelectedNode != null) && !(treeView.SelectedNode.Tag is NesMenuCollection))
- cutElements(new TreeNode[] { treeView.SelectedNode });
- }
- else if (e.KeyCode == Keys.V && e.Modifiers == Keys.Control)
- {
- if (treeView.SelectedNode != null)
- {
- if ((treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection))
- pasteElements(treeView.SelectedNode);
- else
- pasteElements(treeView.SelectedNode.Parent);
- }
- }
- else if (e.KeyCode == Keys.N && e.Modifiers == Keys.Control)
- {
- if (treeView.SelectedNode != null)
- {
- if (treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection)
- newFolder(treeView.SelectedNode);
- else
- newFolder(treeView.SelectedNode.Parent);
- }
- }
- }
-
- private void listViewContent_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.Delete)
- {
- deleteElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode);
- }
- else if (e.KeyCode == Keys.F2 && e.Modifiers == Keys.None)
- {
- if (listViewContent.SelectedItems.Count != 1) return;
- var item = listViewContent.SelectedItems[0];
- renameFolder(item);
- }
- else if (e.KeyCode == Keys.A && e.Modifiers == Keys.Control)
- {
- foreach (ListViewItem item in listViewContent.Items)
- item.Selected = true;
- }
- else if (e.KeyCode == Keys.X && e.Modifiers == Keys.Control)
- {
- cutElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode);
- }
- else if (e.KeyCode == Keys.V && e.Modifiers == Keys.Control)
- {
- if (treeView.SelectedNode != null)
- {
- if ((treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection))
- pasteElements(treeView.SelectedNode);
- else
- pasteElements(treeView.SelectedNode.Parent);
- }
- }
- else if (e.KeyCode == Keys.N && e.Modifiers == Keys.Control)
- {
- if (treeView.SelectedNode != null && (treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection))
- newFolder();
- }
- }
-
- private void listViewContent_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == (char)13)
- {
- if (listViewContent.SelectedItems.Count != 1) return;
- var item = listViewContent.SelectedItems[0];
-
- if (!((item.Tag as TreeNode).Tag is NesMenuFolder))
- return;
- treeView.SelectedNode = item.Tag as TreeNode;
- }
- else if (e.KeyChar == (char)8)
- {
- if (treeView.SelectedNode != null && treeView.SelectedNode.Parent != null)
- {
- treeView.SelectedNode = treeView.SelectedNode.Parent;
- }
- }
- }
-
- private void buttonOk_Click(object sender, EventArgs e)
- {
- SaveTree();
- DialogResult = DialogResult.OK;
- }
-
- private void buttonCancel_Click(object sender, EventArgs e)
- {
- Close();
- }
-
- private void pictureBoxArt_Click(object sender, EventArgs e)
- {
- if (treeView.SelectedNode != null && treeView.SelectedNode.Tag is NesMenuFolder)
- {
- var folder = treeView.SelectedNode.Tag as NesMenuFolder;
- var form = new SelectIconForm(folder.ImageId);
- if (form.ShowDialog() == DialogResult.OK)
- {
- folder.ImageId = form.listBox.SelectedItem.ToString();
- pictureBoxArt.Image = folder.Image;
- }
- }
- }
-
- private void TreeContructorForm_FormClosing(object sender, FormClosingEventArgs e)
- {
- if (e.CloseReason != CloseReason.UserClosing || DialogResult == System.Windows.Forms.DialogResult.OK) return;
- var a = MessageBox.Show(this, Resources.FoldersSaveQ, this.Text, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
- if (a == System.Windows.Forms.DialogResult.Cancel)
- {
- e.Cancel = true;
- return;
- }
- if (a == System.Windows.Forms.DialogResult.Yes)
- SaveTree();
- DialogResult = DialogResult.Cancel;
- }
-
- void SaveTree()
- {
- Directory.CreateDirectory(Path.GetDirectoryName(FoldersXmlPath));
- File.WriteAllText(FoldersXmlPath, TreeToXml());
- if (mainForm != null)
- {
- for (int i = 0; i < mainForm.checkedListBoxGames.Items.Count; i++)
- {
- if (deletedGames.Contains(mainForm.checkedListBoxGames.Items[i] as NesMiniApplication))
- mainForm.checkedListBoxGames.SetItemChecked(i, false);
- }
- for (int i = 0; i < mainForm.checkedListBoxDefaultGames.Items.Count; i++)
- {
- if (deletedGames.Contains(mainForm.checkedListBoxDefaultGames.Items[i] as NesDefaultGame))
- mainForm.checkedListBoxDefaultGames.SetItemChecked(i, false);
- }
- ConfigIni.Save();
- }
- }
-
- private string TreeToXml()
- {
- var root = treeView.Nodes[0];
- var xml = new XmlDocument();
- var treeNode = xml.CreateElement("Tree");
- xml.AppendChild(treeNode);
- NodeToXml(xml, treeNode, root);
- using (var stringWriter = new StringWriter())
- using (var xmlTextWriter = new XmlTextWriter(stringWriter))
- {
- xmlTextWriter.Formatting = Formatting.Indented;
- xmlTextWriter.WriteStartDocument();
- xml.WriteTo(xmlTextWriter);
- xmlTextWriter.WriteEndDocument();
- xmlTextWriter.Flush();
- return stringWriter.GetStringBuilder().ToString();
- }
- }
- private void NodeToXml(XmlDocument xml, XmlElement element, TreeNode node)
- {
- foreach (TreeNode child in node.Nodes)
- {
- if (child.Tag is NesMenuFolder)
- {
- var subElement = xml.CreateElement("Folder");
- var folder = child.Tag as NesMenuFolder;
- subElement.SetAttribute("name", folder.Name);
- subElement.SetAttribute("icon", folder.ImageId);
- subElement.SetAttribute("position", ((byte)folder.Position).ToString());
- element.AppendChild(subElement);
- NodeToXml(xml, subElement, child);
- }
- else if (child.Tag is NesMiniApplication)
- {
- var subElement = xml.CreateElement("Game");
- var game = child.Tag as NesMiniApplication;
- subElement.SetAttribute("code", game.Code);
- subElement.SetAttribute("name", game.Name);
- element.AppendChild(subElement);
- }
- else if (child.Tag is NesDefaultGame)
- {
- var subElement = xml.CreateElement("OriginalGame");
- var game = child.Tag as NesDefaultGame;
- subElement.SetAttribute("code", game.Code);
- subElement.SetAttribute("name", game.Name);
- element.AppendChild(subElement);
- }
- }
- }
- void XmlToTree(string xmlString)
- {
- gamesCollection.Unsplit();
- var oldCollection = new NesMenuCollection();
- oldCollection.AddRange(gamesCollection);
- var xml = new XmlDocument();
- xml.LoadXml(xmlString);
- gamesCollection.Clear();
- XmlToNode(xml, xml.SelectSingleNode("/Tree").ChildNodes, oldCollection, gamesCollection);
- // oldCollection has only unsorted (new) games
- if (oldCollection.Count > 0)
- {
- NesMenuFolder unsorted;
- var unsorteds = from f in gamesCollection where f is NesMenuFolder && f.Name == Resources.FolderNameUnsorted select f;
- if (unsorteds.Count() > 0)
- unsorted = unsorteds.First() as NesMenuFolder;
- else
- {
- unsorted = new NesMenuFolder(Resources.FolderNameUnsorted);
- unsorted.Position = NesMenuFolder.Priority.Leftmost;
- gamesCollection.Add(unsorted);
- }
- foreach (var game in oldCollection)
- unsorted.ChildMenuCollection.Add(game);
- MessageBox.Show(this, Resources.NewGamesUnsorted, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- DrawTree();
- }
-
- void XmlToNode(XmlDocument xml, XmlNodeList elements, NesMenuCollection rootMenuCollection, NesMenuCollection nesMenuCollection = null)
- {
- if (nesMenuCollection == null)
- nesMenuCollection = rootMenuCollection;
- foreach (XmlNode element in elements)
- {
- switch (element.Name)
- {
- case "Folder":
- var folder = new NesMenuFolder(element.Attributes["name"].Value, element.Attributes["icon"].Value);
- folder.Position = (NesMenuFolder.Priority)byte.Parse(element.Attributes["position"].Value);
- nesMenuCollection.Add(folder);
- XmlToNode(xml, element.ChildNodes, rootMenuCollection, folder.ChildMenuCollection);
- break;
- case "Game":
- case "OriginalGame":
- var code = element.Attributes["code"].Value;
- var games = from n in rootMenuCollection where ((n is NesMiniApplication || n is NesDefaultGame) && (n.Code == code)) select n;
- if (games.Count() > 0)
- {
- var game = games.First();
- nesMenuCollection.Add(game);
- rootMenuCollection.Remove(game);
- }
- break;
- }
- }
- }
- }
-}
+using com.clusterrr.hakchi_gui.Properties; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Diagnostics; +using System.Drawing; +using System.IO; +using System.Linq; +using System.Threading; +using System.Windows.Forms; +using System.Xml; + +namespace com.clusterrr.hakchi_gui +{ + public partial class FoldersManagerForm : Form + { + public static string FoldersXmlPath = Path.Combine(Path.Combine(Program.BaseDirectoryExternal, ConfigIni.ConfigDir), "folders.xml"); + List<TreeNode> cuttedNodes = new List<TreeNode>(); + List<INesMenuElement> deletedGames = new List<INesMenuElement>(); + NesMenuCollection gamesCollection = new NesMenuCollection(); + MainForm mainForm; + private class NodeSorter : IComparer + { + public int Compare(object o1, object o2) + { + if (o1 is ListViewItem) + o1 = (o1 as ListViewItem).Tag; + if (o2 is ListViewItem) + o2 = (o2 as ListViewItem).Tag; + + if ((o1 as TreeNode).Tag is NesMenuCollection) return -1; // Root is always first + if ((o2 as TreeNode).Tag is NesMenuCollection) return 1; + INesMenuElement el1 = (o1 as TreeNode).Tag as INesMenuElement; + INesMenuElement el2 = (o2 as TreeNode).Tag as INesMenuElement; + var pos1 = 2; + var pos2 = 2; + if (el1 is NesMenuFolder) pos1 = (int)(el1 as NesMenuFolder).Position; + if (el2 is NesMenuFolder) pos2 = (int)(el2 as NesMenuFolder).Position; + if (pos1 != pos2) return pos1.CompareTo(pos2); + return el1.Name.CompareTo(el2.Name); + } + } + + public FoldersManagerForm(NesMenuCollection nesMenuCollection, MainForm mainForm = null) + { + try + { + InitializeComponent(); + gamesCollection = nesMenuCollection; + this.mainForm = mainForm; + if (File.Exists(FoldersXmlPath)) + { + try + { + XmlToTree(File.ReadAllText(FoldersXmlPath)); + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + File.Delete(FoldersXmlPath); + throw ex; + } + } + else DrawTree(); + splitContainer.Panel2MinSize = 485; + comboBoxPosition.Left = labelPosition.Left + labelPosition.Width; + treeView.TreeViewNodeSorter = new NodeSorter(); + listViewContent.ListViewItemSorter = new NodeSorter(); + } + catch (Exception ex) + { + var message = ex.Message; +#if DEBUG + message += ex.StackTrace; +#endif + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + void DrawTree() + { + cuttedNodes.Clear(); + treeView.Nodes.Clear(); + var folderImageIndex = getImageIndex(null); + var rootNode = new TreeNode(Resources.MainMenu, folderImageIndex, folderImageIndex); + treeView.Nodes.Add(rootNode); + rootNode.Tag = gamesCollection; + AddNodes(rootNode.Nodes, gamesCollection); + rootNode.Expand(); + treeView.SelectedNode = rootNode; + } + + void DrawSplitTree(NesMenuCollection.SplitStyle splitStyle = NesMenuCollection.SplitStyle.NoSplit) + { + var node = treeView.SelectedNode; + NesMenuCollection collection; + if (node.Tag is NesMenuFolder) + collection = (node.Tag as NesMenuFolder).ChildMenuCollection; + else if (node.Tag is NesMenuCollection) + collection = node.Tag as NesMenuCollection; + else return; + // Collide and resplit collection + collection.Unsplit(); + collection.Split(splitStyle, ConfigIni.MaxGamesPerFolder); + // Refill nodes with new collection + node.Nodes.Clear(); + AddNodes(node.Nodes, collection); + node.Expand(); + treeView.SelectedNode = node; + ShowSelected(); + } + + static int getImageIndex(INesMenuElement nesElement) + { + if (nesElement == null || nesElement is NesMenuFolder || nesElement is NesMenuCollection) + return 12; + + if (nesElement is Sega32XGame) + return 0; + if (nesElement is Atari2600Game) + return 2; + if (nesElement is ArcadeGame) + return 6; + if (nesElement is NesUGame) + return 8; + if (nesElement is FdsGame) + return 10; + if (nesElement is GbGame) + return 14; + if (nesElement is GbaGame) + return 16; + if (nesElement is GbcGame) + return 18; + if (nesElement is GenesisGame) + return 20; + if (nesElement is GameGearGame) + return 22; + if (nesElement is N64Game) + return 24; + if (nesElement is NesGame) + return 28; + if (nesElement is NesDefaultGame) + return 30; + if (nesElement is PceGame) + return 32; + if (nesElement is SmsGame) + return 34; + if (nesElement is SnesGame) + return 36; + + return 4; + } + + void AddNodes(TreeNodeCollection treeNodeCollection, NesMenuCollection nesMenuCollection, List<NesMenuCollection> usedFolders = null) + { + if (usedFolders == null) + usedFolders = new List<NesMenuCollection>(); + if (usedFolders.Contains(nesMenuCollection)) + return; + usedFolders.Add(nesMenuCollection); + var sorted = nesMenuCollection.OrderBy(o => o.Name).OrderBy(o => (o is NesMenuFolder) ? (byte)(o as NesMenuFolder).Position : 2); + foreach (var nesElement in sorted) + { + var newNode = new TreeNode(); + if (nesElement is NesMenuFolder) + { + if (usedFolders.Contains((nesElement as NesMenuFolder).ChildMenuCollection)) + { + nesMenuCollection.Remove(nesElement); // We don't need any "back" folders + continue; + } + } + newNode.SelectedImageIndex = newNode.ImageIndex = getImageIndex(nesElement as INesMenuElement); + newNode.Text = nesElement.Name; + newNode.Tag = nesElement; + treeNodeCollection.Add(newNode); + if (nesElement is NesMenuFolder) + { + AddNodes(newNode.Nodes, (nesElement as NesMenuFolder).ChildMenuCollection, usedFolders); + } + } + } + + private void buttonNoFolders_Click(object sender, EventArgs e) + { + DrawSplitTree(NesMenuCollection.SplitStyle.NoSplit); + } + + private void buttonNoFoldersOriginal_Click(object sender, EventArgs e) + { + DrawSplitTree(NesMenuCollection.SplitStyle.Original_NoSplit); + } + + private void buttonFoldersEqually_Click(object sender, EventArgs e) + { + DrawSplitTree(NesMenuCollection.SplitStyle.FoldersEqual); + } + + private void buttonFoldersEquallyOriginal_Click(object sender, EventArgs e) + { + DrawSplitTree(NesMenuCollection.SplitStyle.Original_FoldersEqual); + } + + private void buttonFoldersLetters_Click(object sender, EventArgs e) + { + DrawSplitTree(NesMenuCollection.SplitStyle.FoldersAlphabetic_FoldersEqual); + } + + private void buttonFoldersLettersOriginal_Click(object sender, EventArgs e) + { + DrawSplitTree(NesMenuCollection.SplitStyle.Original_FoldersAlphabetic_FoldersEqual); + } + + private void treeView_AfterSelect(object sender, TreeViewEventArgs e) + { + ShowSelected(); + } + + private void ShowSelected() + { + var node = treeView.SelectedNode; + listViewContent.Clear(); + if (node != null && (node.Nodes.Count > 0 || node.Tag is NesMenuFolder)) // Folder or root + { + pictureBoxArt.Image = (node.Tag is NesMenuFolder) ? (node.Tag as NesMenuFolder).Image : null; + groupBoxArt.Enabled = (node.Tag is NesMenuFolder); + groupBoxSplitModes.Enabled = true; + pictureBoxArt.Cursor = Cursors.Hand; + listViewContent.Enabled = true; + foreach (TreeNode n in node.Nodes) + { + var element = (INesMenuElement)n.Tag; + var item = new ListViewItem(); + item.Text = element.Name; + var transparency = cuttedNodes.Contains(n) ? 1 : 0; + item.ImageIndex = getImageIndex(element) + transparency; + item.Tag = n; + listViewContent.Items.Add(item); + } + } + else + { + if (node != null && node.Tag is NesMiniApplication) + { + var game = node.Tag as NesMiniApplication; + pictureBoxArt.Image = NesMiniApplication.LoadBitmap(game.IconPath); + groupBoxArt.Enabled = true; + listViewContent.Enabled = false; + } + else //if (e.Node.Tag is NesDefaultGame) + { + pictureBoxArt.Image = null; + groupBoxArt.Enabled = false; + } + listViewContent.Enabled = false; + groupBoxSplitModes.Enabled = false; + pictureBoxArt.Cursor = Cursors.Default; + } + ShowFolderStats(); + } + + void ShowFolderStats() + { + var node = treeView.SelectedNode; + if (node != null && (node.Tag is NesMenuCollection || node.Tag is NesMenuFolder)) // Folder or root + { + labelElementCount.Text = string.Format(Resources.FolderStatistics, node.Text, node.Nodes.Count); + buttonNewFolder.Enabled = true; + } + else + { + labelElementCount.Text = ""; + buttonNewFolder.Enabled = false; + } + if (node != null && node.Tag is NesMenuFolder) // Folder + { + labelPosition.Enabled = comboBoxPosition.Enabled = true; + var folder = node.Tag as NesMenuFolder; + var position = (int)folder.Position; + if (position > 1) position--; + comboBoxPosition.SelectedIndex = position; + } + else + { + labelPosition.Enabled = comboBoxPosition.Enabled = false; + comboBoxPosition.SelectedIndex = -1; + } + } + + private void listViewContent_MouseDoubleClick(object sender, MouseEventArgs e) + { + if (e.Button == System.Windows.Forms.MouseButtons.Left && listViewContent.SelectedItems.Count == 1) + { + var node = (listViewContent.SelectedItems[0].Tag as TreeNode); + treeView.SelectedNode = node; + //node.Expand(); + } + } + + private void treeView_BeforeLabelEdit(object sender, NodeLabelEditEventArgs e) + { + if (!(e.Node.Tag is NesMenuFolder)) + e.CancelEdit = true; + } + + private void treeView_AfterLabelEdit(object sender, NodeLabelEditEventArgs e) + { + if (!(e.Node.Tag is NesMenuFolder) || + string.IsNullOrEmpty(e.Label) || string.IsNullOrEmpty(e.Label.Trim())) + e.CancelEdit = true; + else + { + e.Node.Text = e.Label; + (e.Node.Tag as INesMenuElement).Name = e.Label; + var parent = e.Node.Parent; + FixSort(e.Node); + } + } + + private void listViewContent_BeforeLabelEdit(object sender, LabelEditEventArgs e) + { + if (!((listViewContent.Items[e.Item].Tag as TreeNode).Tag is NesMenuFolder)) + e.CancelEdit = true; + } + + private void listViewContent_AfterLabelEdit(object sender, LabelEditEventArgs e) + { + if (string.IsNullOrEmpty(e.Label) || string.IsNullOrEmpty(e.Label.Trim())) + e.CancelEdit = true; + else + { + var item = listViewContent.Items[e.Item]; + var node = item.Tag as TreeNode; + node.Text = e.Label; + (node.Tag as INesMenuElement).Name = e.Label; + FixSort(item); + } + } + + private void FixSort(object o) + { + // This is most simple to resort node without resorting the whole tree/list + new Thread(KostilKostilevich).Start(o); + } + private void KostilKostilevich(object o) + { + // This is stupid workaround for resort after renaming item, lol + if (InvokeRequired) + { + Invoke(new Action<object>(KostilKostilevich), new object[] { o }); + return; + } + if (o is TreeNode) + { + var node = o as TreeNode; + var parent = node.Parent; + parent.Nodes.Remove(node); + parent.Nodes.Add(node); + treeView.SelectedNode = node; + ShowFolderStats(); + } + if (o is ListViewItem) + { + var item = o as ListViewItem; + listViewContent.Items.Remove(item); + listViewContent.Items.Add(item); + var node = item.Tag as TreeNode; + var parent = node.Parent; + parent.Nodes.Remove(node); + parent.Nodes.Add(node); + } + } + + private void treeView_ItemDrag(object sender, ItemDragEventArgs e) + { + if ((e.Button == MouseButtons.Left) && !((e.Item as TreeNode).Tag is NesMenuCollection)) // We can't drag root + DoDragDrop(new TreeNode[] { (TreeNode)e.Item }, DragDropEffects.Move); + } + + private void listViewContent_ItemDrag(object sender, ItemDragEventArgs e) + { + if (e.Button != MouseButtons.Left) return; + var nodes = new List<TreeNode>(); + foreach (ListViewItem i in listViewContent.SelectedItems) + nodes.Add(i.Tag as TreeNode); + DoDragDrop(nodes.ToArray(), DragDropEffects.Move); + } + + private void treeView_DragEnter(object sender, DragEventArgs e) + { + if (e.Data.GetDataPresent("System.Windows.Forms.TreeNode[]", false)) + e.Effect = DragDropEffects.Move; + } + + private void treeView_DragDrop(object sender, DragEventArgs e) + { + if (e.Data.GetDataPresent("System.Windows.Forms.TreeNode[]", false)) + { + TreeNode destinationNode; + if (sender is TreeView) + { + Point pt = ((TreeView)sender).PointToClient(new Point(e.X, e.Y)); + destinationNode = ((TreeView)sender).GetNodeAt(pt); + } + else + { + Point pt = ((ListView)sender).PointToClient(new Point(e.X, e.Y)); + var item = ((ListView)sender).GetItemAt(pt.X, pt.Y); + if (item == null) + destinationNode = treeView.SelectedNode; + else + destinationNode = (TreeNode)item.Tag; + } + var newNodes = (TreeNode[])e.Data.GetData("System.Windows.Forms.TreeNode[]"); + MoveToFolder(newNodes, destinationNode, false); + if (sender is TreeView) + treeView.Select(); + else + listViewContent.Select(); + } + } + + private void buttonNewFolder_Click(object sender, EventArgs e) + { + newFolder(null); + } + + private void comboBoxPosition_SelectionChangeCommitted(object sender, EventArgs e) + { + if (!(treeView.SelectedNode.Tag is NesMenuFolder)) return; + int value = comboBoxPosition.SelectedIndex; + if (value >= 2) value++; + var node = treeView.SelectedNode; + var folder = (node.Tag as NesMenuFolder); + folder.Position = (NesMenuFolder.Priority)value; + FixSort(node); + } + + private void renameToolStripMenuItem_Click(object sender, EventArgs e) + { + renameFolder((sender as ToolStripMenuItem).Tag); + } + + private void deleteToolStripMenuItem_Click(object sender, EventArgs e) + { + if ((sender as ToolStripMenuItem).Tag is TreeNode) + deleteElements(new TreeNode[] { treeView.SelectedNode }); + else + if ((sender as ToolStripMenuItem).Tag is ListView) + deleteElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode); + } + private void cutToolStripMenuItem_Click(object sender, EventArgs e) + { + if ((sender as ToolStripMenuItem).Tag is TreeNode) + cutElements(new TreeNode[] { treeView.SelectedNode }); + else + if ((sender as ToolStripMenuItem).Tag is ListView) + cutElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode); + } + + private void pasteToolStripMenuItem_Click(object sender, EventArgs e) + { + pasteElements(treeView.SelectedNode); + } + + private void treeView_MouseDown(object sender, MouseEventArgs e) + { + if (e.Button != MouseButtons.Right) return; + if (sender is TreeView) + { + var destinationNode = ((TreeView)sender).GetNodeAt(e.X, e.Y); + if (destinationNode == null) destinationNode = treeView.Nodes[0]; // Root + + newFolderToolStripMenuItem.Tag = deleteToolStripMenuItem.Tag = renameToolStripMenuItem.Tag = + cutToolStripMenuItem.Tag = pasteToolStripMenuItem.Tag = destinationNode; + newFolderToolStripMenuItem.Enabled = true; + if ((destinationNode.Tag is NesMenuFolder || destinationNode.Tag is NesMenuCollection)) // Folder + treeView.SelectedNode = destinationNode; + else + newFolderToolStripMenuItem.Tag = destinationNode.Parent; + renameToolStripMenuItem.Enabled = destinationNode.Tag is NesMenuFolder; // Folder + cutToolStripMenuItem.Enabled = deleteToolStripMenuItem.Enabled = !(destinationNode.Tag is NesMenuCollection); // Not root + pasteToolStripMenuItem.Enabled = cuttedNodes.Count > 0; + } + else + { + var item = ((ListView)sender).GetItemAt(e.X, e.Y); + if (listViewContent.SelectedItems.Count == 0 && item != null) item.Selected = true; + renameToolStripMenuItem.Tag = item; + newFolderToolStripMenuItem.Tag = deleteToolStripMenuItem.Tag = cutToolStripMenuItem.Tag = pasteToolStripMenuItem.Tag = listViewContent; + newFolderToolStripMenuItem.Enabled = treeView.SelectedNode != null && (treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection); // Folder + renameToolStripMenuItem.Enabled = (item != null) && (item.Tag as TreeNode).Tag is NesMenuFolder; + cutToolStripMenuItem.Enabled = deleteToolStripMenuItem.Enabled = listViewContent.SelectedItems.Count > 0; + pasteToolStripMenuItem.Enabled = cuttedNodes.Count > 0; + } + contextMenuStrip.Show(sender as Control, e.X, e.Y); + } + + private void newFolderToolStripMenuItem_Click(object sender, EventArgs e) + { + if ((sender as ToolStripMenuItem).Tag is TreeNode) + newFolder((sender as ToolStripMenuItem).Tag as TreeNode); + else + newFolder(null); + } + bool MoveToFolder(IEnumerable<TreeNode> newNodes, TreeNode destinationNode, bool showDest = true) + { + if (destinationNode == null) + destinationNode = treeView.Nodes[0]; // Root + if (destinationNode.Tag is NesMiniApplication || destinationNode.Tag is NesDefaultGame) + destinationNode = destinationNode.Parent; + foreach (var newNode in newNodes) + { + if (!destinationNode.FullPath.StartsWith(newNode.FullPath) && (destinationNode != newNode.Parent)) + { + Debug.WriteLine(string.Format("Drag: {0}->{1}", newNode, destinationNode)); + if (newNode.Parent.Tag is NesMenuFolder) + (newNode.Parent.Tag as NesMenuFolder).ChildMenuCollection.Remove(newNode.Tag as INesMenuElement); + else if (newNode.Parent.Tag is NesMenuCollection) + (newNode.Parent.Tag as NesMenuCollection).Remove(newNode.Tag as INesMenuElement); + newNode.Parent.Nodes.Remove(newNode); + destinationNode.Nodes.Add(newNode); + if (destinationNode.Tag is NesMenuFolder) + (destinationNode.Tag as NesMenuFolder).ChildMenuCollection.Add(newNode.Tag as INesMenuElement); + else if (destinationNode.Tag is NesMenuCollection) + (destinationNode.Tag as NesMenuCollection).Add(newNode.Tag as INesMenuElement); + } + else + { + System.Media.SystemSounds.Hand.Play(); + return false; + } + } + if (showDest) + treeView.SelectedNode = destinationNode; + + if (treeView.SelectedNode == destinationNode) + ShowSelected(); + else + foreach (var i in (from n in listViewContent.Items.Cast<ListViewItem>().ToArray() where newNodes.Contains(n.Tag as TreeNode) select n)) + listViewContent.Items.Remove(i); + foreach (ListViewItem item in listViewContent.Items) + item.Selected = newNodes.Contains(item.Tag as TreeNode) || item.Tag == destinationNode; + ShowFolderStats(); + return true; + } + + void newFolder(TreeNode parent = null) + { + var newFolder = new NesMenuFolder(Resources.FolderNameNewFolder); + var folderImageIndex = getImageIndex(newFolder); + var newnode = new TreeNode(Resources.FolderNameNewFolder, folderImageIndex, folderImageIndex); + newnode.Tag = newFolder; + if (parent != null) + { + parent.Nodes.Add(newnode); + treeView.SelectedNode = newnode; + ShowSelected(); + newnode.BeginEdit(); + } + else if (treeView.SelectedNode != null) + { + parent = treeView.SelectedNode; + parent.Nodes.Add(newnode); + ShowFolderStats(); + var item = new ListViewItem(newnode.Text, folderImageIndex); + item.Tag = newnode; + listViewContent.SelectedItems.Clear(); + listViewContent.Items.Add(item); + item.BeginEdit(); + } + if (parent != null) + { + if (parent.Tag is NesMenuFolder) + (parent.Tag as NesMenuFolder).ChildMenuCollection.Add(newFolder); + else if (parent.Tag is NesMenuCollection) + (parent.Tag as NesMenuCollection).Add(newFolder); + } + } + + TreeNode getFolder(string name) + { + var root = treeView.Nodes[0]; + foreach (TreeNode el in root.Nodes) + { + if (el.Text == name && el.Tag is NesMenuFolder) + return el; + } + var newFolder = new NesMenuFolder(name); + var folderImageIndex = getImageIndex(newFolder); + var newNode = new TreeNode(name, folderImageIndex, folderImageIndex); + newFolder.Position = NesMenuFolder.Priority.Leftmost; + newNode.Tag = newFolder; + (root.Tag as NesMenuCollection).Add(newFolder); + root.Nodes.Add(newNode); + return newNode; + } + + void deleteElements(IEnumerable<TreeNode> nodes) + { + if (nodes.Count() == 1) + { + if (MessageBox.Show(this, string.Format(Resources.DeleteElement, nodes.First().Text), + Resources.AreYouSure, MessageBoxButtons.YesNo, + MessageBoxIcon.Warning) != DialogResult.Yes) + return; + } + else + { + if (MessageBox.Show(this, string.Format(Resources.DeleteElements, nodes.Count()), + Resources.AreYouSure, MessageBoxButtons.YesNo, + MessageBoxIcon.Warning) != DialogResult.Yes) + return; + } + bool needWarn = false; + TreeNode parent = null; + foreach (var node in nodes) + { + parent = node.Parent; + if (node.Tag is NesMenuFolder) // Folder + { + if (node.Nodes.Count > 0) + { + var unsortedFolder = getFolder(Resources.FolderNameTrashBin); + if (node.FullPath.StartsWith(unsortedFolder.FullPath)) // It's already in trash bin + { + (node.Tag as NesMenuFolder).ChildMenuCollection.Unsplit(); + deletedGames.AddRange((node.Tag as NesMenuFolder).ChildMenuCollection); + (node.Tag as NesMenuFolder).ChildMenuCollection.Clear(); + } + else + { + MoveToFolder(node.Nodes.Cast<TreeNode>().ToArray(), unsortedFolder, false); + needWarn = true; + } + } + if (parent.Tag is NesMenuFolder) + (parent.Tag as NesMenuFolder).ChildMenuCollection.Remove(node.Tag as INesMenuElement); + else if (parent.Tag is NesMenuCollection) + (parent.Tag as NesMenuCollection).Remove(node.Tag as INesMenuElement); + parent.Nodes.Remove(node); + } + else + { // Game + var unsortedFolder = getFolder(Resources.FolderNameTrashBin); + if (node.FullPath.StartsWith(unsortedFolder.FullPath)) // It's already in trash bin + { + deletedGames.Add(node.Tag as INesMenuElement); + if (parent.Tag is NesMenuFolder) + (parent.Tag as NesMenuFolder).ChildMenuCollection.Remove(node.Tag as INesMenuElement); + else if (parent.Tag is NesMenuCollection) + (parent.Tag as NesMenuCollection).Remove(node.Tag as INesMenuElement); + parent.Nodes.Remove(node); + } + else + { + MoveToFolder(new TreeNode[] { node }, unsortedFolder, false); + needWarn = true; + } + } + foreach (var i in from i in listViewContent.Items.Cast<ListViewItem>().ToArray() where i.Tag == node select i) + listViewContent.Items.Remove(i); + cuttedNodes.Remove(node); + } + if (parent != null) + treeView.SelectedNode = parent; + if (needWarn) + MessageBox.Show(this, Resources.FolderContent, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); + buttonOk.Enabled = treeView.Nodes[0].Nodes.Count > 0; + } + + void cutElements(IEnumerable<TreeNode> nodes) + { + foreach (var node in cuttedNodes) + node.SelectedImageIndex = node.ImageIndex = node.ImageIndex / 2 * 2; + cuttedNodes.Clear(); + + foreach (var node in nodes) + { + cuttedNodes.Add(node); + node.SelectedImageIndex = node.ImageIndex = node.ImageIndex / 2 * 2 + 1; + } + foreach (ListViewItem item in listViewContent.Items) + { + item.ImageIndex = item.ImageIndex / 2 * 2 + + ((cuttedNodes.Contains(item.Tag as TreeNode)) ? 1 : 0); + } + } + + void pasteElements(TreeNode node) + { + if ((cuttedNodes.Count > 0) && MoveToFolder(cuttedNodes, node)) + { + cutElements(new TreeNode[0]); + } + } + + private void renameFolder(object folder) + { + if (folder is TreeNode) + (folder as TreeNode).BeginEdit(); + else if (folder is ListViewItem) + (folder as ListViewItem).BeginEdit(); + } + + private void treeView_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.Delete && e.Modifiers == Keys.None) + { + if ((treeView.SelectedNode != null) && !(treeView.SelectedNode.Tag is NesMenuCollection)) + deleteElements(new TreeNode[] { treeView.SelectedNode }); + } + else if (e.KeyCode == Keys.F2 && e.Modifiers == Keys.None) + { + if ((treeView.SelectedNode != null) && (treeView.SelectedNode.Tag is NesMenuFolder)) + renameFolder(treeView.SelectedNode); + } + else if (e.KeyCode == Keys.X && e.Modifiers == Keys.Control) + { + if ((treeView.SelectedNode != null) && !(treeView.SelectedNode.Tag is NesMenuCollection)) + cutElements(new TreeNode[] { treeView.SelectedNode }); + } + else if (e.KeyCode == Keys.V && e.Modifiers == Keys.Control) + { + if (treeView.SelectedNode != null) + { + if ((treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection)) + pasteElements(treeView.SelectedNode); + else + pasteElements(treeView.SelectedNode.Parent); + } + } + else if (e.KeyCode == Keys.N && e.Modifiers == Keys.Control) + { + if (treeView.SelectedNode != null) + { + if (treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection) + newFolder(treeView.SelectedNode); + else + newFolder(treeView.SelectedNode.Parent); + } + } + } + + private void listViewContent_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.Delete) + { + deleteElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode); + } + else if (e.KeyCode == Keys.F2 && e.Modifiers == Keys.None) + { + if (listViewContent.SelectedItems.Count != 1) return; + var item = listViewContent.SelectedItems[0]; + renameFolder(item); + } + else if (e.KeyCode == Keys.A && e.Modifiers == Keys.Control) + { + foreach (ListViewItem item in listViewContent.Items) + item.Selected = true; + } + else if (e.KeyCode == Keys.X && e.Modifiers == Keys.Control) + { + cutElements(from i in listViewContent.SelectedItems.Cast<ListViewItem>().ToArray() select i.Tag as TreeNode); + } + else if (e.KeyCode == Keys.V && e.Modifiers == Keys.Control) + { + if (treeView.SelectedNode != null) + { + if ((treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection)) + pasteElements(treeView.SelectedNode); + else + pasteElements(treeView.SelectedNode.Parent); + } + } + else if (e.KeyCode == Keys.N && e.Modifiers == Keys.Control) + { + if (treeView.SelectedNode != null && (treeView.SelectedNode.Tag is NesMenuFolder || treeView.SelectedNode.Tag is NesMenuCollection)) + newFolder(); + } + } + + private void listViewContent_KeyPress(object sender, KeyPressEventArgs e) + { + if (e.KeyChar == (char)13) + { + if (listViewContent.SelectedItems.Count != 1) return; + var item = listViewContent.SelectedItems[0]; + + if (!((item.Tag as TreeNode).Tag is NesMenuFolder)) + return; + treeView.SelectedNode = item.Tag as TreeNode; + } + else if (e.KeyChar == (char)8) + { + if (treeView.SelectedNode != null && treeView.SelectedNode.Parent != null) + { + treeView.SelectedNode = treeView.SelectedNode.Parent; + } + } + } + + private void buttonOk_Click(object sender, EventArgs e) + { + SaveTree(); + DialogResult = DialogResult.OK; + } + + private void buttonCancel_Click(object sender, EventArgs e) + { + Close(); + } + + private void pictureBoxArt_Click(object sender, EventArgs e) + { + if (treeView.SelectedNode != null && treeView.SelectedNode.Tag is NesMenuFolder) + { + var folder = treeView.SelectedNode.Tag as NesMenuFolder; + var form = new SelectIconForm(folder.ImageId); + if (form.ShowDialog() == DialogResult.OK) + { + folder.ImageId = form.listBox.SelectedItem.ToString(); + pictureBoxArt.Image = folder.Image; + } + } + } + + private void TreeContructorForm_FormClosing(object sender, FormClosingEventArgs e) + { + if (e.CloseReason != CloseReason.UserClosing || DialogResult == System.Windows.Forms.DialogResult.OK) return; + var a = MessageBox.Show(this, Resources.FoldersSaveQ, this.Text, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); + if (a == System.Windows.Forms.DialogResult.Cancel) + { + e.Cancel = true; + return; + } + if (a == System.Windows.Forms.DialogResult.Yes) + SaveTree(); + DialogResult = DialogResult.Cancel; + } + + void SaveTree() + { + Directory.CreateDirectory(Path.GetDirectoryName(FoldersXmlPath)); + File.WriteAllText(FoldersXmlPath, TreeToXml()); + if (mainForm != null) + { + for (int i = 0; i < mainForm.checkedListBoxGames.Items.Count; i++) + { + if (deletedGames.Contains(mainForm.checkedListBoxGames.Items[i] as NesMiniApplication)) + mainForm.checkedListBoxGames.SetItemChecked(i, false); + } + + ConfigIni.Save(); + } + } + + private string TreeToXml() + { + var root = treeView.Nodes[0]; + var xml = new XmlDocument(); + var treeNode = xml.CreateElement("Tree"); + xml.AppendChild(treeNode); + NodeToXml(xml, treeNode, root); + using (var stringWriter = new StringWriter()) + using (var xmlTextWriter = new XmlTextWriter(stringWriter)) + { + xmlTextWriter.Formatting = Formatting.Indented; + xmlTextWriter.WriteStartDocument(); + xml.WriteTo(xmlTextWriter); + xmlTextWriter.WriteEndDocument(); + xmlTextWriter.Flush(); + return stringWriter.GetStringBuilder().ToString(); + } + } + private void NodeToXml(XmlDocument xml, XmlElement element, TreeNode node) + { + foreach (TreeNode child in node.Nodes) + { + if (child.Tag is NesMenuFolder) + { + var subElement = xml.CreateElement("Folder"); + var folder = child.Tag as NesMenuFolder; + subElement.SetAttribute("name", folder.Name); + subElement.SetAttribute("icon", folder.ImageId); + subElement.SetAttribute("position", ((byte)folder.Position).ToString()); + element.AppendChild(subElement); + NodeToXml(xml, subElement, child); + } + else if (child.Tag is NesMiniApplication) + { + var subElement = xml.CreateElement("Game"); + var game = child.Tag as NesMiniApplication; + subElement.SetAttribute("code", game.Code); + subElement.SetAttribute("name", game.Name); + element.AppendChild(subElement); + } + else if (child.Tag is NesDefaultGame) + { + var subElement = xml.CreateElement("OriginalGame"); + var game = child.Tag as NesDefaultGame; + subElement.SetAttribute("code", game.Code); + subElement.SetAttribute("name", game.Name); + element.AppendChild(subElement); + } + } + } + void XmlToTree(string xmlString) + { + gamesCollection.Unsplit(); + var oldCollection = new NesMenuCollection(); + oldCollection.AddRange(gamesCollection); + var xml = new XmlDocument(); + xml.LoadXml(xmlString); + gamesCollection.Clear(); + XmlToNode(xml, xml.SelectSingleNode("/Tree").ChildNodes, oldCollection, gamesCollection); + // oldCollection has only unsorted (new) games + if (oldCollection.Count > 0) + { + NesMenuFolder unsorted; + var unsorteds = from f in gamesCollection where f is NesMenuFolder && f.Name == Resources.FolderNameUnsorted select f; + if (unsorteds.Count() > 0) + unsorted = unsorteds.First() as NesMenuFolder; + else + { + unsorted = new NesMenuFolder(Resources.FolderNameUnsorted); + unsorted.Position = NesMenuFolder.Priority.Leftmost; + gamesCollection.Add(unsorted); + } + foreach (var game in oldCollection) + unsorted.ChildMenuCollection.Add(game); + MessageBox.Show(this, Resources.NewGamesUnsorted, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + DrawTree(); + } + + void XmlToNode(XmlDocument xml, XmlNodeList elements, NesMenuCollection rootMenuCollection, NesMenuCollection nesMenuCollection = null) + { + if (nesMenuCollection == null) + nesMenuCollection = rootMenuCollection; + foreach (XmlNode element in elements) + { + switch (element.Name) + { + case "Folder": + var folder = new NesMenuFolder(element.Attributes["name"].Value, element.Attributes["icon"].Value); + folder.Position = (NesMenuFolder.Priority)byte.Parse(element.Attributes["position"].Value); + nesMenuCollection.Add(folder); + XmlToNode(xml, element.ChildNodes, rootMenuCollection, folder.ChildMenuCollection); + break; + case "Game": + case "OriginalGame": + var code = element.Attributes["code"].Value; + var games = from n in rootMenuCollection where ((n is NesMiniApplication || n is NesDefaultGame) && (n.Code == code)) select n; + if (games.Count() > 0) + { + var game = games.First(); + nesMenuCollection.Add(game); + rootMenuCollection.Remove(game); + } + break; + } + } + } + } +} diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs index de6de7ec..f5a02e49 100644 --- a/MainForm.Designer.cs +++ b/MainForm.Designer.cs @@ -1,1152 +1,1129 @@ -namespace com.clusterrr.hakchi_gui
-{
- partial class MainForm
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
- this.menuStrip = new System.Windows.Forms.MenuStrip();
- this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.addMoreGamesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.presetsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
- this.addPresetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.deletePresetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.synchronizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.searchToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.downloadCoversForAllGamesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
- this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.kernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.dumpKernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.flashOriginalKernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.flashCustomKernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.uninstallToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.modulesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.installModulesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.uninstallModulesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.languageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.consoleTypeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.nESMiniToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.famicomMiniToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.cloverconHackToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.resetUsingCombinationOfButtonsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.selectButtonCombinationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.enableAutofireToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.useXYOnClassicControllerAsAutofireABToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.upABStartOnSecondControllerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.useExtendedFontToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.epilepsyProtectionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.compressGamesIfPossibleToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.pagesfoldersTypeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.disablePagefoldersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator();
- this.automaticToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.automaticOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.pagesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.pagesOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.foldersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.foldersOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.foldersSplitByFirstLetterToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.foldersSplitByFirstLetterOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.maximumGamesPerFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max20toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max25toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max30toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max35toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max40toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max45toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max50toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max60toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max70toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max80toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max90toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.max100toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripSeparator();
- this.customToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripSeparator();
- this.saveSettingsToNESMiniNowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.saveStateManagerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem6 = new System.Windows.Forms.ToolStripSeparator();
- this.FTPToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.openFTPInExplorerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem7 = new System.Windows.Forms.ToolStripSeparator();
- this.shellToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.openTelnetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripMenuItem8 = new System.Windows.Forms.ToolStripSeparator();
- this.takeScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.gitHubPageWithActualReleasesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.fAQToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.checkedListBoxGames = new System.Windows.Forms.CheckedListBox();
- this.groupBoxOptions = new System.Windows.Forms.GroupBox();
- this.buttonShowGameGenieDatabase = new System.Windows.Forms.Button();
- this.maskedTextBoxReleaseDate = new System.Windows.Forms.MaskedTextBox();
- this.label1 = new System.Windows.Forms.Label();
- this.textBoxGameGenie = new System.Windows.Forms.TextBox();
- this.label7 = new System.Windows.Forms.Label();
- this.label6 = new System.Windows.Forms.Label();
- this.radioButtonTwoSim = new System.Windows.Forms.RadioButton();
- this.buttonGoogle = new System.Windows.Forms.Button();
- this.buttonBrowseImage = new System.Windows.Forms.Button();
- this.pictureBoxArt = new System.Windows.Forms.PictureBox();
- this.label4 = new System.Windows.Forms.Label();
- this.textBoxArguments = new System.Windows.Forms.TextBox();
- this.label3 = new System.Windows.Forms.Label();
- this.textBoxPublisher = new System.Windows.Forms.TextBox();
- this.label2 = new System.Windows.Forms.Label();
- this.radioButtonTwo = new System.Windows.Forms.RadioButton();
- this.radioButtonOne = new System.Windows.Forms.RadioButton();
- this.textBoxName = new System.Windows.Forms.TextBox();
- this.labelName = new System.Windows.Forms.Label();
- this.labelID = new System.Windows.Forms.Label();
- this.label5 = new System.Windows.Forms.Label();
- this.buttonAddGames = new System.Windows.Forms.Button();
- this.statusStrip = new System.Windows.Forms.StatusStrip();
- this.toolStripStatusConnectionIcon = new System.Windows.Forms.ToolStripStatusLabel();
- this.toolStripStatusLabelSelected = new System.Windows.Forms.ToolStripStatusLabel();
- this.toolStripStatusLabelSize = new System.Windows.Forms.ToolStripStatusLabel();
- this.toolStripProgressBar = new System.Windows.Forms.ToolStripProgressBar();
- this.openFileDialogNes = new System.Windows.Forms.OpenFileDialog();
- this.contextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.selectAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.unselectAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.deleteGameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.openFileDialogImage = new System.Windows.Forms.OpenFileDialog();
- this.buttonStart = new System.Windows.Forms.Button();
- this.groupBoxDefaultGames = new System.Windows.Forms.GroupBox();
- this.checkedListBoxDefaultGames = new System.Windows.Forms.CheckedListBox();
- this.timerCalculateGames = new System.Windows.Forms.Timer(this.components);
- this.timerConnectionCheck = new System.Windows.Forms.Timer(this.components);
- this.menuStrip.SuspendLayout();
- this.groupBoxOptions.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBoxArt)).BeginInit();
- this.statusStrip.SuspendLayout();
- this.contextMenuStrip.SuspendLayout();
- this.groupBoxDefaultGames.SuspendLayout();
- this.SuspendLayout();
- //
- // menuStrip
- //
- this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.fileToolStripMenuItem,
- this.kernelToolStripMenuItem,
- this.modulesToolStripMenuItem,
- this.settingsToolStripMenuItem,
- this.toolsToolStripMenuItem,
- this.helpToolStripMenuItem});
- resources.ApplyResources(this.menuStrip, "menuStrip");
- this.menuStrip.Name = "menuStrip";
- //
- // fileToolStripMenuItem
- //
- this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.addMoreGamesToolStripMenuItem,
- this.presetsToolStripMenuItem,
- this.synchronizeToolStripMenuItem,
- this.searchToolStripMenuItem,
- this.downloadCoversForAllGamesToolStripMenuItem,
- this.toolStripMenuItem1,
- this.exitToolStripMenuItem});
- this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";
- resources.ApplyResources(this.fileToolStripMenuItem, "fileToolStripMenuItem");
- //
- // addMoreGamesToolStripMenuItem
- //
- this.addMoreGamesToolStripMenuItem.Name = "addMoreGamesToolStripMenuItem";
- resources.ApplyResources(this.addMoreGamesToolStripMenuItem, "addMoreGamesToolStripMenuItem");
- this.addMoreGamesToolStripMenuItem.Click += new System.EventHandler(this.buttonAddGames_Click);
- //
- // presetsToolStripMenuItem
- //
- this.presetsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.toolStripMenuItem2,
- this.addPresetToolStripMenuItem,
- this.deletePresetToolStripMenuItem});
- this.presetsToolStripMenuItem.Name = "presetsToolStripMenuItem";
- resources.ApplyResources(this.presetsToolStripMenuItem, "presetsToolStripMenuItem");
- //
- // toolStripMenuItem2
- //
- this.toolStripMenuItem2.Name = "toolStripMenuItem2";
- resources.ApplyResources(this.toolStripMenuItem2, "toolStripMenuItem2");
- //
- // addPresetToolStripMenuItem
- //
- this.addPresetToolStripMenuItem.Name = "addPresetToolStripMenuItem";
- resources.ApplyResources(this.addPresetToolStripMenuItem, "addPresetToolStripMenuItem");
- this.addPresetToolStripMenuItem.Click += new System.EventHandler(this.AddPreset);
- //
- // deletePresetToolStripMenuItem
- //
- this.deletePresetToolStripMenuItem.Name = "deletePresetToolStripMenuItem";
- resources.ApplyResources(this.deletePresetToolStripMenuItem, "deletePresetToolStripMenuItem");
- //
- // synchronizeToolStripMenuItem
- //
- this.synchronizeToolStripMenuItem.Name = "synchronizeToolStripMenuItem";
- resources.ApplyResources(this.synchronizeToolStripMenuItem, "synchronizeToolStripMenuItem");
- this.synchronizeToolStripMenuItem.Click += new System.EventHandler(this.buttonStart_Click);
- //
- // searchToolStripMenuItem
- //
- this.searchToolStripMenuItem.Name = "searchToolStripMenuItem";
- resources.ApplyResources(this.searchToolStripMenuItem, "searchToolStripMenuItem");
- this.searchToolStripMenuItem.Click += new System.EventHandler(this.searchToolStripMenuItem_Click);
- //
- // downloadCoversForAllGamesToolStripMenuItem
- //
- this.downloadCoversForAllGamesToolStripMenuItem.Name = "downloadCoversForAllGamesToolStripMenuItem";
- resources.ApplyResources(this.downloadCoversForAllGamesToolStripMenuItem, "downloadCoversForAllGamesToolStripMenuItem");
- this.downloadCoversForAllGamesToolStripMenuItem.Click += new System.EventHandler(this.downloadCoversForAllGamesToolStripMenuItem_Click);
- //
- // toolStripMenuItem1
- //
- this.toolStripMenuItem1.Name = "toolStripMenuItem1";
- resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1");
- //
- // exitToolStripMenuItem
- //
- this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
- resources.ApplyResources(this.exitToolStripMenuItem, "exitToolStripMenuItem");
- this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
- //
- // kernelToolStripMenuItem
- //
- this.kernelToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.dumpKernelToolStripMenuItem,
- this.flashOriginalKernelToolStripMenuItem,
- this.flashCustomKernelToolStripMenuItem,
- this.uninstallToolStripMenuItem});
- this.kernelToolStripMenuItem.Name = "kernelToolStripMenuItem";
- resources.ApplyResources(this.kernelToolStripMenuItem, "kernelToolStripMenuItem");
- //
- // dumpKernelToolStripMenuItem
- //
- this.dumpKernelToolStripMenuItem.Name = "dumpKernelToolStripMenuItem";
- resources.ApplyResources(this.dumpKernelToolStripMenuItem, "dumpKernelToolStripMenuItem");
- this.dumpKernelToolStripMenuItem.Click += new System.EventHandler(this.dumpKernelToolStripMenuItem_Click);
- //
- // flashOriginalKernelToolStripMenuItem
- //
- this.flashOriginalKernelToolStripMenuItem.Name = "flashOriginalKernelToolStripMenuItem";
- resources.ApplyResources(this.flashOriginalKernelToolStripMenuItem, "flashOriginalKernelToolStripMenuItem");
- this.flashOriginalKernelToolStripMenuItem.Click += new System.EventHandler(this.flashOriginalKernelToolStripMenuItem_Click);
- //
- // flashCustomKernelToolStripMenuItem
- //
- this.flashCustomKernelToolStripMenuItem.Name = "flashCustomKernelToolStripMenuItem";
- resources.ApplyResources(this.flashCustomKernelToolStripMenuItem, "flashCustomKernelToolStripMenuItem");
- this.flashCustomKernelToolStripMenuItem.Click += new System.EventHandler(this.flashCustomKernelToolStripMenuItem_Click);
- //
- // uninstallToolStripMenuItem
- //
- this.uninstallToolStripMenuItem.Name = "uninstallToolStripMenuItem";
- resources.ApplyResources(this.uninstallToolStripMenuItem, "uninstallToolStripMenuItem");
- this.uninstallToolStripMenuItem.Click += new System.EventHandler(this.uninstallToolStripMenuItem_Click);
- //
- // modulesToolStripMenuItem
- //
- this.modulesToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.installModulesToolStripMenuItem,
- this.uninstallModulesToolStripMenuItem});
- this.modulesToolStripMenuItem.Name = "modulesToolStripMenuItem";
- resources.ApplyResources(this.modulesToolStripMenuItem, "modulesToolStripMenuItem");
- //
- // installModulesToolStripMenuItem
- //
- this.installModulesToolStripMenuItem.Name = "installModulesToolStripMenuItem";
- resources.ApplyResources(this.installModulesToolStripMenuItem, "installModulesToolStripMenuItem");
- this.installModulesToolStripMenuItem.Click += new System.EventHandler(this.installModulesToolStripMenuItem_Click);
- //
- // uninstallModulesToolStripMenuItem
- //
- this.uninstallModulesToolStripMenuItem.Name = "uninstallModulesToolStripMenuItem";
- resources.ApplyResources(this.uninstallModulesToolStripMenuItem, "uninstallModulesToolStripMenuItem");
- this.uninstallModulesToolStripMenuItem.Click += new System.EventHandler(this.uninstallModulesToolStripMenuItem_Click);
- //
- // settingsToolStripMenuItem
- //
- this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.languageToolStripMenuItem,
- this.consoleTypeToolStripMenuItem,
- this.cloverconHackToolStripMenuItem,
- this.useExtendedFontToolStripMenuItem,
- this.epilepsyProtectionToolStripMenuItem,
- this.compressGamesIfPossibleToolStripMenuItem,
- this.pagesfoldersTypeToolStripMenuItem,
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem,
- this.toolStripMenuItem5,
- this.saveSettingsToNESMiniNowToolStripMenuItem});
- this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem";
- resources.ApplyResources(this.settingsToolStripMenuItem, "settingsToolStripMenuItem");
- //
- // languageToolStripMenuItem
- //
- resources.ApplyResources(this.languageToolStripMenuItem, "languageToolStripMenuItem");
- this.languageToolStripMenuItem.Name = "languageToolStripMenuItem";
- //
- // consoleTypeToolStripMenuItem
- //
- this.consoleTypeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.nESMiniToolStripMenuItem,
- this.famicomMiniToolStripMenuItem});
- this.consoleTypeToolStripMenuItem.Name = "consoleTypeToolStripMenuItem";
- resources.ApplyResources(this.consoleTypeToolStripMenuItem, "consoleTypeToolStripMenuItem");
- //
- // nESMiniToolStripMenuItem
- //
- this.nESMiniToolStripMenuItem.Checked = true;
- this.nESMiniToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
- this.nESMiniToolStripMenuItem.Name = "nESMiniToolStripMenuItem";
- resources.ApplyResources(this.nESMiniToolStripMenuItem, "nESMiniToolStripMenuItem");
- this.nESMiniToolStripMenuItem.Click += new System.EventHandler(this.nESMiniToolStripMenuItem_Click);
- //
- // famicomMiniToolStripMenuItem
- //
- this.famicomMiniToolStripMenuItem.Name = "famicomMiniToolStripMenuItem";
- resources.ApplyResources(this.famicomMiniToolStripMenuItem, "famicomMiniToolStripMenuItem");
- this.famicomMiniToolStripMenuItem.Click += new System.EventHandler(this.famicomMiniToolStripMenuItem_Click);
- //
- // cloverconHackToolStripMenuItem
- //
- this.cloverconHackToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.resetUsingCombinationOfButtonsToolStripMenuItem,
- this.selectButtonCombinationToolStripMenuItem,
- this.enableAutofireToolStripMenuItem,
- this.useXYOnClassicControllerAsAutofireABToolStripMenuItem,
- this.upABStartOnSecondControllerToolStripMenuItem});
- this.cloverconHackToolStripMenuItem.Name = "cloverconHackToolStripMenuItem";
- resources.ApplyResources(this.cloverconHackToolStripMenuItem, "cloverconHackToolStripMenuItem");
- //
- // resetUsingCombinationOfButtonsToolStripMenuItem
- //
- this.resetUsingCombinationOfButtonsToolStripMenuItem.Checked = true;
- this.resetUsingCombinationOfButtonsToolStripMenuItem.CheckOnClick = true;
- this.resetUsingCombinationOfButtonsToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
- this.resetUsingCombinationOfButtonsToolStripMenuItem.Name = "resetUsingCombinationOfButtonsToolStripMenuItem";
- resources.ApplyResources(this.resetUsingCombinationOfButtonsToolStripMenuItem, "resetUsingCombinationOfButtonsToolStripMenuItem");
- this.resetUsingCombinationOfButtonsToolStripMenuItem.Click += new System.EventHandler(this.cloverconHackToolStripMenuItem_Click);
- //
- // selectButtonCombinationToolStripMenuItem
- //
- this.selectButtonCombinationToolStripMenuItem.Name = "selectButtonCombinationToolStripMenuItem";
- resources.ApplyResources(this.selectButtonCombinationToolStripMenuItem, "selectButtonCombinationToolStripMenuItem");
- this.selectButtonCombinationToolStripMenuItem.Click += new System.EventHandler(this.selectButtonCombinationToolStripMenuItem_Click);
- //
- // enableAutofireToolStripMenuItem
- //
- this.enableAutofireToolStripMenuItem.CheckOnClick = true;
- this.enableAutofireToolStripMenuItem.Name = "enableAutofireToolStripMenuItem";
- resources.ApplyResources(this.enableAutofireToolStripMenuItem, "enableAutofireToolStripMenuItem");
- this.enableAutofireToolStripMenuItem.Click += new System.EventHandler(this.enableAutofireToolStripMenuItem_Click);
- //
- // useXYOnClassicControllerAsAutofireABToolStripMenuItem
- //
- this.useXYOnClassicControllerAsAutofireABToolStripMenuItem.CheckOnClick = true;
- this.useXYOnClassicControllerAsAutofireABToolStripMenuItem.Name = "useXYOnClassicControllerAsAutofireABToolStripMenuItem";
- resources.ApplyResources(this.useXYOnClassicControllerAsAutofireABToolStripMenuItem, "useXYOnClassicControllerAsAutofireABToolStripMenuItem");
- this.useXYOnClassicControllerAsAutofireABToolStripMenuItem.Click += new System.EventHandler(this.useXYOnClassicControllerAsAutofireABToolStripMenuItem_Click);
- //
- // upABStartOnSecondControllerToolStripMenuItem
- //
- this.upABStartOnSecondControllerToolStripMenuItem.CheckOnClick = true;
- this.upABStartOnSecondControllerToolStripMenuItem.Name = "upABStartOnSecondControllerToolStripMenuItem";
- resources.ApplyResources(this.upABStartOnSecondControllerToolStripMenuItem, "upABStartOnSecondControllerToolStripMenuItem");
- this.upABStartOnSecondControllerToolStripMenuItem.Click += new System.EventHandler(this.upABStartOnSecondControllerToolStripMenuItem_Click);
- //
- // useExtendedFontToolStripMenuItem
- //
- this.useExtendedFontToolStripMenuItem.Checked = true;
- this.useExtendedFontToolStripMenuItem.CheckOnClick = true;
- this.useExtendedFontToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
- this.useExtendedFontToolStripMenuItem.Name = "useExtendedFontToolStripMenuItem";
- resources.ApplyResources(this.useExtendedFontToolStripMenuItem, "useExtendedFontToolStripMenuItem");
- this.useExtendedFontToolStripMenuItem.Click += new System.EventHandler(this.useExtendedFontToolStripMenuItem_Click);
- //
- // epilepsyProtectionToolStripMenuItem
- //
- this.epilepsyProtectionToolStripMenuItem.CheckOnClick = true;
- this.epilepsyProtectionToolStripMenuItem.Name = "epilepsyProtectionToolStripMenuItem";
- resources.ApplyResources(this.epilepsyProtectionToolStripMenuItem, "epilepsyProtectionToolStripMenuItem");
- this.epilepsyProtectionToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItemArmet_Click);
- //
- // compressGamesIfPossibleToolStripMenuItem
- //
- this.compressGamesIfPossibleToolStripMenuItem.CheckOnClick = true;
- this.compressGamesIfPossibleToolStripMenuItem.Name = "compressGamesIfPossibleToolStripMenuItem";
- resources.ApplyResources(this.compressGamesIfPossibleToolStripMenuItem, "compressGamesIfPossibleToolStripMenuItem");
- this.compressGamesIfPossibleToolStripMenuItem.Click += new System.EventHandler(this.compressGamesIfPossibleToolStripMenuItem_Click);
- //
- // pagesfoldersTypeToolStripMenuItem
- //
- this.pagesfoldersTypeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.disablePagefoldersToolStripMenuItem,
- this.toolStripMenuItem3,
- this.automaticToolStripMenuItem,
- this.automaticOriginalToolStripMenuItem,
- this.pagesToolStripMenuItem,
- this.pagesOriginalToolStripMenuItem,
- this.foldersToolStripMenuItem,
- this.foldersOriginalToolStripMenuItem,
- this.foldersSplitByFirstLetterToolStripMenuItem,
- this.foldersSplitByFirstLetterOriginalToolStripMenuItem,
- this.maximumGamesPerFolderToolStripMenuItem,
- this.toolStripMenuItem4,
- this.customToolStripMenuItem});
- this.pagesfoldersTypeToolStripMenuItem.Name = "pagesfoldersTypeToolStripMenuItem";
- resources.ApplyResources(this.pagesfoldersTypeToolStripMenuItem, "pagesfoldersTypeToolStripMenuItem");
- //
- // disablePagefoldersToolStripMenuItem
- //
- this.disablePagefoldersToolStripMenuItem.Name = "disablePagefoldersToolStripMenuItem";
- resources.ApplyResources(this.disablePagefoldersToolStripMenuItem, "disablePagefoldersToolStripMenuItem");
- this.disablePagefoldersToolStripMenuItem.Tag = "0";
- this.disablePagefoldersToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // toolStripMenuItem3
- //
- this.toolStripMenuItem3.Name = "toolStripMenuItem3";
- resources.ApplyResources(this.toolStripMenuItem3, "toolStripMenuItem3");
- //
- // automaticToolStripMenuItem
- //
- this.automaticToolStripMenuItem.Checked = true;
- this.automaticToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked;
- this.automaticToolStripMenuItem.Name = "automaticToolStripMenuItem";
- resources.ApplyResources(this.automaticToolStripMenuItem, "automaticToolStripMenuItem");
- this.automaticToolStripMenuItem.Tag = "2";
- this.automaticToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // automaticOriginalToolStripMenuItem
- //
- this.automaticOriginalToolStripMenuItem.Name = "automaticOriginalToolStripMenuItem";
- resources.ApplyResources(this.automaticOriginalToolStripMenuItem, "automaticOriginalToolStripMenuItem");
- this.automaticOriginalToolStripMenuItem.Tag = "3";
- this.automaticOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // pagesToolStripMenuItem
- //
- resources.ApplyResources(this.pagesToolStripMenuItem, "pagesToolStripMenuItem");
- this.pagesToolStripMenuItem.Name = "pagesToolStripMenuItem";
- this.pagesToolStripMenuItem.Tag = "4";
- this.pagesToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // pagesOriginalToolStripMenuItem
- //
- resources.ApplyResources(this.pagesOriginalToolStripMenuItem, "pagesOriginalToolStripMenuItem");
- this.pagesOriginalToolStripMenuItem.Name = "pagesOriginalToolStripMenuItem";
- this.pagesOriginalToolStripMenuItem.Tag = "5";
- this.pagesOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // foldersToolStripMenuItem
- //
- this.foldersToolStripMenuItem.Name = "foldersToolStripMenuItem";
- resources.ApplyResources(this.foldersToolStripMenuItem, "foldersToolStripMenuItem");
- this.foldersToolStripMenuItem.Tag = "6";
- this.foldersToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // foldersOriginalToolStripMenuItem
- //
- this.foldersOriginalToolStripMenuItem.Name = "foldersOriginalToolStripMenuItem";
- resources.ApplyResources(this.foldersOriginalToolStripMenuItem, "foldersOriginalToolStripMenuItem");
- this.foldersOriginalToolStripMenuItem.Tag = "7";
- this.foldersOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // foldersSplitByFirstLetterToolStripMenuItem
- //
- this.foldersSplitByFirstLetterToolStripMenuItem.Name = "foldersSplitByFirstLetterToolStripMenuItem";
- resources.ApplyResources(this.foldersSplitByFirstLetterToolStripMenuItem, "foldersSplitByFirstLetterToolStripMenuItem");
- this.foldersSplitByFirstLetterToolStripMenuItem.Tag = "8";
- this.foldersSplitByFirstLetterToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // foldersSplitByFirstLetterOriginalToolStripMenuItem
- //
- this.foldersSplitByFirstLetterOriginalToolStripMenuItem.Name = "foldersSplitByFirstLetterOriginalToolStripMenuItem";
- resources.ApplyResources(this.foldersSplitByFirstLetterOriginalToolStripMenuItem, "foldersSplitByFirstLetterOriginalToolStripMenuItem");
- this.foldersSplitByFirstLetterOriginalToolStripMenuItem.Tag = "9";
- this.foldersSplitByFirstLetterOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // maximumGamesPerFolderToolStripMenuItem
- //
- this.maximumGamesPerFolderToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.max20toolStripMenuItem,
- this.max25toolStripMenuItem,
- this.max30toolStripMenuItem,
- this.max35toolStripMenuItem,
- this.max40toolStripMenuItem,
- this.max45toolStripMenuItem,
- this.max50toolStripMenuItem,
- this.max60toolStripMenuItem,
- this.max70toolStripMenuItem,
- this.max80toolStripMenuItem,
- this.max90toolStripMenuItem,
- this.max100toolStripMenuItem});
- this.maximumGamesPerFolderToolStripMenuItem.Name = "maximumGamesPerFolderToolStripMenuItem";
- resources.ApplyResources(this.maximumGamesPerFolderToolStripMenuItem, "maximumGamesPerFolderToolStripMenuItem");
- //
- // max20toolStripMenuItem
- //
- this.max20toolStripMenuItem.Name = "max20toolStripMenuItem";
- resources.ApplyResources(this.max20toolStripMenuItem, "max20toolStripMenuItem");
- this.max20toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max25toolStripMenuItem
- //
- this.max25toolStripMenuItem.Name = "max25toolStripMenuItem";
- resources.ApplyResources(this.max25toolStripMenuItem, "max25toolStripMenuItem");
- this.max25toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max30toolStripMenuItem
- //
- this.max30toolStripMenuItem.Name = "max30toolStripMenuItem";
- resources.ApplyResources(this.max30toolStripMenuItem, "max30toolStripMenuItem");
- this.max30toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max35toolStripMenuItem
- //
- this.max35toolStripMenuItem.Name = "max35toolStripMenuItem";
- resources.ApplyResources(this.max35toolStripMenuItem, "max35toolStripMenuItem");
- this.max35toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max40toolStripMenuItem
- //
- this.max40toolStripMenuItem.Name = "max40toolStripMenuItem";
- resources.ApplyResources(this.max40toolStripMenuItem, "max40toolStripMenuItem");
- this.max40toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max45toolStripMenuItem
- //
- this.max45toolStripMenuItem.Name = "max45toolStripMenuItem";
- resources.ApplyResources(this.max45toolStripMenuItem, "max45toolStripMenuItem");
- this.max45toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max50toolStripMenuItem
- //
- this.max50toolStripMenuItem.Name = "max50toolStripMenuItem";
- resources.ApplyResources(this.max50toolStripMenuItem, "max50toolStripMenuItem");
- this.max50toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max60toolStripMenuItem
- //
- this.max60toolStripMenuItem.Name = "max60toolStripMenuItem";
- resources.ApplyResources(this.max60toolStripMenuItem, "max60toolStripMenuItem");
- this.max60toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max70toolStripMenuItem
- //
- this.max70toolStripMenuItem.Name = "max70toolStripMenuItem";
- resources.ApplyResources(this.max70toolStripMenuItem, "max70toolStripMenuItem");
- this.max70toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max80toolStripMenuItem
- //
- this.max80toolStripMenuItem.Name = "max80toolStripMenuItem";
- resources.ApplyResources(this.max80toolStripMenuItem, "max80toolStripMenuItem");
- this.max80toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max90toolStripMenuItem
- //
- this.max90toolStripMenuItem.Name = "max90toolStripMenuItem";
- resources.ApplyResources(this.max90toolStripMenuItem, "max90toolStripMenuItem");
- this.max90toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // max100toolStripMenuItem
- //
- this.max100toolStripMenuItem.Name = "max100toolStripMenuItem";
- resources.ApplyResources(this.max100toolStripMenuItem, "max100toolStripMenuItem");
- this.max100toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click);
- //
- // toolStripMenuItem4
- //
- this.toolStripMenuItem4.Name = "toolStripMenuItem4";
- resources.ApplyResources(this.toolStripMenuItem4, "toolStripMenuItem4");
- //
- // customToolStripMenuItem
- //
- this.customToolStripMenuItem.Name = "customToolStripMenuItem";
- resources.ApplyResources(this.customToolStripMenuItem, "customToolStripMenuItem");
- this.customToolStripMenuItem.Tag = "99";
- this.customToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click);
- //
- // globalCommandLineArgumentsexpertsOnluToolStripMenuItem
- //
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name = "globalCommandLineArgumentsexpertsOnluToolStripMenuItem";
- resources.ApplyResources(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem, "globalCommandLineArgumentsexpertsOnluToolStripMenuItem");
- this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Click += new System.EventHandler(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem_Click);
- //
- // toolStripMenuItem5
- //
- this.toolStripMenuItem5.Name = "toolStripMenuItem5";
- resources.ApplyResources(this.toolStripMenuItem5, "toolStripMenuItem5");
- //
- // saveSettingsToNESMiniNowToolStripMenuItem
- //
- resources.ApplyResources(this.saveSettingsToNESMiniNowToolStripMenuItem, "saveSettingsToNESMiniNowToolStripMenuItem");
- this.saveSettingsToNESMiniNowToolStripMenuItem.Name = "saveSettingsToNESMiniNowToolStripMenuItem";
- this.saveSettingsToNESMiniNowToolStripMenuItem.Click += new System.EventHandler(this.saveSettingsToNESMiniNowToolStripMenuItem_Click);
- //
- // toolsToolStripMenuItem
- //
- this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.saveStateManagerToolStripMenuItem,
- this.toolStripMenuItem6,
- this.FTPToolStripMenuItem,
- this.openFTPInExplorerToolStripMenuItem,
- this.toolStripMenuItem7,
- this.shellToolStripMenuItem,
- this.openTelnetToolStripMenuItem,
- this.toolStripMenuItem8,
- this.takeScreenshotToolStripMenuItem});
- this.toolsToolStripMenuItem.Name = "toolsToolStripMenuItem";
- resources.ApplyResources(this.toolsToolStripMenuItem, "toolsToolStripMenuItem");
- //
- // saveStateManagerToolStripMenuItem
- //
- this.saveStateManagerToolStripMenuItem.Name = "saveStateManagerToolStripMenuItem";
- resources.ApplyResources(this.saveStateManagerToolStripMenuItem, "saveStateManagerToolStripMenuItem");
- this.saveStateManagerToolStripMenuItem.Click += new System.EventHandler(this.saveStateManagerToolStripMenuItem_Click);
- //
- // toolStripMenuItem6
- //
- this.toolStripMenuItem6.Name = "toolStripMenuItem6";
- resources.ApplyResources(this.toolStripMenuItem6, "toolStripMenuItem6");
- //
- // FTPToolStripMenuItem
- //
- this.FTPToolStripMenuItem.CheckOnClick = true;
- this.FTPToolStripMenuItem.Name = "FTPToolStripMenuItem";
- resources.ApplyResources(this.FTPToolStripMenuItem, "FTPToolStripMenuItem");
- this.FTPToolStripMenuItem.Click += new System.EventHandler(this.FTPToolStripMenuItem_Click);
- //
- // openFTPInExplorerToolStripMenuItem
- //
- resources.ApplyResources(this.openFTPInExplorerToolStripMenuItem, "openFTPInExplorerToolStripMenuItem");
- this.openFTPInExplorerToolStripMenuItem.Name = "openFTPInExplorerToolStripMenuItem";
- this.openFTPInExplorerToolStripMenuItem.Click += new System.EventHandler(this.openFTPInExplorerToolStripMenuItem_Click);
- //
- // toolStripMenuItem7
- //
- this.toolStripMenuItem7.Name = "toolStripMenuItem7";
- resources.ApplyResources(this.toolStripMenuItem7, "toolStripMenuItem7");
- //
- // shellToolStripMenuItem
- //
- this.shellToolStripMenuItem.CheckOnClick = true;
- this.shellToolStripMenuItem.Name = "shellToolStripMenuItem";
- resources.ApplyResources(this.shellToolStripMenuItem, "shellToolStripMenuItem");
- this.shellToolStripMenuItem.Click += new System.EventHandler(this.shellToolStripMenuItem_Click);
- //
- // openTelnetToolStripMenuItem
- //
- resources.ApplyResources(this.openTelnetToolStripMenuItem, "openTelnetToolStripMenuItem");
- this.openTelnetToolStripMenuItem.Name = "openTelnetToolStripMenuItem";
- this.openTelnetToolStripMenuItem.Click += new System.EventHandler(this.openTelnetToolStripMenuItem_Click);
- //
- // toolStripMenuItem8
- //
- this.toolStripMenuItem8.Name = "toolStripMenuItem8";
- resources.ApplyResources(this.toolStripMenuItem8, "toolStripMenuItem8");
- //
- // takeScreenshotToolStripMenuItem
- //
- this.takeScreenshotToolStripMenuItem.Name = "takeScreenshotToolStripMenuItem";
- resources.ApplyResources(this.takeScreenshotToolStripMenuItem, "takeScreenshotToolStripMenuItem");
- this.takeScreenshotToolStripMenuItem.Click += new System.EventHandler(this.takeScreenshotToolStripMenuItem_Click);
- //
- // helpToolStripMenuItem
- //
- this.helpToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.gitHubPageWithActualReleasesToolStripMenuItem,
- this.fAQToolStripMenuItem,
- this.aboutToolStripMenuItem});
- this.helpToolStripMenuItem.Name = "helpToolStripMenuItem";
- resources.ApplyResources(this.helpToolStripMenuItem, "helpToolStripMenuItem");
- //
- // gitHubPageWithActualReleasesToolStripMenuItem
- //
- this.gitHubPageWithActualReleasesToolStripMenuItem.Name = "gitHubPageWithActualReleasesToolStripMenuItem";
- resources.ApplyResources(this.gitHubPageWithActualReleasesToolStripMenuItem, "gitHubPageWithActualReleasesToolStripMenuItem");
- this.gitHubPageWithActualReleasesToolStripMenuItem.Click += new System.EventHandler(this.gitHubPageWithActualReleasesToolStripMenuItem_Click);
- //
- // fAQToolStripMenuItem
- //
- this.fAQToolStripMenuItem.Name = "fAQToolStripMenuItem";
- resources.ApplyResources(this.fAQToolStripMenuItem, "fAQToolStripMenuItem");
- this.fAQToolStripMenuItem.Click += new System.EventHandler(this.fAQToolStripMenuItem_Click);
- //
- // aboutToolStripMenuItem
- //
- this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
- resources.ApplyResources(this.aboutToolStripMenuItem, "aboutToolStripMenuItem");
- this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click);
- //
- // checkedListBoxGames
- //
- resources.ApplyResources(this.checkedListBoxGames, "checkedListBoxGames");
- this.checkedListBoxGames.FormattingEnabled = true;
- this.checkedListBoxGames.Name = "checkedListBoxGames";
- this.checkedListBoxGames.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.checkedListBoxGames_ItemCheck);
- this.checkedListBoxGames.SelectedIndexChanged += new System.EventHandler(this.checkedListBoxGames_SelectedIndexChanged);
- this.checkedListBoxGames.KeyDown += new System.Windows.Forms.KeyEventHandler(this.checkedListBoxGames_KeyDown);
- this.checkedListBoxGames.MouseDown += new System.Windows.Forms.MouseEventHandler(this.checkedListBoxGames_MouseDown);
- //
- // groupBoxOptions
- //
- resources.ApplyResources(this.groupBoxOptions, "groupBoxOptions");
- this.groupBoxOptions.Controls.Add(this.buttonShowGameGenieDatabase);
- this.groupBoxOptions.Controls.Add(this.maskedTextBoxReleaseDate);
- this.groupBoxOptions.Controls.Add(this.label1);
- this.groupBoxOptions.Controls.Add(this.textBoxGameGenie);
- this.groupBoxOptions.Controls.Add(this.label7);
- this.groupBoxOptions.Controls.Add(this.label6);
- this.groupBoxOptions.Controls.Add(this.radioButtonTwoSim);
- this.groupBoxOptions.Controls.Add(this.buttonGoogle);
- this.groupBoxOptions.Controls.Add(this.buttonBrowseImage);
- this.groupBoxOptions.Controls.Add(this.pictureBoxArt);
- this.groupBoxOptions.Controls.Add(this.label4);
- this.groupBoxOptions.Controls.Add(this.textBoxArguments);
- this.groupBoxOptions.Controls.Add(this.label3);
- this.groupBoxOptions.Controls.Add(this.textBoxPublisher);
- this.groupBoxOptions.Controls.Add(this.label2);
- this.groupBoxOptions.Controls.Add(this.radioButtonTwo);
- this.groupBoxOptions.Controls.Add(this.radioButtonOne);
- this.groupBoxOptions.Controls.Add(this.textBoxName);
- this.groupBoxOptions.Controls.Add(this.labelName);
- this.groupBoxOptions.Controls.Add(this.labelID);
- this.groupBoxOptions.Name = "groupBoxOptions";
- this.groupBoxOptions.TabStop = false;
- //
- // buttonShowGameGenieDatabase
- //
- resources.ApplyResources(this.buttonShowGameGenieDatabase, "buttonShowGameGenieDatabase");
- this.buttonShowGameGenieDatabase.Name = "buttonShowGameGenieDatabase";
- this.buttonShowGameGenieDatabase.UseVisualStyleBackColor = true;
- this.buttonShowGameGenieDatabase.Click += new System.EventHandler(this.buttonShowGameGenieDatabase_Click);
- //
- // maskedTextBoxReleaseDate
- //
- resources.ApplyResources(this.maskedTextBoxReleaseDate, "maskedTextBoxReleaseDate");
- this.maskedTextBoxReleaseDate.Name = "maskedTextBoxReleaseDate";
- this.maskedTextBoxReleaseDate.TextChanged += new System.EventHandler(this.maskedTextBoxReleaseDate_TextChanged);
- //
- // label1
- //
- resources.ApplyResources(this.label1, "label1");
- this.label1.Name = "label1";
- //
- // textBoxGameGenie
- //
- resources.ApplyResources(this.textBoxGameGenie, "textBoxGameGenie");
- this.textBoxGameGenie.Name = "textBoxGameGenie";
- this.textBoxGameGenie.TextChanged += new System.EventHandler(this.textBoxGameGenie_TextChanged);
- //
- // label7
- //
- resources.ApplyResources(this.label7, "label7");
- this.label7.Name = "label7";
- //
- // label6
- //
- resources.ApplyResources(this.label6, "label6");
- this.label6.Name = "label6";
- //
- // radioButtonTwoSim
- //
- resources.ApplyResources(this.radioButtonTwoSim, "radioButtonTwoSim");
- this.radioButtonTwoSim.Name = "radioButtonTwoSim";
- this.radioButtonTwoSim.UseVisualStyleBackColor = true;
- this.radioButtonTwoSim.CheckedChanged += new System.EventHandler(this.radioButtonOne_CheckedChanged);
- //
- // buttonGoogle
- //
- resources.ApplyResources(this.buttonGoogle, "buttonGoogle");
- this.buttonGoogle.Name = "buttonGoogle";
- this.buttonGoogle.UseVisualStyleBackColor = true;
- this.buttonGoogle.Click += new System.EventHandler(this.buttonGoogle_Click);
- //
- // buttonBrowseImage
- //
- resources.ApplyResources(this.buttonBrowseImage, "buttonBrowseImage");
- this.buttonBrowseImage.Name = "buttonBrowseImage";
- this.buttonBrowseImage.UseVisualStyleBackColor = true;
- this.buttonBrowseImage.Click += new System.EventHandler(this.buttonBrowseImage_Click);
- //
- // pictureBoxArt
- //
- resources.ApplyResources(this.pictureBoxArt, "pictureBoxArt");
- this.pictureBoxArt.Name = "pictureBoxArt";
- this.pictureBoxArt.TabStop = false;
- //
- // label4
- //
- resources.ApplyResources(this.label4, "label4");
- this.label4.Name = "label4";
- //
- // textBoxArguments
- //
- resources.ApplyResources(this.textBoxArguments, "textBoxArguments");
- this.textBoxArguments.Name = "textBoxArguments";
- this.textBoxArguments.TextChanged += new System.EventHandler(this.textBoxArguments_TextChanged);
- //
- // label3
- //
- resources.ApplyResources(this.label3, "label3");
- this.label3.Name = "label3";
- //
- // textBoxPublisher
- //
- resources.ApplyResources(this.textBoxPublisher, "textBoxPublisher");
- this.textBoxPublisher.Name = "textBoxPublisher";
- this.textBoxPublisher.TextChanged += new System.EventHandler(this.textBoxPublisher_TextChanged);
- //
- // label2
- //
- resources.ApplyResources(this.label2, "label2");
- this.label2.Name = "label2";
- //
- // radioButtonTwo
- //
- resources.ApplyResources(this.radioButtonTwo, "radioButtonTwo");
- this.radioButtonTwo.Name = "radioButtonTwo";
- this.radioButtonTwo.UseVisualStyleBackColor = true;
- this.radioButtonTwo.CheckedChanged += new System.EventHandler(this.radioButtonOne_CheckedChanged);
- //
- // radioButtonOne
- //
- resources.ApplyResources(this.radioButtonOne, "radioButtonOne");
- this.radioButtonOne.Checked = true;
- this.radioButtonOne.Name = "radioButtonOne";
- this.radioButtonOne.TabStop = true;
- this.radioButtonOne.UseVisualStyleBackColor = true;
- this.radioButtonOne.CheckedChanged += new System.EventHandler(this.radioButtonOne_CheckedChanged);
- //
- // textBoxName
- //
- resources.ApplyResources(this.textBoxName, "textBoxName");
- this.textBoxName.Name = "textBoxName";
- this.textBoxName.TextChanged += new System.EventHandler(this.textBoxName_TextChanged);
- //
- // labelName
- //
- resources.ApplyResources(this.labelName, "labelName");
- this.labelName.Name = "labelName";
- //
- // labelID
- //
- resources.ApplyResources(this.labelID, "labelID");
- this.labelID.Name = "labelID";
- //
- // label5
- //
- resources.ApplyResources(this.label5, "label5");
- this.label5.Name = "label5";
- //
- // buttonAddGames
- //
- resources.ApplyResources(this.buttonAddGames, "buttonAddGames");
- this.buttonAddGames.Name = "buttonAddGames";
- this.buttonAddGames.UseVisualStyleBackColor = true;
- this.buttonAddGames.Click += new System.EventHandler(this.buttonAddGames_Click);
- //
- // statusStrip
- //
- this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.toolStripStatusConnectionIcon,
- this.toolStripStatusLabelSelected,
- this.toolStripStatusLabelSize,
- this.toolStripProgressBar});
- resources.ApplyResources(this.statusStrip, "statusStrip");
- this.statusStrip.Name = "statusStrip";
- this.statusStrip.SizingGrip = false;
- //
- // toolStripStatusConnectionIcon
- //
- resources.ApplyResources(this.toolStripStatusConnectionIcon, "toolStripStatusConnectionIcon");
- this.toolStripStatusConnectionIcon.Image = global::com.clusterrr.hakchi_gui.Properties.Resources.red;
- this.toolStripStatusConnectionIcon.Margin = new System.Windows.Forms.Padding(2, 3, 2, 2);
- this.toolStripStatusConnectionIcon.Name = "toolStripStatusConnectionIcon";
- //
- // toolStripStatusLabelSelected
- //
- resources.ApplyResources(this.toolStripStatusLabelSelected, "toolStripStatusLabelSelected");
- this.toolStripStatusLabelSelected.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Top)
- | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right)
- | System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom)));
- this.toolStripStatusLabelSelected.Name = "toolStripStatusLabelSelected";
- //
- // toolStripStatusLabelSize
- //
- resources.ApplyResources(this.toolStripStatusLabelSize, "toolStripStatusLabelSize");
- this.toolStripStatusLabelSize.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Top)
- | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right)
- | System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom)));
- this.toolStripStatusLabelSize.Name = "toolStripStatusLabelSize";
- //
- // toolStripProgressBar
- //
- this.toolStripProgressBar.ForeColor = System.Drawing.SystemColors.ControlText;
- this.toolStripProgressBar.Name = "toolStripProgressBar";
- resources.ApplyResources(this.toolStripProgressBar, "toolStripProgressBar");
- this.toolStripProgressBar.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
- //
- // openFileDialogNes
- //
- this.openFileDialogNes.DefaultExt = "nes";
- this.openFileDialogNes.Multiselect = true;
- resources.ApplyResources(this.openFileDialogNes, "openFileDialogNes");
- //
- // contextMenuStrip
- //
- this.contextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.selectAllToolStripMenuItem,
- this.unselectAllToolStripMenuItem,
- this.deleteGameToolStripMenuItem});
- this.contextMenuStrip.Name = "contextMenuStrip";
- resources.ApplyResources(this.contextMenuStrip, "contextMenuStrip");
- //
- // selectAllToolStripMenuItem
- //
- this.selectAllToolStripMenuItem.Name = "selectAllToolStripMenuItem";
- resources.ApplyResources(this.selectAllToolStripMenuItem, "selectAllToolStripMenuItem");
- this.selectAllToolStripMenuItem.Click += new System.EventHandler(this.selectAllToolStripMenuItem_Click);
- //
- // unselectAllToolStripMenuItem
- //
- this.unselectAllToolStripMenuItem.Name = "unselectAllToolStripMenuItem";
- resources.ApplyResources(this.unselectAllToolStripMenuItem, "unselectAllToolStripMenuItem");
- this.unselectAllToolStripMenuItem.Click += new System.EventHandler(this.unselectAllToolStripMenuItem_Click);
- //
- // deleteGameToolStripMenuItem
- //
- this.deleteGameToolStripMenuItem.Name = "deleteGameToolStripMenuItem";
- resources.ApplyResources(this.deleteGameToolStripMenuItem, "deleteGameToolStripMenuItem");
- this.deleteGameToolStripMenuItem.Click += new System.EventHandler(this.deleteGameToolStripMenuItem_Click);
- //
- // openFileDialogImage
- //
- resources.ApplyResources(this.openFileDialogImage, "openFileDialogImage");
- //
- // buttonStart
- //
- resources.ApplyResources(this.buttonStart, "buttonStart");
- this.buttonStart.Name = "buttonStart";
- this.buttonStart.UseVisualStyleBackColor = true;
- this.buttonStart.Click += new System.EventHandler(this.buttonStart_Click);
- //
- // groupBoxDefaultGames
- //
- resources.ApplyResources(this.groupBoxDefaultGames, "groupBoxDefaultGames");
- this.groupBoxDefaultGames.Controls.Add(this.checkedListBoxDefaultGames);
- this.groupBoxDefaultGames.Name = "groupBoxDefaultGames";
- this.groupBoxDefaultGames.TabStop = false;
- //
- // checkedListBoxDefaultGames
- //
- resources.ApplyResources(this.checkedListBoxDefaultGames, "checkedListBoxDefaultGames");
- this.checkedListBoxDefaultGames.FormattingEnabled = true;
- this.checkedListBoxDefaultGames.Name = "checkedListBoxDefaultGames";
- this.checkedListBoxDefaultGames.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.checkedListBoxDefaultGames_ItemCheck);
- this.checkedListBoxDefaultGames.MouseDown += new System.Windows.Forms.MouseEventHandler(this.checkedListBoxDefaultGames_MouseDown);
- //
- // timerCalculateGames
- //
- this.timerCalculateGames.Enabled = true;
- this.timerCalculateGames.Interval = 500;
- this.timerCalculateGames.Tick += new System.EventHandler(this.timerCalculateGames_Tick);
- //
- // timerConnectionCheck
- //
- this.timerConnectionCheck.Enabled = true;
- this.timerConnectionCheck.Interval = 500;
- this.timerConnectionCheck.Tick += new System.EventHandler(this.timerConnectionCheck_Tick);
- //
- // MainForm
- //
- this.AllowDrop = true;
- resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.buttonStart);
- this.Controls.Add(this.statusStrip);
- this.Controls.Add(this.buttonAddGames);
- this.Controls.Add(this.label5);
- this.Controls.Add(this.checkedListBoxGames);
- this.Controls.Add(this.menuStrip);
- this.Controls.Add(this.groupBoxOptions);
- this.Controls.Add(this.groupBoxDefaultGames);
- this.Cursor = System.Windows.Forms.Cursors.Default;
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
- this.KeyPreview = true;
- this.MaximizeBox = false;
- this.Name = "MainForm";
- this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
- this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.MainForm_FormClosed);
- this.Shown += new System.EventHandler(this.MainForm_Shown);
- this.DragDrop += new System.Windows.Forms.DragEventHandler(this.checkedListBoxGames_DragDrop);
- this.DragEnter += new System.Windows.Forms.DragEventHandler(this.checkedListBoxGames_DragEnter);
- this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.MainForm_KeyDown);
- this.menuStrip.ResumeLayout(false);
- this.menuStrip.PerformLayout();
- this.groupBoxOptions.ResumeLayout(false);
- this.groupBoxOptions.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBoxArt)).EndInit();
- this.statusStrip.ResumeLayout(false);
- this.statusStrip.PerformLayout();
- this.contextMenuStrip.ResumeLayout(false);
- this.groupBoxDefaultGames.ResumeLayout(false);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.MenuStrip menuStrip;
- private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem addMoreGamesToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
- private System.Windows.Forms.GroupBox groupBoxOptions;
- private System.Windows.Forms.RadioButton radioButtonTwo;
- private System.Windows.Forms.RadioButton radioButtonOne;
- private System.Windows.Forms.TextBox textBoxName;
- private System.Windows.Forms.Label labelName;
- private System.Windows.Forms.Label labelID;
- private System.Windows.Forms.TextBox textBoxPublisher;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.MaskedTextBox maskedTextBoxReleaseDate;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.TextBox textBoxArguments;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.PictureBox pictureBoxArt;
- private System.Windows.Forms.Label label4;
- private System.Windows.Forms.Button buttonGoogle;
- private System.Windows.Forms.Button buttonBrowseImage;
- private System.Windows.Forms.Label label5;
- private System.Windows.Forms.Button buttonAddGames;
- private System.Windows.Forms.StatusStrip statusStrip;
- private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabelSelected;
- private System.Windows.Forms.OpenFileDialog openFileDialogNes;
- private System.Windows.Forms.ContextMenuStrip contextMenuStrip;
- private System.Windows.Forms.ToolStripMenuItem deleteGameToolStripMenuItem;
- private System.Windows.Forms.OpenFileDialog openFileDialogImage;
- private System.Windows.Forms.Button buttonStart;
- private System.Windows.Forms.ToolStripMenuItem kernelToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem dumpKernelToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem flashCustomKernelToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem flashOriginalKernelToolStripMenuItem;
- private System.Windows.Forms.RadioButton radioButtonTwoSim;
- private System.Windows.Forms.Label label6;
- private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem;
- private System.Windows.Forms.GroupBox groupBoxDefaultGames;
- private System.Windows.Forms.Timer timerCalculateGames;
- private System.Windows.Forms.ToolStripMenuItem selectAllToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem unselectAllToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem uninstallToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem helpToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem fAQToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem gitHubPageWithActualReleasesToolStripMenuItem;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
- private System.Windows.Forms.ToolStripMenuItem presetsToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem addPresetToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem deletePresetToolStripMenuItem;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
- protected internal System.Windows.Forms.CheckedListBox checkedListBoxGames;
- private System.Windows.Forms.ToolStripMenuItem searchToolStripMenuItem;
- private System.Windows.Forms.TextBox textBoxGameGenie;
- private System.Windows.Forms.Label label7;
- private System.Windows.Forms.ToolStripMenuItem epilepsyProtectionToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem cloverconHackToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem resetUsingCombinationOfButtonsToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem selectButtonCombinationToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem consoleTypeToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem nESMiniToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem famicomMiniToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem enableAutofireToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem globalCommandLineArgumentsexpertsOnluToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem upABStartOnSecondControllerToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem downloadCoversForAllGamesToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem pagesfoldersTypeToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem pagesToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem disablePagefoldersToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem foldersToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem automaticOriginalToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem foldersSplitByFirstLetterToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem customToolStripMenuItem;
- private System.Windows.Forms.Button buttonShowGameGenieDatabase;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3;
- private System.Windows.Forms.ToolStripMenuItem pagesOriginalToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem foldersOriginalToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem foldersSplitByFirstLetterOriginalToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem maximumGamesPerFolderToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max20toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max25toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max30toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max35toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max40toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max45toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max50toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max60toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max70toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max80toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max90toolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem max100toolStripMenuItem;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem4;
- private System.Windows.Forms.ToolStripMenuItem automaticToolStripMenuItem;
- protected internal System.Windows.Forms.CheckedListBox checkedListBoxDefaultGames;
- private System.Windows.Forms.ToolStripMenuItem useExtendedFontToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem modulesToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem installModulesToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem uninstallModulesToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem synchronizeToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem useXYOnClassicControllerAsAutofireABToolStripMenuItem;
- private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabelSize;
- private System.Windows.Forms.ToolStripProgressBar toolStripProgressBar;
- private System.Windows.Forms.ToolStripStatusLabel toolStripStatusConnectionIcon;
- private System.Windows.Forms.Timer timerConnectionCheck;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem5;
- private System.Windows.Forms.ToolStripMenuItem saveSettingsToNESMiniNowToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem compressGamesIfPossibleToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem toolsToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem saveStateManagerToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem FTPToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem shellToolStripMenuItem;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem6;
- private System.Windows.Forms.ToolStripMenuItem openFTPInExplorerToolStripMenuItem;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem7;
- private System.Windows.Forms.ToolStripMenuItem openTelnetToolStripMenuItem;
- private System.Windows.Forms.ToolStripMenuItem languageToolStripMenuItem;
- private System.Windows.Forms.ToolStripSeparator toolStripMenuItem8;
- private System.Windows.Forms.ToolStripMenuItem takeScreenshotToolStripMenuItem;
- }
-}
-
+namespace com.clusterrr.hakchi_gui +{ + partial class MainForm + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); + this.menuStrip = new System.Windows.Forms.MenuStrip(); + this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.addMoreGamesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.presetsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator(); + this.addPresetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.deletePresetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.synchronizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.searchToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.downloadCoversForAllGamesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator(); + this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.kernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.dumpKernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.flashOriginalKernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.flashCustomKernelToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.uninstallToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.modulesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.installModulesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.uninstallModulesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.languageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.consoleTypeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.nESMiniToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.famicomMiniToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.cloverconHackToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.resetUsingCombinationOfButtonsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.selectButtonCombinationToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.enableAutofireToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.useXYOnClassicControllerAsAutofireABToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.upABStartOnSecondControllerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.useExtendedFontToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.epilepsyProtectionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.compressGamesIfPossibleToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.pagesfoldersTypeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.disablePagefoldersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator(); + this.automaticToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.automaticOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.pagesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.pagesOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.foldersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.foldersOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.foldersSplitByFirstLetterToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.foldersSplitByFirstLetterOriginalToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.maximumGamesPerFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max20toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max25toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max30toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max35toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max40toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max45toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max50toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max60toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max70toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max80toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max90toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.max100toolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripSeparator(); + this.customToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripSeparator(); + this.saveSettingsToNESMiniNowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveStateManagerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem6 = new System.Windows.Forms.ToolStripSeparator(); + this.FTPToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.openFTPInExplorerToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem7 = new System.Windows.Forms.ToolStripSeparator(); + this.shellToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.openTelnetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripMenuItem8 = new System.Windows.Forms.ToolStripSeparator(); + this.takeScreenshotToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.gitHubPageWithActualReleasesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.fAQToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.checkedListBoxGames = new System.Windows.Forms.CheckedListBox(); + this.groupBoxOptions = new System.Windows.Forms.GroupBox(); + this.buttonShowGameGenieDatabase = new System.Windows.Forms.Button(); + this.maskedTextBoxReleaseDate = new System.Windows.Forms.MaskedTextBox(); + this.label1 = new System.Windows.Forms.Label(); + this.textBoxGameGenie = new System.Windows.Forms.TextBox(); + this.label7 = new System.Windows.Forms.Label(); + this.label6 = new System.Windows.Forms.Label(); + this.radioButtonTwoSim = new System.Windows.Forms.RadioButton(); + this.buttonGoogle = new System.Windows.Forms.Button(); + this.buttonBrowseImage = new System.Windows.Forms.Button(); + this.pictureBoxArt = new System.Windows.Forms.PictureBox(); + this.label4 = new System.Windows.Forms.Label(); + this.textBoxArguments = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.textBoxPublisher = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.radioButtonTwo = new System.Windows.Forms.RadioButton(); + this.radioButtonOne = new System.Windows.Forms.RadioButton(); + this.textBoxName = new System.Windows.Forms.TextBox(); + this.labelName = new System.Windows.Forms.Label(); + this.labelID = new System.Windows.Forms.Label(); + this.label5 = new System.Windows.Forms.Label(); + this.buttonAddGames = new System.Windows.Forms.Button(); + this.statusStrip = new System.Windows.Forms.StatusStrip(); + this.toolStripStatusConnectionIcon = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripStatusLabelSelected = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripStatusLabelSize = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripProgressBar = new System.Windows.Forms.ToolStripProgressBar(); + this.openFileDialogNes = new System.Windows.Forms.OpenFileDialog(); + this.contextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components); + this.selectAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.unselectAllToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.deleteGameToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.openFileDialogImage = new System.Windows.Forms.OpenFileDialog(); + this.buttonStart = new System.Windows.Forms.Button(); + this.timerCalculateGames = new System.Windows.Forms.Timer(this.components); + this.timerConnectionCheck = new System.Windows.Forms.Timer(this.components); + this.menuStrip.SuspendLayout(); + this.groupBoxOptions.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxArt)).BeginInit(); + this.statusStrip.SuspendLayout(); + this.contextMenuStrip.SuspendLayout(); + this.SuspendLayout(); + // + // menuStrip + // + this.menuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.fileToolStripMenuItem, + this.kernelToolStripMenuItem, + this.modulesToolStripMenuItem, + this.settingsToolStripMenuItem, + this.toolsToolStripMenuItem, + this.helpToolStripMenuItem}); + resources.ApplyResources(this.menuStrip, "menuStrip"); + this.menuStrip.Name = "menuStrip"; + // + // fileToolStripMenuItem + // + this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.addMoreGamesToolStripMenuItem, + this.presetsToolStripMenuItem, + this.synchronizeToolStripMenuItem, + this.searchToolStripMenuItem, + this.downloadCoversForAllGamesToolStripMenuItem, + this.toolStripMenuItem1, + this.exitToolStripMenuItem}); + this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; + resources.ApplyResources(this.fileToolStripMenuItem, "fileToolStripMenuItem"); + // + // addMoreGamesToolStripMenuItem + // + this.addMoreGamesToolStripMenuItem.Name = "addMoreGamesToolStripMenuItem"; + resources.ApplyResources(this.addMoreGamesToolStripMenuItem, "addMoreGamesToolStripMenuItem"); + this.addMoreGamesToolStripMenuItem.Click += new System.EventHandler(this.buttonAddGames_Click); + // + // presetsToolStripMenuItem + // + this.presetsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripMenuItem2, + this.addPresetToolStripMenuItem, + this.deletePresetToolStripMenuItem}); + this.presetsToolStripMenuItem.Name = "presetsToolStripMenuItem"; + resources.ApplyResources(this.presetsToolStripMenuItem, "presetsToolStripMenuItem"); + // + // toolStripMenuItem2 + // + this.toolStripMenuItem2.Name = "toolStripMenuItem2"; + resources.ApplyResources(this.toolStripMenuItem2, "toolStripMenuItem2"); + // + // addPresetToolStripMenuItem + // + this.addPresetToolStripMenuItem.Name = "addPresetToolStripMenuItem"; + resources.ApplyResources(this.addPresetToolStripMenuItem, "addPresetToolStripMenuItem"); + this.addPresetToolStripMenuItem.Click += new System.EventHandler(this.AddPreset); + // + // deletePresetToolStripMenuItem + // + this.deletePresetToolStripMenuItem.Name = "deletePresetToolStripMenuItem"; + resources.ApplyResources(this.deletePresetToolStripMenuItem, "deletePresetToolStripMenuItem"); + // + // synchronizeToolStripMenuItem + // + this.synchronizeToolStripMenuItem.Name = "synchronizeToolStripMenuItem"; + resources.ApplyResources(this.synchronizeToolStripMenuItem, "synchronizeToolStripMenuItem"); + this.synchronizeToolStripMenuItem.Click += new System.EventHandler(this.buttonStart_Click); + // + // searchToolStripMenuItem + // + this.searchToolStripMenuItem.Name = "searchToolStripMenuItem"; + resources.ApplyResources(this.searchToolStripMenuItem, "searchToolStripMenuItem"); + this.searchToolStripMenuItem.Click += new System.EventHandler(this.searchToolStripMenuItem_Click); + // + // downloadCoversForAllGamesToolStripMenuItem + // + this.downloadCoversForAllGamesToolStripMenuItem.Name = "downloadCoversForAllGamesToolStripMenuItem"; + resources.ApplyResources(this.downloadCoversForAllGamesToolStripMenuItem, "downloadCoversForAllGamesToolStripMenuItem"); + this.downloadCoversForAllGamesToolStripMenuItem.Click += new System.EventHandler(this.downloadCoversForAllGamesToolStripMenuItem_Click); + // + // toolStripMenuItem1 + // + this.toolStripMenuItem1.Name = "toolStripMenuItem1"; + resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1"); + // + // exitToolStripMenuItem + // + this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; + resources.ApplyResources(this.exitToolStripMenuItem, "exitToolStripMenuItem"); + this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); + // + // kernelToolStripMenuItem + // + this.kernelToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.dumpKernelToolStripMenuItem, + this.flashOriginalKernelToolStripMenuItem, + this.flashCustomKernelToolStripMenuItem, + this.uninstallToolStripMenuItem}); + this.kernelToolStripMenuItem.Name = "kernelToolStripMenuItem"; + resources.ApplyResources(this.kernelToolStripMenuItem, "kernelToolStripMenuItem"); + // + // dumpKernelToolStripMenuItem + // + this.dumpKernelToolStripMenuItem.Name = "dumpKernelToolStripMenuItem"; + resources.ApplyResources(this.dumpKernelToolStripMenuItem, "dumpKernelToolStripMenuItem"); + this.dumpKernelToolStripMenuItem.Click += new System.EventHandler(this.dumpKernelToolStripMenuItem_Click); + // + // flashOriginalKernelToolStripMenuItem + // + this.flashOriginalKernelToolStripMenuItem.Name = "flashOriginalKernelToolStripMenuItem"; + resources.ApplyResources(this.flashOriginalKernelToolStripMenuItem, "flashOriginalKernelToolStripMenuItem"); + this.flashOriginalKernelToolStripMenuItem.Click += new System.EventHandler(this.flashOriginalKernelToolStripMenuItem_Click); + // + // flashCustomKernelToolStripMenuItem + // + this.flashCustomKernelToolStripMenuItem.Name = "flashCustomKernelToolStripMenuItem"; + resources.ApplyResources(this.flashCustomKernelToolStripMenuItem, "flashCustomKernelToolStripMenuItem"); + this.flashCustomKernelToolStripMenuItem.Click += new System.EventHandler(this.flashCustomKernelToolStripMenuItem_Click); + // + // uninstallToolStripMenuItem + // + this.uninstallToolStripMenuItem.Name = "uninstallToolStripMenuItem"; + resources.ApplyResources(this.uninstallToolStripMenuItem, "uninstallToolStripMenuItem"); + this.uninstallToolStripMenuItem.Click += new System.EventHandler(this.uninstallToolStripMenuItem_Click); + // + // modulesToolStripMenuItem + // + this.modulesToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.installModulesToolStripMenuItem, + this.uninstallModulesToolStripMenuItem}); + this.modulesToolStripMenuItem.Name = "modulesToolStripMenuItem"; + resources.ApplyResources(this.modulesToolStripMenuItem, "modulesToolStripMenuItem"); + // + // installModulesToolStripMenuItem + // + this.installModulesToolStripMenuItem.Name = "installModulesToolStripMenuItem"; + resources.ApplyResources(this.installModulesToolStripMenuItem, "installModulesToolStripMenuItem"); + this.installModulesToolStripMenuItem.Click += new System.EventHandler(this.installModulesToolStripMenuItem_Click); + // + // uninstallModulesToolStripMenuItem + // + this.uninstallModulesToolStripMenuItem.Name = "uninstallModulesToolStripMenuItem"; + resources.ApplyResources(this.uninstallModulesToolStripMenuItem, "uninstallModulesToolStripMenuItem"); + this.uninstallModulesToolStripMenuItem.Click += new System.EventHandler(this.uninstallModulesToolStripMenuItem_Click); + // + // settingsToolStripMenuItem + // + this.settingsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.languageToolStripMenuItem, + this.consoleTypeToolStripMenuItem, + this.cloverconHackToolStripMenuItem, + this.useExtendedFontToolStripMenuItem, + this.epilepsyProtectionToolStripMenuItem, + this.compressGamesIfPossibleToolStripMenuItem, + this.pagesfoldersTypeToolStripMenuItem, + this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem, + this.toolStripMenuItem5, + this.saveSettingsToNESMiniNowToolStripMenuItem}); + this.settingsToolStripMenuItem.Name = "settingsToolStripMenuItem"; + resources.ApplyResources(this.settingsToolStripMenuItem, "settingsToolStripMenuItem"); + // + // languageToolStripMenuItem + // + resources.ApplyResources(this.languageToolStripMenuItem, "languageToolStripMenuItem"); + this.languageToolStripMenuItem.Name = "languageToolStripMenuItem"; + // + // consoleTypeToolStripMenuItem + // + this.consoleTypeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.nESMiniToolStripMenuItem, + this.famicomMiniToolStripMenuItem}); + this.consoleTypeToolStripMenuItem.Name = "consoleTypeToolStripMenuItem"; + resources.ApplyResources(this.consoleTypeToolStripMenuItem, "consoleTypeToolStripMenuItem"); + // + // nESMiniToolStripMenuItem + // + this.nESMiniToolStripMenuItem.Checked = true; + this.nESMiniToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked; + this.nESMiniToolStripMenuItem.Name = "nESMiniToolStripMenuItem"; + resources.ApplyResources(this.nESMiniToolStripMenuItem, "nESMiniToolStripMenuItem"); + this.nESMiniToolStripMenuItem.Click += new System.EventHandler(this.nESMiniToolStripMenuItem_Click); + // + // famicomMiniToolStripMenuItem + // + this.famicomMiniToolStripMenuItem.Name = "famicomMiniToolStripMenuItem"; + resources.ApplyResources(this.famicomMiniToolStripMenuItem, "famicomMiniToolStripMenuItem"); + this.famicomMiniToolStripMenuItem.Click += new System.EventHandler(this.famicomMiniToolStripMenuItem_Click); + // + // cloverconHackToolStripMenuItem + // + this.cloverconHackToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.resetUsingCombinationOfButtonsToolStripMenuItem, + this.selectButtonCombinationToolStripMenuItem, + this.enableAutofireToolStripMenuItem, + this.useXYOnClassicControllerAsAutofireABToolStripMenuItem, + this.upABStartOnSecondControllerToolStripMenuItem}); + this.cloverconHackToolStripMenuItem.Name = "cloverconHackToolStripMenuItem"; + resources.ApplyResources(this.cloverconHackToolStripMenuItem, "cloverconHackToolStripMenuItem"); + // + // resetUsingCombinationOfButtonsToolStripMenuItem + // + this.resetUsingCombinationOfButtonsToolStripMenuItem.Checked = true; + this.resetUsingCombinationOfButtonsToolStripMenuItem.CheckOnClick = true; + this.resetUsingCombinationOfButtonsToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked; + this.resetUsingCombinationOfButtonsToolStripMenuItem.Name = "resetUsingCombinationOfButtonsToolStripMenuItem"; + resources.ApplyResources(this.resetUsingCombinationOfButtonsToolStripMenuItem, "resetUsingCombinationOfButtonsToolStripMenuItem"); + this.resetUsingCombinationOfButtonsToolStripMenuItem.Click += new System.EventHandler(this.cloverconHackToolStripMenuItem_Click); + // + // selectButtonCombinationToolStripMenuItem + // + this.selectButtonCombinationToolStripMenuItem.Name = "selectButtonCombinationToolStripMenuItem"; + resources.ApplyResources(this.selectButtonCombinationToolStripMenuItem, "selectButtonCombinationToolStripMenuItem"); + this.selectButtonCombinationToolStripMenuItem.Click += new System.EventHandler(this.selectButtonCombinationToolStripMenuItem_Click); + // + // enableAutofireToolStripMenuItem + // + this.enableAutofireToolStripMenuItem.CheckOnClick = true; + this.enableAutofireToolStripMenuItem.Name = "enableAutofireToolStripMenuItem"; + resources.ApplyResources(this.enableAutofireToolStripMenuItem, "enableAutofireToolStripMenuItem"); + this.enableAutofireToolStripMenuItem.Click += new System.EventHandler(this.enableAutofireToolStripMenuItem_Click); + // + // useXYOnClassicControllerAsAutofireABToolStripMenuItem + // + this.useXYOnClassicControllerAsAutofireABToolStripMenuItem.CheckOnClick = true; + this.useXYOnClassicControllerAsAutofireABToolStripMenuItem.Name = "useXYOnClassicControllerAsAutofireABToolStripMenuItem"; + resources.ApplyResources(this.useXYOnClassicControllerAsAutofireABToolStripMenuItem, "useXYOnClassicControllerAsAutofireABToolStripMenuItem"); + this.useXYOnClassicControllerAsAutofireABToolStripMenuItem.Click += new System.EventHandler(this.useXYOnClassicControllerAsAutofireABToolStripMenuItem_Click); + // + // upABStartOnSecondControllerToolStripMenuItem + // + this.upABStartOnSecondControllerToolStripMenuItem.CheckOnClick = true; + this.upABStartOnSecondControllerToolStripMenuItem.Name = "upABStartOnSecondControllerToolStripMenuItem"; + resources.ApplyResources(this.upABStartOnSecondControllerToolStripMenuItem, "upABStartOnSecondControllerToolStripMenuItem"); + this.upABStartOnSecondControllerToolStripMenuItem.Click += new System.EventHandler(this.upABStartOnSecondControllerToolStripMenuItem_Click); + // + // useExtendedFontToolStripMenuItem + // + this.useExtendedFontToolStripMenuItem.Checked = true; + this.useExtendedFontToolStripMenuItem.CheckOnClick = true; + this.useExtendedFontToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked; + this.useExtendedFontToolStripMenuItem.Name = "useExtendedFontToolStripMenuItem"; + resources.ApplyResources(this.useExtendedFontToolStripMenuItem, "useExtendedFontToolStripMenuItem"); + this.useExtendedFontToolStripMenuItem.Click += new System.EventHandler(this.useExtendedFontToolStripMenuItem_Click); + // + // epilepsyProtectionToolStripMenuItem + // + this.epilepsyProtectionToolStripMenuItem.CheckOnClick = true; + this.epilepsyProtectionToolStripMenuItem.Name = "epilepsyProtectionToolStripMenuItem"; + resources.ApplyResources(this.epilepsyProtectionToolStripMenuItem, "epilepsyProtectionToolStripMenuItem"); + this.epilepsyProtectionToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItemArmet_Click); + // + // compressGamesIfPossibleToolStripMenuItem + // + this.compressGamesIfPossibleToolStripMenuItem.CheckOnClick = true; + this.compressGamesIfPossibleToolStripMenuItem.Name = "compressGamesIfPossibleToolStripMenuItem"; + resources.ApplyResources(this.compressGamesIfPossibleToolStripMenuItem, "compressGamesIfPossibleToolStripMenuItem"); + this.compressGamesIfPossibleToolStripMenuItem.Click += new System.EventHandler(this.compressGamesIfPossibleToolStripMenuItem_Click); + // + // pagesfoldersTypeToolStripMenuItem + // + this.pagesfoldersTypeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.disablePagefoldersToolStripMenuItem, + this.toolStripMenuItem3, + this.automaticToolStripMenuItem, + this.automaticOriginalToolStripMenuItem, + this.pagesToolStripMenuItem, + this.pagesOriginalToolStripMenuItem, + this.foldersToolStripMenuItem, + this.foldersOriginalToolStripMenuItem, + this.foldersSplitByFirstLetterToolStripMenuItem, + this.foldersSplitByFirstLetterOriginalToolStripMenuItem, + this.maximumGamesPerFolderToolStripMenuItem, + this.toolStripMenuItem4, + this.customToolStripMenuItem}); + this.pagesfoldersTypeToolStripMenuItem.Name = "pagesfoldersTypeToolStripMenuItem"; + resources.ApplyResources(this.pagesfoldersTypeToolStripMenuItem, "pagesfoldersTypeToolStripMenuItem"); + // + // disablePagefoldersToolStripMenuItem + // + this.disablePagefoldersToolStripMenuItem.Name = "disablePagefoldersToolStripMenuItem"; + resources.ApplyResources(this.disablePagefoldersToolStripMenuItem, "disablePagefoldersToolStripMenuItem"); + this.disablePagefoldersToolStripMenuItem.Tag = "0"; + this.disablePagefoldersToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // toolStripMenuItem3 + // + this.toolStripMenuItem3.Name = "toolStripMenuItem3"; + resources.ApplyResources(this.toolStripMenuItem3, "toolStripMenuItem3"); + // + // automaticToolStripMenuItem + // + this.automaticToolStripMenuItem.Checked = true; + this.automaticToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked; + this.automaticToolStripMenuItem.Name = "automaticToolStripMenuItem"; + resources.ApplyResources(this.automaticToolStripMenuItem, "automaticToolStripMenuItem"); + this.automaticToolStripMenuItem.Tag = "2"; + this.automaticToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // automaticOriginalToolStripMenuItem + // + this.automaticOriginalToolStripMenuItem.Name = "automaticOriginalToolStripMenuItem"; + resources.ApplyResources(this.automaticOriginalToolStripMenuItem, "automaticOriginalToolStripMenuItem"); + this.automaticOriginalToolStripMenuItem.Tag = "3"; + this.automaticOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // pagesToolStripMenuItem + // + resources.ApplyResources(this.pagesToolStripMenuItem, "pagesToolStripMenuItem"); + this.pagesToolStripMenuItem.Name = "pagesToolStripMenuItem"; + this.pagesToolStripMenuItem.Tag = "4"; + this.pagesToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // pagesOriginalToolStripMenuItem + // + resources.ApplyResources(this.pagesOriginalToolStripMenuItem, "pagesOriginalToolStripMenuItem"); + this.pagesOriginalToolStripMenuItem.Name = "pagesOriginalToolStripMenuItem"; + this.pagesOriginalToolStripMenuItem.Tag = "5"; + this.pagesOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // foldersToolStripMenuItem + // + this.foldersToolStripMenuItem.Name = "foldersToolStripMenuItem"; + resources.ApplyResources(this.foldersToolStripMenuItem, "foldersToolStripMenuItem"); + this.foldersToolStripMenuItem.Tag = "6"; + this.foldersToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // foldersOriginalToolStripMenuItem + // + this.foldersOriginalToolStripMenuItem.Name = "foldersOriginalToolStripMenuItem"; + resources.ApplyResources(this.foldersOriginalToolStripMenuItem, "foldersOriginalToolStripMenuItem"); + this.foldersOriginalToolStripMenuItem.Tag = "7"; + this.foldersOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // foldersSplitByFirstLetterToolStripMenuItem + // + this.foldersSplitByFirstLetterToolStripMenuItem.Name = "foldersSplitByFirstLetterToolStripMenuItem"; + resources.ApplyResources(this.foldersSplitByFirstLetterToolStripMenuItem, "foldersSplitByFirstLetterToolStripMenuItem"); + this.foldersSplitByFirstLetterToolStripMenuItem.Tag = "8"; + this.foldersSplitByFirstLetterToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // foldersSplitByFirstLetterOriginalToolStripMenuItem + // + this.foldersSplitByFirstLetterOriginalToolStripMenuItem.Name = "foldersSplitByFirstLetterOriginalToolStripMenuItem"; + resources.ApplyResources(this.foldersSplitByFirstLetterOriginalToolStripMenuItem, "foldersSplitByFirstLetterOriginalToolStripMenuItem"); + this.foldersSplitByFirstLetterOriginalToolStripMenuItem.Tag = "9"; + this.foldersSplitByFirstLetterOriginalToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // maximumGamesPerFolderToolStripMenuItem + // + this.maximumGamesPerFolderToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.max20toolStripMenuItem, + this.max25toolStripMenuItem, + this.max30toolStripMenuItem, + this.max35toolStripMenuItem, + this.max40toolStripMenuItem, + this.max45toolStripMenuItem, + this.max50toolStripMenuItem, + this.max60toolStripMenuItem, + this.max70toolStripMenuItem, + this.max80toolStripMenuItem, + this.max90toolStripMenuItem, + this.max100toolStripMenuItem}); + this.maximumGamesPerFolderToolStripMenuItem.Name = "maximumGamesPerFolderToolStripMenuItem"; + resources.ApplyResources(this.maximumGamesPerFolderToolStripMenuItem, "maximumGamesPerFolderToolStripMenuItem"); + // + // max20toolStripMenuItem + // + this.max20toolStripMenuItem.Name = "max20toolStripMenuItem"; + resources.ApplyResources(this.max20toolStripMenuItem, "max20toolStripMenuItem"); + this.max20toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max25toolStripMenuItem + // + this.max25toolStripMenuItem.Name = "max25toolStripMenuItem"; + resources.ApplyResources(this.max25toolStripMenuItem, "max25toolStripMenuItem"); + this.max25toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max30toolStripMenuItem + // + this.max30toolStripMenuItem.Name = "max30toolStripMenuItem"; + resources.ApplyResources(this.max30toolStripMenuItem, "max30toolStripMenuItem"); + this.max30toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max35toolStripMenuItem + // + this.max35toolStripMenuItem.Name = "max35toolStripMenuItem"; + resources.ApplyResources(this.max35toolStripMenuItem, "max35toolStripMenuItem"); + this.max35toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max40toolStripMenuItem + // + this.max40toolStripMenuItem.Name = "max40toolStripMenuItem"; + resources.ApplyResources(this.max40toolStripMenuItem, "max40toolStripMenuItem"); + this.max40toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max45toolStripMenuItem + // + this.max45toolStripMenuItem.Name = "max45toolStripMenuItem"; + resources.ApplyResources(this.max45toolStripMenuItem, "max45toolStripMenuItem"); + this.max45toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max50toolStripMenuItem + // + this.max50toolStripMenuItem.Name = "max50toolStripMenuItem"; + resources.ApplyResources(this.max50toolStripMenuItem, "max50toolStripMenuItem"); + this.max50toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max60toolStripMenuItem + // + this.max60toolStripMenuItem.Name = "max60toolStripMenuItem"; + resources.ApplyResources(this.max60toolStripMenuItem, "max60toolStripMenuItem"); + this.max60toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max70toolStripMenuItem + // + this.max70toolStripMenuItem.Name = "max70toolStripMenuItem"; + resources.ApplyResources(this.max70toolStripMenuItem, "max70toolStripMenuItem"); + this.max70toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max80toolStripMenuItem + // + this.max80toolStripMenuItem.Name = "max80toolStripMenuItem"; + resources.ApplyResources(this.max80toolStripMenuItem, "max80toolStripMenuItem"); + this.max80toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max90toolStripMenuItem + // + this.max90toolStripMenuItem.Name = "max90toolStripMenuItem"; + resources.ApplyResources(this.max90toolStripMenuItem, "max90toolStripMenuItem"); + this.max90toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // max100toolStripMenuItem + // + this.max100toolStripMenuItem.Name = "max100toolStripMenuItem"; + resources.ApplyResources(this.max100toolStripMenuItem, "max100toolStripMenuItem"); + this.max100toolStripMenuItem.Click += new System.EventHandler(this.toolStripMenuMaxGamesPerFolder_Click); + // + // toolStripMenuItem4 + // + this.toolStripMenuItem4.Name = "toolStripMenuItem4"; + resources.ApplyResources(this.toolStripMenuItem4, "toolStripMenuItem4"); + // + // customToolStripMenuItem + // + this.customToolStripMenuItem.Name = "customToolStripMenuItem"; + resources.ApplyResources(this.customToolStripMenuItem, "customToolStripMenuItem"); + this.customToolStripMenuItem.Tag = "99"; + this.customToolStripMenuItem.Click += new System.EventHandler(this.pagesModefoldersToolStripMenuItem_Click); + // + // globalCommandLineArgumentsexpertsOnluToolStripMenuItem + // + this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name = "globalCommandLineArgumentsexpertsOnluToolStripMenuItem"; + resources.ApplyResources(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem, "globalCommandLineArgumentsexpertsOnluToolStripMenuItem"); + this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Click += new System.EventHandler(this.globalCommandLineArgumentsexpertsOnluToolStripMenuItem_Click); + // + // toolStripMenuItem5 + // + this.toolStripMenuItem5.Name = "toolStripMenuItem5"; + resources.ApplyResources(this.toolStripMenuItem5, "toolStripMenuItem5"); + // + // saveSettingsToNESMiniNowToolStripMenuItem + // + resources.ApplyResources(this.saveSettingsToNESMiniNowToolStripMenuItem, "saveSettingsToNESMiniNowToolStripMenuItem"); + this.saveSettingsToNESMiniNowToolStripMenuItem.Name = "saveSettingsToNESMiniNowToolStripMenuItem"; + this.saveSettingsToNESMiniNowToolStripMenuItem.Click += new System.EventHandler(this.saveSettingsToNESMiniNowToolStripMenuItem_Click); + // + // toolsToolStripMenuItem + // + this.toolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.saveStateManagerToolStripMenuItem, + this.toolStripMenuItem6, + this.FTPToolStripMenuItem, + this.openFTPInExplorerToolStripMenuItem, + this.toolStripMenuItem7, + this.shellToolStripMenuItem, + this.openTelnetToolStripMenuItem, + this.toolStripMenuItem8, + this.takeScreenshotToolStripMenuItem}); + this.toolsToolStripMenuItem.Name = "toolsToolStripMenuItem"; + resources.ApplyResources(this.toolsToolStripMenuItem, "toolsToolStripMenuItem"); + // + // saveStateManagerToolStripMenuItem + // + this.saveStateManagerToolStripMenuItem.Name = "saveStateManagerToolStripMenuItem"; + resources.ApplyResources(this.saveStateManagerToolStripMenuItem, "saveStateManagerToolStripMenuItem"); + this.saveStateManagerToolStripMenuItem.Click += new System.EventHandler(this.saveStateManagerToolStripMenuItem_Click); + // + // toolStripMenuItem6 + // + this.toolStripMenuItem6.Name = "toolStripMenuItem6"; + resources.ApplyResources(this.toolStripMenuItem6, "toolStripMenuItem6"); + // + // FTPToolStripMenuItem + // + this.FTPToolStripMenuItem.CheckOnClick = true; + this.FTPToolStripMenuItem.Name = "FTPToolStripMenuItem"; + resources.ApplyResources(this.FTPToolStripMenuItem, "FTPToolStripMenuItem"); + this.FTPToolStripMenuItem.Click += new System.EventHandler(this.FTPToolStripMenuItem_Click); + // + // openFTPInExplorerToolStripMenuItem + // + resources.ApplyResources(this.openFTPInExplorerToolStripMenuItem, "openFTPInExplorerToolStripMenuItem"); + this.openFTPInExplorerToolStripMenuItem.Name = "openFTPInExplorerToolStripMenuItem"; + this.openFTPInExplorerToolStripMenuItem.Click += new System.EventHandler(this.openFTPInExplorerToolStripMenuItem_Click); + // + // toolStripMenuItem7 + // + this.toolStripMenuItem7.Name = "toolStripMenuItem7"; + resources.ApplyResources(this.toolStripMenuItem7, "toolStripMenuItem7"); + // + // shellToolStripMenuItem + // + this.shellToolStripMenuItem.CheckOnClick = true; + this.shellToolStripMenuItem.Name = "shellToolStripMenuItem"; + resources.ApplyResources(this.shellToolStripMenuItem, "shellToolStripMenuItem"); + this.shellToolStripMenuItem.Click += new System.EventHandler(this.shellToolStripMenuItem_Click); + // + // openTelnetToolStripMenuItem + // + resources.ApplyResources(this.openTelnetToolStripMenuItem, "openTelnetToolStripMenuItem"); + this.openTelnetToolStripMenuItem.Name = "openTelnetToolStripMenuItem"; + this.openTelnetToolStripMenuItem.Click += new System.EventHandler(this.openTelnetToolStripMenuItem_Click); + // + // toolStripMenuItem8 + // + this.toolStripMenuItem8.Name = "toolStripMenuItem8"; + resources.ApplyResources(this.toolStripMenuItem8, "toolStripMenuItem8"); + // + // takeScreenshotToolStripMenuItem + // + this.takeScreenshotToolStripMenuItem.Name = "takeScreenshotToolStripMenuItem"; + resources.ApplyResources(this.takeScreenshotToolStripMenuItem, "takeScreenshotToolStripMenuItem"); + this.takeScreenshotToolStripMenuItem.Click += new System.EventHandler(this.takeScreenshotToolStripMenuItem_Click); + // + // helpToolStripMenuItem + // + this.helpToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.gitHubPageWithActualReleasesToolStripMenuItem, + this.fAQToolStripMenuItem, + this.aboutToolStripMenuItem}); + this.helpToolStripMenuItem.Name = "helpToolStripMenuItem"; + resources.ApplyResources(this.helpToolStripMenuItem, "helpToolStripMenuItem"); + // + // gitHubPageWithActualReleasesToolStripMenuItem + // + this.gitHubPageWithActualReleasesToolStripMenuItem.Name = "gitHubPageWithActualReleasesToolStripMenuItem"; + resources.ApplyResources(this.gitHubPageWithActualReleasesToolStripMenuItem, "gitHubPageWithActualReleasesToolStripMenuItem"); + this.gitHubPageWithActualReleasesToolStripMenuItem.Click += new System.EventHandler(this.gitHubPageWithActualReleasesToolStripMenuItem_Click); + // + // fAQToolStripMenuItem + // + this.fAQToolStripMenuItem.Name = "fAQToolStripMenuItem"; + resources.ApplyResources(this.fAQToolStripMenuItem, "fAQToolStripMenuItem"); + this.fAQToolStripMenuItem.Click += new System.EventHandler(this.fAQToolStripMenuItem_Click); + // + // aboutToolStripMenuItem + // + this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; + resources.ApplyResources(this.aboutToolStripMenuItem, "aboutToolStripMenuItem"); + this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click); + // + // checkedListBoxGames + // + resources.ApplyResources(this.checkedListBoxGames, "checkedListBoxGames"); + this.checkedListBoxGames.FormattingEnabled = true; + this.checkedListBoxGames.Name = "checkedListBoxGames"; + this.checkedListBoxGames.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.checkedListBoxGames_ItemCheck); + this.checkedListBoxGames.SelectedIndexChanged += new System.EventHandler(this.checkedListBoxGames_SelectedIndexChanged); + this.checkedListBoxGames.KeyDown += new System.Windows.Forms.KeyEventHandler(this.checkedListBoxGames_KeyDown); + this.checkedListBoxGames.MouseDown += new System.Windows.Forms.MouseEventHandler(this.checkedListBoxGames_MouseDown); + // + // groupBoxOptions + // + resources.ApplyResources(this.groupBoxOptions, "groupBoxOptions"); + this.groupBoxOptions.Controls.Add(this.buttonShowGameGenieDatabase); + this.groupBoxOptions.Controls.Add(this.maskedTextBoxReleaseDate); + this.groupBoxOptions.Controls.Add(this.label1); + this.groupBoxOptions.Controls.Add(this.textBoxGameGenie); + this.groupBoxOptions.Controls.Add(this.label7); + this.groupBoxOptions.Controls.Add(this.label6); + this.groupBoxOptions.Controls.Add(this.radioButtonTwoSim); + this.groupBoxOptions.Controls.Add(this.buttonGoogle); + this.groupBoxOptions.Controls.Add(this.buttonBrowseImage); + this.groupBoxOptions.Controls.Add(this.pictureBoxArt); + this.groupBoxOptions.Controls.Add(this.label4); + this.groupBoxOptions.Controls.Add(this.textBoxArguments); + this.groupBoxOptions.Controls.Add(this.label3); + this.groupBoxOptions.Controls.Add(this.textBoxPublisher); + this.groupBoxOptions.Controls.Add(this.label2); + this.groupBoxOptions.Controls.Add(this.radioButtonTwo); + this.groupBoxOptions.Controls.Add(this.radioButtonOne); + this.groupBoxOptions.Controls.Add(this.textBoxName); + this.groupBoxOptions.Controls.Add(this.labelName); + this.groupBoxOptions.Controls.Add(this.labelID); + this.groupBoxOptions.Name = "groupBoxOptions"; + this.groupBoxOptions.TabStop = false; + // + // buttonShowGameGenieDatabase + // + resources.ApplyResources(this.buttonShowGameGenieDatabase, "buttonShowGameGenieDatabase"); + this.buttonShowGameGenieDatabase.Name = "buttonShowGameGenieDatabase"; + this.buttonShowGameGenieDatabase.UseVisualStyleBackColor = true; + this.buttonShowGameGenieDatabase.Click += new System.EventHandler(this.buttonShowGameGenieDatabase_Click); + // + // maskedTextBoxReleaseDate + // + resources.ApplyResources(this.maskedTextBoxReleaseDate, "maskedTextBoxReleaseDate"); + this.maskedTextBoxReleaseDate.Name = "maskedTextBoxReleaseDate"; + this.maskedTextBoxReleaseDate.TextChanged += new System.EventHandler(this.maskedTextBoxReleaseDate_TextChanged); + // + // label1 + // + resources.ApplyResources(this.label1, "label1"); + this.label1.Name = "label1"; + // + // textBoxGameGenie + // + resources.ApplyResources(this.textBoxGameGenie, "textBoxGameGenie"); + this.textBoxGameGenie.Name = "textBoxGameGenie"; + this.textBoxGameGenie.TextChanged += new System.EventHandler(this.textBoxGameGenie_TextChanged); + // + // label7 + // + resources.ApplyResources(this.label7, "label7"); + this.label7.Name = "label7"; + // + // label6 + // + resources.ApplyResources(this.label6, "label6"); + this.label6.Name = "label6"; + // + // radioButtonTwoSim + // + resources.ApplyResources(this.radioButtonTwoSim, "radioButtonTwoSim"); + this.radioButtonTwoSim.Name = "radioButtonTwoSim"; + this.radioButtonTwoSim.UseVisualStyleBackColor = true; + this.radioButtonTwoSim.CheckedChanged += new System.EventHandler(this.radioButtonOne_CheckedChanged); + // + // buttonGoogle + // + resources.ApplyResources(this.buttonGoogle, "buttonGoogle"); + this.buttonGoogle.Name = "buttonGoogle"; + this.buttonGoogle.UseVisualStyleBackColor = true; + this.buttonGoogle.Click += new System.EventHandler(this.buttonGoogle_Click); + // + // buttonBrowseImage + // + resources.ApplyResources(this.buttonBrowseImage, "buttonBrowseImage"); + this.buttonBrowseImage.Name = "buttonBrowseImage"; + this.buttonBrowseImage.UseVisualStyleBackColor = true; + this.buttonBrowseImage.Click += new System.EventHandler(this.buttonBrowseImage_Click); + // + // pictureBoxArt + // + resources.ApplyResources(this.pictureBoxArt, "pictureBoxArt"); + this.pictureBoxArt.Name = "pictureBoxArt"; + this.pictureBoxArt.TabStop = false; + // + // label4 + // + resources.ApplyResources(this.label4, "label4"); + this.label4.Name = "label4"; + // + // textBoxArguments + // + resources.ApplyResources(this.textBoxArguments, "textBoxArguments"); + this.textBoxArguments.Name = "textBoxArguments"; + this.textBoxArguments.TextChanged += new System.EventHandler(this.textBoxArguments_TextChanged); + // + // label3 + // + resources.ApplyResources(this.label3, "label3"); + this.label3.Name = "label3"; + // + // textBoxPublisher + // + resources.ApplyResources(this.textBoxPublisher, "textBoxPublisher"); + this.textBoxPublisher.Name = "textBoxPublisher"; + this.textBoxPublisher.TextChanged += new System.EventHandler(this.textBoxPublisher_TextChanged); + // + // label2 + // + resources.ApplyResources(this.label2, "label2"); + this.label2.Name = "label2"; + // + // radioButtonTwo + // + resources.ApplyResources(this.radioButtonTwo, "radioButtonTwo"); + this.radioButtonTwo.Name = "radioButtonTwo"; + this.radioButtonTwo.UseVisualStyleBackColor = true; + this.radioButtonTwo.CheckedChanged += new System.EventHandler(this.radioButtonOne_CheckedChanged); + // + // radioButtonOne + // + resources.ApplyResources(this.radioButtonOne, "radioButtonOne"); + this.radioButtonOne.Checked = true; + this.radioButtonOne.Name = "radioButtonOne"; + this.radioButtonOne.TabStop = true; + this.radioButtonOne.UseVisualStyleBackColor = true; + this.radioButtonOne.CheckedChanged += new System.EventHandler(this.radioButtonOne_CheckedChanged); + // + // textBoxName + // + resources.ApplyResources(this.textBoxName, "textBoxName"); + this.textBoxName.Name = "textBoxName"; + this.textBoxName.TextChanged += new System.EventHandler(this.textBoxName_TextChanged); + // + // labelName + // + resources.ApplyResources(this.labelName, "labelName"); + this.labelName.Name = "labelName"; + // + // labelID + // + resources.ApplyResources(this.labelID, "labelID"); + this.labelID.Name = "labelID"; + // + // label5 + // + resources.ApplyResources(this.label5, "label5"); + this.label5.Name = "label5"; + // + // buttonAddGames + // + resources.ApplyResources(this.buttonAddGames, "buttonAddGames"); + this.buttonAddGames.Name = "buttonAddGames"; + this.buttonAddGames.UseVisualStyleBackColor = true; + this.buttonAddGames.Click += new System.EventHandler(this.buttonAddGames_Click); + // + // statusStrip + // + this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripStatusConnectionIcon, + this.toolStripStatusLabelSelected, + this.toolStripStatusLabelSize, + this.toolStripProgressBar}); + resources.ApplyResources(this.statusStrip, "statusStrip"); + this.statusStrip.Name = "statusStrip"; + this.statusStrip.SizingGrip = false; + // + // toolStripStatusConnectionIcon + // + resources.ApplyResources(this.toolStripStatusConnectionIcon, "toolStripStatusConnectionIcon"); + this.toolStripStatusConnectionIcon.Image = global::com.clusterrr.hakchi_gui.Properties.Resources.red; + this.toolStripStatusConnectionIcon.Margin = new System.Windows.Forms.Padding(2, 3, 2, 2); + this.toolStripStatusConnectionIcon.Name = "toolStripStatusConnectionIcon"; + // + // toolStripStatusLabelSelected + // + resources.ApplyResources(this.toolStripStatusLabelSelected, "toolStripStatusLabelSelected"); + this.toolStripStatusLabelSelected.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Top) + | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right) + | System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom))); + this.toolStripStatusLabelSelected.Name = "toolStripStatusLabelSelected"; + // + // toolStripStatusLabelSize + // + resources.ApplyResources(this.toolStripStatusLabelSize, "toolStripStatusLabelSize"); + this.toolStripStatusLabelSize.BorderSides = ((System.Windows.Forms.ToolStripStatusLabelBorderSides)((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left | System.Windows.Forms.ToolStripStatusLabelBorderSides.Top) + | System.Windows.Forms.ToolStripStatusLabelBorderSides.Right) + | System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom))); + this.toolStripStatusLabelSize.Name = "toolStripStatusLabelSize"; + // + // toolStripProgressBar + // + this.toolStripProgressBar.ForeColor = System.Drawing.SystemColors.ControlText; + this.toolStripProgressBar.Name = "toolStripProgressBar"; + resources.ApplyResources(this.toolStripProgressBar, "toolStripProgressBar"); + this.toolStripProgressBar.Style = System.Windows.Forms.ProgressBarStyle.Continuous; + // + // openFileDialogNes + // + this.openFileDialogNes.DefaultExt = "nes"; + this.openFileDialogNes.Multiselect = true; + resources.ApplyResources(this.openFileDialogNes, "openFileDialogNes"); + // + // contextMenuStrip + // + this.contextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.selectAllToolStripMenuItem, + this.unselectAllToolStripMenuItem, + this.deleteGameToolStripMenuItem}); + this.contextMenuStrip.Name = "contextMenuStrip"; + resources.ApplyResources(this.contextMenuStrip, "contextMenuStrip"); + // + // selectAllToolStripMenuItem + // + this.selectAllToolStripMenuItem.Name = "selectAllToolStripMenuItem"; + resources.ApplyResources(this.selectAllToolStripMenuItem, "selectAllToolStripMenuItem"); + this.selectAllToolStripMenuItem.Click += new System.EventHandler(this.selectAllToolStripMenuItem_Click); + // + // unselectAllToolStripMenuItem + // + this.unselectAllToolStripMenuItem.Name = "unselectAllToolStripMenuItem"; + resources.ApplyResources(this.unselectAllToolStripMenuItem, "unselectAllToolStripMenuItem"); + this.unselectAllToolStripMenuItem.Click += new System.EventHandler(this.unselectAllToolStripMenuItem_Click); + // + // deleteGameToolStripMenuItem + // + this.deleteGameToolStripMenuItem.Name = "deleteGameToolStripMenuItem"; + resources.ApplyResources(this.deleteGameToolStripMenuItem, "deleteGameToolStripMenuItem"); + this.deleteGameToolStripMenuItem.Click += new System.EventHandler(this.deleteGameToolStripMenuItem_Click); + // + // openFileDialogImage + // + resources.ApplyResources(this.openFileDialogImage, "openFileDialogImage"); + // + // buttonStart + // + resources.ApplyResources(this.buttonStart, "buttonStart"); + this.buttonStart.Name = "buttonStart"; + this.buttonStart.UseVisualStyleBackColor = true; + this.buttonStart.Click += new System.EventHandler(this.buttonStart_Click); + // + // timerCalculateGames + // + this.timerCalculateGames.Enabled = true; + this.timerCalculateGames.Interval = 500; + this.timerCalculateGames.Tick += new System.EventHandler(this.timerCalculateGames_Tick); + // + // timerConnectionCheck + // + this.timerConnectionCheck.Enabled = true; + this.timerConnectionCheck.Interval = 500; + this.timerConnectionCheck.Tick += new System.EventHandler(this.timerConnectionCheck_Tick); + // + // MainForm + // + this.AllowDrop = true; + resources.ApplyResources(this, "$this"); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.buttonStart); + this.Controls.Add(this.statusStrip); + this.Controls.Add(this.buttonAddGames); + this.Controls.Add(this.label5); + this.Controls.Add(this.checkedListBoxGames); + this.Controls.Add(this.menuStrip); + this.Controls.Add(this.groupBoxOptions); + this.Cursor = System.Windows.Forms.Cursors.Default; + this.KeyPreview = true; + this.MaximizeBox = false; + this.Name = "MainForm"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing); + this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.MainForm_FormClosed); + this.Shown += new System.EventHandler(this.MainForm_Shown); + this.DragDrop += new System.Windows.Forms.DragEventHandler(this.checkedListBoxGames_DragDrop); + this.DragEnter += new System.Windows.Forms.DragEventHandler(this.checkedListBoxGames_DragEnter); + this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.MainForm_KeyDown); + this.menuStrip.ResumeLayout(false); + this.menuStrip.PerformLayout(); + this.groupBoxOptions.ResumeLayout(false); + this.groupBoxOptions.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxArt)).EndInit(); + this.statusStrip.ResumeLayout(false); + this.statusStrip.PerformLayout(); + this.contextMenuStrip.ResumeLayout(false); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.MenuStrip menuStrip; + private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem addMoreGamesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem; + private System.Windows.Forms.GroupBox groupBoxOptions; + private System.Windows.Forms.RadioButton radioButtonTwo; + private System.Windows.Forms.RadioButton radioButtonOne; + private System.Windows.Forms.TextBox textBoxName; + private System.Windows.Forms.Label labelName; + private System.Windows.Forms.Label labelID; + private System.Windows.Forms.TextBox textBoxPublisher; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.MaskedTextBox maskedTextBoxReleaseDate; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.TextBox textBoxArguments; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.PictureBox pictureBoxArt; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.Button buttonGoogle; + private System.Windows.Forms.Button buttonBrowseImage; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Button buttonAddGames; + private System.Windows.Forms.StatusStrip statusStrip; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabelSelected; + private System.Windows.Forms.OpenFileDialog openFileDialogNes; + private System.Windows.Forms.ContextMenuStrip contextMenuStrip; + private System.Windows.Forms.ToolStripMenuItem deleteGameToolStripMenuItem; + private System.Windows.Forms.OpenFileDialog openFileDialogImage; + private System.Windows.Forms.Button buttonStart; + private System.Windows.Forms.ToolStripMenuItem kernelToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem dumpKernelToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem flashCustomKernelToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem flashOriginalKernelToolStripMenuItem; + private System.Windows.Forms.RadioButton radioButtonTwoSim; + private System.Windows.Forms.Label label6; + private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem; + private System.Windows.Forms.Timer timerCalculateGames; + private System.Windows.Forms.ToolStripMenuItem selectAllToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem unselectAllToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem uninstallToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem helpToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem fAQToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem gitHubPageWithActualReleasesToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1; + private System.Windows.Forms.ToolStripMenuItem presetsToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem addPresetToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem deletePresetToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2; + protected internal System.Windows.Forms.CheckedListBox checkedListBoxGames; + private System.Windows.Forms.ToolStripMenuItem searchToolStripMenuItem; + private System.Windows.Forms.TextBox textBoxGameGenie; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.ToolStripMenuItem epilepsyProtectionToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem cloverconHackToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem resetUsingCombinationOfButtonsToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem selectButtonCombinationToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem consoleTypeToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem nESMiniToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem famicomMiniToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem enableAutofireToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem globalCommandLineArgumentsexpertsOnluToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem upABStartOnSecondControllerToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem downloadCoversForAllGamesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem pagesfoldersTypeToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem pagesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem disablePagefoldersToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem foldersToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem automaticOriginalToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem foldersSplitByFirstLetterToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem customToolStripMenuItem; + private System.Windows.Forms.Button buttonShowGameGenieDatabase; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3; + private System.Windows.Forms.ToolStripMenuItem pagesOriginalToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem foldersOriginalToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem foldersSplitByFirstLetterOriginalToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem maximumGamesPerFolderToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max20toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max25toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max30toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max35toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max40toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max45toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max50toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max60toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max70toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max80toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max90toolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem max100toolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem4; + private System.Windows.Forms.ToolStripMenuItem automaticToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem useExtendedFontToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem modulesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem installModulesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem uninstallModulesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem synchronizeToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem useXYOnClassicControllerAsAutofireABToolStripMenuItem; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabelSize; + private System.Windows.Forms.ToolStripProgressBar toolStripProgressBar; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusConnectionIcon; + private System.Windows.Forms.Timer timerConnectionCheck; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem5; + private System.Windows.Forms.ToolStripMenuItem saveSettingsToNESMiniNowToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem compressGamesIfPossibleToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem toolsToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveStateManagerToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem FTPToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem shellToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem6; + private System.Windows.Forms.ToolStripMenuItem openFTPInExplorerToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem7; + private System.Windows.Forms.ToolStripMenuItem openTelnetToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem languageToolStripMenuItem; + private System.Windows.Forms.ToolStripSeparator toolStripMenuItem8; + private System.Windows.Forms.ToolStripMenuItem takeScreenshotToolStripMenuItem; + } +} + diff --git a/MainForm.cs b/MainForm.cs index 33dfcbb4..13b604e1 100644 --- a/MainForm.cs +++ b/MainForm.cs @@ -1,1534 +1,1373 @@ -using com.clusterrr.clovershell;
-using com.clusterrr.Famicom;
-using com.clusterrr.hakchi_gui.Properties;
-using SevenZip;
-using System;
-using System.Collections.Generic;
-using System.Deployment.Application;
-using System.Diagnostics;
-using System.Drawing;
-using System.Drawing.Imaging;
-using System.Globalization;
-using System.IO;
-using System.Linq;
-using System.Reflection;
-using System.Resources;
-using System.Text.RegularExpressions;
-using System.Threading;
-using System.Windows.Forms;
-
-namespace com.clusterrr.hakchi_gui
-{
- public partial class MainForm : Form
- {
- public const long DefaultMaxGamesSize = 300;
- public static IEnumerable<string> InternalMods;
- public static ClovershellConnection Clovershell;
- //readonly string UBootDump;
- public static string KernelDump;
- mooftpserv.Server ftpServer;
-
- static NesDefaultGame[] defaultNesGames = new NesDefaultGame[] {
- new NesDefaultGame { Code = "CLV-P-NAAAE", Name = "Super Mario Bros.", Size = 571031 },
- new NesDefaultGame { Code = "CLV-P-NAACE", Name = "Super Mario Bros. 3", Size = 1163285 },
- new NesDefaultGame { Code = "CLV-P-NAADE", Name = "Super Mario Bros. 2",Size = 1510337 },
- new NesDefaultGame { Code = "CLV-P-NAAEE", Name = "Donkey Kong", Size = 556016 },
- new NesDefaultGame { Code = "CLV-P-NAAFE", Name = "Donkey Kong Jr." , Size = 558176 },
- new NesDefaultGame { Code = "CLV-P-NAAHE", Name = "Excitebike", Size = 573231 },
- new NesDefaultGame { Code = "CLV-P-NAANE", Name = "The Legend of Zelda", Size = 663910 },
- new NesDefaultGame { Code = "CLV-P-NAAPE", Name = "Kirby's Adventure", Size = 1321661 },
- new NesDefaultGame { Code = "CLV-P-NAAQE", Name = "Metroid", Size = 662601 },
- new NesDefaultGame { Code = "CLV-P-NAARE", Name = "Balloon Fight", Size = 556131 },
- new NesDefaultGame { Code = "CLV-P-NAASE", Name = "Zelda II - The Adventure of Link", Size = 1024158 },
- new NesDefaultGame { Code = "CLV-P-NAATE", Name = "Punch-Out!! Featuring Mr. Dream", Size = 1038128 },
- new NesDefaultGame { Code = "CLV-P-NAAUE", Name = "Ice Climber", Size = 553436 },
- new NesDefaultGame { Code = "CLV-P-NAAVE", Name = "Kid Icarus", Size = 670710 },
- new NesDefaultGame { Code = "CLV-P-NAAWE", Name = "Mario Bros.", Size = 1018973 },
- new NesDefaultGame { Code = "CLV-P-NAAXE", Name = "Dr. MARIO", Size = 1089427 },
- new NesDefaultGame { Code = "CLV-P-NAAZE", Name = "StarTropics", Size = 1299361 },
- new NesDefaultGame { Code = "CLV-P-NABBE", Name = "MEGA MAN™ 2", Size = 569868 },
- new NesDefaultGame { Code = "CLV-P-NABCE", Name = "GHOSTS'N GOBLINS™", Size = 440971 },
- new NesDefaultGame { Code = "CLV-P-NABJE", Name = "FINAL FANTASY®", Size = 552556 },
- new NesDefaultGame { Code = "CLV-P-NABKE", Name = "BUBBLE BOBBLE" , Size = 474232 },
- new NesDefaultGame { Code = "CLV-P-NABME", Name = "PAC-MAN", Size = 325888 },
- new NesDefaultGame { Code = "CLV-P-NABNE", Name = "Galaga", Size = 347079 },
- new NesDefaultGame { Code = "CLV-P-NABQE", Name = "Castlevania", Size = 434240 },
- new NesDefaultGame { Code = "CLV-P-NABRE", Name = "GRADIUS", Size = 370790 },
- new NesDefaultGame { Code = "CLV-P-NABVE", Name = "Super C", Size = 565974 },
- new NesDefaultGame { Code = "CLV-P-NABXE", Name = "Castlevania II Simon's Quest", Size = 569759 },
- new NesDefaultGame { Code = "CLV-P-NACBE", Name = "NINJA GAIDEN", Size =573536 },
- new NesDefaultGame { Code = "CLV-P-NACDE", Name = "TECMO BOWL", Size =568276 },
- new NesDefaultGame { Code = "CLV-P-NACHE", Name = "DOUBLE DRAGON II: The Revenge", Size = 578900 }
- };
- NesDefaultGame[] defaultFamicomGames = new NesDefaultGame[] {
- new NesDefaultGame { Code = "CLV-P-HAAAJ", Name = "スーパーマリオブラザーズ", Size = 596775 },
- new NesDefaultGame { Code = "CLV-P-HAACJ", Name = "スーパーマリオブラザーズ3", Size = 1411534 },
- new NesDefaultGame { Code = "CLV-P-HAADJ", Name = "スーパーマリオUSA", Size = 1501542 },
- new NesDefaultGame { Code = "CLV-P-HAAEJ", Name = "ドンキーコング" , Size = 568006 },
- new NesDefaultGame { Code = "CLV-P-HAAHJ", Name = "エキサイトバイク" , Size = 597513 },
- new NesDefaultGame { Code = "CLV-P-HAAMJ", Name = "マリオオープンゴルフ" , Size = 798179 },
- new NesDefaultGame { Code = "CLV-P-HAANJ", Name = "ゼルダの伝説", Size = 677971 },
- new NesDefaultGame { Code = "CLV-P-HAAPJ", Name = "星のカービィ 夢の泉の物語" , Size = 1331436 },
- new NesDefaultGame { Code = "CLV-P-HAAQJ", Name = "メトロイド" , Size = 666895 },
- new NesDefaultGame { Code = "CLV-P-HAARJ", Name = "バルーンファイト" , Size = 569750 },
- new NesDefaultGame { Code = "CLV-P-HAASJ", Name = "リンクの冒険" , Size = 666452 },
- new NesDefaultGame { Code = "CLV-P-HAAUJ", Name = "アイスクライマー" , Size = 812372 },
- new NesDefaultGame { Code = "CLV-P-HAAWJ", Name = "マリオブラザーズ" , Size = 1038275 },
- new NesDefaultGame { Code = "CLV-P-HAAXJ", Name = "ドクターマリオ" , Size = 1083234 },
- new NesDefaultGame { Code = "CLV-P-HABBJ", Name = "ロックマン®2 Dr.ワイリーの謎" , Size = 592425 },
- new NesDefaultGame { Code = "CLV-P-HABCJ", Name = "魔界村®", Size = 456166 },
- new NesDefaultGame { Code = "CLV-P-HABLJ", Name = "ファイナルファンタジー®III" , Size = 830898 },
- new NesDefaultGame { Code = "CLV-P-HABMJ", Name = "パックマン" , Size = 341593 },
- new NesDefaultGame { Code = "CLV-P-HABNJ", Name = "ギャラガ", Size = 345552 },
- new NesDefaultGame { Code = "CLV-P-HABQJ", Name = "悪魔城ドラキュラ" , Size = 428522 },
- new NesDefaultGame { Code = "CLV-P-HABRJ", Name = "グラディウス", Size = 393055 },
- new NesDefaultGame { Code = "CLV-P-HABVJ", Name = "スーパー魂斗羅" , Size = 569537 },
- new NesDefaultGame { Code = "CLV-P-HACAJ", Name = "イー・アル・カンフー", Size = 336353 },
- new NesDefaultGame { Code = "CLV-P-HACBJ", Name = "忍者龍剣伝" , Size = 578623 },
- new NesDefaultGame { Code = "CLV-P-HACCJ", Name = "ソロモンの鍵" , Size = 387084 },
- new NesDefaultGame { Code = "CLV-P-HACEJ", Name = "つっぱり大相撲", Size = 392595 },
- new NesDefaultGame { Code = "CLV-P-HACHJ", Name = "ダブルドラゴンⅡ The Revenge", Size = 579757 },
- new NesDefaultGame { Code = "CLV-P-HACJJ", Name = "ダウンタウン熱血物語" , Size = 588367 },
- new NesDefaultGame { Code = "CLV-P-HACLJ", Name = "ダウンタウン熱血行進曲 それゆけ大運動会", Size = 587083 },
- new NesDefaultGame { Code = "CLV-P-HACPJ", Name = "アトランチスの謎", Size = 376213 }
- };
-
- public MainForm()
- {
- InitializeComponent();
- FormInitialize();
- Clovershell = new ClovershellConnection() { AutoReconnect = true, Enabled = true };
- Clovershell.OnConnected += Clovershell_OnConnected;
-
- ftpServer = new mooftpserv.Server();
- ftpServer.AuthHandler = new mooftpserv.NesMiniAuthHandler();
- ftpServer.FileSystemHandler = new mooftpserv.NesMiniFileSystemHandler(Clovershell);
- ftpServer.LogHandler = new mooftpserv.DebugLogHandler();
- ftpServer.LocalPort = 1021;
-
- if (ConfigIni.FtpServer)
- FTPToolStripMenuItem_Click(null, null);
- if (ConfigIni.TelnetServer)
- Clovershell.ShellEnabled = shellToolStripMenuItem.Checked = true;
- }
-
- void FormInitialize()
- {
- try
- {
- KernelDump = Path.Combine(Path.Combine(Program.BaseDirectoryExternal, "dump"), "kernel.img");
- InternalMods = from m in Directory.GetFiles(Path.Combine(Program.BaseDirectoryInternal, "mods/hmods")) select Path.GetFileNameWithoutExtension(m);
- LoadGames();
- LoadHidden();
- LoadPresets();
- LoadLanguages();
- var version = Assembly.GetExecutingAssembly().GetName().Version;
- Text = string.Format("hakchi2 - v{0}.{1:D2}{2}", version.Major, version.Build, (version.Revision < 10) ?
- ("rc" + version.Revision.ToString()) : (version.Revision > 20 ? ((char)('a' + (version.Revision - 20) / 10)).ToString() : ""))
-#if DEBUG
- + " (debug version"
-#if VERY_DEBUG
- + ", very verbose mode"
-#endif
- + ")"
-#endif
-;
- // Some settnigs
- useExtendedFontToolStripMenuItem.Checked = ConfigIni.UseFont;
- epilepsyProtectionToolStripMenuItem.Checked = ConfigIni.AntiArmetLevel > 0;
- selectButtonCombinationToolStripMenuItem.Enabled = resetUsingCombinationOfButtonsToolStripMenuItem.Checked = ConfigIni.ResetHack;
- enableAutofireToolStripMenuItem.Checked = ConfigIni.AutofireHack;
- useXYOnClassicControllerAsAutofireABToolStripMenuItem.Checked = ConfigIni.AutofireXYHack;
- nESMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 0;
- famicomMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 1;
- upABStartOnSecondControllerToolStripMenuItem.Checked = ConfigIni.FcStart;
- compressGamesIfPossibleToolStripMenuItem.Checked = ConfigIni.Compress;
-
- disablePagefoldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 0;
- automaticToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 2;
- automaticOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 3;
- pagesToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 4;
- pagesOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 5;
- foldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 6;
- foldersOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 7;
- foldersSplitByFirstLetterToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 8;
- foldersSplitByFirstLetterOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 9;
- customToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 99;
-
- max20toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 20;
- max25toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 25;
- max30toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 30;
- max35toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 35;
- max40toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 40;
- max45toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 45;
- max50toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 50;
- max60toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 60;
- max70toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 70;
- max80toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 80;
- max90toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 90;
- max100toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 100;
-
- // Little tweak for easy translation
- var tbl = textBoxName.Left;
- textBoxName.Left = labelName.Left + labelName.Width;
- textBoxName.Width -= textBoxName.Left - tbl;
- maskedTextBoxReleaseDate.Left = label1.Left + label1.Width + 3;
- tbl = textBoxPublisher.Left;
- textBoxPublisher.Left = label2.Left + label2.Width;
- textBoxPublisher.Width -= textBoxPublisher.Left - tbl;
-
- // Tweeks for message boxes
- MessageBoxManager.Yes = MessageBoxManager.Retry = Resources.Yes;
- MessageBoxManager.No = MessageBoxManager.Ignore = Resources.No;
- MessageBoxManager.Cancel = Resources.NoForAll;
- MessageBoxManager.Abort = Resources.YesForAll;
-
- var extensions = new List<string>() { "*.new", "*.unf", "*.unif", ".*fds", "*.desktop", "*.zip", "*.7z", "*.rar" };
- foreach (var app in AppTypeCollection.ApplicationTypes)
- foreach (var ext in app.Extensions)
- if (!extensions.Contains("*" + ext))
- extensions.Add("*" + ext);
- openFileDialogNes.Filter = Resources.GamesAndApps + "|" + string.Join(";", extensions.ToArray()) + "|" + Resources.AllFiles + "|*.*";
-
- // Loading games database in background
- new Thread(NesGame.LoadCache).Start();
- // Recalculate games in background
- new Thread(RecalculateSelectedGamesThread).Start();
-
- openFTPInExplorerToolStripMenuItem.Enabled = FTPToolStripMenuItem.Checked = ConfigIni.FtpServer;
- openTelnetToolStripMenuItem.Enabled = shellToolStripMenuItem.Checked = ConfigIni.TelnetServer;
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, "Critical error: " + ex.Message + ex.StackTrace, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- void Clovershell_OnConnected()
- {
- try
- {
- ConfigIni.CustomFlashed = true; // Just in case of new installation
- // Requesting autoshutdown state
- var autoshutdown = Clovershell.ExecuteSimple("cat /var/lib/clover/profiles/0/shutdown.txt");
- // Disable automatic shutdown
- if (autoshutdown != "0")
- Clovershell.ExecuteSimple("echo -n 0 > /var/lib/clover/profiles/0/shutdown.txt");
- // Setting actual time for file transfer operations
- Clovershell.ExecuteSimple(string.Format("date -s \"{0:yyyy-MM-dd HH:mm:ss}\"", DateTime.UtcNow));
- // Restoring automatic shutdown
- if (autoshutdown != "0")
- Clovershell.ExecuteSimple(string.Format("echo -n {0} > /var/lib/clover/profiles/0/shutdown.txt", autoshutdown));
- var customFirmware = Clovershell.ExecuteSimple("[ -d /var/lib/hakchi/firmware/ ] && [ -f /var/lib/hakchi/firmware/*.hsqs ] && echo YES || echo NO");
- if (customFirmware == "NO")
- {
- var region = Clovershell.ExecuteSimple("cat /etc/clover/REGION", 500, true);
- Debug.WriteLine(string.Format("Detected region: {0}", region));
- if (region == "JPN")
- Invoke(new Action(delegate
- {
- famicomMiniToolStripMenuItem.PerformClick();
- }));
- if (region == "EUR_USA")
- Invoke(new Action(delegate
- {
- nESMiniToolStripMenuItem.PerformClick();
- }));
- }
- WorkerForm.GetMemoryStats();
- new Thread(RecalculateSelectedGamesThread).Start();
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- }
- }
-
- public void LoadGames()
- {
- Debug.WriteLine("Loading games");
- var selected = ConfigIni.SelectedGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
- Directory.CreateDirectory(NesMiniApplication.GamesDirectory);
- var gameDirs = Directory.GetDirectories(NesMiniApplication.GamesDirectory);
- var games = new List<NesMiniApplication>();
- foreach (var gameDir in gameDirs)
- {
- try
- {
- // Removing empty directories without errors
- try
- {
- var game = NesMiniApplication.FromDirectory(gameDir);
- games.Add(game);
- }
- catch (FileNotFoundException ex) // Remove bad directories if any
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- Directory.Delete(gameDir, true);
- }
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- continue;
- }
- }
-
- var gamesSorted = games.OrderBy(o => o.Name);
- checkedListBoxGames.Items.Clear();
- checkedListBoxGames.Items.Add(Resources.Default30games, selected.Contains("default"));
- foreach (var game in gamesSorted)
- {
- checkedListBoxGames.Items.Add(game, selected.Contains(game.Code));
- }
- RecalculateSelectedGames();
- ShowSelected();
- }
-
- public void ShowSelected()
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null)
- {
- groupBoxDefaultGames.Visible = false;
- groupBoxOptions.Visible = true;
- groupBoxOptions.Enabled = false;
- labelID.Text = "ID: ";
- textBoxName.Text = "";
- radioButtonOne.Checked = true;
- radioButtonTwo.Checked = false;
- radioButtonTwoSim.Checked = false;
- maskedTextBoxReleaseDate.Text = "";
- textBoxPublisher.Text = "";
- textBoxArguments.Text = "";
- pictureBoxArt.Image = null;
- }
- else if (!(selected is NesMiniApplication))
- {
- groupBoxDefaultGames.Visible = true;
- groupBoxOptions.Visible = false;
- groupBoxDefaultGames.Enabled = checkedListBoxGames.CheckedIndices.Contains(0);
- }
- else
- {
- var app = selected as NesMiniApplication;
- groupBoxDefaultGames.Visible = false;
- groupBoxOptions.Visible = true;
- labelID.Text = "ID: " + app.Code;
- textBoxName.Text = app.Name;
- if (app.Simultaneous && app.Players == 2)
- radioButtonTwoSim.Checked = true;
- else if (app.Players == 2)
- radioButtonTwo.Checked = true;
- else
- radioButtonOne.Checked = true;
- maskedTextBoxReleaseDate.Text = app.ReleaseDate;
- textBoxPublisher.Text = app.Publisher;
- if (app is NesGame)
- textBoxArguments.Text = (app as NesGame).Args;
- else if (app is FdsGame)
- textBoxArguments.Text = (app as FdsGame).Args;
- else
- textBoxArguments.Text = app.Command;
- if (File.Exists(app.IconPath))
- pictureBoxArt.Image = NesMiniApplication.LoadBitmap(app.IconPath);
- else
- pictureBoxArt.Image = null;
- buttonShowGameGenieDatabase.Enabled = textBoxGameGenie.Enabled = app is NesGame;
- textBoxGameGenie.Text = (app is NesGame) ? (app as NesGame).GameGenie : "";
- groupBoxOptions.Enabled = true;
- }
- }
-
- void LoadHidden()
- {
- checkedListBoxDefaultGames.Items.Clear();
- var hidden = ConfigIni.HiddenGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
- foreach (var game in new List<NesDefaultGame>(ConfigIni.ConsoleType == 0 ? defaultNesGames : defaultFamicomGames).OrderBy(o => o.Name))
- checkedListBoxDefaultGames.Items.Add(game, !hidden.Contains(game.Code));
- }
-
- void LoadPresets()
- {
- while (presetsToolStripMenuItem.DropDownItems.Count > 3)
- presetsToolStripMenuItem.DropDownItems.RemoveAt(0);
- deletePresetToolStripMenuItem.Enabled = false;
- deletePresetToolStripMenuItem.DropDownItems.Clear();
- int i = 0;
- foreach (var preset in ConfigIni.Presets.Keys.OrderBy(o => o))
- {
- presetsToolStripMenuItem.DropDownItems.Insert(i, new ToolStripMenuItem(preset, null,
- delegate(object sender, EventArgs e)
- {
- var cols = ConfigIni.Presets[preset].Split('|');
- ConfigIni.SelectedGames = cols[0];
- ConfigIni.HiddenGames = cols[1];
- var selected = ConfigIni.SelectedGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
- var hide = ConfigIni.HiddenGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
- checkedListBoxGames.SetItemChecked(0, selected.Contains("default"));
- for (int j = 1; j < checkedListBoxGames.Items.Count; j++)
- checkedListBoxGames.SetItemChecked(j,
- selected.Contains((checkedListBoxGames.Items[j] as NesMiniApplication).Code));
- for (int j = 0; j < checkedListBoxDefaultGames.Items.Count; j++)
- checkedListBoxDefaultGames.SetItemChecked(j,
- !hide.Contains(((NesDefaultGame)checkedListBoxDefaultGames.Items[j]).Code));
- }));
- deletePresetToolStripMenuItem.DropDownItems.Insert(i, new ToolStripMenuItem(preset, null,
- delegate(object sender, EventArgs e)
- {
- if (MessageBox.Show(this, string.Format(Resources.DeletePreset, preset), Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == DialogResult.Yes)
- {
- ConfigIni.Presets.Remove(preset);
- LoadPresets();
- }
- }));
- deletePresetToolStripMenuItem.Enabled = true;
- i++;
- }
- }
-
- void LoadLanguages()
- {
- var languages = new List<string>(Directory.GetDirectories(Path.Combine(Program.BaseDirectoryInternal, "languages")));
- ResourceManager rm = Resources.ResourceManager;
- languages.Add("en-US"); // default language
- var langCodes = new Dictionary<string, string>();
- foreach (var language in languages)
- {
- var code = Path.GetFileName(language);
- langCodes[new CultureInfo(code).DisplayName] = code;
- }
- ToolStripMenuItem english = null;
- bool found = false;
- foreach (var language in langCodes.Keys.OrderBy<string, string>(o => o))
- {
- var item = new ToolStripMenuItem();
- var displayName = Regex.Replace(language, @" \(.+\)", "");
- if (langCodes.Keys.Count(o => Regex.Replace(o, @" \(.+\)", "") == displayName) == 1)
- item.Text = displayName;
- else
- item.Text = language;
- var country = langCodes[language];
- if (country.Length > 2) country = country.Substring(country.Length - 2).ToLower();
- item.Image = (Image)rm.GetObject(country);
- item.ImageScaling = ToolStripItemImageScaling.None;
- item.Click += delegate(object sender, EventArgs e)
- {
- ConfigIni.Language = langCodes[language];
- SaveConfig();
- Thread.CurrentThread.CurrentUICulture = new CultureInfo(langCodes[language]);
- this.Controls.Clear();
- this.InitializeComponent();
- FormInitialize();
- this.Invalidate(true);
- };
- item.Checked = Thread.CurrentThread.CurrentUICulture.Name == langCodes[language];
- found |= item.Checked;
- if (langCodes[language] == "en-US")
- english = item;
- languageToolStripMenuItem.DropDownItems.Add(item);
- }
- if (!found)
- english.Checked = true;
- }
-
- void AddPreset(object sender, EventArgs e)
- {
- var form = new StringInputForm();
- form.Text = Resources.NewPreset;
- form.labelComments.Text = Resources.InputPreset;
- if (form.ShowDialog() == DialogResult.OK)
- {
- var name = form.textBox.Text.Replace("=", " ");
- if (!string.IsNullOrEmpty(name))
- {
- SaveSelectedGames();
- ConfigIni.Presets[name] = ConfigIni.SelectedGames + "|" + ConfigIni.HiddenGames;
- LoadPresets();
- }
- }
- }
-
- private void checkedListBoxGames_SelectedIndexChanged(object sender, EventArgs e)
- {
- ShowSelected();
- }
-
- void SetImageForSelectedGame(string fileName)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- game.Image = NesMiniApplication.LoadBitmap(fileName);
- ShowSelected();
- timerCalculateGames.Enabled = true;
- }
-
- private void buttonBrowseImage_Click(object sender, EventArgs e)
- {
- openFileDialogImage.Filter = Resources.Images + " (*.bmp;*.png;*.jpg;*.jpeg;*.gif)|*.bmp;*.png;*.jpg;*.jpeg;*.gif|" + Resources.AllFiles + "|*.*";
- if (openFileDialogImage.ShowDialog() == System.Windows.Forms.DialogResult.OK)
- {
- SetImageForSelectedGame(openFileDialogImage.FileName);
- }
- }
-
- private void buttonGoogle_Click(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- var googler = new ImageGooglerForm(game);
- if (googler.ShowDialog() == System.Windows.Forms.DialogResult.OK)
- {
- game.Image = googler.Result;
- ShowSelected();
- timerCalculateGames.Enabled = true;
- }
- }
-
- private void textBoxName_TextChanged(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- game.Name = textBoxName.Text;
- }
-
- private void radioButtonOne_CheckedChanged(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- game.Players = (byte)(radioButtonOne.Checked ? 1 : 2);
- game.Simultaneous = radioButtonTwoSim.Checked;
- }
-
- private void textBoxPublisher_TextChanged(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- game.Publisher = textBoxPublisher.Text.ToUpper();
- }
-
- private void textBoxArguments_TextChanged(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- if (game is NesGame)
- (game as NesGame).Args = textBoxArguments.Text;
- else if (game is FdsGame)
- (game as FdsGame).Args = textBoxArguments.Text;
- else
- game.Command = textBoxArguments.Text;
- }
-
- private void maskedTextBoxReleaseDate_TextChanged(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesMiniApplication)) return;
- var game = (selected as NesMiniApplication);
- game.ReleaseDate = maskedTextBoxReleaseDate.Text;
- }
-
- private void textBoxGameGenie_TextChanged(object sender, EventArgs e)
- {
- var selected = checkedListBoxGames.SelectedItem;
- if (selected == null || !(selected is NesGame)) return;
- var game = (selected as NesGame);
- game.GameGenie = textBoxGameGenie.Text;
- }
-
- private void SaveSelectedGames()
- {
- var selected = new List<string>();
- foreach (var game in checkedListBoxGames.CheckedItems)
- {
- if (game is NesMiniApplication)
- selected.Add((game as NesMiniApplication).Code);
- else
- selected.Add("default");
- }
- ConfigIni.SelectedGames = string.Join(";", selected.ToArray());
- selected.Clear();
- foreach (NesDefaultGame game in checkedListBoxDefaultGames.Items)
- selected.Add(game.Code);
- foreach (NesDefaultGame game in checkedListBoxDefaultGames.CheckedItems)
- selected.Remove(game.Code);
- ConfigIni.HiddenGames = string.Join(";", selected.ToArray());
- }
-
- private void SaveConfig()
- {
- SaveSelectedGames();
- ConfigIni.Save();
- for (int i = 0; i < checkedListBoxGames.Items.Count; i++)
- {
- var game = checkedListBoxGames.Items[i];
- try
- {
- if (game is NesMiniApplication)
- {
- // Maybe type was changed? Need to reload games
- if ((game as NesMiniApplication).Save())
- checkedListBoxGames.Items[i] = NesMiniApplication.FromDirectory((game as NesMiniApplication).GamePath);
- }
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
- }
-
- private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
- {
- Debug.WriteLine("Closing main form");
- SaveConfig();
- ftpServer.Stop();
- Clovershell.Dispose();
- }
- private void MainForm_FormClosed(object sender, FormClosedEventArgs e)
- {
- Process.GetCurrentProcess().Kill(); // Suicide! Just easy and dirty way to kill all threads.
- }
-
-
- struct CountResult
- {
- public int Count;
- public long Size;
- }
- void RecalculateSelectedGamesThread()
- {
- try
- {
- var stats = RecalculateSelectedGames();
- showStats(stats);
- }
- catch
- {
- timerCalculateGames.Enabled = false;
- timerCalculateGames.Enabled = true;
- }
- }
- CountResult RecalculateSelectedGames()
- {
- CountResult stats;
- stats.Count = 0;
- stats.Size = 0;
- foreach (var game in checkedListBoxGames.CheckedItems)
- {
- if (game is NesMiniApplication)
- {
- stats.Count++;
- stats.Size += (game as NesMiniApplication).Size();
- }
- else
- {
- stats.Count += checkedListBoxDefaultGames.CheckedItems.Count;
- foreach (NesDefaultGame originalGame in checkedListBoxDefaultGames.CheckedItems)
- stats.Size += originalGame.Size;
- }
- }
- return stats;
- }
- void showStats(CountResult stats)
- {
- try
- {
- if (InvokeRequired)
- {
- Invoke(new Action<CountResult>(showStats), new object[] { stats });
- return;
- }
- var maxGamesSize = DefaultMaxGamesSize * 1024 * 1024;
- if (WorkerForm.NandCTotal > 0)
- maxGamesSize = (WorkerForm.NandCFree + WorkerForm.WritedGamesSize) - WorkerForm.ReservedMemory * 1024 * 1024;
- toolStripStatusLabelSelected.Text = stats.Count + " " + Resources.GamesSelected;
- toolStripStatusLabelSize.Text = string.Format("{0:F1}MB / {1:F1}MB", stats.Size / 1024.0 / 1024.0, maxGamesSize / 1024.0 / 1024.0);
- toolStripProgressBar.Maximum = (int)maxGamesSize;
- toolStripProgressBar.Value = Math.Min((int)stats.Size, toolStripProgressBar.Maximum);
- toolStripStatusLabelSize.ForeColor =
- (toolStripProgressBar.Value < toolStripProgressBar.Maximum) ?
- SystemColors.ControlText :
- Color.Red;
- }
- catch { }
- }
-
- private void buttonAddGames_Click(object sender, EventArgs e)
- {
- if (openFileDialogNes.ShowDialog() == DialogResult.OK)
- {
- AddGames(openFileDialogNes.FileNames);
- }
- }
-
- private void checkedListBoxGames_MouseDown(object sender, MouseEventArgs e)
- {
- if (e.Button == System.Windows.Forms.MouseButtons.Right)
- {
- var i = checkedListBoxGames.IndexFromPoint(e.X, e.Y);
- selectAllToolStripMenuItem.Tag = unselectAllToolStripMenuItem.Tag = 0;
- deleteGameToolStripMenuItem.Tag = i;
- deleteGameToolStripMenuItem.Enabled = i > 0;
- contextMenuStrip.Show(sender as Control, e.X, e.Y);
- }
- }
-
- private void checkedListBoxDefaultGames_MouseDown(object sender, MouseEventArgs e)
- {
- if (e.Button == System.Windows.Forms.MouseButtons.Right)
- {
- var i = checkedListBoxGames.IndexFromPoint(e.X, e.Y);
- selectAllToolStripMenuItem.Tag = unselectAllToolStripMenuItem.Tag = 1;
- deleteGameToolStripMenuItem.Enabled = false;
- contextMenuStrip.Show(sender as Control, e.X, e.Y);
- }
- }
-
- DialogResult RequireKernelDump()
- {
- if (File.Exists(KernelDump)) return DialogResult.OK; // OK - already dumped
- // Asking user to dump kernel
- if (MessageBox.Show(Resources.NoKernelWarning, Resources.NoKernel, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- {
- if (DoKernelDump())
- return DialogResult.Yes; // Succesfully dumped
- else
- return DialogResult.No; // Not dumped for some other reason
- }
- else return DialogResult.No; // Kernel dump cancelled by user
- }
-
- DialogResult RequirePatchedKernel()
- {
- if (ConfigIni.CustomFlashed) return DialogResult.OK; // OK - already flashed
- var kernelDump = RequireKernelDump(); // We need kernel dump first
- if (kernelDump == System.Windows.Forms.DialogResult.No)
- return DialogResult.No; // Abort if user has not dumped it
- if (MessageBox.Show((kernelDump == DialogResult.Yes ? (Resources.KernelDumped + "\r\n") : "") +
- Resources.CustomWarning, Resources.CustomKernel, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- {
- if (FlashCustomKernel())
- return DialogResult.Yes; // Succesfully flashed
- else
- return DialogResult.No; // Not flashed for some other reason
- }
- else return DialogResult.No;
- }
-
- private void buttonStart_Click(object sender, EventArgs e)
- {
- SaveConfig();
-
- var stats = RecalculateSelectedGames();
- if (stats.Count == 0)
- {
- MessageBox.Show(Resources.SelectAtLeast, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- return;
- }
- var kernel = RequirePatchedKernel();
- if (kernel == DialogResult.No) return;
- if (kernel == DialogResult.Yes) // Message for new user
- MessageBox.Show(Resources.DoneYouCanUpload + "\r\n" + Resources.PressOkToContinue, Resources.Congratulations, MessageBoxButtons.OK, MessageBoxIcon.Information);
- if (UploadGames())
- {
- MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
-
- bool DoKernelDump()
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.DumpingKernel;
- workerForm.Task = WorkerForm.Tasks.DumpKernel;
- //workerForm.UBootDump = UBootDump;
- workerForm.KernelDump = KernelDump;
- workerForm.Start();
- return workerForm.DialogResult == DialogResult.OK;
- }
-
- bool FlashCustomKernel()
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.FlasingCustom;
- workerForm.Task = WorkerForm.Tasks.FlashKernel;
- workerForm.KernelDump = KernelDump;
- workerForm.Mod = "mod_hakchi";
- workerForm.hmodsInstall = new List<string>(InternalMods);
- workerForm.Config = null;
- workerForm.Games = null;
- workerForm.Start();
- var result = workerForm.DialogResult == DialogResult.OK;
- if (result)
- {
- ConfigIni.CustomFlashed = true;
- ConfigIni.Save();
- }
- return result;
- }
-
- bool UploadGames()
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.UploadingGames;
- workerForm.Task = WorkerForm.Tasks.UploadGames;
- workerForm.KernelDump = KernelDump;
- workerForm.Mod = "mod_hakchi";
- workerForm.Config = ConfigIni.GetConfigDictionary();
- workerForm.Games = new NesMenuCollection();
- bool needOriginal = false;
- foreach (var game in checkedListBoxGames.CheckedItems)
- {
- if (game is NesMiniApplication)
- workerForm.Games.Add(game as NesMiniApplication);
- else
- needOriginal = true;
- }
- for (int i = 0; i < checkedListBoxDefaultGames.Items.Count; i++)
- {
- if (needOriginal && checkedListBoxDefaultGames.CheckedIndices.Contains(i))
- workerForm.Games.Add((NesDefaultGame)checkedListBoxDefaultGames.Items[i]);
- }
-
- workerForm.FoldersMode = ConfigIni.FoldersMode;
- workerForm.MaxGamesPerFolder = ConfigIni.MaxGamesPerFolder;
- workerForm.MainForm = this;
- workerForm.Start();
- return workerForm.DialogResult == DialogResult.OK;
- }
-
- void AddGames(IEnumerable<string> files)
- {
- SaveConfig();
- ICollection<NesMiniApplication> addedApps;
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.LoadingGames;
- workerForm.Task = WorkerForm.Tasks.AddGames;
- workerForm.GamesToAdd = files;
- workerForm.Start();
- addedApps = workerForm.addedApplications;
-
- if (addedApps != null)
- {
- // Add games, only new ones
- var newApps = addedApps.Distinct(new NesMiniApplication.NesMiniAppEqualityComparer());
- var newCodes = from app in newApps select app.Code;
- var oldAppsReplaced = from app in checkedListBoxGames.Items.Cast<object>().ToArray()
- where (app is NesMiniApplication) && newCodes.Contains((app as NesMiniApplication).Code)
- select app;
- foreach (var replaced in oldAppsReplaced)
- checkedListBoxGames.Items.Remove(replaced);
- checkedListBoxGames.Items.AddRange(newApps.ToArray());
- var first = checkedListBoxGames.Items[0];
- bool originalChecked = (checkedListBoxGames.CheckedItems.Contains(first));
- checkedListBoxGames.Items.Remove(first);
- checkedListBoxGames.Sorted = true;
- checkedListBoxGames.Sorted = false;
- checkedListBoxGames.Items.Insert(0, first);
- checkedListBoxGames.SetItemChecked(0, originalChecked);
- }
- else
- {
- // Reload all games (maybe process was terminated?)
- LoadGames();
- }
- if (addedApps != null) // if added only one game select it
- {
- bool first = true;
- foreach (var addedApp in addedApps)
- {
- for (int i = 0; i < checkedListBoxGames.Items.Count; i++)
- if ((checkedListBoxGames.Items[i] is NesMiniApplication) &&
- (checkedListBoxGames.Items[i] as NesMiniApplication).Code == addedApp.Code)
- {
- if (first)
- checkedListBoxGames.SelectedIndex = i;
- first = false;
- checkedListBoxGames.SetItemChecked(i, true);
- break;
- }
- }
- }
- // Schedule recalculation
- timerCalculateGames.Enabled = false;
- timerCalculateGames.Enabled = true;
- }
-
- bool FlashOriginalKernel(bool boot = true)
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.FlasingOriginal;
- workerForm.Task = WorkerForm.Tasks.FlashKernel;
- workerForm.KernelDump = KernelDump;
- workerForm.Mod = null;
- workerForm.Start();
- var result = workerForm.DialogResult == DialogResult.OK;
- if (result)
- {
- ConfigIni.CustomFlashed = false;
- ConfigIni.Save();
- }
- return result;
- }
-
- bool Uninstall()
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.Uninstalling;
- workerForm.Task = WorkerForm.Tasks.Memboot;
- workerForm.KernelDump = KernelDump;
- workerForm.Mod = "mod_uninstall";
- workerForm.Start();
- return workerForm.DialogResult == DialogResult.OK;
- }
-
- bool InstallMods(string[] mods)
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.InstallingMods;
- workerForm.Task = WorkerForm.Tasks.Memboot;
- workerForm.KernelDump = KernelDump;
- workerForm.Mod = "mod_hakchi";
- workerForm.hmodsInstall = new List<string>(mods);
- workerForm.Start();
- return workerForm.DialogResult == DialogResult.OK;
- }
-
- bool UninstallMods(string[] mods)
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.UninstallingMods;
- workerForm.Task = WorkerForm.Tasks.Memboot;
- workerForm.KernelDump = KernelDump;
- workerForm.Mod = "mod_hakchi";
- workerForm.hmodsUninstall = new List<string>(mods);
- workerForm.Start();
- return workerForm.DialogResult == DialogResult.OK;
- }
-
- bool DownloadAllCovers()
- {
- var workerForm = new WorkerForm();
- workerForm.Text = Resources.DownloadAllCoversTitle;
- workerForm.Task = WorkerForm.Tasks.DownloadAllCovers;
- workerForm.Games = new NesMenuCollection();
- foreach (var game in checkedListBoxGames.Items)
- {
- if (game is NesMiniApplication)
- workerForm.Games.Add(game as NesMiniApplication);
- }
- return workerForm.Start() == DialogResult.OK;
- }
-
- private void dumpKernelToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (File.Exists(KernelDump))
- {
- MessageBox.Show(Resources.ReplaceKernelQ, Resources.Warning, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- if (MessageBox.Show(Resources.DumpKernelQ, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- {
- if (DoKernelDump()) MessageBox.Show(Resources.KernelDumped, Resources.Done, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
-
- private void flashCustomKernelToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (RequireKernelDump() == DialogResult.No) return;
- if (MessageBox.Show(Resources.CustomKernelQ, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- {
- if (FlashCustomKernel()) MessageBox.Show(Resources.DoneYouCanUpload, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
-
- private void flashOriginalKernelToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (!File.Exists(KernelDump))
- {
- MessageBox.Show(Resources.NoKernelYouNeed, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- return;
- }
- if (MessageBox.Show(Resources.OriginalKernelQ, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- {
- if (FlashOriginalKernel()) MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
-
- private void uninstallToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (!File.Exists(KernelDump))
- {
- MessageBox.Show(Resources.NoKernelYouNeed, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- return;
- }
- if (MessageBox.Show(Resources.UninstallQ1, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- {
- if (Uninstall())
- {
- if (ConfigIni.CustomFlashed && MessageBox.Show(Resources.UninstallQ2, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- == System.Windows.Forms.DialogResult.Yes)
- FlashOriginalKernel();
- MessageBox.Show(Resources.UninstallFactoryNote, Resources.Done, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- }
-
- private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
- {
- var about = new AboutBox();
- about.Text = aboutToolStripMenuItem.Text.Replace("&", "");
- about.ShowDialog();
- }
-
- private void gitHubPageWithActualReleasesToolStripMenuItem_Click(object sender, EventArgs e)
- {
- Process.Start("https://github.com/ClusterM/hakchi2/releases");
- }
-
- private void fAQToolStripMenuItem_Click(object sender, EventArgs e)
- {
- Process.Start("https://github.com/ClusterM/hakchi2/wiki/FAQ");
- }
-
- private void exitToolStripMenuItem_Click(object sender, EventArgs e)
- {
- Close();
- }
-
- private void useExtendedFontToolStripMenuItem_Click(object sender, EventArgs e)
- {
- ConfigIni.UseFont = useExtendedFontToolStripMenuItem.Checked;
- }
-
- private void ToolStripMenuItemArmet_Click(object sender, EventArgs e)
- {
- ConfigIni.AntiArmetLevel = epilepsyProtectionToolStripMenuItem.Checked ? (byte)2 : (byte)0;
- }
-
- private void cloverconHackToolStripMenuItem_Click(object sender, EventArgs e)
- {
- selectButtonCombinationToolStripMenuItem.Enabled =
- ConfigIni.ResetHack = resetUsingCombinationOfButtonsToolStripMenuItem.Checked;
- }
-
- private void upABStartOnSecondControllerToolStripMenuItem_Click(object sender, EventArgs e)
- {
- ConfigIni.FcStart = upABStartOnSecondControllerToolStripMenuItem.Checked;
- }
-
- private void selectButtonCombinationToolStripMenuItem_Click(object sender, EventArgs e)
- {
- var form = new SelectButtonsForm(ConfigIni.ResetCombination);
- if (form.ShowDialog() == DialogResult.OK)
- ConfigIni.ResetCombination = form.SelectedButtons;
- }
-
- private void nESMiniToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (nESMiniToolStripMenuItem.Checked) return;
- ConfigIni.ConsoleType = 0;
- nESMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 0;
- famicomMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 1;
- ConfigIni.HiddenGames = "";
- LoadHidden();
- }
-
- private void famicomMiniToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (famicomMiniToolStripMenuItem.Checked) return;
- ConfigIni.ConsoleType = 1;
- nESMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 0;
- famicomMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 1;
- ConfigIni.HiddenGames = "";
- LoadHidden();
- }
-
- private void enableAutofireToolStripMenuItem_Click(object sender, EventArgs e)
- {
- ConfigIni.AutofireHack = enableAutofireToolStripMenuItem.Checked;
- if (ConfigIni.AutofireHack)
- MessageBox.Show(this, Resources.AutofireHelp1, enableAutofireToolStripMenuItem.Text,
- MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
-
- private void useXYOnClassicControllerAsAutofireABToolStripMenuItem_Click(object sender, EventArgs e)
- {
- ConfigIni.AutofireXYHack = useXYOnClassicControllerAsAutofireABToolStripMenuItem.Checked;
- }
-
- private void globalCommandLineArgumentsexpertsOnluToolStripMenuItem_Click(object sender, EventArgs e)
- {
- var form = new StringInputForm();
- form.Text = Resources.ExtraArgsTitle;
- form.labelComments.Text = Resources.ExtraArgsInfo;
- form.textBox.Text = ConfigIni.ExtraCommandLineArguments;
- if (form.ShowDialog() == DialogResult.OK)
- ConfigIni.ExtraCommandLineArguments = form.textBox.Text;
- }
-
- private void timerCalculateGames_Tick(object sender, EventArgs e)
- {
- new Thread(RecalculateSelectedGamesThread).Start(); // Calculate it in background
- timerCalculateGames.Enabled = false; // We don't need to count games repetedly
- }
-
- private void checkedListBoxGames_ItemCheck(object sender, ItemCheckEventArgs e)
- {
- if (e.Index == 0)
- groupBoxDefaultGames.Enabled = e.NewValue == CheckState.Checked;
- // Schedule recalculation
- timerCalculateGames.Enabled = false;
- timerCalculateGames.Enabled = true;
- }
-
- private void checkedListBoxDefaultGames_ItemCheck(object sender, ItemCheckEventArgs e)
- {
- // Schedule recalculation
- timerCalculateGames.Enabled = false;
- timerCalculateGames.Enabled = true;
- }
-
- private void MainForm_Shown(object sender, EventArgs e)
- {
- if (ConfigIni.FirstRun && !File.Exists(KernelDump))
- {
- MessageBox.Show(this, Resources.FirstRun + "\r\n\r\n" + Resources.Donate, Resources.Hello, MessageBoxButtons.OK, MessageBoxIcon.Information);
- ConfigIni.FirstRun = false;
- ConfigIni.Save();
- }
- }
-
- private void deleteGameToolStripMenuItem_Click(object sender, EventArgs e)
- {
- deleteGame((int)(sender as ToolStripMenuItem).Tag);
- }
-
- private void deleteGame(int pos)
- {
- try
- {
- var game = checkedListBoxGames.Items[pos] as NesMiniApplication;
- if (MessageBox.Show(this, string.Format(Resources.DeleteGame, game.Name), Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == System.Windows.Forms.DialogResult.Yes)
- {
- Directory.Delete(game.GamePath, true);
- checkedListBoxGames.Items.RemoveAt(pos);
- }
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- // Schedule recalculation
- timerCalculateGames.Enabled = false;
- timerCalculateGames.Enabled = true;
- }
-
- private void selectAllToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if ((int)(sender as ToolStripMenuItem).Tag == 0)
- for (int i = 0; i < checkedListBoxGames.Items.Count; i++)
- checkedListBoxGames.SetItemChecked(i, true);
- else
- for (int i = 0; i < checkedListBoxDefaultGames.Items.Count; i++)
- checkedListBoxDefaultGames.SetItemChecked(i, true);
- }
-
- private void unselectAllToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if ((int)(sender as ToolStripMenuItem).Tag == 0)
- for (int i = 0; i < checkedListBoxGames.Items.Count; i++)
- checkedListBoxGames.SetItemChecked(i, false);
- else for (int i = 0; i < checkedListBoxDefaultGames.Items.Count; i++)
- checkedListBoxDefaultGames.SetItemChecked(i, false);
- }
-
- private void checkedListBoxGames_DragEnter(object sender, DragEventArgs e)
- {
- if (e.Data.GetDataPresent(DataFormats.FileDrop))
- e.Effect = DragDropEffects.Copy;
- }
-
- private void checkedListBoxGames_DragDrop(object sender, DragEventArgs e)
- {
- var files = (string[])e.Data.GetData(DataFormats.FileDrop);
-
- // Need to determine type of files
- // Maybe it's cover art?
- if (files.Length == 1)
- {
- var ext = Path.GetExtension(files[0]).ToLower();
- if (ext == ".jpg" || ext == ".png")
- {
- SetImageForSelectedGame(files[0]);
- return;
- }
- }
-
- // Maybe it's some mods?
- bool mods = false;
- foreach (var file in files)
- if (Path.GetExtension(file).ToLower() == ".hmod")
- mods = true;
- // Maybe it's some mods in single archive?
- if (files.Length == 1)
- {
- var ext = Path.GetExtension(files[0]).ToLower();
- if (ext == ".7z" || ext == ".zip" || ext == ".rar")
- {
- SevenZipExtractor.SetLibraryPath(Path.Combine(Program.BaseDirectoryInternal, IntPtr.Size == 8 ? @"tools\7z64.dll" : @"tools\7z.dll"));
- using (var szExtractor = new SevenZipExtractor(files[0]))
- {
- foreach (var f in szExtractor.ArchiveFileNames)
- if (Path.GetExtension(f).ToLower() == ".hmod")
- mods = true;
- }
- }
- }
- if (mods)
- {
- installModules(files);
- return;
- }
-
- // All other cases - games or apps
- var allFilesToAdd = new List<string>();
- foreach (var file in files)
- if (Directory.Exists(file))
- allFilesToAdd.AddRange(Directory.GetFiles(file, "*.*", SearchOption.AllDirectories));
- else if (File.Exists(file))
- allFilesToAdd.Add(file);
- if (allFilesToAdd.Count > 0)
- AddGames(allFilesToAdd);
- }
-
- private void searchToolStripMenuItem_Click(object sender, EventArgs e)
- {
- var searchForm = new SearchForm(this);
- searchForm.Left = this.Left + 200;
- searchForm.Top = this.Top + 300;
- searchForm.Show();
- }
-
- private void downloadCoversForAllGamesToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (DownloadAllCovers())
- MessageBox.Show(this, Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- ShowSelected();
- timerCalculateGames.Enabled = true;
- }
-
- private void checkedListBoxGames_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.Delete && checkedListBoxGames.SelectedIndex > 0)
- deleteGame(checkedListBoxGames.SelectedIndex);
- }
-
- private void MainForm_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.F5 && e.Modifiers == Keys.Shift)
- {
- int counter = 0;
- foreach (var g in checkedListBoxGames.Items)
- {
- if (g is NesMiniApplication)
- {
- var game = g as NesMiniApplication;
- if (game is NesGame)
- {
- try
- {
- if ((game as NesGame).TryAutofill(new NesFile((game as NesGame).NesPath).CRC32))
- counter++;
- }
- catch { }
- }
- }
- }
- ShowSelected();
- MessageBox.Show(this, string.Format(Resources.AutofillResult, counter), Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
-
- private void toolStripMenuMaxGamesPerFolder_Click(object sender, EventArgs e)
- {
- ConfigIni.MaxGamesPerFolder = byte.Parse((sender as ToolStripMenuItem).Text);
- max20toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 20;
- max25toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 25;
- max30toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 30;
- max35toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 35;
- max40toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 40;
- max45toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 45;
- max50toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 50;
- max60toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 60;
- max70toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 70;
- max80toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 80;
- max90toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 90;
- max100toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 100;
- }
-
- private void compressGamesIfPossibleToolStripMenuItem_Click(object sender, EventArgs e)
- {
- ConfigIni.Compress = compressGamesIfPossibleToolStripMenuItem.Checked;
- }
-
- private void buttonShowGameGenieDatabase_Click(object sender, EventArgs e)
- {
- if (!(checkedListBoxGames.SelectedItem is NesGame)) return;
- NesGame nesGame = checkedListBoxGames.SelectedItem as NesGame;
- GameGenieCodeForm lFrm = new GameGenieCodeForm(nesGame);
- if (lFrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
- textBoxGameGenie.Text = nesGame.GameGenie;
- }
-
- private void pagesModefoldersToolStripMenuItem_Click(object sender, EventArgs e)
- {
- ConfigIni.FoldersMode = (NesMenuCollection.SplitStyle)byte.Parse((sender as ToolStripMenuItem).Tag.ToString());
- disablePagefoldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 0;
- automaticToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 2;
- automaticOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 3;
- pagesToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 4;
- pagesOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 5;
- foldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 6;
- foldersOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 7;
- foldersSplitByFirstLetterToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 8;
- foldersSplitByFirstLetterOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 9;
- customToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 99;
- }
-
- private void installModulesToolStripMenuItem_Click(object sender, EventArgs e)
- {
- installModules();
- }
-
- private void installModules(string[] add = null)
- {
- if (RequireKernelDump() == DialogResult.No) return;
- var form = new SelectModsForm(false, true, add);
- form.Text = Resources.SelectModsInstall;
- if (form.ShowDialog() == DialogResult.OK)
- {
- if (InstallMods(((from m
- in form.checkedListBoxMods.CheckedItems.OfType<object>().ToArray()
- select m.ToString())).ToArray()))
- {
- MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- }
-
- private void uninstallModulesToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (RequireKernelDump() == DialogResult.No) return;
- var form = new SelectModsForm(true, false);
- form.Text = Resources.SelectModsUninstall;
- if (form.ShowDialog() == DialogResult.OK)
- {
- if (UninstallMods(((from m
- in form.checkedListBoxMods.CheckedItems.OfType<object>().ToArray()
- select m.ToString())).ToArray()))
- {
- MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- }
-
- private void timerConnectionCheck_Tick(object sender, EventArgs e)
- {
- toolStripStatusConnectionIcon.Image = Clovershell.IsOnline ? Resources.green : Resources.red;
- toolStripStatusConnectionIcon.ToolTipText = Clovershell.IsOnline ? "Online" : "Offline";
- }
-
- private void saveSettingsToNESMiniNowToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (RequirePatchedKernel() == DialogResult.No) return;
- try
- {
- if (WaitingClovershellForm.WaitForDevice(this))
- {
- WorkerForm.SyncConfig(ConfigIni.GetConfigDictionary(), true);
- MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void saveStateManagerToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (RequirePatchedKernel() == DialogResult.No) return;
- var gameNames = new Dictionary<string, string>();
- foreach (var game in defaultNesGames)
- gameNames[game.Code] = game.Name;
- foreach (var game in defaultFamicomGames)
- gameNames[game.Code] = game.Name;
- foreach (var game in checkedListBoxGames.Items)
- {
- if (game is NesMiniApplication)
- gameNames[(game as NesMiniApplication).Code] = (game as NesMiniApplication).Name;
- }
- var form = new SaveStateManager(gameNames);
- form.ShowDialog();
- }
-
- private void FTPToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (FTPToolStripMenuItem.Checked)
- {
- try
- {
- var ftpThread = new Thread(delegate()
- {
- try
- {
- ftpServer.Run();
- }
- catch (ThreadAbortException)
- {
- }
- catch (Exception ex)
- {
- try
- {
- ftpServer.Stop();
- }
- catch { }
- Debug.WriteLine(ex.Message + ex.StackTrace);
- Invoke(new Action(delegate()
- {
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- FTPToolStripMenuItem.Checked = false;
- }));
- }
- });
- ftpThread.Start();
- ConfigIni.FtpServer = true;
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- FTPToolStripMenuItem.Checked = false;
- ConfigIni.FtpServer = false;
- }
- }
- else
- {
- ftpServer.Stop();
- ConfigIni.FtpServer = false;
- }
- openFTPInExplorerToolStripMenuItem.Enabled = FTPToolStripMenuItem.Checked;
- }
-
- private void shellToolStripMenuItem_Click(object sender, EventArgs e)
- {
- try
- {
- ConfigIni.TelnetServer = openTelnetToolStripMenuItem.Enabled = Clovershell.ShellEnabled = shellToolStripMenuItem.Checked;
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- ConfigIni.TelnetServer = openTelnetToolStripMenuItem.Enabled = shellToolStripMenuItem.Checked = false;
- }
- }
-
- private void openFTPInExplorerToolStripMenuItem_Click(object sender, EventArgs e)
- {
- try
- {
- new Process()
- {
- StartInfo = new ProcessStartInfo()
- {
- FileName = "ftp://root:clover@127.0.0.1:1021/",
- }
- }.Start();
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void openTelnetToolStripMenuItem_Click(object sender, EventArgs e)
- {
- try
- {
- new Process()
- {
- StartInfo = new ProcessStartInfo()
- {
- FileName = "telnet://127.0.0.1:1023",
- }
- }.Start();
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, Resources.NoTelnet, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- private void takeScreenshotToolStripMenuItem_Click(object sender, EventArgs e)
- {
- if (RequirePatchedKernel() == DialogResult.No) return;
- try
- {
- if (WaitingClovershellForm.WaitForDevice(this))
- {
- var screenshot = WorkerForm.TakeScreenshot();
- var screenshotPath = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName() + ".png");
- screenshot.Save(screenshotPath, ImageFormat.Png);
- var showProcess = new Process()
- {
- StartInfo = new ProcessStartInfo()
- {
- FileName = screenshotPath
- }
- };
- showProcess.Start();
- new Thread(delegate()
- {
- try
- {
- showProcess.WaitForExit();
- }
- catch { }
- try
- {
- File.Delete(screenshotPath);
- }
- catch { }
- }).Start();
- }
- }
- catch (Exception ex)
- {
- Debug.WriteLine(ex.Message + ex.StackTrace);
- MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
- }
-}
+using com.clusterrr.clovershell; +using com.clusterrr.Famicom; +using com.clusterrr.hakchi_gui.Properties; +using SevenZip; +using System; +using System.Collections.Generic; +using System.Deployment.Application; +using System.Diagnostics; +using System.Drawing; +using System.Drawing.Imaging; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Resources; +using System.Text.RegularExpressions; +using System.Threading; +using System.Windows.Forms; + +namespace com.clusterrr.hakchi_gui +{ + public partial class MainForm : Form + { + public const long DefaultMaxGamesSize = 300; + public static IEnumerable<string> InternalMods; + public static ClovershellConnection Clovershell; + //readonly string UBootDump; + public static string KernelDump; + mooftpserv.Server ftpServer; + + + + public MainForm() + { + InitializeComponent(); + FormInitialize(); + Clovershell = new ClovershellConnection() { AutoReconnect = true, Enabled = true }; + Clovershell.OnConnected += Clovershell_OnConnected; + + ftpServer = new mooftpserv.Server(); + ftpServer.AuthHandler = new mooftpserv.NesMiniAuthHandler(); + ftpServer.FileSystemHandler = new mooftpserv.NesMiniFileSystemHandler(Clovershell); + ftpServer.LogHandler = new mooftpserv.DebugLogHandler(); + ftpServer.LocalPort = 1021; + + if (ConfigIni.FtpServer) + FTPToolStripMenuItem_Click(null, null); + if (ConfigIni.TelnetServer) + Clovershell.ShellEnabled = shellToolStripMenuItem.Checked = true; + } + + void FormInitialize() + { + try + { + KernelDump = Path.Combine(Path.Combine(Program.BaseDirectoryExternal, "dump"), "kernel.img"); + InternalMods = from m in Directory.GetFiles(Path.Combine(Program.BaseDirectoryInternal, "mods/hmods")) select Path.GetFileNameWithoutExtension(m); + LoadGames(); + + LoadPresets(); + LoadLanguages(); + var version = Assembly.GetExecutingAssembly().GetName().Version; + Text = string.Format("hakchi2 - v{0}.{1:D2}{2}", version.Major, version.Build, (version.Revision < 10) ? + ("rc" + version.Revision.ToString()) : (version.Revision > 20 ? ((char)('a' + (version.Revision - 20) / 10)).ToString() : "")) +#if DEBUG + + " (debug version" +#if VERY_DEBUG + + ", very verbose mode" +#endif + + ")" +#endif +; + // Some settnigs + useExtendedFontToolStripMenuItem.Checked = ConfigIni.UseFont; + epilepsyProtectionToolStripMenuItem.Checked = ConfigIni.AntiArmetLevel > 0; + selectButtonCombinationToolStripMenuItem.Enabled = resetUsingCombinationOfButtonsToolStripMenuItem.Checked = ConfigIni.ResetHack; + enableAutofireToolStripMenuItem.Checked = ConfigIni.AutofireHack; + useXYOnClassicControllerAsAutofireABToolStripMenuItem.Checked = ConfigIni.AutofireXYHack; + nESMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 0; + famicomMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 1; + upABStartOnSecondControllerToolStripMenuItem.Checked = ConfigIni.FcStart; + compressGamesIfPossibleToolStripMenuItem.Checked = ConfigIni.Compress; + + disablePagefoldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 0; + automaticToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 2; + automaticOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 3; + pagesToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 4; + pagesOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 5; + foldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 6; + foldersOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 7; + foldersSplitByFirstLetterToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 8; + foldersSplitByFirstLetterOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 9; + customToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 99; + + max20toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 20; + max25toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 25; + max30toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 30; + max35toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 35; + max40toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 40; + max45toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 45; + max50toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 50; + max60toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 60; + max70toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 70; + max80toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 80; + max90toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 90; + max100toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 100; + + // Little tweak for easy translation + var tbl = textBoxName.Left; + textBoxName.Left = labelName.Left + labelName.Width; + textBoxName.Width -= textBoxName.Left - tbl; + maskedTextBoxReleaseDate.Left = label1.Left + label1.Width + 3; + tbl = textBoxPublisher.Left; + textBoxPublisher.Left = label2.Left + label2.Width; + textBoxPublisher.Width -= textBoxPublisher.Left - tbl; + + // Tweeks for message boxes + MessageBoxManager.Yes = MessageBoxManager.Retry = Resources.Yes; + MessageBoxManager.No = MessageBoxManager.Ignore = Resources.No; + MessageBoxManager.Cancel = Resources.NoForAll; + MessageBoxManager.Abort = Resources.YesForAll; + + var extensions = new List<string>() { "*.new", "*.unf", "*.unif", ".*fds", "*.desktop", "*.zip", "*.7z", "*.rar" }; + foreach (var app in AppTypeCollection.ApplicationTypes) + foreach (var ext in app.Extensions) + if (!extensions.Contains("*" + ext)) + extensions.Add("*" + ext); + openFileDialogNes.Filter = Resources.GamesAndApps + "|" + string.Join(";", extensions.ToArray()) + "|" + Resources.AllFiles + "|*.*"; + + // Loading games database in background + new Thread(NesGame.LoadCache).Start(); + // Recalculate games in background + new Thread(RecalculateSelectedGamesThread).Start(); + + openFTPInExplorerToolStripMenuItem.Enabled = FTPToolStripMenuItem.Checked = ConfigIni.FtpServer; + openTelnetToolStripMenuItem.Enabled = shellToolStripMenuItem.Checked = ConfigIni.TelnetServer; + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, "Critical error: " + ex.Message + ex.StackTrace, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + void Clovershell_OnConnected() + { + try + { + ConfigIni.CustomFlashed = true; // Just in case of new installation + // Requesting autoshutdown state + var autoshutdown = Clovershell.ExecuteSimple("cat /var/lib/clover/profiles/0/shutdown.txt"); + // Disable automatic shutdown + if (autoshutdown != "0") + Clovershell.ExecuteSimple("echo -n 0 > /var/lib/clover/profiles/0/shutdown.txt"); + // Setting actual time for file transfer operations + Clovershell.ExecuteSimple(string.Format("date -s \"{0:yyyy-MM-dd HH:mm:ss}\"", DateTime.UtcNow)); + // Restoring automatic shutdown + if (autoshutdown != "0") + Clovershell.ExecuteSimple(string.Format("echo -n {0} > /var/lib/clover/profiles/0/shutdown.txt", autoshutdown)); + var customFirmware = Clovershell.ExecuteSimple("[ -d /var/lib/hakchi/firmware/ ] && [ -f /var/lib/hakchi/firmware/*.hsqs ] && echo YES || echo NO"); + if (customFirmware == "NO") + { + var region = Clovershell.ExecuteSimple("cat /etc/clover/REGION", 500, true); + Debug.WriteLine(string.Format("Detected region: {0}", region)); + if (region == "JPN") + Invoke(new Action(delegate + { + famicomMiniToolStripMenuItem.PerformClick(); + })); + if (region == "EUR_USA") + Invoke(new Action(delegate + { + nESMiniToolStripMenuItem.PerformClick(); + })); + } + WorkerForm.GetMemoryStats(); + new Thread(RecalculateSelectedGamesThread).Start(); + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + } + } + + public void LoadGames() + { + /*Make sure its initialised*/ + Manager.GameManager.GetInstance(); + + foreach(var game in Manager.GameManager.GetInstance().getAllGames()) + { + checkedListBoxGames.Items.Add(game, game.Selected); + } + RecalculateSelectedGames(); + ShowSelected(); + } + + public void ShowSelected() + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null) + { + + groupBoxOptions.Visible = true; + groupBoxOptions.Enabled = false; + labelID.Text = "ID: "; + textBoxName.Text = ""; + radioButtonOne.Checked = true; + radioButtonTwo.Checked = false; + radioButtonTwoSim.Checked = false; + maskedTextBoxReleaseDate.Text = ""; + textBoxPublisher.Text = ""; + textBoxArguments.Text = ""; + pictureBoxArt.Image = null; + } + else + { + var app = selected as NesMiniApplication; + + groupBoxOptions.Visible = true; + labelID.Text = "ID: " + app.Code; + textBoxName.Text = app.Name; + if (app.Simultaneous && app.Players == 2) + radioButtonTwoSim.Checked = true; + else if (app.Players == 2) + radioButtonTwo.Checked = true; + else + radioButtonOne.Checked = true; + maskedTextBoxReleaseDate.Text = app.ReleaseDate; + textBoxPublisher.Text = app.Publisher; + if (app is NesGame) + textBoxArguments.Text = (app as NesGame).Args; + else if (app is FdsGame) + textBoxArguments.Text = (app as FdsGame).Args; + else + textBoxArguments.Text = app.Command; + if (File.Exists(app.IconPath)) + pictureBoxArt.Image = NesMiniApplication.LoadBitmap(app.IconPath); + else + pictureBoxArt.Image = null; + buttonShowGameGenieDatabase.Enabled = textBoxGameGenie.Enabled = app is NesGame; + textBoxGameGenie.Text = (app is NesGame) ? (app as NesGame).GameGenie : ""; + groupBoxOptions.Enabled = true; + } + } + + + void LoadPresets() + { + while (presetsToolStripMenuItem.DropDownItems.Count > 3) + presetsToolStripMenuItem.DropDownItems.RemoveAt(0); + deletePresetToolStripMenuItem.Enabled = false; + deletePresetToolStripMenuItem.DropDownItems.Clear(); + int i = 0; + foreach (var preset in ConfigIni.Presets.Keys.OrderBy(o => o)) + { + presetsToolStripMenuItem.DropDownItems.Insert(i, new ToolStripMenuItem(preset, null, + delegate(object sender, EventArgs e) + { + var cols = ConfigIni.Presets[preset].Split('|'); + ConfigIni.SelectedGames = cols[0]; + ConfigIni.HiddenGames = cols[1]; + var selected = ConfigIni.SelectedGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); + var hide = ConfigIni.HiddenGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); + checkedListBoxGames.SetItemChecked(0, selected.Contains("default")); + for (int j = 1; j < checkedListBoxGames.Items.Count; j++) + checkedListBoxGames.SetItemChecked(j, + selected.Contains((checkedListBoxGames.Items[j] as NesMiniApplication).Code)); + + })); + deletePresetToolStripMenuItem.DropDownItems.Insert(i, new ToolStripMenuItem(preset, null, + delegate(object sender, EventArgs e) + { + if (MessageBox.Show(this, string.Format(Resources.DeletePreset, preset), Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == DialogResult.Yes) + { + ConfigIni.Presets.Remove(preset); + LoadPresets(); + } + })); + deletePresetToolStripMenuItem.Enabled = true; + i++; + } + } + + void LoadLanguages() + { + var languages = new List<string>(Directory.GetDirectories(Path.Combine(Program.BaseDirectoryInternal, "languages"))); + ResourceManager rm = Resources.ResourceManager; + languages.Add("en-US"); // default language + var langCodes = new Dictionary<string, string>(); + foreach (var language in languages) + { + var code = Path.GetFileName(language); + langCodes[new CultureInfo(code).DisplayName] = code; + } + ToolStripMenuItem english = null; + bool found = false; + foreach (var language in langCodes.Keys.OrderBy<string, string>(o => o)) + { + var item = new ToolStripMenuItem(); + var displayName = Regex.Replace(language, @" \(.+\)", ""); + if (langCodes.Keys.Count(o => Regex.Replace(o, @" \(.+\)", "") == displayName) == 1) + item.Text = displayName; + else + item.Text = language; + var country = langCodes[language]; + if (country.Length > 2) country = country.Substring(country.Length - 2).ToLower(); + item.Image = (Image)rm.GetObject(country); + item.ImageScaling = ToolStripItemImageScaling.None; + item.Click += delegate(object sender, EventArgs e) + { + ConfigIni.Language = langCodes[language]; + SaveConfig(); + Thread.CurrentThread.CurrentUICulture = new CultureInfo(langCodes[language]); + this.Controls.Clear(); + this.InitializeComponent(); + FormInitialize(); + this.Invalidate(true); + }; + item.Checked = Thread.CurrentThread.CurrentUICulture.Name == langCodes[language]; + found |= item.Checked; + if (langCodes[language] == "en-US") + english = item; + languageToolStripMenuItem.DropDownItems.Add(item); + } + if (!found) + english.Checked = true; + } + + void AddPreset(object sender, EventArgs e) + { + var form = new StringInputForm(); + form.Text = Resources.NewPreset; + form.labelComments.Text = Resources.InputPreset; + if (form.ShowDialog() == DialogResult.OK) + { + var name = form.textBox.Text.Replace("=", " "); + if (!string.IsNullOrEmpty(name)) + { + Manager.GameManager.GetInstance().SaveChanges(); + ConfigIni.Presets[name] = ConfigIni.SelectedGames + "|" + ConfigIni.HiddenGames; + LoadPresets(); + } + } + } + + private void checkedListBoxGames_SelectedIndexChanged(object sender, EventArgs e) + { + ShowSelected(); + } + + void SetImageForSelectedGame(string fileName) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + game.Image = NesMiniApplication.LoadBitmap(fileName); + ShowSelected(); + timerCalculateGames.Enabled = true; + } + + private void buttonBrowseImage_Click(object sender, EventArgs e) + { + openFileDialogImage.Filter = Resources.Images + " (*.bmp;*.png;*.jpg;*.jpeg;*.gif)|*.bmp;*.png;*.jpg;*.jpeg;*.gif|" + Resources.AllFiles + "|*.*"; + if (openFileDialogImage.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + SetImageForSelectedGame(openFileDialogImage.FileName); + } + } + + private void buttonGoogle_Click(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + var googler = new ImageGooglerForm(game); + if (googler.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + game.Image = googler.Result; + ShowSelected(); + timerCalculateGames.Enabled = true; + } + } + + private void textBoxName_TextChanged(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + game.Name = textBoxName.Text; + } + + private void radioButtonOne_CheckedChanged(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + game.Players = (byte)(radioButtonOne.Checked ? 1 : 2); + game.Simultaneous = radioButtonTwoSim.Checked; + } + + private void textBoxPublisher_TextChanged(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + game.Publisher = textBoxPublisher.Text.ToUpper(); + } + + private void textBoxArguments_TextChanged(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + if (game is NesGame) + (game as NesGame).Args = textBoxArguments.Text; + else if (game is FdsGame) + (game as FdsGame).Args = textBoxArguments.Text; + else + game.Command = textBoxArguments.Text; + } + + private void maskedTextBoxReleaseDate_TextChanged(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesMiniApplication)) return; + var game = (selected as NesMiniApplication); + game.ReleaseDate = maskedTextBoxReleaseDate.Text; + } + + private void textBoxGameGenie_TextChanged(object sender, EventArgs e) + { + var selected = checkedListBoxGames.SelectedItem; + if (selected == null || !(selected is NesGame)) return; + var game = (selected as NesGame); + game.GameGenie = textBoxGameGenie.Text; + } + + + private void SaveConfig() + { + Manager.GameManager.GetInstance().SaveChanges(); + + } + + private void MainForm_FormClosing(object sender, FormClosingEventArgs e) + { + Debug.WriteLine("Closing main form"); + SaveConfig(); + ftpServer.Stop(); + Clovershell.Dispose(); + } + private void MainForm_FormClosed(object sender, FormClosedEventArgs e) + { + Process.GetCurrentProcess().Kill(); // Suicide! Just easy and dirty way to kill all threads. + } + + + struct CountResult + { + public int Count; + public long Size; + } + void RecalculateSelectedGamesThread() + { + try + { + var stats = RecalculateSelectedGames(); + showStats(stats); + } + catch + { + timerCalculateGames.Enabled = false; + timerCalculateGames.Enabled = true; + } + } + CountResult RecalculateSelectedGames() + { + CountResult stats; + stats.Count = 0; + stats.Size = 0; + foreach (var game in checkedListBoxGames.CheckedItems) + { + if (game is NesMiniApplication) + { + stats.Count++; + stats.Size += (game as NesMiniApplication).Size(); + } + + } + return stats; + } + void showStats(CountResult stats) + { + try + { + if (InvokeRequired) + { + Invoke(new Action<CountResult>(showStats), new object[] { stats }); + return; + } + var maxGamesSize = DefaultMaxGamesSize * 1024 * 1024; + if (WorkerForm.NandCTotal > 0) + maxGamesSize = (WorkerForm.NandCFree + WorkerForm.WritedGamesSize) - WorkerForm.ReservedMemory * 1024 * 1024; + toolStripStatusLabelSelected.Text = stats.Count + " " + Resources.GamesSelected; + toolStripStatusLabelSize.Text = string.Format("{0:F1}MB / {1:F1}MB", stats.Size / 1024.0 / 1024.0, maxGamesSize / 1024.0 / 1024.0); + toolStripProgressBar.Maximum = (int)maxGamesSize; + toolStripProgressBar.Value = Math.Min((int)stats.Size, toolStripProgressBar.Maximum); + toolStripStatusLabelSize.ForeColor = + (toolStripProgressBar.Value < toolStripProgressBar.Maximum) ? + SystemColors.ControlText : + Color.Red; + } + catch { } + } + + private void buttonAddGames_Click(object sender, EventArgs e) + { + if (openFileDialogNes.ShowDialog() == DialogResult.OK) + { + AddGames(openFileDialogNes.FileNames); + } + } + + private void checkedListBoxGames_MouseDown(object sender, MouseEventArgs e) + { + if (e.Button == System.Windows.Forms.MouseButtons.Right) + { + var i = checkedListBoxGames.IndexFromPoint(e.X, e.Y); + selectAllToolStripMenuItem.Tag = unselectAllToolStripMenuItem.Tag = 0; + deleteGameToolStripMenuItem.Tag = i; + deleteGameToolStripMenuItem.Enabled = i > 0; + contextMenuStrip.Show(sender as Control, e.X, e.Y); + } + } + + private void checkedListBoxDefaultGames_MouseDown(object sender, MouseEventArgs e) + { + if (e.Button == System.Windows.Forms.MouseButtons.Right) + { + var i = checkedListBoxGames.IndexFromPoint(e.X, e.Y); + selectAllToolStripMenuItem.Tag = unselectAllToolStripMenuItem.Tag = 1; + deleteGameToolStripMenuItem.Enabled = false; + contextMenuStrip.Show(sender as Control, e.X, e.Y); + } + } + + DialogResult RequireKernelDump() + { + if (File.Exists(KernelDump)) return DialogResult.OK; // OK - already dumped + // Asking user to dump kernel + if (MessageBox.Show(Resources.NoKernelWarning, Resources.NoKernel, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + { + if (DoKernelDump()) + return DialogResult.Yes; // Succesfully dumped + else + return DialogResult.No; // Not dumped for some other reason + } + else return DialogResult.No; // Kernel dump cancelled by user + } + + DialogResult RequirePatchedKernel() + { + if (ConfigIni.CustomFlashed) return DialogResult.OK; // OK - already flashed + var kernelDump = RequireKernelDump(); // We need kernel dump first + if (kernelDump == System.Windows.Forms.DialogResult.No) + return DialogResult.No; // Abort if user has not dumped it + if (MessageBox.Show((kernelDump == DialogResult.Yes ? (Resources.KernelDumped + "\r\n") : "") + + Resources.CustomWarning, Resources.CustomKernel, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + { + if (FlashCustomKernel()) + return DialogResult.Yes; // Succesfully flashed + else + return DialogResult.No; // Not flashed for some other reason + } + else return DialogResult.No; + } + + private void buttonStart_Click(object sender, EventArgs e) + { + SaveConfig(); + + var stats = RecalculateSelectedGames(); + if (stats.Count == 0) + { + MessageBox.Show(Resources.SelectAtLeast, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + var kernel = RequirePatchedKernel(); + if (kernel == DialogResult.No) return; + if (kernel == DialogResult.Yes) // Message for new user + MessageBox.Show(Resources.DoneYouCanUpload + "\r\n" + Resources.PressOkToContinue, Resources.Congratulations, MessageBoxButtons.OK, MessageBoxIcon.Information); + if (UploadGames()) + { + MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + bool DoKernelDump() + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.DumpingKernel; + workerForm.Task = WorkerForm.Tasks.DumpKernel; + //workerForm.UBootDump = UBootDump; + workerForm.KernelDump = KernelDump; + workerForm.Start(); + return workerForm.DialogResult == DialogResult.OK; + } + + bool FlashCustomKernel() + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.FlasingCustom; + workerForm.Task = WorkerForm.Tasks.FlashKernel; + workerForm.KernelDump = KernelDump; + workerForm.Mod = "mod_hakchi"; + workerForm.hmodsInstall = new List<string>(InternalMods); + workerForm.Config = null; + workerForm.Games = null; + workerForm.Start(); + var result = workerForm.DialogResult == DialogResult.OK; + if (result) + { + ConfigIni.CustomFlashed = true; + ConfigIni.Save(); + } + return result; + } + + bool UploadGames() + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.UploadingGames; + workerForm.Task = WorkerForm.Tasks.UploadGames; + workerForm.KernelDump = KernelDump; + workerForm.Mod = "mod_hakchi"; + workerForm.Config = ConfigIni.GetConfigDictionary(); + workerForm.Games = new NesMenuCollection(); + bool needOriginal = false; + foreach (var game in checkedListBoxGames.CheckedItems) + { + if (game is NesMiniApplication) + workerForm.Games.Add(game as NesMiniApplication); + else + needOriginal = true; + } + + + workerForm.FoldersMode = ConfigIni.FoldersMode; + workerForm.MaxGamesPerFolder = ConfigIni.MaxGamesPerFolder; + workerForm.MainForm = this; + workerForm.Start(); + return workerForm.DialogResult == DialogResult.OK; + } + + void AddGames(IEnumerable<string> files) + { + SaveConfig(); + ICollection<NesMiniApplication> addedApps; + var workerForm = new WorkerForm(); + workerForm.Text = Resources.LoadingGames; + workerForm.Task = WorkerForm.Tasks.AddGames; + workerForm.GamesToAdd = files; + workerForm.Start(); + addedApps = workerForm.addedApplications; + + if (addedApps != null) + { + // Add games, only new ones + var newApps = addedApps.Distinct(new NesMiniApplication.NesMiniAppEqualityComparer()); + var newCodes = from app in newApps select app.Code; + var oldAppsReplaced = from app in checkedListBoxGames.Items.Cast<object>().ToArray() + where (app is NesMiniApplication) && newCodes.Contains((app as NesMiniApplication).Code) + select app; + foreach (var replaced in oldAppsReplaced) + checkedListBoxGames.Items.Remove(replaced); + checkedListBoxGames.Items.AddRange(newApps.ToArray()); + var first = checkedListBoxGames.Items[0]; + bool originalChecked = (checkedListBoxGames.CheckedItems.Contains(first)); + checkedListBoxGames.Items.Remove(first); + checkedListBoxGames.Sorted = true; + checkedListBoxGames.Sorted = false; + checkedListBoxGames.Items.Insert(0, first); + checkedListBoxGames.SetItemChecked(0, originalChecked); + } + else + { + // Reload all games (maybe process was terminated?) + LoadGames(); + } + if (addedApps != null) // if added only one game select it + { + bool first = true; + foreach (var addedApp in addedApps) + { + for (int i = 0; i < checkedListBoxGames.Items.Count; i++) + if ((checkedListBoxGames.Items[i] is NesMiniApplication) && + (checkedListBoxGames.Items[i] as NesMiniApplication).Code == addedApp.Code) + { + if (first) + checkedListBoxGames.SelectedIndex = i; + first = false; + checkedListBoxGames.SetItemChecked(i, true); + break; + } + } + } + // Schedule recalculation + timerCalculateGames.Enabled = false; + timerCalculateGames.Enabled = true; + } + + bool FlashOriginalKernel(bool boot = true) + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.FlasingOriginal; + workerForm.Task = WorkerForm.Tasks.FlashKernel; + workerForm.KernelDump = KernelDump; + workerForm.Mod = null; + workerForm.Start(); + var result = workerForm.DialogResult == DialogResult.OK; + if (result) + { + ConfigIni.CustomFlashed = false; + ConfigIni.Save(); + } + return result; + } + + bool Uninstall() + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.Uninstalling; + workerForm.Task = WorkerForm.Tasks.Memboot; + workerForm.KernelDump = KernelDump; + workerForm.Mod = "mod_uninstall"; + workerForm.Start(); + return workerForm.DialogResult == DialogResult.OK; + } + + bool InstallMods(string[] mods) + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.InstallingMods; + workerForm.Task = WorkerForm.Tasks.Memboot; + workerForm.KernelDump = KernelDump; + workerForm.Mod = "mod_hakchi"; + workerForm.hmodsInstall = new List<string>(mods); + workerForm.Start(); + return workerForm.DialogResult == DialogResult.OK; + } + + bool UninstallMods(string[] mods) + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.UninstallingMods; + workerForm.Task = WorkerForm.Tasks.Memboot; + workerForm.KernelDump = KernelDump; + workerForm.Mod = "mod_hakchi"; + workerForm.hmodsUninstall = new List<string>(mods); + workerForm.Start(); + return workerForm.DialogResult == DialogResult.OK; + } + + bool DownloadAllCovers() + { + var workerForm = new WorkerForm(); + workerForm.Text = Resources.DownloadAllCoversTitle; + workerForm.Task = WorkerForm.Tasks.DownloadAllCovers; + workerForm.Games = new NesMenuCollection(); + foreach (var game in checkedListBoxGames.Items) + { + if (game is NesMiniApplication) + workerForm.Games.Add(game as NesMiniApplication); + } + return workerForm.Start() == DialogResult.OK; + } + + private void dumpKernelToolStripMenuItem_Click(object sender, EventArgs e) + { + if (File.Exists(KernelDump)) + { + MessageBox.Show(Resources.ReplaceKernelQ, Resources.Warning, MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + if (MessageBox.Show(Resources.DumpKernelQ, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + { + if (DoKernelDump()) MessageBox.Show(Resources.KernelDumped, Resources.Done, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + private void flashCustomKernelToolStripMenuItem_Click(object sender, EventArgs e) + { + if (RequireKernelDump() == DialogResult.No) return; + if (MessageBox.Show(Resources.CustomKernelQ, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + { + if (FlashCustomKernel()) MessageBox.Show(Resources.DoneYouCanUpload, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + private void flashOriginalKernelToolStripMenuItem_Click(object sender, EventArgs e) + { + if (!File.Exists(KernelDump)) + { + MessageBox.Show(Resources.NoKernelYouNeed, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + if (MessageBox.Show(Resources.OriginalKernelQ, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + { + if (FlashOriginalKernel()) MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + private void uninstallToolStripMenuItem_Click(object sender, EventArgs e) + { + if (!File.Exists(KernelDump)) + { + MessageBox.Show(Resources.NoKernelYouNeed, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + if (MessageBox.Show(Resources.UninstallQ1, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + { + if (Uninstall()) + { + if (ConfigIni.CustomFlashed && MessageBox.Show(Resources.UninstallQ2, Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) + == System.Windows.Forms.DialogResult.Yes) + FlashOriginalKernel(); + MessageBox.Show(Resources.UninstallFactoryNote, Resources.Done, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + } + + private void aboutToolStripMenuItem_Click(object sender, EventArgs e) + { + var about = new AboutBox(); + about.Text = aboutToolStripMenuItem.Text.Replace("&", ""); + about.ShowDialog(); + } + + private void gitHubPageWithActualReleasesToolStripMenuItem_Click(object sender, EventArgs e) + { + Process.Start("https://github.com/ClusterM/hakchi2/releases"); + } + + private void fAQToolStripMenuItem_Click(object sender, EventArgs e) + { + Process.Start("https://github.com/ClusterM/hakchi2/wiki/FAQ"); + } + + private void exitToolStripMenuItem_Click(object sender, EventArgs e) + { + Close(); + } + + private void useExtendedFontToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigIni.UseFont = useExtendedFontToolStripMenuItem.Checked; + } + + private void ToolStripMenuItemArmet_Click(object sender, EventArgs e) + { + ConfigIni.AntiArmetLevel = epilepsyProtectionToolStripMenuItem.Checked ? (byte)2 : (byte)0; + } + + private void cloverconHackToolStripMenuItem_Click(object sender, EventArgs e) + { + selectButtonCombinationToolStripMenuItem.Enabled = + ConfigIni.ResetHack = resetUsingCombinationOfButtonsToolStripMenuItem.Checked; + } + + private void upABStartOnSecondControllerToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigIni.FcStart = upABStartOnSecondControllerToolStripMenuItem.Checked; + } + + private void selectButtonCombinationToolStripMenuItem_Click(object sender, EventArgs e) + { + var form = new SelectButtonsForm(ConfigIni.ResetCombination); + if (form.ShowDialog() == DialogResult.OK) + ConfigIni.ResetCombination = form.SelectedButtons; + } + + private void nESMiniToolStripMenuItem_Click(object sender, EventArgs e) + { + if (nESMiniToolStripMenuItem.Checked) return; + ConfigIni.ConsoleType = 0; + nESMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 0; + famicomMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 1; + ConfigIni.HiddenGames = ""; + Manager.GameManager.GetInstance().ReloadDefault(); + } + + private void famicomMiniToolStripMenuItem_Click(object sender, EventArgs e) + { + if (famicomMiniToolStripMenuItem.Checked) return; + ConfigIni.ConsoleType = 1; + nESMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 0; + famicomMiniToolStripMenuItem.Checked = ConfigIni.ConsoleType == 1; + ConfigIni.HiddenGames = ""; + Manager.GameManager.GetInstance().ReloadDefault(); + } + + private void enableAutofireToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigIni.AutofireHack = enableAutofireToolStripMenuItem.Checked; + if (ConfigIni.AutofireHack) + MessageBox.Show(this, Resources.AutofireHelp1, enableAutofireToolStripMenuItem.Text, + MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + private void useXYOnClassicControllerAsAutofireABToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigIni.AutofireXYHack = useXYOnClassicControllerAsAutofireABToolStripMenuItem.Checked; + } + + private void globalCommandLineArgumentsexpertsOnluToolStripMenuItem_Click(object sender, EventArgs e) + { + var form = new StringInputForm(); + form.Text = Resources.ExtraArgsTitle; + form.labelComments.Text = Resources.ExtraArgsInfo; + form.textBox.Text = ConfigIni.ExtraCommandLineArguments; + if (form.ShowDialog() == DialogResult.OK) + ConfigIni.ExtraCommandLineArguments = form.textBox.Text; + } + + private void timerCalculateGames_Tick(object sender, EventArgs e) + { + new Thread(RecalculateSelectedGamesThread).Start(); // Calculate it in background + timerCalculateGames.Enabled = false; // We don't need to count games repetedly + } + + private void checkedListBoxGames_ItemCheck(object sender, ItemCheckEventArgs e) + { + NesMiniApplication app = (NesMiniApplication)checkedListBoxGames.Items[e.Index]; + app.Selected = (e.NewValue == CheckState.Checked); + Manager.GameManager.GetInstance().SaveChanges(); + timerCalculateGames.Enabled = false; + timerCalculateGames.Enabled = true; + } + + + private void MainForm_Shown(object sender, EventArgs e) + { + if (ConfigIni.FirstRun && !File.Exists(KernelDump)) + { + MessageBox.Show(this, Resources.FirstRun + "\r\n\r\n" + Resources.Donate, Resources.Hello, MessageBoxButtons.OK, MessageBoxIcon.Information); + ConfigIni.FirstRun = false; + ConfigIni.Save(); + } + } + + private void deleteGameToolStripMenuItem_Click(object sender, EventArgs e) + { + deleteGame((int)(sender as ToolStripMenuItem).Tag); + } + + private void deleteGame(int pos) + { + try + { + var game = checkedListBoxGames.Items[pos] as NesMiniApplication; + if (MessageBox.Show(this, string.Format(Resources.DeleteGame, game.Name), Resources.AreYouSure, MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == System.Windows.Forms.DialogResult.Yes) + { + Directory.Delete(game.GamePath, true); + checkedListBoxGames.Items.RemoveAt(pos); + } + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + // Schedule recalculation + timerCalculateGames.Enabled = false; + timerCalculateGames.Enabled = true; + } + + private void selectAllToolStripMenuItem_Click(object sender, EventArgs e) + { + if ((int)(sender as ToolStripMenuItem).Tag == 0) + for (int i = 0; i < checkedListBoxGames.Items.Count; i++) + checkedListBoxGames.SetItemChecked(i, true); + + } + + private void unselectAllToolStripMenuItem_Click(object sender, EventArgs e) + { + if ((int)(sender as ToolStripMenuItem).Tag == 0) + for (int i = 0; i < checkedListBoxGames.Items.Count; i++) + checkedListBoxGames.SetItemChecked(i, false); + + } + + private void checkedListBoxGames_DragEnter(object sender, DragEventArgs e) + { + if (e.Data.GetDataPresent(DataFormats.FileDrop)) + e.Effect = DragDropEffects.Copy; + } + + private void checkedListBoxGames_DragDrop(object sender, DragEventArgs e) + { + var files = (string[])e.Data.GetData(DataFormats.FileDrop); + + // Need to determine type of files + // Maybe it's cover art? + if (files.Length == 1) + { + var ext = Path.GetExtension(files[0]).ToLower(); + if (ext == ".jpg" || ext == ".png") + { + SetImageForSelectedGame(files[0]); + return; + } + } + + // Maybe it's some mods? + bool mods = false; + foreach (var file in files) + if (Path.GetExtension(file).ToLower() == ".hmod") + mods = true; + // Maybe it's some mods in single archive? + if (files.Length == 1) + { + var ext = Path.GetExtension(files[0]).ToLower(); + if (ext == ".7z" || ext == ".zip" || ext == ".rar") + { + SevenZipExtractor.SetLibraryPath(Path.Combine(Program.BaseDirectoryInternal, IntPtr.Size == 8 ? @"tools\7z64.dll" : @"tools\7z.dll")); + using (var szExtractor = new SevenZipExtractor(files[0])) + { + foreach (var f in szExtractor.ArchiveFileNames) + if (Path.GetExtension(f).ToLower() == ".hmod") + mods = true; + } + } + } + if (mods) + { + installModules(files); + return; + } + + // All other cases - games or apps + var allFilesToAdd = new List<string>(); + foreach (var file in files) + if (Directory.Exists(file)) + allFilesToAdd.AddRange(Directory.GetFiles(file, "*.*", SearchOption.AllDirectories)); + else if (File.Exists(file)) + allFilesToAdd.Add(file); + if (allFilesToAdd.Count > 0) + AddGames(allFilesToAdd); + } + + private void searchToolStripMenuItem_Click(object sender, EventArgs e) + { + var searchForm = new SearchForm(this); + searchForm.Left = this.Left + 200; + searchForm.Top = this.Top + 300; + searchForm.Show(); + } + + private void downloadCoversForAllGamesToolStripMenuItem_Click(object sender, EventArgs e) + { + if (DownloadAllCovers()) + MessageBox.Show(this, Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + ShowSelected(); + timerCalculateGames.Enabled = true; + } + + private void checkedListBoxGames_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.Delete && checkedListBoxGames.SelectedIndex > 0) + deleteGame(checkedListBoxGames.SelectedIndex); + } + + private void MainForm_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.F5 && e.Modifiers == Keys.Shift) + { + int counter = 0; + foreach (var g in checkedListBoxGames.Items) + { + if (g is NesMiniApplication) + { + var game = g as NesMiniApplication; + if (game is NesGame) + { + try + { + if ((game as NesGame).TryAutofill(new NesFile((game as NesGame).NesPath).CRC32)) + counter++; + } + catch { } + } + } + } + ShowSelected(); + MessageBox.Show(this, string.Format(Resources.AutofillResult, counter), Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + private void toolStripMenuMaxGamesPerFolder_Click(object sender, EventArgs e) + { + ConfigIni.MaxGamesPerFolder = byte.Parse((sender as ToolStripMenuItem).Text); + max20toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 20; + max25toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 25; + max30toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 30; + max35toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 35; + max40toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 40; + max45toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 45; + max50toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 50; + max60toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 60; + max70toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 70; + max80toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 80; + max90toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 90; + max100toolStripMenuItem.Checked = ConfigIni.MaxGamesPerFolder == 100; + } + + private void compressGamesIfPossibleToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigIni.Compress = compressGamesIfPossibleToolStripMenuItem.Checked; + } + + private void buttonShowGameGenieDatabase_Click(object sender, EventArgs e) + { + if (!(checkedListBoxGames.SelectedItem is NesGame)) return; + NesGame nesGame = checkedListBoxGames.SelectedItem as NesGame; + GameGenieCodeForm lFrm = new GameGenieCodeForm(nesGame); + if (lFrm.ShowDialog() == System.Windows.Forms.DialogResult.OK) + textBoxGameGenie.Text = nesGame.GameGenie; + } + + private void pagesModefoldersToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigIni.FoldersMode = (NesMenuCollection.SplitStyle)byte.Parse((sender as ToolStripMenuItem).Tag.ToString()); + disablePagefoldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 0; + automaticToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 2; + automaticOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 3; + pagesToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 4; + pagesOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 5; + foldersToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 6; + foldersOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 7; + foldersSplitByFirstLetterToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 8; + foldersSplitByFirstLetterOriginalToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 9; + customToolStripMenuItem.Checked = (byte)ConfigIni.FoldersMode == 99; + } + + private void installModulesToolStripMenuItem_Click(object sender, EventArgs e) + { + installModules(); + } + + private void installModules(string[] add = null) + { + if (RequireKernelDump() == DialogResult.No) return; + var form = new SelectModsForm(false, true, add); + form.Text = Resources.SelectModsInstall; + if (form.ShowDialog() == DialogResult.OK) + { + if (InstallMods(((from m + in form.checkedListBoxMods.CheckedItems.OfType<object>().ToArray() + select m.ToString())).ToArray())) + { + MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + } + + private void uninstallModulesToolStripMenuItem_Click(object sender, EventArgs e) + { + if (RequireKernelDump() == DialogResult.No) return; + var form = new SelectModsForm(true, false); + form.Text = Resources.SelectModsUninstall; + if (form.ShowDialog() == DialogResult.OK) + { + if (UninstallMods(((from m + in form.checkedListBoxMods.CheckedItems.OfType<object>().ToArray() + select m.ToString())).ToArray())) + { + MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + } + + private void timerConnectionCheck_Tick(object sender, EventArgs e) + { + if (Clovershell != null) + { + toolStripStatusConnectionIcon.Image = Clovershell.IsOnline ? Resources.green : Resources.red; + toolStripStatusConnectionIcon.ToolTipText = Clovershell.IsOnline ? "Online" : "Offline"; + } + } + + private void saveSettingsToNESMiniNowToolStripMenuItem_Click(object sender, EventArgs e) + { + if (RequirePatchedKernel() == DialogResult.No) return; + try + { + if (WaitingClovershellForm.WaitForDevice(this)) + { + WorkerForm.SyncConfig(ConfigIni.GetConfigDictionary(), true); + MessageBox.Show(Resources.Done, Resources.Wow, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void saveStateManagerToolStripMenuItem_Click(object sender, EventArgs e) + { + if (RequirePatchedKernel() == DialogResult.No) return; + var gameNames = new Dictionary<string, string>(); + + foreach (var game in checkedListBoxGames.Items) + { + if (game is NesMiniApplication) + gameNames[(game as NesMiniApplication).Code] = (game as NesMiniApplication).Name; + } + var form = new SaveStateManager(gameNames); + form.ShowDialog(); + } + + private void FTPToolStripMenuItem_Click(object sender, EventArgs e) + { + if (FTPToolStripMenuItem.Checked) + { + try + { + var ftpThread = new Thread(delegate() + { + try + { + ftpServer.Run(); + } + catch (ThreadAbortException) + { + } + catch (Exception ex) + { + try + { + ftpServer.Stop(); + } + catch { } + Debug.WriteLine(ex.Message + ex.StackTrace); + Invoke(new Action(delegate() + { + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + FTPToolStripMenuItem.Checked = false; + })); + } + }); + ftpThread.Start(); + ConfigIni.FtpServer = true; + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + FTPToolStripMenuItem.Checked = false; + ConfigIni.FtpServer = false; + } + } + else + { + ftpServer.Stop(); + ConfigIni.FtpServer = false; + } + openFTPInExplorerToolStripMenuItem.Enabled = FTPToolStripMenuItem.Checked; + } + + private void shellToolStripMenuItem_Click(object sender, EventArgs e) + { + try + { + ConfigIni.TelnetServer = openTelnetToolStripMenuItem.Enabled = Clovershell.ShellEnabled = shellToolStripMenuItem.Checked; + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + ConfigIni.TelnetServer = openTelnetToolStripMenuItem.Enabled = shellToolStripMenuItem.Checked = false; + } + } + + private void openFTPInExplorerToolStripMenuItem_Click(object sender, EventArgs e) + { + try + { + new Process() + { + StartInfo = new ProcessStartInfo() + { + FileName = "ftp://root:clover@127.0.0.1:1021/", + } + }.Start(); + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void openTelnetToolStripMenuItem_Click(object sender, EventArgs e) + { + try + { + new Process() + { + StartInfo = new ProcessStartInfo() + { + FileName = "telnet://127.0.0.1:1023", + } + }.Start(); + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, Resources.NoTelnet, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void takeScreenshotToolStripMenuItem_Click(object sender, EventArgs e) + { + if (RequirePatchedKernel() == DialogResult.No) return; + try + { + if (WaitingClovershellForm.WaitForDevice(this)) + { + var screenshot = WorkerForm.TakeScreenshot(); + var screenshotPath = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName() + ".png"); + screenshot.Save(screenshotPath, ImageFormat.Png); + var showProcess = new Process() + { + StartInfo = new ProcessStartInfo() + { + FileName = screenshotPath + } + }; + showProcess.Start(); + new Thread(delegate() + { + try + { + showProcess.WaitForExit(); + } + catch { } + try + { + File.Delete(screenshotPath); + } + catch { } + }).Start(); + } + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/MainForm.resx b/MainForm.resx index 3f29e4a8..b78b2cf2 100644 --- a/MainForm.resx +++ b/MainForm.resx @@ -1,3360 +1,3054 @@ -<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="menuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="menuStrip.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 0</value>
- </data>
- <data name="menuStrip.Size" type="System.Drawing.Size, System.Drawing">
- <value>609, 24</value>
- </data>
- <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="menuStrip.TabIndex" type="System.Int32, mscorlib">
- <value>1</value>
- </data>
- <data name="menuStrip.Text" xml:space="preserve">
- <value>menuStrip</value>
- </data>
- <data name=">>menuStrip.Name" xml:space="preserve">
- <value>menuStrip</value>
- </data>
- <data name=">>menuStrip.Type" xml:space="preserve">
- <value>System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>menuStrip.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>menuStrip.ZOrder" xml:space="preserve">
- <value>6</value>
- </data>
- <data name="fileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>37, 20</value>
- </data>
- <data name="fileToolStripMenuItem.Text" xml:space="preserve">
- <value>&File</value>
- </data>
- <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="addMoreGamesToolStripMenuItem.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms">
- <value>Ctrl+O</value>
- </data>
- <data name="addMoreGamesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>238, 22</value>
- </data>
- <data name="addMoreGamesToolStripMenuItem.Text" xml:space="preserve">
- <value>Add more &games</value>
- </data>
- <data name="presetsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>238, 22</value>
- </data>
- <data name="presetsToolStripMenuItem.Text" xml:space="preserve">
- <value>Selection presets</value>
- </data>
- <data name="toolStripMenuItem2.Size" type="System.Drawing.Size, System.Drawing">
- <value>139, 6</value>
- </data>
- <data name="addPresetToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>142, 22</value>
- </data>
- <data name="addPresetToolStripMenuItem.Text" xml:space="preserve">
- <value>Add preset</value>
- </data>
- <data name="deletePresetToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>142, 22</value>
- </data>
- <data name="deletePresetToolStripMenuItem.Text" xml:space="preserve">
- <value>Delete preset</value>
- </data>
- <data name="synchronizeToolStripMenuItem.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms">
- <value>F5</value>
- </data>
- <data name="synchronizeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>238, 22</value>
- </data>
- <data name="synchronizeToolStripMenuItem.Text" xml:space="preserve">
- <value>Synchronize</value>
- </data>
- <data name="searchToolStripMenuItem.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms">
- <value>Ctrl+F</value>
- </data>
- <data name="searchToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>238, 22</value>
- </data>
- <data name="searchToolStripMenuItem.Text" xml:space="preserve">
- <value>Search</value>
- </data>
- <data name="downloadCoversForAllGamesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>238, 22</value>
- </data>
- <data name="downloadCoversForAllGamesToolStripMenuItem.Text" xml:space="preserve">
- <value>Download box art for all games</value>
- </data>
- <data name="toolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing">
- <value>235, 6</value>
- </data>
- <data name="exitToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>238, 22</value>
- </data>
- <data name="exitToolStripMenuItem.Text" xml:space="preserve">
- <value>&Exit</value>
- </data>
- <data name="kernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>52, 20</value>
- </data>
- <data name="kernelToolStripMenuItem.Text" xml:space="preserve">
- <value>&Kernel</value>
- </data>
- <data name="dumpKernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>179, 22</value>
- </data>
- <data name="dumpKernelToolStripMenuItem.Text" xml:space="preserve">
- <value>Dump kernel</value>
- </data>
- <data name="flashOriginalKernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>179, 22</value>
- </data>
- <data name="flashOriginalKernelToolStripMenuItem.Text" xml:space="preserve">
- <value>Flash original kernel</value>
- </data>
- <data name="flashCustomKernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>179, 22</value>
- </data>
- <data name="flashCustomKernelToolStripMenuItem.Text" xml:space="preserve">
- <value>Flash custom kernel</value>
- </data>
- <data name="uninstallToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>179, 22</value>
- </data>
- <data name="uninstallToolStripMenuItem.Text" xml:space="preserve">
- <value>Uninstall</value>
- </data>
- <data name="modulesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>65, 20</value>
- </data>
- <data name="modulesToolStripMenuItem.Text" xml:space="preserve">
- <value>&Modules</value>
- </data>
- <data name="installModulesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>197, 22</value>
- </data>
- <data name="installModulesToolStripMenuItem.Text" xml:space="preserve">
- <value>Install extra modules</value>
- </data>
- <data name="uninstallModulesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>197, 22</value>
- </data>
- <data name="uninstallModulesToolStripMenuItem.Text" xml:space="preserve">
- <value>Uninstall extra modules</value>
- </data>
- <data name="settingsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>61, 20</value>
- </data>
- <data name="settingsToolStripMenuItem.Text" xml:space="preserve">
- <value>&Settings</value>
- </data>
- <data name="languageToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAANASURBVDhPdZN9UMtxHMd/U7qj6zz1R6ltXB5ma6vMyrKsaSs2D3PoYW6VPA1DJZZMVtjN1Zyn
- iKYQTqU7lWOdRNxwHkqRK3lMtU5UOJSjt1/zu3M4r7v3ff55vz73/fzxJf5mhkxOSz9gcSm1Ncy0Pe+K
- r2vrTaxpfB1qzMl3pir/Z3t+sWt1S9fOR+09XY/be1D7phu1re/R3PkBjR2972wv3+qp6r9syKtwVVvN
- l9Y2LIf1WQeONZUhrcUOS0s7TPfsWH2+BZqTV6C5mnY2MFb152t44ctos3OzS2fd4iPhgQLlrYV48rES
- hT2dWGP/ioSbHYjLa0DMniro7mox37jrEKX+wk9hWsS1Th2IqPeHvlmFh71W1PZ1oay/H4mdfYiraUPs
- 8QYo9TYklZghiTcN+Cq1QZROEL4Ru68xyr3AushCbONSGLu7UdD3HeZP37Dq+QdEVr5CdG4d5uluYsG2
- QhxuikRMcdQJh+zODHfxCU7r98lUgL+jBBGXr2NR/TssI0V1Uw9UtzugKGqGMusewrXXoMo2IbM2FOqq
- ha2OBaO8ZtHp3BRM0MSAu/4EgnJuQFj0FOKLLxFa/gLiM82Q7n+ICJ0NM6IrEb03DdrrQgSf4v9wLBjp
- KXEfy0oaYPJTwVlpAm9dDYQ7qzFtzwNMz6pDSOZ9SDaRsroK3NAL4K9IB/soAxN1c744FgzC4OraGGwD
- 2NJDmLIhCb7bkyHUncL0FdUIjquCYKHVIU8RngVbZAFHqQdHvuMOpRPEpECDeTwvA5OD98NtiyfcMsbA
- M88bLEMkuGFF4MwsBkd8Gr4SC7jSw/CT7wNHakykdIIQSTd7CGfv7RbJD8AnVQDXdWMwLHkURhg8wEyV
- gZWSgICoHAiW5EOkLkCYpvDFRLF2OKX/QqrMlosU5n6RWg+2UQi6gQWP3T7wPsgD70gkZJtLMDe9AsqM
- ss/0AJlk6HA3GqX+hjFBIheEbX0r3piMkIIoBJ6TQXJ8IxZkn4Eq9wY5S9+MHs/WkFV/MiMd0l840YY4
- B7gz2QfHyQT1QfEae4g60y6ITqmnC8IsNCfnxWQnkIw3GZdB4X8MfpYRZMaSYVJzNJnBu53IUBDET8tW
- pSL+Tvj1AAAAAElFTkSuQmCC
-</value>
- </data>
- <data name="languageToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="languageToolStripMenuItem.Text" xml:space="preserve">
- <value>Language</value>
- </data>
- <data name="consoleTypeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="consoleTypeToolStripMenuItem.Text" xml:space="preserve">
- <value>Console type</value>
- </data>
- <data name="nESMiniToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>151, 22</value>
- </data>
- <data name="nESMiniToolStripMenuItem.Text" xml:space="preserve">
- <value>NES Mini</value>
- </data>
- <data name="famicomMiniToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>151, 22</value>
- </data>
- <data name="famicomMiniToolStripMenuItem.Text" xml:space="preserve">
- <value>Famicom Mini</value>
- </data>
- <data name="cloverconHackToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="cloverconHackToolStripMenuItem.Text" xml:space="preserve">
- <value>Controller hacks</value>
- </data>
- <data name="resetUsingCombinationOfButtonsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>308, 22</value>
- </data>
- <data name="resetUsingCombinationOfButtonsToolStripMenuItem.Text" xml:space="preserve">
- <value>Use button combination to reset</value>
- </data>
- <data name="selectButtonCombinationToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>308, 22</value>
- </data>
- <data name="selectButtonCombinationToolStripMenuItem.Text" xml:space="preserve">
- <value>Select reset button combination</value>
- </data>
- <data name="enableAutofireToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>308, 22</value>
- </data>
- <data name="enableAutofireToolStripMenuItem.Text" xml:space="preserve">
- <value>Use "Select+A/B" to enable autofire on A/B </value>
- </data>
- <data name="useXYOnClassicControllerAsAutofireABToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>308, 22</value>
- </data>
- <data name="useXYOnClassicControllerAsAutofireABToolStripMenuItem.Text" xml:space="preserve">
- <value>Use X/Y on Classic Controller as autofire A/B</value>
- </data>
- <data name="upABStartOnSecondControllerToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>308, 22</value>
- </data>
- <data name="upABStartOnSecondControllerToolStripMenuItem.Text" xml:space="preserve">
- <value>"Up+A+B = Start" on 2nd controller</value>
- </data>
- <data name="useExtendedFontToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="useExtendedFontToolStripMenuItem.Text" xml:space="preserve">
- <value>Use extended font</value>
- </data>
- <data name="epilepsyProtectionToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="epilepsyProtectionToolStripMenuItem.Text" xml:space="preserve">
- <value>Disable epilepsy protection</value>
- </data>
- <data name="compressGamesIfPossibleToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="compressGamesIfPossibleToolStripMenuItem.Text" xml:space="preserve">
- <value>Compress non-NES games (for additional emulator mod)</value>
- </data>
- <data name="pagesfoldersTypeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="pagesfoldersTypeToolStripMenuItem.Text" xml:space="preserve">
- <value>Pages/folders structure</value>
- </data>
- <data name="disablePagefoldersToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="disablePagefoldersToolStripMenuItem.Text" xml:space="preserve">
- <value>Disable page/folders</value>
- </data>
- <data name="toolStripMenuItem3.Size" type="System.Drawing.Size, System.Drawing">
- <value>353, 6</value>
- </data>
- <data name="automaticToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="automaticToolStripMenuItem.Text" xml:space="preserve">
- <value>Automatic</value>
- </data>
- <data name="automaticOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="automaticOriginalToolStripMenuItem.Text" xml:space="preserve">
- <value>Original games in root -> Automatic in subfolder</value>
- </data>
- <data name="pagesToolStripMenuItem.ImageScaling" type="System.Windows.Forms.ToolStripItemImageScaling, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name="pagesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="pagesToolStripMenuItem.Text" xml:space="preserve">
- <value>Pages, split games equally</value>
- </data>
- <data name="pagesOriginalToolStripMenuItem.ImageScaling" type="System.Windows.Forms.ToolStripItemImageScaling, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name="pagesOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="pagesOriginalToolStripMenuItem.Text" xml:space="preserve">
- <value>Original games in root -> Pages, split games equally</value>
- </data>
- <data name="foldersToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="foldersToolStripMenuItem.Text" xml:space="preserve">
- <value>Folders, split games equally</value>
- </data>
- <data name="foldersOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="foldersOriginalToolStripMenuItem.Text" xml:space="preserve">
- <value>Original games in root -> Folders, split games equally</value>
- </data>
- <data name="foldersSplitByFirstLetterToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="foldersSplitByFirstLetterToolStripMenuItem.Text" xml:space="preserve">
- <value>Folders, split by first letter</value>
- </data>
- <data name="foldersSplitByFirstLetterOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="foldersSplitByFirstLetterOriginalToolStripMenuItem.Text" xml:space="preserve">
- <value>Original games in root -> Folders, split by first letter</value>
- </data>
- <data name="maximumGamesPerFolderToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="maximumGamesPerFolderToolStripMenuItem.Text" xml:space="preserve">
- <value>Maximum games per page/folder</value>
- </data>
- <data name="max20toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max20toolStripMenuItem.Text" xml:space="preserve">
- <value>20</value>
- </data>
- <data name="max25toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max25toolStripMenuItem.Text" xml:space="preserve">
- <value>25</value>
- </data>
- <data name="max30toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max30toolStripMenuItem.Text" xml:space="preserve">
- <value>30</value>
- </data>
- <data name="max35toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max35toolStripMenuItem.Text" xml:space="preserve">
- <value>35</value>
- </data>
- <data name="max40toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max40toolStripMenuItem.Text" xml:space="preserve">
- <value>40</value>
- </data>
- <data name="max45toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max45toolStripMenuItem.Text" xml:space="preserve">
- <value>45</value>
- </data>
- <data name="max50toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max50toolStripMenuItem.Text" xml:space="preserve">
- <value>50</value>
- </data>
- <data name="max60toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max60toolStripMenuItem.Text" xml:space="preserve">
- <value>60</value>
- </data>
- <data name="max70toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max70toolStripMenuItem.Text" xml:space="preserve">
- <value>70</value>
- </data>
- <data name="max80toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max80toolStripMenuItem.Text" xml:space="preserve">
- <value>80</value>
- </data>
- <data name="max90toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max90toolStripMenuItem.Text" xml:space="preserve">
- <value>90</value>
- </data>
- <data name="max100toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>92, 22</value>
- </data>
- <data name="max100toolStripMenuItem.Text" xml:space="preserve">
- <value>100</value>
- </data>
- <data name="toolStripMenuItem4.Size" type="System.Drawing.Size, System.Drawing">
- <value>353, 6</value>
- </data>
- <data name="customToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>356, 22</value>
- </data>
- <data name="customToolStripMenuItem.Text" xml:space="preserve">
- <value>Custom - show Folders Manager every time</value>
- </data>
- <data name="globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Text" xml:space="preserve">
- <value>Global command-line arguments (experts only!)</value>
- </data>
- <data name="toolStripMenuItem5.Size" type="System.Drawing.Size, System.Drawing">
- <value>373, 6</value>
- </data>
- <data name="saveSettingsToNESMiniNowToolStripMenuItem.Font" type="System.Drawing.Font, System.Drawing">
- <value>Segoe UI, 9pt, style=Bold</value>
- </data>
- <data name="saveSettingsToNESMiniNowToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>376, 22</value>
- </data>
- <data name="saveSettingsToNESMiniNowToolStripMenuItem.Text" xml:space="preserve">
- <value>Save settings to NES Mini now</value>
- </data>
- <data name="toolsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>48, 20</value>
- </data>
- <data name="toolsToolStripMenuItem.Text" xml:space="preserve">
- <value>&Tools</value>
- </data>
- <data name="saveStateManagerToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>331, 22</value>
- </data>
- <data name="saveStateManagerToolStripMenuItem.Text" xml:space="preserve">
- <value>Save-State Manager</value>
- </data>
- <data name="toolStripMenuItem6.Size" type="System.Drawing.Size, System.Drawing">
- <value>328, 6</value>
- </data>
- <data name="FTPToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>331, 22</value>
- </data>
- <data name="FTPToolStripMenuItem.Text" xml:space="preserve">
- <value>FTP server on ftp://root:clover@127.0.0.1:1021</value>
- </data>
- <data name="openFTPInExplorerToolStripMenuItem.Enabled" type="System.Boolean, mscorlib">
- <value>False</value>
- </data>
- <data name="openFTPInExplorerToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>331, 22</value>
- </data>
- <data name="openFTPInExplorerToolStripMenuItem.Text" xml:space="preserve">
- <value>Open FTP client</value>
- </data>
- <data name="toolStripMenuItem7.Size" type="System.Drawing.Size, System.Drawing">
- <value>328, 6</value>
- </data>
- <data name="shellToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>331, 22</value>
- </data>
- <data name="shellToolStripMenuItem.Text" xml:space="preserve">
- <value>Shell server on telnet://127.0.0.1:1023 (login:root)</value>
- </data>
- <data name="openTelnetToolStripMenuItem.Enabled" type="System.Boolean, mscorlib">
- <value>False</value>
- </data>
- <data name="openTelnetToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>331, 22</value>
- </data>
- <data name="openTelnetToolStripMenuItem.Text" xml:space="preserve">
- <value>Open Telnet client</value>
- </data>
- <data name="toolStripMenuItem8.Size" type="System.Drawing.Size, System.Drawing">
- <value>328, 6</value>
- </data>
- <data name="takeScreenshotToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>331, 22</value>
- </data>
- <data name="takeScreenshotToolStripMenuItem.Text" xml:space="preserve">
- <value>Take screenshot</value>
- </data>
- <data name="helpToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>44, 20</value>
- </data>
- <data name="helpToolStripMenuItem.Text" xml:space="preserve">
- <value>&Help</value>
- </data>
- <data name="gitHubPageWithActualReleasesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>246, 22</value>
- </data>
- <data name="gitHubPageWithActualReleasesToolStripMenuItem.Text" xml:space="preserve">
- <value>GitHub page with actual releases</value>
- </data>
- <data name="fAQToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>246, 22</value>
- </data>
- <data name="fAQToolStripMenuItem.Text" xml:space="preserve">
- <value>FAQ</value>
- </data>
- <data name="aboutToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>246, 22</value>
- </data>
- <data name="aboutToolStripMenuItem.Text" xml:space="preserve">
- <value>About...</value>
- </data>
- <data name="checkedListBoxGames.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name="checkedListBoxGames.Location" type="System.Drawing.Point, System.Drawing">
- <value>12, 57</value>
- </data>
- <data name="checkedListBoxGames.Size" type="System.Drawing.Size, System.Drawing">
- <value>282, 499</value>
- </data>
- <data name="checkedListBoxGames.TabIndex" type="System.Int32, mscorlib">
- <value>1</value>
- </data>
- <data name=">>checkedListBoxGames.Name" xml:space="preserve">
- <value>checkedListBoxGames</value>
- </data>
- <data name=">>checkedListBoxGames.Type" xml:space="preserve">
- <value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>checkedListBoxGames.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>checkedListBoxGames.ZOrder" xml:space="preserve">
- <value>5</value>
- </data>
- <data name="groupBoxOptions.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.Name" xml:space="preserve">
- <value>buttonShowGameGenieDatabase</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.Name" xml:space="preserve">
- <value>maskedTextBoxReleaseDate</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.Type" xml:space="preserve">
- <value>System.Windows.Forms.MaskedTextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name=">>label1.Name" xml:space="preserve">
- <value>label1</value>
- </data>
- <data name=">>label1.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label1.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label1.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name=">>textBoxGameGenie.Name" xml:space="preserve">
- <value>textBoxGameGenie</value>
- </data>
- <data name=">>textBoxGameGenie.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxGameGenie.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxGameGenie.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <data name=">>label7.Name" xml:space="preserve">
- <value>label7</value>
- </data>
- <data name=">>label7.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label7.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label7.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <data name=">>label6.Name" xml:space="preserve">
- <value>label6</value>
- </data>
- <data name=">>label6.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label6.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label6.ZOrder" xml:space="preserve">
- <value>5</value>
- </data>
- <data name=">>radioButtonTwoSim.Name" xml:space="preserve">
- <value>radioButtonTwoSim</value>
- </data>
- <data name=">>radioButtonTwoSim.Type" xml:space="preserve">
- <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>radioButtonTwoSim.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>radioButtonTwoSim.ZOrder" xml:space="preserve">
- <value>6</value>
- </data>
- <data name=">>buttonGoogle.Name" xml:space="preserve">
- <value>buttonGoogle</value>
- </data>
- <data name=">>buttonGoogle.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonGoogle.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>buttonGoogle.ZOrder" xml:space="preserve">
- <value>7</value>
- </data>
- <data name=">>buttonBrowseImage.Name" xml:space="preserve">
- <value>buttonBrowseImage</value>
- </data>
- <data name=">>buttonBrowseImage.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonBrowseImage.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>buttonBrowseImage.ZOrder" xml:space="preserve">
- <value>8</value>
- </data>
- <data name=">>pictureBoxArt.Name" xml:space="preserve">
- <value>pictureBoxArt</value>
- </data>
- <data name=">>pictureBoxArt.Type" xml:space="preserve">
- <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>pictureBoxArt.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>pictureBoxArt.ZOrder" xml:space="preserve">
- <value>9</value>
- </data>
- <data name=">>label4.Name" xml:space="preserve">
- <value>label4</value>
- </data>
- <data name=">>label4.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label4.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label4.ZOrder" xml:space="preserve">
- <value>10</value>
- </data>
- <data name=">>textBoxArguments.Name" xml:space="preserve">
- <value>textBoxArguments</value>
- </data>
- <data name=">>textBoxArguments.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxArguments.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxArguments.ZOrder" xml:space="preserve">
- <value>11</value>
- </data>
- <data name=">>label3.Name" xml:space="preserve">
- <value>label3</value>
- </data>
- <data name=">>label3.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label3.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label3.ZOrder" xml:space="preserve">
- <value>12</value>
- </data>
- <data name=">>textBoxPublisher.Name" xml:space="preserve">
- <value>textBoxPublisher</value>
- </data>
- <data name=">>textBoxPublisher.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxPublisher.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxPublisher.ZOrder" xml:space="preserve">
- <value>13</value>
- </data>
- <data name=">>label2.Name" xml:space="preserve">
- <value>label2</value>
- </data>
- <data name=">>label2.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label2.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label2.ZOrder" xml:space="preserve">
- <value>14</value>
- </data>
- <data name=">>radioButtonTwo.Name" xml:space="preserve">
- <value>radioButtonTwo</value>
- </data>
- <data name=">>radioButtonTwo.Type" xml:space="preserve">
- <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>radioButtonTwo.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>radioButtonTwo.ZOrder" xml:space="preserve">
- <value>15</value>
- </data>
- <data name=">>radioButtonOne.Name" xml:space="preserve">
- <value>radioButtonOne</value>
- </data>
- <data name=">>radioButtonOne.Type" xml:space="preserve">
- <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>radioButtonOne.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>radioButtonOne.ZOrder" xml:space="preserve">
- <value>16</value>
- </data>
- <data name=">>textBoxName.Name" xml:space="preserve">
- <value>textBoxName</value>
- </data>
- <data name=">>textBoxName.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxName.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxName.ZOrder" xml:space="preserve">
- <value>17</value>
- </data>
- <data name=">>labelName.Name" xml:space="preserve">
- <value>labelName</value>
- </data>
- <data name=">>labelName.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>labelName.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>labelName.ZOrder" xml:space="preserve">
- <value>18</value>
- </data>
- <data name=">>labelID.Name" xml:space="preserve">
- <value>labelID</value>
- </data>
- <data name=">>labelID.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>labelID.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>labelID.ZOrder" xml:space="preserve">
- <value>19</value>
- </data>
- <data name="groupBoxOptions.Location" type="System.Drawing.Point, System.Drawing">
- <value>306, 27</value>
- </data>
- <data name="groupBoxOptions.Size" type="System.Drawing.Size, System.Drawing">
- <value>293, 529</value>
- </data>
- <data name="groupBoxOptions.TabIndex" type="System.Int32, mscorlib">
- <value>4</value>
- </data>
- <data name="groupBoxOptions.Text" xml:space="preserve">
- <value>Game options</value>
- </data>
- <data name=">>groupBoxOptions.Name" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>groupBoxOptions.Type" xml:space="preserve">
- <value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>groupBoxOptions.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>groupBoxOptions.ZOrder" xml:space="preserve">
- <value>7</value>
- </data>
- <data name="buttonShowGameGenieDatabase.Location" type="System.Drawing.Point, System.Drawing">
- <value>252, 286</value>
- </data>
- <data name="buttonShowGameGenieDatabase.Size" type="System.Drawing.Size, System.Drawing">
- <value>25, 20</value>
- </data>
- <data name="buttonShowGameGenieDatabase.TabIndex" type="System.Int32, mscorlib">
- <value>12</value>
- </data>
- <data name="buttonShowGameGenieDatabase.Text" xml:space="preserve">
- <value>+</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.Name" xml:space="preserve">
- <value>buttonShowGameGenieDatabase</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>buttonShowGameGenieDatabase.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="maskedTextBoxReleaseDate.Location" type="System.Drawing.Point, System.Drawing">
- <value>210, 154</value>
- </data>
- <data name="maskedTextBoxReleaseDate.Mask" xml:space="preserve">
- <value>0000-00-00</value>
- </data>
- <data name="maskedTextBoxReleaseDate.Size" type="System.Drawing.Size, System.Drawing">
- <value>65, 20</value>
- </data>
- <data name="maskedTextBoxReleaseDate.TabIndex" type="System.Int32, mscorlib">
- <value>6</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.Name" xml:space="preserve">
- <value>maskedTextBoxReleaseDate</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.Type" xml:space="preserve">
- <value>System.Windows.Forms.MaskedTextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>maskedTextBoxReleaseDate.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="label1.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label1.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 157</value>
- </data>
- <data name="label1.Size" type="System.Drawing.Size, System.Drawing">
- <value>150, 13</value>
- </data>
- <data name="label1.TabIndex" type="System.Int32, mscorlib">
- <value>5</value>
- </data>
- <data name="label1.Text" xml:space="preserve">
- <value>Release date (YYYY-MM-DD):</value>
- </data>
- <data name=">>label1.Name" xml:space="preserve">
- <value>label1</value>
- </data>
- <data name=">>label1.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label1.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label1.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name="textBoxGameGenie.Location" type="System.Drawing.Point, System.Drawing">
- <value>19, 286</value>
- </data>
- <data name="textBoxGameGenie.Size" type="System.Drawing.Size, System.Drawing">
- <value>227, 20</value>
- </data>
- <data name="textBoxGameGenie.TabIndex" type="System.Int32, mscorlib">
- <value>11</value>
- </data>
- <data name=">>textBoxGameGenie.Name" xml:space="preserve">
- <value>textBoxGameGenie</value>
- </data>
- <data name=">>textBoxGameGenie.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxGameGenie.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxGameGenie.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <data name="label7.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label7.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
- <value>NoControl</value>
- </data>
- <data name="label7.Location" type="System.Drawing.Point, System.Drawing">
- <value>16, 269</value>
- </data>
- <data name="label7.Size" type="System.Drawing.Size, System.Drawing">
- <value>194, 13</value>
- </data>
- <data name="label7.TabIndex" type="System.Int32, mscorlib">
- <value>17</value>
- </data>
- <data name="label7.Text" xml:space="preserve">
- <value>Game Genie codes (comma separated):</value>
- </data>
- <data name=">>label7.Name" xml:space="preserve">
- <value>label7</value>
- </data>
- <data name=">>label7.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label7.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label7.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <data name="label6.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 76</value>
- </data>
- <data name="label6.Size" type="System.Drawing.Size, System.Drawing">
- <value>82, 63</value>
- </data>
- <data name="label6.TabIndex" type="System.Int32, mscorlib">
- <value>16</value>
- </data>
- <data name="label6.Text" xml:space="preserve">
- <value>Max players:</value>
- </data>
- <data name="label6.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
- <value>MiddleLeft</value>
- </data>
- <data name=">>label6.Name" xml:space="preserve">
- <value>label6</value>
- </data>
- <data name=">>label6.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label6.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label6.ZOrder" xml:space="preserve">
- <value>5</value>
- </data>
- <data name="radioButtonTwoSim.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="radioButtonTwoSim.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
- <value>NoControl</value>
- </data>
- <data name="radioButtonTwoSim.Location" type="System.Drawing.Point, System.Drawing">
- <value>103, 122</value>
- </data>
- <data name="radioButtonTwoSim.Size" type="System.Drawing.Size, System.Drawing">
- <value>156, 17</value>
- </data>
- <data name="radioButtonTwoSim.TabIndex" type="System.Int32, mscorlib">
- <value>5</value>
- </data>
- <data name="radioButtonTwoSim.Text" xml:space="preserve">
- <value>Two players, simultaneously</value>
- </data>
- <data name=">>radioButtonTwoSim.Name" xml:space="preserve">
- <value>radioButtonTwoSim</value>
- </data>
- <data name=">>radioButtonTwoSim.Type" xml:space="preserve">
- <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>radioButtonTwoSim.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>radioButtonTwoSim.ZOrder" xml:space="preserve">
- <value>6</value>
- </data>
- <data name="buttonGoogle.Location" type="System.Drawing.Point, System.Drawing">
- <value>219, 427</value>
- </data>
- <data name="buttonGoogle.Size" type="System.Drawing.Size, System.Drawing">
- <value>61, 23</value>
- </data>
- <data name="buttonGoogle.TabIndex" type="System.Int32, mscorlib">
- <value>15</value>
- </data>
- <data name="buttonGoogle.Text" xml:space="preserve">
- <value>Google</value>
- </data>
- <data name=">>buttonGoogle.Name" xml:space="preserve">
- <value>buttonGoogle</value>
- </data>
- <data name=">>buttonGoogle.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonGoogle.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>buttonGoogle.ZOrder" xml:space="preserve">
- <value>7</value>
- </data>
- <data name="buttonBrowseImage.Location" type="System.Drawing.Point, System.Drawing">
- <value>219, 384</value>
- </data>
- <data name="buttonBrowseImage.Size" type="System.Drawing.Size, System.Drawing">
- <value>61, 23</value>
- </data>
- <data name="buttonBrowseImage.TabIndex" type="System.Int32, mscorlib">
- <value>13</value>
- </data>
- <data name="buttonBrowseImage.Text" xml:space="preserve">
- <value>Browse</value>
- </data>
- <data name=">>buttonBrowseImage.Name" xml:space="preserve">
- <value>buttonBrowseImage</value>
- </data>
- <data name=">>buttonBrowseImage.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonBrowseImage.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>buttonBrowseImage.ZOrder" xml:space="preserve">
- <value>8</value>
- </data>
- <data name="pictureBoxArt.Location" type="System.Drawing.Point, System.Drawing">
- <value>71, 316</value>
- </data>
- <data name="pictureBoxArt.Size" type="System.Drawing.Size, System.Drawing">
- <value>140, 204</value>
- </data>
- <data name="pictureBoxArt.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
- <value>Zoom</value>
- </data>
- <data name="pictureBoxArt.TabIndex" type="System.Int32, mscorlib">
- <value>12</value>
- </data>
- <data name=">>pictureBoxArt.Name" xml:space="preserve">
- <value>pictureBoxArt</value>
- </data>
- <data name=">>pictureBoxArt.Type" xml:space="preserve">
- <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>pictureBoxArt.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>pictureBoxArt.ZOrder" xml:space="preserve">
- <value>9</value>
- </data>
- <data name="label4.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 316</value>
- </data>
- <data name="label4.Size" type="System.Drawing.Size, System.Drawing">
- <value>53, 204</value>
- </data>
- <data name="label4.TabIndex" type="System.Int32, mscorlib">
- <value>11</value>
- </data>
- <data name="label4.Text" xml:space="preserve">
- <value>Box art:</value>
- </data>
- <data name="label4.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
- <value>MiddleCenter</value>
- </data>
- <data name=">>label4.Name" xml:space="preserve">
- <value>label4</value>
- </data>
- <data name=">>label4.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label4.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label4.ZOrder" xml:space="preserve">
- <value>10</value>
- </data>
- <data name="textBoxArguments.Location" type="System.Drawing.Point, System.Drawing">
- <value>18, 237</value>
- </data>
- <data name="textBoxArguments.Size" type="System.Drawing.Size, System.Drawing">
- <value>257, 20</value>
- </data>
- <data name="textBoxArguments.TabIndex" type="System.Int32, mscorlib">
- <value>10</value>
- </data>
- <data name=">>textBoxArguments.Name" xml:space="preserve">
- <value>textBoxArguments</value>
- </data>
- <data name=">>textBoxArguments.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxArguments.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxArguments.ZOrder" xml:space="preserve">
- <value>11</value>
- </data>
- <data name="label3.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label3.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 220</value>
- </data>
- <data name="label3.Size" type="System.Drawing.Size, System.Drawing">
- <value>253, 13</value>
- </data>
- <data name="label3.TabIndex" type="System.Int32, mscorlib">
- <value>9</value>
- </data>
- <data name="label3.Text" xml:space="preserve">
- <value>Command line arguments (for advanced users only!):</value>
- </data>
- <data name=">>label3.Name" xml:space="preserve">
- <value>label3</value>
- </data>
- <data name=">>label3.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label3.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label3.ZOrder" xml:space="preserve">
- <value>12</value>
- </data>
- <data name="textBoxPublisher.Location" type="System.Drawing.Point, System.Drawing">
- <value>71, 186</value>
- </data>
- <data name="textBoxPublisher.Size" type="System.Drawing.Size, System.Drawing">
- <value>204, 20</value>
- </data>
- <data name="textBoxPublisher.TabIndex" type="System.Int32, mscorlib">
- <value>8</value>
- </data>
- <data name=">>textBoxPublisher.Name" xml:space="preserve">
- <value>textBoxPublisher</value>
- </data>
- <data name=">>textBoxPublisher.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxPublisher.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxPublisher.ZOrder" xml:space="preserve">
- <value>13</value>
- </data>
- <data name="label2.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label2.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 189</value>
- </data>
- <data name="label2.Size" type="System.Drawing.Size, System.Drawing">
- <value>53, 13</value>
- </data>
- <data name="label2.TabIndex" type="System.Int32, mscorlib">
- <value>7</value>
- </data>
- <data name="label2.Text" xml:space="preserve">
- <value>Publisher:</value>
- </data>
- <data name=">>label2.Name" xml:space="preserve">
- <value>label2</value>
- </data>
- <data name=">>label2.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label2.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>label2.ZOrder" xml:space="preserve">
- <value>14</value>
- </data>
- <data name="radioButtonTwo.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="radioButtonTwo.Location" type="System.Drawing.Point, System.Drawing">
- <value>103, 99</value>
- </data>
- <data name="radioButtonTwo.Size" type="System.Drawing.Size, System.Drawing">
- <value>174, 17</value>
- </data>
- <data name="radioButtonTwo.TabIndex" type="System.Int32, mscorlib">
- <value>4</value>
- </data>
- <data name="radioButtonTwo.Text" xml:space="preserve">
- <value>Two players, not simultaneously</value>
- </data>
- <data name=">>radioButtonTwo.Name" xml:space="preserve">
- <value>radioButtonTwo</value>
- </data>
- <data name=">>radioButtonTwo.Type" xml:space="preserve">
- <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>radioButtonTwo.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>radioButtonTwo.ZOrder" xml:space="preserve">
- <value>15</value>
- </data>
- <data name="radioButtonOne.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="radioButtonOne.Location" type="System.Drawing.Point, System.Drawing">
- <value>103, 76</value>
- </data>
- <data name="radioButtonOne.Size" type="System.Drawing.Size, System.Drawing">
- <value>76, 17</value>
- </data>
- <data name="radioButtonOne.TabIndex" type="System.Int32, mscorlib">
- <value>3</value>
- </data>
- <data name="radioButtonOne.Text" xml:space="preserve">
- <value>One player</value>
- </data>
- <data name=">>radioButtonOne.Name" xml:space="preserve">
- <value>radioButtonOne</value>
- </data>
- <data name=">>radioButtonOne.Type" xml:space="preserve">
- <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>radioButtonOne.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>radioButtonOne.ZOrder" xml:space="preserve">
- <value>16</value>
- </data>
- <data name="textBoxName.Location" type="System.Drawing.Point, System.Drawing">
- <value>59, 46</value>
- </data>
- <data name="textBoxName.Size" type="System.Drawing.Size, System.Drawing">
- <value>216, 20</value>
- </data>
- <data name="textBoxName.TabIndex" type="System.Int32, mscorlib">
- <value>2</value>
- </data>
- <data name=">>textBoxName.Name" xml:space="preserve">
- <value>textBoxName</value>
- </data>
- <data name=">>textBoxName.Type" xml:space="preserve">
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>textBoxName.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>textBoxName.ZOrder" xml:space="preserve">
- <value>17</value>
- </data>
- <data name="labelName.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="labelName.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 49</value>
- </data>
- <data name="labelName.Size" type="System.Drawing.Size, System.Drawing">
- <value>38, 13</value>
- </data>
- <data name="labelName.TabIndex" type="System.Int32, mscorlib">
- <value>1</value>
- </data>
- <data name="labelName.Text" xml:space="preserve">
- <value>Name:</value>
- </data>
- <data name=">>labelName.Name" xml:space="preserve">
- <value>labelName</value>
- </data>
- <data name=">>labelName.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>labelName.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>labelName.ZOrder" xml:space="preserve">
- <value>18</value>
- </data>
- <data name="labelID.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="labelID.Location" type="System.Drawing.Point, System.Drawing">
- <value>15, 21</value>
- </data>
- <data name="labelID.Size" type="System.Drawing.Size, System.Drawing">
- <value>21, 13</value>
- </data>
- <data name="labelID.TabIndex" type="System.Int32, mscorlib">
- <value>0</value>
- </data>
- <data name="labelID.Text" xml:space="preserve">
- <value>ID:</value>
- </data>
- <data name=">>labelID.Name" xml:space="preserve">
- <value>labelID</value>
- </data>
- <data name=">>labelID.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>labelID.Parent" xml:space="preserve">
- <value>groupBoxOptions</value>
- </data>
- <data name=">>labelID.ZOrder" xml:space="preserve">
- <value>19</value>
- </data>
- <data name="label5.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name="label5.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label5.Location" type="System.Drawing.Point, System.Drawing">
- <value>12, 33</value>
- </data>
- <data name="label5.Size" type="System.Drawing.Size, System.Drawing">
- <value>74, 13</value>
- </data>
- <data name="label5.TabIndex" type="System.Int32, mscorlib">
- <value>4</value>
- </data>
- <data name="label5.Text" xml:space="preserve">
- <value>Select games:</value>
- </data>
- <data name=">>label5.Name" xml:space="preserve">
- <value>label5</value>
- </data>
- <data name=">>label5.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>label5.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>label5.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <data name="buttonAddGames.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name="buttonAddGames.Location" type="System.Drawing.Point, System.Drawing">
- <value>12, 568</value>
- </data>
- <data name="buttonAddGames.Size" type="System.Drawing.Size, System.Drawing">
- <value>282, 38</value>
- </data>
- <data name="buttonAddGames.TabIndex" type="System.Int32, mscorlib">
- <value>5</value>
- </data>
- <data name="buttonAddGames.Text" xml:space="preserve">
- <value>Add more games</value>
- </data>
- <data name=">>buttonAddGames.Name" xml:space="preserve">
- <value>buttonAddGames</value>
- </data>
- <data name=">>buttonAddGames.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonAddGames.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>buttonAddGames.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>109, 17</value>
- </metadata>
- <data name="toolStripStatusConnectionIcon.AutoSize" type="System.Boolean, mscorlib">
- <value>False</value>
- </data>
- <data name="toolStripStatusConnectionIcon.Size" type="System.Drawing.Size, System.Drawing">
- <value>16, 17</value>
- </data>
- <data name="toolStripStatusLabelSelected.AutoSize" type="System.Boolean, mscorlib">
- <value>False</value>
- </data>
- <data name="toolStripStatusLabelSelected.Size" type="System.Drawing.Size, System.Drawing">
- <value>195, 17</value>
- </data>
- <data name="toolStripStatusLabelSize.AutoSize" type="System.Boolean, mscorlib">
- <value>False</value>
- </data>
- <data name="toolStripStatusLabelSize.Size" type="System.Drawing.Size, System.Drawing">
- <value>195, 17</value>
- </data>
- <data name="toolStripProgressBar.Size" type="System.Drawing.Size, System.Drawing">
- <value>195, 16</value>
- </data>
- <data name="statusStrip.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 615</value>
- </data>
- <data name="statusStrip.Size" type="System.Drawing.Size, System.Drawing">
- <value>609, 22</value>
- </data>
- <data name="statusStrip.TabIndex" type="System.Int32, mscorlib">
- <value>6</value>
- </data>
- <data name="statusStrip.Text" xml:space="preserve">
- <value>statusStrip1</value>
- </data>
- <data name=">>statusStrip.Name" xml:space="preserve">
- <value>statusStrip</value>
- </data>
- <data name=">>statusStrip.Type" xml:space="preserve">
- <value>System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>statusStrip.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>statusStrip.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <metadata name="openFileDialogNes.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>202, 17</value>
- </metadata>
- <data name="openFileDialogNes.Title" xml:space="preserve">
- <value>Select NES file(s)</value>
- </data>
- <metadata name="contextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>340, 17</value>
- </metadata>
- <data name="contextMenuStrip.Size" type="System.Drawing.Size, System.Drawing">
- <value>141, 70</value>
- </data>
- <data name=">>contextMenuStrip.Name" xml:space="preserve">
- <value>contextMenuStrip</value>
- </data>
- <data name=">>contextMenuStrip.Type" xml:space="preserve">
- <value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="selectAllToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>140, 22</value>
- </data>
- <data name="selectAllToolStripMenuItem.Text" xml:space="preserve">
- <value>Select all</value>
- </data>
- <data name="unselectAllToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>140, 22</value>
- </data>
- <data name="unselectAllToolStripMenuItem.Text" xml:space="preserve">
- <value>Unselect all</value>
- </data>
- <data name="deleteGameToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
- <value>140, 22</value>
- </data>
- <data name="deleteGameToolStripMenuItem.Text" xml:space="preserve">
- <value>Delete game</value>
- </data>
- <metadata name="openFileDialogImage.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>624, 17</value>
- </metadata>
- <data name="openFileDialogImage.Filter" xml:space="preserve">
- <value>Images (*.bmp;*.png;*.jpg;*.jpeg;*.gif)|*.bmp;*.png;*.jpg;*.jpeg;*.gif|All files|*.*</value>
- </data>
- <data name="openFileDialogImage.Title" xml:space="preserve">
- <value>Select cover for game</value>
- </data>
- <data name="buttonStart.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name="buttonStart.Location" type="System.Drawing.Point, System.Drawing">
- <value>306, 568</value>
- </data>
- <data name="buttonStart.Size" type="System.Drawing.Size, System.Drawing">
- <value>293, 38</value>
- </data>
- <data name="buttonStart.TabIndex" type="System.Int32, mscorlib">
- <value>6</value>
- </data>
- <data name="buttonStart.Text" xml:space="preserve">
- <value>Synchronize selected games with NES Mini</value>
- </data>
- <data name=">>buttonStart.Name" xml:space="preserve">
- <value>buttonStart</value>
- </data>
- <data name=">>buttonStart.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>buttonStart.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>buttonStart.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="groupBoxDefaultGames.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>None</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.Name" xml:space="preserve">
- <value>checkedListBoxDefaultGames</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.Type" xml:space="preserve">
- <value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.Parent" xml:space="preserve">
- <value>groupBoxDefaultGames</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="groupBoxDefaultGames.Location" type="System.Drawing.Point, System.Drawing">
- <value>306, 27</value>
- </data>
- <data name="groupBoxDefaultGames.Size" type="System.Drawing.Size, System.Drawing">
- <value>293, 529</value>
- </data>
- <data name="groupBoxDefaultGames.TabIndex" type="System.Int32, mscorlib">
- <value>3</value>
- </data>
- <data name="groupBoxDefaultGames.Text" xml:space="preserve">
- <value>You can hide some default games</value>
- </data>
- <data name="groupBoxDefaultGames.Visible" type="System.Boolean, mscorlib">
- <value>False</value>
- </data>
- <data name=">>groupBoxDefaultGames.Name" xml:space="preserve">
- <value>groupBoxDefaultGames</value>
- </data>
- <data name=">>groupBoxDefaultGames.Type" xml:space="preserve">
- <value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>groupBoxDefaultGames.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name=">>groupBoxDefaultGames.ZOrder" xml:space="preserve">
- <value>8</value>
- </data>
- <data name="checkedListBoxDefaultGames.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>Top, Bottom, Left, Right</value>
- </data>
- <data name="checkedListBoxDefaultGames.Location" type="System.Drawing.Point, System.Drawing">
- <value>5, 49</value>
- </data>
- <data name="checkedListBoxDefaultGames.Size" type="System.Drawing.Size, System.Drawing">
- <value>282, 454</value>
- </data>
- <data name="checkedListBoxDefaultGames.TabIndex" type="System.Int32, mscorlib">
- <value>3</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.Name" xml:space="preserve">
- <value>checkedListBoxDefaultGames</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.Type" xml:space="preserve">
- <value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.Parent" xml:space="preserve">
- <value>groupBoxDefaultGames</value>
- </data>
- <data name=">>checkedListBoxDefaultGames.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <metadata name="timerCalculateGames.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>473, 17</value>
- </metadata>
- <metadata name="timerConnectionCheck.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>775, 17</value>
- </metadata>
- <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>149</value>
- </metadata>
- <metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
- <value>6, 13</value>
- </data>
- <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
- <value>609, 637</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAEAgIAAAAEAIAAoCAEAFgAAACgAAACAAAAAAAEAAAEAIAAAAAAAAAABABILAAASCwAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiAAAAfQAA
- AMIAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADCAAAAfQAAACIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAbAAAAOkAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA6QAAAGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEAAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AIEAAAAAAAAAAAAAAAAAAABdAAAA/wAAAP8AAAD/AAAA/wAAAP8GBgX/Dg0M/w4NDP8ODQz/Dg0M/w4N
- DP8ODQz/Dg0M/w4NDP8ODQz/Dg0M/w4NDP8ODQz/Dg0M/w4NDP8ODQz/Dg0M/w4NDP8ODQ3/Dg0N/w4N
- Df8ODQ3/Dg4N/w8ODf8PDg3/Dw4N/w8ODv8PDg7/Dw4O/w8ODv8PDg7/Dw8O/xAPDv8QDw7/EA8P/xAP
- D/8QDw//EA8P/xAPD/8QDw//EBAP/xAQD/8REA//ERAQ/xEQEP8REBD/ERAQ/xEQEP8RERD/EREQ/xER
- EP8SERH/EhER/xIREf8SERH/EhER/xIREf8SERH/EhER/xIREf8SERH/EhER/xIREf8SERH/ERER/xER
- EP8RERD/EREQ/xEQEP8REBD/ERAQ/xEQEP8REBD/ERAQ/xEQEP8REA//EBAP/xAQD/8QEA//EA8P/xAP
- D/8QDw//EA8P/xAPD/8QDw//EA8O/xAPDv8PDw7/Dw8O/w8ODv8PDg7/Dw4O/w8ODv8PDg7/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8ODg3/Dg0N/w4NDf8ODQ3/Dg0N/w4NDf8ODQ3/Dg0N/w4NDf8ODQ3/Dg0N/w4N
- Df8ODQ3/Dg4N/wYGBv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAF0AAAAAAAAAEQAAAN0AAAD/AAAA/wAA
- AP8ODQz/WVFN/4d9d/+PhH7/joR9/46Eff+OhH3/joR9/46Eff+OhH3/joR9/46Eff+OhH3/joR9/46E
- ff+OhH3/joR9/4+Efv+QhX//kYeB/5OIgv+UiYT/lYuE/5aMhv+WjYf/mI6J/5mPiv+akIv/nJKN/52T
- jf+elY//n5aQ/6CWkv+hmJP/opmV/6Oalv+lnJf/pp2Y/6eemf+ooJv/qaCd/6qhnv+ro5//rKSg/62m
- of+vp6P/sKik/7Gppv+yqqf/s6yo/7Stqf+1rqv/trCs/7ixrv+5sq//urOw/7y0sv+8trL/vbe0/723
- tP+8trP/vLWy/7q0sv+6s7D/ubKv/7iyrv+3sa3/tq+r/7Wuqv+0ran/s6yo/7KrqP+yqqf/sail/7Co
- pP+vqKP/rqai/62lof+spKD/q6Of/6qinv+poZ3/qKCb/6ifmv+mnpn/pZ2Y/6Wcl/+jm5b/opqV/6GZ
- lP+gl5P/oJaS/5+Wkf+elY//nZSO/5yTjf+bkoz/mpGL/5mQiv+Yjon/l42I/5aNhv+WjIX/lYuE/5SK
- hP+TiYP/k4mD/5OJg/+TiYP/k4mD/5OJg/+TiYP/k4mD/5OJg/+TioP/jIJ8/1tVUf8ODQ3/AAAA/wAA
- AP8AAAD/AAAA3QAAABEAAABmAAAA/wAAAP8AAAD/CwsK/3lxa/+mmZL/oJOM/5+Si/+fkov/n5KL/5+S
- i/+fkov/n5KL/5+Si/+fkov/n5KL/5+Si/+fkov/n5KL/5+Si/+fkov/oJOM/6GUjf+ilo//pJeQ/6WY
- kv+mm5P/p5yV/6idl/+qn5n/q6Ca/6yhm/+uo53/r6Se/7CmoP+xp6H/sqij/7SqpP+1q6b/tqyn/7iu
- qf+6r6r/u7Cr/7yyrf++s6//v7Sw/8C3sf/BuLT/wrq1/8S7t//Fvbj/xr66/8i/u//Jwb3/ysK+/8vD
- wP/MxcH/zsbD/8/IxP/QycX/0srH/9PMyP/Uzcr/1M3K/9PMyf/Sy8j/0crH/9DJxf/PyMT/zsfD/83G
- wv/MxMD/y8O//8rCvv/Jwb3/yMC8/8e/u//Gvbn/xb24/8S8t//Durb/wrm1/8G4tP/At7H/v7Ww/760
- r/+8sq3/vLGs/7qwq/+4r6r/uK6p/7atp/+1rKb/tKul/7OppP+yqKP/saei/7CmoP+vpZ//rqSe/62j
- nP+sopv/q6Ga/6qfmf+pnpj/qJ2V/6eclP+mm5P/pZqS/6SYkf+kmJH/pJiR/6SYkf+kmJH/pJiR/6SY
- kf+kmJH/pJiR/6SYkf+lmZL/q5+Y/351cP8LCwr/AAAA/wAAAP8AAAD/AAAAZgAAANsAAAD/AAAA/wAA
- AP9JQ0D/pJeQ/6KWkP+vpZ7/r6Wf/6+lnv+vpZ7/r6We/6+lnv+vpZ7/r6We/6+lnv+vpZ7/r6We/6+l
- nv+vpZ7/r6We/6+knv+wpZ//sKag/7Goof+zqKL/tKmk/7Wrpf+1rKb/tq2n/7iuqf+5r6n/urCq/7ux
- rP+8sq3/vbSu/721r/++tbH/wLey/8G4s//CubT/w7q2/8S7tv/FvLf/xr65/8e+u//Iv7v/ycG8/8rC
- vv/Kw7//zMTA/83Gwf/Ox8P/z8fD/9DJxf/Rysb/0srI/9PMyP/Uzcr/1c/L/9bPzP/X0M3/2NLO/9nT
- 0P/Z09D/2NLP/9fRzv/X0M3/1s/L/9XPy//Uzsr/083J/9LLyP/Sysf/0crG/9DJxf/PyMT/z8fD/87G
- wv/NxsH/zMXA/8vDv//Kwr//ysK+/8nBvP/IwLv/x7+6/8a9uf/Gvbj/xLy3/8O7tv/Durb/wrq0/8G5
- s//AuLP/v7ay/761sf+9tbD/vbSu/7yzrv+7sq3/urGr/7qxqv+5sKn/uK6p/7etqP+2rab/taym/7Wr
- pf+0qqT/s6mj/7Opo/+zqaP/s6mj/7Opo/+zqaP/s6mj/7Opo/+zqqP/tKqk/7OppP+nnJb/qZ2W/0tG
- Q/8AAAD/AAAA/wAAAP8AAADYAAAA/wAAAP8AAAD/AAAA/3BoY/+5sKn/x763/8G3rv+5rqT/uK2j/7it
- o/+4raP/uK2j/7ito/+4raP/uK2j/7mto/+5raP/ua2j/7mtpP+5rqT/ua6k/7mupP+5rqT/ua6k/7mu
- pP+6rqX/uq+l/7qvpf+6r6X/uq+l/7qvpf+6r6X/u6+m/7uvpv+7sKb/u7Cm/7uwpv+7sKb/u7Cm/7uw
- p/+8sKf/vLGn/7yxp/+8saf/vLGn/7yxp/+8saj/vLGo/7yyqP+8sqj/vbKo/72yqP+9sqj/vbKp/72y
- qf+9sqn/vbOp/76zqf++s6n/vrOp/76zqv++s6r/vrOq/760qv++tKr/vrSq/760qv++tKr/vrOq/76z
- qv++s6r/vrOp/76zqf++s6n/vrOp/72zqf+9sqn/vbKp/72yqf+9sqj/vbKo/72yqP+9sqj/vLGo/7yx
- qP+8saf/vLGn/7yxp/+8saf/vLGn/7ywp/+7sKf/u7Cm/7uwpv+7sKb/u7Cm/7uwpv+7sKb/u7Cm/7uv
- pv+6r6X/uq+l/7qvpf+6r6X/uq+l/7qvpf+6rqX/uq6k/7mupP+5rqT/ua6k/7mupP+5rqT/ua6k/7mu
- pP+5rqT/ua2k/7mto/+5rqT/wriv/8nAuP+9tK3/dGxn/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/ioJ9/7yxpv+dkIb/mo6F/52QiP+ekYn/n5KK/6CUi/+hlYz/opaO/6KXj/+jl5D/pZmR/6aa
- kv+nm5P/qJyV/6mdlv+pnpf/qp+Y/6ugmf+topr/rqOb/6+jnf+wpZ7/sKWf/7GnoP+yqKH/s6mi/7Sq
- o/+1q6X/tqyl/7etpv+4rqj/ua+p/7qwqv+7saz/vLKs/72zrv++ta//vraw/8C3sf/BuLL/wriz/8O6
- tP/Eu7X/xLy2/8W9uP/Gvrn/x7+6/8nAu//Jwbz/ysO9/8vEv//MxcD/zcbB/87Gwv/Px8P/0MnE/9HK
- xf/Ry8f/08zI/9TNyf/Vzsr/1s/K/9XOyv/Uzcn/0szI/9LLxv/RycX/0MjE/8/Hw//NxsH/zMXB/8zE
- wP/Lw77/ysK9/8nBvP/Iv7r/x7+6/8a+uP/FvLf/xLu2/8O6tf/CubP/wbiz/8C3sf+/trD/vrWv/720
- rf+8s6z/u7Ks/7qxqv+5sKn/uK+o/7etpv+2rKX/taul/7Sqo/+zqaL/sqih/7GnoP+wpp//r6Se/66j
- nP+to5v/rKGa/6ugmf+qn5j/qZ6X/6mdlv+onJT/ppuT/6Wakv+kmZH/o5eQ/6KWj/+glIv/oZSK/72x
- qP+MhYD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wICAv+If3j/oJKJ/56Tjf+flI3/oJSN/6GV
- j/+il5D/o5iR/6SZkv+lmpT/p5uV/6iclv+qn5n/q6Ca/6yhm/+to53/rqSe/6+ln/+wpqH/saei/7Op
- o/+0qqT/taum/7asp/+3raj/uK+p/7mwq/+6saz/vLKu/721sP++trH/v7ey/8G4tP/CubX/w7q2/8S8
- uP/Fvbn/xr66/8fAvP/Iwb3/ysK+/8vDv//MxMD/zcbC/87Hw//PyMT/0MnH/9HKyP/Sy8n/1M7L/9TP
- zP/V0c3/2NLP/9nT0P/a1NH/29XT/9zW1P/d2NX/3tnW/9/a2P/h29n/4tza/+Pd2//k39z/497b/+Lc
- 2v/g29n/39rX/97Y1v/d19X/3NbT/9rV0v/Z09H/2dLQ/9fRzv/W0M3/1c/L/9TNyv/TzMn/0svH/9DJ
- xv/PyMX/zsfE/83Gwv/MxcH/y8O//8rCvv/Jwb3/xsC7/8W+uv/Evbn/w7y3/8K7tv/BurX/v7iz/763
- sv+9trH/vLOv/7uyrv+6sa3/ubCr/7ivqv+2ran/taym/7Srpv+zqaX/sqik/7Gnof+wpqH/r6Wg/66k
- nf+sopz/q6Gb/6qgmf+pnpj/qJ2X/6aclv+lm5T/pJiO/4mAef8BAQL/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AQEA/3huZ/+glI3/oJWO/62knv+1q6b/tayn/7Wtp/+2raj/t66o/7ivqv+4r6r/ubCr/7qx
- rP+7sq3/u7Kt/7yzr/+9tK//vbWw/762sf+/trL/wLiz/8G4tP/CubX/wrq1/8O6tv/EvLf/xLy4/8W9
- uf/Gvrr/xr+7/8fAvP/Iwb3/ycK+/8rDv//Lw8D/zMXB/8zGwv/NxsP/zsjE/8/Ixf/Qycb/0crH/9LL
- yP/SzMn/083K/9TOy//Vz8z/1tDN/9fRzv/Y0s//2NPQ/9nU0f/b1dP/3NbT/93X1P/d2Nb/3tnX/9/b
- 2P/g29n/4dza/+Pd2//k3tz/5N/d/+Xh3v/k4N3/497c/+Hd2//g3Nn/39rY/97Y1//d2NX/29bT/9rV
- 0//a1NH/2NLQ/9fRzv/W0M3/1c7L/9TNyv/TzMn/0cvH/9DJxv/PyMX/zsfD/83Gwv/LxMD/ysO//8nC
- vv/Iwbz/x7+7/8a+uv/Evbj/w7u2/8K6tf/AuLP/v7ey/762sf+9tK//vLOu/7uyrP+5sKv/uK+p/7at
- qP+1rKf/tKul/7OppP+yqKP/sKeh/6+ln/+upJ7/raOc/6uhm/+qoJr/qZ+Y/6edl/+mnJX/pZqT/6Sa
- k/+onZb/enFp/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/dGtl/7Opo//f3Nn/8vDv//Px
- 8f/y8PD/8vDv//Hw7//w7+7/8O7t/+/t7f/w7e3/7+3s/+7s6//u7Ov/7evq/+3r6v/t6+r/7erp/+3q
- 6f/s6ej/7Ono/+zp6P/r6Of/6+jn/+vo5//q6Of/6ujn/+ro5v/q5+b/6ufm/+rn5v/q5+X/6ufl/+rn
- 5f/q5uX/6ubl/+rm5f/q5uX/6ebl/+rm5f/q5uX/6ufl/+rm5f/q5uX/6ufl/+rn5f/q5+b/6ufm/+vn
- 5v/r5+b/6+jm/+vo5//r6Of/6+jn/+vp6P/s6ej/7Ono/+zp6P/t6en/7erp/+7q6f/u6+n/7uvq/+7r
- 6f/t6en/6+no/+vo5v/q5ub/6ebl/+nm4//o5OP/5+Pi/+fj4f/l4uD/5eHf/+Tg3v/j393/4t7c/+Ld
- 2//g3Nn/39rZ/9/Z2P/e2db/3djW/9vW1f/b1tP/2tXS/9nT0P/Y0tD/19HO/9XQzf/Vz8z/1M7L/9LN
- yv/SzMj/0MrH/8/Jxv/PyMX/zsfE/8zGwv/MxcH/ysTA/8nCvv/Iwb3/x8C8/8a+u//Fvrn/xLy4/8O7
- t//CurX/wLi0/7+3s/++trH/vbWw/7yzr/+4sKr/q6Gb/6eclf97c23/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP+De3f/7uvq//Tz8//x7+//8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du
- 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du
- 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du
- 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du
- 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du
- 7v/w7u7/8O7u//Du7v/w7u//8O7v//Dv7//w7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv
- 7//x7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv
- 7//x7/D/8e/w//Hv8P/x8PD/8fDw//Hw8P/x8PD/8fDw//Lw8P/y8PD/8vDw//Lw8P/y8PD/8vDw//Du
- 7v/l4uD/wLey/3pybP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/6ajof/49/f/8O7u//Du
- 7v/w7u7/8/Hx//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j2
- 9v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j2
- 9v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//f19f/08/P/9PPz//Tz8//08/P/9PPz//Tz
- 8//08/P/9PPz//Tz8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fPz//Xz
- 8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fP0//f19f/39fX/9/X1//f1
- 9f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f1
- 9f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/29fX/9vX1//b1
- 9f/29PX/9vT1//b09f/29PX/9vT0//Lw8P/w7u7/8O7u//Lw8P/x7u3/i4WB/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/trS0//b09P/w7u7/8O7u//Tx8f/b2dn/oJ6e/5aUlP+WlZX/lpWV/5aV
- lf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aV
- lf+WlZX/lpWV/5aVlf+XlZX/l5WV/5eWlv+Xlpb/l5aW/5iWlv+Ylpb/mJaW/5iXl/+Yl5f/mJeX/5mY
- l/+Xlpb/paKh/7+5tv+/ubb/vrm1/765tv++uLX/vri1/764tf+9uLX/vbe1/723tP+8t7T/vLe0/7y3
- tP+8t7T/vLaz/7u2s/+7trP/u7az/7u2s/+7trP/urWz/7q1sv+6tbL/urSy/7m0sv+5tLH/ubSx/7m0
- sf+5tLH/ubSx/7m0sf+1sa7/oJ6e/6Cenv+gnp7/oZ+e/6Gfnv+hn57/oZ+f/6Gfn/+in5//oqCf/6Kg
- n/+ioJ//o6Cf/6OhoP+joaD/o6Gg/6OhoP+koaH/pKGh/6Siof+koqH/pKKh/6Siof+loqL/paOi/6Wj
- ov+lo6L/pqOi/6akov+mpKL/pqSj/6ako/+npKP/p6Sk/6elpP+npaT/p6Wk/6eko/+vrav/393c//Pw
- 8f/w7u7/8O7u//j29v+pp6b/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+2tLT/9vT0//Du
- 7v/z8fH/19XV/ykoKP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8iHhv/al5V/2hbU/9nXFP/Z1pS/2Za
- Uv9mWVH/ZVlR/2RYUP9kWFD/Y1dP/2JWT/9iVk7/YVVO/2FVTf9gVE3/X1RM/19TTP9eU0v/XlJL/1xS
- Sv9cUUr/W1FJ/1tQSf9aUEj/WU9I/1lOR/9YTkf/WE1G/1dNRv9XTUb/WE5H/01EPv8UEhD/FBIR/xUT
- Ef8VExH/FhQS/xYUE/8XFRP/FxUT/xgWFP8YFhT/GRcV/xoYFf8aGBb/GxkW/xwZF/8cGRf/HRoY/x4b
- GP8eGxn/HxwZ/x8cGv8fHRr/IB4b/yEeHP8hHxz/Ih8d/yIfHf8jIB7/JCEe/yQhHv8lIh//JiIf/yYj
- IP8nIyH/JyQh/yckIf8oJSL/KSUi/yckIf9QTUv/3NnZ//Lw8P/w7u7/9vT0/7a0tP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/7a0tP/29PT/8O7u//b09P+hn5//AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wEBAf8BAQH/AgIC/wICAv8DAwL/BAMD/wQEA/8EBAT/BQUE/wUFBf8GBgb/BwYG/wcH
- Bv8IBwf/BQQE/ykkIf9vYlr/bGFY/2xgWP9rX1f/al9X/2peVv9pXlb/aV1V/2hdVf9nXFT/Z1xU/2Zb
- U/9mW1P/ZVpS/2RZUv9kWVH/Y1lR/2NYUP9iV1D/YldQ/2FWT/9gVk//YFVO/19VTf9fVE3/XlRN/11T
- TP9dU0z/XFJL/1xSS/9dU0z/UklD/xsZGP8cGhj/HBoY/x0bGf8dGxn/Hhwa/x4cGv8fHBv/Hx0b/yAe
- HP8hHhz/IR8d/yIfHf8iIB7/IyEb/yQhG/8kIR3/JSIg/yUiIP8lIyD/JiMh/yYkIf8nJSL/KCUi/ygl
- I/8pJiT/KSYk/yonJP8rJyX/Kygk/y0pIf8tKiL/LSkn/y0qJ/8uKij/Liso/y8sKf8vLCn/MC0q/ykl
- Iv+wraz/9fPz//Du7v/29PT/trS0/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/trS0//bz
- 8//w7e3/9vPz/52bm/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8BAQH/AQEB/wIBAf8CAgL/AwMC/wMD
- A/8EBAP/BAQE/wUEBP8FBQX/BgYF/wcGBv8HBwb/CAcH/wgIB/8GBgX/IyAd/25iWv9uYln/bWFZ/2xg
- WP9sYFj/a19X/2pfV/9qXlb/aV5W/2hdVf9oXVX/Z1xU/2dcVP9mW1T/ZVtT/2VaU/9kWlL/ZFlS/2NZ
- Uf9jWFH/YldP/2FXUP9hV0//YFZO/2BVTf9fVU7/XlRM/15TTP9dUkv/XVJL/15UTP9TSkT/HBoY/xwa
- GP8dGxn/HRsZ/x4cGv8eHBr/Hxwb/x8dG/8gHhz/IB4c/yEfHf8iHx3/IiAe/yQhG/8XFl7/ExF9/yAe
- N/8mIx3/JSMg/yYjIf8mJCH/JyQi/yglIv8oJSP/KSYj/ykmJP8qJyT/Kycl/ywpIv8mIz3/HRtn/x0b
- Z/8sKSz/Lion/y4rKP8vKyj/Lywp/zAtKv8wLSr/LCkl/66qqf/08vL/8O3t//bz8/+2tLT/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+joqL/9/X1/+/t7f/18/P/nJua/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wEBAf8CAQH/AgIC/wMDAv8DAwP/BAQD/wQEBP8FBAT/BQUF/wYGBf8GBgb/BwcG/wgH
- B/8IBwf/CQgI/wgIB/8VExL/W1JL/2leVv9nXFT/Z1xU/2dbU/9mW1P/ZlpS/2VaU/9lWVL/ZFlS/2NY
- Uf9jV1H/YldQ/2JXUP9hV0//YFZP/2BWTv9fVU7/X1VN/15UTf9dVEz/XVNM/11TTP9cUkv/XFJL/1tR
- Sv9bUUr/WlBJ/1pQSf9ZT0n/WlBJ/0A5NP8bGRf/HRoZ/x0bGf8eHBr/Hhwa/x8cG/8fHRv/IB0b/yAe
- HP8hHx3/Ih8d/yIgHv8jIB7/JCIZ/xAPif8IB7T/GxlS/yYkG/8mIyH/JiQh/yckIv8nJSL/KCUj/ykm
- I/8pJiT/Kick/yonJf8rKCX/LCgk/yonL/8NDKn/FhSG/y4rI/8uKyj/Lyso/y8sKf8wLSr/MC0q/zEt
- Kv8tKSb/raqo//Px8f/v7e3/9/X1/6Oiov8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/5ya
- mv/39fX/7+3t//Xy8v+bmZj/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AgEB/wICAv8DAwL/BAMD/wQE
- A/8EBAT/BQUE/wUFBf8GBgX/BwYG/wcHBv8IBwf/CAgH/wkICP8KCQj/CgkJ/woJCP8RDw7/GhgV/xoX
- Fv8aGBb/GhgX/xsZF/8cGRf/HBoX/xwaGP8dGhj/HRoY/x4bGf8eGxn/HhwZ/x8cGv8fHBr/IBwa/x8d
- G/8gHhv/IB4c/yEeHP8iHhz/IR8c/yIfHf8iIB3/IyAe/yMgHv8jIB7/JCEf/yQhH/8kIR7/HBoY/x0a
- Gf8dGxn/Hhwa/x0bGf8YFRT/FxUT/xgVE/8YFhT/GRcV/xkXFf8aGBb/GxgW/xsYFv8cGRT/EhBM/w8O
- bf8hHzT/JiQf/yYkIf8jIB7/IB0a/yAdG/8hHhz/IR4c/yIfHP8jHx3/IyAd/yQgHv8kIR7/JiMb/xgV
- Wv8kIEb/Lywl/y8sKf8vLCn/MC0q/zEtKv8xLSr/Mi4r/y4qJ/+sqaf/8/Hw/+/t7f/39fX/nJqa/wAA
- AP8AAAD/AAAA/wAAAP8AAAD0AAAA/wAAAP8AAAD/nZub//f19f/v7e3/9PLx/52amf8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/BgYG/yYlJf8qKir/KSkp/ykp
- Kf8qKir/Kysr/xUUFP8AAAD/AwMC/wMDA/8EBAP/BAQE/wUEBP8FBQX/BgYF/wYGBv8HBwb/CAcH/wgI
- B/8JCAj/CQkI/woJCf8LCgn/CwoJ/wsKCf8KCgn/CwoK/wsLCv8MCwv/DAwL/w0NDP8ODQz/Dg4N/w8O
- Df8PDg3/EA8O/xEQD/8REA//EhEQ/xMREP8TEhD/FBMR/xQTEv8VExL/FRQT/xYUE/8WFRT/FxYU/xgW
- FP8YFhX/GRcV/xkXFv8aGBf/GxkX/xsZF/8dGxn/HRsZ/x4cGv8dGxn/JiMi/1xaWf9nZWT/Z2Vk/2dm
- ZP9oZmX/aGZl/2lnZf9pZ2b/aWdm/2poZv9raWP/UlBI/yUiHf8mJCH/JCEf/0lHRP9tamn/bGtp/21r
- af9ta2n/bWtq/25sav9vbGr/b21r/29ta/9wbmz/bWtk/z06M/8sKSb/Lywp/zAtKv8wLSr/MS0q/zIu
- K/8yLiv/Lisn/66qqP/z8PD/7+3t//f19f+dm5v/AAAA/wAAAP8AAAD/AAAA9AAAANIAAAD/AAAA/wAA
- AP+dm5v/9/T0/+/s7P/z8PD/r6yr/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/ycmJv/DwsL/4uDg/9zZ2f/d2tr/3dra/9zZ2f/e29v/393d/11cXP8AAAD/BAQD/wQE
- BP8FBAT/BQUF/wYGBf8GBgb/BwcG/wgHB/8IBwf/CQgI/wkJCP8KCQn/CwoJ/wsKCv8MCwr/BgUF/wQD
- Av8EAwP/BQQE/wYFBP8GBgX/BwYF/wgHBv8IBwb/CQgH/woIB/8KCQj/CwoI/wsKCf8MCwn/DAsK/w0M
- Cv8ODAv/Dg0M/w8NDP8QDg3/EA8O/xEPDv8SEA7/EhAP/xMRD/8TERD/FBIR/xUTEf8VExH/FhQS/xoY
- F/8eHBr/Hhsa/xwZGP+ioqH/////////////////////////////////////////////////////////
- ///39/f/aWdl/xwZFv9PTUr/7Ozs////////////////////////////////////////////////////
- ////////w8HB/zUyL/8vKyj/MC0q/zEtKv8yLiv/Mi4r/zMvLP8wLCn/vLi2//Hv7v/v7Oz/9/T0/52b
- m/8AAAD/AAAA/wAAAP8AAADSAAAA0gAAAP8AAAD/AAAA/52cm//29PT/7uzs//Px8P+xrqz/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/hYSE/97a2f98c27/d21m/4N5
- cf+Ge3P/e3Bp/25mYP+yrqv/0M7O/wwMDP8DAgL/BQUE/wUFBf8GBgX/BwYG/wcHBv8IBwf/CAgH/wkI
- CP8KCQj/CgkJ/wsKCf8LCgr/DAsK/wwLCv9RUE7/gH58/358e/9+fHr/fnt6/357ev9+e3n/fnp5/316
- eP99enj/fXp4/315d/98eXf/fHl3/3x5dv98eHb/fHh2/3x4df98eHX/e3d1/3t3df97d3T/e3d0/3p2
- dP97dnP/enZz/3p1c/96dXL/enZy/3x2c/92cm//OTY0/xwaGP8dGhn/LCop/93c2//+/f3/+fj4//v6
- +P/6+fT/6+rz/+Xk9//l5fb/8fHz//z79f/7+vj/+fj4//////+YlpX/FhQQ/4F/ff//////+fj4//r5
- +f/8+/b/9PPz/+bl9f/l5Pf/6en0//n48//8+/f/+vn4//v6+v/t7ez/SEVD/y0qJ/8xLSr/Mi4r/zIv
- LP8zLyz/MzAs/zEtKf+9ubb/8e/u/+7s7P/29PT/nZyb/wAAAP8AAAD/AAAA/wAAANIAAADSAAAA/wAA
- AP8AAAD/jIqK//f09P/u6+v/8/Dv/7Csq/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP+Miov/kIqF/1FHP/9VS0T/V01G/1hOR/9VS0P/VEpC/2BXUf/Jx8b/GhkZ/wIC
- Av8FBQX/BgYF/wYGBv8HBwb/CAcH/wgHB/8JCAj/CQkI/woJCf8LCgn/CwoJ/wwLCv8GBQX/Q0NB/+Xh
- 3v/t6Ob/7Ofl/+vm5P/q5eP/6uXi/+jk4P/o49//5+Lf/+bg3f/l39z/493a/+Ld2f/i3Nj/4dvX/+Da
- 1v/f2dX/3tfT/93W0v/c1dH/29TQ/9rTz//Z0s7/2NHM/9fQzP/Wzsr/1c3J/9XNyP/Vzcj/1c3J/9bN
- yf+vqKX/JSEg/xwaGP8wLiz/2tjY//r5+P/29fD/09Lg/4KC3f9eXt//bW3l/2hp5P9lZd//nJvd/+fl
- 5f/39vT///79/5SSkf8XFBL/g4B+///+/v/39vX/7u3n/6mp3f9nZ97/Y2Pi/29v5v9gYOH/eHje/8fF
- 3//08+3/+ff3/+jn5f9IREL/Lion/zIuK/8yLiv/My8s/zMwLP80MC3/MS0p/7y3tf/x7u7/7uvr//f0
- 9P+Mior/AAAA/wAAAP8AAAD/AAAA0gAAANMAAAD/AAAA/wAAAP+CgYH/9/X1/+3r6//y7+//r6up/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/4iHhv+MhYD/HRkX/wkI
- B/8JCAf/CQgH/wkIB/8PDgz/U0tF/726uP8bGhr/AwIC/wYGBf8GBgb/BwcG/wgHB/8IBwf/CQgH/wkJ
- CP8KCQn/CwoJ/wsKCf8MCwr/DAsL/wQEA/9YV1b/4t3a/+zp5//t6un/7Onn/+/r6v/w7Or/7uvp/+3p
- 5//s6Ob/6+fk/+rm4//p5eL/6eTi/+Xh3v/h3Nn/4NvY/9/b2P/i3dn/497a/+Lc2P/g2tf/39nW/97Y
- 1f/d19P/3dbS/9zV0f/Z0s7/1c7K/9XOyv/Wz8v/zcXA/7y1sf8vLCr/HBkX/zAuLP/X1dX/9/Xx/768
- zv87O8b/OjrG/1xcw/9cXL7/XV2//1dXxP8uLsf/YF/G/9za2f/9+/n/k5CP/xgVE/+Bfnz//v37/+bk
- 3/96ecb/KSnH/1FRxf9dXcD/W1u+/11dwv9ERMb/MDDH/6emyv/z8ev/5uPj/0hEQf8uKyj/Mi4r/zMv
- LP8zMCz/NDAt/zQwLf8yLiv/u7az//Du7v/t6+v/9/X1/4KBgf8AAAD/AAAA/wAAAP8AAADTAAAAygAA
- AP8AAAD/AAAA/4OCgv/39PT/7erq//Lu7v+uqqj/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/iomI/4B6dv8AAAD/BQUF/wYFBf8FBQX/BgUF/wAAAP83Mi7/wr28/xsb
- Gv8DAwP/BwYG/wcHBv8IBwf/CAgH/wkICP8JCQj/CgkJ/wsKCf8LCgr/DAsK/wwLC/8NDAv/BQQE/1dW
- Vf/d2NX/7Onn/+3q6P/s6ef/wb69/6Kfnf+opKL/rKil/6+qp/+tqKX/qaSh/6OfnP+fm5n/x8PB/+Pe
- 2//g29j/4NvY/7m1sv+alZP/oJqX/6Sdmv+noJz/pZ+b/6Gal/+blZL/lZCN/7mzsP/Wz8v/1c7K/9bP
- zP/Lw77/ubKu/y8tKv8cGhj/MC4s/9fU0v/Y1tP/REO4/zMzwP9ERLr/Gxus/wsLpv8PD6f/Jyew/0pK
- vf8iIsD/eHa4//Lv6f+TkI7/GRYU/4B+fP/49fD/lZO7/yAgvv9KSr//Ly+y/xERqP8KCqb/Fxeq/zw8
- t/89PcD/MTG6/8bEyf/l4uD/SERC/y8sKf8zLyz/MzAs/zQwLf80MC3/NTEu/zIuK/+6tbL/8O3t/+3q
- 6v/39PT/g4KC/wAAAP8AAAD/AAAA/wAAAMoAAACmAAAA/wAAAP8AAAD/g4KB//b08//s6un/8O7t/6yp
- pv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+JiIj/gXt2/wUE
- A/8LCgn/CwoJ/wsKCf8LCgn/BgYF/zUwLf/Bvbz/Gxsb/wQEBP8HBwb/CAcH/wgHB/8JCAj/CQkI/woJ
- Cf8LCgn/CwoJ/wwLCv8MCwv/DAwL/w0MDP8GBQT/V1ZV/9/a1//t6uj/8e7s/87My/85Nzb/GBUT/yEd
- G/8oJCD/LSgk/ywnI/8mIR//HhsY/xYTEf9bWFb/3dnW/+Xg3f/NyMX/QT89/xcUEv8gHRr/JyMg/ywo
- JP8sJyT/JiIf/x8cGf8WFBH/SUZE/8vFwf/X0Mz/19DM/8nBvP+yq6f/KCYj/x4bGf8xLiz/09DM/56b
- s/8jI73/LS29/wICr/8AAK3/AACu/wAArv8AAK3/DQ2y/zAwwP83NrP/z83K/5OQjv8aFxT/gX58/+He
- 1/9LSq7/LCzC/xYWtf8AAK3/AACu/wAArv8AAK3/AACu/yYmuv8lJb//f36v/9za0/9JRUL/MCwp/zMw
- LP80MC3/NDAt/zUxLv81MS7/My8s/7m0sf/v7ev/7Orp//b08/+DgoH/AAAA/wAAAP8AAAD/AAAApgAA
- AKQAAAD/AAAA/wAAAP+EgoL/9vPy/+zp6P/w7ez/q6el/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/4aFhP+Be3f/CQgH/w4NDP8VExH/GhcV/w4NDP8KCgn/ODMv/8C7
- uv8WFRX/AAAA/wEAAP8BAQD/AgEB/wMCAf8FBAT/CgkJ/wsKCv8MCwr/DAwL/w0MC/8NDAz/Dg0M/wYF
- BP9ZV1b/3NbT/+vn5v/x7+3/ysjG/0dCPf81Lin/NzAs/zYwK/82Lyv/NjAr/zYwK/83MSz/Miwm/2Zh
- Xv/b19X/5uHe/8vGw/9STEj/NC4p/zcxLP83MCz/NjAr/zYwK/83MCz/NzEs/zQuKf9TTkn/ysTA/9fQ
- zP/X0Mz/x765/62mof8jIR//Hxwa/zIvLf/LyMH/dnSi/x4ew/8JCb3/AAC7/wAAu/8AALv/AAC7/wAA
- u/8AALr/FBTC/ygotv+rqbP/ko+L/xsYFf+Cfnv/xsO+/zExsP8ZGcT/AAC7/wAAu/8AALv/AAC7/wAA
- u/8AALv/BAS8/xwdxf9eXaP/zsvC/0tHRP8xLSr/NDAt/zQwLf81MS7/NTIu/zYyL/8zLyz/uLKv/+/r
- 6v/s6ej/9vPy/4SCgv8AAAD/AAAA/wAAAP8AAACkAAAApAAAAP8AAAD/AAAA/3Rzc//28/L/6+jn/+7r
- 6v+xrKn/AwMD/wAAAP8AAAD/AAAA/wAAAP8VFRX/Pj49/0JBQf9BQUD/QUBA/0FAQP9AQED/p6Wl/4F7
- dv8NCwn/GBUT/0Q9OP9NRT//JSEe/w4MC/85NDD/ycbD/1ZWVf9FREP/R0ZG/0hHRv9JSEf/SUhH/zIx
- Mf8JCAf/DAsK/wwLC/8NDAv/DQwM/w4NDP8ODQz/BwYF/1pZWP/W0M3/5+Pi/+/t6//r6Of/uLKu/46E
- fv+KgXr/ioF6/4qBev+KgHr/ioB6/4l/eP+SiYP/xL+8/+Tf3P/i3dv/4NvY/7awrP+KgXv/h312/4d9
- dv+HfXb/h312/4Z8dv+GfHX/jIN8/7avqv/W0Mz/1s/L/9fQzP/EvLb/q6Sg/yQiIP8fHRv/Mi8t/8rG
- vv9oZpr/ERHI/wEByP8AAMf/AADH/wAAx/8AAMf/AADH/wAAx/8GBsr/HBy4/6Kfq/+Tj4v/HBkW/4F9
- e/+/u7b/Jyav/wkJzP8AAMf/AADH/wAAx/8AAMf/AADH/wAAx/8AAMf/Dg7N/1NRnP/Lx77/SkdE/zEt
- Kv80MC3/NTEu/zUyLv82Mi//NjIu/zg0Mf+7trP/7erp/+vo5//28/L/dHNz/wAAAP8AAAD/AAAA/wAA
- AKQAAAClAAAA/wAAAP8AAAD/aWdn//by8f/q5+b/7ero/7eyr/8ICAj/AAAA/wAAAP8AAAD/GhkZ/8jG
- xf/m4+P/wL29/8C9vP/DwL//xsLB/8jFxP/KxsX/bWZh/xQRDv8dGhj/NS8r/zcwLP8mIh//FBEP/zcy
- Lv+2sa7/yMXE/8PAv//Avb3/vbq6/7q4t//PzMz/6ufm/1RSUv8FBQT/DAwL/w0MDP8ODQz/Dg0M/w8O
- Df8IBwb/VlVU/9LMyP/p5uT/8/Hw//Hv7v/08vH/9PHw//Lv7v/y7uz/8e3r//Ds6v/u6+n/7ern/+3p
- 5//q5uT/5uLg/+Xh3//l4N7/5+Lf/+bi3//m4N7/5N/c/+Te2//j3dr/4dzZ/+Hb1//g2db/3tjU/9rU
- 0P/Z0s//2tTR/8S7t/+up6P/JCIg/yAdG/8yLy3/zcnD/316mv8IB8v/AQHV/wAA0/8AANP/AADT/wAA
- 0/8AANP/AADT/wMD2P8ZGbL/t7Sz/5GNif8dGRf/f3t4/9DMxP8pKKT/BATY/wAA0/8AANP/AADT/wAA
- 0/8AANP/AADT/wAA1P8FBdP/XFqW/9XRx/9JRUL/MS0q/zUxLv81MS7/NjIv/zYyL/82Mi7/Pjo2/8C6
- t//s6ef/6ufm//by8f9pZ2f/AAAA/wAAAP8AAAD/AAAApQAAAJ8AAAD/AAAA/wAAAP9qaGj/9vHw/+rm
- 5f/t6ef/t7Gu/wgICP8AAAD/AAAA/wAAAP9TUlH/0c7N/zQxMP8ZFhX/Hxwa/yklIv80Liv/PTcy/0lC
- PP9JQjv/HBkX/xwZF/8aFxX/GhcV/xsZFv8aGBX/NC8r/0lCPP83Mi7/LCck/yAdG/8UEhD/Dg0M/xEQ
- EP+amJf/npyb/wUFBP8NDAv/Dg0M/w4NDP8PDg3/EA8O/woJCP9JR0b/0MvH/762sf/HwLv/xb65/8W9
- uP/Evbj/w7y3/8O7tv/CurX/wbm0/8C4s/+/t7L/vrax/761sf+8tK//vLSu/7uzrf+7sqz/urGs/7qw
- q/+5r6r/uK6p/7etqP+2rab/taym/7Sqpf+0qqT/s6mj/7Koov+xp6H/qZ6Y/7Stqf8kIiD/IR4c/zIv
- Lf/Mx8P/uLS0/xIStf8AAOT/AADf/wAA3/8AAN//AADf/wAA3/8AAN//AADi/z08n//f2tD/jIiF/x4b
- GP97d3T/6eTb/1tYnP8AANv/AADg/wAA3/8AAN//AADf/wAA3/8AAN//AADj/wUFxf+alqb/2dTO/0hE
- Qf8yLiv/NTIu/zYyL/83My//NzMw/zczL/8+Ojf/wLq3/+zo5v/q5uX/9vHw/2poaP8AAAD/AAAA/wAA
- AP8AAACfAAAAewAAAP8AAAD/AAAA/2loZ//08e//6ebk/+zp5v+1sK3/CAgI/wAAAP8AAAD/AAAA/1lY
- V/+Oioj/Lyok/zkyLf80Lyr/NjAr/zcxLP84Mi3/OjMu/zUwK/8hHRr/IR4b/yEeG/8hHhv/IR4b/yAd
- Gv8rJyP/OjQv/zcxLP82MCv/NS8q/zQuKf80Lir/My0o/1xYVf+WlJP/CAcG/w0MDP8ODQz/Dw4N/w8O
- Df8QDw7/Dg0M/x8eHf+opqT/wLq2/7iyrv+4sa3/uLGt/7ewrP+2r6v/tq+q/7Wuqf+0raj/tKyo/7Os
- p/+zq6b/sqqm/7GppP+xqKT/sKij/6+nov+up6H/rqag/62loP+tpJ//rKOf/6yjnv+rop3/qqGb/6mg
- m/+pn5r/qJ+a/6eemP+xqaT/cGto/x8dG/8hHx3/Mi8t/8XAvf/j3tX/dnSm/wAA2P8AAO//AADs/wAA
- 7P8AAOz/AADt/wAA8P8TEsL/qqax/+nk3v+KhoP/IR4b/3t3c//p5N//wr27/ycntv8AAOz/AADt/wAA
- 7P8AAOz/AADs/wAA7/8AAOP/VlSm/9zXzf/Szcn/SURB/zMvLP82Mi//NjIv/zczMP84NDD/NzMw/z87
- N/+/ubX/6+jl/+nm5P/08e//aWhn/wAAAP8AAAD/AAAA/wAAAHsAAAB3AAAA/wAAAP8AAAD/amlo//Pw
- 7v/o5eP/6+jl/7Svq/8ICAj/AAAA/wAAAP8AAAD/VlVV/5yWk/80Lin/IyAd/yQhHf8kIB3/JCAd/yQg
- Hf8kIB3/JCAd/yYiHv8mIh7/JiIf/yYiH/8mIh//JiIe/yUhHv8kIB3/JCAd/yQgHf8lIR3/JSEd/yQg
- Hf8pJSD/eHFt/5OQj/8IBwf/Dg0M/w8ODf8PDg3/EA8O/xEPDv8REA//Dw0M/xcWFf8vLi3/MS8v/zEv
- Lv8xMC7/MTAv/zIwL/8yMC//MjEw/zMxMP8zMjH/NDIw/zQyMP80MjH/NDIx/zUzMf81MzH/NTMy/zUz
- Mf82NDL/NjQy/zc1M/83NTP/ODY0/zk3Nf86NzX/Ozg2/zw6OP89Ojj/Pzw6/zk2NP8mIyH/KSYk/ykm
- JP81MjD/wry5/9/Z1v/b1cv/gH22/xwb3P8AAPP/AAD2/wAA9v8CAu7/MS/M/6mkuf/g2tH/493Z/4uG
- g/8iHxz/d3Nw/+Pd2f/f2dP/vLe7/0JAxv8FBez/AAD2/wAA9/8AAPX/ERDg/2hluv/Uzsb/3tnV/9DK
- x/9JRUH/My8s/zYyL/83My//ODQw/zg0Mf84NDD/Pzs3/764tP/q5uT/6OXj//Pw7v9qaWj/AAAA/wAA
- AP8AAAD/AAAAdwAAAHcAAAD/AAAA/wAAAP9cW1r/7+vq/+jk4v/q5uT/s62q/wgICP8AAAD/AAAA/wAA
- AP9WVFT/nZiU/ywnI/8oJCH/KSUi/yomIv8pJSL/KSUi/yklIv8pJSL/KiUi/yYiH/8dGhf/GxgW/yMf
- Hf8pJSH/KSUi/yklIv8pJSL/KSUi/yomIv8qJiL/KSYi/yUhHv9zbWn/lJGP/wkIB/8PDg3/EA8O/xAP
- Dv8RDw7/ERAP/xIQD/8SERD/ERAO/w4MDP8ODQz/Dg4M/w8ODf8PDg3/EA8O/xEPDv8REA//EhEQ/xMS
- EP8VExL/FhQT/xcWFP8YFxb/GhkX/xwaGf8eHBr/IB4c/yEgHv8jIiD/JSMh/yYkIv8nJSP/KCYk/ykn
- Jf8pKCb/Kigm/yooJv8rKCb/Kykn/y4sKv8uLCr/Liwq/ywpJv+Mh4T/2tPP/93W0v/i29H/ysTK/5aR
- 0P+Cftr/g3/Y/6ehzf/X0Mr/4drT/93W0v/QycX/XlpX/yklI/9MSEX/xb67/9zV0v/g2dP/3NXN/6+p
- zP+Hgtf/gn7b/5CL0//Ausj/4drP/97X0v/c1dH/op2a/zk1Mv81Mi7/NzMw/zg0MP84NDH/OTUx/zg0
- Mf9AOzj/vLay/+nk4//o5OL/7+vq/1xbWv8AAAD/AAAA/wAAAP8AAAB3AAAAdwAAAP8AAAD/AAAA/1JR
- UP/s6Ob/5+Pi/+nl4/+yrKj/CAgH/wAAAP8AAAD/AAAA/1VUU/+Zk5D/Lykk/y0pJf8uKib/JCAd/yQg
- Hf8vKib/Likl/y4pJf8vKib/JyIf/x0aGP8dGhj/IR4b/y4pJv8uKSX/Likl/y8qJv8pJSH/HhsZ/ywo
- JP8uKiX/KiUh/3BqZv+Sj43/CQgH/w4NDP8ODQz/Dw4N/xAPDv8REA//EhEQ/xIREP8bGRf/KSQi/ygk
- If8oJSH/Kici/y0oJP8vKyb/MS0o/zMvKv82MS3/NzMu/zg0L/85NTH/OjYy/zo2M/87NzT/Ozc0/zs3
- NP88ODP/PDg0/zs3M/87NzP/Ozcz/zo2Mv85NjL/OjYy/zo2Mv85NTL/OjUy/zk1Mv84NDH/MC0r/y8s
- Kv8uLSr/Lisp/zEvLf9VUU//XlpX/11ZVv9gXFf/ZWFX/2hjVv9nY1b/ZF9X/2BbV/9eWlf/YFtY/0tI
- RP8vLCn/MS4r/y8sKf9FQT7/X1tX/19bWP9gW1j/ZWBY/2plWP9qZVf/aWRY/2RfWf9hXFn/Yl1a/15Z
- Vv89OTb/NTEt/zczMP84NDD/ODQx/zk1Mf85NTL/OTQx/0A8N/+8tbH/6OPi/+fj4v/s6Ob/UlFQ/wAA
- AP8AAAD/AAAA/wAAAHcAAAB1AAAA/wAAAP8AAAD/U1FR/+vn5f/m4uD/6OPh/7Grp/8JCQj/AAAA/wAA
- AP8AAAD/VVNS/5WPjP8wKib/Mi0o/zkyLv82MCz/OjQw/zMtKf8zLSn/Mi0o/zgyLv87NTD/Miwq/zMt
- Kv83MS3/PjYy/zItKP8zLSn/Mi0o/zgyLv83MS3/PDUw/zQvKv8uKCT/bWdi/5SRj/8UExL/HBsa/x8d
- HP8hIB//JCMi/ycmJf8qKSf/LS0r/1tSS/9sYFj/al9W/2hdWP9jWF//Zltb/2JXX/9iWF3/YFVf/2BW
- Xv9hV1r/XlRe/2JXVv9iWFX/ZFlQ/2JYUf9iV1D/YldQ/1tSV/9dU1T/XVNR/1xSUv9fVU3/WlBS/15U
- TP9bUU7/WlBO/1xSSv9cUkv/XFJL/1xSS/9CPDj/Lywq/y8tK/8wLSv/Ly0q/ywqJ/8rKCb/Kygm/yso
- Jv8rKCb/Kygm/yspJv8rKCb/LCkm/y0pJ/8sKSb/Liso/zEuLP8yLiz/Mi8s/zAsKf8tKif/LSon/y4q
- J/8uKif/Lyso/y8rKP8vKyj/Lyso/zAsKf8wLCn/MS0q/zUxLv83MzD/ODQw/zg0Mf85NTH/OTUy/zo1
- Mv85NTH/QT05/7u0sP/o4+H/5+Ph/+vn5f9TUVH/AAAA/wAAAP8AAAD/AAAAdQAAAFAAAAD/AAAA/wAA
- AP9TUVD/6ubj/+Xh3//m4d//u7Sv/xIREf8AAAD/AAAA/wAAAP9UUlH/j4mG/zEsJ/83MS3/ODIt/0Q8
- N/9LQz3/NzEs/zcxLf83MSz/OzQw/1ZNRv9TSkP/UEdC/1lPSf9DPDf/NjAs/zcxLf82MCz/QTs1/0tD
- Pf87NC//NzEt/zMtKP9nYV3/nZmX/zAvLv80MzL/NTQz/zU0M/81MzL/NDMy/zMzMv84NTT/aV5W/21h
- WP9uYlX/Vkxz/ygkrf8hHrX/MCuh/zcxmP87NZH/JyOs/zMum/8yLJz/RDyC/0A5h/9oXU3/Y1lR/2RZ
- UP9eVFf/Kyah/y8qm/87NIj/MiyU/y0pm/8pJKH/NTCO/0I7eP8/OHz/X1VH/1xSS/9cUkv/XlNM/0lB
- PP8vLSv/MC4s/zAuLP8xLiv/MS4s/zEuLP8xLiz/MS4r/zIuLP8xLiz/Mi4s/zEvLP8yLiz/Mi8s/zIv
- LP8yLyz/Mi8t/zIvLf8zMC3/MzAt/zMvLP80MC3/NDAt/zQwLf80MS3/NTEu/zUxLf81MS7/NTIu/zYy
- L/83My//NzMw/zg0MP84NDH/OTUx/zk1Mv86NjL/OjYy/zk1Mf9JRED/wrq1/+bh3//m4uD/6ubk/1NR
- UP8AAAD/AAAA/wAAAP8AAABQAAAASQAAAP8AAAD/AAAA/1NSUf/p5OH/5N/d/+Xg3v+8tbH/FBMS/wAB
- AP8DAwP/BAQE/1dVU/+jnZn/LSgj/zcxLf84Mi3/NzEs/zcxLP84Mi3/ODIt/zo0MP86NDD/Rj45/11T
- TP9hVk//T0dA/zs1Mf87NTH/ODIu/zgyLf83Mi3/NjEs/zcxLf84Mi3/Ligj/25nY/+hnZr/MC8v/zQz
- Mv80MzL/NDMy/zQzMf80MjL/NDIx/zY0M/9lWlP/bWFZ/25iVP9RSHj/IR22/yAbuP8iHrT/NzGX/1ZN
- bf8bGbz/KCSp/zUwl/8xK5z/JSGt/15UXP9lWlD/ZFlQ/11TWf8jIKz/KSWj/yQgrP8sJ57/Hhuz/y4p
- mf8dGrT/KSSh/ygkoP9cUk3/XFJK/1xSS/9eU0z/SEE8/zAuK/8xLyz/MS4s/zEuLP8yLyz/MS8t/zIv
- LP8yLyz/Mi8s/zIvLP8yLyz/Mi8t/zIvLP8zLy3/MzAt/zMwLf8zMC3/MzAu/zMwLf80MC3/NDAt/zQw
- Lf81MS7/NDEt/zUxLv81MS7/NjIu/zUxLv82Mi//NjIv/zczMP84NDD/ODQx/zk1Mf85NTL/OjUy/zo2
- Mv87NzP/OjUy/0pGQf/Cu7b/5uHf/+bh3//p5OP/U1JR/wAAAP8AAAD/AAAA/wAAAEkAAABKAAAA/wAA
- AP8AAAD/SUdG/+Xg3f/j3tz/5N/d/7u0sP8aGRj/LCss/zc3N/81NTX/UE9O/8S+uv99d3P/VlBL/1hT
- Tv9YU07/WFNO/1lTTv9VUEv/Pjg0/z84M/8/ODP/Pjcy/z43Mv8+ODL/QDkz/zs1MP9NSEP/WVNO/1lT
- Tv9YU07/WFNO/1dRTP9kXlr/urSw/3l2dP8wMC//NTQz/zU0M/81MzL/NDMz/zUzMv80MzL/NjUz/2NZ
- Uv9tYln/bGBX/2dcXP9XTXH/WlFr/09Gef9aUGn/ZVpa/1BGdf9VTGz/UUlw/09Hcv9LQ3f/XlNc/2Va
- Uf9kWVH/Y1hR/1JKZ/9QSGn/SUJz/05Fav9USmH/U0pg/0tDbP9LQ2z/SEBu/1tRUP9cUkv/XFJL/15T
- TP9IQj3/MS4s/zMwLf8yLy3/Mi8t/zIvLf8yMC3/Mi8t/zMwLf8zLy3/My8t/zMvLf8zMC3/Mi8t/zMw
- Lf80MC3/NDEu/zQxLv80MC7/NDAu/zUxLv81MS7/NTEu/zUyLv81MS7/NTEu/zYyL/82Mi//NjIv/zYy
- L/83My//ODQw/zg0Mf85NTH/OTUy/zo1Mv86NjL/Ozcz/zs3M/86NjL/SkVB/8O7tv/l4d//5eHf/+bh
- 3v9IR0b/AAAA/wAAAP8AAAD/AAAASgAAAEoAAAD/AAAA/wAAAP88Ojr/4dvZ/+Lc2v/j3dv/urKt/xwb
- Gv85ODj/QEBA/z8/Pv87Ozv/WlhX/4OAfv+Cfnz/gX17/4F9e/+BfXv/fnt5/66ppf9hW1f/Pzgy/0Q9
- N/9EPTf/RD03/0Q9N/9EPTf/Pjg0/6qkoP+JhYL/fnp4/397eP9/e3j/fnt4/4J+fP9mZGL/NjU0/zY1
- NP82NTT/NjU0/zY0NP81NDP/NTQz/zU0Mv83NjT/ZFpT/3BkW/9uYlr/bmJZ/29jVv9uYlb/b2JU/21h
- Vf9rX1b/bWFT/2tfU/9rX1P/al9R/2pfUf9oXFL/ZltT/2ZbUv9lWlL/ZltP/2ZaT/9lW03/ZVlN/2NZ
- Tf9iWE3/Y1hL/2JXS/9iV0r/X1VN/15TTP9eU0z/X1RN/0ZBPP8xLy3/MzAu/zMwLv8zMC3/MzAt/zMw
- Lv8zMS7/NDAu/zQwLv80MC7/MzAt/zQwLv8zMC7/NDEu/zQxLv81Mi//NTEu/zUxLv81MS7/NTIv/zYy
- L/82Mi//NjIv/zYyL/82Mi//NjMv/zczMP83My//NzMw/zg0MP84NDH/OTUx/zk1Mv86NjL/OjYy/zs3
- M/88NzT/PDg0/zs2M/9LRUL/wrm0/+Xg3v/l4N7/4tza/zw6Ov8AAAD/AAAA/wAAAP8AAABKAAAASQAA
- AP8AAAD/AAAA/z07Ov/f2tf/4NvY/+Hc2f+4sav/HRsa/zg4OP9APz//Pz4+/z8+Pv87Ozv/ODg4/zg4
- Of84ODj/ODg4/zc4N/8zMzP/j4qH/2NdWP9DPDb/SEE7/0lCO/9JQjz/SUE7/0lBO/9AOzX/oZuX/0RD
- Qv8yMTD/MzMy/zQzMv8zMjL/MjIx/zIxMf83NjX/NzY1/zc2Nf83NTT/NjU0/zY1NP81NTP/NTUz/zU0
- M/9HQz//WlJM/1lRS/9ZUEv/WFBK/1hQSv9XT0n/V09J/1ZOSf9WTkj/VU1I/1VNR/9UTUf/VE1H/1RM
- Rv9UTEb/U0tG/1JLRf9SSkX/UkpF/1FKRP9RSUT/UElE/1FJQ/9QSUP/T0hC/09IQv9OR0H/T0dC/05H
- Qv9KRD//ODQx/zMxLv8zMS7/MzEu/zQxLv8zMC7/NDEu/zQxL/80MS7/NDEv/zQxLv80MS7/NDEu/zQx
- Lv80MS7/NTIv/zUyL/81Mi//NjIv/zUyL/82Mi//NjMv/zcyMP82Mi//NzMw/zYzL/83MzD/NzMw/zg0
- MP84NDD/ODQx/zk1Mf85NTL/OjUy/zo2Mv87NzP/Ozcz/zw4NP89ODT/Ozcz/0tGQv/AuLP/5N/d/+Tf
- 3f/g29j/PDs6/wAAAP8AAAD/AAAA/wAAAEoAAAA6AAAA+wAAAP8AAAD/PDs6/97Y1f/f2db/4NrX/7ev
- qv8dHBv/Ojk5/0FAQP9AQD//Pz8//z4/Pv8+Pj7/PT09/z09Pf89Pjz/PTw9/zg5OP+PiYX/X1lV/0hA
- Of9MRD3/RT44/0Q9N/9KQjz/TkY//0E7Nf+dl5L/SEdG/zc3Nv85ODj/OTg3/zk3N/84Nzf/OTc3/zg3
- Nv84NzX/ODc2/zc2NP82NjT/NjY0/zY1NP82NTT/NzU0/zUzM/8zMjH/MjIx/zIxMP8yMTD/MjEw/zIx
- MP8yMTD/MjEw/zEwL/8xMC//MTAv/zEwL/8yMC//MjAv/zEwLv8xMC7/MTAu/zEvLv8xLy7/MS8u/zEv
- Lv8xLy7/MTAu/zIwLv8xLy3/MS8t/zEvLf8yMC7/MTAt/zEwLf80MTD/NTIw/zQyL/80Mi//NTIv/zUy
- L/81MS//NTEv/zUyMP81Mi//NDEv/zUyL/81MS7/NTIv/zUyMP82Mi//NjIv/zczMP82Mi//NzMw/zcz
- MP83MzD/NzMw/zczMP83NDD/ODQx/zg0MP84NDH/OTUx/zk1Mf85NTH/OjUy/zo2Mv86NjL/Ozcz/zw3
- NP88ODT/PTg1/z05Nf88NzT/S0ZC/8C3sf/k39z/5N/c/9/Z1v88Ozr/AAAA/wAAAP8AAAD9AAAAOwAA
- ADgAAAD7AAAA/wAAAP89Ozr/3dfT/93X1P/e2NX/ta2o/x0cGv86Ojr/QUFB/0BAQP9AQD//Pz8//z8/
- P/8/Pj7/Pj49/z4+Pv8+PT3/Ojk5/4yGg/9cVlH/TEQ9/1BIQf9COzb/PDUy/01FPv9TSkP/QTs2/5mS
- jf9JR0f/ODg3/zo5OP86ODj/Ojk4/zk4N/85ODf/OTg3/zk4N/84Nzb/ODc2/zg3Nf83NjX/NzY0/zc1
- Nf83NTT/Ozk3/0RAPf9DPzz/Qz88/0M+O/9CPjv/Qj48/0I+O/9CPjr/Qj07/0E9Ov9APTr/QDw5/0E8
- Ov9APTn/QDw5/0A8OP9APDj/Pzs3/0A7OP8/Ozf/Pzs4/z87OP8/Ojf/Pzo3/z46N/8+Ojb/Pjo2/z46
- Nv8/Ozb/PTk1/zUyMP81MjD/NTIw/zUyMP81Mi//NTIv/zUyL/83Myz/NjMt/zczLf83NCz/NzQr/zc0
- LP83NC3/ODMs/zczLP84NCz/ODUt/zk1Kv84NS3/OTQr/zg0Lv85NS3/OTUs/zo2Kv85NS3/OjUs/zs3
- Kv86NjD/OjYy/zk1Mv86NjL/OjYy/zs3M/88NzT/PDg0/z04NP89OTX/Pjk2/zw4NP9LRkL/vrWw/+Pe
- 2//j3tv/3tjU/z07Ov8AAAD/AAAA/wAAAPsAAAA4AAAAOAAAAPsAAAD/AAAA/zQzMv/Z08//3NbS/9zW
- 0v+5sKv/IiAf/zs7O/9CQUH/QUBA/0BAQP9AQED/QEBA/z8/P/8/Pj7/Pz4+/z8+Pv86Ozr/ioSA/1lT
- Tv9RSEH/VU1F/2BVTv9jWFH/V05G/1dOR/9CPDb/lIyI/0pIR/85OTj/Ojk5/zo5OP86OTj/Ojk4/zo5
- OP86OTj/OTg3/zk4N/85ODb/ODc2/zg2Nv84NjX/ODY1/zg2Nf9cU03/bmJa/2xhWP9sYFj/a19X/2tf
- V/9qXlb/aV5W/2ldVf9oXVX/Z1xU/2ZbVP9mW1P/ZltT/2VaUv9kWVL/ZFlS/2NYUf9iWFD/YldQ/2FX
- T/9hVk//YFZO/19VTv9fVU3/XlRN/15TTP9dU0z/XVNM/11TTP9dU0z/Qj05/zUyL/82MjH/NTMw/zYz
- MP82MzD/NjMv/yspVP8wLUX/LyxI/ysoVv8pJ1n/KylU/y4rS/8sKVT/LClS/y0pUf8uK0//JSNs/y8r
- Tf8rKFr/MS5G/y0qVP8tKlX/JSJs/y8sUP8sKVj/JiNt/zYyPf87NjH/OjYy/zo2Mv87NzP/Ozcz/zw4
- NP89ODT/PTg1/z45Nv8+Ojb/PTg0/09JRf/AuLH/4t3a/+Ld2v/a1ND/NDIy/wAAAP8AAAD/AAAA+wAA
- ADgAAAA4AAAA+wAAAP8AAAD/JyUl/9TOyv/a1ND/2tTQ/8C2sP8qKCf/Ozs7/0JCQv9BQUH/QUFB/0FB
- Qf9BQED/QEA//0BAP/9APz//QD8+/zw7O/+Ign3/UkxI/1VMRP9cU0v/XlNM/19VTf9cUkv/X1VN/z03
- Mf+SioX/SkhH/zo6OP87Ojn/Ozo5/zs6Of87Ojn/Ozk5/zs5OP86OTj/Ojk4/zo4OP85ODf/OTg3/zk3
- Nv84Nzb/OTc2/2FXUP9uYVn/bGBY/2tfV/9qX1f/al5W/2leVv9oXVX/aF1V/2dcVP9nW1T/ZltT/2Va
- U/9lWlL/ZFlS/2RZUf9jWFH/YlhQ/2JXUP9hV0//YFZP/2BWTv9fVU7/X1RN/15UTf9dU0z/XVNM/1xS
- S/9cUkv/XFJL/15TTP9HQTz/NTIw/zc0Mf83MzH/NzMx/zczMv84NSz/ERCp/xsaif8MC7v/EA+w/wsL
- vv8QEKz/GhiP/xAPr/8UE6P/EA6v/wsLvv8UE6H/ExKk/wkIxv8iH3j/CwrB/woJw/8WFKD/DAy8/w4N
- t/8UE6T/GReW/z04Lf87NzP/Ozcz/zw3NP88ODT/PTg1/z05Nf8+OTb/Pjo2/z86Nv88ODX/VE5K/8S7
- tP/h29j/4t3Z/9XPy/8mJSX/AAAA/wAAAP8AAAD7AAAAOAAAADgAAAD7AAAA/wAAAP8nJiX/08zI/9nS
- zv/Z0s7/v7aw/yglJP87Ozv/Q0ND/0JCQf9CQkL/QUFB/0FBQf9BQED/QUBA/0BAP/9APz//PDs7/4iB
- fP9gWlT/KiYi/0Y/OP9EPTf/RD03/0U+OP86NC7/Mi4r/6Wak/9FQ0L/Ozs6/zw7Ov88Ozr/PDo5/zw6
- Ov88Ojn/Ozo5/zs6Of87OTj/Ojk4/zo5OP86ODf/Ojg3/zk4Nv86ODb/YFZQ/25iWf9sYFj/a19X/2pf
- V/9qXlb/aV5W/2ldVf9oXVX/Z1xU/2dcVP9mW1P/ZltT/2VaUv9kWVL/ZFlR/2NYUf9jWFD/YldQ/2FX
- T/9hVk//YFZO/2BVTv9fVU3/XlRN/15TTP9dU0z/XVNM/1xSS/9cUkv/XlNM/0dBPf81MzD/ODQy/zg0
- Mv84NDL/NzQy/zg1Lf8SEaf/CAfJ/xEQrf8REKv/EhGr/xcWmP8REKv/EBCt/xUUof8KCcL/EhCq/w8O
- s/8ZF5X/Dg23/xMSpv8YFpn/FhSg/xAQrv8QD7L/FhSg/xQTpf8kIXf/PTku/zw4NP88NzT/PDg0/z04
- NP89OTX/Pjk2/z46Nv8/Ojb/Pzs3/z05Nf9UTkr/xbu1/+Hb2P/g29j/1M3J/ycmJf8AAAD/AAAA/wAA
- APsAAAA4AAAAKAAAAPEAAAD/AAAA/yclJf/Rysb/18/L/9fPy/+/ta//JSIh/zo6Ov9FRET/Q0JC/0JC
- Qv9CQkL/QkFB/0JBQf9BQUD/QUBA/0FAQP8+PT3/W1dU/6CUjP9dVlH/S0VB/0xFQf9MRUH/S0VB/1BK
- Rf+TiID/fHVw/zs6Of89PDv/PTw7/z07Ov89Ozr/PDs6/zw7Ov88Ozn/Ozo5/zs6Of87Ojj/Ozk4/zo5
- OP86OTf/Ojk3/zo4N/9gV1H/bmJZ/2xgWP9rYFf/a19X/2pfV/9pXlb/aV1V/2hdVf9oXFT/Z1xU/2Zb
- U/9mW1P/ZVpT/2VaUv9kWVL/Y1lR/2NYUf9iWFD/YldQ/2FWT/9gVk//YFVO/19VTv9fVE3/XlRN/11T
- TP9dU0z/XFJL/1xSS/9eU0z/SEI9/zY0Mf84NTL/ODUy/zg1Mv84NDL/OTYu/xcWmP8VE6L/JyVp/xcV
- m/8XFZz/LytS/zUyPv82Mjz/Kidi/x4ch/82Mj3/NDBF/zo2NP82Mj//NTFD/zo2NP87NzL/IyF5/xoZ
- kv86Njj/NTBI/zw3Mv88ODT/PDg0/zw4NP89ODT/PTg1/z45Nv8+Ojb/Pzo2/z87N/9AOzf/Pjk2/1RO
- Sv/Eu7X/4dvY/+Da1//Sy8f/JyUl/wAAAP8AAAD/AAAA8QAAACgAAAAlAAAA7wAAAP8AAAD/JyYl/9DI
- xP/Z0s7/3NXR/7+1r/8lIiH/Ozs7/0ZFRf9EREP/REND/0NDQv9DQ0L/Q0JC/0JBQf9CQUH/QkFA/0FB
- QP8/Pj7/TUtK/2VgXf9nYV7/ZmFd/2ZhXf9lYF3/ZWBd/1RQTf8+PDz/Pj08/z49PP8+PTz/Pjw7/z08
- Ov89PDv/PTw7/z08O/88Ozr/PDs6/zw7Of88Ojn/PDo5/zs5OP87OTj/Ozk3/19WUP9wY1v/bmFZ/21h
- Wf9tYFj/bGBY/2xfV/9rX1f/al5W/2peVv9oXVX/aFxV/2dcVP9nXFT/ZltT/2VaU/9lWlL/ZFlS/2RZ
- Uf9jWFH/YlhQ/2JXUP9hV0//YFZP/2BWTv9fVU7/X1VN/15UTf9dU0z/XVNM/15UTP9GQDz/ODUy/zk2
- M/85NjP/OTYz/zk2M/85NjP/NzQ5/zg1Nf85NTX/ODQ5/zczO/85NjX/Ozcx/zo3Mv87Ny//PDgs/zs3
- Mf87NzH/Ojcz/zs4Mv88ODL/Ozcz/zw4M/86Nzb/OTY6/z04Mv89OTL/PDg0/z04Nf89OTX/Pjk1/z05
- Nf8+OTb/Pjo2/z86Nv8/Ozf/QDs3/0A8OP8/Ojb/VE9K/8O5s//g29f/39rW/9HJxf8nJiX/AAAA/wAA
- AP8AAADvAAAAJQAAACUAAADvAAAA/wAAAP8hIB//zMXB/97Y1P/h29j/v7Wv/yUiIf88Ozv/RkZF/0VE
- RP9EREP/REND/0RDQ/9DQkL/Q0JC/0JCQf9CQkH/QkFB/0FBQf8/Pz//Pj09/z49Pf8+PTz/PT08/zw8
- O/88Ozr/PTw7/z8+Pf8/Pj3/Pz48/z49PP8+PTz/Pj07/z49O/8+PDv/Pjw7/z08O/89Ozr/PTs6/zw7
- Ov88Ozn/PDo5/zw6Of87OTj/RUE+/1lQS/9ZUUv/WFFL/1hQS/9YUEv/V09K/1dPSv9WT0n/Vk9J/1ZO
- Sf9VTkj/VU1I/1VNR/9UTEf/VExH/1NMR/9SS0b/UktG/1JLRf9RSkX/UUpE/1BKRP9RSUT/UElD/1BI
- Q/9QSEL/T0hC/09HQv9OR0L/SkM//zw4Nf86NjT/OTc0/zk2NP85NzT/OjYz/zk2M/86NzP/OjYz/zo2
- M/86NzP/Ozcz/zs3NP86NzT/Ojc0/zo3M/87NzT/Ojcz/zs3NP87NzT/Ozg0/zw4NP88ODX/PDg0/zw4
- NP88OTT/PDg0/z05Nf89OTX/PTk1/z45Nf8+Ojb/Pjk2/z46Nv8/Ojb/Pzs3/0A7N/9APDj/QTw4/z87
- N/9VTkr/wrix/+Da1v/f2dX/zcbB/yEgH/8AAAD/AAAA/wAAAO8AAAAlAAAAJQAAAO8AAAD/AAAA/xIS
- Ef/HwLv/3dfU/+Da1/+9tK3/JSMh/zw8PP9HRkb/RUVE/0VERP9FRET/RURD/0RDQ/9DQ0L/Q0NC/0NC
- Qv9CQkL/QkFB/0JBQP9BQUD/QkFA/0FBQP9BQED/QD8//0A/Pv9APz7/QD8+/0A/Pf8/Pz3/Pz49/z49
- PP8+PTz/Pj08/z89PP8+PTz/Pjw7/z48O/89PDv/Pjw6/z07Ov88Ozr/PDs5/zw6Of86OTf/Ojg3/zs6
- OP87Ojj/Ozo4/zo5N/86OTf/Ojg2/zo5N/86ODf/Ojg2/zo4Nv86ODb/Ojc2/zk3Nv86NzX/Ojg2/zo3
- Nf85NzX/OTc1/zk3Nf85NzT/OTY0/zk2NP86NzX/OTY1/zk2NP86NjT/OTc0/zk2NP84NTP/Ojc1/zo3
- Nf86NzT/Ojc0/zo3NP86NzT/Ojc0/zo3NP86NjT/Ozc0/zs3NP87NzT/Ozg0/zs3NP87NzT/Ozg0/zs3
- NP87NzT/Ozc0/zw4NP88OTX/PDg1/z05Nf89ODX/PTg1/zw5Nf89OTX/PTk1/z46Nv8+OTX/Pjk2/z86
- N/8/Ojf/Pzo2/z87N/9AOzf/QDw4/0E8OP9BPTn/QDs3/1VPSv/Bt7D/39nW/97Y1P/IwLv/EhER/wAA
- AP8AAAD/AAAA7wAAACUAAAAmAAAA7wAAAP8AAAD/ExIS/8W9uP/c1tL/39rW/76zrP8mJCH/PT08/0hH
- R/9GRkb/RkVF/0ZFRf9FRUT/RURE/0VEQ/9EREP/RENC/0RDQv9DQkL/Q0JB/0NCQf9DQkH/QkFB/0JB
- QP9BQUD/QUA//0FAP/9BQD7/QT8//0E/Pv9APz7/QD89/z8+Pf8/Pj3/Pz49/z8+PP8/PTz/Pj08/z49
- O/8+PDv/Pjw7/z08Ov89PDr/PDs5/0tGQv9fVlD/YFdQ/19XUP9fVk//X1ZP/15VTv9eVU7/XVRO/11U
- Tf9cU0z/W1NM/1tSS/9aUkz/WlFL/1pQSv9aUUr/WU9K/1hQSf9YT0n/V09I/1dOSP9WTkj/VU1H/1ZN
- R/9VTEf/VEtG/1RMRv9UTEb/VExG/09IQv89Ojb/Ozg1/zs4Nf87ODX/Ozg1/zs4Nf87ODX/Ozc0/zs4
- Nf87ODX/PDg1/zw5Nf88ODX/PDg1/zw4Nf88ODX/PDg1/zw4Nf88ODX/PTk1/z05Nv89Ojb/PTk2/z45
- Nv89OTX/Pjk2/z45Nv8+Ojb/Pzo3/z86Nv8/Ojf/Pzs3/0A7N/8/Ozf/QDs3/0A8OP9BPDj/Qj05/0I9
- Of9APDj/VU9K/8C2rv/e2dX/3NbS/8W9uP8TEhL/AAAA/wAAAP8AAADvAAAAJgAAABgAAADmAAAA/wAA
- AP8TEhH/xLu2/9zV0f/e2NT/xbqz/y4rKf89PTz/SEhI/0dHRv9HRkb/RkZF/0ZFRf9GRUT/RURE/0VE
- Q/9EQ0P/REND/0RDQv9EQ0L/Q0JC/0NCQf9DQkH/Q0JB/0NBQP9CQED/QkA//0FAP/9BQD//QUA//0BA
- Pv9APz7/QD89/0A+Pf9APj3/QD89/z8+Pf8/Pjz/Pz08/z89PP8/PTz/Pjw7/z48O/89Ozr/XVRO/3Bj
- Wv9tYVn/bGBY/2tgWP9rX1f/al5W/2leVv9pXlb/aF1V/2hcVP9nXFT/ZltT/2ZbU/9lWlL/ZFpS/2RZ
- Uv9jWFH/Y1hQ/2JYUP9hV0//YVZP/2BWT/9fVU7/X1VN/15UTf9eU0z/XVNM/11TTP9dU0z/XlNM/0ZB
- Pf87ODX/PDk2/zw4Nv88OTb/PDk2/zs4Nf88ODX/PDg1/zw4Nv88OTX/PDk2/zw5Nf89OTb/PDk1/z05
- Nv88ODb/PTk2/z05Nv89OTb/Pjo2/z06N/8+Ojb/Pjo2/z46Nv8+Ojb/Pjo3/z86N/8/Ozf/QDs3/z87
- N/9AOzf/QDw4/0A8OP9APDj/QTw4/0E9Of9CPTn/Qz46/0A8OP9bVE//xbmy/97Y1P/c1dH/xLu2/xMS
- Ef8AAAD/AAAA/wAAAOYAAAAYAAAAEgAAAOMAAAD/AAAA/xMSEf/CubT/29TQ/97Y1P/FurL/Liso/z4+
- Pf9KSUn/SEdH/0hHR/9HR0b/R0ZG/0ZGRf9GRkX/RUVF/0VERP9FRET/RUVE/0REQ/9EQ0L/RENC/0RD
- Qv9EQ0L/REJC/0NCQf9DQUD/QkFA/0JBQP9CQT//QUA//0FAP/9BQD//QT8+/0E/Pv9BPz7/QD8+/0A+
- Pf9APj3/QD49/0A+Pf8/Pjz/Pz08/z48O/9dVU//bmJZ/2xgWP9rX1f/al9X/2peVv9pXlb/aV1V/2hd
- Vf9nXFT/Z1xU/2ZbU/9lWlP/ZVpS/2RZUv9kWVH/Y1hR/2JYUP9iV1D/YVdP/2FWT/9gVk7/X1VO/19U
- Tf9eVE3/XVNM/11TTP9cUkv/XFJL/1xSS/9dUkv/R0E9/zs5Nv88Ojf/PTo3/z05N/89OTb/PTk2/zw5
- Nv89OTb/PTk2/z05Nv89OTb/PTo3/z06Nv89OTb/Pjk2/z05N/89Ojb/PTo3/z46Nv8/Ojf/Pzo3/z46
- N/8/Ozf/Pzs3/z87N/8/Ojf/Pzo4/0A7N/9APDj/QDs3/0A8OP9APDj/QD05/0E8OP9BPTn/Qj05/0M+
- Ov9DPjr/QTw4/1tUT//FurL/3tjU/9vU0P/CubT/ExIR/wAAAP8AAAD/AAAA4wAAABIAAAATAAAA4wAA
- AP8AAAD/ERAQ/7yzrf/a08//3tjV/8m9tf9BPDj/KCgo/0RERP9DQkL/QkJC/0JCQv9CQUL/QUFA/0FB
- Qf9BQED/QUA//0BAP/9AQD//QD8+/z8/Pv8/Pj7/Pz49/z8+Pv8/Pj3/Pz49/z49PP89PDz/Pjw8/z08
- PP89PDv/PTw7/z08O/88PDv/PDs6/zw7Ov88Ozr/PDs6/zw6Ov88Ojn/PDo5/zs6Of87OTj/OTg3/1tT
- Tf9tYVj/al5W/2leVf9pXVX/aF1V/2hcVP9nXFT/ZltT/2ZaU/9lWlL/ZFlS/2RZUf9jWFH/YlhQ/2JX
- UP9hV0//YVZP/2BVTv9gVU7/X1RN/15UTf9eU0z/XVNL/11SS/9cUkr/W1FK/1tRSv9aUEn/WlBJ/1tQ
- Sf9FPzv/OTYz/zo3Nf86NzT/Ojc0/zo3NP86NzT/Ojc0/zo3NP86NzT/Ojcz/zs3NP87NzT/Ozc0/zs3
- NP87NzT/PDg1/zs3Nf87ODX/Ozg0/zw4NP88ODX/PDg1/z05Nf89OTb/PTk1/z05Nv89OTb/PTk2/z46
- Nv8+Ojb/Pjo2/z86N/8+Ozf/Pzs3/0A7N/9AOzf/QTw4/0I9Of8+OTX/aWFb/8e8tP/e2NX/29PP/7yz
- rf8REBD/AAAA/wAAAP8AAADjAAAAEwAAABMAAADjAAAA/wAAAP8LCwr/q6Od/9rTzf/e2dT/yL21/5yP
- hv8+OTb/MzAt/zUxL/81Mi//NTIw/zUyMP81MjD/NjMw/zYzMP83NDH/NzMx/zc0Mv84NDH/ODUy/zk1
- Mv85NTL/OTUy/zo2M/86NTP/OjYz/zo3M/86NzT/OzY0/zs3Nf87NzX/PDg1/zw4Nf88ODX/PDg1/z05
- Nf89OTb/PTk3/z46N/8+Ojb/Pzs3/z86N/8+Ojf/ZlxV/3xvZv95bWT/eG1k/3hsY/93bGP/eGtj/3dr
- Y/92amL/dmpi/3VpYf91aGH/dGhg/3RoYP9zaF//c2df/3NnXv9yZl7/cWZe/3FlXv9wZV3/cGRd/29k
- XP9uZFz/bmNb/25jW/9tYlr/bWJa/2xhWf9sYVn/bGFZ/1RNSP9JRED/SkVB/0tFQf9MRkH/TEZC/0xG
- Qv9NR0L/TUdD/01HQ/9NSEP/TkhD/05IRP9OSET/T0lF/09KRf9QSkX/UEpF/1BKRv9RS0b/UUtG/1JM
- R/9STEf/U01I/1NNSP9TTUj/VE1J/1ROSf9UTkn/VE5J/1VOSf9VT0r/Vk9K/1ZQS/9XUEv/V1FL/1dR
- TP9YUkz/V1FM/2VeWP+kl47/x7y0/97Y1P/b1M//raOe/wsLCv8AAAD/AAAA/wAAAOMAAAATAAAAFAAA
- AOQAAAD/AAAA/wsLCv+qoZr/2dLM/93X0v/Vzcj/vrGo/7aonv+toJf/rqGX/66hl/+uoZf/rqGX/66h
- l/+uoZf/rqGX/66hl/+uoZj/rqGY/66hmP+uoZj/rqGY/66hmP+uoZj/rqGY/66hmP+uoZj/rqGY/66h
- mP+uoZj/rqGY/66imP+vopj/r6KY/6+imP+vopj/r6KY/6+imP+vopj/r6KY/6+imP+vopj/r6KZ/6+i
- mP+ypJv/s6ac/7OmnP+zppz/s6Wc/7OlnP+zpZz/s6Wc/7OlnP+zpZz/s6Wc/7OlnP+zpZz/s6Wc/7Ol
- nP+zpZz/s6Wb/7Klm/+zpZv/s6Wb/7Klm/+ypZv/sqWb/7Klm/+ypZv/sqWb/7Klm/+ypZv/sqWb/7Kl
- m/+ypZv/saSa/7Cjmv+wo5r/sKOa/7Cjmv+wo5r/sKOa/7Cjmv+wo5r/sKOa/7Cjmv+xo5r/saOa/7Gj
- mv+xo5r/saSa/7Gkmv+xpJr/saSa/7Gkmv+xpJr/saSa/7Gkmv+xpJr/saSa/7Gkmv+xpJr/saSa/7Gk
- mv+xpJr/saSa/7Gkm/+xpJv/saSa/7Gkm/+xpJv/saSb/7Gkm/+xpJr/tqif/72wp//Vzcj/3dfS/9nS
- zP+qoJr/CwsK/wAAAP8AAAD/AAAA5AAAABQAAAAHAAAA2wAAAP8AAAD/CwsK/6iel//Z0Mv/3dbR/93W
- 0v/a087/1czH/9bNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN
- x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN
- x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XM
- x//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XM
- x//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN
- x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN
- x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XM
- x//VzMf/1czH/9XMx//VzMf/2tPO/93W0v/d1tH/2dDL/6iel/8LCwr/AAAA/wAAAP8AAADbAAAABwAA
- AAAAAADWAAAA/wAAAP8LCgr/ppyV/9jQyv/c1tH/29XQ/9zV0P/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW
- 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1dD/29XQ/9zW
- 0f/Y0Mr/ppyV/wsKCv8AAAD/AAAA/wAAANYAAAAAAAAAAQAAANQAAAD/AAAA/wUFBP+WjIX/1s3H/9zW
- 0f/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV
- 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/3NbR/9bNx/+WjIX/BQUE/wAAAP8AAAD/AAAA1AAA
- AAEAAAAAAAAAsAAAAP8AAAD/AAAA/19ZVP/MwLj/29TQ/9zW0v/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV
- 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zW
- 0v/b1ND/zMC4/19ZVP8AAAD/AAAA/wAAAP8AAACwAAAAAAAAAAAAAABqAAAA/wAAAP8AAAD/EA8O/5CF
- fv/Lv7f/187I/9nRzP/Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ
- y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0cz/187I/8u/t/+QhX7/EA8O/wAAAP8AAAD/AAAA/wAA
- AGoAAAAAAAAAAAAAABgAAADjAAAA/wAAAP8AAAD/EA4O/2FaVP+dkYn/ppqS/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ
- kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aa
- kv+dkYn/YVpU/xAODv8AAAD/AAAA/wAAAP8AAADjAAAAGAAAAAAAAAAAAAAAAAAAAGAAAAD/AAAA/wAA
- AP8AAAD/AAAA/wYFBf8QDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O
- Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/EA4N/wYFBf8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIgAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AGYAAADmAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
- AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADmAAAAZgAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAB3AAAAwAAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA
- ANgAAADYAAAA2AAAANgAAADAAAAAdwAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
- AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////AAAAAAAAAAAAAAAAAAAP/AAAAAAAAAAAAAAAAAAAA/gAAAAAAAAAAAA
- AAAAAAAHwAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAA
- AAEAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA
- AAAAAAABwAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAP+AAAAAAA
- AAAAAAAAAAAAH/8AAAAAAAAAAAAAAAAAAP//////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////8=
-</value>
- </data>
- <data name="$this.MaximumSize" type="System.Drawing.Size, System.Drawing">
- <value>625, 675</value>
- </data>
- <data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
- <value>625, 675</value>
- </data>
- <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
- <value>CenterScreen</value>
- </data>
- <data name="$this.Text" xml:space="preserve">
- <value>hakchi2</value>
- </data>
- <data name=">>fileToolStripMenuItem.Name" xml:space="preserve">
- <value>fileToolStripMenuItem</value>
- </data>
- <data name=">>fileToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>addMoreGamesToolStripMenuItem.Name" xml:space="preserve">
- <value>addMoreGamesToolStripMenuItem</value>
- </data>
- <data name=">>addMoreGamesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>presetsToolStripMenuItem.Name" xml:space="preserve">
- <value>presetsToolStripMenuItem</value>
- </data>
- <data name=">>presetsToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem2.Name" xml:space="preserve">
- <value>toolStripMenuItem2</value>
- </data>
- <data name=">>toolStripMenuItem2.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>addPresetToolStripMenuItem.Name" xml:space="preserve">
- <value>addPresetToolStripMenuItem</value>
- </data>
- <data name=">>addPresetToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>deletePresetToolStripMenuItem.Name" xml:space="preserve">
- <value>deletePresetToolStripMenuItem</value>
- </data>
- <data name=">>deletePresetToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>synchronizeToolStripMenuItem.Name" xml:space="preserve">
- <value>synchronizeToolStripMenuItem</value>
- </data>
- <data name=">>synchronizeToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>searchToolStripMenuItem.Name" xml:space="preserve">
- <value>searchToolStripMenuItem</value>
- </data>
- <data name=">>searchToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>downloadCoversForAllGamesToolStripMenuItem.Name" xml:space="preserve">
- <value>downloadCoversForAllGamesToolStripMenuItem</value>
- </data>
- <data name=">>downloadCoversForAllGamesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem1.Name" xml:space="preserve">
- <value>toolStripMenuItem1</value>
- </data>
- <data name=">>toolStripMenuItem1.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>exitToolStripMenuItem.Name" xml:space="preserve">
- <value>exitToolStripMenuItem</value>
- </data>
- <data name=">>exitToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>kernelToolStripMenuItem.Name" xml:space="preserve">
- <value>kernelToolStripMenuItem</value>
- </data>
- <data name=">>kernelToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>dumpKernelToolStripMenuItem.Name" xml:space="preserve">
- <value>dumpKernelToolStripMenuItem</value>
- </data>
- <data name=">>dumpKernelToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>flashOriginalKernelToolStripMenuItem.Name" xml:space="preserve">
- <value>flashOriginalKernelToolStripMenuItem</value>
- </data>
- <data name=">>flashOriginalKernelToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>flashCustomKernelToolStripMenuItem.Name" xml:space="preserve">
- <value>flashCustomKernelToolStripMenuItem</value>
- </data>
- <data name=">>flashCustomKernelToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>uninstallToolStripMenuItem.Name" xml:space="preserve">
- <value>uninstallToolStripMenuItem</value>
- </data>
- <data name=">>uninstallToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>modulesToolStripMenuItem.Name" xml:space="preserve">
- <value>modulesToolStripMenuItem</value>
- </data>
- <data name=">>modulesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>installModulesToolStripMenuItem.Name" xml:space="preserve">
- <value>installModulesToolStripMenuItem</value>
- </data>
- <data name=">>installModulesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>uninstallModulesToolStripMenuItem.Name" xml:space="preserve">
- <value>uninstallModulesToolStripMenuItem</value>
- </data>
- <data name=">>uninstallModulesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>settingsToolStripMenuItem.Name" xml:space="preserve">
- <value>settingsToolStripMenuItem</value>
- </data>
- <data name=">>settingsToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>languageToolStripMenuItem.Name" xml:space="preserve">
- <value>languageToolStripMenuItem</value>
- </data>
- <data name=">>languageToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>consoleTypeToolStripMenuItem.Name" xml:space="preserve">
- <value>consoleTypeToolStripMenuItem</value>
- </data>
- <data name=">>consoleTypeToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>nESMiniToolStripMenuItem.Name" xml:space="preserve">
- <value>nESMiniToolStripMenuItem</value>
- </data>
- <data name=">>nESMiniToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>famicomMiniToolStripMenuItem.Name" xml:space="preserve">
- <value>famicomMiniToolStripMenuItem</value>
- </data>
- <data name=">>famicomMiniToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>cloverconHackToolStripMenuItem.Name" xml:space="preserve">
- <value>cloverconHackToolStripMenuItem</value>
- </data>
- <data name=">>cloverconHackToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>resetUsingCombinationOfButtonsToolStripMenuItem.Name" xml:space="preserve">
- <value>resetUsingCombinationOfButtonsToolStripMenuItem</value>
- </data>
- <data name=">>resetUsingCombinationOfButtonsToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>selectButtonCombinationToolStripMenuItem.Name" xml:space="preserve">
- <value>selectButtonCombinationToolStripMenuItem</value>
- </data>
- <data name=">>selectButtonCombinationToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>enableAutofireToolStripMenuItem.Name" xml:space="preserve">
- <value>enableAutofireToolStripMenuItem</value>
- </data>
- <data name=">>enableAutofireToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>useXYOnClassicControllerAsAutofireABToolStripMenuItem.Name" xml:space="preserve">
- <value>useXYOnClassicControllerAsAutofireABToolStripMenuItem</value>
- </data>
- <data name=">>useXYOnClassicControllerAsAutofireABToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>upABStartOnSecondControllerToolStripMenuItem.Name" xml:space="preserve">
- <value>upABStartOnSecondControllerToolStripMenuItem</value>
- </data>
- <data name=">>upABStartOnSecondControllerToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>useExtendedFontToolStripMenuItem.Name" xml:space="preserve">
- <value>useExtendedFontToolStripMenuItem</value>
- </data>
- <data name=">>useExtendedFontToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>epilepsyProtectionToolStripMenuItem.Name" xml:space="preserve">
- <value>epilepsyProtectionToolStripMenuItem</value>
- </data>
- <data name=">>epilepsyProtectionToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>compressGamesIfPossibleToolStripMenuItem.Name" xml:space="preserve">
- <value>compressGamesIfPossibleToolStripMenuItem</value>
- </data>
- <data name=">>compressGamesIfPossibleToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>pagesfoldersTypeToolStripMenuItem.Name" xml:space="preserve">
- <value>pagesfoldersTypeToolStripMenuItem</value>
- </data>
- <data name=">>pagesfoldersTypeToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>disablePagefoldersToolStripMenuItem.Name" xml:space="preserve">
- <value>disablePagefoldersToolStripMenuItem</value>
- </data>
- <data name=">>disablePagefoldersToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem3.Name" xml:space="preserve">
- <value>toolStripMenuItem3</value>
- </data>
- <data name=">>toolStripMenuItem3.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>automaticToolStripMenuItem.Name" xml:space="preserve">
- <value>automaticToolStripMenuItem</value>
- </data>
- <data name=">>automaticToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>automaticOriginalToolStripMenuItem.Name" xml:space="preserve">
- <value>automaticOriginalToolStripMenuItem</value>
- </data>
- <data name=">>automaticOriginalToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>pagesToolStripMenuItem.Name" xml:space="preserve">
- <value>pagesToolStripMenuItem</value>
- </data>
- <data name=">>pagesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>pagesOriginalToolStripMenuItem.Name" xml:space="preserve">
- <value>pagesOriginalToolStripMenuItem</value>
- </data>
- <data name=">>pagesOriginalToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>foldersToolStripMenuItem.Name" xml:space="preserve">
- <value>foldersToolStripMenuItem</value>
- </data>
- <data name=">>foldersToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>foldersOriginalToolStripMenuItem.Name" xml:space="preserve">
- <value>foldersOriginalToolStripMenuItem</value>
- </data>
- <data name=">>foldersOriginalToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>foldersSplitByFirstLetterToolStripMenuItem.Name" xml:space="preserve">
- <value>foldersSplitByFirstLetterToolStripMenuItem</value>
- </data>
- <data name=">>foldersSplitByFirstLetterToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>foldersSplitByFirstLetterOriginalToolStripMenuItem.Name" xml:space="preserve">
- <value>foldersSplitByFirstLetterOriginalToolStripMenuItem</value>
- </data>
- <data name=">>foldersSplitByFirstLetterOriginalToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>maximumGamesPerFolderToolStripMenuItem.Name" xml:space="preserve">
- <value>maximumGamesPerFolderToolStripMenuItem</value>
- </data>
- <data name=">>maximumGamesPerFolderToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max20toolStripMenuItem.Name" xml:space="preserve">
- <value>max20toolStripMenuItem</value>
- </data>
- <data name=">>max20toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max25toolStripMenuItem.Name" xml:space="preserve">
- <value>max25toolStripMenuItem</value>
- </data>
- <data name=">>max25toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max30toolStripMenuItem.Name" xml:space="preserve">
- <value>max30toolStripMenuItem</value>
- </data>
- <data name=">>max30toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max35toolStripMenuItem.Name" xml:space="preserve">
- <value>max35toolStripMenuItem</value>
- </data>
- <data name=">>max35toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max40toolStripMenuItem.Name" xml:space="preserve">
- <value>max40toolStripMenuItem</value>
- </data>
- <data name=">>max40toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max45toolStripMenuItem.Name" xml:space="preserve">
- <value>max45toolStripMenuItem</value>
- </data>
- <data name=">>max45toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max50toolStripMenuItem.Name" xml:space="preserve">
- <value>max50toolStripMenuItem</value>
- </data>
- <data name=">>max50toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max60toolStripMenuItem.Name" xml:space="preserve">
- <value>max60toolStripMenuItem</value>
- </data>
- <data name=">>max60toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max70toolStripMenuItem.Name" xml:space="preserve">
- <value>max70toolStripMenuItem</value>
- </data>
- <data name=">>max70toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max80toolStripMenuItem.Name" xml:space="preserve">
- <value>max80toolStripMenuItem</value>
- </data>
- <data name=">>max80toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max90toolStripMenuItem.Name" xml:space="preserve">
- <value>max90toolStripMenuItem</value>
- </data>
- <data name=">>max90toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>max100toolStripMenuItem.Name" xml:space="preserve">
- <value>max100toolStripMenuItem</value>
- </data>
- <data name=">>max100toolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem4.Name" xml:space="preserve">
- <value>toolStripMenuItem4</value>
- </data>
- <data name=">>toolStripMenuItem4.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>customToolStripMenuItem.Name" xml:space="preserve">
- <value>customToolStripMenuItem</value>
- </data>
- <data name=">>customToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name" xml:space="preserve">
- <value>globalCommandLineArgumentsexpertsOnluToolStripMenuItem</value>
- </data>
- <data name=">>globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem5.Name" xml:space="preserve">
- <value>toolStripMenuItem5</value>
- </data>
- <data name=">>toolStripMenuItem5.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Name" xml:space="preserve">
- <value>saveSettingsToNESMiniNowToolStripMenuItem</value>
- </data>
- <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolsToolStripMenuItem.Name" xml:space="preserve">
- <value>toolsToolStripMenuItem</value>
- </data>
- <data name=">>toolsToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>saveStateManagerToolStripMenuItem.Name" xml:space="preserve">
- <value>saveStateManagerToolStripMenuItem</value>
- </data>
- <data name=">>saveStateManagerToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem6.Name" xml:space="preserve">
- <value>toolStripMenuItem6</value>
- </data>
- <data name=">>toolStripMenuItem6.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>FTPToolStripMenuItem.Name" xml:space="preserve">
- <value>FTPToolStripMenuItem</value>
- </data>
- <data name=">>FTPToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>openFTPInExplorerToolStripMenuItem.Name" xml:space="preserve">
- <value>openFTPInExplorerToolStripMenuItem</value>
- </data>
- <data name=">>openFTPInExplorerToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem7.Name" xml:space="preserve">
- <value>toolStripMenuItem7</value>
- </data>
- <data name=">>toolStripMenuItem7.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>shellToolStripMenuItem.Name" xml:space="preserve">
- <value>shellToolStripMenuItem</value>
- </data>
- <data name=">>shellToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>openTelnetToolStripMenuItem.Name" xml:space="preserve">
- <value>openTelnetToolStripMenuItem</value>
- </data>
- <data name=">>openTelnetToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripMenuItem8.Name" xml:space="preserve">
- <value>toolStripMenuItem8</value>
- </data>
- <data name=">>toolStripMenuItem8.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>takeScreenshotToolStripMenuItem.Name" xml:space="preserve">
- <value>takeScreenshotToolStripMenuItem</value>
- </data>
- <data name=">>takeScreenshotToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>helpToolStripMenuItem.Name" xml:space="preserve">
- <value>helpToolStripMenuItem</value>
- </data>
- <data name=">>helpToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>gitHubPageWithActualReleasesToolStripMenuItem.Name" xml:space="preserve">
- <value>gitHubPageWithActualReleasesToolStripMenuItem</value>
- </data>
- <data name=">>gitHubPageWithActualReleasesToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>fAQToolStripMenuItem.Name" xml:space="preserve">
- <value>fAQToolStripMenuItem</value>
- </data>
- <data name=">>fAQToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>aboutToolStripMenuItem.Name" xml:space="preserve">
- <value>aboutToolStripMenuItem</value>
- </data>
- <data name=">>aboutToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripStatusConnectionIcon.Name" xml:space="preserve">
- <value>toolStripStatusConnectionIcon</value>
- </data>
- <data name=">>toolStripStatusConnectionIcon.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripStatusLabelSelected.Name" xml:space="preserve">
- <value>toolStripStatusLabelSelected</value>
- </data>
- <data name=">>toolStripStatusLabelSelected.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripStatusLabelSize.Name" xml:space="preserve">
- <value>toolStripStatusLabelSize</value>
- </data>
- <data name=">>toolStripStatusLabelSize.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>toolStripProgressBar.Name" xml:space="preserve">
- <value>toolStripProgressBar</value>
- </data>
- <data name=">>toolStripProgressBar.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripProgressBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>openFileDialogNes.Name" xml:space="preserve">
- <value>openFileDialogNes</value>
- </data>
- <data name=">>openFileDialogNes.Type" xml:space="preserve">
- <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>selectAllToolStripMenuItem.Name" xml:space="preserve">
- <value>selectAllToolStripMenuItem</value>
- </data>
- <data name=">>selectAllToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>unselectAllToolStripMenuItem.Name" xml:space="preserve">
- <value>unselectAllToolStripMenuItem</value>
- </data>
- <data name=">>unselectAllToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>deleteGameToolStripMenuItem.Name" xml:space="preserve">
- <value>deleteGameToolStripMenuItem</value>
- </data>
- <data name=">>deleteGameToolStripMenuItem.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>openFileDialogImage.Name" xml:space="preserve">
- <value>openFileDialogImage</value>
- </data>
- <data name=">>openFileDialogImage.Type" xml:space="preserve">
- <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>timerCalculateGames.Name" xml:space="preserve">
- <value>timerCalculateGames</value>
- </data>
- <data name=">>timerCalculateGames.Type" xml:space="preserve">
- <value>System.Windows.Forms.Timer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>timerConnectionCheck.Name" xml:space="preserve">
- <value>timerConnectionCheck</value>
- </data>
- <data name=">>timerConnectionCheck.Type" xml:space="preserve">
- <value>System.Windows.Forms.Timer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name=">>$this.Name" xml:space="preserve">
- <value>MainForm</value>
- </data>
- <data name=">>$this.Type" xml:space="preserve">
- <value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
+<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <metadata name="menuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>17, 17</value> + </metadata> + <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="menuStrip.Location" type="System.Drawing.Point, System.Drawing"> + <value>0, 0</value> + </data> + <data name="menuStrip.Size" type="System.Drawing.Size, System.Drawing"> + <value>609, 24</value> + </data> + <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> + <data name="menuStrip.TabIndex" type="System.Int32, mscorlib"> + <value>1</value> + </data> + <data name="menuStrip.Text" xml:space="preserve"> + <value>menuStrip</value> + </data> + <data name=">>menuStrip.Name" xml:space="preserve"> + <value>menuStrip</value> + </data> + <data name=">>menuStrip.Type" xml:space="preserve"> + <value>System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>menuStrip.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>menuStrip.ZOrder" xml:space="preserve"> + <value>6</value> + </data> + <data name="fileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>37, 20</value> + </data> + <data name="fileToolStripMenuItem.Text" xml:space="preserve"> + <value>&File</value> + </data> + <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> + <data name="addMoreGamesToolStripMenuItem.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms"> + <value>Ctrl+O</value> + </data> + <data name="addMoreGamesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>238, 22</value> + </data> + <data name="addMoreGamesToolStripMenuItem.Text" xml:space="preserve"> + <value>Add more &games</value> + </data> + <data name="presetsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>238, 22</value> + </data> + <data name="presetsToolStripMenuItem.Text" xml:space="preserve"> + <value>Selection presets</value> + </data> + <data name="toolStripMenuItem2.Size" type="System.Drawing.Size, System.Drawing"> + <value>139, 6</value> + </data> + <data name="addPresetToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>142, 22</value> + </data> + <data name="addPresetToolStripMenuItem.Text" xml:space="preserve"> + <value>Add preset</value> + </data> + <data name="deletePresetToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>142, 22</value> + </data> + <data name="deletePresetToolStripMenuItem.Text" xml:space="preserve"> + <value>Delete preset</value> + </data> + <data name="synchronizeToolStripMenuItem.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms"> + <value>F5</value> + </data> + <data name="synchronizeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>238, 22</value> + </data> + <data name="synchronizeToolStripMenuItem.Text" xml:space="preserve"> + <value>Synchronize</value> + </data> + <data name="searchToolStripMenuItem.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms"> + <value>Ctrl+F</value> + </data> + <data name="searchToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>238, 22</value> + </data> + <data name="searchToolStripMenuItem.Text" xml:space="preserve"> + <value>Search</value> + </data> + <data name="downloadCoversForAllGamesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>238, 22</value> + </data> + <data name="downloadCoversForAllGamesToolStripMenuItem.Text" xml:space="preserve"> + <value>Download box art for all games</value> + </data> + <data name="toolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing"> + <value>235, 6</value> + </data> + <data name="exitToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>238, 22</value> + </data> + <data name="exitToolStripMenuItem.Text" xml:space="preserve"> + <value>&Exit</value> + </data> + <data name="kernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>52, 20</value> + </data> + <data name="kernelToolStripMenuItem.Text" xml:space="preserve"> + <value>&Kernel</value> + </data> + <data name="dumpKernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>179, 22</value> + </data> + <data name="dumpKernelToolStripMenuItem.Text" xml:space="preserve"> + <value>Dump kernel</value> + </data> + <data name="flashOriginalKernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>179, 22</value> + </data> + <data name="flashOriginalKernelToolStripMenuItem.Text" xml:space="preserve"> + <value>Flash original kernel</value> + </data> + <data name="flashCustomKernelToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>179, 22</value> + </data> + <data name="flashCustomKernelToolStripMenuItem.Text" xml:space="preserve"> + <value>Flash custom kernel</value> + </data> + <data name="uninstallToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>179, 22</value> + </data> + <data name="uninstallToolStripMenuItem.Text" xml:space="preserve"> + <value>Uninstall</value> + </data> + <data name="modulesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>65, 20</value> + </data> + <data name="modulesToolStripMenuItem.Text" xml:space="preserve"> + <value>&Modules</value> + </data> + <data name="installModulesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>197, 22</value> + </data> + <data name="installModulesToolStripMenuItem.Text" xml:space="preserve"> + <value>Install extra modules</value> + </data> + <data name="uninstallModulesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>197, 22</value> + </data> + <data name="uninstallModulesToolStripMenuItem.Text" xml:space="preserve"> + <value>Uninstall extra modules</value> + </data> + <data name="settingsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>61, 20</value> + </data> + <data name="settingsToolStripMenuItem.Text" xml:space="preserve"> + <value>&Settings</value> + </data> + <data name="languageToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAA0BJREFUOE91 + k31Qy3Ecx39TuqPrPPVHqW1cHmZrq8zKsqxpKzYPc+hhbpU8DUMllkxW2M3VnKeIphBOpTuVY51E3HAe + SpEreUy1TlQ4lKO3X/O7czivu/d9/nm/Pvf9/PEl/maGTE5LP2BxKbU1zLQ974qva+tNrGl8HWrMyXem + Kv9ne36xa3VL185H7T1dj9t7UPumG7Wt79Hc+QGNHb3vbC/f6qnqv2zIq3BVW82X1jYsh/VZB441lSGt + xQ5LSztM9+xYfb4FmpNXoLmadjYwVvXna3jhy2izc7NLZ93iI+GBAuWthXjysRKFPZ1YY/+KhJsdiMtr + QMyeKujuajHfuOsQpf7CT2FaxLVOHYio94e+WYWHvVbU9nWhrL8fiZ19iKtpQ+zxBij1NiSVmCGJNw34 + KrVBlE4QvhG7rzHKvcC6yEJs41IYu7tR0Pcd5k/fsOr5B0RWvkJ0bh3m6W5iwbZCHG6KRExx1AmH7M4M + d/EJTuv3yVSAv6MEEZevY1H9OywjRXVTD1S3O6AoaoYy6x7CtdegyjYhszYU6qqFrY4Fo7xm0encFEzQ + xIC7/gSCcm5AWPQU4osvEVr+AuIzzZDuf4gInQ0zoisRvTcN2utCBJ/i/3AsGOkpcR/LShpg8lPBWWkC + b10NhDurMW3PA0zPqkNI5n1INpGyugrc0Avgr0gH+ygDE3VzvjgWDMLg6toYbAPY0kOYsiEJvtuTIdSd + wvQV1QiOq4JgodUhTxGeBVtkAUepB0e+4w6lE8SkQIN5PC8Dk4P3w22LJ9wyxsAzzxssQyS4YUXgzCwG + R3wavhILuNLD8JPvA0dqTKR0ghBJN3sIZ+/tFskPwCdVANd1YzAseRRGGDzATJWBlZKAgKgcCJbkQ6Qu + QJim8MVEsXY4pf9CqsyWixTmfpFaD7ZRCLqBBY/dPvA+yAPvSCRkm0swN70Cyoyyz/QAmWTocDcapf6G + MUEiF4RtfSvemIyQgigEnpNBcnwjFmSfgSr3BjlL34wez9aQVX8yIx3SXzjRhjgHuDPZB8fJBPVB8Rp7 + iDrTLohOqacLwiw0J+fFZCeQjDcZl0Hhfwx+lhFkxpJhUnM0mcG7nchQEMRPy1alIv5O+PUAAAAASUVO + RK5CYII= +</value> + </data> + <data name="languageToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="languageToolStripMenuItem.Text" xml:space="preserve"> + <value>Language</value> + </data> + <data name="consoleTypeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="consoleTypeToolStripMenuItem.Text" xml:space="preserve"> + <value>Console type</value> + </data> + <data name="nESMiniToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>151, 22</value> + </data> + <data name="nESMiniToolStripMenuItem.Text" xml:space="preserve"> + <value>NES Mini</value> + </data> + <data name="famicomMiniToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>151, 22</value> + </data> + <data name="famicomMiniToolStripMenuItem.Text" xml:space="preserve"> + <value>Famicom Mini</value> + </data> + <data name="cloverconHackToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="cloverconHackToolStripMenuItem.Text" xml:space="preserve"> + <value>Controller hacks</value> + </data> + <data name="resetUsingCombinationOfButtonsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>308, 22</value> + </data> + <data name="resetUsingCombinationOfButtonsToolStripMenuItem.Text" xml:space="preserve"> + <value>Use button combination to reset</value> + </data> + <data name="selectButtonCombinationToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>308, 22</value> + </data> + <data name="selectButtonCombinationToolStripMenuItem.Text" xml:space="preserve"> + <value>Select reset button combination</value> + </data> + <data name="enableAutofireToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>308, 22</value> + </data> + <data name="enableAutofireToolStripMenuItem.Text" xml:space="preserve"> + <value>Use "Select+A/B" to enable autofire on A/B </value> + </data> + <data name="useXYOnClassicControllerAsAutofireABToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>308, 22</value> + </data> + <data name="useXYOnClassicControllerAsAutofireABToolStripMenuItem.Text" xml:space="preserve"> + <value>Use X/Y on Classic Controller as autofire A/B</value> + </data> + <data name="upABStartOnSecondControllerToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>308, 22</value> + </data> + <data name="upABStartOnSecondControllerToolStripMenuItem.Text" xml:space="preserve"> + <value>"Up+A+B = Start" on 2nd controller</value> + </data> + <data name="useExtendedFontToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="useExtendedFontToolStripMenuItem.Text" xml:space="preserve"> + <value>Use extended font</value> + </data> + <data name="epilepsyProtectionToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="epilepsyProtectionToolStripMenuItem.Text" xml:space="preserve"> + <value>Disable epilepsy protection</value> + </data> + <data name="compressGamesIfPossibleToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="compressGamesIfPossibleToolStripMenuItem.Text" xml:space="preserve"> + <value>Compress non-NES games (for additional emulator mod)</value> + </data> + <data name="pagesfoldersTypeToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="pagesfoldersTypeToolStripMenuItem.Text" xml:space="preserve"> + <value>Pages/folders structure</value> + </data> + <data name="disablePagefoldersToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="disablePagefoldersToolStripMenuItem.Text" xml:space="preserve"> + <value>Disable page/folders</value> + </data> + <data name="toolStripMenuItem3.Size" type="System.Drawing.Size, System.Drawing"> + <value>353, 6</value> + </data> + <data name="automaticToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="automaticToolStripMenuItem.Text" xml:space="preserve"> + <value>Automatic</value> + </data> + <data name="automaticOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="automaticOriginalToolStripMenuItem.Text" xml:space="preserve"> + <value>Original games in root -> Automatic in subfolder</value> + </data> + <data name="pagesToolStripMenuItem.ImageScaling" type="System.Windows.Forms.ToolStripItemImageScaling, System.Windows.Forms"> + <value>None</value> + </data> + <data name="pagesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="pagesToolStripMenuItem.Text" xml:space="preserve"> + <value>Pages, split games equally</value> + </data> + <data name="pagesOriginalToolStripMenuItem.ImageScaling" type="System.Windows.Forms.ToolStripItemImageScaling, System.Windows.Forms"> + <value>None</value> + </data> + <data name="pagesOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="pagesOriginalToolStripMenuItem.Text" xml:space="preserve"> + <value>Original games in root -> Pages, split games equally</value> + </data> + <data name="foldersToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="foldersToolStripMenuItem.Text" xml:space="preserve"> + <value>Folders, split games equally</value> + </data> + <data name="foldersOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="foldersOriginalToolStripMenuItem.Text" xml:space="preserve"> + <value>Original games in root -> Folders, split games equally</value> + </data> + <data name="foldersSplitByFirstLetterToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="foldersSplitByFirstLetterToolStripMenuItem.Text" xml:space="preserve"> + <value>Folders, split by first letter</value> + </data> + <data name="foldersSplitByFirstLetterOriginalToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="foldersSplitByFirstLetterOriginalToolStripMenuItem.Text" xml:space="preserve"> + <value>Original games in root -> Folders, split by first letter</value> + </data> + <data name="maximumGamesPerFolderToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="maximumGamesPerFolderToolStripMenuItem.Text" xml:space="preserve"> + <value>Maximum games per page/folder</value> + </data> + <data name="max20toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max20toolStripMenuItem.Text" xml:space="preserve"> + <value>20</value> + </data> + <data name="max25toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max25toolStripMenuItem.Text" xml:space="preserve"> + <value>25</value> + </data> + <data name="max30toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max30toolStripMenuItem.Text" xml:space="preserve"> + <value>30</value> + </data> + <data name="max35toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max35toolStripMenuItem.Text" xml:space="preserve"> + <value>35</value> + </data> + <data name="max40toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max40toolStripMenuItem.Text" xml:space="preserve"> + <value>40</value> + </data> + <data name="max45toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max45toolStripMenuItem.Text" xml:space="preserve"> + <value>45</value> + </data> + <data name="max50toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max50toolStripMenuItem.Text" xml:space="preserve"> + <value>50</value> + </data> + <data name="max60toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max60toolStripMenuItem.Text" xml:space="preserve"> + <value>60</value> + </data> + <data name="max70toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max70toolStripMenuItem.Text" xml:space="preserve"> + <value>70</value> + </data> + <data name="max80toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max80toolStripMenuItem.Text" xml:space="preserve"> + <value>80</value> + </data> + <data name="max90toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max90toolStripMenuItem.Text" xml:space="preserve"> + <value>90</value> + </data> + <data name="max100toolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>92, 22</value> + </data> + <data name="max100toolStripMenuItem.Text" xml:space="preserve"> + <value>100</value> + </data> + <data name="toolStripMenuItem4.Size" type="System.Drawing.Size, System.Drawing"> + <value>353, 6</value> + </data> + <data name="customToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>356, 22</value> + </data> + <data name="customToolStripMenuItem.Text" xml:space="preserve"> + <value>Custom - show Folders Manager every time</value> + </data> + <data name="globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Text" xml:space="preserve"> + <value>Global command-line arguments (experts only!)</value> + </data> + <data name="toolStripMenuItem5.Size" type="System.Drawing.Size, System.Drawing"> + <value>373, 6</value> + </data> + <data name="saveSettingsToNESMiniNowToolStripMenuItem.Font" type="System.Drawing.Font, System.Drawing"> + <value>Segoe UI, 9pt, style=Bold</value> + </data> + <data name="saveSettingsToNESMiniNowToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>376, 22</value> + </data> + <data name="saveSettingsToNESMiniNowToolStripMenuItem.Text" xml:space="preserve"> + <value>Save settings to NES Mini now</value> + </data> + <data name="toolsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>47, 20</value> + </data> + <data name="toolsToolStripMenuItem.Text" xml:space="preserve"> + <value>&Tools</value> + </data> + <data name="saveStateManagerToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>331, 22</value> + </data> + <data name="saveStateManagerToolStripMenuItem.Text" xml:space="preserve"> + <value>Save-State Manager</value> + </data> + <data name="toolStripMenuItem6.Size" type="System.Drawing.Size, System.Drawing"> + <value>328, 6</value> + </data> + <data name="FTPToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>331, 22</value> + </data> + <data name="FTPToolStripMenuItem.Text" xml:space="preserve"> + <value>FTP server on ftp://root:clover@127.0.0.1:1021</value> + </data> + <data name="openFTPInExplorerToolStripMenuItem.Enabled" type="System.Boolean, mscorlib"> + <value>False</value> + </data> + <data name="openFTPInExplorerToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>331, 22</value> + </data> + <data name="openFTPInExplorerToolStripMenuItem.Text" xml:space="preserve"> + <value>Open FTP client</value> + </data> + <data name="toolStripMenuItem7.Size" type="System.Drawing.Size, System.Drawing"> + <value>328, 6</value> + </data> + <data name="shellToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>331, 22</value> + </data> + <data name="shellToolStripMenuItem.Text" xml:space="preserve"> + <value>Shell server on telnet://127.0.0.1:1023 (login:root)</value> + </data> + <data name="openTelnetToolStripMenuItem.Enabled" type="System.Boolean, mscorlib"> + <value>False</value> + </data> + <data name="openTelnetToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>331, 22</value> + </data> + <data name="openTelnetToolStripMenuItem.Text" xml:space="preserve"> + <value>Open Telnet client</value> + </data> + <data name="toolStripMenuItem8.Size" type="System.Drawing.Size, System.Drawing"> + <value>328, 6</value> + </data> + <data name="takeScreenshotToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>331, 22</value> + </data> + <data name="takeScreenshotToolStripMenuItem.Text" xml:space="preserve"> + <value>Take screenshot</value> + </data> + <data name="helpToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>44, 20</value> + </data> + <data name="helpToolStripMenuItem.Text" xml:space="preserve"> + <value>&Help</value> + </data> + <data name="gitHubPageWithActualReleasesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>246, 22</value> + </data> + <data name="gitHubPageWithActualReleasesToolStripMenuItem.Text" xml:space="preserve"> + <value>GitHub page with actual releases</value> + </data> + <data name="fAQToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>246, 22</value> + </data> + <data name="fAQToolStripMenuItem.Text" xml:space="preserve"> + <value>FAQ</value> + </data> + <data name="aboutToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>246, 22</value> + </data> + <data name="aboutToolStripMenuItem.Text" xml:space="preserve"> + <value>About...</value> + </data> + <data name="checkedListBoxGames.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> + <value>None</value> + </data> + <data name="checkedListBoxGames.Location" type="System.Drawing.Point, System.Drawing"> + <value>12, 57</value> + </data> + <data name="checkedListBoxGames.Size" type="System.Drawing.Size, System.Drawing"> + <value>282, 499</value> + </data> + <data name="checkedListBoxGames.TabIndex" type="System.Int32, mscorlib"> + <value>1</value> + </data> + <data name=">>checkedListBoxGames.Name" xml:space="preserve"> + <value>checkedListBoxGames</value> + </data> + <data name=">>checkedListBoxGames.Type" xml:space="preserve"> + <value>System.Windows.Forms.CheckedListBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>checkedListBoxGames.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>checkedListBoxGames.ZOrder" xml:space="preserve"> + <value>5</value> + </data> + <data name="groupBoxOptions.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> + <value>None</value> + </data> + <data name="buttonShowGameGenieDatabase.Location" type="System.Drawing.Point, System.Drawing"> + <value>252, 286</value> + </data> + <data name="buttonShowGameGenieDatabase.Size" type="System.Drawing.Size, System.Drawing"> + <value>25, 20</value> + </data> + <data name="buttonShowGameGenieDatabase.TabIndex" type="System.Int32, mscorlib"> + <value>12</value> + </data> + <data name="buttonShowGameGenieDatabase.Text" xml:space="preserve"> + <value>+</value> + </data> + <data name=">>buttonShowGameGenieDatabase.Name" xml:space="preserve"> + <value>buttonShowGameGenieDatabase</value> + </data> + <data name=">>buttonShowGameGenieDatabase.Type" xml:space="preserve"> + <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>buttonShowGameGenieDatabase.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>buttonShowGameGenieDatabase.ZOrder" xml:space="preserve"> + <value>0</value> + </data> + <data name="maskedTextBoxReleaseDate.Location" type="System.Drawing.Point, System.Drawing"> + <value>210, 154</value> + </data> + <data name="maskedTextBoxReleaseDate.Mask" xml:space="preserve"> + <value>0000-00-00</value> + </data> + <data name="maskedTextBoxReleaseDate.Size" type="System.Drawing.Size, System.Drawing"> + <value>65, 20</value> + </data> + <data name="maskedTextBoxReleaseDate.TabIndex" type="System.Int32, mscorlib"> + <value>6</value> + </data> + <data name=">>maskedTextBoxReleaseDate.Name" xml:space="preserve"> + <value>maskedTextBoxReleaseDate</value> + </data> + <data name=">>maskedTextBoxReleaseDate.Type" xml:space="preserve"> + <value>System.Windows.Forms.MaskedTextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>maskedTextBoxReleaseDate.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>maskedTextBoxReleaseDate.ZOrder" xml:space="preserve"> + <value>1</value> + </data> + <data name="label1.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="label1.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 157</value> + </data> + <data name="label1.Size" type="System.Drawing.Size, System.Drawing"> + <value>150, 13</value> + </data> + <data name="label1.TabIndex" type="System.Int32, mscorlib"> + <value>5</value> + </data> + <data name="label1.Text" xml:space="preserve"> + <value>Release date (YYYY-MM-DD):</value> + </data> + <data name=">>label1.Name" xml:space="preserve"> + <value>label1</value> + </data> + <data name=">>label1.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label1.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>label1.ZOrder" xml:space="preserve"> + <value>2</value> + </data> + <data name="textBoxGameGenie.Location" type="System.Drawing.Point, System.Drawing"> + <value>19, 286</value> + </data> + <data name="textBoxGameGenie.Size" type="System.Drawing.Size, System.Drawing"> + <value>227, 20</value> + </data> + <data name="textBoxGameGenie.TabIndex" type="System.Int32, mscorlib"> + <value>11</value> + </data> + <data name=">>textBoxGameGenie.Name" xml:space="preserve"> + <value>textBoxGameGenie</value> + </data> + <data name=">>textBoxGameGenie.Type" xml:space="preserve"> + <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>textBoxGameGenie.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>textBoxGameGenie.ZOrder" xml:space="preserve"> + <value>3</value> + </data> + <data name="label7.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="label7.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms"> + <value>NoControl</value> + </data> + <data name="label7.Location" type="System.Drawing.Point, System.Drawing"> + <value>16, 269</value> + </data> + <data name="label7.Size" type="System.Drawing.Size, System.Drawing"> + <value>194, 13</value> + </data> + <data name="label7.TabIndex" type="System.Int32, mscorlib"> + <value>17</value> + </data> + <data name="label7.Text" xml:space="preserve"> + <value>Game Genie codes (comma separated):</value> + </data> + <data name=">>label7.Name" xml:space="preserve"> + <value>label7</value> + </data> + <data name=">>label7.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label7.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>label7.ZOrder" xml:space="preserve"> + <value>4</value> + </data> + <data name="label6.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 76</value> + </data> + <data name="label6.Size" type="System.Drawing.Size, System.Drawing"> + <value>82, 63</value> + </data> + <data name="label6.TabIndex" type="System.Int32, mscorlib"> + <value>16</value> + </data> + <data name="label6.Text" xml:space="preserve"> + <value>Max players:</value> + </data> + <data name="label6.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing"> + <value>MiddleLeft</value> + </data> + <data name=">>label6.Name" xml:space="preserve"> + <value>label6</value> + </data> + <data name=">>label6.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label6.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>label6.ZOrder" xml:space="preserve"> + <value>5</value> + </data> + <data name="radioButtonTwoSim.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="radioButtonTwoSim.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms"> + <value>NoControl</value> + </data> + <data name="radioButtonTwoSim.Location" type="System.Drawing.Point, System.Drawing"> + <value>103, 122</value> + </data> + <data name="radioButtonTwoSim.Size" type="System.Drawing.Size, System.Drawing"> + <value>156, 17</value> + </data> + <data name="radioButtonTwoSim.TabIndex" type="System.Int32, mscorlib"> + <value>5</value> + </data> + <data name="radioButtonTwoSim.Text" xml:space="preserve"> + <value>Two players, simultaneously</value> + </data> + <data name=">>radioButtonTwoSim.Name" xml:space="preserve"> + <value>radioButtonTwoSim</value> + </data> + <data name=">>radioButtonTwoSim.Type" xml:space="preserve"> + <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>radioButtonTwoSim.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>radioButtonTwoSim.ZOrder" xml:space="preserve"> + <value>6</value> + </data> + <data name="buttonGoogle.Location" type="System.Drawing.Point, System.Drawing"> + <value>219, 427</value> + </data> + <data name="buttonGoogle.Size" type="System.Drawing.Size, System.Drawing"> + <value>61, 23</value> + </data> + <data name="buttonGoogle.TabIndex" type="System.Int32, mscorlib"> + <value>15</value> + </data> + <data name="buttonGoogle.Text" xml:space="preserve"> + <value>Google</value> + </data> + <data name=">>buttonGoogle.Name" xml:space="preserve"> + <value>buttonGoogle</value> + </data> + <data name=">>buttonGoogle.Type" xml:space="preserve"> + <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>buttonGoogle.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>buttonGoogle.ZOrder" xml:space="preserve"> + <value>7</value> + </data> + <data name="buttonBrowseImage.Location" type="System.Drawing.Point, System.Drawing"> + <value>219, 384</value> + </data> + <data name="buttonBrowseImage.Size" type="System.Drawing.Size, System.Drawing"> + <value>61, 23</value> + </data> + <data name="buttonBrowseImage.TabIndex" type="System.Int32, mscorlib"> + <value>13</value> + </data> + <data name="buttonBrowseImage.Text" xml:space="preserve"> + <value>Browse</value> + </data> + <data name=">>buttonBrowseImage.Name" xml:space="preserve"> + <value>buttonBrowseImage</value> + </data> + <data name=">>buttonBrowseImage.Type" xml:space="preserve"> + <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>buttonBrowseImage.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>buttonBrowseImage.ZOrder" xml:space="preserve"> + <value>8</value> + </data> + <data name="pictureBoxArt.Location" type="System.Drawing.Point, System.Drawing"> + <value>71, 316</value> + </data> + <data name="pictureBoxArt.Size" type="System.Drawing.Size, System.Drawing"> + <value>140, 204</value> + </data> + <data name="pictureBoxArt.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms"> + <value>Zoom</value> + </data> + <data name="pictureBoxArt.TabIndex" type="System.Int32, mscorlib"> + <value>12</value> + </data> + <data name=">>pictureBoxArt.Name" xml:space="preserve"> + <value>pictureBoxArt</value> + </data> + <data name=">>pictureBoxArt.Type" xml:space="preserve"> + <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>pictureBoxArt.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>pictureBoxArt.ZOrder" xml:space="preserve"> + <value>9</value> + </data> + <data name="label4.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 316</value> + </data> + <data name="label4.Size" type="System.Drawing.Size, System.Drawing"> + <value>53, 204</value> + </data> + <data name="label4.TabIndex" type="System.Int32, mscorlib"> + <value>11</value> + </data> + <data name="label4.Text" xml:space="preserve"> + <value>Box art:</value> + </data> + <data name="label4.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing"> + <value>MiddleCenter</value> + </data> + <data name=">>label4.Name" xml:space="preserve"> + <value>label4</value> + </data> + <data name=">>label4.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label4.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>label4.ZOrder" xml:space="preserve"> + <value>10</value> + </data> + <data name="textBoxArguments.Location" type="System.Drawing.Point, System.Drawing"> + <value>18, 237</value> + </data> + <data name="textBoxArguments.Size" type="System.Drawing.Size, System.Drawing"> + <value>257, 20</value> + </data> + <data name="textBoxArguments.TabIndex" type="System.Int32, mscorlib"> + <value>10</value> + </data> + <data name=">>textBoxArguments.Name" xml:space="preserve"> + <value>textBoxArguments</value> + </data> + <data name=">>textBoxArguments.Type" xml:space="preserve"> + <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>textBoxArguments.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>textBoxArguments.ZOrder" xml:space="preserve"> + <value>11</value> + </data> + <data name="label3.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="label3.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 220</value> + </data> + <data name="label3.Size" type="System.Drawing.Size, System.Drawing"> + <value>253, 13</value> + </data> + <data name="label3.TabIndex" type="System.Int32, mscorlib"> + <value>9</value> + </data> + <data name="label3.Text" xml:space="preserve"> + <value>Command line arguments (for advanced users only!):</value> + </data> + <data name=">>label3.Name" xml:space="preserve"> + <value>label3</value> + </data> + <data name=">>label3.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label3.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>label3.ZOrder" xml:space="preserve"> + <value>12</value> + </data> + <data name="textBoxPublisher.Location" type="System.Drawing.Point, System.Drawing"> + <value>71, 186</value> + </data> + <data name="textBoxPublisher.Size" type="System.Drawing.Size, System.Drawing"> + <value>204, 20</value> + </data> + <data name="textBoxPublisher.TabIndex" type="System.Int32, mscorlib"> + <value>8</value> + </data> + <data name=">>textBoxPublisher.Name" xml:space="preserve"> + <value>textBoxPublisher</value> + </data> + <data name=">>textBoxPublisher.Type" xml:space="preserve"> + <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>textBoxPublisher.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>textBoxPublisher.ZOrder" xml:space="preserve"> + <value>13</value> + </data> + <data name="label2.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="label2.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 189</value> + </data> + <data name="label2.Size" type="System.Drawing.Size, System.Drawing"> + <value>53, 13</value> + </data> + <data name="label2.TabIndex" type="System.Int32, mscorlib"> + <value>7</value> + </data> + <data name="label2.Text" xml:space="preserve"> + <value>Publisher:</value> + </data> + <data name=">>label2.Name" xml:space="preserve"> + <value>label2</value> + </data> + <data name=">>label2.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label2.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>label2.ZOrder" xml:space="preserve"> + <value>14</value> + </data> + <data name="radioButtonTwo.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="radioButtonTwo.Location" type="System.Drawing.Point, System.Drawing"> + <value>103, 99</value> + </data> + <data name="radioButtonTwo.Size" type="System.Drawing.Size, System.Drawing"> + <value>174, 17</value> + </data> + <data name="radioButtonTwo.TabIndex" type="System.Int32, mscorlib"> + <value>4</value> + </data> + <data name="radioButtonTwo.Text" xml:space="preserve"> + <value>Two players, not simultaneously</value> + </data> + <data name=">>radioButtonTwo.Name" xml:space="preserve"> + <value>radioButtonTwo</value> + </data> + <data name=">>radioButtonTwo.Type" xml:space="preserve"> + <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>radioButtonTwo.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>radioButtonTwo.ZOrder" xml:space="preserve"> + <value>15</value> + </data> + <data name="radioButtonOne.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="radioButtonOne.Location" type="System.Drawing.Point, System.Drawing"> + <value>103, 76</value> + </data> + <data name="radioButtonOne.Size" type="System.Drawing.Size, System.Drawing"> + <value>76, 17</value> + </data> + <data name="radioButtonOne.TabIndex" type="System.Int32, mscorlib"> + <value>3</value> + </data> + <data name="radioButtonOne.Text" xml:space="preserve"> + <value>One player</value> + </data> + <data name=">>radioButtonOne.Name" xml:space="preserve"> + <value>radioButtonOne</value> + </data> + <data name=">>radioButtonOne.Type" xml:space="preserve"> + <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>radioButtonOne.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>radioButtonOne.ZOrder" xml:space="preserve"> + <value>16</value> + </data> + <data name="textBoxName.Location" type="System.Drawing.Point, System.Drawing"> + <value>59, 46</value> + </data> + <data name="textBoxName.Size" type="System.Drawing.Size, System.Drawing"> + <value>216, 20</value> + </data> + <data name="textBoxName.TabIndex" type="System.Int32, mscorlib"> + <value>2</value> + </data> + <data name=">>textBoxName.Name" xml:space="preserve"> + <value>textBoxName</value> + </data> + <data name=">>textBoxName.Type" xml:space="preserve"> + <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>textBoxName.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>textBoxName.ZOrder" xml:space="preserve"> + <value>17</value> + </data> + <data name="labelName.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="labelName.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 49</value> + </data> + <data name="labelName.Size" type="System.Drawing.Size, System.Drawing"> + <value>38, 13</value> + </data> + <data name="labelName.TabIndex" type="System.Int32, mscorlib"> + <value>1</value> + </data> + <data name="labelName.Text" xml:space="preserve"> + <value>Name:</value> + </data> + <data name=">>labelName.Name" xml:space="preserve"> + <value>labelName</value> + </data> + <data name=">>labelName.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>labelName.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>labelName.ZOrder" xml:space="preserve"> + <value>18</value> + </data> + <data name="labelID.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="labelID.Location" type="System.Drawing.Point, System.Drawing"> + <value>15, 21</value> + </data> + <data name="labelID.Size" type="System.Drawing.Size, System.Drawing"> + <value>21, 13</value> + </data> + <data name="labelID.TabIndex" type="System.Int32, mscorlib"> + <value>0</value> + </data> + <data name="labelID.Text" xml:space="preserve"> + <value>ID:</value> + </data> + <data name=">>labelID.Name" xml:space="preserve"> + <value>labelID</value> + </data> + <data name=">>labelID.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>labelID.Parent" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>labelID.ZOrder" xml:space="preserve"> + <value>19</value> + </data> + <data name="groupBoxOptions.Location" type="System.Drawing.Point, System.Drawing"> + <value>306, 33</value> + </data> + <data name="groupBoxOptions.Size" type="System.Drawing.Size, System.Drawing"> + <value>293, 529</value> + </data> + <data name="groupBoxOptions.TabIndex" type="System.Int32, mscorlib"> + <value>4</value> + </data> + <data name="groupBoxOptions.Text" xml:space="preserve"> + <value>Game options</value> + </data> + <data name=">>groupBoxOptions.Name" xml:space="preserve"> + <value>groupBoxOptions</value> + </data> + <data name=">>groupBoxOptions.Type" xml:space="preserve"> + <value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>groupBoxOptions.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>groupBoxOptions.ZOrder" xml:space="preserve"> + <value>7</value> + </data> + <data name="label5.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> + <value>None</value> + </data> + <data name="label5.AutoSize" type="System.Boolean, mscorlib"> + <value>True</value> + </data> + <data name="label5.Location" type="System.Drawing.Point, System.Drawing"> + <value>12, 33</value> + </data> + <data name="label5.Size" type="System.Drawing.Size, System.Drawing"> + <value>74, 13</value> + </data> + <data name="label5.TabIndex" type="System.Int32, mscorlib"> + <value>4</value> + </data> + <data name="label5.Text" xml:space="preserve"> + <value>Select games:</value> + </data> + <data name=">>label5.Name" xml:space="preserve"> + <value>label5</value> + </data> + <data name=">>label5.Type" xml:space="preserve"> + <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>label5.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>label5.ZOrder" xml:space="preserve"> + <value>4</value> + </data> + <data name="buttonAddGames.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> + <value>None</value> + </data> + <data name="buttonAddGames.Location" type="System.Drawing.Point, System.Drawing"> + <value>12, 568</value> + </data> + <data name="buttonAddGames.Size" type="System.Drawing.Size, System.Drawing"> + <value>282, 38</value> + </data> + <data name="buttonAddGames.TabIndex" type="System.Int32, mscorlib"> + <value>5</value> + </data> + <data name="buttonAddGames.Text" xml:space="preserve"> + <value>Add more games</value> + </data> + <data name=">>buttonAddGames.Name" xml:space="preserve"> + <value>buttonAddGames</value> + </data> + <data name=">>buttonAddGames.Type" xml:space="preserve"> + <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>buttonAddGames.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>buttonAddGames.ZOrder" xml:space="preserve"> + <value>3</value> + </data> + <metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>109, 17</value> + </metadata> + <data name="statusStrip.Location" type="System.Drawing.Point, System.Drawing"> + <value>0, 614</value> + </data> + <data name="statusStrip.Size" type="System.Drawing.Size, System.Drawing"> + <value>609, 22</value> + </data> + <data name="statusStrip.TabIndex" type="System.Int32, mscorlib"> + <value>6</value> + </data> + <data name="statusStrip.Text" xml:space="preserve"> + <value>statusStrip1</value> + </data> + <data name=">>statusStrip.Name" xml:space="preserve"> + <value>statusStrip</value> + </data> + <data name=">>statusStrip.Type" xml:space="preserve"> + <value>System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>statusStrip.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>statusStrip.ZOrder" xml:space="preserve"> + <value>2</value> + </data> + <data name="toolStripStatusConnectionIcon.AutoSize" type="System.Boolean, mscorlib"> + <value>False</value> + </data> + <data name="toolStripStatusConnectionIcon.Size" type="System.Drawing.Size, System.Drawing"> + <value>16, 17</value> + </data> + <data name="toolStripStatusLabelSelected.AutoSize" type="System.Boolean, mscorlib"> + <value>False</value> + </data> + <data name="toolStripStatusLabelSelected.Size" type="System.Drawing.Size, System.Drawing"> + <value>195, 17</value> + </data> + <data name="toolStripStatusLabelSize.AutoSize" type="System.Boolean, mscorlib"> + <value>False</value> + </data> + <data name="toolStripStatusLabelSize.Size" type="System.Drawing.Size, System.Drawing"> + <value>195, 17</value> + </data> + <data name="toolStripProgressBar.Size" type="System.Drawing.Size, System.Drawing"> + <value>195, 16</value> + </data> + <metadata name="openFileDialogNes.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>202, 17</value> + </metadata> + <data name="openFileDialogNes.Title" xml:space="preserve"> + <value>Select NES file(s)</value> + </data> + <metadata name="contextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>340, 17</value> + </metadata> + <data name="contextMenuStrip.Size" type="System.Drawing.Size, System.Drawing"> + <value>141, 70</value> + </data> + <data name=">>contextMenuStrip.Name" xml:space="preserve"> + <value>contextMenuStrip</value> + </data> + <data name=">>contextMenuStrip.Type" xml:space="preserve"> + <value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name="selectAllToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>140, 22</value> + </data> + <data name="selectAllToolStripMenuItem.Text" xml:space="preserve"> + <value>Select all</value> + </data> + <data name="unselectAllToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>140, 22</value> + </data> + <data name="unselectAllToolStripMenuItem.Text" xml:space="preserve"> + <value>Unselect all</value> + </data> + <data name="deleteGameToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> + <value>140, 22</value> + </data> + <data name="deleteGameToolStripMenuItem.Text" xml:space="preserve"> + <value>Delete game</value> + </data> + <metadata name="openFileDialogImage.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>624, 17</value> + </metadata> + <data name="openFileDialogImage.Filter" xml:space="preserve"> + <value>Images (*.bmp;*.png;*.jpg;*.jpeg;*.gif)|*.bmp;*.png;*.jpg;*.jpeg;*.gif|All files|*.*</value> + </data> + <data name="openFileDialogImage.Title" xml:space="preserve"> + <value>Select cover for game</value> + </data> + <data name="buttonStart.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> + <value>None</value> + </data> + <data name="buttonStart.Location" type="System.Drawing.Point, System.Drawing"> + <value>306, 568</value> + </data> + <data name="buttonStart.Size" type="System.Drawing.Size, System.Drawing"> + <value>293, 38</value> + </data> + <data name="buttonStart.TabIndex" type="System.Int32, mscorlib"> + <value>6</value> + </data> + <data name="buttonStart.Text" xml:space="preserve"> + <value>Synchronize selected games with NES Mini</value> + </data> + <data name=">>buttonStart.Name" xml:space="preserve"> + <value>buttonStart</value> + </data> + <data name=">>buttonStart.Type" xml:space="preserve"> + <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>buttonStart.Parent" xml:space="preserve"> + <value>$this</value> + </data> + <data name=">>buttonStart.ZOrder" xml:space="preserve"> + <value>1</value> + </data> + <metadata name="timerCalculateGames.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>473, 17</value> + </metadata> + <metadata name="timerConnectionCheck.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>775, 17</value> + </metadata> + <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> + <value>True</value> + </metadata> + <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> + <value>149</value> + </metadata> + <metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> + <value>True</value> + </metadata> + <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> + <value>6, 13</value> + </data> + <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing"> + <value>609, 636</value> + </data> + <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAABAAEAgIAAAAEAIAAoCAEAFgAAACgAAACAAAAAAAEAAAEAIAAAAAAAAAABABILAAASCwAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiAAAAfQAA + AMIAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADCAAAAfQAAACIAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAbAAAAOkAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA6QAAAGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEAAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AIEAAAAAAAAAAAAAAAAAAABdAAAA/wAAAP8AAAD/AAAA/wAAAP8GBgX/Dg0M/w4NDP8ODQz/Dg0M/w4N + DP8ODQz/Dg0M/w4NDP8ODQz/Dg0M/w4NDP8ODQz/Dg0M/w4NDP8ODQz/Dg0M/w4NDP8ODQ3/Dg0N/w4N + Df8ODQ3/Dg4N/w8ODf8PDg3/Dw4N/w8ODv8PDg7/Dw4O/w8ODv8PDg7/Dw8O/xAPDv8QDw7/EA8P/xAP + D/8QDw//EA8P/xAPD/8QDw//EBAP/xAQD/8REA//ERAQ/xEQEP8REBD/ERAQ/xEQEP8RERD/EREQ/xER + EP8SERH/EhER/xIREf8SERH/EhER/xIREf8SERH/EhER/xIREf8SERH/EhER/xIREf8SERH/ERER/xER + EP8RERD/EREQ/xEQEP8REBD/ERAQ/xEQEP8REBD/ERAQ/xEQEP8REA//EBAP/xAQD/8QEA//EA8P/xAP + D/8QDw//EA8P/xAPD/8QDw//EA8O/xAPDv8PDw7/Dw8O/w8ODv8PDg7/Dw4O/w8ODv8PDg7/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8ODg3/Dg0N/w4NDf8ODQ3/Dg0N/w4NDf8ODQ3/Dg0N/w4NDf8ODQ3/Dg0N/w4N + Df8ODQ3/Dg4N/wYGBv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAF0AAAAAAAAAEQAAAN0AAAD/AAAA/wAA + AP8ODQz/WVFN/4d9d/+PhH7/joR9/46Eff+OhH3/joR9/46Eff+OhH3/joR9/46Eff+OhH3/joR9/46E + ff+OhH3/joR9/4+Efv+QhX//kYeB/5OIgv+UiYT/lYuE/5aMhv+WjYf/mI6J/5mPiv+akIv/nJKN/52T + jf+elY//n5aQ/6CWkv+hmJP/opmV/6Oalv+lnJf/pp2Y/6eemf+ooJv/qaCd/6qhnv+ro5//rKSg/62m + of+vp6P/sKik/7Gppv+yqqf/s6yo/7Stqf+1rqv/trCs/7ixrv+5sq//urOw/7y0sv+8trL/vbe0/723 + tP+8trP/vLWy/7q0sv+6s7D/ubKv/7iyrv+3sa3/tq+r/7Wuqv+0ran/s6yo/7KrqP+yqqf/sail/7Co + pP+vqKP/rqai/62lof+spKD/q6Of/6qinv+poZ3/qKCb/6ifmv+mnpn/pZ2Y/6Wcl/+jm5b/opqV/6GZ + lP+gl5P/oJaS/5+Wkf+elY//nZSO/5yTjf+bkoz/mpGL/5mQiv+Yjon/l42I/5aNhv+WjIX/lYuE/5SK + hP+TiYP/k4mD/5OJg/+TiYP/k4mD/5OJg/+TiYP/k4mD/5OJg/+TioP/jIJ8/1tVUf8ODQ3/AAAA/wAA + AP8AAAD/AAAA3QAAABEAAABmAAAA/wAAAP8AAAD/CwsK/3lxa/+mmZL/oJOM/5+Si/+fkov/n5KL/5+S + i/+fkov/n5KL/5+Si/+fkov/n5KL/5+Si/+fkov/n5KL/5+Si/+fkov/oJOM/6GUjf+ilo//pJeQ/6WY + kv+mm5P/p5yV/6idl/+qn5n/q6Ca/6yhm/+uo53/r6Se/7CmoP+xp6H/sqij/7SqpP+1q6b/tqyn/7iu + qf+6r6r/u7Cr/7yyrf++s6//v7Sw/8C3sf/BuLT/wrq1/8S7t//Fvbj/xr66/8i/u//Jwb3/ysK+/8vD + wP/MxcH/zsbD/8/IxP/QycX/0srH/9PMyP/Uzcr/1M3K/9PMyf/Sy8j/0crH/9DJxf/PyMT/zsfD/83G + wv/MxMD/y8O//8rCvv/Jwb3/yMC8/8e/u//Gvbn/xb24/8S8t//Durb/wrm1/8G4tP/At7H/v7Ww/760 + r/+8sq3/vLGs/7qwq/+4r6r/uK6p/7atp/+1rKb/tKul/7OppP+yqKP/saei/7CmoP+vpZ//rqSe/62j + nP+sopv/q6Ga/6qfmf+pnpj/qJ2V/6eclP+mm5P/pZqS/6SYkf+kmJH/pJiR/6SYkf+kmJH/pJiR/6SY + kf+kmJH/pJiR/6SYkf+lmZL/q5+Y/351cP8LCwr/AAAA/wAAAP8AAAD/AAAAZgAAANsAAAD/AAAA/wAA + AP9JQ0D/pJeQ/6KWkP+vpZ7/r6Wf/6+lnv+vpZ7/r6We/6+lnv+vpZ7/r6We/6+lnv+vpZ7/r6We/6+l + nv+vpZ7/r6We/6+knv+wpZ//sKag/7Goof+zqKL/tKmk/7Wrpf+1rKb/tq2n/7iuqf+5r6n/urCq/7ux + rP+8sq3/vbSu/721r/++tbH/wLey/8G4s//CubT/w7q2/8S7tv/FvLf/xr65/8e+u//Iv7v/ycG8/8rC + vv/Kw7//zMTA/83Gwf/Ox8P/z8fD/9DJxf/Rysb/0srI/9PMyP/Uzcr/1c/L/9bPzP/X0M3/2NLO/9nT + 0P/Z09D/2NLP/9fRzv/X0M3/1s/L/9XPy//Uzsr/083J/9LLyP/Sysf/0crG/9DJxf/PyMT/z8fD/87G + wv/NxsH/zMXA/8vDv//Kwr//ysK+/8nBvP/IwLv/x7+6/8a9uf/Gvbj/xLy3/8O7tv/Durb/wrq0/8G5 + s//AuLP/v7ay/761sf+9tbD/vbSu/7yzrv+7sq3/urGr/7qxqv+5sKn/uK6p/7etqP+2rab/taym/7Wr + pf+0qqT/s6mj/7Opo/+zqaP/s6mj/7Opo/+zqaP/s6mj/7Opo/+zqqP/tKqk/7OppP+nnJb/qZ2W/0tG + Q/8AAAD/AAAA/wAAAP8AAADYAAAA/wAAAP8AAAD/AAAA/3BoY/+5sKn/x763/8G3rv+5rqT/uK2j/7it + o/+4raP/uK2j/7ito/+4raP/uK2j/7mto/+5raP/ua2j/7mtpP+5rqT/ua6k/7mupP+5rqT/ua6k/7mu + pP+6rqX/uq+l/7qvpf+6r6X/uq+l/7qvpf+6r6X/u6+m/7uvpv+7sKb/u7Cm/7uwpv+7sKb/u7Cm/7uw + p/+8sKf/vLGn/7yxp/+8saf/vLGn/7yxp/+8saj/vLGo/7yyqP+8sqj/vbKo/72yqP+9sqj/vbKp/72y + qf+9sqn/vbOp/76zqf++s6n/vrOp/76zqv++s6r/vrOq/760qv++tKr/vrSq/760qv++tKr/vrOq/76z + qv++s6r/vrOp/76zqf++s6n/vrOp/72zqf+9sqn/vbKp/72yqf+9sqj/vbKo/72yqP+9sqj/vLGo/7yx + qP+8saf/vLGn/7yxp/+8saf/vLGn/7ywp/+7sKf/u7Cm/7uwpv+7sKb/u7Cm/7uwpv+7sKb/u7Cm/7uv + pv+6r6X/uq+l/7qvpf+6r6X/uq+l/7qvpf+6rqX/uq6k/7mupP+5rqT/ua6k/7mupP+5rqT/ua6k/7mu + pP+5rqT/ua2k/7mto/+5rqT/wriv/8nAuP+9tK3/dGxn/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/ioJ9/7yxpv+dkIb/mo6F/52QiP+ekYn/n5KK/6CUi/+hlYz/opaO/6KXj/+jl5D/pZmR/6aa + kv+nm5P/qJyV/6mdlv+pnpf/qp+Y/6ugmf+topr/rqOb/6+jnf+wpZ7/sKWf/7GnoP+yqKH/s6mi/7Sq + o/+1q6X/tqyl/7etpv+4rqj/ua+p/7qwqv+7saz/vLKs/72zrv++ta//vraw/8C3sf/BuLL/wriz/8O6 + tP/Eu7X/xLy2/8W9uP/Gvrn/x7+6/8nAu//Jwbz/ysO9/8vEv//MxcD/zcbB/87Gwv/Px8P/0MnE/9HK + xf/Ry8f/08zI/9TNyf/Vzsr/1s/K/9XOyv/Uzcn/0szI/9LLxv/RycX/0MjE/8/Hw//NxsH/zMXB/8zE + wP/Lw77/ysK9/8nBvP/Iv7r/x7+6/8a+uP/FvLf/xLu2/8O6tf/CubP/wbiz/8C3sf+/trD/vrWv/720 + rf+8s6z/u7Ks/7qxqv+5sKn/uK+o/7etpv+2rKX/taul/7Sqo/+zqaL/sqih/7GnoP+wpp//r6Se/66j + nP+to5v/rKGa/6ugmf+qn5j/qZ6X/6mdlv+onJT/ppuT/6Wakv+kmZH/o5eQ/6KWj/+glIv/oZSK/72x + qP+MhYD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wICAv+If3j/oJKJ/56Tjf+flI3/oJSN/6GV + j/+il5D/o5iR/6SZkv+lmpT/p5uV/6iclv+qn5n/q6Ca/6yhm/+to53/rqSe/6+ln/+wpqH/saei/7Op + o/+0qqT/taum/7asp/+3raj/uK+p/7mwq/+6saz/vLKu/721sP++trH/v7ey/8G4tP/CubX/w7q2/8S8 + uP/Fvbn/xr66/8fAvP/Iwb3/ysK+/8vDv//MxMD/zcbC/87Hw//PyMT/0MnH/9HKyP/Sy8n/1M7L/9TP + zP/V0c3/2NLP/9nT0P/a1NH/29XT/9zW1P/d2NX/3tnW/9/a2P/h29n/4tza/+Pd2//k39z/497b/+Lc + 2v/g29n/39rX/97Y1v/d19X/3NbT/9rV0v/Z09H/2dLQ/9fRzv/W0M3/1c/L/9TNyv/TzMn/0svH/9DJ + xv/PyMX/zsfE/83Gwv/MxcH/y8O//8rCvv/Jwb3/xsC7/8W+uv/Evbn/w7y3/8K7tv/BurX/v7iz/763 + sv+9trH/vLOv/7uyrv+6sa3/ubCr/7ivqv+2ran/taym/7Srpv+zqaX/sqik/7Gnof+wpqH/r6Wg/66k + nf+sopz/q6Gb/6qgmf+pnpj/qJ2X/6aclv+lm5T/pJiO/4mAef8BAQL/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AQEA/3huZ/+glI3/oJWO/62knv+1q6b/tayn/7Wtp/+2raj/t66o/7ivqv+4r6r/ubCr/7qx + rP+7sq3/u7Kt/7yzr/+9tK//vbWw/762sf+/trL/wLiz/8G4tP/CubX/wrq1/8O6tv/EvLf/xLy4/8W9 + uf/Gvrr/xr+7/8fAvP/Iwb3/ycK+/8rDv//Lw8D/zMXB/8zGwv/NxsP/zsjE/8/Ixf/Qycb/0crH/9LL + yP/SzMn/083K/9TOy//Vz8z/1tDN/9fRzv/Y0s//2NPQ/9nU0f/b1dP/3NbT/93X1P/d2Nb/3tnX/9/b + 2P/g29n/4dza/+Pd2//k3tz/5N/d/+Xh3v/k4N3/497c/+Hd2//g3Nn/39rY/97Y1//d2NX/29bT/9rV + 0//a1NH/2NLQ/9fRzv/W0M3/1c7L/9TNyv/TzMn/0cvH/9DJxv/PyMX/zsfD/83Gwv/LxMD/ysO//8nC + vv/Iwbz/x7+7/8a+uv/Evbj/w7u2/8K6tf/AuLP/v7ey/762sf+9tK//vLOu/7uyrP+5sKv/uK+p/7at + qP+1rKf/tKul/7OppP+yqKP/sKeh/6+ln/+upJ7/raOc/6uhm/+qoJr/qZ+Y/6edl/+mnJX/pZqT/6Sa + k/+onZb/enFp/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/dGtl/7Opo//f3Nn/8vDv//Px + 8f/y8PD/8vDv//Hw7//w7+7/8O7t/+/t7f/w7e3/7+3s/+7s6//u7Ov/7evq/+3r6v/t6+r/7erp/+3q + 6f/s6ej/7Ono/+zp6P/r6Of/6+jn/+vo5//q6Of/6ujn/+ro5v/q5+b/6ufm/+rn5v/q5+X/6ufl/+rn + 5f/q5uX/6ubl/+rm5f/q5uX/6ebl/+rm5f/q5uX/6ufl/+rm5f/q5uX/6ufl/+rn5f/q5+b/6ufm/+vn + 5v/r5+b/6+jm/+vo5//r6Of/6+jn/+vp6P/s6ej/7Ono/+zp6P/t6en/7erp/+7q6f/u6+n/7uvq/+7r + 6f/t6en/6+no/+vo5v/q5ub/6ebl/+nm4//o5OP/5+Pi/+fj4f/l4uD/5eHf/+Tg3v/j393/4t7c/+Ld + 2//g3Nn/39rZ/9/Z2P/e2db/3djW/9vW1f/b1tP/2tXS/9nT0P/Y0tD/19HO/9XQzf/Vz8z/1M7L/9LN + yv/SzMj/0MrH/8/Jxv/PyMX/zsfE/8zGwv/MxcH/ysTA/8nCvv/Iwb3/x8C8/8a+u//Fvrn/xLy4/8O7 + t//CurX/wLi0/7+3s/++trH/vbWw/7yzr/+4sKr/q6Gb/6eclf97c23/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP+De3f/7uvq//Tz8//x7+//8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du + 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du + 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du + 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du + 7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du7v/w7u7/8O7u//Du + 7v/w7u7/8O7u//Du7v/w7u//8O7v//Dv7//w7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv + 7//x7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv7//x7+//8e/v//Hv + 7//x7/D/8e/w//Hv8P/x8PD/8fDw//Hw8P/x8PD/8fDw//Lw8P/y8PD/8vDw//Lw8P/y8PD/8vDw//Du + 7v/l4uD/wLey/3pybP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/6ajof/49/f/8O7u//Du + 7v/w7u7/8/Hx//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j2 + 9v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//j2 + 9v/49vb/+Pb2//j29v/49vb/+Pb2//j29v/49vb/+Pb2//f19f/08/P/9PPz//Tz8//08/P/9PPz//Tz + 8//08/P/9PPz//Tz8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fPz//Xz + 8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fPz//Xz8//18/P/9fP0//f19f/39fX/9/X1//f1 + 9f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f1 + 9f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/39fX/9/X1//f19f/29fX/9vX1//b1 + 9f/29PX/9vT1//b09f/29PX/9vT0//Lw8P/w7u7/8O7u//Lw8P/x7u3/i4WB/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/trS0//b09P/w7u7/8O7u//Tx8f/b2dn/oJ6e/5aUlP+WlZX/lpWV/5aV + lf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aVlf+WlZX/lpWV/5aV + lf+WlZX/lpWV/5aVlf+XlZX/l5WV/5eWlv+Xlpb/l5aW/5iWlv+Ylpb/mJaW/5iXl/+Yl5f/mJeX/5mY + l/+Xlpb/paKh/7+5tv+/ubb/vrm1/765tv++uLX/vri1/764tf+9uLX/vbe1/723tP+8t7T/vLe0/7y3 + tP+8t7T/vLaz/7u2s/+7trP/u7az/7u2s/+7trP/urWz/7q1sv+6tbL/urSy/7m0sv+5tLH/ubSx/7m0 + sf+5tLH/ubSx/7m0sf+1sa7/oJ6e/6Cenv+gnp7/oZ+e/6Gfnv+hn57/oZ+f/6Gfn/+in5//oqCf/6Kg + n/+ioJ//o6Cf/6OhoP+joaD/o6Gg/6OhoP+koaH/pKGh/6Siof+koqH/pKKh/6Siof+loqL/paOi/6Wj + ov+lo6L/pqOi/6akov+mpKL/pqSj/6ako/+npKP/p6Sk/6elpP+npaT/p6Wk/6eko/+vrav/393c//Pw + 8f/w7u7/8O7u//j29v+pp6b/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+2tLT/9vT0//Du + 7v/z8fH/19XV/ykoKP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8iHhv/al5V/2hbU/9nXFP/Z1pS/2Za + Uv9mWVH/ZVlR/2RYUP9kWFD/Y1dP/2JWT/9iVk7/YVVO/2FVTf9gVE3/X1RM/19TTP9eU0v/XlJL/1xS + Sv9cUUr/W1FJ/1tQSf9aUEj/WU9I/1lOR/9YTkf/WE1G/1dNRv9XTUb/WE5H/01EPv8UEhD/FBIR/xUT + Ef8VExH/FhQS/xYUE/8XFRP/FxUT/xgWFP8YFhT/GRcV/xoYFf8aGBb/GxkW/xwZF/8cGRf/HRoY/x4b + GP8eGxn/HxwZ/x8cGv8fHRr/IB4b/yEeHP8hHxz/Ih8d/yIfHf8jIB7/JCEe/yQhHv8lIh//JiIf/yYj + IP8nIyH/JyQh/yckIf8oJSL/KSUi/yckIf9QTUv/3NnZ//Lw8P/w7u7/9vT0/7a0tP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/7a0tP/29PT/8O7u//b09P+hn5//AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wEBAf8BAQH/AgIC/wICAv8DAwL/BAMD/wQEA/8EBAT/BQUE/wUFBf8GBgb/BwYG/wcH + Bv8IBwf/BQQE/ykkIf9vYlr/bGFY/2xgWP9rX1f/al9X/2peVv9pXlb/aV1V/2hdVf9nXFT/Z1xU/2Zb + U/9mW1P/ZVpS/2RZUv9kWVH/Y1lR/2NYUP9iV1D/YldQ/2FWT/9gVk//YFVO/19VTf9fVE3/XlRN/11T + TP9dU0z/XFJL/1xSS/9dU0z/UklD/xsZGP8cGhj/HBoY/x0bGf8dGxn/Hhwa/x4cGv8fHBv/Hx0b/yAe + HP8hHhz/IR8d/yIfHf8iIB7/IyEb/yQhG/8kIR3/JSIg/yUiIP8lIyD/JiMh/yYkIf8nJSL/KCUi/ygl + I/8pJiT/KSYk/yonJP8rJyX/Kygk/y0pIf8tKiL/LSkn/y0qJ/8uKij/Liso/y8sKf8vLCn/MC0q/ykl + Iv+wraz/9fPz//Du7v/29PT/trS0/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/trS0//bz + 8//w7e3/9vPz/52bm/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8BAQH/AQEB/wIBAf8CAgL/AwMC/wMD + A/8EBAP/BAQE/wUEBP8FBQX/BgYF/wcGBv8HBwb/CAcH/wgIB/8GBgX/IyAd/25iWv9uYln/bWFZ/2xg + WP9sYFj/a19X/2pfV/9qXlb/aV5W/2hdVf9oXVX/Z1xU/2dcVP9mW1T/ZVtT/2VaU/9kWlL/ZFlS/2NZ + Uf9jWFH/YldP/2FXUP9hV0//YFZO/2BVTf9fVU7/XlRM/15TTP9dUkv/XVJL/15UTP9TSkT/HBoY/xwa + GP8dGxn/HRsZ/x4cGv8eHBr/Hxwb/x8dG/8gHhz/IB4c/yEfHf8iHx3/IiAe/yQhG/8XFl7/ExF9/yAe + N/8mIx3/JSMg/yYjIf8mJCH/JyQi/yglIv8oJSP/KSYj/ykmJP8qJyT/Kycl/ywpIv8mIz3/HRtn/x0b + Z/8sKSz/Lion/y4rKP8vKyj/Lywp/zAtKv8wLSr/LCkl/66qqf/08vL/8O3t//bz8/+2tLT/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+joqL/9/X1/+/t7f/18/P/nJua/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wEBAf8CAQH/AgIC/wMDAv8DAwP/BAQD/wQEBP8FBAT/BQUF/wYGBf8GBgb/BwcG/wgH + B/8IBwf/CQgI/wgIB/8VExL/W1JL/2leVv9nXFT/Z1xU/2dbU/9mW1P/ZlpS/2VaU/9lWVL/ZFlS/2NY + Uf9jV1H/YldQ/2JXUP9hV0//YFZP/2BWTv9fVU7/X1VN/15UTf9dVEz/XVNM/11TTP9cUkv/XFJL/1tR + Sv9bUUr/WlBJ/1pQSf9ZT0n/WlBJ/0A5NP8bGRf/HRoZ/x0bGf8eHBr/Hhwa/x8cG/8fHRv/IB0b/yAe + HP8hHx3/Ih8d/yIgHv8jIB7/JCIZ/xAPif8IB7T/GxlS/yYkG/8mIyH/JiQh/yckIv8nJSL/KCUj/ykm + I/8pJiT/Kick/yonJf8rKCX/LCgk/yonL/8NDKn/FhSG/y4rI/8uKyj/Lyso/y8sKf8wLSr/MC0q/zEt + Kv8tKSb/raqo//Px8f/v7e3/9/X1/6Oiov8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/5ya + mv/39fX/7+3t//Xy8v+bmZj/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AgEB/wICAv8DAwL/BAMD/wQE + A/8EBAT/BQUE/wUFBf8GBgX/BwYG/wcHBv8IBwf/CAgH/wkICP8KCQj/CgkJ/woJCP8RDw7/GhgV/xoX + Fv8aGBb/GhgX/xsZF/8cGRf/HBoX/xwaGP8dGhj/HRoY/x4bGf8eGxn/HhwZ/x8cGv8fHBr/IBwa/x8d + G/8gHhv/IB4c/yEeHP8iHhz/IR8c/yIfHf8iIB3/IyAe/yMgHv8jIB7/JCEf/yQhH/8kIR7/HBoY/x0a + Gf8dGxn/Hhwa/x0bGf8YFRT/FxUT/xgVE/8YFhT/GRcV/xkXFf8aGBb/GxgW/xsYFv8cGRT/EhBM/w8O + bf8hHzT/JiQf/yYkIf8jIB7/IB0a/yAdG/8hHhz/IR4c/yIfHP8jHx3/IyAd/yQgHv8kIR7/JiMb/xgV + Wv8kIEb/Lywl/y8sKf8vLCn/MC0q/zEtKv8xLSr/Mi4r/y4qJ/+sqaf/8/Hw/+/t7f/39fX/nJqa/wAA + AP8AAAD/AAAA/wAAAP8AAAD0AAAA/wAAAP8AAAD/nZub//f19f/v7e3/9PLx/52amf8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/BgYG/yYlJf8qKir/KSkp/ykp + Kf8qKir/Kysr/xUUFP8AAAD/AwMC/wMDA/8EBAP/BAQE/wUEBP8FBQX/BgYF/wYGBv8HBwb/CAcH/wgI + B/8JCAj/CQkI/woJCf8LCgn/CwoJ/wsKCf8KCgn/CwoK/wsLCv8MCwv/DAwL/w0NDP8ODQz/Dg4N/w8O + Df8PDg3/EA8O/xEQD/8REA//EhEQ/xMREP8TEhD/FBMR/xQTEv8VExL/FRQT/xYUE/8WFRT/FxYU/xgW + FP8YFhX/GRcV/xkXFv8aGBf/GxkX/xsZF/8dGxn/HRsZ/x4cGv8dGxn/JiMi/1xaWf9nZWT/Z2Vk/2dm + ZP9oZmX/aGZl/2lnZf9pZ2b/aWdm/2poZv9raWP/UlBI/yUiHf8mJCH/JCEf/0lHRP9tamn/bGtp/21r + af9ta2n/bWtq/25sav9vbGr/b21r/29ta/9wbmz/bWtk/z06M/8sKSb/Lywp/zAtKv8wLSr/MS0q/zIu + K/8yLiv/Lisn/66qqP/z8PD/7+3t//f19f+dm5v/AAAA/wAAAP8AAAD/AAAA9AAAANIAAAD/AAAA/wAA + AP+dm5v/9/T0/+/s7P/z8PD/r6yr/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/ycmJv/DwsL/4uDg/9zZ2f/d2tr/3dra/9zZ2f/e29v/393d/11cXP8AAAD/BAQD/wQE + BP8FBAT/BQUF/wYGBf8GBgb/BwcG/wgHB/8IBwf/CQgI/wkJCP8KCQn/CwoJ/wsKCv8MCwr/BgUF/wQD + Av8EAwP/BQQE/wYFBP8GBgX/BwYF/wgHBv8IBwb/CQgH/woIB/8KCQj/CwoI/wsKCf8MCwn/DAsK/w0M + Cv8ODAv/Dg0M/w8NDP8QDg3/EA8O/xEPDv8SEA7/EhAP/xMRD/8TERD/FBIR/xUTEf8VExH/FhQS/xoY + F/8eHBr/Hhsa/xwZGP+ioqH///////////////////////////////////////////////////////// + ///39/f/aWdl/xwZFv9PTUr/7Ozs//////////////////////////////////////////////////// + ////////w8HB/zUyL/8vKyj/MC0q/zEtKv8yLiv/Mi4r/zMvLP8wLCn/vLi2//Hv7v/v7Oz/9/T0/52b + m/8AAAD/AAAA/wAAAP8AAADSAAAA0gAAAP8AAAD/AAAA/52cm//29PT/7uzs//Px8P+xrqz/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/hYSE/97a2f98c27/d21m/4N5 + cf+Ge3P/e3Bp/25mYP+yrqv/0M7O/wwMDP8DAgL/BQUE/wUFBf8GBgX/BwYG/wcHBv8IBwf/CAgH/wkI + CP8KCQj/CgkJ/wsKCf8LCgr/DAsK/wwLCv9RUE7/gH58/358e/9+fHr/fnt6/357ev9+e3n/fnp5/316 + eP99enj/fXp4/315d/98eXf/fHl3/3x5dv98eHb/fHh2/3x4df98eHX/e3d1/3t3df97d3T/e3d0/3p2 + dP97dnP/enZz/3p1c/96dXL/enZy/3x2c/92cm//OTY0/xwaGP8dGhn/LCop/93c2//+/f3/+fj4//v6 + +P/6+fT/6+rz/+Xk9//l5fb/8fHz//z79f/7+vj/+fj4//////+YlpX/FhQQ/4F/ff//////+fj4//r5 + +f/8+/b/9PPz/+bl9f/l5Pf/6en0//n48//8+/f/+vn4//v6+v/t7ez/SEVD/y0qJ/8xLSr/Mi4r/zIv + LP8zLyz/MzAs/zEtKf+9ubb/8e/u/+7s7P/29PT/nZyb/wAAAP8AAAD/AAAA/wAAANIAAADSAAAA/wAA + AP8AAAD/jIqK//f09P/u6+v/8/Dv/7Csq/8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP+Miov/kIqF/1FHP/9VS0T/V01G/1hOR/9VS0P/VEpC/2BXUf/Jx8b/GhkZ/wIC + Av8FBQX/BgYF/wYGBv8HBwb/CAcH/wgHB/8JCAj/CQkI/woJCf8LCgn/CwoJ/wwLCv8GBQX/Q0NB/+Xh + 3v/t6Ob/7Ofl/+vm5P/q5eP/6uXi/+jk4P/o49//5+Lf/+bg3f/l39z/493a/+Ld2f/i3Nj/4dvX/+Da + 1v/f2dX/3tfT/93W0v/c1dH/29TQ/9rTz//Z0s7/2NHM/9fQzP/Wzsr/1c3J/9XNyP/Vzcj/1c3J/9bN + yf+vqKX/JSEg/xwaGP8wLiz/2tjY//r5+P/29fD/09Lg/4KC3f9eXt//bW3l/2hp5P9lZd//nJvd/+fl + 5f/39vT///79/5SSkf8XFBL/g4B+///+/v/39vX/7u3n/6mp3f9nZ97/Y2Pi/29v5v9gYOH/eHje/8fF + 3//08+3/+ff3/+jn5f9IREL/Lion/zIuK/8yLiv/My8s/zMwLP80MC3/MS0p/7y3tf/x7u7/7uvr//f0 + 9P+Mior/AAAA/wAAAP8AAAD/AAAA0gAAANMAAAD/AAAA/wAAAP+CgYH/9/X1/+3r6//y7+//r6up/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/4iHhv+MhYD/HRkX/wkI + B/8JCAf/CQgH/wkIB/8PDgz/U0tF/726uP8bGhr/AwIC/wYGBf8GBgb/BwcG/wgHB/8IBwf/CQgH/wkJ + CP8KCQn/CwoJ/wsKCf8MCwr/DAsL/wQEA/9YV1b/4t3a/+zp5//t6un/7Onn/+/r6v/w7Or/7uvp/+3p + 5//s6Ob/6+fk/+rm4//p5eL/6eTi/+Xh3v/h3Nn/4NvY/9/b2P/i3dn/497a/+Lc2P/g2tf/39nW/97Y + 1f/d19P/3dbS/9zV0f/Z0s7/1c7K/9XOyv/Wz8v/zcXA/7y1sf8vLCr/HBkX/zAuLP/X1dX/9/Xx/768 + zv87O8b/OjrG/1xcw/9cXL7/XV2//1dXxP8uLsf/YF/G/9za2f/9+/n/k5CP/xgVE/+Bfnz//v37/+bk + 3/96ecb/KSnH/1FRxf9dXcD/W1u+/11dwv9ERMb/MDDH/6emyv/z8ev/5uPj/0hEQf8uKyj/Mi4r/zMv + LP8zMCz/NDAt/zQwLf8yLiv/u7az//Du7v/t6+v/9/X1/4KBgf8AAAD/AAAA/wAAAP8AAADTAAAAygAA + AP8AAAD/AAAA/4OCgv/39PT/7erq//Lu7v+uqqj/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/iomI/4B6dv8AAAD/BQUF/wYFBf8FBQX/BgUF/wAAAP83Mi7/wr28/xsb + Gv8DAwP/BwYG/wcHBv8IBwf/CAgH/wkICP8JCQj/CgkJ/wsKCf8LCgr/DAsK/wwLC/8NDAv/BQQE/1dW + Vf/d2NX/7Onn/+3q6P/s6ef/wb69/6Kfnf+opKL/rKil/6+qp/+tqKX/qaSh/6OfnP+fm5n/x8PB/+Pe + 2//g29j/4NvY/7m1sv+alZP/oJqX/6Sdmv+noJz/pZ+b/6Gal/+blZL/lZCN/7mzsP/Wz8v/1c7K/9bP + zP/Lw77/ubKu/y8tKv8cGhj/MC4s/9fU0v/Y1tP/REO4/zMzwP9ERLr/Gxus/wsLpv8PD6f/Jyew/0pK + vf8iIsD/eHa4//Lv6f+TkI7/GRYU/4B+fP/49fD/lZO7/yAgvv9KSr//Ly+y/xERqP8KCqb/Fxeq/zw8 + t/89PcD/MTG6/8bEyf/l4uD/SERC/y8sKf8zLyz/MzAs/zQwLf80MC3/NTEu/zIuK/+6tbL/8O3t/+3q + 6v/39PT/g4KC/wAAAP8AAAD/AAAA/wAAAMoAAACmAAAA/wAAAP8AAAD/g4KB//b08//s6un/8O7t/6yp + pv8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP+JiIj/gXt2/wUE + A/8LCgn/CwoJ/wsKCf8LCgn/BgYF/zUwLf/Bvbz/Gxsb/wQEBP8HBwb/CAcH/wgHB/8JCAj/CQkI/woJ + Cf8LCgn/CwoJ/wwLCv8MCwv/DAwL/w0MDP8GBQT/V1ZV/9/a1//t6uj/8e7s/87My/85Nzb/GBUT/yEd + G/8oJCD/LSgk/ywnI/8mIR//HhsY/xYTEf9bWFb/3dnW/+Xg3f/NyMX/QT89/xcUEv8gHRr/JyMg/ywo + JP8sJyT/JiIf/x8cGf8WFBH/SUZE/8vFwf/X0Mz/19DM/8nBvP+yq6f/KCYj/x4bGf8xLiz/09DM/56b + s/8jI73/LS29/wICr/8AAK3/AACu/wAArv8AAK3/DQ2y/zAwwP83NrP/z83K/5OQjv8aFxT/gX58/+He + 1/9LSq7/LCzC/xYWtf8AAK3/AACu/wAArv8AAK3/AACu/yYmuv8lJb//f36v/9za0/9JRUL/MCwp/zMw + LP80MC3/NDAt/zUxLv81MS7/My8s/7m0sf/v7ev/7Orp//b08/+DgoH/AAAA/wAAAP8AAAD/AAAApgAA + AKQAAAD/AAAA/wAAAP+EgoL/9vPy/+zp6P/w7ez/q6el/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/4aFhP+Be3f/CQgH/w4NDP8VExH/GhcV/w4NDP8KCgn/ODMv/8C7 + uv8WFRX/AAAA/wEAAP8BAQD/AgEB/wMCAf8FBAT/CgkJ/wsKCv8MCwr/DAwL/w0MC/8NDAz/Dg0M/wYF + BP9ZV1b/3NbT/+vn5v/x7+3/ysjG/0dCPf81Lin/NzAs/zYwK/82Lyv/NjAr/zYwK/83MSz/Miwm/2Zh + Xv/b19X/5uHe/8vGw/9STEj/NC4p/zcxLP83MCz/NjAr/zYwK/83MCz/NzEs/zQuKf9TTkn/ysTA/9fQ + zP/X0Mz/x765/62mof8jIR//Hxwa/zIvLf/LyMH/dnSi/x4ew/8JCb3/AAC7/wAAu/8AALv/AAC7/wAA + u/8AALr/FBTC/ygotv+rqbP/ko+L/xsYFf+Cfnv/xsO+/zExsP8ZGcT/AAC7/wAAu/8AALv/AAC7/wAA + u/8AALv/BAS8/xwdxf9eXaP/zsvC/0tHRP8xLSr/NDAt/zQwLf81MS7/NTIu/zYyL/8zLyz/uLKv/+/r + 6v/s6ej/9vPy/4SCgv8AAAD/AAAA/wAAAP8AAACkAAAApAAAAP8AAAD/AAAA/3Rzc//28/L/6+jn/+7r + 6v+xrKn/AwMD/wAAAP8AAAD/AAAA/wAAAP8VFRX/Pj49/0JBQf9BQUD/QUBA/0FAQP9AQED/p6Wl/4F7 + dv8NCwn/GBUT/0Q9OP9NRT//JSEe/w4MC/85NDD/ycbD/1ZWVf9FREP/R0ZG/0hHRv9JSEf/SUhH/zIx + Mf8JCAf/DAsK/wwLC/8NDAv/DQwM/w4NDP8ODQz/BwYF/1pZWP/W0M3/5+Pi/+/t6//r6Of/uLKu/46E + fv+KgXr/ioF6/4qBev+KgHr/ioB6/4l/eP+SiYP/xL+8/+Tf3P/i3dv/4NvY/7awrP+KgXv/h312/4d9 + dv+HfXb/h312/4Z8dv+GfHX/jIN8/7avqv/W0Mz/1s/L/9fQzP/EvLb/q6Sg/yQiIP8fHRv/Mi8t/8rG + vv9oZpr/ERHI/wEByP8AAMf/AADH/wAAx/8AAMf/AADH/wAAx/8GBsr/HBy4/6Kfq/+Tj4v/HBkW/4F9 + e/+/u7b/Jyav/wkJzP8AAMf/AADH/wAAx/8AAMf/AADH/wAAx/8AAMf/Dg7N/1NRnP/Lx77/SkdE/zEt + Kv80MC3/NTEu/zUyLv82Mi//NjIu/zg0Mf+7trP/7erp/+vo5//28/L/dHNz/wAAAP8AAAD/AAAA/wAA + AKQAAAClAAAA/wAAAP8AAAD/aWdn//by8f/q5+b/7ero/7eyr/8ICAj/AAAA/wAAAP8AAAD/GhkZ/8jG + xf/m4+P/wL29/8C9vP/DwL//xsLB/8jFxP/KxsX/bWZh/xQRDv8dGhj/NS8r/zcwLP8mIh//FBEP/zcy + Lv+2sa7/yMXE/8PAv//Avb3/vbq6/7q4t//PzMz/6ufm/1RSUv8FBQT/DAwL/w0MDP8ODQz/Dg0M/w8O + Df8IBwb/VlVU/9LMyP/p5uT/8/Hw//Hv7v/08vH/9PHw//Lv7v/y7uz/8e3r//Ds6v/u6+n/7ern/+3p + 5//q5uT/5uLg/+Xh3//l4N7/5+Lf/+bi3//m4N7/5N/c/+Te2//j3dr/4dzZ/+Hb1//g2db/3tjU/9rU + 0P/Z0s//2tTR/8S7t/+up6P/JCIg/yAdG/8yLy3/zcnD/316mv8IB8v/AQHV/wAA0/8AANP/AADT/wAA + 0/8AANP/AADT/wMD2P8ZGbL/t7Sz/5GNif8dGRf/f3t4/9DMxP8pKKT/BATY/wAA0/8AANP/AADT/wAA + 0/8AANP/AADT/wAA1P8FBdP/XFqW/9XRx/9JRUL/MS0q/zUxLv81MS7/NjIv/zYyL/82Mi7/Pjo2/8C6 + t//s6ef/6ufm//by8f9pZ2f/AAAA/wAAAP8AAAD/AAAApQAAAJ8AAAD/AAAA/wAAAP9qaGj/9vHw/+rm + 5f/t6ef/t7Gu/wgICP8AAAD/AAAA/wAAAP9TUlH/0c7N/zQxMP8ZFhX/Hxwa/yklIv80Liv/PTcy/0lC + PP9JQjv/HBkX/xwZF/8aFxX/GhcV/xsZFv8aGBX/NC8r/0lCPP83Mi7/LCck/yAdG/8UEhD/Dg0M/xEQ + EP+amJf/npyb/wUFBP8NDAv/Dg0M/w4NDP8PDg3/EA8O/woJCP9JR0b/0MvH/762sf/HwLv/xb65/8W9 + uP/Evbj/w7y3/8O7tv/CurX/wbm0/8C4s/+/t7L/vrax/761sf+8tK//vLSu/7uzrf+7sqz/urGs/7qw + q/+5r6r/uK6p/7etqP+2rab/taym/7Sqpf+0qqT/s6mj/7Koov+xp6H/qZ6Y/7Stqf8kIiD/IR4c/zIv + Lf/Mx8P/uLS0/xIStf8AAOT/AADf/wAA3/8AAN//AADf/wAA3/8AAN//AADi/z08n//f2tD/jIiF/x4b + GP97d3T/6eTb/1tYnP8AANv/AADg/wAA3/8AAN//AADf/wAA3/8AAN//AADj/wUFxf+alqb/2dTO/0hE + Qf8yLiv/NTIu/zYyL/83My//NzMw/zczL/8+Ojf/wLq3/+zo5v/q5uX/9vHw/2poaP8AAAD/AAAA/wAA + AP8AAACfAAAAewAAAP8AAAD/AAAA/2loZ//08e//6ebk/+zp5v+1sK3/CAgI/wAAAP8AAAD/AAAA/1lY + V/+Oioj/Lyok/zkyLf80Lyr/NjAr/zcxLP84Mi3/OjMu/zUwK/8hHRr/IR4b/yEeG/8hHhv/IR4b/yAd + Gv8rJyP/OjQv/zcxLP82MCv/NS8q/zQuKf80Lir/My0o/1xYVf+WlJP/CAcG/w0MDP8ODQz/Dw4N/w8O + Df8QDw7/Dg0M/x8eHf+opqT/wLq2/7iyrv+4sa3/uLGt/7ewrP+2r6v/tq+q/7Wuqf+0raj/tKyo/7Os + p/+zq6b/sqqm/7GppP+xqKT/sKij/6+nov+up6H/rqag/62loP+tpJ//rKOf/6yjnv+rop3/qqGb/6mg + m/+pn5r/qJ+a/6eemP+xqaT/cGto/x8dG/8hHx3/Mi8t/8XAvf/j3tX/dnSm/wAA2P8AAO//AADs/wAA + 7P8AAOz/AADt/wAA8P8TEsL/qqax/+nk3v+KhoP/IR4b/3t3c//p5N//wr27/ycntv8AAOz/AADt/wAA + 7P8AAOz/AADs/wAA7/8AAOP/VlSm/9zXzf/Szcn/SURB/zMvLP82Mi//NjIv/zczMP84NDD/NzMw/z87 + N/+/ubX/6+jl/+nm5P/08e//aWhn/wAAAP8AAAD/AAAA/wAAAHsAAAB3AAAA/wAAAP8AAAD/amlo//Pw + 7v/o5eP/6+jl/7Svq/8ICAj/AAAA/wAAAP8AAAD/VlVV/5yWk/80Lin/IyAd/yQhHf8kIB3/JCAd/yQg + Hf8kIB3/JCAd/yYiHv8mIh7/JiIf/yYiH/8mIh//JiIe/yUhHv8kIB3/JCAd/yQgHf8lIR3/JSEd/yQg + Hf8pJSD/eHFt/5OQj/8IBwf/Dg0M/w8ODf8PDg3/EA8O/xEPDv8REA//Dw0M/xcWFf8vLi3/MS8v/zEv + Lv8xMC7/MTAv/zIwL/8yMC//MjEw/zMxMP8zMjH/NDIw/zQyMP80MjH/NDIx/zUzMf81MzH/NTMy/zUz + Mf82NDL/NjQy/zc1M/83NTP/ODY0/zk3Nf86NzX/Ozg2/zw6OP89Ojj/Pzw6/zk2NP8mIyH/KSYk/ykm + JP81MjD/wry5/9/Z1v/b1cv/gH22/xwb3P8AAPP/AAD2/wAA9v8CAu7/MS/M/6mkuf/g2tH/493Z/4uG + g/8iHxz/d3Nw/+Pd2f/f2dP/vLe7/0JAxv8FBez/AAD2/wAA9/8AAPX/ERDg/2hluv/Uzsb/3tnV/9DK + x/9JRUH/My8s/zYyL/83My//ODQw/zg0Mf84NDD/Pzs3/764tP/q5uT/6OXj//Pw7v9qaWj/AAAA/wAA + AP8AAAD/AAAAdwAAAHcAAAD/AAAA/wAAAP9cW1r/7+vq/+jk4v/q5uT/s62q/wgICP8AAAD/AAAA/wAA + AP9WVFT/nZiU/ywnI/8oJCH/KSUi/yomIv8pJSL/KSUi/yklIv8pJSL/KiUi/yYiH/8dGhf/GxgW/yMf + Hf8pJSH/KSUi/yklIv8pJSL/KSUi/yomIv8qJiL/KSYi/yUhHv9zbWn/lJGP/wkIB/8PDg3/EA8O/xAP + Dv8RDw7/ERAP/xIQD/8SERD/ERAO/w4MDP8ODQz/Dg4M/w8ODf8PDg3/EA8O/xEPDv8REA//EhEQ/xMS + EP8VExL/FhQT/xcWFP8YFxb/GhkX/xwaGf8eHBr/IB4c/yEgHv8jIiD/JSMh/yYkIv8nJSP/KCYk/ykn + Jf8pKCb/Kigm/yooJv8rKCb/Kykn/y4sKv8uLCr/Liwq/ywpJv+Mh4T/2tPP/93W0v/i29H/ysTK/5aR + 0P+Cftr/g3/Y/6ehzf/X0Mr/4drT/93W0v/QycX/XlpX/yklI/9MSEX/xb67/9zV0v/g2dP/3NXN/6+p + zP+Hgtf/gn7b/5CL0//Ausj/4drP/97X0v/c1dH/op2a/zk1Mv81Mi7/NzMw/zg0MP84NDH/OTUx/zg0 + Mf9AOzj/vLay/+nk4//o5OL/7+vq/1xbWv8AAAD/AAAA/wAAAP8AAAB3AAAAdwAAAP8AAAD/AAAA/1JR + UP/s6Ob/5+Pi/+nl4/+yrKj/CAgH/wAAAP8AAAD/AAAA/1VUU/+Zk5D/Lykk/y0pJf8uKib/JCAd/yQg + Hf8vKib/Likl/y4pJf8vKib/JyIf/x0aGP8dGhj/IR4b/y4pJv8uKSX/Likl/y8qJv8pJSH/HhsZ/ywo + JP8uKiX/KiUh/3BqZv+Sj43/CQgH/w4NDP8ODQz/Dw4N/xAPDv8REA//EhEQ/xIREP8bGRf/KSQi/ygk + If8oJSH/Kici/y0oJP8vKyb/MS0o/zMvKv82MS3/NzMu/zg0L/85NTH/OjYy/zo2M/87NzT/Ozc0/zs3 + NP88ODP/PDg0/zs3M/87NzP/Ozcz/zo2Mv85NjL/OjYy/zo2Mv85NTL/OjUy/zk1Mv84NDH/MC0r/y8s + Kv8uLSr/Lisp/zEvLf9VUU//XlpX/11ZVv9gXFf/ZWFX/2hjVv9nY1b/ZF9X/2BbV/9eWlf/YFtY/0tI + RP8vLCn/MS4r/y8sKf9FQT7/X1tX/19bWP9gW1j/ZWBY/2plWP9qZVf/aWRY/2RfWf9hXFn/Yl1a/15Z + Vv89OTb/NTEt/zczMP84NDD/ODQx/zk1Mf85NTL/OTQx/0A8N/+8tbH/6OPi/+fj4v/s6Ob/UlFQ/wAA + AP8AAAD/AAAA/wAAAHcAAAB1AAAA/wAAAP8AAAD/U1FR/+vn5f/m4uD/6OPh/7Grp/8JCQj/AAAA/wAA + AP8AAAD/VVNS/5WPjP8wKib/Mi0o/zkyLv82MCz/OjQw/zMtKf8zLSn/Mi0o/zgyLv87NTD/Miwq/zMt + Kv83MS3/PjYy/zItKP8zLSn/Mi0o/zgyLv83MS3/PDUw/zQvKv8uKCT/bWdi/5SRj/8UExL/HBsa/x8d + HP8hIB//JCMi/ycmJf8qKSf/LS0r/1tSS/9sYFj/al9W/2hdWP9jWF//Zltb/2JXX/9iWF3/YFVf/2BW + Xv9hV1r/XlRe/2JXVv9iWFX/ZFlQ/2JYUf9iV1D/YldQ/1tSV/9dU1T/XVNR/1xSUv9fVU3/WlBS/15U + TP9bUU7/WlBO/1xSSv9cUkv/XFJL/1xSS/9CPDj/Lywq/y8tK/8wLSv/Ly0q/ywqJ/8rKCb/Kygm/yso + Jv8rKCb/Kygm/yspJv8rKCb/LCkm/y0pJ/8sKSb/Liso/zEuLP8yLiz/Mi8s/zAsKf8tKif/LSon/y4q + J/8uKif/Lyso/y8rKP8vKyj/Lyso/zAsKf8wLCn/MS0q/zUxLv83MzD/ODQw/zg0Mf85NTH/OTUy/zo1 + Mv85NTH/QT05/7u0sP/o4+H/5+Ph/+vn5f9TUVH/AAAA/wAAAP8AAAD/AAAAdQAAAFAAAAD/AAAA/wAA + AP9TUVD/6ubj/+Xh3//m4d//u7Sv/xIREf8AAAD/AAAA/wAAAP9UUlH/j4mG/zEsJ/83MS3/ODIt/0Q8 + N/9LQz3/NzEs/zcxLf83MSz/OzQw/1ZNRv9TSkP/UEdC/1lPSf9DPDf/NjAs/zcxLf82MCz/QTs1/0tD + Pf87NC//NzEt/zMtKP9nYV3/nZmX/zAvLv80MzL/NTQz/zU0M/81MzL/NDMy/zMzMv84NTT/aV5W/21h + WP9uYlX/Vkxz/ygkrf8hHrX/MCuh/zcxmP87NZH/JyOs/zMum/8yLJz/RDyC/0A5h/9oXU3/Y1lR/2RZ + UP9eVFf/Kyah/y8qm/87NIj/MiyU/y0pm/8pJKH/NTCO/0I7eP8/OHz/X1VH/1xSS/9cUkv/XlNM/0lB + PP8vLSv/MC4s/zAuLP8xLiv/MS4s/zEuLP8xLiz/MS4r/zIuLP8xLiz/Mi4s/zEvLP8yLiz/Mi8s/zIv + LP8yLyz/Mi8t/zIvLf8zMC3/MzAt/zMvLP80MC3/NDAt/zQwLf80MS3/NTEu/zUxLf81MS7/NTIu/zYy + L/83My//NzMw/zg0MP84NDH/OTUx/zk1Mv86NjL/OjYy/zk1Mf9JRED/wrq1/+bh3//m4uD/6ubk/1NR + UP8AAAD/AAAA/wAAAP8AAABQAAAASQAAAP8AAAD/AAAA/1NSUf/p5OH/5N/d/+Xg3v+8tbH/FBMS/wAB + AP8DAwP/BAQE/1dVU/+jnZn/LSgj/zcxLf84Mi3/NzEs/zcxLP84Mi3/ODIt/zo0MP86NDD/Rj45/11T + TP9hVk//T0dA/zs1Mf87NTH/ODIu/zgyLf83Mi3/NjEs/zcxLf84Mi3/Ligj/25nY/+hnZr/MC8v/zQz + Mv80MzL/NDMy/zQzMf80MjL/NDIx/zY0M/9lWlP/bWFZ/25iVP9RSHj/IR22/yAbuP8iHrT/NzGX/1ZN + bf8bGbz/KCSp/zUwl/8xK5z/JSGt/15UXP9lWlD/ZFlQ/11TWf8jIKz/KSWj/yQgrP8sJ57/Hhuz/y4p + mf8dGrT/KSSh/ygkoP9cUk3/XFJK/1xSS/9eU0z/SEE8/zAuK/8xLyz/MS4s/zEuLP8yLyz/MS8t/zIv + LP8yLyz/Mi8s/zIvLP8yLyz/Mi8t/zIvLP8zLy3/MzAt/zMwLf8zMC3/MzAu/zMwLf80MC3/NDAt/zQw + Lf81MS7/NDEt/zUxLv81MS7/NjIu/zUxLv82Mi//NjIv/zczMP84NDD/ODQx/zk1Mf85NTL/OjUy/zo2 + Mv87NzP/OjUy/0pGQf/Cu7b/5uHf/+bh3//p5OP/U1JR/wAAAP8AAAD/AAAA/wAAAEkAAABKAAAA/wAA + AP8AAAD/SUdG/+Xg3f/j3tz/5N/d/7u0sP8aGRj/LCss/zc3N/81NTX/UE9O/8S+uv99d3P/VlBL/1hT + Tv9YU07/WFNO/1lTTv9VUEv/Pjg0/z84M/8/ODP/Pjcy/z43Mv8+ODL/QDkz/zs1MP9NSEP/WVNO/1lT + Tv9YU07/WFNO/1dRTP9kXlr/urSw/3l2dP8wMC//NTQz/zU0M/81MzL/NDMz/zUzMv80MzL/NjUz/2NZ + Uv9tYln/bGBX/2dcXP9XTXH/WlFr/09Gef9aUGn/ZVpa/1BGdf9VTGz/UUlw/09Hcv9LQ3f/XlNc/2Va + Uf9kWVH/Y1hR/1JKZ/9QSGn/SUJz/05Fav9USmH/U0pg/0tDbP9LQ2z/SEBu/1tRUP9cUkv/XFJL/15T + TP9IQj3/MS4s/zMwLf8yLy3/Mi8t/zIvLf8yMC3/Mi8t/zMwLf8zLy3/My8t/zMvLf8zMC3/Mi8t/zMw + Lf80MC3/NDEu/zQxLv80MC7/NDAu/zUxLv81MS7/NTEu/zUyLv81MS7/NTEu/zYyL/82Mi//NjIv/zYy + L/83My//ODQw/zg0Mf85NTH/OTUy/zo1Mv86NjL/Ozcz/zs3M/86NjL/SkVB/8O7tv/l4d//5eHf/+bh + 3v9IR0b/AAAA/wAAAP8AAAD/AAAASgAAAEoAAAD/AAAA/wAAAP88Ojr/4dvZ/+Lc2v/j3dv/urKt/xwb + Gv85ODj/QEBA/z8/Pv87Ozv/WlhX/4OAfv+Cfnz/gX17/4F9e/+BfXv/fnt5/66ppf9hW1f/Pzgy/0Q9 + N/9EPTf/RD03/0Q9N/9EPTf/Pjg0/6qkoP+JhYL/fnp4/397eP9/e3j/fnt4/4J+fP9mZGL/NjU0/zY1 + NP82NTT/NjU0/zY0NP81NDP/NTQz/zU0Mv83NjT/ZFpT/3BkW/9uYlr/bmJZ/29jVv9uYlb/b2JU/21h + Vf9rX1b/bWFT/2tfU/9rX1P/al9R/2pfUf9oXFL/ZltT/2ZbUv9lWlL/ZltP/2ZaT/9lW03/ZVlN/2NZ + Tf9iWE3/Y1hL/2JXS/9iV0r/X1VN/15TTP9eU0z/X1RN/0ZBPP8xLy3/MzAu/zMwLv8zMC3/MzAt/zMw + Lv8zMS7/NDAu/zQwLv80MC7/MzAt/zQwLv8zMC7/NDEu/zQxLv81Mi//NTEu/zUxLv81MS7/NTIv/zYy + L/82Mi//NjIv/zYyL/82Mi//NjMv/zczMP83My//NzMw/zg0MP84NDH/OTUx/zk1Mv86NjL/OjYy/zs3 + M/88NzT/PDg0/zs2M/9LRUL/wrm0/+Xg3v/l4N7/4tza/zw6Ov8AAAD/AAAA/wAAAP8AAABKAAAASQAA + AP8AAAD/AAAA/z07Ov/f2tf/4NvY/+Hc2f+4sav/HRsa/zg4OP9APz//Pz4+/z8+Pv87Ozv/ODg4/zg4 + Of84ODj/ODg4/zc4N/8zMzP/j4qH/2NdWP9DPDb/SEE7/0lCO/9JQjz/SUE7/0lBO/9AOzX/oZuX/0RD + Qv8yMTD/MzMy/zQzMv8zMjL/MjIx/zIxMf83NjX/NzY1/zc2Nf83NTT/NjU0/zY1NP81NTP/NTUz/zU0 + M/9HQz//WlJM/1lRS/9ZUEv/WFBK/1hQSv9XT0n/V09J/1ZOSf9WTkj/VU1I/1VNR/9UTUf/VE1H/1RM + Rv9UTEb/U0tG/1JLRf9SSkX/UkpF/1FKRP9RSUT/UElE/1FJQ/9QSUP/T0hC/09IQv9OR0H/T0dC/05H + Qv9KRD//ODQx/zMxLv8zMS7/MzEu/zQxLv8zMC7/NDEu/zQxL/80MS7/NDEv/zQxLv80MS7/NDEu/zQx + Lv80MS7/NTIv/zUyL/81Mi//NjIv/zUyL/82Mi//NjMv/zcyMP82Mi//NzMw/zYzL/83MzD/NzMw/zg0 + MP84NDD/ODQx/zk1Mf85NTL/OjUy/zo2Mv87NzP/Ozcz/zw4NP89ODT/Ozcz/0tGQv/AuLP/5N/d/+Tf + 3f/g29j/PDs6/wAAAP8AAAD/AAAA/wAAAEoAAAA6AAAA+wAAAP8AAAD/PDs6/97Y1f/f2db/4NrX/7ev + qv8dHBv/Ojk5/0FAQP9AQD//Pz8//z4/Pv8+Pj7/PT09/z09Pf89Pjz/PTw9/zg5OP+PiYX/X1lV/0hA + Of9MRD3/RT44/0Q9N/9KQjz/TkY//0E7Nf+dl5L/SEdG/zc3Nv85ODj/OTg3/zk3N/84Nzf/OTc3/zg3 + Nv84NzX/ODc2/zc2NP82NjT/NjY0/zY1NP82NTT/NzU0/zUzM/8zMjH/MjIx/zIxMP8yMTD/MjEw/zIx + MP8yMTD/MjEw/zEwL/8xMC//MTAv/zEwL/8yMC//MjAv/zEwLv8xMC7/MTAu/zEvLv8xLy7/MS8u/zEv + Lv8xLy7/MTAu/zIwLv8xLy3/MS8t/zEvLf8yMC7/MTAt/zEwLf80MTD/NTIw/zQyL/80Mi//NTIv/zUy + L/81MS//NTEv/zUyMP81Mi//NDEv/zUyL/81MS7/NTIv/zUyMP82Mi//NjIv/zczMP82Mi//NzMw/zcz + MP83MzD/NzMw/zczMP83NDD/ODQx/zg0MP84NDH/OTUx/zk1Mf85NTH/OjUy/zo2Mv86NjL/Ozcz/zw3 + NP88ODT/PTg1/z05Nf88NzT/S0ZC/8C3sf/k39z/5N/c/9/Z1v88Ozr/AAAA/wAAAP8AAAD9AAAAOwAA + ADgAAAD7AAAA/wAAAP89Ozr/3dfT/93X1P/e2NX/ta2o/x0cGv86Ojr/QUFB/0BAQP9AQD//Pz8//z8/ + P/8/Pj7/Pj49/z4+Pv8+PT3/Ojk5/4yGg/9cVlH/TEQ9/1BIQf9COzb/PDUy/01FPv9TSkP/QTs2/5mS + jf9JR0f/ODg3/zo5OP86ODj/Ojk4/zk4N/85ODf/OTg3/zk4N/84Nzb/ODc2/zg3Nf83NjX/NzY0/zc1 + Nf83NTT/Ozk3/0RAPf9DPzz/Qz88/0M+O/9CPjv/Qj48/0I+O/9CPjr/Qj07/0E9Ov9APTr/QDw5/0E8 + Ov9APTn/QDw5/0A8OP9APDj/Pzs3/0A7OP8/Ozf/Pzs4/z87OP8/Ojf/Pzo3/z46N/8+Ojb/Pjo2/z46 + Nv8/Ozb/PTk1/zUyMP81MjD/NTIw/zUyMP81Mi//NTIv/zUyL/83Myz/NjMt/zczLf83NCz/NzQr/zc0 + LP83NC3/ODMs/zczLP84NCz/ODUt/zk1Kv84NS3/OTQr/zg0Lv85NS3/OTUs/zo2Kv85NS3/OjUs/zs3 + Kv86NjD/OjYy/zk1Mv86NjL/OjYy/zs3M/88NzT/PDg0/z04NP89OTX/Pjk2/zw4NP9LRkL/vrWw/+Pe + 2//j3tv/3tjU/z07Ov8AAAD/AAAA/wAAAPsAAAA4AAAAOAAAAPsAAAD/AAAA/zQzMv/Z08//3NbS/9zW + 0v+5sKv/IiAf/zs7O/9CQUH/QUBA/0BAQP9AQED/QEBA/z8/P/8/Pj7/Pz4+/z8+Pv86Ozr/ioSA/1lT + Tv9RSEH/VU1F/2BVTv9jWFH/V05G/1dOR/9CPDb/lIyI/0pIR/85OTj/Ojk5/zo5OP86OTj/Ojk4/zo5 + OP86OTj/OTg3/zk4N/85ODb/ODc2/zg2Nv84NjX/ODY1/zg2Nf9cU03/bmJa/2xhWP9sYFj/a19X/2tf + V/9qXlb/aV5W/2ldVf9oXVX/Z1xU/2ZbVP9mW1P/ZltT/2VaUv9kWVL/ZFlS/2NYUf9iWFD/YldQ/2FX + T/9hVk//YFZO/19VTv9fVU3/XlRN/15TTP9dU0z/XVNM/11TTP9dU0z/Qj05/zUyL/82MjH/NTMw/zYz + MP82MzD/NjMv/yspVP8wLUX/LyxI/ysoVv8pJ1n/KylU/y4rS/8sKVT/LClS/y0pUf8uK0//JSNs/y8r + Tf8rKFr/MS5G/y0qVP8tKlX/JSJs/y8sUP8sKVj/JiNt/zYyPf87NjH/OjYy/zo2Mv87NzP/Ozcz/zw4 + NP89ODT/PTg1/z45Nv8+Ojb/PTg0/09JRf/AuLH/4t3a/+Ld2v/a1ND/NDIy/wAAAP8AAAD/AAAA+wAA + ADgAAAA4AAAA+wAAAP8AAAD/JyUl/9TOyv/a1ND/2tTQ/8C2sP8qKCf/Ozs7/0JCQv9BQUH/QUFB/0FB + Qf9BQED/QEA//0BAP/9APz//QD8+/zw7O/+Ign3/UkxI/1VMRP9cU0v/XlNM/19VTf9cUkv/X1VN/z03 + Mf+SioX/SkhH/zo6OP87Ojn/Ozo5/zs6Of87Ojn/Ozk5/zs5OP86OTj/Ojk4/zo4OP85ODf/OTg3/zk3 + Nv84Nzb/OTc2/2FXUP9uYVn/bGBY/2tfV/9qX1f/al5W/2leVv9oXVX/aF1V/2dcVP9nW1T/ZltT/2Va + U/9lWlL/ZFlS/2RZUf9jWFH/YlhQ/2JXUP9hV0//YFZP/2BWTv9fVU7/X1RN/15UTf9dU0z/XVNM/1xS + S/9cUkv/XFJL/15TTP9HQTz/NTIw/zc0Mf83MzH/NzMx/zczMv84NSz/ERCp/xsaif8MC7v/EA+w/wsL + vv8QEKz/GhiP/xAPr/8UE6P/EA6v/wsLvv8UE6H/ExKk/wkIxv8iH3j/CwrB/woJw/8WFKD/DAy8/w4N + t/8UE6T/GReW/z04Lf87NzP/Ozcz/zw3NP88ODT/PTg1/z05Nf8+OTb/Pjo2/z86Nv88ODX/VE5K/8S7 + tP/h29j/4t3Z/9XPy/8mJSX/AAAA/wAAAP8AAAD7AAAAOAAAADgAAAD7AAAA/wAAAP8nJiX/08zI/9nS + zv/Z0s7/v7aw/yglJP87Ozv/Q0ND/0JCQf9CQkL/QUFB/0FBQf9BQED/QUBA/0BAP/9APz//PDs7/4iB + fP9gWlT/KiYi/0Y/OP9EPTf/RD03/0U+OP86NC7/Mi4r/6Wak/9FQ0L/Ozs6/zw7Ov88Ozr/PDo5/zw6 + Ov88Ojn/Ozo5/zs6Of87OTj/Ojk4/zo5OP86ODf/Ojg3/zk4Nv86ODb/YFZQ/25iWf9sYFj/a19X/2pf + V/9qXlb/aV5W/2ldVf9oXVX/Z1xU/2dcVP9mW1P/ZltT/2VaUv9kWVL/ZFlR/2NYUf9jWFD/YldQ/2FX + T/9hVk//YFZO/2BVTv9fVU3/XlRN/15TTP9dU0z/XVNM/1xSS/9cUkv/XlNM/0dBPf81MzD/ODQy/zg0 + Mv84NDL/NzQy/zg1Lf8SEaf/CAfJ/xEQrf8REKv/EhGr/xcWmP8REKv/EBCt/xUUof8KCcL/EhCq/w8O + s/8ZF5X/Dg23/xMSpv8YFpn/FhSg/xAQrv8QD7L/FhSg/xQTpf8kIXf/PTku/zw4NP88NzT/PDg0/z04 + NP89OTX/Pjk2/z46Nv8/Ojb/Pzs3/z05Nf9UTkr/xbu1/+Hb2P/g29j/1M3J/ycmJf8AAAD/AAAA/wAA + APsAAAA4AAAAKAAAAPEAAAD/AAAA/yclJf/Rysb/18/L/9fPy/+/ta//JSIh/zo6Ov9FRET/Q0JC/0JC + Qv9CQkL/QkFB/0JBQf9BQUD/QUBA/0FAQP8+PT3/W1dU/6CUjP9dVlH/S0VB/0xFQf9MRUH/S0VB/1BK + Rf+TiID/fHVw/zs6Of89PDv/PTw7/z07Ov89Ozr/PDs6/zw7Ov88Ozn/Ozo5/zs6Of87Ojj/Ozk4/zo5 + OP86OTf/Ojk3/zo4N/9gV1H/bmJZ/2xgWP9rYFf/a19X/2pfV/9pXlb/aV1V/2hdVf9oXFT/Z1xU/2Zb + U/9mW1P/ZVpT/2VaUv9kWVL/Y1lR/2NYUf9iWFD/YldQ/2FWT/9gVk//YFVO/19VTv9fVE3/XlRN/11T + TP9dU0z/XFJL/1xSS/9eU0z/SEI9/zY0Mf84NTL/ODUy/zg1Mv84NDL/OTYu/xcWmP8VE6L/JyVp/xcV + m/8XFZz/LytS/zUyPv82Mjz/Kidi/x4ch/82Mj3/NDBF/zo2NP82Mj//NTFD/zo2NP87NzL/IyF5/xoZ + kv86Njj/NTBI/zw3Mv88ODT/PDg0/zw4NP89ODT/PTg1/z45Nv8+Ojb/Pzo2/z87N/9AOzf/Pjk2/1RO + Sv/Eu7X/4dvY/+Da1//Sy8f/JyUl/wAAAP8AAAD/AAAA8QAAACgAAAAlAAAA7wAAAP8AAAD/JyYl/9DI + xP/Z0s7/3NXR/7+1r/8lIiH/Ozs7/0ZFRf9EREP/REND/0NDQv9DQ0L/Q0JC/0JBQf9CQUH/QkFA/0FB + QP8/Pj7/TUtK/2VgXf9nYV7/ZmFd/2ZhXf9lYF3/ZWBd/1RQTf8+PDz/Pj08/z49PP8+PTz/Pjw7/z08 + Ov89PDv/PTw7/z08O/88Ozr/PDs6/zw7Of88Ojn/PDo5/zs5OP87OTj/Ozk3/19WUP9wY1v/bmFZ/21h + Wf9tYFj/bGBY/2xfV/9rX1f/al5W/2peVv9oXVX/aFxV/2dcVP9nXFT/ZltT/2VaU/9lWlL/ZFlS/2RZ + Uf9jWFH/YlhQ/2JXUP9hV0//YFZP/2BWTv9fVU7/X1VN/15UTf9dU0z/XVNM/15UTP9GQDz/ODUy/zk2 + M/85NjP/OTYz/zk2M/85NjP/NzQ5/zg1Nf85NTX/ODQ5/zczO/85NjX/Ozcx/zo3Mv87Ny//PDgs/zs3 + Mf87NzH/Ojcz/zs4Mv88ODL/Ozcz/zw4M/86Nzb/OTY6/z04Mv89OTL/PDg0/z04Nf89OTX/Pjk1/z05 + Nf8+OTb/Pjo2/z86Nv8/Ozf/QDs3/0A8OP8/Ojb/VE9K/8O5s//g29f/39rW/9HJxf8nJiX/AAAA/wAA + AP8AAADvAAAAJQAAACUAAADvAAAA/wAAAP8hIB//zMXB/97Y1P/h29j/v7Wv/yUiIf88Ozv/RkZF/0VE + RP9EREP/REND/0RDQ/9DQkL/Q0JC/0JCQf9CQkH/QkFB/0FBQf8/Pz//Pj09/z49Pf8+PTz/PT08/zw8 + O/88Ozr/PTw7/z8+Pf8/Pj3/Pz48/z49PP8+PTz/Pj07/z49O/8+PDv/Pjw7/z08O/89Ozr/PTs6/zw7 + Ov88Ozn/PDo5/zw6Of87OTj/RUE+/1lQS/9ZUUv/WFFL/1hQS/9YUEv/V09K/1dPSv9WT0n/Vk9J/1ZO + Sf9VTkj/VU1I/1VNR/9UTEf/VExH/1NMR/9SS0b/UktG/1JLRf9RSkX/UUpE/1BKRP9RSUT/UElD/1BI + Q/9QSEL/T0hC/09HQv9OR0L/SkM//zw4Nf86NjT/OTc0/zk2NP85NzT/OjYz/zk2M/86NzP/OjYz/zo2 + M/86NzP/Ozcz/zs3NP86NzT/Ojc0/zo3M/87NzT/Ojcz/zs3NP87NzT/Ozg0/zw4NP88ODX/PDg0/zw4 + NP88OTT/PDg0/z05Nf89OTX/PTk1/z45Nf8+Ojb/Pjk2/z46Nv8/Ojb/Pzs3/0A7N/9APDj/QTw4/z87 + N/9VTkr/wrix/+Da1v/f2dX/zcbB/yEgH/8AAAD/AAAA/wAAAO8AAAAlAAAAJQAAAO8AAAD/AAAA/xIS + Ef/HwLv/3dfU/+Da1/+9tK3/JSMh/zw8PP9HRkb/RUVE/0VERP9FRET/RURD/0RDQ/9DQ0L/Q0NC/0NC + Qv9CQkL/QkFB/0JBQP9BQUD/QkFA/0FBQP9BQED/QD8//0A/Pv9APz7/QD8+/0A/Pf8/Pz3/Pz49/z49 + PP8+PTz/Pj08/z89PP8+PTz/Pjw7/z48O/89PDv/Pjw6/z07Ov88Ozr/PDs5/zw6Of86OTf/Ojg3/zs6 + OP87Ojj/Ozo4/zo5N/86OTf/Ojg2/zo5N/86ODf/Ojg2/zo4Nv86ODb/Ojc2/zk3Nv86NzX/Ojg2/zo3 + Nf85NzX/OTc1/zk3Nf85NzT/OTY0/zk2NP86NzX/OTY1/zk2NP86NjT/OTc0/zk2NP84NTP/Ojc1/zo3 + Nf86NzT/Ojc0/zo3NP86NzT/Ojc0/zo3NP86NjT/Ozc0/zs3NP87NzT/Ozg0/zs3NP87NzT/Ozg0/zs3 + NP87NzT/Ozc0/zw4NP88OTX/PDg1/z05Nf89ODX/PTg1/zw5Nf89OTX/PTk1/z46Nv8+OTX/Pjk2/z86 + N/8/Ojf/Pzo2/z87N/9AOzf/QDw4/0E8OP9BPTn/QDs3/1VPSv/Bt7D/39nW/97Y1P/IwLv/EhER/wAA + AP8AAAD/AAAA7wAAACUAAAAmAAAA7wAAAP8AAAD/ExIS/8W9uP/c1tL/39rW/76zrP8mJCH/PT08/0hH + R/9GRkb/RkVF/0ZFRf9FRUT/RURE/0VEQ/9EREP/RENC/0RDQv9DQkL/Q0JB/0NCQf9DQkH/QkFB/0JB + QP9BQUD/QUA//0FAP/9BQD7/QT8//0E/Pv9APz7/QD89/z8+Pf8/Pj3/Pz49/z8+PP8/PTz/Pj08/z49 + O/8+PDv/Pjw7/z08Ov89PDr/PDs5/0tGQv9fVlD/YFdQ/19XUP9fVk//X1ZP/15VTv9eVU7/XVRO/11U + Tf9cU0z/W1NM/1tSS/9aUkz/WlFL/1pQSv9aUUr/WU9K/1hQSf9YT0n/V09I/1dOSP9WTkj/VU1H/1ZN + R/9VTEf/VEtG/1RMRv9UTEb/VExG/09IQv89Ojb/Ozg1/zs4Nf87ODX/Ozg1/zs4Nf87ODX/Ozc0/zs4 + Nf87ODX/PDg1/zw5Nf88ODX/PDg1/zw4Nf88ODX/PDg1/zw4Nf88ODX/PTk1/z05Nv89Ojb/PTk2/z45 + Nv89OTX/Pjk2/z45Nv8+Ojb/Pzo3/z86Nv8/Ojf/Pzs3/0A7N/8/Ozf/QDs3/0A8OP9BPDj/Qj05/0I9 + Of9APDj/VU9K/8C2rv/e2dX/3NbS/8W9uP8TEhL/AAAA/wAAAP8AAADvAAAAJgAAABgAAADmAAAA/wAA + AP8TEhH/xLu2/9zV0f/e2NT/xbqz/y4rKf89PTz/SEhI/0dHRv9HRkb/RkZF/0ZFRf9GRUT/RURE/0VE + Q/9EQ0P/REND/0RDQv9EQ0L/Q0JC/0NCQf9DQkH/Q0JB/0NBQP9CQED/QkA//0FAP/9BQD//QUA//0BA + Pv9APz7/QD89/0A+Pf9APj3/QD89/z8+Pf8/Pjz/Pz08/z89PP8/PTz/Pjw7/z48O/89Ozr/XVRO/3Bj + Wv9tYVn/bGBY/2tgWP9rX1f/al5W/2leVv9pXlb/aF1V/2hcVP9nXFT/ZltT/2ZbU/9lWlL/ZFpS/2RZ + Uv9jWFH/Y1hQ/2JYUP9hV0//YVZP/2BWT/9fVU7/X1VN/15UTf9eU0z/XVNM/11TTP9dU0z/XlNM/0ZB + Pf87ODX/PDk2/zw4Nv88OTb/PDk2/zs4Nf88ODX/PDg1/zw4Nv88OTX/PDk2/zw5Nf89OTb/PDk1/z05 + Nv88ODb/PTk2/z05Nv89OTb/Pjo2/z06N/8+Ojb/Pjo2/z46Nv8+Ojb/Pjo3/z86N/8/Ozf/QDs3/z87 + N/9AOzf/QDw4/0A8OP9APDj/QTw4/0E9Of9CPTn/Qz46/0A8OP9bVE//xbmy/97Y1P/c1dH/xLu2/xMS + Ef8AAAD/AAAA/wAAAOYAAAAYAAAAEgAAAOMAAAD/AAAA/xMSEf/CubT/29TQ/97Y1P/FurL/Liso/z4+ + Pf9KSUn/SEdH/0hHR/9HR0b/R0ZG/0ZGRf9GRkX/RUVF/0VERP9FRET/RUVE/0REQ/9EQ0L/RENC/0RD + Qv9EQ0L/REJC/0NCQf9DQUD/QkFA/0JBQP9CQT//QUA//0FAP/9BQD//QT8+/0E/Pv9BPz7/QD8+/0A+ + Pf9APj3/QD49/0A+Pf8/Pjz/Pz08/z48O/9dVU//bmJZ/2xgWP9rX1f/al9X/2peVv9pXlb/aV1V/2hd + Vf9nXFT/Z1xU/2ZbU/9lWlP/ZVpS/2RZUv9kWVH/Y1hR/2JYUP9iV1D/YVdP/2FWT/9gVk7/X1VO/19U + Tf9eVE3/XVNM/11TTP9cUkv/XFJL/1xSS/9dUkv/R0E9/zs5Nv88Ojf/PTo3/z05N/89OTb/PTk2/zw5 + Nv89OTb/PTk2/z05Nv89OTb/PTo3/z06Nv89OTb/Pjk2/z05N/89Ojb/PTo3/z46Nv8/Ojf/Pzo3/z46 + N/8/Ozf/Pzs3/z87N/8/Ojf/Pzo4/0A7N/9APDj/QDs3/0A8OP9APDj/QD05/0E8OP9BPTn/Qj05/0M+ + Ov9DPjr/QTw4/1tUT//FurL/3tjU/9vU0P/CubT/ExIR/wAAAP8AAAD/AAAA4wAAABIAAAATAAAA4wAA + AP8AAAD/ERAQ/7yzrf/a08//3tjV/8m9tf9BPDj/KCgo/0RERP9DQkL/QkJC/0JCQv9CQUL/QUFA/0FB + Qf9BQED/QUA//0BAP/9AQD//QD8+/z8/Pv8/Pj7/Pz49/z8+Pv8/Pj3/Pz49/z49PP89PDz/Pjw8/z08 + PP89PDv/PTw7/z08O/88PDv/PDs6/zw7Ov88Ozr/PDs6/zw6Ov88Ojn/PDo5/zs6Of87OTj/OTg3/1tT + Tf9tYVj/al5W/2leVf9pXVX/aF1V/2hcVP9nXFT/ZltT/2ZaU/9lWlL/ZFlS/2RZUf9jWFH/YlhQ/2JX + UP9hV0//YVZP/2BVTv9gVU7/X1RN/15UTf9eU0z/XVNL/11SS/9cUkr/W1FK/1tRSv9aUEn/WlBJ/1tQ + Sf9FPzv/OTYz/zo3Nf86NzT/Ojc0/zo3NP86NzT/Ojc0/zo3NP86NzT/Ojcz/zs3NP87NzT/Ozc0/zs3 + NP87NzT/PDg1/zs3Nf87ODX/Ozg0/zw4NP88ODX/PDg1/z05Nf89OTb/PTk1/z05Nv89OTb/PTk2/z46 + Nv8+Ojb/Pjo2/z86N/8+Ozf/Pzs3/0A7N/9AOzf/QTw4/0I9Of8+OTX/aWFb/8e8tP/e2NX/29PP/7yz + rf8REBD/AAAA/wAAAP8AAADjAAAAEwAAABMAAADjAAAA/wAAAP8LCwr/q6Od/9rTzf/e2dT/yL21/5yP + hv8+OTb/MzAt/zUxL/81Mi//NTIw/zUyMP81MjD/NjMw/zYzMP83NDH/NzMx/zc0Mv84NDH/ODUy/zk1 + Mv85NTL/OTUy/zo2M/86NTP/OjYz/zo3M/86NzT/OzY0/zs3Nf87NzX/PDg1/zw4Nf88ODX/PDg1/z05 + Nf89OTb/PTk3/z46N/8+Ojb/Pzs3/z86N/8+Ojf/ZlxV/3xvZv95bWT/eG1k/3hsY/93bGP/eGtj/3dr + Y/92amL/dmpi/3VpYf91aGH/dGhg/3RoYP9zaF//c2df/3NnXv9yZl7/cWZe/3FlXv9wZV3/cGRd/29k + XP9uZFz/bmNb/25jW/9tYlr/bWJa/2xhWf9sYVn/bGFZ/1RNSP9JRED/SkVB/0tFQf9MRkH/TEZC/0xG + Qv9NR0L/TUdD/01HQ/9NSEP/TkhD/05IRP9OSET/T0lF/09KRf9QSkX/UEpF/1BKRv9RS0b/UUtG/1JM + R/9STEf/U01I/1NNSP9TTUj/VE1J/1ROSf9UTkn/VE5J/1VOSf9VT0r/Vk9K/1ZQS/9XUEv/V1FL/1dR + TP9YUkz/V1FM/2VeWP+kl47/x7y0/97Y1P/b1M//raOe/wsLCv8AAAD/AAAA/wAAAOMAAAATAAAAFAAA + AOQAAAD/AAAA/wsLCv+qoZr/2dLM/93X0v/Vzcj/vrGo/7aonv+toJf/rqGX/66hl/+uoZf/rqGX/66h + l/+uoZf/rqGX/66hl/+uoZj/rqGY/66hmP+uoZj/rqGY/66hmP+uoZj/rqGY/66hmP+uoZj/rqGY/66h + mP+uoZj/rqGY/66imP+vopj/r6KY/6+imP+vopj/r6KY/6+imP+vopj/r6KY/6+imP+vopj/r6KZ/6+i + mP+ypJv/s6ac/7OmnP+zppz/s6Wc/7OlnP+zpZz/s6Wc/7OlnP+zpZz/s6Wc/7OlnP+zpZz/s6Wc/7Ol + nP+zpZz/s6Wb/7Klm/+zpZv/s6Wb/7Klm/+ypZv/sqWb/7Klm/+ypZv/sqWb/7Klm/+ypZv/sqWb/7Kl + m/+ypZv/saSa/7Cjmv+wo5r/sKOa/7Cjmv+wo5r/sKOa/7Cjmv+wo5r/sKOa/7Cjmv+xo5r/saOa/7Gj + mv+xo5r/saSa/7Gkmv+xpJr/saSa/7Gkmv+xpJr/saSa/7Gkmv+xpJr/saSa/7Gkmv+xpJr/saSa/7Gk + mv+xpJr/saSa/7Gkm/+xpJv/saSa/7Gkm/+xpJv/saSb/7Gkm/+xpJr/tqif/72wp//Vzcj/3dfS/9nS + zP+qoJr/CwsK/wAAAP8AAAD/AAAA5AAAABQAAAAHAAAA2wAAAP8AAAD/CwsK/6iel//Z0Mv/3dbR/93W + 0v/a087/1czH/9bNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN + x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN + x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XM + x//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XM + x//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN + x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XN + x//Vzcf/1c3H/9XNx//Vzcf/1c3H/9XNx//VzMf/1czH/9XMx//VzMf/1czH/9XMx//VzMf/1czH/9XM + x//VzMf/1czH/9XMx//VzMf/2tPO/93W0v/d1tH/2dDL/6iel/8LCwr/AAAA/wAAAP8AAADbAAAABwAA + AAAAAADWAAAA/wAAAP8LCgr/ppyV/9jQyv/c1tH/29XQ/9zV0P/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW + 0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1tH/3NbR/9zW0f/c1dD/29XQ/9zW + 0f/Y0Mr/ppyV/wsKCv8AAAD/AAAA/wAAANYAAAAAAAAAAQAAANQAAAD/AAAA/wUFBP+WjIX/1s3H/9zW + 0f/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV + 0P/b1dD/29XQ/9vV0P/b1dD/29XQ/9vV0P/b1dD/3NbR/9bNx/+WjIX/BQUE/wAAAP8AAAD/AAAA1AAA + AAEAAAAAAAAAsAAAAP8AAAD/AAAA/19ZVP/MwLj/29TQ/9zW0v/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV + 0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zV0f/c1dH/3NXR/9zW + 0v/b1ND/zMC4/19ZVP8AAAD/AAAA/wAAAP8AAACwAAAAAAAAAAAAAABqAAAA/wAAAP8AAAD/EA8O/5CF + fv/Lv7f/187I/9nRzP/Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQ + y//Z0Mv/2dDL/9nQy//Z0Mv/2dDL/9nQy//Z0cz/187I/8u/t/+QhX7/EA8O/wAAAP8AAAD/AAAA/wAA + AGoAAAAAAAAAAAAAABgAAADjAAAA/wAAAP8AAAD/EA4O/2FaVP+dkYn/ppqS/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZ + kf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aZkf+mmZH/ppmR/6aa + kv+dkYn/YVpU/xAODv8AAAD/AAAA/wAAAP8AAADjAAAAGAAAAAAAAAAAAAAAAAAAAGAAAAD/AAAA/wAA + AP8AAAD/AAAA/wYFBf8QDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8O + Df8PDg3/Dw4N/w8ODf8PDg3/Dw4N/w8ODf8PDg3/EA4N/wYFBf8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIgAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAACIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AGYAAADmAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA + AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADmAAAAZgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAB3AAAAwAAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAAANgAAADYAAAA2AAA + ANgAAADYAAAA2AAAANgAAADAAAAAdwAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA + AA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////AAAAAAAAAAAAAAAAAAAP/AAAAAAAAAAAAAAAAAAAA/gAAAAAAAAAAAA + AAAAAAAHwAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAA + AAEAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABwAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAfwAAAAAAAAAAAAAAAAAAAP+AAAAAAA + AAAAAAAAAAAAH/8AAAAAAAAAAAAAAAAAAP////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////8= +</value> + </data> + <data name="$this.MaximumSize" type="System.Drawing.Size, System.Drawing"> + <value>625, 675</value> + </data> + <data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing"> + <value>625, 675</value> + </data> + <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms"> + <value>CenterScreen</value> + </data> + <data name="$this.Text" xml:space="preserve"> + <value>hakchi2</value> + </data> + <data name=">>fileToolStripMenuItem.Name" xml:space="preserve"> + <value>fileToolStripMenuItem</value> + </data> + <data name=">>fileToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>addMoreGamesToolStripMenuItem.Name" xml:space="preserve"> + <value>addMoreGamesToolStripMenuItem</value> + </data> + <data name=">>addMoreGamesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>presetsToolStripMenuItem.Name" xml:space="preserve"> + <value>presetsToolStripMenuItem</value> + </data> + <data name=">>presetsToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem2.Name" xml:space="preserve"> + <value>toolStripMenuItem2</value> + </data> + <data name=">>toolStripMenuItem2.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>addPresetToolStripMenuItem.Name" xml:space="preserve"> + <value>addPresetToolStripMenuItem</value> + </data> + <data name=">>addPresetToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>deletePresetToolStripMenuItem.Name" xml:space="preserve"> + <value>deletePresetToolStripMenuItem</value> + </data> + <data name=">>deletePresetToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>synchronizeToolStripMenuItem.Name" xml:space="preserve"> + <value>synchronizeToolStripMenuItem</value> + </data> + <data name=">>synchronizeToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>searchToolStripMenuItem.Name" xml:space="preserve"> + <value>searchToolStripMenuItem</value> + </data> + <data name=">>searchToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>downloadCoversForAllGamesToolStripMenuItem.Name" xml:space="preserve"> + <value>downloadCoversForAllGamesToolStripMenuItem</value> + </data> + <data name=">>downloadCoversForAllGamesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem1.Name" xml:space="preserve"> + <value>toolStripMenuItem1</value> + </data> + <data name=">>toolStripMenuItem1.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>exitToolStripMenuItem.Name" xml:space="preserve"> + <value>exitToolStripMenuItem</value> + </data> + <data name=">>exitToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>kernelToolStripMenuItem.Name" xml:space="preserve"> + <value>kernelToolStripMenuItem</value> + </data> + <data name=">>kernelToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>dumpKernelToolStripMenuItem.Name" xml:space="preserve"> + <value>dumpKernelToolStripMenuItem</value> + </data> + <data name=">>dumpKernelToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>flashOriginalKernelToolStripMenuItem.Name" xml:space="preserve"> + <value>flashOriginalKernelToolStripMenuItem</value> + </data> + <data name=">>flashOriginalKernelToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>flashCustomKernelToolStripMenuItem.Name" xml:space="preserve"> + <value>flashCustomKernelToolStripMenuItem</value> + </data> + <data name=">>flashCustomKernelToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>uninstallToolStripMenuItem.Name" xml:space="preserve"> + <value>uninstallToolStripMenuItem</value> + </data> + <data name=">>uninstallToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>modulesToolStripMenuItem.Name" xml:space="preserve"> + <value>modulesToolStripMenuItem</value> + </data> + <data name=">>modulesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>installModulesToolStripMenuItem.Name" xml:space="preserve"> + <value>installModulesToolStripMenuItem</value> + </data> + <data name=">>installModulesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>uninstallModulesToolStripMenuItem.Name" xml:space="preserve"> + <value>uninstallModulesToolStripMenuItem</value> + </data> + <data name=">>uninstallModulesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>settingsToolStripMenuItem.Name" xml:space="preserve"> + <value>settingsToolStripMenuItem</value> + </data> + <data name=">>settingsToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>languageToolStripMenuItem.Name" xml:space="preserve"> + <value>languageToolStripMenuItem</value> + </data> + <data name=">>languageToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>consoleTypeToolStripMenuItem.Name" xml:space="preserve"> + <value>consoleTypeToolStripMenuItem</value> + </data> + <data name=">>consoleTypeToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>nESMiniToolStripMenuItem.Name" xml:space="preserve"> + <value>nESMiniToolStripMenuItem</value> + </data> + <data name=">>nESMiniToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>famicomMiniToolStripMenuItem.Name" xml:space="preserve"> + <value>famicomMiniToolStripMenuItem</value> + </data> + <data name=">>famicomMiniToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>cloverconHackToolStripMenuItem.Name" xml:space="preserve"> + <value>cloverconHackToolStripMenuItem</value> + </data> + <data name=">>cloverconHackToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>resetUsingCombinationOfButtonsToolStripMenuItem.Name" xml:space="preserve"> + <value>resetUsingCombinationOfButtonsToolStripMenuItem</value> + </data> + <data name=">>resetUsingCombinationOfButtonsToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>selectButtonCombinationToolStripMenuItem.Name" xml:space="preserve"> + <value>selectButtonCombinationToolStripMenuItem</value> + </data> + <data name=">>selectButtonCombinationToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>enableAutofireToolStripMenuItem.Name" xml:space="preserve"> + <value>enableAutofireToolStripMenuItem</value> + </data> + <data name=">>enableAutofireToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>useXYOnClassicControllerAsAutofireABToolStripMenuItem.Name" xml:space="preserve"> + <value>useXYOnClassicControllerAsAutofireABToolStripMenuItem</value> + </data> + <data name=">>useXYOnClassicControllerAsAutofireABToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>upABStartOnSecondControllerToolStripMenuItem.Name" xml:space="preserve"> + <value>upABStartOnSecondControllerToolStripMenuItem</value> + </data> + <data name=">>upABStartOnSecondControllerToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>useExtendedFontToolStripMenuItem.Name" xml:space="preserve"> + <value>useExtendedFontToolStripMenuItem</value> + </data> + <data name=">>useExtendedFontToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>epilepsyProtectionToolStripMenuItem.Name" xml:space="preserve"> + <value>epilepsyProtectionToolStripMenuItem</value> + </data> + <data name=">>epilepsyProtectionToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>compressGamesIfPossibleToolStripMenuItem.Name" xml:space="preserve"> + <value>compressGamesIfPossibleToolStripMenuItem</value> + </data> + <data name=">>compressGamesIfPossibleToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>pagesfoldersTypeToolStripMenuItem.Name" xml:space="preserve"> + <value>pagesfoldersTypeToolStripMenuItem</value> + </data> + <data name=">>pagesfoldersTypeToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>disablePagefoldersToolStripMenuItem.Name" xml:space="preserve"> + <value>disablePagefoldersToolStripMenuItem</value> + </data> + <data name=">>disablePagefoldersToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem3.Name" xml:space="preserve"> + <value>toolStripMenuItem3</value> + </data> + <data name=">>toolStripMenuItem3.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>automaticToolStripMenuItem.Name" xml:space="preserve"> + <value>automaticToolStripMenuItem</value> + </data> + <data name=">>automaticToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>automaticOriginalToolStripMenuItem.Name" xml:space="preserve"> + <value>automaticOriginalToolStripMenuItem</value> + </data> + <data name=">>automaticOriginalToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>pagesToolStripMenuItem.Name" xml:space="preserve"> + <value>pagesToolStripMenuItem</value> + </data> + <data name=">>pagesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>pagesOriginalToolStripMenuItem.Name" xml:space="preserve"> + <value>pagesOriginalToolStripMenuItem</value> + </data> + <data name=">>pagesOriginalToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>foldersToolStripMenuItem.Name" xml:space="preserve"> + <value>foldersToolStripMenuItem</value> + </data> + <data name=">>foldersToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>foldersOriginalToolStripMenuItem.Name" xml:space="preserve"> + <value>foldersOriginalToolStripMenuItem</value> + </data> + <data name=">>foldersOriginalToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>foldersSplitByFirstLetterToolStripMenuItem.Name" xml:space="preserve"> + <value>foldersSplitByFirstLetterToolStripMenuItem</value> + </data> + <data name=">>foldersSplitByFirstLetterToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>foldersSplitByFirstLetterOriginalToolStripMenuItem.Name" xml:space="preserve"> + <value>foldersSplitByFirstLetterOriginalToolStripMenuItem</value> + </data> + <data name=">>foldersSplitByFirstLetterOriginalToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>maximumGamesPerFolderToolStripMenuItem.Name" xml:space="preserve"> + <value>maximumGamesPerFolderToolStripMenuItem</value> + </data> + <data name=">>maximumGamesPerFolderToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max20toolStripMenuItem.Name" xml:space="preserve"> + <value>max20toolStripMenuItem</value> + </data> + <data name=">>max20toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max25toolStripMenuItem.Name" xml:space="preserve"> + <value>max25toolStripMenuItem</value> + </data> + <data name=">>max25toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max30toolStripMenuItem.Name" xml:space="preserve"> + <value>max30toolStripMenuItem</value> + </data> + <data name=">>max30toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max35toolStripMenuItem.Name" xml:space="preserve"> + <value>max35toolStripMenuItem</value> + </data> + <data name=">>max35toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max40toolStripMenuItem.Name" xml:space="preserve"> + <value>max40toolStripMenuItem</value> + </data> + <data name=">>max40toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max45toolStripMenuItem.Name" xml:space="preserve"> + <value>max45toolStripMenuItem</value> + </data> + <data name=">>max45toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max50toolStripMenuItem.Name" xml:space="preserve"> + <value>max50toolStripMenuItem</value> + </data> + <data name=">>max50toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max60toolStripMenuItem.Name" xml:space="preserve"> + <value>max60toolStripMenuItem</value> + </data> + <data name=">>max60toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max70toolStripMenuItem.Name" xml:space="preserve"> + <value>max70toolStripMenuItem</value> + </data> + <data name=">>max70toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max80toolStripMenuItem.Name" xml:space="preserve"> + <value>max80toolStripMenuItem</value> + </data> + <data name=">>max80toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max90toolStripMenuItem.Name" xml:space="preserve"> + <value>max90toolStripMenuItem</value> + </data> + <data name=">>max90toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>max100toolStripMenuItem.Name" xml:space="preserve"> + <value>max100toolStripMenuItem</value> + </data> + <data name=">>max100toolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem4.Name" xml:space="preserve"> + <value>toolStripMenuItem4</value> + </data> + <data name=">>toolStripMenuItem4.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>customToolStripMenuItem.Name" xml:space="preserve"> + <value>customToolStripMenuItem</value> + </data> + <data name=">>customToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Name" xml:space="preserve"> + <value>globalCommandLineArgumentsexpertsOnluToolStripMenuItem</value> + </data> + <data name=">>globalCommandLineArgumentsexpertsOnluToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem5.Name" xml:space="preserve"> + <value>toolStripMenuItem5</value> + </data> + <data name=">>toolStripMenuItem5.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Name" xml:space="preserve"> + <value>saveSettingsToNESMiniNowToolStripMenuItem</value> + </data> + <data name=">>saveSettingsToNESMiniNowToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolsToolStripMenuItem.Name" xml:space="preserve"> + <value>toolsToolStripMenuItem</value> + </data> + <data name=">>toolsToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>saveStateManagerToolStripMenuItem.Name" xml:space="preserve"> + <value>saveStateManagerToolStripMenuItem</value> + </data> + <data name=">>saveStateManagerToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem6.Name" xml:space="preserve"> + <value>toolStripMenuItem6</value> + </data> + <data name=">>toolStripMenuItem6.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>FTPToolStripMenuItem.Name" xml:space="preserve"> + <value>FTPToolStripMenuItem</value> + </data> + <data name=">>FTPToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>openFTPInExplorerToolStripMenuItem.Name" xml:space="preserve"> + <value>openFTPInExplorerToolStripMenuItem</value> + </data> + <data name=">>openFTPInExplorerToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem7.Name" xml:space="preserve"> + <value>toolStripMenuItem7</value> + </data> + <data name=">>toolStripMenuItem7.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>shellToolStripMenuItem.Name" xml:space="preserve"> + <value>shellToolStripMenuItem</value> + </data> + <data name=">>shellToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>openTelnetToolStripMenuItem.Name" xml:space="preserve"> + <value>openTelnetToolStripMenuItem</value> + </data> + <data name=">>openTelnetToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripMenuItem8.Name" xml:space="preserve"> + <value>toolStripMenuItem8</value> + </data> + <data name=">>toolStripMenuItem8.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>takeScreenshotToolStripMenuItem.Name" xml:space="preserve"> + <value>takeScreenshotToolStripMenuItem</value> + </data> + <data name=">>takeScreenshotToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>helpToolStripMenuItem.Name" xml:space="preserve"> + <value>helpToolStripMenuItem</value> + </data> + <data name=">>helpToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>gitHubPageWithActualReleasesToolStripMenuItem.Name" xml:space="preserve"> + <value>gitHubPageWithActualReleasesToolStripMenuItem</value> + </data> + <data name=">>gitHubPageWithActualReleasesToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>fAQToolStripMenuItem.Name" xml:space="preserve"> + <value>fAQToolStripMenuItem</value> + </data> + <data name=">>fAQToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>aboutToolStripMenuItem.Name" xml:space="preserve"> + <value>aboutToolStripMenuItem</value> + </data> + <data name=">>aboutToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripStatusConnectionIcon.Name" xml:space="preserve"> + <value>toolStripStatusConnectionIcon</value> + </data> + <data name=">>toolStripStatusConnectionIcon.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripStatusLabelSelected.Name" xml:space="preserve"> + <value>toolStripStatusLabelSelected</value> + </data> + <data name=">>toolStripStatusLabelSelected.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripStatusLabelSize.Name" xml:space="preserve"> + <value>toolStripStatusLabelSize</value> + </data> + <data name=">>toolStripStatusLabelSize.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripStatusLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>toolStripProgressBar.Name" xml:space="preserve"> + <value>toolStripProgressBar</value> + </data> + <data name=">>toolStripProgressBar.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripProgressBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>openFileDialogNes.Name" xml:space="preserve"> + <value>openFileDialogNes</value> + </data> + <data name=">>openFileDialogNes.Type" xml:space="preserve"> + <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>selectAllToolStripMenuItem.Name" xml:space="preserve"> + <value>selectAllToolStripMenuItem</value> + </data> + <data name=">>selectAllToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>unselectAllToolStripMenuItem.Name" xml:space="preserve"> + <value>unselectAllToolStripMenuItem</value> + </data> + <data name=">>unselectAllToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>deleteGameToolStripMenuItem.Name" xml:space="preserve"> + <value>deleteGameToolStripMenuItem</value> + </data> + <data name=">>deleteGameToolStripMenuItem.Type" xml:space="preserve"> + <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>openFileDialogImage.Name" xml:space="preserve"> + <value>openFileDialogImage</value> + </data> + <data name=">>openFileDialogImage.Type" xml:space="preserve"> + <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>timerCalculateGames.Name" xml:space="preserve"> + <value>timerCalculateGames</value> + </data> + <data name=">>timerCalculateGames.Type" xml:space="preserve"> + <value>System.Windows.Forms.Timer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>timerConnectionCheck.Name" xml:space="preserve"> + <value>timerConnectionCheck</value> + </data> + <data name=">>timerConnectionCheck.Type" xml:space="preserve"> + <value>System.Windows.Forms.Timer, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> + <data name=">>$this.Name" xml:space="preserve"> + <value>MainForm</value> + </data> + <data name=">>$this.Type" xml:space="preserve"> + <value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </data> </root>
\ No newline at end of file diff --git a/Manager/GameManager.cs b/Manager/GameManager.cs new file mode 100644 index 00000000..28183241 --- /dev/null +++ b/Manager/GameManager.cs @@ -0,0 +1,205 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Diagnostics; +using System.Windows.Forms; +using com.clusterrr.hakchi_gui.Properties; +namespace com.clusterrr.hakchi_gui.Manager +{ + public class GameManager + { + static NesDefaultGame[] defaultNesGames = new NesDefaultGame[] { + new NesDefaultGame { Code = "CLV-P-NAAAE", Name = "Super Mario Bros.", Size = 571031 }, + new NesDefaultGame { Code = "CLV-P-NAACE", Name = "Super Mario Bros. 3", Size = 1163285 }, + new NesDefaultGame { Code = "CLV-P-NAADE", Name = "Super Mario Bros. 2",Size = 1510337 }, + new NesDefaultGame { Code = "CLV-P-NAAEE", Name = "Donkey Kong", Size = 556016 }, + new NesDefaultGame { Code = "CLV-P-NAAFE", Name = "Donkey Kong Jr." , Size = 558176 }, + new NesDefaultGame { Code = "CLV-P-NAAHE", Name = "Excitebike", Size = 573231 }, + new NesDefaultGame { Code = "CLV-P-NAANE", Name = "The Legend of Zelda", Size = 663910 }, + new NesDefaultGame { Code = "CLV-P-NAAPE", Name = "Kirby's Adventure", Size = 1321661 }, + new NesDefaultGame { Code = "CLV-P-NAAQE", Name = "Metroid", Size = 662601 }, + new NesDefaultGame { Code = "CLV-P-NAARE", Name = "Balloon Fight", Size = 556131 }, + new NesDefaultGame { Code = "CLV-P-NAASE", Name = "Zelda II - The Adventure of Link", Size = 1024158 }, + new NesDefaultGame { Code = "CLV-P-NAATE", Name = "Punch-Out!! Featuring Mr. Dream", Size = 1038128 }, + new NesDefaultGame { Code = "CLV-P-NAAUE", Name = "Ice Climber", Size = 553436 }, + new NesDefaultGame { Code = "CLV-P-NAAVE", Name = "Kid Icarus", Size = 670710 }, + new NesDefaultGame { Code = "CLV-P-NAAWE", Name = "Mario Bros.", Size = 1018973 }, + new NesDefaultGame { Code = "CLV-P-NAAXE", Name = "Dr. MARIO", Size = 1089427 }, + new NesDefaultGame { Code = "CLV-P-NAAZE", Name = "StarTropics", Size = 1299361 }, + new NesDefaultGame { Code = "CLV-P-NABBE", Name = "MEGA MAN™ 2", Size = 569868 }, + new NesDefaultGame { Code = "CLV-P-NABCE", Name = "GHOSTS'N GOBLINS™", Size = 440971 }, + new NesDefaultGame { Code = "CLV-P-NABJE", Name = "FINAL FANTASY®", Size = 552556 }, + new NesDefaultGame { Code = "CLV-P-NABKE", Name = "BUBBLE BOBBLE" , Size = 474232 }, + new NesDefaultGame { Code = "CLV-P-NABME", Name = "PAC-MAN", Size = 325888 }, + new NesDefaultGame { Code = "CLV-P-NABNE", Name = "Galaga", Size = 347079 }, + new NesDefaultGame { Code = "CLV-P-NABQE", Name = "Castlevania", Size = 434240 }, + new NesDefaultGame { Code = "CLV-P-NABRE", Name = "GRADIUS", Size = 370790 }, + new NesDefaultGame { Code = "CLV-P-NABVE", Name = "Super C", Size = 565974 }, + new NesDefaultGame { Code = "CLV-P-NABXE", Name = "Castlevania II Simon's Quest", Size = 569759 }, + new NesDefaultGame { Code = "CLV-P-NACBE", Name = "NINJA GAIDEN", Size =573536 }, + new NesDefaultGame { Code = "CLV-P-NACDE", Name = "TECMO BOWL", Size =568276 }, + new NesDefaultGame { Code = "CLV-P-NACHE", Name = "DOUBLE DRAGON II: The Revenge", Size = 578900 } + }; + NesDefaultGame[] defaultFamicomGames = new NesDefaultGame[] { + new NesDefaultGame { Code = "CLV-P-HAAAJ", Name = "スーパーマリオブラザーズ", Size = 596775 }, + new NesDefaultGame { Code = "CLV-P-HAACJ", Name = "スーパーマリオブラザーズ3", Size = 1411534 }, + new NesDefaultGame { Code = "CLV-P-HAADJ", Name = "スーパーマリオUSA", Size = 1501542 }, + new NesDefaultGame { Code = "CLV-P-HAAEJ", Name = "ドンキーコング" , Size = 568006 }, + new NesDefaultGame { Code = "CLV-P-HAAHJ", Name = "エキサイトバイク" , Size = 597513 }, + new NesDefaultGame { Code = "CLV-P-HAAMJ", Name = "マリオオープンゴルフ" , Size = 798179 }, + new NesDefaultGame { Code = "CLV-P-HAANJ", Name = "ゼルダの伝説", Size = 677971 }, + new NesDefaultGame { Code = "CLV-P-HAAPJ", Name = "星のカービィ 夢の泉の物語" , Size = 1331436 }, + new NesDefaultGame { Code = "CLV-P-HAAQJ", Name = "メトロイド" , Size = 666895 }, + new NesDefaultGame { Code = "CLV-P-HAARJ", Name = "バルーンファイト" , Size = 569750 }, + new NesDefaultGame { Code = "CLV-P-HAASJ", Name = "リンクの冒険" , Size = 666452 }, + new NesDefaultGame { Code = "CLV-P-HAAUJ", Name = "アイスクライマー" , Size = 812372 }, + new NesDefaultGame { Code = "CLV-P-HAAWJ", Name = "マリオブラザーズ" , Size = 1038275 }, + new NesDefaultGame { Code = "CLV-P-HAAXJ", Name = "ドクターマリオ" , Size = 1083234 }, + new NesDefaultGame { Code = "CLV-P-HABBJ", Name = "ロックマン®2 Dr.ワイリーの謎" , Size = 592425 }, + new NesDefaultGame { Code = "CLV-P-HABCJ", Name = "魔界村®", Size = 456166 }, + new NesDefaultGame { Code = "CLV-P-HABLJ", Name = "ファイナルファンタジー®III" , Size = 830898 }, + new NesDefaultGame { Code = "CLV-P-HABMJ", Name = "パックマン" , Size = 341593 }, + new NesDefaultGame { Code = "CLV-P-HABNJ", Name = "ギャラガ", Size = 345552 }, + new NesDefaultGame { Code = "CLV-P-HABQJ", Name = "悪魔城ドラキュラ" , Size = 428522 }, + new NesDefaultGame { Code = "CLV-P-HABRJ", Name = "グラディウス", Size = 393055 }, + new NesDefaultGame { Code = "CLV-P-HABVJ", Name = "スーパー魂斗羅" , Size = 569537 }, + new NesDefaultGame { Code = "CLV-P-HACAJ", Name = "イー・アル・カンフー", Size = 336353 }, + new NesDefaultGame { Code = "CLV-P-HACBJ", Name = "忍者龍剣伝" , Size = 578623 }, + new NesDefaultGame { Code = "CLV-P-HACCJ", Name = "ソロモンの鍵" , Size = 387084 }, + new NesDefaultGame { Code = "CLV-P-HACEJ", Name = "つっぱり大相撲", Size = 392595 }, + new NesDefaultGame { Code = "CLV-P-HACHJ", Name = "ダブルドラゴンⅡ The Revenge", Size = 579757 }, + new NesDefaultGame { Code = "CLV-P-HACJJ", Name = "ダウンタウン熱血物語" , Size = 588367 }, + new NesDefaultGame { Code = "CLV-P-HACLJ", Name = "ダウンタウン熱血行進曲 それゆけ大運動会", Size = 587083 }, + new NesDefaultGame { Code = "CLV-P-HACPJ", Name = "アトランチスの謎", Size = 376213 } + }; + public static GameManager GetInstance() + { + if(instance == null) + { + instance = new GameManager(); + } + return instance; + } + private static GameManager instance; + private Dictionary<AppTypeCollection.AppInfo, List<NesMiniApplication>> systemClassifiedGames = new Dictionary<AppTypeCollection.AppInfo, List<NesMiniApplication>>(); + private List<NesMiniApplication> gameLibrary = new List<NesMiniApplication>(); + private GameManager() + { + LoadLibrary(); + } + public IOrderedEnumerable<NesMiniApplication> getAllGames() + { + return gameLibrary.OrderBy(o => o.Name); + } + public void SaveChanges() + { + var selected = new List<string>(); + foreach (var game in gameLibrary) + { + try + { + if(game.Selected) + { + selected.Add(game.Code); + } + // Maybe type was changed? Need to reload games + game.Save(); + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show( ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + + } + /*Rebuild selected config*/ + ConfigIni.SelectedGames = string.Join(";", selected.ToArray()); + ConfigIni.Save(); + + /*Why? If a game type has change its going to be reloaded...*/ + // LoadLibrary(); + } + public void ReloadDefault() + { + string[] selectedGames = ConfigIni.SelectedGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); + List<NesDefaultGame> toremove = new List<NesDefaultGame>(); + foreach (var game in gameLibrary) + { + if (game.GetType() == typeof(NesDefaultGame)) + { + toremove.Add((NesDefaultGame)game); + } + } + foreach (var tr in toremove) + { + gameLibrary.Remove(tr); + } + AppTypeCollection.AppInfo inf = AppTypeCollection.GetAppByClass(typeof(NesDefaultGame)); + if (systemClassifiedGames.ContainsKey(inf)) + { + systemClassifiedGames[inf].Clear(); + } + + foreach (var game in new List<NesDefaultGame>(ConfigIni.ConsoleType == 0 ? defaultNesGames : defaultFamicomGames).OrderBy(o => o.Name)) + { + game.Selected = selectedGames.Contains(game.Code); + + gameLibrary.Add(game); + + AppTypeCollection.AppInfo inf2 = AppTypeCollection.GetAppByClass(game.GetType()); + if (!systemClassifiedGames.ContainsKey(inf2)) + { + systemClassifiedGames[inf2] = new List<NesMiniApplication>(); + } + systemClassifiedGames[inf2].Add(game); + } + } + private void LoadLibrary() + { + + gameLibrary.Clear(); + ReloadDefault(); + string[] selectedGames = ConfigIni.SelectedGames.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); + if (!System.IO.Directory.Exists(NesMiniApplication.GamesDirectory)) + { + Directory.CreateDirectory(NesMiniApplication.GamesDirectory); + } + var gameDirs = Directory.GetDirectories(NesMiniApplication.GamesDirectory); + + foreach (var gameDir in gameDirs) + { + try + { + // Removing empty directories without errors + try + { + var game = NesMiniApplication.FromDirectory(gameDir); + game.Selected = selectedGames.Contains(game.Code); + + gameLibrary.Add(game); + + AppTypeCollection.AppInfo inf = AppTypeCollection.GetAppByClass(game.GetType()); + if(!systemClassifiedGames.ContainsKey(inf)) + { + systemClassifiedGames[inf] = new List<NesMiniApplication>(); + } + systemClassifiedGames[inf].Add(game); + } + catch (FileNotFoundException ex) // Remove bad directories if any + { + Debug.WriteLine(ex.Message + ex.StackTrace); + Directory.Delete(gameDir, true); + } + } + catch (Exception ex) + { + Debug.WriteLine(ex.Message + ex.StackTrace); + MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + continue; + } + } + } + } +} diff --git a/NesDefaultGame.cs b/NesDefaultGame.cs index b3ee8c04..4e736851 100644 --- a/NesDefaultGame.cs +++ b/NesDefaultGame.cs @@ -1,34 +1,37 @@ -
-namespace com.clusterrr.hakchi_gui
-{
- public class NesDefaultGame : INesMenuElement
- {
- private string code;
-
- public string Code
- {
- get { return code; }
- set { code = value; }
- }
- private string name;
-
- public string Name
- {
- get { return name; }
- set { name = value; }
- }
-
- public override string ToString()
- {
- return Name;
- }
-
- private int size;
-
- public int Size
- {
- get { return size; }
- set { size = value; }
- }
- }
-}
+ +namespace com.clusterrr.hakchi_gui +{ + public class NesDefaultGame : NesMiniApplication, INesMenuElement + { + //private string code; + + public new string Code + { + get { return code; } + set { code = value; } + } + //private string name; + + /* public string Name + { + get { return name; } + set { name = value; } + }*/ + public override bool Save() + { + return true; + } + public override string ToString() + { + return Name; + } + + private int size; + + public new int Size + { + get { return size; } + set { size = value; } + } + } +} diff --git a/hakchi_gui.csproj b/hakchi_gui.csproj index 9e69c85d..3f8c4f83 100644 --- a/hakchi_gui.csproj +++ b/hakchi_gui.csproj @@ -1,1683 +1,1693 @@ -<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProjectGuid>{F1F983FD-A54F-4881-8394-5A4BA65EFD6B}</ProjectGuid>
- <OutputType>WinExe</OutputType>
- <AppDesignerFolder>Properties</AppDesignerFolder>
- <RootNamespace>com.clusterrr.hakchi_gui</RootNamespace>
- <AssemblyName>hakchi</AssemblyName>
- <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
- <FileAlignment>512</FileAlignment>
- <NoStdLib>False</NoStdLib>
- <TreatWarningsAsErrors>False</TreatWarningsAsErrors>
- <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
- <IsWebBootstrapper>true</IsWebBootstrapper>
- <PublishUrl>ftp://clusterrr.com/www/www/soft/hakchi2/</PublishUrl>
- <Install>true</Install>
- <InstallFrom>Web</InstallFrom>
- <UpdateEnabled>true</UpdateEnabled>
- <UpdateMode>Background</UpdateMode>
- <UpdateInterval>7</UpdateInterval>
- <UpdateIntervalUnits>Days</UpdateIntervalUnits>
- <UpdatePeriodically>false</UpdatePeriodically>
- <UpdateRequired>false</UpdateRequired>
- <MapFileExtensions>false</MapFileExtensions>
- <InstallUrl>http://clusterrr.com/soft/hakchi2/</InstallUrl>
- <SupportUrl>http://clusterrr.com</SupportUrl>
- <ProductName>hakchi2</ProductName>
- <PublisherName>Alexey %27Cluster%27 Avdyukhin</PublisherName>
- <CreateWebPageOnPublish>true</CreateWebPageOnPublish>
- <WebPage>index.html</WebPage>
- <ApplicationRevision>14</ApplicationRevision>
- <ApplicationVersion>2.0.17.14</ApplicationVersion>
- <UseApplicationTrust>false</UseApplicationTrust>
- <CreateDesktopShortcut>true</CreateDesktopShortcut>
- <PublishWizardCompleted>true</PublishWizardCompleted>
- <BootstrapperEnabled>true</BootstrapperEnabled>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <DebugSymbols>true</DebugSymbols>
- <DebugType>Full</DebugType>
- <Optimize>False</Optimize>
- <OutputPath>bin\Debug\</OutputPath>
- <DefineConstants>TRACE;DEBUG;LIBUSBDOTNET WINDOWS_TESTING</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <DebugType>none</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>bin\Release\</OutputPath>
- <DefineConstants>TRACE;LIBUSBDOTNET WINDOWS_TESTING</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
- </PropertyGroup>
- <PropertyGroup>
- <ApplicationIcon>icon.ico</ApplicationIcon>
- </PropertyGroup>
- <PropertyGroup />
- <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
- <CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
- <BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
- <BaseAddress>4194304</BaseAddress>
- <RegisterForComInterop>False</RegisterForComInterop>
- <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
- </PropertyGroup>
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup>
- <TargetZone>LocalIntranet</TargetZone>
- </PropertyGroup>
- <PropertyGroup>
- <GenerateManifests>true</GenerateManifests>
- </PropertyGroup>
- <PropertyGroup>
- <SignManifests>true</SignManifests>
- </PropertyGroup>
- <PropertyGroup>
- <ManifestCertificateThumbprint>1D05715BF83320949FC1BAC8462308051A0C0F04</ManifestCertificateThumbprint>
- </PropertyGroup>
- <PropertyGroup>
- <ManifestKeyFile>cluster_cert.pfx</ManifestKeyFile>
- </PropertyGroup>
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup />
- <PropertyGroup>
- <NoWin32Manifest>true</NoWin32Manifest>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.Core" />
- <Reference Include="System.Management" />
- <Reference Include="System.Web" />
- <Reference Include="System.Xml.Linq" />
- <Reference Include="System.Data.DataSetExtensions" />
- <Reference Include="System.Data" />
- <Reference Include="System.Deployment" />
- <Reference Include="System.Drawing" />
- <Reference Include="System.Windows.Forms" />
- <Reference Include="System.Xml" />
- </ItemGroup>
- <ItemGroup>
- <Compile Include="AboutBox.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="AboutBox.Designer.cs">
- <DependentUpon>AboutBox.cs</DependentUpon>
- </Compile>
- <Compile Include="Apps\AppTypeCollection.cs" />
- <Compile Include="Apps\ArcadeGame.cs" />
- <Compile Include="Apps\Atari2600Game.cs" />
- <Compile Include="Apps\Sega32XGame.cs" />
- <Compile Include="Apps\GenesisGame.cs" />
- <Compile Include="Apps\PceGame.cs" />
- <Compile Include="Apps\GbaGame.cs" />
- <Compile Include="Apps\GbcGame.cs" />
- <Compile Include="Apps\GbGame.cs" />
- <Compile Include="Apps\N64Game.cs" />
- <Compile Include="Apps\GameGearGame.cs" />
- <Compile Include="Apps\SmsGame.cs" />
- <Compile Include="Apps\SnesGame.cs" />
- <Compile Include="Apps\NesUGame.cs" />
- <Compile Include="Clovershell\ClovershellConnection.cs" />
- <Compile Include="Clovershell\ClovershellException.cs" />
- <Compile Include="Clovershell\ExecConnection.cs" />
- <Compile Include="Clovershell\ShellConnection.cs" />
- <Compile Include="ConfigIni.cs" />
- <Compile Include="FileBrowserForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="FileBrowserForm.Designer.cs">
- <DependentUpon>FileBrowserForm.cs</DependentUpon>
- </Compile>
- <Compile Include="FtpServer\NesMiniFileSystemHandler.cs" />
- <Compile Include="FtpServer\NesMiniAuthHandler.cs" />
- <Compile Include="FtpServer\DebugLogHandler.cs" />
- <Compile Include="FtpServer\FileSystemHelper.cs" />
- <Compile Include="FtpServer\IAuthHandler.cs" />
- <Compile Include="FtpServer\IFileSystemHandler.cs" />
- <Compile Include="FtpServer\ILogHandler.cs" />
- <Compile Include="FtpServer\Server.cs" />
- <Compile Include="FtpServer\Session.cs" />
- <Compile Include="GameGenieCodeAddModForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="GameGenieCodeAddModForm.designer.cs">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </Compile>
- <Compile Include="GameGenieCodeForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="GameGenieCodeForm.designer.cs">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </Compile>
- <Compile Include="GameGenieDataBase.cs" />
- <Compile Include="ImagesForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ImagesForm.Designer.cs">
- <DependentUpon>ImagesForm.cs</DependentUpon>
- </Compile>
- <Compile Include="LibWinUsb\Descriptors\ClassCodeType.cs" />
- <Compile Include="LibWinUsb\Descriptors\DescriptorType.cs" />
- <Compile Include="LibWinUsb\Descriptors\LangStringDescriptor.cs" />
- <Compile Include="LibWinUsb\Descriptors\StringDescriptor.cs" />
- <Compile Include="LibWinUsb\Descriptors\UsbConfigDescriptor.cs" />
- <Compile Include="LibWinUsb\Descriptors\UsbDescriptor.cs" />
- <Compile Include="LibWinUsb\Descriptors\UsbDeviceDescriptor.cs" />
- <Compile Include="LibWinUsb\Descriptors\UsbEndpointDescriptor.cs" />
- <Compile Include="LibWinUsb\Descriptors\UsbInterfaceDescriptor.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\DeviceNotifier.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\DeviceNotifyEventArgs.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\DeviceType.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\EventType.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\IDeviceNotifier.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Info\IPortNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Info\IUsbDeviceNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Info\IVolumeNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Info\PortNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Info\UsbDeviceNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Info\VolumeNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastDeviceinterface.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastHdr.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastPort.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastVolume.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Internal\DevNotifyNativeWindow.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Internal\SafeNotifyHandle.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifier.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifier.DeviceListPolling.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifier.DevMonitor.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifierMode.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifyEventArgs.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDevItem.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDevItemList.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxUsbDeviceNotifyInfo.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\WindowsDeviceNotifier.cs" />
- <Compile Include="LibWinUsb\DeviceNotify\WindowsDeviceNotifyEventArgs.cs" />
- <Compile Include="LibWinUsb\Info\UsbBaseInfo.cs" />
- <Compile Include="LibWinUsb\Info\UsbConfigInfo.cs" />
- <Compile Include="LibWinUsb\Info\UsbDeviceInfo.cs" />
- <Compile Include="LibWinUsb\Info\UsbEndpointInfo.cs" />
- <Compile Include="LibWinUsb\Info\UsbInterfaceInfo.cs" />
- <Compile Include="LibWinUsb\Internal\Kernel32.cs" />
- <Compile Include="LibWinUsb\Internal\OverlappedTransferContext.cs" />
- <Compile Include="LibWinUsb\Internal\SafeOverlapped.cs" />
- <Compile Include="LibWinUsb\Internal\SetupApi.cs" />
- <Compile Include="LibWinUsb\Internal\TransferContextBase.cs" />
- <Compile Include="LibWinUsb\Internal\UsbApiBase.cs" />
- <Compile Include="LibWinUsb\Internal\UsbRegex\BaseRegSymbolicName.cs" />
- <Compile Include="LibWinUsb\Internal\UsbRegex\NamedGroup.cs" />
- <Compile Include="LibWinUsb\Internal\UsbRegex\RegHardwareID.cs" />
- <Compile Include="LibWinUsb\Internal\UsbRegex\RegSymbolicName.cs" />
- <Compile Include="LibWinUsb\IUsbDevice.cs" />
- <Compile Include="LibWinUsb\IUsbInterface.cs" />
- <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbAPI.cs" />
- <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbDriverIO.cs" />
- <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbDriverIO_IOControlMessage.cs" />
- <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbIoCtl.cs" />
- <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbRequest.cs" />
- <Compile Include="LibWinUsb\LibUsb\LibUsbDevice.cs" />
- <Compile Include="LibWinUsb\LibUsb\LibUsbDeviceRegistryKeyRequest.cs" />
- <Compile Include="LibWinUsb\LibUsb\LibUsbKernelType.cs" />
- <Compile Include="LibWinUsb\LibUsb\LibUsbRegistry.cs" />
- <Compile Include="LibWinUsb\Main\ControlEpLockType.cs" />
- <Compile Include="LibWinUsb\Main\DataEpLockType.cs" />
- <Compile Include="LibWinUsb\Main\DataReceivedEnabledChangedEventArgs.cs" />
- <Compile Include="LibWinUsb\Main\DeviceLockType.cs" />
- <Compile Include="LibWinUsb\Main\DevicePropertyType.cs" />
- <Compile Include="LibWinUsb\Main\EndpointDataEventArgs.cs" />
- <Compile Include="LibWinUsb\Main\EndpointType.cs" />
- <Compile Include="LibWinUsb\Main\ErrorCode.cs" />
- <Compile Include="LibWinUsb\Main\Helper.cs" />
- <Compile Include="LibWinUsb\Main\LegacyUsbRegistry.cs" />
- <Compile Include="LibWinUsb\Main\ReadEndpointID.cs" />
- <Compile Include="LibWinUsb\Main\SafeContextHandle.cs" />
- <Compile Include="LibWinUsb\Main\SetupApiRegistry.cs" />
- <Compile Include="LibWinUsb\Main\SPDRP.cs" />
- <Compile Include="LibWinUsb\Main\UsbConstants.cs" />
- <Compile Include="LibWinUsb\Main\UsbCtrlFlags.cs" />
- <Compile Include="LibWinUsb\Main\UsbDeviceFinder.cs" />
- <Compile Include="LibWinUsb\Main\UsbEndpointBase.cs" />
- <Compile Include="LibWinUsb\Main\UsbEndpointDirection.cs" />
- <Compile Include="LibWinUsb\Main\UsbEndpointList.cs" />
- <Compile Include="LibWinUsb\Main\UsbException.cs" />
- <Compile Include="LibWinUsb\Main\UsbKernelVersion.cs" />
- <Compile Include="LibWinUsb\Main\UsbLockStyle.cs" />
- <Compile Include="LibWinUsb\Main\UsbRegDeviceList.cs" />
- <Compile Include="LibWinUsb\Main\UsbRegistry.cs" />
- <Compile Include="LibWinUsb\Main\UsbRequestRecipient.cs" />
- <Compile Include="LibWinUsb\Main\UsbRequestType.cs" />
- <Compile Include="LibWinUsb\Main\UsbSetupPacket.cs" />
- <Compile Include="LibWinUsb\Main\UsbStandardRequest.cs" />
- <Compile Include="LibWinUsb\Main\UsbStatusClodes.cs" />
- <Compile Include="LibWinUsb\Main\UsbStream.cs" />
- <Compile Include="LibWinUsb\Main\UsbSymbolicName.cs" />
- <Compile Include="LibWinUsb\Main\UsbTransfer.cs" />
- <Compile Include="LibWinUsb\Main\WriteEndpointID.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\CallbackDelegates.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbAltInterfaceDescriptor.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbConfigDescriptor.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbDeviceDescriptor.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbEndpointDescriptor.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbInterface.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoLibUsbApi.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbDevice.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbDeviceHandle.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbEndpointReader.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbEndpointWriter.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbError.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbEventHandler.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbSessionHandle.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\AddRemoveEventArgs.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\AddRemoveType.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbConfigHandle.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfile.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileHandle.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileHandleEnumerator.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileList.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileListHandle.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Profile\PollfdItem.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\Internal\libusb_control_setup.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\Internal\libusb_iso_packet_descriptor.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\Internal\libusb_transfer.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbControlSetup.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbControlSetupHandle.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbIsoPacket.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTansferStatus.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTransfer.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTransferContext.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTransferFlags.cs" />
- <Compile Include="LibWinUsb\MonoLibUsb\UnixNativeTimeval.cs" />
- <Compile Include="LibWinUsb\UsbDevice.Common.cs" />
- <Compile Include="LibWinUsb\UsbDevice.cs" />
- <Compile Include="LibWinUsb\UsbDevice.Error.cs" />
- <Compile Include="LibWinUsb\UsbDevice.OS.Specific.cs" />
- <Compile Include="LibWinUsb\UsbEndpointReader.cs" />
- <Compile Include="LibWinUsb\UsbEndpointWriter.cs" />
- <Compile Include="LibWinUsb\UsbGlobals.cs" />
- <Compile Include="LibWinUsb\WinUsb\DeviceInformationTypes.cs" />
- <Compile Include="LibWinUsb\WinUsb\DeviceSpeedTypes.cs" />
- <Compile Include="LibWinUsb\WinUsb\Internal\SafeWinUsbInterfaceHandle.cs" />
- <Compile Include="LibWinUsb\WinUsb\Internal\WinUsbAPI.cs" />
- <Compile Include="LibWinUsb\WinUsb\PipeInformation.cs" />
- <Compile Include="LibWinUsb\WinUsb\PipePolicies.cs" />
- <Compile Include="LibWinUsb\WinUsb\PipePolicyType.cs" />
- <Compile Include="LibWinUsb\WinUsb\PowerPolicies.cs" />
- <Compile Include="LibWinUsb\WinUsb\PowerPolicyType.cs" />
- <Compile Include="LibWinUsb\WinUsb\WinUsbDevice.cs" />
- <Compile Include="LibWinUsb\WinUsb\WinUsbRegistry.cs" />
- <Compile Include="MessageBoxManager.cs" />
- <Compile Include="Properties\Resources.Designer.cs" />
- <Compile Include="SaveStateManager.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="SaveStateManager.Designer.cs">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </Compile>
- <Compile Include="SelectModsForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="SelectModsForm.Designer.cs">
- <DependentUpon>SelectModsForm.cs</DependentUpon>
- </Compile>
- <Compile Include="NesDefaultGame.cs" />
- <Compile Include="FelLib\AWFELMessage.cs" />
- <Compile Include="FelLib\AWFELStandardRequest.cs" />
- <Compile Include="FelLib\AWFELStatusResponse.cs" />
- <Compile Include="FelLib\AWFELVerifyDeviceResponse.cs" />
- <Compile Include="FelLib\AWUSBRequest.cs" />
- <Compile Include="FelLib\AWUSBResponse.cs" />
- <Compile Include="FelLib\Fel.cs" />
- <Compile Include="FelLib\FelException.cs" />
- <Compile Include="FelLib\FelParseException.cs" />
- <Compile Include="GameGeniePatcher.cs" />
- <Compile Include="ImageGooglerForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ImageGooglerForm.Designer.cs">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </Compile>
- <Compile Include="INesMenuElement.cs" />
- <Compile Include="IpsPatcher.cs" />
- <Compile Include="MainForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="MainForm.Designer.cs">
- <DependentUpon>MainForm.cs</DependentUpon>
- </Compile>
- <Compile Include="Apps\FdsGame.cs" />
- <Compile Include="NesMenuCollection.cs" />
- <Compile Include="NesMenuFolder.cs" />
- <Compile Include="NesFile.cs" />
- <Compile Include="Apps\NesGame.cs" />
- <Compile Include="Apps\NesMiniApplication.cs" />
- <Compile Include="Program.cs" />
- <Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="SearchForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="SearchForm.Designer.cs">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </Compile>
- <Compile Include="SelectButtonsForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="SelectButtonsForm.Designer.cs">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </Compile>
- <Compile Include="SelectIconForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="SelectIconForm.Designer.cs">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </Compile>
- <Compile Include="SelectFileForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="SelectFileForm.Designer.cs">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </Compile>
- <Compile Include="SevenZip\ArchiveEmulationStreamProxy.cs" />
- <Compile Include="SevenZip\ArchiveExtractCallback.cs" />
- <Compile Include="SevenZip\ArchiveOpenCallback.cs" />
- <Compile Include="SevenZip\ArchiveUpdateCallback.cs" />
- <Compile Include="SevenZip\COM.cs" />
- <Compile Include="SevenZip\Common.cs" />
- <Compile Include="SevenZip\EventArgs.cs" />
- <Compile Include="SevenZip\Exceptions.cs" />
- <Compile Include="SevenZip\FileSignatureChecker.cs" />
- <Compile Include="SevenZip\Formats.cs" />
- <Compile Include="SevenZip\LibraryFeature.cs" />
- <Compile Include="SevenZip\LibraryManager.cs" />
- <Compile Include="SevenZip\LzmaDecodeStream.cs" />
- <Compile Include="SevenZip\LzmaEncodeStream.cs" />
- <Compile Include="SevenZip\LzmaProgressCallback.cs" />
- <Compile Include="SevenZip\NativeMethods.cs" />
- <Compile Include="SevenZip\sdk\Common\CRC.cs" />
- <Compile Include="SevenZip\sdk\Common\InBuffer.cs" />
- <Compile Include="SevenZip\sdk\Common\OutBuffer.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZMA\LzmaBase.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZMA\LzmaDecoder.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZMA\LzmaEncoder.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZ\IMatchFinder.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZ\LzBinTree.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZ\LzInWindow.cs" />
- <Compile Include="SevenZip\sdk\Compress\LZ\LzOutWindow.cs" />
- <Compile Include="SevenZip\sdk\Compress\RangeCoder\RangeCoder.cs" />
- <Compile Include="SevenZip\sdk\Compress\RangeCoder\RangeCoderBit.cs" />
- <Compile Include="SevenZip\sdk\Compress\RangeCoder\RangeCoderBitTree.cs" />
- <Compile Include="SevenZip\sdk\ICoder.cs" />
- <Compile Include="SevenZip\SevenZipCompressor.cs" />
- <Compile Include="SevenZip\SevenZipCompressorAsynchronous.cs" />
- <Compile Include="SevenZip\SevenZipExtractor.cs" />
- <Compile Include="SevenZip\SevenZipExtractorAsynchronous.cs" />
- <Compile Include="SevenZip\SevenZipSfx.cs" />
- <Compile Include="SevenZip\StreamWrappers.cs" />
- <Compile Include="StringInputForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="StringInputForm.Designer.cs">
- <DependentUpon>StringInputForm.cs</DependentUpon>
- </Compile>
- <Compile Include="TarStream.cs" />
- <Compile Include="TaskbarProgress.cs" />
- <Compile Include="FoldersManagerForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="FoldersManagerForm.Designer.cs">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </Compile>
- <Compile Include="UnsupportedFourScreenException.cs" />
- <Compile Include="UnsupportedMapperException.cs" />
- <Compile Include="WaitingClovershellForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="WaitingClovershellForm.Designer.cs">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </Compile>
- <Compile Include="WaitingFelForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="WaitingFelForm.Designer.cs">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </Compile>
- <Compile Include="WorkerForm.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="WorkerForm.Designer.cs">
- <DependentUpon>WorkerForm.cs</DependentUpon>
- </Compile>
- <EmbeddedResource Include="AboutBox.resx">
- <DependentUpon>AboutBox.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FileBrowserForm.resx">
- <DependentUpon>FileBrowserForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.bg-BG.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.ca-ES.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.de-De.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.el-GR.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.es-AR.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.es-ES.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.fr-FR.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.it-IT.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.nl.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.pt-PT.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.sk-SK.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.sv-SE.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.bg-BG.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.ca-ES.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.de-DE.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.el-GR.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.es-AR.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.es-ES.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.fr-FR.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.it-IT.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.nl.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.pl-PL.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.pt-PT.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.ru-RU.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.sk-SK.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeAddModForm.sv-SE.resx">
- <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.bg-BG.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.ca-ES.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.de-DE.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.el-GR.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.es-AR.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.es-ES.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.fr-FR.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.it-IT.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.nl.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.pl-PL.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.pt-PT.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.ru-RU.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.sk-SK.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="GameGenieCodeForm.sv-SE.resx">
- <DependentUpon>GameGenieCodeForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.bg-BG.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.ca-ES.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.de-DE.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.el-GR.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.es-AR.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.es-ES.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.fr-FR.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.it-IT.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.nl.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.pl-PL.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.pt-PT.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.ru-RU.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.sk-SK.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImageGooglerForm.sv-SE.resx">
- <DependentUpon>ImageGooglerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ImagesForm.resx">
- <DependentUpon>ImagesForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.bg-BG.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.ca-ES.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.de-DE.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.el-GR.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.es-AR.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.es-ES.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.fr-FR.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.it-IT.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.nl.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.pl-PL.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.pt-PT.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.ru-RU.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.sk-SK.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="MainForm.sv-SE.resx">
- <DependentUpon>MainForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="Properties\Resources.bg-BG.resx" />
- <EmbeddedResource Include="Properties\Resources.ca-ES.resx" />
- <EmbeddedResource Include="Properties\Resources.de-DE.resx" />
- <EmbeddedResource Include="Properties\Resources.el-GR.resx" />
- <EmbeddedResource Include="Properties\Resources.es-AR.resx" />
- <EmbeddedResource Include="Properties\Resources.es-ES.resx" />
- <EmbeddedResource Include="Properties\Resources.fr-FR.resx" />
- <EmbeddedResource Include="Properties\Resources.it-IT.resx" />
- <EmbeddedResource Include="Properties\Resources.nl.resx" />
- <EmbeddedResource Include="Properties\Resources.pt-PT.resx" />
- <EmbeddedResource Include="Properties\Resources.ru-RU.resx">
- <SubType>Designer</SubType>
- <LastGenOutput>Resources.ru-RU.Designer.cs</LastGenOutput>
- </EmbeddedResource>
- <EmbeddedResource Include="Properties\Resources.sk-SK.resx" />
- <EmbeddedResource Include="Properties\Resources.sv-SE.resx" />
- <EmbeddedResource Include="SaveStateManager.bg-BG.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.ca-ES.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.de-DE.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.el-GR.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.es-AR.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.es-ES.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.fr-FR.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.it-IT.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.nl.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.pl-PL.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.pt-PT.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.ru-RU.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.sk-SK.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SaveStateManager.sv-SE.resx">
- <DependentUpon>SaveStateManager.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.bg-BG.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.ca-ES.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.de-DE.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.el-GR.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.es-AR.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.es-ES.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.fr-FR.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.it-IT.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.nl.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.pt-PT.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.sk-SK.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.sv-SE.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.bg-BG.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.ca-ES.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.de-DE.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.el-GR.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.es-AR.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.es-ES.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.fr-FR.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.it-IT.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.nl.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.pt-PT.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.sk-SK.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.sv-SE.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.bg-BG.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.ca-ES.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.de-DE.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.el-GR.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.es-AR.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.es-ES.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.fr-FR.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.it-IT.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.nl.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.pt-PT.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.sk-SK.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.sv-SE.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.bg-BG.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.ca-ES.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.de-DE.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.el-GR.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.es-AR.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.es-ES.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.fr-FR.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.it-IT.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.nl.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.pt-PT.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.sk-SK.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.sv-SE.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectModsForm.resx">
- <DependentUpon>SelectModsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="Properties\Resources.pl-PL.resx">
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Properties\Resources.resx">
- <SubType>Designer</SubType>
- <LastGenOutput>Resources1.Designer.cs</LastGenOutput>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.pl-PL.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SearchForm.ru-RU.resx">
- <DependentUpon>SearchForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.pl-PL.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectButtonsForm.ru-RU.resx">
- <DependentUpon>SelectButtonsForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.pl-PL.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.pl-PL.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectFileForm.ru-RU.resx">
- <DependentUpon>SelectFileForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="SelectIconForm.ru-RU.resx">
- <DependentUpon>SelectIconForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="StringInputForm.resx">
- <DependentUpon>StringInputForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.pl-PL.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="FoldersManagerForm.ru-RU.resx">
- <DependentUpon>FoldersManagerForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.bg-BG.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.ca-ES.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.de-DE.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.el-GR.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.es-AR.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.es-ES.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.fr-FR.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.it-IT.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.nl.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.pl-PL.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.pt-PT.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.ru-RU.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.sk-SK.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingClovershellForm.sv-SE.resx">
- <DependentUpon>WaitingClovershellForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.bg-BG.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.ca-ES.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.de-DE.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.el-GR.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.es-AR.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.es-ES.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.fr-FR.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.it-IT.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.nl.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.pl-PL.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.pt-PT.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.ru-RU.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.sk-SK.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WaitingFelForm.sv-SE.resx">
- <DependentUpon>WaitingFelForm.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="WorkerForm.resx">
- <DependentUpon>WorkerForm.cs</DependentUpon>
- </EmbeddedResource>
- <Content Include="art\README.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="data\fes1.bin">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="data\splash.gz">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="data\uboot.bin">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <EmbeddedResource Include="images\flags\ar.png" />
- <EmbeddedResource Include="images\flags\bg.png" />
- <EmbeddedResource Include="images\flags\de.png" />
- <EmbeddedResource Include="images\flags\es.png" />
- <EmbeddedResource Include="images\flags\fr.png" />
- <EmbeddedResource Include="images\flags\gr.png" />
- <EmbeddedResource Include="images\flags\it.png" />
- <EmbeddedResource Include="images\flags\nl.png" />
- <EmbeddedResource Include="images\flags\pl.png" />
- <EmbeddedResource Include="images\flags\pt.png" />
- <EmbeddedResource Include="images\flags\ru.png" />
- <EmbeddedResource Include="images\flags\se.png" />
- <EmbeddedResource Include="images\flags\sk.png" />
- <EmbeddedResource Include="images\flags\us.png" />
- <Content Include="LICENSE">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\hmods\clovercon.hmod">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\hmods\clovershell.hmod">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\hmods\copyleft.hmod">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\hmods\fontfix.hmod">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\bin\busybox">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\bin\rsync">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\config">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\init">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\bin\chmenu">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\bin\clover-kachikachi-wr">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\inittab">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\b0000_defines">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\b0010_functions">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p0000_config">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p7000_preinit">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p7070_firmware">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p7100_preinit">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\pa100_games">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\pffff_config">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\profile">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\backup">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\base">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\games">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\install">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\package">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\removed">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\hakchi\script\transfer">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_hakchi\sbin\init">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_uninstall\bin\busybox">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_uninstall\hakchi\init">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="mods\mod_uninstall\sbin\init">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\1dac6208-Snow Bros. %28U%29 [!] - NES Mini patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\279710dc-Battletoads %28U%29 [bugfix].ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\2caae01c-Felix the cat noDim hack %28for U [!] version%29.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\46fd7843-Splatter House - Wanpaku Graffiti %28J%29 [!] - MMC3 patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\4ec0fecc-Ufouria - The Saga %28E%29 [NTSC hack].ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\61179bfa-Jungle Book %28no dim%29 .ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\6dc28b5a-Bio Miracle Bokutte Upa - MMC5 patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\75b3eb37-Saiyuuki World 2 - MMC3 patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\8889c564-Immortal, The %28U%29 [!] %28bright hack%29.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\96087988-RoboCop 3 %28U%29 [!] - NES Mini patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\9ab274ae-Cheetahmen II - MMC1 patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\ac8dcdea-Cybernoid - The Fighting Machine %28U%29 [!] %28fix%29.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\ba51ac6f-Holy Diver %28J%29 - MMC1 patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\c4b6ed3c-Bill & Ted%27s Excellent Video Game Adventure %28U%29 - NES Mini patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\ca033b3a-Dragon%27s Lair %28U%29 [!] %28no dim%29.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\d054ffb0-Startropics II - Zoda%27s Revenge %28U%29 [!] - MMC3 patch.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="patches\f6898a59-James Bond Jr %28no dim%29.ips">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\music_hack.hmod\install">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\music_hack.hmod\pb223_music_hack">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\music_hack.hmod\uninstall">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\install">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\password.raw.gz">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\password_fail.raw.gz">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\password_ok.raw.gz">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\S810password">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\uninstall">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\remove_thumbnails.hmod\install">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\remove_thumbnails.hmod\uninstall">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <None Include="cluster_cert.pfx" />
- <None Include="Properties\app.manifest" />
- </ItemGroup>
- <ItemGroup>
- <Content Include="data\GameGenieDB.xml">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="data\nescarts.xml">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="driver\nesmini_driver.exe">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\2600.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\2600jr.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\2600_darth_vader.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\32x_genesis2.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\32x_megadrive2.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\32x_megadrive2_jp.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\arcade.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_number.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_a.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_b.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_c.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_d.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_e.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_f.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_g.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_h.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_i.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_j.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_k.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_l.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_m.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_n.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_o.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_p.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_q.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_r.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_s.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_2600.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_32x.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_arcade.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_famicom.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_fds.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_gb.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_gba.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_gbc.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_genesis.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_gg.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_n64.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_neogeo.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_nes.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_nes_org.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_pce.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_sms.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_snes_eu_jp.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_system_snes_usa.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_t.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_u.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_v.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_w.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_x.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_y.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\folder_z.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gamegear.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gba.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gbc_green.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gbc_purple.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gbc_red.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gbc_turquoise.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gbc_yellow.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_dmg.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_play_it_loud_black.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_play_it_loud_blue.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_play_it_loud_green.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_play_it_loud_red.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_play_it_loud_white.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\gb_play_it_loud_yellow.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\genesis2.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\megadrive2.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\megadrive2_jp.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\n64.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\neogeo.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\nes.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\pce.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\sms.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\snes_eu_jp.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\snes_usa.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <EmbeddedResource Include="images\2600_sm.png" />
- <EmbeddedResource Include="images\2600_sm_tr.png" />
- <EmbeddedResource Include="images\32x_sm.png" />
- <EmbeddedResource Include="images\32x_sm_tr.png" />
- <EmbeddedResource Include="images\app_sm.png" />
- <EmbeddedResource Include="images\app_sm_tr.png" />
- <EmbeddedResource Include="images\arcade_sm.png" />
- <EmbeddedResource Include="images\arcade_sm_tr.png" />
- <EmbeddedResource Include="images\blank_2600.png" />
- <EmbeddedResource Include="images\blank_32x.png" />
- <EmbeddedResource Include="images\blank_app.png" />
- <EmbeddedResource Include="images\blank_arcade.png" />
- <EmbeddedResource Include="images\blank_gb.png" />
- <EmbeddedResource Include="images\blank_gba.png" />
- <EmbeddedResource Include="images\blank_gbc.png" />
- <EmbeddedResource Include="images\blank_genesis.png" />
- <EmbeddedResource Include="images\blank_gg.png" />
- <EmbeddedResource Include="images\blank_n64.png" />
- <EmbeddedResource Include="images\blank_neogeo.png" />
- <EmbeddedResource Include="images\blank_nes.png" />
- <EmbeddedResource Include="images\blank_pce.png" />
- <EmbeddedResource Include="images\blank_sms.png" />
- <EmbeddedResource Include="images\blank_snes-eu-jp.png" />
- <EmbeddedResource Include="images\blank_snes-us.png" />
- <EmbeddedResource Include="images\gba_sm.png" />
- <EmbeddedResource Include="images\gba_sm_tr.png" />
- <EmbeddedResource Include="images\gbc_sm.png" />
- <EmbeddedResource Include="images\gbc_sm_tr.png" />
- <EmbeddedResource Include="images\gb_sm.png" />
- <EmbeddedResource Include="images\gb_sm_tr.png" />
- <EmbeddedResource Include="images\genesis_sm.png" />
- <EmbeddedResource Include="images\genesis_sm_tr.png" />
- <EmbeddedResource Include="images\gg_sm.png" />
- <EmbeddedResource Include="images\gg_sm_tr.png" />
- <EmbeddedResource Include="images\green.png" />
- <EmbeddedResource Include="images\n64_sm.png" />
- <EmbeddedResource Include="images\n64_sm_tr.png" />
- <EmbeddedResource Include="images\neogeo_sm.png" />
- <EmbeddedResource Include="images\neogeo_sm_tr.png" />
- <EmbeddedResource Include="images\nes_sm_tr.png" />
- <EmbeddedResource Include="images\famicom_sm.png" />
- <EmbeddedResource Include="images\famicom_sm_tr.png" />
- <EmbeddedResource Include="images\fds_sm.png" />
- <EmbeddedResource Include="images\fds_sm_tr.png" />
- <EmbeddedResource Include="images\folder_sm_tr.png" />
- <EmbeddedResource Include="images\original_sm_tr.png" />
- <EmbeddedResource Include="images\pce_sm.png" />
- <EmbeddedResource Include="images\pce_sm_tr.png" />
- <EmbeddedResource Include="images\red.png" />
- <EmbeddedResource Include="images\sms_sm.png" />
- <EmbeddedResource Include="images\sms_sm_tr.png" />
- <EmbeddedResource Include="images\snes-eu-jp_sm.png" />
- <EmbeddedResource Include="images\snes-eu-jp_sm_tr.png" />
- <EmbeddedResource Include="images\snes-us_sm.png" />
- <EmbeddedResource Include="images\snes-us_sm_tr.png" />
- <Content Include="user_mods\music_hack.hmod\music.wav">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\music_hack.hmod\readme.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\password.hmod\readme.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\README.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="user_mods\remove_thumbnails.hmod\readme.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="folder_images\README.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <None Include="icon.ico" />
- <Content Include="folder_images\folder_back.png">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <EmbeddedResource Include="images\blank_fds.png" />
- <EmbeddedResource Include="images\blank_jp.png" />
- <EmbeddedResource Include="images\nes_sm.png" />
- <EmbeddedResource Include="images\folder_sm.png" />
- <EmbeddedResource Include="images\gamepad.png" />
- <EmbeddedResource Include="images\original_sm.png" />
- <Content Include="patches\README.txt">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\7z.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\7z64.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="SevenZip\gpl.txt" />
- <Content Include="SevenZip\lgpl.txt" />
- <Content Include="tools\cpio.exe">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\cyggcc_s-1.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\cygiconv-2.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\cygintl-8.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\cyglzo2-2.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\cygwin1.dll">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\lzop.exe">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\mkbootfs.exe">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\mkbootimg.exe">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- <Content Include="tools\unpackbootimg.exe">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
- </ItemGroup>
- <ItemGroup>
- <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
- <Visible>False</Visible>
- <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
- <Install>false</Install>
- </BootstrapperPackage>
- <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
- <Visible>False</Visible>
- <ProductName>.NET Framework 3.5 SP1</ProductName>
- <Install>true</Install>
- </BootstrapperPackage>
- <BootstrapperPackage Include="Microsoft.Windows.Installer.4.5">
- <Visible>False</Visible>
- <ProductName>Windows Installer 4.5</ProductName>
- <Install>true</Install>
- </BootstrapperPackage>
- </ItemGroup>
- <ItemGroup>
- <PublishFile Include="data\GameGenieDB.xml">
- <Visible>False</Visible>
- <Group>
- </Group>
- <TargetPath>
- </TargetPath>
- <PublishState>Include</PublishState>
- <IncludeHash>True</IncludeHash>
- <FileType>File</FileType>
- </PublishFile>
- <PublishFile Include="data\nescarts.xml">
- <Visible>False</Visible>
- <Group>
- </Group>
- <TargetPath>
- </TargetPath>
- <PublishState>Include</PublishState>
- <IncludeHash>True</IncludeHash>
- <FileType>File</FileType>
- </PublishFile>
- </ItemGroup>
- <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
- <PropertyGroup>
- <PreBuildEvent>
- </PreBuildEvent>
- </PropertyGroup>
- <PropertyGroup>
- <PostBuildEvent>if exist languages rd /S /Q languages
-md languages
-for /D %25%25i in (*.*) do if exist %25%25i\hakchi.resources.dll move /Y %25%25i languages\%25%25i
-rem del *.application
-rem del *.manifest</PostBuildEvent>
- </PropertyGroup>
- <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
- Other similar extension points exist, see Microsoft.Common.targets.
- <Target Name="BeforeBuild">
- </Target>
- <Target Name="AfterBuild">
- </Target>
- -->
+<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProjectGuid>{F1F983FD-A54F-4881-8394-5A4BA65EFD6B}</ProjectGuid> + <OutputType>WinExe</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>com.clusterrr.hakchi_gui</RootNamespace> + <AssemblyName>hakchi</AssemblyName> + <TargetFrameworkVersion>v3.5</TargetFrameworkVersion> + <FileAlignment>512</FileAlignment> + <NoStdLib>False</NoStdLib> + <TreatWarningsAsErrors>False</TreatWarningsAsErrors> + <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath> + <IsWebBootstrapper>true</IsWebBootstrapper> + <PublishUrl>ftp://clusterrr.com/www/www/soft/hakchi2/</PublishUrl> + <Install>true</Install> + <InstallFrom>Web</InstallFrom> + <UpdateEnabled>true</UpdateEnabled> + <UpdateMode>Background</UpdateMode> + <UpdateInterval>7</UpdateInterval> + <UpdateIntervalUnits>Days</UpdateIntervalUnits> + <UpdatePeriodically>false</UpdatePeriodically> + <UpdateRequired>false</UpdateRequired> + <MapFileExtensions>false</MapFileExtensions> + <InstallUrl>http://clusterrr.com/soft/hakchi2/</InstallUrl> + <SupportUrl>http://clusterrr.com</SupportUrl> + <ProductName>hakchi2</ProductName> + <PublisherName>Alexey %27Cluster%27 Avdyukhin</PublisherName> + <CreateWebPageOnPublish>true</CreateWebPageOnPublish> + <WebPage>index.html</WebPage> + <ApplicationRevision>14</ApplicationRevision> + <ApplicationVersion>2.0.17.14</ApplicationVersion> + <UseApplicationTrust>false</UseApplicationTrust> + <CreateDesktopShortcut>true</CreateDesktopShortcut> + <PublishWizardCompleted>true</PublishWizardCompleted> + <BootstrapperEnabled>true</BootstrapperEnabled> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <PlatformTarget>AnyCPU</PlatformTarget> + <DebugSymbols>true</DebugSymbols> + <DebugType>Full</DebugType> + <Optimize>False</Optimize> + <OutputPath>bin\Debug\</OutputPath> + <DefineConstants>TRACE;DEBUG;LIBUSBDOTNET WINDOWS_TESTING</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + <AllowUnsafeBlocks>True</AllowUnsafeBlocks> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <PlatformTarget>AnyCPU</PlatformTarget> + <DebugType>none</DebugType> + <Optimize>true</Optimize> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE;LIBUSBDOTNET WINDOWS_TESTING</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + <AllowUnsafeBlocks>true</AllowUnsafeBlocks> + </PropertyGroup> + <PropertyGroup> + <ApplicationIcon>icon.ico</ApplicationIcon> + </PropertyGroup> + <PropertyGroup /> + <PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> + <CheckForOverflowUnderflow>False</CheckForOverflowUnderflow> + <BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath> + </PropertyGroup> + <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' "> + <BaseAddress>4194304</BaseAddress> + <RegisterForComInterop>False</RegisterForComInterop> + <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies> + </PropertyGroup> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup> + <TargetZone>LocalIntranet</TargetZone> + </PropertyGroup> + <PropertyGroup> + <GenerateManifests>false</GenerateManifests> + </PropertyGroup> + <PropertyGroup> + <SignManifests>false</SignManifests> + </PropertyGroup> + <PropertyGroup> + <ManifestCertificateThumbprint>1D05715BF83320949FC1BAC8462308051A0C0F04</ManifestCertificateThumbprint> + </PropertyGroup> + <PropertyGroup> + <ManifestKeyFile>cluster_cert.pfx</ManifestKeyFile> + </PropertyGroup> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup /> + <PropertyGroup> + <NoWin32Manifest>true</NoWin32Manifest> + </PropertyGroup> + <ItemGroup> + <Reference Include="System" /> + <Reference Include="System.Core" /> + <Reference Include="System.Management" /> + <Reference Include="System.Web" /> + <Reference Include="System.Xml.Linq" /> + <Reference Include="System.Data.DataSetExtensions" /> + <Reference Include="System.Data" /> + <Reference Include="System.Deployment" /> + <Reference Include="System.Drawing" /> + <Reference Include="System.Windows.Forms" /> + <Reference Include="System.Xml" /> + </ItemGroup> + <ItemGroup> + <Compile Include="AboutBox.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="AboutBox.Designer.cs"> + <DependentUpon>AboutBox.cs</DependentUpon> + </Compile> + <Compile Include="Apps\AppTypeCollection.cs" /> + <Compile Include="Apps\ArcadeGame.cs" /> + <Compile Include="Apps\Atari2600Game.cs" /> + <Compile Include="Apps\Sega32XGame.cs" /> + <Compile Include="Apps\GenesisGame.cs" /> + <Compile Include="Apps\PceGame.cs" /> + <Compile Include="Apps\GbaGame.cs" /> + <Compile Include="Apps\GbcGame.cs" /> + <Compile Include="Apps\GbGame.cs" /> + <Compile Include="Apps\N64Game.cs" /> + <Compile Include="Apps\GameGearGame.cs" /> + <Compile Include="Apps\SmsGame.cs" /> + <Compile Include="Apps\SnesGame.cs" /> + <Compile Include="Apps\NesUGame.cs" /> + <Compile Include="Clovershell\ClovershellConnection.cs" /> + <Compile Include="Clovershell\ClovershellException.cs" /> + <Compile Include="Clovershell\ExecConnection.cs" /> + <Compile Include="Clovershell\ShellConnection.cs" /> + <Compile Include="ConfigIni.cs" /> + <Compile Include="FileBrowserForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="FileBrowserForm.Designer.cs"> + <DependentUpon>FileBrowserForm.cs</DependentUpon> + </Compile> + <Compile Include="FtpServer\NesMiniFileSystemHandler.cs" /> + <Compile Include="FtpServer\NesMiniAuthHandler.cs" /> + <Compile Include="FtpServer\DebugLogHandler.cs" /> + <Compile Include="FtpServer\FileSystemHelper.cs" /> + <Compile Include="FtpServer\IAuthHandler.cs" /> + <Compile Include="FtpServer\IFileSystemHandler.cs" /> + <Compile Include="FtpServer\ILogHandler.cs" /> + <Compile Include="FtpServer\Server.cs" /> + <Compile Include="FtpServer\Session.cs" /> + <Compile Include="GameGenieCodeAddModForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="GameGenieCodeAddModForm.designer.cs"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </Compile> + <Compile Include="GameGenieCodeForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="GameGenieCodeForm.designer.cs"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </Compile> + <Compile Include="GameGenieDataBase.cs" /> + <Compile Include="ImagesForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="ImagesForm.Designer.cs"> + <DependentUpon>ImagesForm.cs</DependentUpon> + </Compile> + <Compile Include="LibWinUsb\Descriptors\ClassCodeType.cs" /> + <Compile Include="LibWinUsb\Descriptors\DescriptorType.cs" /> + <Compile Include="LibWinUsb\Descriptors\LangStringDescriptor.cs" /> + <Compile Include="LibWinUsb\Descriptors\StringDescriptor.cs" /> + <Compile Include="LibWinUsb\Descriptors\UsbConfigDescriptor.cs" /> + <Compile Include="LibWinUsb\Descriptors\UsbDescriptor.cs" /> + <Compile Include="LibWinUsb\Descriptors\UsbDeviceDescriptor.cs" /> + <Compile Include="LibWinUsb\Descriptors\UsbEndpointDescriptor.cs" /> + <Compile Include="LibWinUsb\Descriptors\UsbInterfaceDescriptor.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\DeviceNotifier.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\DeviceNotifyEventArgs.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\DeviceType.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\EventType.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\IDeviceNotifier.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Info\IPortNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Info\IUsbDeviceNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Info\IVolumeNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Info\PortNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Info\UsbDeviceNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Info\VolumeNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastDeviceinterface.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastHdr.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastPort.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Internal\DevBroadcastVolume.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Internal\DevNotifyNativeWindow.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Internal\SafeNotifyHandle.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifier.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifier.DeviceListPolling.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifier.DevMonitor.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifierMode.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDeviceNotifyEventArgs.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDevItem.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxDevItemList.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\Linux\LinuxUsbDeviceNotifyInfo.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\WindowsDeviceNotifier.cs" /> + <Compile Include="LibWinUsb\DeviceNotify\WindowsDeviceNotifyEventArgs.cs" /> + <Compile Include="LibWinUsb\Info\UsbBaseInfo.cs" /> + <Compile Include="LibWinUsb\Info\UsbConfigInfo.cs" /> + <Compile Include="LibWinUsb\Info\UsbDeviceInfo.cs" /> + <Compile Include="LibWinUsb\Info\UsbEndpointInfo.cs" /> + <Compile Include="LibWinUsb\Info\UsbInterfaceInfo.cs" /> + <Compile Include="LibWinUsb\Internal\Kernel32.cs" /> + <Compile Include="LibWinUsb\Internal\OverlappedTransferContext.cs" /> + <Compile Include="LibWinUsb\Internal\SafeOverlapped.cs" /> + <Compile Include="LibWinUsb\Internal\SetupApi.cs" /> + <Compile Include="LibWinUsb\Internal\TransferContextBase.cs" /> + <Compile Include="LibWinUsb\Internal\UsbApiBase.cs" /> + <Compile Include="LibWinUsb\Internal\UsbRegex\BaseRegSymbolicName.cs" /> + <Compile Include="LibWinUsb\Internal\UsbRegex\NamedGroup.cs" /> + <Compile Include="LibWinUsb\Internal\UsbRegex\RegHardwareID.cs" /> + <Compile Include="LibWinUsb\Internal\UsbRegex\RegSymbolicName.cs" /> + <Compile Include="LibWinUsb\IUsbDevice.cs" /> + <Compile Include="LibWinUsb\IUsbInterface.cs" /> + <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbAPI.cs" /> + <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbDriverIO.cs" /> + <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbDriverIO_IOControlMessage.cs" /> + <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbIoCtl.cs" /> + <Compile Include="LibWinUsb\LibUsb\Internal\LibUsbRequest.cs" /> + <Compile Include="LibWinUsb\LibUsb\LibUsbDevice.cs" /> + <Compile Include="LibWinUsb\LibUsb\LibUsbDeviceRegistryKeyRequest.cs" /> + <Compile Include="LibWinUsb\LibUsb\LibUsbKernelType.cs" /> + <Compile Include="LibWinUsb\LibUsb\LibUsbRegistry.cs" /> + <Compile Include="LibWinUsb\Main\ControlEpLockType.cs" /> + <Compile Include="LibWinUsb\Main\DataEpLockType.cs" /> + <Compile Include="LibWinUsb\Main\DataReceivedEnabledChangedEventArgs.cs" /> + <Compile Include="LibWinUsb\Main\DeviceLockType.cs" /> + <Compile Include="LibWinUsb\Main\DevicePropertyType.cs" /> + <Compile Include="LibWinUsb\Main\EndpointDataEventArgs.cs" /> + <Compile Include="LibWinUsb\Main\EndpointType.cs" /> + <Compile Include="LibWinUsb\Main\ErrorCode.cs" /> + <Compile Include="LibWinUsb\Main\Helper.cs" /> + <Compile Include="LibWinUsb\Main\LegacyUsbRegistry.cs" /> + <Compile Include="LibWinUsb\Main\ReadEndpointID.cs" /> + <Compile Include="LibWinUsb\Main\SafeContextHandle.cs" /> + <Compile Include="LibWinUsb\Main\SetupApiRegistry.cs" /> + <Compile Include="LibWinUsb\Main\SPDRP.cs" /> + <Compile Include="LibWinUsb\Main\UsbConstants.cs" /> + <Compile Include="LibWinUsb\Main\UsbCtrlFlags.cs" /> + <Compile Include="LibWinUsb\Main\UsbDeviceFinder.cs" /> + <Compile Include="LibWinUsb\Main\UsbEndpointBase.cs" /> + <Compile Include="LibWinUsb\Main\UsbEndpointDirection.cs" /> + <Compile Include="LibWinUsb\Main\UsbEndpointList.cs" /> + <Compile Include="LibWinUsb\Main\UsbException.cs" /> + <Compile Include="LibWinUsb\Main\UsbKernelVersion.cs" /> + <Compile Include="LibWinUsb\Main\UsbLockStyle.cs" /> + <Compile Include="LibWinUsb\Main\UsbRegDeviceList.cs" /> + <Compile Include="LibWinUsb\Main\UsbRegistry.cs" /> + <Compile Include="LibWinUsb\Main\UsbRequestRecipient.cs" /> + <Compile Include="LibWinUsb\Main\UsbRequestType.cs" /> + <Compile Include="LibWinUsb\Main\UsbSetupPacket.cs" /> + <Compile Include="LibWinUsb\Main\UsbStandardRequest.cs" /> + <Compile Include="LibWinUsb\Main\UsbStatusClodes.cs" /> + <Compile Include="LibWinUsb\Main\UsbStream.cs" /> + <Compile Include="LibWinUsb\Main\UsbSymbolicName.cs" /> + <Compile Include="LibWinUsb\Main\UsbTransfer.cs" /> + <Compile Include="LibWinUsb\Main\WriteEndpointID.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\CallbackDelegates.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbAltInterfaceDescriptor.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbConfigDescriptor.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbDeviceDescriptor.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbEndpointDescriptor.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Descriptors\MonoUsbInterface.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoLibUsbApi.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbDevice.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbDeviceHandle.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbEndpointReader.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbEndpointWriter.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbError.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbEventHandler.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\MonoUsbSessionHandle.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\AddRemoveEventArgs.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\AddRemoveType.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbConfigHandle.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfile.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileHandle.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileHandleEnumerator.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileList.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\MonoUsbProfileListHandle.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Profile\PollfdItem.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\Internal\libusb_control_setup.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\Internal\libusb_iso_packet_descriptor.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\Internal\libusb_transfer.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbControlSetup.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbControlSetupHandle.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbIsoPacket.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTansferStatus.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTransfer.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTransferContext.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\Transfer\MonoUsbTransferFlags.cs" /> + <Compile Include="LibWinUsb\MonoLibUsb\UnixNativeTimeval.cs" /> + <Compile Include="LibWinUsb\UsbDevice.Common.cs" /> + <Compile Include="LibWinUsb\UsbDevice.cs" /> + <Compile Include="LibWinUsb\UsbDevice.Error.cs" /> + <Compile Include="LibWinUsb\UsbDevice.OS.Specific.cs" /> + <Compile Include="LibWinUsb\UsbEndpointReader.cs" /> + <Compile Include="LibWinUsb\UsbEndpointWriter.cs" /> + <Compile Include="LibWinUsb\UsbGlobals.cs" /> + <Compile Include="LibWinUsb\WinUsb\DeviceInformationTypes.cs" /> + <Compile Include="LibWinUsb\WinUsb\DeviceSpeedTypes.cs" /> + <Compile Include="LibWinUsb\WinUsb\Internal\SafeWinUsbInterfaceHandle.cs" /> + <Compile Include="LibWinUsb\WinUsb\Internal\WinUsbAPI.cs" /> + <Compile Include="LibWinUsb\WinUsb\PipeInformation.cs" /> + <Compile Include="LibWinUsb\WinUsb\PipePolicies.cs" /> + <Compile Include="LibWinUsb\WinUsb\PipePolicyType.cs" /> + <Compile Include="LibWinUsb\WinUsb\PowerPolicies.cs" /> + <Compile Include="LibWinUsb\WinUsb\PowerPolicyType.cs" /> + <Compile Include="LibWinUsb\WinUsb\WinUsbDevice.cs" /> + <Compile Include="LibWinUsb\WinUsb\WinUsbRegistry.cs" /> + <Compile Include="Manager\GameManager.cs" /> + <Compile Include="MessageBoxManager.cs" /> + <Compile Include="Properties\Resources.Designer.cs" /> + <Compile Include="SaveStateManager.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="SaveStateManager.Designer.cs"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </Compile> + <Compile Include="SelectModsForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="SelectModsForm.Designer.cs"> + <DependentUpon>SelectModsForm.cs</DependentUpon> + </Compile> + <Compile Include="NesDefaultGame.cs" /> + <Compile Include="FelLib\AWFELMessage.cs" /> + <Compile Include="FelLib\AWFELStandardRequest.cs" /> + <Compile Include="FelLib\AWFELStatusResponse.cs" /> + <Compile Include="FelLib\AWFELVerifyDeviceResponse.cs" /> + <Compile Include="FelLib\AWUSBRequest.cs" /> + <Compile Include="FelLib\AWUSBResponse.cs" /> + <Compile Include="FelLib\Fel.cs" /> + <Compile Include="FelLib\FelException.cs" /> + <Compile Include="FelLib\FelParseException.cs" /> + <Compile Include="GameGeniePatcher.cs" /> + <Compile Include="ImageGooglerForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="ImageGooglerForm.Designer.cs"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </Compile> + <Compile Include="INesMenuElement.cs" /> + <Compile Include="IpsPatcher.cs" /> + <Compile Include="MainForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="MainForm.Designer.cs"> + <DependentUpon>MainForm.cs</DependentUpon> + </Compile> + <Compile Include="Apps\FdsGame.cs" /> + <Compile Include="NesMenuCollection.cs" /> + <Compile Include="NesMenuFolder.cs" /> + <Compile Include="NesFile.cs" /> + <Compile Include="Apps\NesGame.cs" /> + <Compile Include="Apps\NesMiniApplication.cs" /> + <Compile Include="Program.cs" /> + <Compile Include="Properties\AssemblyInfo.cs" /> + <Compile Include="SearchForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="SearchForm.Designer.cs"> + <DependentUpon>SearchForm.cs</DependentUpon> + </Compile> + <Compile Include="SelectButtonsForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="SelectButtonsForm.Designer.cs"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </Compile> + <Compile Include="SelectIconForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="SelectIconForm.Designer.cs"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </Compile> + <Compile Include="SelectFileForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="SelectFileForm.Designer.cs"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </Compile> + <Compile Include="SevenZip\ArchiveEmulationStreamProxy.cs" /> + <Compile Include="SevenZip\ArchiveExtractCallback.cs" /> + <Compile Include="SevenZip\ArchiveOpenCallback.cs" /> + <Compile Include="SevenZip\ArchiveUpdateCallback.cs" /> + <Compile Include="SevenZip\COM.cs" /> + <Compile Include="SevenZip\Common.cs" /> + <Compile Include="SevenZip\EventArgs.cs" /> + <Compile Include="SevenZip\Exceptions.cs" /> + <Compile Include="SevenZip\FileSignatureChecker.cs" /> + <Compile Include="SevenZip\Formats.cs" /> + <Compile Include="SevenZip\LibraryFeature.cs" /> + <Compile Include="SevenZip\LibraryManager.cs" /> + <Compile Include="SevenZip\LzmaDecodeStream.cs" /> + <Compile Include="SevenZip\LzmaEncodeStream.cs" /> + <Compile Include="SevenZip\LzmaProgressCallback.cs" /> + <Compile Include="SevenZip\NativeMethods.cs" /> + <Compile Include="SevenZip\sdk\Common\CRC.cs" /> + <Compile Include="SevenZip\sdk\Common\InBuffer.cs" /> + <Compile Include="SevenZip\sdk\Common\OutBuffer.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZMA\LzmaBase.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZMA\LzmaDecoder.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZMA\LzmaEncoder.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZ\IMatchFinder.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZ\LzBinTree.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZ\LzInWindow.cs" /> + <Compile Include="SevenZip\sdk\Compress\LZ\LzOutWindow.cs" /> + <Compile Include="SevenZip\sdk\Compress\RangeCoder\RangeCoder.cs" /> + <Compile Include="SevenZip\sdk\Compress\RangeCoder\RangeCoderBit.cs" /> + <Compile Include="SevenZip\sdk\Compress\RangeCoder\RangeCoderBitTree.cs" /> + <Compile Include="SevenZip\sdk\ICoder.cs" /> + <Compile Include="SevenZip\SevenZipCompressor.cs" /> + <Compile Include="SevenZip\SevenZipCompressorAsynchronous.cs" /> + <Compile Include="SevenZip\SevenZipExtractor.cs" /> + <Compile Include="SevenZip\SevenZipExtractorAsynchronous.cs" /> + <Compile Include="SevenZip\SevenZipSfx.cs" /> + <Compile Include="SevenZip\StreamWrappers.cs" /> + <Compile Include="StringInputForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="StringInputForm.Designer.cs"> + <DependentUpon>StringInputForm.cs</DependentUpon> + </Compile> + <Compile Include="TarStream.cs" /> + <Compile Include="TaskbarProgress.cs" /> + <Compile Include="FoldersManagerForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="FoldersManagerForm.Designer.cs"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </Compile> + <Compile Include="UI\Components\GameSelecter.cs"> + <SubType>UserControl</SubType> + </Compile> + <Compile Include="UI\Components\GameSelecter.Designer.cs"> + <DependentUpon>GameSelecter.cs</DependentUpon> + </Compile> + <Compile Include="UnsupportedFourScreenException.cs" /> + <Compile Include="UnsupportedMapperException.cs" /> + <Compile Include="WaitingClovershellForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="WaitingClovershellForm.Designer.cs"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </Compile> + <Compile Include="WaitingFelForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="WaitingFelForm.Designer.cs"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </Compile> + <Compile Include="WorkerForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="WorkerForm.Designer.cs"> + <DependentUpon>WorkerForm.cs</DependentUpon> + </Compile> + <EmbeddedResource Include="AboutBox.resx"> + <DependentUpon>AboutBox.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FileBrowserForm.resx"> + <DependentUpon>FileBrowserForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.bg-BG.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.ca-ES.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.de-De.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.el-GR.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.es-AR.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.es-ES.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.fr-FR.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.it-IT.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.nl.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.pt-PT.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.sk-SK.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.sv-SE.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.bg-BG.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.ca-ES.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.de-DE.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.el-GR.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.es-AR.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.es-ES.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.fr-FR.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.it-IT.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.nl.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.pl-PL.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.pt-PT.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.ru-RU.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.sk-SK.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeAddModForm.sv-SE.resx"> + <DependentUpon>GameGenieCodeAddModForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.bg-BG.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.ca-ES.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.de-DE.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.el-GR.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.es-AR.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.es-ES.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.fr-FR.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.it-IT.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.nl.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.pl-PL.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.pt-PT.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.ru-RU.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.sk-SK.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="GameGenieCodeForm.sv-SE.resx"> + <DependentUpon>GameGenieCodeForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.bg-BG.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.ca-ES.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.de-DE.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.el-GR.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.es-AR.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.es-ES.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.fr-FR.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.it-IT.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.nl.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.pl-PL.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.pt-PT.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.ru-RU.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.sk-SK.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImageGooglerForm.sv-SE.resx"> + <DependentUpon>ImageGooglerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="ImagesForm.resx"> + <DependentUpon>ImagesForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.bg-BG.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.ca-ES.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.de-DE.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.el-GR.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.es-AR.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.es-ES.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.fr-FR.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.it-IT.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.nl.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.pl-PL.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.pt-PT.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + <SubType>Designer</SubType> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.ru-RU.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + <SubType>Designer</SubType> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.sk-SK.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="MainForm.sv-SE.resx"> + <DependentUpon>MainForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="Properties\Resources.bg-BG.resx" /> + <EmbeddedResource Include="Properties\Resources.ca-ES.resx" /> + <EmbeddedResource Include="Properties\Resources.de-DE.resx" /> + <EmbeddedResource Include="Properties\Resources.el-GR.resx" /> + <EmbeddedResource Include="Properties\Resources.es-AR.resx" /> + <EmbeddedResource Include="Properties\Resources.es-ES.resx" /> + <EmbeddedResource Include="Properties\Resources.fr-FR.resx" /> + <EmbeddedResource Include="Properties\Resources.it-IT.resx" /> + <EmbeddedResource Include="Properties\Resources.nl.resx" /> + <EmbeddedResource Include="Properties\Resources.pt-PT.resx" /> + <EmbeddedResource Include="Properties\Resources.ru-RU.resx"> + <SubType>Designer</SubType> + <LastGenOutput>Resources.ru-RU.Designer.cs</LastGenOutput> + </EmbeddedResource> + <EmbeddedResource Include="Properties\Resources.sk-SK.resx" /> + <EmbeddedResource Include="Properties\Resources.sv-SE.resx" /> + <EmbeddedResource Include="SaveStateManager.bg-BG.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.ca-ES.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.de-DE.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.el-GR.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.es-AR.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.es-ES.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.fr-FR.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.it-IT.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.nl.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.pl-PL.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.pt-PT.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.ru-RU.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.sk-SK.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SaveStateManager.sv-SE.resx"> + <DependentUpon>SaveStateManager.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.bg-BG.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.ca-ES.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.de-DE.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.el-GR.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.es-AR.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.es-ES.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.fr-FR.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.it-IT.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.nl.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.pt-PT.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.sk-SK.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.sv-SE.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.bg-BG.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.ca-ES.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.de-DE.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.el-GR.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.es-AR.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.es-ES.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.fr-FR.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.it-IT.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.nl.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.pt-PT.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.sk-SK.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.sv-SE.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.bg-BG.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.ca-ES.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.de-DE.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.el-GR.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.es-AR.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.es-ES.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.fr-FR.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.it-IT.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.nl.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.pt-PT.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.sk-SK.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.sv-SE.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.bg-BG.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.ca-ES.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.de-DE.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.el-GR.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.es-AR.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.es-ES.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.fr-FR.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.it-IT.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.nl.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.pt-PT.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.sk-SK.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.sv-SE.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectModsForm.resx"> + <DependentUpon>SelectModsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="Properties\Resources.pl-PL.resx"> + <SubType>Designer</SubType> + </EmbeddedResource> + <EmbeddedResource Include="Properties\Resources.resx"> + <SubType>Designer</SubType> + <LastGenOutput>Resources1.Designer.cs</LastGenOutput> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.pl-PL.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SearchForm.ru-RU.resx"> + <DependentUpon>SearchForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.pl-PL.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectButtonsForm.ru-RU.resx"> + <DependentUpon>SelectButtonsForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.pl-PL.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.pl-PL.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectFileForm.ru-RU.resx"> + <DependentUpon>SelectFileForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="SelectIconForm.ru-RU.resx"> + <DependentUpon>SelectIconForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="StringInputForm.resx"> + <DependentUpon>StringInputForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.pl-PL.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="FoldersManagerForm.ru-RU.resx"> + <DependentUpon>FoldersManagerForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="UI\Components\GameSelecter.resx"> + <DependentUpon>GameSelecter.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.bg-BG.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.ca-ES.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.de-DE.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.el-GR.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.es-AR.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.es-ES.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.fr-FR.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.it-IT.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.nl.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.pl-PL.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.pt-PT.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.ru-RU.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.sk-SK.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingClovershellForm.sv-SE.resx"> + <DependentUpon>WaitingClovershellForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.bg-BG.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.ca-ES.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.de-DE.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.el-GR.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.es-AR.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.es-ES.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.fr-FR.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.it-IT.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.nl.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.pl-PL.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.pt-PT.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.ru-RU.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.sk-SK.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WaitingFelForm.sv-SE.resx"> + <DependentUpon>WaitingFelForm.cs</DependentUpon> + </EmbeddedResource> + <EmbeddedResource Include="WorkerForm.resx"> + <DependentUpon>WorkerForm.cs</DependentUpon> + </EmbeddedResource> + <Content Include="art\README.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="data\fes1.bin"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="data\splash.gz"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="data\uboot.bin"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <EmbeddedResource Include="images\flags\ar.png" /> + <EmbeddedResource Include="images\flags\bg.png" /> + <EmbeddedResource Include="images\flags\de.png" /> + <EmbeddedResource Include="images\flags\es.png" /> + <EmbeddedResource Include="images\flags\fr.png" /> + <EmbeddedResource Include="images\flags\gr.png" /> + <EmbeddedResource Include="images\flags\it.png" /> + <EmbeddedResource Include="images\flags\nl.png" /> + <EmbeddedResource Include="images\flags\pl.png" /> + <EmbeddedResource Include="images\flags\pt.png" /> + <EmbeddedResource Include="images\flags\ru.png" /> + <EmbeddedResource Include="images\flags\se.png" /> + <EmbeddedResource Include="images\flags\sk.png" /> + <EmbeddedResource Include="images\flags\us.png" /> + <Content Include="LICENSE"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\hmods\clovercon.hmod"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\hmods\clovershell.hmod"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\hmods\copyleft.hmod"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\hmods\fontfix.hmod"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\bin\busybox"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\bin\rsync"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\config"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\init"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\bin\chmenu"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\bin\clover-kachikachi-wr"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\inittab"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\b0000_defines"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\b0010_functions"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p0000_config"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p7000_preinit"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p7070_firmware"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\p7100_preinit"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\pa100_games"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\preinit.d\pffff_config"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\rootfs\etc\profile"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\backup"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\base"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\games"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\install"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\package"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\removed"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\hakchi\script\transfer"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_hakchi\sbin\init"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_uninstall\bin\busybox"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_uninstall\hakchi\init"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="mods\mod_uninstall\sbin\init"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\1dac6208-Snow Bros. %28U%29 [!] - NES Mini patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\279710dc-Battletoads %28U%29 [bugfix].ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\2caae01c-Felix the cat noDim hack %28for U [!] version%29.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\46fd7843-Splatter House - Wanpaku Graffiti %28J%29 [!] - MMC3 patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\4ec0fecc-Ufouria - The Saga %28E%29 [NTSC hack].ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\61179bfa-Jungle Book %28no dim%29 .ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\6dc28b5a-Bio Miracle Bokutte Upa - MMC5 patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\75b3eb37-Saiyuuki World 2 - MMC3 patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\8889c564-Immortal, The %28U%29 [!] %28bright hack%29.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\96087988-RoboCop 3 %28U%29 [!] - NES Mini patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\9ab274ae-Cheetahmen II - MMC1 patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\ac8dcdea-Cybernoid - The Fighting Machine %28U%29 [!] %28fix%29.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\ba51ac6f-Holy Diver %28J%29 - MMC1 patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\c4b6ed3c-Bill & Ted%27s Excellent Video Game Adventure %28U%29 - NES Mini patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\ca033b3a-Dragon%27s Lair %28U%29 [!] %28no dim%29.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\d054ffb0-Startropics II - Zoda%27s Revenge %28U%29 [!] - MMC3 patch.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="patches\f6898a59-James Bond Jr %28no dim%29.ips"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\music_hack.hmod\install"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\music_hack.hmod\pb223_music_hack"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\music_hack.hmod\uninstall"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\install"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\password.raw.gz"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\password_fail.raw.gz"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\password_ok.raw.gz"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\S810password"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\uninstall"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\remove_thumbnails.hmod\install"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\remove_thumbnails.hmod\uninstall"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <None Include="cluster_cert.pfx" /> + <None Include="Properties\app.manifest" /> + </ItemGroup> + <ItemGroup> + <Content Include="data\GameGenieDB.xml"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="data\nescarts.xml"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="driver\nesmini_driver.exe"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\2600.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\2600jr.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\2600_darth_vader.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\32x_genesis2.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\32x_megadrive2.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\32x_megadrive2_jp.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\arcade.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_number.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_a.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_b.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_c.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_d.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_e.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_f.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_g.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_h.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_i.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_j.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_k.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_l.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_m.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_n.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_o.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_p.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_q.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_r.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_s.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_2600.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_32x.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_arcade.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_famicom.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_fds.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_gb.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_gba.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_gbc.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_genesis.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_gg.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_n64.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_neogeo.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_nes.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_nes_org.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_pce.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_sms.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_snes_eu_jp.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_system_snes_usa.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_t.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_u.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_v.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_w.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_x.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_y.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\folder_z.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gamegear.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gba.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gbc_green.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gbc_purple.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gbc_red.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gbc_turquoise.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gbc_yellow.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_dmg.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_play_it_loud_black.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_play_it_loud_blue.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_play_it_loud_green.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_play_it_loud_red.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_play_it_loud_white.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\gb_play_it_loud_yellow.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\genesis2.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\megadrive2.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\megadrive2_jp.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\n64.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\neogeo.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\nes.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\pce.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\sms.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\snes_eu_jp.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\snes_usa.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <EmbeddedResource Include="images\2600_sm.png" /> + <EmbeddedResource Include="images\2600_sm_tr.png" /> + <EmbeddedResource Include="images\32x_sm.png" /> + <EmbeddedResource Include="images\32x_sm_tr.png" /> + <EmbeddedResource Include="images\app_sm.png" /> + <EmbeddedResource Include="images\app_sm_tr.png" /> + <EmbeddedResource Include="images\arcade_sm.png" /> + <EmbeddedResource Include="images\arcade_sm_tr.png" /> + <EmbeddedResource Include="images\blank_2600.png" /> + <EmbeddedResource Include="images\blank_32x.png" /> + <EmbeddedResource Include="images\blank_app.png" /> + <EmbeddedResource Include="images\blank_arcade.png" /> + <EmbeddedResource Include="images\blank_gb.png" /> + <EmbeddedResource Include="images\blank_gba.png" /> + <EmbeddedResource Include="images\blank_gbc.png" /> + <EmbeddedResource Include="images\blank_genesis.png" /> + <EmbeddedResource Include="images\blank_gg.png" /> + <EmbeddedResource Include="images\blank_n64.png" /> + <EmbeddedResource Include="images\blank_neogeo.png" /> + <EmbeddedResource Include="images\blank_nes.png" /> + <EmbeddedResource Include="images\blank_pce.png" /> + <EmbeddedResource Include="images\blank_sms.png" /> + <EmbeddedResource Include="images\blank_snes-eu-jp.png" /> + <EmbeddedResource Include="images\blank_snes-us.png" /> + <EmbeddedResource Include="images\gba_sm.png" /> + <EmbeddedResource Include="images\gba_sm_tr.png" /> + <EmbeddedResource Include="images\gbc_sm.png" /> + <EmbeddedResource Include="images\gbc_sm_tr.png" /> + <EmbeddedResource Include="images\gb_sm.png" /> + <EmbeddedResource Include="images\gb_sm_tr.png" /> + <EmbeddedResource Include="images\genesis_sm.png" /> + <EmbeddedResource Include="images\genesis_sm_tr.png" /> + <EmbeddedResource Include="images\gg_sm.png" /> + <EmbeddedResource Include="images\gg_sm_tr.png" /> + <EmbeddedResource Include="images\green.png" /> + <EmbeddedResource Include="images\n64_sm.png" /> + <EmbeddedResource Include="images\n64_sm_tr.png" /> + <EmbeddedResource Include="images\neogeo_sm.png" /> + <EmbeddedResource Include="images\neogeo_sm_tr.png" /> + <EmbeddedResource Include="images\nes_sm_tr.png" /> + <EmbeddedResource Include="images\famicom_sm.png" /> + <EmbeddedResource Include="images\famicom_sm_tr.png" /> + <EmbeddedResource Include="images\fds_sm.png" /> + <EmbeddedResource Include="images\fds_sm_tr.png" /> + <EmbeddedResource Include="images\folder_sm_tr.png" /> + <EmbeddedResource Include="images\original_sm_tr.png" /> + <EmbeddedResource Include="images\pce_sm.png" /> + <EmbeddedResource Include="images\pce_sm_tr.png" /> + <EmbeddedResource Include="images\red.png" /> + <EmbeddedResource Include="images\sms_sm.png" /> + <EmbeddedResource Include="images\sms_sm_tr.png" /> + <EmbeddedResource Include="images\snes-eu-jp_sm.png" /> + <EmbeddedResource Include="images\snes-eu-jp_sm_tr.png" /> + <EmbeddedResource Include="images\snes-us_sm.png" /> + <EmbeddedResource Include="images\snes-us_sm_tr.png" /> + <Content Include="user_mods\music_hack.hmod\music.wav"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\music_hack.hmod\readme.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\password.hmod\readme.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\README.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="user_mods\remove_thumbnails.hmod\readme.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="folder_images\README.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <None Include="icon.ico" /> + <Content Include="folder_images\folder_back.png"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <EmbeddedResource Include="images\blank_fds.png" /> + <EmbeddedResource Include="images\blank_jp.png" /> + <EmbeddedResource Include="images\nes_sm.png" /> + <EmbeddedResource Include="images\folder_sm.png" /> + <EmbeddedResource Include="images\gamepad.png" /> + <EmbeddedResource Include="images\original_sm.png" /> + <Content Include="patches\README.txt"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\7z.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\7z64.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="SevenZip\gpl.txt" /> + <Content Include="SevenZip\lgpl.txt" /> + <Content Include="tools\cpio.exe"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\cyggcc_s-1.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\cygiconv-2.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\cygintl-8.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\cyglzo2-2.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\cygwin1.dll"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\lzop.exe"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\mkbootfs.exe"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\mkbootimg.exe"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + <Content Include="tools\unpackbootimg.exe"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + </Content> + </ItemGroup> + <ItemGroup> + <BootstrapperPackage Include="Microsoft.Net.Client.3.5"> + <Visible>False</Visible> + <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName> + <Install>false</Install> + </BootstrapperPackage> + <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1"> + <Visible>False</Visible> + <ProductName>.NET Framework 3.5 SP1</ProductName> + <Install>true</Install> + </BootstrapperPackage> + <BootstrapperPackage Include="Microsoft.Windows.Installer.4.5"> + <Visible>False</Visible> + <ProductName>Windows Installer 4.5</ProductName> + <Install>true</Install> + </BootstrapperPackage> + </ItemGroup> + <ItemGroup> + <PublishFile Include="data\GameGenieDB.xml"> + <Visible>False</Visible> + <PublishState>Include</PublishState> + <IncludeHash>True</IncludeHash> + <Group> + </Group> + <TargetPath> + </TargetPath> + <FileType>File</FileType> + </PublishFile> + <PublishFile Include="data\nescarts.xml"> + <Visible>False</Visible> + <PublishState>Include</PublishState> + <IncludeHash>True</IncludeHash> + <Group> + </Group> + <TargetPath> + </TargetPath> + <FileType>File</FileType> + </PublishFile> + </ItemGroup> + <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> + <PropertyGroup> + <PreBuildEvent> + </PreBuildEvent> + </PropertyGroup> + <PropertyGroup> + <PostBuildEvent>if exist languages rd /S /Q languages +md languages +for /D %25%25i in (*.*) do if exist %25%25i\hakchi.resources.dll move /Y %25%25i languages\%25%25i +rem del *.application +rem del *.manifest</PostBuildEvent> + </PropertyGroup> + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + Other similar extension points exist, see Microsoft.Common.targets. + <Target Name="BeforeBuild"> + </Target> + <Target Name="AfterBuild"> + </Target> + --> </Project>
\ No newline at end of file |