public static void Main()
        {
            System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;

            CodePoint.LoadUnicodeData();

            const int BUFFER_SIZE = 500 * 1024;

            using (StreamWriter writer = new StreamWriter(File.Create("GeneratedDILSupportFunctions.js", BUFFER_SIZE, FileOptions.SequentialScan), Encoding.UTF8, BUFFER_SIZE))
            {
                const string GENERATEDCODE_START = "/**** GENERATED CODE STARTS HERE ****/";
                const string GENERATEDCODE_END   = "/**** GENERATED CODE ENDS HERE ****/";

                writer.AutoFlush = false;

                writer.WriteLine(writer.NewLine);

                writer.WriteLine(GENERATEDCODE_START);
                GeneratePatterns(writer);
                writer.WriteLine(GENERATEDCODE_END);

                writer.WriteLine(writer.NewLine);
                writer.WriteLine(writer.NewLine);

                writer.WriteLine(GENERATEDCODE_START);
                GenerateUppercaseMappings(writer);
                writer.WriteLine(GENERATEDCODE_END);
            }
        }