Seditio Source
Root |
./othercms/phpBB3/phpbb/captcha/gd.php
<?php
/**
*
* This file is part of the phpBB Forum Software package.
*
* @copyright (c) phpBB Limited <https://www.phpbb.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
* For full copyright and license information, please see
* the docs/CREDITS.txt file.
*
*/

namespace phpbb\captcha;

class
gd
{
    var
$width = 360;
    var
$height = 96;

   
/**
    * Create the image containing $code with a seed of $seed
    */
   
function execute($code, $seed)
    {
        global
$config;

       
mt_srand($seed);

       
// Create image
       
$img = imagecreatetruecolor($this->width, $this->height);

       
// Generate colours
       
$colour = new colour_manager($img, array(
           
'random'    => true,
           
'min_value'    => 60,
        ),
'hsv');

       
$scheme = $colour->colour_scheme('background', false);
       
$scheme = $colour->mono_range($scheme, 10, false);
       
shuffle($scheme);

       
$bg_colours = array_splice($scheme, mt_rand(6, 12));

       
// Generate code characters
       
$characters = $sizes = $bounding_boxes = $noise = array();
       
$width_avail = $this->width - 15;
       
$code_len = strlen($code);
       
$captcha_bitmaps = $this->captcha_bitmaps();

        for (
$i = 0; $i < $code_len; ++$i)
        {
           
$characters[$i] = new char_cube3d($captcha_bitmaps, $code[$i]);

            list(
$min, $max) = $characters[$i]->range();
           
$sizes[$i] = mt_rand($min, $max);

           
$box = $characters[$i]->dimensions($sizes[$i]);
           
$width_avail -= ($box[2] - $box[0]);
           
$bounding_boxes[$i] = $box;
        }

       
// Redistribute leftover x-space
       
$offset = array();
        for (
$i = 0; $i < $code_len; ++$i)
        {
           
$denom = ($code_len - $i);
           
$denom = max(1.3, $denom);
           
$offset[$i] = phpbb_mt_rand(0, (int) round((1.5 * $width_avail) / $denom));
           
$width_avail -= $offset[$i];
        }

        if (
$config['captcha_gd_x_grid'])
        {
           
$grid = (int) $config['captcha_gd_x_grid'];
            for (
$y = 0; $y < $this->height; $y += mt_rand($grid - 2, $grid + 2))
            {
               
$current_colour = $scheme[array_rand($scheme)];
               
imageline($img, mt_rand(0,4), mt_rand($y - 3, $y), mt_rand($this->width - 5, $this->width), mt_rand($y - 3, $y), $current_colour);
            }
        }

        if (
$config['captcha_gd_y_grid'])
        {
           
$grid = (int) $config['captcha_gd_y_grid'];
            for (
$x = 0; $x < $this->width; $x += mt_rand($grid - 2, $grid + 2))
            {
               
$current_colour = $scheme[array_rand($scheme)];
               
imagedashedline($img, mt_rand($x -3, $x + 3), mt_rand(0, 4), mt_rand($x -3, $x + 3), mt_rand($this->height - 5, $this->height), $current_colour);
            }
        }

        if (
$config['captcha_gd_wave'] && ($config['captcha_gd_y_grid'] || $config['captcha_gd_y_grid']))
        {
           
$this->wave($img);
        }

        if (
$config['captcha_gd_3d_noise'])
        {
           
$noise_bitmaps = $this->captcha_noise_bg_bitmaps();
            for (
$i = 0; $i < $code_len; ++$i)
            {
               
$noise[$i] = new char_cube3d($noise_bitmaps, mt_rand(1, count($noise_bitmaps['data'])));

               
$noise[$i]->range();
               
//$box = $noise[$i]->dimensions($sizes[$i]);
           
}
           
$xoffset = 0;
            for (
$i = 0; $i < $code_len; ++$i)
            {
               
$dimm = $bounding_boxes[$i];
               
$xoffset += ($offset[$i] - $dimm[0]);
               
$yoffset = mt_rand(-$dimm[1], $this->height - $dimm[3]);

               
$noise[$i]->drawchar($sizes[$i], $xoffset, $yoffset, $img, $colour->get_resource('background'), $scheme);
               
$xoffset += $dimm[2];
            }
        }

       
$xoffset = 5;
        for (
$i = 0; $i < $code_len; ++$i)
        {
           
$dimm = $bounding_boxes[$i];
           
$xoffset += ($offset[$i] - $dimm[0]);
           
$yoffset = mt_rand(-$dimm[1], $this->height - $dimm[3]);

           
$characters[$i]->drawchar($sizes[$i], $xoffset, $yoffset, $img, $colour->get_resource('background'), $scheme);
           
$xoffset += $dimm[2];
        }

        if (
$config['captcha_gd_wave'])
        {
           
$this->wave($img);
        }

        if (
$config['captcha_gd_foreground_noise'])
        {
           
$this->noise_line($img, 0, 0, $this->width, $this->height, $colour->get_resource('background'), $scheme, $bg_colours);
        }

       
// Send image
       
header('Content-Type: image/png');
       
header('Cache-control: no-cache, no-store');
       
imagepng($img);
       
imagedestroy($img);
    }

   
/**
    * Sinus
    */
   
function wave($img)
    {
       
$period_x = mt_rand(12,18);
       
$period_y = mt_rand(7,14);
       
$amp_x = mt_rand(5,10);
       
$amp_y = mt_rand(2,4);
       
$socket = mt_rand(0,100);

       
$dampen_x = mt_rand($this->width/5, $this->width/2);
       
$dampen_y = mt_rand($this->height/5, $this->height/2);
       
$direction_x = (mt_rand (0, 1));
       
$direction_y = (mt_rand (0, 1));

        for (
$i = 0; $i < $this->width; $i++)
        {
           
$dir = ($direction_x) ? $i : ($this->width - $i);
           
imagecopy($img, $img, $i-1, sin($socket+ $i/($period_x + $dir/$dampen_x)) * $amp_x, $i, 0, 1, $this->height);
        }
       
$socket = mt_rand(0,100);
        for (
$i = 0; $i < $this->height; $i++)
        {
           
$dir = ($direction_y) ? $i : ($this->height - $i);
           
imagecopy($img, $img ,sin($socket + $i/($period_y + ($dir)/$dampen_y)) * $amp_y, $i-1, 0, $i, $this->width, 1);
        }
        return
$img;
    }

   
/**
    * Noise line
    */
   
function noise_line($img, $min_x, $min_y, $max_x, $max_y, $bg, $font, $non_font)
    {
       
imagesetthickness($img, 2);

       
$x1 = $min_x;
       
$x2 = $max_x;
       
$y1 = $min_y;
       
$y2 = $min_y;

        do
        {
           
$line = array_merge(
               
array_fill(0, mt_rand(30, 60), $non_font[array_rand($non_font)]),
               
array_fill(0, mt_rand(30, 60), $bg)
            );

           
imagesetstyle($img, $line);
           
imageline($img, $x1, $y1, $x2, $y2, IMG_COLOR_STYLED);

           
$y1 += mt_rand(12, 35);
           
$y2 += mt_rand(12, 35);
        }
        while (
$y1 < $max_y && $y2 < $max_y);

       
$x1 = $min_x;
       
$x2 = $min_x;
       
$y1 = $min_y;
       
$y2 = $max_y;

        do
        {
           
$line = array_merge(
               
array_fill(0, mt_rand(30, 60), $non_font[array_rand($non_font)]),
               
array_fill(0, mt_rand(30, 60), $bg)
            );

           
imagesetstyle($img, $line);
           
imageline($img, $x1, $y1, $x2, $y2, IMG_COLOR_STYLED);

           
$x1 += mt_rand(20, 35);
           
$x2 += mt_rand(20, 35);
        }
        while (
$x1 < $max_x && $x2 < $max_x);
       
imagesetthickness($img, 1);
    }

    function
captcha_noise_bg_bitmaps()
    {
        return array(
           
'width'        => 15,
           
'height'    => 5,
           
'data'        => array(

           
1 => array(
                array(
1,0,0,0,1,0,0,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,1,0,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,1,0,0,0,0,0,0,1,0,0),
                array(
1,0,0,0,0,0,1,0,0,0,0,1,0,0,0),
            ),
           
2 => array(
                array(
1,1,mt_rand(0,1),1,0,1,1,1,1,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,1,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,1,1,0,1,1,1),
            ),
           
3 => array(
                array(
1,0,0,0,0,0,0,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,1,0,0,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,0,0,0,0,0,0,0,1),
            ),
           
4 => array(
                array(
1,0,1,0,1,0,0,1,1,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,1,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
1,0,1,0,0,0,0,0,0,0,0,0,0,0,0),
            ),
           
5 => array(
                array(
1,1,1,1,0,0,0,1,1,1,0,0,1,0,1),
                array(
0,0,0,0,0,0,0,1,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
1,0,1,0,0,0,0,0,0,0,0,0,0,0,0),
            ),
           
6 => array(
                array(
mt_rand(0,1),mt_rand(0,1),mt_rand(0,1),mt_rand(0,1),mt_rand(0,1),0,mt_rand(0,1),mt_rand(0,1),mt_rand(0,1),mt_rand(0,1),mt_rand(0,1),0,mt_rand(0,1),mt_rand(0,1),mt_rand(0,1)),
                array(
0,0,0,0,0,0,0,mt_rand(0,1),0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
mt_rand(0,1),0,mt_rand(0,1),0,0,0,0,0,0,0,0,0,0,0,0),
            ),
           
7 => array(
                array(
0,0,0,0,0,0,0,0,0,0,1,1,0,1,1),
                array(
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
                array(
0,0,1,1,0,0,0,1,0,0,0,0,0,0,0),
                array(
0,1,0,0,0,1,0,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0),
            ),
        ));
    }

   
/**
    * Return bitmaps
    */
   
function captcha_bitmaps()
    {
        global
$config;

       
$chars = array(
           
'A'    =>    array(
                        array(
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,1,1,1,1,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,1,1,0,1,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,1,1,1,1,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,1,1),
                            array(
0,0,0,0,0,1,1,1,1),
                            array(
0,0,0,1,1,1,0,0,1),
                            array(
0,1,1,1,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,0,0,0,0,1,1,1),
                            array(
0,1,1,1,1,1,1,0,1),
                        ),
                    ),
       
'B'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,1,1,1,1,0,0),
                        ),
                    ),
       
'C'    =>        array(
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,1,1,1,1,1,0,1),
                            array(
0,1,0,0,0,0,0,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,1),
                            array(
0,0,1,1,1,1,1,0,1),
                        ),
                    ),
       
'D'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,1,1,1,1,1,0,1),
                            array(
0,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,1,0,0,0,1,1,1),
                            array(
0,0,1,1,1,1,1,0,1),
                        ),
                    ),
       
'E'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,1,1,1,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
0,1,1,1,1,1,1,1,0),
                        ),
                    ),
       
'F'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                        ),
                        array(
                            array(
0,1,1,1,1,1,1,1,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,1,1,0,0,0,0),
                            array(
0,0,1,1,0,0,0,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
1,1,1,1,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                        ),
                    ),
       
'G'    =>        array(
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,1,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,1,1,1,1,1,0,1),
                            array(
0,1,0,0,0,0,0,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,1,1,1,1,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,1),
                            array(
0,0,1,1,1,1,1,0,1),
                        ),
                        array(
                            array(
0,0,1,1,1,1,1,0,1),
                            array(
0,1,1,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,1,0,0,0,0,0,1),
                            array(
0,0,1,1,1,1,1,1,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,1,1),
                            array(
1,1,1,1,1,1,1,1,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                        ),
                    ),
       
'H'    =>        array(
                        array(
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,1,1,1,1,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                        ),
                        array(
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,1,1,1,0,0,0),
                            array(
1,1,1,1,0,1,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                        ),
                    ),
       
'I'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
0,0,0,1,1,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                        ),
                    ),
       
'J'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
0,1,0,0,1,0,0,0,0),
                            array(
0,0,1,1,0,0,0,0,0),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,1,0,0,1,0,0,0,0),
                            array(
1,0,1,1,0,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
0,1,0,0,1,0,0,0,0),
                            array(
0,0,1,1,0,0,0,0,0),
                        ),
                    ),
       
'K'    =>        array(
                        array(    
// New 'K', supplied by NeoThermic
                           
array(1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,1,0,0,0,0),
                            array(
1,0,0,1,0,0,0,0,0),
                            array(
1,0,1,0,0,0,0,0,0),
                            array(
1,1,0,0,0,0,0,0,0),
                            array(
1,0,1,0,0,0,0,0,0),
                            array(
1,0,0,1,0,0,0,0,0),
                            array(
1,0,0,0,1,0,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,1,0,0),
                            array(
0,1,0,0,0,1,0,0,0),
                            array(
0,1,0,0,1,0,0,0,0),
                            array(
0,1,0,1,0,0,0,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,1,0,1,0,0,0,0,0),
                            array(
0,1,0,0,1,0,0,0,0),
                            array(
0,1,0,0,0,1,0,0,0),
                            array(
0,1,0,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,1,0,0,0),
                            array(
0,1,0,0,1,0,0,0,0),
                            array(
0,1,0,1,0,0,0,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,1,0,1,0,0,0,0,0),
                            array(
0,1,0,0,1,0,0,0,0),
                            array(
0,1,0,0,0,1,0,0,0),
                            array(
0,1,0,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                        ),
                    ),
       
'L'    =>        array(
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,0,1,1,1,0,0,0,0),
                        ),
                    ),
       
'M'    =>        array(
                        array(
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,0,1,0,0,0,1,0,1),
                            array(
1,0,1,0,0,0,1,0,1),
                            array(
1,0,1,0,0,0,1,0,1),
                            array(
1,0,0,1,0,1,0,0,1),
                            array(
1,0,0,1,0,1,0,0,1),
                            array(
1,0,0,1,0,1,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,1,0,1,0,1,0,1,0),
                            array(
0,1,0,1,0,1,0,1,0),
                            array(
0,1,0,1,0,1,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,1,1,0,1,1,1,0),
                            array(
1,1,0,1,1,1,0,1,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                        ),
                    ),
       
'N'    =>        array(
                        array(
                            array(
1,1,0,0,0,0,0,0,1),
                            array(
1,1,0,0,0,0,0,0,1),
                            array(
1,0,1,0,0,0,0,0,1),
                            array(
1,0,1,0,0,0,0,0,1),
                            array(
1,0,0,1,0,0,0,0,1),
                            array(
1,0,0,1,0,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,0,1,0,0,1),
                            array(
1,0,0,0,0,1,0,0,1),
                            array(
1,0,0,0,0,0,1,0,1),
                            array(
1,0,0,0,0,0,1,0,1),
                            array(
1,0,0,0,0,0,0,1,1),
                            array(
1,0,0,0,0,0,0,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,0,0,0,0,1,0),
                            array(
0,1,1,0,0,0,0,1,0),
                            array(
0,1,1,0,0,0,0,1,0),
                            array(
0,1,0,1,0,0,0,1,0),
                            array(
0,1,0,1,0,0,0,1,0),
                            array(
0,1,0,1,0,0,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,0,1,1,0,1,0),
                            array(
0,1,0,0,0,1,0,1,0),
                            array(
0,1,0,0,0,1,1,1,0),
                            array(
0,1,0,0,0,0,1,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,0,1,1,1,1,0,0,0),
                            array(
1,1,1,0,0,1,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                        ),
                    ),
       
'O'    =>        array(
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,1,1,1,1,0,0,0),
                            array(
1,1,1,0,0,1,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,1,0,0,0,1,1,0,0),
                            array(
0,1,1,1,1,1,0,0,0),
                        ),
                    ),
       
'P'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,1,1,0,0,0,0,0),
                            array(
1,1,0,1,1,0,0,0,0),
                            array(
1,0,0,0,1,0,0,0,0),
                            array(
1,0,0,0,1,0,0,0,0),
                            array(
1,0,0,1,1,0,0,0,0),
                            array(
1,1,1,1,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                        ),
                    ),
       
'Q'    =>        array(
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,1,0,0,1),
                            array(
1,0,0,0,0,0,1,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,1),
                        ),
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,1,0,0,1,1,0,1,1),
                            array(
0,1,1,1,1,1,1,1,0),
                            array(
0,0,0,0,0,0,1,1,0),
                            array(
0,0,0,0,0,0,0,1,1),
                            array(
0,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,1,1,1,1),
                            array(
0,0,0,0,1,1,0,0,1),
                            array(
0,0,0,0,1,0,0,0,1),
                            array(
0,0,0,0,1,0,0,0,1),
                            array(
0,0,0,0,1,1,0,1,1),
                            array(
0,0,0,0,0,1,1,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                        ),
                    ),
       
'R'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
1,1,1,0,0,0,0,0,0),
                            array(
1,0,0,1,0,0,0,0,0),
                            array(
1,0,0,0,1,0,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,0,1,0,0),
                            array(
1,0,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,1,1,1,1,0,0),
                            array(
0,1,1,0,0,0,0,0,0),
                            array(
0,1,1,1,0,0,0,0,0),
                            array(
0,1,0,1,1,0,0,0,0),
                            array(
0,1,0,0,1,1,0,0,0),
                            array(
0,1,0,0,0,1,1,0,0),
                            array(
0,1,0,0,0,0,1,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,0,0,0,0),
                            array(
1,1,0,0,1,1,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                        ),
                    ),
       
'S'    =>        array(
                        array(
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,0,0,0,0,0,0,1,0),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,1,1,1,1,1,0,1),
                            array(
0,1,0,0,0,0,0,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,0,0,0,0,0,0,1,0),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,0,0,0,0,0,1,0),
                            array(
1,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,1,1,1,0,0,0,0),
                            array(
1,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,0,0,0,0,0,0,0),
                            array(
0,1,1,1,1,0,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
1,0,0,0,1,1,0,0,0),
                            array(
0,1,1,1,1,0,0,0,0),
                        ),
                    ),
       
'T'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,1,1,1,1,1,1,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,1,0,0,0),
                            array(
0,0,0,0,0,1,1,1,0),
                        ),
                    ),
       
'U'    =>        array(
                        array(
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,0,1,1,1,1,1,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,1,0,0,0,0,0,1),
                            array(
0,0,1,0,0,0,0,0,1),
                            array(
0,0,1,0,0,0,0,0,1),
                            array(
0,0,1,0,0,0,0,0,1),
                            array(
0,0,1,0,0,0,0,0,1),
                            array(
0,0,1,0,0,0,0,1,1),
                            array(
0,0,1,1,0,0,1,1,1),
                            array(
0,0,0,1,1,1,1,0,1),
                        ),
                    ),
       
'V'    =>        array(
                        array(
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                        ),
                    ),
       
'W'    =>        array(
                        array(
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,0,1,0,0,0,1),
                            array(
1,0,0,1,0,1,0,0,1),
                            array(
1,0,0,1,0,1,0,0,1),
                            array(
1,0,0,1,0,1,0,0,1),
                            array(
1,0,1,0,0,0,1,0,1),
                            array(
1,0,1,0,0,0,1,0,1),
                            array(
1,0,1,0,0,0,1,0,1),
                            array(
1,1,0,0,0,0,0,1,1),
                            array(
1,1,0,0,0,0,0,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,1,1,1,0,1,0),
                            array(
0,1,0,1,0,1,0,1,0),
                            array(
0,1,1,1,0,1,1,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,0,0,0,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,0,1,0,0,1,0),
                            array(
0,1,0,1,1,1,0,1,0),
                            array(
0,1,0,1,0,1,0,1,0),
                            array(
0,1,1,1,0,1,1,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,0,0,0,0,0,0,0),
                        ),
                    ),
       
'X'    =>        array(
                        array(
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,1,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,0,0,0,0,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,0,1,1,0,1,1,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                            array(
0,0,1,1,0,1,1,0,0),
                            array(
0,1,1,0,0,0,1,1,0),
                            array(
0,0,0,0,0,0,0,0,0),
                        ),
                    ),
       
'Y'    =>        array(
                        array(
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
1,1,1,0,0,0,1,1,1),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,1,0,0,0,0,0,1,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,1,0,0,0,1,0,0),
                            array(
0,0,0,1,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,1,1,0,0,0),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,1,0,0,0,0,1),
                            array(
0,0,0,1,1,0,0,0,1),
                            array(
0,0,0,0,1,0,0,1,1),
                            array(
0,0,0,0,1,1,0,1,0),
                            array(
0,0,0,0,0,1,1,1,0),
                            array(
0,0,0,0,0,0,1,0,0),
                            array(
0,0,0,0,0,1,1,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,1,1,0,0,0),
                            array(
0,0,1,1,1,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                        ),
                    ),
       
'Z'    =>        array(
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,1,0),
                            array(
0,0,0,0,0,0,1,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,1,0,0,0,0),
                            array(
0,0,0,1,0,0,0,0,0),
                            array(
0,0,0,1,0,0,0,0,0),
                            array(
0,0,1,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,1),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
1,1,1,1,1,1,1,1,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,0,1),
                            array(
0,0,0,0,0,0,0,1,0),
                            array(
0,0,0,0,0,0,1,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,0,0,0,1,0,0,0),
                            array(
0,0,1,1,1,1,1,0,0),
                            array(
0,0,0,1,0,0,0,0,0),
                            array(
0,0,0,1,0,0,0,0,0),
                            array(
0,0,1,0,0,0,0,0,0),
                            array(
0,1,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,0,0,0,0,0,0,0,0),
                            array(
1,1,1,1,1,1,1,1,1),
                        ),
                        array(
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,0,0,0,0,0,0,0,0),
                            array(
0,1,1,1,1,1,1,1,0),
                            array(
0,0,0,0,0,1,1,0,0),
                            array(
0,0,0,0,1,1,0,0,0),
                            array(
0,0,0,1,1,0,0,0,0),
                            array(
0,0,1,1,0,0,0,0,0),
                            array(
0,0,1,0,0,0,0,0,0),
                            array(
0,1,1,1,1,1,1,1,0),
                        ),
                    ),
                );
        return array(
           
'width'        => 9,
           
'height'    => 15,
           
'data'        => array(

           
'A' =>    $chars['A'][mt_rand(0, min(count($chars['A']), $config['captcha_gd_fonts']) -1)],
           
'B' =>    $chars['B'][mt_rand(0, min(count($chars['B']), $config['captcha_gd_fonts']) -1)],
           
'C' =>    $chars['C'][mt_rand(0, min(count($chars['C']), $config['captcha_gd_fonts']) -1)],
           
'D' =>    $chars['D'][mt_rand(0, min(count($chars['D']), $config['captcha_gd_fonts']) -1)],
           
'E' =>    $chars['E'][mt_rand(0, min(count($chars['E']), $config['captcha_gd_fonts']) -1)],
           
'F' =>    $chars['F'][mt_rand(0, min(count($chars['F']), $config['captcha_gd_fonts']) -1)],
           
'G' =>    $chars['G'][mt_rand(0, min(count($chars['G']), $config['captcha_gd_fonts']) -1)],
           
'H' =>    $chars['H'][mt_rand(0, min(count($chars['H']), $config['captcha_gd_fonts']) -1)],
           
'I' =>    $chars['I'][mt_rand(0, min(count($chars['I']), $config['captcha_gd_fonts']) -1)],
           
'J' =>    $chars['J'][mt_rand(0, min(count($chars['J']), $config['captcha_gd_fonts']) -1)],
           
'K' =>    $chars['K'][mt_rand(0, min(count($chars['K']), $config['captcha_gd_fonts']) -1)],
           
'L' =>    $chars['L'][mt_rand(0, min(count($chars['L']), $config['captcha_gd_fonts']) -1)],
           
'M' =>    $chars['M'][mt_rand(0, min(count($chars['M']), $config['captcha_gd_fonts']) -1)],
           
'N' =>    $chars['N'][mt_rand(0, min(count($chars['N']), $config['captcha_gd_fonts']) -1)],
           
'O' =>    $chars['O'][mt_rand(0, min(count($chars['O']), $config['captcha_gd_fonts']) -1)],
           
'P' =>    $chars['P'][mt_rand(0, min(count($chars['P']), $config['captcha_gd_fonts']) -1)],
           
'Q' =>    $chars['Q'][mt_rand(0, min(count($chars['Q']), $config['captcha_gd_fonts']) -1)],
           
'R' =>    $chars['R'][mt_rand(0, min(count($chars['R']), $config['captcha_gd_fonts']) -1)],
           
'S' =>    $chars['S'][mt_rand(0, min(count($chars['S']), $config['captcha_gd_fonts']) -1)],
           
'T' =>    $chars['T'][mt_rand(0, min(count($chars['T']), $config['captcha_gd_fonts']) -1)],
           
'U' =>    $chars['U'][mt_rand(0, min(count($chars['U']), $config['captcha_gd_fonts']) -1)],
           
'V' =>    $chars['V'][mt_rand(0, min(count($chars['V']), $config['captcha_gd_fonts']) -1)],
           
'W' =>    $chars['W'][mt_rand(0, min(count($chars['W']), $config['captcha_gd_fonts']) -1)],
           
'X' =>    $chars['X'][mt_rand(0, min(count($chars['X']), $config['captcha_gd_fonts']) -1)],
           
'Y' =>    $chars['Y'][mt_rand(0, min(count($chars['Y']), $config['captcha_gd_fonts']) -1)],
           
'Z' =>    $chars['Z'][mt_rand(0, min(count($chars['Z']), $config['captcha_gd_fonts']) -1)],

           
'1' => array(
                array(
0,0,0,1,1,0,0,0,0),
                array(
0,0,1,0,1,0,0,0,0),
                array(
0,1,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,1,1,1,1,1,1,1,0),
            ),
           
'2' => array(    // New '2' supplied by Anon
               
array(0,0,0,1,1,1,0,0,0),
                array(
0,0,1,0,0,0,1,0,0),
                array(
0,1,0,0,0,0,1,1,0),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,1,1),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,1,0,0),
                array(
0,0,0,0,0,1,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,1,0,0,0,0,0),
                array(
0,0,1,0,0,0,0,0,0),
                array(
0,1,0,0,0,0,0,0,0),
                array(
1,1,1,1,1,1,1,1,1),
                array(
0,0,0,0,0,0,0,0,0),
            ),
           
'3' => array(
                array(
0,0,1,1,1,1,1,0,0),
                array(
0,1,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,1,1,0,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,1,0,0,0,0,0,1,0),
                array(
0,0,1,1,1,1,1,0,0),
            ),
           
'4' => array(
                array(
0,0,0,0,0,0,1,1,0),
                array(
0,0,0,0,0,1,0,1,0),
                array(
0,0,0,0,1,0,0,1,0),
                array(
0,0,0,1,0,0,0,1,0),
                array(
0,0,1,0,0,0,0,1,0),
                array(
0,1,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,1,0),
                array(
1,1,1,1,1,1,1,1,1),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,1,0),
            ),
           
'5' => array(
                array(
1,1,1,1,1,1,1,1,1),
                array(
1,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0),
                array(
0,1,0,0,0,0,0,0,0),
                array(
0,0,1,1,1,1,1,0,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,1,0,0,0,0,0,1,0),
                array(
0,0,1,1,1,1,1,0,0),
            ),
           
'6' => array(
                array(
0,0,1,1,1,1,1,0,0),
                array(
0,1,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0),
                array(
1,0,0,1,1,1,1,0,0),
                array(
1,0,1,0,0,0,0,1,0),
                array(
1,1,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,1,0,0,0,0,0,1,0),
                array(
0,0,1,1,1,1,1,0,0),
            ),
           
'7' => array(
                array(
1,1,1,1,1,1,1,1,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,0,1,0),
                array(
0,0,0,0,0,0,1,0,0),
                array(
0,0,0,0,0,1,0,0,0),
                array(
0,0,0,0,0,1,0,0,0),
                array(
0,0,0,0,1,0,0,0,0),
                array(
0,0,0,1,0,0,0,0,0),
                array(
0,0,0,1,0,0,0,0,0),
                array(
0,0,1,0,0,0,0,0,0),
                array(
0,1,0,0,0,0,0,0,0),
                array(
0,1,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0),
                array(
1,0,0,0,0,0,0,0,0),
            ),
           
'8' => array(
                array(
0,0,1,1,1,1,1,0,0),
                array(
0,1,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,1,0,0,0,0,0,1,0),
                array(
0,0,1,1,1,1,1,0,0),
                array(
0,1,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,1,0,0,0,0,0,1,0),
                array(
0,0,1,1,1,1,1,0,0),
            ),
           
'9' => array(
                array(
0,0,1,1,1,1,1,0,0),
                array(
0,1,0,0,0,0,0,1,0),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,1,1),
                array(
0,1,0,0,0,0,1,0,1),
                array(
0,0,1,1,1,1,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
0,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
1,0,0,0,0,0,0,0,1),
                array(
0,1,0,0,0,0,0,1,0),
                array(
0,0,1,1,1,1,1,0,0),
            ),
            )
        );
    }
}