/*      $NetBSD: chset.c,v 1.6 2003/08/07 11:13:09 agc Exp $    */

/*
*      Changes for banner(1)
*      @(#)Copyright (c) 1995, Simon J. Gerraty.
*
*      This is free software.  It comes with NO WARRANTY.
*      Permission to use, modify and distribute this source code
*      is granted subject to the following conditions.
*      1/ that the above copyright notice and this notice
*      are preserved in all copies and that due credit be given
*      to the author.
*      2/ that any changes to this code are clearly commented
*      as such so that the author does not get blamed for bugs
*      other than his own.
*
*      Please send copies of changes and bug-fixes to:
*      [email protected]
*/

/*
* Copyright (c) 1983, 1993
*      The Regents of the University of California.  All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
*    notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
*    notice, this list of conditions and the following disclaimer in the
*    documentation and/or other materials provided with the distribution.
* 3. Neither the name of the University nor the names of its contributors
*    may be used to endorse or promote products derived from this software
*    without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/

#include <sys/cdefs.h>
#ifndef lint
#if 0
static char sccsid[] = "@(#)lpdchar.c   8.1 (Berkeley) 6/6/93";
#else
__RCSID("$NetBSD: chset.c,v 1.6 2003/08/07 11:13:09 agc Exp $");
#endif
#endif /* not lint */

#include "banner.h"

/*
* <sjg> the following were all re-generated by a perl script,
* to fill in the gaps needed by the banner(1) char set.
*/
#define c_______ 0
#define c______1 1
#define c_____1_ 2
#define c_____11 3
#define c____1__ 4
#define c____1_1 5
#define c____11_ 6
#define c____111 7
#define c___1___ 8
#define c___1__1 9
#define c___1_1_ 10
#define c___1_11 11
#define c___11__ 12
#define c___11_1 13
#define c___111_ 14
#define c___1111 15
#define c__1____ 16
#define c__1___1 17
#define c__1__1_ 18
#define c__1__11 19
#define c__1_1__ 20
#define c__1_1_1 21
#define c__1_11_ 22
#define c__1_111 23
#define c__11___ 24
#define c__11__1 25
#define c__11_1_ 26
#define c__11_11 27
#define c__111__ 28
#define c__111_1 29
#define c__1111_ 30
#define c__11111 31
#define c_1_____ 32
#define c_1____1 33
#define c_1___1_ 34
#define c_1___11 35
#define c_1__1__ 36
#define c_1__1_1 37
#define c_1__11_ 38
#define c_1__111 39
#define c_1_1___ 40
#define c_1_1__1 41
#define c_1_1_1_ 42
#define c_1_1_11 43
#define c_1_11__ 44
#define c_1_11_1 45
#define c_1_111_ 46
#define c_1_1111 47
#define c_11____ 48
#define c_11___1 49
#define c_11__1_ 50
#define c_11__11 51
#define c_11_1__ 52
#define c_11_1_1 53
#define c_11_11_ 54
#define c_11_111 55
#define c_111___ 56
#define c_111__1 57
#define c_111_1_ 58
#define c_111_11 59
#define c_1111__ 60
#define c_1111_1 61
#define c_11111_ 62
#define c_111111 63
#define c1______ 64
#define c1_____1 65
#define c1____1_ 66
#define c1____11 67
#define c1___1__ 68
#define c1___1_1 69
#define c1___11_ 70
#define c1___111 71
#define c1__1___ 72
#define c1__1__1 73
#define c1__1_1_ 74
#define c1__1_11 75
#define c1__11__ 76
#define c1__11_1 77
#define c1__111_ 78
#define c1__1111 79
#define c1_1____ 80
#define c1_1___1 81
#define c1_1__1_ 82
#define c1_1__11 83
#define c1_1_1__ 84
#define c1_1_1_1 85
#define c1_1_11_ 86
#define c1_1_111 87
#define c1_11___ 88
#define c1_11__1 89
#define c1_11_1_ 90
#define c1_11_11 91
#define c1_111__ 92
#define c1_111_1 93
#define c1_1111_ 94
#define c1_11111 95
#define c11_____ 96
#define c11____1 97
#define c11___1_ 98
#define c11___11 99
#define c11__1__ 100
#define c11__1_1 101
#define c11__11_ 102
#define c11__111 103
#define c11_1___ 104
#define c11_1__1 105
#define c11_1_1_ 106
#define c11_1_11 107
#define c11_11__ 108
#define c11_11_1 109
#define c11_111_ 110
#define c11_1111 111
#define c111____ 112
#define c111___1 113
#define c111__1_ 114
#define c111__11 115
#define c111_1__ 116
#define c111_1_1 117
#define c111_11_ 118
#define c111_111 119
#define c1111___ 120
#define c1111__1 121
#define c1111_1_ 122
#define c1111_11 123
#define c11111__ 124
#define c11111_1 125
#define c111111_ 126
#define c1111111 127



/*
* This is relatively easy to modify just look:
*/
const char scnkey_lpd[][HEIGHT] =
{
       { c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______ },                   /*   */

       { c__11___,
         c__11___,
         c__11___,
         c__11___,
         c__11___,
         c_______,
         c_______,
         c__11___,
         c__11___ },                   /* ! */

       { c_1__1__,
         c_1__1__,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______ },                   /* " */

       { c_______,
         c__1_1__,
         c__1_1__,
         c1111111,
         c__1_1__,
         c1111111,
         c__1_1__,
         c__1_1__,
         c_______ },                   /* # */

       { c___1___,
         c_11111_,
         c1__1__1,
         c1__1___,
         c_11111_,
         c___1__1,
         c1__1__1,
         c_11111_,
         c___1___ },                   /* $ */

       { c_1_____,
         c1_1___1,
         c_1___1_,
         c____1__,
         c___1___,
         c__1____,
         c_1___1_,
         c1___1_1,
         c_____1_ },                   /* % */

       { c_11____,
         c1__1___,
         c1___1__,
         c_1_1___,
         c__1____,
         c_1_1__1,
         c1___11_,
         c1___11_,
         c_111__1 },                   /* & */

       { c___11__,
         c___11__,
         c___1___,
         c__1____,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______ },                   /* ' */

       { c____1__,
         c___1___,
         c__1____,
         c__1____,
         c__1____,
         c__1____,
         c__1____,
         c___1___,
         c____1__ },                   /* ( */

       { c__1____,
         c___1___,
         c____1__,
         c____1__,
         c____1__,
         c____1__,
         c____1__,
         c___1___,
         c__1____ },                   /* ) */

       { c_______,
         c___1___,
         c1__1__1,
         c_1_1_1_,
         c__111__,
         c_1_1_1_,
         c1__1__1,
         c___1___,
         c_______ },                   /* * */

       { c_______,
         c___1___,
         c___1___,
         c___1___,
         c1111111,
         c___1___,
         c___1___,
         c___1___,
         c_______ },                   /* + */

       { c_______,
         c_______,
         c_______,
         c_______,
         c__11___,
         c__11___,
         c__1____,
         c_1_____,
         c_______ },                   /* , */

       { c_______,
         c_______,
         c_______,
         c_______,
         c1111111,
         c_______,
         c_______,
         c_______,
         c_______ },                   /* - */

       { c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c__11___,
         c__11___ },                   /* . */

       { c_______,
         c______1,
         c_____1_,
         c____1__,
         c___1___,
         c__1____,
         c_1_____,
         c1______,
         c_______ },                   /* / */

       { c_11111_,
         c1_____1,
         c1____11,
         c1___1_1,
         c1__1__1,
         c1_1___1,
         c11____1,
         c1_____1,
         c_11111_ },                   /* 0 */

       { c___1___,
         c__11___,
         c_1_1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c_11111_ },                   /* 1 */

       { c_11111_,
         c1_____1,
         c______1,
         c_____1_,
         c__111__,
         c_1_____,
         c1______,
         c1______,
         c1111111 },                   /* 2 */

       { c_11111_,
         c1_____1,
         c______1,
         c______1,
         c__1111_,
         c______1,
         c______1,
         c1_____1,
         c_11111_ },                   /* 3 */

       { c_____1_,
         c____11_,
         c___1_1_,
         c__1__1_,
         c_1___1_,
         c1____1_,
         c1111111,
         c_____1_,
         c_____1_ },                   /* 4 */

       { c1111111,
         c1______,
         c1______,
         c11111__,
         c_____1_,
         c______1,
         c______1,
         c1____1_,
         c_1111__ },                   /* 5 */

       { c__1111_,
         c_1_____,
         c1______,
         c1______,
         c1_1111_,
         c11____1,
         c1_____1,
         c1_____1,
         c_11111_ },                   /* 6 */

       { c1111111,
         c1_____1,
         c_____1_,
         c____1__,
         c___1___,
         c__1____,
         c__1____,
         c__1____,
         c__1____ },                   /* 7 */

       { c_11111_,
         c1_____1,
         c1_____1,
         c1_____1,
         c_11111_,
         c1_____1,
         c1_____1,
         c1_____1,
         c_11111_ },                   /* 8 */

       { c_11111_,
         c1_____1,
         c1_____1,
         c1_____1,
         c_111111,
         c______1,
         c______1,
         c1_____1,
         c_1111__ },                   /* 9 */

       { c_______,
         c_______,
         c_______,
         c__11___,
         c__11___,
         c_______,
         c_______,
         c__11___,
         c__11___ },                   /* : */


       { c__11___,
         c__11___,
         c_______,
         c_______,
         c__11___,
         c__11___,
         c__1____,
         c_1_____,
         c_______ },                   /* ; */

       { c____1__,
         c___1___,
         c__1____,
         c_1_____,
         c1______,
         c_1_____,
         c__1____,
         c___1___,
         c____1__ },                   /* < */

       { c_______,
         c_______,
         c_______,
         c1111111,
         c_______,
         c1111111,
         c_______,
         c_______,
         c_______ },                   /* = */

       { c__1____,
         c___1___,
         c____1__,
         c_____1_,
         c______1,
         c_____1_,
         c____1__,
         c___1___,
         c__1____ },                   /* > */

       { c__1111_,
         c_1____1,
         c_1____1,
         c______1,
         c____11_,
         c___1___,
         c___1___,
         c_______,
         c___1___ },                   /* ? */

       { c__1111_,
         c_1____1,
         c1__11_1,
         c1_1_1_1,
         c1_1_1_1,
         c1_1111_,
         c1______,
         c_1____1,
         c__1111_ },                   /* @ */

       { c__111__,
         c_1___1_,
         c1_____1,
         c1_____1,
         c1111111,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1 },                   /* A */

       { c111111_,
         c_1____1,
         c_1____1,
         c_1____1,
         c_11111_,
         c_1____1,
         c_1____1,
         c_1____1,
         c111111_ },                   /* B */

       { c__1111_,
         c_1____1,
         c1______,
         c1______,
         c1______,
         c1______,
         c1______,
         c_1____1,
         c__1111_ },                   /* C */

       { c11111__,
         c_1___1_,
         c_1____1,
         c_1____1,
         c_1____1,
         c_1____1,
         c_1____1,
         c_1___1_,
         c11111__ },                   /* D */

       { c1111111,
         c1______,
         c1______,
         c1______,
         c111111_,
         c1______,
         c1______,
         c1______,
         c1111111 },                   /* E */

       { c1111111,
         c1______,
         c1______,
         c1______,
         c111111_,
         c1______,
         c1______,
         c1______,
         c1______ },                   /* F */

       { c__1111_,
         c_1____1,
         c1______,
         c1______,
         c1______,
         c1__1111,
         c1_____1,
         c_1____1,
         c__1111_ },                   /* G */

       { c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1111111,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1 },                   /* H */

       { c_11111_,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c_11111_ },                   /* I */

       { c__11111,
         c____1__,
         c____1__,
         c____1__,
         c____1__,
         c____1__,
         c____1__,
         c1___1__,
         c_111___ },                   /* J */

       { c1_____1,
         c1____1_,
         c1___1__,
         c1__1___,
         c1_1____,
         c11_1___,
         c1___1__,
         c1____1_,
         c1_____1 },                   /* K */

       { c1______,
         c1______,
         c1______,
         c1______,
         c1______,
         c1______,
         c1______,
         c1______,
         c1111111 },                   /* L */

       { c1_____1,
         c11___11,
         c1_1_1_1,
         c1__1__1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1 },                   /* M */

       { c1_____1,
         c11____1,
         c1_1___1,
         c1__1__1,
         c1___1_1,
         c1____11,
         c1_____1,
         c1_____1,
         c1_____1 },                   /* N */

       { c__111__,
         c_1___1_,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c_1___1_,
         c__111__ },                   /* O */

       { c111111_,
         c1_____1,
         c1_____1,
         c1_____1,
         c111111_,
         c1______,
         c1______,
         c1______,
         c1______ },                   /* P */

       { c__111__,
         c_1___1_,
         c1_____1,
         c1_____1,
         c1_____1,
         c1__1__1,
         c1___1_1,
         c_1___1_,
         c__111_1 },                   /* Q */

       { c111111_,
         c1_____1,
         c1_____1,
         c1_____1,
         c111111_,
         c1__1___,
         c1___1__,
         c1____1_,
         c1_____1 },                   /* R */

       { c_11111_,
         c1_____1,
         c1______,
         c1______,
         c_11111_,
         c______1,
         c______1,
         c1_____1,
         c_11111_ },                   /* S */

       { c1111111,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___ },                   /* T */

       { c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c_11111_ },                   /* U */

       { c1_____1,
         c1_____1,
         c1_____1,
         c_1___1_,
         c_1___1_,
         c__1_1__,
         c__1_1__,
         c___1___,
         c___1___ },                   /* V */

       { c1_____1,
         c1_____1,
         c1_____1,
         c1_____1,
         c1__1__1,
         c1__1__1,
         c1_1_1_1,
         c11___11,
         c1_____1 },                   /* W */

       { c1_____1,
         c1_____1,
         c_1___1_,
         c__1_1__,
         c___1___,
         c__1_1__,
         c_1___1_,
         c1_____1,
         c1_____1 },                   /* X */

       { c1_____1,
         c1_____1,
         c_1___1_,
         c__1_1__,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___ },                   /* Y */

       { c1111111,
         c______1,
         c_____1_,
         c____1__,
         c___1___,
         c__1____,
         c_1_____,
         c1______,
         c1111111 },                   /* Z */

       { c_1111__,
         c_1_____,
         c_1_____,
         c_1_____,
         c_1_____,
         c_1_____,
         c_1_____,
         c_1_____,
         c_1111__ },                   /* [ */

       { c_______,
         c1______,
         c_1_____,
         c__1____,
         c___1___,
         c____1__,
         c_____1_,
         c______1,
         c_______ },                   /* \ */

       { c__1111_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c__1111_ },                   /* ] */

       { c___1___,
         c__1_1__,
         c_1___1_,
         c1_____1,
         c_______,
         c_______,
         c_______,
         c_______ },                   /* ^ */

       { c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c1111111,
         c_______ },                   /* _ */

       { c__11___,
         c__11___,
         c___1___,
         c____1__,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______ },                   /* ` */

       { c_______,
         c_______,
         c_______,
         c_1111__,
         c_____1_,
         c_11111_,
         c1_____1,
         c1____11,
         c_1111_1 },                   /* a */

       { c1______,
         c1______,
         c1______,
         c1_111__,
         c11___1_,
         c1_____1,
         c1_____1,
         c11___1_,
         c1_111__ },                   /* b */

       { c_______,
         c_______,
         c_______,
         c_1111__,
         c1____1_,
         c1______,
         c1______,
         c1____1_,
         c_1111__ },                   /* c */

       { c_____1_,
         c_____1_,
         c_____1_,
         c_111_1_,
         c1___11_,
         c1____1_,
         c1____1_,
         c1___11_,
         c_111_1_ },                   /* d */

       { c_______,
         c_______,
         c_______,
         c_1111__,
         c1____1_,
         c111111_,
         c1______,
         c1____1_,
         c_1111__ },                   /* e */

       { c___11__,
         c__1__1_,
         c__1____,
         c__1____,
         c11111__,
         c__1____,
         c__1____,
         c__1____,
         c__1____ },                   /* f */

       { c_111_1_,
         c1___11_,
         c1____1_,
         c1____1_,
         c1___11_,
         c_111_1_,
         c_____1_,
         c1____1_,
         c_1111__ },                   /* g */

       { c1______,
         c1______,
         c1______,
         c1_111__,
         c11___1_,
         c1____1_,
         c1____1_,
         c1____1_,
         c1____1_ },                   /* h */

       { c_______,
         c___1___,
         c_______,
         c__11___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c__111__ },                   /* i */

       { c____11_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_____1_,
         c_1___1_,
         c__111__ },                   /* j */

       { c1______,
         c1______,
         c1______,
         c1___1__,
         c1__1___,
         c1_1____,
         c11_1___,
         c1___1__,
         c1____1_ },                   /* k */

       { c__11___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c__111__ },                   /* l */

       { c_______,
         c_______,
         c_______,
         c1_1_11_,
         c11_1__1,
         c1__1__1,
         c1__1__1,
         c1__1__1,
         c1__1__1 },                   /* m */

       { c_______,
         c_______,
         c_______,
         c1_111__,
         c11___1_,
         c1____1_,
         c1____1_,
         c1____1_,
         c1____1_ },                   /* n */

       { c_______,
         c_______,
         c_______,
         c_1111__,
         c1____1_,
         c1____1_,
         c1____1_,
         c1____1_,
         c_1111__ },                   /* o */

       { c1_111__,
         c11___1_,
         c1____1_,
         c1____1_,
         c11___1_,
         c1_111__,
         c1______,
         c1______,
         c1______ },                   /* p */

       { c_111_1_,
         c1___11_,
         c1____1_,
         c1____1_,
         c1___11_,
         c_111_1_,
         c_____1_,
         c_____1_,
         c_____1_ },                   /* q */

       { c_______,
         c_______,
         c_______,
         c1_111__,
         c11___1_,
         c1______,
         c1______,
         c1______,
         c1______ },                   /* r */

       { c_______,
         c_______,
         c_______,
         c_1111__,
         c1____1_,
         c_11____,
         c___11__,
         c1____1_,
         c_1111__ },                   /* s */

       { c_______,
         c__1____,
         c__1____,
         c11111__,
         c__1____,
         c__1____,
         c__1____,
         c__1__1_,
         c___11__ },                   /* t */

       { c_______,
         c_______,
         c_______,
         c1____1_,
         c1____1_,
         c1____1_,
         c1____1_,
         c1___11_,
         c_111_1_ },                   /* u */

       { c_______,
         c_______,
         c_______,
         c1_____1,
         c1_____1,
         c1_____1,
         c_1___1_,
         c__1_1__,
         c___1___ },                   /* v */

       { c_______,
         c_______,
         c_______,
         c1_____1,
         c1__1__1,
         c1__1__1,
         c1__1__1,
         c1__1__1,
         c_11_11_ },                   /* w */

       { c_______,
         c_______,
         c_______,
         c1____1_,
         c_1__1__,
         c__11___,
         c__11___,
         c_1__1__,
         c1____1_ },                   /* x */

       { c1____1_,
         c1____1_,
         c1____1_,
         c1____1_,
         c1___11_,
         c_111_1_,
         c_____1_,
         c1____1_,
         c_1111__ },                   /* y */

       { c_______,
         c_______,
         c_______,
         c111111_,
         c____1__,
         c___1___,
         c__1____,
         c_1_____,
         c111111_ },                   /* z */

       { c___11__,
         c__1____,
         c__1____,
         c__1____,
         c_1_____,
         c__1____,
         c__1____,
         c__1____,
         c___11__ },                   /* } */

       { c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___,
         c___1___ },                   /* | */

       { c__11___,
         c____1__,
         c____1__,
         c____1__,
         c_____1_,
         c____1__,
         c____1__,
         c____1__,
         c__11___ },                   /* } */

       { c_11____,
         c1__1__1,
         c____11_,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______,
         c_______ },                   /* ~ */

       { c_1__1__,
         c1__1__1,
         c__1__1_,
         c_1__1__,
         c1__1__1,
         c__1__1_,
         c_1__1__,
         c1__1__1,
         c__1__1_ }                    /* rub-out */
};

/*
* This is the real banner char set
*/
const char scnkey_def[][HEIGHT] =
{
       {
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /*   */

       {
               c_______,
               c__111__,
               c__111__,
               c__111__,
               c___1___,
               c_______,
               c__111__,
               c__111__,
               c_______
       },                      /* ! */
       {
               c_______,
               c111_111,
               c111_111,
               c_1___1_,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /* " */
       {
               c_______,
               c__1_1__,
               c__1_1__,
               c1111111,
               c__1_1__,
               c1111111,
               c__1_1__,
               c__1_1__,
               c_______
       },                      /* # */
       {
               c_______,
               c_11111_,
               c1__1__1,
               c1__1___,
               c_11111_,
               c___1__1,
               c1__1__1,
               c_11111_,
               c_______
       },                      /* $ */
       {
               c_______,
               c111___1,
               c1_1__1_,
               c111_1__,
               c___1___,
               c__1_111,
               c_1__1_1,
               c1___111,
               c_______
       },                      /* % */
       {
               c_______,
               c__11___,
               c_1__1__,
               c__11___,
               c_111___,
               c1___1_1,
               c1____1_,
               c_111__1,
               c_______
       },                      /* & */
       {
               c_______,
               c__111__,
               c__111__,
               c___1___,
               c__1____,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /* ' */
       {
               c_______,
               c___11__,
               c__1____,
               c_1_____,
               c_1_____,
               c_1_____,
               c__1____,
               c___11__,
               c_______
       },                      /* ( */
       {
               c_______,
               c__11___,
               c____1__,
               c_____1_,
               c_____1_,
               c_____1_,
               c____1__,
               c__11___,
               c_______
       },                      /* ) */
       {
               c_______,
               c_______,
               c_1___1_,
               c__1_1__,
               c1111111,
               c__1_1__,
               c_1___1_,
               c_______,
               c_______
       },                      /* * */
       {
               c_______,
               c_______,
               c___1___,
               c___1___,
               c_11111_,
               c___1___,
               c___1___,
               c_______,
               c_______
       },                      /* + */
       {
               c_______,
               c_______,
               c_______,
               c_______,
               c__111__,
               c__111__,
               c___1___,
               c__1____,
               c_______
       },                      /* , */
       {
               c_______,
               c_______,
               c_______,
               c_______,
               c_11111_,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /* - */
       {
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c__111__,
               c__111__,
               c__111__,
               c_______
       },                      /* . */
       {
               c_______,
               c______1,
               c_____1_,
               c____1__,
               c___1___,
               c__1____,
               c_1_____,
               c1______,
               c_______
       },                      /* / */
       {
               c_______,
               c__111__,
               c_1___1_,
               c1_____1,
               c1_____1,
               c1_____1,
               c_1___1_,
               c__111__,
               c_______
       },                      /* 0 */
       {
               c_______,
               c___1___,
               c__11___,
               c_1_1___,
               c___1___,
               c___1___,
               c___1___,
               c_11111_,
               c_______
       },                      /* 1 */
       {
               c_______,
               c_11111_,
               c1_____1,
               c______1,
               c_11111_,
               c1______,
               c1______,
               c1111111,
               c_______
       },                      /* 2 */
       {
               c_______,
               c_11111_,
               c1_____1,
               c______1,
               c_11111_,
               c______1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* 3 */
       {
               c_______,
               c1______,
               c1____1_,
               c1____1_,
               c1____1_,
               c1111111,
               c_____1_,
               c_____1_,
               c_______
       },                      /* 4 */
       {
               c_______,
               c1111111,
               c1______,
               c1______,
               c111111_,
               c______1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* 5 */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1______,
               c111111_,
               c1_____1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* 6 */
       {
               c_______,
               c1111111,
               c1____1_,
               c____1__,
               c___1___,
               c__1____,
               c__1____,
               c__1____,
               c_______
       },                      /* 7 */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1_____1,
               c_11111_,
               c1_____1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* 8 */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1_____1,
               c_111111,
               c______1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* 9 */
       {
               c_______,
               c___1___,
               c__111__,
               c___1___,
               c_______,
               c___1___,
               c__111__,
               c___1___,
               c_______
       },                      /* : */
       {
               c_______,
               c__111__,
               c__111__,
               c_______,
               c__111__,
               c__111__,
               c___1___,
               c__1____,
               c_______
       },                      /* ; */
       {
               c_______,
               c____1__,
               c___1___,
               c__1____,
               c_1_____,
               c__1____,
               c___1___,
               c____1__,
               c_______
       },                      /* < */
       {
               c_______,
               c_______,
               c_______,
               c_11111_,
               c_______,
               c_11111_,
               c_______,
               c_______,
               c_______
       },                      /* = */
       {
               c_______,
               c__1____,
               c___1___,
               c____1__,
               c_____1_,
               c____1__,
               c___1___,
               c__1____,
               c_______
       },                      /* > */
       {
               c_______,
               c_11111_,
               c1_____1,
               c______1,
               c___111_,
               c___1___,
               c_______,
               c___1___,
               c_______
       },                      /* ? */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1_111_1,
               c1_111_1,
               c1_1111_,
               c1______,
               c_11111_,
               c_______
       },                      /* @ */
       {
               c_______,
               c___1___,
               c__1_1__,
               c_1___1_,
               c1_____1,
               c1111111,
               c1_____1,
               c1_____1,
               c_______
       },                      /* A */
       {
               c_______,
               c111111_,
               c1_____1,
               c1_____1,
               c111111_,
               c1_____1,
               c1_____1,
               c111111_,
               c_______
       },                      /* B */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1______,
               c1______,
               c1______,
               c1_____1,
               c_11111_,
               c_______
       },                      /* C */
       {
               c_______,
               c111111_,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c111111_,
               c_______
       },                      /* D */
       {
               c_______,
               c1111111,
               c1______,
               c1______,
               c11111__,
               c1______,
               c1______,
               c1111111,
               c_______
       },                      /* E */
       {
               c_______,
               c1111111,
               c1______,
               c1______,
               c11111__,
               c1______,
               c1______,
               c1______,
               c_______
       },                      /* F */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1______,
               c1__1111,
               c1_____1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* G */
       {
               c_______,
               c1_____1,
               c1_____1,
               c1_____1,
               c1111111,
               c1_____1,
               c1_____1,
               c1_____1,
               c_______
       },                      /* H */
       {
               c_______,
               c__111__,
               c___1___,
               c___1___,
               c___1___,
               c___1___,
               c___1___,
               c__111__,
               c_______
       },                      /* I */
       {
               c_______,
               c______1,
               c______1,
               c______1,
               c______1,
               c1_____1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* J */
       {
               c_______,
               c1____1_,
               c1___1__,
               c1__1___,
               c111____,
               c1__1___,
               c1___1__,
               c1____1_,
               c_______
       },                      /* K */
       {
               c_______,
               c1______,
               c1______,
               c1______,
               c1______,
               c1______,
               c1______,
               c1111111,
               c_______
       },                      /* L */
       {
               c_______,
               c1_____1,
               c11___11,
               c1_1_1_1,
               c1__1__1,
               c1_____1,
               c1_____1,
               c1_____1,
               c_______
       },                      /* M */
       {
               c_______,
               c1_____1,
               c11____1,
               c1_1___1,
               c1__1__1,
               c1___1_1,
               c1____11,
               c1_____1,
               c_______
       },                      /* N */
       {
               c_______,
               c1111111,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c1111111,
               c_______
       },                      /* O */
       {
               c_______,
               c111111_,
               c1_____1,
               c1_____1,
               c111111_,
               c1______,
               c1______,
               c1______,
               c_______
       },                      /* P */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1_____1,
               c1_____1,
               c1___1_1,
               c1____1_,
               c_1111_1,
               c_______
       },                      /* Q */
       {
               c_______,
               c111111_,
               c1_____1,
               c1_____1,
               c111111_,
               c1___1__,
               c1____1_,
               c1_____1,
               c_______
       },                      /* R */
       {
               c_______,
               c_11111_,
               c1_____1,
               c1______,
               c_11111_,
               c______1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* S */
       {
               c_______,
               c1111111,
               c___1___,
               c___1___,
               c___1___,
               c___1___,
               c___1___,
               c___1___,
               c_______
       },                      /* T */
       {
               c_______,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c_11111_,
               c_______
       },                      /* U */
       {
               c_______,
               c1_____1,
               c1_____1,
               c1_____1,
               c1_____1,
               c_1___1_,
               c__1_1__,
               c___1___,
               c_______
       },                      /* V */
       {
               c_______,
               c1_____1,
               c1__1__1,
               c1__1__1,
               c1__1__1,
               c1__1__1,
               c1__1__1,
               c_11_11_,
               c_______
       },                      /* W */
       {
               c_______,
               c1_____1,
               c_1___1_,
               c__1_1__,
               c___1___,
               c__1_1__,
               c_1___1_,
               c1_____1,
               c_______
       },                      /* X */
       {
               c_______,
               c1_____1,
               c_1___1_,
               c__1_1__,
               c___1___,
               c___1___,
               c___1___,
               c___1___,
               c_______
       },                      /* Y */
       {
               c_______,
               c1111111,
               c_____1_,
               c____1__,
               c___1___,
               c__1____,
               c_1_____,
               c1111111,
               c_______
       },                      /* Z */
       {
               c_______,
               c_11111_,
               c_1_____,
               c_1_____,
               c_1_____,
               c_1_____,
               c_1_____,
               c_11111_,
               c_______
       },                      /* [ */
       {
               c_______,
               c1______,
               c_1_____,
               c__1____,
               c___1___,
               c____1__,
               c_____1_,
               c______1,
               c_______
       },                      /* \ */
       {
               c_______,
               c_11111_,
               c_____1_,
               c_____1_,
               c_____1_,
               c_____1_,
               c_____1_,
               c_11111_,
               c_______
       },                      /* ] */
       {
               c_______,
               c___1___,
               c__1_1__,
               c_1___1_,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /* ^ */
       {
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______,
               c1111111,
               c_______
       },                      /* _ */
       {
               c_______,
               c__111__,
               c__111__,
               c___1___,
               c____1__,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /* ` */
       {
               c_______,
               c_______,
               c___11__,
               c__1__1_,
               c_1____1,
               c_111111,
               c_1____1,
               c_1____1,
               c_______
       },                      /* a */
       {
               c_______,
               c_______,
               c_11111_,
               c_1____1,
               c_11111_,
               c_1____1,
               c_1____1,
               c_11111_,
               c_______
       },                      /* b */
       {
               c_______,
               c_______,
               c__1111_,
               c_1____1,
               c_1_____,
               c_1_____,
               c_1____1,
               c__1111_,
               c_______
       },                      /* c */
       {
               c_______,
               c_______,
               c_11111_,
               c_1____1,
               c_1____1,
               c_1____1,
               c_1____1,
               c_11111_,
               c_______
       },                      /* d */
       {
               c_______,
               c_______,
               c_111111,
               c_1_____,
               c_11111_,
               c_1_____,
               c_1_____,
               c_111111,
               c_______
       },                      /* e */
       {
               c_______,
               c_______,
               c_111111,
               c_1_____,
               c_11111_,
               c_1_____,
               c_1_____,
               c_1_____,
               c_______
       },                      /* f */
       {
               c_______,
               c_______,
               c__1111_,
               c_1____1,
               c_1_____,
               c_1__111,
               c_1____1,
               c__1111_,
               c_______
       },                      /* g */
       {
               c_______,
               c_______,
               c_1____1,
               c_1____1,
               c_111111,
               c_1____1,
               c_1____1,
               c_1____1,
               c_______
       },                      /* h */
       {
               c_______,
               c_______,
               c____1__,
               c____1__,
               c____1__,
               c____1__,
               c____1__,
               c____1__,
               c_______
       },                      /* i */
       {
               c_______,
               c_______,
               c______1,
               c______1,
               c______1,
               c______1,
               c_1____1,
               c__1111_,
               c_______
       },                      /* j */
       {
               c_______,
               c_______,
               c_1____1,
               c_1___1_,
               c_1111__,
               c_1__1__,
               c_1___1_,
               c_1____1,
               c_______
       },                      /* k */
       {
               c_______,
               c_______,
               c_1_____,
               c_1_____,
               c_1_____,
               c_1_____,
               c_1_____,
               c_111111,
               c_______
       },                      /* l */
       {
               c_______,
               c_______,
               c_1____1,
               c_11__11,
               c_1_11_1,
               c_1____1,
               c_1____1,
               c_1____1,
               c_______
       },                      /* m */
       {
               c_______,
               c_______,
               c_1____1,
               c_11___1,
               c_1_1__1,
               c_1__1_1,
               c_1___11,
               c_1____1,
               c_______
       },                      /* n */
       {
               c_______,
               c_______,
               c__1111_,
               c_1____1,
               c_1____1,
               c_1____1,
               c_1____1,
               c__1111_,
               c_______
       },                      /* o */
       {
               c_______,
               c_______,
               c_11111_,
               c_1____1,
               c_1____1,
               c_11111_,
               c_1_____,
               c_1_____,
               c_______
       },                      /* p */
       {
               c_______,
               c_______,
               c__1111_,
               c_1____1,
               c_1____1,
               c_1__1_1,
               c_1___1_,
               c__111_1,
               c_______
       },                      /* q */
       {
               c_______,
               c_______,
               c_11111_,
               c_1____1,
               c_1____1,
               c_11111_,
               c_1___1_,
               c_1____1,
               c_______
       },                      /* r */
       {
               c_______,
               c_______,
               c__1111_,
               c_1_____,
               c__1111_,
               c______1,
               c_1____1,
               c__1111_,
               c_______
       },                      /* s */
       {
               c_______,
               c_______,
               c__11111,
               c____1__,
               c____1__,
               c____1__,
               c____1__,
               c____1__,
               c_______
       },                      /* t */
       {
               c_______,
               c_______,
               c_1____1,
               c_1____1,
               c_1____1,
               c_1____1,
               c_1____1,
               c__1111_,
               c_______
       },                      /* u */
       {
               c_______,
               c_______,
               c_1____1,
               c_1____1,
               c_1____1,
               c_1____1,
               c__1__1_,
               c___11__,
               c_______
       },                      /* v */
       {
               c_______,
               c_______,
               c_1____1,
               c_1____1,
               c_1____1,
               c_1_11_1,
               c_11__11,
               c_1____1,
               c_______
       },                      /* w */
       {
               c_______,
               c_______,
               c_1____1,
               c__1__1_,
               c___11__,
               c___11__,
               c__1__1_,
               c_1____1,
               c_______
       },                      /* x */
       {
               c_______,
               c_______,
               c__1___1,
               c___1_1_,
               c____1__,
               c____1__,
               c____1__,
               c____1__,
               c_______
       },                      /* y */
       {
               c_______,
               c_______,
               c_111111,
               c_____1_,
               c____1__,
               c___1___,
               c__1____,
               c_111111,
               c_______
       },                      /* z */
       {
               c_______,
               c__111__,
               c_1_____,
               c_1_____,
               c11_____,
               c_1_____,
               c_1_____,
               c__111__,
               c_______
       },                      /* { */
       {
               c_______,
               c___1___,
               c___1___,
               c___1___,
               c_______,
               c___1___,
               c___1___,
               c___1___,
               c_______
       },                      /* | */
       {
               c_______,
               c__111__,
               c_____1_,
               c_____1_,
               c_____11,
               c_____1_,
               c_____1_,
               c__111__,
               c_______
       },                      /* } */
       {
               c_______,
               c_11____,
               c1__1__1,
               c____11_,
               c_______,
               c_______,
               c_______,
               c_______,
               c_______
       },                      /* ~ */

       {
               c_______,
               c_1__1__,
               c1__1__1,
               c__1__1_,
               c_1__1__,
               c1__1__1,
               c__1__1_,
               c_1__1__,
               c1__1__1
       }                       /* rub-out */
};