#!/usr/bin/perl

# Old System V Banner Program
# 
#     1.00 ??/??/97 initial release
#     1.10 02/07/98 fixes for $/%/etc
#     1.20 02/12/98 added -s and smaller font
#     1.21 03/01/98 fixed some of the small fonts
#
#				- erco@3dsite.com

my %arr;
my $ymax;
my $xmax;

if ( $ARGV[0] eq "-h" || $ARGV[0] eq "-help" )
{
    print STDERR <<"EOF";

usage: banner [-s] text
	-s  - use 'smaller' font

Normally banner prints text in the large 6 character high font.
The new -s flag uses a 3 character high font, which allows for
more text, while still being readable from across the room.

EOF
    exit(1);
}

if ( $ARGV[0] eq "-s" )
{
    shift(@ARGV);
    $ymax = 4;
    $xmax = 5;

    %arr = 
    (
	'a' => 
	{
	    '0' => "",
	    '1' => " __ ",
	    '2' => "|__|",
	    '3' => "|  |",
	},

	'b' =>
	{
	    '0' => "",
	    '1' => " __ ",
	    '2' => "|__>",
	    '3' => "|__>",
	},

	'c' => 
	{
	    '0' => "",
	    '1' => " __",
	    '2' => "|   ",
	    '3' => "|__",
	    '7' => "",
	},

	'd' => 
	{
	    '0' => "", 
	    '1' => " __ ", 
	    '2' => "|  \\", 
	    '3' => "|__/", 
	},

	'e' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|_ ", 
	    '3' => "|__", 
	},

	'f' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|_ ", 
	    '3' => "|", 
	},

	'g' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "| _", 
	    '3' => "|__|", 
	},

	'h' => 
	{
	    '0' => "", 
	    '1' => "     ", 
	    '2' => "|__|", 
	    '3' => "|  |", 
	},

	'i' => 
	{
	    '0' => "", 
	    '1' => "   ", 
	    '2' => "  |", 
	    '3' => "  |", 
	},

	'j' => 
	{
	    '0' => "", 
	    '1' => "    ", 
	    '2' => "   |", 
	    '3' => "|__|", 
	},

	'k' => 
	{
	    '0' => "", 
	    '1' => "    ", 
	    '2' => "|_/ ", 
	    '3' => "|  \\", 
	},

	'l' => 
	{
	    '0' => "", 
	    '1' => " ", 
	    '2' => "|", 
	    '3' => "|__", 
	},

	'm' => 
	{
	    '0' => "", 
	    '1' => "    ", 
	    '2' => "|\\/|", 
	    '3' => "|  |", 
	},

	'n' => 
	{
	    '0' => "", 
	    '1' => "    ", 
	    '2' => "|\\ |", 
	    '3' => "| \\|", 
	},

	'o' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|  |", 
	    '3' => "|__|", 
	},

	'p' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__|", 
	    '3' => "|   ", 
	},

	'q' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|  |", 
	    '3' => "|_\\|", 
	},

	'r' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__|", 
	    '3' => "|  \\", 
	},

	's' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__", 
	    '3' => " __|", 
	},

	't' => 
	{
	    '0' => "", 
	    '1' => "___", 
	    '2' => " |", 
	    '3' => " |", 
	},

	'u' => 
	{
	    '0' => "", 
	    '1' => "    ", 
	    '2' => "|  |", 
	    '3' => "|__|", 
	},

	'v' => 
	{
	    '0' => "", 
	    '1' => "",
	    '2' => "\\  /", 
	    '3' => " \\/", 
	},

	'w' => 
	{
	    '0' => "", 
	    '1' => "    ", 
	    '2' => "|  |", 
	    '3' => "|/\\|", 
	},

	'x' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "\\_/", 
	    '3' => "/ \\", 
	},

	'y' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "|__|", 
	    '3' => "  |", 
	},

	'z' => 
	{
	    '0' => "", 
	    '1' => "___", 
	    '2' => " _/", 
	    '3' => "/__", 
	},

	'0' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "| /|", 
	    '3' => "|/_|", 
	},

	'1' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " |", 
	    '3' => " |", 
	},

	'2' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => " __|", 
	    '3' => "|__", 
	},

	'3' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => " __|", 
	    '3' => " __|", 
	},

	'4' => 
	{
	    '0' => "", 
	    '1' => "   ", 
	    '2' => "|__|", 
	    '3' => "   |", 
	},

	'5' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__", 
	    '3' => " __|", 
	},

	'6' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__", 
	    '3' => "|__|", 
	},

	'7' => 
	{
	    '0' => "", 
	    '1' => "__", 
	    '2' => "  |", 
	    '3' => "  |", 
	},

	'8' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__|", 
	    '3' => "|__|", 
	},

	'9' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|__|", 
	    '3' => " __|", 
	},

	'!' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " |", 
	    '3' => " .", 
	},

	'@' => 
	{
	    '0' => "", 
	    '1' => " __", 
	    '2' => "|()|", 
	    '3' => "|__ ", 
	},

	'#' =>
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "_||_", 
	    '3' => "-||-", 
	},

	'$' => 
	{
	    '0' => "", 
	    '1' => " _|_", 
	    '2' => "|_|_", 
	    '3' => " _|_|", 
	},

	'%' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "o/", 
	    '3' => "/o", 
	},

	'^' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "/\\", 
	    '3' => "", 
	},

	'&' => 
	{
	    '0' => "", 
	    '1' => " o", 
	    '2' => "/\\.", 
	    '3' => "\\/\\", 
	},

	'*' =>
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "\\|/", 
	    '3' => "/|\\", 
	},

	'(' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " /", 
	    '3' => " \\", 
	},

	')' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " \\", 
	    '3' => " /", 
	},

	'_' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "____", 
	},

	'+' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "_|_", 
	    '3' => " |", 
	},

	'~' => 
	{
	    '0' => "", 
	    '1' => "/\\", 
	    '2' => "  \\/", 
	    '3' => "", 
	},

	'|' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " |", 
	    '3' => " |", 
	},

	'-' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " __", 
	    '3' => "", 
	},

	'=' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " --", 
	    '3' => " --", 
	},

	'`' => 
	{
	    '0' => "", 
	    '1' => " \\", 
	    '2' => "", 
	    '3' => "", 
	},

	'\\' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " \\", 
	    '3' => "  \\", 
	},

	':' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " o", 
	    '3' => " o", 
	},

	';' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " o", 
	    '3' => " 9", 
	},

	'"' => 
	{
	    '0' => "", 
	    '1' => " //", 
	    '2' => "", 
	    '3' => "", 
	},

	'\'' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "\\", 
	    '3' => " \\", 
	},

	'<' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "/", 
	    '3' => " \\", 
	},

	'>' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "\\", 
	    '3' => "/", 
	},

	',' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => " 9", 
	},

	'.' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => " o", 
	},

	'/' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => " /", 
	    '3' => "/", 
	},

	'?' => 
	{
	    '0' => " __ ", 
	    '1' => "   |", 
	    '2' => " -- ", 
	    '3' => " o ", 
	},

	'}' => 
	{
	    '0' => " _", 
	    '1' => "  |", 
	    '2' => "   >", 
	    '3' => " _|", 
	},

	'{' => 
	{
	    '0' => "   _", 
	    '1' => "  |", 
	    '2' => " <", 
	    '3' => "  |_", 
	},
	']' => 
	{
	    '0' => " __", 
	    '1' => "   |", 
	    '2' => "   |", 
	    '3' => " __|", 
	},

	'[' => 
	{
	    '0' => "  __", 
	    '1' => " | ", 
	    '2' => " | ", 
	    '3' => " |__", 
	},

	' ' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "", 
	}
    );
}
else
{
    $ymax = 8;
    $xmax = 8;

    %arr =
    (
	'a' => 
	{
	    '0' => "",
	    '1' => "   ##  ",
	    '2' => "  #  # ",
	    '3' => " #    #",
	    '4' => " ######",
	    '5' => " #    #",
	    '6' => " #    #",
	    '7' => "",
	},

	'b' =>
	{
	    '0' => "", 
	    '1' => " ##### ", 
	    '2' => " #    #", 
	    '3' => " ##### ", 
	    '4' => " #    #", 
	    '5' => " #    #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'c' => 
	{
	    '0' => "", 
	    '1' => "  #### ", 
	    '2' => " #    #", 
	    '3' => " #     ", 
	    '4' => " #     ", 
	    '5' => " #    #", 
	    '6' => "  ####", 
	    '7' => "",
	},

	'd' => 
	{
	    '0' => "", 
	    '1' => " ##### ", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " #    #", 
	    '5' => " #    #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'e' => 
	{
	    '0' => "", 
	    '1' => " ######", 
	    '2' => " #     ", 
	    '3' => " ##### ", 
	    '4' => " #     ", 
	    '5' => " #     ", 
	    '6' => " ######", 
	    '7' => "",
	},

	'f' => 
	{
	    '0' => "", 
	    '1' => " ######", 
	    '2' => " #     ", 
	    '3' => " ##### ", 
	    '4' => " #     ", 
	    '5' => " #     ", 
	    '6' => " #     ", 
	    '7' => "",
	},

	'g' => 
	{
	    '0' => "", 
	    '1' => "  #### ", 
	    '2' => " #    #", 
	    '3' => " #     ", 
	    '4' => " #  ###", 
	    '5' => " #    #", 
	    '6' => "  #### ", 
	    '7' => "",
	},

	'h' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " #    #", 
	    '3' => " ######", 
	    '4' => " #    #", 
	    '5' => " #    #", 
	    '6' => " #    #", 
	    '7' => "",
	},

	'i' => 
	{
	    '0' => "", 
	    '1' => "    #", 
	    '2' => "    #", 
	    '3' => "    #", 
	    '4' => "    #", 
	    '5' => "    #", 
	    '6' => "    #", 
	    '7' => "",
	},

	'j' => 
	{
	    '0' => "", 
	    '1' => "      #", 
	    '2' => "      #", 
	    '3' => "      #", 
	    '4' => "      #", 
	    '5' => " #    #", 
	    '6' => "  ####", 
	    '7' => "",
	},

	'k' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " #   # ", 
	    '3' => " ####  ", 
	    '4' => " #  #  ", 
	    '5' => " #   # ", 
	    '6' => " #    #", 
	    '7' => "",
	},

	'l' => 
	{
	    '0' => "", 
	    '1' => " #     ", 
	    '2' => " #     ", 
	    '3' => " #     ", 
	    '4' => " #     ", 
	    '5' => " #     ", 
	    '6' => " ######", 
	    '7' => "",
	},

	'm' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " ##  ##", 
	    '3' => " # ## #", 
	    '4' => " #    #", 
	    '5' => " #    #", 
	    '6' => " #    #", 
	    '7' => "",
	},

	'n' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " ##   #", 
	    '3' => " # #  #", 
	    '4' => " #  # #", 
	    '5' => " #   ##", 
	    '6' => " #    #", 
	    '7' => "",
	},

	'o' => 
	{
	    '0' => "", 
	    '1' => "  #### ", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " #    #", 
	    '5' => " #    #", 
	    '6' => "  #### ", 
	    '7' => "",
	},

	'p' => 
	{
	    '0' => "", 
	    '1' => " ##### ", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " ##### ", 
	    '5' => " #     ", 
	    '6' => " #     ", 
	    '7' => "",
	},

	'q' => 
	{
	    '0' => "", 
	    '1' => "  #### ", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " #  # #", 
	    '5' => " #   # ", 
	    '6' => "  ### #", 
	    '7' => "",
	},

	'r' => 
	{
	    '0' => "", 
	    '1' => " ##### ", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " ##### ", 
	    '5' => " #   # ", 
	    '6' => " #    #", 
	    '7' => "",
	},

	's' => 
	{
	    '0' => "", 
	    '1' => "  #### ", 
	    '2' => " #     ", 
	    '3' => "  #### ", 
	    '4' => "      #", 
	    '5' => " #    #", 
	    '6' => "  #### ", 
	    '7' => "",
	},

	't' => 
	{
	    '0' => "", 
	    '1' => "  #####", 
	    '2' => "    #  ", 
	    '3' => "    #  ", 
	    '4' => "    #  ", 
	    '5' => "    #  ", 
	    '6' => "    #  ", 
	    '7' => "",
	},

	'u' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " #    #", 
	    '5' => " #    #", 
	    '6' => "  #### ", 
	    '7' => "",
	},

	'v' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " #    #", 
	    '5' => "  #  # ", 
	    '6' => "   ##  ", 
	    '7' => "",
	},

	'w' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => " #    #", 
	    '3' => " #    #", 
	    '4' => " # ## #", 
	    '5' => " ##  ##", 
	    '6' => " #    #", 
	    '7' => "",
	},

	'x' => 
	{
	    '0' => "", 
	    '1' => " #    #", 
	    '2' => "  #  # ", 
	    '3' => "   ##  ", 
	    '4' => "   ##  ", 
	    '5' => "  #  # ", 
	    '6' => " #    #", 
	    '7' => "",
	},

	'y' => 
	{
	    '0' => "", 
	    '1' => "  #   #", 
	    '2' => "   # # ", 
	    '3' => "    #  ", 
	    '4' => "    #  ", 
	    '5' => "    #  ", 
	    '6' => "    #  ", 
	    '7' => "",
	},

	'z' => 
	{
	    '0' => "", 
	    '1' => " ######", 
	    '2' => "     # ", 
	    '3' => "    #  ", 
	    '4' => "   #   ", 
	    '5' => "  #    ", 
	    '6' => " ######", 
	    '7' => "",
	},

	'0' => 
	{
	    '0' => "  ###  ", 
	    '1' => " #   # ", 
	    '2' => "#     #", 
	    '3' => "#     #", 
	    '4' => "#     #", 
	    '5' => " #   # ", 
	    '6' => "  ###  ", 
	    '7' => "",
	},

	'1' => 
	{
	    '0' => "   #  ", 
	    '1' => "  ##  ", 
	    '2' => " # #  ", 
	    '3' => "   #  ", 
	    '4' => "   #  ", 
	    '5' => "   #  ", 
	    '6' => " #####", 
	    '7' => "",
	},

	'2' => 
	{
	    '0' => " ##### ", 
	    '1' => "#     #", 
	    '2' => "      #", 
	    '3' => " ##### ", 
	    '4' => "#      ", 
	    '5' => "#      ", 
	    '6' => "#######", 
	    '7' => "",
	},

	'3' => 
	{
	    '0' => " ##### ", 
	    '1' => "#     #", 
	    '2' => "      #", 
	    '3' => " ##### ", 
	    '4' => "      #", 
	    '5' => "#     #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'4' => 
	{
	    '0' => "#      ", 
	    '1' => "#    # ", 
	    '2' => "#    # ", 
	    '3' => "#    # ", 
	    '4' => "#######", 
	    '5' => "     # ", 
	    '6' => "     # ", 
	    '7' => "",
	},

	'5' => 
	{
	    '0' => "#######", 
	    '1' => "#      ", 
	    '2' => "#      ", 
	    '3' => "###### ", 
	    '4' => "      #", 
	    '5' => "#     #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'6' => 
	{
	    '0' => " ##### ", 
	    '1' => "#     #", 
	    '2' => "#      ", 
	    '3' => "###### ", 
	    '4' => "#     #", 
	    '5' => "#     #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'7' => 
	{
	    '0' => "#######", 
	    '1' => "#    # ", 
	    '2' => "    #  ", 
	    '3' => "   #   ", 
	    '4' => "  #    ", 
	    '5' => "  #    ", 
	    '6' => "  #    ", 
	    '7' => "",
	},

	'8' => 
	{
	    '0' => " ##### ", 
	    '1' => "#     #", 
	    '2' => "#     #", 
	    '3' => " ##### ", 
	    '4' => "#     #", 
	    '5' => "#     #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'9' => 
	{
	    '0' => " ##### ", 
	    '1' => "#     #", 
	    '2' => "#     #", 
	    '3' => " ######", 
	    '4' => "      #", 
	    '5' => "#     #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'!' => 
	{
	    '0' => "  ###", 
	    '1' => "  ###", 
	    '2' => "  ###", 
	    '3' => "   # ", 
	    '4' => "", 
	    '5' => "  ###", 
	    '6' => "  ###", 
	    '7' => "",
	},

	'@' => 
	{
	    '0' => " ##### ", 
	    '1' => "#     #", 
	    '2' => "# ### #", 
	    '3' => "# ### #", 
	    '4' => "# #### ", 
	    '5' => "#      ", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'#' =>
	{
	    '0' => "  # #  ", 
	    '1' => "  # #  ", 
	    '2' => "#######", 
	    '3' => "  # #  ", 
	    '4' => "#######", 
	    '5' => "  # #  ", 
	    '6' => "  # #  ", 
	    '7' => "",
	},

	'$' => 
	{
	    '0' => " ##### ", 
	    '1' => "#  #  #", 
	    '2' => "#  #   ", 
	    '3' => " ##### ", 
	    '4' => "   #  #", 
	    '5' => "#  #  #", 
	    '6' => " ##### ", 
	    '7' => "",
	},

	'%' => 
	{
	    '0' => "###   #", 
	    '1' => "# #  #", 
	    '2' => "### #", 
	    '3' => "   #", 
	    '4' => "  # ###", 
	    '5' => " #  # #", 
	    '6' => "#   ###", 
	    '7' => "",
	},

	'^' => 
	{
	    '0' => "   #", 
	    '1' => "  # #", 
	    '2' => " #   #", 
	    '3' => "", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "", 
	    '7' => "", 
	},

	'&' => 
	{
	    '0' => "  ##", 
	    '1' => " #  #", 
	    '2' => "  ##", 
	    '3' => " ###", 
	    '4' => "#   # #", 
	    '5' => "#    #", 
	    '6' => " ###  #:",
	    '7' => "",
	},

	'*' =>
	{
	    '0' => "",
	    '1' => " #   #  ", 
	    '2' => "  # #   ", 
	    '3' => "####### ", 
	    '4' => "  # #   ", 
	    '5' => " #   #  ", 
	    '6' => "", 
	    '7' => "", 
	},

	'(' => 
	{
	    '0' => "   ##", 
	    '1' => "  #", 
	    '2' => " #", 
	    '3' => " #", 
	    '4' => " #", 
	    '5' => " #", 
	    '6' => "  #", 
	    '7' => "   ##", 
	},

	')' => 
	{
	    '0' => "  ##", 
	    '1' => "    #", 
	    '2' => "     #", 
	    '3' => "     #", 
	    '4' => "     #", 
	    '5' => "     #", 
	    '6' => "    #", 
	    '7' => "  ##", 
	},

	'_' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "#######", 
	    '7' => "",
	},

	'+' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "   #", 
	    '3' => "   #", 
	    '4' => " #####", 
	    '5' => "   #", 
	    '6' => "   #", 
	    '7' => "", 
	},

	'~' => 
	{
	    '0' => " ##", 
	    '1' => "#  #  #", 
	    '2' => "    ##", 
	    '3' => "", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "", 
	    '7' => "", 
	},

	'|' => 
	{
	    '0' => "   #", 
	    '1' => "   #", 
	    '2' => "   #", 
	    '3' => "", 
	    '4' => "   #", 
	    '5' => "   #", 
	    '6' => "   #", 
	    '7' => "",
	},

	'-' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "", 
	    '4' => " #####", 
	    '5' => "", 
	    '6' => "", 
	    '7' => "",
	},

	'=' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => " #####", 
	    '4' => "", 
	    '5' => " #####", 
	    '6' => "", 
	    '7' => "",
	},

	'`' => 
	{
	    '0' => "  ###", 
	    '1' => "  ###", 
	    '2' => "   #", 
	    '3' => "    #", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "", 
	    '7' => "",
	},

	'\\' => 
	{
	    '0' => "#", 
	    '1' => " #", 
	    '2' => "  #", 
	    '3' => "   #", 
	    '4' => "    #", 
	    '5' => "     #", 
	    '6' => "      #", 
	    '7' => "",
	},

	':' => 
	{
	    '0' => "",
	    '1' => "   #", 
	    '2' => "  ###", 
	    '3' => "   #", 
	    '4' => "", 
	    '5' => "   #", 
	    '6' => "  ###", 
	    '7' => "   #", 
	},

	';' => 
	{
	    '0' => "",
	    '1' => "  ###", 
	    '2' => "  ###", 
	    '3' => "", 
	    '4' => "  ###", 
	    '5' => "  ###", 
	    '6' => "   #", 
	    '7' => "  #", 
	},

	'"' => 
	{
	    '0' => "### ###", 
	    '1' => "### ###", 
	    '2' => " #   #", 
	    '3' => "#   #", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "", 
	    '7' => "",
	},

	'\'' => 
	{
	    '0' => "  ###", 
	    '1' => "  ###", 
	    '2' => "   #", 
	    '3' => "  #", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "", 
	    '7' => "",
	},

	'<' => 
	{
	    '0' => "    #", 
	    '1' => "   #", 
	    '2' => "  #", 
	    '3' => " #", 
	    '4' => "  #", 
	    '5' => "   #", 
	    '6' => "    #", 
	    '7' => "",
	},

	'>' => 
	{
	    '0' => "  #", 
	    '1' => "   #", 
	    '2' => "    #", 
	    '3' => "     #", 
	    '4' => "    #", 
	    '5' => "   #", 
	    '6' => "  #", 
	    '7' => "",
	},

	',' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "",
	    '4' => " ###", 
	    '5' => " ###", 
	    '6' => "   #", 
	    '7' => "  #", 
	},

	'.' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "", 
	    '4' => "",
	    '5' => "", 
	    '6' => "  ###", 
	    '7' => "  ###",
	},

	'/' => 
	{
	    '0' => "      #", 
	    '1' => "     #", 
	    '2' => "    #", 
	    '3' => "   #", 
	    '4' => "  #", 
	    '5' => " #", 
	    '6' => "#", 
	    '7' => "",
	},

	'?' => 
	{
	    '0' => " #####", 
	    '1' => "#     #", 
	    '2' => "      #", 
	    '3' => "   ###", 
	    '4' => "   #", 
	    '5' => "", 
	    '6' => "   #", 
	    '7' => "",
	},

	'}' => 
	{
	    '0' => "  ###", 
	    '1' => "     #", 
	    '2' => "     #", 
	    '3' => "     ##", 
	    '4' => "     #", 
	    '5' => "     #", 
	    '6' => "     #", 
	    '7' => "  ###", 
	},

	'{' => 
	{
	    '0' => "  ###", 
	    '1' => " #", 
	    '2' => " #", 
	    '3' => "##", 
	    '4' => " #", 
	    '5' => " #", 
	    '6' => " #", 
	    '7' => "  ###",
	},

	' ' => 
	{
	    '0' => "", 
	    '1' => "", 
	    '2' => "", 
	    '3' => "", 
	    '4' => "", 
	    '5' => "", 
	    '6' => "",
	    '7' => "",
	}
    );
}

# MAIN
{
    my $height = 7;
    my $width  = 8;
    my ($word, $c, $y);

    # WORD LOOP
    foreach $word ( @ARGV )
    {
	$word =~ tr/A-Z/a-z/;		# lazy

	my @chars = split(//, $word );

	# SCANLINE LOOP
	for ( $y=0; $y<$ymax; $y++ )
	{
	    # CHAR-OF-WORD LOOP
	    foreach $c ( @chars )
	    {
	        if ( defined($arr{$c}{$y}) )
		    { printf("%-${xmax}s", $arr{$c}{$y}); }
		else
		    { printf("%-${xmax}s", "???????"); }
	    }
	    print "\n";
	}
    }
    exit(0);
}

