Exemplo n.º 1
0
 /// <summary>
 /// Returns all the texts found inside a given paragraph.
 /// </summary>
 /// <remarks>
 /// If all A.Text in the given paragraph are empty, returns an empty string.
 /// </remarks>
 internal static string GetTexts(A.Paragraph p)
 {
     StringBuilder concat = new StringBuilder();
     foreach (A.Text t in p.Descendants<A.Text>())
     {
         concat.Append(t.Text);
     }
     return concat.ToString();
 }
Exemplo n.º 2
0
        internal static SLThemeColorIndexValues TranslateSchemeColorValue(A.SchemeColorValues Color)
        {
            SLThemeColorIndexValues theme = SLThemeColorIndexValues.Dark1Color;

            switch (Color)
            {
                case A.SchemeColorValues.Accent1:
                    theme = SLThemeColorIndexValues.Accent1Color;
                    break;
                case A.SchemeColorValues.Accent2:
                    theme = SLThemeColorIndexValues.Accent2Color;
                    break;
                case A.SchemeColorValues.Accent3:
                    theme = SLThemeColorIndexValues.Accent3Color;
                    break;
                case A.SchemeColorValues.Accent4:
                    theme = SLThemeColorIndexValues.Accent4Color;
                    break;
                case A.SchemeColorValues.Accent5:
                    theme = SLThemeColorIndexValues.Accent5Color;
                    break;
                case A.SchemeColorValues.Accent6:
                    theme = SLThemeColorIndexValues.Accent6Color;
                    break;
                case A.SchemeColorValues.Background1:
                    theme = SLThemeColorIndexValues.Light1Color;
                    break;
                case A.SchemeColorValues.Background2:
                    theme = SLThemeColorIndexValues.Light2Color;
                    break;
                case A.SchemeColorValues.Dark1:
                    theme = SLThemeColorIndexValues.Dark1Color;
                    break;
                case A.SchemeColorValues.Dark2:
                    theme = SLThemeColorIndexValues.Dark2Color;
                    break;
                case A.SchemeColorValues.FollowedHyperlink:
                    theme = SLThemeColorIndexValues.FollowedHyperlinkColor;
                    break;
                case A.SchemeColorValues.Hyperlink:
                    theme = SLThemeColorIndexValues.Hyperlink;
                    break;
                case A.SchemeColorValues.Light1:
                    theme = SLThemeColorIndexValues.Light1Color;
                    break;
                case A.SchemeColorValues.Light2:
                    theme = SLThemeColorIndexValues.Light2Color;
                    break;
                case A.SchemeColorValues.PhColor:
                    // I don't know what this...
                    theme = SLThemeColorIndexValues.Dark1Color;
                    break;
                case A.SchemeColorValues.Text1:
                    theme = SLThemeColorIndexValues.Dark1Color;
                    break;
                case A.SchemeColorValues.Text2:
                    theme = SLThemeColorIndexValues.Dark2Color;
                    break;
            }

            return theme;
        }
Exemplo n.º 3
0
        internal static System.Drawing.Bitmap GetVmlPatternFill(A.PresetPatternValues Preset)
        {
            // why did I generate the bitmap instead of cramping images as resources?
            // Because I don't wanna get sued by Microsoft. Even if the image files aren't copyrighted.
            // Even if I didn't use the original image files and painstakingly recreated them.
            // So I use a proxy, by generating them in-program instead.

            // Generating textures for use in a program during run-time? I feel like part
            // of the demoscene already. :)

            // Note that for 6 of the textures, I don't know what Microsoft Excel renders for them.
            // Even Microsoft Excel doesn't render them.
            // They are Cross, DiagonalCross, DownwardDiagonal, Horizontal, UpwardDiagonal and Vertical.
            // So why does PresetPatternValues enumeration have them? I don't know. Ask Microsoft.
            // So what happens is I generate my own version.
            // Oh relax, on the Excel user interface, these 6 options aren't available.
            // So you won't (probably) be subjected to my artistic talents.

            // Uh so how did I get these pixel values? Exercise, eating lots of vegetables,
            // and tons of painstakingly hard work. Hint: it involves writing code to process
            // image files and turn them into case statements. Then pasting said code case
            // statements here.
            // You think I'm gonna type them out with SetPixel()? Don't be ridiculous.

            System.Drawing.Bitmap bm = new System.Drawing.Bitmap(8, 8);

            switch (Preset)
            {
                case A.PresetPatternValues.Cross:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DarkDownwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.DarkHorizontal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DarkUpwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.DarkVertical:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DashedDownwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DashedHorizontal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DashedUpwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DashedVertical:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DiagonalBrick:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.DiagonalCross:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Divot:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DotGrid:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DottedDiamond:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.DownwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Horizontal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.HorizontalBrick:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.LargeCheck:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.LargeConfetti:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.LargeGrid:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.LightDownwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.LightHorizontal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.LightUpwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.LightVertical:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.NarrowHorizontal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.NarrowVertical:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.OpenDiamond:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent10:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Percent20:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Percent25:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Percent30:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent40:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent5:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Percent50:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent60:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent70:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent75:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent80:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Percent90:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.Plaid:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Shingle:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.SmallCheck:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.SmallConfetti:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.SmallGrid:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.SolidDiamond:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Sphere:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Trellis:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.UpwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Vertical:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Wave:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
                case A.PresetPatternValues.Weave:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.WideDownwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.WideUpwardDiagonal:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    break;
                case A.PresetPatternValues.ZigZag:
                    bm = new System.Drawing.Bitmap(8, 8);
                    bm.SetPixel(0, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(0, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(0, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(1, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(1, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(2, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(2, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(3, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(3, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 3, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(4, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(4, 7, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 2, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(5, 6, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(5, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 0, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 1, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 4, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 5, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(6, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(6, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 0, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 1, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 2, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 3, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 4, System.Drawing.Color.FromArgb(255, 255, 255, 255));
                    bm.SetPixel(7, 5, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 6, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    bm.SetPixel(7, 7, System.Drawing.Color.FromArgb(255, 0, 0, 0));
                    break;
            }

            return bm;
        }
Exemplo n.º 4
0
        /// <summary>
        /// Replaces a tag inside a paragraph (a:p).
        /// </summary>
        /// <param name="p">The paragraph (a:p).</param>
        /// <param name="tag">The tag to replace by newText, if null or empty do nothing; tag is a regex string.</param>
        /// <param name="newText">The new text to replace the tag with, if null replaced by empty string.</param>
        /// <returns><c>true</c> if a tag has been found and replaced, <c>false</c> otherwise.</returns>
        internal static bool ReplaceTag(A.Paragraph p, string tag, string newText)
        {
            bool replaced = false;

            if (string.IsNullOrEmpty(tag))
            {
                return replaced;
            }

            if (newText == null)
            {
                newText = string.Empty;
            }
            newText = RemoveInvalidXMLChars(newText);

            while (true)
            {
                // Search for the tag
                Match match = Regex.Match(GetTexts(p), tag);
                if (!match.Success)
                {
                    break;
                }

                replaced = true;

                List<TextIndex> texts = GetTextIndexList(p);

                for (int i = 0; i < texts.Count; i++)
                {
                    TextIndex text = texts[i];
                    if (match.Index >= text.StartIndex && match.Index <= text.EndIndex)
                    {
                        // Got the right A.Text

                        int index = match.Index - text.StartIndex;
                        int done = 0;

                        for (; i < texts.Count; i++)
                        {
                            TextIndex currentText = texts[i];
                            List<char> currentTextChars = new List<char>(currentText.Text.Text.ToCharArray());

                            for (int k = index; k < currentTextChars.Count; k++, done++)
                            {
                                if (done < newText.Length)
                                {
                                    if (done >= tag.Length - 1)
                                    {
                                        // Case if newText is longer than the tag
                                        // Insert characters
                                        int remains = newText.Length - done;
                                        currentTextChars.RemoveAt(k);
                                        currentTextChars.InsertRange(k, newText.Substring(done, remains));
                                        done += remains;
                                        break;
                                    }
                                    else
                                    {
                                        currentTextChars[k] = newText[done];
                                    }
                                }
                                else
                                {
                                    if (done < tag.Length)
                                    {
                                        // Case if newText is shorter than the tag
                                        // Erase characters
                                        int remains = tag.Length - done;
                                        if (remains > currentTextChars.Count - k)
                                        {
                                            remains = currentTextChars.Count - k;
                                        }
                                        currentTextChars.RemoveRange(k, remains);
                                        done += remains;
                                        break;
                                    }
                                    else
                                    {
                                        // Regular case, nothing to do
                                        //currentTextChars[k] = currentTextChars[k];
                                    }
                                }
                            }

                            currentText.Text.Text = new string(currentTextChars.ToArray());
                            index = 0;
                        }
                    }
                }
            }

            return replaced;
        }
Exemplo n.º 5
0
 /// <summary>
 /// Helper method.
 /// </summary>
 private static int CellsCount(A.Table tbl)
 {
     return tbl.Descendants<A.TableCell>().Count();
 }
Exemplo n.º 6
0
 /// <summary>
 /// Set line arrow tail settings. This only makes sense for lines and not border lines.
 /// </summary>
 /// <param name="TailType">The arrow tail type.</param>
 /// <param name="TailSize">The arrow tail size.</param>
 public void SetArrowTail(A.LineEndValues TailType, SLLineSizeValues TailSize)
 {
     this.TailEndType = TailType;
     this.TailEndSize = TailSize;
 }
Exemplo n.º 7
0
 /// <summary>
 /// Set the bottom bevel.
 /// </summary>
 /// <param name="BevelPreset">The bevel type.</param>
 /// <param name="Width">Bevel width ranging from 0 pt to 2147483647 pt. However, a suggested maximum is 1584 pt. Accurate to 1/12700 of a point.</param>
 /// <param name="Height">Bevel height ranging from 0 pt to 2147483647 pt. However, a suggested maximum is 1584 pt. Accurate to 1/12700 of a point.</param>
 public void SetBevelBottom(A.BevelPresetValues BevelPreset, decimal Width, decimal Height)
 {
     this.vBevelBottomPreset = BevelPreset;
     this.BevelBottomWidth = Width;
     this.BevelBottomHeight = Height;
     this.bHasBevelBottom = true;
 }
        internal void SetColor(A.SchemeColorValues Color, decimal Tint, decimal Transparency)
        {
            this.IsRgbColorModelHex = false;

            this.SchemeColor = Color;

            int iThemeColor = (int)SLThemeColorIndexValues.Dark1Color;
            switch (Color)
            {
                // I don't really know what to assign for Text1, Text2, Background1, Background2
                // PhClr (placeholder colour)
                case A.SchemeColorValues.Dark1:
                case A.SchemeColorValues.Text1:
                    iThemeColor = (int)SLThemeColorIndexValues.Dark1Color;
                    break;
                case A.SchemeColorValues.Light1:
                case A.SchemeColorValues.Background1:
                    iThemeColor = (int)SLThemeColorIndexValues.Light1Color;
                    break;
                case A.SchemeColorValues.Dark2:
                case A.SchemeColorValues.Text2:
                    iThemeColor = (int)SLThemeColorIndexValues.Dark2Color;
                    break;
                case A.SchemeColorValues.Light2:
                case A.SchemeColorValues.Background2:
                    iThemeColor = (int)SLThemeColorIndexValues.Light2Color;
                    break;
                case A.SchemeColorValues.PhColor:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent1Color;
                    break;
                case A.SchemeColorValues.Accent1:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent1Color;
                    break;
                case A.SchemeColorValues.Accent2:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent2Color;
                    break;
                case A.SchemeColorValues.Accent3:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent3Color;
                    break;
                case A.SchemeColorValues.Accent4:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent4Color;
                    break;
                case A.SchemeColorValues.Accent5:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent5Color;
                    break;
                case A.SchemeColorValues.Accent6:
                    iThemeColor = (int)SLThemeColorIndexValues.Accent6Color;
                    break;
                case A.SchemeColorValues.Hyperlink:
                    iThemeColor = (int)SLThemeColorIndexValues.Hyperlink;
                    break;
                case A.SchemeColorValues.FollowedHyperlink:
                    iThemeColor = (int)SLThemeColorIndexValues.FollowedHyperlinkColor;
                    break;
            }
            this.Tint = Tint;
            this.Transparency = Transparency;

            int index = iThemeColor;
            if (index >= 0 && index < this.listThemeColors.Count)
            {
                this.clrDisplayColor = System.Drawing.Color.FromArgb(255, this.listThemeColors[index]);
                if (this.Tint != 0)
                {
                    this.clrDisplayColor = SLTool.ToColor(this.clrDisplayColor, (double)Tint);
                }
            }
        }
Exemplo n.º 9
0
        private bool IsPerspectiveView(A.PresetCameraValues Preset)
        {
            bool result = false;

            switch (Preset)
            {
                case A.PresetCameraValues.LegacyPerspectiveBottom:
                case A.PresetCameraValues.LegacyPerspectiveBottomLeft:
                case A.PresetCameraValues.LegacyPerspectiveBottomRight:
                case A.PresetCameraValues.LegacyPerspectiveFront:
                case A.PresetCameraValues.LegacyPerspectiveLeft:
                case A.PresetCameraValues.LegacyPerspectiveRight:
                case A.PresetCameraValues.LegacyPerspectiveTop:
                case A.PresetCameraValues.LegacyPerspectiveTopLeft:
                case A.PresetCameraValues.LegacyPerspectiveTopRight:
                case A.PresetCameraValues.PerspectiveAbove:
                case A.PresetCameraValues.PerspectiveAboveLeftFacing:
                case A.PresetCameraValues.PerspectiveAboveRightFacing:
                case A.PresetCameraValues.PerspectiveBelow:
                case A.PresetCameraValues.PerspectiveContrastingLeftFacing:
                case A.PresetCameraValues.PerspectiveContrastingRightFacing:
                case A.PresetCameraValues.PerspectiveFront:
                case A.PresetCameraValues.PerspectiveHeroicExtremeLeftFacing:
                case A.PresetCameraValues.PerspectiveHeroicExtremeRightFacing:
                case A.PresetCameraValues.PerspectiveHeroicLeftFacing:
                case A.PresetCameraValues.PerspectiveHeroicRightFacing:
                case A.PresetCameraValues.PerspectiveLeft:
                case A.PresetCameraValues.PerspectiveRelaxed:
                case A.PresetCameraValues.PerspectiveRelaxedModerately:
                case A.PresetCameraValues.PerspectiveRight:
                    result = true;
                    break;
            }

            return result;
        }
Exemplo n.º 10
0
 /// <summary>
 /// Helper method.
 /// </summary>
 private static int RowsCount(A.Table tbl)
 {
     return tbl.Descendants<A.TableRow>().Count();
 }
Exemplo n.º 11
0
        /// <summary>
        /// Sets a background picture for a table cell (a:tc).
        /// </summary>
        /// <remarks>
        /// <![CDATA[
        /// <a:tc>
        ///  <a:txBody>
        ///   <a:bodyPr/>
        ///   <a:lstStyle/>
        ///   <a:p>
        ///    <a:endParaRPr lang="fr-FR" dirty="0"/>
        ///   </a:p>
        ///  </a:txBody>
        ///  <a:tcPr> (TableCellProperties)
        ///   <a:blipFill dpi="0" rotWithShape="1">
        ///    <a:blip r:embed="rId2"/>
        ///    <a:srcRect/>
        ///    <a:stretch>
        ///     <a:fillRect b="12000" r="90000" t="14000"/>
        ///    </a:stretch>
        ///   </a:blipFill>
        ///  </a:tcPr>
        /// </a:tc>
        /// ]]>
        /// </remarks>
        private static void SetTableCellPropertiesWithBackgroundPicture(PptxSlide slide, A.TableCellProperties tcPr, Cell.BackgroundPicture backgroundPicture)
        {
            if (backgroundPicture.Content == null)
            {
                return;
            }

            ImagePart imagePart = slide.AddPicture(backgroundPicture.Content, backgroundPicture.ContentType);

            A.BlipFill blipFill = new A.BlipFill();
            A.Blip blip = new A.Blip() { Embed = slide.GetIdOfImagePart(imagePart) };
            A.SourceRectangle srcRect = new A.SourceRectangle();
            A.Stretch stretch = new A.Stretch();
            A.FillRectangle fillRect = new A.FillRectangle()
                {
                    Top = backgroundPicture.Top,
                    Right = backgroundPicture.Right,
                    Bottom = backgroundPicture.Bottom,
                    Left = backgroundPicture.Left
                };
            stretch.AppendChild(fillRect);
            blipFill.AppendChild(blip);
            blipFill.AppendChild(srcRect);
            blipFill.AppendChild(stretch);
            tcPr.AppendChild(blipFill);
        }
Exemplo n.º 12
0
        /// <summary>
        /// Replaces a tag inside a given table cell (a:tc).
        /// </summary>
        /// <param name="slide">The PptxSlide.</param>
        /// <param name="tc">The table cell (a:tc).</param>
        /// <param name="cell">Contains the tag, the new text and a picture.</param>
        /// <returns><c>true</c> if a tag has been found and replaced, <c>false</c> otherwise.</returns>
        private static bool ReplaceTag(PptxSlide slide, A.TableCell tc, Cell cell)
        {
            bool replacedAtLeastOnce = false;

            // a:p
            foreach (A.Paragraph p in tc.Descendants<A.Paragraph>())
            {
                bool replaced = PptxParagraph.ReplaceTag(p, cell.Tag, cell.NewText);
                if (replaced)
                {
                    replacedAtLeastOnce = true;

                    // a:tcPr
                    if (cell.Picture != null)
                    {
                        A.TableCellProperties tcPr = tc.GetFirstChild<A.TableCellProperties>();
                        SetTableCellPropertiesWithBackgroundPicture(slide, tcPr, cell.Picture);
                    }
                }
            }

            return replacedAtLeastOnce;
        }
Exemplo n.º 13
0
 /// <summary>
 /// Helper method.
 /// </summary>
 private static A.TableRow GetRow(A.Table tbl, int row)
 {
     A.TableRow tr = tbl.Descendants<A.TableRow>().ElementAt(row);
     return tr;
 }
Exemplo n.º 14
0
 /// <summary>
 /// Helper method.
 /// </summary>
 private static A.TableCell GetCell(A.TableRow tr, int column)
 {
     A.TableCell tc = tr.Descendants<A.TableCell>().ElementAt(column);
     return tc;
 }
Exemplo n.º 15
0
        internal static string ConvertToVmlTitle(A.PresetPatternValues Preset)
        {
            string result = string.Empty;

            switch (Preset)
            {
                case A.PresetPatternValues.Cross:
                    // this isn't in the list, so I don't know the actual text. We'll guess...
                    result = "Cross";
                    break;
                case A.PresetPatternValues.DarkDownwardDiagonal:
                    result = "Dark downward diagonal";
                    break;
                case A.PresetPatternValues.DarkHorizontal:
                    result = "Dark horizontal";
                    break;
                case A.PresetPatternValues.DarkUpwardDiagonal:
                    result = "Dark upward diagonal";
                    break;
                case A.PresetPatternValues.DarkVertical:
                    result = "Dark vertical";
                    break;
                case A.PresetPatternValues.DashedDownwardDiagonal:
                    result = "Dashed downward diagonal";
                    break;
                case A.PresetPatternValues.DashedHorizontal:
                    result = "Dashed horizontal";
                    break;
                case A.PresetPatternValues.DashedUpwardDiagonal:
                    result = "Dashed upward diagonal";
                    break;
                case A.PresetPatternValues.DashedVertical:
                    result = "Dashed vertical";
                    break;
                case A.PresetPatternValues.DiagonalBrick:
                    result = "Diagonal brick";
                    break;
                case A.PresetPatternValues.DiagonalCross:
                    // this isn't in the list, so I don't know the actual text. We'll guess...
                    result = "Diagonal cross";
                    break;
                case A.PresetPatternValues.Divot:
                    result = "Divot";
                    break;
                case A.PresetPatternValues.DotGrid:
                    result = "Dotted grid";
                    break;
                case A.PresetPatternValues.DottedDiamond:
                    result = "Dotted diamond";
                    break;
                case A.PresetPatternValues.DownwardDiagonal:
                    // this isn't in the list, so I don't know the actual text. We'll guess...
                    result = "Downward diagonal";
                    break;
                case A.PresetPatternValues.Horizontal:
                    // this isn't in the list, so I don't know the actual text. We'll guess...
                    result = "Horizontal";
                    break;
                case A.PresetPatternValues.HorizontalBrick:
                    result = "Horizontal brick";
                    break;
                case A.PresetPatternValues.LargeCheck:
                    result = "Large checker board";
                    break;
                case A.PresetPatternValues.LargeConfetti:
                    result = "Large confetti";
                    break;
                case A.PresetPatternValues.LargeGrid:
                    result = "Large grid";
                    break;
                case A.PresetPatternValues.LightDownwardDiagonal:
                    result = "Light downward diagonal";
                    break;
                case A.PresetPatternValues.LightHorizontal:
                    result = "Light horizontal";
                    break;
                case A.PresetPatternValues.LightUpwardDiagonal:
                    result = "Light upward diagonal";
                    break;
                case A.PresetPatternValues.LightVertical:
                    result = "Light vertical";
                    break;
                case A.PresetPatternValues.NarrowHorizontal:
                    result = "Narrow horizontal";
                    break;
                case A.PresetPatternValues.NarrowVertical:
                    result = "Narrow vertical";
                    break;
                case A.PresetPatternValues.OpenDiamond:
                    result = "Outlined diamond";
                    break;
                case A.PresetPatternValues.Percent10:
                    result = "10%";
                    break;
                case A.PresetPatternValues.Percent20:
                    result = "20%";
                    break;
                case A.PresetPatternValues.Percent25:
                    result = "25%";
                    break;
                case A.PresetPatternValues.Percent30:
                    result = "30%";
                    break;
                case A.PresetPatternValues.Percent40:
                    result = "40%";
                    break;
                case A.PresetPatternValues.Percent5:
                    result = "5%";
                    break;
                case A.PresetPatternValues.Percent50:
                    result = "50%";
                    break;
                case A.PresetPatternValues.Percent60:
                    result = "60%";
                    break;
                case A.PresetPatternValues.Percent70:
                    result = "70%";
                    break;
                case A.PresetPatternValues.Percent75:
                    result = "75%";
                    break;
                case A.PresetPatternValues.Percent80:
                    result = "80%";
                    break;
                case A.PresetPatternValues.Percent90:
                    result = "90%";
                    break;
                case A.PresetPatternValues.Plaid:
                    result = "Plaid";
                    break;
                case A.PresetPatternValues.Shingle:
                    result = "Shingle";
                    break;
                case A.PresetPatternValues.SmallCheck:
                    result = "Small checker board";
                    break;
                case A.PresetPatternValues.SmallConfetti:
                    result = "Small confetti";
                    break;
                case A.PresetPatternValues.SmallGrid:
                    result = "Small grid";
                    break;
                case A.PresetPatternValues.SolidDiamond:
                    result = "Solid diamond";
                    break;
                case A.PresetPatternValues.Sphere:
                    result = "Sphere";
                    break;
                case A.PresetPatternValues.Trellis:
                    result = "Trellis";
                    break;
                case A.PresetPatternValues.UpwardDiagonal:
                    // this isn't in the list, so I don't know the actual text. We'll guess...
                    result = "Upward diagonal";
                    break;
                case A.PresetPatternValues.Vertical:
                    // this isn't in the list, so I don't know the actual text. We'll guess...
                    result = "Vertical";
                    break;
                case A.PresetPatternValues.Wave:
                    result = "Wave";
                    break;
                case A.PresetPatternValues.Weave:
                    result = "Weave";
                    break;
                case A.PresetPatternValues.WideDownwardDiagonal:
                    result = "Wide downward diagonal";
                    break;
                case A.PresetPatternValues.WideUpwardDiagonal:
                    result = "Wide upward diagonal";
                    break;
                case A.PresetPatternValues.ZigZag:
                    result = "Zig zag";
                    break;
            }

            return result;
        }
 internal void SetSolidLine(A.SchemeColorValues Color, decimal Tint, decimal Transparency)
 {
     this.UseSolidLine = true;
     this.SolidColor.SetColor(Color, Tint, Transparency);
 }
Exemplo n.º 17
0
 /// <summary>
 /// Set line arrow head settings. This only makes sense for lines and not border lines.
 /// </summary>
 /// <param name="HeadType">The arrow head type.</param>
 /// <param name="HeadSize">The arrow head size.</param>
 public void SetArrowHead(A.LineEndValues HeadType, SLLineSizeValues HeadSize)
 {
     this.HeadEndType = HeadType;
     this.HeadEndSize = HeadSize;
 }
Exemplo n.º 18
0
        /// <summary>
        /// Gets all the TextIndex for a given paragraph.
        /// </summary>
        private static List<TextIndex> GetTextIndexList(A.Paragraph p)
        {
            List<TextIndex> texts = new List<TextIndex>();

            StringBuilder concat = new StringBuilder();
            foreach (A.Text t in p.Descendants<A.Text>())
            {
                int startIndex = concat.Length;
                texts.Add(new TextIndex(t, startIndex));
                concat.Append(t.Text);
            }

            return texts;
        }
Exemplo n.º 19
0
 /// <summary>
 /// Set a reflection of the picture.
 /// </summary>
 /// <param name="BlurRadius">Blur radius of the reflection, ranging from 0 pt to 2147483647 pt. A suggested range is 0 pt to 100 pt. Accurate to 1/12700 of a point. Default value is 0 pt.</param>
 /// <param name="StartOpacity">Start opacity of the reflection, ranging from 0% to 100%. Accurate to 1/1000 of a percent. Default value is 100%.</param>
 /// <param name="StartPosition">Position of start opacity of the reflection, ranging from 0% to 100%. Accurate to 1/1000 of a percent. Default value is 0%.</param>
 /// <param name="EndAlpha">End alpha of the reflection, ranging from 0% to 100%. Accurate to 1/1000 of a percent. Default value is 0%.</param>
 /// <param name="EndPosition">Position of end alpha of the reflection, ranging from 0% to 100%. Accurate to 1/1000 of a percent. Default value is 100%.</param>
 /// <param name="Distance">Distance of the reflection from the origin, ranging from 0 pt to 2147483647 pt. A suggested range is 0 pt to 100 pt. Accurate to 1/12700 of a point. Default value is 0 pt.</param>
 /// <param name="Direction">Direction of the alpha gradient relative to the origin, ranging from 0 degrees to 359.9 degrees. 0 degrees means to the right, 90 degrees is below, 180 degrees is to the right, and 270 degrees is above. Accurate to 1/60000 of a degree. Default value is 0 degrees.</param>
 /// <param name="FadeDirection">Direction to fade the reflection, ranging from 0 degrees to 359.9 degrees. 0 degrees means to the right, 90 degrees is below, 180 degrees is to the right, and 270 degrees is above. Accurate to 1/60000 of a degree. Default value is 90 degrees.</param>
 /// <param name="HorizontalRatio">Horizontal scaling ratio in percentage. A negative ratio flips the reflection horizontally. Accurate to 1/1000 of a percent. Default value is 100%.</param>
 /// <param name="VerticalRatio">Vertical scaling ratio in percentage. A negative ratio flips the reflection vertically. Accurate to 1/1000 of a percent. Default value is 100%.</param>
 /// <param name="HorizontalSkew">Horizontal skew angle, ranging from -90 degrees to 90 degrees. Accurate to 1/60000 of a degree. Default value is 0 degrees.</param>
 /// <param name="VerticalSkew">Vertical skew angle, ranging from -90 degrees to 90 degrees. Accurate to 1/60000 of a degree. Default value is 0 degrees.</param>
 /// <param name="Alignment">Sets the origin for the size scaling, angle skews and distance offsets. Default value is Bottom.</param>
 /// <param name="RotateWithShape">True if the reflection should rotate. False otherwise. Default value is true.</param>
 public void SetReflection(decimal BlurRadius, decimal StartOpacity, decimal StartPosition, decimal EndAlpha, decimal EndPosition, decimal Distance, decimal Direction, decimal FadeDirection, decimal HorizontalRatio, decimal VerticalRatio, decimal HorizontalSkew, decimal VerticalSkew, A.RectangleAlignmentValues Alignment, bool RotateWithShape)
 {
     this.BlurRadius = BlurRadius;
     this.StartOpacity = StartOpacity;
     this.StartPosition = StartPosition;
     this.EndAlpha = EndAlpha;
     this.EndPosition = EndPosition;
     this.Distance = Distance;
     this.Direction = Direction;
     this.FadeDirection = FadeDirection;
     this.HorizontalRatio = HorizontalRatio;
     this.VerticalRatio = VerticalRatio;
     this.HorizontalSkew = HorizontalSkew;
     this.VerticalSkew = VerticalSkew;
     this.Alignment = Alignment;
     this.RotateWithShape = RotateWithShape;
 }
Exemplo n.º 20
0
 public TextIndex(A.Text t, int startIndex)
 {
     this.Text = t;
     this.StartIndex = startIndex;
 }
Exemplo n.º 21
0
 /// <summary>
 /// Set the top bevel.
 /// </summary>
 /// <param name="BevelPreset">The bevel type.</param>
 /// <param name="Width">Bevel width ranging from 0 pt to 2147483647 pt. However, a suggested maximum is 1584 pt. Accurate to 1/12700 of a point.</param>
 /// <param name="Height">Bevel height ranging from 0 pt to 2147483647 pt. However, a suggested maximum is 1584 pt. Accurate to 1/12700 of a point.</param>
 public void SetBevelTop(A.BevelPresetValues BevelPreset, decimal Width, decimal Height)
 {
     this.vBevelTopPreset = BevelPreset;
     this.BevelTopWidth = Width;
     this.BevelTopHeight = Height;
     this.bHasBevelTop = true;
 }
Exemplo n.º 22
0
        private static string ExtractTextFromParagraph(MDShapeText mdShape, Drawing.Paragraph paragraph)
        {
            StringBuilder paragraphText = new StringBuilder();
              foreach (var run in paragraph.Descendants<Drawing.Run>())
              {
            var schemeColor = run.Descendants<Drawing.SchemeColor>().FirstOrDefault();
            var color = run.Descendants<Drawing.RgbColorModelHex>().FirstOrDefault();
            mdShape.IsMultiCode = color != null && color.Val != null && color.Val == "8CF4F2";

            mdShape.IsCode = schemeColor != null && schemeColor.Val == Drawing.SchemeColorValues.Accent5;

            var paragraphProperties = paragraph.Descendants<Drawing.ParagraphProperties>().FirstOrDefault();
            mdShape.IndentCount = paragraphProperties != null && paragraphProperties.Level != null ? paragraphProperties.Level.Value : 0;

            var text = run.Descendants<Drawing.Text>().FirstOrDefault();
            if (text != null)
            {
              if (mdShape.IsCode)
              {
            paragraphText.AppendFormat("`{0}`", text.Text);
              }
              else
              {
            paragraphText.Append(text.Text);
              }
            }
              }

              return paragraphText.ToString();
        }