/* ScummVM - Graphic Adventure Engine
 *
 * ScummVM is the legal property of its developers, whose names
 * are too numerous to list here. Please refer to the COPYRIGHT
 * file distributed with this source distribution.
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.

 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.

 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 *
 * $URL$
 * $Id$
 *
 */



#include "common/system.h"

#include "agos/agos.h"
#include "agos/intern.h"

#include "graphics/surface.h"

namespace AGOS {

static const byte feebleFontSize[208] = {
	8, 2, 5, 7, 8, 8, 8, 2, 4, 4, 8, 8, 3, 8, 2, 9,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 2, 3, 5, 8, 5, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 4, 8, 8, 8, 8, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 4, 9, 4, 4, 9,
	4, 8, 8, 8, 8, 8, 7, 8, 8, 4, 5, 7, 3, 8, 8, 8,
	8, 8, 8, 7, 7, 8, 8, 8, 8, 8, 8, 5, 2, 5, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 4, 4, 4, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
	8, 4, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 2, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
	8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
};

uint AGOSEngine::getFeebleFontSize(byte chr) {
	return feebleFontSize[chr - 32];
}

static const byte feeble_windowFont[] = {
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	128,128,128,128,128,128,128,0,0,128,0,0,0,
	144,144,144,0,0,0,0,0,0,0,0,0,0,
	0,72,252,72,72,252,72,0,0,0,0,0,0,
	124,146,144,144,124,18,18,18,146,124,16,16,0,
	62,98,146,100,8,16,32,76,146,140,0,0,0,
	0,112,136,136,80,32,82,138,132,122,0,0,0,
	128,128,128,0,0,0,0,0,0,0,0,0,0,
	32,64,128,128,128,128,128,128,64,32,0,0,0,
	128,64,32,32,32,32,32,32,64,128,0,0,0,
	16,146,84,56,56,84,146,16,0,0,0,0,0,
	0,0,16,16,16,254,16,16,16,0,0,0,0,
	0,0,0,0,0,0,0,0,0,64,64,128,0,
	0,0,0,0,0,254,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,128,0,0,0,
	0,0,1,2,4,8,16,32,64,128,128,0,0,
	120,132,132,132,132,132,132,132,132,120,0,0,0,
	16,48,16,16,16,16,16,16,16,56,0,0,0,
	120,132,132,4,4,8,16,32,64,252,0,0,0,
	124,130,130,2,2,28,2,2,130,124,0,0,0,
	4,12,20,36,68,132,254,4,4,4,0,0,0,
	254,128,128,252,2,2,2,2,130,124,0,0,0,
	62,64,128,252,130,130,130,130,130,124,0,0,0,
	254,2,2,2,2,4,8,16,16,16,0,0,0,
	120,132,132,132,120,132,132,132,132,120,0,0,0,
	124,130,130,130,130,130,126,2,2,124,0,0,0,
	0,0,0,0,128,0,0,0,128,0,0,0,0,
	0,0,0,0,0,64,0,0,0,64,64,128,0,
	0,0,16,32,64,128,64,32,16,0,0,0,0,
	0,0,0,254,0,0,254,0,0,0,0,0,0,
	0,0,128,64,32,16,32,64,128,0,0,0,0,
	60,66,130,2,4,8,16,16,0,16,16,0,0,
	60,66,130,154,166,166,156,128,128,126,0,0,0,
	124,130,130,130,130,254,130,130,130,130,0,0,0,
	252,130,130,130,252,130,130,130,130,252,0,0,0,
	124,130,130,128,128,128,128,130,130,124,0,0,0,
	252,130,130,130,130,130,130,130,130,252,0,0,0,
	254,128,128,128,128,252,128,128,128,254,0,0,0,
	254,128,128,128,128,252,128,128,128,128,0,0,0,
	124,130,130,128,128,134,130,130,130,124,0,0,0,
	130,130,130,130,130,254,130,130,130,130,0,0,0,
	224,64,64,64,64,64,64,64,64,224,0,0,0,
	30,2,2,2,2,2,130,130,130,124,0,0,0,
	130,130,132,136,144,224,144,136,132,130,0,0,0,
	128,128,128,128,128,128,128,128,128,254,0,0,0,
	130,198,170,146,130,130,130,130,130,130,0,0,0,
	130,130,194,162,146,138,134,130,130,130,0,0,0,
	124,130,130,130,130,130,130,130,130,124,0,0,0,
	252,130,130,130,130,252,128,128,128,128,0,0,0,
	124,130,130,130,130,130,130,130,130,126,2,2,0,
	252,130,130,130,130,252,130,130,130,130,0,0,0,
	124,130,128,128,124,2,2,130,130,124,0,0,0,
	254,16,16,16,16,16,16,16,16,16,0,0,0,
	130,130,130,130,130,130,130,130,130,124,0,0,0,
	130,130,130,130,130,130,130,68,40,16,0,0,0,
	130,130,130,130,130,130,130,146,170,198,0,0,0,
	130,68,40,16,16,16,16,40,68,130,0,0,0,
	130,130,130,130,68,40,16,16,16,16,0,0,0,
	254,2,2,4,8,16,32,64,128,254,0,0,0,
	224,128,128,128,128,128,128,128,128,224,0,0,0,
	128,128,64,32,16,8,4,2,1,0,0,0,0,
	224,32,32,32,32,32,32,32,32,224,0,0,0,
	160,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,255,0,0,0,
	32,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,62,66,130,130,130,134,122,0,0,0,
	128,128,128,252,130,130,130,130,130,252,0,0,0,
	0,0,0,124,130,128,128,128,130,124,0,0,0,
	2,2,2,126,130,130,130,130,130,126,0,0,0,
	0,0,0,124,130,130,254,128,128,126,0,0,0,
	28,32,32,248,32,32,32,32,32,32,0,0,0,
	0,0,0,62,66,130,130,130,130,126,2,2,124,
	128,128,128,252,130,130,130,130,130,130,0,0,0,
	64,0,0,64,192,64,64,64,64,224,0,0,0,
	16,0,0,16,16,16,16,16,16,16,16,16,224,
	128,128,128,132,136,144,224,144,136,132,0,0,0,
	192,64,64,64,64,64,64,64,64,64,0,0,0,
	0,0,0,252,146,146,146,146,146,146,0,0,0,
	0,0,0,156,162,194,130,130,130,130,0,0,0,
	0,0,0,124,130,130,130,130,130,124,0,0,0,
	0,0,0,252,130,130,130,130,130,252,128,128,128,
	0,0,0,126,130,130,130,130,130,126,2,2,2,
	0,0,0,156,162,194,128,128,128,128,0,0,0,
	0,0,0,124,128,128,120,4,4,248,0,0,0,
	32,32,32,248,32,32,32,32,32,28,0,0,0,
	0,0,0,130,130,130,130,130,130,126,0,0,0,
	0,0,0,130,130,130,130,68,40,16,0,0,0,
	0,0,0,146,146,146,146,146,146,124,0,0,0,
	0,0,0,130,68,40,16,40,68,130,0,0,0,
	0,0,0,130,130,130,130,130,130,126,2,2,124,
	0,0,0,254,4,8,16,32,64,254,0,0,0,
	48,64,64,64,64,128,64,64,64,64,48,0,0,
	128,128,128,128,128,128,128,128,128,128,128,128,0,
	192,32,32,32,32,16,32,32,32,32,192,0,0,
	152,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,254,0,0,
	124,130,130,128,128,128,128,130,130,124,16,16,48,
	0,40,0,130,130,130,130,130,130,126,0,0,0,
	16,32,0,124,130,130,254,128,128,126,0,0,0,
	16,40,0,62,66,130,130,130,134,122,0,0,0,
	0,40,0,62,66,130,130,130,134,122,0,0,0,
	16,8,0,62,66,130,130,130,134,122,0,0,0,
	8,20,8,62,66,130,130,130,134,122,0,0,0,
	0,0,0,124,130,128,128,128,130,124,16,16,48,
	16,40,0,124,130,130,254,128,128,126,0,0,0,
	0,40,0,124,130,130,254,128,128,126,0,0,0,
	16,8,0,124,130,130,254,128,128,126,0,0,0,
	0,160,0,64,192,64,64,64,64,224,0,0,0,
	64,160,0,64,192,64,64,64,64,224,0,0,0,
	128,64,0,64,192,64,64,64,64,224,0,0,0,
	40,0,124,130,130,130,254,130,130,130,0,0,0,
	16,40,124,130,130,130,254,130,130,130,0,0,0,
	40,0,254,128,128,252,128,128,128,254,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	16,40,0,124,130,130,130,130,130,124,0,0,0,
	0,40,0,124,130,130,130,130,130,124,0,0,0,
	32,16,0,124,130,130,130,130,130,124,0,0,0,
	16,40,0,130,130,130,130,130,130,126,0,0,0,
	16,8,0,130,130,130,130,130,130,126,0,0,0,
	0,40,0,130,130,130,130,130,130,126,2,2,124,
	40,0,124,130,130,130,130,130,130,124,0,0,0,
	40,0,130,130,130,130,130,130,130,124,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	8,16,0,62,66,130,130,130,134,122,0,0,0,
	64,128,0,64,192,64,64,64,64,224,0,0,0,
	16,32,0,124,130,130,130,130,130,124,0,0,0,
	8,16,0,130,130,130,130,130,130,126,0,0,0,
	20,40,0,156,162,194,130,130,130,130,0,0,0,
	20,40,130,194,162,146,138,134,130,130,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	16,16,0,16,16,32,64,128,130,132,120,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	128,0,0,128,128,128,128,128,128,128,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
	60,66,130,130,130,132,132,130,130,130,156,128,128,
	0,0,0,0,0,0,0,0,0,0,0,0,0,
};

static const byte czech_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	80, 32, 120, 128, 112, 8, 240, 0,
	16, 32, 112, 136, 136, 136, 112, 0,
	80, 32, 176, 72, 72, 64, 224, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	0, 112, 136, 240, 136, 136, 240, 0,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	80, 32, 248, 144, 32, 72, 248, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	8, 16, 112, 8, 120, 136, 120, 0,
	32, 80, 32, 144, 144, 144, 104, 0,
	16, 32, 112, 136, 248, 128, 112, 0,
	80, 32, 112, 136, 248, 128, 112, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	32, 64, 192, 64, 64, 64, 224, 0,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	80, 32, 112, 136, 128, 136, 112, 0,
	16, 32, 136, 136, 136, 112, 32, 192,
	16, 32, 144, 144, 144, 144, 104, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte russian_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 0, 100, 40, 48, 40, 100, 0,
	0, 0, 96, 48, 40, 40, 112, 0,
	60, 68, 68, 60, 36, 68, 68, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	72, 84, 84, 116, 84, 84, 72, 0,
	0, 0, 60, 68, 60, 36, 100, 0,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	16, 32, 0, 120, 112, 64, 56, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	32, 16, 0, 112, 8, 248, 120, 0,
	0, 0, 96, 48, 40, 40, 112, 0,
	0, 0, 112, 88, 20, 20, 56, 0,
	0, 0, 120, 4, 28, 4, 120, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	0, 0, 84, 84, 84, 84, 56, 4,
	56, 68, 68, 124, 68, 68, 68, 0,
	124, 36, 32, 56, 36, 36, 120, 0,
	120, 36, 36, 56, 36, 36, 120, 0,
	124, 36, 32, 32, 32, 32, 112, 0,
	56, 40, 40, 40, 40, 40, 124, 68,
	124, 36, 32, 56, 32, 36, 124, 0,
	84, 84, 84, 56, 84, 84, 84, 0,
	56, 68, 4, 24, 4, 68, 56, 0,
	68, 68, 76, 84, 100, 68, 68, 0,
	100, 40, 40, 48, 40, 36, 100, 0,
	28, 36, 36, 36, 36, 36, 100, 0,
	68, 108, 84, 68, 68, 68, 68, 0,
	68, 68, 68, 124, 68, 68, 68, 0,
	56, 68, 68, 68, 68, 68, 56, 0,
	124, 68, 68, 68, 68, 68, 68, 0,
	120, 36, 36, 56, 32, 32, 112, 0,
	56, 68, 64, 64, 64, 68, 56, 0,
	124, 84, 16, 16, 16, 16, 56, 0,
	100, 36, 36, 28, 4, 4, 56, 0,
	56, 84, 84, 84, 56, 16, 56, 0,
	108, 40, 16, 16, 40, 40, 108, 0,
	72, 72, 72, 72, 72, 72, 60, 4,
	76, 72, 72, 56, 8, 8, 28, 0,
	84, 84, 84, 84, 84, 84, 60, 0,
	84, 84, 84, 84, 84, 84, 56, 4,
	56, 68, 4, 28, 4, 68, 56, 0,
	0, 0, 68, 100, 84, 84, 100, 0,
	0, 0, 72, 84, 116, 84, 72, 0,
	0, 0, 60, 68, 60, 36, 100, 0,
	0, 0, 120, 4, 24, 4, 120, 0,
	0, 0, 100, 40, 48, 40, 100, 0,
	60, 68, 68, 60, 36, 68, 68, 0,
	0, 0, 56, 4, 60, 68, 60, 0,
	60, 64, 32, 56, 68, 68, 56, 0,
	48, 72, 80, 120, 68, 68, 56, 0,
	0, 0, 120, 4, 56, 64, 60, 0,
	56, 4, 4, 60, 68, 68, 56, 0,
	0, 0, 56, 68, 120, 64, 56, 0,
	40, 0, 56, 68, 120, 64, 56, 0,
	0, 0, 84, 84, 56, 84, 84, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	0, 0, 68, 68, 68, 68, 60, 0,
	56, 0, 68, 68, 68, 68, 60, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 28, 36, 36, 36, 100, 0,
	0, 0, 68, 108, 84, 68, 68, 0,
	0, 0, 56, 68, 68, 68, 56, 0,
	0, 0, 68, 68, 124, 68, 68, 0,
	0, 0, 124, 68, 68, 68, 68, 0,
	0, 0, 120, 36, 36, 56, 32, 112,
	0, 0, 60, 64, 64, 64, 60, 0,
	0, 0, 124, 84, 16, 16, 56, 0,
	0, 0, 68, 68, 60, 4, 56, 0,
	48, 16, 56, 84, 84, 56, 16, 56,
	0, 0, 68, 40, 16, 40, 68, 0,
	0, 0, 72, 72, 72, 72, 60, 4,
	0, 0, 76, 72, 72, 56, 8, 28,
	0, 0, 84, 84, 84, 84, 60, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte polish_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 0, 112, 136, 248, 128, 112, 8,
	0, 16, 120, 128, 112, 8, 240, 0,
	192, 64, 64, 96, 192, 64, 224, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	0, 32, 112, 136, 136, 136, 112, 0,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	0, 32, 112, 136, 128, 136, 112, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	0, 32, 240, 136, 136, 136, 136, 0,
	80, 0, 136, 136, 136, 136, 112, 0,
	0, 32, 248, 144, 32, 72, 248, 0,
	8, 32, 248, 144, 32, 72, 248, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	0, 0, 112, 8, 120, 136, 120, 4,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	224, 64, 64, 96, 192, 72, 248, 0,
	16, 120, 128, 112, 8, 136, 112, 0,
	248, 72, 64, 112, 64, 72, 248, 16,
	32, 248, 16, 32, 64, 136, 248, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte french_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	32, 80, 0, 112, 136, 136, 112, 0,
	32, 80, 0, 112, 8, 248, 120, 0,
	112, 136, 128, 128, 136, 112, 32, 96,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	112, 136, 128, 128, 136, 112, 32, 96,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	32, 64, 0, 112, 248, 128, 112, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	32, 16, 0, 112, 8, 248, 120, 0,
	32, 80, 0, 144, 144, 144, 104, 0,
	32, 16, 0, 112, 248, 128, 112, 0,
	32, 80, 0, 112, 248, 128, 112, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	32, 80, 0, 192, 64, 64, 224, 0,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	0, 0, 112, 136, 128, 112, 32, 96,
	160, 0, 192, 64, 64, 64, 224, 0,
	32, 16, 0, 144, 144, 144, 104, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte german_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	80, 0, 112, 8, 120, 136, 120, 0,
	80, 0, 112, 136, 136, 136, 112, 0,
	80, 0, 144, 144, 144, 144, 104, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	96, 144, 144, 160, 144, 144, 160, 128,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	80, 0, 112, 136, 248, 136, 136, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	136, 112, 136, 136, 136, 136, 112, 0,
	80, 0, 136, 136, 136, 136, 112, 0,
	80, 0, 144, 144, 144, 144, 104, 0,
	32, 64, 0, 112, 248, 128, 112, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	32, 80, 0, 192, 64, 64, 224, 0,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	0, 48, 72, 64, 72, 48, 16, 48,
	0, 80, 0, 96, 32, 40, 48, 0,
	32, 16, 0, 152, 144, 144, 232, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte hebrew_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 144, 0, 96, 144, 144, 104, 0,
	0, 144, 0, 96, 144, 144, 96, 0,
	0, 144, 0, 144, 144, 144, 96, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	0, 112, 136, 240, 136, 136, 240, 0,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	16, 32, 0, 120, 112, 64, 56, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	5, 5, 4, 6, 5, 3, 4, 5,
	6, 3, 5, 5, 4, 6, 5, 3,
	4, 6, 5, 6, 6, 6, 5, 5,
	5, 6, 5, 6, 6, 6, 6, 6,
	112, 136, 8, 16, 32, 0, 32, 0,
	0, 0, 144, 80, 160, 144, 144, 0,
	0, 0, 224, 32, 32, 32, 240, 0,
	0, 0, 224, 32, 96, 160, 160, 0,
	0, 0, 248, 16, 16, 16, 16, 0,
	0, 0, 240, 16, 16, 144, 144, 0,
	0, 0, 192, 64, 64, 64, 64, 0,
	0, 0, 224, 64, 32, 64, 64, 0,
	0, 0, 240, 144, 144, 144, 144, 0,
	0, 0, 184, 168, 136, 136, 112, 0,
	0, 0, 192, 64, 0, 0, 0, 0,
	0, 0, 240, 16, 16, 16, 16, 16,
	0, 0, 224, 16, 16, 16, 224, 0,
	128, 128, 224, 32, 32, 32, 192, 0,
	0, 0, 248, 72, 72, 72, 120, 0,
	0, 0, 176, 208, 144, 144, 176, 0,
	0, 0, 192, 64, 64, 64, 64, 64,
	0, 0, 96, 32, 32, 32, 224, 0,
	0, 0, 248, 72, 72, 72, 48, 0,
	0, 0, 80, 80, 80, 80, 224, 0,
	0, 0, 248, 72, 104, 8, 8, 8,
	0, 0, 248, 72, 104, 8, 248, 0,
	0, 0, 216, 72, 48, 16, 16, 16,
	0, 0, 144, 80, 32, 16, 240, 0,
	0, 0, 240, 16, 144, 160, 128, 128,
	0, 0, 240, 16, 16, 16, 16, 0,
	0, 0, 168, 168, 200, 136, 112, 0,
	0, 0, 240, 80, 80, 80, 208, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	0, 48, 72, 64, 72, 48, 16, 48,
	0, 80, 0, 96, 32, 40, 48, 0,
	32, 16, 0, 152, 144, 144, 232, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte italian_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	80, 0, 112, 8, 120, 136, 120, 0,
	80, 0, 112, 136, 136, 136, 112, 0,
	32, 16, 0, 112, 136, 136, 112, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	32, 16, 0, 192, 64, 64, 224, 0,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	32, 64, 0, 112, 248, 128, 112, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	32, 16, 0, 112, 8, 248, 120, 0,
	32, 16, 0, 112, 136, 136, 112, 0,
	32, 16, 0, 112, 248, 128, 112, 0,
	32, 80, 0, 112, 248, 128, 112, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	32, 80, 0, 96, 32, 40, 48, 0,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	0, 0, 112, 136, 128, 112, 32, 96,
	160, 0, 192, 64, 64, 64, 224, 0,
	32, 16, 0, 144, 144, 144, 104, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte spanish_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	80, 0, 112, 8, 120, 136, 120, 0,
	80, 0, 112, 136, 136, 136, 112, 0,
	80, 0, 144, 144, 144, 144, 104, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	96, 144, 144, 160, 144, 144, 160, 128,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	32, 64, 0, 112, 248, 128, 112, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	32, 64, 0, 112, 8, 248, 120, 0,
	32, 64, 0, 192, 64, 64, 224, 0,
	32, 64, 0, 112, 136, 136, 112, 0,
	32, 64, 0, 144, 144, 144, 104, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	80, 160, 0, 240, 136, 136, 136, 0,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	32, 0, 32, 64, 128, 136, 112, 0,
	32, 0, 32, 32, 112, 112, 32, 0,
	80, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte english_simonFont[] = {
	0, 0, 0, 0, 0, 0, 0, 0,
	32, 112, 112, 32, 32, 0, 32, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 144, 0, 96, 144, 144, 104, 0,
	0, 144, 0, 96, 144, 144, 96, 0,
	0, 144, 0, 144, 144, 144, 96, 0,
	0, 16, 40, 16, 42, 68, 58, 0,
	48, 48, 96, 0, 0, 0, 0, 0,
	0, 4, 8, 8, 8, 8, 4, 0,
	0, 32, 16, 16, 16, 16, 32, 0,
	0, 0, 20, 8, 62, 8, 20, 0,
	0, 112, 136, 240, 136, 136, 240, 0,
	0, 0, 0, 0, 0, 48, 48, 96,
	0, 0, 0, 240, 0, 0, 0, 0,
	0, 0, 0, 0, 0, 48, 48, 0,
	16, 32, 0, 120, 112, 64, 56, 0,
	112, 136, 152, 168, 200, 136, 112, 0,
	32, 96, 32, 32, 32, 32, 112, 0,
	112, 136, 8, 48, 64, 136, 248, 0,
	112, 136, 8, 48, 8, 136, 112, 0,
	16, 48, 80, 144, 248, 16, 56, 0,
	248, 128, 240, 8, 8, 136, 112, 0,
	48, 64, 128, 240, 136, 136, 112, 0,
	248, 136, 8, 16, 32, 32, 32, 0,
	112, 136, 136, 112, 136, 136, 112, 0,
	112, 136, 136, 120, 8, 16, 96, 0,
	0, 0, 48, 48, 0, 48, 48, 0,
	32, 16, 0, 112, 8, 248, 120, 0,
	32, 80, 0, 144, 144, 144, 104, 0,
	80, 0, 144, 144, 144, 144, 104, 0,
	32, 80, 0, 112, 248, 128, 112, 0,
	112, 136, 8, 16, 32, 0, 32, 0,
	32, 80, 0, 192, 64, 64, 224, 0,
	112, 136, 136, 248, 136, 136, 136, 0,
	240, 72, 72, 112, 72, 72, 240, 0,
	48, 72, 128, 128, 128, 72, 48, 0,
	224, 80, 72, 72, 72, 80, 224, 0,
	248, 72, 64, 112, 64, 72, 248, 0,
	248, 72, 64, 112, 64, 64, 224, 0,
	48, 72, 128, 152, 136, 72, 56, 0,
	136, 136, 136, 248, 136, 136, 136, 0,
	248, 32, 32, 32, 32, 32, 248, 0,
	24, 8, 8, 8, 136, 136, 112, 0,
	200, 72, 80, 96, 80, 72, 200, 0,
	224, 64, 64, 64, 64, 72, 248, 0,
	136, 216, 168, 168, 136, 136, 136, 0,
	136, 200, 168, 152, 136, 136, 136, 0,
	112, 136, 136, 136, 136, 136, 112, 0,
	240, 72, 72, 112, 64, 64, 224, 0,
	112, 136, 136, 136, 136, 168, 112, 8,
	240, 72, 72, 112, 72, 72, 200, 0,
	112, 136, 128, 112, 8, 136, 112, 0,
	248, 168, 32, 32, 32, 32, 112, 0,
	136, 136, 136, 136, 136, 136, 120, 0,
	136, 136, 136, 80, 80, 32, 32, 0,
	136, 136, 136, 136, 168, 216, 136, 0,
	136, 136, 80, 32, 80, 136, 136, 0,
	136, 136, 136, 112, 32, 32, 112, 0,
	248, 136, 16, 32, 64, 136, 248, 0,
	0, 14, 8, 8, 8, 8, 14, 0,
	0, 128, 64, 32, 16, 8, 4, 0,
	0, 112, 16, 16, 16, 16, 112, 0,
	0, 48, 72, 64, 72, 48, 16, 48,
	0, 80, 0, 96, 32, 40, 48, 0,
	32, 16, 0, 152, 144, 144, 232, 0,
	0, 0, 112, 8, 120, 136, 120, 0,
	192, 64, 80, 104, 72, 72, 112, 0,
	0, 0, 112, 136, 128, 136, 112, 0,
	24, 16, 80, 176, 144, 144, 112, 0,
	0, 0, 112, 136, 248, 128, 112, 0,
	48, 72, 64, 224, 64, 64, 224, 0,
	0, 0, 104, 144, 144, 112, 136, 112,
	192, 64, 80, 104, 72, 72, 200, 0,
	64, 0, 192, 64, 64, 64, 224, 0,
	8, 0, 8, 8, 8, 8, 136, 112,
	192, 64, 72, 80, 96, 80, 200, 0,
	192, 64, 64, 64, 64, 64, 224, 0,
	0, 0, 144, 216, 168, 136, 136, 0,
	0, 0, 240, 136, 136, 136, 136, 0,
	0, 0, 112, 136, 136, 136, 112, 0,
	0, 0, 176, 72, 72, 112, 64, 224,
	0, 0, 104, 144, 144, 112, 16, 56,
	0, 0, 176, 72, 72, 64, 224, 0,
	0, 0, 120, 128, 112, 8, 240, 0,
	64, 64, 240, 64, 64, 72, 48, 0,
	0, 0, 144, 144, 144, 144, 104, 0,
	0, 0, 136, 136, 136, 80, 32, 0,
	0, 0, 136, 136, 168, 216, 144, 0,
	0, 0, 136, 80, 32, 80, 136, 0,
	0, 0, 136, 136, 136, 112, 32, 192,
	0, 0, 248, 144, 32, 72, 248, 0,
	32, 80, 0, 96, 144, 144, 96, 0,
	0, 14, 8, 48, 8, 8, 14, 0,
	0, 8, 8, 8, 8, 8, 8, 0,
	0, 112, 16, 12, 16, 16, 112, 0,
	0, 0, 0, 0, 0, 0, 248, 0,
	252, 252, 252, 252, 252, 252, 252, 252,
	240, 240, 240, 240, 240, 240, 240, 240,
};

static const byte spanish_commonFont[] = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20,
	0x00, 0x50, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x90, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x90, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x90, 0x00, 0x90, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x10, 0x28, 0x10, 0x2A, 0x44, 0x3A, 0x00,
	0x00, 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x04, 0x08, 0x08, 0x08, 0x08, 0x04, 0x00,
	0x00, 0x20, 0x10, 0x10, 0x10, 0x10, 0x20, 0x00,
	0x00, 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14, 0x00,
	0x00, 0x70, 0x88, 0xF0, 0x88, 0x88, 0xF0, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x10,
	0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00,
	0x10, 0x20, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x70, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x20, 0x60, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x10, 0x20, 0x48, 0xF8, 0x00,
	0x00, 0x70, 0x88, 0x30, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x10, 0x20, 0x40, 0x90, 0xF8, 0x10, 0x00,
	0x00, 0xF8, 0x80, 0x70, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x80, 0xF0, 0x88, 0x70, 0x00,
	0x00, 0xF8, 0x08, 0x10, 0x20, 0x40, 0x40, 0x00,
	0x00, 0x70, 0x88, 0x70, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x78, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00,
	0x20, 0x40, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x20, 0x40, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x40, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x20, 0x40, 0x00, 0x98, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x3C, 0x42, 0x04, 0x08, 0x00, 0x08, 0x00,
	0x28, 0x50, 0x00, 0xD8, 0x68, 0x48, 0x48, 0x00,
	0x20, 0x50, 0x50, 0x70, 0x50, 0x50, 0x88, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x48, 0x48, 0xF0, 0x00,
	0x30, 0x48, 0x80, 0x80, 0x80, 0x48, 0x30, 0x00,
	0xF0, 0x48, 0x48, 0x48, 0x48, 0x48, 0xF0, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xF8, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xE0, 0x00,
	0x38, 0x40, 0x80, 0x98, 0x88, 0x48, 0x30, 0x00,
	0xC8, 0x48, 0x48, 0x78, 0x48, 0x48, 0xC8, 0x00,
	0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x78, 0x10, 0x10, 0x10, 0x90, 0x90, 0x60, 0x00,
	0xC8, 0x50, 0x60, 0x40, 0x60, 0x50, 0xC8, 0x00,
	0xE0, 0x40, 0x40, 0x40, 0x40, 0x48, 0xF8, 0x00,
	0x88, 0xD8, 0xA8, 0x88, 0x88, 0x88, 0x88, 0x00,
	0xC8, 0x48, 0x68, 0x58, 0x58, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x40, 0x40, 0xC0, 0x00,
	0x60, 0x90, 0x90, 0x90, 0xB0, 0x90, 0x68, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x50, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x80, 0x60, 0x10, 0x88, 0x70, 0x00,
	0xF8, 0xA8, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x88, 0x50, 0x50, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x88, 0xA8, 0xD8, 0x88, 0x00,
	0x88, 0x50, 0x70, 0x20, 0x70, 0x50, 0x88, 0x00,
	0x88, 0x48, 0x30, 0x20, 0x40, 0x80, 0xC0, 0x00,
	0xF8, 0x88, 0x10, 0x20, 0x40, 0x80, 0xF8, 0x00,
	0x00, 0x0E, 0x08, 0x08, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x00,
	0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x20, 0x00, 0x20, 0x40, 0x88, 0x70, 0x00,
	0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00,
	0x00, 0x90, 0x00, 0x90, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x00, 0x60, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x40, 0x40, 0x50, 0x68, 0x48, 0x48, 0xF0, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x00,
	0x10, 0x10, 0x70, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x00, 0x70, 0x48, 0x70, 0x40, 0x38, 0x00,
	0x10, 0x38, 0x20, 0x70, 0x20, 0x20, 0x20, 0x40,
	0x00, 0x00, 0x78, 0x90, 0x90, 0x90, 0x70, 0x10,
	0xC0, 0x40, 0x58, 0x68, 0x48, 0x48, 0xC8, 0x00,
	0x20, 0x00, 0x60, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x10, 0x18, 0x10, 0x10, 0x10, 0x10, 0x10, 0x60,
	0x40, 0x40, 0x70, 0x48, 0x70, 0x50, 0xC8, 0x00,
	0x40, 0x40, 0x40, 0x40, 0x40, 0x50, 0x60, 0x00,
	0x00, 0x00, 0xA8, 0xF8, 0xA8, 0xA8, 0xA8, 0x00,
	0x00, 0x00, 0xD8, 0x68, 0x48, 0x48, 0x48, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x30, 0x00,
	0x00, 0x00, 0xF0, 0x48, 0x48, 0x70, 0x40, 0xC0,
	0x00, 0x00, 0x70, 0x90, 0x90, 0x70, 0x18, 0x10,
	0x00, 0x00, 0xD8, 0x68, 0x40, 0x40, 0xE0, 0x00,
	0x00, 0x00, 0x38, 0x40, 0x30, 0x08, 0x70, 0x00,
	0x20, 0x20, 0x70, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x88, 0x88, 0x50, 0x50, 0x20, 0x00,
	0x00, 0x00, 0xA8, 0xA8, 0xA8, 0xF8, 0xA8, 0x00,
	0x00, 0x00, 0x88, 0x50, 0x20, 0x50, 0x88, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x70, 0x10, 0x60,
	0x00, 0x00, 0x78, 0x10, 0x20, 0x40, 0x78, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x0E, 0x08, 0x30, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
	0x00, 0x70, 0x10, 0x0C, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x14, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00,
	0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC,
	0x00, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0x00,
};

static const byte italian_commonFont[] = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20,
	0x00, 0x50, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x90, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x90, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x40, 0x20, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x10, 0x28, 0x10, 0x2A, 0x44, 0x3A, 0x00,
	0x00, 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x04, 0x08, 0x08, 0x08, 0x08, 0x04, 0x00,
	0x00, 0x20, 0x10, 0x10, 0x10, 0x10, 0x20, 0x00,
	0x00, 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14, 0x00,
	0x40, 0x20, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x10,
	0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00,
	0x10, 0x20, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x70, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x20, 0x60, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x10, 0x20, 0x48, 0xF8, 0x00,
	0x00, 0x70, 0x88, 0x30, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x10, 0x20, 0x40, 0x90, 0xF8, 0x10, 0x00,
	0x00, 0xF8, 0x80, 0x70, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x80, 0xF0, 0x88, 0x70, 0x00,
	0x00, 0xF8, 0x08, 0x10, 0x20, 0x40, 0x40, 0x00,
	0x00, 0x70, 0x88, 0x70, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x78, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00,
	0x40, 0x20, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x40, 0x20, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x20, 0x10, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x20, 0x50, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x3C, 0x42, 0x04, 0x08, 0x00, 0x08, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x50, 0x50, 0x70, 0x50, 0x50, 0x88, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x48, 0x48, 0xF0, 0x00,
	0x30, 0x48, 0x80, 0x80, 0x80, 0x48, 0x30, 0x00,
	0xF0, 0x48, 0x48, 0x48, 0x48, 0x48, 0xF0, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xF8, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xE0, 0x00,
	0x38, 0x40, 0x80, 0x98, 0x88, 0x48, 0x30, 0x00,
	0xC8, 0x48, 0x48, 0x78, 0x48, 0x48, 0xC8, 0x00,
	0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x78, 0x10, 0x10, 0x10, 0x90, 0x90, 0x60, 0x00,
	0xC8, 0x50, 0x60, 0x40, 0x60, 0x50, 0xC8, 0x00,
	0xE0, 0x40, 0x40, 0x40, 0x40, 0x48, 0xF8, 0x00,
	0x88, 0xD8, 0xA8, 0x88, 0x88, 0x88, 0x88, 0x00,
	0xC8, 0x48, 0x68, 0x58, 0x58, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x40, 0x40, 0xC0, 0x00,
	0x60, 0x90, 0x90, 0x90, 0xB0, 0x90, 0x68, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x50, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x80, 0x60, 0x10, 0x88, 0x70, 0x00,
	0xF8, 0xA8, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x88, 0x50, 0x50, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x88, 0xA8, 0xD8, 0x88, 0x00,
	0x88, 0x50, 0x70, 0x20, 0x70, 0x50, 0x88, 0x00,
	0x88, 0x48, 0x30, 0x20, 0x40, 0x80, 0xC0, 0x00,
	0xF8, 0x88, 0x10, 0x20, 0x40, 0x80, 0xF8, 0x00,
	0x00, 0x0E, 0x08, 0x08, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x00,
	0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x10, 0x30,
	0x00, 0x50, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x10, 0x00, 0x98, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x60, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x40, 0x40, 0x50, 0x68, 0x48, 0x48, 0xF0, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x00,
	0x10, 0x10, 0x70, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x00, 0x70, 0x48, 0x70, 0x40, 0x38, 0x00,
	0x10, 0x38, 0x20, 0x70, 0x20, 0x20, 0x20, 0x40,
	0x00, 0x00, 0x78, 0x90, 0x90, 0x90, 0x70, 0x10,
	0xC0, 0x40, 0x58, 0x68, 0x48, 0x48, 0xC8, 0x00,
	0x20, 0x00, 0x60, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x10, 0x18, 0x10, 0x10, 0x10, 0x10, 0x10, 0x60,
	0x40, 0x40, 0x70, 0x48, 0x70, 0x50, 0xC8, 0x00,
	0x40, 0x40, 0x40, 0x40, 0x40, 0x50, 0x60, 0x00,
	0x00, 0x00, 0xA8, 0xF8, 0xA8, 0xA8, 0xA8, 0x00,
	0x00, 0x00, 0xD8, 0x68, 0x48, 0x48, 0x48, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x30, 0x00,
	0x00, 0x00, 0xF0, 0x48, 0x48, 0x70, 0x40, 0xC0,
	0x00, 0x00, 0x70, 0x90, 0x90, 0x70, 0x18, 0x10,
	0x00, 0x00, 0xD8, 0x68, 0x40, 0x40, 0xE0, 0x00,
	0x00, 0x00, 0x38, 0x40, 0x30, 0x08, 0x70, 0x00,
	0x20, 0x20, 0x70, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x88, 0x88, 0x50, 0x50, 0x20, 0x00,
	0x00, 0x00, 0xA8, 0xA8, 0xA8, 0xF8, 0xA8, 0x00,
	0x00, 0x00, 0x88, 0x50, 0x20, 0x50, 0x88, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x70, 0x10, 0x60,
	0x00, 0x00, 0x78, 0x10, 0x20, 0x40, 0x78, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x0E, 0x08, 0x30, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
	0x00, 0x70, 0x10, 0x0C, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x14, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00,
	0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC,
	0x00, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0x00,
};

static const byte french_commonFont[] = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20,
	0x00, 0x50, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x30, 0x48, 0x80, 0x80, 0x48, 0x30, 0x10, 0x30,
	0x00, 0x10, 0x28, 0x10, 0x2A, 0x44, 0x3A, 0x00,
	0x00, 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x04, 0x08, 0x08, 0x08, 0x08, 0x04, 0x00,
	0x00, 0x20, 0x10, 0x10, 0x10, 0x10, 0x20, 0x00,
	0x00, 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14, 0x00,
	0x00, 0x70, 0x88, 0xF0, 0x88, 0x88, 0xF0, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x10,
	0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00,
	0x10, 0x20, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x70, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x20, 0x60, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x10, 0x20, 0x48, 0xF8, 0x00,
	0x00, 0x70, 0x88, 0x30, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x10, 0x20, 0x40, 0x90, 0xF8, 0x10, 0x00,
	0x00, 0xF8, 0x80, 0x70, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x80, 0xF0, 0x88, 0x70, 0x00,
	0x00, 0xF8, 0x08, 0x10, 0x20, 0x40, 0x40, 0x00,
	0x00, 0x70, 0x88, 0x70, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x78, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00,
	0x40, 0x20, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x20, 0x50, 0x00, 0x98, 0x90, 0x90, 0xE8, 0x00,
	0x20, 0x10, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x20, 0x50, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x3C, 0x42, 0x04, 0x08, 0x00, 0x08, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x50, 0x50, 0x70, 0x50, 0x50, 0x88, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x48, 0x48, 0xF0, 0x00,
	0x30, 0x48, 0x80, 0x80, 0x80, 0x48, 0x30, 0x00,
	0xF0, 0x48, 0x48, 0x48, 0x48, 0x48, 0xF0, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xF8, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xE0, 0x00,
	0x38, 0x40, 0x80, 0x98, 0x88, 0x48, 0x30, 0x00,
	0xC8, 0x48, 0x48, 0x78, 0x48, 0x48, 0xC8, 0x00,
	0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x78, 0x10, 0x10, 0x10, 0x90, 0x90, 0x60, 0x00,
	0xC8, 0x50, 0x60, 0x40, 0x60, 0x50, 0xC8, 0x00,
	0xE0, 0x40, 0x40, 0x40, 0x40, 0x48, 0xF8, 0x00,
	0x88, 0xD8, 0xA8, 0x88, 0x88, 0x88, 0x88, 0x00,
	0xC8, 0x48, 0x68, 0x58, 0x58, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x40, 0x40, 0xC0, 0x00,
	0x60, 0x90, 0x90, 0x90, 0xB0, 0x90, 0x68, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x50, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x80, 0x60, 0x10, 0x88, 0x70, 0x00,
	0xF8, 0xA8, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x88, 0x50, 0x50, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x88, 0xA8, 0xD8, 0x88, 0x00,
	0x88, 0x50, 0x70, 0x20, 0x70, 0x50, 0x88, 0x00,
	0x88, 0x48, 0x30, 0x20, 0x40, 0x80, 0xC0, 0x00,
	0xF8, 0x88, 0x10, 0x20, 0x40, 0x80, 0xF8, 0x00,
	0x00, 0x0E, 0x08, 0x08, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x00,
	0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x10, 0x30,
	0x00, 0x50, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x10, 0x00, 0x98, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x60, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x40, 0x40, 0x50, 0x68, 0x48, 0x48, 0xF0, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x00,
	0x10, 0x10, 0x70, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x00, 0x70, 0x48, 0x70, 0x40, 0x38, 0x00,
	0x10, 0x38, 0x20, 0x70, 0x20, 0x20, 0x20, 0x40,
	0x00, 0x00, 0x78, 0x90, 0x90, 0x90, 0x70, 0x10,
	0xC0, 0x40, 0x58, 0x68, 0x48, 0x48, 0xC8, 0x00,
	0x20, 0x00, 0x60, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x10, 0x18, 0x10, 0x10, 0x10, 0x10, 0x10, 0x60,
	0x40, 0x40, 0x70, 0x48, 0x70, 0x50, 0xC8, 0x00,
	0x40, 0x40, 0x40, 0x40, 0x40, 0x50, 0x60, 0x00,
	0x00, 0x00, 0xA8, 0xF8, 0xA8, 0xA8, 0xA8, 0x00,
	0x00, 0x00, 0xD8, 0x68, 0x48, 0x48, 0x48, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x30, 0x00,
	0x00, 0x00, 0xF0, 0x48, 0x48, 0x70, 0x40, 0xC0,
	0x00, 0x00, 0x70, 0x90, 0x90, 0x70, 0x18, 0x10,
	0x00, 0x00, 0xD8, 0x68, 0x40, 0x40, 0xE0, 0x00,
	0x00, 0x00, 0x38, 0x40, 0x30, 0x08, 0x70, 0x00,
	0x20, 0x20, 0x70, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x88, 0x88, 0x50, 0x50, 0x20, 0x00,
	0x00, 0x00, 0xA8, 0xA8, 0xA8, 0xF8, 0xA8, 0x00,
	0x00, 0x00, 0x88, 0x50, 0x20, 0x50, 0x88, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x70, 0x10, 0x60,
	0x00, 0x00, 0x78, 0x10, 0x20, 0x40, 0x78, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x0E, 0x08, 0x30, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
	0x00, 0x70, 0x10, 0x0C, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x14, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00,
	0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC,
	0x00, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0x00,
};

static const byte english_commonFont[] = {
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20,
	0x00, 0x50, 0x28, 0x28, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x90, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x90, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x90, 0x00, 0x90, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x10, 0x28, 0x10, 0x2A, 0x44, 0x3A, 0x00,
	0x00, 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
	0x00, 0x04, 0x08, 0x08, 0x08, 0x08, 0x04, 0x00,
	0x00, 0x20, 0x10, 0x10, 0x10, 0x10, 0x20, 0x00,
	0x00, 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14, 0x00,
	0x00, 0x70, 0x88, 0xF0, 0x88, 0x88, 0xF0, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x10,
	0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00,
	0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00,
	0x10, 0x20, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x70, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x20, 0x60, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x10, 0x20, 0x48, 0xF8, 0x00,
	0x00, 0x70, 0x88, 0x30, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x10, 0x20, 0x40, 0x90, 0xF8, 0x10, 0x00,
	0x00, 0xF8, 0x80, 0x70, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x80, 0xF0, 0x88, 0x70, 0x00,
	0x00, 0xF8, 0x08, 0x10, 0x20, 0x40, 0x40, 0x00,
	0x00, 0x70, 0x88, 0x70, 0x88, 0x88, 0x70, 0x00,
	0x00, 0x70, 0x88, 0x78, 0x08, 0x88, 0x70, 0x00,
	0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00,
	0x40, 0x20, 0x00, 0x60, 0x90, 0x90, 0x68, 0x00,
	0x20, 0x50, 0x00, 0x98, 0x90, 0x90, 0xE8, 0x00,
	0x20, 0x10, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x20, 0x50, 0x00, 0x78, 0x70, 0x40, 0x38, 0x00,
	0x00, 0x3C, 0x42, 0x04, 0x08, 0x00, 0x08, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x50, 0x50, 0x70, 0x50, 0x50, 0x88, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x48, 0x48, 0xF0, 0x00,
	0x30, 0x48, 0x80, 0x80, 0x80, 0x48, 0x30, 0x00,
	0xF0, 0x48, 0x48, 0x48, 0x48, 0x48, 0xF0, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xF8, 0x00,
	0xF8, 0x40, 0x40, 0x70, 0x40, 0x40, 0xE0, 0x00,
	0x38, 0x40, 0x80, 0x98, 0x88, 0x48, 0x30, 0x00,
	0xC8, 0x48, 0x48, 0x78, 0x48, 0x48, 0xC8, 0x00,
	0x70, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x78, 0x10, 0x10, 0x10, 0x90, 0x90, 0x60, 0x00,
	0xC8, 0x50, 0x60, 0x40, 0x60, 0x50, 0xC8, 0x00,
	0xE0, 0x40, 0x40, 0x40, 0x40, 0x48, 0xF8, 0x00,
	0x88, 0xD8, 0xA8, 0x88, 0x88, 0x88, 0x88, 0x00,
	0xC8, 0x48, 0x68, 0x58, 0x58, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x88, 0x88, 0x88, 0x88, 0x70, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x40, 0x40, 0xC0, 0x00,
	0x60, 0x90, 0x90, 0x90, 0xB0, 0x90, 0x68, 0x00,
	0xF0, 0x48, 0x48, 0x70, 0x50, 0x48, 0xC8, 0x00,
	0x70, 0x88, 0x80, 0x60, 0x10, 0x88, 0x70, 0x00,
	0xF8, 0xA8, 0x20, 0x20, 0x20, 0x20, 0x70, 0x00,
	0x88, 0x50, 0x50, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x50, 0x50, 0x50, 0x20, 0x00,
	0x88, 0x88, 0x88, 0x88, 0xA8, 0xD8, 0x88, 0x00,
	0x88, 0x50, 0x70, 0x20, 0x70, 0x50, 0x88, 0x00,
	0x88, 0x48, 0x30, 0x20, 0x40, 0x80, 0xC0, 0x00,
	0xF8, 0x88, 0x10, 0x20, 0x40, 0x80, 0xF8, 0x00,
	0x00, 0x0E, 0x08, 0x08, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x00,
	0x00, 0x70, 0x10, 0x10, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x10, 0x30,
	0x00, 0x50, 0x00, 0x60, 0x20, 0x28, 0x30, 0x00,
	0x20, 0x10, 0x00, 0x98, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x60, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x40, 0x40, 0x50, 0x68, 0x48, 0x48, 0xF0, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x40, 0x48, 0x30, 0x00,
	0x10, 0x10, 0x70, 0x90, 0x90, 0x90, 0x68, 0x00,
	0x00, 0x00, 0x70, 0x48, 0x70, 0x40, 0x38, 0x00,
	0x10, 0x38, 0x20, 0x70, 0x20, 0x20, 0x20, 0x40,
	0x00, 0x00, 0x78, 0x90, 0x90, 0x90, 0x70, 0x10,
	0xC0, 0x40, 0x58, 0x68, 0x48, 0x48, 0xC8, 0x00,
	0x20, 0x00, 0x60, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x10, 0x18, 0x10, 0x10, 0x10, 0x10, 0x10, 0x60,
	0x40, 0x40, 0x70, 0x48, 0x70, 0x50, 0xC8, 0x00,
	0x40, 0x40, 0x40, 0x40, 0x40, 0x50, 0x60, 0x00,
	0x00, 0x00, 0xA8, 0xF8, 0xA8, 0xA8, 0xA8, 0x00,
	0x00, 0x00, 0xD8, 0x68, 0x48, 0x48, 0x48, 0x00,
	0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x30, 0x00,
	0x00, 0x00, 0xF0, 0x48, 0x48, 0x70, 0x40, 0xC0,
	0x00, 0x00, 0x70, 0x90, 0x90, 0x70, 0x18, 0x10,
	0x00, 0x00, 0xD8, 0x68, 0x40, 0x40, 0xE0, 0x00,
	0x00, 0x00, 0x38, 0x40, 0x30, 0x08, 0x70, 0x00,
	0x20, 0x20, 0x70, 0x20, 0x20, 0x28, 0x30, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x90, 0xE8, 0x00,
	0x00, 0x00, 0x88, 0x88, 0x50, 0x50, 0x20, 0x00,
	0x00, 0x00, 0xA8, 0xA8, 0xA8, 0xF8, 0xA8, 0x00,
	0x00, 0x00, 0x88, 0x50, 0x20, 0x50, 0x88, 0x00,
	0x00, 0x00, 0x98, 0x90, 0x90, 0x70, 0x10, 0x60,
	0x00, 0x00, 0x78, 0x10, 0x20, 0x40, 0x78, 0x00,
	0x20, 0x50, 0x00, 0x60, 0x90, 0x90, 0x60, 0x00,
	0x00, 0x0E, 0x08, 0x30, 0x08, 0x08, 0x0E, 0x00,
	0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
	0x00, 0x70, 0x10, 0x0C, 0x10, 0x10, 0x70, 0x00,
	0x00, 0x14, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00,
	0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC,
	0x00, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0x00,
};

void AGOSEngine::windowDrawChar(WindowBlock *window, uint x, uint y, byte chr) {
	const byte *src;
	byte color, *dst;
	uint h, w, i;

	if (_noOracleScroll)
		return;

	_lockWord |= 0x8000;

	Graphics::Surface *screen = _system->lockScreen();

	if (getGameType() == GType_FF || getGameType() == GType_PP) {
		dst = getBackGround() + y * _dxSurfacePitch + x + window->textColumnOffset;
		h = 13;
		w =  feebleFontSize[chr - 0x20];

		src = feeble_windowFont + (chr - 0x20) * 13;
	} else if (getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) {
		dst = (byte *)screen->pixels + y * _dxSurfacePitch + x + window->textColumnOffset;
		h = 8;
		w = 6;

		switch (_language) {
		case Common::CZ_CZE:
			src = czech_simonFont + (chr - 0x20) * 8;
			break;
		case Common::RU_RUS:
			src = russian_simonFont + (chr - 0x20) * 8;
			break;
		case Common::PL_POL:
			src = polish_simonFont + (chr - 0x20) * 8;
			break;
		case Common::HB_ISR:
			src = hebrew_simonFont + (chr - 0x20) * 8;
			break;
		case Common::ES_ESP:
			src = spanish_simonFont + (chr - 0x20) * 8;
			break;
		case Common::IT_ITA:
			src = italian_simonFont + (chr - 0x20) * 8;
			break;
		case Common::FR_FRA:
			src = french_simonFont + (chr - 0x20) * 8;
			break;
		case Common::DE_DEU:
			src = german_simonFont + (chr - 0x20) * 8;
			break;
		case Common::EN_ANY:
			src = english_simonFont + (chr - 0x20) * 8;
			break;
		default:
			error("windowDrawChar: Unknown language %d\n", _language);
		}
	} else {
		dst = (byte *)screen->pixels + y * _dxSurfacePitch + x + window->textColumnOffset;
		h = 8;
		w = 6;

		// TODO: Add font tables for German
		switch (_language) {
		case Common::ES_ESP:
			src = spanish_commonFont + (chr - 0x20) * 8;
			break;
		case Common::IT_ITA:
			src = italian_commonFont + (chr - 0x20) * 8;
			break;
		case Common::FR_FRA:
			src = french_commonFont + (chr - 0x20) * 8;
			break;
		case Common::DE_DEU:
			src = english_commonFont + (chr - 0x20) * 8;
			break;
		case Common::EN_ANY:
			src = english_commonFont + (chr - 0x20) * 8;
			break;
		default:
			error("windowDrawChar: Unknown language %d\n", _language);
		}
	}

	color = window->text_color;
	if (getGameType() == GType_ELVIRA2 || getGameType() == GType_WW)
		color += dst[0] & 0xF0;

	do {
		int8 b = *src++;
		i = 0;
		do {
			if (b < 0) {
				if (getGameType() == GType_FF || getGameType() == GType_PP) {
					if (dst[i] == 0)
						dst[i] = color;
				} else {
					dst[i] = color;
				}
			}

			b <<= 1;
		} while (++i != w);
		dst += _dxSurfacePitch;
	} while (--h);

	_system->unlockScreen();

	_lockWord &= ~0x8000;
}

} // End of namespace AGOS