diff --git a/AssetStudioCLI/AssetStudioCLI.csproj b/AssetStudioCLI/AssetStudioCLI.csproj index 6e95efc..0f563e9 100644 --- a/AssetStudioCLI/AssetStudioCLI.csproj +++ b/AssetStudioCLI/AssetStudioCLI.csproj @@ -3,7 +3,8 @@ Exe net472;net6.0;net7.0 - AssetStudio Mod by VaDiM + AssetStudioMod by aelurum + AssetStudioModCLI 0.16.48.1 Copyright © Perfare; Copyright © aelurum 2023 AnyCPU diff --git a/AssetStudioGUI/AboutForm.Designer.cs b/AssetStudioGUI/AboutForm.Designer.cs new file mode 100644 index 0000000..c54f55a --- /dev/null +++ b/AssetStudioGUI/AboutForm.Designer.cs @@ -0,0 +1,504 @@ +namespace AssetStudioGUI +{ + partial class AboutForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutForm)); + this.tabControl1 = new System.Windows.Forms.TabControl(); + this.tabPage1 = new System.Windows.Forms.TabPage(); + this.panel1 = new System.Windows.Forms.Panel(); + this.label2 = new System.Windows.Forms.Label(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.label11 = new System.Windows.Forms.Label(); + this.label10 = new System.Windows.Forms.Label(); + this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); + this.label16 = new System.Windows.Forms.Label(); + this.label17 = new System.Windows.Forms.Label(); + this.gitPerfareLinkLabel = new System.Windows.Forms.LinkLabel(); + this.label18 = new System.Windows.Forms.Label(); + this.label19 = new System.Windows.Forms.Label(); + this.gitAelurumLinkLabel = new System.Windows.Forms.LinkLabel(); + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.label5 = new System.Windows.Forms.Label(); + this.productNamelabel = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.modVersionLabel = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.label8 = new System.Windows.Forms.Label(); + this.checkUpdatesLinkLabel = new System.Windows.Forms.LinkLabel(); + this.tabPage2 = new System.Windows.Forms.TabPage(); + this.licenseRichTextBox = new System.Windows.Forms.RichTextBox(); + this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.productTitleLabel = new System.Windows.Forms.Label(); + this.CloseButton = new System.Windows.Forms.Button(); + this.productVersionLabel = new System.Windows.Forms.Label(); + this.panel2 = new System.Windows.Forms.Panel(); + this.panel3 = new System.Windows.Forms.Panel(); + this.tabControl1.SuspendLayout(); + this.tabPage1.SuspendLayout(); + this.panel1.SuspendLayout(); + this.tableLayoutPanel2.SuspendLayout(); + this.tableLayoutPanel1.SuspendLayout(); + this.tabPage2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); + this.panel2.SuspendLayout(); + this.SuspendLayout(); + // + // tabControl1 + // + this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.tabControl1.Controls.Add(this.tabPage1); + this.tabControl1.Controls.Add(this.tabPage2); + this.tabControl1.Location = new System.Drawing.Point(8, 103); + this.tabControl1.Name = "tabControl1"; + this.tabControl1.SelectedIndex = 0; + this.tabControl1.Size = new System.Drawing.Size(370, 315); + this.tabControl1.TabIndex = 0; + // + // tabPage1 + // + this.tabPage1.BackColor = System.Drawing.Color.White; + this.tabPage1.Controls.Add(this.panel1); + this.tabPage1.Controls.Add(this.textBox2); + this.tabPage1.Controls.Add(this.label11); + this.tabPage1.Controls.Add(this.label10); + this.tabPage1.Controls.Add(this.tableLayoutPanel2); + this.tabPage1.Controls.Add(this.tableLayoutPanel1); + this.tabPage1.Location = new System.Drawing.Point(4, 22); + this.tabPage1.Name = "tabPage1"; + this.tabPage1.Padding = new System.Windows.Forms.Padding(3); + this.tabPage1.Size = new System.Drawing.Size(362, 289); + this.tabPage1.TabIndex = 0; + this.tabPage1.Text = "Info"; + // + // panel1 + // + this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.panel1.BackColor = System.Drawing.Color.White; + this.panel1.Controls.Add(this.label2); + this.panel1.Location = new System.Drawing.Point(9, 16); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(347, 46); + this.panel1.TabIndex = 21; + // + // label2 + // + this.label2.Dock = System.Windows.Forms.DockStyle.Fill; + this.label2.Location = new System.Drawing.Point(0, 0); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(347, 46); + this.label2.TabIndex = 0; + this.label2.Text = "AssetStudio is a tool for exploring, extracting, and exporting assets and asset b" + + "undles."; + this.label2.UseCompatibleTextRendering = true; + // + // textBox2 + // + this.textBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.textBox2.BackColor = System.Drawing.SystemColors.Window; + this.textBox2.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.textBox2.Cursor = System.Windows.Forms.Cursors.Default; + this.textBox2.Enabled = false; + this.textBox2.ForeColor = System.Drawing.SystemColors.GrayText; + this.textBox2.Location = new System.Drawing.Point(9, 232); + this.textBox2.Multiline = true; + this.textBox2.Name = "textBox2"; + this.textBox2.ReadOnly = true; + this.textBox2.Size = new System.Drawing.Size(347, 51); + this.textBox2.TabIndex = 20; + this.textBox2.TabStop = false; + this.textBox2.Text = "* Neither the repository, nor the tool, nor the author of the tool, nor the autho" + + "r of the modification is affiliated with, sponsored, or authorized by Unity Tech" + + "nologies or its affiliates."; + // + // label11 + // + this.label11.AutoSize = true; + this.label11.Location = new System.Drawing.Point(6, 150); + this.label11.Name = "label11"; + this.label11.Size = new System.Drawing.Size(43, 13); + this.label11.TabIndex = 17; + this.label11.Text = "Authors"; + // + // label10 + // + this.label10.AutoSize = true; + this.label10.Location = new System.Drawing.Point(8, 65); + this.label10.Name = "label10"; + this.label10.Size = new System.Drawing.Size(42, 13); + this.label10.TabIndex = 16; + this.label10.Text = "Version"; + // + // tableLayoutPanel2 + // + this.tableLayoutPanel2.BackColor = System.Drawing.Color.WhiteSmoke; + this.tableLayoutPanel2.ColumnCount = 3; + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 41.37931F)); + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 58.62069F)); + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 111F)); + this.tableLayoutPanel2.Controls.Add(this.label16, 0, 0); + this.tableLayoutPanel2.Controls.Add(this.label17, 1, 0); + this.tableLayoutPanel2.Controls.Add(this.gitPerfareLinkLabel, 2, 0); + this.tableLayoutPanel2.Controls.Add(this.label18, 0, 1); + this.tableLayoutPanel2.Controls.Add(this.label19, 1, 1); + this.tableLayoutPanel2.Controls.Add(this.gitAelurumLinkLabel, 2, 1); + this.tableLayoutPanel2.Location = new System.Drawing.Point(6, 165); + this.tableLayoutPanel2.Name = "tableLayoutPanel2"; + this.tableLayoutPanel2.Padding = new System.Windows.Forms.Padding(2); + this.tableLayoutPanel2.RowCount = 2; + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel2.Size = new System.Drawing.Size(350, 40); + this.tableLayoutPanel2.TabIndex = 15; + // + // label16 + // + this.label16.AutoSize = true; + this.label16.BackColor = System.Drawing.Color.Transparent; + this.label16.Location = new System.Drawing.Point(5, 2); + this.label16.Name = "label16"; + this.label16.Size = new System.Drawing.Size(78, 13); + this.label16.TabIndex = 9; + this.label16.Text = "Original author:"; + // + // label17 + // + this.label17.AutoSize = true; + this.label17.BackColor = System.Drawing.Color.Transparent; + this.label17.Location = new System.Drawing.Point(102, 2); + this.label17.Name = "label17"; + this.label17.Size = new System.Drawing.Size(110, 13); + this.label17.TabIndex = 10; + this.label17.Text = "Perfare (c) 2016-2022"; + // + // gitPerfareLinkLabel + // + this.gitPerfareLinkLabel.AutoSize = true; + this.gitPerfareLinkLabel.BackColor = System.Drawing.Color.Transparent; + this.gitPerfareLinkLabel.Location = new System.Drawing.Point(239, 2); + this.gitPerfareLinkLabel.Name = "gitPerfareLinkLabel"; + this.gitPerfareLinkLabel.Size = new System.Drawing.Size(67, 13); + this.gitPerfareLinkLabel.TabIndex = 11; + this.gitPerfareLinkLabel.TabStop = true; + this.gitPerfareLinkLabel.Text = "GitHub page"; + this.gitPerfareLinkLabel.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.gitPerfareLinkLabel_LinkClicked); + // + // label18 + // + this.label18.AutoSize = true; + this.label18.BackColor = System.Drawing.Color.Transparent; + this.label18.Location = new System.Drawing.Point(5, 20); + this.label18.Name = "label18"; + this.label18.Size = new System.Drawing.Size(76, 13); + this.label18.TabIndex = 12; + this.label18.Text = "Author of mod:"; + // + // label19 + // + this.label19.AutoSize = true; + this.label19.BackColor = System.Drawing.Color.Transparent; + this.label19.Location = new System.Drawing.Point(102, 20); + this.label19.Name = "label19"; + this.label19.Size = new System.Drawing.Size(113, 13); + this.label19.TabIndex = 13; + this.label19.Text = "aelurum (c) 2021-2023"; + // + // gitAelurumLinkLabel + // + this.gitAelurumLinkLabel.AutoSize = true; + this.gitAelurumLinkLabel.BackColor = System.Drawing.Color.Transparent; + this.gitAelurumLinkLabel.Location = new System.Drawing.Point(239, 20); + this.gitAelurumLinkLabel.Name = "gitAelurumLinkLabel"; + this.gitAelurumLinkLabel.Size = new System.Drawing.Size(67, 13); + this.gitAelurumLinkLabel.TabIndex = 14; + this.gitAelurumLinkLabel.TabStop = true; + this.gitAelurumLinkLabel.Text = "GitHub page"; + this.gitAelurumLinkLabel.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.gitAelurumLinkLabel_LinkClicked); + // + // tableLayoutPanel1 + // + this.tableLayoutPanel1.BackColor = System.Drawing.Color.WhiteSmoke; + this.tableLayoutPanel1.ColumnCount = 3; + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 41.37931F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 58.62069F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 111F)); + this.tableLayoutPanel1.Controls.Add(this.label5, 0, 0); + this.tableLayoutPanel1.Controls.Add(this.productNamelabel, 1, 0); + this.tableLayoutPanel1.Controls.Add(this.label7, 0, 1); + this.tableLayoutPanel1.Controls.Add(this.modVersionLabel, 1, 1); + this.tableLayoutPanel1.Controls.Add(this.label4, 0, 2); + this.tableLayoutPanel1.Controls.Add(this.label8, 1, 2); + this.tableLayoutPanel1.Controls.Add(this.checkUpdatesLinkLabel, 2, 1); + this.tableLayoutPanel1.Location = new System.Drawing.Point(6, 80); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + this.tableLayoutPanel1.Padding = new System.Windows.Forms.Padding(2); + this.tableLayoutPanel1.RowCount = 3; + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33334F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel1.Size = new System.Drawing.Size(350, 60); + this.tableLayoutPanel1.TabIndex = 5; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.BackColor = System.Drawing.Color.Transparent; + this.label5.Location = new System.Drawing.Point(5, 2); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(76, 13); + this.label5.TabIndex = 0; + this.label5.Text = "Product name:"; + // + // productNamelabel + // + this.productNamelabel.AutoSize = true; + this.productNamelabel.BackColor = System.Drawing.Color.Transparent; + this.productNamelabel.Location = new System.Drawing.Point(102, 2); + this.productNamelabel.Name = "productNamelabel"; + this.productNamelabel.Size = new System.Drawing.Size(103, 13); + this.productNamelabel.TabIndex = 1; + this.productNamelabel.Text = "AssetStudioModGUI"; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.BackColor = System.Drawing.Color.Transparent; + this.label7.Location = new System.Drawing.Point(5, 20); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(68, 13); + this.label7.TabIndex = 2; + this.label7.Text = "Mod version:"; + // + // modVersionLabel + // + this.modVersionLabel.AutoSize = true; + this.modVersionLabel.BackColor = System.Drawing.Color.Transparent; + this.modVersionLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.modVersionLabel.Location = new System.Drawing.Point(102, 20); + this.modVersionLabel.Name = "modVersionLabel"; + this.modVersionLabel.Size = new System.Drawing.Size(52, 13); + this.modVersionLabel.TabIndex = 3; + this.modVersionLabel.Text = "0.16.48.1"; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.BackColor = System.Drawing.Color.Transparent; + this.label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label4.Location = new System.Drawing.Point(5, 38); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(55, 13); + this.label4.TabIndex = 4; + this.label4.Text = "Based on:"; + // + // label8 + // + this.label8.AutoSize = true; + this.label8.BackColor = System.Drawing.Color.Transparent; + this.label8.Location = new System.Drawing.Point(102, 38); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(108, 13); + this.label8.TabIndex = 5; + this.label8.Text = "AssetStudio v0.16.47"; + // + // checkUpdatesLinkLabel + // + this.checkUpdatesLinkLabel.AutoSize = true; + this.checkUpdatesLinkLabel.BackColor = System.Drawing.Color.Transparent; + this.checkUpdatesLinkLabel.Location = new System.Drawing.Point(239, 20); + this.checkUpdatesLinkLabel.Name = "checkUpdatesLinkLabel"; + this.checkUpdatesLinkLabel.Size = new System.Drawing.Size(96, 13); + this.checkUpdatesLinkLabel.TabIndex = 6; + this.checkUpdatesLinkLabel.TabStop = true; + this.checkUpdatesLinkLabel.Text = "Check for Updates"; + this.checkUpdatesLinkLabel.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.checkUpdatesLinkLabel_LinkClicked); + // + // tabPage2 + // + this.tabPage2.Controls.Add(this.licenseRichTextBox); + this.tabPage2.Location = new System.Drawing.Point(4, 22); + this.tabPage2.Name = "tabPage2"; + this.tabPage2.Padding = new System.Windows.Forms.Padding(3); + this.tabPage2.Size = new System.Drawing.Size(362, 289); + this.tabPage2.TabIndex = 1; + this.tabPage2.Text = "License"; + this.tabPage2.UseVisualStyleBackColor = true; + // + // licenseRichTextBox + // + this.licenseRichTextBox.BackColor = System.Drawing.Color.White; + this.licenseRichTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.licenseRichTextBox.DetectUrls = false; + this.licenseRichTextBox.Dock = System.Windows.Forms.DockStyle.Fill; + this.licenseRichTextBox.Location = new System.Drawing.Point(3, 3); + this.licenseRichTextBox.Name = "licenseRichTextBox"; + this.licenseRichTextBox.ReadOnly = true; + this.licenseRichTextBox.Size = new System.Drawing.Size(356, 283); + this.licenseRichTextBox.TabIndex = 0; + this.licenseRichTextBox.Text = "MIT License"; + this.licenseRichTextBox.ZoomFactor = 1.1F; + // + // pictureBox1 + // + this.pictureBox1.BackColor = System.Drawing.Color.Transparent; + this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Top; + this.pictureBox1.Image = global::AssetStudioGUI.Properties.Resources.as_logo; + this.pictureBox1.Location = new System.Drawing.Point(0, 0); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(384, 50); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; + this.pictureBox1.TabIndex = 0; + this.pictureBox1.TabStop = false; + // + // productTitleLabel + // + this.productTitleLabel.BackColor = System.Drawing.Color.Transparent; + this.productTitleLabel.Dock = System.Windows.Forms.DockStyle.Bottom; + this.productTitleLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 14F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.productTitleLabel.Location = new System.Drawing.Point(0, 52); + this.productTitleLabel.Name = "productTitleLabel"; + this.productTitleLabel.Size = new System.Drawing.Size(384, 30); + this.productTitleLabel.TabIndex = 1; + this.productTitleLabel.Text = "AssetStudioModGUI"; + this.productTitleLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // CloseButton + // + this.CloseButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.CloseButton.Dock = System.Windows.Forms.DockStyle.Bottom; + this.CloseButton.Location = new System.Drawing.Point(0, 422); + this.CloseButton.Name = "CloseButton"; + this.CloseButton.Size = new System.Drawing.Size(384, 39); + this.CloseButton.TabIndex = 1; + this.CloseButton.Text = "Close"; + this.CloseButton.UseVisualStyleBackColor = true; + // + // productVersionLabel + // + this.productVersionLabel.Dock = System.Windows.Forms.DockStyle.Bottom; + this.productVersionLabel.ForeColor = System.Drawing.SystemColors.GrayText; + this.productVersionLabel.Location = new System.Drawing.Point(0, 82); + this.productVersionLabel.Name = "productVersionLabel"; + this.productVersionLabel.Padding = new System.Windows.Forms.Padding(0, 0, 5, 0); + this.productVersionLabel.Size = new System.Drawing.Size(384, 13); + this.productVersionLabel.TabIndex = 2; + this.productVersionLabel.Text = "v0.16.48.1 [x64]"; + this.productVersionLabel.TextAlign = System.Drawing.ContentAlignment.BottomCenter; + // + // panel2 + // + this.panel2.Controls.Add(this.productTitleLabel); + this.panel2.Controls.Add(this.pictureBox1); + this.panel2.Controls.Add(this.productVersionLabel); + this.panel2.Dock = System.Windows.Forms.DockStyle.Top; + this.panel2.Location = new System.Drawing.Point(0, 5); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(384, 95); + this.panel2.TabIndex = 3; + // + // panel3 + // + this.panel3.Dock = System.Windows.Forms.DockStyle.Top; + this.panel3.Location = new System.Drawing.Point(0, 0); + this.panel3.Name = "panel3"; + this.panel3.Size = new System.Drawing.Size(384, 5); + this.panel3.TabIndex = 3; + // + // AboutForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.CancelButton = this.CloseButton; + this.ClientSize = new System.Drawing.Size(384, 461); + this.Controls.Add(this.panel2); + this.Controls.Add(this.panel3); + this.Controls.Add(this.CloseButton); + this.Controls.Add(this.tabControl1); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "AboutForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "About"; + this.tabControl1.ResumeLayout(false); + this.tabPage1.ResumeLayout(false); + this.tabPage1.PerformLayout(); + this.panel1.ResumeLayout(false); + this.tableLayoutPanel2.ResumeLayout(false); + this.tableLayoutPanel2.PerformLayout(); + this.tableLayoutPanel1.ResumeLayout(false); + this.tableLayoutPanel1.PerformLayout(); + this.tabPage2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); + this.panel2.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.TabControl tabControl1; + private System.Windows.Forms.PictureBox pictureBox1; + private System.Windows.Forms.TabPage tabPage2; + private System.Windows.Forms.Label productTitleLabel; + private System.Windows.Forms.Button CloseButton; + private System.Windows.Forms.Label productVersionLabel; + private System.Windows.Forms.TabPage tabPage1; + private System.Windows.Forms.Label label11; + private System.Windows.Forms.Label label10; + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2; + private System.Windows.Forms.Label label16; + private System.Windows.Forms.Label label17; + private System.Windows.Forms.LinkLabel gitPerfareLinkLabel; + private System.Windows.Forms.Label label18; + private System.Windows.Forms.Label label19; + private System.Windows.Forms.LinkLabel gitAelurumLinkLabel; + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label productNamelabel; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.Label modVersionLabel; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.Label label8; + private System.Windows.Forms.LinkLabel checkUpdatesLinkLabel; + private System.Windows.Forms.RichTextBox licenseRichTextBox; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.Panel panel1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Panel panel2; + private System.Windows.Forms.Panel panel3; + } +} \ No newline at end of file diff --git a/AssetStudioGUI/AboutForm.cs b/AssetStudioGUI/AboutForm.cs new file mode 100644 index 0000000..baee692 --- /dev/null +++ b/AssetStudioGUI/AboutForm.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Diagnostics; +using System.Drawing; +using System.IO; +using System.Linq; +using System.Reflection.Emit; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace AssetStudioGUI +{ + public partial class AboutForm : Form + { + public AboutForm() + { + InitializeComponent(); + var productName = Application.ProductName; + var arch = Environment.Is64BitProcess ? "x64" : "x32"; + Text += " " + productName; + productTitleLabel.Text = productName; + productVersionLabel.Text = $"v{Application.ProductVersion} [{arch}]"; + productNamelabel.Text = productName; + modVersionLabel.Text = Application.ProductVersion; + + licenseRichTextBox.Text = GetLicenseText(); + } + + private string GetLicenseText() + { + string license = "MIT License"; + + if (File.Exists("LICENSE")) + { + string text = File.ReadAllText("LICENSE"); + license = text.Replace("\r", "") + .Replace("\n\n", "\r") + .Replace("\nCopyright", "\tCopyright") + .Replace("\n", " ") + .Replace("\r", "\n\n") + .Replace("\tCopyright", "\nCopyright"); + } + + return license; + } + + private void checkUpdatesLinkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + var ps = new ProcessStartInfo("https://github.com/aelurum/AssetStudio/releases") + { + UseShellExecute = true + }; + Process.Start(ps); + } + + private void gitPerfareLinkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + var ps = new ProcessStartInfo("https://github.com/Perfare") + { + UseShellExecute = true + }; + Process.Start(ps); + } + + private void gitAelurumLinkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + var ps = new ProcessStartInfo("https://github.com/aelurum") + { + UseShellExecute = true + }; + Process.Start(ps); + } + } +} diff --git a/AssetStudioGUI/AboutForm.resx b/AssetStudioGUI/AboutForm.resx new file mode 100644 index 0000000..3a83801 --- /dev/null +++ b/AssetStudioGUI/AboutForm.resx @@ -0,0 +1,754 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAoAEBAQAAEABAAoAQAApgAAABAQAAABAAgAaAUAAM4BAAAQEAAAAQAgAGgEAAA2BwAAICAQAAEA + BADoAgAAngsAACAgAAABAAgAqAgAAIYOAAAgIAAAAQAgAKgQAAAuFwAAMDAQAAEABABoBgAA1icAADAw + AAABAAgAqA4AAD4uAAAwMAAAAQAgAKglAADmPAAAAAAAAAEAIADMMAAAjmIAACgAAAAQAAAAIAAAAAEA + BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAACAAACAAIAAgIAAAAAAgACAgIAAAICAAMDA + wAAAAP8A////AP8A/wAAAAAAAAAAAAAAAAAAAAAAABcXAQQBcDABcQBgYFISFUUCVAACFRUhAEMVFlMj + IDIGaGZqubk2ABAIiKiTlpMhBxaDppYzlgUBdoapY5aTQCMBiIk5aTIFEHCKaWllIwQHEGqWmWaTJQEj + CJZWmWcBRRBxcBV3EBcAcQYBcQEGAAYGAEUGAjBxABAjAEBRIBCAAQAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAAKAAAABAAAAAgAAAAAQAIAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwKCYANzZSADI2ZQAwKSoAMCgsADInSAAxLlUAMDZeADAq + LAAyKigAmqDgADpR/gA0M20AOiWTADk0vwA2VfwANVj+ADNQ1wAwKi4AXlZUAOfj7QBDSv0APzrTAEEj + nAA+RewAPDvDAEArrAA6TPQAMzZvAJyUkQDz7egAdG33AEU99QBGIpgAQ0D0ADcwbAAyJzEAMis7ADEq + MAAxKScA18/JANTH1QCuoe8ATDf/AEwmrgBKMdUARznrAEA1sgA2LV8AV05LAOTY1gCCXKUA4NfjAFMw + /gBMKr8ARiNwAE8qwgBPMOMATDX6ADQqRwCSiIIAu6G7AFwjiQDm29oAfFT2AFMn6QA2J0QARCNbAFge + hwBUKucAPiqAAMq+tQDdzssA1sTKAOfc1gCvjeoAXh7/AF0f/wBYH7sAXR2YAFoj8gA/J3QAUEdDAN/Q + xgCRXpcAhF2FAJSKhQDbydoAZRb+AGMX8wBiGP4AYRn/AFcd2gAyKDAARDw4AF9TUQBAJD4AOCYzADkw + LgBnXloARSdlAEEiXgBAI1IAPiNfADInLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAV9gYWJjZGVmZ2hpAQEBAQFTVFVWV1hZWltcXV4BAQEBAUhJSktMTU5PUFFS + AQEBAQE9Pj9AQUJDREVGRwEBAQEBMjM0NTY3ODk6OzwBAQEBASgpKissLS4vMDEBAQEBAQEBHh8gISIj + JCUmJwEBAQEBARQVFhcYGRobHB0BAQEBAQEKCwwNDg8QERITAQEBAQEBAQIDBAUGBwgJAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEAgAEAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAEAACgAAAAQAAAAIAAAAAEA + IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwKCY3MCgm2DAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJtgwKCY3MCgm2DAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm2DAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/0Q8OP9fU1H/QCQ+/zgm + M/85MC7/Z15a/0UnZf9BIl7/QCNS/z4jX/8yJy3/MCgm/zAoJv8wKCb/MCgm/zAoJv9QR0P/39DG/5Fe + l/+EXYX/lIqF/9vJ2v9lFv7/Yxfz/2IY/v9hGf//Vx3a/zIoMP8wKCb/MCgm/zAoJv8wKCb/MCgm/8q+ + tf/dzsv/1sTK/+fc1v+vjer/Xh7//10f//9YH7v/XR2Y/1oj8v8/J3T/MCgm/zAoJv8wKCb/MCgm/zAo + Jv+SiIL/u6G7/1wjif/m29r/fFT2/1Mn6f82J0T/RCNb/1geh/9UKuf/PiqA/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/V05L/+TY1v+CXKX/4Nfj/1Mw/v9MKr//RiNw/08qwv9PMOP/TDX6/zQqR/8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zEpJ//Xz8n/1MfV/66h7/9MN///TCau/0ox1f9HOev/QDWy/zYtX/8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/nJSR//Pt6P90bff/RT31/0YimP9DQPT/NzBs/zInMf8yKzv/MSow/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/15WVP/n4+3/Q0r9/z860/9BI5z/PkXs/zw7w/9AK6z/Okz0/zM2 + b/8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8yKij/mqDg/zpR/v80M23/OiWT/zk0v/82Vfz/NVj+/zNQ + 1/8wKi7/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zc2Uv8yNmX/MCkq/zAoLP8yJ0j/MS5V/zA2 + Xv8wKiz/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJtgwKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJtgwKCY3MCgm2DAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJtgwKCY3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAgAAAAQAAAAAEABAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAgAAAAACAAACAAIAAgIAAAAAAgACAgIAAAICAAAAA/wDAwMAA////AAD/ + /wD/AP8AAAAAAAAAAAAAAAAAAAAwIVBFIVBAVAFFEhcDAAAXEjAGADISMEUCUGBQQCADIVBFQDIBUCMB + cQQAQDAyBFAhUjAhUhcQcBcQVFEgRRUhVAECMEUBcQRQcSAXAwACFUUHFxcEUgRUBAMEUEBxAyAQQQAB + BRAwUFFSMARRAgRRJmYWMjRpNzY3M3FxBUUVIVaZMzEJmYyDjIaDAjIQAjAjqZaWmanIbIaMjHEFIwMh + UpmampqWjIaDOGg3EhAEBUVqmZmprIg4NlOGgQVFFSEBaaY1mpiMc0UzaMJUAAIwcQmmM6mYxwBTY4hl + EHEVQBcJmTaqhoNzNoaGMCMFAjBwFpo5qYyGOGjIaGAyEgMgEGCaaamGg2hohoYBIDAEAyMCmpqoaGOG + hlYFBgMgFSECMGmqmGhlhoQAEhAgMgIwcQIaqmhoNoaEVnNwMhADIBcVCZpoaGiGhlOGhAMHBFFwEjap + hoZWhoaGhoIwIRUhAXBAqYaDU4aGi4ZUAjACFQYBUJhoYGVlhoaGADAjAyBAUEVlaCUVVldzUlQGEARR + BxIwIXEEAXEBBgQBUHAwIyEDIDIAYFIVJUBQMgQBAjAFQAYBVAEjBAFUASMAMgMhcQcQJUUCMHAXBxJQ + YSUEBQRRIwEBcQQDIQFRIQcBAGBgBFBgIwcQVFBFIwIwEAABAjAEBRIBUhAGABJRAgDAAAADgAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABwAAAAygA + AAAgAAAAQAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCgmAEhFVgA0Q6UAM0OlADAs + NwAyJ0AANCdlADQmbgA0K3UAMT+UADBGogAwQYkAMC4/ALCsqwBHXvsAOFP+ADM5egA1JmkAOSWjADgy + uQA1VfcANFn+ADNa/gAyWfYAMTluADYuLADt6eYAhI32ADtP/gA4RMEANSZUADwkoAA8KakAOFD4ADhU + /gA3Vf4ANlb+ADVX/gA1VvgAMS9GAGxlYwD18e0AwcHwAD5K/gA9SvkAPSaVAD8jngA9OtAAPTrPAD4u + sgA8OckAOVH8ADRBoACrpaEA9O/rAPHs7ABNT/sAQkX+AEFH/gBBMMAAQiObAD9B5gA5P7cAPyOKAD4+ + 2AA4R9AANCwqAOXe2gDz7egAhYD0AEVB/gBEQv4ARTnfAEUimABCQO4AODeQADMnNgA0Jz0AMytJADMw + VQAyL04AZl5bAPDp5ADx6+YAvrfsAEg9/gBHPv4ARz37AEgjmwBIIZYARTrlAD86wwCjm5cA7ubgAOLZ + 3ADx6uUA7ebnAFNB/ABKOf4ASTv+AEopuABLIZMASS/KAEc9/gA/NrIAODB1ADUtWQAwKCkAMysoAN3U + zgDu5d8Ak3axAOrh4ACGc/UATTX/AE0v2wBOIJAATSKZAEs29ABLN/8ANSxPAGBXVADr4toA7OPcAGE1 + lQDArMgA8OjjALus6QBRL/8AUDH6AFAgjwBRH44AUCOgAE4x6QBJN+wAMik4AJ2TjQDq39gAzr3JAFQf + iwCTcK0A6ODhAFoz/ABTLf8APSlyADkmQQA/JFEATyB+AFIjoQBSJrIAUC3bAE8z/wBONP8APy6WANXK + wgDo3dQAooKwAFceiABoNZIA7eTeAIdl8QBWKf8ASSm0ADQnMgBVHoUAUivgAEou0ABaUU0A5trRAHlJ + lgBZHYYA0sDMAO3k3QC5oecAWyL/AFkl/wBXJfQAOydhADYoQwBRIHIAViS8AFQr/wBQK+QAlImDAOXY + zgDFrsEA3c/RAOTZ3QBhJf0AXCD/AE0ktQBZHnwAXB2DAFkizgBQJ9oAzcC2AOPWzADp3tYA6uDYAIpX + 8gBfG/8AXR37AF4evgBeHZwASiWrAFVLRwDi1MkAv6OzALeZrwC4mrEAsZ2lAKqgmgDc0ckAuJblAGMX + /wBhGf8AOCZOAI2BegDh0cYA2snCAGkhfQBlG3sAQSRBAJmPigDo3tUA4NLXAGgX/QBlE/8AZRT/AGUX + zwBkFfsAYBj5AEIjdgCCdm8AmIuDAIRwdwBQIFYAMicpAJ6UjgBhNKAAURqnAFEdgwBQH2YATxyVAE8c + pgBJH4wANiZBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAerr7O3t7e4Bzonv8PHx8vP09fb3AWwBAQEBAQEB + AQEB2tvc3d7e3wHg4eLj5OXm5+XX1+jpAQEBAQEBAQEBAQHOz8/Q0dLT1NWK1tfX19jJycnJysrZAQEB + AQEBAQEBAQHExbmpqZzGx3vIycnJycrLzMu+r80BAQEBAQEBAQEBAbi5qbq6urt7vL2vvq+vv8DBwcKw + wwEBAQEBAQEBAQEBqKmpqqurrK2ur7CxsrKztKurtba3AQEBAQEBAQEBAQEBm5ydnp+gXqGioqMBAaSl + np6mkKcBAQEBAQEBAQEBAQGJiouMjV6Oj5CQkZKTlJWWl5iZmgEBAQEBAQEBAQEBAXp7fH1+f4CBgYKD + hIWGc3N4eIeIAQEBAQEBAQEBAQEBbW5vcHFgcnNzdHV2d3hjZGRJeQEBAQEBAQEBAQEBAQEBXV5fYGFi + Y2RlZmdWaGlqa2wBAQEBAQEBAQEBAQEBAQFSU1RFVVZXWFlaW0dcAQEBAQEBAQEBAQEBAQEBAQEBAUNE + RTdGR0hJSkpLOkxNTk5PUFEBAQEBAQEBAQEBAQEBATY3ODk6Ozw9PT4sP0A9PUEdQgEBAQEBAQEBAQEB + AQEBKSorLCwtLi8vMB0dMTIzNBA1AQEBAQEBAQEBAQEBAQEaGxwdHR4fICAhIiMkJCUmJygBAQEBAQEB + AQEBAQEBAQEODxAQEQESExMUFRYXFxgZAQEBAQEBAQEBAQEBAQEBAQIDBAQFAQEGBwgJCgsMDQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAMAAAAOAAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAHAAAADKAAAACAA + AABAAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwKCYKMCgmgzAoJt8wKCb+MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv4wKCbfMCgmgzAoJgoAAAAAMCgmCjAoJsgwKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgmyDAoJgowKCaDMCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgmgzAo + Jt8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCbfMCgm/jAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv4wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv+Cdm//mIuD/4Rw + d/9QIFb/UCBW/1AgVf8yJyn/MCgm/1JKRv+dk43/npSO/2E0oP9RGaf/URqn/1Edg/9QH2b/TxyV/08c + pv9JH4z/NiZB/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/42B + ev/g0MX/2snC/2khff9lG3v/ZRt7/0EkQf8wKCb/mY+K/+je1f/g0tf/aBf9/2UT//9lFP//ZRfP/2QV + +/9jFv//Yxb//2IX//9gGPn/QiN2/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/VUtH/+HSx//i1Mn/v6Oz/7eZr/+4mrH/sZ2l/6qgmv/c0cn/6t/Y/7iW5f9jF///Yhf//2IY + //9hGf7/YRn//2Aa//9gG///Xxz//14c//9dHfv/OCZO/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8xKSf/zcC2/+PWzP/k2M7/5tnQ/+fb0v/o3dT/6d7W/+rg2P/r4tr/ilfy/18b + //9fHP//Xx3//14d//9eHv7/Xh2//14dnP9dHr3/WyH9/1si//9KJav/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv+UiYP/5djO/+ba0P/Frb//xa3A/8Wuwv/dz9H/6+Lb/+TZ + 3f9hJf3/XCD//1wg//9bIf//WyH//00ktf9ZHnz/XB2D/1wdg/9ZIs7/WCb//1An2v8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/1pRTf/m2tH/59vT/3lJlv9ZHYb/WR2G/9LA + zP/t5N3/uaHn/1oj//9ZJP//VyX0/zsnYf87J2H/NihD/1Egcv9ZHYb/WR2G/1YkvP9UK///UCvk/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MSkn/9XKwv/o3tX/ooKw/1ce + iP9oNZL/7eTe/+7m4P+HZfH/Vij//1Yp//9JKbT/MCgm/zAoJv80JzL/VR6F/1ceiP9XHon/Uivg/1Ev + //9KLtD/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/nJKN/+rf + 2P/Ovcn/VB+L/5Nwrf/u5uD/6ODh/1oz/P9TLP//Uy3//z0pcv85JkH/PyRR/08gfv9SI6H/Uiay/1At + 2/9PM///TjT//z8ulv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv9gV1T/6+La/+zj3P9hNZX/wKzI//Do4/+7rOn/UTD//1Ax//9QMfr/UCCP/1Efjv9QI6D/TjHp/001 + //9NNv//TDf//0s3//9JN+z/Mik4/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zMrKP/d1M7/7uXf/5N2sf/q4eD/8erl/4Zz9f9NNf//TTX//00v2/9OIJD/TSKZ/0s2 + 9P9LOf7/Sjn+/0k6/v9JO/7/RTne/zUsT/8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/6Obl//v5+H/4tnc//Hq5f/t5uf/U0H8/0o5/v9KOv7/Sim4/0sh + k/9JL8r/SDz+/0c9/v8/NrL/ODB1/zUtWf8wKCn/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/Zl5b//Dp5P/x6+b/8+3o/7637P9IPf7/Rz7+/0c9 + +/9II5v/SCGW/0U65f9FQf7/PzrD/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv80LCr/5d7a//Pt6P/07ur/hYD0/0RB + /v9EQv7/RDnf/0UimP9FIpj/QkDu/0JF/v84N5D/Myc2/zQnPf80Jz3/MytJ/zMwVf8yL07/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv+rpaH/9O/r//Hs + 7P9NT/v/QUb+/0FH/v9BMMD/QiOb/0Ijm/8/Qeb/Pkr+/zk/t/8/I4r/QiOb/0Ijm/8+Ptj/O0/+/zhH + 0P8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/2xl + Y//18e3/wcHw/z9K/v8+Sv7/PUr5/z0mlf8/I57/PyOe/z060P87Tv7/O0/+/z06z/8+LrL/PDnJ/zlR + /P84U/7/NEGg/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/Ni4s/+3p5v+Ejfb/O07+/ztP/v84RMH/NSZU/zwkoP88JKD/PCmp/zhQ+P84VP7/N1T+/zZV + /v82Vv7/NVf+/zVW+P8xL0b/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/sKyr/0de+/84U/7/OFP+/zM5ev8wKCb/NSZp/zklov85JaP/ODK5/zVV + 9/80Wf7/M1r+/zNa/v8yWfb/MTlu/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv9IRVb/NEOl/zNDpf8zQ6X/MCw3/zAoJv8wKCb/MidA/zQn + Zf80Jm7/NCt1/zE/lP8wRqL/MEGJ/zAuP/8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv4wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb+MCgm3zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJt8wKCaDMCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgmgzAoJgowKCbIMCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJsgwKCYKAAAAADAoJgowKCaDMCgm3zAo + Jv4wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/jAoJt8wKCaDMCgmCgAAAACAAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAASgA + AAAwAAAAYAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAACAAACAAIAAgIAAAAAA + gACAgIAAAICAAAAA/wDAwMAAAP//AP///wD/AP8AAAAAAAAAAAAAAAAAAAAAYAMhUhJRJRcBIVJRIyAS + AyMhUgAAAARUAGBUBFBAVAFwFwEGABUjBAAwIVAAAABRcQIQUBcXECMBcBcQBgQBcBcSMEAAADISAyFU + BgAQcVIXFxBxcQVFAyAwIwYAAyFRcVBFASMHEEUAEAcQBFQAQFQCMCBUEgUhAgYAYFIQRQEjJUAXFQBg + MhBRIDBFBUAXAwEjAhFwMhcQBFFwBFQARQYEUSMABFFwEjJRIyUEADIGAwIQYAFUUEADBxBxAyEBcBBA + UBIVBgAwIGBUBUUgFxVAIQcQElBxBgcDIXAyEHEEUQEjISEDIBJRBgEGBUAXAQESEAEgMhBFFxcAUDBg + cXAXBFIwBAMgMpmWNjcVQGmZaDjGNoaDMAMgFQEgAyFUBpmZMzMyBZubPIyDjIyGhlQDIGBUElAhUGuZ + YzYxYZuZhoaMhoyMjIRSMBIVBUAwIWmbmZmZmbm8jIyGjIaMhoMBIHFSBFElFSmZm5uZubm2hoaMiDOG + jIYHFRIQAyFUAha5uZm5ubmYyMjIk1ZThoxxBAUjEgUhUXG5mZmZm5vIaGiDhjM2OGgwcGASBUAwIQeZ + uTc1m5s4yGU2UDc1OMhxAQYFBFEgMlGZuTMzm5uGjIElBjM2hoY3FSASAyFUUEBpuWNWubmMhlcQRTVj + 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 + wwA+JUUAVSOqADspYwA0LCoA1Mi/AMWvvwBmM/kAWiP/AEEmfgA8KWwANyY2AFcglwBeVVEA0r+9ALOV + tgC0lrgAzrvGAJNr7gBeHf8AVCThAFgfpgCYjIYA4tXLAMOp4wBaIuIA0MK4AGoo+gBhGv8AXh3KAF8b + qwBcH+cAVCPcAFlPSwDh0sYA39DEAN/RygCUYO4AZBX+AJGFfgB/R4oAZyN8AEAtPABNQ0EAv6HfAGQW + 9ABTH8QAx7muAGUbegBfHHAAbBv6AGUYqQBSHbsAMycyAMu8sQCgfpUAYBxtAE0hUQDUycEAhU3YAGIT + 6QBhE+cAYRmWAF8W1QBdF90AUhuzAD4jYgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQYBAQEBAQEBAQEBAQEBAQEBAQYGBgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB3+rq + 6uvs7Ozl7QEBATa57u7v8PHw8PLl0vPx9PX2AQEBAQEBAQEBAQEBAQEBAQEBBuPX18Lk5OTk5QYGAUGf + n5Tm2tra4efh2tra0Nra6OkBAQEBAQEBAQEBAQEBAQEBAdvWy9bc3d3d3d6C34OfjODa2tra4dra0NDa + 0NDQ0OIGAQEBAQEBAQEBAQEBAQEBAdXWy8vXntjW2NjLsJ+fn9na0NDQ0NDQ0MfHx8fHx8e9AQEBAQEB + AQEBAQEBAQEBAQHOy7CwsIODn4OfaoyEas/Qx8fHx8fH0NHS0tPHvLzUAQEBAQEBAQEBAQEBAQEBAQHK + y8uwsIODn5+fn4yEzMfHx8fHx7y8yaysrKzNvKmprgEBAQEBAQEBAQEBAQEBAQHBsLCDwsPDxMPFhISE + xsfHvLy8x7zItaysrKzJqamptwEBAQEBAQEBAQEBAQEBAQG4uYODuqysrKyghISMu7y8vLyqvb2+v6ys + rKzAqamWvgEBAQEBAQEBAQEBAQEBAQEBr4ODsLGyrLKUTk6zqampqbQBAQEBtayskqy2lpaQtwEBAQEB + AQEBAQEBAQEBAQEBpZ+fn6aSkqeEhHGoqamWqaoBAQEGq5KskpKtkJaQrgEBAQEBAQEBAQEBAQEBAQEB + gp6fn6CSiaFxTk6ilpaWlkwBICajkpKSmqSQfJB9AQEBAQEBAQEBAQEBAQEBAQEBAZOMhJSJiXlxcZWW + lpCQl5iZkpKam5x8fJB8fHydAQEBAQEBAQEBAQEBAQEBAQEBAYuMhISNjoRxYo+QkJCQkZKSbYp8fHxz + c3xzc24gAQEBAQEBAQEBAQEBAQEBAQEBAYKDhISFhmJicYd8fHx8iG2JinN8c3xzc3NzbhcBAQEBAQEB + AQEBAQEBAQEBAQEBAQF4Tk55emJie3x8fHx9bW1nfnNzZHNkf4CBIAEBAQEBAQEBAQEBAQEBAQEBAQEB + AQFwTnFOTk9icnNzc3N0bW11ZGRkXHZ3IAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFpamJiYk9Za2Rk + ZGRsbWduZGRvXwEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBYWJPT09jZGRlZGZnZ2dcUlFoAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBWFlZLCxaUVFRUVtGRkZcUlJdBlVeXl5fYGBgTAEBAQEB + AQEBAQEBAQEBAQEBAQEBTU5PLDdQUVJSUlNGRkZUOUNKVUZGRkZWJCQkVwEBAQEBAQEBAQEBAQEBAQEB + AQEBAUE3N0JDQ0M5REVGRUVHLy8kSEVGRUlKJBRLTAEBAQEBAQEBAQEBAQEBAQEBAQEBATY3Nzg5OTk5 + OjMzMzM7JCQUJDw9Pj8UFBVAAQEBAQEBAQEBAQEBAQEBAQEBAQEBASssLS4vLyQkMDEyMjMzNBQVFRUV + FRUVFRU1AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEhIiMUFCQlASYnGRkZKCkVFRUVHBwcHSoBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQESExQUFRUWAQEXGBkZGRobHB0dHh4eHyABAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQECAwQEBAQFAQEBBgcICQoLDA0ODxARAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAABAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAADwAAAAAA8AAOAAAAAABwAAwAAAAAADAACAAAAAAAEAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAgAAAAAABAADAAAAAAAMAAOAAAAAABwAA8AAAAAAPAAAoAAAAMAAAAGAA + AAABACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCgmLDAoJpkwKCbeMCgm/TAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb9MCgm3jAoJpkwKCYsAAAAAAAAAAAAAAAAAAAAADAoJgEwKCZ3MCgm+TAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb5MCgmdzAoJgEAAAAAAAAAADAo + JncwKCb+MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/jAo + JncAAAAAMCgmLDAoJvkwKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJvkwKCYsMCgmmTAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCaZMCgm3jAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCbeMCgm/TAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb9MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/05EQf/Lu7D/y7yx/8y9s/+gfpX/YBxt/2Acbf9gHG3/YBxt/00hUf8wKCb/MCgm/zAo + Jv99dG//08jA/9TJwf/VysP/hU3Y/2IS5/9iEuf/YRPo/2IT6f9hGZb/YBt4/18Yrv9fFtX/YBXm/10X + 3f9SG7P/PiNi/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zIqKP/Hua7/39DE/+DRxf/Sv73/Zhx7/2Ybe/9mG3v/Zht7/18c + cP8xKCf/MCgm/zAoJv+/tK3/6N3V/+ne1v/k2Nb/bBv6/2YS//9mEv//ZRP//2UU+P9lGKn/ZBX1/2QU + //9kFf//YxX//2MW//9jFv//Yhf//1Idu/8zJzL/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv+RhX7/4NHG/+HSx//h08j/f0eK/2cj + fP9nI3z/ZyN8/2cjfP9ALTz/Ny8t/0tCQP/l2tL/6d7W/+rf2P+/od//ZBT//2QV//9kFf//Yxb//2MX + 8v9jF/v/Yhf//2IX//9iGP//YRj//2EZ//9hGv//YBr//2Ab//9TH8T/MSgp/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv9ZT0v/4dLH/+LT + yf/i1Mr/39DI/93PyP/e0Mn/39HK/+DSzP/f08z/4NXM/+LYz//p3tf/6t/Y/+vh2f+UYO7/Yhf//2IY + //9hGP//YRn//2EZ//9hGf//YBr//2Ab//9gG///Xxz//18c//9eHf//Xh3//14e//9dHv//QiR9/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8xKSf/0MK4/+PVyv/j1sz/5NfN/+XYzv/m2dD/5trR/+fb0//o3NT/6N7V/+nf1//q4Nj/6+HZ/+ba + 2/9qKPr/YBr//2Ab//9fG///Xxz//18c//9fHP//Xh3//14d/P9eHcr/Xh2o/10ds/9cH+f/XCD//1wh + //9bIf//VCPc/zAoJ/8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/mIyG/+PWzP/k183/5djP/+bZ0P/m2tL/59zT/+jd1P/p3tb/6d/X/+rg + 2P/r4dr/7OLb/8Op4/9eHf//Xh3//14e//9dHv//XR///10f//9cH///XCD+/1gfpv9eHIL/XhyC/14c + gv9dHYb/WiLi/1kk//9ZJP//WCX9/zUoQv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/XlVR/+TXzv/l2M//5trQ/8+8xP+zlLX/s5W2/7OV + t/+0lrj/zbnH/+vh2v/s4tv/7OTd/5Nr7v9cIP//XCD//1sh//9bIf//WyL+/1si//9aIv//VCTh/z8k + Rv9cHYT/XB2E/1wdhP9cHYT/WSCp/1cm//9XJ///Vyf//zsoYv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/NCwq/9TIv//m2tH/59vS/8Wv + v/9aHYX/Wh2F/1odhf9aHYX/up++/+zj3P/t5N3/6d/e/2Yz+f9aI///WiP//1kk//9YJPv/QSZ+/0Em + f/9BJ3//PCdo/zcmNv9aHYX/Wh2F/1odhf9aHYX/VyCX/1Up//9VKv//VCv//zwpbP8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/56U + jv/n29L/6NzU/+TY0v9kLoz/WB6H/1geh/9bIon/49bX/+3k3f/u5d//xbLj/1gl//9YJv//WCb//1cn + //9MJ8P/MCgm/zAoJv8wKCb/MCgm/zwlQ/9YHof/WB6H/1geh/9YHof/VSOq/1Mt//9TLf//Ui7//zoq + Y/8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/2NaV//o3NT/6N7V/+nf1/+JYqL/Vh6J/1Yeif97T57/7eTe/+7l3//u5uD/k3Xt/1Yo + //9WKf//VSn//1Uq//8/KX3/MCgm/zAoJv8wKCb/MSgo/0whcP9WHon/Vh6J/1Yeif9WHor/Uivg/1Ev + //9RMP//UDD9/zUpRf8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zYuLP/az8j/6d/X/+rg2P+1nLv/VB+L/1Qfi/+nirj/7ubf/+/n + 4f/t5eH/YTv5/1Qr//9ULP//Uyz//1It+v8zKDv/MCgn/zEoKv82Jjn/SSJt/1Qfi/9UH4v/VCCP/1Mi + nf9QLNv/TzL//08y//9PM///SjLg/zAoKP8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv+lm5b/6uDZ/+vh2v/g1NT/VCKN/1Mg + jP/UxdL/7+fh/+/o4v/IuuX/Ui7//1Iu//9SL///US///0wt0/9EI2P/TSB+/1EfiP9SH4z/USKb/1Ar + zf9PMO7/TjP4/040//9ONP//TTX//002//9MNv//PS6I/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv9pYF3/6+La/+zj + 3P/t5N3/dE2e/2Y7mf/t5eD/8Ojj//Dp5P+Uf+//UDH//1Ax//9PMv//TzL//1Anvv9QH47/UB+O/1Af + jv9OKLj/TTT6/001//9NNv//TDb//0w3//9LN///Szj//0s4/v9FNdX/MSgs/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv82Liz/4tnS/+3k3f/u5d//ooi3/5N1s//w6eP/8erk/+7n5f9hSPr/TjT//040//9NNf//TTX9/04i + nP9OIJD/TiCQ/00otP9LN/7/Szj//0s4/v9KOf7/Sjn+/0o6/v9JOv7/STv+/0Q30/8zKj3/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/rKOe/+7l3//u5uD/0cPR/8KwzP/x6uT/8evm/8zB6v9NN///TDf//0w3 + //9LOP//SzLl/0wgkv9MIJL/TCKX/0o48/9JOv7/STv+/0k7/v9IPP7/SDz8/0Y88/9DOdL/OjGD/zEp + Lf8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/b2dj/+/n4f/v6OL/7+fj/+7m4//y6+b/8uzo/5WJ + 8P9KOf7/Sjr+/0o6/v9JO/7/SizC/0ohk/9KIZP/SSy6/0g9/v9HPf7/Rz7+/0Q85/83L2v/Mio1/zEp + Lv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/OjIw/+be2f/w6eT/8erl//Lr + 5//y7Oj/8Ovo/15T9v9IPP7/SD3+/0c9/v9HPv7/SCSh/0ghlf9IIZX/RjXV/0ZA/v9FQP7/RUD7/zQt + VP8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/7Or + p//x6uX/8uzn//Pt6P/z7ur/z8np/0Y//v9GP/7/RkD+/0VA/v9FOuj/RiKX/0Yil/9GIpf/RDvj/0ND + /v9DQ/7/Pz7V/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/3Vtav/y7Of/8+3o//Pu6v/07+v/lpLx/0RC/v9EQv7/Q0P+/0ND/v9EMcj/RCKZ/0Qi + mf9EIpn/Qj7n/0FG/v9BRv7/PD7C/zEoKv82Jkf/NiZI/zYmSP82Jkj/NilR/zQ0bf80NG3/NDRt/zEr + Of8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/z01M//r5eH/9O7q//Tv6//18O3/W1z3/0JF/v9CRf7/QUb+/0FG + /f9CJ6n/QyKa/0Mimv9DIpr/QD7e/z9J/v8/Sf7/PUbk/zQnQv9DIpr/QyKa/0Mimv9DIpr/QDG9/zxN + /v88Tv7/O07+/zIwVP8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv+6tLD/9fDs//Xx7f/U0ez/QEf+/0BI + /v9ASP7/P0n+/z9C6/9BI53/QSOc/0EjnP9BI5z/PzjO/z1M/v89TP7/PE3+/zw1sv9BI5z/QSOc/0Ej + nP9BJJ7/PEbn/zpQ/v85Uf7/OVH5/zErOP8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv97dHH/9fHt//by + 7/+Ym/H/Pkr+/z5L/v89S/7/PUz+/zk4pv8/I53/PyOe/z8jnv8/I57/Piyx/ztP/v87T/7/OlD+/zpQ + /P87P9j/PDS8/zw2w/86SOn/OFP+/zhT/v83VP7/NUrM/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8+NjT/8u7r//by8P9bZ/j/PE3+/zxO/v87Tv7/O078/zIuSv85JX3/PSSg/z0koP89JKD/PSSg/zpG + 4/84Uv7/OFP+/zhT/v83VP7/N1T+/zdV/v82Vf7/Nlb+/zZW/v81V/7/Mjdt/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/wby6/9fX7/88Uf3/OlD+/zpR/v85Uf7/N0rY/zAoJ/8xJzX/OiSX/zsk + of87JKH/OySh/zorrf83UfX/Nlb+/zZW/v81V/7/NVf+/zVY/v80WP7/NFn+/zNZ/v8ySbf/MCgn/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/gXt5/5qk8/84U/7/OFP+/zdU/v83VP7/ND6T/zAo + Jv8wKCb/Mic9/zglkf85JaP/OSWj/zklo/84LrH/NFHv/zRZ/v8zWv7/M1r+/zJb/v8yW/7/Mlz+/zFK + sv8wKi7/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/Qzw6/1Zp3P81UOT/NVDk/zVR + 5P81UeT/MTBL/zAoJv8wKCb/MCgm/zAoK/8zJ1v/NSaB/zYmj/82JZP/NieW/zQ8tf8yTtH/MVXh/zBU + 2P8wSq//MDZe/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/TAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb9MCgm3jAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCbeMCgmmTAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCaZMCgmLDAoJvkwKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJvkwKCYsAAAAADAoJncwKCb+MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/jAoJncAAAAAAAAAADAoJgEwKCZ3MCgm+TAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb5MCgmdzAoJgEAAAAAAAAAAAAA + AAAAAAAAMCgmLDAoJpkwKCbeMCgm/TAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAo + Jv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb/MCgm/zAoJv8wKCb9MCgm3jAoJpkwKCYsAAAAAAAA + AAAAAAAA4AAAAAAHAACAAAAAAAEAAIAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + + + \ No newline at end of file diff --git a/AssetStudioGUI/AssetStudioGUI.csproj b/AssetStudioGUI/AssetStudioGUI.csproj index 60c5c24..c0b9b21 100644 --- a/AssetStudioGUI/AssetStudioGUI.csproj +++ b/AssetStudioGUI/AssetStudioGUI.csproj @@ -5,9 +5,10 @@ net472;net6.0-windows;net7.0-windows true Resources\as.ico - AssetStudio Mod by VaDiM + AssetStudioMod by aelurum + AssetStudioModGUI 0.16.48.1 - Copyright © Perfare 2018-2022 + Copyright © Perfare 2018-2022; Copyright © aelurum 2021-2023 embedded @@ -44,6 +45,13 @@ + + + PreserveNewest + LICENSE + + + diff --git a/AssetStudioGUI/AssetStudioGUIForm.Designer.cs b/AssetStudioGUI/AssetStudioGUIForm.Designer.cs index fd9cb75..0a962e5 100644 --- a/AssetStudioGUI/AssetStudioGUIForm.Designer.cs +++ b/AssetStudioGUI/AssetStudioGUIForm.Designer.cs @@ -76,6 +76,7 @@ this.debugMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem15 = new System.Windows.Forms.ToolStripMenuItem(); this.exportClassStructuresMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.tabControl1 = new System.Windows.Forms.TabControl(); this.tabPage1 = new System.Windows.Forms.TabPage(); @@ -164,7 +165,8 @@ this.modelToolStripMenuItem, this.exportToolStripMenuItem, this.filterTypeToolStripMenuItem, - this.debugMenuItem}); + this.debugMenuItem, + this.aboutToolStripMenuItem}); this.menuStrip1.Location = new System.Drawing.Point(0, 0); this.menuStrip1.Name = "menuStrip1"; this.menuStrip1.Size = new System.Drawing.Size(1264, 24); @@ -272,9 +274,11 @@ // // specifyUnityVersion // + this.specifyUnityVersion.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.specifyUnityVersion.Font = new System.Drawing.Font("Microsoft YaHei UI", 9F); this.specifyUnityVersion.Name = "specifyUnityVersion"; this.specifyUnityVersion.Size = new System.Drawing.Size(100, 23); + this.specifyUnityVersion.ToolTipText = "Specify full Unity version, including letters at the end\r\nExample: 2017.4.39f1"; // // showExpOpt // @@ -531,6 +535,13 @@ this.exportClassStructuresMenuItem.Text = "Export class structures"; this.exportClassStructuresMenuItem.Click += new System.EventHandler(this.exportClassStructuresMenuItem_Click); // + // aboutToolStripMenuItem + // + this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; + this.aboutToolStripMenuItem.Size = new System.Drawing.Size(52, 20); + this.aboutToolStripMenuItem.Text = "About"; + this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click); + // // splitContainer1 // this.splitContainer1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; @@ -1051,38 +1062,38 @@ this.expandAllToolStripMenuItem, this.collapseAllToolStripMenuItem}); this.contextMenuStrip2.Name = "contextMenuStrip2"; - this.contextMenuStrip2.Size = new System.Drawing.Size(181, 120); + this.contextMenuStrip2.Size = new System.Drawing.Size(152, 98); // // selectAllToolStripMenuItem // this.selectAllToolStripMenuItem.Name = "selectAllToolStripMenuItem"; - this.selectAllToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.selectAllToolStripMenuItem.Size = new System.Drawing.Size(151, 22); this.selectAllToolStripMenuItem.Text = "Select all"; this.selectAllToolStripMenuItem.Click += new System.EventHandler(this.selectAllToolStripMenuItem_Click); // // clearSelectionToolStripMenuItem // this.clearSelectionToolStripMenuItem.Name = "clearSelectionToolStripMenuItem"; - this.clearSelectionToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.clearSelectionToolStripMenuItem.Size = new System.Drawing.Size(151, 22); this.clearSelectionToolStripMenuItem.Text = "Clear selection"; this.clearSelectionToolStripMenuItem.Click += new System.EventHandler(this.clearSelectionToolStripMenuItem_Click); // // toolStripSeparator5 // this.toolStripSeparator5.Name = "toolStripSeparator5"; - this.toolStripSeparator5.Size = new System.Drawing.Size(177, 6); + this.toolStripSeparator5.Size = new System.Drawing.Size(148, 6); // // expandAllToolStripMenuItem // this.expandAllToolStripMenuItem.Name = "expandAllToolStripMenuItem"; - this.expandAllToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.expandAllToolStripMenuItem.Size = new System.Drawing.Size(151, 22); this.expandAllToolStripMenuItem.Text = "Expand all"; this.expandAllToolStripMenuItem.Click += new System.EventHandler(this.expandAllToolStripMenuItem_Click); // // collapseAllToolStripMenuItem // this.collapseAllToolStripMenuItem.Name = "collapseAllToolStripMenuItem"; - this.collapseAllToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.collapseAllToolStripMenuItem.Size = new System.Drawing.Size(151, 22); this.collapseAllToolStripMenuItem.Text = "Collapse all"; this.collapseAllToolStripMenuItem.Click += new System.EventHandler(this.collapseAllToolStripMenuItem_Click); // @@ -1168,7 +1179,7 @@ this.MinimumSize = new System.Drawing.Size(620, 400); this.Name = "AssetStudioGUIForm"; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.Text = "AssetStudioGUI"; + this.Text = "AssetStudioModGUI"; this.DragDrop += new System.Windows.Forms.DragEventHandler(this.AssetStudioGUIForm_DragDrop); this.DragEnter += new System.Windows.Forms.DragEventHandler(this.AssetStudioGUIForm_DragEnter); this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.AssetStudioForm_KeyDown); @@ -1311,6 +1322,7 @@ private System.Windows.Forms.ToolStripSeparator toolStripSeparator5; private System.Windows.Forms.ToolStripMenuItem collapseAllToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem expandAllToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem; } } diff --git a/AssetStudioGUI/AssetStudioGUIForm.cs b/AssetStudioGUI/AssetStudioGUIForm.cs index 823ace2..20536e2 100644 --- a/AssetStudioGUI/AssetStudioGUIForm.cs +++ b/AssetStudioGUI/AssetStudioGUIForm.cs @@ -112,7 +112,7 @@ namespace AssetStudioGUI { Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US"); InitializeComponent(); - Text = $"AssetStudioGUI v{Application.ProductVersion}"; + Text = $"{Application.ProductName} v{Application.ProductVersion}"; delayTimer = new System.Timers.Timer(800); delayTimer.Elapsed += new ElapsedEventHandler(delayTimer_Elapsed); displayAll.Checked = Properties.Settings.Default.displayAll; @@ -227,11 +227,11 @@ namespace AssetStudioGUI if (!string.IsNullOrEmpty(productName)) { - Text = $"AssetStudioGUI v{Application.ProductVersion} - {productName} - {assetsManager.assetsFileList[0].unityVersion} - {assetsManager.assetsFileList[0].m_TargetPlatform}"; + Text = $"{Application.ProductName} v{Application.ProductVersion} - {productName} - {assetsManager.assetsFileList[0].unityVersion} - {assetsManager.assetsFileList[0].m_TargetPlatform}"; } else { - Text = $"AssetStudioGUI v{Application.ProductVersion} - no productName - {assetsManager.assetsFileList[0].unityVersion} - {assetsManager.assetsFileList[0].m_TargetPlatform}"; + Text = $"{Application.ProductName} v{Application.ProductVersion} - no productName - {assetsManager.assetsFileList[0].unityVersion} - {assetsManager.assetsFileList[0].m_TargetPlatform}"; } assetListView.VirtualListSize = visibleAssets.Count; @@ -1311,7 +1311,7 @@ namespace AssetStudioGUI private void ResetForm() { - Text = $"AssetStudioGUI v{Application.ProductVersion}"; + Text = $"{Application.ProductName} v{Application.ProductVersion}"; assetsManager.Clear(); assemblyLoader.Clear(); exportableAssets.Clear(); @@ -1815,6 +1815,12 @@ namespace AssetStudioGUI sceneTreeView.EndUpdate(); } + private void aboutToolStripMenuItem_Click(object sender, EventArgs e) + { + var aboutForm = new AboutForm(); + aboutForm.ShowDialog(this); + } + #region FMOD private void FMODinit() { diff --git a/AssetStudioGUI/AssetStudioGUIForm.resx b/AssetStudioGUI/AssetStudioGUIForm.resx index dcce5cf..095950b 100644 --- a/AssetStudioGUI/AssetStudioGUIForm.resx +++ b/AssetStudioGUI/AssetStudioGUIForm.resx @@ -120,9 +120,6 @@ 312, 17 - - 432, 17 - abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWYZ 1234567890.:,;'\"(!?)+-*/= @@ -141,6 +138,9 @@ The quick brown fox jumps over the lazy dog. 1234567890 The quick brown fox jumps over the lazy dog. 1234567890 + + 432, 17 + 775, 21 diff --git a/AssetStudioGUI/Properties/Resources.Designer.cs b/AssetStudioGUI/Properties/Resources.Designer.cs index 82deaf4..28e13a2 100644 --- a/AssetStudioGUI/Properties/Resources.Designer.cs +++ b/AssetStudioGUI/Properties/Resources.Designer.cs @@ -1,10 +1,10 @@ //------------------------------------------------------------------------------ // -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 // -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. // //------------------------------------------------------------------------------ @@ -13,13 +13,13 @@ namespace AssetStudioGUI.Properties { /// - /// 一个强类型的资源类,用于查找本地化的字符串等。 + /// A strongly-typed resource class, for looking up localized strings, etc. /// - // 此类是由 StronglyTypedResourceBuilder - // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 - // 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen - // (以 /str 作为命令选项),或重新生成 VS 项目。 - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { @@ -33,7 +33,7 @@ namespace AssetStudioGUI.Properties { } /// - /// 返回此类使用的缓存的 ResourceManager 实例。 + /// Returns the cached ResourceManager instance used by this class. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] internal static global::System.Resources.ResourceManager ResourceManager { @@ -47,8 +47,8 @@ namespace AssetStudioGUI.Properties { } /// - /// 重写当前线程的 CurrentUICulture 属性,对 - /// 使用此强类型资源类的所有资源查找执行重写。 + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] internal static global::System.Globalization.CultureInfo Culture { @@ -61,7 +61,7 @@ namespace AssetStudioGUI.Properties { } /// - /// 查找类似于 (图标) 的 System.Drawing.Icon 类型的本地化资源。 + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// internal static System.Drawing.Icon _as { get { @@ -71,7 +71,17 @@ namespace AssetStudioGUI.Properties { } /// - /// 查找类似 #version 140 + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap as_logo { + get { + object obj = ResourceManager.GetObject("as_logo", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized string similar to #version 140 /// ///in vec3 normal; /// @@ -86,7 +96,7 @@ namespace AssetStudioGUI.Properties { /// /// vec3 color = nDotProduct * vec3(1, 0.957, 0.839) / 3.14159; /// color += vec3(0.779, 0.716, 0.453) * ContributionWeights.y; - /// color += vec3(0.368, 0.477, 0. [字符串的其余部分被截断]"; 的本地化字符串。 + /// color += vec3(0.368, 0.477, 0.735) * Contribu [rest of string was truncated]";. /// internal static string fs { get { @@ -95,14 +105,14 @@ namespace AssetStudioGUI.Properties { } /// - /// 查找类似 #version 140 + /// Looks up a localized string similar to #version 140 /// ///out vec4 outputColor; /// ///void main() ///{ /// outputColor = vec4(0, 0, 0, 1); - ///} 的本地化字符串。 + ///}. /// internal static string fsBlack { get { @@ -111,7 +121,7 @@ namespace AssetStudioGUI.Properties { } /// - /// 查找类似 #version 140 + /// Looks up a localized string similar to #version 140 /// ///out vec4 outputColor; ///in vec4 color; @@ -119,7 +129,7 @@ namespace AssetStudioGUI.Properties { ///void main() ///{ /// outputColor = color; - ///} 的本地化字符串。 + ///}. /// internal static string fsColor { get { @@ -128,7 +138,7 @@ namespace AssetStudioGUI.Properties { } /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 + /// Looks up a localized resource of type System.Drawing.Bitmap. /// internal static System.Drawing.Bitmap preview { get { @@ -138,7 +148,7 @@ namespace AssetStudioGUI.Properties { } /// - /// 查找类似 #version 140 + /// Looks up a localized string similar to #version 140 /// ///in vec3 vertexPosition; ///in vec3 normalDirection; @@ -155,7 +165,7 @@ namespace AssetStudioGUI.Properties { /// gl_Position = projMatrix * viewMatrix * modelMatrix * vec4(vertexPosition, 1.0); /// normal = normalDirection; /// color = vertexColor; - ///} 的本地化字符串。 + ///}. /// internal static string vs { get { diff --git a/AssetStudioGUI/Properties/Resources.resx b/AssetStudioGUI/Properties/Resources.resx index 5441d15..c0e023e 100644 --- a/AssetStudioGUI/Properties/Resources.resx +++ b/AssetStudioGUI/Properties/Resources.resx @@ -117,6 +117,33 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + #version 140 + +in vec3 vertexPosition; +in vec3 normalDirection; +in vec4 vertexColor; +uniform mat4 modelMatrix; +uniform mat4 viewMatrix; +uniform mat4 projMatrix; + +out vec3 normal; +out vec4 color; + +void main() +{ + gl_Position = projMatrix * viewMatrix * modelMatrix * vec4(vertexPosition, 1.0); + normal = normalDirection; + color = vertexColor; +} + + + + ..\Resources\preview.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\as.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + #version 140 @@ -158,31 +185,7 @@ void main() outputColor = color; } - - - ..\Resources\preview.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - #version 140 - -in vec3 vertexPosition; -in vec3 normalDirection; -in vec4 vertexColor; -uniform mat4 modelMatrix; -uniform mat4 viewMatrix; -uniform mat4 projMatrix; - -out vec3 normal; -out vec4 color; - -void main() -{ - gl_Position = projMatrix * viewMatrix * modelMatrix * vec4(vertexPosition, 1.0); - normal = normalDirection; - color = vertexColor; -} - - - ..\Resources\as.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\as_logo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/AssetStudioGUI/Properties/Settings.Designer.cs b/AssetStudioGUI/Properties/Settings.Designer.cs index bb52046..9ba3bcf 100644 --- a/AssetStudioGUI/Properties/Settings.Designer.cs +++ b/AssetStudioGUI/Properties/Settings.Designer.cs @@ -12,7 +12,7 @@ namespace AssetStudioGUI.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.1.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); diff --git a/AssetStudioGUI/Resources/as_logo.png b/AssetStudioGUI/Resources/as_logo.png new file mode 100644 index 0000000..e82ed26 Binary files /dev/null and b/AssetStudioGUI/Resources/as_logo.png differ diff --git a/LICENSE b/LICENSE index dd7bf91..598799c 100644 --- a/LICENSE +++ b/LICENSE @@ -1,7 +1,8 @@ MIT License Copyright (c) 2016 Radu -Copyright (c) 2016-2020 Perfare +Copyright (c) 2016-2022 Perfare +Copyright (c) 2021-2023 aelurum Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal