diff --git a/OpenFK/ConfigForm.Designer.cs b/OpenFK/ConfigForm.Designer.cs index e2eb2e8..22dffe8 100644 --- a/OpenFK/ConfigForm.Designer.cs +++ b/OpenFK/ConfigForm.Designer.cs @@ -34,6 +34,7 @@ this.ScaleCB = new System.Windows.Forms.ComboBox(); this.ExitButton = new System.Windows.Forms.Button(); this.header = new System.Windows.Forms.Label(); + this.rdfToggle = new System.Windows.Forms.CheckBox(); this.SuspendLayout(); // // QualityCB @@ -43,7 +44,7 @@ "0 - High", "1 - Medium", "2 - Low"}); - this.QualityCB.Location = new System.Drawing.Point(12, 84); + this.QualityCB.Location = new System.Drawing.Point(12, 104); this.QualityCB.Name = "QualityCB"; this.QualityCB.Size = new System.Drawing.Size(121, 21); this.QualityCB.TabIndex = 0; @@ -52,7 +53,7 @@ // customFtoggle // this.customFtoggle.AutoSize = true; - this.customFtoggle.Location = new System.Drawing.Point(12, 38); + this.customFtoggle.Location = new System.Drawing.Point(12, 58); this.customFtoggle.Name = "customFtoggle"; this.customFtoggle.Size = new System.Drawing.Size(66, 17); this.customFtoggle.TabIndex = 1; @@ -63,7 +64,7 @@ // RPCToggle // this.RPCToggle.AutoSize = true; - this.RPCToggle.Location = new System.Drawing.Point(12, 61); + this.RPCToggle.Location = new System.Drawing.Point(12, 81); this.RPCToggle.Name = "RPCToggle"; this.RPCToggle.Size = new System.Drawing.Size(96, 17); this.RPCToggle.TabIndex = 2; @@ -79,7 +80,7 @@ "1 - Crop 4:3", "2 - Stretch 4:3", "3 - Dot by Dot"}); - this.ScaleCB.Location = new System.Drawing.Point(12, 111); + this.ScaleCB.Location = new System.Drawing.Point(12, 131); this.ScaleCB.Name = "ScaleCB"; this.ScaleCB.Size = new System.Drawing.Size(121, 21); this.ScaleCB.TabIndex = 3; @@ -87,7 +88,7 @@ // // ExitButton // - this.ExitButton.Location = new System.Drawing.Point(12, 138); + this.ExitButton.Location = new System.Drawing.Point(12, 158); this.ExitButton.Name = "ExitButton"; this.ExitButton.Size = new System.Drawing.Size(75, 23); this.ExitButton.TabIndex = 4; @@ -104,11 +105,23 @@ this.header.TabIndex = 6; this.header.Text = "OpenFK Config"; // + // rdfToggle + // + this.rdfToggle.AutoSize = true; + this.rdfToggle.Location = new System.Drawing.Point(12, 35); + this.rdfToggle.Name = "rdfToggle"; + this.rdfToggle.Size = new System.Drawing.Size(89, 17); + this.rdfToggle.TabIndex = 7; + this.rdfToggle.Text = "RDF Loading"; + this.rdfToggle.UseVisualStyleBackColor = true; + this.rdfToggle.CheckedChanged += new System.EventHandler(this.rdfToggle_CheckedChanged); + // // ConfigForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(173, 175); + this.ClientSize = new System.Drawing.Size(173, 193); + this.Controls.Add(this.rdfToggle); this.Controls.Add(this.header); this.Controls.Add(this.ExitButton); this.Controls.Add(this.ScaleCB); @@ -132,5 +145,6 @@ private System.Windows.Forms.ComboBox ScaleCB; private System.Windows.Forms.Button ExitButton; private System.Windows.Forms.Label header; + private System.Windows.Forms.CheckBox rdfToggle; } } \ No newline at end of file diff --git a/OpenFK/ConfigForm.cs b/OpenFK/ConfigForm.cs index 239fc91..013db00 100644 --- a/OpenFK/ConfigForm.cs +++ b/OpenFK/ConfigForm.cs @@ -17,6 +17,7 @@ namespace OpenFK InitializeComponent(); customFtoggle.Checked = Properties.Settings.Default.customF; RPCToggle.Checked = Properties.Settings.Default.RPC; + rdfToggle.Checked = Properties.Settings.Default.RDF; QualityCB.SelectedIndex = Properties.Settings.Default.Quality; ScaleCB.SelectedIndex = Properties.Settings.Default.ScaleMode; } @@ -59,5 +60,16 @@ namespace OpenFK { Application.Exit(); } + + private void rdfToggle_CheckedChanged(object sender, EventArgs e) + { + if (rdfToggle.Checked) + { + Properties.Settings.Default.RDF = true; + } + else + Properties.Settings.Default.RDF = false; + Properties.Settings.Default.Save(); + } } } diff --git a/OpenFK/Form1.cs b/OpenFK/Form1.cs index f4841d2..9e48932 100644 --- a/OpenFK/Form1.cs +++ b/OpenFK/Form1.cs @@ -242,7 +242,13 @@ namespace OpenFK { Directory.CreateDirectory(Directory.GetCurrentDirectory() + @"\data\" + foldername); } - File.WriteAllText(Directory.GetCurrentDirectory() + @"\data\" + foldername + @"\" + filename + ".xml", output.ToString()); //saves + if (Settings.Default.RDF == true) + { + Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1"); + byte[] RDFData = iso_8859_1.GetBytes(output.ToString()); + File.WriteAllBytes(Directory.GetCurrentDirectory() + @"\data\" + foldername + @"\" + filename + ".rdf", iso_8859_1.GetBytes(RDFTool.encode(iso_8859_1.GetString(RDFData)))); + } + else File.WriteAllText(Directory.GetCurrentDirectory() + @"\data\" + foldername + @"\" + filename + ".xml", output.ToString()); //saves } } @@ -379,9 +385,15 @@ namespace OpenFK public void loadFile(string file, string folder) { - string index = @"" + File.ReadAllText(Directory.GetCurrentDirectory() + @"\data\"+ folder + @"\" + file + ".xml") + @""; //Puts XML file to string + Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1"); + string index = ""; + if (Settings.Default.RDF == true) + { + byte[] RDFData = File.ReadAllBytes(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".rdf"); + index = @"" + RDFTool.decode(iso_8859_1.GetString(RDFData)) + @""; //Puts RDF file to string + }else index = @"" + File.ReadAllText(Directory.GetCurrentDirectory() + @"\data\" + folder + @"\" + file + ".xml") + @""; //Puts XML file to string setVar(index.ToString()); //Sends XML data to the game - Debug.WriteLine("RDF - Sent " + file + ".xml"); //Debug Output + Debug.WriteLine("RDF - Sent " + file); //Debug Output } // diff --git a/OpenFK/OpenFK.csproj b/OpenFK/OpenFK.csproj index 0dd5f9e..5d8726d 100644 --- a/OpenFK/OpenFK.csproj +++ b/OpenFK/OpenFK.csproj @@ -29,7 +29,7 @@ 8.0 - x64 + x86 none true bin\Release\ @@ -120,6 +120,7 @@ + ConfigForm.cs diff --git a/OpenFK/Properties/Settings.Designer.cs b/OpenFK/Properties/Settings.Designer.cs index 6c4974c..66969a7 100644 --- a/OpenFK/Properties/Settings.Designer.cs +++ b/OpenFK/Properties/Settings.Designer.cs @@ -25,7 +25,7 @@ namespace OpenFK.Properties { [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] + [global::System.Configuration.DefaultSettingValueAttribute("True")] public bool customF { get { return ((bool)(this["customF"])); @@ -70,5 +70,17 @@ namespace OpenFK.Properties { this["ScaleMode"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool RDF { + get { + return ((bool)(this["RDF"])); + } + set { + this["RDF"] = value; + } + } } } diff --git a/OpenFK/Properties/Settings.settings b/OpenFK/Properties/Settings.settings index 333ebca..a9eacc2 100644 --- a/OpenFK/Properties/Settings.settings +++ b/OpenFK/Properties/Settings.settings @@ -3,7 +3,7 @@ - False + True False @@ -14,5 +14,8 @@ 0 + + True + \ No newline at end of file diff --git a/OpenFK/RDFTool.cs b/OpenFK/RDFTool.cs new file mode 100644 index 0000000..8d7b18f --- /dev/null +++ b/OpenFK/RDFTool.cs @@ -0,0 +1,109 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace OpenFK +{ + class RDFTool + { + private static char[] code = new char[] { (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF }; + + /// + /// the column to roll + /// + private static char[][] col = new char[][] + { + new char[] {(char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB}, + new char[] {(char)0x32, (char)0x33, (char)0x30, (char)0x31, (char)0x36, (char)0x37, (char)0x34, (char)0x35, (char)0x3A, (char)0x3B, (char)0x38, (char)0x39, (char)0x3E, (char)0x3F, (char)0x3C, (char)0x3D, (char)0x22, (char)0x23, (char)0x20, (char)0x21, (char)0x26, (char)0x27, (char)0x24, (char)0x25, (char)0x2A, (char)0x2B, (char)0x28, (char)0x29, (char)0x2E, (char)0x2F, (char)0x2C, (char)0x2D, (char)0x12, (char)0x13, (char)0x10, (char)0x11, (char)0x16, (char)0x17, (char)0x14, (char)0x15, (char)0x1A, (char)0x1B, (char)0x18, (char)0x19, (char)0x1E, (char)0x1F, (char)0x1C, (char)0x1D, (char)0x02, (char)0x03, (char)0x00, (char)0x01, (char)0x06, (char)0x07, (char)0x04, (char)0x05, (char)0x0A, (char)0x0B, (char)0x08, (char)0x09, (char)0x0E, (char)0x0F, (char)0x0C, (char)0x0D, (char)0x72, (char)0x73, (char)0x70, (char)0x71, (char)0x76, (char)0x77, (char)0x74, (char)0x75, (char)0x7A, (char)0x7B, (char)0x78, (char)0x79, (char)0x7E, (char)0x7F, (char)0x7C, (char)0x7D, (char)0x62, (char)0x63, (char)0x60, (char)0x61, (char)0x66, (char)0x67, (char)0x64, (char)0x65, (char)0x6A, (char)0x6B, (char)0x68, (char)0x69, (char)0x6E, (char)0x6F, (char)0x6C, (char)0x6D, (char)0x52, (char)0x53, (char)0x50, (char)0x51, (char)0x56, (char)0x57, (char)0x54, (char)0x55, (char)0x5A, (char)0x5B, (char)0x58, (char)0x59, (char)0x5E, (char)0x5F, (char)0x5C, (char)0x5D, (char)0x42, (char)0x43, (char)0x40, (char)0x41, (char)0x46, (char)0x47, (char)0x44, (char)0x45, (char)0x4A, (char)0x4B, (char)0x48, (char)0x49, (char)0x4E, (char)0x4F, (char)0x4C, (char)0x4D, (char)0xF2, (char)0xF3, (char)0xF0, (char)0xF1, (char)0xF6, (char)0xF7, (char)0xF4, (char)0xF5, (char)0xFA, (char)0xFB, (char)0xF8, (char)0xF9, (char)0xFE, (char)0xFF, (char)0xFC, (char)0xFD, (char)0xE2, (char)0xE3, (char)0xE0, (char)0xE1, (char)0xE6, (char)0xE7, (char)0xE4, (char)0xE5, (char)0xEA, (char)0xEB, (char)0xE8, (char)0xE9, (char)0xEE, (char)0xEF, (char)0xEC, (char)0xED, (char)0xD2, (char)0xD3, (char)0xD0, (char)0xD1, (char)0xD6, (char)0xD7, (char)0xD4, (char)0xD5, (char)0xDA, (char)0xDB, (char)0xD8, (char)0xD9, (char)0xDE, (char)0xDF, (char)0xDC, (char)0xDD, (char)0xC2, (char)0xC3, (char)0xC0, (char)0xC1, (char)0xC6, (char)0xC7, (char)0xC4, (char)0xC5, (char)0xCA, (char)0xCB, (char)0xC8, (char)0xC9, (char)0xCE, (char)0xCF, (char)0xCC, (char)0xCD, (char)0xB2, (char)0xB3, (char)0xB0, (char)0xB1, (char)0xB6, (char)0xB7, (char)0xB4, (char)0xB5, (char)0xBA, (char)0xBB, (char)0xB8, (char)0xB9, (char)0xBE, (char)0xBF, (char)0xBC, (char)0xBD, (char)0xA2, (char)0xA3, (char)0xA0, (char)0xA1, (char)0xA6, (char)0xA7, (char)0xA4, (char)0xA5, (char)0xAA, (char)0xAB, (char)0xA8, (char)0xA9, (char)0xAE, (char)0xAF, (char)0xAC, (char)0xAD, (char)0x92, (char)0x93, (char)0x90, (char)0x91, (char)0x96, (char)0x97, (char)0x94, (char)0x95, (char)0x9A, (char)0x9B, (char)0x98, (char)0x99, (char)0x9E, (char)0x9F, (char)0x9C, (char)0x9D, (char)0x82, (char)0x83, (char)0x80, (char)0x81, (char)0x86, (char)0x87, (char)0x84, (char)0x85, (char)0x8A, (char)0x8B, (char)0x88, (char)0x89, (char)0x8E, (char)0x8F, (char)0x8C, (char)0x8D}, + new char[] {(char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x34, (char)0x35, (char)0x36, (char)0x37, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xDC, (char)0xDE, (char)0xDF, (char)0xDF, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3}, + new char[] {(char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A}, + new char[] {(char)0x88, (char)0x89, (char)0x8A, (char)0x8B, (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F, (char)0x80, (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87, (char)0x98, (char)0x99, (char)0x9A, (char)0x9B, (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F, (char)0x90, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96, (char)0x97, (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF, (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7, (char)0xB8, (char)0xB9, (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD, (char)0xBE, (char)0xBF, (char)0xB0, (char)0xB1, (char)0xB2, (char)0xB3, (char)0xB4, (char)0xB5, (char)0xB6, (char)0xB7, (char)0xC8, (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC, (char)0xCD, (char)0xCE, (char)0xCF, (char)0xC0, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7, (char)0xD8, (char)0xD9, (char)0xDA, (char)0xDB, (char)0xDC, (char)0xDD, (char)0xDE, (char)0xDF, (char)0xD0, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6, (char)0xD7, (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF, (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7, (char)0xF8, (char)0xF9, (char)0xFA, (char)0xFB, (char)0xFC, (char)0xFD, (char)0xFE, (char)0xFF, (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7, (char)0x48, (char)0x49, (char)0x4A, (char)0x4B, (char)0x4C, (char)0x4D, (char)0x4E, (char)0x4F, (char)0x40, (char)0x41, (char)0x42, (char)0x43, (char)0x44, (char)0x45, (char)0x46, (char)0x47, (char)0x58, (char)0x59, (char)0x5A, (char)0x5B, (char)0x5C, (char)0x5D, (char)0x5E, (char)0x5F, (char)0x50, (char)0x51, (char)0x52, (char)0x53, (char)0x54, (char)0x55, (char)0x56, (char)0x57, (char)0x68, (char)0x69, (char)0x6A, (char)0x6B, (char)0x6C, (char)0x6D, (char)0x6E, (char)0x6F, (char)0x60, (char)0x61, (char)0x62, (char)0x63, (char)0x64, (char)0x65, (char)0x66, (char)0x67, (char)0x78, (char)0x79, (char)0x7A, (char)0x7B, (char)0x7C, (char)0x7D, (char)0x7E, (char)0x7F, (char)0x70, (char)0x71, (char)0x72, (char)0x73, (char)0x74, (char)0x75, (char)0x76, (char)0x77, (char)0x08, (char)0x09, (char)0x0A, (char)0x0B, (char)0x0C, (char)0x0D, (char)0x0E, (char)0x0F, (char)0x00, (char)0x01, (char)0x02, (char)0x03, (char)0x04, (char)0x05, (char)0x06, (char)0x07, (char)0x18, (char)0x19, (char)0x1A, (char)0x1B, (char)0x1C, (char)0x1D, (char)0x1E, (char)0x1F, (char)0x10, (char)0x11, (char)0x12, (char)0x13, (char)0x14, (char)0x15, (char)0x16, (char)0x17, (char)0x28, (char)0x29, (char)0x2A, (char)0x2B, (char)0x2C, (char)0x2D, (char)0x2E, (char)0x2F, (char)0x20, (char)0x21, (char)0x22, (char)0x23, (char)0x24, (char)0x25, (char)0x26, (char)0x27, (char)0x38, (char)0x39, (char)0x3A, (char)0x3B, (char)0x3C, (char)0x3D, (char)0x3E, (char)0x3F, (char)0x30, (char)0x31, (char)0x32, (char)0x33, (char)0x34, (char)0x35, (char)0x36, (char)0x37}, + new char[] {(char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6}, + new char[] {(char)0x7F, (char)0x7E, (char)0x7D, (char)0x7C, (char)0x7B, (char)0x7A, (char)0x79, (char)0x78, (char)0x77, (char)0x76, (char)0x75, (char)0x74, (char)0x73, (char)0x72, (char)0x71, (char)0x70, (char)0x6F, (char)0x6E, (char)0x6D, (char)0x6C, (char)0x6B, (char)0x6A, (char)0x69, (char)0x68, (char)0x67, (char)0x66, (char)0x65, (char)0x64, (char)0x63, (char)0x62, (char)0x61, (char)0x60, (char)0x5F, (char)0x5E, (char)0x5D, (char)0x5C, (char)0x5B, (char)0x5A, (char)0x59, (char)0x58, (char)0x57, (char)0x56, (char)0x55, (char)0x54, (char)0x53, (char)0x52, (char)0x51, (char)0x50, (char)0x4F, (char)0x4E, (char)0x4D, (char)0x4C, (char)0x4B, (char)0x4A, (char)0x49, (char)0x48, (char)0x47, (char)0x46, (char)0x45, (char)0x44, (char)0x43, (char)0x42, (char)0x41, (char)0x40, (char)0x3F, (char)0x3E, (char)0x3D, (char)0x3C, (char)0x3B, (char)0x3A, (char)0x39, (char)0x38, (char)0x37, (char)0x36, (char)0x35, (char)0x34, (char)0x33, (char)0x32, (char)0x31, (char)0x30, (char)0x2F, (char)0x2E, (char)0x2D, (char)0x2C, (char)0x2B, (char)0x2A, (char)0x29, (char)0x28, (char)0x27, (char)0x26, (char)0x25, (char)0x24, (char)0x23, (char)0x22, (char)0x21, (char)0x20, (char)0x1F, (char)0x1E, (char)0x1D, (char)0x1C, (char)0x1B, (char)0x1A, (char)0x19, (char)0x18, (char)0x17, (char)0x16, (char)0x15, (char)0x14, (char)0x13, (char)0x12, (char)0x11, (char)0x10, (char)0x0F, (char)0x0E, (char)0x0D, (char)0x0C, (char)0x0B, (char)0x0A, (char)0x09, (char)0x08, (char)0x07, (char)0x06, (char)0x05, (char)0x04, (char)0x03, (char)0x02, (char)0x01, (char)0x00, (char)0xBF, (char)0xBE, (char)0xBD, (char)0xBC, (char)0xBB, (char)0xBA, (char)0xB9, (char)0xB8, (char)0xB7, (char)0xB6, (char)0xB5, (char)0xB4, (char)0xB3, (char)0xB2, (char)0xB1, (char)0xB0, (char)0xAF, (char)0xAE, (char)0xAD, (char)0xAC, (char)0xAB, (char)0xAA, (char)0xA9, (char)0xA8, (char)0xA7, (char)0xA6, (char)0xA5, (char)0xA4, (char)0xA3, (char)0xA2, (char)0xA1, (char)0xA0, (char)0x9F, (char)0x9E, (char)0x9D, (char)0x9C, (char)0x9B, (char)0x9A, (char)0x99, (char)0x98, (char)0x97, (char)0x96, (char)0x95, (char)0x94, (char)0x93, (char)0x92, (char)0x91, (char)0x90, (char)0x8F, (char)0x8E, (char)0x8D, (char)0x8C, (char)0x8B, (char)0x8A, (char)0x89, (char)0x88, (char)0x87, (char)0x86, (char)0x85, (char)0x84, (char)0x83, (char)0x82, (char)0x81, (char)0x80, (char)0xFF, (char)0xFE, (char)0xFD, (char)0xFC, (char)0xFB, (char)0xFA, (char)0xF9, (char)0xF8, (char)0xF7, (char)0xF6, (char)0xF5, (char)0xF4, (char)0xF3, (char)0xF2, (char)0xF1, (char)0xF0, (char)0xEF, (char)0xEE, (char)0xED, (char)0xEC, (char)0xEB, (char)0xEA, (char)0xE9, (char)0xE8, (char)0xE7, (char)0xE6, (char)0xE5, (char)0xE4, (char)0xE3, (char)0xE2, (char)0xE1, (char)0xE0, (char)0xDF, (char)0xDE, (char)0xDD, (char)0xDC, (char)0xDB, (char)0xDA, (char)0xD9, (char)0xD8, (char)0xD7, (char)0xD6, (char)0xD5, (char)0xD4, (char)0xD3, (char)0xD2, (char)0xD1, (char)0xD0, (char)0xCF, (char)0xCE, (char)0xCD, (char)0xCC, (char)0xCB, (char)0xCA, (char)0xC9, (char)0xC8, (char)0xC7, (char)0xC6, (char)0xC5, (char)0xC4, (char)0xC3, (char)0xC2, (char)0xC1, (char)0xC0}, + new char[] {(char)0x95, (char)0x94, (char)0x97, (char)0x96, (char)0x91, (char)0x90, (char)0x93, (char)0x92, (char)0x9D, (char)0x9C, (char)0x9F, (char)0x9E, (char)0x99, (char)0x98, (char)0x9B, (char)0x9A, (char)0x85, (char)0x84, (char)0x87, (char)0x86, (char)0x81, (char)0x80, (char)0x83, (char)0x82, (char)0x8D, (char)0x8C, (char)0x8F, (char)0x8E, (char)0x89, (char)0x88, (char)0x8B, (char)0x8A, (char)0xB5, (char)0xB4, (char)0xB7, (char)0xB6, (char)0xB1, (char)0xB0, (char)0xB3, (char)0xB2, (char)0xBD, (char)0xBC, (char)0xBF, (char)0xBE, (char)0xB9, (char)0xB8, (char)0xBB, (char)0xBA, (char)0xA5, (char)0xA4, (char)0xA7, (char)0xA6, (char)0xA1, (char)0xA0, (char)0xA3, (char)0xA2, (char)0xAD, (char)0xAC, (char)0xAF, (char)0xAE, (char)0xA9, (char)0xA8, (char)0xAB, (char)0xAA, (char)0xD5, (char)0xD4, (char)0xD7, (char)0xD6, (char)0xD1, (char)0xD0, (char)0xD3, (char)0xD2, (char)0xDD, (char)0xDC, (char)0xDF, (char)0xDE, (char)0xD9, (char)0xD8, (char)0xDB, (char)0xDA, (char)0xC5, (char)0xC4, (char)0xC7, (char)0xC6, (char)0xC1, (char)0xC0, (char)0xC3, (char)0xC2, (char)0xCD, (char)0xCC, (char)0xCF, (char)0xCE, (char)0xC9, (char)0xC8, (char)0xCB, (char)0xCA, (char)0xF5, (char)0xF4, (char)0xF7, (char)0xF6, (char)0xF1, (char)0xF0, (char)0xF3, (char)0xF2, (char)0xFD, (char)0xFC, (char)0xFF, (char)0xFE, (char)0xF9, (char)0xF8, (char)0xFB, (char)0xFA, (char)0xE5, (char)0xE4, (char)0xE7, (char)0xE6, (char)0xE1, (char)0xE0, (char)0xE3, (char)0xE2, (char)0xED, (char)0xEC, (char)0xEF, (char)0xEE, (char)0xE9, (char)0xE8, (char)0xEB, (char)0xEA, (char)0x55, (char)0x54, (char)0x57, (char)0x56, (char)0x51, (char)0x50, (char)0x53, (char)0x52, (char)0x5D, (char)0x5C, (char)0x5F, (char)0x5E, (char)0x59, (char)0x58, (char)0x5B, (char)0x5A, (char)0x45, (char)0x44, (char)0x47, (char)0x46, (char)0x41, (char)0x40, (char)0x43, (char)0x42, (char)0x4D, (char)0x4C, (char)0x4F, (char)0x4E, (char)0x49, (char)0x48, (char)0x4B, (char)0x4A, (char)0x75, (char)0x74, (char)0x77, (char)0x76, (char)0x71, (char)0x70, (char)0x73, (char)0x72, (char)0x7D, (char)0x7C, (char)0x7F, (char)0x7E, (char)0x79, (char)0x78, (char)0x7B, (char)0x7A, (char)0x65, (char)0x64, (char)0x67, (char)0x66, (char)0x61, (char)0x60, (char)0x63, (char)0x62, (char)0x6D, (char)0x6C, (char)0x6F, (char)0x6E, (char)0x69, (char)0x68, (char)0x6B, (char)0x6A, (char)0x15, (char)0x14, (char)0x17, (char)0x16, (char)0x11, (char)0x10, (char)0x13, (char)0x12, (char)0x1D, (char)0x1C, (char)0x1F, (char)0x1E, (char)0x19, (char)0x18, (char)0x1B, (char)0x1A, (char)0x05, (char)0x04, (char)0x07, (char)0x06, (char)0x01, (char)0x00, (char)0x03, (char)0x02, (char)0x0D, (char)0x0C, (char)0x0F, (char)0x0E, (char)0x09, (char)0x08, (char)0x0B, (char)0x0A, (char)0x35, (char)0x34, (char)0x37, (char)0x36, (char)0x31, (char)0x30, (char)0x33, (char)0x32, (char)0x3D, (char)0x3C, (char)0x3F, (char)0x3E, (char)0x39, (char)0x38, (char)0x3B, (char)0x3A, (char)0x25, (char)0x24, (char)0x27, (char)0x26, (char)0x21, (char)0x20, (char)0x23, (char)0x22, (char)0x2D, (char)0x2C, (char)0x2F, (char)0x2E, (char)0x29, (char)0x28, (char)0x2B, (char)0x2A} + }; + + /// + /// the endings for each column + /// + private static char[][] end = new char[][] + { + new char[] {(char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x8B}, + new char[] {(char)0x32, (char)0x6C, (char)0xE5, (char)0x8C}, + new char[] {(char)0x6C, (char)0xE5, (char)0x8D}, + new char[] {(char)0xE5, (char)0x8E}, + new char[] {(char)0x8F}, + new char[] {(char)0x79, (char)0x7F, (char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88}, + new char[] {(char)0x7F, (char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88}, + new char[] {(char)0x95, (char)0x44, (char)0x32, (char)0x6C, (char)0xE5, (char)0x88} + }; + + /// + /// the start of each column + /// + private static char[] start = new char[] { (char)0xFF, (char)0x00, (char)0xFF, (char)0xAC, (char)0xEB, (char)0x96, (char)0xC4, (char)0x2A }; + + public static string decode(string encoded) + { + int currentCol = 0; + char[] arr = encoded.ToCharArray(); + char[] ret = new char[arr.Length]; + int pos = 0; + int endchar = 0; + foreach (char character in arr) + { + for (int i = 0; i < 256; i++) + { + if (col[currentCol][i] == character) + { + ret[pos++] = code[i]; + if (code[i] == (char)0x3E) + { + endchar = pos; + } + break; + } + } + currentCol++; + if (currentCol > 7) + { + currentCol = 0; + } + } + + return new string(ret).Substring(start.Length, endchar - start.Length); + + } + + public static string encode(string decoded) + { + Encoding iso_8859_1 = Encoding.GetEncoding("iso-8859-1"); + int currentCol = 0; + char[] arr = decoded.ToCharArray(); + char[] ret = new char[arr.Length]; + int pos = 0; + foreach (char character in arr) + { + for (int i = 0; i < 256; i++) + { + if (code[i] == character) + { + ret[pos++] = col[currentCol][i]; + break; + } + } + currentCol++; + if (currentCol > 7) + { + currentCol = 0; + } + } + return new string(iso_8859_1.GetChars(iso_8859_1.GetBytes(new string(start) + new string(ret) + new string(end[currentCol])))); + } + + + } + +} diff --git a/OpenFK/app.config b/OpenFK/app.config index a4f7978..b1b8fe1 100644 --- a/OpenFK/app.config +++ b/OpenFK/app.config @@ -8,7 +8,7 @@ - False + True False @@ -19,6 +19,9 @@ 0 + + True +