Merge remote-tracking branch 'origin/master' into feat-touch

This commit is contained in:
Justin Mitchell
2026-06-15 12:16:39 -04:00
29 changed files with 2764 additions and 699 deletions
+434 -161
View File
@@ -3,12 +3,12 @@
* name: ubuntu_10_bold
* size: 10
* mode: 1-bit
* Command used: fontconvert.py ubuntu_10_bold 10 ../builtinFonts/source/Ubuntu/Ubuntu-Bold.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Bold.ttf --additional-intervals 0x05D0,0x05EA
* Command used: fontconvert.py ubuntu_10_bold 10 ../builtinFonts/source/Ubuntu/Ubuntu-Bold.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Bold.ttf ../builtinFonts/source/Ubuntu/Ubuntu-Vietnamese-Bold.ttf --additional-intervals 0x05D0,0x05EA
*/
#pragma once
#include "EpdFontData.h"
static const uint8_t ubuntu_10_boldBitmaps[17813] = {
static const uint8_t ubuntu_10_boldBitmaps[20781] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0xEF, 0xEF, 0xE7, 0xE7, 0x1E, 0xF0,
0xF7, 0x87, 0x3C, 0x39, 0xCF, 0xFF, 0xFF, 0xFC, 0xF7, 0x87, 0x3C, 0x39, 0xC7, 0xFF, 0xFF, 0xFE,
0xF7, 0x87, 0xBC, 0x39, 0xE1, 0xCE, 0x00, 0x0F, 0x01, 0xE0, 0x7F, 0x9F, 0xF7, 0xFC, 0xF3, 0x9E,
@@ -1058,71 +1058,256 @@ static const uint8_t ubuntu_10_boldBitmaps[17813] = {
0xC0, 0xF7, 0x9F, 0xEF, 0x3F, 0xDE, 0x7F, 0xBC, 0xFF, 0x79, 0xFF, 0xE3, 0xFF, 0xC7, 0x7E, 0x1E,
0xF0, 0x3C, 0xF0, 0xF9, 0xFF, 0xE1, 0xFF, 0x81, 0xFE, 0x00, 0x7F, 0xF1, 0xFF, 0xE7, 0xFF, 0xC7,
0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0x8F, 0x1C, 0x3C, 0xF0, 0xF7, 0xC3, 0xDF, 0x0F, 0xF8,
0x3C, 0x06, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x00, 0x0F, 0x83, 0xFE, 0x1E, 0x7C,
0x78, 0xF3, 0xC3, 0xFF, 0x07, 0xF8, 0x1F, 0xE0, 0x3F, 0x00, 0xF8, 0x01, 0xE0, 0x07, 0x80, 0x1E,
0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x18, 0x03, 0xC0, 0x3E, 0x00, 0xE0, 0x06, 0x00, 0x00, 0xF0,
0xFF, 0x1E, 0x79, 0xE7, 0x9E, 0x7B, 0xC3, 0xFC, 0x3F, 0x81, 0xF8, 0x1F, 0x81, 0xF0, 0x0F, 0x01,
0xE0, 0xFE, 0x0F, 0xC0, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x49, 0xE3, 0x1E, 0x78, 0xC3, 0x0C,
0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x10, 0x6F, 0xF6, 0xD3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3,
0x0C, 0x30, 0x21, 0x8F, 0xDB, 0x2C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0xFD, 0xFB,
0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3B, 0xDE, 0xE7, 0x38, 0x7B, 0xDC, 0xEF, 0x70, 0x7B, 0xDC,
0xEF, 0x70, 0x3B, 0x9E, 0xE7, 0x79, 0xDE, 0x77, 0x9D, 0xE0, 0x7F, 0xBF, 0xDD, 0xEE, 0xFF, 0x77,
0x38, 0x7F, 0xBF, 0xDD, 0xEE, 0xFF, 0x77, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0xFF, 0xFF, 0xFF,
0xFC, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x0E,
0x03, 0x80, 0xE0, 0x38, 0xFF, 0xFF, 0xFF, 0xFC, 0x38, 0x0E, 0x03, 0x8F, 0xFF, 0xFF, 0xFF, 0xC3,
0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x3C, 0xFD, 0xFB, 0xF7, 0xE7, 0x80, 0xF0, 0xE1, 0xFE, 0x3E,
0x3F, 0xC7, 0xC7, 0xF8, 0x70, 0xF0, 0x3E, 0x0E, 0x00, 0x0F, 0xE3, 0xC0, 0x01, 0xDC, 0xF0, 0x00,
0x7B, 0xDE, 0x00, 0x0F, 0x7F, 0x80, 0x00, 0xEE, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xF7, 0x7C,
0x3E, 0x01, 0xFF, 0xCF, 0xE0, 0x3B, 0xBF, 0xDC, 0x0F, 0x73, 0xF3, 0x81, 0xCE, 0x7E, 0x70, 0x79,
0xDF, 0xEE, 0x1E, 0x3F, 0x9F, 0xC3, 0xC3, 0xE1, 0xF0, 0x00, 0x38, 0xF3, 0xE7, 0x9F, 0x1E, 0x3E,
0x3C, 0x38, 0x00, 0x00, 0xE1, 0xE3, 0xC3, 0xC7, 0xCF, 0x3C, 0x78, 0xE0, 0x00, 0x00, 0xE0, 0x3C,
0x3C, 0x03, 0x80, 0x0F, 0x80, 0x1F, 0x00, 0x7F, 0x00, 0xFE, 0x03, 0xDE, 0x07, 0xBC, 0x0E, 0x78,
0x3C, 0x78, 0x7F, 0xF1, 0xFF, 0xF3, 0xFF, 0xE7, 0x83, 0xDE, 0x07, 0xFC, 0x07, 0x80, 0x00, 0x03,
0x80, 0x07, 0x00, 0x0E, 0x00, 0x08, 0x00, 0x0E, 0x0F, 0xF0, 0xFF, 0x1F, 0xE0, 0x1C, 0x7F, 0xDF,
0xFB, 0xFF, 0xF1, 0xFF, 0xFD, 0xFF, 0x9F, 0xE0, 0xF0, 0x1C, 0x03, 0xC0, 0x78, 0x06, 0x00, 0x07,
0x80, 0x0F, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0xE0,
0x1F, 0xC0, 0x7B, 0xC0, 0xF7, 0x81, 0xCF, 0x07, 0x8F, 0x0F, 0xFE, 0x3F, 0xFE, 0x7F, 0xFC, 0xF0,
0x7B, 0xC0, 0xFF, 0x80, 0xF0, 0x0E, 0x03, 0xE0, 0x7C, 0x03, 0x80, 0xE0, 0x1C, 0x1F, 0xE1, 0xFE,
0x3F, 0xC0, 0x38, 0xFF, 0xBF, 0xF7, 0xFF, 0xE3, 0xFF, 0xFB, 0xFF, 0x3F, 0xC1, 0xE0, 0x00, 0x08,
0x00, 0x38, 0x00, 0xF0, 0x0B, 0xC0, 0x3F, 0x01, 0xFC, 0x03, 0xB8, 0x02, 0x20, 0x03, 0x80, 0x0F,
0x80, 0x1F, 0x00, 0x7F, 0x00, 0xFE, 0x03, 0xDE, 0x07, 0xBC, 0x0E, 0x78, 0x3C, 0x78, 0x7F, 0xF1,
0xFF, 0xF3, 0xFF, 0xE7, 0x83, 0xDE, 0x07, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x03, 0x80, 0x1C, 0x01,
0xE0, 0xFE, 0x0F, 0xE0, 0xFE, 0x03, 0x60, 0x0E, 0x03, 0xFC, 0x0F, 0xF0, 0x7F, 0x80, 0x1C, 0x1F,
0xF1, 0xFF, 0x8F, 0xFC, 0xF1, 0xE7, 0xFF, 0x1F, 0xF8, 0x7F, 0x80, 0xF0, 0x00, 0x00, 0xC0, 0x03,
0xC0, 0x07, 0xC0, 0x0F, 0x80, 0x3F, 0x01, 0xFC, 0x03, 0xB8, 0x02, 0x20, 0x03, 0x80, 0x0F, 0x80,
0x1F, 0x00, 0x7F, 0x00, 0xFE, 0x03, 0xDE, 0x07, 0xBC, 0x0E, 0x78, 0x3C, 0x78, 0x7F, 0xF1, 0xFF,
0xF3, 0xFF, 0xE7, 0x83, 0xDE, 0x07, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x70, 0x0F, 0x01, 0xF0, 0xEE,
0x3E, 0x8F, 0xE0, 0xD8, 0x0E, 0x0F, 0xF0, 0xFF, 0x1F, 0xE0, 0x1C, 0x7F, 0xDF, 0xFB, 0xFF, 0xF1,
0xFF, 0xFD, 0xFF, 0x9F, 0xE0, 0xF0, 0x00, 0x20, 0x01, 0xF0, 0x03, 0xF0, 0x01, 0xC0, 0x17, 0x80,
0x7E, 0x03, 0xF8, 0x07, 0x70, 0x04, 0x40, 0x07, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x01, 0xFC,
0x07, 0xBC, 0x0F, 0x78, 0x1C, 0xF0, 0x78, 0xF0, 0xFF, 0xE3, 0xFF, 0xE7, 0xFF, 0xCF, 0x07, 0xBC,
0x0F, 0xF8, 0x0F, 0x01, 0xC0, 0x1F, 0x01, 0xF0, 0x0F, 0x0E, 0xE1, 0xFC, 0x3F, 0x81, 0xB0, 0x0E,
0x07, 0xF8, 0x3F, 0xC3, 0xFC, 0x01, 0xC3, 0xFE, 0x7F, 0xE7, 0xFE, 0xF1, 0xEF, 0xFE, 0x7F, 0xE3,
0xFC, 0x0F, 0x00, 0x06, 0x40, 0x1F, 0xE0, 0x7F, 0x80, 0x6E, 0x00, 0x10, 0x00, 0x70, 0x03, 0xF8,
0x07, 0x70, 0x04, 0x40, 0x07, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x01, 0xFC, 0x07, 0xBC, 0x0F,
0x78, 0x1C, 0xF0, 0x78, 0xF0, 0xFF, 0xE3, 0xFF, 0xE7, 0xFF, 0xCF, 0x07, 0xBC, 0x0F, 0xF8, 0x0F,
0x1D, 0x87, 0xF1, 0xFE, 0x00, 0x00, 0xE0, 0x3E, 0x0F, 0xE0, 0xD8, 0x0E, 0x0F, 0xF0, 0xFF, 0x1F,
0xE0, 0x1C, 0x7F, 0xDF, 0xFB, 0xFF, 0xF1, 0xFF, 0xFD, 0xFF, 0x9F, 0xE0, 0xF0, 0x01, 0x00, 0x07,
0x00, 0x3F, 0x80, 0x77, 0x00, 0x44, 0x00, 0x70, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0xE0, 0x1F, 0xC0,
0x7B, 0xC0, 0xF7, 0x81, 0xCF, 0x07, 0x8F, 0x0F, 0xFE, 0x3F, 0xFE, 0x7F, 0xFC, 0xF0, 0x7B, 0xC0,
0xFF, 0x80, 0xF0, 0x00, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x01, 0x00, 0x00, 0x01, 0xC0, 0x7C,
0x1F, 0xC1, 0xB0, 0x1C, 0x1F, 0xE1, 0xFE, 0x3F, 0xC0, 0x38, 0xFF, 0xBF, 0xF7, 0xFF, 0xE3, 0xFF,
0xFB, 0xFF, 0x3F, 0xC1, 0xE0, 0x38, 0x07, 0x80, 0xF0, 0x0C, 0x00, 0x00, 0x40, 0x01, 0xC0, 0x07,
0x80, 0x1E, 0x00, 0x38, 0x01, 0xDC, 0x03, 0xF8, 0x03, 0xF0, 0x03, 0x80, 0x07, 0x00, 0x1F, 0x00,
0x3E, 0x00, 0xFE, 0x01, 0xFC, 0x07, 0xBC, 0x0F, 0x78, 0x1C, 0xF0, 0x78, 0xF0, 0xFF, 0xE3, 0xFF,
0xE7, 0xFF, 0xCF, 0x07, 0xBC, 0x0F, 0xF8, 0x0F, 0x01, 0x00, 0x70, 0x1E, 0x07, 0x80, 0x60, 0x73,
0x0F, 0xE0, 0xFC, 0x0E, 0x01, 0xC1, 0xFE, 0x1F, 0xE3, 0xFC, 0x03, 0x8F, 0xFB, 0xFF, 0x7F, 0xFE,
0x3F, 0xFF, 0xBF, 0xF3, 0xFC, 0x1E, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38,
0x01, 0xDC, 0x03, 0xF8, 0x03, 0xF0, 0x03, 0x80, 0x07, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x01,
0xFC, 0x07, 0xBC, 0x0F, 0x78, 0x1C, 0xF0, 0x78, 0xF0, 0xFF, 0xE3, 0xFF, 0xE7, 0xFF, 0xCF, 0x07,
0xBC, 0x0F, 0xF8, 0x0F, 0x00, 0x03, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0x7B, 0x0F, 0xE0, 0xFC, 0x0E,
0x01, 0xC1, 0xFE, 0x1F, 0xE3, 0xFC, 0x03, 0x8F, 0xFB, 0xFF, 0x7F, 0xFE, 0x3F, 0xFF, 0xBF, 0xF3,
0xFC, 0x1E, 0x00, 0x03, 0x80, 0x0F, 0x80, 0x1F, 0x00, 0x0E, 0x00, 0x38, 0x00, 0x20, 0x03, 0xB8,
0x07, 0xF0, 0x07, 0xE0, 0x07, 0x00, 0x0E, 0x00, 0x3E, 0x00, 0x7C, 0x01, 0xFC, 0x03, 0xF8, 0x0F,
0x78, 0x1E, 0xF0, 0x39, 0xE0, 0xF1, 0xE1, 0xFF, 0xC7, 0xFF, 0xCF, 0xFF, 0x9E, 0x0F, 0x78, 0x1F,
0xF0, 0x1E, 0x1F, 0x03, 0xE0, 0x1C, 0x07, 0x80, 0xE0, 0x73, 0x0F, 0xE0, 0xFC, 0x0E, 0x01, 0xC1,
0xFE, 0x1F, 0xE3, 0xFC, 0x03, 0x8F, 0xFB, 0xFF, 0x7F, 0xFE, 0x3F, 0xFF, 0xBF, 0xF3, 0xFC, 0x1E,
0x00, 0x00, 0x00, 0x0F, 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x00, 0x01, 0xDC, 0x03, 0xF8, 0x03, 0xF0,
0x03, 0x80, 0x07, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x01, 0xFC, 0x07, 0xBC, 0x0F, 0x78, 0x1C,
0xF0, 0x78, 0xF0, 0xFF, 0xE3, 0xFF, 0xE7, 0xFF, 0xCF, 0x07, 0xBC, 0x0F, 0xF8, 0x0F, 0x1D, 0x87,
0xF8, 0xFE, 0x08, 0x83, 0x98, 0x7F, 0x07, 0xE0, 0x70, 0x0E, 0x0F, 0xF0, 0xFF, 0x1F, 0xE0, 0x1C,
0x7F, 0xDF, 0xFB, 0xFF, 0xF1, 0xFF, 0xFD, 0xFF, 0x9F, 0xE0, 0xF0, 0x00, 0x00, 0x1D, 0xC0, 0x3F,
0x80, 0x3F, 0x00, 0x38, 0x00, 0x70, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0xE0, 0x1F, 0xC0, 0x7B, 0xC0,
0xF7, 0x81, 0xCF, 0x07, 0x8F, 0x0F, 0xFE, 0x3F, 0xFE, 0x7F, 0xFC, 0xF0, 0x7B, 0xC0, 0xFF, 0x80,
0xF0, 0x00, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x01, 0x00, 0x39, 0x87, 0xF0, 0x7E, 0x07, 0x00,
0xE0, 0xFF, 0x0F, 0xF1, 0xFE, 0x01, 0xC7, 0xFD, 0xFF, 0xBF, 0xFF, 0x1F, 0xFF, 0xDF, 0xF9, 0xFE,
0x0F, 0x01, 0xC0, 0x3C, 0x07, 0x80, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0x01, 0xE0, 0x3F,
0xF7, 0xFE, 0xFF, 0xDE, 0x03, 0xC0, 0x78, 0x0F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x0E, 0x03, 0xC0,
0x38, 0x02, 0x00, 0x06, 0x01, 0xFC, 0x3F, 0xE7, 0xFE, 0x78, 0xE7, 0xFF, 0x7F, 0xF7, 0xFE, 0x78,
0x07, 0xFE, 0x3F, 0xE1, 0xFE, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xF0, 0x06, 0x00, 0x1E, 0x03, 0xE0,
0x1C, 0x07, 0x80, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDE, 0x03, 0xC0, 0x7F, 0xEF, 0xFD, 0xFF,
0xBC, 0x07, 0x80, 0xF0, 0x1F, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x07,
0x00, 0x60, 0x1F, 0xC3, 0xFE, 0x7F, 0xE7, 0x8E, 0x7F, 0xF7, 0xFF, 0x7F, 0xE7, 0x80, 0x7F, 0xE3,
0xFE, 0x1F, 0xE0, 0x78, 0x00, 0x07, 0xF1, 0xFE, 0x1F, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xDE, 0x03, 0xC0, 0x7F, 0xEF, 0xFD, 0xFF, 0xBC, 0x07, 0x80, 0xF0, 0x1F, 0xFF, 0xFF, 0xFF, 0xF0,
0x1C, 0x83, 0xFC, 0x3F, 0xC1, 0x30, 0x06, 0x01, 0xFC, 0x3F, 0xE7, 0xFE, 0x78, 0xE7, 0xFF, 0x7F,
0xF7, 0xFE, 0x78, 0x07, 0xFE, 0x3F, 0xE1, 0xFE, 0x07, 0x80, 0x00, 0x20, 0x03, 0x80, 0x3C, 0x0B,
0xC0, 0xFC, 0x1F, 0xC0, 0xEE, 0x02, 0x20, 0xFF, 0xE7, 0xFF, 0x3F, 0xF9, 0xFF, 0x8F, 0x00, 0x78,
0x03, 0xFF, 0x1F, 0xF8, 0xFF, 0xC7, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0xFE, 0x7F, 0xF3, 0xFF, 0x80,
0x00, 0x30, 0x03, 0xC0, 0x3E, 0x0F, 0xC1, 0xFC, 0x0F, 0xC0, 0x66, 0x00, 0xC0, 0x1F, 0xC1, 0xFF,
0x1F, 0xF8, 0xF1, 0xC7, 0xFF, 0x3F, 0xF9, 0xFF, 0x8F, 0x00, 0x7F, 0xE1, 0xFF, 0x07, 0xF8, 0x0F,
0x00, 0x01, 0x00, 0x70, 0x1F, 0x03, 0xE0, 0xFC, 0x7F, 0x0E, 0xE0, 0x88, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xEF, 0x01, 0xE0, 0x3F, 0xF7, 0xFE, 0xFF, 0xDE, 0x03, 0xC0, 0x78, 0x0F, 0xFF, 0xFF, 0xFF,
0xF8, 0x00, 0x00, 0x18, 0x03, 0xC0, 0x1E, 0x07, 0xF1, 0xFE, 0x1F, 0x81, 0x98, 0x06, 0x01, 0xFC,
0x3F, 0xE7, 0xFE, 0x78, 0xE7, 0xFF, 0x7F, 0xF7, 0xFE, 0x78, 0x07, 0xFE, 0x3F, 0xE1, 0xFE, 0x07,
0x80, 0x01, 0xE0, 0x1F, 0x00, 0x70, 0x4F, 0x0F, 0xE3, 0xF8, 0x3B, 0x81, 0x10, 0xFF, 0xEF, 0xFE,
0xFF, 0xEF, 0xFC, 0xF0, 0x0F, 0x00, 0xFF, 0xCF, 0xFC, 0xFF, 0xCF, 0x00, 0xF0, 0x0F, 0x00, 0xFF,
0xEF, 0xFE, 0xFF, 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x7C, 0x00, 0xE0, 0x7F, 0x0F, 0xF0, 0x7E, 0x03,
0x30, 0x06, 0x00, 0xFE, 0x0F, 0xF8, 0xFF, 0xC7, 0x8E, 0x3F, 0xF9, 0xFF, 0xCF, 0xFC, 0x78, 0x03,
0xFF, 0x0F, 0xF8, 0x3F, 0xC0, 0x78, 0x00, 0x08, 0x87, 0xF8, 0xFE, 0x1B, 0xC0, 0x40, 0x1E, 0x0F,
0xE1, 0xDC, 0x11, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xE0, 0x3C, 0x07, 0xFE, 0xFF, 0xDF, 0xFB,
0xC0, 0x78, 0x0F, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x1E, 0xC3, 0xFC, 0x3F, 0xC1, 0x10, 0x07, 0x01,
0xF8, 0x1F, 0x81, 0x98, 0x06, 0x01, 0xFC, 0x3F, 0xE7, 0xFE, 0x78, 0xE7, 0xFF, 0x7F, 0xF7, 0xFE,
0x78, 0x07, 0xFE, 0x3F, 0xE1, 0xFE, 0x07, 0x80, 0x04, 0x01, 0xE0, 0xFE, 0x1D, 0xC1, 0x11, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xDE, 0x03, 0xC0, 0x7F, 0xEF, 0xFD, 0xFF, 0xBC, 0x07, 0x80, 0xF0, 0x1F,
0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x1C, 0x07, 0x80, 0x70, 0x04, 0x00, 0x00, 0x00, 0x70, 0x1F, 0x81,
0xF8, 0x19, 0x80, 0x60, 0x1F, 0xC3, 0xFE, 0x7F, 0xE7, 0x8E, 0x7F, 0xF7, 0xFF, 0x7F, 0xE7, 0x80,
0x7F, 0xE3, 0xFE, 0x1F, 0xE0, 0x78, 0x07, 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x79, 0xF1, 0xCF, 0x39,
0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x73, 0xE7, 0xCE, 0x70, 0xC7,
0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x78, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0,
0x7F, 0xF2, 0xFF, 0xF6, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0x60, 0x0F, 0xC0, 0x7F,
0xE1, 0xFF, 0xE3, 0xF7, 0xEF, 0x83, 0xDE, 0x07, 0xBC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, 0x7F,
0xC0, 0xF7, 0xC3, 0xE7, 0xFF, 0x87, 0xFF, 0x07, 0xF8, 0x01, 0xC0, 0x03, 0x80, 0x0F, 0x00, 0x1E,
0x00, 0x18, 0x00, 0x06, 0x01, 0xFC, 0x3F, 0xE7, 0xFE, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x78,
0xF7, 0xFE, 0x3F, 0xE1, 0xFC, 0x07, 0x00, 0x70, 0x0F, 0x00, 0x70, 0x02, 0x00, 0x07, 0x80, 0x0F,
0x80, 0x07, 0x00, 0x1C, 0x00, 0x30, 0x01, 0xF8, 0x0F, 0xFC, 0x3F, 0xFC, 0x7E, 0xFD, 0xF0, 0x7B,
0xC0, 0xF7, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x0F, 0xF8, 0x1E, 0xF8, 0x7C, 0xFF, 0xF0, 0xFF,
0xE0, 0xFF, 0x00, 0x38, 0x00, 0x0E, 0x00, 0xF8, 0x0F, 0x80, 0x78, 0x07, 0x00, 0x70, 0x1F, 0xC3,
0xFE, 0x7F, 0xE7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x7F, 0xE3, 0xFE, 0x1F, 0xC0, 0x70,
0x00, 0x18, 0x00, 0x38, 0x00, 0xF0, 0x1B, 0xC0, 0x7F, 0x01, 0xF8, 0x03, 0xF8, 0x02, 0x20, 0x0F,
0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xF7, 0xEF, 0x83, 0xDE, 0x07, 0xBC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F,
0xE0, 0x7F, 0xC0, 0xF7, 0xC3, 0xE7, 0xFF, 0x87, 0xFF, 0x07, 0xF8, 0x01, 0xC0, 0x00, 0x00, 0x01,
0x80, 0x1E, 0x01, 0xE0, 0x7E, 0x07, 0xE0, 0x7F, 0x03, 0x30, 0x06, 0x00, 0xFE, 0x0F, 0xF8, 0xFF,
0xC7, 0x8F, 0x3C, 0x79, 0xE3, 0xCF, 0x1E, 0x78, 0xF3, 0xFF, 0x0F, 0xF8, 0x3F, 0x80, 0x70, 0x00,
0x00, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x1F, 0x80, 0x7A, 0x01, 0xF8, 0x03, 0xF8, 0x02, 0x20, 0x0F,
0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xF7, 0xEF, 0x83, 0xDE, 0x07, 0xBC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F,
0xE0, 0x7F, 0xC0, 0xF7, 0xC3, 0xE7, 0xFF, 0x87, 0xFF, 0x07, 0xF8, 0x01, 0xC0, 0x01, 0x80, 0x38,
0x03, 0xC0, 0x1E, 0x07, 0xE0, 0xF8, 0x1F, 0xC1, 0x98, 0x06, 0x01, 0xFC, 0x3F, 0xE7, 0xFE, 0x78,
0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0xFE, 0x3F, 0xE1, 0xFC, 0x07, 0x00, 0x00, 0x20, 0x01,
0xF0, 0x03, 0xE0, 0x01, 0xC0, 0x37, 0x80, 0xFE, 0x03, 0xF0, 0x07, 0xF0, 0x04, 0x40, 0x1F, 0x80,
0xFF, 0xC3, 0xFF, 0xC7, 0xEF, 0xDF, 0x07, 0xBC, 0x0F, 0x78, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0,
0xFF, 0x81, 0xEF, 0x87, 0xCF, 0xFF, 0x0F, 0xFE, 0x0F, 0xF0, 0x03, 0x80, 0x00, 0xE0, 0x0F, 0x80,
0x3E, 0x00, 0xF0, 0x77, 0x07, 0xF0, 0x7F, 0x03, 0x30, 0x06, 0x00, 0xFE, 0x0F, 0xF8, 0xFF, 0xC7,
0x8F, 0x3C, 0x79, 0xE3, 0xCF, 0x1E, 0x78, 0xF3, 0xFF, 0x0F, 0xF8, 0x3F, 0x80, 0x70, 0x00, 0x06,
0x40, 0x1F, 0xC0, 0x7F, 0x80, 0x4E, 0x00, 0x30, 0x00, 0xF0, 0x03, 0xF0, 0x07, 0xF0, 0x04, 0x40,
0x1F, 0x80, 0xFF, 0xC3, 0xFF, 0xC7, 0xEF, 0xDF, 0x07, 0xBC, 0x0F, 0x78, 0x0F, 0xF0, 0x1F, 0xE0,
0x3F, 0xC0, 0xFF, 0x81, 0xEF, 0x87, 0xCF, 0xFF, 0x0F, 0xFE, 0x0F, 0xF0, 0x03, 0x80, 0x1F, 0xC1,
0xFC, 0x3F, 0xC0, 0x00, 0x07, 0x00, 0xF8, 0x1F, 0xC1, 0x98, 0x06, 0x01, 0xFC, 0x3F, 0xE7, 0xFE,
0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0xFE, 0x3F, 0xE1, 0xFC, 0x07, 0x00, 0x03, 0x00,
0x0F, 0x00, 0x3F, 0x00, 0x7F, 0x00, 0x44, 0x01, 0xF8, 0x0F, 0xFC, 0x3F, 0xFC, 0x7E, 0xFD, 0xF0,
0x7B, 0xC0, 0xF7, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x0F, 0xF8, 0x1E, 0xF8, 0x7C, 0xFF, 0xF0,
0xFF, 0xE0, 0xFF, 0x00, 0x38, 0x00, 0x70, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x70,
0x0F, 0x81, 0xFC, 0x19, 0x80, 0x60, 0x1F, 0xC3, 0xFE, 0x7F, 0xE7, 0x8F, 0x78, 0xF7, 0x8F, 0x78,
0xF7, 0x8F, 0x7F, 0xE3, 0xFE, 0x1F, 0xC0, 0x70, 0x07, 0x00, 0xF0, 0x07, 0x00, 0x20, 0x01, 0x80,
0x07, 0x80, 0x1E, 0x00, 0x38, 0xF0, 0x21, 0xE1, 0xFB, 0xCF, 0xFF, 0x3F, 0xFE, 0x7E, 0xFD, 0xF0,
0x7B, 0xC0, 0xF7, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x0F, 0xF8, 0x1E, 0xF8, 0x7C, 0xFF, 0xF0,
0xFF, 0xE0, 0xFF, 0x00, 0x38, 0x00, 0x03, 0x00, 0x1C, 0x01, 0xE0, 0x1E, 0x60, 0xE7, 0x83, 0x3C,
0x7F, 0xE7, 0xFE, 0x7F, 0xE3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7, 0x8F, 0x3C, 0x79, 0xFF, 0x87, 0xFC,
0x1F, 0xC0, 0x38, 0x00, 0x02, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x1E, 0xF0, 0x19, 0xE1, 0xFB, 0xCF,
0xFF, 0x3F, 0xFE, 0x7E, 0xFD, 0xF0, 0x7B, 0xC0, 0xF7, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x0F,
0xF8, 0x1E, 0xF8, 0x7C, 0xFF, 0xF0, 0xFF, 0xE0, 0xFF, 0x00, 0x38, 0x00, 0x04, 0x00, 0x70, 0x03,
0xC0, 0x0F, 0x60, 0x37, 0x83, 0x3C, 0x7F, 0xE7, 0xFE, 0x7F, 0xE3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7,
0x8F, 0x3C, 0x79, 0xFF, 0x87, 0xFC, 0x1F, 0xC0, 0x38, 0x00, 0x07, 0x80, 0x0F, 0x80, 0x07, 0x00,
0x1C, 0xF0, 0x31, 0xE1, 0xFB, 0xCF, 0xFF, 0x3F, 0xFE, 0x7E, 0xFD, 0xF0, 0x7B, 0xC0, 0xF7, 0x80,
0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x0F, 0xF8, 0x1E, 0xF8, 0x7C, 0xFF, 0xF0, 0xFF, 0xE0, 0xFF, 0x00,
0x38, 0x00, 0x0E, 0x00, 0x7C, 0x03, 0xE0, 0x0F, 0x60, 0x77, 0x83, 0xBC, 0x7F, 0xE7, 0xFE, 0x7F,
0xE3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7, 0x8F, 0x3C, 0x79, 0xFF, 0x87, 0xFC, 0x1F, 0xC0, 0x38, 0x00,
0x00, 0x00, 0x1F, 0xC0, 0x7F, 0x80, 0xFE, 0xF0, 0x01, 0xE1, 0xFB, 0xCF, 0xFF, 0x3F, 0xFE, 0x7E,
0xFD, 0xF0, 0x7B, 0xC0, 0xF7, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x0F, 0xF8, 0x1E, 0xF8, 0x7C,
0xFF, 0xF0, 0xFF, 0xE0, 0xFF, 0x00, 0x38, 0x00, 0x0E, 0xC0, 0xFE, 0x0F, 0xFC, 0x23, 0xF0, 0x67,
0x8F, 0xFC, 0xFF, 0xCF, 0xFC, 0x78, 0xF3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7, 0x8F, 0x3F, 0xF0, 0xFF,
0x83, 0xF8, 0x07, 0x00, 0x00, 0x1E, 0x00, 0x3C, 0x3F, 0x79, 0xFF, 0xE7, 0xFF, 0xCF, 0xDF, 0xBE,
0x0F, 0x78, 0x1E, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x81, 0xFF, 0x03, 0xDF, 0x0F, 0x9F, 0xFE,
0x1F, 0xFC, 0x1F, 0xE0, 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x60, 0x00, 0x00, 0x30,
0x03, 0xC1, 0x9E, 0x3F, 0xF3, 0xFF, 0x3F, 0xF1, 0xE3, 0xCF, 0x1E, 0x78, 0xF3, 0xC7, 0x9E, 0x3C,
0xFF, 0xC3, 0xFE, 0x0F, 0xE0, 0x1C, 0x00, 0xE0, 0x0F, 0x00, 0x38, 0x00, 0x80, 0xF0, 0x77, 0x83,
0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0x83, 0xFC, 0x1F, 0xF1,
0xE7, 0xFF, 0x3F, 0xF0, 0xFF, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x01, 0xC0, 0x04, 0x00, 0xF3, 0xFC,
0xFF, 0x3F, 0xCF, 0xF3, 0xFC, 0xFF, 0x3F, 0xCF, 0xFF, 0xDF, 0xF3, 0xFC, 0x38, 0x0E, 0x07, 0x81,
0xE0, 0x30, 0x0F, 0x00, 0x7C, 0x00, 0xE0, 0x0F, 0x00, 0x70, 0x78, 0x3B, 0xC1, 0xFE, 0x0F, 0xF0,
0x7F, 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF8, 0xF3, 0xFF, 0x9F,
0xF8, 0x7F, 0x80, 0x70, 0x00, 0x1C, 0x07, 0x81, 0xF0, 0x3C, 0x0E, 0x03, 0x0F, 0x3F, 0xCF, 0xF3,
0xFC, 0xFF, 0x3F, 0xCF, 0xF3, 0xFC, 0xFF, 0xFD, 0xFF, 0x3F, 0xC3, 0x80, 0x03, 0x00, 0x07, 0x00,
0x1E, 0x00, 0x78, 0x70, 0x61, 0xFE, 0x0F, 0xFC, 0x1F, 0xF8, 0x3C, 0xF0, 0x79, 0xE0, 0xF3, 0xC1,
0xE7, 0x83, 0xCF, 0x07, 0x9E, 0x0F, 0x3C, 0x1E, 0x78, 0x3C, 0xF8, 0xF0, 0xFF, 0xE1, 0xFF, 0x81,
0xFE, 0x00, 0x70, 0x00, 0x06, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x61, 0x87, 0x80, 0x3F, 0xCF, 0xDE,
0x7C, 0xF3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7, 0x8F, 0x3C, 0x79, 0xE3, 0xFF, 0x0F, 0xF8, 0x3F, 0xC0,
0x70, 0x00, 0x0C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x70, 0x31, 0xFE, 0x0F, 0xFC, 0x1F, 0xF8,
0x3C, 0xF0, 0x79, 0xE0, 0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x07, 0x9E, 0x0F, 0x3C, 0x1E, 0x78, 0x3C,
0xF8, 0xF0, 0xFF, 0xE1, 0xFF, 0x81, 0xFE, 0x00, 0x70, 0x00, 0x18, 0x01, 0xC0, 0x0F, 0x00, 0x3C,
0x60, 0xE7, 0x80, 0x3F, 0xCF, 0xDE, 0x7C, 0xF3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7, 0x8F, 0x3C, 0x79,
0xE3, 0xFF, 0x0F, 0xF8, 0x3F, 0xC0, 0x70, 0x00, 0x0F, 0x00, 0x1F, 0x00, 0x0E, 0x00, 0x3C, 0x70,
0x71, 0xFE, 0x0F, 0xFC, 0x1F, 0xF8, 0x3C, 0xF0, 0x79, 0xE0, 0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x07,
0x9E, 0x0F, 0x3C, 0x1E, 0x78, 0x3C, 0xF8, 0xF0, 0xFF, 0xE1, 0xFF, 0x81, 0xFE, 0x00, 0x70, 0x00,
0x1C, 0x00, 0xF0, 0x07, 0xC0, 0x1E, 0x60, 0xE7, 0x86, 0x3F, 0xCF, 0xDE, 0x7C, 0xF3, 0xC7, 0x9E,
0x3C, 0xF1, 0xE7, 0x8F, 0x3C, 0x79, 0xE3, 0xFF, 0x0F, 0xF8, 0x3F, 0xC0, 0x70, 0x00, 0x00, 0x00,
0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x70, 0x01, 0xFE, 0x0F, 0xFC, 0x1F, 0xF8, 0x3C, 0xF0, 0x79, 0xE0,
0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x07, 0x9E, 0x0F, 0x3C, 0x1E, 0x78, 0x3C, 0xF8, 0xF0, 0xFF, 0xE1,
0xFF, 0x81, 0xFE, 0x00, 0x70, 0x00, 0x39, 0x03, 0xFC, 0x1F, 0xEC, 0x4C, 0xF0, 0x07, 0xF9, 0xFB,
0xCF, 0x9E, 0x78, 0xF3, 0xC7, 0x9E, 0x3C, 0xF1, 0xE7, 0x8F, 0x3C, 0x7F, 0xE1, 0xFF, 0x07, 0xF8,
0x0E, 0x00, 0x00, 0x0E, 0x00, 0x3F, 0xC1, 0xFF, 0x83, 0xFF, 0x07, 0x9E, 0x0F, 0x3C, 0x1E, 0x78,
0x3C, 0xF0, 0x79, 0xE0, 0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x07, 0x9F, 0x1E, 0x1F, 0xFC, 0x3F, 0xF0,
0x3F, 0xC0, 0x0E, 0x00, 0x1C, 0x00, 0x78, 0x00, 0x70, 0x00, 0x40, 0x00, 0x00, 0x30, 0x03, 0xC0,
0x1F, 0xE7, 0xEF, 0x3E, 0x79, 0xE3, 0xCF, 0x1E, 0x78, 0xF3, 0xC7, 0x9E, 0x3C, 0xF1, 0xFF, 0x87,
0xFC, 0x1F, 0xE0, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x03, 0x00, 0x06, 0x00, 0x38, 0x00, 0xF0,
0x01, 0xE0, 0x03, 0x80, 0x00, 0x0F, 0x83, 0xFE, 0x1E, 0x7C, 0x78, 0xF3, 0xC3, 0xFF, 0x07, 0xF8,
0x1F, 0xE0, 0x3F, 0x00, 0xF8, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80,
0x18, 0x03, 0xC0, 0x3E, 0x00, 0xE0, 0x06, 0x00, 0x00, 0xF0, 0xFF, 0x1E, 0x79, 0xE7, 0x9E, 0x7B,
0xC3, 0xFC, 0x3F, 0x81, 0xF8, 0x1F, 0x81, 0xF0, 0x0F, 0x01, 0xE0, 0xFE, 0x0F, 0xC0, 0xF8, 0x00,
0xF0, 0x3F, 0xE1, 0xF7, 0x87, 0x9F, 0x3C, 0x3C, 0xF0, 0xFF, 0x81, 0xFE, 0x03, 0xF0, 0x0F, 0xC0,
0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0x00, 0x07, 0x00, 0x1E, 0x00,
0x78, 0x00, 0xC0, 0xF1, 0xEF, 0x1E, 0x79, 0xE7, 0x9C, 0x7B, 0xC3, 0xFC, 0x3F, 0x81, 0xF8, 0x1F,
0x81, 0xF0, 0x0F, 0x01, 0xE6, 0xFE, 0xFF, 0xCF, 0xF8, 0x70, 0x0F, 0x80, 0x3E, 0x00, 0x3C, 0x01,
0xE0, 0x07, 0x03, 0xC0, 0xFF, 0x87, 0xDE, 0x1E, 0x7C, 0xF0, 0xF3, 0xC3, 0xFE, 0x07, 0xF8, 0x0F,
0xC0, 0x3F, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x0E, 0x01, 0xF0,
0x1F, 0x00, 0x70, 0x0E, 0x00, 0x40, 0xF1, 0xEF, 0x1E, 0x79, 0xE7, 0x9C, 0x7B, 0xC3, 0xFC, 0x3F,
0x81, 0xF8, 0x1F, 0x81, 0xF0, 0x0F, 0x01, 0xE0, 0xFE, 0x0F, 0xC0, 0xF8, 0x00, 0x00, 0x00, 0x3F,
0x81, 0xFE, 0x07, 0xF0, 0x00, 0x03, 0xC0, 0xFF, 0x87, 0xDE, 0x1E, 0x7C, 0xF0, 0xF3, 0xC3, 0xFE,
0x07, 0xF8, 0x0F, 0xC0, 0x3F, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0,
0x1D, 0x83, 0xFC, 0x3F, 0x81, 0x30, 0x00, 0x0F, 0x1E, 0xF1, 0xE7, 0x9E, 0x79, 0xC7, 0xBC, 0x3F,
0xC3, 0xF8, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0xF0, 0x1E, 0x0F, 0xE0, 0xFC, 0x0F, 0x80, 0xFF, 0xFF,
0xFF, 0xFF, 0x49, 0xE3, 0x1E, 0x78, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x10, 0x6F,
0xF6, 0xD3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0x21, 0x8F, 0xDB, 0x2C, 0x30, 0xC3,
0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0xFD, 0xFB, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3B, 0xDE,
0xE7, 0x38, 0x7B, 0xDC, 0xEF, 0x70, 0x7B, 0xDC, 0xEF, 0x70, 0x3B, 0x9E, 0xE7, 0x79, 0xDE, 0x77,
0x9D, 0xE0, 0x7F, 0xBF, 0xDD, 0xEE, 0xFF, 0x77, 0x38, 0x7F, 0xBF, 0xDD, 0xEE, 0xFF, 0x77, 0x38,
0x0E, 0x03, 0x80, 0xE0, 0x38, 0xFF, 0xFF, 0xFF, 0xFC, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E,
0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0xFF, 0xFF, 0xFF, 0xFC,
0x38, 0x0E, 0x03, 0x8F, 0xFF, 0xFF, 0xFF, 0xC3, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x3C, 0xFD,
0xFB, 0xF7, 0xE7, 0x80, 0xF0, 0xE1, 0xFE, 0x3E, 0x3F, 0xC7, 0xC7, 0xF8, 0x70, 0xF0, 0x3E, 0x0E,
0x00, 0x0F, 0xE3, 0xC0, 0x01, 0xDC, 0xF0, 0x00, 0x7B, 0xDE, 0x00, 0x0F, 0x7F, 0x80, 0x00, 0xEE,
0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xF7, 0x7C, 0x3E, 0x01, 0xFF, 0xCF, 0xE0, 0x3B, 0xBF, 0xDC,
0x0F, 0x73, 0xF3, 0x81, 0xCE, 0x7E, 0x70, 0x79, 0xDF, 0xEE, 0x1E, 0x3F, 0x9F, 0xC3, 0xC3, 0xE1,
0xF0, 0x00, 0x38, 0xF3, 0xE7, 0x9F, 0x1E, 0x3E, 0x3C, 0x38, 0x00, 0x00, 0xE1, 0xE3, 0xC3, 0xC7,
0xCF, 0x3C, 0x78, 0xE0, 0x00, 0x00, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, 0x0F, 0x03, 0xC0, 0x78,
0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x00, 0x7C, 0x7E, 0xFE, 0xE7, 0xE7, 0xE7,
0xFE, 0x7E, 0x7C, 0x1E, 0x3E, 0x7E, 0x6E, 0xFF, 0xFF, 0x0E, 0x0E, 0x7E, 0xFD, 0xC3, 0xE7, 0xE1,
0xD3, 0xFF, 0xFC, 0x1E, 0x3E, 0x78, 0x7E, 0xFE, 0xEE, 0xFE, 0x7E, 0x3C, 0xFE, 0xFE, 0x0E, 0x1C,
0x1C, 0x38, 0x38, 0x38, 0x7C, 0x7E, 0xEE, 0x7E, 0x7E, 0xFE, 0xEF, 0xFE, 0x7E, 0x7C, 0x7E, 0xEE,
0xEE, 0x7E, 0x7E, 0x1E, 0x7C, 0x78, 0x7C, 0x7E, 0xFE, 0xE7, 0xE7, 0xE7, 0xFE, 0x7E, 0x7C, 0x1D,
0xF7, 0xDF, 0x1C, 0x71, 0xC7, 0x1C, 0x7D, 0xFD, 0xB8, 0xF3, 0xCF, 0x1C, 0x7F, 0xFE, 0xFD, 0xFD,
0x79, 0xE3, 0xE1, 0xD3, 0xFF, 0xFC, 0x1E, 0x3E, 0x7E, 0x6E, 0xFF, 0xFF, 0x0E, 0x0E, 0x7E, 0xFD,
0xC3, 0xE7, 0xE1, 0xD3, 0xFF, 0xFC, 0x1E, 0x3E, 0x78, 0x7E, 0xFE, 0xEE, 0xFE, 0x7E, 0x3C, 0xFE,
0xFE, 0x0E, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x7C, 0x7E, 0xEE, 0x7E, 0x7E, 0xFE, 0xEF, 0xFE, 0x7E,
0x7C, 0x7E, 0xEE, 0xEE, 0x7E, 0x7E, 0x1E, 0x7C, 0x78, 0xFF, 0xCF, 0xFF, 0xEF, 0xFF, 0xEF, 0xF0,
0xEF, 0xF7, 0xEF, 0xF7, 0xEF, 0xF7, 0xEF, 0xF7, 0xEF, 0xF7, 0xEF, 0xF7, 0x1F, 0xF7, 0xFE, 0xF7,
0xFE, 0xF7, 0xFC, 0x07, 0xF0, 0xFF, 0x1F, 0xE1, 0xF2, 0x3C, 0x07, 0xFE, 0x7F, 0xC3, 0xC0, 0x7F,
0xC7, 0xFC, 0x3C, 0x01, 0xF3, 0x1F, 0xF0, 0xFF, 0x07, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0,
0x0F, 0xC0, 0xFC, 0x0F, 0xC3, 0xF0, 0x3F, 0xC3, 0xFC, 0x1F, 0xC3, 0xF0, 0x3F, 0x03, 0xF0, 0x0F,
0x00, 0x3F, 0x87, 0xFC, 0x3F, 0xC3, 0x3E, 0xFF, 0xFF, 0xFF, 0x1F, 0x83, 0xF0, 0xFF, 0xFF, 0xFF,
0x78, 0x07, 0xCC, 0x7F, 0xE3, 0xFE, 0x1F, 0xC0, 0x7F, 0xFB, 0xFF, 0xC1, 0xF0, 0x03, 0x87, 0xFF,
0x3F, 0xF8, 0x0F, 0x01, 0xF8, 0x7F, 0x83, 0xF8, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1E,
0x00, 0x3F, 0x83, 0xFC, 0x3F, 0xE3, 0x3F, 0x00, 0xF1, 0xFF, 0x3F, 0xF7, 0xFF, 0x7D, 0xFF, 0x0F,
0xF0, 0xF7, 0xBE, 0x7F, 0xE7, 0xFC, 0x1F, 0x80, 0x07, 0x80, 0x0F, 0x80, 0x3F, 0x00, 0x7F, 0x00,
0xFE, 0x03, 0xDC, 0x07, 0xBC, 0x1E, 0x78, 0x3C, 0x78, 0x78, 0xF1, 0xE1, 0xE3, 0xC1, 0xE7, 0xFF,
0xDF, 0xFF, 0xBF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xC1,
0xFE, 0x0F, 0xF0, 0x7F, 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0,
0x78, 0xFF, 0xFF, 0xFF, 0xFF, 0xBC, 0x03, 0xC0, 0x7C, 0x07, 0x80, 0x78, 0x0F, 0x01, 0xE0, 0x78,
0x1E, 0x07, 0xC0, 0xF0, 0x3F, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0xE0, 0x3C,
0x0F, 0x01, 0xE0, 0x78, 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0,
0x3C, 0x00, 0x7C, 0x7E, 0xFE, 0xE7, 0xE7, 0xE7, 0xFE, 0x7E, 0x7C, 0x1E, 0x3E, 0x7E, 0x6E, 0xFF,
0xFF, 0x0E, 0x0E, 0x7E, 0xFD, 0xC3, 0xE7, 0xE1, 0xD3, 0xFF, 0xFC, 0x1E, 0x3E, 0x78, 0x7E, 0xFE,
0xEE, 0xFE, 0x7E, 0x3C, 0xFE, 0xFE, 0x0E, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x7C, 0x7E, 0xEE, 0x7E,
0x7E, 0xFE, 0xEF, 0xFE, 0x7E, 0x7C, 0x7E, 0xEE, 0xEE, 0x7E, 0x7E, 0x1E, 0x7C, 0x78, 0x7C, 0x7E,
0xFE, 0xE7, 0xE7, 0xE7, 0xFE, 0x7E, 0x7C, 0x1D, 0xF7, 0xDF, 0x1C, 0x71, 0xC7, 0x1C, 0x7D, 0xFD,
0xB8, 0xF3, 0xCF, 0x1C, 0x7F, 0xFE, 0xFD, 0xFD, 0x79, 0xE3, 0xE1, 0xD3, 0xFF, 0xFC, 0x1E, 0x3E,
0x7E, 0x6E, 0xFF, 0xFF, 0x0E, 0x0E, 0x7E, 0xFD, 0xC3, 0xE7, 0xE1, 0xD3, 0xFF, 0xFC, 0x1E, 0x3E,
0x78, 0x7E, 0xFE, 0xEE, 0xFE, 0x7E, 0x3C, 0xFE, 0xFE, 0x0E, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x7C,
0x7E, 0xEE, 0x7E, 0x7E, 0xFE, 0xEF, 0xFE, 0x7E, 0x7C, 0x7E, 0xEE, 0xEE, 0x7E, 0x7E, 0x1E, 0x7C,
0x78, 0xFF, 0xCF, 0xFF, 0xEF, 0xFF, 0xEF, 0xF0, 0xEF, 0xF7, 0xEF, 0xF7, 0xEF, 0xF7, 0xEF, 0xF7,
0xEF, 0xF7, 0xEF, 0xF7, 0x1F, 0xF7, 0xFE, 0xF7, 0xFE, 0xF7, 0xFC, 0x07, 0xF0, 0xFF, 0x1F, 0xE1,
0xF2, 0x3C, 0x07, 0xFE, 0x7F, 0xC3, 0xC0, 0x7F, 0xC7, 0xFC, 0x3C, 0x01, 0xF3, 0x1F, 0xF0, 0xFF,
0x07, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x0F, 0xC0, 0xFC, 0x0F, 0xC3, 0xF0, 0x3F, 0xC3,
0xFC, 0x1F, 0xC3, 0xF0, 0x3F, 0x03, 0xF0, 0x0F, 0x00, 0x3F, 0x87, 0xFC, 0x3F, 0xC3, 0x3E, 0xFF,
0xFF, 0xFF, 0x1F, 0x83, 0xF0, 0xFF, 0xFF, 0xFF, 0x78, 0x07, 0xCC, 0x7F, 0xE3, 0xFE, 0x1F, 0xC0,
0x7F, 0xFB, 0xFF, 0xC1, 0xF0, 0x03, 0x87, 0xFF, 0x3F, 0xF8, 0x0F, 0x01, 0xF8, 0x7F, 0x83, 0xF8,
0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x3F, 0x83, 0xFC, 0x3F, 0xE3, 0x3F, 0x00,
0xF1, 0xFF, 0x3F, 0xF7, 0xFF, 0x7D, 0xFF, 0x0F, 0xF0, 0xF7, 0xBE, 0x7F, 0xE7, 0xFC, 0x1F, 0x80,
0x07, 0x80, 0x0F, 0x80, 0x3F, 0x00, 0x7F, 0x00, 0xFE, 0x03, 0xDC, 0x07, 0xBC, 0x1E, 0x78, 0x3C,
0x78, 0x78, 0xF1, 0xE1, 0xE3, 0xC1, 0xE7, 0xFF, 0xDF, 0xFF, 0xBF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0x83, 0xFC, 0x1F, 0xE0,
0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x78, 0xFF, 0xFF, 0xFF, 0xFF, 0xBC, 0x03, 0xC0,
0x7C, 0x07, 0x80, 0x78, 0x0F, 0x01, 0xE0, 0x78, 0x1E, 0x07, 0xC0, 0xF0, 0x3F, 0xFF, 0xFF, 0xFF,
0xE0, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, 0x0F, 0x03, 0xC0, 0x78,
0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x00, 0x77, 0xFE, 0xE0, 0x00, 0x3C, 0x00,
0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x0E, 0x38, 0xFD, 0xE1, 0xF7, 0x87, 0xFC,
0x03, 0xF0, 0x0F, 0xC0, 0x1E, 0x00, 0x78, 0x00, 0x3D, 0xF3, 0xFF, 0xFF, 0xEF, 0xCE, 0x7F, 0xFB,
0xBF, 0xFC, 0xF7, 0xC0, 0x00, 0x07, 0xC7, 0xE3, 0xF3, 0xE1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F,
0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x7E, 0x3E, 0x1F, 0x00, 0x00, 0x3C, 0x77, 0xEF, 0x7F,
0xEF, 0xFE, 0xE3, 0xC0, 0x00, 0x3C, 0x77, 0xFF, 0x7F, 0xEF, 0xFE, 0xE3, 0xC0, 0x01, 0x80, 0xE0,
0x3B, 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x70, 0xFF, 0xFF, 0xFF, 0xFD, 0xC0, 0x70, 0x18, 0x00, 0x03,
0xCF, 0xFF, 0xFF, 0xFE, 0xF8, 0x3F, 0xEF, 0xFC, 0xFF, 0x03, 0xC0, 0x0F, 0xFF, 0xFF, 0xFF, 0xC0,
0xF0, 0x3F, 0xCF, 0xFD, 0xFF, 0x07, 0xDF, 0xFF, 0xFF, 0xFC, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF,
0xC0, 0x3F, 0x1F, 0xBF, 0x9F, 0xFF, 0xDF, 0xFF, 0x6F, 0xAF, 0x07, 0x87, 0xFB, 0xFF, 0xFD, 0xFF,
0xFE, 0xFF, 0xF0, 0x78, 0x78, 0x3C, 0x3C, 0x1E, 0x1E, 0x0F, 0x0F, 0x07, 0x87, 0x83, 0xC3, 0xC1,
0xE1, 0xE0, 0xF0, 0x3F, 0x7B, 0xFB, 0xFF, 0xDF, 0xF0, 0xFF, 0x00, 0x7F, 0xBF, 0xFD, 0xFF, 0xEF,
0xF0, 0x7F, 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0x3F, 0x78, 0xFE,
0xF3, 0xFD, 0xE7, 0xC3, 0xCF, 0x07, 0x9F, 0xEF, 0x3F, 0xDE, 0x7F, 0xBC, 0xF0, 0x79, 0xE0, 0xF3,
0xC1, 0xE7, 0x83, 0xCF, 0x07, 0xDE, 0x0F, 0xBC, 0x1F, 0x78, 0x1E, 0x3F, 0x1F, 0xB9, 0xFC, 0xFF,
0xFF, 0xF7, 0xF7, 0xFE, 0xDF, 0x4E, 0xF0, 0x78, 0x03, 0xFD, 0xFE, 0xFF, 0xF7, 0xFB, 0xFF, 0xDF,
0xEF, 0xF0, 0x78, 0x3F, 0xC1, 0xE0, 0xFF, 0x07, 0x83, 0xFC, 0x1E, 0x0F, 0xF0, 0x78, 0x3F, 0xC1,
0xE0, 0xFF, 0x07, 0x83, 0xFC, 0x1E, 0x0F, 0x3F, 0x1F, 0xBC, 0xFE, 0x7F, 0x7B, 0xFD, 0xFC, 0xF7,
0xDB, 0xE9, 0xEF, 0x07, 0x83, 0xDF, 0xEF, 0xF7, 0xBF, 0xDF, 0xEF, 0x7F, 0xBF, 0xDE, 0xF0, 0x78,
0x3D, 0xE0, 0xF0, 0x7B, 0xC1, 0xE0, 0xF7, 0x83, 0xC1, 0xEF, 0x07, 0x83, 0xDE, 0x0F, 0x07, 0xFC,
0x1E, 0x0F, 0xF8, 0x3C, 0x0F,
0x3C, 0x00, 0x77, 0xFE, 0xE0, 0x00, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x03, 0xC0,
0x0F, 0x0E, 0x38, 0xFD, 0xE1, 0xF7, 0x87, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x1E, 0x00, 0x78, 0x00,
0x3D, 0xF3, 0xFF, 0xFF, 0xEF, 0xCE, 0x7F, 0xFB, 0xBF, 0xFC, 0xF7, 0xC0, 0x00, 0x07, 0xC7, 0xE3,
0xF3, 0xE1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x7E,
0x3E, 0x1F, 0x00, 0x00, 0x3C, 0x77, 0xEF, 0x7F, 0xEF, 0xFE, 0xE3, 0xC0, 0x00, 0x3C, 0x77, 0xFF,
0x7F, 0xEF, 0xFE, 0xE3, 0xC0, 0x01, 0x80, 0xE0, 0x3B, 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x70, 0xFF,
0xFF, 0xFF, 0xFD, 0xC0, 0x70, 0x18, 0x00, 0x03, 0xCF, 0xFF, 0xFF, 0xFE, 0xF8, 0x3F, 0xEF, 0xFC,
0xFF, 0x03, 0xC0, 0x0F, 0xFF, 0xFF, 0xFF, 0xC0, 0xF0, 0x3F, 0xCF, 0xFD, 0xFF, 0x07, 0xDF, 0xFF,
0xFF, 0xFC, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xC0, 0x3F, 0x1F, 0xBF, 0x9F, 0xFF, 0xDF, 0xFF,
0x6F, 0xAF, 0x07, 0x87, 0xFB, 0xFF, 0xFD, 0xFF, 0xFE, 0xFF, 0xF0, 0x78, 0x78, 0x3C, 0x3C, 0x1E,
0x1E, 0x0F, 0x0F, 0x07, 0x87, 0x83, 0xC3, 0xC1, 0xE1, 0xE0, 0xF0, 0x3F, 0x7B, 0xFB, 0xFF, 0xDF,
0xF0, 0xFF, 0x00, 0x7F, 0xBF, 0xFD, 0xFF, 0xEF, 0xF0, 0x7F, 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07,
0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0x3F, 0x78, 0xFE, 0xF3, 0xFD, 0xE7, 0xC3, 0xCF, 0x07, 0x9F, 0xEF,
0x3F, 0xDE, 0x7F, 0xBC, 0xF0, 0x79, 0xE0, 0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x07, 0xDE, 0x0F, 0xBC,
0x1F, 0x78, 0x1E, 0x3F, 0x1F, 0xB9, 0xFC, 0xFF, 0xFF, 0xF7, 0xF7, 0xFE, 0xDF, 0x4E, 0xF0, 0x78,
0x03, 0xFD, 0xFE, 0xFF, 0xF7, 0xFB, 0xFF, 0xDF, 0xEF, 0xF0, 0x78, 0x3F, 0xC1, 0xE0, 0xFF, 0x07,
0x83, 0xFC, 0x1E, 0x0F, 0xF0, 0x78, 0x3F, 0xC1, 0xE0, 0xFF, 0x07, 0x83, 0xFC, 0x1E, 0x0F, 0x3F,
0x1F, 0xBC, 0xFE, 0x7F, 0x7B, 0xFD, 0xFC, 0xF7, 0xDB, 0xE9, 0xEF, 0x07, 0x83, 0xDF, 0xEF, 0xF7,
0xBF, 0xDF, 0xEF, 0x7F, 0xBF, 0xDE, 0xF0, 0x78, 0x3D, 0xE0, 0xF0, 0x7B, 0xC1, 0xE0, 0xF7, 0x83,
0xC1, 0xEF, 0x07, 0x83, 0xDE, 0x0F, 0x07, 0xFC, 0x1E, 0x0F, 0xF8, 0x3C, 0x0F,
};
static const EpdGlyph ubuntu_10_boldGlyphs[] = {
@@ -1803,71 +1988,159 @@ static const EpdGlyph ubuntu_10_boldGlyphs[] = {
{ 10, 13, 181, 0, 13, 17, 16720 }, // U+05E8
{ 15, 13, 262, 1, 13, 25, 16737 }, // U+05E9
{ 14, 13, 241, 0, 13, 23, 16762 }, // U+05EA
{ 14, 21, 220, 0, 21, 37, 16785 }, // U+1EF2
{ 12, 21, 182, 0, 17, 32, 16822 }, // U+1EF3
{ 2, 16, 0, -1, 15, 4, 16854 }, // U+200C
{ 6, 16, 0, -3, 15, 12, 16858 }, // U+200D
{ 6, 16, 0, -1, 15, 12, 16870 }, // U+200E
{ 6, 16, 0, -5, 15, 12, 16882 }, // U+200F
{ 7, 3, 106, 0, 8, 3, 16894 }, // U+2010
{ 11, 3, 167, 0, 8, 5, 16897 }, // U+2013
{ 21, 3, 333, 0, 8, 8, 16902 }, // U+2014
{ 21, 3, 333, 0, 8, 8, 16910 }, // U+2015
{ 5, 6, 81, 0, 16, 4, 16918 }, // U+2018
{ 5, 6, 81, 0, 16, 4, 16922 }, // U+2019
{ 5, 6, 81, 0, 3, 4, 16926 }, // U+201A
{ 10, 6, 151, 0, 16, 8, 16930 }, // U+201C
{ 9, 6, 151, 0, 16, 7, 16938 }, // U+201D
{ 9, 6, 151, 0, 3, 7, 16945 }, // U+201E
{ 10, 18, 165, 0, 15, 23, 16952 }, // U+2020
{ 10, 18, 165, 0, 15, 23, 16975 }, // U+2021
{ 7, 6, 121, 0, 10, 6, 16998 }, // U+2022
{ 19, 4, 333, 1, 4, 10, 17004 }, // U+2026
{ 27, 15, 440, 0, 15, 51, 17014 }, // U+2030
{ 7, 11, 109, 0, 11, 10, 17065 }, // U+2039
{ 7, 11, 109, 0, 11, 10, 17075 }, // U+203A
{ 11, 15, 51, -4, 15, 21, 17085 }, // U+2044
{ 8, 9, 121, 0, 15, 9, 17106 }, // U+2070
{ 8, 8, 121, 0, 15, 8, 17115 }, // U+2074
{ 7, 9, 121, 0, 15, 8, 17123 }, // U+2075
{ 8, 9, 121, 0, 15, 9, 17131 }, // U+2076
{ 8, 8, 121, 0, 15, 8, 17140 }, // U+2077
{ 8, 9, 121, 0, 15, 9, 17148 }, // U+2078
{ 8, 9, 121, 0, 15, 9, 17157 }, // U+2079
{ 8, 9, 121, 0, 9, 9, 17166 }, // U+2080
{ 6, 9, 121, 0, 9, 7, 17175 }, // U+2081
{ 7, 9, 121, 0, 9, 8, 17182 }, // U+2082
{ 7, 9, 121, 0, 9, 8, 17190 }, // U+2083
{ 8, 8, 121, 0, 9, 8, 17198 }, // U+2084
{ 7, 9, 121, 0, 9, 8, 17206 }, // U+2085
{ 8, 9, 121, 0, 9, 9, 17214 }, // U+2086
{ 8, 8, 121, 0, 9, 8, 17223 }, // U+2087
{ 8, 9, 121, 0, 9, 9, 17231 }, // U+2088
{ 8, 9, 121, 0, 9, 9, 17240 }, // U+2089
{ 16, 13, 288, 1, 13, 26, 17249 }, // U+20AA
{ 12, 15, 189, 0, 15, 23, 17275 }, // U+20AC
{ 12, 15, 189, 0, 15, 23, 17298 }, // U+20AE
{ 12, 15, 189, 0, 15, 23, 17321 }, // U+20B4
{ 13, 15, 189, 0, 15, 25, 17344 }, // U+20B9
{ 12, 15, 204, 0, 15, 23, 17369 }, // U+2202
{ 15, 15, 231, 0, 15, 29, 17392 }, // U+2206
{ 13, 17, 243, 1, 15, 28, 17421 }, // U+220F
{ 11, 17, 181, 0, 15, 24, 17449 }, // U+2211
{ 10, 3, 189, 1, 8, 4, 17473 }, // U+2212
{ 11, 15, 51, -4, 15, 21, 17477 }, // U+2215
{ 5, 4, 82, 0, 9, 3, 17498 }, // U+2219
{ 14, 15, 201, 0, 15, 27, 17501 }, // U+221A
{ 13, 7, 212, 0, 10, 12, 17528 }, // U+221E
{ 9, 21, 134, 0, 16, 24, 17540 }, // U+222B
{ 12, 11, 189, 0, 12, 17, 17564 }, // U+2248
{ 10, 14, 189, 1, 14, 18, 17581 }, // U+2260
{ 10, 13, 189, 1, 13, 17, 17599 }, // U+2264
{ 10, 13, 189, 1, 13, 17, 17616 }, // U+2265
{ 17, 16, 280, 1, 16, 34, 17633 }, // U+FB00
{ 13, 16, 236, 1, 16, 26, 17667 }, // U+FB01
{ 15, 16, 245, 1, 16, 30, 17693 }, // U+FB02
{ 22, 16, 376, 1, 16, 44, 17723 }, // U+FB03
{ 23, 16, 385, 1, 16, 46, 17767 }, // U+FB04
{ 15, 20, 240, 0, 15, 38, 16785 }, // U+1EA0
{ 11, 17, 184, 0, 12, 24, 16823 }, // U+1EA1
{ 15, 20, 240, 0, 20, 38, 16847 }, // U+1EA2
{ 11, 18, 184, 0, 17, 25, 16885 }, // U+1EA3
{ 15, 23, 240, 0, 23, 44, 16910 }, // U+1EA4
{ 13, 21, 184, 0, 20, 35, 16954 }, // U+1EA5
{ 15, 23, 240, 0, 23, 44, 16989 }, // U+1EA6
{ 11, 21, 184, 0, 20, 29, 17033 }, // U+1EA7
{ 15, 24, 240, 0, 24, 45, 17062 }, // U+1EA8
{ 12, 21, 184, 0, 20, 32, 17107 }, // U+1EA9
{ 15, 24, 240, 0, 24, 45, 17139 }, // U+1EAA
{ 11, 21, 184, 0, 20, 29, 17184 }, // U+1EAB
{ 15, 25, 240, 0, 20, 47, 17213 }, // U+1EAC
{ 11, 22, 184, 0, 17, 31, 17260 }, // U+1EAD
{ 15, 24, 240, 0, 24, 45, 17291 }, // U+1EAE
{ 11, 22, 184, 0, 21, 31, 17336 }, // U+1EAF
{ 15, 24, 240, 0, 24, 45, 17367 }, // U+1EB0
{ 11, 22, 184, 0, 21, 31, 17412 }, // U+1EB1
{ 15, 25, 240, 0, 25, 47, 17443 }, // U+1EB2
{ 11, 22, 184, 0, 21, 31, 17490 }, // U+1EB3
{ 15, 24, 240, 0, 24, 45, 17521 }, // U+1EB4
{ 11, 21, 184, 0, 20, 29, 17566 }, // U+1EB5
{ 15, 25, 240, 0, 20, 47, 17595 }, // U+1EB6
{ 11, 21, 184, 0, 16, 29, 17642 }, // U+1EB7
{ 11, 20, 202, 1, 15, 28, 17671 }, // U+1EB8
{ 12, 17, 195, 0, 12, 26, 17699 }, // U+1EB9
{ 11, 20, 202, 1, 20, 28, 17725 }, // U+1EBA
{ 12, 18, 195, 0, 17, 27, 17753 }, // U+1EBB
{ 11, 20, 202, 1, 20, 28, 17780 }, // U+1EBC
{ 12, 17, 195, 0, 16, 26, 17808 }, // U+1EBD
{ 13, 23, 202, 1, 23, 38, 17834 }, // U+1EBE
{ 13, 20, 195, 0, 19, 33, 17872 }, // U+1EBF
{ 11, 23, 202, 1, 23, 32, 17905 }, // U+1EC0
{ 12, 21, 195, 0, 20, 32, 17937 }, // U+1EC1
{ 12, 23, 202, 1, 23, 35, 17969 }, // U+1EC2
{ 13, 21, 195, 0, 20, 35, 18004 }, // U+1EC3
{ 11, 24, 202, 1, 24, 33, 18039 }, // U+1EC4
{ 12, 21, 195, 0, 20, 32, 18072 }, // U+1EC5
{ 11, 25, 202, 1, 20, 35, 18104 }, // U+1EC6
{ 12, 22, 195, 0, 17, 33, 18139 }, // U+1EC7
{ 6, 20, 105, 0, 20, 15, 18172 }, // U+1EC8
{ 6, 17, 96, 0, 17, 13, 18187 }, // U+1EC9
{ 4, 20, 105, 1, 15, 10, 18200 }, // U+1ECA
{ 4, 21, 96, 1, 16, 11, 18210 }, // U+1ECB
{ 15, 20, 263, 1, 15, 38, 18221 }, // U+1ECC
{ 12, 17, 202, 0, 12, 26, 18259 }, // U+1ECD
{ 15, 21, 263, 1, 20, 40, 18285 }, // U+1ECE
{ 12, 18, 202, 0, 17, 27, 18325 }, // U+1ECF
{ 15, 24, 263, 1, 23, 45, 18352 }, // U+1ED0
{ 13, 21, 202, 0, 20, 35, 18397 }, // U+1ED1
{ 15, 24, 263, 1, 23, 45, 18432 }, // U+1ED2
{ 12, 21, 202, 0, 20, 32, 18477 }, // U+1ED3
{ 15, 25, 263, 1, 24, 47, 18509 }, // U+1ED4
{ 13, 21, 202, 0, 20, 35, 18556 }, // U+1ED5
{ 15, 25, 263, 1, 24, 47, 18591 }, // U+1ED6
{ 12, 21, 202, 0, 20, 32, 18638 }, // U+1ED7
{ 15, 25, 263, 1, 20, 47, 18670 }, // U+1ED8
{ 12, 22, 202, 0, 17, 33, 18717 }, // U+1ED9
{ 15, 21, 263, 1, 20, 40, 18750 }, // U+1EDA
{ 13, 18, 202, 0, 17, 30, 18790 }, // U+1EDB
{ 15, 21, 263, 1, 20, 40, 18820 }, // U+1EDC
{ 13, 18, 202, 0, 17, 30, 18860 }, // U+1EDD
{ 15, 21, 263, 1, 20, 40, 18890 }, // U+1EDE
{ 13, 18, 202, 0, 17, 30, 18930 }, // U+1EDF
{ 15, 21, 263, 1, 20, 40, 18960 }, // U+1EE0
{ 13, 17, 202, 0, 16, 28, 19000 }, // U+1EE1
{ 15, 22, 263, 1, 17, 42, 19028 }, // U+1EE2
{ 13, 19, 202, 0, 14, 31, 19070 }, // U+1EE3
{ 13, 20, 236, 1, 15, 33, 19101 }, // U+1EE4
{ 10, 16, 196, 1, 11, 20, 19134 }, // U+1EE5
{ 13, 21, 236, 1, 20, 35, 19154 }, // U+1EE6
{ 10, 18, 196, 1, 17, 23, 19189 }, // U+1EE7
{ 15, 21, 249, 1, 20, 40, 19212 }, // U+1EE8
{ 13, 18, 209, 1, 17, 30, 19252 }, // U+1EE9
{ 15, 21, 249, 1, 20, 40, 19282 }, // U+1EEA
{ 13, 18, 209, 1, 17, 30, 19322 }, // U+1EEB
{ 15, 21, 249, 1, 20, 40, 19352 }, // U+1EEC
{ 13, 18, 209, 1, 17, 30, 19392 }, // U+1EED
{ 15, 21, 249, 1, 20, 40, 19422 }, // U+1EEE
{ 13, 17, 209, 1, 16, 28, 19462 }, // U+1EEF
{ 15, 22, 249, 1, 17, 42, 19490 }, // U+1EF0
{ 13, 19, 209, 1, 14, 31, 19532 }, // U+1EF1
{ 14, 21, 220, 0, 21, 37, 19563 }, // U+1EF2
{ 12, 21, 182, 0, 17, 32, 19600 }, // U+1EF3
{ 14, 20, 220, 0, 15, 35, 19632 }, // U+1EF4
{ 12, 15, 182, 0, 11, 23, 19667 }, // U+1EF5
{ 14, 20, 220, 0, 20, 35, 19690 }, // U+1EF6
{ 12, 21, 182, 0, 17, 32, 19725 }, // U+1EF7
{ 14, 20, 220, 0, 20, 35, 19757 }, // U+1EF8
{ 12, 20, 182, 0, 16, 30, 19792 }, // U+1EF9
{ 2, 16, 0, -1, 15, 4, 19822 }, // U+200C
{ 6, 16, 0, -3, 15, 12, 19826 }, // U+200D
{ 6, 16, 0, -1, 15, 12, 19838 }, // U+200E
{ 6, 16, 0, -5, 15, 12, 19850 }, // U+200F
{ 7, 3, 106, 0, 8, 3, 19862 }, // U+2010
{ 11, 3, 167, 0, 8, 5, 19865 }, // U+2013
{ 21, 3, 333, 0, 8, 8, 19870 }, // U+2014
{ 21, 3, 333, 0, 8, 8, 19878 }, // U+2015
{ 5, 6, 81, 0, 16, 4, 19886 }, // U+2018
{ 5, 6, 81, 0, 16, 4, 19890 }, // U+2019
{ 5, 6, 81, 0, 3, 4, 19894 }, // U+201A
{ 10, 6, 151, 0, 16, 8, 19898 }, // U+201C
{ 9, 6, 151, 0, 16, 7, 19906 }, // U+201D
{ 9, 6, 151, 0, 3, 7, 19913 }, // U+201E
{ 10, 18, 165, 0, 15, 23, 19920 }, // U+2020
{ 10, 18, 165, 0, 15, 23, 19943 }, // U+2021
{ 7, 6, 121, 0, 10, 6, 19966 }, // U+2022
{ 19, 4, 333, 1, 4, 10, 19972 }, // U+2026
{ 27, 15, 440, 0, 15, 51, 19982 }, // U+2030
{ 7, 11, 109, 0, 11, 10, 20033 }, // U+2039
{ 7, 11, 109, 0, 11, 10, 20043 }, // U+203A
{ 11, 15, 51, -4, 15, 21, 20053 }, // U+2044
{ 8, 9, 121, 0, 15, 9, 20074 }, // U+2070
{ 8, 8, 121, 0, 15, 8, 20083 }, // U+2074
{ 7, 9, 121, 0, 15, 8, 20091 }, // U+2075
{ 8, 9, 121, 0, 15, 9, 20099 }, // U+2076
{ 8, 8, 121, 0, 15, 8, 20108 }, // U+2077
{ 8, 9, 121, 0, 15, 9, 20116 }, // U+2078
{ 8, 9, 121, 0, 15, 9, 20125 }, // U+2079
{ 8, 9, 121, 0, 9, 9, 20134 }, // U+2080
{ 6, 9, 121, 0, 9, 7, 20143 }, // U+2081
{ 7, 9, 121, 0, 9, 8, 20150 }, // U+2082
{ 7, 9, 121, 0, 9, 8, 20158 }, // U+2083
{ 8, 8, 121, 0, 9, 8, 20166 }, // U+2084
{ 7, 9, 121, 0, 9, 8, 20174 }, // U+2085
{ 8, 9, 121, 0, 9, 9, 20182 }, // U+2086
{ 8, 8, 121, 0, 9, 8, 20191 }, // U+2087
{ 8, 9, 121, 0, 9, 9, 20199 }, // U+2088
{ 8, 9, 121, 0, 9, 9, 20208 }, // U+2089
{ 16, 13, 288, 1, 13, 26, 20217 }, // U+20AA
{ 12, 15, 189, 0, 15, 23, 20243 }, // U+20AC
{ 12, 15, 189, 0, 15, 23, 20266 }, // U+20AE
{ 12, 15, 189, 0, 15, 23, 20289 }, // U+20B4
{ 13, 15, 189, 0, 15, 25, 20312 }, // U+20B9
{ 12, 15, 204, 0, 15, 23, 20337 }, // U+2202
{ 15, 15, 231, 0, 15, 29, 20360 }, // U+2206
{ 13, 17, 243, 1, 15, 28, 20389 }, // U+220F
{ 11, 17, 181, 0, 15, 24, 20417 }, // U+2211
{ 10, 3, 189, 1, 8, 4, 20441 }, // U+2212
{ 11, 15, 51, -4, 15, 21, 20445 }, // U+2215
{ 5, 4, 82, 0, 9, 3, 20466 }, // U+2219
{ 14, 15, 201, 0, 15, 27, 20469 }, // U+221A
{ 13, 7, 212, 0, 10, 12, 20496 }, // U+221E
{ 9, 21, 134, 0, 16, 24, 20508 }, // U+222B
{ 12, 11, 189, 0, 12, 17, 20532 }, // U+2248
{ 10, 14, 189, 1, 14, 18, 20549 }, // U+2260
{ 10, 13, 189, 1, 13, 17, 20567 }, // U+2264
{ 10, 13, 189, 1, 13, 17, 20584 }, // U+2265
{ 17, 16, 280, 1, 16, 34, 20601 }, // U+FB00
{ 13, 16, 236, 1, 16, 26, 20635 }, // U+FB01
{ 15, 16, 245, 1, 16, 30, 20661 }, // U+FB02
{ 22, 16, 376, 1, 16, 44, 20691 }, // U+FB03
{ 23, 16, 385, 1, 16, 46, 20735 }, // U+FB04
};
static const EpdUnicodeInterval ubuntu_10_boldIntervals[] = {
@@ -1892,36 +2165,36 @@ static const EpdUnicodeInterval ubuntu_10_boldIntervals[] = {
{ 0x472, 0x475, 0x216 },
{ 0x48A, 0x4F9, 0x21A },
{ 0x5D0, 0x5EA, 0x28A },
{ 0x1EF2, 0x1EF3, 0x2A5 },
{ 0x200C, 0x2010, 0x2A7 },
{ 0x2013, 0x2015, 0x2AC },
{ 0x2018, 0x201A, 0x2AF },
{ 0x201C, 0x201E, 0x2B2 },
{ 0x2020, 0x2022, 0x2B5 },
{ 0x2026, 0x2026, 0x2B8 },
{ 0x2030, 0x2030, 0x2B9 },
{ 0x2039, 0x203A, 0x2BA },
{ 0x2044, 0x2044, 0x2BC },
{ 0x2070, 0x2070, 0x2BD },
{ 0x2074, 0x2079, 0x2BE },
{ 0x2080, 0x2089, 0x2C4 },
{ 0x20AA, 0x20AA, 0x2CE },
{ 0x20AC, 0x20AC, 0x2CF },
{ 0x20AE, 0x20AE, 0x2D0 },
{ 0x20B4, 0x20B4, 0x2D1 },
{ 0x20B9, 0x20B9, 0x2D2 },
{ 0x2202, 0x2202, 0x2D3 },
{ 0x2206, 0x2206, 0x2D4 },
{ 0x220F, 0x220F, 0x2D5 },
{ 0x2211, 0x2212, 0x2D6 },
{ 0x2215, 0x2215, 0x2D8 },
{ 0x2219, 0x221A, 0x2D9 },
{ 0x221E, 0x221E, 0x2DB },
{ 0x222B, 0x222B, 0x2DC },
{ 0x2248, 0x2248, 0x2DD },
{ 0x2260, 0x2260, 0x2DE },
{ 0x2264, 0x2265, 0x2DF },
{ 0xFB00, 0xFB04, 0x2E1 },
{ 0x1EA0, 0x1EF9, 0x2A5 },
{ 0x200C, 0x2010, 0x2FF },
{ 0x2013, 0x2015, 0x304 },
{ 0x2018, 0x201A, 0x307 },
{ 0x201C, 0x201E, 0x30A },
{ 0x2020, 0x2022, 0x30D },
{ 0x2026, 0x2026, 0x310 },
{ 0x2030, 0x2030, 0x311 },
{ 0x2039, 0x203A, 0x312 },
{ 0x2044, 0x2044, 0x314 },
{ 0x2070, 0x2070, 0x315 },
{ 0x2074, 0x2079, 0x316 },
{ 0x2080, 0x2089, 0x31C },
{ 0x20AA, 0x20AA, 0x326 },
{ 0x20AC, 0x20AC, 0x327 },
{ 0x20AE, 0x20AE, 0x328 },
{ 0x20B4, 0x20B4, 0x329 },
{ 0x20B9, 0x20B9, 0x32A },
{ 0x2202, 0x2202, 0x32B },
{ 0x2206, 0x2206, 0x32C },
{ 0x220F, 0x220F, 0x32D },
{ 0x2211, 0x2212, 0x32E },
{ 0x2215, 0x2215, 0x330 },
{ 0x2219, 0x221A, 0x331 },
{ 0x221E, 0x221E, 0x333 },
{ 0x222B, 0x222B, 0x334 },
{ 0x2248, 0x2248, 0x335 },
{ 0x2260, 0x2260, 0x336 },
{ 0x2264, 0x2265, 0x337 },
{ 0xFB00, 0xFB04, 0x339 },
};
static const EpdKernClassEntry ubuntu_10_boldKernLeftClasses[] = {
+356 -102
View File
@@ -3,12 +3,12 @@
* name: ubuntu_10_regular
* size: 10
* mode: 1-bit
* Command used: fontconvert.py ubuntu_10_regular 10 ../builtinFonts/source/Ubuntu/Ubuntu-Regular.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Regular.ttf --additional-intervals 0x05D0,0x05EA
* Command used: fontconvert.py ubuntu_10_regular 10 ../builtinFonts/source/Ubuntu/Ubuntu-Regular.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Regular.ttf ../builtinFonts/source/Ubuntu/Ubuntu-Vietnamese-Regular.ttf --additional-intervals 0x05D0,0x05EA
*/
#pragma once
#include "EpdFontData.h"
static const uint8_t ubuntu_10_regularBitmaps[16030] = {
static const uint8_t ubuntu_10_regularBitmaps[18686] = {
0xEE, 0xEE, 0xE6, 0x66, 0x66, 0x00, 0xEF, 0xE0, 0xEF, 0xDF, 0xBF, 0x6E, 0xC0, 0x1C, 0x61, 0xCE,
0x1C, 0xE1, 0x8E, 0xFF, 0xFF, 0xFF, 0x38, 0xC3, 0x9C, 0x31, 0xCF, 0xFF, 0xFF, 0xF7, 0x18, 0x73,
0x87, 0x38, 0x63, 0x80, 0x0C, 0x03, 0x03, 0xF9, 0xFE, 0xF1, 0xB8, 0x0E, 0x01, 0xE0, 0x7E, 0x07,
@@ -953,11 +953,177 @@ static const uint8_t ubuntu_10_regularBitmaps[16030] = {
0x1F, 0xE0, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x07, 0xE7, 0x1F,
0x38, 0xF9, 0xC7, 0xCE, 0x3E, 0xE1, 0xFF, 0x0F, 0xF0, 0xFC, 0x07, 0x60, 0x3B, 0x83, 0x8F, 0xF8,
0x3F, 0x80, 0x7F, 0xF3, 0xFF, 0xC6, 0x0E, 0x30, 0x71, 0x83, 0x8C, 0x1C, 0x60, 0xE3, 0x07, 0x18,
0x38, 0xC1, 0xDE, 0x0F, 0xE0, 0x70, 0x0C, 0x00, 0x70, 0x01, 0xC0, 0x06, 0x00, 0x00, 0x70, 0x1D,
0xC1, 0xCE, 0x1C, 0x38, 0xE1, 0xCE, 0x07, 0x70, 0x3F, 0x00, 0xF8, 0x03, 0x80, 0x1C, 0x00, 0xE0,
0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0x18, 0x03, 0x80, 0x38, 0x03, 0x00, 0x00, 0x00, 0x38,
0x37, 0x0E, 0x71, 0xCE, 0x31, 0xC6, 0x1D, 0xC3, 0xB8, 0x36, 0x07, 0xC0, 0x70, 0x0E, 0x01, 0xC0,
0x70, 0x7E, 0x0F, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x49, 0xE3, 0x1E, 0x78, 0xC3, 0x0C, 0x30, 0xC3,
0x38, 0xC1, 0xDE, 0x0F, 0xE0, 0x70, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x03, 0xF0, 0x0F, 0xC0, 0x73,
0x01, 0xCE, 0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF, 0x1F, 0xFE, 0x70, 0x3B, 0x80, 0x6E, 0x01,
0xC0, 0x00, 0x03, 0x00, 0x1C, 0x00, 0x30, 0x00, 0x00, 0x0F, 0xC3, 0xF8, 0x06, 0x01, 0xC7, 0xF7,
0xFD, 0xC7, 0x61, 0xD8, 0x77, 0xFC, 0xFF, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x02, 0x00, 0x1E, 0x00,
0x78, 0x00, 0xE0, 0x03, 0x00, 0x0C, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0xC0, 0x3F, 0x01, 0xCC, 0x07,
0x38, 0x18, 0xE0, 0xE1, 0xC3, 0xFF, 0x1F, 0xFC, 0x7F, 0xF9, 0xC0, 0xEE, 0x01, 0xB8, 0x07, 0x1E,
0x07, 0xC0, 0x70, 0x38, 0x04, 0x0F, 0xC3, 0xF8, 0x06, 0x01, 0xC7, 0xF7, 0xFD, 0xC7, 0x61, 0xD8,
0x77, 0xFC, 0xFF, 0x0E, 0x00, 0x00, 0x10, 0x00, 0xE0, 0x07, 0x80, 0xDC, 0x07, 0xC0, 0x3F, 0x00,
0xCC, 0x00, 0xC0, 0x07, 0x80, 0x1E, 0x00, 0xFC, 0x03, 0xF0, 0x1C, 0xC0, 0x73, 0x81, 0x8E, 0x0E,
0x1C, 0x3F, 0xF1, 0xFF, 0xC7, 0xFF, 0x9C, 0x0E, 0xE0, 0x1B, 0x80, 0x70, 0x00, 0x20, 0x07, 0x00,
0xE0, 0x5C, 0x0E, 0x81, 0xF0, 0x11, 0x00, 0x00, 0x3F, 0x03, 0xF8, 0x01, 0x80, 0x1C, 0x1F, 0xC7,
0xFC, 0x71, 0xC6, 0x1C, 0x61, 0xC7, 0xFC, 0x3F, 0xC0, 0xE0, 0x00, 0x80, 0x07, 0x00, 0x1E, 0x00,
0xF8, 0x07, 0xE0, 0x3F, 0x00, 0xCC, 0x00, 0xC0, 0x07, 0x80, 0x1E, 0x00, 0xFC, 0x03, 0xF0, 0x1C,
0xC0, 0x73, 0x81, 0x8E, 0x0E, 0x1C, 0x3F, 0xF1, 0xFF, 0xC7, 0xFF, 0x9C, 0x0E, 0xE0, 0x1B, 0x80,
0x70, 0x02, 0x01, 0xC0, 0x38, 0x17, 0x0E, 0x87, 0xC1, 0x10, 0x00, 0x3F, 0x0F, 0xE0, 0x18, 0x07,
0x1F, 0xDF, 0xF7, 0x1D, 0x87, 0x61, 0xDF, 0xF3, 0xFC, 0x38, 0x00, 0x00, 0x03, 0xC0, 0x0F, 0x00,
0x1C, 0x03, 0x60, 0x1E, 0x00, 0xFC, 0x03, 0x30, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x03, 0xF0, 0x0F,
0xC0, 0x73, 0x01, 0xCE, 0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF, 0x1F, 0xFE, 0x70, 0x3B, 0x80,
0x6E, 0x01, 0xC0, 0x03, 0xC0, 0x7C, 0x03, 0x82, 0xE0, 0xE8, 0x3E, 0x04, 0x40, 0x00, 0x3F, 0x07,
0xF0, 0x06, 0x00, 0xE1, 0xFC, 0xFF, 0x9C, 0x73, 0x0E, 0x61, 0xCF, 0xF8, 0xFF, 0x07, 0x00, 0x04,
0x40, 0x3F, 0x81, 0xFC, 0x00, 0x00, 0x03, 0x00, 0x1E, 0x00, 0xFC, 0x03, 0x30, 0x03, 0x00, 0x1E,
0x00, 0x78, 0x03, 0xF0, 0x0F, 0xC0, 0x73, 0x01, 0xCE, 0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF,
0x1F, 0xFE, 0x70, 0x3B, 0x80, 0x6E, 0x01, 0xC0, 0x1D, 0x8F, 0xE3, 0x30, 0x10, 0x0E, 0x07, 0xC1,
0x10, 0x00, 0x3F, 0x0F, 0xE0, 0x18, 0x07, 0x1F, 0xDF, 0xF7, 0x1D, 0x87, 0x61, 0xDF, 0xF3, 0xFC,
0x38, 0x00, 0x00, 0x0C, 0x00, 0x78, 0x03, 0xF0, 0x0C, 0xC0, 0x0C, 0x00, 0x78, 0x01, 0xE0, 0x0F,
0xC0, 0x3F, 0x01, 0xCC, 0x07, 0x38, 0x18, 0xE0, 0xE1, 0xC3, 0xFF, 0x1F, 0xFC, 0x7F, 0xF9, 0xC0,
0xEE, 0x01, 0xB8, 0x07, 0x00, 0x00, 0x0C, 0x00, 0x70, 0x00, 0xC0, 0x00, 0x01, 0x00, 0xE0, 0x7C,
0x11, 0x00, 0x03, 0xF0, 0xFE, 0x01, 0x80, 0x71, 0xFD, 0xFF, 0x71, 0xD8, 0x76, 0x1D, 0xFF, 0x3F,
0xC3, 0x80, 0xE0, 0x38, 0x0E, 0x00, 0x00, 0x80, 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x0D, 0xC0, 0x3F,
0x00, 0x78, 0x00, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x03, 0xF0, 0x0F, 0xC0, 0x73, 0x01, 0xCE,
0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF, 0x1F, 0xFE, 0x70, 0x3B, 0x80, 0x6E, 0x01, 0xC0, 0x01,
0x00, 0xE0, 0x70, 0x38, 0x35, 0x07, 0xC1, 0xF0, 0x10, 0x00, 0x0F, 0xC3, 0xF8, 0x06, 0x01, 0xC7,
0xF7, 0xFD, 0xC7, 0x61, 0xD8, 0x77, 0xFC, 0xFF, 0x0E, 0x00, 0x04, 0x00, 0x38, 0x00, 0xF0, 0x00,
0xC0, 0x0C, 0xC0, 0x3F, 0x00, 0x78, 0x00, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x03, 0xF0, 0x0F,
0xC0, 0x73, 0x01, 0xCE, 0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF, 0x1F, 0xFE, 0x70, 0x3B, 0x80,
0x6E, 0x01, 0xC0, 0x10, 0x0E, 0x01, 0xC0, 0x38, 0x35, 0x07, 0xC1, 0xF0, 0x10, 0x00, 0x0F, 0xC3,
0xF8, 0x06, 0x01, 0xC7, 0xF7, 0xFD, 0xC7, 0x61, 0xD8, 0x77, 0xFC, 0xFF, 0x0E, 0x00, 0x07, 0x00,
0x1E, 0x00, 0x38, 0x00, 0xE0, 0x0F, 0xC0, 0x3F, 0x00, 0x78, 0x00, 0x00, 0x03, 0x00, 0x1E, 0x00,
0x78, 0x03, 0xF0, 0x0F, 0xC0, 0x73, 0x01, 0xCE, 0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF, 0x1F,
0xFE, 0x70, 0x3B, 0x80, 0x6E, 0x01, 0xC0, 0x0C, 0x07, 0xC0, 0x70, 0x38, 0x3D, 0x07, 0xC1, 0xF0,
0x10, 0x00, 0x0F, 0xC3, 0xF8, 0x06, 0x01, 0xC7, 0xF7, 0xFD, 0xC7, 0x61, 0xD8, 0x77, 0xFC, 0xFF,
0x0E, 0x00, 0x0F, 0x60, 0x7F, 0x00, 0x98, 0x03, 0x30, 0x0F, 0xC0, 0x1E, 0x00, 0x00, 0x00, 0xC0,
0x07, 0x80, 0x1E, 0x00, 0xFC, 0x03, 0xF0, 0x1C, 0xC0, 0x73, 0x81, 0x8E, 0x0E, 0x1C, 0x3F, 0xF1,
0xFF, 0xC7, 0xFF, 0x9C, 0x0E, 0xE0, 0x1B, 0x80, 0x70, 0x1D, 0x8F, 0xE3, 0x70, 0xC4, 0x1F, 0x07,
0xC0, 0x40, 0x00, 0x3F, 0x0F, 0xE0, 0x18, 0x07, 0x1F, 0xDF, 0xF7, 0x1D, 0x87, 0x61, 0xDF, 0xF3,
0xFC, 0x38, 0x0C, 0xC0, 0x3F, 0x00, 0x78, 0x00, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x03, 0xF0,
0x0F, 0xC0, 0x73, 0x01, 0xCE, 0x06, 0x38, 0x38, 0x70, 0xFF, 0xC7, 0xFF, 0x1F, 0xFE, 0x70, 0x3B,
0x80, 0x6E, 0x01, 0xC0, 0x00, 0x03, 0x00, 0x1C, 0x00, 0x30, 0x00, 0x31, 0x0F, 0xC1, 0xF0, 0x10,
0x00, 0x0F, 0xC3, 0xF8, 0x06, 0x01, 0xC7, 0xF7, 0xFD, 0xC7, 0x61, 0xD8, 0x77, 0xFC, 0xFF, 0x0E,
0x03, 0x80, 0xE0, 0x38, 0x7F, 0xDF, 0xFB, 0xFF, 0x70, 0x0E, 0x01, 0xC0, 0x3F, 0xE7, 0xFC, 0xFF,
0x9C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xFF, 0xBF, 0xF8, 0x00, 0x0C, 0x03, 0xC0, 0x30, 0x00, 0x00,
0x0F, 0xC7, 0xFB, 0x8E, 0xE1, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x38, 0x07, 0xF8, 0xFE, 0x0E, 0x03,
0x01, 0xC0, 0x30, 0x0C, 0x03, 0xE0, 0x1C, 0x07, 0x00, 0xC0, 0xFF, 0xBF, 0xF7, 0xFE, 0xE0, 0x1C,
0x03, 0x80, 0x7F, 0xCF, 0xF9, 0xFF, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0xFF, 0x7F, 0xF0, 0x1C,
0x07, 0x80, 0xE0, 0x30, 0x08, 0x0F, 0xC7, 0xFB, 0x8E, 0xE1, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x38,
0x07, 0xF8, 0xFE, 0x0E, 0x00, 0x1D, 0x87, 0xF0, 0xCC, 0x00, 0x07, 0xFD, 0xFF, 0xBF, 0xF7, 0x00,
0xE0, 0x1C, 0x03, 0xFE, 0x7F, 0xCF, 0xF9, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1F, 0xFB, 0xFF, 0x80,
0x11, 0x0F, 0xC7, 0xF0, 0x00, 0x00, 0x0F, 0xC7, 0xFB, 0x8E, 0xE1, 0xFF, 0xFF, 0xFF, 0x80, 0xE0,
0x38, 0x07, 0xF8, 0xFE, 0x0E, 0x00, 0x00, 0x40, 0x06, 0x00, 0xE0, 0xDC, 0x1F, 0x83, 0xF0, 0x11,
0x07, 0xFC, 0xFF, 0xCF, 0xFC, 0xE0, 0x0E, 0x00, 0xE0, 0x0F, 0xF8, 0xFF, 0x8F, 0xF8, 0xE0, 0x0E,
0x00, 0xE0, 0x0E, 0x00, 0xFF, 0xCF, 0xFE, 0x00, 0x40, 0x1C, 0x07, 0x86, 0xE1, 0xF8, 0x7E, 0x0C,
0xC0, 0x00, 0x3F, 0x0F, 0xF3, 0x8E, 0x70, 0xEF, 0xFD, 0xFF, 0xB8, 0x07, 0x00, 0xE0, 0x0F, 0xF0,
0xFE, 0x07, 0x00, 0x02, 0x00, 0xE0, 0x1E, 0x07, 0xC1, 0xF8, 0x7E, 0x04, 0x43, 0xFE, 0xFF, 0xDF,
0xFB, 0x80, 0x70, 0x0E, 0x01, 0xFF, 0x3F, 0xE7, 0xFC, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0xFD,
0xFF, 0xC0, 0x02, 0x01, 0x80, 0x70, 0x3E, 0x1F, 0x0F, 0xC3, 0x30, 0x00, 0x3F, 0x1F, 0xEE, 0x3B,
0x87, 0xFF, 0xFF, 0xFE, 0x03, 0x80, 0xE0, 0x1F, 0xE3, 0xF8, 0x38, 0x03, 0xC0, 0x78, 0x07, 0x06,
0xE1, 0xE8, 0x7E, 0x04, 0x43, 0xFE, 0xFF, 0xDF, 0xFB, 0x80, 0x70, 0x0E, 0x01, 0xFF, 0x3F, 0xE7,
0xFC, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0xFD, 0xFF, 0xC0, 0x03, 0xC0, 0x78, 0x07, 0x06, 0xE1,
0xE8, 0x7E, 0x0C, 0xC0, 0x00, 0x3F, 0x0F, 0xF3, 0x8E, 0x70, 0xEF, 0xFD, 0xFF, 0xB8, 0x07, 0x00,
0xE0, 0x0F, 0xF0, 0xFE, 0x07, 0x00, 0x19, 0x07, 0xF0, 0xFC, 0x00, 0x00, 0xC0, 0x3C, 0x0F, 0xC0,
0x88, 0x7F, 0xDF, 0xFB, 0xFF, 0x70, 0x0E, 0x01, 0xC0, 0x3F, 0xE7, 0xFC, 0xFF, 0x9C, 0x03, 0x80,
0x70, 0x0E, 0x01, 0xFF, 0xBF, 0xF8, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x0C, 0x07, 0x83, 0xF0, 0xCC,
0x00, 0x0F, 0xC7, 0xFB, 0x8E, 0xE1, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x38, 0x07, 0xF8, 0xFE, 0x0E,
0x00, 0x00, 0x01, 0x80, 0x78, 0x1F, 0x81, 0x10, 0xFF, 0xBF, 0xF7, 0xFE, 0xE0, 0x1C, 0x03, 0x80,
0x7F, 0xCF, 0xF9, 0xFF, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0xFF, 0x7F, 0xF0, 0x00, 0x18, 0x07,
0x80, 0x60, 0x00, 0x03, 0x01, 0xE0, 0xFC, 0x33, 0x00, 0x03, 0xF1, 0xFE, 0xE3, 0xB8, 0x7F, 0xFF,
0xFF, 0xE0, 0x38, 0x0E, 0x01, 0xFE, 0x3F, 0x83, 0x80, 0xC0, 0x70, 0x0C, 0x00, 0x23, 0xDE, 0x73,
0x19, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE0, 0x73, 0xCE, 0x62, 0x39, 0xCE, 0x73,
0x9C, 0xE7, 0x39, 0xCE, 0x6E, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xE0, 0x6E, 0xE0, 0x5F, 0xA1,
0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xF0, 0x0F, 0xC0, 0xFF, 0xC3, 0xCF, 0x9C, 0x0E, 0xE0, 0x1F, 0x80,
0x7E, 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xDC, 0x0F, 0x78, 0x78, 0xFF, 0xC1, 0xFE,
0x00, 0xE0, 0x03, 0x00, 0x0E, 0x00, 0x30, 0x00, 0x00, 0x07, 0xE1, 0xFE, 0x78, 0xEE, 0x1D, 0xC1,
0xB0, 0x3F, 0x07, 0xE1, 0xDC, 0x39, 0xFE, 0x1F, 0x80, 0xC0, 0x18, 0x03, 0x80, 0x60, 0x02, 0x00,
0x1E, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, 0x3F, 0x03, 0xFF, 0x0F, 0x3E, 0x70, 0x3B, 0x80, 0x7E,
0x01, 0xF8, 0x07, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x07, 0x70, 0x3D, 0xE1, 0xE3, 0xFF, 0x07,
0xF8, 0x03, 0x80, 0x1E, 0x03, 0xC0, 0x38, 0x07, 0x00, 0xC0, 0x7E, 0x1F, 0xE7, 0x8E, 0xE1, 0xDC,
0x1B, 0x03, 0xF0, 0x7E, 0x1D, 0xC3, 0x9F, 0xE1, 0xF8, 0x0C, 0x00, 0x00, 0x10, 0x00, 0xE0, 0x07,
0x00, 0xD8, 0x07, 0xC0, 0x3F, 0x00, 0xCC, 0x03, 0xF0, 0x3F, 0xF0, 0xF3, 0xE7, 0x03, 0xB8, 0x07,
0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0x80, 0x77, 0x03, 0xDE, 0x1E, 0x3F, 0xF0,
0x7F, 0x80, 0x38, 0x00, 0x00, 0x40, 0x1C, 0x03, 0x86, 0xE1, 0xF8, 0x7E, 0x0C, 0xC0, 0x00, 0x3F,
0x0F, 0xF3, 0xC7, 0x70, 0xEE, 0x0D, 0x81, 0xF8, 0x3F, 0x0E, 0xE1, 0xCF, 0xF0, 0xFC, 0x06, 0x00,
0x01, 0x80, 0x07, 0x00, 0x0E, 0x00, 0xD8, 0x07, 0x80, 0x3F, 0x00, 0xCC, 0x03, 0xF0, 0x3F, 0xF0,
0xF3, 0xE7, 0x03, 0xB8, 0x07, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0x80, 0x77,
0x03, 0xDE, 0x1E, 0x3F, 0xF0, 0x7F, 0x80, 0x38, 0x00, 0x02, 0x00, 0xE0, 0x0E, 0x06, 0xC1, 0xE0,
0x7E, 0x0C, 0xC0, 0x00, 0x3F, 0x0F, 0xF3, 0xC7, 0x70, 0xEE, 0x0D, 0x81, 0xF8, 0x3F, 0x0E, 0xE1,
0xCF, 0xF0, 0xFC, 0x06, 0x00, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x00, 0xD8, 0x07, 0x80, 0x3F, 0x00,
0xCC, 0x03, 0xF0, 0x3F, 0xF0, 0xF3, 0xE7, 0x03, 0xB8, 0x07, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8,
0x07, 0xE0, 0x1F, 0x80, 0x77, 0x03, 0xDE, 0x1E, 0x3F, 0xF0, 0x7F, 0x80, 0x38, 0x00, 0x01, 0x80,
0x78, 0x03, 0x86, 0xE1, 0xF8, 0x7E, 0x0C, 0xC0, 0x00, 0x3F, 0x0F, 0xF3, 0xC7, 0x70, 0xEE, 0x0D,
0x81, 0xF8, 0x3F, 0x0E, 0xE1, 0xCF, 0xF0, 0xFC, 0x06, 0x00, 0x0F, 0xE0, 0x3F, 0x00, 0x98, 0x00,
0xC0, 0x07, 0x80, 0x3F, 0x00, 0xCC, 0x03, 0xF0, 0x3F, 0xF0, 0xF3, 0xE7, 0x03, 0xB8, 0x07, 0xE0,
0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0x80, 0x77, 0x03, 0xDE, 0x1E, 0x3F, 0xF0, 0x7F,
0x80, 0x38, 0x00, 0x3D, 0x87, 0xE0, 0x98, 0x06, 0x01, 0xE0, 0x7E, 0x0C, 0xC0, 0x00, 0x3F, 0x0F,
0xF3, 0xC7, 0x70, 0xEE, 0x0D, 0x81, 0xF8, 0x3F, 0x0E, 0xE1, 0xCF, 0xF0, 0xFC, 0x06, 0x00, 0x01,
0x00, 0x0E, 0x00, 0x7C, 0x03, 0x30, 0x00, 0x00, 0x3F, 0x03, 0xFF, 0x0F, 0x3E, 0x70, 0x3B, 0x80,
0x7E, 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x07, 0x70, 0x3D, 0xE1, 0xE3, 0xFF,
0x07, 0xF8, 0x03, 0x80, 0x0C, 0x00, 0x38, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x78, 0x1F, 0x83, 0x30,
0x00, 0x0F, 0xC3, 0xFC, 0xF1, 0xDC, 0x3B, 0x83, 0x60, 0x7E, 0x0F, 0xC3, 0xB8, 0x73, 0xFC, 0x3F,
0x01, 0x80, 0x30, 0x07, 0x00, 0xC0, 0x00, 0x80, 0x03, 0x80, 0x0E, 0x00, 0x18, 0x60, 0x20, 0xC1,
0xFB, 0x8F, 0xFF, 0x1E, 0x7C, 0x70, 0x39, 0xC0, 0x3B, 0x80, 0x77, 0x00, 0xEE, 0x01, 0xDC, 0x03,
0xB8, 0x07, 0x70, 0x0E, 0x70, 0x3C, 0xF0, 0xF0, 0xFF, 0xC0, 0xFF, 0x00, 0x38, 0x00, 0x00, 0x00,
0x70, 0x07, 0x00, 0xE0, 0x0C, 0x60, 0x06, 0x3F, 0xE7, 0xFE, 0xF1, 0xCE, 0x1C, 0xE0, 0xCC, 0x0E,
0xE0, 0xEE, 0x1C, 0xE1, 0xC7, 0xF8, 0x3F, 0x00, 0xC0, 0x04, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C,
0x60, 0x10, 0xC1, 0xFB, 0x8F, 0xFF, 0x1E, 0x7C, 0x70, 0x39, 0xC0, 0x3B, 0x80, 0x77, 0x00, 0xEE,
0x01, 0xDC, 0x03, 0xB8, 0x07, 0x70, 0x0E, 0x70, 0x3C, 0xF0, 0xF0, 0xFF, 0xC0, 0xFF, 0x00, 0x38,
0x00, 0x00, 0x01, 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x60, 0x06, 0x3F, 0xE7, 0xFE, 0xF1, 0xCE, 0x1C,
0xE0, 0xCC, 0x0E, 0xE0, 0xEE, 0x1C, 0xE1, 0xC7, 0xF8, 0x3F, 0x00, 0xC0, 0x02, 0x00, 0x0F, 0x00,
0x06, 0x00, 0x1C, 0x60, 0x30, 0xC1, 0xFB, 0x8F, 0xFF, 0x1E, 0x7C, 0x70, 0x39, 0xC0, 0x3B, 0x80,
0x77, 0x00, 0xEE, 0x01, 0xDC, 0x03, 0xB8, 0x07, 0x70, 0x0E, 0x70, 0x3C, 0xF0, 0xF0, 0xFF, 0xC0,
0xFF, 0x00, 0x38, 0x00, 0x1E, 0x01, 0xE0, 0x0E, 0x00, 0xE6, 0x0C, 0x63, 0xFE, 0x7F, 0xEF, 0x1C,
0xE1, 0xCE, 0x0C, 0xC0, 0xEE, 0x0E, 0xE1, 0xCE, 0x1C, 0x7F, 0x83, 0xF0, 0x0C, 0x00, 0x06, 0x40,
0x1F, 0xC0, 0x3F, 0x30, 0x00, 0x60, 0xFD, 0xC7, 0xFF, 0x8F, 0x3E, 0x38, 0x1C, 0xE0, 0x1D, 0xC0,
0x3B, 0x80, 0x77, 0x00, 0xEE, 0x01, 0xDC, 0x03, 0xB8, 0x07, 0x38, 0x1E, 0x78, 0x78, 0x7F, 0xE0,
0x7F, 0x80, 0x1C, 0x00, 0x00, 0x03, 0xF8, 0x3F, 0x00, 0x06, 0x00, 0x63, 0xFE, 0x7F, 0xEF, 0x1C,
0xE1, 0xCE, 0x0C, 0xC0, 0xEE, 0x0E, 0xE1, 0xCE, 0x1C, 0x7F, 0x83, 0xF0, 0x0C, 0x00, 0x00, 0x0C,
0x00, 0x18, 0x3F, 0x71, 0xFF, 0xE3, 0xCF, 0x8E, 0x07, 0x38, 0x07, 0x70, 0x0E, 0xE0, 0x1D, 0xC0,
0x3B, 0x80, 0x77, 0x00, 0xEE, 0x01, 0xCE, 0x07, 0x9E, 0x1E, 0x1F, 0xF8, 0x1F, 0xE0, 0x07, 0x00,
0x0C, 0x00, 0x1C, 0x00, 0x30, 0x00, 0x00, 0x00, 0x06, 0x00, 0x63, 0xFE, 0x7F, 0xEF, 0x1C, 0xE1,
0xCE, 0x0C, 0xC0, 0xEE, 0x0E, 0xE1, 0xCE, 0x1C, 0x7F, 0x83, 0xF0, 0x0C, 0x00, 0xC0, 0x0E, 0x00,
0xC0, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07,
0xE0, 0x76, 0x07, 0x70, 0xE7, 0xFE, 0x3F, 0xC0, 0x70, 0x06, 0x00, 0x70, 0x06, 0x00, 0xE1, 0xF8,
0x7E, 0x1F, 0x87, 0xE1, 0xF8, 0x7E, 0x1F, 0x87, 0xE1, 0xDF, 0xF3, 0xFC, 0x38, 0x0C, 0x07, 0x80,
0xC0, 0x04, 0x00, 0xF0, 0x03, 0x00, 0x70, 0x06, 0x0E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07,
0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0x60, 0x77, 0x0E, 0x7F, 0xE3, 0xFC, 0x07,
0x00, 0x1C, 0x07, 0x80, 0xE0, 0x30, 0x0C, 0x38, 0x7E, 0x1F, 0x87, 0xE1, 0xF8, 0x7E, 0x1F, 0x87,
0xE1, 0xF8, 0x77, 0xFC, 0xFF, 0x0E, 0x00, 0x01, 0x00, 0x07, 0x00, 0x1C, 0x00, 0x30, 0x70, 0x40,
0xFC, 0x0F, 0xB8, 0x1F, 0x70, 0x38, 0xE0, 0x71, 0xC0, 0xE3, 0x81, 0xC7, 0x03, 0x8E, 0x07, 0x1C,
0x0E, 0x38, 0x1C, 0x70, 0x38, 0x60, 0x70, 0xE1, 0xC1, 0xFF, 0x81, 0xFE, 0x00, 0x70, 0x00, 0x00,
0x00, 0x60, 0x0E, 0x00, 0xC0, 0x18, 0x30, 0x07, 0xE1, 0xFE, 0x1E, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE,
0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xC7, 0xFC, 0x3F, 0xC0, 0xE0, 0x00, 0x00, 0x18, 0x00, 0x38, 0x00,
0x38, 0x70, 0x20, 0xFC, 0x0F, 0xB8, 0x1F, 0x70, 0x38, 0xE0, 0x71, 0xC0, 0xE3, 0x81, 0xC7, 0x03,
0x8E, 0x07, 0x1C, 0x0E, 0x38, 0x1C, 0x70, 0x38, 0x60, 0x70, 0xE1, 0xC1, 0xFF, 0x81, 0xFE, 0x00,
0x70, 0x00, 0x00, 0x03, 0x80, 0x3C, 0x01, 0xC0, 0x0C, 0x30, 0x07, 0xE1, 0xFE, 0x1E, 0xE1, 0xCE,
0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xC7, 0xFC, 0x3F, 0xC0, 0xE0, 0x04, 0x00, 0x1E,
0x00, 0x0C, 0x00, 0x38, 0x70, 0x60, 0xFC, 0x0F, 0xB8, 0x1F, 0x70, 0x38, 0xE0, 0x71, 0xC0, 0xE3,
0x81, 0xC7, 0x03, 0x8E, 0x07, 0x1C, 0x0E, 0x38, 0x1C, 0x70, 0x38, 0x60, 0x70, 0xE1, 0xC1, 0xFF,
0x81, 0xFE, 0x00, 0x70, 0x00, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0xC3, 0x0C, 0x7E, 0x1F, 0xE1, 0xEE,
0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0x7F, 0xC3, 0xFC, 0x0E, 0x00, 0x0C,
0xC0, 0x3F, 0x80, 0x7E, 0x38, 0x00, 0x7E, 0x07, 0xDC, 0x0F, 0xB8, 0x1C, 0x70, 0x38, 0xE0, 0x71,
0xC0, 0xE3, 0x81, 0xC7, 0x03, 0x8E, 0x07, 0x1C, 0x0E, 0x38, 0x1C, 0x30, 0x38, 0x70, 0xE0, 0xFF,
0xC0, 0xFF, 0x00, 0x38, 0x00, 0x01, 0x03, 0xF8, 0x7F, 0x00, 0x03, 0x00, 0x7E, 0x1F, 0xE1, 0xEE,
0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0x7F, 0xC3, 0xFC, 0x0E, 0x00, 0x00,
0x0E, 0x00, 0x1F, 0x81, 0xF7, 0x03, 0xEE, 0x07, 0x1C, 0x0E, 0x38, 0x1C, 0x70, 0x38, 0xE0, 0x71,
0xC0, 0xE3, 0x81, 0xC7, 0x03, 0x8E, 0x07, 0x0C, 0x0E, 0x1C, 0x38, 0x3F, 0xF0, 0x3F, 0xC0, 0x0E,
0x00, 0x18, 0x00, 0x38, 0x00, 0x60, 0x00, 0x00, 0x00, 0x03, 0x00, 0x7E, 0x1F, 0xE1, 0xEE, 0x1C,
0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0x7F, 0xC3, 0xFC, 0x0E, 0x00, 0xC0, 0x1E,
0x00, 0xC0, 0x0C, 0x00, 0x70, 0x01, 0xC0, 0x06, 0x00, 0x00, 0x70, 0x1D, 0xC1, 0xCE, 0x1C, 0x38,
0xE1, 0xCE, 0x07, 0x70, 0x3F, 0x00, 0xF8, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01,
0xC0, 0x0E, 0x00, 0x18, 0x03, 0x80, 0x38, 0x03, 0x00, 0x00, 0x00, 0x38, 0x37, 0x0E, 0x71, 0xCE,
0x31, 0xC6, 0x1D, 0xC3, 0xB8, 0x36, 0x07, 0xC0, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x7E, 0x0F, 0x80,
0xE0, 0x37, 0x03, 0x9C, 0x1C, 0xE1, 0xC3, 0x8E, 0x0E, 0xE0, 0x7E, 0x01, 0xF0, 0x0F, 0x00, 0x38,
0x01, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0x00, 0x06, 0x00, 0x38, 0x01, 0xC0, 0xE0,
0xF8, 0x76, 0x1D, 0xC6, 0x71, 0x8C, 0xE3, 0xB8, 0x6C, 0x1F, 0x07, 0x80, 0xE0, 0x38, 0x1C, 0xFE,
0x7F, 0x1C, 0x06, 0x00, 0x78, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x70, 0x1B, 0x81, 0xCE, 0x0E, 0x70,
0xE1, 0xC7, 0x07, 0x70, 0x3F, 0x00, 0xF8, 0x07, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01,
0xC0, 0x0E, 0x00, 0x1E, 0x07, 0x80, 0xE0, 0x38, 0x0C, 0x38, 0x3E, 0x1D, 0x87, 0x71, 0x9C, 0x63,
0x38, 0xEE, 0x1B, 0x07, 0xC1, 0xE0, 0x38, 0x0E, 0x07, 0x0F, 0x83, 0xC0, 0x1E, 0xC0, 0xFE, 0x04,
0xE0, 0x00, 0x0E, 0x03, 0x70, 0x39, 0xC1, 0xCE, 0x1C, 0x38, 0xE0, 0xEE, 0x07, 0xE0, 0x1F, 0x00,
0xF0, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x00, 0x0F, 0xE3, 0xF0, 0x00,
0x00, 0x38, 0x3E, 0x1D, 0x87, 0x71, 0x9C, 0x63, 0x38, 0xEE, 0x1B, 0x07, 0xC1, 0xE0, 0x38, 0x0E,
0x07, 0x0F, 0x83, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x49, 0xE3, 0x1E, 0x78, 0xC3, 0x0C, 0x30, 0xC3,
0x0C, 0x30, 0xC3, 0x0C, 0x00, 0x47, 0xBF, 0xFB, 0x4C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30,
0xC0, 0x00, 0x00, 0x87, 0xBF, 0x7C, 0xB0, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x00,
0x7F, 0xF7, 0xC0, 0x7F, 0xF7, 0xFF, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFD, 0xFF,
@@ -1691,71 +1857,159 @@ static const EpdGlyph ubuntu_10_regularGlyphs[] = {
{ 10, 12, 174, 0, 12, 15, 15055 }, // U+05E8
{ 13, 12, 243, 1, 12, 20, 15070 }, // U+05E9
{ 13, 12, 228, 0, 12, 20, 15090 }, // U+05EA
{ 13, 20, 199, 0, 20, 33, 15110 }, // U+1EF2
{ 11, 21, 166, 0, 17, 29, 15143 }, // U+1EF3
{ 2, 16, 0, -1, 15, 4, 15172 }, // U+200C
{ 6, 16, 0, -3, 15, 12, 15176 }, // U+200D
{ 6, 18, 0, -1, 16, 14, 15188 }, // U+200E
{ 6, 18, 0, -5, 16, 14, 15202 }, // U+200F
{ 6, 3, 107, 0, 8, 3, 15216 }, // U+2010
{ 12, 2, 165, -1, 7, 3, 15219 }, // U+2013
{ 22, 2, 332, -1, 7, 6, 15222 }, // U+2014
{ 22, 2, 332, -1, 7, 6, 15228 }, // U+2015
{ 4, 5, 78, 1, 16, 3, 15234 }, // U+2018
{ 4, 5, 78, 0, 16, 3, 15237 }, // U+2019
{ 4, 5, 78, 0, 2, 3, 15240 }, // U+201A
{ 8, 5, 139, 1, 16, 5, 15243 }, // U+201C
{ 8, 5, 139, 0, 16, 5, 15248 }, // U+201D
{ 8, 5, 139, 0, 2, 5, 15253 }, // U+201E
{ 10, 18, 159, 0, 15, 23, 15258 }, // U+2020
{ 10, 18, 159, 0, 15, 23, 15281 }, // U+2021
{ 6, 5, 120, 1, 10, 4, 15304 }, // U+2022
{ 17, 3, 332, 2, 3, 7, 15308 }, // U+2026
{ 24, 15, 409, 1, 15, 45, 15315 }, // U+2030
{ 6, 9, 97, 0, 10, 7, 15360 }, // U+2039
{ 6, 9, 97, 0, 10, 7, 15367 }, // U+203A
{ 11, 15, 49, -4, 15, 21, 15374 }, // U+2044
{ 7, 8, 120, 0, 15, 7, 15395 }, // U+2070
{ 8, 8, 120, 0, 15, 8, 15402 }, // U+2074
{ 7, 8, 120, 0, 15, 7, 15410 }, // U+2075
{ 7, 8, 120, 0, 15, 7, 15417 }, // U+2076
{ 7, 8, 120, 0, 15, 7, 15424 }, // U+2077
{ 7, 8, 120, 0, 15, 7, 15431 }, // U+2078
{ 7, 8, 120, 0, 15, 7, 15438 }, // U+2079
{ 7, 8, 120, 0, 8, 7, 15445 }, // U+2080
{ 4, 8, 120, 1, 8, 4, 15452 }, // U+2081
{ 7, 8, 120, 0, 8, 7, 15456 }, // U+2082
{ 7, 8, 120, 0, 8, 7, 15463 }, // U+2083
{ 8, 8, 120, 0, 8, 8, 15470 }, // U+2084
{ 7, 8, 120, 0, 8, 7, 15478 }, // U+2085
{ 7, 8, 120, 0, 8, 7, 15485 }, // U+2086
{ 7, 8, 120, 0, 8, 7, 15492 }, // U+2087
{ 7, 8, 120, 0, 8, 7, 15499 }, // U+2088
{ 7, 8, 120, 0, 8, 7, 15506 }, // U+2089
{ 14, 13, 264, 1, 13, 23, 15513 }, // U+20AA
{ 12, 14, 188, 0, 14, 21, 15536 }, // U+20AC
{ 12, 15, 188, 0, 15, 23, 15557 }, // U+20AE
{ 12, 15, 188, 0, 15, 23, 15580 }, // U+20B4
{ 11, 15, 188, 1, 15, 21, 15603 }, // U+20B9
{ 12, 16, 195, 0, 16, 24, 15624 }, // U+2202
{ 14, 15, 217, 0, 15, 27, 15648 }, // U+2206
{ 12, 17, 232, 1, 15, 26, 15675 }, // U+220F
{ 11, 17, 172, 0, 15, 24, 15701 }, // U+2211
{ 10, 2, 188, 1, 7, 3, 15725 }, // U+2212
{ 11, 15, 49, -4, 15, 21, 15728 }, // U+2215
{ 3, 3, 82, 1, 8, 2, 15749 }, // U+2219
{ 13, 17, 188, 0, 16, 28, 15751 }, // U+221A
{ 12, 6, 196, 0, 9, 9, 15779 }, // U+221E
{ 8, 20, 123, 0, 16, 20, 15788 }, // U+222B
{ 11, 8, 188, 0, 10, 11, 15808 }, // U+2248
{ 10, 13, 188, 1, 13, 17, 15819 }, // U+2260
{ 10, 12, 188, 1, 12, 15, 15836 }, // U+2264
{ 10, 12, 188, 1, 12, 15, 15851 }, // U+2265
{ 16, 16, 259, 1, 16, 32, 15866 }, // U+FB00
{ 12, 16, 214, 1, 16, 24, 15898 }, // U+FB01
{ 13, 16, 221, 1, 16, 26, 15922 }, // U+FB02
{ 20, 16, 344, 1, 16, 40, 15948 }, // U+FB03
{ 21, 16, 351, 1, 16, 42, 15988 }, // U+FB04
{ 14, 19, 221, 0, 15, 34, 15110 }, // U+1EA0
{ 10, 16, 174, 0, 12, 20, 15144 }, // U+1EA1
{ 14, 20, 221, 0, 20, 35, 15164 }, // U+1EA2
{ 10, 17, 174, 0, 16, 22, 15199 }, // U+1EA3
{ 14, 22, 221, 0, 22, 39, 15221 }, // U+1EA4
{ 12, 20, 174, 0, 19, 30, 15260 }, // U+1EA5
{ 14, 22, 221, 0, 22, 39, 15290 }, // U+1EA6
{ 10, 20, 174, 0, 19, 25, 15329 }, // U+1EA7
{ 14, 23, 221, 0, 23, 41, 15354 }, // U+1EA8
{ 11, 20, 174, 0, 19, 28, 15395 }, // U+1EA9
{ 14, 23, 221, 0, 23, 41, 15423 }, // U+1EAA
{ 10, 20, 174, 0, 19, 25, 15464 }, // U+1EAB
{ 14, 24, 221, 0, 20, 42, 15489 }, // U+1EAC
{ 10, 21, 174, 0, 17, 27, 15531 }, // U+1EAD
{ 14, 23, 221, 0, 23, 41, 15558 }, // U+1EAE
{ 10, 21, 174, 0, 20, 27, 15599 }, // U+1EAF
{ 14, 23, 221, 0, 23, 41, 15626 }, // U+1EB0
{ 10, 21, 174, 0, 20, 27, 15667 }, // U+1EB1
{ 14, 23, 221, 0, 23, 41, 15694 }, // U+1EB2
{ 10, 21, 174, 0, 20, 27, 15735 }, // U+1EB3
{ 14, 22, 221, 0, 22, 39, 15762 }, // U+1EB4
{ 10, 20, 174, 0, 19, 25, 15801 }, // U+1EB5
{ 14, 23, 221, 0, 19, 41, 15826 }, // U+1EB6
{ 10, 20, 174, 0, 16, 25, 15867 }, // U+1EB7
{ 11, 19, 190, 1, 15, 27, 15892 }, // U+1EB8
{ 10, 16, 186, 1, 12, 20, 15919 }, // U+1EB9
{ 11, 20, 190, 1, 20, 28, 15939 }, // U+1EBA
{ 10, 17, 186, 1, 16, 22, 15967 }, // U+1EBB
{ 11, 19, 190, 1, 19, 27, 15989 }, // U+1EBC
{ 10, 17, 186, 1, 16, 22, 16016 }, // U+1EBD
{ 12, 22, 190, 1, 22, 33, 16038 }, // U+1EBE
{ 11, 20, 186, 1, 19, 28, 16071 }, // U+1EBF
{ 11, 22, 190, 1, 22, 31, 16099 }, // U+1EC0
{ 10, 20, 186, 1, 19, 25, 16130 }, // U+1EC1
{ 11, 22, 190, 1, 22, 31, 16155 }, // U+1EC2
{ 11, 20, 186, 1, 19, 28, 16186 }, // U+1EC3
{ 11, 23, 190, 1, 23, 32, 16214 }, // U+1EC4
{ 10, 21, 186, 1, 20, 27, 16246 }, // U+1EC5
{ 11, 24, 190, 1, 20, 33, 16273 }, // U+1EC6
{ 10, 21, 186, 1, 17, 27, 16306 }, // U+1EC7
{ 5, 20, 90, 0, 20, 13, 16333 }, // U+1EC8
{ 5, 16, 84, 0, 16, 10, 16346 }, // U+1EC9
{ 4, 19, 90, 1, 15, 10, 16356 }, // U+1ECA
{ 3, 20, 84, 1, 16, 8, 16366 }, // U+1ECB
{ 14, 19, 259, 1, 15, 34, 16374 }, // U+1ECC
{ 11, 16, 197, 1, 12, 22, 16408 }, // U+1ECD
{ 14, 21, 259, 1, 20, 37, 16430 }, // U+1ECE
{ 11, 17, 197, 1, 16, 24, 16467 }, // U+1ECF
{ 14, 23, 259, 1, 22, 41, 16491 }, // U+1ED0
{ 11, 20, 197, 1, 19, 28, 16532 }, // U+1ED1
{ 14, 23, 259, 1, 22, 41, 16560 }, // U+1ED2
{ 11, 20, 197, 1, 19, 28, 16601 }, // U+1ED3
{ 14, 23, 259, 1, 22, 41, 16629 }, // U+1ED4
{ 11, 20, 197, 1, 19, 28, 16670 }, // U+1ED5
{ 14, 23, 259, 1, 22, 41, 16698 }, // U+1ED6
{ 11, 20, 197, 1, 19, 28, 16739 }, // U+1ED7
{ 14, 24, 259, 1, 20, 42, 16767 }, // U+1ED8
{ 11, 21, 197, 1, 17, 29, 16809 }, // U+1ED9
{ 15, 21, 259, 1, 20, 40, 16838 }, // U+1EDA
{ 12, 18, 197, 1, 17, 27, 16878 }, // U+1EDB
{ 15, 21, 259, 1, 20, 40, 16905 }, // U+1EDC
{ 12, 18, 197, 1, 17, 27, 16945 }, // U+1EDD
{ 15, 21, 259, 1, 20, 40, 16972 }, // U+1EDE
{ 12, 17, 197, 1, 16, 26, 17012 }, // U+1EDF
{ 15, 20, 259, 1, 19, 38, 17038 }, // U+1EE0
{ 12, 17, 197, 1, 16, 26, 17076 }, // U+1EE1
{ 15, 21, 259, 1, 17, 40, 17102 }, // U+1EE2
{ 12, 18, 197, 1, 14, 27, 17142 }, // U+1EE3
{ 12, 19, 229, 1, 15, 29, 17169 }, // U+1EE4
{ 10, 15, 191, 1, 11, 19, 17198 }, // U+1EE5
{ 12, 21, 229, 1, 20, 32, 17217 }, // U+1EE6
{ 10, 17, 191, 1, 16, 22, 17249 }, // U+1EE7
{ 15, 21, 237, 1, 20, 40, 17271 }, // U+1EE8
{ 12, 18, 199, 1, 17, 27, 17311 }, // U+1EE9
{ 15, 21, 237, 1, 20, 40, 17338 }, // U+1EEA
{ 12, 18, 199, 1, 17, 27, 17378 }, // U+1EEB
{ 15, 21, 237, 1, 20, 40, 17405 }, // U+1EEC
{ 12, 17, 199, 1, 16, 26, 17445 }, // U+1EED
{ 15, 20, 237, 1, 19, 38, 17471 }, // U+1EEE
{ 12, 17, 199, 1, 16, 26, 17509 }, // U+1EEF
{ 15, 21, 237, 1, 17, 40, 17535 }, // U+1EF0
{ 12, 18, 199, 1, 14, 27, 17575 }, // U+1EF1
{ 13, 20, 199, 0, 20, 33, 17602 }, // U+1EF2
{ 11, 21, 166, 0, 17, 29, 17635 }, // U+1EF3
{ 13, 19, 199, 0, 15, 31, 17664 }, // U+1EF4
{ 10, 15, 166, 0, 11, 19, 17695 }, // U+1EF5
{ 13, 20, 199, 0, 20, 33, 17714 }, // U+1EF6
{ 10, 20, 166, 0, 16, 25, 17747 }, // U+1EF7
{ 13, 19, 199, 0, 19, 31, 17772 }, // U+1EF8
{ 10, 20, 166, 0, 16, 25, 17803 }, // U+1EF9
{ 2, 16, 0, -1, 15, 4, 17828 }, // U+200C
{ 6, 16, 0, -3, 15, 12, 17832 }, // U+200D
{ 6, 18, 0, -1, 16, 14, 17844 }, // U+200E
{ 6, 18, 0, -5, 16, 14, 17858 }, // U+200F
{ 6, 3, 107, 0, 8, 3, 17872 }, // U+2010
{ 12, 2, 165, -1, 7, 3, 17875 }, // U+2013
{ 22, 2, 332, -1, 7, 6, 17878 }, // U+2014
{ 22, 2, 332, -1, 7, 6, 17884 }, // U+2015
{ 4, 5, 78, 1, 16, 3, 17890 }, // U+2018
{ 4, 5, 78, 0, 16, 3, 17893 }, // U+2019
{ 4, 5, 78, 0, 2, 3, 17896 }, // U+201A
{ 8, 5, 139, 1, 16, 5, 17899 }, // U+201C
{ 8, 5, 139, 0, 16, 5, 17904 }, // U+201D
{ 8, 5, 139, 0, 2, 5, 17909 }, // U+201E
{ 10, 18, 159, 0, 15, 23, 17914 }, // U+2020
{ 10, 18, 159, 0, 15, 23, 17937 }, // U+2021
{ 6, 5, 120, 1, 10, 4, 17960 }, // U+2022
{ 17, 3, 332, 2, 3, 7, 17964 }, // U+2026
{ 24, 15, 409, 1, 15, 45, 17971 }, // U+2030
{ 6, 9, 97, 0, 10, 7, 18016 }, // U+2039
{ 6, 9, 97, 0, 10, 7, 18023 }, // U+203A
{ 11, 15, 49, -4, 15, 21, 18030 }, // U+2044
{ 7, 8, 120, 0, 15, 7, 18051 }, // U+2070
{ 8, 8, 120, 0, 15, 8, 18058 }, // U+2074
{ 7, 8, 120, 0, 15, 7, 18066 }, // U+2075
{ 7, 8, 120, 0, 15, 7, 18073 }, // U+2076
{ 7, 8, 120, 0, 15, 7, 18080 }, // U+2077
{ 7, 8, 120, 0, 15, 7, 18087 }, // U+2078
{ 7, 8, 120, 0, 15, 7, 18094 }, // U+2079
{ 7, 8, 120, 0, 8, 7, 18101 }, // U+2080
{ 4, 8, 120, 1, 8, 4, 18108 }, // U+2081
{ 7, 8, 120, 0, 8, 7, 18112 }, // U+2082
{ 7, 8, 120, 0, 8, 7, 18119 }, // U+2083
{ 8, 8, 120, 0, 8, 8, 18126 }, // U+2084
{ 7, 8, 120, 0, 8, 7, 18134 }, // U+2085
{ 7, 8, 120, 0, 8, 7, 18141 }, // U+2086
{ 7, 8, 120, 0, 8, 7, 18148 }, // U+2087
{ 7, 8, 120, 0, 8, 7, 18155 }, // U+2088
{ 7, 8, 120, 0, 8, 7, 18162 }, // U+2089
{ 14, 13, 264, 1, 13, 23, 18169 }, // U+20AA
{ 12, 14, 188, 0, 14, 21, 18192 }, // U+20AC
{ 12, 15, 188, 0, 15, 23, 18213 }, // U+20AE
{ 12, 15, 188, 0, 15, 23, 18236 }, // U+20B4
{ 11, 15, 188, 1, 15, 21, 18259 }, // U+20B9
{ 12, 16, 195, 0, 16, 24, 18280 }, // U+2202
{ 14, 15, 217, 0, 15, 27, 18304 }, // U+2206
{ 12, 17, 232, 1, 15, 26, 18331 }, // U+220F
{ 11, 17, 172, 0, 15, 24, 18357 }, // U+2211
{ 10, 2, 188, 1, 7, 3, 18381 }, // U+2212
{ 11, 15, 49, -4, 15, 21, 18384 }, // U+2215
{ 3, 3, 82, 1, 8, 2, 18405 }, // U+2219
{ 13, 17, 188, 0, 16, 28, 18407 }, // U+221A
{ 12, 6, 196, 0, 9, 9, 18435 }, // U+221E
{ 8, 20, 123, 0, 16, 20, 18444 }, // U+222B
{ 11, 8, 188, 0, 10, 11, 18464 }, // U+2248
{ 10, 13, 188, 1, 13, 17, 18475 }, // U+2260
{ 10, 12, 188, 1, 12, 15, 18492 }, // U+2264
{ 10, 12, 188, 1, 12, 15, 18507 }, // U+2265
{ 16, 16, 259, 1, 16, 32, 18522 }, // U+FB00
{ 12, 16, 214, 1, 16, 24, 18554 }, // U+FB01
{ 13, 16, 221, 1, 16, 26, 18578 }, // U+FB02
{ 20, 16, 344, 1, 16, 40, 18604 }, // U+FB03
{ 21, 16, 351, 1, 16, 42, 18644 }, // U+FB04
};
static const EpdUnicodeInterval ubuntu_10_regularIntervals[] = {
@@ -1780,36 +2034,36 @@ static const EpdUnicodeInterval ubuntu_10_regularIntervals[] = {
{ 0x472, 0x475, 0x216 },
{ 0x48A, 0x4F9, 0x21A },
{ 0x5D0, 0x5EA, 0x28A },
{ 0x1EF2, 0x1EF3, 0x2A5 },
{ 0x200C, 0x2010, 0x2A7 },
{ 0x2013, 0x2015, 0x2AC },
{ 0x2018, 0x201A, 0x2AF },
{ 0x201C, 0x201E, 0x2B2 },
{ 0x2020, 0x2022, 0x2B5 },
{ 0x2026, 0x2026, 0x2B8 },
{ 0x2030, 0x2030, 0x2B9 },
{ 0x2039, 0x203A, 0x2BA },
{ 0x2044, 0x2044, 0x2BC },
{ 0x2070, 0x2070, 0x2BD },
{ 0x2074, 0x2079, 0x2BE },
{ 0x2080, 0x2089, 0x2C4 },
{ 0x20AA, 0x20AA, 0x2CE },
{ 0x20AC, 0x20AC, 0x2CF },
{ 0x20AE, 0x20AE, 0x2D0 },
{ 0x20B4, 0x20B4, 0x2D1 },
{ 0x20B9, 0x20B9, 0x2D2 },
{ 0x2202, 0x2202, 0x2D3 },
{ 0x2206, 0x2206, 0x2D4 },
{ 0x220F, 0x220F, 0x2D5 },
{ 0x2211, 0x2212, 0x2D6 },
{ 0x2215, 0x2215, 0x2D8 },
{ 0x2219, 0x221A, 0x2D9 },
{ 0x221E, 0x221E, 0x2DB },
{ 0x222B, 0x222B, 0x2DC },
{ 0x2248, 0x2248, 0x2DD },
{ 0x2260, 0x2260, 0x2DE },
{ 0x2264, 0x2265, 0x2DF },
{ 0xFB00, 0xFB04, 0x2E1 },
{ 0x1EA0, 0x1EF9, 0x2A5 },
{ 0x200C, 0x2010, 0x2FF },
{ 0x2013, 0x2015, 0x304 },
{ 0x2018, 0x201A, 0x307 },
{ 0x201C, 0x201E, 0x30A },
{ 0x2020, 0x2022, 0x30D },
{ 0x2026, 0x2026, 0x310 },
{ 0x2030, 0x2030, 0x311 },
{ 0x2039, 0x203A, 0x312 },
{ 0x2044, 0x2044, 0x314 },
{ 0x2070, 0x2070, 0x315 },
{ 0x2074, 0x2079, 0x316 },
{ 0x2080, 0x2089, 0x31C },
{ 0x20AA, 0x20AA, 0x326 },
{ 0x20AC, 0x20AC, 0x327 },
{ 0x20AE, 0x20AE, 0x328 },
{ 0x20B4, 0x20B4, 0x329 },
{ 0x20B9, 0x20B9, 0x32A },
{ 0x2202, 0x2202, 0x32B },
{ 0x2206, 0x2206, 0x32C },
{ 0x220F, 0x220F, 0x32D },
{ 0x2211, 0x2212, 0x32E },
{ 0x2215, 0x2215, 0x330 },
{ 0x2219, 0x221A, 0x331 },
{ 0x221E, 0x221E, 0x333 },
{ 0x222B, 0x222B, 0x334 },
{ 0x2248, 0x2248, 0x335 },
{ 0x2260, 0x2260, 0x336 },
{ 0x2264, 0x2265, 0x337 },
{ 0xFB00, 0xFB04, 0x339 },
};
static const EpdKernClassEntry ubuntu_10_regularKernLeftClasses[] = {
+531 -185
View File
@@ -3,12 +3,12 @@
* name: ubuntu_12_bold
* size: 12
* mode: 1-bit
* Command used: fontconvert.py ubuntu_12_bold 12 ../builtinFonts/source/Ubuntu/Ubuntu-Bold.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Bold.ttf --additional-intervals 0x05D0,0x05EA
* Command used: fontconvert.py ubuntu_12_bold 12 ../builtinFonts/source/Ubuntu/Ubuntu-Bold.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Bold.ttf ../builtinFonts/source/Ubuntu/Ubuntu-Vietnamese-Bold.ttf --additional-intervals 0x05D0,0x05EA
*/
#pragma once
#include "EpdFontData.h"
static const uint8_t ubuntu_12_boldBitmaps[24201] = {
static const uint8_t ubuntu_12_boldBitmaps[28333] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xDC, 0x07, 0x7F, 0xFF, 0x70, 0xF7, 0xFD, 0xFF, 0x7F, 0xDF,
0xF3, 0xFC, 0xEF, 0x38, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0xFF, 0xFE, 0xFF, 0xFE,
0xFF, 0xFE, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x78, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0x3C, 0xF0,
@@ -1433,95 +1433,353 @@ static const uint8_t ubuntu_12_boldBitmaps[24201] = {
0x7F, 0xFE, 0x1E, 0xFF, 0x07, 0x9E, 0x03, 0xE7, 0xC0, 0xF9, 0xFF, 0xFC, 0x3F, 0xFF, 0x07, 0xFF,
0x80, 0x7F, 0x80, 0x7F, 0xFC, 0x3F, 0xFF, 0x9F, 0xFF, 0xC7, 0xFF, 0xF1, 0xF0, 0xF8, 0xF8, 0x7C,
0x7C, 0x3E, 0x3E, 0x1F, 0x1F, 0x0F, 0x8F, 0x87, 0xC7, 0xC3, 0xE7, 0xE1, 0xF7, 0xE0, 0xFB, 0xF0,
0x7D, 0xF0, 0x3E, 0x03, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1E, 0x00, 0x06, 0x00,
0x00, 0x01, 0xF0, 0x3F, 0x7C, 0x1F, 0x3E, 0x1F, 0x0F, 0x8F, 0x87, 0xCF, 0x81, 0xF7, 0xC0, 0xFF,
0xC0, 0x3F, 0xE0, 0x0F, 0xE0, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00,
0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x0C, 0x00, 0x78, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x0C,
0x00, 0x00, 0x3E, 0x1F, 0xF8, 0x79, 0xE1, 0xE7, 0xCF, 0x9F, 0x3C, 0x3C, 0xF0, 0xFF, 0xC3, 0xFE,
0x07, 0xF8, 0x1F, 0xE0, 0x3F, 0x00, 0xFC, 0x01, 0xE0, 0x0F, 0x81, 0x7C, 0x0F, 0xF0, 0x3F, 0x80,
0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x03, 0x37, 0x8C, 0x7B, 0xF3, 0x0C, 0x30, 0xC3, 0x0C,
0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x00, 0x00, 0x30, 0x37, 0xEC, 0xDB, 0x30, 0x60, 0xC1, 0x83, 0x06,
0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x00, 0x00, 0x61, 0x83, 0xF6, 0x66, 0xC1, 0x83, 0x06, 0x0C,
0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xE0, 0x7B, 0xFD, 0xEF, 0x7B, 0xC0, 0x79, 0xE7, 0x9E, 0x7B, 0xCF, 0x00, 0x79,
0xE7, 0x9E, 0x7B, 0xCF, 0x00, 0x79, 0xDE, 0xFF, 0x3F, 0xDE, 0xF7, 0xBD, 0xEF, 0x78, 0x7B, 0xEF,
0x7D, 0xEF, 0xBD, 0xE7, 0xBD, 0xE7, 0xBC, 0xE0, 0x7B, 0xEF, 0x7D, 0xEF, 0xBD, 0xE7, 0xBD, 0xE7,
0xBC, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00,
0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0x70,
0x07, 0x00, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00,
0xF0, 0x0F, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0x70,
0x07, 0x00, 0x3E, 0x3F, 0x9F, 0xCF, 0xE7, 0xF3, 0xF8, 0xF8, 0x78, 0x38, 0x3D, 0xF0, 0xF8, 0x7F,
0xE1, 0xF0, 0xFF, 0xC3, 0xE1, 0xF7, 0x83, 0x83, 0xC0, 0x3F, 0x03, 0xC0, 0x00, 0x3F, 0xC3, 0xE0,
0x00, 0x1E, 0xF1, 0xE0, 0x00, 0x0E, 0x79, 0xE0, 0x00, 0x07, 0x1C, 0xF0, 0x00, 0x03, 0x9E, 0xF0,
0x00, 0x01, 0xEF, 0xF8, 0x00, 0x00, 0xFF, 0x78, 0x00, 0x00, 0x3F, 0x7D, 0xF8, 0x7E, 0x00, 0x3D,
0xFE, 0x7F, 0x80, 0x3D, 0xEF, 0x7B, 0xC0, 0x1E, 0xF3, 0xBC, 0xE0, 0x1E, 0x71, 0xDC, 0x70, 0x1F,
0x3C, 0xEF, 0x38, 0x0F, 0x1E, 0xF7, 0xBC, 0x0F, 0x87, 0xF9, 0xFE, 0x07, 0x81, 0xF8, 0x7E, 0x00,
0x00, 0x0E, 0x1F, 0x3E, 0x7C, 0x7C, 0xF8, 0x7C, 0x7C, 0x3E, 0x1F, 0x0E, 0x08, 0x10, 0x78, 0x78,
0x7C, 0x3E, 0x3E, 0x1F, 0x3E, 0x3E, 0x7C, 0x78, 0x78, 0x10, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0x80,
0x7D, 0xF0, 0x3E, 0x01, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x01, 0xFE,
0x00, 0xFF, 0xC0, 0x3C, 0xF0, 0x1F, 0x3E, 0x07, 0x8F, 0x81, 0xE1, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF,
0x1F, 0xFF, 0xE7, 0xFF, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xF0, 0x00, 0x00, 0x03, 0x80,
0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x1F, 0x81, 0xFF, 0x0F, 0xFC, 0x7F, 0xE0,
0x0F, 0x01, 0x7C, 0xFF, 0xEF, 0xFF, 0x7F, 0xFB, 0xC7, 0xDE, 0x3E, 0xFF, 0xF7, 0xFF, 0x9F, 0xFC,
0x1E, 0x00, 0xE0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0xFC, 0x00, 0x3F,
0x00, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x1E, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x01, 0xFE,
0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x0F, 0xFC, 0x03, 0xCF, 0x01, 0xF3, 0xE0, 0x78, 0xF8, 0x1E, 0x1E,
0x0F, 0xFF, 0xC3, 0xFF, 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x9F, 0x03, 0xEF, 0x80, 0x7F, 0xE0, 0x1F,
0x0F, 0x80, 0x7E, 0x03, 0xF0, 0x07, 0x80, 0x78, 0x03, 0x80, 0x7E, 0x07, 0xFC, 0x3F, 0xF1, 0xFF,
0x80, 0x3C, 0x05, 0xF3, 0xFF, 0xBF, 0xFD, 0xFF, 0xEF, 0x1F, 0x78, 0xFB, 0xFF, 0xDF, 0xFE, 0x7F,
0xF0, 0x78, 0x00, 0x00, 0x03, 0x00, 0x01, 0xE0, 0x00, 0xF8, 0x03, 0x7C, 0x01, 0xFE, 0x00, 0xFF,
0x00, 0x7F, 0x80, 0x1C, 0xE0, 0x02, 0x10, 0x00, 0x78, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x07, 0xF8,
0x01, 0xFE, 0x00, 0x7F, 0x80, 0x3F, 0xF0, 0x0F, 0x3C, 0x07, 0xCF, 0x81, 0xE3, 0xE0, 0x78, 0x78,
0x3F, 0xFF, 0x0F, 0xFF, 0xC7, 0xFF, 0xF9, 0xFF, 0xFE, 0x7C, 0x0F, 0xBE, 0x01, 0xFF, 0x80, 0x7C,
0x00, 0x08, 0x00, 0x3C, 0x00, 0xF8, 0x13, 0xE0, 0x77, 0x81, 0xF4, 0x07, 0xF0, 0x0E, 0xE0, 0x08,
0xC0, 0x3F, 0x00, 0xFF, 0x81, 0xFF, 0x83, 0xFF, 0x00, 0x1E, 0x00, 0xBE, 0x1F, 0xFC, 0x7F, 0xF8,
0xFF, 0xF1, 0xE3, 0xE3, 0xC7, 0xC7, 0xFF, 0x8F, 0xFF, 0x0F, 0xFE, 0x03, 0xC0, 0x00, 0x00, 0x00,
0x0C, 0x00, 0x07, 0x80, 0x01, 0xF0, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0xE0, 0x07,
0x38, 0x00, 0x84, 0x00, 0x1E, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x1F,
0xE0, 0x0F, 0xFC, 0x03, 0xCF, 0x01, 0xF3, 0xE0, 0x78, 0xF8, 0x1E, 0x1E, 0x0F, 0xFF, 0xC3, 0xFF,
0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x9F, 0x03, 0xEF, 0x80, 0x7F, 0xE0, 0x1F, 0x00, 0x00, 0x06, 0x00,
0x78, 0x03, 0xE0, 0x2F, 0x83, 0xBC, 0x3E, 0x43, 0xF8, 0x1D, 0xC0, 0x46, 0x07, 0xE0, 0x7F, 0xC3,
0xFF, 0x1F, 0xF8, 0x03, 0xC0, 0x5F, 0x3F, 0xFB, 0xFF, 0xDF, 0xFE, 0xF1, 0xF7, 0x8F, 0xBF, 0xFD,
0xFF, 0xE7, 0xFF, 0x07, 0x80, 0x00, 0x3E, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x3C, 0x00, 0xDE,
0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0xE0, 0x07, 0x38, 0x00, 0x84, 0x00, 0x1E, 0x00, 0x0F, 0xC0,
0x03, 0xF0, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x0F, 0xFC, 0x03, 0xCF, 0x01, 0xF3, 0xE0,
0x78, 0xF8, 0x1E, 0x1E, 0x0F, 0xFF, 0xC3, 0xFF, 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x9F, 0x03, 0xEF,
0x80, 0x7F, 0xE0, 0x1F, 0x00, 0x60, 0x03, 0xF0, 0x0F, 0xC0, 0x07, 0x02, 0x3C, 0x1D, 0xE0, 0xFF,
0x07, 0xF0, 0x1D, 0xC0, 0x23, 0x01, 0xF8, 0x0F, 0xF8, 0x3F, 0xF0, 0xFF, 0xC0, 0x0F, 0x00, 0xBE,
0x3F, 0xF9, 0xFF, 0xE7, 0xFF, 0x9E, 0x3E, 0x78, 0xF9, 0xFF, 0xE7, 0xFF, 0x8F, 0xFE, 0x07, 0x80,
0x00, 0x00, 0x01, 0xF6, 0x00, 0x7F, 0xC0, 0x3F, 0xE0, 0x06, 0x70, 0x00, 0x30, 0x00, 0x1E, 0x00,
0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xCE, 0x00, 0x21, 0x00, 0x07, 0x80, 0x03, 0xF0, 0x00, 0xFC, 0x00,
0x7F, 0x80, 0x1F, 0xE0, 0x07, 0xF8, 0x03, 0xFF, 0x00, 0xF3, 0xC0, 0x7C, 0xF8, 0x1E, 0x3E, 0x07,
0x87, 0x83, 0xFF, 0xF0, 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0xFF, 0xE7, 0xC0, 0xFB, 0xE0, 0x1F, 0xF8,
0x07, 0xC0, 0x1E, 0x61, 0xFF, 0x0F, 0xF8, 0x77, 0x80, 0x20, 0x03, 0x80, 0x3E, 0x03, 0xF8, 0x1D,
0xC0, 0x46, 0x07, 0xE0, 0x7F, 0xC3, 0xFF, 0x1F, 0xF8, 0x03, 0xC0, 0x5F, 0x3F, 0xFB, 0xFF, 0xDF,
0xFE, 0xF1, 0xF7, 0x8F, 0xBF, 0xFD, 0xFF, 0xE7, 0xFF, 0x07, 0x80, 0x00, 0xC0, 0x00, 0x78, 0x00,
0x3F, 0x00, 0x1F, 0xE0, 0x07, 0x38, 0x00, 0x84, 0x00, 0x1E, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x01,
0xFE, 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x0F, 0xFC, 0x03, 0xCF, 0x01, 0xF3, 0xE0, 0x78, 0xF8, 0x1E,
0x1E, 0x0F, 0xFF, 0xC3, 0xFF, 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x9F, 0x03, 0xEF, 0x80, 0x7F, 0xE0,
0x1F, 0x00, 0x00, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x00, 0x00, 0x02,
0x00, 0x38, 0x03, 0xE0, 0x3F, 0x81, 0xDC, 0x04, 0x60, 0x7E, 0x07, 0xFC, 0x3F, 0xF1, 0xFF, 0x80,
0x3C, 0x05, 0xF3, 0xFF, 0xBF, 0xFD, 0xFF, 0xEF, 0x1F, 0x78, 0xFB, 0xFF, 0xDF, 0xFE, 0x7F, 0xF0,
0x78, 0x03, 0x80, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x07,
0x80, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x38, 0x00, 0x77, 0xC0, 0x1F, 0xE0, 0x07, 0xF8, 0x00, 0xFC,
0x00, 0x0C, 0x00, 0x07, 0x80, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x07, 0xF8,
0x03, 0xFF, 0x00, 0xF3, 0xC0, 0x7C, 0xF8, 0x1E, 0x3E, 0x07, 0x87, 0x83, 0xFF, 0xF0, 0xFF, 0xFC,
0x7F, 0xFF, 0x9F, 0xFF, 0xE7, 0xC0, 0xFB, 0xE0, 0x1F, 0xF8, 0x07, 0xC0, 0x00, 0xC0, 0x0F, 0x00,
0x78, 0x07, 0x80, 0x78, 0x01, 0x80, 0x73, 0x83, 0xFC, 0x1F, 0xE0, 0x7E, 0x00, 0x00, 0x3F, 0x03,
0xFE, 0x1F, 0xF8, 0xFF, 0xC0, 0x1E, 0x02, 0xF9, 0xFF, 0xDF, 0xFE, 0xFF, 0xF7, 0x8F, 0xBC, 0x7D,
0xFF, 0xEF, 0xFF, 0x3F, 0xF8, 0x3C, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x78, 0x00, 0x1F, 0x00,
0x03, 0xE0, 0x00, 0x38, 0x00, 0x77, 0xC0, 0x1F, 0xE0, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x0C, 0x00,
0x07, 0x80, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x07, 0xF8, 0x03, 0xFF, 0x00,
0xF3, 0xC0, 0x7C, 0xF8, 0x1E, 0x3E, 0x07, 0x87, 0x83, 0xFF, 0xF0, 0xFF, 0xFC, 0x7F, 0xFF, 0x9F,
0xFF, 0xE7, 0xC0, 0xFB, 0xE0, 0x1F, 0xF8, 0x07, 0xC0, 0x00, 0x00, 0x60, 0x07, 0x80, 0x3E, 0x00,
0xF8, 0x03, 0xC0, 0x73, 0x83, 0xFC, 0x1F, 0xE0, 0x7E, 0x00, 0x00, 0x3F, 0x03, 0xFE, 0x1F, 0xF8,
0xFF, 0xC0, 0x1E, 0x02, 0xF9, 0xFF, 0xDF, 0xFE, 0xFF, 0xF7, 0x8F, 0xBC, 0x7D, 0xFF, 0xEF, 0xFF,
0x3F, 0xF8, 0x3C, 0x00, 0x01, 0xC0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x01, 0xC0, 0x00, 0xF0, 0x00,
0x38, 0x00, 0x0C, 0x00, 0x1C, 0xF0, 0x07, 0xF8, 0x01, 0xFE, 0x00, 0x3F, 0x00, 0x03, 0x00, 0x01,
0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x01, 0xFE, 0x00, 0xFF, 0xC0, 0x3C,
0xF0, 0x1F, 0x3E, 0x07, 0x8F, 0x81, 0xE1, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF, 0x1F, 0xFF, 0xE7, 0xFF,
0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0x80, 0x3C,
0x03, 0xC0, 0x1C, 0x03, 0x9C, 0x1F, 0xE0, 0xFF, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x1F, 0xF0, 0xFF,
0xC7, 0xFE, 0x00, 0xF0, 0x17, 0xCF, 0xFE, 0xFF, 0xF7, 0xFF, 0xBC, 0x7D, 0xE3, 0xEF, 0xFF, 0x7F,
0xF9, 0xFF, 0xC1, 0xE0, 0x03, 0x98, 0x01, 0xFF, 0x00, 0xFF, 0xC0, 0x1F, 0xE0, 0x00, 0x00, 0x01,
0xCF, 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x03, 0xF0, 0x00, 0x30, 0x00, 0x1E, 0x00, 0x0F, 0xC0, 0x03,
0xF0, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x1F, 0xE0, 0x0F, 0xFC, 0x03, 0xCF, 0x01, 0xF3, 0xE0, 0x78,
0xF8, 0x1E, 0x1E, 0x0F, 0xFF, 0xC3, 0xFF, 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x9F, 0x03, 0xEF, 0x80,
0x7F, 0xE0, 0x1F, 0x0E, 0x60, 0xFF, 0x8F, 0xF8, 0x37, 0x80, 0x00, 0x0E, 0x70, 0x7F, 0x83, 0xFC,
0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x7F, 0xC3, 0xFF, 0x1F, 0xF8, 0x03, 0xC0, 0x5F, 0x3F, 0xFB, 0xFF,
0xDF, 0xFE, 0xF1, 0xF7, 0x8F, 0xBF, 0xFD, 0xFF, 0xE7, 0xFF, 0x07, 0x80, 0x07, 0x3C, 0x01, 0xFE,
0x00, 0x7F, 0x80, 0x0F, 0xC0, 0x00, 0xC0, 0x00, 0x78, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x07, 0xF8,
0x01, 0xFE, 0x00, 0x7F, 0x80, 0x3F, 0xF0, 0x0F, 0x3C, 0x07, 0xCF, 0x81, 0xE3, 0xE0, 0x78, 0x78,
0x3F, 0xFF, 0x0F, 0xFF, 0xC7, 0xFF, 0xF9, 0xFF, 0xFE, 0x7C, 0x0F, 0xBE, 0x01, 0xFF, 0x80, 0x7C,
0x00, 0x00, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0xE7, 0x07, 0xF8, 0x3F, 0xC0, 0xFC, 0x00, 0x00, 0x7E, 0x07, 0xFC, 0x3F, 0xF1, 0xFF, 0x80, 0x3C,
0x05, 0xF3, 0xFF, 0xBF, 0xFD, 0xFF, 0xEF, 0x1F, 0x78, 0xFB, 0xFF, 0xDF, 0xFE, 0x7F, 0xF0, 0x78,
0x03, 0x80, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x00, 0x00, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, 0xFF, 0xEF,
0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFC, 0xFF, 0xE7, 0xFF, 0x3F, 0xF9, 0xE0, 0x0F, 0x00, 0x78, 0x03,
0xFF, 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x1C, 0x01, 0xF0, 0x0F, 0x80, 0x3C, 0x00, 0x80,
0x0F, 0x81, 0xFF, 0x1F, 0xF8, 0xFF, 0xEF, 0x8F, 0x78, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0,
0x3F, 0x08, 0xFF, 0xE7, 0xFF, 0x0F, 0xF8, 0x1F, 0x00, 0xE0, 0x0F, 0x00, 0x7C, 0x03, 0xC0, 0x04,
0x00, 0x1F, 0x00, 0xF8, 0x07, 0xE0, 0x0F, 0x00, 0xF0, 0x07, 0x03, 0xFF, 0xDF, 0xFE, 0xFF, 0xF7,
0xFF, 0xBC, 0x01, 0xE0, 0x0F, 0x00, 0x7F, 0xF3, 0xFF, 0x9F, 0xFC, 0xFF, 0xE7, 0x80, 0x3C, 0x01,
0xE0, 0x0F, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0xFC, 0x07, 0xE0, 0x07, 0x00, 0x78,
0x03, 0x80, 0x3E, 0x07, 0xFC, 0x7F, 0xE3, 0xFF, 0xBE, 0x3D, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0xFC, 0x23, 0xFF, 0x9F, 0xFC, 0x3F, 0xE0, 0x7C, 0x00, 0x00, 0x01, 0xEE, 0x1F, 0xF0,
0xFF, 0x82, 0x78, 0x00, 0x03, 0xFF, 0xDF, 0xFE, 0xFF, 0xF7, 0xFF, 0xBC, 0x01, 0xE0, 0x0F, 0x00,
0x7F, 0xF3, 0xFF, 0x9F, 0xFC, 0xFF, 0xE7, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0xFF, 0x7F, 0xFF, 0xFF,
0xFF, 0xFF, 0x1E, 0xC1, 0xFF, 0x1F, 0xF8, 0x67, 0x80, 0x00, 0x07, 0xC0, 0xFF, 0x8F, 0xFC, 0x7F,
0xF7, 0xC7, 0xBC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x1F, 0x84, 0x7F, 0xF3, 0xFF, 0x87,
0xFC, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x60, 0x03, 0xC0, 0x1F, 0x06, 0xF8, 0x3F, 0xC1, 0xFC, 0x0F,
0xF0, 0x39, 0xC0, 0x42, 0x0F, 0xFF, 0x3F, 0xFC, 0xFF, 0xF3, 0xFF, 0xCF, 0x00, 0x3C, 0x00, 0xF0,
0x03, 0xFF, 0x8F, 0xFE, 0x3F, 0xF8, 0xFF, 0xE3, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xFF, 0xF3, 0xFF,
0xEF, 0xFF, 0xBF, 0xFE, 0x00, 0x18, 0x00, 0x38, 0x00, 0xF0, 0x13, 0xE0, 0x7F, 0x03, 0xFC, 0x0F,
0xF0, 0x1E, 0xE0, 0x10, 0x80, 0x1F, 0x00, 0xFF, 0x83, 0xFF, 0x07, 0xFF, 0x1F, 0x1E, 0x3C, 0x3E,
0x7F, 0xFC, 0xFF, 0xF9, 0xFF, 0xF3, 0xE0, 0x07, 0xE1, 0x07, 0xFF, 0x0F, 0xFE, 0x07, 0xFC, 0x03,
0xE0, 0x00, 0x00, 0x0C, 0x00, 0xF0, 0x07, 0xC0, 0x7F, 0x07, 0xF0, 0x7F, 0x07, 0xF8, 0x39, 0xC0,
0x84, 0x3F, 0xFD, 0xFF, 0xEF, 0xFF, 0x7F, 0xFB, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0xFF, 0x3F, 0xF9,
0xFF, 0xCF, 0xFE, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00,
0xC0, 0x0F, 0x00, 0x7C, 0x05, 0xF0, 0x77, 0x8F, 0xD8, 0xFF, 0x07, 0xB8, 0x10, 0x80, 0x7C, 0x0F,
0xF8, 0xFF, 0xC7, 0xFF, 0x7C, 0x7B, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xF8, 0x47,
0xFF, 0x3F, 0xF8, 0x7F, 0xC0, 0xF8, 0x00, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x0F, 0x06, 0x78, 0x3D,
0xC1, 0xF8, 0x0F, 0xF0, 0x39, 0xC0, 0x42, 0x0F, 0xFF, 0x3F, 0xFC, 0xFF, 0xF3, 0xFF, 0xCF, 0x00,
0x3C, 0x00, 0xF0, 0x03, 0xFF, 0x8F, 0xFE, 0x3F, 0xF8, 0xFF, 0xE3, 0xC0, 0x0F, 0x00, 0x3C, 0x00,
0xFF, 0xF3, 0xFF, 0xEF, 0xFF, 0xBF, 0xFE, 0x00, 0xF8, 0x03, 0xF0, 0x0F, 0xC0, 0x8F, 0x07, 0x78,
0x7F, 0xC3, 0xFC, 0x0F, 0x70, 0x10, 0x80, 0x3E, 0x03, 0xFE, 0x1F, 0xF8, 0x7F, 0xF3, 0xE3, 0xCF,
0x0F, 0xBF, 0xFE, 0xFF, 0xFB, 0xFF, 0xEF, 0x80, 0x3F, 0x08, 0x7F, 0xF1, 0xFF, 0xC1, 0xFF, 0x01,
0xF0, 0x00, 0x01, 0xFF, 0x0F, 0xF8, 0xFF, 0x83, 0x38, 0x03, 0x00, 0x3C, 0x03, 0xF0, 0x3F, 0xC1,
0xCE, 0x04, 0x21, 0xFF, 0xEF, 0xFF, 0x7F, 0xFB, 0xFF, 0xDE, 0x00, 0xF0, 0x07, 0x80, 0x3F, 0xF9,
0xFF, 0xCF, 0xFE, 0x7F, 0xF3, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF,
0x80, 0x1E, 0xC1, 0xFF, 0x0F, 0xF8, 0x6F, 0x80, 0x20, 0x03, 0x80, 0x7E, 0x07, 0xF8, 0x3D, 0xC0,
0x84, 0x03, 0xE0, 0x7F, 0xC7, 0xFE, 0x3F, 0xFB, 0xE3, 0xDE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xF0, 0x0F, 0xC2, 0x3F, 0xF9, 0xFF, 0xC3, 0xFE, 0x07, 0xC0, 0x06, 0x00, 0x78, 0x07, 0xE0, 0x7F,
0x83, 0x9C, 0x08, 0x43, 0xFF, 0xDF, 0xFE, 0xFF, 0xF7, 0xFF, 0xBC, 0x01, 0xE0, 0x0F, 0x00, 0x7F,
0xF3, 0xFF, 0x9F, 0xFC, 0xFF, 0xE7, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF,
0xFF, 0x00, 0x00, 0x70, 0x07, 0xC0, 0x3E, 0x00, 0xF0, 0x02, 0x00, 0x02, 0x00, 0x38, 0x07, 0xE0,
0x7F, 0x83, 0xDC, 0x08, 0x40, 0x3E, 0x07, 0xFC, 0x7F, 0xE3, 0xFF, 0xBE, 0x3D, 0xE1, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFC, 0x23, 0xFF, 0x9F, 0xFC, 0x3F, 0xE0, 0x7C, 0x03, 0x80, 0x3C,
0x01, 0xF0, 0x0F, 0x00, 0x10, 0x00, 0xFB, 0xFF, 0xCF, 0x79, 0xC7, 0x9E, 0x79, 0xE7, 0x9E, 0x79,
0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x78, 0xF9, 0xF8, 0xF3, 0xC7, 0x0E, 0x3E, 0x7C,
0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE0, 0x7B, 0xDE, 0xF7, 0xBD, 0xEF, 0x7B,
0xDE, 0xF7, 0xBD, 0xEF, 0x7B, 0xC0, 0xE7, 0xBD, 0xE0, 0x03, 0xFF, 0xFF, 0x91, 0xDF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x3B, 0xFF, 0x79, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xFF,
0xE0, 0xFF, 0xFC, 0x7E, 0x1F, 0x9F, 0x03, 0xEF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01,
0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x0F, 0x9F, 0x03, 0xE7, 0xF7, 0xF8, 0xFF, 0xFC, 0x1F, 0xFE,
0x03, 0xFF, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x02, 0x00,
0x0F, 0x80, 0xFF, 0x87, 0xFF, 0x1F, 0xFC, 0xF8, 0xFB, 0xE1, 0xEF, 0x07, 0xBC, 0x1E, 0xF0, 0x7B,
0xE3, 0xEF, 0xCF, 0x9F, 0xFC, 0x3F, 0xF0, 0x7F, 0x80, 0x70, 0x01, 0xC0, 0x0F, 0x80, 0x3E, 0x00,
0x78, 0x00, 0x80, 0x03, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x70,
0x00, 0x3F, 0x00, 0x3F, 0xF0, 0x3F, 0xFE, 0x0F, 0xFF, 0xC7, 0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07,
0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E,
0x7F, 0x7F, 0x8F, 0xFF, 0xC1, 0xFF, 0xE0, 0x3F, 0xF0, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x3E, 0x00,
0xFC, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, 0xF8, 0x0F, 0xF8, 0x7F, 0xF1, 0xFF, 0xCF, 0x8F, 0xBE,
0x1E, 0xF0, 0x7B, 0xC1, 0xEF, 0x07, 0xBE, 0x3E, 0xFC, 0xF9, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x07,
0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0xDF, 0x00, 0x7F, 0x00, 0x3F,
0x00, 0x1F, 0xE0, 0x07, 0x38, 0x00, 0x84, 0x00, 0x3F, 0x00, 0x3F, 0xF0, 0x3F, 0xFE, 0x0F, 0xFF,
0xC7, 0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07,
0xFE, 0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F, 0xFF, 0xC1, 0xFF, 0xE0, 0x3F, 0xF0,
0x01, 0xE0, 0x00, 0x00, 0x18, 0x00, 0x38, 0x00, 0xF8, 0x13, 0xE0, 0x77, 0x01, 0xF4, 0x07, 0xF8,
0x0E, 0xE0, 0x08, 0xC0, 0x1F, 0x00, 0xFF, 0x83, 0xFF, 0x87, 0xFF, 0x1F, 0x1F, 0x3E, 0x1E, 0x78,
0x3C, 0xF0, 0x79, 0xE0, 0xF3, 0xE3, 0xE7, 0xE7, 0xC7, 0xFF, 0x07, 0xFE, 0x07, 0xF8, 0x03, 0x80,
0x00, 0x00, 0x00, 0x1C, 0x00, 0x07, 0x80, 0x01, 0xF0, 0x00, 0xFE, 0x00, 0x7B, 0x00, 0x3F, 0x00,
0x1F, 0xE0, 0x07, 0x38, 0x00, 0x84, 0x00, 0x3F, 0x00, 0x3F, 0xF0, 0x3F, 0xFE, 0x0F, 0xFF, 0xC7,
0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE,
0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F, 0xFF, 0xC1, 0xFF, 0xE0, 0x3F, 0xF0, 0x01,
0xE0, 0x00, 0x00, 0x80, 0x07, 0x00, 0x3E, 0x00, 0x7C, 0x02, 0xF0, 0x1D, 0xC0, 0xF8, 0x07, 0xF8,
0x1D, 0xC0, 0x23, 0x00, 0xF8, 0x0F, 0xF8, 0x7F, 0xF1, 0xFF, 0xCF, 0x8F, 0xBE, 0x1E, 0xF0, 0x7B,
0xC1, 0xEF, 0x07, 0xBE, 0x3E, 0xFC, 0xF9, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x07, 0x00, 0x00, 0x3E,
0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x3C, 0x00, 0xDE, 0x00, 0x7B, 0x80, 0x3F, 0x00, 0x1F, 0xE0,
0x07, 0x38, 0x00, 0x84, 0x00, 0x3F, 0x00, 0x3F, 0xF0, 0x3F, 0xFE, 0x0F, 0xFF, 0xC7, 0xE1, 0xF9,
0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF,
0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F, 0xFF, 0xC1, 0xFF, 0xE0, 0x3F, 0xF0, 0x01, 0xE0, 0x00,
0x00, 0x60, 0x03, 0xE0, 0x0F, 0xC0, 0x07, 0x02, 0x3C, 0x1D, 0xE0, 0xFF, 0x07, 0xF8, 0x1D, 0xC0,
0x23, 0x00, 0xF8, 0x0F, 0xF8, 0x7F, 0xF1, 0xFF, 0xCF, 0x8F, 0xBE, 0x1E, 0xF0, 0x7B, 0xC1, 0xEF,
0x07, 0xBE, 0x3E, 0xFC, 0xF9, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x07, 0x00, 0x00, 0x00, 0x01, 0xFF,
0x00, 0xFF, 0xC0, 0x3F, 0xE0, 0x06, 0x70, 0x00, 0x30, 0x00, 0x1E, 0x00, 0x0F, 0xC0, 0x07, 0xF8,
0x01, 0xCE, 0x00, 0x21, 0x00, 0x0F, 0xC0, 0x0F, 0xFC, 0x0F, 0xFF, 0x83, 0xFF, 0xF1, 0xF8, 0x7E,
0x7C, 0x0F, 0xBE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F,
0xE0, 0x3E, 0x7C, 0x0F, 0x9F, 0xDF, 0xE3, 0xFF, 0xF0, 0x7F, 0xF8, 0x0F, 0xFC, 0x00, 0x78, 0x00,
0x1E, 0x60, 0xFF, 0x83, 0xFE, 0x0E, 0xF0, 0x02, 0x00, 0x1C, 0x00, 0xF8, 0x07, 0xF8, 0x1D, 0xC0,
0x23, 0x00, 0xF8, 0x0F, 0xF8, 0x7F, 0xF1, 0xFF, 0xCF, 0x8F, 0xBE, 0x1E, 0xF0, 0x7B, 0xC1, 0xEF,
0x07, 0xBE, 0x3E, 0xFC, 0xF9, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x78,
0x00, 0x3F, 0x00, 0x1F, 0xE0, 0x07, 0x38, 0x00, 0x84, 0x00, 0x3F, 0x00, 0x3F, 0xF0, 0x3F, 0xFE,
0x0F, 0xFF, 0xC7, 0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F,
0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F, 0xFF, 0xC1, 0xFF, 0xE0,
0x3F, 0xF0, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x20, 0x00,
0x02, 0x00, 0x1C, 0x00, 0xF8, 0x07, 0xF8, 0x1D, 0xC0, 0x23, 0x00, 0xF8, 0x0F, 0xF8, 0x7F, 0xF1,
0xFF, 0xCF, 0x8F, 0xBE, 0x1E, 0xF0, 0x7B, 0xC1, 0xEF, 0x07, 0xBE, 0x3E, 0xFC, 0xF9, 0xFF, 0xC3,
0xFF, 0x07, 0xF8, 0x07, 0x00, 0x1C, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0x80, 0x08, 0x00, 0x00, 0x60,
0x00, 0x3C, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x03, 0xC3, 0xC0, 0x40, 0xF0, 0x3F, 0x7C, 0x3F, 0xFE,
0x3F, 0xFF, 0x8F, 0xFF, 0xC7, 0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F,
0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F, 0xFF, 0xC1,
0xFF, 0xE0, 0x3F, 0xF0, 0x01, 0xE0, 0x00, 0x01, 0x00, 0x07, 0x80, 0x1F, 0x00, 0x7C, 0x00, 0xE3,
0xC0, 0x87, 0x83, 0xEF, 0x1F, 0xFE, 0x7F, 0xFC, 0xFF, 0xF3, 0xE3, 0xE7, 0xC3, 0xCF, 0x07, 0x9E,
0x0F, 0x3C, 0x1E, 0x7C, 0x7C, 0xFC, 0xF8, 0xFF, 0xE0, 0xFF, 0xC0, 0xFF, 0x00, 0x70, 0x00, 0x01,
0x80, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF3, 0xC0, 0x18, 0xF0, 0x3F, 0x7C, 0x3F,
0xFE, 0x3F, 0xFF, 0x8F, 0xFF, 0xC7, 0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80,
0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F, 0xFF,
0xC1, 0xFF, 0xE0, 0x3F, 0xF0, 0x01, 0xE0, 0x00, 0x06, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0x3C, 0x00,
0x3B, 0xC0, 0x27, 0x83, 0xEF, 0x1F, 0xFE, 0x7F, 0xFC, 0xFF, 0xF3, 0xE3, 0xE7, 0xC3, 0xCF, 0x07,
0x9E, 0x0F, 0x3C, 0x1E, 0x7C, 0x7C, 0xFC, 0xF8, 0xFF, 0xE0, 0xFF, 0xC0, 0xFF, 0x00, 0x70, 0x00,
0x03, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x01, 0xE3, 0xC0, 0x70, 0xF0, 0x3F, 0x7C,
0x3F, 0xFE, 0x3F, 0xFF, 0x8F, 0xFF, 0xC7, 0xE1, 0xF9, 0xF0, 0x3E, 0xF8, 0x07, 0xFE, 0x01, 0xFF,
0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0xF9, 0xF0, 0x3E, 0x7F, 0x7F, 0x8F,
0xFF, 0xC1, 0xFF, 0xE0, 0x3F, 0xF0, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0x1E,
0x00, 0x7B, 0xC0, 0xE7, 0x83, 0xEF, 0x1F, 0xFE, 0x7F, 0xFC, 0xFF, 0xF3, 0xE3, 0xE7, 0xC3, 0xCF,
0x07, 0x9E, 0x0F, 0x3C, 0x1E, 0x7C, 0x7C, 0xFC, 0xF8, 0xFF, 0xE0, 0xFF, 0xC0, 0xFF, 0x00, 0x70,
0x00, 0x03, 0x98, 0x01, 0xFF, 0x00, 0xFF, 0x80, 0x1B, 0xCF, 0x00, 0x03, 0xC0, 0xFD, 0xF0, 0xFF,
0xF8, 0xFF, 0xFE, 0x3F, 0xFF, 0x1F, 0x87, 0xE7, 0xC0, 0xFB, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01,
0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x03, 0xE7, 0xC0, 0xF9, 0xFD, 0xFE, 0x3F, 0xFF,
0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x07, 0x80, 0x1E, 0x60, 0x7F, 0xC0, 0xFF, 0x81, 0xDF, 0xE0, 0x03,
0xC1, 0xF7, 0x8F, 0xFF, 0x3F, 0xFE, 0x7F, 0xF9, 0xF1, 0xF3, 0xE1, 0xE7, 0x83, 0xCF, 0x07, 0x9E,
0x0F, 0x3E, 0x3E, 0x7E, 0x7C, 0x7F, 0xF0, 0x7F, 0xE0, 0x7F, 0x80, 0x38, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x3C, 0x0F, 0xDF, 0x0F, 0xFF, 0x8F, 0xFF, 0xE3, 0xFF, 0xF1, 0xF8, 0x7E, 0x7C,
0x0F, 0xBE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0,
0x3E, 0x7C, 0x0F, 0x9F, 0xDF, 0xE3, 0xFF, 0xF0, 0x7F, 0xF8, 0x0F, 0xFC, 0x00, 0x78, 0x00, 0x1C,
0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x08, 0x00, 0x00, 0x3C, 0x00, 0x78, 0x3E, 0xF1,
0xFF, 0xE7, 0xFF, 0xCF, 0xFF, 0x3E, 0x3E, 0x7C, 0x3C, 0xF0, 0x79, 0xE0, 0xF3, 0xC1, 0xE7, 0xC7,
0xCF, 0xCF, 0x8F, 0xFE, 0x0F, 0xFC, 0x0F, 0xF0, 0x07, 0x00, 0x0E, 0x00, 0x3E, 0x00, 0x7C, 0x00,
0x78, 0x00, 0x40, 0x00, 0x78, 0x1F, 0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81, 0xFF, 0x03, 0xFE,
0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81, 0xEF, 0x87, 0xDF, 0xBF,
0xBF, 0xFE, 0x3F, 0xFC, 0x3F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x00,
0x80, 0x70, 0x7F, 0x8F, 0xF8, 0xFF, 0x8F, 0xF8, 0xFF, 0x8F, 0xF8, 0xFF, 0x8F, 0xF8, 0xFF, 0x8F,
0xFC, 0xF7, 0xFF, 0x7F, 0xF3, 0xFF, 0x07, 0x80, 0x70, 0x0F, 0x80, 0xF8, 0x0F, 0x00, 0x20, 0x07,
0xC0, 0x0F, 0xC0, 0x1F, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x70, 0x1E, 0x07, 0xFC, 0x0F, 0xF8, 0x1F,
0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81, 0xFF, 0x03, 0xFE, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0,
0x3F, 0xE0, 0x7B, 0xE1, 0xF7, 0xEF, 0xEF, 0xFF, 0x8F, 0xFF, 0x0F, 0xF8, 0x03, 0xC0, 0x1F, 0x01,
0xF8, 0x0F, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x70, 0x7F, 0x8F, 0xF8, 0xFF, 0x8F, 0xF8, 0xFF, 0x8F,
0xF8, 0xFF, 0x8F, 0xF8, 0xFF, 0x8F, 0xFC, 0xF7, 0xFF, 0x7F, 0xF3, 0xFF, 0x07, 0x80, 0x00, 0xC0,
0x00, 0x78, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0xC0, 0xF7, 0x81, 0xFF, 0xE0, 0x7F,
0xF8, 0x1F, 0xBE, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE3,
0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE1, 0xF0, 0xF8, 0x7E, 0xFE, 0x1F, 0xFF, 0x03,
0xFF, 0xC0, 0x7F, 0xC0, 0x03, 0xC0, 0x00, 0x03, 0x00, 0x0F, 0x00, 0x1F, 0x00, 0x78, 0x00, 0xE1,
0xE0, 0x83, 0xDC, 0x1F, 0xFC, 0x7F, 0xF8, 0xFD, 0xF1, 0xE3, 0xE3, 0xC7, 0xC7, 0x8F, 0x8F, 0x1F,
0x1E, 0x3E, 0x3C, 0x7C, 0x78, 0xFC, 0xF0, 0xFF, 0xE1, 0xFF, 0xC1, 0xFF, 0x80, 0x78, 0x00, 0x06,
0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x01, 0xC3, 0xC0, 0x20, 0xF7, 0x81, 0xFF, 0xE0,
0x7F, 0xF8, 0x1F, 0xBE, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81,
0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE1, 0xF0, 0xF8, 0x7E, 0xFE, 0x1F, 0xFF,
0x03, 0xFF, 0xC0, 0x7F, 0xC0, 0x03, 0xC0, 0x00, 0x0C, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00,
0x79, 0xE0, 0x43, 0xDC, 0x1F, 0xFC, 0x7F, 0xF8, 0xFD, 0xF1, 0xE3, 0xE3, 0xC7, 0xC7, 0x8F, 0x8F,
0x1F, 0x1E, 0x3E, 0x3C, 0x7C, 0x78, 0xFC, 0xF0, 0xFF, 0xE1, 0xFF, 0xC1, 0xFF, 0x80, 0x78, 0x00,
0x07, 0xC0, 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x07, 0x80, 0x03, 0xC3, 0xC0, 0xE0, 0xF7, 0x81, 0xFF,
0xE0, 0x7F, 0xF8, 0x1F, 0xBE, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F,
0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE1, 0xF0, 0xF8, 0x7E, 0xFE, 0x1F,
0xFF, 0x03, 0xFF, 0xC0, 0x7F, 0xC0, 0x03, 0xC0, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0x3F, 0x00, 0x1C,
0x00, 0x79, 0xE0, 0xE3, 0xDC, 0x1F, 0xFC, 0x7F, 0xF8, 0xFD, 0xF1, 0xE3, 0xE3, 0xC7, 0xC7, 0x8F,
0x8F, 0x1F, 0x1E, 0x3E, 0x3C, 0x7C, 0x78, 0xFC, 0xF0, 0xFF, 0xE1, 0xFF, 0xC1, 0xFF, 0x80, 0x78,
0x00, 0x07, 0x30, 0x03, 0xFE, 0x01, 0xFF, 0x00, 0x37, 0x8F, 0x00, 0x03, 0xDE, 0x07, 0xFF, 0x81,
0xFF, 0xE0, 0x7E, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07,
0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x87, 0xC3, 0xE1, 0xFB, 0xF8, 0x7F, 0xFC,
0x0F, 0xFF, 0x01, 0xFF, 0x00, 0x0F, 0x00, 0x1E, 0xC0, 0x7F, 0xC0, 0xFF, 0x81, 0x9E, 0xF0, 0x01,
0xEE, 0x0F, 0xFE, 0x3F, 0xFC, 0x7E, 0xF8, 0xF1, 0xF1, 0xE3, 0xE3, 0xC7, 0xC7, 0x8F, 0x8F, 0x1F,
0x1E, 0x3E, 0x3C, 0x7E, 0x78, 0x7F, 0xF0, 0xFF, 0xE0, 0xFF, 0xC0, 0x3C, 0x00, 0x00, 0x00, 0x00,
0x00, 0xF0, 0x00, 0x3D, 0xE0, 0x7F, 0xF8, 0x1F, 0xFE, 0x07, 0xEF, 0x81, 0xE3, 0xE0, 0x78, 0xF8,
0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE3, 0xE0,
0x78, 0x7C, 0x3E, 0x1F, 0xBF, 0x87, 0xFF, 0xC0, 0xFF, 0xF0, 0x1F, 0xF0, 0x00, 0xF0, 0x00, 0x38,
0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x10, 0x00, 0x00, 0x1E, 0x00, 0x3D, 0xC1, 0xFF,
0xC7, 0xFF, 0x8F, 0xDF, 0x1E, 0x3E, 0x3C, 0x7C, 0x78, 0xF8, 0xF1, 0xF1, 0xE3, 0xE3, 0xC7, 0xC7,
0x8F, 0xCF, 0x0F, 0xFE, 0x1F, 0xFC, 0x1F, 0xF8, 0x07, 0x80, 0x0E, 0x00, 0x3E, 0x00, 0x7C, 0x00,
0xF0, 0x00, 0x40, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1E, 0x00, 0x06,
0x00, 0x00, 0x01, 0xF0, 0x3F, 0x7C, 0x1F, 0x3E, 0x1F, 0x0F, 0x8F, 0x87, 0xCF, 0x81, 0xF7, 0xC0,
0xFF, 0xC0, 0x3F, 0xE0, 0x0F, 0xE0, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E,
0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x0C, 0x00, 0x78, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0x80,
0x0C, 0x00, 0x00, 0x3E, 0x1F, 0xF8, 0x79, 0xE1, 0xE7, 0xCF, 0x9F, 0x3C, 0x3C, 0xF0, 0xFF, 0xC3,
0xFE, 0x07, 0xF8, 0x1F, 0xE0, 0x3F, 0x00, 0xFC, 0x01, 0xE0, 0x0F, 0x81, 0x7C, 0x0F, 0xF0, 0x3F,
0x80, 0xFC, 0x00, 0xF8, 0x0F, 0x7C, 0x0F, 0x9F, 0x07, 0xCF, 0x87, 0xC3, 0xE3, 0xE1, 0xF3, 0xE0,
0x7D, 0xF0, 0x1F, 0xF0, 0x0F, 0xF0, 0x03, 0xF8, 0x01, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F,
0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x00, 0x00, 0x38, 0x00, 0x3C, 0x00,
0x1F, 0x00, 0x0F, 0x00, 0x01, 0x00, 0x70, 0x39, 0xF0, 0xFB, 0xE1, 0xE3, 0xC7, 0xC7, 0xCF, 0x8F,
0x9E, 0x0F, 0x3C, 0x1F, 0xF8, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0xF0,
0x03, 0xE6, 0x7F, 0x9E, 0xFF, 0x3D, 0xFC, 0x7B, 0xE0, 0x60, 0x07, 0xC0, 0x03, 0xF0, 0x00, 0xF8,
0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x03, 0xE0, 0x3D, 0xF0, 0x3E, 0x7C, 0x1F, 0x3E, 0x1F, 0x0F,
0x8F, 0x87, 0xCF, 0x81, 0xF7, 0xC0, 0x7F, 0xC0, 0x3F, 0xC0, 0x0F, 0xE0, 0x07, 0xE0, 0x01, 0xF0,
0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x0F, 0x80, 0x3F,
0x00, 0xFC, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x07, 0x03, 0xBE, 0x1F, 0xF8, 0x79, 0xE3, 0xE7, 0xCF,
0x9F, 0x3C, 0x3C, 0xF0, 0xFF, 0xC1, 0xFE, 0x07, 0xF8, 0x1F, 0xC0, 0x3F, 0x00, 0xFC, 0x01, 0xE0,
0x0F, 0x83, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0xF8, 0x00, 0x00, 0x00, 0x03, 0xDC, 0x03, 0xFE, 0x03,
0xFE, 0x00, 0xCE, 0x00, 0x00, 0x03, 0xE0, 0x3D, 0xF0, 0x3E, 0x7C, 0x1F, 0x3E, 0x1F, 0x0F, 0x8F,
0x87, 0xCF, 0x81, 0xF7, 0xC0, 0x7F, 0xC0, 0x3F, 0xC0, 0x0F, 0xE0, 0x07, 0xE0, 0x01, 0xF0, 0x00,
0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x0E, 0x60, 0x7F, 0xC3,
0xFE, 0x06, 0xF0, 0x00, 0x01, 0xC0, 0xEF, 0x87, 0xFE, 0x1E, 0x78, 0xF9, 0xF3, 0xE7, 0xCF, 0x0F,
0x3C, 0x3F, 0xF0, 0x7F, 0x81, 0xFE, 0x07, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0x78, 0x03, 0xE0, 0xFF,
0x03, 0xFC, 0x0F, 0xE0, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x03, 0x37, 0x8C, 0x7B, 0xF3,
0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x00, 0x00, 0x30, 0x37, 0xEC, 0xDB, 0x30,
0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x00, 0x00, 0x61, 0x83, 0xF6, 0x66,
0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x7B, 0xFD, 0xEF, 0x7B, 0xC0, 0x79, 0xE7, 0x9E,
0x7B, 0xCF, 0x00, 0x79, 0xE7, 0x9E, 0x7B, 0xCF, 0x00, 0x79, 0xDE, 0xFF, 0x3F, 0xDE, 0xF7, 0xBD,
0xEF, 0x78, 0x7B, 0xEF, 0x7D, 0xEF, 0xBD, 0xE7, 0xBD, 0xE7, 0xBC, 0xE0, 0x7B, 0xEF, 0x7D, 0xEF,
0xBD, 0xE7, 0xBD, 0xE7, 0xBC, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x0F, 0xFF, 0xFF,
0xFF, 0xFF, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00,
0xF0, 0x0F, 0x00, 0x70, 0x07, 0x00, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x0F, 0xFF, 0xFF,
0xFF, 0xFF, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x0F, 0x00,
0xF0, 0x0F, 0x00, 0x70, 0x07, 0x00, 0x3E, 0x3F, 0x9F, 0xCF, 0xE7, 0xF3, 0xF8, 0xF8, 0x78, 0x38,
0x3D, 0xF0, 0xF8, 0x7F, 0xE1, 0xF0, 0xFF, 0xC3, 0xE1, 0xF7, 0x83, 0x83, 0xC0, 0x3F, 0x03, 0xC0,
0x00, 0x3F, 0xC3, 0xE0, 0x00, 0x1E, 0xF1, 0xE0, 0x00, 0x0E, 0x79, 0xE0, 0x00, 0x07, 0x1C, 0xF0,
0x00, 0x03, 0x9E, 0xF0, 0x00, 0x01, 0xEF, 0xF8, 0x00, 0x00, 0xFF, 0x78, 0x00, 0x00, 0x3F, 0x7D,
0xF8, 0x7E, 0x00, 0x3D, 0xFE, 0x7F, 0x80, 0x3D, 0xEF, 0x7B, 0xC0, 0x1E, 0xF3, 0xBC, 0xE0, 0x1E,
0x71, 0xDC, 0x70, 0x1F, 0x3C, 0xEF, 0x38, 0x0F, 0x1E, 0xF7, 0xBC, 0x0F, 0x87, 0xF9, 0xFE, 0x07,
0x81, 0xF8, 0x7E, 0x00, 0x00, 0x0E, 0x1F, 0x3E, 0x7C, 0x7C, 0xF8, 0x7C, 0x7C, 0x3E, 0x1F, 0x0E,
0x08, 0x10, 0x78, 0x78, 0x7C, 0x3E, 0x3E, 0x1F, 0x3E, 0x3E, 0x7C, 0x78, 0x78, 0x10, 0x00, 0x78,
0x01, 0xE0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00,
0xF0, 0x03, 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x01, 0xE0, 0x00, 0x3E, 0x3F,
0xBD, 0xFE, 0x7E, 0x3F, 0x1F, 0xCF, 0xEF, 0x7F, 0x1F, 0x00, 0x0F, 0x0F, 0x87, 0xC7, 0xE7, 0x73,
0xBB, 0xFF, 0xFF, 0x07, 0x03, 0x80, 0x7F, 0x3F, 0x9C, 0x0E, 0x07, 0xE3, 0xF8, 0x3C, 0x8E, 0x7F,
0x7F, 0x00, 0x0F, 0x1F, 0x9F, 0x8F, 0x07, 0xF7, 0xFB, 0xDE, 0xEF, 0x7F, 0x1F, 0x00, 0xFF, 0xFF,
0xC3, 0xC1, 0xE1, 0xE0, 0xF0, 0x70, 0x78, 0x3C, 0x1E, 0x00, 0x3F, 0x3F, 0xBD, 0xEE, 0xE7, 0xF3,
0xFB, 0xDF, 0xEF, 0xFF, 0xBF, 0x80, 0x3E, 0x3F, 0xBD, 0xDE, 0xF7, 0xFB, 0xFC, 0x1C, 0x3E, 0x7E,
0x3E, 0x00, 0x3E, 0x3F, 0xBD, 0xFE, 0x7E, 0x3F, 0x1F, 0xCF, 0xEF, 0x7F, 0x1F, 0x00, 0x1E, 0xFD,
0xFB, 0xF0, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, 0x7E, 0x7F, 0x9B, 0xC1, 0xE1, 0xF1, 0xF1, 0xF0, 0xF0,
0x7F, 0x7F, 0x80, 0x7E, 0xFF, 0x6F, 0x0F, 0x3E, 0x3F, 0x0F, 0x47, 0xFF, 0xFE, 0x0F, 0x0F, 0x87,
0xC7, 0xE7, 0x73, 0xBB, 0xFF, 0xFF, 0x07, 0x03, 0x80, 0x7F, 0x3F, 0x9C, 0x0E, 0x07, 0xE3, 0xF8,
0x3C, 0x8E, 0x7F, 0x7F, 0x00, 0x0F, 0x1F, 0x9F, 0x8F, 0x07, 0xF7, 0xFB, 0xDE, 0xEF, 0x7F, 0x1F,
0x00, 0xFF, 0xFF, 0xC3, 0xC1, 0xE1, 0xE0, 0xF0, 0x70, 0x78, 0x3C, 0x1E, 0x00, 0x3F, 0x3F, 0xBD,
0xEE, 0xE7, 0xF3, 0xFB, 0xDF, 0xEF, 0xFF, 0xBF, 0x80, 0x3E, 0x3F, 0xBD, 0xDE, 0xF7, 0xFB, 0xFC,
0x1C, 0x3E, 0x7E, 0x3E, 0x00, 0x7F, 0xF1, 0xEF, 0xFF, 0x3D, 0xFF, 0xE7, 0xBC, 0x1C, 0xF7, 0x93,
0xDE, 0xF7, 0x7B, 0xDE, 0xEF, 0x7B, 0xDD, 0xEF, 0x7B, 0xBD, 0xEF, 0x77, 0xBD, 0xEE, 0x6F, 0xBD,
0xC3, 0xF7, 0xBF, 0xFC, 0xF7, 0xFF, 0x9E, 0xFF, 0xC0, 0x07, 0xF8, 0x3F, 0xE1, 0xFF, 0x87, 0xC4,
0x3E, 0x00, 0xF0, 0x0F, 0xFE, 0x3F, 0xF8, 0x7C, 0x01, 0xF0, 0x0F, 0xFE, 0x3F, 0xF0, 0x3C, 0x00,
0xFC, 0xE1, 0xFF, 0x87, 0xFE, 0x07, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xE0, 0x07, 0xB0,
0x1F, 0xC0, 0x7F, 0x07, 0xF8, 0x3F, 0x80, 0xFF, 0xC1, 0x7F, 0x01, 0xFC, 0x3F, 0xC0, 0xFE, 0x01,
0xF8, 0x01, 0xE0, 0x07, 0x80, 0x1F, 0xE0, 0xFF, 0xC3, 0xFF, 0x06, 0x3E, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xC3, 0xF8, 0x1F, 0x83, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7C, 0x01, 0xF9, 0xC3, 0xFF, 0x8F,
0xFE, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xF8, 0x01, 0xE3, 0xFF, 0xEF, 0xFF, 0x80,
0xF8, 0x0F, 0xE3, 0xFF, 0x0F, 0xF8, 0x3F, 0xC0, 0xFC, 0x01, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07,
0xC0, 0x1F, 0xC0, 0x7F, 0xE0, 0x7F, 0xE0, 0xCF, 0xC0, 0x07, 0xC0, 0x07, 0x83, 0xFF, 0x0F, 0xFE,
0x3F, 0xFC, 0xFC, 0xF9, 0xE0, 0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x0F, 0x9F, 0x3E, 0x3F, 0xFC, 0x3F,
0xF0, 0x3F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF8, 0x03, 0xFE,
0x00, 0xF7, 0xC0, 0x7D, 0xF0, 0x1E, 0x3C, 0x07, 0x8F, 0x83, 0xE3, 0xE0, 0xF0, 0x7C, 0x7C, 0x1F,
0x1F, 0x03, 0xC7, 0xFF, 0xFB, 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0x81, 0xFF, 0x03, 0xFE, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81,
0xFF, 0x03, 0xFE, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81, 0xFF,
0x03, 0xE0, 0xFF, 0xFB, 0xFF, 0xEF, 0xFF, 0x9F, 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0,
0x0F, 0x80, 0x1F, 0x00, 0xFC, 0x03, 0xE0, 0x1F, 0x00, 0xFC, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x03,
0xFF, 0xEF, 0xFF, 0xBF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0x80,
0x3C, 0x01, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x03, 0xC0, 0x1E,
0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x01, 0xE0, 0x00, 0x3E, 0x3F, 0xBD, 0xFE, 0x7E, 0x3F,
0x1F, 0xCF, 0xEF, 0x7F, 0x1F, 0x00, 0x0F, 0x0F, 0x87, 0xC7, 0xE7, 0x73, 0xBB, 0xFF, 0xFF, 0x07,
0x03, 0x80, 0x7F, 0x3F, 0x9C, 0x0E, 0x07, 0xE3, 0xF8, 0x3C, 0x8E, 0x7F, 0x7F, 0x00, 0x0F, 0x1F,
0x9F, 0x8F, 0x07, 0xF7, 0xFB, 0xDE, 0xEF, 0x7F, 0x1F, 0x00, 0xFF, 0xFF, 0xC3, 0xC1, 0xE1, 0xE0,
0xF0, 0x70, 0x78, 0x3C, 0x1E, 0x00, 0x3F, 0x3F, 0xBD, 0xEE, 0xE7, 0xF3, 0xFB, 0xDF, 0xEF, 0xFF,
0xBF, 0x80, 0x3E, 0x3F, 0xBD, 0xDE, 0xF7, 0xFB, 0xFC, 0x1C, 0x3E, 0x7E, 0x3E, 0x00, 0x3E, 0x3F,
0xBD, 0xFE, 0x7E, 0x3F, 0x1F, 0xCF, 0xEF, 0x7F, 0x1F, 0x00, 0x1E, 0xFD, 0xFB, 0xF0, 0xE1, 0xC3,
0x87, 0x0E, 0x1C, 0x7E, 0x7F, 0x9B, 0xC1, 0xE1, 0xF1, 0xF1, 0xF0, 0xF0, 0x7F, 0x7F, 0x80, 0x7E,
0xFF, 0x6F, 0x0F, 0x3E, 0x3F, 0x0F, 0x47, 0xFF, 0xFE, 0x0F, 0x0F, 0x87, 0xC7, 0xE7, 0x73, 0xBB,
0xFF, 0xFF, 0x07, 0x03, 0x80, 0x7F, 0x3F, 0x9C, 0x0E, 0x07, 0xE3, 0xF8, 0x3C, 0x8E, 0x7F, 0x7F,
0x00, 0x0F, 0x1F, 0x9F, 0x8F, 0x07, 0xF7, 0xFB, 0xDE, 0xEF, 0x7F, 0x1F, 0x00, 0xFF, 0xFF, 0xC3,
0xC1, 0xE1, 0xE0, 0xF0, 0x70, 0x78, 0x3C, 0x1E, 0x00, 0x3F, 0x3F, 0xBD, 0xEE, 0xE7, 0xF3, 0xFB,
0xDF, 0xEF, 0xFF, 0xBF, 0x80, 0x3E, 0x3F, 0xBD, 0xDE, 0xF7, 0xFB, 0xFC, 0x1C, 0x3E, 0x7E, 0x3E,
0x00, 0x7F, 0xF1, 0xEF, 0xFF, 0x3D, 0xFF, 0xE7, 0xBC, 0x1C, 0xF7, 0x93, 0xDE, 0xF7, 0x7B, 0xDE,
0xEF, 0x7B, 0xDD, 0xEF, 0x7B, 0xBD, 0xEF, 0x77, 0xBD, 0xEE, 0x6F, 0xBD, 0xC3, 0xF7, 0xBF, 0xFC,
0xF7, 0xFF, 0x9E, 0xFF, 0xC0, 0x07, 0xF8, 0x3F, 0xE1, 0xFF, 0x87, 0xC4, 0x3E, 0x00, 0xF0, 0x0F,
0xFE, 0x3F, 0xF8, 0x7C, 0x01, 0xF0, 0x0F, 0xFE, 0x3F, 0xF0, 0x3C, 0x00, 0xFC, 0xE1, 0xFF, 0x87,
0xFE, 0x07, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xE0, 0x07, 0xB0, 0x1F, 0xC0, 0x7F, 0x07,
0xF8, 0x3F, 0x80, 0xFF, 0xC1, 0x7F, 0x01, 0xFC, 0x3F, 0xC0, 0xFE, 0x01, 0xF8, 0x01, 0xE0, 0x07,
0x80, 0x1F, 0xE0, 0xFF, 0xC3, 0xFF, 0x06, 0x3E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xF8, 0x1F,
0x83, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7C, 0x01, 0xF9, 0xC3, 0xFF, 0x8F, 0xFE, 0x0F, 0xF0, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xF8, 0x01, 0xE3, 0xFF, 0xEF, 0xFF, 0x80, 0xF8, 0x0F, 0xE3, 0xFF,
0x0F, 0xF8, 0x3F, 0xC0, 0xFC, 0x01, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, 0xC0, 0x7F,
0xE0, 0x7F, 0xE0, 0xCF, 0xC0, 0x07, 0xC0, 0x07, 0x83, 0xFF, 0x0F, 0xFE, 0x3F, 0xFC, 0xFC, 0xF9,
0xE0, 0xF3, 0xC1, 0xE7, 0x83, 0xCF, 0x0F, 0x9F, 0x3E, 0x3F, 0xFC, 0x3F, 0xF0, 0x3F, 0x80, 0x03,
0xE0, 0x00, 0xF8, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF8, 0x03, 0xFE, 0x00, 0xF7, 0xC0, 0x7D,
0xF0, 0x1E, 0x3C, 0x07, 0x8F, 0x83, 0xE3, 0xE0, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x03, 0xC7, 0xFF,
0xFB, 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0x03, 0xFE,
0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81, 0xFF, 0x03, 0xFE, 0x07,
0xFC, 0x0F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x7F, 0xC0, 0xFF, 0x81, 0xFF, 0x03, 0xE0, 0xFF, 0xFB,
0xFF, 0xEF, 0xFF, 0x9F, 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00,
0xFC, 0x03, 0xE0, 0x1F, 0x00, 0xFC, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x03, 0xFF, 0xEF, 0xFF, 0xBF,
0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, 0x07,
0x80, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x03, 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xC0,
0x0F, 0x00, 0x78, 0x01, 0xE0, 0x00, 0x79, 0xFF, 0xDF, 0x78, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x1E,
0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x1C, 0x78, 0x7E, 0x78, 0x7E, 0x78,
0x7F, 0xF0, 0x7F, 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xC0, 0x3E, 0x7C,
0x7F, 0xFE, 0x7F, 0xFE, 0xF7, 0xEE, 0xF7, 0xEE, 0x7F, 0xFE, 0x7F, 0xFE, 0x3E, 0x7C, 0x00, 0x01,
0xF0, 0xFC, 0x7F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81,
0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x3E, 0x3F, 0x8F, 0xC3, 0xE0, 0x00, 0x00, 0x3E, 0x1D,
0xFE, 0xF7, 0xFF, 0xBD, 0xFE, 0x71, 0xF0, 0x00, 0x03, 0xE1, 0xDF, 0xEF, 0x7F, 0xFB, 0xDF, 0xE7,
0x1F, 0x00, 0x00, 0xC0, 0x1E, 0x01, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0xF0, 0xFF, 0xFF,
0xFF, 0xFF, 0xF3, 0x80, 0x78, 0x03, 0x00, 0x01, 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0xC0,
0xFF, 0xEF, 0xFF, 0xFF, 0xF3, 0xFF, 0x01, 0xF0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x78, 0x0F,
0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xF0, 0x3F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x78, 0x00, 0x00,
0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x1F, 0xC7, 0xF1, 0xFE, 0x7F, 0x9F, 0xF3, 0xFC, 0xF9, 0x3F, 0x6F,
0x81, 0xE0, 0x7C, 0x0F, 0x03, 0xFE, 0x7F, 0xDF, 0xF3, 0xFE, 0xFF, 0x9F, 0xF7, 0xC0, 0xF0, 0x3E,
0x07, 0x81, 0xF0, 0x3C, 0x0F, 0x81, 0xE0, 0x7C, 0x0F, 0x03, 0xE0, 0x78, 0x1F, 0x03, 0xC0, 0xF8,
0x1E, 0x07, 0xC0, 0xF0, 0x3E, 0x07, 0x80, 0x1F, 0xDE, 0x3F, 0xDF, 0x7F, 0x9F, 0x7C, 0x9E, 0xF8,
0x00, 0xF8, 0x00, 0xFF, 0x9E, 0xFF, 0x9E, 0xFF, 0x9E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8,
0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0x1F, 0xDE, 0x0F,
0xF7, 0x87, 0xF9, 0xE1, 0xF2, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0xF9, 0xE3, 0xFE, 0x78, 0xFF,
0x9E, 0x3E, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0x81, 0xE3, 0xE0,
0x7C, 0xF8, 0x1F, 0xBE, 0x03, 0xEF, 0x80, 0x78, 0x1F, 0xC7, 0xF3, 0xCF, 0xF3, 0xFD, 0xF7, 0xFC,
0xFF, 0x7D, 0xF2, 0x7E, 0x8F, 0xF8, 0x1E, 0x00, 0x3E, 0x07, 0x80, 0x0F, 0xF9, 0xFF, 0x7F, 0xFE,
0x7F, 0xDF, 0xFF, 0x9F, 0xF7, 0xFE, 0x07, 0x81, 0xFF, 0x81, 0xE0, 0x7F, 0xE0, 0x78, 0x1F, 0xF8,
0x1E, 0x07, 0xFE, 0x07, 0x81, 0xFF, 0x81, 0xE0, 0x7F, 0xE0, 0x78, 0x1F, 0xF8, 0x1E, 0x07, 0xFE,
0x07, 0x81, 0xFF, 0x81, 0xE0, 0x7C, 0x1F, 0xC7, 0xF3, 0xC3, 0xFC, 0xFF, 0x7C, 0x7F, 0xCF, 0xF7,
0xC7, 0xC9, 0xFA, 0x7C, 0xF8, 0x1E, 0x07, 0xCF, 0x81, 0xE0, 0x7C, 0xFF, 0x9F, 0xF7, 0xCF, 0xF9,
0xFF, 0x7C, 0xFF, 0x9F, 0xF7, 0xCF, 0x81, 0xE0, 0x7C, 0xF8, 0x1E, 0x07, 0xCF, 0x81, 0xE0, 0x7C,
0xF8, 0x1E, 0x07, 0xCF, 0x81, 0xE0, 0x7C, 0xF8, 0x1E, 0x07, 0xCF, 0x81, 0xE0, 0x7E, 0xF8, 0x1E,
0x03, 0xFF, 0x81, 0xE0, 0x3F, 0xF8, 0x1E, 0x01, 0xE0,
0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x01, 0xE0, 0x00, 0x79, 0xFF, 0xDF, 0x78, 0x00, 0x0F,
0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, 0x1C, 0x78,
0x7E, 0x78, 0x7E, 0x78, 0x7F, 0xF0, 0x7F, 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x03, 0xE0,
0x03, 0xC0, 0x3E, 0x7C, 0x7F, 0xFE, 0x7F, 0xFE, 0xF7, 0xEE, 0xF7, 0xEE, 0x7F, 0xFE, 0x7F, 0xFE,
0x3E, 0x7C, 0x00, 0x01, 0xF0, 0xFC, 0x7F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0,
0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x3E, 0x3F, 0x8F, 0xC3, 0xE0,
0x00, 0x00, 0x3E, 0x1D, 0xFE, 0xF7, 0xFF, 0xBD, 0xFE, 0x71, 0xF0, 0x00, 0x03, 0xE1, 0xDF, 0xEF,
0x7F, 0xFB, 0xDF, 0xE7, 0x1F, 0x00, 0x00, 0xC0, 0x1E, 0x01, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07,
0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0x80, 0x78, 0x03, 0x00, 0x01, 0xF3, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xEF, 0xC0, 0xFF, 0xEF, 0xFF, 0xFF, 0xF3, 0xFF, 0x01, 0xF0, 0x00, 0xFF, 0xFF, 0xFF,
0xFF, 0xF0, 0x78, 0x0F, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xF0, 0x3F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF,
0xFC, 0x78, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x1F, 0xC7, 0xF1, 0xFE, 0x7F, 0x9F, 0xF3,
0xFC, 0xF9, 0x3F, 0x6F, 0x81, 0xE0, 0x7C, 0x0F, 0x03, 0xFE, 0x7F, 0xDF, 0xF3, 0xFE, 0xFF, 0x9F,
0xF7, 0xC0, 0xF0, 0x3E, 0x07, 0x81, 0xF0, 0x3C, 0x0F, 0x81, 0xE0, 0x7C, 0x0F, 0x03, 0xE0, 0x78,
0x1F, 0x03, 0xC0, 0xF8, 0x1E, 0x07, 0xC0, 0xF0, 0x3E, 0x07, 0x80, 0x1F, 0xDE, 0x3F, 0xDF, 0x7F,
0x9F, 0x7C, 0x9E, 0xF8, 0x00, 0xF8, 0x00, 0xFF, 0x9E, 0xFF, 0x9E, 0xFF, 0x9E, 0xF8, 0x1E, 0xF8,
0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xF8,
0x1E, 0x1F, 0xDE, 0x0F, 0xF7, 0x87, 0xF9, 0xE1, 0xF2, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x8F, 0xF9,
0xE3, 0xFE, 0x78, 0xFF, 0x9E, 0x3E, 0x07, 0x8F, 0x81, 0xE3, 0xE0, 0x78, 0xF8, 0x1E, 0x3E, 0x07,
0x8F, 0x81, 0xE3, 0xE0, 0x7C, 0xF8, 0x1F, 0xBE, 0x03, 0xEF, 0x80, 0x78, 0x1F, 0xC7, 0xF3, 0xCF,
0xF3, 0xFD, 0xF7, 0xFC, 0xFF, 0x7D, 0xF2, 0x7E, 0x8F, 0xF8, 0x1E, 0x00, 0x3E, 0x07, 0x80, 0x0F,
0xF9, 0xFF, 0x7F, 0xFE, 0x7F, 0xDF, 0xFF, 0x9F, 0xF7, 0xFE, 0x07, 0x81, 0xFF, 0x81, 0xE0, 0x7F,
0xE0, 0x78, 0x1F, 0xF8, 0x1E, 0x07, 0xFE, 0x07, 0x81, 0xFF, 0x81, 0xE0, 0x7F, 0xE0, 0x78, 0x1F,
0xF8, 0x1E, 0x07, 0xFE, 0x07, 0x81, 0xFF, 0x81, 0xE0, 0x7C, 0x1F, 0xC7, 0xF3, 0xC3, 0xFC, 0xFF,
0x7C, 0x7F, 0xCF, 0xF7, 0xC7, 0xC9, 0xFA, 0x7C, 0xF8, 0x1E, 0x07, 0xCF, 0x81, 0xE0, 0x7C, 0xFF,
0x9F, 0xF7, 0xCF, 0xF9, 0xFF, 0x7C, 0xFF, 0x9F, 0xF7, 0xCF, 0x81, 0xE0, 0x7C, 0xF8, 0x1E, 0x07,
0xCF, 0x81, 0xE0, 0x7C, 0xF8, 0x1E, 0x07, 0xCF, 0x81, 0xE0, 0x7C, 0xF8, 0x1E, 0x07, 0xCF, 0x81,
0xE0, 0x7E, 0xF8, 0x1E, 0x03, 0xFF, 0x81, 0xE0, 0x3F, 0xF8, 0x1E, 0x01, 0xE0,
};
static const EpdGlyph ubuntu_12_boldGlyphs[] = {
@@ -2202,71 +2460,159 @@ static const EpdGlyph ubuntu_12_boldGlyphs[] = {
{ 12, 15, 217, 0, 15, 23, 22698 }, // U+05E8
{ 18, 15, 315, 1, 15, 34, 22721 }, // U+05E9
{ 17, 15, 289, 0, 15, 32, 22755 }, // U+05EA
{ 17, 24, 264, 0, 24, 51, 22787 }, // U+1EF2
{ 14, 25, 219, 0, 20, 44, 22838 }, // U+1EF3
{ 2, 18, 0, -1, 17, 5, 22882 }, // U+200C
{ 6, 19, 0, -3, 18, 15, 22887 }, // U+200D
{ 7, 19, 0, -1, 18, 17, 22902 }, // U+200E
{ 7, 19, 0, -6, 18, 17, 22919 }, // U+200F
{ 8, 3, 128, 0, 8, 3, 22936 }, // U+2010
{ 13, 3, 200, 0, 9, 5, 22939 }, // U+2013
{ 25, 3, 400, 0, 9, 10, 22944 }, // U+2014
{ 25, 3, 400, 0, 9, 10, 22954 }, // U+2015
{ 5, 7, 97, 1, 19, 5, 22964 }, // U+2018
{ 6, 7, 97, 0, 19, 6, 22969 }, // U+2019
{ 6, 7, 97, 0, 4, 6, 22975 }, // U+201A
{ 10, 7, 182, 1, 19, 9, 22981 }, // U+201C
{ 11, 7, 182, 0, 19, 10, 22990 }, // U+201D
{ 11, 7, 182, 0, 4, 10, 23000 }, // U+201E
{ 12, 21, 198, 0, 17, 32, 23010 }, // U+2020
{ 12, 21, 198, 0, 17, 32, 23042 }, // U+2021
{ 9, 7, 146, 0, 12, 8, 23074 }, // U+2022
{ 23, 5, 400, 1, 5, 15, 23082 }, // U+2026
{ 33, 17, 528, 0, 17, 71, 23097 }, // U+2030
{ 8, 13, 131, 0, 14, 13, 23168 }, // U+2039
{ 8, 13, 131, 0, 14, 13, 23181 }, // U+203A
{ 14, 18, 61, -5, 18, 32, 23194 }, // U+2044
{ 9, 10, 145, 0, 18, 12, 23226 }, // U+2070
{ 9, 10, 145, 0, 18, 12, 23238 }, // U+2074
{ 9, 10, 145, 0, 18, 12, 23250 }, // U+2075
{ 9, 10, 145, 0, 18, 12, 23262 }, // U+2076
{ 9, 10, 145, 0, 18, 12, 23274 }, // U+2077
{ 9, 10, 145, 0, 18, 12, 23286 }, // U+2078
{ 9, 10, 145, 0, 18, 12, 23298 }, // U+2079
{ 9, 10, 145, 0, 11, 12, 23310 }, // U+2080
{ 7, 10, 145, 0, 11, 9, 23322 }, // U+2081
{ 9, 10, 145, 0, 11, 12, 23331 }, // U+2082
{ 8, 10, 145, 0, 11, 10, 23343 }, // U+2083
{ 9, 10, 145, 0, 11, 12, 23353 }, // U+2084
{ 9, 10, 145, 0, 11, 12, 23365 }, // U+2085
{ 9, 10, 145, 0, 11, 12, 23377 }, // U+2086
{ 9, 10, 145, 0, 11, 12, 23389 }, // U+2087
{ 9, 10, 145, 0, 11, 12, 23401 }, // U+2088
{ 9, 10, 145, 0, 11, 12, 23413 }, // U+2089
{ 19, 15, 346, 1, 15, 36, 23425 }, // U+20AA
{ 14, 17, 227, 1, 17, 30, 23461 }, // U+20AC
{ 14, 17, 227, 0, 17, 30, 23491 }, // U+20AE
{ 14, 17, 227, 0, 17, 30, 23521 }, // U+20B4
{ 14, 17, 227, 1, 17, 30, 23551 }, // U+20B9
{ 15, 18, 245, 0, 18, 34, 23581 }, // U+2202
{ 18, 17, 277, 0, 17, 39, 23615 }, // U+2206
{ 15, 21, 292, 2, 18, 40, 23654 }, // U+220F
{ 14, 20, 217, 0, 17, 35, 23694 }, // U+2211
{ 12, 3, 227, 1, 9, 5, 23729 }, // U+2212
{ 14, 18, 61, -5, 18, 32, 23734 }, // U+2215
{ 6, 5, 98, 0, 10, 4, 23766 }, // U+2219
{ 16, 18, 241, 0, 18, 36, 23770 }, // U+221A
{ 16, 8, 254, 0, 11, 16, 23806 }, // U+221E
{ 10, 25, 160, 0, 19, 32, 23822 }, // U+222B
{ 14, 11, 227, 0, 13, 20, 23854 }, // U+2248
{ 12, 14, 227, 1, 14, 21, 23874 }, // U+2260
{ 12, 15, 227, 1, 15, 23, 23895 }, // U+2264
{ 12, 15, 227, 1, 15, 23, 23918 }, // U+2265
{ 21, 19, 336, 1, 19, 50, 23941 }, // U+FB00
{ 16, 19, 283, 1, 19, 38, 23991 }, // U+FB01
{ 18, 19, 294, 1, 19, 43, 24029 }, // U+FB02
{ 26, 19, 451, 1, 19, 62, 24072 }, // U+FB03
{ 28, 19, 462, 1, 19, 67, 24134 }, // U+FB04
{ 18, 24, 288, 0, 18, 54, 22787 }, // U+1EA0
{ 13, 20, 221, 0, 14, 33, 22841 }, // U+1EA1
{ 18, 24, 288, 0, 24, 54, 22874 }, // U+1EA2
{ 13, 21, 221, 0, 20, 35, 22928 }, // U+1EA3
{ 18, 27, 288, 0, 27, 61, 22963 }, // U+1EA4
{ 15, 24, 221, 0, 23, 45, 23024 }, // U+1EA5
{ 18, 28, 288, 0, 28, 63, 23069 }, // U+1EA6
{ 13, 25, 221, 0, 24, 41, 23132 }, // U+1EA7
{ 18, 28, 288, 0, 28, 63, 23173 }, // U+1EA8
{ 14, 25, 221, 0, 24, 44, 23236 }, // U+1EA9
{ 18, 29, 288, 0, 29, 66, 23280 }, // U+1EAA
{ 13, 25, 221, 0, 24, 41, 23346 }, // U+1EAB
{ 18, 30, 288, 0, 24, 68, 23387 }, // U+1EAC
{ 13, 26, 221, 0, 20, 43, 23455 }, // U+1EAD
{ 18, 29, 288, 0, 29, 66, 23498 }, // U+1EAE
{ 13, 26, 221, 0, 25, 43, 23564 }, // U+1EAF
{ 18, 29, 288, 0, 29, 66, 23607 }, // U+1EB0
{ 13, 26, 221, 0, 25, 43, 23673 }, // U+1EB1
{ 18, 30, 288, 0, 30, 68, 23716 }, // U+1EB2
{ 13, 27, 221, 0, 26, 44, 23784 }, // U+1EB3
{ 18, 28, 288, 0, 28, 63, 23828 }, // U+1EB4
{ 13, 25, 221, 0, 24, 41, 23891 }, // U+1EB5
{ 18, 29, 288, 0, 23, 66, 23932 }, // U+1EB6
{ 13, 26, 221, 0, 20, 43, 23998 }, // U+1EB7
{ 13, 24, 242, 2, 18, 39, 24041 }, // U+1EB8
{ 13, 20, 234, 1, 14, 33, 24080 }, // U+1EB9
{ 13, 24, 242, 2, 24, 39, 24113 }, // U+1EBA
{ 13, 21, 234, 1, 20, 35, 24152 }, // U+1EBB
{ 13, 24, 242, 2, 24, 39, 24187 }, // U+1EBC
{ 13, 20, 234, 1, 19, 33, 24226 }, // U+1EBD
{ 14, 28, 242, 2, 28, 49, 24259 }, // U+1EBE
{ 15, 24, 234, 1, 23, 45, 24308 }, // U+1EBF
{ 13, 28, 242, 2, 28, 46, 24353 }, // U+1EC0
{ 13, 24, 234, 1, 23, 39, 24399 }, // U+1EC1
{ 14, 28, 242, 2, 28, 49, 24438 }, // U+1EC2
{ 14, 24, 234, 1, 23, 42, 24487 }, // U+1EC3
{ 13, 29, 242, 2, 29, 48, 24529 }, // U+1EC4
{ 13, 25, 234, 1, 24, 41, 24577 }, // U+1EC5
{ 13, 30, 242, 2, 24, 49, 24618 }, // U+1EC6
{ 13, 26, 234, 1, 20, 43, 24667 }, // U+1EC7
{ 6, 24, 126, 1, 24, 18, 24710 }, // U+1EC8
{ 7, 20, 116, 0, 20, 18, 24728 }, // U+1EC9
{ 5, 24, 126, 1, 18, 15, 24746 }, // U+1ECA
{ 5, 26, 116, 1, 20, 17, 24761 }, // U+1ECB
{ 18, 24, 316, 1, 18, 54, 24778 }, // U+1ECC
{ 14, 20, 243, 1, 14, 35, 24832 }, // U+1ECD
{ 18, 25, 316, 1, 24, 57, 24867 }, // U+1ECE
{ 14, 21, 243, 1, 20, 37, 24924 }, // U+1ECF
{ 18, 29, 316, 1, 28, 66, 24961 }, // U+1ED0
{ 15, 24, 243, 1, 23, 45, 25027 }, // U+1ED1
{ 18, 29, 316, 1, 28, 66, 25072 }, // U+1ED2
{ 14, 25, 243, 1, 24, 44, 25138 }, // U+1ED3
{ 18, 29, 316, 1, 28, 66, 25182 }, // U+1ED4
{ 14, 25, 243, 1, 24, 44, 25248 }, // U+1ED5
{ 18, 30, 316, 1, 29, 68, 25292 }, // U+1ED6
{ 14, 25, 243, 1, 24, 44, 25360 }, // U+1ED7
{ 18, 30, 316, 1, 24, 68, 25404 }, // U+1ED8
{ 14, 26, 243, 1, 20, 46, 25472 }, // U+1ED9
{ 18, 25, 316, 1, 24, 57, 25518 }, // U+1EDA
{ 15, 21, 243, 1, 20, 40, 25575 }, // U+1EDB
{ 18, 25, 316, 1, 24, 57, 25615 }, // U+1EDC
{ 15, 21, 243, 1, 20, 40, 25672 }, // U+1EDD
{ 18, 25, 316, 1, 24, 57, 25712 }, // U+1EDE
{ 15, 21, 243, 1, 20, 40, 25769 }, // U+1EDF
{ 18, 24, 316, 1, 23, 54, 25809 }, // U+1EE0
{ 15, 20, 243, 1, 19, 38, 25863 }, // U+1EE1
{ 18, 27, 316, 1, 21, 61, 25901 }, // U+1EE2
{ 15, 22, 243, 1, 16, 42, 25962 }, // U+1EE3
{ 15, 24, 283, 1, 18, 45, 26004 }, // U+1EE4
{ 12, 20, 236, 1, 14, 30, 26049 }, // U+1EE5
{ 15, 25, 283, 1, 24, 47, 26079 }, // U+1EE6
{ 12, 21, 236, 1, 20, 32, 26126 }, // U+1EE7
{ 18, 25, 299, 1, 24, 57, 26158 }, // U+1EE8
{ 15, 21, 250, 1, 20, 40, 26215 }, // U+1EE9
{ 18, 25, 299, 1, 24, 57, 26255 }, // U+1EEA
{ 15, 21, 250, 1, 20, 40, 26312 }, // U+1EEB
{ 18, 25, 299, 1, 24, 57, 26352 }, // U+1EEC
{ 15, 21, 250, 1, 20, 40, 26409 }, // U+1EED
{ 18, 24, 299, 1, 23, 54, 26449 }, // U+1EEE
{ 15, 20, 250, 1, 19, 38, 26503 }, // U+1EEF
{ 18, 27, 299, 1, 21, 61, 26541 }, // U+1EF0
{ 15, 22, 250, 1, 16, 42, 26602 }, // U+1EF1
{ 17, 24, 264, 0, 24, 51, 26644 }, // U+1EF2
{ 14, 25, 219, 0, 20, 44, 26695 }, // U+1EF3
{ 17, 24, 264, 0, 18, 51, 26739 }, // U+1EF4
{ 15, 19, 219, 0, 14, 36, 26790 }, // U+1EF5
{ 17, 24, 264, 0, 24, 51, 26826 }, // U+1EF6
{ 14, 25, 219, 0, 20, 44, 26877 }, // U+1EF7
{ 17, 24, 264, 0, 24, 51, 26921 }, // U+1EF8
{ 14, 24, 219, 0, 19, 42, 26972 }, // U+1EF9
{ 2, 18, 0, -1, 17, 5, 27014 }, // U+200C
{ 6, 19, 0, -3, 18, 15, 27019 }, // U+200D
{ 7, 19, 0, -1, 18, 17, 27034 }, // U+200E
{ 7, 19, 0, -6, 18, 17, 27051 }, // U+200F
{ 8, 3, 128, 0, 8, 3, 27068 }, // U+2010
{ 13, 3, 200, 0, 9, 5, 27071 }, // U+2013
{ 25, 3, 400, 0, 9, 10, 27076 }, // U+2014
{ 25, 3, 400, 0, 9, 10, 27086 }, // U+2015
{ 5, 7, 97, 1, 19, 5, 27096 }, // U+2018
{ 6, 7, 97, 0, 19, 6, 27101 }, // U+2019
{ 6, 7, 97, 0, 4, 6, 27107 }, // U+201A
{ 10, 7, 182, 1, 19, 9, 27113 }, // U+201C
{ 11, 7, 182, 0, 19, 10, 27122 }, // U+201D
{ 11, 7, 182, 0, 4, 10, 27132 }, // U+201E
{ 12, 21, 198, 0, 17, 32, 27142 }, // U+2020
{ 12, 21, 198, 0, 17, 32, 27174 }, // U+2021
{ 9, 7, 146, 0, 12, 8, 27206 }, // U+2022
{ 23, 5, 400, 1, 5, 15, 27214 }, // U+2026
{ 33, 17, 528, 0, 17, 71, 27229 }, // U+2030
{ 8, 13, 131, 0, 14, 13, 27300 }, // U+2039
{ 8, 13, 131, 0, 14, 13, 27313 }, // U+203A
{ 14, 18, 61, -5, 18, 32, 27326 }, // U+2044
{ 9, 10, 145, 0, 18, 12, 27358 }, // U+2070
{ 9, 10, 145, 0, 18, 12, 27370 }, // U+2074
{ 9, 10, 145, 0, 18, 12, 27382 }, // U+2075
{ 9, 10, 145, 0, 18, 12, 27394 }, // U+2076
{ 9, 10, 145, 0, 18, 12, 27406 }, // U+2077
{ 9, 10, 145, 0, 18, 12, 27418 }, // U+2078
{ 9, 10, 145, 0, 18, 12, 27430 }, // U+2079
{ 9, 10, 145, 0, 11, 12, 27442 }, // U+2080
{ 7, 10, 145, 0, 11, 9, 27454 }, // U+2081
{ 9, 10, 145, 0, 11, 12, 27463 }, // U+2082
{ 8, 10, 145, 0, 11, 10, 27475 }, // U+2083
{ 9, 10, 145, 0, 11, 12, 27485 }, // U+2084
{ 9, 10, 145, 0, 11, 12, 27497 }, // U+2085
{ 9, 10, 145, 0, 11, 12, 27509 }, // U+2086
{ 9, 10, 145, 0, 11, 12, 27521 }, // U+2087
{ 9, 10, 145, 0, 11, 12, 27533 }, // U+2088
{ 9, 10, 145, 0, 11, 12, 27545 }, // U+2089
{ 19, 15, 346, 1, 15, 36, 27557 }, // U+20AA
{ 14, 17, 227, 1, 17, 30, 27593 }, // U+20AC
{ 14, 17, 227, 0, 17, 30, 27623 }, // U+20AE
{ 14, 17, 227, 0, 17, 30, 27653 }, // U+20B4
{ 14, 17, 227, 1, 17, 30, 27683 }, // U+20B9
{ 15, 18, 245, 0, 18, 34, 27713 }, // U+2202
{ 18, 17, 277, 0, 17, 39, 27747 }, // U+2206
{ 15, 21, 292, 2, 18, 40, 27786 }, // U+220F
{ 14, 20, 217, 0, 17, 35, 27826 }, // U+2211
{ 12, 3, 227, 1, 9, 5, 27861 }, // U+2212
{ 14, 18, 61, -5, 18, 32, 27866 }, // U+2215
{ 6, 5, 98, 0, 10, 4, 27898 }, // U+2219
{ 16, 18, 241, 0, 18, 36, 27902 }, // U+221A
{ 16, 8, 254, 0, 11, 16, 27938 }, // U+221E
{ 10, 25, 160, 0, 19, 32, 27954 }, // U+222B
{ 14, 11, 227, 0, 13, 20, 27986 }, // U+2248
{ 12, 14, 227, 1, 14, 21, 28006 }, // U+2260
{ 12, 15, 227, 1, 15, 23, 28027 }, // U+2264
{ 12, 15, 227, 1, 15, 23, 28050 }, // U+2265
{ 21, 19, 336, 1, 19, 50, 28073 }, // U+FB00
{ 16, 19, 283, 1, 19, 38, 28123 }, // U+FB01
{ 18, 19, 294, 1, 19, 43, 28161 }, // U+FB02
{ 26, 19, 451, 1, 19, 62, 28204 }, // U+FB03
{ 28, 19, 462, 1, 19, 67, 28266 }, // U+FB04
};
static const EpdUnicodeInterval ubuntu_12_boldIntervals[] = {
@@ -2291,36 +2637,36 @@ static const EpdUnicodeInterval ubuntu_12_boldIntervals[] = {
{ 0x472, 0x475, 0x216 },
{ 0x48A, 0x4F9, 0x21A },
{ 0x5D0, 0x5EA, 0x28A },
{ 0x1EF2, 0x1EF3, 0x2A5 },
{ 0x200C, 0x2010, 0x2A7 },
{ 0x2013, 0x2015, 0x2AC },
{ 0x2018, 0x201A, 0x2AF },
{ 0x201C, 0x201E, 0x2B2 },
{ 0x2020, 0x2022, 0x2B5 },
{ 0x2026, 0x2026, 0x2B8 },
{ 0x2030, 0x2030, 0x2B9 },
{ 0x2039, 0x203A, 0x2BA },
{ 0x2044, 0x2044, 0x2BC },
{ 0x2070, 0x2070, 0x2BD },
{ 0x2074, 0x2079, 0x2BE },
{ 0x2080, 0x2089, 0x2C4 },
{ 0x20AA, 0x20AA, 0x2CE },
{ 0x20AC, 0x20AC, 0x2CF },
{ 0x20AE, 0x20AE, 0x2D0 },
{ 0x20B4, 0x20B4, 0x2D1 },
{ 0x20B9, 0x20B9, 0x2D2 },
{ 0x2202, 0x2202, 0x2D3 },
{ 0x2206, 0x2206, 0x2D4 },
{ 0x220F, 0x220F, 0x2D5 },
{ 0x2211, 0x2212, 0x2D6 },
{ 0x2215, 0x2215, 0x2D8 },
{ 0x2219, 0x221A, 0x2D9 },
{ 0x221E, 0x221E, 0x2DB },
{ 0x222B, 0x222B, 0x2DC },
{ 0x2248, 0x2248, 0x2DD },
{ 0x2260, 0x2260, 0x2DE },
{ 0x2264, 0x2265, 0x2DF },
{ 0xFB00, 0xFB04, 0x2E1 },
{ 0x1EA0, 0x1EF9, 0x2A5 },
{ 0x200C, 0x2010, 0x2FF },
{ 0x2013, 0x2015, 0x304 },
{ 0x2018, 0x201A, 0x307 },
{ 0x201C, 0x201E, 0x30A },
{ 0x2020, 0x2022, 0x30D },
{ 0x2026, 0x2026, 0x310 },
{ 0x2030, 0x2030, 0x311 },
{ 0x2039, 0x203A, 0x312 },
{ 0x2044, 0x2044, 0x314 },
{ 0x2070, 0x2070, 0x315 },
{ 0x2074, 0x2079, 0x316 },
{ 0x2080, 0x2089, 0x31C },
{ 0x20AA, 0x20AA, 0x326 },
{ 0x20AC, 0x20AC, 0x327 },
{ 0x20AE, 0x20AE, 0x328 },
{ 0x20B4, 0x20B4, 0x329 },
{ 0x20B9, 0x20B9, 0x32A },
{ 0x2202, 0x2202, 0x32B },
{ 0x2206, 0x2206, 0x32C },
{ 0x220F, 0x220F, 0x32D },
{ 0x2211, 0x2212, 0x32E },
{ 0x2215, 0x2215, 0x330 },
{ 0x2219, 0x221A, 0x331 },
{ 0x221E, 0x221E, 0x333 },
{ 0x222B, 0x222B, 0x334 },
{ 0x2248, 0x2248, 0x335 },
{ 0x2260, 0x2260, 0x336 },
{ 0x2264, 0x2265, 0x337 },
{ 0xFB00, 0xFB04, 0x339 },
};
static const EpdKernClassEntry ubuntu_12_boldKernLeftClasses[] = {
+496 -177
View File
@@ -3,12 +3,12 @@
* name: ubuntu_12_regular
* size: 12
* mode: 1-bit
* Command used: fontconvert.py ubuntu_12_regular 12 ../builtinFonts/source/Ubuntu/Ubuntu-Regular.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Regular.ttf --additional-intervals 0x05D0,0x05EA
* Command used: fontconvert.py ubuntu_12_regular 12 ../builtinFonts/source/Ubuntu/Ubuntu-Regular.ttf ../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-Regular.ttf ../builtinFonts/source/Ubuntu/Ubuntu-Vietnamese-Regular.ttf --additional-intervals 0x05D0,0x05EA
*/
#pragma once
#include "EpdFontData.h"
static const uint8_t ubuntu_12_regularBitmaps[22033] = {
static const uint8_t ubuntu_12_regularBitmaps[25740] = {
0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE0, 0x01, 0xDE, 0x70, 0xF7, 0xF7, 0xF7, 0x67, 0x67,
0x67, 0x0E, 0x18, 0x1C, 0x70, 0x38, 0xE0, 0x71, 0xC0, 0xC3, 0x9F, 0xFF, 0xFF, 0xFF, 0x8E, 0x38,
0x1C, 0x70, 0x30, 0xE3, 0xFF, 0xFF, 0xFF, 0xF3, 0x8E, 0x07, 0x1C, 0x0E, 0x38, 0x38, 0x60, 0x71,
@@ -1307,86 +1307,317 @@ static const uint8_t ubuntu_12_regularBitmaps[22033] = {
0xC7, 0xE3, 0xC7, 0xE3, 0x87, 0xE3, 0x87, 0xEF, 0x87, 0xFF, 0x07, 0xFE, 0x07, 0x70, 0x07, 0x70,
0x0E, 0x78, 0x1E, 0x3C, 0x3C, 0x1F, 0xF8, 0x0F, 0xF0, 0x7F, 0xFC, 0x7F, 0xFE, 0x1C, 0x1E, 0x1C,
0x0F, 0x1C, 0x07, 0x1C, 0x07, 0x1C, 0x07, 0x1C, 0x07, 0x1C, 0x07, 0x1C, 0x07, 0x1C, 0x07, 0x1C,
0x07, 0x1C, 0x07, 0x7C, 0x07, 0x78, 0x07, 0x06, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x18,
0x00, 0x00, 0x00, 0x00, 0x78, 0x0F, 0x70, 0x1C, 0xF0, 0x78, 0xE0, 0xE1, 0xE3, 0xC1, 0xEF, 0x01,
0xDC, 0x03, 0xF8, 0x03, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70,
0x00, 0xE0, 0x01, 0xC0, 0x0C, 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0xE0, 0x7F, 0x07, 0x70, 0x77, 0x0E, 0x78, 0xE3, 0x8E, 0x38, 0xC1, 0xDC, 0x1D, 0xC1, 0xF8, 0x0F,
0x80, 0xF8, 0x07, 0x00, 0x70, 0x07, 0x09, 0xE0, 0xFC, 0x0F, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC,
0x87, 0x37, 0x8C, 0x7B, 0xF3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x00, 0x00,
0x30, 0x37, 0xEC, 0xDB, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06,
0x00, 0x00, 0x61, 0x83, 0xF6, 0x66, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06,
0x0C, 0x18, 0x30, 0xFF, 0xFF, 0x7F, 0xFD, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF0,
0x7F, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF0, 0x33, 0x9D, 0xEE, 0x70, 0x7B, 0xDC, 0xE7, 0x30, 0x7B,
0xDC, 0xE7, 0x30, 0x33, 0xB9, 0xDD, 0xDE, 0xEE, 0x77, 0x38, 0x7B, 0xBD, 0xDC, 0xEE, 0x77, 0x73,
0x38, 0x7B, 0xBD, 0xDC, 0xEE, 0x77, 0x73, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0xFF,
0xDF, 0xF8, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00,
0xC0, 0x18, 0x03, 0x00, 0x60, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0xFF, 0xDF, 0xF8, 0x30,
0x06, 0x00, 0xC0, 0x18, 0x03, 0x07, 0xFE, 0xFF, 0xC1, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03,
0x00, 0x60, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, 0x80, 0xF0, 0x70, 0x77, 0x87, 0x83, 0xFC, 0x1C, 0x1C,
0x3E, 0x07, 0x00, 0x03, 0xF8, 0x70, 0x00, 0x3D, 0xC3, 0x80, 0x01, 0xC6, 0x38, 0x00, 0x0E, 0x3B,
0xC0, 0x00, 0x71, 0xDC, 0x00, 0x03, 0x8D, 0xC0, 0x00, 0x1E, 0xEE, 0xF8, 0x7C, 0x7F, 0xEF, 0xE7,
0xF1, 0xF7, 0xF7, 0x3B, 0x80, 0x77, 0x1B, 0x8E, 0x07, 0xB8, 0xFC, 0x70, 0x39, 0xC7, 0xE3, 0x83,
0x8E, 0x37, 0x1C, 0x1C, 0x7B, 0x9D, 0xC1, 0xC1, 0xFC, 0xFE, 0x0E, 0x07, 0xC3, 0xE0, 0x0C, 0x38,
0xF1, 0xC7, 0x8E, 0x1E, 0x1C, 0x3C, 0x38, 0x30, 0xC3, 0x87, 0x1E, 0x38, 0xF3, 0x9E, 0x73, 0x8C,
0x00, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x07, 0x00,
0x38, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x00, 0x3E, 0x3F, 0x9D,
0xDC, 0x6E, 0x3F, 0x1F, 0x8C, 0xEE, 0x7F, 0x1F, 0x00, 0x07, 0x07, 0x87, 0xC7, 0xE7, 0x73, 0x3B,
0xFF, 0xFF, 0x07, 0x03, 0x80, 0x7E, 0xFD, 0x87, 0xEF, 0xE3, 0xC1, 0xE7, 0xFF, 0xF8, 0x0F, 0x1F,
0x9F, 0x0F, 0xC7, 0xF3, 0xB9, 0x8E, 0xEE, 0x7F, 0x1F, 0x00, 0x7F, 0x3F, 0x81, 0xC1, 0xC0, 0xE0,
0xE0, 0x70, 0x30, 0x38, 0x1C, 0x00, 0x3E, 0x3F, 0x9D, 0xCE, 0xE7, 0xE3, 0xF9, 0x8D, 0xEE, 0x7F,
0x1F, 0x00, 0x3E, 0x3F, 0x9D, 0xDC, 0x67, 0xF1, 0xF8, 0x1C, 0x3E, 0x7E, 0x3C, 0x00, 0x3E, 0x3F,
0x9D, 0xDC, 0x6E, 0x3F, 0x1F, 0x8C, 0xEE, 0x7F, 0x1F, 0x00, 0x3B, 0xFF, 0xF1, 0x8C, 0x63, 0x18,
0xC0, 0x7E, 0x7F, 0x67, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0x7F, 0x7F, 0x7E, 0x7E, 0x6F, 0x3E, 0x3E,
0x0F, 0x07, 0x67, 0x7F, 0x7E, 0x07, 0x07, 0x87, 0xC7, 0xE7, 0x73, 0x3B, 0xFF, 0xFF, 0x07, 0x03,
0x80, 0x7E, 0xFD, 0x87, 0xEF, 0xE3, 0xC1, 0xE7, 0xFF, 0xF8, 0x0F, 0x1F, 0x9F, 0x0F, 0xC7, 0xF3,
0xB9, 0x8E, 0xEE, 0x7F, 0x1F, 0x00, 0x7F, 0x3F, 0x81, 0xC1, 0xC0, 0xE0, 0xE0, 0x70, 0x30, 0x38,
0x1C, 0x00, 0x3E, 0x3F, 0x9D, 0xCE, 0xE7, 0xE3, 0xF9, 0x8D, 0xEE, 0x7F, 0x1F, 0x00, 0x3E, 0x3F,
0x9D, 0xDC, 0x67, 0xF1, 0xF8, 0x1C, 0x3E, 0x7E, 0x3C, 0x00, 0xFF, 0xC7, 0xFF, 0xE7, 0xE0, 0xE7,
0xE0, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67,
0xE6, 0x07, 0xE6, 0x1F, 0xE7, 0xFE, 0xE7, 0xFC, 0x07, 0xF8, 0x7F, 0x87, 0xCC, 0x38, 0x03, 0x80,
0x7F, 0xF3, 0xFF, 0x87, 0x00, 0x38, 0x07, 0xFE, 0x3F, 0xF0, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x7C,
0x61, 0xFF, 0x07, 0xF8, 0xFF, 0xFF, 0xFF, 0xC1, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0xF0, 0x1F, 0x83,
0xF0, 0x7F, 0x03, 0xF8, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x3F, 0x81, 0xFC, 0x00, 0xE0, 0x07, 0x00,
0x1F, 0xC0, 0x7F, 0xC1, 0x8F, 0x00, 0x1C, 0x00, 0x71, 0xFF, 0xF7, 0xFF, 0xC0, 0xF8, 0x07, 0xC0,
0x7C, 0x07, 0xFF, 0xDF, 0xFF, 0x38, 0x00, 0xE0, 0x03, 0xC7, 0x0F, 0xFE, 0x0F, 0xF0, 0xFF, 0xFF,
0xFF, 0xC0, 0xF0, 0x03, 0x8F, 0xFF, 0x7F, 0xF8, 0x07, 0x00, 0xF8, 0xFF, 0x87, 0xF0, 0x1E, 0x00,
0x78, 0x01, 0xC0, 0x07, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x7F, 0x83, 0xFE, 0x18, 0xF8, 0x01,
0xE0, 0x07, 0x00, 0x38, 0x01, 0xC3, 0xFF, 0x3F, 0xFB, 0xE7, 0xFC, 0x1F, 0xC0, 0xFE, 0x07, 0x70,
0x3B, 0x81, 0xDC, 0x1C, 0xFB, 0xE3, 0xFE, 0x0F, 0xE0, 0x03, 0xC0, 0x01, 0xE0, 0x01, 0xF8, 0x00,
0xFC, 0x00, 0x67, 0x00, 0x73, 0x80, 0x38, 0xE0, 0x38, 0x70, 0x1C, 0x38, 0x1C, 0x0E, 0x0E, 0x07,
0x07, 0x03, 0xC7, 0x00, 0xE3, 0x80, 0x71, 0xC0, 0x3D, 0xFF, 0xFE, 0xFF, 0xFF, 0x00, 0xFF, 0xFF,
0xFF, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE,
0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8,
0x0F, 0xFF, 0xFF, 0xFF, 0xDC, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x07, 0x80,
0x1C, 0x01, 0xE0, 0x1E, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3F, 0xFF,
0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x0E,
0x00, 0x70, 0x07, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x70,
0x00, 0xFF, 0xF0, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xE0, 0x01, 0x80, 0x07, 0x00, 0x0E,
0x00, 0x1C, 0x00, 0x30, 0x00, 0xE1, 0xE1, 0xC7, 0xC3, 0x0F, 0xCE, 0x03, 0x9C, 0x03, 0xB8, 0x07,
0x60, 0x07, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0xF9, 0xFF, 0xF7, 0x7D, 0xF8, 0xE3,
0x77, 0xDD, 0xFF, 0xF3, 0xEF, 0x80, 0x07, 0x83, 0xE0, 0xF0, 0x78, 0x1C, 0x07, 0x01, 0xC0, 0x70,
0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C,
0x1F, 0x0F, 0x83, 0xC0, 0x7C, 0x3F, 0xF7, 0xEF, 0xFC, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x3F, 0xF7,
0xEF, 0xFC, 0x3E, 0x00, 0xC0, 0x1C, 0x01, 0xCF, 0xFF, 0xFF, 0xF0, 0x70, 0x07, 0x00, 0xE0, 0xFF,
0xFF, 0xFF, 0x38, 0x03, 0x80, 0x30, 0x00, 0x00, 0x70, 0x1F, 0x0F, 0xE3, 0xF8, 0xFC, 0x0F, 0x00,
0xFC, 0x03, 0xF8, 0x0F, 0xE0, 0x1F, 0x00, 0x70, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0xE0, 0x0F,
0x80, 0x7F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0x03, 0xF0, 0xFC, 0x7F, 0x0F, 0x80, 0xE0, 0x00, 0x00,
0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0x1F, 0xDF, 0xCF, 0xFF, 0x33, 0xCB, 0x80, 0xE0, 0xE0, 0x78,
0x38, 0x1C, 0x0F, 0xF7, 0xFB, 0xFD, 0xFE, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0,
0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x00,
0x3F, 0x03, 0xFB, 0xFC, 0x9F, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0xFD, 0xDF, 0xEE, 0xE0, 0x77, 0x03,
0xB8, 0x1D, 0xC0, 0xEE, 0x07, 0x70, 0x3B, 0x81, 0xDC, 0x0E, 0xE0, 0x77, 0x03, 0xB8, 0x1C, 0x3F,
0x71, 0xFD, 0xCF, 0x27, 0x38, 0x1C, 0xE0, 0x73, 0x81, 0xCF, 0xF7, 0x3F, 0xDC, 0xE0, 0x73, 0x81,
0xCE, 0x07, 0x38, 0x1C, 0xE0, 0x73, 0x81, 0xCE, 0x07, 0x38, 0x1C, 0xE0, 0x7B, 0x80, 0xFE, 0x01,
0xC0, 0x3F, 0x1F, 0x80, 0xFE, 0x7F, 0x3B, 0xCC, 0xF2, 0x77, 0x01, 0xC0, 0x0E, 0x07, 0x80, 0x1C,
0x0E, 0x00, 0x3F, 0xDF, 0xE7, 0x7F, 0xBF, 0xCE, 0xE0, 0x70, 0x1D, 0xC0, 0xE0, 0x3B, 0x81, 0xC0,
0x77, 0x03, 0x80, 0xEE, 0x07, 0x01, 0xDC, 0x0E, 0x03, 0xB8, 0x1C, 0x07, 0x70, 0x38, 0x0E, 0xE0,
0x70, 0x1D, 0xC0, 0xE0, 0x3B, 0x81, 0xC0, 0x70, 0x3F, 0x1F, 0x9C, 0x7F, 0x3F, 0x9C, 0xF3, 0x3C,
0x9C, 0xE0, 0x38, 0x1C, 0xE0, 0x78, 0x1C, 0xE0, 0x70, 0x1C, 0xFF, 0x7F, 0x9C, 0xFF, 0x7F, 0x9C,
0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0,
0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1E, 0xE0, 0x70, 0x0F, 0xE0, 0x70,
0x0F,
0x07, 0x1C, 0x07, 0x7C, 0x07, 0x78, 0x07, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x7C, 0x00,
0x7F, 0x00, 0x3B, 0x80, 0x39, 0xC0, 0x1C, 0x70, 0x1E, 0x38, 0x0E, 0x1E, 0x07, 0x07, 0x07, 0xFF,
0x83, 0xFF, 0xE3, 0xFF, 0xF1, 0xC0, 0x38, 0xE0, 0x1E, 0xF0, 0x07, 0x70, 0x03, 0xC0, 0x00, 0x00,
0x30, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x1E, 0x0F, 0xF1, 0xFF, 0x00, 0xE0, 0x1C, 0x01,
0xCF, 0xFB, 0xFF, 0xF1, 0xFC, 0x1F, 0x83, 0xF0, 0x7F, 0xFE, 0xFF, 0xC3, 0xC0, 0x20, 0x0E, 0x01,
0xC0, 0x38, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0C, 0x00,
0x07, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xFC, 0x00, 0xEE, 0x00, 0xE7, 0x00, 0x71,
0xC0, 0x78, 0xE0, 0x38, 0x78, 0x1C, 0x1C, 0x1F, 0xFE, 0x0F, 0xFF, 0x8F, 0xFF, 0xC7, 0x00, 0xE3,
0x80, 0x7B, 0xC0, 0x1D, 0xC0, 0x0F, 0x1E, 0x03, 0xE0, 0x1C, 0x07, 0x80, 0xE0, 0x3C, 0x1F, 0xE3,
0xFE, 0x01, 0xC0, 0x38, 0x03, 0x9F, 0xF7, 0xFF, 0xE3, 0xF8, 0x3F, 0x07, 0xE0, 0xFF, 0xFD, 0xFF,
0x87, 0x80, 0x00, 0x06, 0x00, 0x07, 0x80, 0x03, 0x80, 0x33, 0x80, 0x3D, 0x80, 0x3F, 0x00, 0x1D,
0xC0, 0x08, 0x40, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x7F, 0x00, 0x3B, 0x80,
0x39, 0xC0, 0x1C, 0x70, 0x1E, 0x38, 0x0E, 0x1E, 0x07, 0x07, 0x07, 0xFF, 0x83, 0xFF, 0xE3, 0xFF,
0xF1, 0xC0, 0x38, 0xE0, 0x1E, 0xF0, 0x07, 0x70, 0x03, 0xC0, 0x00, 0x00, 0x01, 0x80, 0x1E, 0x00,
0xE0, 0xEE, 0x0F, 0xE0, 0xFE, 0x07, 0x70, 0x10, 0x00, 0xF0, 0x1F, 0xE0, 0xFF, 0x80, 0x1C, 0x00,
0xE0, 0x03, 0x87, 0xFC, 0x7F, 0xE7, 0x8F, 0x38, 0x39, 0xC1, 0xCE, 0x0E, 0x7F, 0xF1, 0xFF, 0x81,
0xE0, 0x00, 0x60, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x37, 0x00, 0x3D, 0x80, 0x3F, 0x00, 0x1D, 0xC0,
0x08, 0x40, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x7F, 0x00, 0x3B, 0x80, 0x39,
0xC0, 0x1C, 0x70, 0x1E, 0x38, 0x0E, 0x1E, 0x07, 0x07, 0x07, 0xFF, 0x83, 0xFF, 0xE3, 0xFF, 0xF1,
0xC0, 0x38, 0xE0, 0x1E, 0xF0, 0x07, 0x70, 0x03, 0xC0, 0x00, 0x00, 0x60, 0x1E, 0x01, 0xE0, 0xFC,
0x3F, 0x8F, 0xE1, 0xDC, 0x10, 0x03, 0xC1, 0xFE, 0x3F, 0xE0, 0x1C, 0x03, 0x80, 0x39, 0xFF, 0x7F,
0xFE, 0x3F, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0xDF, 0xF8, 0x78, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x0F,
0x80, 0x03, 0x80, 0x19, 0x80, 0x1E, 0xC0, 0x1F, 0x80, 0x0E, 0xE0, 0x04, 0x20, 0x00, 0xE0, 0x00,
0xF0, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x80, 0x1D, 0xC0, 0x1C, 0xE0, 0x0E, 0x38, 0x0F, 0x1C,
0x07, 0x0F, 0x03, 0x83, 0x83, 0xFF, 0xC1, 0xFF, 0xF1, 0xFF, 0xF8, 0xE0, 0x1C, 0x70, 0x0F, 0x78,
0x03, 0xB8, 0x01, 0xE0, 0x01, 0xC0, 0x1F, 0x01, 0xF0, 0x0F, 0x0E, 0xE1, 0xFC, 0x3F, 0x83, 0xB8,
0x10, 0x01, 0xE0, 0x7F, 0x87, 0xFC, 0x01, 0xC0, 0x1C, 0x00, 0xE3, 0xFE, 0x7F, 0xEF, 0x1E, 0xE0,
0xEE, 0x0E, 0xE0, 0xEF, 0xFE, 0x7F, 0xE0, 0xF0, 0x07, 0xB8, 0x07, 0xF8, 0x03, 0xFC, 0x00, 0x00,
0x00, 0x18, 0x00, 0x1E, 0x00, 0x1F, 0x80, 0x0E, 0xE0, 0x04, 0x20, 0x00, 0xE0, 0x00, 0xF0, 0x00,
0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x80, 0x1D, 0xC0, 0x1C, 0xE0, 0x0E, 0x38, 0x0F, 0x1C, 0x07, 0x0F,
0x03, 0x83, 0x83, 0xFF, 0xC1, 0xFF, 0xF1, 0xFF, 0xF8, 0xE0, 0x1C, 0x70, 0x0F, 0x78, 0x03, 0xB8,
0x01, 0xE0, 0x1C, 0xC7, 0xF9, 0xFE, 0x00, 0x00, 0xE0, 0x3E, 0x0F, 0xE1, 0xDC, 0x10, 0x03, 0xC1,
0xFE, 0x3F, 0xE0, 0x1C, 0x03, 0x80, 0x39, 0xFF, 0x7F, 0xFE, 0x3F, 0x83, 0xF0, 0x7E, 0x0F, 0xFF,
0xDF, 0xF8, 0x78, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x77, 0x00, 0x21, 0x00,
0x07, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xFC, 0x00, 0xEE, 0x00, 0xE7, 0x00, 0x71,
0xC0, 0x78, 0xE0, 0x38, 0x78, 0x1C, 0x1C, 0x1F, 0xFE, 0x0F, 0xFF, 0x8F, 0xFF, 0xC7, 0x00, 0xE3,
0x80, 0x7B, 0xC0, 0x1D, 0xC0, 0x0F, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C,
0x00, 0x00, 0x01, 0xC0, 0x7C, 0x1F, 0xC3, 0xB8, 0x20, 0x07, 0x83, 0xFC, 0x7F, 0xC0, 0x38, 0x07,
0x00, 0x73, 0xFE, 0xFF, 0xFC, 0x7F, 0x07, 0xE0, 0xFC, 0x1F, 0xFF, 0xBF, 0xF0, 0xF0, 0x08, 0x03,
0x80, 0x70, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x35,
0x80, 0x19, 0xC0, 0x0F, 0xC0, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x70, 0x00, 0x78, 0x00, 0x3E, 0x00,
0x1F, 0x00, 0x1F, 0xC0, 0x0E, 0xE0, 0x0E, 0x70, 0x07, 0x1C, 0x07, 0x8E, 0x03, 0x87, 0x81, 0xC1,
0xC1, 0xFF, 0xE0, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0x0E, 0x38, 0x07, 0xBC, 0x01, 0xDC, 0x00, 0xF0,
0x00, 0x00, 0x70, 0x0E, 0x03, 0x80, 0xE0, 0x6B, 0x0E, 0xE0, 0xFC, 0x0F, 0x00, 0x00, 0x78, 0x3F,
0xC7, 0xFC, 0x03, 0x80, 0x70, 0x07, 0x3F, 0xEF, 0xFF, 0xC7, 0xF0, 0x7E, 0x0F, 0xC1, 0xFF, 0xFB,
0xFF, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x35, 0x80,
0x19, 0xC0, 0x0F, 0xC0, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x70, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x1F,
0x00, 0x1F, 0xC0, 0x0E, 0xE0, 0x0E, 0x70, 0x07, 0x1C, 0x07, 0x8E, 0x03, 0x87, 0x81, 0xC1, 0xC1,
0xFF, 0xE0, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0x0E, 0x38, 0x07, 0xBC, 0x01, 0xDC, 0x00, 0xF0, 0x00,
0x07, 0x00, 0xF0, 0x0E, 0x00, 0xE0, 0x6B, 0x0E, 0xE0, 0xFC, 0x0F, 0x00, 0x00, 0x78, 0x3F, 0xC7,
0xFC, 0x03, 0x80, 0x70, 0x07, 0x3F, 0xEF, 0xFF, 0xC7, 0xF0, 0x7E, 0x0F, 0xC1, 0xFF, 0xFB, 0xFF,
0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7B, 0x00, 0x33, 0x80, 0x1F,
0x80, 0x07, 0x80, 0x00, 0x00, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x80,
0x1D, 0xC0, 0x1C, 0xE0, 0x0E, 0x38, 0x0F, 0x1C, 0x07, 0x0F, 0x03, 0x83, 0x83, 0xFF, 0xC1, 0xFF,
0xF1, 0xFF, 0xF8, 0xE0, 0x1C, 0x70, 0x0F, 0x78, 0x03, 0xB8, 0x01, 0xE0, 0x04, 0x03, 0xE0, 0x7C,
0x03, 0x80, 0xE0, 0x7B, 0x0E, 0xE0, 0xFC, 0x0F, 0x00, 0x00, 0x78, 0x3F, 0xC7, 0xFC, 0x03, 0x80,
0x70, 0x07, 0x3F, 0xEF, 0xFF, 0xC7, 0xF0, 0x7E, 0x0F, 0xC1, 0xFF, 0xFB, 0xFF, 0x0F, 0x00, 0x00,
0x00, 0x03, 0xFC, 0x03, 0xFC, 0x01, 0x9C, 0x00, 0x63, 0x00, 0x33, 0x80, 0x1F, 0x80, 0x07, 0x80,
0x00, 0x00, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x80, 0x1D, 0xC0, 0x1C,
0xE0, 0x0E, 0x38, 0x0F, 0x1C, 0x07, 0x0F, 0x03, 0x83, 0x83, 0xFF, 0xC1, 0xFF, 0xF1, 0xFF, 0xF8,
0xE0, 0x1C, 0x70, 0x0F, 0x78, 0x03, 0xB8, 0x01, 0xE0, 0x18, 0x87, 0xF9, 0xFE, 0x11, 0x83, 0x18,
0x77, 0x07, 0xE0, 0x78, 0x00, 0x03, 0xC1, 0xFE, 0x3F, 0xE0, 0x1C, 0x03, 0x80, 0x39, 0xFF, 0x7F,
0xFE, 0x3F, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0xDF, 0xF8, 0x78, 0x06, 0x30, 0x03, 0x38, 0x01, 0xF8,
0x00, 0x78, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x03, 0xF8, 0x01,
0xDC, 0x01, 0xCE, 0x00, 0xE3, 0x80, 0xF1, 0xC0, 0x70, 0xF0, 0x38, 0x38, 0x3F, 0xFC, 0x1F, 0xFF,
0x1F, 0xFF, 0x8E, 0x01, 0xC7, 0x00, 0xF7, 0x80, 0x3B, 0x80, 0x1E, 0x00, 0x00, 0x01, 0x80, 0x00,
0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x31, 0x87, 0x70, 0xFE, 0x07, 0x80, 0x00, 0x3C, 0x1F, 0xE3,
0xFE, 0x01, 0xC0, 0x38, 0x03, 0x9F, 0xF7, 0xFF, 0xE3, 0xF8, 0x3F, 0x07, 0xE0, 0xFF, 0xFD, 0xFF,
0x87, 0x80, 0x40, 0x1C, 0x03, 0x80, 0x70, 0xFF, 0xEF, 0xFE, 0xFF, 0xEE, 0x00, 0xE0, 0x0E, 0x00,
0xE0, 0x0E, 0x00, 0xFF, 0xCF, 0xFC, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xFF,
0xFF, 0xFF, 0x00, 0x00, 0xC0, 0x1E, 0x01, 0xE0, 0x0C, 0x00, 0x07, 0x01, 0xFC, 0x3F, 0xE7, 0x8E,
0xF0, 0xFE, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xEE, 0x00, 0xF0, 0x07, 0x82, 0x3F, 0xE1, 0xFE, 0x07,
0x80, 0x60, 0x0F, 0x00, 0xF0, 0x06, 0x00, 0x04, 0x01, 0xF0, 0x1F, 0x00, 0x70, 0x0E, 0x00, 0x60,
0xFF, 0xEF, 0xFE, 0xFF, 0xEE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xFF, 0xCF, 0xFC, 0xE0,
0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xFF, 0xFF, 0xFF, 0x1F, 0x01, 0xF8, 0x03, 0x80,
0x70, 0x06, 0x00, 0x70, 0x1F, 0xC3, 0xFE, 0x78, 0xEF, 0x0F, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE,
0xE0, 0x0F, 0x00, 0x78, 0x23, 0xFE, 0x1F, 0xE0, 0x78, 0x1C, 0xC3, 0xFC, 0x7F, 0x80, 0x00, 0x00,
0x0F, 0xFE, 0xFF, 0xEF, 0xFE, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0F, 0xFC, 0xFF, 0xCE,
0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x08, 0x03, 0xFC, 0x3F,
0xC3, 0x38, 0x00, 0x00, 0x70, 0x1F, 0xC3, 0xFE, 0x78, 0xEF, 0x0F, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF,
0xFE, 0xE0, 0x0F, 0x00, 0x78, 0x23, 0xFE, 0x1F, 0xE0, 0x78, 0x00, 0x30, 0x03, 0xC0, 0x1C, 0x1D,
0xC1, 0xFC, 0x1F, 0x80, 0xEE, 0x06, 0x20, 0xFF, 0xE7, 0xFF, 0x3F, 0xF9, 0xC0, 0x0E, 0x00, 0x70,
0x03, 0x80, 0x1C, 0x00, 0xFF, 0xC7, 0xFE, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C,
0x00, 0xFF, 0xF7, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x60, 0x03, 0x80, 0x1C, 0x06, 0xE0, 0x3D, 0x01,
0xF8, 0x06, 0x70, 0x10, 0x80, 0x1C, 0x01, 0xFC, 0x0F, 0xF8, 0x78, 0xE3, 0xC3, 0xCE, 0x07, 0x3F,
0xFC, 0xFF, 0xF3, 0xFF, 0x8E, 0x00, 0x3C, 0x00, 0x78, 0x20, 0xFF, 0x81, 0xFE, 0x01, 0xE0, 0x03,
0x00, 0x78, 0x03, 0x80, 0xFC, 0x1E, 0xC3, 0xF0, 0x3B, 0x83, 0x10, 0xFF, 0xEF, 0xFE, 0xFF, 0xEE,
0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xFF, 0xCF, 0xFC, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00,
0xE0, 0x0E, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x06, 0xE0, 0xF4, 0x1F,
0x81, 0x9C, 0x10, 0x80, 0x70, 0x1F, 0xC3, 0xFE, 0x78, 0xEF, 0x0F, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF,
0xFE, 0xE0, 0x0F, 0x00, 0x78, 0x23, 0xFE, 0x1F, 0xE0, 0x78, 0x00, 0x00, 0x3E, 0x01, 0xF0, 0x0F,
0x0E, 0xE1, 0xEC, 0x3F, 0x03, 0xB8, 0x31, 0x0F, 0xFE, 0xFF, 0xEF, 0xFE, 0xE0, 0x0E, 0x00, 0xE0,
0x0E, 0x00, 0xE0, 0x0F, 0xFC, 0xFF, 0xCE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0F,
0xFF, 0xFF, 0xF0, 0x00, 0xE0, 0x07, 0x80, 0x2E, 0x00, 0xF0, 0x66, 0x07, 0xB0, 0x7E, 0x03, 0x38,
0x10, 0x80, 0x38, 0x07, 0xF0, 0x7F, 0xC7, 0x8E, 0x78, 0x7B, 0x81, 0xDF, 0xFE, 0xFF, 0xF7, 0xFF,
0x38, 0x01, 0xE0, 0x07, 0x82, 0x1F, 0xF0, 0x7F, 0x80, 0xF0, 0x3C, 0xC7, 0xFC, 0x7F, 0x80, 0x00,
0x0E, 0x01, 0xE0, 0x3F, 0x03, 0xB8, 0x31, 0x0F, 0xFE, 0xFF, 0xEF, 0xFE, 0xE0, 0x0E, 0x00, 0xE0,
0x0E, 0x00, 0xE0, 0x0F, 0xFC, 0xFF, 0xCE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0F,
0xFF, 0xFF, 0xF0, 0x00, 0x01, 0xEC, 0x3F, 0xC3, 0x38, 0x00, 0x00, 0x60, 0x0F, 0x01, 0xF8, 0x19,
0xC1, 0x08, 0x07, 0x01, 0xFC, 0x3F, 0xE7, 0x8E, 0xF0, 0xFE, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xEE,
0x00, 0xF0, 0x07, 0x82, 0x3F, 0xE1, 0xFE, 0x07, 0x80, 0x00, 0x00, 0xE0, 0x1E, 0x03, 0xF0, 0x3B,
0x83, 0x10, 0xFF, 0xEF, 0xFE, 0xFF, 0xEE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xFF, 0xCF,
0xFC, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xC0,
0x1E, 0x01, 0xE0, 0x0C, 0x00, 0x00, 0x00, 0x60, 0x0F, 0x01, 0xF8, 0x19, 0xC1, 0x08, 0x07, 0x01,
0xFC, 0x3F, 0xE7, 0x8E, 0xF0, 0xFE, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xEE, 0x00, 0xF0, 0x07, 0x82,
0x3F, 0xE1, 0xFE, 0x07, 0x80, 0x60, 0x0F, 0x00, 0xF0, 0x06, 0x00, 0x07, 0xBE, 0x77, 0x31, 0xCE,
0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0xF7, 0xCE, 0xF6, 0x01, 0xCE, 0x73,
0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x06,
0x77, 0x70, 0x6F, 0xF6, 0x00, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x70, 0x6F, 0xF6, 0x03, 0xF0,
0x07, 0xFE, 0x07, 0xFF, 0x87, 0x83, 0xE7, 0x80, 0x73, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x07, 0xE0,
0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFE, 0x00, 0x77, 0x00, 0x3B, 0x80, 0x3D, 0xE0, 0x3C, 0x7C, 0x3C,
0x1F, 0xFE, 0x07, 0xFC, 0x00, 0x78, 0x00, 0x18, 0x00, 0x1C, 0x00, 0x0F, 0x00, 0x07, 0x00, 0x07,
0x00, 0xFE, 0x0F, 0xF8, 0xF1, 0xEF, 0x07, 0x70, 0x3F, 0x80, 0xFC, 0x07, 0xE0, 0x3F, 0x03, 0xFC,
0x1C, 0xF1, 0xE3, 0xFE, 0x0F, 0xE0, 0x1C, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x00, 0x00,
0x01, 0xF0, 0x00, 0xF8, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0F, 0xC0, 0x1F, 0xF8, 0x1F,
0xFE, 0x1E, 0x0F, 0x9E, 0x01, 0xCE, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0x80, 0x0F, 0xC0, 0x07,
0xE0, 0x03, 0xF8, 0x01, 0xDC, 0x00, 0xEE, 0x00, 0xF7, 0x80, 0xF1, 0xF0, 0xF0, 0x7F, 0xF8, 0x1F,
0xF0, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x7C, 0x00, 0xE0, 0x0F, 0x00, 0x60, 0x03, 0x80, 0x7F, 0x07,
0xFC, 0x78, 0xF7, 0x83, 0xB8, 0x1F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x81, 0xFE, 0x0E, 0x78, 0xF1,
0xFF, 0x07, 0xF0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0xC0, 0x01, 0xC0, 0x0D, 0xC0,
0x0F, 0xC0, 0x0F, 0xC0, 0x0E, 0xE0, 0x02, 0x10, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1,
0xF3, 0xC0, 0x39, 0xC0, 0x1F, 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7F,
0x00, 0x3B, 0x80, 0x1D, 0xC0, 0x1E, 0xF0, 0x1E, 0x3E, 0x1E, 0x0F, 0xFF, 0x03, 0xFE, 0x00, 0x3C,
0x00, 0x00, 0x00, 0x00, 0x60, 0x03, 0x80, 0x1E, 0x07, 0xF0, 0x3F, 0x81, 0xF8, 0x07, 0x70, 0x00,
0x80, 0x1C, 0x01, 0xFC, 0x0F, 0xF8, 0x78, 0xF3, 0xC1, 0xCE, 0x07, 0xB8, 0x0E, 0xE0, 0x3B, 0x80,
0xEE, 0x07, 0xBC, 0x1C, 0x78, 0xF0, 0xFF, 0x81, 0xFC, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x30, 0x00,
0x3C, 0x00, 0x0F, 0x00, 0x0F, 0x80, 0x0F, 0xC0, 0x0F, 0xC0, 0x0E, 0xE0, 0x02, 0x10, 0x01, 0xF8,
0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1, 0xF3, 0xC0, 0x39, 0xC0, 0x1F, 0xE0, 0x07, 0xF0, 0x03, 0xF0,
0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x3B, 0x80, 0x1D, 0xC0, 0x1E, 0xF0, 0x1E, 0x3E, 0x1E,
0x0F, 0xFF, 0x03, 0xFE, 0x00, 0x3C, 0x00, 0x01, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0xC0, 0x7E, 0x07,
0xC0, 0x7E, 0x03, 0xB8, 0x00, 0x80, 0x38, 0x07, 0xF0, 0x7F, 0xC7, 0x8F, 0x78, 0x3B, 0x81, 0xFC,
0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x1F, 0xE0, 0xE7, 0x8F, 0x1F, 0xF0, 0x7F, 0x00, 0xE0, 0x00, 0x18,
0x00, 0x1F, 0x00, 0x0F, 0x80, 0x03, 0xC0, 0x0D, 0xC0, 0x0F, 0xC0, 0x0F, 0xC0, 0x0E, 0xE0, 0x02,
0x10, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1, 0xF3, 0xC0, 0x39, 0xC0, 0x1F, 0xE0, 0x07,
0xF0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x3B, 0x80, 0x1D, 0xC0, 0x1E, 0xF0,
0x1E, 0x3E, 0x1E, 0x0F, 0xFF, 0x03, 0xFE, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x07, 0xC0, 0x1E, 0x0E,
0xE0, 0xFE, 0x0F, 0xC0, 0x77, 0x00, 0x10, 0x07, 0x00, 0xFE, 0x0F, 0xF8, 0xF1, 0xEF, 0x07, 0x70,
0x3F, 0x80, 0xFC, 0x07, 0xE0, 0x3F, 0x03, 0xFC, 0x1C, 0xF1, 0xE3, 0xFE, 0x0F, 0xE0, 0x1C, 0x00,
0x01, 0x10, 0x03, 0xFC, 0x03, 0xFC, 0x00, 0x8C, 0x00, 0x0C, 0x00, 0x0F, 0x00, 0x0F, 0xC0, 0x0E,
0xE0, 0x02, 0x10, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1, 0xF3, 0xC0, 0x39, 0xC0, 0x1F,
0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x3B, 0x80, 0x1D, 0xC0,
0x1E, 0xF0, 0x1E, 0x3E, 0x1E, 0x0F, 0xFF, 0x03, 0xFE, 0x00, 0x3C, 0x00, 0x0C, 0x40, 0xFF, 0x0F,
0xF0, 0x20, 0x00, 0x70, 0x07, 0xC0, 0x7E, 0x03, 0xB8, 0x00, 0x80, 0x38, 0x07, 0xF0, 0x7F, 0xC7,
0x8F, 0x78, 0x3B, 0x81, 0xFC, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x1F, 0xE0, 0xE7, 0x8F, 0x1F, 0xF0,
0x7F, 0x00, 0xE0, 0x00, 0x80, 0x00, 0xE0, 0x00, 0xF8, 0x00, 0xFE, 0x00, 0x73, 0x00, 0x00, 0x00,
0x0F, 0xC0, 0x1F, 0xF8, 0x1F, 0xFE, 0x1E, 0x0F, 0x9E, 0x01, 0xCE, 0x00, 0xFF, 0x00, 0x3F, 0x80,
0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF8, 0x01, 0xDC, 0x00, 0xEE, 0x00, 0xF7, 0x80, 0xF1,
0xF0, 0xF0, 0x7F, 0xF8, 0x1F, 0xF0, 0x01, 0xE0, 0x00, 0x60, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x1C,
0x00, 0x00, 0x00, 0x38, 0x03, 0xE0, 0x3F, 0x01, 0xDC, 0x00, 0x40, 0x1C, 0x03, 0xF8, 0x3F, 0xE3,
0xC7, 0xBC, 0x1D, 0xC0, 0xFE, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x0F, 0xF0, 0x73, 0xC7, 0x8F, 0xF8,
0x3F, 0x80, 0x70, 0x03, 0x00, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x0F,
0x00, 0x07, 0x80, 0x01, 0xC3, 0x80, 0x20, 0xE0, 0x3F, 0x38, 0x3F, 0xFE, 0x1F, 0xFF, 0x0F, 0x07,
0xC7, 0x80, 0x71, 0xC0, 0x1E, 0xF0, 0x03, 0xBC, 0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x03,
0xBC, 0x00, 0xE7, 0x00, 0x39, 0xC0, 0x1E, 0x78, 0x0F, 0x0F, 0x87, 0x81, 0xFF, 0xE0, 0x3F, 0xE0,
0x01, 0xE0, 0x00, 0x00, 0x00, 0x06, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x1C, 0x10, 0x70, 0x71, 0xC7,
0xFE, 0x3F, 0xF9, 0xE3, 0xCF, 0x07, 0x38, 0x1E, 0xE0, 0x3B, 0x80, 0xEE, 0x03, 0xB8, 0x1E, 0xF0,
0x71, 0xE3, 0xC3, 0xFE, 0x07, 0xF0, 0x07, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07,
0x00, 0x00, 0xE3, 0x80, 0x10, 0xE0, 0x3F, 0x38, 0x3F, 0xFE, 0x1F, 0xFF, 0x0F, 0x07, 0xC7, 0x80,
0x71, 0xC0, 0x1E, 0xF0, 0x03, 0xBC, 0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x03, 0xBC, 0x00,
0xE7, 0x00, 0x39, 0xC0, 0x1E, 0x78, 0x0F, 0x0F, 0x87, 0x81, 0xFF, 0xE0, 0x3F, 0xE0, 0x01, 0xE0,
0x00, 0x08, 0x00, 0x70, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x1C, 0x08, 0x70, 0x71, 0xC7, 0xFE, 0x3F,
0xF9, 0xE3, 0xCF, 0x07, 0x38, 0x1E, 0xE0, 0x3B, 0x80, 0xEE, 0x03, 0xB8, 0x1E, 0xF0, 0x71, 0xE3,
0xC3, 0xFE, 0x07, 0xF0, 0x07, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x03, 0x80, 0x01,
0xE3, 0x80, 0x70, 0xE0, 0x3F, 0x38, 0x3F, 0xFE, 0x1F, 0xFF, 0x0F, 0x07, 0xC7, 0x80, 0x71, 0xC0,
0x1E, 0xF0, 0x03, 0xBC, 0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x03, 0xBC, 0x00, 0xE7, 0x00,
0x39, 0xC0, 0x1E, 0x78, 0x0F, 0x0F, 0x87, 0x81, 0xFF, 0xE0, 0x3F, 0xE0, 0x01, 0xE0, 0x00, 0x0F,
0x00, 0x3E, 0x00, 0x38, 0x01, 0xE7, 0x06, 0x1C, 0x1C, 0x71, 0xFF, 0x8F, 0xFE, 0x78, 0xF3, 0xC1,
0xCE, 0x07, 0xB8, 0x0E, 0xE0, 0x3B, 0x80, 0xEE, 0x07, 0xBC, 0x1C, 0x78, 0xF0, 0xFF, 0x81, 0xFC,
0x01, 0xC0, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x11, 0xCE, 0x00, 0x03, 0x80, 0xFC, 0xE0,
0xFF, 0xF8, 0x7F, 0xFC, 0x3C, 0x1F, 0x1E, 0x01, 0xC7, 0x00, 0x7B, 0xC0, 0x0E, 0xF0, 0x03, 0xB8,
0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xF0, 0x03, 0x9C, 0x00, 0xE7, 0x00, 0x79, 0xE0, 0x3C, 0x3E,
0x1E, 0x07, 0xFF, 0x80, 0xFF, 0x80, 0x07, 0x80, 0x00, 0x40, 0x7F, 0x83, 0xFC, 0x0C, 0x67, 0x00,
0x1C, 0x1C, 0x71, 0xFF, 0x8F, 0xFE, 0x78, 0xF3, 0xC1, 0xCE, 0x07, 0xB8, 0x0E, 0xE0, 0x3B, 0x80,
0xEE, 0x07, 0xBC, 0x1C, 0x78, 0xF0, 0xFF, 0x81, 0xFC, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xE0,
0x00, 0x38, 0x0F, 0xCE, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xC1, 0xF1, 0xE0, 0x1C, 0x70, 0x07, 0xBC,
0x00, 0xEF, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x03, 0xB8, 0x00, 0xEF, 0x00, 0x39, 0xC0, 0x0E, 0x70,
0x07, 0x9E, 0x03, 0xC3, 0xE1, 0xE0, 0x7F, 0xF8, 0x0F, 0xF8, 0x00, 0x78, 0x00, 0x0C, 0x00, 0x07,
0x00, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x00, 0x1C, 0x00, 0x70, 0x71, 0xC7, 0xFE, 0x3F, 0xF9, 0xE3,
0xCF, 0x07, 0x38, 0x1E, 0xE0, 0x3B, 0x80, 0xEE, 0x03, 0xB8, 0x1E, 0xF0, 0x71, 0xE3, 0xC3, 0xFE,
0x07, 0xF0, 0x07, 0x00, 0x18, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0xE0, 0x1B, 0x80, 0xFE, 0x03,
0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F,
0xE0, 0x3B, 0x80, 0xEF, 0x03, 0x9E, 0x3E, 0x7F, 0xF0, 0xFF, 0x80, 0x78, 0x00, 0xC0, 0x07, 0x00,
0x1C, 0x00, 0x70, 0x00, 0xF0, 0x7F, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7F, 0x07,
0x70, 0x77, 0x07, 0x78, 0x73, 0xFF, 0x3F, 0xF0, 0x78, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x00,
0x00, 0x3E, 0x00, 0xF8, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x0E, 0x01, 0xB8, 0x0F, 0xE0, 0x3F, 0x80,
0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03,
0xB8, 0x0E, 0xF0, 0x39, 0xE3, 0xE7, 0xFF, 0x0F, 0xF8, 0x07, 0x80, 0x0F, 0x00, 0xF8, 0x03, 0x80,
0x70, 0x06, 0x00, 0x00, 0xF0, 0x7F, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7F, 0x07,
0x70, 0x77, 0x07, 0x78, 0x73, 0xFF, 0x3F, 0xF0, 0x78, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xF0, 0x00,
0xF0, 0x00, 0x70, 0x38, 0x30, 0x1F, 0x80, 0x7D, 0xC0, 0x7E, 0xE0, 0x3C, 0x70, 0x1E, 0x38, 0x0F,
0x1C, 0x07, 0x8E, 0x03, 0xC7, 0x01, 0xE3, 0x80, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0x70, 0x1E, 0x38,
0x0E, 0x1C, 0x07, 0x0F, 0x03, 0x83, 0xC7, 0xC1, 0xFF, 0xC0, 0x7F, 0xC0, 0x07, 0x80, 0x00, 0x01,
0x00, 0x07, 0x00, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0xE0, 0x81, 0xC0, 0x07, 0xF8, 0x3E, 0xF0, 0x79,
0xE0, 0xE3, 0xC1, 0xC7, 0x83, 0x8F, 0x07, 0x1E, 0x0E, 0x3C, 0x1C, 0x38, 0x38, 0x70, 0x70, 0xF0,
0xE0, 0xFF, 0xC1, 0xFF, 0x80, 0x78, 0x00, 0x00, 0x00, 0x06, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00,
0x70, 0x38, 0x08, 0x1F, 0x80, 0x7D, 0xC0, 0x7E, 0xE0, 0x3C, 0x70, 0x1E, 0x38, 0x0F, 0x1C, 0x07,
0x8E, 0x03, 0xC7, 0x01, 0xE3, 0x80, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0x70, 0x1E, 0x38, 0x0E, 0x1C,
0x07, 0x0F, 0x03, 0x83, 0xC7, 0xC1, 0xFF, 0xC0, 0x7F, 0xC0, 0x07, 0x80, 0x00, 0x08, 0x00, 0x38,
0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0xE0, 0x41, 0xC0, 0x07, 0xF8, 0x3E, 0xF0, 0x79, 0xE0, 0xE3,
0xC1, 0xC7, 0x83, 0x8F, 0x07, 0x1E, 0x0E, 0x3C, 0x1C, 0x38, 0x38, 0x70, 0x70, 0xF0, 0xE0, 0xFF,
0xC1, 0xFF, 0x80, 0x78, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0x70, 0x00, 0x78, 0x38,
0x38, 0x1F, 0x80, 0x7D, 0xC0, 0x7E, 0xE0, 0x3C, 0x70, 0x1E, 0x38, 0x0F, 0x1C, 0x07, 0x8E, 0x03,
0xC7, 0x01, 0xE3, 0x80, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0x70, 0x1E, 0x38, 0x0E, 0x1C, 0x07, 0x0F,
0x03, 0x83, 0xC7, 0xC1, 0xFF, 0xC0, 0x7F, 0xC0, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x1F, 0x00, 0x0E,
0x00, 0x38, 0x70, 0x60, 0xE0, 0x03, 0xFC, 0x1F, 0x78, 0x3C, 0xF0, 0x71, 0xE0, 0xE3, 0xC1, 0xC7,
0x83, 0x8F, 0x07, 0x1E, 0x0E, 0x1C, 0x1C, 0x38, 0x38, 0x78, 0x70, 0x7F, 0xE0, 0xFF, 0xC0, 0x3C,
0x00, 0x00, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x02, 0x30, 0x70, 0x00, 0x3F, 0x00, 0xFB, 0x80, 0xFD,
0xC0, 0x78, 0xE0, 0x3C, 0x70, 0x1E, 0x38, 0x0F, 0x1C, 0x07, 0x8E, 0x03, 0xC7, 0x01, 0xE3, 0x80,
0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0x70, 0x1C, 0x38, 0x0E, 0x1E, 0x07, 0x07, 0x8F, 0x83, 0xFF, 0x80,
0xFF, 0x80, 0x0F, 0x00, 0x08, 0x40, 0x3F, 0x80, 0xFF, 0x01, 0x9C, 0x70, 0x00, 0xE0, 0x03, 0xFC,
0x1F, 0x78, 0x3C, 0xF0, 0x71, 0xE0, 0xE3, 0xC1, 0xC7, 0x83, 0x8F, 0x07, 0x1E, 0x0E, 0x1C, 0x1C,
0x38, 0x38, 0x78, 0x70, 0x7F, 0xE0, 0xFF, 0xC0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x00,
0xFC, 0x03, 0xEE, 0x03, 0xF7, 0x01, 0xE3, 0x80, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0x70, 0x1E, 0x38,
0x0F, 0x1C, 0x07, 0x8E, 0x03, 0xC7, 0x01, 0xE3, 0x80, 0xF1, 0xC0, 0x70, 0xE0, 0x38, 0x78, 0x1C,
0x1E, 0x3E, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0x3C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03,
0x80, 0x00, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x7F, 0x83, 0xEF, 0x07, 0x9E, 0x0E, 0x3C, 0x1C, 0x78,
0x38, 0xF0, 0x71, 0xE0, 0xE3, 0xC1, 0xC3, 0x83, 0x87, 0x07, 0x0F, 0x0E, 0x0F, 0xFC, 0x1F, 0xF8,
0x07, 0x80, 0x0C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x60, 0x00, 0x06, 0x00, 0x1E, 0x00, 0x1C, 0x00,
0x1C, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0F, 0x70, 0x1C, 0xF0, 0x78, 0xE0, 0xE1, 0xE3,
0xC1, 0xEF, 0x01, 0xDC, 0x03, 0xF8, 0x03, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00,
0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x0C, 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x00, 0x00,
0x00, 0x00, 0x00, 0xE0, 0x7F, 0x07, 0x70, 0x77, 0x0E, 0x78, 0xE3, 0x8E, 0x38, 0xC1, 0xDC, 0x1D,
0xC1, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, 0x70, 0x07, 0x09, 0xE0, 0xFC, 0x0F, 0x80, 0xE0, 0x0F,
0xE0, 0x3D, 0xC0, 0x73, 0xC1, 0xE3, 0x83, 0x87, 0x8E, 0x07, 0x9C, 0x07, 0x70, 0x0F, 0xE0, 0x0F,
0x80, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00,
0x00, 0x00, 0x08, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x7F, 0x07, 0x70, 0x77, 0x0E,
0x78, 0xE3, 0x8E, 0x39, 0xE1, 0xDC, 0x1D, 0xC1, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, 0x70, 0x0E,
0x2F, 0xE7, 0xFC, 0x7F, 0x87, 0x00, 0x00, 0x0F, 0x80, 0x1F, 0x00, 0x0E, 0x00, 0x38, 0x00, 0x60,
0x38, 0x03, 0xF8, 0x0F, 0x70, 0x1C, 0xF0, 0x78, 0xE0, 0xE1, 0xE3, 0x81, 0xE7, 0x01, 0xDC, 0x03,
0xF8, 0x03, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0,
0x01, 0xC0, 0x0F, 0x00, 0xF8, 0x03, 0x80, 0x70, 0x06, 0x00, 0x00, 0xE0, 0x7F, 0x07, 0x70, 0x77,
0x0E, 0x78, 0xE3, 0x8E, 0x39, 0xE1, 0xDC, 0x1D, 0xC1, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, 0x70,
0x0E, 0x0F, 0xE0, 0xFC, 0x0F, 0x80, 0x06, 0x30, 0x1F, 0xE0, 0x7F, 0x80, 0x00, 0x00, 0x00, 0x1C,
0x01, 0xFC, 0x07, 0xB8, 0x0E, 0x78, 0x3C, 0x70, 0x70, 0xF1, 0xC0, 0xF3, 0x80, 0xEE, 0x01, 0xFC,
0x01, 0xF0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00,
0xE0, 0x00, 0x08, 0x41, 0xFE, 0x3F, 0xC3, 0x38, 0x00, 0x00, 0x00, 0xE0, 0x7F, 0x07, 0x70, 0x77,
0x0E, 0x78, 0xE3, 0x8E, 0x39, 0xE1, 0xDC, 0x1D, 0xC1, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, 0x70,
0x0E, 0x0F, 0xE0, 0xFC, 0x0F, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x87, 0x37, 0x8C, 0x7B, 0xF3,
0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x00, 0x00, 0x30, 0x37, 0xEC, 0xDB, 0x30,
0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x00, 0x00, 0x61, 0x83, 0xF6,
0x66, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0xFF, 0xFF,
0x7F, 0xFD, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xDF, 0xFF,
0xFF, 0xF0, 0x33, 0x9D, 0xEE, 0x70, 0x7B, 0xDC, 0xE7, 0x30, 0x7B, 0xDC, 0xE7, 0x30, 0x33, 0xB9,
0xDD, 0xDE, 0xEE, 0x77, 0x38, 0x7B, 0xBD, 0xDC, 0xEE, 0x77, 0x73, 0x38, 0x7B, 0xBD, 0xDC, 0xEE,
0x77, 0x73, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0xFF, 0xDF, 0xF8, 0x30, 0x06, 0x00,
0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60,
0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0xFF, 0xDF, 0xF8, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03,
0x07, 0xFE, 0xFF, 0xC1, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x7D, 0xFF, 0xFF,
0xFF, 0xEF, 0x80, 0xF0, 0x70, 0x77, 0x87, 0x83, 0xFC, 0x1C, 0x1C, 0x3E, 0x07, 0x00, 0x03, 0xF8,
0x70, 0x00, 0x3D, 0xC3, 0x80, 0x01, 0xC6, 0x38, 0x00, 0x0E, 0x3B, 0xC0, 0x00, 0x71, 0xDC, 0x00,
0x03, 0x8D, 0xC0, 0x00, 0x1E, 0xEE, 0xF8, 0x7C, 0x7F, 0xEF, 0xE7, 0xF1, 0xF7, 0xF7, 0x3B, 0x80,
0x77, 0x1B, 0x8E, 0x07, 0xB8, 0xFC, 0x70, 0x39, 0xC7, 0xE3, 0x83, 0x8E, 0x37, 0x1C, 0x1C, 0x7B,
0x9D, 0xC1, 0xC1, 0xFC, 0xFE, 0x0E, 0x07, 0xC3, 0xE0, 0x0C, 0x38, 0xF1, 0xC7, 0x8E, 0x1E, 0x1C,
0x3C, 0x38, 0x30, 0xC3, 0x87, 0x1E, 0x38, 0xF3, 0x9E, 0x73, 0x8C, 0x00, 0x00, 0x38, 0x03, 0x80,
0x1C, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x07, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x01,
0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x00, 0x3E, 0x3F, 0x9D, 0xDC, 0x6E, 0x3F, 0x1F, 0x8C,
0xEE, 0x7F, 0x1F, 0x00, 0x07, 0x07, 0x87, 0xC7, 0xE7, 0x73, 0x3B, 0xFF, 0xFF, 0x07, 0x03, 0x80,
0x7E, 0xFD, 0x87, 0xEF, 0xE3, 0xC1, 0xE7, 0xFF, 0xF8, 0x0F, 0x1F, 0x9F, 0x0F, 0xC7, 0xF3, 0xB9,
0x8E, 0xEE, 0x7F, 0x1F, 0x00, 0x7F, 0x3F, 0x81, 0xC1, 0xC0, 0xE0, 0xE0, 0x70, 0x30, 0x38, 0x1C,
0x00, 0x3E, 0x3F, 0x9D, 0xCE, 0xE7, 0xE3, 0xF9, 0x8D, 0xEE, 0x7F, 0x1F, 0x00, 0x3E, 0x3F, 0x9D,
0xDC, 0x67, 0xF1, 0xF8, 0x1C, 0x3E, 0x7E, 0x3C, 0x00, 0x3E, 0x3F, 0x9D, 0xDC, 0x6E, 0x3F, 0x1F,
0x8C, 0xEE, 0x7F, 0x1F, 0x00, 0x3B, 0xFF, 0xF1, 0x8C, 0x63, 0x18, 0xC0, 0x7E, 0x7F, 0x67, 0x07,
0x0E, 0x1C, 0x38, 0x70, 0x7F, 0x7F, 0x7E, 0x7E, 0x6F, 0x3E, 0x3E, 0x0F, 0x07, 0x67, 0x7F, 0x7E,
0x07, 0x07, 0x87, 0xC7, 0xE7, 0x73, 0x3B, 0xFF, 0xFF, 0x07, 0x03, 0x80, 0x7E, 0xFD, 0x87, 0xEF,
0xE3, 0xC1, 0xE7, 0xFF, 0xF8, 0x0F, 0x1F, 0x9F, 0x0F, 0xC7, 0xF3, 0xB9, 0x8E, 0xEE, 0x7F, 0x1F,
0x00, 0x7F, 0x3F, 0x81, 0xC1, 0xC0, 0xE0, 0xE0, 0x70, 0x30, 0x38, 0x1C, 0x00, 0x3E, 0x3F, 0x9D,
0xCE, 0xE7, 0xE3, 0xF9, 0x8D, 0xEE, 0x7F, 0x1F, 0x00, 0x3E, 0x3F, 0x9D, 0xDC, 0x67, 0xF1, 0xF8,
0x1C, 0x3E, 0x7E, 0x3C, 0x00, 0xFF, 0xC7, 0xFF, 0xE7, 0xE0, 0xE7, 0xE0, 0x67, 0xE6, 0x67, 0xE6,
0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x67, 0xE6, 0x07, 0xE6, 0x1F, 0xE7,
0xFE, 0xE7, 0xFC, 0x07, 0xF8, 0x7F, 0x87, 0xCC, 0x38, 0x03, 0x80, 0x7F, 0xF3, 0xFF, 0x87, 0x00,
0x38, 0x07, 0xFE, 0x3F, 0xF0, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x7C, 0x61, 0xFF, 0x07, 0xF8, 0xFF,
0xFF, 0xFF, 0xC1, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0xF0, 0x1F, 0x83, 0xF0, 0x7F, 0x03, 0xF8, 0x01,
0xF8, 0x0F, 0xC1, 0xF8, 0x3F, 0x81, 0xFC, 0x00, 0xE0, 0x07, 0x00, 0x1F, 0xC0, 0x7F, 0xC1, 0x8F,
0x00, 0x1C, 0x00, 0x71, 0xFF, 0xF7, 0xFF, 0xC0, 0xF8, 0x07, 0xC0, 0x7C, 0x07, 0xFF, 0xDF, 0xFF,
0x38, 0x00, 0xE0, 0x03, 0xC7, 0x0F, 0xFE, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xC0, 0xF0, 0x03, 0x8F,
0xFF, 0x7F, 0xF8, 0x07, 0x00, 0xF8, 0xFF, 0x87, 0xF0, 0x1E, 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00,
0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x7F, 0x83, 0xFE, 0x18, 0xF8, 0x01, 0xE0, 0x07, 0x00, 0x38, 0x01,
0xC3, 0xFF, 0x3F, 0xFB, 0xE7, 0xFC, 0x1F, 0xC0, 0xFE, 0x07, 0x70, 0x3B, 0x81, 0xDC, 0x1C, 0xFB,
0xE3, 0xFE, 0x0F, 0xE0, 0x03, 0xC0, 0x01, 0xE0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x67, 0x00, 0x73,
0x80, 0x38, 0xE0, 0x38, 0x70, 0x1C, 0x38, 0x1C, 0x0E, 0x0E, 0x07, 0x07, 0x03, 0xC7, 0x00, 0xE3,
0x80, 0x71, 0xC0, 0x3D, 0xFF, 0xFE, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x0F,
0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F,
0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xFF, 0xFF, 0xFF, 0xDC,
0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x01, 0xE0, 0x1E, 0x00,
0xE0, 0x0F, 0x00, 0xF0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF,
0x00, 0x38, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x07, 0x00, 0x38,
0x03, 0x80, 0x1C, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x00, 0xFF, 0xF0, 0x00, 0x0E,
0x00, 0x18, 0x00, 0x70, 0x00, 0xE0, 0x01, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x30, 0x00,
0xE1, 0xE1, 0xC7, 0xC3, 0x0F, 0xCE, 0x03, 0x9C, 0x03, 0xB8, 0x07, 0x60, 0x07, 0xC0, 0x0F, 0x80,
0x1E, 0x00, 0x1C, 0x00, 0x3C, 0xF9, 0xFF, 0xF7, 0x7D, 0xF8, 0xE3, 0x77, 0xDD, 0xFF, 0xF3, 0xEF,
0x80, 0x07, 0x83, 0xE0, 0xF0, 0x78, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70,
0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x1F, 0x0F, 0x83, 0xC0, 0x7C,
0x3F, 0xF7, 0xEF, 0xFC, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x3F, 0xF7, 0xEF, 0xFC, 0x3E, 0x00, 0xC0,
0x1C, 0x01, 0xCF, 0xFF, 0xFF, 0xF0, 0x70, 0x07, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0x38, 0x03, 0x80,
0x30, 0x00, 0x00, 0x70, 0x1F, 0x0F, 0xE3, 0xF8, 0xFC, 0x0F, 0x00, 0xFC, 0x03, 0xF8, 0x0F, 0xE0,
0x1F, 0x00, 0x70, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0xE0, 0x0F, 0x80, 0x7F, 0x00, 0xFC, 0x03,
0xF0, 0x0F, 0x03, 0xF0, 0xFC, 0x7F, 0x0F, 0x80, 0xE0, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0,
0x3F, 0x1F, 0xDF, 0xCF, 0xFF, 0x33, 0xCB, 0x80, 0xE0, 0xE0, 0x78, 0x38, 0x1C, 0x0F, 0xF7, 0xFB,
0xFD, 0xFE, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E,
0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x00, 0x3F, 0x03, 0xFB, 0xFC, 0x9F,
0xC0, 0x0E, 0x00, 0x70, 0x03, 0xFD, 0xDF, 0xEE, 0xE0, 0x77, 0x03, 0xB8, 0x1D, 0xC0, 0xEE, 0x07,
0x70, 0x3B, 0x81, 0xDC, 0x0E, 0xE0, 0x77, 0x03, 0xB8, 0x1C, 0x3F, 0x71, 0xFD, 0xCF, 0x27, 0x38,
0x1C, 0xE0, 0x73, 0x81, 0xCF, 0xF7, 0x3F, 0xDC, 0xE0, 0x73, 0x81, 0xCE, 0x07, 0x38, 0x1C, 0xE0,
0x73, 0x81, 0xCE, 0x07, 0x38, 0x1C, 0xE0, 0x7B, 0x80, 0xFE, 0x01, 0xC0, 0x3F, 0x1F, 0x80, 0xFE,
0x7F, 0x3B, 0xCC, 0xF2, 0x77, 0x01, 0xC0, 0x0E, 0x07, 0x80, 0x1C, 0x0E, 0x00, 0x3F, 0xDF, 0xE7,
0x7F, 0xBF, 0xCE, 0xE0, 0x70, 0x1D, 0xC0, 0xE0, 0x3B, 0x81, 0xC0, 0x77, 0x03, 0x80, 0xEE, 0x07,
0x01, 0xDC, 0x0E, 0x03, 0xB8, 0x1C, 0x07, 0x70, 0x38, 0x0E, 0xE0, 0x70, 0x1D, 0xC0, 0xE0, 0x3B,
0x81, 0xC0, 0x70, 0x3F, 0x1F, 0x9C, 0x7F, 0x3F, 0x9C, 0xF3, 0x3C, 0x9C, 0xE0, 0x38, 0x1C, 0xE0,
0x78, 0x1C, 0xE0, 0x70, 0x1C, 0xFF, 0x7F, 0x9C, 0xFF, 0x7F, 0x9C, 0xE0, 0x70, 0x1C, 0xE0, 0x70,
0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1C,
0xE0, 0x70, 0x1C, 0xE0, 0x70, 0x1E, 0xE0, 0x70, 0x0F, 0xE0, 0x70, 0x0F,
};
static const EpdGlyph ubuntu_12_regularGlyphs[] = {
@@ -2067,71 +2298,159 @@ static const EpdGlyph ubuntu_12_regularGlyphs[] = {
{ 11, 15, 209, 1, 15, 21, 20694 }, // U+05E8
{ 16, 15, 292, 1, 15, 30, 20715 }, // U+05E9
{ 16, 15, 274, 0, 15, 30, 20745 }, // U+05EA
{ 15, 24, 239, 0, 24, 45, 20775 }, // U+1EF2
{ 12, 26, 199, 0, 21, 39, 20820 }, // U+1EF3
{ 2, 19, 0, -1, 18, 5, 20859 }, // U+200C
{ 6, 19, 0, -3, 18, 15, 20864 }, // U+200D
{ 7, 20, 0, -1, 18, 18, 20879 }, // U+200E
{ 7, 20, 0, -6, 18, 18, 20897 }, // U+200F
{ 8, 2, 128, 0, 8, 2, 20915 }, // U+2010
{ 14, 2, 198, -1, 9, 4, 20917 }, // U+2013
{ 26, 2, 398, -1, 9, 7, 20921 }, // U+2014
{ 26, 2, 398, -1, 9, 7, 20928 }, // U+2015
{ 5, 6, 94, 1, 19, 4, 20935 }, // U+2018
{ 5, 6, 94, 0, 19, 4, 20939 }, // U+2019
{ 5, 6, 94, 0, 3, 4, 20943 }, // U+201A
{ 9, 6, 167, 1, 19, 7, 20947 }, // U+201C
{ 9, 6, 167, 0, 19, 7, 20954 }, // U+201D
{ 9, 6, 167, 0, 3, 7, 20961 }, // U+201E
{ 11, 21, 190, 0, 17, 29, 20968 }, // U+2020
{ 11, 21, 190, 0, 17, 29, 20997 }, // U+2021
{ 7, 6, 144, 1, 12, 6, 21026 }, // U+2022
{ 21, 3, 398, 2, 3, 8, 21032 }, // U+2026
{ 29, 17, 491, 1, 17, 62, 21040 }, // U+2030
{ 7, 11, 116, 0, 13, 10, 21102 }, // U+2039
{ 6, 11, 116, 1, 13, 9, 21112 }, // U+203A
{ 13, 17, 59, -5, 17, 28, 21121 }, // U+2044
{ 9, 10, 144, 0, 18, 12, 21149 }, // U+2070
{ 9, 10, 144, 0, 18, 12, 21161 }, // U+2074
{ 7, 10, 144, 1, 18, 9, 21173 }, // U+2075
{ 9, 10, 144, 0, 18, 12, 21182 }, // U+2076
{ 9, 10, 144, 0, 18, 12, 21194 }, // U+2077
{ 9, 10, 144, 0, 18, 12, 21206 }, // U+2078
{ 9, 10, 144, 0, 18, 12, 21218 }, // U+2079
{ 9, 10, 144, 0, 10, 12, 21230 }, // U+2080
{ 5, 10, 144, 1, 10, 7, 21242 }, // U+2081
{ 8, 10, 144, 0, 10, 10, 21249 }, // U+2082
{ 8, 10, 144, 0, 10, 10, 21259 }, // U+2083
{ 9, 10, 144, 0, 10, 12, 21269 }, // U+2084
{ 7, 10, 144, 1, 10, 9, 21281 }, // U+2085
{ 9, 10, 144, 0, 10, 12, 21290 }, // U+2086
{ 9, 10, 144, 0, 10, 12, 21302 }, // U+2087
{ 9, 10, 144, 0, 10, 12, 21314 }, // U+2088
{ 9, 10, 144, 0, 10, 12, 21326 }, // U+2089
{ 16, 15, 317, 2, 15, 30, 21338 }, // U+20AA
{ 13, 17, 226, 1, 17, 28, 21368 }, // U+20AC
{ 13, 17, 226, 1, 17, 28, 21396 }, // U+20AE
{ 14, 17, 226, 0, 17, 30, 21424 }, // U+20B4
{ 13, 17, 226, 1, 17, 28, 21454 }, // U+20B9
{ 13, 19, 234, 1, 19, 31, 21482 }, // U+2202
{ 17, 17, 260, 0, 17, 37, 21513 }, // U+2206
{ 14, 20, 279, 2, 17, 35, 21550 }, // U+220F
{ 13, 20, 206, 0, 17, 33, 21585 }, // U+2211
{ 12, 2, 226, 1, 8, 3, 21618 }, // U+2212
{ 13, 17, 59, -5, 17, 28, 21621 }, // U+2215
{ 4, 3, 98, 1, 9, 2, 21649 }, // U+2219
{ 15, 20, 226, 0, 20, 38, 21651 }, // U+221A
{ 14, 7, 235, 0, 11, 13, 21689 }, // U+221E
{ 10, 24, 148, 0, 19, 30, 21702 }, // U+222B
{ 12, 10, 226, 1, 13, 15, 21732 }, // U+2248
{ 12, 13, 226, 1, 14, 20, 21747 }, // U+2260
{ 12, 15, 226, 1, 15, 23, 21767 }, // U+2264
{ 12, 15, 226, 1, 15, 23, 21790 }, // U+2265
{ 18, 19, 310, 2, 19, 43, 21813 }, // U+FB00
{ 13, 19, 257, 2, 19, 31, 21856 }, // U+FB01
{ 14, 19, 265, 2, 19, 34, 21887 }, // U+FB02
{ 23, 19, 413, 2, 19, 55, 21921 }, // U+FB03
{ 24, 19, 421, 2, 19, 57, 21976 }, // U+FB04
{ 17, 23, 265, 0, 18, 49, 20775 }, // U+1EA0
{ 11, 19, 209, 1, 14, 27, 20824 }, // U+1EA1
{ 17, 24, 265, 0, 24, 51, 20851 }, // U+1EA2
{ 11, 20, 209, 1, 19, 28, 20902 }, // U+1EA3
{ 17, 26, 265, 0, 26, 56, 20930 }, // U+1EA4
{ 13, 24, 209, 1, 23, 39, 20986 }, // U+1EA5
{ 17, 26, 265, 0, 26, 56, 21025 }, // U+1EA6
{ 11, 24, 209, 1, 23, 33, 21081 }, // U+1EA7
{ 17, 27, 265, 0, 27, 58, 21114 }, // U+1EA8
{ 12, 24, 209, 1, 23, 36, 21172 }, // U+1EA9
{ 17, 27, 265, 0, 27, 58, 21208 }, // U+1EAA
{ 11, 24, 209, 1, 23, 33, 21266 }, // U+1EAB
{ 17, 29, 265, 0, 24, 62, 21299 }, // U+1EAC
{ 11, 25, 209, 1, 20, 35, 21361 }, // U+1EAD
{ 17, 28, 265, 0, 28, 60, 21396 }, // U+1EAE
{ 11, 25, 209, 1, 24, 35, 21456 }, // U+1EAF
{ 17, 28, 265, 0, 28, 60, 21491 }, // U+1EB0
{ 11, 25, 209, 1, 24, 35, 21551 }, // U+1EB1
{ 17, 27, 265, 0, 27, 58, 21586 }, // U+1EB2
{ 11, 25, 209, 1, 24, 35, 21644 }, // U+1EB3
{ 17, 27, 265, 0, 27, 58, 21679 }, // U+1EB4
{ 11, 24, 209, 1, 23, 33, 21737 }, // U+1EB5
{ 17, 28, 265, 0, 23, 60, 21770 }, // U+1EB6
{ 11, 24, 209, 1, 19, 33, 21830 }, // U+1EB7
{ 12, 23, 228, 2, 18, 35, 21863 }, // U+1EB8
{ 12, 19, 224, 1, 14, 29, 21898 }, // U+1EB9
{ 12, 24, 228, 2, 24, 36, 21927 }, // U+1EBA
{ 12, 20, 224, 1, 19, 30, 21963 }, // U+1EBB
{ 12, 23, 228, 2, 23, 35, 21993 }, // U+1EBC
{ 12, 20, 224, 1, 19, 30, 22028 }, // U+1EBD
{ 13, 26, 228, 2, 26, 43, 22058 }, // U+1EBE
{ 14, 24, 224, 1, 23, 42, 22101 }, // U+1EBF
{ 12, 26, 228, 2, 26, 39, 22143 }, // U+1EC0
{ 12, 24, 224, 1, 23, 36, 22182 }, // U+1EC1
{ 12, 27, 228, 2, 27, 41, 22218 }, // U+1EC2
{ 13, 24, 224, 1, 23, 39, 22259 }, // U+1EC3
{ 12, 27, 228, 2, 27, 41, 22298 }, // U+1EC4
{ 12, 25, 224, 1, 24, 38, 22339 }, // U+1EC5
{ 12, 29, 228, 2, 24, 44, 22377 }, // U+1EC6
{ 12, 25, 224, 1, 20, 38, 22421 }, // U+1EC7
{ 5, 24, 108, 1, 24, 15, 22459 }, // U+1EC8
{ 5, 19, 101, 1, 19, 12, 22474 }, // U+1EC9
{ 4, 23, 108, 1, 18, 12, 22486 }, // U+1ECA
{ 4, 24, 101, 1, 19, 12, 22498 }, // U+1ECB
{ 17, 23, 311, 1, 18, 49, 22510 }, // U+1ECC
{ 13, 19, 236, 1, 14, 31, 22559 }, // U+1ECD
{ 17, 25, 311, 1, 24, 54, 22590 }, // U+1ECE
{ 13, 20, 236, 1, 19, 33, 22644 }, // U+1ECF
{ 17, 28, 311, 1, 27, 60, 22677 }, // U+1ED0
{ 14, 24, 236, 1, 23, 42, 22737 }, // U+1ED1
{ 17, 28, 311, 1, 27, 60, 22779 }, // U+1ED2
{ 13, 24, 236, 1, 23, 39, 22839 }, // U+1ED3
{ 17, 28, 311, 1, 27, 60, 22878 }, // U+1ED4
{ 13, 23, 236, 1, 22, 38, 22938 }, // U+1ED5
{ 17, 28, 311, 1, 27, 60, 22976 }, // U+1ED6
{ 13, 24, 236, 1, 23, 39, 23036 }, // U+1ED7
{ 17, 29, 311, 1, 24, 62, 23075 }, // U+1ED8
{ 13, 25, 236, 1, 20, 41, 23137 }, // U+1ED9
{ 18, 25, 311, 1, 24, 57, 23178 }, // U+1EDA
{ 14, 21, 236, 1, 20, 37, 23235 }, // U+1EDB
{ 18, 25, 311, 1, 24, 57, 23272 }, // U+1EDC
{ 14, 21, 236, 1, 20, 37, 23329 }, // U+1EDD
{ 18, 25, 311, 1, 24, 57, 23366 }, // U+1EDE
{ 14, 20, 236, 1, 19, 35, 23423 }, // U+1EDF
{ 18, 24, 311, 1, 23, 54, 23458 }, // U+1EE0
{ 14, 20, 236, 1, 19, 35, 23512 }, // U+1EE1
{ 18, 26, 311, 1, 21, 59, 23547 }, // U+1EE2
{ 14, 21, 236, 1, 16, 37, 23606 }, // U+1EE3
{ 14, 23, 275, 2, 18, 41, 23643 }, // U+1EE4
{ 12, 18, 230, 1, 13, 27, 23684 }, // U+1EE5
{ 14, 25, 275, 2, 24, 44, 23711 }, // U+1EE6
{ 12, 20, 230, 1, 19, 30, 23755 }, // U+1EE7
{ 17, 25, 284, 2, 24, 54, 23785 }, // U+1EE8
{ 15, 21, 239, 1, 20, 40, 23839 }, // U+1EE9
{ 17, 25, 284, 2, 24, 54, 23879 }, // U+1EEA
{ 15, 21, 239, 1, 20, 40, 23933 }, // U+1EEB
{ 17, 25, 284, 2, 24, 54, 23973 }, // U+1EEC
{ 15, 20, 239, 1, 19, 38, 24027 }, // U+1EED
{ 17, 24, 284, 2, 23, 51, 24065 }, // U+1EEE
{ 15, 20, 239, 1, 19, 38, 24116 }, // U+1EEF
{ 17, 26, 284, 2, 21, 56, 24154 }, // U+1EF0
{ 15, 21, 239, 1, 16, 40, 24210 }, // U+1EF1
{ 15, 24, 239, 0, 24, 45, 24250 }, // U+1EF2
{ 12, 26, 199, 0, 21, 39, 24295 }, // U+1EF3
{ 15, 23, 239, 0, 18, 44, 24334 }, // U+1EF4
{ 12, 18, 199, 0, 13, 27, 24378 }, // U+1EF5
{ 15, 24, 239, 0, 24, 45, 24405 }, // U+1EF6
{ 12, 24, 199, 0, 19, 36, 24450 }, // U+1EF7
{ 15, 23, 239, 0, 23, 44, 24486 }, // U+1EF8
{ 12, 24, 199, 0, 19, 36, 24530 }, // U+1EF9
{ 2, 19, 0, -1, 18, 5, 24566 }, // U+200C
{ 6, 19, 0, -3, 18, 15, 24571 }, // U+200D
{ 7, 20, 0, -1, 18, 18, 24586 }, // U+200E
{ 7, 20, 0, -6, 18, 18, 24604 }, // U+200F
{ 8, 2, 128, 0, 8, 2, 24622 }, // U+2010
{ 14, 2, 198, -1, 9, 4, 24624 }, // U+2013
{ 26, 2, 398, -1, 9, 7, 24628 }, // U+2014
{ 26, 2, 398, -1, 9, 7, 24635 }, // U+2015
{ 5, 6, 94, 1, 19, 4, 24642 }, // U+2018
{ 5, 6, 94, 0, 19, 4, 24646 }, // U+2019
{ 5, 6, 94, 0, 3, 4, 24650 }, // U+201A
{ 9, 6, 167, 1, 19, 7, 24654 }, // U+201C
{ 9, 6, 167, 0, 19, 7, 24661 }, // U+201D
{ 9, 6, 167, 0, 3, 7, 24668 }, // U+201E
{ 11, 21, 190, 0, 17, 29, 24675 }, // U+2020
{ 11, 21, 190, 0, 17, 29, 24704 }, // U+2021
{ 7, 6, 144, 1, 12, 6, 24733 }, // U+2022
{ 21, 3, 398, 2, 3, 8, 24739 }, // U+2026
{ 29, 17, 491, 1, 17, 62, 24747 }, // U+2030
{ 7, 11, 116, 0, 13, 10, 24809 }, // U+2039
{ 6, 11, 116, 1, 13, 9, 24819 }, // U+203A
{ 13, 17, 59, -5, 17, 28, 24828 }, // U+2044
{ 9, 10, 144, 0, 18, 12, 24856 }, // U+2070
{ 9, 10, 144, 0, 18, 12, 24868 }, // U+2074
{ 7, 10, 144, 1, 18, 9, 24880 }, // U+2075
{ 9, 10, 144, 0, 18, 12, 24889 }, // U+2076
{ 9, 10, 144, 0, 18, 12, 24901 }, // U+2077
{ 9, 10, 144, 0, 18, 12, 24913 }, // U+2078
{ 9, 10, 144, 0, 18, 12, 24925 }, // U+2079
{ 9, 10, 144, 0, 10, 12, 24937 }, // U+2080
{ 5, 10, 144, 1, 10, 7, 24949 }, // U+2081
{ 8, 10, 144, 0, 10, 10, 24956 }, // U+2082
{ 8, 10, 144, 0, 10, 10, 24966 }, // U+2083
{ 9, 10, 144, 0, 10, 12, 24976 }, // U+2084
{ 7, 10, 144, 1, 10, 9, 24988 }, // U+2085
{ 9, 10, 144, 0, 10, 12, 24997 }, // U+2086
{ 9, 10, 144, 0, 10, 12, 25009 }, // U+2087
{ 9, 10, 144, 0, 10, 12, 25021 }, // U+2088
{ 9, 10, 144, 0, 10, 12, 25033 }, // U+2089
{ 16, 15, 317, 2, 15, 30, 25045 }, // U+20AA
{ 13, 17, 226, 1, 17, 28, 25075 }, // U+20AC
{ 13, 17, 226, 1, 17, 28, 25103 }, // U+20AE
{ 14, 17, 226, 0, 17, 30, 25131 }, // U+20B4
{ 13, 17, 226, 1, 17, 28, 25161 }, // U+20B9
{ 13, 19, 234, 1, 19, 31, 25189 }, // U+2202
{ 17, 17, 260, 0, 17, 37, 25220 }, // U+2206
{ 14, 20, 279, 2, 17, 35, 25257 }, // U+220F
{ 13, 20, 206, 0, 17, 33, 25292 }, // U+2211
{ 12, 2, 226, 1, 8, 3, 25325 }, // U+2212
{ 13, 17, 59, -5, 17, 28, 25328 }, // U+2215
{ 4, 3, 98, 1, 9, 2, 25356 }, // U+2219
{ 15, 20, 226, 0, 20, 38, 25358 }, // U+221A
{ 14, 7, 235, 0, 11, 13, 25396 }, // U+221E
{ 10, 24, 148, 0, 19, 30, 25409 }, // U+222B
{ 12, 10, 226, 1, 13, 15, 25439 }, // U+2248
{ 12, 13, 226, 1, 14, 20, 25454 }, // U+2260
{ 12, 15, 226, 1, 15, 23, 25474 }, // U+2264
{ 12, 15, 226, 1, 15, 23, 25497 }, // U+2265
{ 18, 19, 310, 2, 19, 43, 25520 }, // U+FB00
{ 13, 19, 257, 2, 19, 31, 25563 }, // U+FB01
{ 14, 19, 265, 2, 19, 34, 25594 }, // U+FB02
{ 23, 19, 413, 2, 19, 55, 25628 }, // U+FB03
{ 24, 19, 421, 2, 19, 57, 25683 }, // U+FB04
};
static const EpdUnicodeInterval ubuntu_12_regularIntervals[] = {
@@ -2156,36 +2475,36 @@ static const EpdUnicodeInterval ubuntu_12_regularIntervals[] = {
{ 0x472, 0x475, 0x216 },
{ 0x48A, 0x4F9, 0x21A },
{ 0x5D0, 0x5EA, 0x28A },
{ 0x1EF2, 0x1EF3, 0x2A5 },
{ 0x200C, 0x2010, 0x2A7 },
{ 0x2013, 0x2015, 0x2AC },
{ 0x2018, 0x201A, 0x2AF },
{ 0x201C, 0x201E, 0x2B2 },
{ 0x2020, 0x2022, 0x2B5 },
{ 0x2026, 0x2026, 0x2B8 },
{ 0x2030, 0x2030, 0x2B9 },
{ 0x2039, 0x203A, 0x2BA },
{ 0x2044, 0x2044, 0x2BC },
{ 0x2070, 0x2070, 0x2BD },
{ 0x2074, 0x2079, 0x2BE },
{ 0x2080, 0x2089, 0x2C4 },
{ 0x20AA, 0x20AA, 0x2CE },
{ 0x20AC, 0x20AC, 0x2CF },
{ 0x20AE, 0x20AE, 0x2D0 },
{ 0x20B4, 0x20B4, 0x2D1 },
{ 0x20B9, 0x20B9, 0x2D2 },
{ 0x2202, 0x2202, 0x2D3 },
{ 0x2206, 0x2206, 0x2D4 },
{ 0x220F, 0x220F, 0x2D5 },
{ 0x2211, 0x2212, 0x2D6 },
{ 0x2215, 0x2215, 0x2D8 },
{ 0x2219, 0x221A, 0x2D9 },
{ 0x221E, 0x221E, 0x2DB },
{ 0x222B, 0x222B, 0x2DC },
{ 0x2248, 0x2248, 0x2DD },
{ 0x2260, 0x2260, 0x2DE },
{ 0x2264, 0x2265, 0x2DF },
{ 0xFB00, 0xFB04, 0x2E1 },
{ 0x1EA0, 0x1EF9, 0x2A5 },
{ 0x200C, 0x2010, 0x2FF },
{ 0x2013, 0x2015, 0x304 },
{ 0x2018, 0x201A, 0x307 },
{ 0x201C, 0x201E, 0x30A },
{ 0x2020, 0x2022, 0x30D },
{ 0x2026, 0x2026, 0x310 },
{ 0x2030, 0x2030, 0x311 },
{ 0x2039, 0x203A, 0x312 },
{ 0x2044, 0x2044, 0x314 },
{ 0x2070, 0x2070, 0x315 },
{ 0x2074, 0x2079, 0x316 },
{ 0x2080, 0x2089, 0x31C },
{ 0x20AA, 0x20AA, 0x326 },
{ 0x20AC, 0x20AC, 0x327 },
{ 0x20AE, 0x20AE, 0x328 },
{ 0x20B4, 0x20B4, 0x329 },
{ 0x20B9, 0x20B9, 0x32A },
{ 0x2202, 0x2202, 0x32B },
{ 0x2206, 0x2206, 0x32C },
{ 0x220F, 0x220F, 0x32D },
{ 0x2211, 0x2212, 0x32E },
{ 0x2215, 0x2215, 0x330 },
{ 0x2219, 0x221A, 0x331 },
{ 0x221E, 0x221E, 0x333 },
{ 0x222B, 0x222B, 0x334 },
{ 0x2248, 0x2248, 0x335 },
{ 0x2260, 0x2260, 0x336 },
{ 0x2264, 0x2265, 0x337 },
{ 0xFB00, 0xFB04, 0x339 },
};
static const EpdKernClassEntry ubuntu_12_regularKernLeftClasses[] = {
+12
View File
@@ -46,6 +46,7 @@ DEFAULT_CONFIG = SCRIPT_DIR / "sd-fonts.yaml"
DEFAULT_OUTPUT = SCRIPT_DIR / "output"
DOWNLOAD_DIR = SCRIPT_DIR / "downloaded_fonts"
INSTANCE_DIR = SCRIPT_DIR / "instanced_fonts"
DEFAULT_FALLBACK_FONT = EPDFONTS_DIR / "builtinFonts/source/NotoSans/NotoSans-Regular.ttf"
def download_font(url: str, dest: Path) -> Path:
@@ -186,12 +187,14 @@ def build_family(
# Multi-style mode
for style_name, font_path in resolved_styles.items():
cmd.extend([f"--{style_name}", str(font_path)])
cmd.extend([f"--fallback-{style_name}", str(DEFAULT_FALLBACK_FONT)])
else:
# Single-style mode
style_name = next(iter(resolved_styles))
font_path = resolved_styles[style_name]
cmd.append(str(font_path))
cmd.extend(["--style", style_name])
cmd.extend([f"--fallback-{style_name}", str(DEFAULT_FALLBACK_FONT)])
cmd.extend(["--intervals", intervals])
cmd.extend(["--sizes", sizes])
@@ -330,6 +333,15 @@ def main():
print("ERROR: No families defined in config", file=sys.stderr)
sys.exit(1)
if not DEFAULT_FALLBACK_FONT.exists() or not DEFAULT_FALLBACK_FONT.is_file():
print(
"ERROR: Missing default fallback font: "
f"{DEFAULT_FALLBACK_FONT}\n"
"This font is required for fallback glyphs in SD font builds.",
file=sys.stderr,
)
sys.exit(1)
# Filter if --only specified
if args.only:
only_names = set(args.only.split(","))
+6 -1
View File
@@ -36,8 +36,13 @@ for size in ${UI_FONT_SIZES[@]}; do
font_name="ubuntu_${size}_$(echo $style | tr '[:upper:]' '[:lower:]')"
font_path="../builtinFonts/source/Ubuntu/Ubuntu-${style}.ttf"
hebrew_path="../builtinFonts/source/NotoSansHebrew/NotoSansHebrew-${style}.ttf"
# Ubuntu lacks the Latin Extended Additional block (U+1EA0-U+1EF9) used for
# Vietnamese tone marks. Append a Vietnamese-only Ubuntu cut so those glyphs
# are filled from it while every glyph Ubuntu already has stays unchanged
# (fontstack is ordered by descending priority).
viet_path="../builtinFonts/source/Ubuntu/Ubuntu-Vietnamese-${style}.ttf"
output_path="../builtinFonts/${font_name}.h"
python fontconvert.py $font_name $size $font_path $hebrew_path \
python fontconvert.py $font_name $size $font_path $hebrew_path $viet_path \
--additional-intervals 0x05D0,0x05EA > $output_path
echo "Generated $output_path"
done
+40 -5
View File
@@ -518,7 +518,8 @@ def extract_ligatures_fonttools(font_path, codepoints):
return pairs
def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=False):
def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=False,
fallback_fontfile=None):
"""Rasterize all glyphs for one font style. Returns StyleRasterData."""
import freetype
@@ -531,6 +532,10 @@ def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=F
# it before set_char_size() would waste work at the default size and risk
# Invalid_Size_Handle on some fonts.
face.set_char_size(size << 6, size << 6, 150, 150)
fallback_face = None
if fallback_fontfile:
fallback_face = freetype.Face(fallback_fontfile)
fallback_face.set_char_size(size << 6, size << 6, 150, 150)
load_flags = freetype.FT_LOAD_RENDER
if force_autohint:
@@ -541,6 +546,11 @@ def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=F
if glyph_index > 0:
face.load_glyph(glyph_index, load_flags)
return face
if fallback_face:
fallback_glyph_index = fallback_face.get_char_index(code_point)
if fallback_glyph_index > 0:
fallback_face.load_glyph(fallback_glyph_index, load_flags)
return fallback_face
return None
# Validate intervals: remove codepoints not present in the font.
@@ -552,7 +562,9 @@ def rasterize_font_style(fontfile, size, intervals, style_id=0, force_autohint=F
for i_start, i_end in intervals:
start = i_start
for code_point in range(i_start, i_end + 1):
if face.get_char_index(code_point) == 0:
has_primary = face.get_char_index(code_point) != 0
has_fallback = fallback_face and fallback_face.get_char_index(code_point) != 0
if not has_primary and not has_fallback:
if start < code_point:
validated_intervals.append((start, code_point - 1))
start = code_point + 1
@@ -763,10 +775,11 @@ def style_sections_total_size(sections):
# --- File writers ---
def generate_cpfont_multistyle(style_fonts, size, intervals, output_path,
force_autohint=False):
force_autohint=False, fallback_style_fonts=None):
"""Generate a multi-style v4 .cpfont file.
style_fonts: dict of {style_id: fontfile_path} e.g. {0: "Regular.ttf", 2: "Italic.ttf"}
fallback_style_fonts: optional dict of {style_id: fallback_fontfile_path}
"""
MAGIC = b"CPFONT\x00\x00"
HEADER_SIZE = 32
@@ -776,12 +789,15 @@ def generate_cpfont_multistyle(style_fonts, size, intervals, output_path,
# Rasterize each style
raster_data = {} # style_id -> StyleRasterData
fallback_style_fonts = fallback_style_fonts or {}
for style_id in sorted(style_fonts.keys()):
fontfile = style_fonts[style_id]
fallback_fontfile = fallback_style_fonts.get(style_id)
print(f" Rasterizing style {style_id}...", file=sys.stderr)
raster_data[style_id] = rasterize_font_style(
fontfile, size, intervals, style_id=style_id,
force_autohint=force_autohint)
force_autohint=force_autohint,
fallback_fontfile=fallback_fontfile)
# Pack binary sections for each style
packed_sections = {} # style_id -> tuple of section bytearrays
@@ -892,6 +908,14 @@ def main():
help="Font file for italic style.")
parser.add_argument("--bolditalic", dest="font_bolditalic",
help="Font file for bold-italic style.")
parser.add_argument("--fallback-regular", dest="fallback_regular",
help="Fallback font file for regular style.")
parser.add_argument("--fallback-bold", dest="fallback_bold",
help="Fallback font file for bold style.")
parser.add_argument("--fallback-italic", dest="fallback_italic",
help="Fallback font file for italic style.")
parser.add_argument("--fallback-bolditalic", dest="fallback_bolditalic",
help="Fallback font file for bold-italic style.")
args = parser.parse_args()
@@ -913,6 +937,16 @@ def main():
if args.font_bolditalic:
style_fonts[3] = args.font_bolditalic
fallback_style_fonts = {}
if args.fallback_regular:
fallback_style_fonts[0] = args.fallback_regular
if args.fallback_bold:
fallback_style_fonts[1] = args.fallback_bold
if args.fallback_italic:
fallback_style_fonts[2] = args.fallback_italic
if args.fallback_bolditalic:
fallback_style_fonts[3] = args.fallback_bolditalic
is_multistyle = len(style_fonts) > 0
fontfile = args.fontfile
@@ -980,7 +1014,8 @@ def main():
print(f"Generating {output_path} (size {sz}, {len(style_fonts)} style(s), v4)...", file=sys.stderr)
total_size += generate_cpfont_multistyle(
style_fonts, sz, intervals, output_path,
force_autohint=args.force_autohint)
force_autohint=args.force_autohint,
fallback_style_fonts=fallback_style_fonts)
print(f"\nTotal: {len(sizes)} files, {total_size / 1024 / 1024:.2f} MB", file=sys.stderr)
+10
View File
@@ -122,6 +122,16 @@ families:
bold: {url: "https://mirrors.ctan.org/fonts/domitian/opentype/Domitian-Bold.otf"}
italic: {url: "https://mirrors.ctan.org/fonts/domitian/opentype/Domitian-Italic.otf"}
bolditalic: {url: "https://mirrors.ctan.org/fonts/domitian/opentype/Domitian-BoldItalic.otf"}
- name: LibreBaskerville
description: "A serif reimplementing the classic Baskerville (Latin)"
intervals: latin-ext
sizes: [12, 14, 16, 18]
styles:
regular: {url: "https://raw.githubusercontent.com/impallari/Libre-Baskerville/master/fonts/ttf/LibreBaskerville-Regular.ttf"}
bold: {url: "https://raw.githubusercontent.com/impallari/Libre-Baskerville/master/fonts/ttf/LibreBaskerville-Bold.ttf"}
italic: {url: "https://raw.githubusercontent.com/impallari/Libre-Baskerville/master/fonts/ttf/LibreBaskerville-Italic.ttf"}
bolditalic: {url: "https://raw.githubusercontent.com/impallari/Libre-Baskerville/master/fonts/ttf/LibreBaskerville-BoldItalic.ttf"}
# ── Sans-serif ─────────────────────────────────────────────────────────
+20 -29
View File
@@ -261,10 +261,18 @@ void ParsedText::addWord(std::string word, const EpdFontFamily::Style fontStyle,
}
}
int ParsedText::resolveFirstLineIndent(const bool isFirstLine) const {
if (isFirstLine && blockStyle.textIndentDefined && (blockStyle.textIndent < 0 || !extraParagraphSpacing) &&
isNaturalAlign) {
return blockStyle.textIndent;
int ParsedText::resolveFirstLineIndent(const bool isFirstLine, const GfxRenderer& renderer, const int fontId) const {
if (!isFirstLine || !isNaturalAlign) {
return 0;
}
if (blockStyle.textIndentDefined) {
if (blockStyle.textIndent < 0 || !extraParagraphSpacing) {
return blockStyle.textIndent;
}
return 0;
}
if (!extraParagraphSpacing) {
return renderer.getSpaceWidth(fontId, EpdFontFamily::REGULAR) * 3;
}
return 0;
}
@@ -293,9 +301,6 @@ void ParsedText::layoutAndExtractLines(const GfxRenderer& renderer, const int fo
blockStyle.alignment == CssTextAlign::Justify ||
(blockStyle.isRtl ? blockStyle.alignment == CssTextAlign::Right : blockStyle.alignment == CssTextAlign::Left);
// Apply fixed transforms before any per-line layout work.
applyParagraphIndent();
// Ensure SD card font glyph metrics are loaded before measuring word widths.
// For flash-based fonts isSdCardFont() returns false and this block is skipped
// entirely — no heap allocation. For SD card fonts this reads glyph metadata
@@ -356,7 +361,7 @@ std::vector<size_t> ParsedText::computeLineBreaks(const GfxRenderer& renderer, c
return {};
}
const int firstLineIndent = resolveFirstLineIndent(true);
const int firstLineIndent = resolveFirstLineIndent(true, renderer, fontId);
// Ensure any word that would overflow even as the first entry on a line is split using fallback hyphenation.
for (size_t i = 0; i < wordWidths.size(); ++i) {
@@ -462,25 +467,11 @@ std::vector<size_t> ParsedText::computeLineBreaks(const GfxRenderer& renderer, c
return lineBreakIndices;
}
void ParsedText::applyParagraphIndent() {
if (extraParagraphSpacing || words.empty()) {
return;
}
if (blockStyle.textIndentDefined) {
// CSS text-indent is explicitly set (even if 0) - don't use fallback EmSpace
// The actual indent positioning is handled in extractLine()
} else if (isNaturalAlign) {
// No CSS text-indent defined - use EmSpace fallback for visual indent
words.front().insert(0, "\xe2\x80\x83");
}
}
// Builds break indices while opportunistically splitting the word that would overflow the current line.
std::vector<size_t> ParsedText::computeHyphenatedLineBreaks(const GfxRenderer& renderer, const int fontId,
const int pageWidth, std::vector<uint16_t>& wordWidths,
std::vector<bool>& continuesVec) {
const int firstLineIndent = resolveFirstLineIndent(true);
const int firstLineIndent = resolveFirstLineIndent(true, renderer, fontId);
std::vector<size_t> lineBreakIndices;
size_t currentIndex = 0;
@@ -643,7 +634,7 @@ void ParsedText::extractLine(const size_t breakIndex, const int pageWidth, const
const size_t lastBreakAt = breakIndex > 0 ? lineBreakIndices[breakIndex - 1] : 0;
const size_t lineWordCount = lineBreak - lastBreakAt;
const int firstLineIndent = resolveFirstLineIndent(breakIndex == 0);
const int firstLineIndent = resolveFirstLineIndent(breakIndex == 0, renderer, fontId);
// Build line data by moving from the original vectors using index range
std::vector<std::string> lineWords;
@@ -799,7 +790,7 @@ void ParsedText::extractLine(const size_t breakIndex, const int pageWidth, const
}
for (size_t wordIdx = 0; wordIdx < reorderedWidthsScratch.size(); wordIdx++) {
lineXPos.push_back(static_cast<int16_t>(xpos < 0 ? 0 : xpos));
lineXPos.push_back(static_cast<int16_t>(xpos));
xpos += reorderedWidthsScratch[wordIdx];
const bool nextIsContinuation =
@@ -830,7 +821,7 @@ void ParsedText::extractLine(const size_t breakIndex, const int pageWidth, const
// Standard LTR/RTL positioning loop when no visual reordering is needed
if (blockStyle.isRtl) {
// RTL: position words from right to left
auto xpos = static_cast<int>(effectivePageWidth);
int xpos = effectivePageWidth;
if (effectiveAlignment == CssTextAlign::Left) {
// Explicit left alignment in RTL context
xpos = lineWordWidthSum + totalNaturalGaps;
@@ -841,7 +832,7 @@ void ParsedText::extractLine(const size_t breakIndex, const int pageWidth, const
for (size_t wordIdx = 0; wordIdx < lineWordCount; wordIdx++) {
xpos -= wordWidths[lastBreakAt + wordIdx];
lineXPos.push_back(static_cast<int16_t>(xpos < 0 ? 0 : xpos));
lineXPos.push_back(static_cast<int16_t>(xpos));
const bool nextIsContinuation = wordIdx + 1 < lineWordCount && continuesVec[lastBreakAt + wordIdx + 1];
if (nextIsContinuation) {
@@ -867,7 +858,7 @@ void ParsedText::extractLine(const size_t breakIndex, const int pageWidth, const
}
} else {
// LTR: position words from left to right
auto xpos = static_cast<int16_t>(firstLineIndent);
int xpos = firstLineIndent;
if (effectiveAlignment == CssTextAlign::Right) {
xpos = effectivePageWidth - lineWordWidthSum - totalNaturalGaps;
} else if (effectiveAlignment == CssTextAlign::Center) {
@@ -875,7 +866,7 @@ void ParsedText::extractLine(const size_t breakIndex, const int pageWidth, const
}
for (size_t wordIdx = 0; wordIdx < lineWordCount; wordIdx++) {
lineXPos.push_back(static_cast<int16_t>(xpos < 0 ? 0 : xpos));
lineXPos.push_back(static_cast<int16_t>(xpos));
const bool nextIsContinuation = wordIdx + 1 < lineWordCount && continuesVec[lastBreakAt + wordIdx + 1];
if (nextIsContinuation) {
+1 -2
View File
@@ -30,8 +30,7 @@ class ParsedText {
std::vector<bool> reorderedFocusSuffixScratch;
std::vector<uint16_t> visualOrderScratch;
void applyParagraphIndent();
int resolveFirstLineIndent(bool isFirstLine) const;
int resolveFirstLineIndent(bool isFirstLine, const GfxRenderer& renderer, int fontId) const;
std::vector<size_t> computeLineBreaks(const GfxRenderer& renderer, int fontId, int pageWidth,
std::vector<uint16_t>& wordWidths, std::vector<bool>& continuesVec);
std::vector<size_t> computeHyphenatedLineBreaks(const GfxRenderer& renderer, int fontId, int pageWidth,
+1 -1
View File
@@ -10,7 +10,7 @@
#include "parsers/ChapterHtmlSlimParser.h"
namespace {
constexpr uint8_t SECTION_FILE_VERSION = 25;
constexpr uint8_t SECTION_FILE_VERSION = 26;
constexpr uint32_t HEADER_SIZE = sizeof(uint8_t) + sizeof(int) + sizeof(float) + sizeof(bool) + sizeof(uint8_t) +
sizeof(uint16_t) + sizeof(uint16_t) + sizeof(uint16_t) + sizeof(bool) + sizeof(bool) +
sizeof(uint8_t) + sizeof(bool) + sizeof(uint32_t) + sizeof(uint32_t) +
+1 -1
View File
@@ -115,7 +115,7 @@ struct BlockStyle {
blockStyle.paddingRight = std::min(cssStyle.paddingRight.toPixelsInt16(emSize, vw), maxHorizontalInsetPx);
// For textIndent: if it's a percentage we can't resolve (no viewport width),
// leave textIndentDefined=false so the EmSpace fallback in applyParagraphIndent() is used
// leave textIndentDefined=false so the space-width fallback in resolveFirstLineIndent() is used
if (cssStyle.hasTextIndent() && cssStyle.textIndent.isResolvable(vw)) {
blockStyle.textIndent = cssStyle.textIndent.toPixelsInt16(emSize, vw);
blockStyle.textIndentDefined = true;
+2 -19
View File
@@ -61,31 +61,14 @@ void TextBlock::render(const GfxRenderer& renderer, const int fontId, const int
if (!scanning && (currentStyle & EpdFontFamily::UNDERLINE) != 0) {
const std::string& w = words[i];
const int fullWordWidth = renderer.getTextWidth(fontId, w.c_str(), currentStyle, baseDir);
// y is the top of the text line; add ascender to reach baseline, then offset 2px below
int underlineWidth = renderer.getTextWidth(fontId, w.c_str(), currentStyle, baseDir);
const int underlineY = wordY + ascender + 2;
int startX = wordX;
int underlineWidth = fullWordWidth;
// if word starts with em-space ("\xe2\x80\x83"), account for the additional indent before drawing the line
if (w.size() >= 3 && static_cast<uint8_t>(w[0]) == 0xE2 && static_cast<uint8_t>(w[1]) == 0x80 &&
static_cast<uint8_t>(w[2]) == 0x83) {
const char* visiblePtr = w.c_str() + 3;
const int prefixWidth = renderer.getTextAdvanceX(fontId, "\xe2\x80\x83", currentStyle);
const int visibleWidth = renderer.getTextWidth(fontId, visiblePtr, currentStyle, baseDir);
startX = wordX + prefixWidth;
underlineWidth = visibleWidth;
}
// SUP/SUB words are rendered at 50% glyph scale (see the baseline comment
// above and drawText), but getTextWidth reports the full-size width, so the
// underline would be drawn ~2x too long. Halve it to match the scaled glyphs.
if ((currentStyle & (EpdFontFamily::SUP | EpdFontFamily::SUB)) != 0) {
underlineWidth = (underlineWidth + 1) / 2;
}
renderer.drawLine(startX, underlineY, startX + underlineWidth, underlineY, true);
renderer.drawLine(wordX, underlineY, wordX + underlineWidth, underlineY, true);
}
}
}
@@ -22,6 +22,13 @@
constexpr size_t MIN_SIZE_FOR_POPUP = 10 * 1024; // 10KB
constexpr size_t PARSE_BUFFER_SIZE = 1024;
// Hard cap on the number of anchor IDs recorded per chapter. Legitimate navigation
// anchors (TOC entries, footnotes, cross-references) rarely exceed a few hundred per
// chapter. A runaway count usually means a converter injected machine-generated IDs on
// every text fragment (e.g. Kobo KePub spans). The cap prevents unbounded heap growth
// on resource-constrained devices (~380KB heap). TOC anchors bypass this cap.
constexpr size_t MAX_ANCHORS_PER_CHAPTER = 1024;
constexpr const char* HEADER_TAGS[] = {"h1", "h2", "h3", "h4", "h5", "h6"};
constexpr const char* BLOCK_TAGS[] = {"p", "li", "div", "br", "blockquote"};
constexpr const char* BOLD_TAGS[] = {"b", "strong"};
@@ -49,6 +56,14 @@ const char* getAttribute(const XML_Char** atts, const char* attrName) {
return nullptr;
}
// Returns true if the HTML element is a purely inline, non-navigable wrapper.
// IDs on these elements are never meaningful navigation targets in epub content.
// Reading-system converters (Kobo KePub, Calibre, etc.) frequently inject thousands
// of such IDs for progress tracking or internal bookkeeping, and recording each one
// as a navigation anchor exhausts the heap on memory-constrained devices.
// Block-level, sectioning, and structural elements are always considered navigable.
bool isNonNavigableInlineElement(const char* name) { return strcmp(name, "span") == 0; }
bool isInternalEpubLink(const char* href) {
if (!href || href[0] == '\0') return false;
if (strncmp(href, "http://", 7) == 0 || strncmp(href, "https://", 8) == 0) return false;
@@ -293,7 +308,17 @@ void XMLCALL ChapterHtmlSlimParser::startElement(void* userData, const XML_Char*
} else if (strcmp(atts[i], "id") == 0) {
// Defer both anchor recording and TOC page breaks until startNewTextBlock,
// after the previous block is flushed to pages via makePages().
self->pendingAnchorId = atts[i + 1];
//
// Skip IDs on non-navigable inline elements (e.g. <span>): these are never
// link targets in epub content, but reading-system converters can inject tens
// of thousands of them per chapter, exhausting the heap. TOC anchors are
// always recorded regardless of element type, since they drive page breaks.
const char* idValue = atts[i + 1];
const bool isTocAnchor =
std::find(self->tocAnchors.begin(), self->tocAnchors.end(), idValue) != self->tocAnchors.end();
if (isTocAnchor || (!isNonNavigableInlineElement(name) && self->anchorData.size() < MAX_ANCHORS_PER_CHAPTER)) {
self->pendingAnchorId = idValue;
}
} else if (strcmp(atts[i], "dir") == 0) {
dirAttr = atts[i + 1];
}
@@ -733,7 +758,7 @@ void XMLCALL ChapterHtmlSlimParser::startElement(void* userData, const XML_Char*
entry.depth = self->depth;
entry.hasUnderline = true;
entry.underline = true;
ChapterHtmlSlimParser::applyDirectionToEntry(entry, cssStyle);
applyDirectionToEntry(entry, cssStyle);
self->inlineStyleStack.push_back(entry);
self->updateEffectiveInlineStyle();
@@ -818,7 +843,7 @@ void XMLCALL ChapterHtmlSlimParser::startElement(void* userData, const XML_Char*
entry.hasItalic = true;
entry.italic = cssStyle.fontStyle == CssFontStyle::Italic;
}
ChapterHtmlSlimParser::applyDirectionToEntry(entry, cssStyle);
applyDirectionToEntry(entry, cssStyle);
self->inlineStyleStack.push_back(entry);
self->updateEffectiveInlineStyle();
} else if (matches(name, BOLD_TAGS, std::size(BOLD_TAGS))) {
@@ -841,7 +866,7 @@ void XMLCALL ChapterHtmlSlimParser::startElement(void* userData, const XML_Char*
entry.hasUnderline = true;
entry.underline = cssStyle.textDecoration == CssTextDecoration::Underline;
}
ChapterHtmlSlimParser::applyDirectionToEntry(entry, cssStyle);
applyDirectionToEntry(entry, cssStyle);
self->inlineStyleStack.push_back(entry);
self->updateEffectiveInlineStyle();
} else if (matches(name, ITALIC_TAGS, std::size(ITALIC_TAGS))) {
@@ -864,7 +889,7 @@ void XMLCALL ChapterHtmlSlimParser::startElement(void* userData, const XML_Char*
entry.hasUnderline = true;
entry.underline = cssStyle.textDecoration == CssTextDecoration::Underline;
}
ChapterHtmlSlimParser::applyDirectionToEntry(entry, cssStyle);
applyDirectionToEntry(entry, cssStyle);
self->inlineStyleStack.push_back(entry);
self->updateEffectiveInlineStyle();
} else if (strcmp(name, "sup") == 0 || strcmp(name, "sub") == 0) {
@@ -906,7 +931,7 @@ void XMLCALL ChapterHtmlSlimParser::startElement(void* userData, const XML_Char*
entry.hasUnderline = true;
entry.underline = cssStyle.textDecoration == CssTextDecoration::Underline;
}
ChapterHtmlSlimParser::applyDirectionToEntry(entry, cssStyle);
applyDirectionToEntry(entry, cssStyle);
if (cssStyle.hasVerticalAlign()) {
if (cssStyle.verticalAlign == CssVerticalAlign::Super) {
entry.hasSup = true;
+1
View File
@@ -318,6 +318,7 @@ STR_BOOK_S_STYLE: "Book's Style"
STR_EMBEDDED_STYLE: "Embedded Style"
STR_FOCUS_READING: "Focus Reading"
STR_OPDS_SERVER_URL: "OPDS Server URL"
STR_PWR_BTN_FOOTNOTE_BACK: "Quick-return from footnotes"
STR_SET_SLEEP_COVER: "Set Cover"
STR_FOOTNOTES: "Footnotes"
STR_NO_FOOTNOTES: "No footnotes on this page"
+1 -1
View File
@@ -128,7 +128,7 @@ STR_PAGE_TURN: "Umblättern"
STR_FORCE_REFRESH: "Bildschirm regenerieren"
STR_PORTRAIT: "Hochformat"
STR_LANDSCAPE_CW: "Querformat rechts"
STR_INVERTED: "Hochformat 180 Grad"
STR_INVERTED: "Hochformat 180°"
STR_LANDSCAPE_CCW: "Querformat links"
STR_PREV_NEXT: "Zurück/Weiter"
STR_NEXT_PREV: "Weiter/Zurück"
+1
View File
@@ -123,6 +123,7 @@ STR_CHECK_SERIAL_OUTPUT: "Проверьте вывод по UART для дет
STR_DARK: "Тёмный"
STR_LIGHT: "Светлый"
STR_CUSTOM: "Свой"
STR_PWR_BTN_FOOTNOTE_BACK: "Быстрый возврат из примечаний"
STR_COVER: "Обложка"
STR_NONE_OPT: "Нет"
STR_FIT: "Вписать"
+378
View File
@@ -0,0 +1,378 @@
_language_name: "Slovenčina"
_language_code: "SK"
_order: "24"
STR_CROSSPOINT: "CrossPoint"
STR_BOOTING: "SPÚŠŤANIE"
STR_SLEEPING: "SPÁNOK"
STR_ENTERING_SLEEP: "Prechod do režimu spánku"
STR_BROWSE_FILES: "Prehliadať súbory"
STR_FILE_TRANSFER: "Prenos súborov"
STR_SETTINGS_TITLE: "Nastavenia"
STR_CONTINUE_READING: "Pokračovať v čítaní"
STR_NO_OPEN_BOOK: "Žiadna otvorená kniha"
STR_START_READING: "Začnite čítať nižšie"
STR_NO_FILES_FOUND: "Neboli nájdené žiadne súbory"
STR_SELECT_CHAPTER: "Vybrať kapitolu"
STR_NO_CHAPTERS: "Žiadne kapitoly"
STR_END_OF_BOOK: "Koniec knihy"
STR_EMPTY_CHAPTER: "Prázdna kapitola"
STR_INDEXING: "Indexovanie"
STR_MEMORY_ERROR: "Chyba pamäte"
STR_PAGE_LOAD_ERROR: "Chyba načítania stránky"
STR_EMPTY_FILE: "Prázdny súbor"
STR_OUT_OF_BOUNDS: "Mimo rozsahu"
STR_LOADING: "Načítava sa..."
STR_LOADING_POPUP: "Načítavanie"
STR_WIFI_NETWORKS: "Wi-Fi siete"
STR_NO_NETWORKS: "Nenašli sa žiadne siete"
STR_NETWORKS_FOUND: "Nájdených %zu sietí"
STR_SCANNING: "Skenovanie..."
STR_CONNECTING: "Pripájanie..."
STR_CONNECTED: "Pripojené!"
STR_CONNECTION_FAILED: "Pripojenie zlyhalo"
STR_FORGET_NETWORK: "Zabudnúť sieť?"
STR_SAVE_PASSWORD: "Uložiť heslo na nabudúce?"
STR_PRESS_OK_SCAN: "Stlačte OK pre opätovné skenovanie"
STR_JOIN_NETWORK: "Pripojiť sa k sieti"
STR_CREATE_HOTSPOT: "Vytvoriť hotspot"
STR_JOIN_DESC: "Pripojiť sa k existujúcej Wi-Fi sieti"
STR_HOTSPOT_DESC: "Vytvoriť Wi-Fi sieť, ku ktorej sa môžu pripojiť ostatní"
STR_STARTING_HOTSPOT: "Spúšťanie hotspotu..."
STR_HOTSPOT_MODE: "Režim hotspotu"
STR_CONNECT_WIFI_HINT: "Pripojte svoje zariadenie k tejto Wi-Fi sieti"
STR_OPEN_URL_HINT: "Otvorte túto URL adresu vo svojom prehliadači"
STR_OR_HTTP_PREFIX: "alebo http://"
STR_SCAN_QR_HINT: "alebo naskenujte QR kód telefónom:"
STR_CALIBRE_WIRELESS: "Calibre Wireless"
STR_NETWORK_LEGEND: "* = Šifrované | + = Uložené"
STR_MAC_ADDRESS: "MAC adresa:"
STR_CHECKING_WIFI: "Kontrola Wi-Fi..."
STR_ENTER_WIFI_PASSWORD: "Zadajte heslo Wi-Fi"
STR_TO_PREFIX: "pre"
STR_CALIBRE_RECEIVING: "Prijímanie:"
STR_CALIBRE_RECEIVED: "Prijaté:"
STR_CALIBRE_INSTRUCTION_1: "1) Nainštalujte plugin CrossPoint Reader"
STR_CALIBRE_INSTRUCTION_2: "2) Buďte v rovnakej Wi-Fi sieti"
STR_CALIBRE_INSTRUCTION_3: "3) V Calibre: „Odoslať do zariadenia“"
STR_CALIBRE_INSTRUCTION_4: "„Pri odosielaní nechajte túto obrazovku otvorenú“"
STR_CAT_DISPLAY: "Displej"
STR_CAT_READER: "Čítačka"
STR_CAT_CONTROLS: "Ovládanie"
STR_CAT_SYSTEM: "Systém"
STR_SLEEP_SCREEN: "Obrazovka spánku"
STR_QUICK_RESUME_TIMEOUT: "Rýchle obnovenie pri nečinnosti"
STR_SLEEP_COVER_MODE: "Obrazovka spánku režim krytu"
STR_HIDE_BATTERY: "Skryť % batérie"
STR_EXTRA_SPACING: "Dodatočné medzery medzi odsekmi"
STR_TEXT_AA: "Vyhladzovanie textu"
STR_IMAGES: "Obrázky"
STR_IMAGES_DISPLAY: "Zobraz"
STR_IMAGES_PLACEHOLDER: "Rezervované miesto"
STR_IMAGES_SUPPRESS: "Potlačiť"
STR_SHORT_PWR_BTN: "Krátke stlačenie tlačidla napájania"
STR_ORIENTATION: "Orientácia čítania"
STR_SIDE_BTN_LAYOUT: "Rozloženie bočných tlačidiel (čítačka)"
STR_FRONT_BTN_FOLLOW_ORIENTATION: "Prispôsobiť predné tlačidlá orientácii"
STR_LONG_PRESS_BEHAVIOR: "Správanie pri dlhom stlačení tlačidla"
STR_LONG_PRESS_BEHAVIOR_OFF: "VYP"
STR_LONG_PRESS_BEHAVIOR_SKIP: "Preskočiť kapitolu"
STR_LONG_PRESS_BEHAVIOR_ORIENTATION: "Zmeniť orientáciu"
STR_FONT_FAMILY: "Rodina písiem čítačky"
STR_FONT_SIZE: "Veľkosť písma rozhrania"
STR_LINE_SPACING: "Riadkovanie čítačky"
STR_SCREEN_MARGIN: "Okraj obrazovky čítačky"
STR_PARA_ALIGNMENT: "Zarovnanie odsekov čítačky"
STR_HYPHENATION: "Delenie slov"
STR_TIME_TO_SLEEP: "Čas do uspania"
STR_SHOW_HIDDEN_FILES: "Zobraz Skryté Súbory"
STR_REMOVE_READ_FROM_RECENTS: "Odstrániť prečítané knihy zo zoznamu nedávnych"
STR_MOVE_FINISHED_TO_READ: "Presunúť prečítané knihy do priečinka Read"
STR_REFRESH_FREQ: "Frekvencia obnovovania"
STR_KOREADER_SYNC: "KOReader Sync"
STR_CHECK_UPDATES: "Skontrolovať aktualizácie"
STR_LANGUAGE: "Jazyk"
STR_CLEAR_READING_CACHE: "Vymazať vyrovnávaciu pamäť čítania"
STR_USERNAME: "Používateľské meno"
STR_PASSWORD: "Heslo"
STR_SYNC_SERVER_URL: "URL synchronizačného servera"
STR_DOCUMENT_MATCHING: "Párovanie dokumentov"
STR_AUTHENTICATE: "Overiť"
STR_KOREADER_USERNAME: "Používateľské meno KOReader"
STR_KOREADER_PASSWORD: "Heslo KOReader"
STR_FILENAME: "Názov súboru"
STR_BINARY: "Binárny"
STR_SET_CREDENTIALS_FIRST: "Najprv nastavte prihlasovacie údaje"
STR_WIFI_CONN_FAILED: "Pripojenie k Wi-Fi zlyhalo"
STR_AUTHENTICATING: "Overovanie..."
STR_AUTH_SUCCESS: "Overenie úspešné!"
STR_KOREADER_AUTH: "Overenie KOReader"
STR_SYNC_READY: "Synchronizácia KOReader je pripravená na použitie"
STR_AUTH_FAILED: "Overenie zlyhalo"
STR_DONE: "Hotovo"
STR_CLEAR_CACHE_WARNING_1: "Týmto vymažete všetky údaje kníh vo vyrovnávacej pamäti."
STR_CLEAR_CACHE_WARNING_2: "Všetok priebeh čítania bude stratený!"
STR_CLEAR_CACHE_WARNING_3: "Knihy bude potrebné znova indexovať"
STR_CLEAR_CACHE_WARNING_4: "pri ich opätovnom otvorení."
STR_CLEARING_CACHE: "Mazanie vyrovnávacej pamäte..."
STR_CACHE_CLEARED: "Vyrovnávacia pamäť vymazaná"
STR_ITEMS_REMOVED: "položiek odstránených"
STR_FAILED_LOWER: "zlyhalo"
STR_CLEAR_CACHE_FAILED: "Vymazanie vyrovnávacej pamäte zlyhalo"
STR_CHECK_SERIAL_OUTPUT: "Podrobnosti nájdete v sériovom výstupe"
STR_DARK: "Tmavý"
STR_LIGHT: "Svetlý"
STR_CUSTOM: "Vlastný"
STR_COVER: "Obálka"
STR_NONE_OPT: "Žiadny"
STR_FIT: "Prispôsobiť"
STR_CROP: "Orezať"
STR_NEVER: "Nikdy"
STR_IN_READER: "V čítačke"
STR_ALWAYS: "Vždy"
STR_IGNORE: "Ignorovať"
STR_SLEEP: "Spánok"
STR_PAGE_TURN: "Otáčanie stránok"
STR_FORCE_REFRESH: "Obnoviť obrazovku"
STR_PORTRAIT: "Na výšku"
STR_LANDSCAPE_CW: "Na šírku v smere hodinových ručičiek"
STR_INVERTED: "Obrátený"
STR_LANDSCAPE_CCW: "Na šírku proti smeru hodinových ručičiek"
STR_PREV_NEXT: "Predchádzajúca/Nasledujúca"
STR_NEXT_PREV: "Nasledujúca/Predchádzajúca"
STR_DISABLED: "Vypnuté"
STR_NOTO_SERIF: "Noto Serif"
STR_NOTO_SANS: "Noto Sans"
STR_SMALL: "Malý"
STR_MEDIUM: "Stredný"
STR_LARGE: "Veľký"
STR_X_LARGE: "Obrovský"
STR_TIGHT: "Tesný"
STR_NORMAL: "Normálny"
STR_WIDE: "Široký"
STR_JUSTIFY: "Zarovnať do bloku"
STR_ALIGN_LEFT: "Vľavo"
STR_CENTER: "Na stred"
STR_ALIGN_RIGHT: "Vpravo"
STR_PAGES_1: "1 strana"
STR_PAGES_5: "5 strán"
STR_PAGES_10: "10 strán"
STR_PAGES_15: "15 strán"
STR_PAGES_30: "30 strán"
STR_UPDATE: "Aktualizácia"
STR_CHECKING_UPDATE: "Kontrola aktualizácií…"
STR_NEW_UPDATE: "K dispozícii je nová aktualizácia!"
STR_CURRENT_VERSION: "Aktuálna verzia:"
STR_NEW_VERSION: "Nová verzia:"
STR_UPDATING: "Aktualizácia..."
STR_NO_UPDATE: "Nie je k dispozícii žiadna aktualizácia"
STR_UPDATE_FAILED: "Aktualizácia zlyhala"
STR_UPDATE_COMPLETE: "Aktualizácia dokončená"
STR_POWER_ON_HINT: "Stlačte a podržte tlačidlo napájania pre zapnutie"
STR_RESTARTING_HINT: "Reštartujem... Ak sa zariadenie nereštartuje, podrž tlačidlo na zapnutie niekoľko s."
STR_NO_ENTRIES: "Neboli nájdené žiadne položky"
STR_DOWNLOADING: "Sťahovanie..."
STR_DOWNLOAD_FAILED: "Sťahovanie zlyhalo"
STR_ERROR_MSG: "Chyba:"
STR_UNNAMED: "Nepomenované"
STR_HOLD_CONFIRM_TO_DELETE: "Podrž potvrdiť pre vymazanie"
STR_BOOKMARK_INSTRUCTIONS: "Podrž tlačidlo Potvrdiť pre vytvorenie záložky."
STR_NO_SERVER_URL: "Nie je nakonfigurovaná URL adresa servera"
STR_FETCH_FEED_FAILED: "Načítanie kanála zlyhalo"
STR_PARSE_FEED_FAILED: "Spracovanie kanála zlyhalo"
STR_NEXT_PAGE: "Ďaľsia strana »"
STR_PREV_PAGE: "« Predchádzajúca str."
STR_NETWORK_PREFIX: "Sieť:"
STR_IP_ADDRESS_PREFIX: "IP adresa:"
STR_ERROR_GENERAL_FAILURE: "Chyba: Všeobecná chyba"
STR_ERROR_NETWORK_NOT_FOUND: "Chyba: Sieť nebola nájdená"
STR_ERROR_CONNECTION_TIMEOUT: "Chyba: Časový limit pripojenia"
STR_SD_CARD: "SD karta"
STR_BACK: "« Späť"
STR_EXIT: "« Koniec"
STR_HOME: "« Domov"
STR_SELECT: "Vybrať"
STR_SELECTED: "Vybrané"
STR_TOGGLE: "Prepnúť"
STR_CONFIRM: "Potvrdiť"
STR_CANCEL: "Zrušiť"
STR_CONNECT: "Pripojiť"
STR_OPEN: "Otvoriť"
STR_DOWNLOAD: "Stiahnuť"
STR_RETRY: "Skúsiť znova"
STR_YES: "Áno"
STR_NO: "Nie"
STR_SHOW: "Zobraz"
STR_HIDE: "Skryť"
STR_STATE_ON: "ZAP"
STR_STATE_OFF: "VYP"
STR_NOT_SET: "Nenastavené"
STR_DIR_LEFT: "Vľavo"
STR_DIR_RIGHT: "Vpravo"
STR_DIR_UP: "Hore"
STR_DIR_DOWN: "Dole"
STR_OK_BUTTON: "OK"
STR_SLEEP_COVER_FILTER: "Filter obrazovky spánku"
STR_FILTER_CONTRAST: "Kontrast"
STR_CUSTOMISE_STATUS_BAR: "Uprav status bar"
STR_CHAPTER_PAGE_COUNT: "Počítadlo strán kapitoly"
STR_BOOK_PROGRESS_PERCENTAGE: "Prečítané percent"
STR_PROGRESS_BAR: "Ukazovateľ čítania"
STR_PROGRESS_BAR_THICKNESS: "Hrúbka indikátora priebehu"
STR_PROGRESS_BAR_THIN: "Tenký"
STR_PROGRESS_BAR_MEDIUM: "Stredný"
STR_PROGRESS_BAR_THICK: "Hrubý"
STR_BOOK: "Kniha"
STR_CHAPTER: "Kapitola"
STR_EXAMPLE_CHAPTER: "Kapitola 21"
STR_EXAMPLE_BOOK: "Názov knihy"
STR_PREVIEW: "Ukážka"
STR_TITLE: "Názov"
STR_BATTERY: "Batéria"
STR_XTC_STATUS_BAR: "Stavový panel XTC"
STR_BOTTOM: "Dole"
STR_TOP: "Hore"
STR_CLOCK: "Hodiny"
STR_CLOCK_UTC_OFFSET: "UTC posun hodín"
STR_CLOCK_FORMAT: "Formát času"
STR_CLOCK_FORMAT_24H: "24-hodinový"
STR_CLOCK_FORMAT_12H: "12-hodinový"
STR_CURRENT_TIME: "Aktuálny čas:"
STR_NEXT_FIELD: "Ďalej"
STR_CLOCK_SYNC: "Synchronizácia hodín"
STR_CLOCK_SYNC_NOW: "Synchronizovať teraz"
STR_CLOCK_SYNCING: "Synchronizácia cez NTP..."
STR_CLOCK_SYNC_OK: "Hodiny synchronizované"
STR_CLOCK_SYNC_FAIL: "Synchronizácia zlyhala"
STR_CLOCK_SYNC_NO_WIFI: "Wi-Fi nie je pripojená"
STR_CLOCK_SYNC_NO_WIFI_HINT: "Najprv sa pripojte k Wi-Fi a potom skúste znova."
STR_CLOCK_SYNCED: "Hodiny synchronizované"
STR_UI_THEME: "Téma rozhrania"
STR_THEME_CLASSIC: "Klasická"
STR_THEME_LYRA: "Lyra"
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
STR_THEME_LYRA_EXTENDED: "Lyra Extended"
STR_SUNLIGHT_FADING_FIX: "Oprava blednutia na slnku"
STR_REMAP_FRONT_BUTTONS: "Premapovať predné tlačidlá"
STR_BOOKMARKS: "Záložky"
STR_BOOKMARK_ADDED: "Záložka pridaná."
STR_OPDS_BROWSER: "Prehliadač OPDS"
STR_SEARCH: "Hľadať"
STR_COVER_CUSTOM: "Obálka + Vlastné"
STR_QUICK_RESUME: "Rýchle obnovenie"
STR_MENU_RECENT_BOOKS: "Nedávne knihy"
STR_REMOVE_FROM_RECENTS: "Odstrániť z nedávnych kníh?"
STR_NO_RECENT_BOOKS: "Žiadne nedávne knihy"
STR_CALIBRE_DESC: "Používať bezdrôtové prenosy zariadení Calibre"
STR_FORGET_AND_REMOVE: "Zabudnúť sieť a odstrániť uložené heslo?"
STR_FORGET_BUTTON: "Zabudnúť"
STR_CALIBRE_STARTING: "Spúšťanie Calibre..."
STR_CALIBRE_SETUP: "Nastavenie"
STR_CALIBRE_STATUS: "Stav"
STR_CLEAR_BUTTON: "Vymazať"
STR_DEFAULT_VALUE: "Predvolené"
STR_REMAP_PROMPT: "Stlačte predné tlačidlo pre každú funkciu"
STR_UNASSIGNED: "Nepriradené"
STR_ALREADY_ASSIGNED: "Už priradené"
STR_REMAP_RESET_HINT: "Bočné tlačidlo Hore: Obnoviť predvolené rozloženie"
STR_REMAP_CANCEL_HINT: "Bočné tlačidlo Dole: Zrušiť premapovanie"
STR_HW_BACK_LABEL: "Späť (1. tlačidlo)"
STR_HW_CONFIRM_LABEL: "Potvrdiť (2. tlačidlo)"
STR_HW_LEFT_LABEL: "Vľavo (3. tlačidlo)"
STR_HW_RIGHT_LABEL: "Vpravo (4. tlačidlo)"
STR_GO_TO_PERCENT: "Prejsť na %"
STR_GO_HOME_BUTTON: "Prejsť na Domov"
STR_SYNC_PROGRESS: "Priebeh synchronizácie"
STR_DELETE_CACHE: "Vymazať vyrovnávaciu pamäť knihy"
STR_DELETE: "Vymazať"
STR_CONFIRM_DELETE_BOOKMARK: "Vymazať záložku?"
STR_DISPLAY_QR: "Zobraz stránku ako QR"
STR_CHAPTER_PREFIX: "Kapitola:"
STR_PAGES_SEPARATOR: "strán |"
STR_BOOK_PREFIX: "Kniha:"
STR_CALIBRE_URL_HINT: "Pre Calibre pridajte /opds na koniec URL adresy"
STR_PERCENT_STEP_HINT: "Vľavo/Vpravo: 1 % Hore/Dole: 10 %"
STR_SYNCING_TIME: "Čas synchronizácie..."
STR_CALC_HASH: "Výpočet hashu dokumentu..."
STR_HASH_FAILED: "Nepodarilo sa vypočítať hash dokumentu"
STR_FETCH_PROGRESS: "Načítavanie vzdialeného priebehu..."
STR_UPLOAD_PROGRESS: "Nahrávanie priebehu..."
STR_NO_CREDENTIALS_MSG: "Prihlasovacie údaje nie sú nastavené"
STR_KOREADER_SETUP_HINT: "Nastavte účet KOReader v Nastaveniach"
STR_PROGRESS_FOUND: "Priebeh nájdený!"
STR_REMOTE_LABEL: "Vzdialený:"
STR_LOCAL_LABEL: "Lokálny:"
STR_PAGE_OVERALL_FORMAT: "Strana %d, celkovo %.2f%%"
STR_PAGE_TOTAL_OVERALL_FORMAT: "Strana %d/%d, celkovo %.2f%%"
STR_DEVICE_FROM_FORMAT: " Zo zariadenia: %s"
STR_APPLY_REMOTE: "Použiť vzdialený priebeh"
STR_UPLOAD_LOCAL: "Nahrať lokálny priebeh"
STR_NO_REMOTE_MSG: "Nenašiel sa žiadny vzdialený priebeh"
STR_UPLOAD_PROMPT: "Nahrať aktuálnu pozíciu?"
STR_UPLOAD_SUCCESS: "Priebeh nahraný!"
STR_SYNC_FAILED_MSG: "Synchronizácia zlyhala"
STR_SAVE_PROGRESS_FAILED: "Nepodarilo sa uložiť priebeh"
STR_SECTION_PREFIX: "Sekcia"
STR_UPLOAD: "Nahrať"
STR_BOOK_S_STYLE: "Štýl knihy"
STR_EMBEDDED_STYLE: "Vložený štýl"
STR_FOCUS_READING: "Sústredené čítanie"
STR_OPDS_SERVER_URL: "URL adresa OPDS servera"
STR_SET_SLEEP_COVER: "Nastav obal"
STR_FOOTNOTES: "Poznámky pod čiarou"
STR_NO_FOOTNOTES: "Žiadne poznámky pod čiarou"
STR_LINK: "[link]"
STR_SCREENSHOT_BUTTON: "Urobiť snímku obrazovky"
STR_SLEEP_TIMER_VALUE_FORMAT: "%u min"
STR_SLEEP_NEVER: "Nikdy"
STR_SLEEP_TIMER_STEP_HINT: "Vľavo/Vpravo: 1 min Hore/Dole: 5 min"
STR_ADD_SERVER: "Pridať server"
STR_SERVER_NAME: "Názov servera"
STR_NO_SERVERS: "Nie sú nakonfigurované žiadne OPDS servery"
STR_DELETE_SERVER: "Odstrániť server"
STR_OPDS_SERVERS: "OPDS servery"
STR_AUTO_TURN_ENABLED: "Automatické otáčanie strán zapnuté: "
STR_AUTO_TURN_PAGES_PER_MIN: "Automatické otáčanie (strán za minútu)"
STR_MANAGE_FONTS: "Správa písiem"
STR_FONT_BROWSER: "Prehliadač písiem"
STR_LOADING_FONT_LIST: "Načítava sa zoznam písiem..."
STR_NO_FONTS_AVAILABLE: "Nie sú dostupné žiadne písma"
STR_FONT_INSTALLED: "Písmo nainštalované!"
STR_FONT_INSTALL_FAILED: "Inštalácia písma zlyhala"
STR_INSTALLED: "Nainštalované"
STR_DOWNLOAD_ALL: "Stiahnuť všetko"
STR_UPDATE_ALL: "Aktualizovať všetko"
STR_UPDATE_AVAILABLE: "Aktualizovať"
STR_CRASH_TITLE: "Zlyhanie systému"
STR_CRASH_DESCRIPTION: "Podrobná správa bola uložená do súboru crash_report.txt. Priložte tento súbor k hláseniu chyby."
STR_CRASH_REASON: "Dôvod zlyhania:"
STR_CRASH_NO_REASON: "(Nebola zaznamenaná žiadna príčina)"
STR_TILT_PAGE_TURN: "Otáčanie strán naklonením"
STR_KB_HINT_MOVE_CURSOR: "Stlačte VĽAVO alebo VPRAVO pre presun kurzora"
STR_KB_HINT_RETURN_CURSOR: "Stlačte VĽAVO pre návrat na pozíciu kurzora"
STR_KB_HINT_HIDE_PASSWORD: "Podržte VPRAVO a potom stlačte [***] na skrytie hesla"
STR_KB_HINT_SHOW_PASSWORD: "Podržte VPRAVO a potom stlačte [abc] na zobrazenie hesla"
STR_KB_HINT_TOGGLE_HIDE_PASSWORD: "Stlačte [***] na skrytie hesla"
STR_KB_HINT_TOGGLE_SHOW_PASSWORD: "Stlačte [abc] na zobrazenie hesla"
STR_KB_HINT_EDIT_ENTRY: "Podržte HORE pre úpravu položky"
STR_KB_TIPS: "Tipy:"
STR_KB_HINT_RETURN_KEYBOARD: "Stlačte DOLE pre návrat ku klávesnici"
STR_KB_HINT_EXIT_URL_MODE: "Stlačte ABC pre ukončenie režimu URL"
STR_KB_HINT_CLEAR_TEXT: "Podržte DEL pre vymazanie celého textu"
STR_KB_HINT_SECONDARY_CHAR: "Podržte SELECT pre alternatívny znak"
STR_KB_HINT_UPPER_SECONDARY: "Podržte SELECT pre VEĽKÉ písmeno alebo alternatívny znak"
STR_KB_HINT_LOWER_SECONDARY: "Podržte SELECT pre malé písmeno alebo alternatívny znak"
STR_KB_HINT_URL_SNIPPETS: "Stlačte URL pre úryvky"
STR_SD_FIRMWARE_UPDATE: "Aktualizácia firmvéru z SD karty"
STR_SELECT_FIRMWARE_FILE: "Vyberte súbor firmvéru (.bin)"
STR_NO_BIN_FILES: "Nenašli sa žiadne súbory .bin"
STR_VALIDATING_FIRMWARE: "Overuje sa firmvér..."
STR_INVALID_FIRMWARE: "Neplatný súbor firmvéru"
STR_FIRMWARE_TOO_LARGE: "Firmvér je príliš veľký pre partíciu"
STR_FIRMWARE_TOO_SMALL: "Súbor firmvéru je príliš malý"
STR_FIRMWARE_UPDATE_PROMPT: "Aktualizovať firmvér?"
STR_FIRMWARE_FILE_OPEN_FAILED: "Nie je možné otvoriť súbor"
STR_FIRMWARE_WRITE_FAILED: "Zápis firmvéru zlyhal"
STR_FIRMWARE_UPDATE_DO_NOT_POWER_OFF: "Nevypínajte zariadenie!"
STR_RECOVERY_MODE: "Režim obnovenia"
STR_RECOVERY_MODE_HINT: "Umiestnite firmware.bin do koreňového adresára SD karty a vyberte ho"
+378
View File
@@ -0,0 +1,378 @@
_language_name: "Tiếng Việt"
_language_code: "VI"
_order: "25"
STR_CROSSPOINT: "CrossPoint"
STR_BOOTING: "ĐANG KHỞI ĐỘNG"
STR_SLEEPING: "ĐANG NGỦ"
STR_ENTERING_SLEEP: "Đang vào chế độ ngủ"
STR_BROWSE_FILES: "Duyệt tập tin"
STR_FILE_TRANSFER: "Truyền tập tin"
STR_SETTINGS_TITLE: "Cài đặt"
STR_CONTINUE_READING: "Đọc tiếp"
STR_NO_OPEN_BOOK: "Chưa mở sách"
STR_START_READING: "Bắt đầu đọc bên dưới"
STR_NO_FILES_FOUND: "Không tìm thấy tập tin"
STR_SELECT_CHAPTER: "Chọn chương"
STR_NO_CHAPTERS: "Không có chương"
STR_END_OF_BOOK: "Hết sách"
STR_EMPTY_CHAPTER: "Chương trống"
STR_INDEXING: "Đang lập chỉ mục"
STR_MEMORY_ERROR: "Lỗi bộ nhớ"
STR_PAGE_LOAD_ERROR: "Lỗi tải trang"
STR_EMPTY_FILE: "Tập tin trống"
STR_OUT_OF_BOUNDS: "Vượt giới hạn"
STR_LOADING: "Đang tải..."
STR_LOADING_POPUP: "Đang tải"
STR_WIFI_NETWORKS: "Mạng Wi-Fi"
STR_NO_NETWORKS: "Không tìm thấy mạng"
STR_NETWORKS_FOUND: "Tìm thấy %zu mạng"
STR_SCANNING: "Đang quét..."
STR_CONNECTING: "Đang kết nối..."
STR_CONNECTED: "Đã kết nối!"
STR_CONNECTION_FAILED: "Kết nối thất bại"
STR_FORGET_NETWORK: "Quên mạng này?"
STR_SAVE_PASSWORD: "Lưu mật khẩu cho lần sau?"
STR_PRESS_OK_SCAN: "Nhấn OK để quét lại"
STR_JOIN_NETWORK: "Kết nối mạng"
STR_CREATE_HOTSPOT: "Tạo điểm phát"
STR_JOIN_DESC: "Kết nối tới mạng Wi-Fi có sẵn"
STR_HOTSPOT_DESC: "Tạo mạng Wi-Fi để máy khác kết nối"
STR_STARTING_HOTSPOT: "Đang tạo điểm phát..."
STR_HOTSPOT_MODE: "Chế độ điểm phát"
STR_CONNECT_WIFI_HINT: "Kết nối thiết bị của bạn vào mạng Wi-Fi này"
STR_OPEN_URL_HINT: "Mở URL này trong trình duyệt"
STR_OR_HTTP_PREFIX: "hoặc http://"
STR_SCAN_QR_HINT: "hoặc quét mã QR bằng điện thoại:"
STR_CALIBRE_WIRELESS: "Calibre không dây"
STR_NETWORK_LEGEND: "* = Mã hóa | + = Đã lưu"
STR_MAC_ADDRESS: "Địa chỉ MAC:"
STR_CHECKING_WIFI: "Đang kiểm tra Wi-Fi..."
STR_ENTER_WIFI_PASSWORD: "Nhập mật khẩu Wi-Fi"
STR_TO_PREFIX: "tới "
STR_CALIBRE_RECEIVING: "Đang nhận: "
STR_CALIBRE_RECEIVED: "Đã nhận: "
STR_CALIBRE_INSTRUCTION_1: "1) Cài plugin CrossPoint Reader"
STR_CALIBRE_INSTRUCTION_2: "2) Dùng chung một mạng Wi-Fi"
STR_CALIBRE_INSTRUCTION_3: "3) Trong Calibre: \"Send to device\""
STR_CALIBRE_INSTRUCTION_4: "\"Giữ màn hình này khi đang gửi\""
STR_CAT_DISPLAY: "Hiển thị"
STR_CAT_READER: "Trình đọc"
STR_CAT_CONTROLS: "Điều khiển"
STR_CAT_SYSTEM: "Hệ thống"
STR_SLEEP_SCREEN: "Màn hình ngủ"
STR_QUICK_RESUME_TIMEOUT: "Khôi phục nhanh khi hết giờ"
STR_SLEEP_COVER_MODE: "Kiểu ảnh bìa màn hình ngủ"
STR_HIDE_BATTERY: "Ẩn % pin"
STR_EXTRA_SPACING: "Giãn cách đoạn thêm"
STR_TEXT_AA: "Khử răng cưa chữ"
STR_IMAGES: "Hình ảnh"
STR_IMAGES_DISPLAY: "Hiển thị"
STR_IMAGES_PLACEHOLDER: "Khung thay thế"
STR_IMAGES_SUPPRESS: "Ẩn đi"
STR_SHORT_PWR_BTN: "Nhấn nhanh nút nguồn"
STR_ORIENTATION: "Hướng đọc"
STR_SIDE_BTN_LAYOUT: "Bố trí nút bên (trình đọc)"
STR_FRONT_BTN_FOLLOW_ORIENTATION: "Xoay nút trước theo hướng"
STR_LONG_PRESS_BEHAVIOR: "Hành vi nhấn giữ nút"
STR_LONG_PRESS_BEHAVIOR_OFF: "TẮT"
STR_LONG_PRESS_BEHAVIOR_SKIP: "Nhảy chương"
STR_LONG_PRESS_BEHAVIOR_ORIENTATION: "Đổi hướng"
STR_FONT_FAMILY: "Phông chữ trình đọc"
STR_FONT_SIZE: "Cỡ chữ trình đọc"
STR_LINE_SPACING: "Giãn dòng trình đọc"
STR_SCREEN_MARGIN: "Lề màn hình trình đọc"
STR_PARA_ALIGNMENT: "Canh lề đoạn trình đọc"
STR_HYPHENATION: "Ngắt từ bằng gạch nối"
STR_TIME_TO_SLEEP: "Thời gian chờ ngủ"
STR_SHOW_HIDDEN_FILES: "Hiện tập tin ẩn"
STR_REMOVE_READ_FROM_RECENTS: "Xóa sách đã đọc khỏi danh sách gần đây"
STR_MOVE_FINISHED_TO_READ: "Chuyển sách đọc xong vào thư mục Đã đọc"
STR_REFRESH_FREQ: "Tần suất làm tươi"
STR_KOREADER_SYNC: "Đồng bộ KOReader"
STR_CHECK_UPDATES: "Kiểm tra cập nhật"
STR_LANGUAGE: "Ngôn ngữ"
STR_CLEAR_READING_CACHE: "Xóa bộ nhớ đệm đọc"
STR_USERNAME: "Tên đăng nhập"
STR_PASSWORD: "Mật khẩu"
STR_SYNC_SERVER_URL: "URL máy chủ đồng bộ"
STR_DOCUMENT_MATCHING: "Khớp tài liệu"
STR_AUTHENTICATE: "Xác thực"
STR_KOREADER_USERNAME: "Tên đăng nhập KOReader"
STR_KOREADER_PASSWORD: "Mật khẩu KOReader"
STR_FILENAME: "Tên tập tin"
STR_BINARY: "Nhị phân"
STR_SET_CREDENTIALS_FIRST: "Hãy nhập thông tin đăng nhập trước"
STR_WIFI_CONN_FAILED: "Kết nối Wi-Fi thất bại"
STR_AUTHENTICATING: "Đang xác thực..."
STR_AUTH_SUCCESS: "Xác thực thành công!"
STR_KOREADER_AUTH: "Xác thực KOReader"
STR_SYNC_READY: "Đồng bộ KOReader đã sẵn sàng"
STR_AUTH_FAILED: "Xác thực thất bại"
STR_DONE: "Xong"
STR_CLEAR_CACHE_WARNING_1: "Thao tác này sẽ xóa toàn bộ dữ liệu sách đã lưu đệm."
STR_CLEAR_CACHE_WARNING_2: "Toàn bộ tiến độ đọc sẽ bị mất!"
STR_CLEAR_CACHE_WARNING_3: "Sách sẽ cần lập chỉ mục lại"
STR_CLEAR_CACHE_WARNING_4: "khi mở lại."
STR_CLEARING_CACHE: "Đang xóa bộ nhớ đệm..."
STR_CACHE_CLEARED: "Đã xóa bộ nhớ đệm"
STR_ITEMS_REMOVED: "mục đã xóa"
STR_FAILED_LOWER: "thất bại"
STR_CLEAR_CACHE_FAILED: "Không xóa được bộ nhớ đệm"
STR_CHECK_SERIAL_OUTPUT: "Xem chi tiết ở cổng serial"
STR_DARK: "Tối"
STR_LIGHT: "Sáng"
STR_CUSTOM: "Tùy chỉnh"
STR_COVER: "Ảnh bìa"
STR_NONE_OPT: "Không"
STR_FIT: "Vừa khung"
STR_CROP: "Cắt"
STR_NEVER: "Không bao giờ"
STR_IN_READER: "Trong trình đọc"
STR_ALWAYS: "Luôn luôn"
STR_IGNORE: "Bỏ qua"
STR_SLEEP: "Ngủ"
STR_PAGE_TURN: "Lật trang"
STR_FORCE_REFRESH: "Làm tươi màn hình"
STR_PORTRAIT: "Dọc"
STR_LANDSCAPE_CW: "Ngang (thuận)"
STR_INVERTED: "Lật ngược"
STR_LANDSCAPE_CCW: "Ngang (ngược)"
STR_PREV_NEXT: "Trước/Sau"
STR_NEXT_PREV: "Sau/Trước"
STR_DISABLED: "Tắt"
STR_NOTO_SERIF: "Noto Serif"
STR_NOTO_SANS: "Noto Sans"
STR_SMALL: "Nhỏ"
STR_MEDIUM: "Vừa"
STR_LARGE: "Lớn"
STR_X_LARGE: "Rất lớn"
STR_TIGHT: "Hẹp"
STR_NORMAL: "Bình thường"
STR_WIDE: "Rộng"
STR_JUSTIFY: "Đều hai bên"
STR_ALIGN_LEFT: "Trái"
STR_CENTER: "Giữa"
STR_ALIGN_RIGHT: "Phải"
STR_PAGES_1: "1 trang"
STR_PAGES_5: "5 trang"
STR_PAGES_10: "10 trang"
STR_PAGES_15: "15 trang"
STR_PAGES_30: "30 trang"
STR_UPDATE: "Cập nhật"
STR_CHECKING_UPDATE: "Đang kiểm tra cập nhật..."
STR_NEW_UPDATE: "Có bản cập nhật mới!"
STR_CURRENT_VERSION: "Phiên bản hiện tại: "
STR_NEW_VERSION: "Phiên bản mới: "
STR_UPDATING: "Đang cập nhật..."
STR_NO_UPDATE: "Không có bản cập nhật"
STR_UPDATE_FAILED: "Cập nhật thất bại"
STR_UPDATE_COMPLETE: "Cập nhật hoàn tất"
STR_POWER_ON_HINT: "Nhấn giữ nút nguồn để bật lại"
STR_RESTARTING_HINT: "Đang khởi động lại... Nếu máy không khởi động lại, hãy giữ nút nguồn vài giây."
STR_NO_ENTRIES: "Không tìm thấy mục nào"
STR_DOWNLOADING: "Đang tải về..."
STR_DOWNLOAD_FAILED: "Tải về thất bại"
STR_ERROR_MSG: "Lỗi:"
STR_UNNAMED: "Không tên"
STR_HOLD_CONFIRM_TO_DELETE: "Giữ Xác nhận để xóa"
STR_BOOKMARK_INSTRUCTIONS: "Giữ Xác nhận trong trình đọc để tạo dấu trang."
STR_NO_SERVER_URL: "Chưa cấu hình URL máy chủ"
STR_FETCH_FEED_FAILED: "Không tải được nguồn cấp"
STR_PARSE_FEED_FAILED: "Không phân tích được nguồn cấp"
STR_NEXT_PAGE: "Trang sau »"
STR_PREV_PAGE: "« Trang trước"
STR_NETWORK_PREFIX: "Mạng: "
STR_IP_ADDRESS_PREFIX: "Địa chỉ IP: "
STR_ERROR_GENERAL_FAILURE: "Lỗi: Sự cố chung"
STR_ERROR_NETWORK_NOT_FOUND: "Lỗi: Không tìm thấy mạng"
STR_ERROR_CONNECTION_TIMEOUT: "Lỗi: Kết nối quá thời gian"
STR_SD_CARD: "Thẻ SD"
STR_BACK: "« Quay lại"
STR_EXIT: "« Thoát"
STR_HOME: "« Thư viện"
STR_SELECT: "Chọn"
STR_SELECTED: "Đã chọn"
STR_TOGGLE: "Bật/Tắt"
STR_CONFIRM: "Xác nhận"
STR_CANCEL: "Hủy"
STR_CONNECT: "Kết nối"
STR_OPEN: "Mở"
STR_DOWNLOAD: "Tải về"
STR_RETRY: "Thử lại"
STR_YES: "Có"
STR_NO: "Không"
STR_SHOW: "Hiện"
STR_HIDE: "Ẩn"
STR_STATE_ON: "BẬT"
STR_STATE_OFF: "TẮT"
STR_NOT_SET: "Chưa đặt"
STR_DIR_LEFT: "Trái"
STR_DIR_RIGHT: "Phải"
STR_DIR_UP: "Lên"
STR_DIR_DOWN: "Xuống"
STR_OK_BUTTON: "OK"
STR_SLEEP_COVER_FILTER: "Bộ lọc ảnh bìa màn hình ngủ"
STR_FILTER_CONTRAST: "Tương phản"
STR_CUSTOMISE_STATUS_BAR: "Tùy chỉnh thanh trạng thái"
STR_CHAPTER_PAGE_COUNT: "Số trang trong chương"
STR_BOOK_PROGRESS_PERCENTAGE: "Phần trăm tiến độ sách"
STR_PROGRESS_BAR: "Thanh tiến độ"
STR_PROGRESS_BAR_THICKNESS: "Độ dày thanh tiến độ"
STR_PROGRESS_BAR_THIN: "Mỏng"
STR_PROGRESS_BAR_MEDIUM: "Vừa"
STR_PROGRESS_BAR_THICK: "Dày"
STR_BOOK: "Sách"
STR_CHAPTER: "Chương"
STR_EXAMPLE_CHAPTER: "Chương 21"
STR_EXAMPLE_BOOK: "Tên sách"
STR_PREVIEW: "Xem trước"
STR_TITLE: "Tiêu đề"
STR_BATTERY: "Pin"
STR_XTC_STATUS_BAR: "Thanh trạng thái XTC"
STR_BOTTOM: "Dưới"
STR_TOP: "Trên"
STR_CLOCK: "Đồng hồ"
STR_CLOCK_UTC_OFFSET: "Chênh lệch UTC"
STR_CLOCK_FORMAT: "Định dạng giờ"
STR_CLOCK_FORMAT_24H: "24 giờ"
STR_CLOCK_FORMAT_12H: "12 giờ"
STR_CURRENT_TIME: "Giờ hiện tại:"
STR_NEXT_FIELD: "Tiếp"
STR_CLOCK_SYNC: "Đồng bộ đồng hồ"
STR_CLOCK_SYNC_NOW: "Đồng bộ đồng hồ ngay"
STR_CLOCK_SYNCING: "Đang đồng bộ từ NTP..."
STR_CLOCK_SYNC_OK: "Đã đồng bộ đồng hồ"
STR_CLOCK_SYNC_FAIL: "Đồng bộ thất bại"
STR_CLOCK_SYNC_NO_WIFI: "Chưa kết nối Wi-Fi"
STR_CLOCK_SYNC_NO_WIFI_HINT: "Hãy kết nối Wi-Fi trước, rồi thử lại."
STR_CLOCK_SYNCED: "Đã đồng bộ đồng hồ"
STR_UI_THEME: "Giao diện"
STR_THEME_CLASSIC: "Cổ điển"
STR_THEME_LYRA: "Lyra"
STR_THEME_ROUNDEDRAFF: "RoundedRaff"
STR_THEME_LYRA_EXTENDED: "Lyra mở rộng"
STR_SUNLIGHT_FADING_FIX: "Khắc phục mờ dưới nắng"
STR_REMAP_FRONT_BUTTONS: "Gán lại nút mặt trước"
STR_BOOKMARKS: "Dấu trang"
STR_BOOKMARK_ADDED: "Đã thêm dấu trang."
STR_OPDS_BROWSER: "Trình duyệt OPDS"
STR_SEARCH: "Tìm kiếm"
STR_COVER_CUSTOM: "Ảnh bìa + Tùy chỉnh"
STR_QUICK_RESUME: "Khôi phục nhanh"
STR_MENU_RECENT_BOOKS: "Sách gần đây"
STR_REMOVE_FROM_RECENTS: "Xóa khỏi sách gần đây?"
STR_NO_RECENT_BOOKS: "Không có sách gần đây"
STR_CALIBRE_DESC: "Dùng truyền không dây của Calibre"
STR_FORGET_AND_REMOVE: "Quên mạng và xóa mật khẩu đã lưu?"
STR_FORGET_BUTTON: "Quên"
STR_CALIBRE_STARTING: "Đang khởi động Calibre..."
STR_CALIBRE_SETUP: "Thiết lập"
STR_CALIBRE_STATUS: "Trạng thái"
STR_CLEAR_BUTTON: "Xóa"
STR_DEFAULT_VALUE: "Mặc định"
STR_REMAP_PROMPT: "Nhấn một nút mặt trước cho mỗi vai trò"
STR_UNASSIGNED: "Chưa gán"
STR_ALREADY_ASSIGNED: "Đã được gán"
STR_REMAP_RESET_HINT: "Nút bên Lên: Đặt lại bố trí mặc định"
STR_REMAP_CANCEL_HINT: "Nút bên Xuống: Hủy gán lại"
STR_HW_BACK_LABEL: "Quay lại (nút 1)"
STR_HW_CONFIRM_LABEL: "Xác nhận (nút 2)"
STR_HW_LEFT_LABEL: "Trái (nút 3)"
STR_HW_RIGHT_LABEL: "Phải (nút 4)"
STR_GO_TO_PERCENT: "Đến vị trí %"
STR_GO_HOME_BUTTON: "Về trang chủ"
STR_SYNC_PROGRESS: "Đồng bộ tiến độ"
STR_DELETE_CACHE: "Xóa bộ nhớ đệm sách"
STR_DELETE: "Xóa"
STR_CONFIRM_DELETE_BOOKMARK: "Xóa dấu trang này?"
STR_DISPLAY_QR: "Hiện trang dạng QR"
STR_CHAPTER_PREFIX: "Chương: "
STR_PAGES_SEPARATOR: " trang | "
STR_BOOK_PREFIX: "Sách: "
STR_CALIBRE_URL_HINT: "Với Calibre, thêm /opds vào URL"
STR_PERCENT_STEP_HINT: "Trái/Phải: 1% Lên/Xuống: 10%"
STR_SYNCING_TIME: "Đang đồng bộ giờ..."
STR_CALC_HASH: "Đang tính mã băm tài liệu..."
STR_HASH_FAILED: "Không tính được mã băm tài liệu"
STR_FETCH_PROGRESS: "Đang lấy tiến độ từ máy chủ..."
STR_UPLOAD_PROGRESS: "Đang tải tiến độ lên..."
STR_NO_CREDENTIALS_MSG: "Chưa cấu hình thông tin đăng nhập"
STR_KOREADER_SETUP_HINT: "Thiết lập tài khoản KOReader trong Cài đặt"
STR_PROGRESS_FOUND: "Đã tìm thấy tiến độ!"
STR_REMOTE_LABEL: "Máy chủ:"
STR_LOCAL_LABEL: "Cục bộ:"
STR_PAGE_OVERALL_FORMAT: "Trang %d, %.2f%% toàn bộ"
STR_PAGE_TOTAL_OVERALL_FORMAT: "Trang %d/%d, %.2f%% toàn bộ"
STR_DEVICE_FROM_FORMAT: " Từ: %s"
STR_APPLY_REMOTE: "Áp dụng tiến độ máy chủ"
STR_UPLOAD_LOCAL: "Tải tiến độ cục bộ lên"
STR_NO_REMOTE_MSG: "Không có tiến độ trên máy chủ"
STR_UPLOAD_PROMPT: "Tải vị trí hiện tại lên?"
STR_UPLOAD_SUCCESS: "Đã tải tiến độ lên!"
STR_SYNC_FAILED_MSG: "Đồng bộ thất bại"
STR_SAVE_PROGRESS_FAILED: "Không lưu được tiến độ"
STR_SECTION_PREFIX: "Phần "
STR_UPLOAD: "Tải lên"
STR_BOOK_S_STYLE: "Kiểu của sách"
STR_EMBEDDED_STYLE: "Kiểu nhúng sẵn"
STR_FOCUS_READING: "Đọc tập trung"
STR_OPDS_SERVER_URL: "URL máy chủ OPDS"
STR_SET_SLEEP_COVER: "Đặt ảnh bìa"
STR_FOOTNOTES: "Chú thích"
STR_NO_FOOTNOTES: "Trang này không có chú thích"
STR_LINK: "[liên kết]"
STR_SCREENSHOT_BUTTON: "Chụp màn hình"
STR_SLEEP_TIMER_VALUE_FORMAT: "%u phút"
STR_SLEEP_NEVER: "Không bao giờ"
STR_SLEEP_TIMER_STEP_HINT: "Trái/Phải: 1 phút Lên/Xuống: 5 phút"
STR_ADD_SERVER: "Thêm máy chủ"
STR_SERVER_NAME: "Tên máy chủ"
STR_NO_SERVERS: "Chưa cấu hình máy chủ OPDS"
STR_DELETE_SERVER: "Xóa máy chủ"
STR_OPDS_SERVERS: "Máy chủ OPDS"
STR_AUTO_TURN_ENABLED: "Tự lật trang: "
STR_AUTO_TURN_PAGES_PER_MIN: "Tự lật (số trang mỗi phút)"
STR_MANAGE_FONTS: "Quản lý phông chữ"
STR_FONT_BROWSER: "Trình duyệt phông chữ"
STR_LOADING_FONT_LIST: "Đang tải danh sách phông..."
STR_NO_FONTS_AVAILABLE: "Không có phông chữ"
STR_FONT_INSTALLED: "Đã cài phông chữ!"
STR_FONT_INSTALL_FAILED: "Cài phông chữ thất bại"
STR_INSTALLED: "Đã cài"
STR_DOWNLOAD_ALL: "Tải tất cả"
STR_UPDATE_ALL: "Cập nhật tất cả"
STR_UPDATE_AVAILABLE: "Cập nhật"
STR_CRASH_TITLE: "Lỗi hệ thống"
STR_CRASH_DESCRIPTION: "Báo cáo chi tiết đã được lưu vào crash_report.txt. Vui lòng đính kèm tập tin này khi báo lỗi."
STR_CRASH_REASON: "Lý do lỗi:"
STR_CRASH_NO_REASON: "(Không ghi nhận lý do)"
STR_TILT_PAGE_TURN: "Lật trang khi nghiêng"
STR_KB_HINT_MOVE_CURSOR: "Nhấn TRÁI hoặc PHẢI để di chuyển con trỏ"
STR_KB_HINT_RETURN_CURSOR: "Nhấn TRÁI để quay lại vị trí con trỏ"
STR_KB_HINT_HIDE_PASSWORD: "Giữ PHẢI rồi nhấn [***] để ẩn mật khẩu"
STR_KB_HINT_SHOW_PASSWORD: "Giữ PHẢI rồi nhấn [abc] để hiện mật khẩu"
STR_KB_HINT_TOGGLE_HIDE_PASSWORD: "Nhấn [***] để ẩn mật khẩu"
STR_KB_HINT_TOGGLE_SHOW_PASSWORD: "Nhấn [abc] để hiện mật khẩu"
STR_KB_HINT_EDIT_ENTRY: "Giữ LÊN để sửa mục"
STR_KB_TIPS: "Mẹo:"
STR_KB_HINT_RETURN_KEYBOARD: "Nhấn XUỐNG để quay lại bàn phím"
STR_KB_HINT_EXIT_URL_MODE: "Nhấn ABC để thoát chế độ URL"
STR_KB_HINT_CLEAR_TEXT: "Giữ DEL để xóa toàn bộ chữ"
STR_KB_HINT_SECONDARY_CHAR: "Giữ CHỌN để nhập ký tự phụ"
STR_KB_HINT_UPPER_SECONDARY: "Giữ CHỌN để viết HOA hoặc ký tự phụ"
STR_KB_HINT_LOWER_SECONDARY: "Giữ CHỌN để viết thường hoặc ký tự phụ"
STR_KB_HINT_URL_SNIPPETS: "Nhấn URL để chèn mẫu"
STR_SD_FIRMWARE_UPDATE: "Cập nhật firmware từ thẻ SD"
STR_SELECT_FIRMWARE_FILE: "Chọn tập tin firmware (.bin)"
STR_NO_BIN_FILES: "Không tìm thấy tập tin .bin"
STR_VALIDATING_FIRMWARE: "Đang kiểm tra firmware..."
STR_INVALID_FIRMWARE: "Tập tin firmware không hợp lệ"
STR_FIRMWARE_TOO_LARGE: "Firmware quá lớn so với phân vùng"
STR_FIRMWARE_TOO_SMALL: "Tập tin firmware quá nhỏ"
STR_FIRMWARE_UPDATE_PROMPT: "Cập nhật firmware?"
STR_FIRMWARE_FILE_OPEN_FAILED: "Không mở được tập tin"
STR_FIRMWARE_WRITE_FAILED: "Ghi firmware thất bại"
STR_FIRMWARE_UPDATE_DO_NOT_POWER_OFF: "Không được tắt nguồn!"
STR_RECOVERY_MODE: "Chế độ phục hồi"
STR_RECOVERY_MODE_HINT: "Đặt firmware.bin ở thư mục gốc thẻ SD rồi chọn"