/* ********************************************************************************************************* * uC/GUI V4.10 * Universal graphic software for embedded applications * * (c) Copyright 2002, Micrium Inc., Weston, FL * (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH * * µC/GUI is protected by international copyright laws. Knowledge of the * source code may not be used to write a similar product. This file may * only be used in accordance with a license and should not be redistributed * in any way. We appreciate your understanding and fairness. * ---------------------------------------------------------------------- File : MainTask.c Purpose : Main program, called from after main after initialisation ---------------------------END-OF-HEADER------------------------------ */ #include #include "GUI.h" #include "DIALOG.h" /********************************************************************* * * Types * ********************************************************************** */ typedef struct { const GUI_WIDGET_CREATE_INFO * pResource; int nEntrys; } DIALOG_RESOURCE; /********************************************************************* * * Defines * ********************************************************************** */ /* Button id's used for key pad */ #define BUTTON_ID_0 GUI_ID_USER + 0 #define BUTTON_ID_1 GUI_ID_USER + 1 #define BUTTON_ID_2 GUI_ID_USER + 2 #define BUTTON_ID_3 GUI_ID_USER + 3 #define BUTTON_ID_4 GUI_ID_USER + 4 #define BUTTON_ID_5 GUI_ID_USER + 5 #define BUTTON_ID_6 GUI_ID_USER + 6 #define BUTTON_ID_7 GUI_ID_USER + 7 #define BUTTON_ID_8 GUI_ID_USER + 8 #define BUTTON_ID_9 GUI_ID_USER + 9 #define BUTTON_ID_PREV GUI_ID_USER + 10 #define BUTTON_ID_NEXT GUI_ID_USER + 11 #define BUTTON_ID_UP GUI_ID_USER + 12 #define BUTTON_ID_DOWN GUI_ID_USER + 13 /********************************************************************* * * Static data * ********************************************************************** */ /* Logo bitmap */ static GUI_CONST_STORAGE GUI_COLOR _ColorsLogoSegger[] = { 0x0000FF,0x280000,0x500000,0x780000 ,0xA00000,0xCCCDCD,0xF4F4F4,0xFFFFFF ,0xFFCACA,0xFF0000,0xFF9191,0xFF5656 ,0x9FA0A2,0x606264,0x000000,0x1F1F1F }; static GUI_CONST_STORAGE GUI_LOGPALETTE _PalLogoSegger = { 16, /* number of entries */ 1, /* Has transparency */ &_ColorsLogoSegger[0] }; static GUI_CONST_STORAGE unsigned char _acLogoSegger[] = { 0x00, 0x12, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x21, 0x00, 0x02, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x20, 0x13, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x31, 0x24, 0x44, 0x56, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x44, 0x42, 0x34, 0x45, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x54, 0x43, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x76, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x89, 0x9A, 0x77, 0x77, 0x77, 0x77, 0x77, 0x69, 0x9A, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x76, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x77, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x76, 0x99, 0x99, 0x96, 0x77, 0x77, 0x77, 0x77, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x7B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0x96, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0xB6, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0x6B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x6B, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x66, 0x77, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0x96, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x6B, 0x67, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0xB6, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x7B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x9A, 0x77, 0x77, 0x77, 0x76, 0xB9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x87, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x89, 0x99, 0x9B, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x96, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0x96, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x76, 0xB9, 0x99, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x6B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x67, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x67, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x9A, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x99, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x76, 0xB9, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x67, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x99, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x6B, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x9A, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x67, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x67, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x7B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x76, 0xB9, 0x99, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x99, 0x96, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0x97, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0x99, 0x87, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x89, 0x99, 0x9B, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x69, 0x9A, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x79, 0xB7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x7B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x6B, 0x67, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x75, 0xCC, 0xDC, 0xC6, 0x77, 0x77, 0x77, 0x55, 0x55, 0x55, 0x55, 0x55, 0x67, 0x77, 0x77, 0x75, 0xCC, 0xDC, 0xC6, 0x77, 0x77, 0x77, 0x77, 0x76, 0x5C, 0xDC, 0xCC, 0x67, 0x77, 0x77, 0x77, 0x55, 0x55, 0x55, 0x55, 0x55, 0x77, 0x77, 0x55, 0x55, 0x55, 0x55, 0x67, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x66, 0x77, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0x96, 0x77, 0x77, 0x75, 0xDE, 0xEE, 0xEE, 0xEE, 0xC6, 0x77, 0x7C, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xD7, 0x77, 0x75, 0xDE, 0xEE, 0xEE, 0xEE, 0xD6, 0x77, 0x77, 0x77, 0xCE, 0xEE, 0xEE, 0xEE, 0xEC, 0x77, 0x77, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xC7, 0x7C, 0xEE, 0xEE, 0xEE, 0xEE, 0xED, 0x57, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0x7B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x6B, 0x99, 0x99, 0x87, 0x77, 0x77, 0x6E, 0xEE, 0xED, 0xDD, 0xEE, 0xED, 0x77, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xD7, 0x77, 0xCE, 0xEE, 0xED, 0xDE, 0xEE, 0xED, 0x67, 0x77, 0x7D, 0xEE, 0xEE, 0xDD, 0xEE, 0xEE, 0xD7, 0x77, 0x6F, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xC7, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xE5, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x77, 0xA9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0xCE, 0xED, 0x67, 0x76, 0xCE, 0xEE, 0x67, 0x7D, 0xEE, 0xD5, 0x55, 0x55, 0x55, 0x77, 0x75, 0xEE, 0xED, 0x56, 0x76, 0xCE, 0xEE, 0xC7, 0x77, 0xCE, 0xEE, 0xD6, 0x67, 0x6C, 0xEE, 0xE5, 0x77, 0x6D, 0xEE, 0xC5, 0x55, 0x55, 0x56, 0x77, 0x6D, 0xEE, 0xC5, 0x55, 0x5C, 0xEE, 0xED, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0x96, 0x77, 0x77, 0x77, 0x78, 0x99, 0x99, 0xB6, 0x77, 0x77, 0x77, 0xDE, 0xED, 0x77, 0x77, 0x75, 0xDC, 0x77, 0x7D, 0xEE, 0xC7, 0x77, 0x77, 0x77, 0x77, 0x7D, 0xEE, 0xD7, 0x77, 0x77, 0x7C, 0xED, 0x57, 0x76, 0xDE, 0xED, 0x77, 0x77, 0x77, 0xCE, 0xD6, 0x77, 0x6F, 0xEE, 0x57, 0x77, 0x77, 0x77, 0x77, 0x7D, 0xEE, 0xC7, 0x77, 0x77, 0xCE, 0xED, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x69, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0xCE, 0xEE, 0xDC, 0x56, 0x77, 0x77, 0x77, 0x7D, 0xEE, 0xC6, 0x66, 0x66, 0x67, 0x77, 0x6E, 0xEE, 0xC7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x75, 0xEE, 0xE5, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x7F, 0xEE, 0xC6, 0x66, 0x66, 0x67, 0x77, 0x6D, 0xEE, 0xC7, 0x77, 0x77, 0xDE, 0xED, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x9A, 0x77, 0x77, 0x77, 0x77, 0x6D, 0xEE, 0xEE, 0xED, 0xDC, 0x67, 0x77, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xED, 0x67, 0x5E, 0xEE, 0x67, 0x77, 0x76, 0x66, 0x66, 0x67, 0x7C, 0xEE, 0xE7, 0x77, 0x77, 0x66, 0x66, 0x67, 0x77, 0x6D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEC, 0x67, 0x7D, 0xEE, 0xDC, 0xCC, 0xCD, 0xEE, 0xE5, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xB7, 0x77, 0x77, 0x77, 0x77, 0x75, 0xCE, 0xEE, 0xEE, 0xEE, 0xEC, 0x77, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0x67, 0xCE, 0xEE, 0x67, 0x77, 0x5E, 0xEE, 0xEE, 0xD6, 0x7C, 0xEE, 0xD7, 0x77, 0x7C, 0xEE, 0xEE, 0xED, 0x67, 0x6F, 0xEE, 0xEE, 0xEE, 0xEE, 0xED, 0x77, 0x6D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0x57, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x5C, 0xDE, 0xEE, 0xEE, 0xC7, 0x7D, 0xEE, 0xD5, 0xC5, 0xC5, 0x55, 0x77, 0x5E, 0xEE, 0x57, 0x77, 0xCE, 0xEE, 0xEE, 0xE5, 0x7C, 0xEE, 0xE6, 0x77, 0x7C, 0xEE, 0xEE, 0xEE, 0x67, 0x6F, 0xEE, 0xCC, 0x55, 0xC5, 0x56, 0x77, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xC6, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x76, 0x99, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x77, 0x75, 0x57, 0x77, 0x77, 0xCE, 0xEE, 0xD7, 0x7D, 0xEE, 0xC7, 0x77, 0x77, 0x77, 0x77, 0x6E, 0xEE, 0xC7, 0x77, 0x75, 0x55, 0xDE, 0xE5, 0x75, 0xEE, 0xE5, 0x77, 0x76, 0x55, 0x5F, 0xEE, 0x67, 0x6D, 0xEE, 0x57, 0x77, 0x77, 0x77, 0x77, 0x6D, 0xEE, 0xC6, 0x66, 0x6C, 0xEE, 0xE5, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x7B, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x7A, 0x99, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0xCE, 0xEC, 0x77, 0x77, 0x7C, 0xEE, 0xD6, 0x7D, 0xEE, 0xC7, 0x77, 0x77, 0x77, 0x77, 0x7D, 0xEE, 0xD6, 0x77, 0x77, 0x75, 0xEE, 0xE5, 0x77, 0xDE, 0xED, 0x67, 0x77, 0x77, 0xCE, 0xEE, 0x67, 0x6F, 0xEE, 0x57, 0x77, 0x77, 0x77, 0x77, 0x7D, 0xEE, 0xC7, 0x77, 0x76, 0xEE, 0xEC, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0xA9, 0x99, 0x9B, 0x77, 0x77, 0x77, 0x77, 0x89, 0x99, 0x99, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0xCE, 0xEE, 0xC6, 0x76, 0x5D, 0xEE, 0xD7, 0x7D, 0xEE, 0xDC, 0xCC, 0xCC, 0xCC, 0x57, 0x75, 0xEE, 0xED, 0xC6, 0x66, 0xCE, 0xEE, 0xE5, 0x77, 0x5E, 0xEE, 0xD5, 0x66, 0x5C, 0xEE, 0xEE, 0x67, 0x7F, 0xEE, 0xCC, 0xCC, 0xCC, 0xCC, 0x67, 0x6D, 0xEE, 0xC7, 0x77, 0x77, 0xEE, 0xEC, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x76, 0x99, 0x99, 0x96, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0x98, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x6D, 0xEE, 0xEE, 0xDE, 0xEE, 0xEE, 0x67, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xF5, 0x77, 0x5E, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xE5, 0x77, 0x7C, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0x67, 0x6D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xF7, 0x7F, 0xEE, 0xC7, 0x77, 0x77, 0xDE, 0xED, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x76, 0x99, 0x99, 0x87, 0x77, 0x77, 0x77, 0x77, 0xB9, 0x99, 0xA7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0xCE, 0xEE, 0xEE, 0xEE, 0xD5, 0x77, 0x75, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xF5, 0x77, 0x75, 0xDE, 0xEE, 0xEE, 0xEC, 0x5E, 0xE5, 0x77, 0x77, 0xCD, 0xEE, 0xEE, 0xEE, 0xC5, 0xEE, 0x67, 0x7D, 0xEE, 0xEE, 0xEE, 0xEE, 0xEE, 0xD7, 0x7D, 0xEE, 0x57, 0x77, 0x77, 0xCE, 0xEC, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x89, 0x9A, 0x77, 0x77, 0x77, 0x77, 0x77, 0x6B, 0x9B, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0xCC, 0xCC, 0xC5, 0x77, 0x77, 0x77, 0x65, 0x55, 0x55, 0x55, 0x55, 0x67, 0x77, 0x77, 0x75, 0xCC, 0xCC, 0x67, 0x75, 0xC7, 0x77, 0x77, 0x77, 0x5C, 0xCC, 0xC6, 0x76, 0xC5, 0x77, 0x77, 0x65, 0x55, 0x55, 0x55, 0x55, 0x77, 0x76, 0x55, 0x77, 0x77, 0x77, 0x65, 0x56, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x76, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x44, 0x46, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x64, 0x44, 0x34, 0x45, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x54, 0x43, 0x24, 0x44, 0x56, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x44, 0x42, 0x13, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x31, 0x02, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x20, 0x00, 0x12, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x21, 0x00 }; GUI_CONST_STORAGE GUI_BITMAP bmLogoBitmap = { 140, /* XSize */ 66, /* YSize */ 70, /* BytesPerLine */ 4, /* BitsPerPixel */ _acLogoSegger, /* Pointer to picture data (indices) */ &_PalLogoSegger /* Pointer to palette */ }; /* Background bitmap for button menue (Color definition) */ static GUI_CONST_STORAGE GUI_COLOR ColorsBackGround[] = { 0xE7CEAD,0xE7CEB5,0xE7CEA5,0xE7C6A5 ,0xE7C69C,0xDEC69C,0xDEBD94,0xDEBD8C ,0xDEB584,0xDEAD7B,0xDEB57B,0xD6B57B ,0xDEAD73,0xD6AD7B,0xD6AD73,0xEFD6BD ,0xE7D6BD,0xE7D6B5,0xDEBD9C,0xDEB58C ,0xDEBD84,0xEFDEC6,0xEFD6C6,0xE7D6C6 ,0xDEB573,0xEFDECE,0xEFE7CE,0xEFDED6 ,0xEFD6B5,0xE7C6AD,0xDEC694,0xEFCEB5 ,0xEFDEBD,0xEFE7D6,0xF7E7DE,0xEFE7DE ,0xF7E7D6,0xE7BD9C,0xE7BD94,0xEFEFDE ,0xEFE7E7,0xF7EFE7,0xF7EFDE,0xF7E7CE ,0xF7DECE,0xF7F7E7,0xF7EFEF,0xF7F7EF ,0xF7F7F7,0xEFCEAD,0xE7D6AD,0xEFD6AD ,0xE7C694,0xE7BD8C,0xE7B584 }; static GUI_CONST_STORAGE GUI_LOGPALETTE PalBackGround = { 55, /* number of entries */ 0, /* No transparency */ &ColorsBackGround[0] }; static GUI_CONST_STORAGE unsigned char acBackGround[] = { 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x08, 0x08, 0x09, 0x09, 0x08, 0x09, 0x0A, 0x08, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x09, 0x0B, 0x0C, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x11, 0x00, 0x00, 0x02, 0x03, 0x12, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x08, 0x07, 0x08, 0x13, 0x0B, 0x0A, 0x0A, 0x0A, 0x0C, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x0A, 0x09, 0x0E, 0x09, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x10, 0x10, 0x0F, 0x10, 0x11, 0x00, 0x02, 0x03, 0x03, 0x05, 0x12, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x08, 0x07, 0x14, 0x13, 0x08, 0x09, 0x0A, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x09, 0x0D, 0x09, 0x0E, 0x0D, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x15, 0x16, 0x17, 0x16, 0x10, 0x01, 0x00, 0x02, 0x03, 0x03, 0x04, 0x04, 0x05, 0x06, 0x06, 0x06, 0x06, 0x07, 0x13, 0x13, 0x07, 0x08, 0x08, 0x08, 0x0A, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x18, 0x0A, 0x0A, 0x08, 0x0A, 0x0D, 0x09, 0x0C, 0x0D, 0x09, 0x09, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x17, 0x15, 0x15, 0x15, 0x15, 0x10, 0x01, 0x00, 0x02, 0x03, 0x02, 0x03, 0x04, 0x05, 0x05, 0x06, 0x06, 0x13, 0x07, 0x06, 0x06, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x09, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x0B, 0x09, 0x0C, 0x0D, 0x0E, 0x09, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0F, 0x10, 0x17, 0x19, 0x19, 0x15, 0x10, 0x00, 0x00, 0x02, 0x03, 0x03, 0x03, 0x04, 0x12, 0x06, 0x07, 0x06, 0x07, 0x06, 0x06, 0x06, 0x06, 0x08, 0x08, 0x0A, 0x0D, 0x09, 0x0A, 0x0A, 0x18, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x09, 0x0A, 0x0B, 0x09, 0x09, 0x0A, 0x0D, 0x0C, 0x09, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x01, 0x11, 0x15, 0x19, 0x19, 0x1A, 0x15, 0x10, 0x01, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x12, 0x06, 0x06, 0x06, 0x07, 0x12, 0x12, 0x06, 0x07, 0x08, 0x09, 0x09, 0x0C, 0x0A, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x08, 0x09, 0x09, 0x0A, 0x0D, 0x0E, 0x09, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x00, 0x01, 0x11, 0x15, 0x19, 0x1B, 0x19, 0x15, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04, 0x12, 0x06, 0x06, 0x07, 0x06, 0x06, 0x06, 0x07, 0x13, 0x08, 0x0A, 0x0D, 0x09, 0x0D, 0x0A, 0x08, 0x0A, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0E, 0x0A, 0x09, 0x09, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x01, 0x01, 0x01, 0x10, 0x15, 0x19, 0x1A, 0x15, 0x17, 0x0F, 0x01, 0x01, 0x01, 0x00, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x06, 0x06, 0x06, 0x06, 0x07, 0x08, 0x0A, 0x0D, 0x0C, 0x09, 0x0D, 0x09, 0x09, 0x08, 0x0A, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x0D, 0x0B, 0x09, 0x0D, 0x0E, 0x0D, 0x0C, 0x09, 0x09, 0x09, 0x0D, 0x0C, 0x0D, 0x01, 0x11, 0x1C, 0x11, 0x10, 0x15, 0x19, 0x19, 0x15, 0x17, 0x10, 0x0F, 0x11, 0x01, 0x00, 0x02, 0x05, 0x04, 0x12, 0x07, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x08, 0x09, 0x0D, 0x0E, 0x09, 0x0C, 0x0D, 0x09, 0x0D, 0x08, 0x0A, 0x09, 0x0B, 0x0D, 0x0C, 0x09, 0x0E, 0x09, 0x0A, 0x0A, 0x0D, 0x0B, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x1C, 0x11, 0x11, 0x01, 0x1C, 0x10, 0x10, 0x17, 0x15, 0x15, 0x15, 0x17, 0x10, 0x11, 0x00, 0x00, 0x1D, 0x04, 0x06, 0x06, 0x07, 0x06, 0x12, 0x12, 0x06, 0x07, 0x08, 0x0A, 0x09, 0x0C, 0x0D, 0x0E, 0x0A, 0x0D, 0x0C, 0x09, 0x0D, 0x0D, 0x09, 0x09, 0x0B, 0x09, 0x0A, 0x0A, 0x08, 0x09, 0x0D, 0x09, 0x09, 0x0C, 0x0D, 0x0C, 0x0D, 0x10, 0x10, 0x1C, 0x11, 0x01, 0x01, 0x11, 0x0F, 0x10, 0x15, 0x19, 0x15, 0x17, 0x0F, 0x11, 0x00, 0x02, 0x05, 0x12, 0x06, 0x13, 0x06, 0x06, 0x1E, 0x06, 0x07, 0x13, 0x08, 0x0A, 0x09, 0x09, 0x0E, 0x09, 0x0A, 0x0D, 0x0C, 0x0A, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x0B, 0x09, 0x09, 0x0D, 0x0C, 0x10, 0x10, 0x11, 0x01, 0x01, 0x02, 0x00, 0x11, 0x10, 0x10, 0x17, 0x15, 0x0F, 0x10, 0x10, 0x11, 0x00, 0x03, 0x04, 0x06, 0x07, 0x07, 0x07, 0x06, 0x07, 0x13, 0x14, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x0A, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x0E, 0x09, 0x0D, 0x1C, 0x11, 0x1F, 0x01, 0x01, 0x00, 0x02, 0x00, 0x11, 0x0F, 0x15, 0x10, 0x17, 0x10, 0x1C, 0x01, 0x00, 0x02, 0x05, 0x12, 0x07, 0x13, 0x13, 0x08, 0x13, 0x14, 0x07, 0x13, 0x08, 0x08, 0x08, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x09, 0x0B, 0x09, 0x0D, 0x10, 0x01, 0x11, 0x11, 0x01, 0x00, 0x02, 0x02, 0x01, 0x10, 0x10, 0x15, 0x20, 0x10, 0x11, 0x00, 0x02, 0x03, 0x04, 0x12, 0x07, 0x07, 0x14, 0x14, 0x07, 0x13, 0x13, 0x14, 0x07, 0x08, 0x08, 0x0D, 0x08, 0x0B, 0x08, 0x08, 0x0B, 0x08, 0x0B, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x18, 0x0A, 0x09, 0x09, 0x09, 0x0B, 0x09, 0x0E, 0x09, 0x10, 0x0F, 0x11, 0x1C, 0x11, 0x01, 0x00, 0x02, 0x02, 0x01, 0x10, 0x10, 0x10, 0x0F, 0x01, 0x00, 0x02, 0x03, 0x05, 0x12, 0x06, 0x13, 0x08, 0x13, 0x08, 0x07, 0x13, 0x13, 0x14, 0x13, 0x08, 0x13, 0x08, 0x08, 0x08, 0x13, 0x08, 0x08, 0x13, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x09, 0x0E, 0x09, 0x0D, 0x15, 0x17, 0x17, 0x10, 0x10, 0x1C, 0x01, 0x00, 0x00, 0x01, 0x10, 0x0F, 0x10, 0x11, 0x01, 0x00, 0x02, 0x03, 0x04, 0x1E, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x13, 0x07, 0x06, 0x07, 0x07, 0x08, 0x13, 0x08, 0x08, 0x07, 0x13, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x0A, 0x08, 0x0A, 0x09, 0x09, 0x0A, 0x0D, 0x0A, 0x09, 0x0D, 0x19, 0x19, 0x15, 0x15, 0x16, 0x10, 0x11, 0x01, 0x01, 0x11, 0x1C, 0x01, 0x11, 0x01, 0x00, 0x02, 0x02, 0x03, 0x05, 0x12, 0x06, 0x06, 0x07, 0x08, 0x13, 0x13, 0x07, 0x13, 0x07, 0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x08, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x09, 0x0B, 0x0D, 0x0C, 0x09, 0x0E, 0x0C, 0x21, 0x21, 0x19, 0x19, 0x17, 0x10, 0x0F, 0x10, 0x1C, 0x10, 0x10, 0x10, 0x1C, 0x01, 0x00, 0x00, 0x02, 0x03, 0x04, 0x12, 0x06, 0x07, 0x06, 0x13, 0x14, 0x07, 0x13, 0x07, 0x13, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x06, 0x06, 0x06, 0x13, 0x13, 0x07, 0x08, 0x08, 0x09, 0x08, 0x09, 0x0E, 0x09, 0x09, 0x0D, 0x0E, 0x0D, 0x0D, 0x22, 0x23, 0x1A, 0x19, 0x15, 0x15, 0x17, 0x10, 0x10, 0x10, 0x10, 0x10, 0x11, 0x01, 0x00, 0x02, 0x00, 0x03, 0x05, 0x1E, 0x06, 0x06, 0x07, 0x07, 0x13, 0x08, 0x14, 0x13, 0x14, 0x13, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x13, 0x07, 0x08, 0x08, 0x0A, 0x0A, 0x0E, 0x0C, 0x0A, 0x09, 0x09, 0x0C, 0x0D, 0x23, 0x22, 0x1A, 0x19, 0x19, 0x15, 0x15, 0x15, 0x10, 0x16, 0x0F, 0x10, 0x1C, 0x01, 0x00, 0x02, 0x02, 0x02, 0x03, 0x12, 0x06, 0x06, 0x06, 0x06, 0x07, 0x13, 0x07, 0x13, 0x07, 0x13, 0x07, 0x06, 0x06, 0x12, 0x12, 0x06, 0x12, 0x06, 0x06, 0x06, 0x07, 0x13, 0x07, 0x13, 0x0D, 0x08, 0x0A, 0x0A, 0x09, 0x0A, 0x0A, 0x0D, 0x0C, 0x23, 0x21, 0x19, 0x19, 0x17, 0x19, 0x15, 0x15, 0x15, 0x15, 0x17, 0x10, 0x10, 0x11, 0x01, 0x00, 0x02, 0x03, 0x03, 0x04, 0x05, 0x12, 0x06, 0x06, 0x06, 0x06, 0x06, 0x13, 0x07, 0x07, 0x06, 0x06, 0x06, 0x12, 0x1E, 0x05, 0x06, 0x05, 0x12, 0x06, 0x06, 0x06, 0x13, 0x14, 0x13, 0x0B, 0x08, 0x08, 0x0B, 0x0A, 0x09, 0x0A, 0x09, 0x23, 0x24, 0x21, 0x19, 0x1A, 0x19, 0x15, 0x19, 0x19, 0x17, 0x20, 0x10, 0x10, 0x1C, 0x01, 0x01, 0x00, 0x00, 0x02, 0x03, 0x05, 0x04, 0x05, 0x05, 0x12, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x12, 0x1E, 0x25, 0x06, 0x05, 0x26, 0x05, 0x06, 0x06, 0x06, 0x07, 0x13, 0x14, 0x13, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x0A, 0x0A, 0x27, 0x23, 0x21, 0x21, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x15, 0x19, 0x16, 0x10, 0x10, 0x0F, 0x11, 0x00, 0x00, 0x00, 0x02, 0x03, 0x05, 0x03, 0x04, 0x04, 0x05, 0x04, 0x12, 0x12, 0x06, 0x12, 0x1E, 0x12, 0x12, 0x1E, 0x12, 0x1E, 0x12, 0x06, 0x05, 0x12, 0x06, 0x06, 0x13, 0x14, 0x08, 0x07, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x28, 0x29, 0x29, 0x22, 0x22, 0x23, 0x21, 0x21, 0x1A, 0x19, 0x15, 0x19, 0x15, 0x16, 0x10, 0x11, 0x11, 0x01, 0x01, 0x00, 0x00, 0x02, 0x03, 0x03, 0x03, 0x03, 0x05, 0x04, 0x04, 0x05, 0x06, 0x04, 0x06, 0x05, 0x26, 0x1E, 0x12, 0x04, 0x05, 0x26, 0x05, 0x06, 0x06, 0x07, 0x07, 0x08, 0x08, 0x13, 0x08, 0x13, 0x08, 0x08, 0x0B, 0x27, 0x29, 0x27, 0x28, 0x28, 0x23, 0x23, 0x23, 0x24, 0x23, 0x21, 0x1A, 0x19, 0x15, 0x15, 0x16, 0x10, 0x0F, 0x11, 0x11, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x12, 0x05, 0x06, 0x1E, 0x12, 0x04, 0x03, 0x04, 0x12, 0x1E, 0x12, 0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x13, 0x0B, 0x08, 0x13, 0x22, 0x23, 0x29, 0x29, 0x2A, 0x2A, 0x2A, 0x23, 0x27, 0x23, 0x22, 0x21, 0x21, 0x19, 0x19, 0x15, 0x17, 0x10, 0x10, 0x0F, 0x10, 0x11, 0x01, 0x11, 0x01, 0x00, 0x00, 0x00, 0x03, 0x02, 0x03, 0x04, 0x04, 0x12, 0x1E, 0x12, 0x04, 0x05, 0x05, 0x05, 0x06, 0x04, 0x1E, 0x12, 0x06, 0x06, 0x06, 0x06, 0x13, 0x07, 0x07, 0x13, 0x08, 0x23, 0x23, 0x23, 0x27, 0x28, 0x23, 0x2A, 0x29, 0x22, 0x27, 0x23, 0x22, 0x21, 0x21, 0x19, 0x19, 0x19, 0x15, 0x16, 0x10, 0x10, 0x0F, 0x10, 0x11, 0x11, 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x03, 0x04, 0x05, 0x25, 0x05, 0x05, 0x03, 0x04, 0x12, 0x04, 0x06, 0x12, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x06, 0x07, 0x07, 0x24, 0x21, 0x22, 0x23, 0x22, 0x23, 0x23, 0x27, 0x28, 0x28, 0x29, 0x28, 0x23, 0x24, 0x21, 0x19, 0x1A, 0x17, 0x15, 0x15, 0x10, 0x10, 0x0F, 0x1C, 0x11, 0x1C, 0x11, 0x01, 0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x05, 0x05, 0x06, 0x26, 0x05, 0x06, 0x12, 0x12, 0x06, 0x06, 0x06, 0x06, 0x06, 0x19, 0x19, 0x21, 0x19, 0x21, 0x21, 0x23, 0x22, 0x27, 0x2A, 0x29, 0x27, 0x2A, 0x23, 0x23, 0x2B, 0x19, 0x19, 0x15, 0x17, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x01, 0x11, 0x11, 0x11, 0x01, 0x01, 0x00, 0x02, 0x04, 0x03, 0x03, 0x04, 0x03, 0x05, 0x03, 0x05, 0x04, 0x04, 0x05, 0x12, 0x04, 0x04, 0x05, 0x12, 0x06, 0x06, 0x06, 0x06, 0x21, 0x24, 0x19, 0x1A, 0x19, 0x19, 0x24, 0x23, 0x23, 0x22, 0x28, 0x29, 0x28, 0x23, 0x23, 0x21, 0x21, 0x19, 0x19, 0x15, 0x15, 0x17, 0x10, 0x10, 0x0F, 0x10, 0x0F, 0x11, 0x1F, 0x11, 0x00, 0x00, 0x00, 0x02, 0x05, 0x03, 0x03, 0x05, 0x03, 0x03, 0x03, 0x03, 0x05, 0x04, 0x04, 0x05, 0x04, 0x05, 0x04, 0x12, 0x05, 0x12, 0x12, 0x23, 0x21, 0x21, 0x19, 0x1A, 0x1A, 0x19, 0x21, 0x23, 0x27, 0x2A, 0x27, 0x2A, 0x2A, 0x23, 0x22, 0x21, 0x1A, 0x19, 0x15, 0x15, 0x0F, 0x10, 0x10, 0x10, 0x17, 0x17, 0x10, 0x10, 0x11, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x02, 0x04, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x05, 0x04, 0x04, 0x04, 0x04, 0x23, 0x22, 0x23, 0x24, 0x21, 0x1B, 0x2B, 0x21, 0x24, 0x23, 0x23, 0x22, 0x28, 0x22, 0x27, 0x23, 0x23, 0x24, 0x19, 0x19, 0x17, 0x15, 0x16, 0x10, 0x16, 0x10, 0x10, 0x16, 0x10, 0x0F, 0x11, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x05, 0x04, 0x03, 0x05, 0x04, 0x03, 0x05, 0x03, 0x03, 0x05, 0x22, 0x27, 0x23, 0x23, 0x21, 0x24, 0x21, 0x1B, 0x19, 0x21, 0x21, 0x23, 0x23, 0x27, 0x28, 0x22, 0x23, 0x23, 0x21, 0x1A, 0x19, 0x15, 0x17, 0x10, 0x10, 0x17, 0x16, 0x10, 0x10, 0x11, 0x11, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x04, 0x03, 0x2A, 0x23, 0x22, 0x23, 0x23, 0x21, 0x21, 0x2C, 0x1A, 0x19, 0x2C, 0x21, 0x22, 0x23, 0x2A, 0x27, 0x23, 0x23, 0x23, 0x24, 0x19, 0x15, 0x15, 0x15, 0x17, 0x10, 0x10, 0x10, 0x0F, 0x11, 0x1F, 0x11, 0x11, 0x11, 0x11, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x02, 0x05, 0x29, 0x27, 0x27, 0x22, 0x21, 0x21, 0x19, 0x21, 0x19, 0x1A, 0x1A, 0x19, 0x21, 0x23, 0x23, 0x22, 0x27, 0x23, 0x22, 0x21, 0x21, 0x1A, 0x15, 0x16, 0x10, 0x17, 0x20, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x0F, 0x01, 0x1C, 0x11, 0x01, 0x11, 0x11, 0x11, 0x11, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x02, 0x03, 0x03, 0x28, 0x29, 0x22, 0x23, 0x23, 0x24, 0x1A, 0x19, 0x1A, 0x19, 0x1B, 0x1A, 0x19, 0x24, 0x23, 0x23, 0x22, 0x23, 0x23, 0x23, 0x21, 0x1B, 0x1A, 0x15, 0x15, 0x10, 0x17, 0x0F, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x10, 0x11, 0x11, 0x1C, 0x01, 0x1C, 0x01, 0x11, 0x11, 0x11, 0x01, 0x01, 0x01, 0x00, 0x00, 0x1D, 0x00, 0x03, 0x02, 0x29, 0x28, 0x27, 0x23, 0x22, 0x21, 0x1B, 0x1A, 0x1B, 0x19, 0x1A, 0x1A, 0x19, 0x21, 0x23, 0x23, 0x27, 0x23, 0x23, 0x23, 0x22, 0x21, 0x19, 0x15, 0x15, 0x17, 0x20, 0x17, 0x10, 0x17, 0x17, 0x16, 0x10, 0x16, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x11, 0x1F, 0x11, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1D, 0x02, 0x2D, 0x28, 0x2A, 0x23, 0x23, 0x23, 0x24, 0x21, 0x24, 0x21, 0x24, 0x19, 0x1A, 0x1B, 0x24, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x21, 0x19, 0x15, 0x15, 0x16, 0x17, 0x15, 0x10, 0x15, 0x20, 0x15, 0x17, 0x15, 0x10, 0x10, 0x0F, 0x10, 0x0F, 0x0F, 0x01, 0x11, 0x01, 0x11, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x29, 0x29, 0x28, 0x29, 0x23, 0x27, 0x23, 0x23, 0x23, 0x21, 0x23, 0x24, 0x19, 0x21, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x21, 0x19, 0x15, 0x19, 0x15, 0x15, 0x15, 0x15, 0x16, 0x15, 0x20, 0x20, 0x16, 0x17, 0x17, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x11, 0x1C, 0x11, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x1D, 0x29, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x2A, 0x23, 0x22, 0x23, 0x23, 0x24, 0x21, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x22, 0x21, 0x1A, 0x1A, 0x19, 0x19, 0x15, 0x19, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x20, 0x15, 0x10, 0x17, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x11, 0x01, 0x11, 0x11, 0x01, 0x00, 0x00, 0x00, 0x00, 0x29, 0x29, 0x29, 0x29, 0x29, 0x28, 0x28, 0x28, 0x22, 0x27, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x22, 0x21, 0x1B, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x15, 0x19, 0x15, 0x19, 0x15, 0x15, 0x16, 0x17, 0x17, 0x15, 0x10, 0x17, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1C, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x28, 0x2A, 0x23, 0x27, 0x22, 0x23, 0x23, 0x2A, 0x23, 0x2A, 0x23, 0x23, 0x23, 0x23, 0x21, 0x21, 0x1A, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x20, 0x16, 0x17, 0x17, 0x15, 0x17, 0x0F, 0x10, 0x0F, 0x10, 0x11, 0x1C, 0x11, 0x11, 0x01, 0x01, 0x01, 0x29, 0x29, 0x28, 0x2D, 0x28, 0x2D, 0x29, 0x28, 0x2A, 0x23, 0x22, 0x23, 0x23, 0x2A, 0x23, 0x27, 0x23, 0x23, 0x23, 0x23, 0x23, 0x24, 0x23, 0x1B, 0x1A, 0x1A, 0x1B, 0x19, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x15, 0x19, 0x15, 0x15, 0x15, 0x0F, 0x0F, 0x15, 0x17, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1F, 0x11, 0x11, 0x00, 0x01, 0x29, 0x29, 0x29, 0x29, 0x2D, 0x29, 0x29, 0x29, 0x28, 0x29, 0x27, 0x28, 0x2A, 0x23, 0x29, 0x22, 0x22, 0x27, 0x23, 0x23, 0x23, 0x23, 0x24, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x1B, 0x1A, 0x1B, 0x1A, 0x1A, 0x1A, 0x19, 0x15, 0x19, 0x15, 0x15, 0x15, 0x15, 0x20, 0x15, 0x15, 0x16, 0x10, 0x0F, 0x10, 0x10, 0x11, 0x1F, 0x11, 0x01, 0x2E, 0x2D, 0x28, 0x2E, 0x2E, 0x29, 0x28, 0x29, 0x28, 0x29, 0x28, 0x2A, 0x28, 0x2A, 0x28, 0x27, 0x28, 0x27, 0x29, 0x2A, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x19, 0x1A, 0x19, 0x19, 0x15, 0x19, 0x19, 0x19, 0x19, 0x15, 0x15, 0x0F, 0x17, 0x17, 0x10, 0x10, 0x10, 0x11, 0x11, 0x01, 0x2E, 0x2E, 0x2E, 0x2E, 0x28, 0x2E, 0x2D, 0x29, 0x29, 0x29, 0x29, 0x28, 0x29, 0x28, 0x29, 0x29, 0x28, 0x29, 0x23, 0x23, 0x2A, 0x23, 0x23, 0x21, 0x21, 0x21, 0x23, 0x1B, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x1B, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x15, 0x19, 0x15, 0x15, 0x16, 0x10, 0x0F, 0x10, 0x0F, 0x01, 0x1C, 0x28, 0x28, 0x2F, 0x2D, 0x2E, 0x28, 0x2E, 0x2E, 0x28, 0x2D, 0x29, 0x29, 0x28, 0x29, 0x28, 0x29, 0x28, 0x29, 0x29, 0x28, 0x28, 0x2A, 0x27, 0x23, 0x23, 0x23, 0x24, 0x23, 0x21, 0x23, 0x21, 0x23, 0x21, 0x21, 0x21, 0x19, 0x1A, 0x1A, 0x1A, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x15, 0x16, 0x20, 0x17, 0x10, 0x10, 0x10, 0x10, 0x10, 0x2F, 0x2F, 0x2E, 0x2E, 0x2F, 0x2F, 0x2E, 0x2F, 0x2E, 0x2E, 0x2E, 0x2E, 0x29, 0x2D, 0x28, 0x29, 0x29, 0x27, 0x28, 0x29, 0x29, 0x28, 0x29, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x24, 0x23, 0x21, 0x23, 0x1B, 0x21, 0x21, 0x21, 0x1B, 0x19, 0x1B, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x15, 0x16, 0x15, 0x16, 0x17, 0x10, 0x0F, 0x10, 0x2E, 0x2E, 0x2F, 0x2F, 0x2F, 0x2F, 0x2F, 0x2E, 0x2F, 0x28, 0x2D, 0x28, 0x2E, 0x2E, 0x2E, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x29, 0x28, 0x29, 0x23, 0x27, 0x22, 0x23, 0x23, 0x23, 0x23, 0x21, 0x23, 0x21, 0x23, 0x21, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x1B, 0x1A, 0x1B, 0x19, 0x19, 0x19, 0x15, 0x20, 0x16, 0x17, 0x10, 0x10, 0x2F, 0x2F, 0x2E, 0x30, 0x30, 0x2E, 0x2F, 0x2F, 0x2E, 0x2F, 0x2E, 0x2F, 0x2E, 0x28, 0x2E, 0x2E, 0x28, 0x29, 0x29, 0x29, 0x29, 0x28, 0x28, 0x2A, 0x22, 0x27, 0x27, 0x2A, 0x23, 0x23, 0x23, 0x22, 0x21, 0x21, 0x23, 0x1B, 0x21, 0x21, 0x1B, 0x21, 0x1B, 0x21, 0x1B, 0x1A, 0x19, 0x19, 0x19, 0x15, 0x16, 0x15, 0x0F, 0x17, 0x16, 0x2E, 0x2F, 0x2F, 0x2E, 0x2F, 0x30, 0x2E, 0x2F, 0x2E, 0x2F, 0x2E, 0x28, 0x2D, 0x2E, 0x28, 0x2F, 0x2D, 0x29, 0x28, 0x29, 0x29, 0x2D, 0x29, 0x28, 0x28, 0x29, 0x22, 0x23, 0x27, 0x23, 0x23, 0x23, 0x23, 0x21, 0x23, 0x23, 0x21, 0x23, 0x21, 0x23, 0x21, 0x21, 0x1B, 0x21, 0x19, 0x21, 0x19, 0x19, 0x15, 0x15, 0x15, 0x20, 0x16, 0x2E, 0x2E, 0x2E, 0x2F, 0x2E, 0x2E, 0x2F, 0x2E, 0x2F, 0x2E, 0x2F, 0x2E, 0x2F, 0x28, 0x2F, 0x28, 0x2E, 0x2E, 0x2F, 0x29, 0x29, 0x28, 0x29, 0x29, 0x29, 0x28, 0x28, 0x29, 0x22, 0x27, 0x2A, 0x23, 0x23, 0x23, 0x24, 0x23, 0x24, 0x23, 0x21, 0x23, 0x1B, 0x23, 0x21, 0x21, 0x21, 0x19, 0x19, 0x19, 0x19, 0x19, 0x15, 0x16, 0x20, 0x2F, 0x28, 0x2F, 0x2E, 0x2E, 0x2F, 0x2E, 0x2E, 0x2F, 0x2E, 0x2E, 0x29, 0x28, 0x2D, 0x2E, 0x29, 0x2F, 0x28, 0x29, 0x28, 0x29, 0x2D, 0x28, 0x29, 0x28, 0x28, 0x29, 0x28, 0x27, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x23, 0x1B, 0x23, 0x1B, 0x1B, 0x21, 0x1A, 0x1B, 0x19, 0x15, 0x19, 0x15, 0x28, 0x2F, 0x28, 0x28, 0x2D, 0x28, 0x28, 0x2D, 0x28, 0x28, 0x2D, 0x2E, 0x2F, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x2E, 0x2F, 0x29, 0x29, 0x29, 0x28, 0x29, 0x29, 0x29, 0x28, 0x2A, 0x27, 0x27, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x24, 0x23, 0x21, 0x21, 0x21, 0x21, 0x21, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x2F, 0x2E, 0x2F, 0x2E, 0x2E, 0x2F, 0x2E, 0x2E, 0x2F, 0x2E, 0x2E, 0x28, 0x29, 0x2E, 0x28, 0x2F, 0x29, 0x28, 0x2D, 0x2E, 0x28, 0x29, 0x29, 0x28, 0x2D, 0x28, 0x29, 0x27, 0x22, 0x22, 0x23, 0x27, 0x22, 0x27, 0x22, 0x27, 0x23, 0x23, 0x23, 0x23, 0x23, 0x22, 0x23, 0x21, 0x23, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x1A, 0x19, 0x1A, 0x2E, 0x28, 0x2E, 0x28, 0x2E, 0x2D, 0x28, 0x29, 0x28, 0x2D, 0x28, 0x2F, 0x2E, 0x2D, 0x2F, 0x28, 0x2E, 0x2F, 0x2E, 0x28, 0x2E, 0x29, 0x2D, 0x27, 0x29, 0x29, 0x28, 0x29, 0x27, 0x27, 0x27, 0x23, 0x27, 0x23, 0x27, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x23, 0x21, 0x1B, 0x21, 0x1B, 0x21, 0x19, 0x29, 0x28, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2F, 0x2E, 0x29, 0x28, 0x2E, 0x29, 0x2F, 0x29, 0x28, 0x2E, 0x2F, 0x28, 0x28, 0x29, 0x29, 0x28, 0x2A, 0x27, 0x22, 0x22, 0x28, 0x2A, 0x23, 0x29, 0x29, 0x23, 0x2A, 0x23, 0x2A, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x21, 0x21, 0x21, 0x21, 0x29, 0x2D, 0x29, 0x28, 0x28, 0x2E, 0x28, 0x2E, 0x2E, 0x2E, 0x2E, 0x28, 0x2F, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x28, 0x2F, 0x29, 0x27, 0x29, 0x29, 0x28, 0x2A, 0x23, 0x28, 0x2A, 0x23, 0x29, 0x28, 0x27, 0x29, 0x23, 0x2A, 0x28, 0x27, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x24, 0x23, 0x23, 0x21, 0x1B, 0x29, 0x29, 0x29, 0x2D, 0x2D, 0x28, 0x2F, 0x28, 0x2E, 0x28, 0x2E, 0x2E, 0x2E, 0x28, 0x2F, 0x28, 0x2E, 0x28, 0x2E, 0x2E, 0x2E, 0x28, 0x29, 0x29, 0x28, 0x28, 0x29, 0x28, 0x29, 0x27, 0x29, 0x27, 0x22, 0x29, 0x28, 0x28, 0x29, 0x28, 0x2A, 0x29, 0x2A, 0x2A, 0x27, 0x22, 0x27, 0x23, 0x23, 0x23, 0x23, 0x23, 0x22, 0x23, 0x22, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x2E, 0x2F, 0x28, 0x28, 0x2E, 0x2E, 0x2E, 0x2F, 0x28, 0x2E, 0x2E, 0x28, 0x2E, 0x29, 0x2D, 0x28, 0x29, 0x29, 0x29, 0x29, 0x28, 0x29, 0x28, 0x29, 0x28, 0x28, 0x29, 0x29, 0x28, 0x29, 0x28, 0x28, 0x28, 0x23, 0x29, 0x27, 0x23, 0x2A, 0x23, 0x2A, 0x23, 0x27, 0x23, 0x23, 0x23, 0x29, 0x28, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x29, 0x2F, 0x2D, 0x28, 0x2E, 0x28, 0x2E, 0x2F, 0x28, 0x2E, 0x2F, 0x28, 0x29, 0x29, 0x27, 0x2D, 0x28, 0x28, 0x29, 0x29, 0x2A, 0x28, 0x29, 0x29, 0x28, 0x28, 0x29, 0x28, 0x28, 0x29, 0x28, 0x29, 0x28, 0x22, 0x29, 0x23, 0x2A, 0x23, 0x27, 0x22, 0x23, 0x27, 0x22, 0x28, 0x29, 0x28, 0x29, 0x28, 0x2D, 0x28, 0x2D, 0x29, 0x29, 0x2D, 0x28, 0x29, 0x28, 0x2D, 0x2E, 0x2E, 0x28, 0x2E, 0x2E, 0x28, 0x2D, 0x29, 0x29, 0x28, 0x29, 0x2A, 0x2D, 0x28, 0x27, 0x28, 0x2D, 0x29, 0x28, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x27, 0x29, 0x27, 0x28, 0x28, 0x2A, 0x28, 0x29, 0x29, 0x23, 0x29, 0x22, 0x27, 0x29, 0x28, 0x29, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x28, 0x2D, 0x2E, 0x2E, 0x28, 0x2D, 0x29, 0x28, 0x2D, 0x29, 0x28, 0x29, 0x27, 0x29, 0x29, 0x29, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x28, 0x29, 0x28, 0x29, 0x29, 0x28, 0x29, 0x29, 0x29, 0x28, 0x29, 0x28, 0x28, 0x29, 0x27, 0x28, 0x29, 0x27, 0x27, 0x28, 0x29, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x2D, 0x2D, 0x29, 0x28, 0x28, 0x29, 0x29, 0x29, 0x29, 0x28, 0x29, 0x2D, 0x29, 0x29, 0x28, 0x28, 0x29, 0x29, 0x2E, 0x28, 0x2E, 0x28, 0x2F, 0x28, 0x29, 0x28, 0x29, 0x29, 0x28, 0x29, 0x28, 0x29, 0x28, 0x2A, 0x29, 0x28, 0x28, 0x29, 0x28, 0x2A, 0x29, 0x29, 0x27, 0x28, 0x28, 0x28, 0x29, 0x28, 0x28, 0x28, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x2D, 0x2D, 0x2D, 0x28, 0x29, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x2D, 0x2E, 0x2F, 0x28, 0x2F, 0x29, 0x2D, 0x2F, 0x28, 0x2F, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x28, 0x28, 0x29, 0x2A, 0x28, 0x23, 0x23, 0x23, 0x2A, 0x2A, 0x2A, 0x29, 0x27, 0x29, 0x29, 0x29, 0x29, 0x28, 0x29, 0x28, 0x29, 0x28, 0x28, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x28, 0x2D, 0x28, 0x2D, 0x2E, 0x2E, 0x28, 0x2F, 0x2E, 0x2E, 0x2E, 0x28, 0x2F, 0x29, 0x2E, 0x28, 0x29, 0x28, 0x29, 0x28, 0x2D, 0x28, 0x29, 0x29, 0x2D, 0x29, 0x28, 0x29, 0x23, 0x27, 0x23, 0x28, 0x23, 0x27, 0x27, 0x22, 0x27, 0x23, 0x27, 0x27, 0x2A, 0x28, 0x29, 0x28, 0x29, 0x28, 0x28, 0x28, 0x29, 0x28, 0x29, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x2E, 0x28, 0x2D, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x2F, 0x29, 0x2E, 0x2D, 0x2E, 0x29, 0x2D, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x2A, 0x23, 0x2A, 0x23, 0x23, 0x23, 0x28, 0x23, 0x23, 0x2A, 0x22, 0x23, 0x23, 0x2A, 0x27, 0x27, 0x2A, 0x28, 0x29, 0x29, 0x28, 0x29, 0x29, 0x2D, 0x29, 0x29, 0x2D, 0x28, 0x2E, 0x2F, 0x28, 0x2E, 0x2D, 0x2F, 0x2D, 0x2E, 0x28, 0x2F, 0x28, 0x2E, 0x28, 0x2E, 0x29, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x2A, 0x23, 0x2A, 0x23, 0x23, 0x23, 0x27, 0x23, 0x23, 0x2A, 0x28, 0x2A, 0x28, 0x28, 0x2D, 0x28, 0x29, 0x29, 0x2D, 0x28, 0x29, 0x28, 0x2F, 0x28, 0x2E, 0x2F, 0x2E, 0x2E, 0x2E, 0x2E, 0x2D, 0x2E, 0x2D, 0x2E, 0x2D, 0x2F, 0x28, 0x2E, 0x28, 0x2E, 0x29, 0x2F, 0x29, 0x29, 0x2D, 0x28, 0x29, 0x23, 0x27, 0x23, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x22, 0x23, 0x22, 0x23, 0x28, 0x2A, 0x27, 0x2A, 0x29, 0x28, 0x29, 0x29, 0x28, 0x29, 0x2D, 0x29, 0x2E, 0x2E, 0x29, 0x2F, 0x28, 0x2E, 0x2D, 0x2E, 0x28, 0x2E, 0x28, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x28, 0x29, 0x2E, 0x2E, 0x29, 0x29, 0x29, 0x23, 0x23, 0x23, 0x23, 0x23, 0x27, 0x23, 0x23, 0x23, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x22, 0x27, 0x28, 0x29, 0x28, 0x29, 0x2D, 0x29, 0x29, 0x28, 0x2E, 0x2E, 0x28, 0x2D, 0x2E, 0x28, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x29, 0x2F, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x2E, 0x2E, 0x28, 0x2D, 0x2E, 0x2E, 0x2E, 0x2E, 0x2A, 0x23, 0x22, 0x27, 0x22, 0x23, 0x23, 0x22, 0x21, 0x23, 0x21, 0x23, 0x24, 0x23, 0x23, 0x22, 0x23, 0x27, 0x22, 0x2A, 0x27, 0x2A, 0x28, 0x28, 0x28, 0x29, 0x2D, 0x28, 0x2E, 0x2E, 0x2E, 0x29, 0x2F, 0x28, 0x2F, 0x29, 0x2F, 0x28, 0x2E, 0x2E, 0x2F, 0x28, 0x2E, 0x2E, 0x2E, 0x28, 0x2F, 0x2E, 0x2E, 0x28, 0x2E, 0x28, 0x2F, 0x23, 0x23, 0x27, 0x23, 0x23, 0x27, 0x22, 0x23, 0x21, 0x22, 0x23, 0x24, 0x23, 0x23, 0x24, 0x23, 0x27, 0x23, 0x27, 0x28, 0x22, 0x27, 0x28, 0x2A, 0x29, 0x28, 0x29, 0x29, 0x2D, 0x28, 0x2E, 0x2E, 0x28, 0x2F, 0x2E, 0x2E, 0x2E, 0x2E, 0x2E, 0x28, 0x2E, 0x2F, 0x28, 0x2F, 0x28, 0x2F, 0x28, 0x2D, 0x28, 0x2F, 0x28, 0x2F, 0x28, 0x2A, 0x23, 0x22, 0x27, 0x23, 0x23, 0x21, 0x23, 0x23, 0x21, 0x23, 0x23, 0x21, 0x23, 0x23, 0x23, 0x22, 0x23, 0x22, 0x23, 0x27, 0x22, 0x2A, 0x27, 0x27, 0x28, 0x28, 0x2D, 0x28, 0x2D, 0x2E, 0x28, 0x2F, 0x2E, 0x28, 0x2E, 0x28, 0x2E, 0x28, 0x2F, 0x2E, 0x28, 0x2E, 0x2E, 0x2D, 0x29, 0x2E, 0x2E, 0x2F, 0x29, 0x2F, 0x29, 0x2F, 0x23, 0x27, 0x23, 0x22, 0x23, 0x22, 0x27, 0x23, 0x23, 0x22, 0x21, 0x23, 0x22, 0x21, 0x24, 0x23, 0x21, 0x23, 0x23, 0x21, 0x21, 0x23, 0x23, 0x23, 0x22, 0x2A, 0x27, 0x28, 0x29, 0x28, 0x2D, 0x29, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x28, 0x2E, 0x2E, 0x28, 0x2E, 0x2E, 0x2E, 0x28, 0x2D, 0x2E, 0x28, 0x2E, 0x28, 0x2F, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x23, 0x2A, 0x23, 0x23, 0x22, 0x21, 0x23, 0x23, 0x23, 0x23, 0x22, 0x21, 0x2B, 0x21, 0x19, 0x21, 0x24, 0x23, 0x23, 0x23, 0x27, 0x2A, 0x28, 0x28, 0x29, 0x29, 0x2D, 0x28, 0x28, 0x2D, 0x29, 0x29, 0x29, 0x2D, 0x28, 0x2E, 0x2F, 0x28, 0x2F, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x29, 0x23, 0x23, 0x22, 0x23, 0x23, 0x23, 0x2A, 0x23, 0x23, 0x23, 0x21, 0x23, 0x24, 0x23, 0x24, 0x21, 0x21, 0x21, 0x19, 0x19, 0x1A, 0x2C, 0x21, 0x21, 0x23, 0x22, 0x23, 0x22, 0x27, 0x29, 0x28, 0x29, 0x29, 0x29, 0x2D, 0x2D, 0x28, 0x29, 0x29, 0x29, 0x29, 0x2E, 0x28, 0x2E, 0x2E, 0x29, 0x2F, 0x28, 0x2D, 0x2E, 0x29, 0x2F, 0x28, 0x23, 0x23, 0x21, 0x23, 0x22, 0x27, 0x23, 0x23, 0x22, 0x21, 0x22, 0x21, 0x21, 0x21, 0x21, 0x1B, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x1A, 0x24, 0x21, 0x23, 0x23, 0x27, 0x22, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x29, 0x29, 0x29, 0x28, 0x2D, 0x28, 0x2D, 0x2E, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x24, 0x21, 0x22, 0x21, 0x23, 0x23, 0x23, 0x23, 0x23, 0x21, 0x21, 0x21, 0x2C, 0x19, 0x1A, 0x1A, 0x1A, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x24, 0x21, 0x22, 0x23, 0x27, 0x2A, 0x27, 0x29, 0x28, 0x28, 0x29, 0x28, 0x29, 0x29, 0x2D, 0x29, 0x29, 0x29, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x29, 0x2E, 0x2D, 0x2E, 0x29, 0x2E, 0x21, 0x1B, 0x1A, 0x21, 0x24, 0x21, 0x24, 0x21, 0x24, 0x21, 0x24, 0x19, 0x21, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x15, 0x19, 0x15, 0x19, 0x19, 0x19, 0x19, 0x19, 0x21, 0x23, 0x23, 0x23, 0x22, 0x27, 0x29, 0x28, 0x29, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x29, 0x2E, 0x28, 0x2E, 0x2D, 0x2E, 0x28, 0x2E, 0x28, 0x2E, 0x2F, 0x28, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x21, 0x21, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x15, 0x19, 0x19, 0x15, 0x19, 0x15, 0x19, 0x19, 0x1A, 0x21, 0x21, 0x22, 0x27, 0x23, 0x2A, 0x28, 0x2A, 0x28, 0x29, 0x28, 0x29, 0x28, 0x2D, 0x28, 0x2D, 0x28, 0x2E, 0x2F, 0x28, 0x2E, 0x2D, 0x2F, 0x28, 0x2F, 0x2E, 0x2F, 0x1A, 0x1A, 0x19, 0x1A, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x15, 0x19, 0x15, 0x15, 0x17, 0x15, 0x19, 0x17, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x24, 0x23, 0x23, 0x22, 0x27, 0x2A, 0x27, 0x29, 0x27, 0x29, 0x28, 0x29, 0x29, 0x29, 0x29, 0x2E, 0x2E, 0x28, 0x2F, 0x28, 0x2E, 0x2E, 0x2F, 0x2F, 0x2E, 0x2E, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x15, 0x19, 0x15, 0x15, 0x17, 0x17, 0x15, 0x15, 0x17, 0x15, 0x15, 0x17, 0x19, 0x19, 0x1A, 0x19, 0x21, 0x22, 0x23, 0x23, 0x23, 0x23, 0x22, 0x27, 0x2A, 0x28, 0x29, 0x28, 0x29, 0x29, 0x29, 0x28, 0x2F, 0x2E, 0x28, 0x2F, 0x28, 0x2F, 0x2E, 0x2E, 0x2F, 0x2F, 0x19, 0x15, 0x19, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x16, 0x15, 0x17, 0x17, 0x20, 0x20, 0x17, 0x17, 0x15, 0x15, 0x15, 0x15, 0x19, 0x15, 0x19, 0x1A, 0x19, 0x21, 0x22, 0x23, 0x27, 0x23, 0x28, 0x22, 0x23, 0x2A, 0x27, 0x28, 0x29, 0x28, 0x29, 0x2D, 0x28, 0x2E, 0x2F, 0x29, 0x2E, 0x29, 0x2F, 0x2E, 0x2F, 0x2E, 0x19, 0x17, 0x19, 0x15, 0x17, 0x15, 0x17, 0x15, 0x17, 0x15, 0x10, 0x17, 0x10, 0x17, 0x0F, 0x0F, 0x17, 0x17, 0x20, 0x20, 0x17, 0x15, 0x19, 0x15, 0x19, 0x19, 0x19, 0x19, 0x1A, 0x21, 0x21, 0x23, 0x23, 0x2A, 0x27, 0x23, 0x27, 0x28, 0x29, 0x28, 0x29, 0x29, 0x2E, 0x2E, 0x2E, 0x29, 0x28, 0x2F, 0x28, 0x2E, 0x2E, 0x2F, 0x30, 0x0F, 0x15, 0x15, 0x17, 0x20, 0x17, 0x0F, 0x10, 0x15, 0x10, 0x16, 0x10, 0x0F, 0x10, 0x10, 0x17, 0x10, 0x10, 0x17, 0x17, 0x20, 0x15, 0x17, 0x15, 0x19, 0x15, 0x19, 0x1A, 0x19, 0x24, 0x23, 0x22, 0x23, 0x23, 0x23, 0x23, 0x29, 0x22, 0x28, 0x29, 0x29, 0x28, 0x2D, 0x2E, 0x2E, 0x28, 0x2F, 0x2E, 0x2F, 0x2F, 0x2F, 0x30, 0x2E, 0x17, 0x10, 0x10, 0x15, 0x10, 0x17, 0x10, 0x10, 0x10, 0x17, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x17, 0x17, 0x15, 0x15, 0x17, 0x19, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x21, 0x21, 0x22, 0x23, 0x23, 0x27, 0x23, 0x2A, 0x27, 0x28, 0x2D, 0x29, 0x28, 0x2E, 0x2E, 0x2D, 0x28, 0x2F, 0x2E, 0x2F, 0x2E, 0x30, 0x30, 0x10, 0x0F, 0x10, 0x17, 0x0F, 0x10, 0x0F, 0x10, 0x0F, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x17, 0x10, 0x15, 0x15, 0x17, 0x19, 0x15, 0x19, 0x21, 0x19, 0x24, 0x21, 0x23, 0x21, 0x22, 0x23, 0x23, 0x23, 0x2A, 0x29, 0x28, 0x29, 0x2D, 0x28, 0x2E, 0x2E, 0x29, 0x2E, 0x2E, 0x2F, 0x30, 0x2E, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x11, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x0F, 0x20, 0x17, 0x15, 0x19, 0x15, 0x19, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x21, 0x22, 0x23, 0x23, 0x23, 0x28, 0x2A, 0x28, 0x28, 0x2D, 0x28, 0x2E, 0x2F, 0x28, 0x2F, 0x28, 0x2E, 0x2F, 0x2E, 0x30, 0x2F, 0x11, 0x1C, 0x11, 0x0F, 0x11, 0x1C, 0x11, 0x1C, 0x11, 0x1C, 0x10, 0x1C, 0x01, 0x1C, 0x10, 0x1C, 0x10, 0x10, 0x10, 0x10, 0x17, 0x17, 0x20, 0x15, 0x17, 0x19, 0x19, 0x15, 0x19, 0x19, 0x1A, 0x21, 0x1B, 0x21, 0x21, 0x22, 0x27, 0x2A, 0x23, 0x2A, 0x28, 0x29, 0x29, 0x29, 0x28, 0x2F, 0x28, 0x2F, 0x2F, 0x2E, 0x2F, 0x30, 0x2E, 0x01, 0x11, 0x01, 0x11, 0x01, 0x11, 0x11, 0x10, 0x01, 0x11, 0x11, 0x10, 0x11, 0x11, 0x01, 0x10, 0x1C, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x17, 0x15, 0x15, 0x15, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x1A, 0x1B, 0x24, 0x21, 0x22, 0x23, 0x2A, 0x27, 0x2A, 0x28, 0x29, 0x28, 0x2D, 0x29, 0x2E, 0x28, 0x2F, 0x2E, 0x2E, 0x2F, 0x2F, 0x01, 0x01, 0x01, 0x11, 0x01, 0x01, 0x1C, 0x01, 0x1C, 0x11, 0x1F, 0x11, 0x1F, 0x11, 0x1C, 0x11, 0x01, 0x1C, 0x10, 0x10, 0x10, 0x0F, 0x20, 0x17, 0x19, 0x19, 0x15, 0x15, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x1A, 0x21, 0x24, 0x23, 0x23, 0x23, 0x22, 0x27, 0x2A, 0x28, 0x29, 0x29, 0x28, 0x29, 0x2F, 0x28, 0x29, 0x2F, 0x2E, 0x2E, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x11, 0x01, 0x01, 0x11, 0x01, 0x11, 0x11, 0x01, 0x01, 0x11, 0x10, 0x11, 0x0F, 0x10, 0x10, 0x17, 0x10, 0x15, 0x17, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x24, 0x1A, 0x1B, 0x23, 0x22, 0x23, 0x22, 0x23, 0x22, 0x23, 0x2A, 0x28, 0x28, 0x2D, 0x28, 0x29, 0x29, 0x29, 0x29, 0x29, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x1C, 0x11, 0x1F, 0x11, 0x10, 0x10, 0x10, 0x0F, 0x15, 0x16, 0x19, 0x19, 0x17, 0x15, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x21, 0x21, 0x21, 0x24, 0x23, 0x23, 0x23, 0x27, 0x2A, 0x2A, 0x29, 0x29, 0x29, 0x28, 0x28, 0x29, 0x28, 0x29, 0x29, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x11, 0x01, 0x11, 0x01, 0x0F, 0x10, 0x10, 0x17, 0x15, 0x17, 0x19, 0x19, 0x19, 0x15, 0x19, 0x19, 0x21, 0x2B, 0x19, 0x24, 0x23, 0x24, 0x21, 0x24, 0x24, 0x23, 0x23, 0x23, 0x22, 0x2A, 0x2A, 0x2A, 0x28, 0x28, 0x2D, 0x28, 0x29, 0x02, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x1C, 0x11, 0x10, 0x10, 0x10, 0x20, 0x17, 0x15, 0x19, 0x15, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x21, 0x1B, 0x1A, 0x22, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x22, 0x23, 0x23, 0x22, 0x23, 0x27, 0x2A, 0x2A, 0x27, 0x29, 0x27, 0x03, 0x02, 0x02, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x11, 0x01, 0x1C, 0x10, 0x10, 0x16, 0x10, 0x15, 0x17, 0x19, 0x15, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x21, 0x24, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x22, 0x23, 0x23, 0x2A, 0x22, 0x23, 0x23, 0x23, 0x23, 0x23, 0x02, 0x03, 0x1D, 0x02, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x11, 0x11, 0x11, 0x10, 0x0F, 0x10, 0x15, 0x17, 0x15, 0x19, 0x17, 0x19, 0x19, 0x19, 0x19, 0x24, 0x21, 0x1B, 0x21, 0x23, 0x24, 0x24, 0x1B, 0x21, 0x22, 0x21, 0x22, 0x23, 0x23, 0x23, 0x22, 0x23, 0x2A, 0x23, 0x23, 0x03, 0x02, 0x03, 0x03, 0x03, 0x02, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x1C, 0x01, 0x10, 0x10, 0x10, 0x0F, 0x17, 0x15, 0x15, 0x19, 0x15, 0x19, 0x1A, 0x19, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x1B, 0x23, 0x24, 0x23, 0x21, 0x22, 0x21, 0x24, 0x24, 0x21, 0x21, 0x24, 0x21, 0x22, 0x21, 0x05, 0x04, 0x03, 0x02, 0x03, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x11, 0x11, 0x0F, 0x10, 0x10, 0x17, 0x10, 0x15, 0x17, 0x19, 0x1A, 0x19, 0x19, 0x1A, 0x1B, 0x21, 0x22, 0x22, 0x21, 0x21, 0x21, 0x23, 0x21, 0x23, 0x23, 0x23, 0x23, 0x21, 0x24, 0x21, 0x21, 0x21, 0x21, 0x23, 0x25, 0x05, 0x04, 0x03, 0x03, 0x02, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x11, 0x01, 0x1C, 0x11, 0x10, 0x10, 0x0F, 0x20, 0x17, 0x15, 0x19, 0x19, 0x19, 0x1A, 0x21, 0x21, 0x23, 0x21, 0x23, 0x21, 0x22, 0x21, 0x24, 0x23, 0x24, 0x23, 0x24, 0x21, 0x21, 0x1B, 0x19, 0x19, 0x24, 0x19, 0x1B, 0x05, 0x05, 0x05, 0x04, 0x03, 0x02, 0x03, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x01, 0x1C, 0x01, 0x11, 0x10, 0x0F, 0x10, 0x10, 0x17, 0x20, 0x15, 0x15, 0x19, 0x19, 0x21, 0x1B, 0x21, 0x21, 0x23, 0x23, 0x21, 0x23, 0x21, 0x23, 0x1B, 0x23, 0x21, 0x23, 0x21, 0x23, 0x24, 0x1A, 0x19, 0x19, 0x1A, 0x1B, 0x25, 0x12, 0x05, 0x05, 0x04, 0x03, 0x02, 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x11, 0x01, 0x11, 0x1C, 0x11, 0x01, 0x11, 0x10, 0x10, 0x0F, 0x17, 0x15, 0x19, 0x19, 0x1A, 0x1B, 0x21, 0x21, 0x23, 0x21, 0x23, 0x22, 0x21, 0x23, 0x21, 0x24, 0x21, 0x23, 0x21, 0x1B, 0x21, 0x21, 0x1B, 0x1A, 0x1B, 0x1A, 0x19, 0x05, 0x05, 0x12, 0x03, 0x05, 0x05, 0x03, 0x02, 0x1D, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x32, 0x31, 0x01, 0x01, 0x01, 0x11, 0x1F, 0x11, 0x0F, 0x10, 0x17, 0x10, 0x15, 0x15, 0x19, 0x19, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x23, 0x21, 0x21, 0x21, 0x21, 0x22, 0x21, 0x21, 0x1B, 0x21, 0x21, 0x19, 0x1A, 0x19, 0x1A, 0x25, 0x25, 0x25, 0x05, 0x05, 0x03, 0x03, 0x05, 0x03, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x01, 0x01, 0x11, 0x01, 0x11, 0x10, 0x0F, 0x15, 0x15, 0x19, 0x1A, 0x1A, 0x1B, 0x21, 0x1B, 0x21, 0x23, 0x23, 0x21, 0x23, 0x21, 0x24, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x1B, 0x21, 0x19, 0x21, 0x19, 0x05, 0x05, 0x05, 0x04, 0x03, 0x05, 0x03, 0x05, 0x00, 0x02, 0x1D, 0x00, 0x00, 0x00, 0x31, 0x32, 0x00, 0x32, 0x00, 0x01, 0x01, 0x01, 0x1C, 0x11, 0x10, 0x10, 0x17, 0x15, 0x19, 0x19, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x23, 0x1B, 0x23, 0x21, 0x21, 0x23, 0x21, 0x21, 0x24, 0x1B, 0x19, 0x21, 0x1A, 0x21, 0x19, 0x1A, 0x19, 0x1A, 0x04, 0x12, 0x05, 0x12, 0x04, 0x03, 0x03, 0x03, 0x03, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x1F, 0x10, 0x0F, 0x0F, 0x15, 0x19, 0x1A, 0x19, 0x21, 0x1B, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x23, 0x1B, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x1B, 0x1A, 0x19, 0x12, 0x04, 0x05, 0x03, 0x05, 0x03, 0x05, 0x05, 0x03, 0x05, 0x02, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x32, 0x01, 0x11, 0x1C, 0x10, 0x10, 0x16, 0x15, 0x19, 0x1A, 0x19, 0x21, 0x21, 0x1B, 0x21, 0x23, 0x1B, 0x21, 0x21, 0x21, 0x21, 0x2C, 0x1B, 0x1B, 0x21, 0x19, 0x21, 0x1B, 0x21, 0x21, 0x19, 0x1A, 0x04, 0x12, 0x03, 0x05, 0x04, 0x05, 0x03, 0x03, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x31, 0x00, 0x31, 0x00, 0x31, 0x01, 0x11, 0x10, 0x0F, 0x20, 0x19, 0x19, 0x19, 0x1A, 0x1B, 0x1B, 0x21, 0x21, 0x1B, 0x21, 0x21, 0x1B, 0x1B, 0x1B, 0x1A, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x19, 0x21, 0x19, 0x1A, 0x1B, 0x05, 0x05, 0x05, 0x04, 0x03, 0x04, 0x05, 0x02, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1C, 0x01, 0x01, 0x11, 0x32, 0x01, 0x11, 0x01, 0x11, 0x0F, 0x10, 0x16, 0x15, 0x15, 0x19, 0x1A, 0x19, 0x19, 0x21, 0x1B, 0x21, 0x21, 0x21, 0x1B, 0x21, 0x19, 0x1B, 0x1B, 0x19, 0x24, 0x19, 0x21, 0x1A, 0x1B, 0x1A, 0x1A, 0x1B, 0x1A, 0x03, 0x25, 0x05, 0x03, 0x05, 0x03, 0x02, 0x1D, 0x00, 0x1D, 0x00, 0x1D, 0x00, 0x01, 0x01, 0x11, 0x1C, 0x01, 0x01, 0x11, 0x01, 0x1C, 0x11, 0x1C, 0x10, 0x10, 0x10, 0x16, 0x15, 0x19, 0x19, 0x1A, 0x1B, 0x19, 0x19, 0x24, 0x1B, 0x21, 0x21, 0x1B, 0x1A, 0x19, 0x21, 0x19, 0x21, 0x1B, 0x1A, 0x1B, 0x1A, 0x19, 0x19, 0x1A, 0x1B, 0x05, 0x03, 0x05, 0x03, 0x04, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x01, 0x01, 0x11, 0x1C, 0x01, 0x11, 0x1C, 0x11, 0x1C, 0x01, 0x11, 0x10, 0x10, 0x10, 0x0F, 0x17, 0x0F, 0x15, 0x15, 0x19, 0x19, 0x19, 0x21, 0x19, 0x1B, 0x21, 0x1B, 0x21, 0x1B, 0x21, 0x1B, 0x19, 0x1B, 0x19, 0x1A, 0x1B, 0x1A, 0x19, 0x21, 0x1A, 0x19, 0x1A, 0x04, 0x05, 0x03, 0x04, 0x03, 0x00, 0x05, 0x01, 0x00, 0x00, 0x00, 0x01, 0x11, 0x1C, 0x11, 0x10, 0x0F, 0x10, 0x11, 0x10, 0x11, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x10, 0x15, 0x15, 0x15, 0x19, 0x19, 0x21, 0x19, 0x1B, 0x21, 0x1A, 0x1B, 0x21, 0x21, 0x19, 0x1B, 0x21, 0x19, 0x1A, 0x19, 0x1A, 0x19, 0x1A, 0x19, 0x19, 0x1A, 0x1B, 0x05, 0x03, 0x04, 0x05, 0x02, 0x05, 0x01, 0x00, 0x01, 0x01, 0x11, 0x01, 0x1C, 0x01, 0x10, 0x0F, 0x11, 0x1C, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x0F, 0x17, 0x10, 0x16, 0x16, 0x15, 0x19, 0x19, 0x19, 0x1A, 0x1B, 0x1B, 0x19, 0x1A, 0x19, 0x1B, 0x1A, 0x19, 0x21, 0x19, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x1A, 0x19, 0x05, 0x04, 0x03, 0x1D, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x1C, 0x01, 0x11, 0x10, 0x10, 0x10, 0x10, 0x1C, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x15, 0x16, 0x15, 0x19, 0x19, 0x19, 0x19, 0x1A, 0x1B, 0x19, 0x1A, 0x19, 0x1B, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x15, 0x19, 0x19, 0x19, 0x03, 0x05, 0x03, 0x00, 0x05, 0x1D, 0x1D, 0x00, 0x01, 0x01, 0x01, 0x11, 0x11, 0x1F, 0x1C, 0x01, 0x0F, 0x11, 0x01, 0x0F, 0x10, 0x0F, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x0F, 0x20, 0x15, 0x15, 0x19, 0x19, 0x19, 0x1A, 0x19, 0x19, 0x1A, 0x1A, 0x19, 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x15, 0x19, 0x15, 0x15, 0x04, 0x03, 0x02, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x11, 0x1F, 0x10, 0x11, 0x11, 0x01, 0x11, 0x1F, 0x11, 0x01, 0x01, 0x1F, 0x01, 0x01, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x17, 0x10, 0x16, 0x15, 0x15, 0x15, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x15, 0x15, 0x15, 0x15, 0x16, 0x15, 0x15, 0x15, 0x15, 0x03, 0x03, 0x03, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x11, 0x01, 0x01, 0x01, 0x01, 0x01, 0x11, 0x01, 0x01, 0x1C, 0x01, 0x10, 0x1F, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x17, 0x15, 0x16, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x16, 0x0F, 0x10, 0x15, 0x0F, 0x16, 0x0F, 0x16, 0x05, 0x02, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x11, 0x1C, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x20, 0x17, 0x0F, 0x15, 0x0F, 0x10, 0x17, 0x10, 0x10, 0x15, 0x10, 0x10, 0x10, 0x10, 0x15, 0x0F, 0x1D, 0x05, 0x02, 0x00, 0x05, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x1F, 0x01, 0x10, 0x1C, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x10, 0x03, 0x00, 0x00, 0x05, 0x00, 0x00, 0x1D, 0x00, 0x1D, 0x05, 0x03, 0x03, 0x02, 0x1D, 0x00, 0x00, 0x1D, 0x00, 0x02, 0x03, 0x02, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x1F, 0x01, 0x1C, 0x01, 0x11, 0x11, 0x1C, 0x11, 0x10, 0x0F, 0x10, 0x10, 0x10, 0x0F, 0x10, 0x10, 0x03, 0x02, 0x03, 0x00, 0x03, 0x05, 0x02, 0x05, 0x03, 0x03, 0x03, 0x05, 0x03, 0x05, 0x02, 0x05, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x02, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x11, 0x10, 0x10, 0x10, 0x11, 0x10, 0x1C, 0x04, 0x05, 0x03, 0x04, 0x03, 0x03, 0x05, 0x03, 0x05, 0x05, 0x04, 0x05, 0x04, 0x05, 0x03, 0x03, 0x03, 0x05, 0x05, 0x04, 0x05, 0x05, 0x05, 0x04, 0x03, 0x03, 0x02, 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x1C, 0x01, 0x1F, 0x11, 0x01, 0x11, 0x05, 0x25, 0x05, 0x05, 0x05, 0x12, 0x04, 0x06, 0x04, 0x12, 0x1E, 0x12, 0x12, 0x04, 0x04, 0x05, 0x05, 0x04, 0x04, 0x12, 0x34, 0x25, 0x34, 0x12, 0x05, 0x04, 0x03, 0x02, 0x02, 0x03, 0x02, 0x03, 0x02, 0x1D, 0x00, 0x02, 0x1D, 0x02, 0x1D, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x11, 0x11, 0x10, 0x1C, 0x01, 0x06, 0x1E, 0x12, 0x06, 0x25, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x26, 0x26, 0x06, 0x06, 0x06, 0x26, 0x06, 0x06, 0x26, 0x06, 0x06, 0x06, 0x26, 0x04, 0x05, 0x04, 0x05, 0x03, 0x00, 0x05, 0x03, 0x00, 0x05, 0x00, 0x05, 0x02, 0x00, 0x05, 0x02, 0x1D, 0x02, 0x02, 0x00, 0x00, 0x01, 0x01, 0x11, 0x1C, 0x11, 0x1F, 0x01, 0x01, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x06, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x07, 0x06, 0x07, 0x06, 0x07, 0x07, 0x26, 0x26, 0x26, 0x25, 0x04, 0x05, 0x04, 0x04, 0x03, 0x03, 0x05, 0x03, 0x03, 0x02, 0x1D, 0x05, 0x00, 0x1D, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x11, 0x01, 0x11, 0x01, 0x01, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x13, 0x07, 0x13, 0x07, 0x13, 0x07, 0x08, 0x13, 0x13, 0x35, 0x13, 0x08, 0x07, 0x13, 0x07, 0x07, 0x07, 0x06, 0x35, 0x06, 0x26, 0x06, 0x25, 0x05, 0x05, 0x04, 0x03, 0x05, 0x03, 0x05, 0x02, 0x03, 0x05, 0x02, 0x05, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x13, 0x13, 0x13, 0x13, 0x07, 0x13, 0x07, 0x13, 0x07, 0x14, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x13, 0x08, 0x13, 0x07, 0x06, 0x35, 0x06, 0x06, 0x06, 0x26, 0x25, 0x05, 0x12, 0x04, 0x05, 0x03, 0x05, 0x03, 0x03, 0x03, 0x00, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x11, 0x01, 0x00, 0x13, 0x14, 0x07, 0x07, 0x08, 0x07, 0x08, 0x14, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x13, 0x0B, 0x08, 0x13, 0x08, 0x36, 0x08, 0x08, 0x08, 0x08, 0x13, 0x13, 0x07, 0x07, 0x26, 0x06, 0x06, 0x06, 0x34, 0x06, 0x12, 0x12, 0x25, 0x05, 0x05, 0x05, 0x03, 0x05, 0x03, 0x02, 0x1D, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x08, 0x13, 0x08, 0x14, 0x08, 0x14, 0x13, 0x14, 0x08, 0x13, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x35, 0x13, 0x07, 0x13, 0x07, 0x07, 0x06, 0x06, 0x06, 0x06, 0x05, 0x12, 0x05, 0x04, 0x05, 0x03, 0x03, 0x05, 0x03, 0x03, 0x02, 0x03, 0x02, 0x02, 0x02, 0x00, 0x00, 0x08, 0x14, 0x14, 0x13, 0x14, 0x13, 0x14, 0x08, 0x13, 0x08, 0x08, 0x0B, 0x13, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x08, 0x0A, 0x08, 0x0A, 0x08, 0x13, 0x08, 0x08, 0x08, 0x08, 0x36, 0x08, 0x13, 0x07, 0x13, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x12, 0x06, 0x05, 0x05, 0x03, 0x05, 0x05, 0x12, 0x04, 0x03, 0x03, 0x02, 0x00, 0x00, 0x14, 0x13, 0x14, 0x08, 0x14, 0x08, 0x13, 0x14, 0x08, 0x08, 0x13, 0x13, 0x0B, 0x08, 0x08, 0x0A, 0x08, 0x0D, 0x0A, 0x08, 0x0A, 0x08, 0x0A, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x07, 0x08, 0x35, 0x07, 0x07, 0x06, 0x06, 0x06, 0x06, 0x12, 0x06, 0x12, 0x05, 0x25, 0x05, 0x05, 0x04, 0x02, 0x03, 0x02, 0x00, 0x07, 0x08, 0x14, 0x13, 0x14, 0x13, 0x14, 0x08, 0x08, 0x13, 0x0B, 0x0B, 0x13, 0x08, 0x0B, 0x08, 0x0D, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x0A, 0x08, 0x0B, 0x0A, 0x08, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x0B, 0x08, 0x13, 0x13, 0x07, 0x07, 0x13, 0x07, 0x06, 0x06, 0x1E, 0x12, 0x34, 0x12, 0x05, 0x12, 0x05, 0x04, 0x03, 0x02, 0x03, 0x08, 0x14, 0x13, 0x14, 0x08, 0x08, 0x14, 0x13, 0x08, 0x08, 0x13, 0x13, 0x08, 0x0B, 0x13, 0x08, 0x0B, 0x08, 0x09, 0x08, 0x0A, 0x0A, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x08, 0x0A, 0x08, 0x08, 0x08, 0x08, 0x0B, 0x13, 0x08, 0x08, 0x07, 0x13, 0x07, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x25, 0x05, 0x12, 0x03, 0x03, 0x02, 0x13, 0x14, 0x08, 0x07, 0x14, 0x13, 0x14, 0x14, 0x08, 0x08, 0x0B, 0x08, 0x13, 0x08, 0x0B, 0x08, 0x09, 0x0B, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0A, 0x08, 0x09, 0x08, 0x0A, 0x08, 0x0A, 0x08, 0x09, 0x08, 0x0B, 0x08, 0x08, 0x08, 0x07, 0x08, 0x07, 0x13, 0x07, 0x07, 0x06, 0x06, 0x06, 0x06, 0x12, 0x05, 0x05, 0x05, 0x04, 0x03, 0x08, 0x07, 0x13, 0x08, 0x13, 0x14, 0x08, 0x13, 0x14, 0x13, 0x13, 0x13, 0x0B, 0x13, 0x08, 0x08, 0x0B, 0x09, 0x09, 0x08, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x08, 0x14, 0x08, 0x13, 0x06, 0x07, 0x07, 0x06, 0x06, 0x06, 0x12, 0x04, 0x12, 0x05, 0x03, 0x13, 0x14, 0x13, 0x14, 0x07, 0x14, 0x13, 0x14, 0x08, 0x14, 0x08, 0x0B, 0x13, 0x0B, 0x08, 0x08, 0x0D, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x0D, 0x0B, 0x08, 0x13, 0x08, 0x07, 0x14, 0x13, 0x14, 0x13, 0x06, 0x07, 0x26, 0x06, 0x06, 0x1E, 0x12, 0x25, 0x05, 0x12, 0x14, 0x13, 0x14, 0x13, 0x08, 0x13, 0x14, 0x13, 0x14, 0x13, 0x08, 0x13, 0x08, 0x08, 0x08, 0x0D, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x0A, 0x08, 0x0A, 0x0A, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x09, 0x08, 0x08, 0x0B, 0x13, 0x08, 0x08, 0x07, 0x13, 0x14, 0x13, 0x13, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x12, 0x05, 0x07, 0x08, 0x07, 0x07, 0x07, 0x08, 0x07, 0x08, 0x14, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x0D, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x0D, 0x08, 0x08, 0x08, 0x0B, 0x13, 0x14, 0x08, 0x14, 0x13, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x06, 0x06, 0x12, 0x12, 0x14, 0x13, 0x08, 0x13, 0x14, 0x13, 0x14, 0x08, 0x07, 0x08, 0x13, 0x08, 0x08, 0x0D, 0x08, 0x0A, 0x08, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x0B, 0x0A, 0x08, 0x08, 0x13, 0x08, 0x13, 0x14, 0x13, 0x14, 0x13, 0x13, 0x06, 0x07, 0x06, 0x26, 0x06, 0x06, 0x06, 0x06, 0x07, 0x08, 0x07, 0x14, 0x13, 0x07, 0x08, 0x07, 0x08, 0x13, 0x0B, 0x08, 0x0D, 0x0B, 0x0A, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x08, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x08, 0x0D, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x14, 0x08, 0x07, 0x13, 0x07, 0x07, 0x06, 0x07, 0x06, 0x06, 0x26, 0x06, 0x06, 0x08, 0x07, 0x08, 0x13, 0x14, 0x13, 0x07, 0x08, 0x14, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x18, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x08, 0x0B, 0x13, 0x08, 0x07, 0x08, 0x07, 0x08, 0x07, 0x13, 0x07, 0x07, 0x06, 0x07, 0x07, 0x06, 0x06, 0x06, 0x14, 0x08, 0x14, 0x13, 0x07, 0x08, 0x07, 0x08, 0x07, 0x08, 0x08, 0x08, 0x0D, 0x08, 0x09, 0x0A, 0x0A, 0x09, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x08, 0x0A, 0x0D, 0x08, 0x08, 0x0B, 0x13, 0x08, 0x08, 0x14, 0x13, 0x14, 0x07, 0x13, 0x06, 0x07, 0x06, 0x06, 0x06, 0x06, 0x06, 0x13, 0x14, 0x13, 0x14, 0x13, 0x14, 0x13, 0x14, 0x08, 0x13, 0x0B, 0x08, 0x08, 0x0A, 0x08, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x0A, 0x09, 0x0D, 0x09, 0x08, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x13, 0x08, 0x08, 0x14, 0x13, 0x14, 0x13, 0x13, 0x07, 0x13, 0x06, 0x35, 0x06, 0x06, 0x26, 0x1E, 0x14, 0x13, 0x14, 0x13, 0x14, 0x13, 0x14, 0x13, 0x14, 0x08, 0x13, 0x08, 0x0D, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x08, 0x0A, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x08, 0x0B, 0x08, 0x0B, 0x0B, 0x13, 0x14, 0x08, 0x07, 0x13, 0x07, 0x07, 0x07, 0x07, 0x06, 0x06, 0x06, 0x06, 0x06, 0x13, 0x14, 0x13, 0x07, 0x13, 0x14, 0x13, 0x07, 0x08, 0x08, 0x0B, 0x08, 0x0A, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x09, 0x09, 0x0D, 0x09, 0x0B, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x0D, 0x08, 0x08, 0x13, 0x13, 0x08, 0x14, 0x13, 0x14, 0x08, 0x07, 0x13, 0x06, 0x07, 0x13, 0x07, 0x07, 0x07, 0x06, 0x07, 0x13, 0x14, 0x08, 0x07, 0x13, 0x14, 0x13, 0x14, 0x13, 0x13, 0x08, 0x0D, 0x08, 0x0A, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x08, 0x0A, 0x0B, 0x09, 0x09, 0x0D, 0x09, 0x08, 0x0A, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x08, 0x0D, 0x08, 0x0B, 0x08, 0x13, 0x08, 0x14, 0x13, 0x07, 0x13, 0x07, 0x13, 0x06, 0x07, 0x06, 0x07, 0x06, 0x07, 0x14, 0x08, 0x07, 0x13, 0x14, 0x08, 0x07, 0x08, 0x07, 0x08, 0x0B, 0x08, 0x08, 0x09, 0x08, 0x0A, 0x0A, 0x0A, 0x08, 0x09, 0x08, 0x09, 0x09, 0x0D, 0x0C, 0x0A, 0x0D, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x0D, 0x08, 0x08, 0x08, 0x08, 0x13, 0x14, 0x08, 0x07, 0x13, 0x07, 0x13, 0x07, 0x13, 0x13, 0x13, 0x13, 0x13, 0x14, 0x13, 0x14, 0x13, 0x07, 0x08, 0x07, 0x08, 0x08, 0x13, 0x08, 0x0A, 0x0D, 0x08, 0x0A, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x0D, 0x0B, 0x0C, 0x0A, 0x0D, 0x09, 0x0A, 0x0D, 0x09, 0x09, 0x08, 0x09, 0x0A, 0x08, 0x0D, 0x08, 0x08, 0x13, 0x0B, 0x08, 0x14, 0x08, 0x07, 0x08, 0x07, 0x13, 0x07, 0x13, 0x07, 0x07, 0x07, 0x07, 0x08, 0x14, 0x13, 0x07, 0x08, 0x07, 0x08, 0x14, 0x13, 0x08, 0x0B, 0x08, 0x08, 0x0B, 0x08, 0x09, 0x0A, 0x08, 0x08, 0x09, 0x0D, 0x09, 0x0C, 0x09, 0x0D, 0x09, 0x0C, 0x0D, 0x0C, 0x0A, 0x0D, 0x09, 0x0A, 0x0A, 0x0A, 0x08, 0x0D, 0x08, 0x0A, 0x08, 0x13, 0x08, 0x07, 0x08, 0x07, 0x08, 0x14, 0x13, 0x14, 0x13, 0x08, 0x08, 0x08, 0x08, 0x14, 0x08, 0x14, 0x08, 0x14, 0x13, 0x08, 0x08, 0x13, 0x08, 0x08, 0x0D, 0x08, 0x08, 0x0A, 0x09, 0x08, 0x09, 0x0B, 0x09, 0x0B, 0x09, 0x0E, 0x0A, 0x0D, 0x0A, 0x0C, 0x0D, 0x0C, 0x0B, 0x09, 0x09, 0x08, 0x09, 0x08, 0x08, 0x0D, 0x0B, 0x08, 0x08, 0x0B, 0x13, 0x08, 0x14, 0x13, 0x14, 0x08, 0x07, 0x14, 0x08, 0x08, 0x08, 0x13, 0x08, 0x08, 0x13, 0x08, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x0A, 0x08, 0x0A, 0x09, 0x0A, 0x08, 0x0A, 0x09, 0x0C, 0x0D, 0x0C, 0x09, 0x0D, 0x09, 0x0C, 0x0D, 0x09, 0x0D, 0x09, 0x0C, 0x0D, 0x0D, 0x09, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x0D, 0x08, 0x08, 0x08, 0x08, 0x08, 0x14, 0x13, 0x08, 0x08, 0x08, 0x13, 0x0B, 0x13, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x08, 0x0B, 0x0B, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x0A, 0x0D, 0x09, 0x0D, 0x0B, 0x0C, 0x09, 0x0D, 0x0C, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0C, 0x0D, 0x0A, 0x09, 0x0A, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x0A, 0x08, 0x08, 0x0B, 0x13, 0x08, 0x08, 0x08, 0x13, 0x0B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0B, 0x0D, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x0A, 0x08, 0x09, 0x09, 0x0D, 0x09, 0x0C, 0x0D, 0x0C, 0x09, 0x0D, 0x0E, 0x0D, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0D, 0x09, 0x0C, 0x0D, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x0D, 0x08, 0x08, 0x0B, 0x13, 0x0B, 0x13, 0x0B, 0x08, 0x08, 0x0B, 0x08, 0x0D, 0x0B, 0x0D, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x08, 0x09, 0x08, 0x0D, 0x0A, 0x0D, 0x09, 0x0E, 0x0A, 0x09, 0x0D, 0x0C, 0x09, 0x0E, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x09, 0x0E, 0x09, 0x08, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x08, 0x0D, 0x0B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x08, 0x0D, 0x08, 0x08, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0D, 0x0C, 0x0B, 0x09, 0x09, 0x0E, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x09, 0x0D, 0x09, 0x09, 0x09, 0x0E, 0x0A, 0x09, 0x0B, 0x09, 0x09, 0x08, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x0A, 0x0D, 0x0D, 0x08, 0x0B, 0x0D, 0x08, 0x0A, 0x08, 0x0D, 0x09, 0x08, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x0A, 0x0D, 0x0E, 0x09, 0x0B, 0x0C, 0x09, 0x0E, 0x0A, 0x09, 0x0E, 0x09, 0x09, 0x0D, 0x09, 0x0E, 0x09, 0x0E, 0x0A, 0x0E, 0x09, 0x09, 0x0D, 0x0A, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x09, 0x08, 0x08, 0x08, 0x0A, 0x09, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x08, 0x09, 0x0D, 0x0A, 0x09, 0x09, 0x0D, 0x09, 0x0D, 0x0C, 0x0D, 0x09, 0x0E, 0x0D, 0x0C, 0x09, 0x0D, 0x18, 0x09, 0x09, 0x0D, 0x0A, 0x0E, 0x0A, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x0D, 0x0D, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x08, 0x09, 0x0A, 0x0D, 0x0D, 0x0B, 0x0C, 0x09, 0x0E, 0x0A, 0x09, 0x0C, 0x0B, 0x0C, 0x09, 0x0B, 0x0C, 0x09, 0x0D, 0x0C, 0x0B, 0x0C, 0x09, 0x0D, 0x0B, 0x0A, 0x08, 0x09, 0x09, 0x08, 0x09, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x0D, 0x09, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x0D, 0x18, 0x09, 0x0D, 0x0E, 0x09, 0x09, 0x0D, 0x0C, 0x09, 0x0D, 0x0C, 0x0D, 0x09, 0x09, 0x0D, 0x0B, 0x09, 0x09, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0D, 0x08, 0x0B, 0x09, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x09, 0x09, 0x0D, 0x0B, 0x09, 0x0D, 0x0C, 0x0A, 0x09, 0x0D, 0x18, 0x09, 0x0D, 0x18, 0x09, 0x0A, 0x0C, 0x0B, 0x0D, 0x0A, 0x09, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0D, 0x0A, 0x0D, 0x08, 0x0D, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x08, 0x0D, 0x18, 0x09, 0x0C, 0x09, 0x0D, 0x0C, 0x0D, 0x0C, 0x09, 0x0D, 0x0C, 0x09, 0x0D, 0x0E, 0x0D, 0x09, 0x0A, 0x08, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x09, 0x08, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x08, 0x08, 0x08, 0x09, 0x08, 0x08, 0x0A, 0x08, 0x0A, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0B, 0x09, 0x08, 0x0A, 0x09, 0x0A, 0x08, 0x09, 0x0B, 0x0D, 0x0B, 0x0C, 0x0A, 0x0D, 0x0C, 0x0B, 0x09, 0x0C, 0x0B, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x08, 0x09, 0x08, 0x09, 0x08, 0x08, 0x09, 0x0D, 0x09, 0x0D, 0x09, 0x09, 0x08, 0x09, 0x08, 0x08, 0x09, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0B, 0x09, 0x08, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x0D, 0x09, 0x0E, 0x09, 0x09, 0x0C, 0x0D, 0x09, 0x09, 0x0E, 0x09, 0x0D, 0x0D, 0x08, 0x08, 0x09, 0x08, 0x08, 0x08, 0x0A, 0x0A, 0x0A, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x0B, 0x0C, 0x0B, 0x09, 0x0B, 0x0D, 0x0D, 0x0D, 0x09, 0x08, 0x08, 0x0B, 0x0B, 0x08, 0x0B, 0x13, 0x0B, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x08, 0x0A, 0x18, 0x0D, 0x0A, 0x0D, 0x18, 0x0D, 0x0A, 0x09, 0x0E, 0x09, 0x0A, 0x0D, 0x0A, 0x08, 0x09, 0x0A, 0x0A, 0x09, 0x09, 0x08, 0x08, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x0D, 0x09, 0x0D, 0x09, 0x09, 0x0E, 0x09, 0x18, 0x09, 0x0D, 0x09, 0x09, 0x13, 0x13, 0x13, 0x13, 0x08, 0x13, 0x08, 0x0B, 0x08, 0x0D, 0x08, 0x09, 0x0A, 0x0A, 0x08, 0x09, 0x0B, 0x09, 0x09, 0x0D, 0x09, 0x0E, 0x09, 0x0A, 0x0E, 0x09, 0x0E, 0x0A, 0x09, 0x0B, 0x09, 0x09, 0x0A, 0x08, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x0A, 0x08, 0x09, 0x0C, 0x0A, 0x0E, 0x09, 0x0D, 0x0C, 0x0D, 0x09, 0x18, 0x0D, 0x0E, 0x14, 0x08, 0x14, 0x14, 0x14, 0x08, 0x13, 0x13, 0x08, 0x08, 0x0D, 0x08, 0x0A, 0x09, 0x08, 0x08, 0x09, 0x0D, 0x18, 0x0D, 0x0A, 0x0D, 0x0C, 0x0D, 0x09, 0x0A, 0x09, 0x0D, 0x09, 0x0B, 0x0D, 0x09, 0x0A, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x09, 0x0A, 0x0D, 0x09, 0x09, 0x0E, 0x0A, 0x09, 0x0E, 0x0D, 0x09, 0x0C, 0x0D, 0x08, 0x14, 0x13, 0x08, 0x13, 0x14, 0x08, 0x08, 0x0B, 0x08, 0x0A, 0x08, 0x08, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x0D, 0x0A, 0x09, 0x0E, 0x09, 0x09, 0x0E, 0x09, 0x0E, 0x0A, 0x0D, 0x0C, 0x0A, 0x0D, 0x09, 0x0A, 0x08, 0x09, 0x09, 0x08, 0x09, 0x08, 0x0A, 0x09, 0x0D, 0x0E, 0x0E, 0x09, 0x0E, 0x0D, 0x09, 0x0E, 0x0D, 0x0E, 0x09, 0x08, 0x07, 0x08, 0x14, 0x14, 0x08, 0x13, 0x08, 0x13, 0x08, 0x0B, 0x09, 0x08, 0x09, 0x0A, 0x0A, 0x09, 0x09, 0x0B, 0x09, 0x0E, 0x09, 0x0A, 0x0E, 0x0A, 0x0C, 0x0A, 0x0D, 0x0C, 0x09, 0x0D, 0x0A, 0x0D, 0x0A, 0x0D, 0x09, 0x08, 0x0D, 0x0A, 0x09, 0x0D, 0x0D, 0x0C, 0x0E, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0C, 0x0D, 0x0C, 0x0D, 0x13, 0x08, 0x08, 0x13, 0x08, 0x13, 0x08, 0x0B, 0x13, 0x08, 0x09, 0x0B, 0x08, 0x0A, 0x0A, 0x08, 0x08, 0x0D, 0x09, 0x0E, 0x0A, 0x09, 0x0E, 0x09, 0x09, 0x0D, 0x0D, 0x0C, 0x09, 0x0D, 0x0C, 0x09, 0x0C, 0x0D, 0x09, 0x0A, 0x0D, 0x09, 0x09, 0x0D, 0x0C, 0x0E, 0x0D, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0D, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x0B, 0x13, 0x0B, 0x0D, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0A, 0x09, 0x0B, 0x09, 0x09, 0x0D, 0x09, 0x09, 0x0E, 0x09, 0x0C, 0x09, 0x0D, 0x18, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0C, 0x0E, 0x0E, 0x09, 0x0D, 0x0C, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0C, 0x0D, 0x0D, 0x0D, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x0A, 0x0A, 0x08, 0x09, 0x0B, 0x09, 0x0B, 0x0C, 0x0A, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0D, 0x09, 0x0E, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0D, 0x0D, 0x0C, 0x08, 0x08, 0x08, 0x09, 0x08, 0x09, 0x0A, 0x09, 0x08, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x09, 0x0B, 0x09, 0x0D, 0x0C, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0C, 0x0E, 0x0C, 0x0D, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0C, 0x0E, 0x09, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x08, 0x0A, 0x0A, 0x09, 0x08, 0x09, 0x0D, 0x0D, 0x0A, 0x09, 0x0C, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0D, 0x0A, 0x09, 0x08, 0x09, 0x09, 0x09, 0x0D, 0x09, 0x0D, 0x09, 0x0D, 0x09, 0x0C, 0x09, 0x0E, 0x0D, 0x09, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x0D, 0x09, 0x0D, 0x0A, 0x0D, 0x0B, 0x09, 0x09, 0x09, 0x09, 0x0E, 0x09, 0x0B, 0x09, 0x09, 0x0A, 0x0E, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0C, 0x0E, 0x09, 0x0C, 0x0D, 0x09, 0x0C, 0x09, 0x0E, 0x0A, 0x0E, 0x0A, 0x0E, 0x09, 0x0C, 0x0D, 0x0E, 0x0D, 0x09, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x09, 0x0E, 0x0D, 0x09, 0x0D, 0x0C, 0x0D, 0x09, 0x09, 0x0D, 0x0E, 0x09, 0x09, 0x0E, 0x0C, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0E, 0x09, 0x0E, 0x0E, 0x0D, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x09, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0D, 0x0E, 0x09, 0x0D, 0x0C, 0x0E, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0C, 0x0D, 0x0C, 0x0E, 0x0D, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0D, 0x0E, 0x0D, 0x09, 0x0E, 0x0C, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0E, 0x09, 0x0E, 0x0E, 0x0D, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x09, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0E, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x09, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0E, 0x09, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0A, 0x0A, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x09, 0x0E, 0x08, 0x0A, 0x09, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x09, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x09, 0x0E, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0D, 0x07, 0x08, 0x13, 0x08, 0x0A, 0x0A, 0x09, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x07, 0x13, 0x08, 0x08, 0x08, 0x09, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x06, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x12, 0x06, 0x13, 0x08, 0x0A, 0x09, 0x0C, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x09, 0x09, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x05, 0x06, 0x07, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x09, 0x0B, 0x0A, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x05, 0x06, 0x06, 0x14, 0x08, 0x08, 0x09, 0x0A, 0x09, 0x0C, 0x0D, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x09, 0x09, 0x0A, 0x08, 0x09, 0x0A, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x05, 0x12, 0x06, 0x07, 0x13, 0x08, 0x0B, 0x08, 0x0A, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x09, 0x0D, 0x09, 0x09, 0x09, 0x0A, 0x0A, 0x08, 0x09, 0x08, 0x0A, 0x0A, 0x09, 0x09, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x25, 0x05, 0x06, 0x06, 0x07, 0x13, 0x13, 0x08, 0x08, 0x0A, 0x09, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x08, 0x08, 0x0B, 0x08, 0x0B, 0x08, 0x08, 0x0A, 0x0A, 0x09, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x05, 0x05, 0x12, 0x06, 0x06, 0x07, 0x14, 0x08, 0x0A, 0x08, 0x0A, 0x09, 0x0E, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x09, 0x09, 0x08, 0x08, 0x08, 0x13, 0x08, 0x08, 0x13, 0x08, 0x13, 0x13, 0x13, 0x0B, 0x08, 0x0A, 0x0A, 0x0E, 0x09, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x05, 0x25, 0x05, 0x06, 0x06, 0x13, 0x13, 0x08, 0x08, 0x0B, 0x08, 0x09, 0x09, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x07, 0x14, 0x07, 0x13, 0x14, 0x08, 0x14, 0x07, 0x08, 0x13, 0x08, 0x08, 0x09, 0x09, 0x09, 0x0E, 0x09, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x09, 0x0C, 0x12, 0x05, 0x12, 0x06, 0x06, 0x07, 0x07, 0x08, 0x13, 0x08, 0x0D, 0x08, 0x0A, 0x0E, 0x0D, 0x0E, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x0C, 0x0D, 0x0D, 0x09, 0x0A, 0x0A, 0x08, 0x14, 0x13, 0x13, 0x08, 0x07, 0x08, 0x07, 0x08, 0x08, 0x07, 0x08, 0x08, 0x0B, 0x08, 0x0A, 0x0A, 0x0D, 0x0D, 0x0C, 0x09, 0x0D, 0x0C, 0x0D, 0x0E, 0x0D, 0x12, 0x04, 0x06, 0x06, 0x07, 0x13, 0x08, 0x07, 0x08, 0x13, 0x08, 0x0A, 0x09, 0x0D, 0x0D, 0x0E, 0x09, 0x0E, 0x0D, 0x09, 0x09, 0x0A, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x08, 0x13, 0x14, 0x07, 0x07, 0x13, 0x14, 0x08, 0x07, 0x14, 0x08, 0x08, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x0A, 0x0A, 0x09, 0x0A, 0x09, 0x09, 0x09, 0x12, 0x05, 0x12, 0x06, 0x07, 0x13, 0x07, 0x08, 0x07, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0E, 0x0E, 0x0D, 0x0E, 0x09, 0x09, 0x0A, 0x0A, 0x08, 0x08, 0x08, 0x08, 0x13, 0x07, 0x07, 0x07, 0x06, 0x06, 0x06, 0x13, 0x07, 0x13, 0x13, 0x14, 0x13, 0x0B, 0x08, 0x0D, 0x08, 0x09, 0x08, 0x0A, 0x08, 0x09, 0x08, 0x0A, 0x0A, 0x0A, 0x0A, 0x1E, 0x12, 0x06, 0x06, 0x06, 0x07, 0x08, 0x07, 0x08, 0x08, 0x08, 0x0A, 0x09, 0x0E, 0x0D, 0x0D, 0x0E, 0x09, 0x09, 0x08, 0x08, 0x13, 0x13, 0x07, 0x13, 0x06, 0x06, 0x06, 0x06, 0x06, 0x12, 0x06, 0x12, 0x06, 0x06, 0x07, 0x07, 0x13, 0x08, 0x13, 0x08, 0x08, 0x0B, 0x08, 0x08, 0x09, 0x08, 0x0A, 0x08, 0x08, 0x08, 0x09, 0x08, 0x12, 0x06, 0x06, 0x06, 0x06, 0x07, 0x13, 0x14, 0x08, 0x08, 0x0B, 0x08, 0x0A, 0x09, 0x0E, 0x09, 0x0E, 0x0D, 0x0A, 0x08, 0x07, 0x07, 0x12, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x05, 0x04, 0x05, 0x05, 0x05, 0x12, 0x06, 0x06, 0x07, 0x07, 0x07, 0x13, 0x08, 0x13, 0x08, 0x0B, 0x08, 0x0B, 0x08, 0x08, 0x0D, 0x0B, 0x0B, 0x0D, 0x04, 0x05, 0x12, 0x06, 0x06, 0x06, 0x13, 0x07, 0x13, 0x08, 0x08, 0x09, 0x0A, 0x0D, 0x0C, 0x0D, 0x0C, 0x0A, 0x08, 0x07, 0x12, 0x05, 0x05, 0x12, 0x05, 0x05, 0x12, 0x12, 0x05, 0x12, 0x05, 0x03, 0x12, 0x25, 0x05, 0x12, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x07, 0x07, 0x13, 0x08, 0x13, 0x0B, 0x08, 0x08, 0x08, 0x08, 0x08, 0x05, 0x06, 0x12, 0x06, 0x06, 0x06, 0x06, 0x08, 0x14, 0x08, 0x0D, 0x0A, 0x0A, 0x09, 0x09, 0x0D, 0x09, 0x08, 0x07, 0x12, 0x04, 0x04, 0x04, 0x12, 0x05, 0x25, 0x05, 0x05, 0x04, 0x04, 0x03, 0x04, 0x04, 0x05, 0x12, 0x06, 0x05, 0x12, 0x06, 0x06, 0x06, 0x07, 0x13, 0x13, 0x14, 0x08, 0x08, 0x13, 0x08, 0x08, 0x08, 0x0A, 0x08, 0x12, 0x05, 0x04, 0x12, 0x06, 0x06, 0x06, 0x07, 0x13, 0x07, 0x08, 0x08, 0x09, 0x0A, 0x0E, 0x0A, 0x0A, 0x08, 0x06, 0x05, 0x02, 0x03, 0x04, 0x05, 0x04, 0x12, 0x05, 0x25, 0x03, 0x03, 0x03, 0x04, 0x03, 0x04, 0x05, 0x04, 0x12, 0x04, 0x05, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x13, 0x07, 0x08, 0x07, 0x08, 0x08, 0x13, 0x0B, 0x12, 0x12, 0x05, 0x05, 0x12, 0x06, 0x06, 0x06, 0x06, 0x13, 0x07, 0x08, 0x08, 0x0A, 0x09, 0x0A, 0x09, 0x08, 0x12, 0x02, 0x03, 0x03, 0x03, 0x04, 0x03, 0x04, 0x05, 0x03, 0x02, 0x02, 0x05, 0x05, 0x03, 0x03, 0x03, 0x04, 0x03, 0x03, 0x04, 0x05, 0x12, 0x06, 0x12, 0x06, 0x06, 0x07, 0x07, 0x13, 0x13, 0x07, 0x08, 0x08, 0x08, 0x04, 0x05, 0x12, 0x04, 0x05, 0x04, 0x05, 0x05, 0x06, 0x06, 0x13, 0x07, 0x08, 0x08, 0x09, 0x08, 0x0A, 0x07, 0x06, 0x03, 0x02, 0x03, 0x05, 0x04, 0x03, 0x03, 0x02, 0x03, 0x05, 0x03, 0x03, 0x05, 0x05, 0x02, 0x02, 0x03, 0x02, 0x02, 0x03, 0x05, 0x04, 0x04, 0x05, 0x04, 0x12, 0x12, 0x06, 0x06, 0x07, 0x13, 0x14, 0x07, 0x08, 0x05, 0x12, 0x04, 0x04, 0x03, 0x03, 0x03, 0x12, 0x25, 0x1E, 0x06, 0x14, 0x13, 0x08, 0x0B, 0x08, 0x08, 0x13, 0x06, 0x05, 0x03, 0x03, 0x12, 0x05, 0x02, 0x02, 0x03, 0x03, 0x02, 0x04, 0x05, 0x12, 0x04, 0x03, 0x03, 0x03, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x04, 0x05, 0x06, 0x06, 0x07, 0x14, 0x13, 0x13, 0x08, 0x03, 0x03, 0x03, 0x05, 0x03, 0x02, 0x05, 0x04, 0x05, 0x12, 0x06, 0x13, 0x14, 0x14, 0x13, 0x13, 0x14, 0x07, 0x06, 0x12, 0x05, 0x05, 0x05, 0x03, 0x03, 0x03, 0x05, 0x02, 0x03, 0x05, 0x04, 0x04, 0x05, 0x03, 0x02, 0x03, 0x02, 0x00, 0x00, 0x02, 0x02, 0x02, 0x04, 0x05, 0x04, 0x12, 0x06, 0x06, 0x06, 0x13, 0x14, 0x07, 0x14, 0x03, 0x02, 0x02, 0x03, 0x04, 0x03, 0x02, 0x03, 0x04, 0x05, 0x06, 0x06, 0x13, 0x07, 0x07, 0x13, 0x07, 0x06, 0x06, 0x12, 0x05, 0x25, 0x05, 0x05, 0x04, 0x03, 0x03, 0x02, 0x02, 0x03, 0x03, 0x03, 0x04, 0x03, 0x03, 0x03, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x04, 0x05, 0x04, 0x05, 0x12, 0x06, 0x07, 0x13, 0x13, 0x13, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x02, 0x03, 0x04, 0x12, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x12, 0x05, 0x04, 0x12, 0x05, 0x03, 0x12, 0x05, 0x05, 0x04, 0x03, 0x00, 0x02, 0x03, 0x02, 0x03, 0x04, 0x05, 0x04, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x03, 0x03, 0x05, 0x04, 0x05, 0x06, 0x06, 0x07, 0x07, 0x07, 0x02, 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x05, 0x04, 0x05, 0x05, 0x12, 0x1E, 0x12, 0x05, 0x04, 0x03, 0x05, 0x04, 0x03, 0x03, 0x04, 0x12, 0x04, 0x03, 0x02, 0x03, 0x02, 0x02, 0x05, 0x04, 0x05, 0x04, 0x03, 0x03, 0x02, 0x00, 0x01, 0x11, 0x11, 0x01, 0x00, 0x02, 0x03, 0x04, 0x12, 0x05, 0x12, 0x06, 0x07, 0x13 }; GUI_CONST_STORAGE GUI_BITMAP bmBackGround = { 53, /* XSize */ 222, /* YSize */ 53, /* BytesPerLine */ 8, /* BitsPerPixel */ acBackGround, /* Pointer to picture data (indices) */ &PalBackGround /* Pointer to palette */ }; /* Text shown in the intro dialog */ static const char * _apIntro[] = { "This start application could be used as", "a starting point for developing your own", "application. To start the application", "please press the button...", }; /* Resource for intro */ static const GUI_WIDGET_CREATE_INFO _aIntro[] = { { WINDOW_CreateIndirect, "", 0, 0, 0, 319, 239, 0}, { BUTTON_CreateIndirect, "Start", GUI_ID_BUTTON0, 110, 200, 100, 20}, }; /* Resource tables for dialogs A - E */ static const GUI_WIDGET_CREATE_INFO _aDialog_A[] = { { WINDOW_CreateIndirect, "", 0, 0, 0, 259, 221, 0}, { TEXT_CreateIndirect, "Dialog A" , 0, 80, 5, 100, 20, TEXT_CF_HCENTER }, { BUTTON_CreateIndirect, "Close", GUI_ID_BUTTON0, 80, 180, 100, 20}, { TEXT_CreateIndirect, "Use slider for changing value" , 0, 30, 60, 200, 20, TEXT_CF_HCENTER }, { SLIDER_CreateIndirect, NULL, GUI_ID_SLIDER0, 30, 85, 200, 20 }, { EDIT_CreateIndirect, NULL, GUI_ID_EDIT0, 110, 120, 40, 20, 0, 4 }, }; static const GUI_WIDGET_CREATE_INFO _aDialog_B[] = { { WINDOW_CreateIndirect, "", 0, 0, 0, 259, 221, 0}, { TEXT_CreateIndirect, "Dialog B" , 0, 80, 5, 100, 20, TEXT_CF_HCENTER }, { BUTTON_CreateIndirect, "Close", GUI_ID_BUTTON0, 80, 180, 100, 20}, }; static const GUI_WIDGET_CREATE_INFO _aDialog_C[] = { { WINDOW_CreateIndirect, "", 0, 0, 0, 259, 221, 0}, { TEXT_CreateIndirect, "Dialog C" , 0, 80, 5, 100, 20, TEXT_CF_HCENTER }, { EDIT_CreateIndirect, NULL, GUI_ID_EDIT0, 30, 50, 40, 20, 0, 4 }, { EDIT_CreateIndirect, NULL, GUI_ID_EDIT1, 30, 70, 40, 20, 0, 4 }, { EDIT_CreateIndirect, NULL, GUI_ID_EDIT2, 30, 90, 40, 20, 0, 4 }, { EDIT_CreateIndirect, NULL, GUI_ID_EDIT3, 30, 110, 40, 20, 0, 4 }, { BUTTON_CreateIndirect, "0", BUTTON_ID_0, 140, 50, 20, 20}, { BUTTON_CreateIndirect, "1", BUTTON_ID_1, 160, 50, 20, 20}, { BUTTON_CreateIndirect, "2", BUTTON_ID_2, 180, 50, 20, 20}, { BUTTON_CreateIndirect, "3", BUTTON_ID_3, 140, 70, 20, 20}, { BUTTON_CreateIndirect, "4", BUTTON_ID_4, 160, 70, 20, 20}, { BUTTON_CreateIndirect, "5", BUTTON_ID_5, 180, 70, 20, 20}, { BUTTON_CreateIndirect, "6", BUTTON_ID_6, 140, 90, 20, 20}, { BUTTON_CreateIndirect, "7", BUTTON_ID_7, 160, 90, 20, 20}, { BUTTON_CreateIndirect, "8", BUTTON_ID_8, 180, 90, 20, 20}, { BUTTON_CreateIndirect, "<", BUTTON_ID_PREV, 140, 110, 20, 20}, { BUTTON_CreateIndirect, "9", BUTTON_ID_9, 160, 110, 20, 20}, { BUTTON_CreateIndirect, ">", BUTTON_ID_NEXT, 180, 110, 20, 20}, { BUTTON_CreateIndirect, "Up", BUTTON_ID_UP, 200, 50, 40, 40}, { BUTTON_CreateIndirect, "Down", BUTTON_ID_DOWN, 200, 90, 40, 40}, { BUTTON_CreateIndirect, "Close", GUI_ID_BUTTON0, 80, 180, 100, 20}, }; static const GUI_WIDGET_CREATE_INFO _aDialog_D[] = { { WINDOW_CreateIndirect, "", 0, 0, 0, 259, 221, 0}, { TEXT_CreateIndirect, "Dialog D" , 0, 80, 5, 100, 20, TEXT_CF_HCENTER }, { BUTTON_CreateIndirect, "Close", GUI_ID_BUTTON0, 80, 180, 100, 20}, }; static const GUI_WIDGET_CREATE_INFO _aDialog_E[] = { { WINDOW_CreateIndirect, "", 0, 0, 0, 259, 221, 0}, { TEXT_CreateIndirect, "Dialog E" , 0, 80, 5, 100, 20, TEXT_CF_HCENTER }, { BUTTON_CreateIndirect, "Close", GUI_ID_BUTTON0, 80, 180, 100, 20}, }; /* Array with resource data */ static const DIALOG_RESOURCE _aDlgResource[] = { { _aDialog_A, GUI_COUNTOF(_aDialog_A) }, { _aDialog_B, GUI_COUNTOF(_aDialog_B) }, { _aDialog_C, GUI_COUNTOF(_aDialog_C) }, { _aDialog_D, GUI_COUNTOF(_aDialog_D) }, { _aDialog_E, GUI_COUNTOF(_aDialog_E) }, }; /* Misc */ static WM_CALLBACK * _pcbCallbackButton; /* Pointer to original button callback routine */ static WM_HWIN _hDialog[GUI_COUNTOF(_aDlgResource)]; /* Dialog handles for dialogs A - E */ static int _CurrentDialogIndex = -1; /* Index of current dialog */ static WM_HWIN _hParent; /* Handle of dialog parent window */ static unsigned _Value; /* Value modified in the dialogs A - E */ /********************************************************************* * * Static code * ********************************************************************** */ /********************************************************************* * * _cbDialog_A * * Purpose: * Callback routine of dialog A */ static void _cbDialog_A(WM_MESSAGE * pMsg) { int Id, NCode; WM_HWIN hDlg, hItem; hDlg = pMsg->hWin; switch (pMsg->MsgId) { case WM_PAINT: /* Owner drawn background of dialog */ GUI_SetBkColor(GUI_LIGHTGREEN); GUI_Clear(); break; case WM_INIT_DIALOG: /* Init slider */ hItem = WM_GetDialogItem(hDlg, GUI_ID_SLIDER0); SLIDER_SetRange(hItem, 0, 9999); SLIDER_SetValue(hItem, _Value); /* Init edit widget */ hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT0); EDIT_SetDecMode(hItem, _Value, 0, 9999, 0, 0); EDIT_SetTextAlign(hItem, GUI_TA_HCENTER); break; case WM_NOTIFY_PARENT: NCode = pMsg->Data.v; /* Notification code */ switch (NCode) { case WM_NOTIFICATION_RELEASED: /* React only if released */ Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */ if (Id == GUI_ID_BUTTON0) { GUI_EndDialog(hDlg, 1); _hDialog[_CurrentDialogIndex] = 0; _CurrentDialogIndex = -1; } break; case WM_NOTIFICATION_VALUE_CHANGED: /* Value has changed */ Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */ if (Id == GUI_ID_SLIDER0) { /* SLIDER-widget has changed, update EDIT-widget */ hItem = WM_GetDialogItem(hDlg, GUI_ID_SLIDER0); _Value = SLIDER_GetValue(hItem); hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT0); EDIT_SetValue(hItem, _Value); } else if (Id == GUI_ID_EDIT0) { /* If EDIT-widget has changed, update SLIDER-widget */ hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT0); _Value = EDIT_GetValue(hItem); hItem = WM_GetDialogItem(hDlg, GUI_ID_SLIDER0); SLIDER_SetValue(hItem, _Value); } break; } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _cbDialog_B * * Purpose: * Callback routine of dialog B */ static void _cbDialog_B(WM_MESSAGE * pMsg) { int NCode; WM_HWIN hDlg; hDlg = pMsg->hWin; switch (pMsg->MsgId) { case WM_PAINT: /* Owner drawn background of dialog */ GUI_SetBkColor(GUI_LIGHTGRAY); GUI_Clear(); GUI_DrawBitmap(&bmLogoBitmap, (260 - bmLogoBitmap.XSize) / 2, 40); break; case WM_NOTIFY_PARENT: NCode = pMsg->Data.v; /* Notification code */ switch (NCode) { case WM_NOTIFICATION_RELEASED: /* React only if released */ GUI_EndDialog(hDlg, 1); _hDialog[_CurrentDialogIndex] = 0; _CurrentDialogIndex = -1; break; } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _cbDialog_C * * Purpose: * Callback routine of dialog C */ static void _cbDialog_C(WM_MESSAGE * pMsg) { int NCode, Id, IdEdit, i; WM_HWIN hDlg, hItem, hEdit; hDlg = pMsg->hWin; /* Get focussed edit widget */ hEdit = WM_GetFocussedWindow(); IdEdit = WM_GetId(hEdit); if ((IdEdit < GUI_ID_EDIT0) || (IdEdit > GUI_ID_EDIT3)) { hEdit = 0; } switch (pMsg->MsgId) { case WM_PAINT: /* Owner drawn background of dialog */ GUI_SetBkColor(GUI_LIGHTMAGENTA); GUI_Clear(); /* Draw values of edit fields */ GUI_SetColor(GUI_BLACK); for (i = 0; i < 4; i++) { I32 Value; hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT0 + i); Value = EDIT_GetValue(hItem); GUI_GotoXY(90, 55 + i * 20); GUI_DispDec(Value, 4); } break; case WM_INIT_DIALOG: /* Init edit widgets */ hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT0); EDIT_SetDecMode(hItem, 1234, 0, 9999, 0, 0); hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT1); EDIT_SetDecMode(hItem, 4321, 0, 9999, 0, 0); hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT2); EDIT_SetDecMode(hItem, 0, 0, 9999, 0, 0); hItem = WM_GetDialogItem(hDlg, GUI_ID_EDIT3); EDIT_SetDecMode(hItem, 0, 0, 9999, 0, 0); /* Set buttons to not focussable state */ for (i = BUTTON_ID_0; i <= BUTTON_ID_DOWN; i++) { WM_HWIN hButton = WM_GetDialogItem(hDlg, i); BUTTON_SetFocussable(hButton, 0); } break; case WM_NOTIFY_PARENT: Id = WM_GetId(pMsg->hWinSrc); NCode = pMsg->Data.v; /* Notification code */ switch (NCode) { case WM_NOTIFICATION_VALUE_CHANGED: /* Value has changed */ Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */ break; case WM_NOTIFICATION_RELEASED: /* React only if released */ switch (Id) { case BUTTON_ID_DOWN: if (IdEdit < GUI_ID_EDIT3) { hEdit = WM_GetDialogItem(hDlg, IdEdit + 1); } break; case BUTTON_ID_UP: if (IdEdit > GUI_ID_EDIT0) { hEdit = WM_GetDialogItem(hDlg, IdEdit - 1); } break; case BUTTON_ID_PREV: if (IdEdit) { EDIT_AddKey(hEdit, GUI_KEY_LEFT); } break; case BUTTON_ID_NEXT: if (IdEdit) { EDIT_AddKey(hEdit, GUI_KEY_RIGHT); } break; case BUTTON_ID_0: case BUTTON_ID_1: case BUTTON_ID_2: case BUTTON_ID_3: case BUTTON_ID_4: case BUTTON_ID_5: case BUTTON_ID_6: case BUTTON_ID_7: case BUTTON_ID_8: case BUTTON_ID_9: if (IdEdit) { /* Add key to edit widget */ EDIT_AddKey(hEdit, '0' + Id - BUTTON_ID_0); /* Invalidate window to make sure value will be shown */ WM_InvalidateWindow(hDlg); } break; case GUI_ID_BUTTON0: GUI_EndDialog(hDlg, 1); _hDialog[_CurrentDialogIndex] = 0; _CurrentDialogIndex = -1; break; } if (hEdit) { WM_SetFocus(hEdit); } } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _cbDialog_D * * Purpose: * Callback routine of dialog D */ static void _cbDialog_D(WM_MESSAGE * pMsg) { int NCode; WM_HWIN hDlg; hDlg = pMsg->hWin; switch (pMsg->MsgId) { case WM_PAINT: /* Owner drawn background of dialog */ GUI_SetBkColor(GUI_LIGHTRED); GUI_Clear(); break; case WM_NOTIFY_PARENT: NCode = pMsg->Data.v; /* Notification code */ switch (NCode) { case WM_NOTIFICATION_RELEASED: /* React only if released */ GUI_EndDialog(hDlg, 1); _hDialog[_CurrentDialogIndex] = 0; _CurrentDialogIndex = -1; break; } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _cbDialog_E * * Purpose: * Callback routine of dialog E */ static void _cbDialog_E(WM_MESSAGE * pMsg) { int NCode; WM_HWIN hDlg; hDlg = pMsg->hWin; switch (pMsg->MsgId) { case WM_PAINT: /* Owner drawn background of dialog */ GUI_SetBkColor(GUI_CYAN); GUI_Clear(); break; case WM_NOTIFY_PARENT: NCode = pMsg->Data.v; /* Notification code */ switch (NCode) { case WM_NOTIFICATION_RELEASED: /* React only if released */ GUI_EndDialog(hDlg, 1); _hDialog[_CurrentDialogIndex] = 0; _CurrentDialogIndex = -1; break; } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _ShowDialog * * Purpose: * Hides the previous dialog, creates or shows the new dialog */ static void _ShowDialog(int Number) { WM_CALLBACK * afpDialog[GUI_COUNTOF(_aDlgResource)] = { /* Array of callback function pointers */ _cbDialog_A, _cbDialog_B, _cbDialog_C, _cbDialog_D, _cbDialog_E }; if (_CurrentDialogIndex == Number) { return; /* Return if nothing to do */ } if (_hDialog[_CurrentDialogIndex]) { WM_HideWindow(_hDialog[_CurrentDialogIndex]); /* Hide old dialog */ } _CurrentDialogIndex = Number; if (_hDialog[_CurrentDialogIndex]) { WM_ShowWindow(_hDialog[_CurrentDialogIndex]); /* Show new dialog */ } else { /* Create new dialog */ _hDialog[Number] = GUI_CreateDialogBox(_aDlgResource[_CurrentDialogIndex].pResource, _aDlgResource[_CurrentDialogIndex].nEntrys, afpDialog[_CurrentDialogIndex], _hParent, 0, 0); } } /********************************************************************* * * _cbButton * * Purpose: * Callback routine for the transparent buttons A - E */ static void _cbButton(WM_MESSAGE *pMsg) { char acBuffer[10]; GUI_RECT Rect; WM_HWIN hWin; hWin = pMsg->hWin; switch (pMsg->MsgId) { case WM_PAINT: /* Draw a transparent button */ WM_GetClientRect(&Rect); GUI_SetColor(GUI_BLACK); GUI_DrawRectEx(&Rect); if (BUTTON_IsPressed(hWin)) { GUI_DrawRect(1, 1, Rect.x1 - 1, Rect.y1 - 1); GUI_SetFont(&GUI_Font24B_ASCII); } else { GUI_SetFont(&GUI_Font24_ASCII); } GUI_SetTextMode(GUI_TM_TRANS); BUTTON_GetText(hWin, acBuffer, sizeof(acBuffer)); GUI_DispStringInRect(acBuffer, &Rect, GUI_TA_HCENTER | GUI_TA_VCENTER); break; default: _pcbCallbackButton(pMsg); /* The original callback */ break; } } /********************************************************************* * * _cbMenu * * Purpose: * Callback routine for button menu */ static void _cbMenu(WM_MESSAGE * pMsg) { WM_HWIN hWin, ahButton[5]; int i, Id; hWin = pMsg->hWin; switch (pMsg->MsgId) { case WM_CREATE: /* Create the buttons A - E */ for (i = 0; i < GUI_COUNTOF(ahButton); i++) { char acButtonText[] = {" "}; acButtonText[0] = 'A' + i; /* Create the buttons with transparency flag */ ahButton[0] = BUTTON_CreateEx(10, 10 + i * 40, 35, 35, hWin, WM_CF_SHOW | WM_CF_HASTRANS, 0, GUI_ID_BUTTON0 + i); BUTTON_SetFont(ahButton[0], &GUI_Font24B_ASCII); BUTTON_SetText(ahButton[0], acButtonText); /* Save the original button callback routine for default operations and set the new callback routine for buttons A - E */ if (!i) { _pcbCallbackButton = WM_SetCallback(ahButton[0], _cbButton); } else { WM_SetCallback(ahButton[0], _cbButton); } } break; case WM_PAINT: GUI_DrawBitmap(&bmBackGround, 0, 0); /* Draw the background */ break; case WM_NOTIFY_PARENT: if (pMsg->Data.v == WM_NOTIFICATION_RELEASED) { Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */ _ShowDialog(Id - GUI_ID_BUTTON0); /* Show the dialog */ } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _cbParent * * Purpose: * Callback routine for dialog parent window */ static void _cbParent(WM_MESSAGE * pMsg) { GUI_RECT Rect; WM_GetClientRect(&Rect); switch (pMsg->MsgId) { case WM_PAINT: /* Draw the background, visible if none of the dialogs A - E exist */ GUI_SetBkColor(GUI_LIGHTBLUE); GUI_Clear(); GUI_SetColor(GUI_BLACK); GUI_SetFont(&GUI_Font24B_ASCII); WM_GetClientRect(&Rect); GUI_DispStringInRect("Press any button\non the right side", &Rect, GUI_TA_HCENTER | GUI_TA_VCENTER); break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * _cbIntro * * Purpose: * Callback routine of intro dialog. */ static void _cbIntro(WM_MESSAGE * pMsg) { WM_HWIN hDlg; GUI_RECT Rect; int Id, i, ySizeText, yPos = 20; hDlg = pMsg->hWin; switch (pMsg->MsgId) { case WM_PAINT: WM_GetClientRect(&Rect); GUI_SetFont(&GUI_Font13B_ASCII); GUI_SetBkColor(GUI_WHITE); GUI_SetColor(GUI_BLACK); GUI_Clear(); GUI_DrawBitmap(&bmLogoBitmap, (Rect.x1 - bmLogoBitmap.XSize) / 2, yPos); ySizeText = GUI_GetFontSizeY(); yPos += bmLogoBitmap.YSize + 30; for (i = 0; i < GUI_COUNTOF(_apIntro); i++) { GUI_DispStringHCenterAt(_apIntro[i], Rect.x1 / 2, yPos); yPos += ySizeText; } break; case WM_KEY: switch (((WM_KEY_INFO*)(pMsg->Data.p))->Key) { case GUI_KEY_ESCAPE: case GUI_KEY_ENTER: GUI_EndDialog(hDlg, 0); break; } break; case WM_NOTIFY_PARENT: if (pMsg->Data.v == WM_NOTIFICATION_RELEASED) { Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */ if (Id == GUI_ID_BUTTON0) { GUI_EndDialog(hDlg, 1); } } break; default: WM_DefaultProc(pMsg); } } /********************************************************************* * * MainTask * ********************************************************************** */ void MainTask(void); void MainTask(void) { WM_HWIN hMainFrame, hClientWindow; GUI_RECT Rect; GUI_Init(); GUI_CURSOR_Show(); /* Enable use of memory devices (if available) */ #if GUI_SUPPORT_MEMDEV WM_SetCreateFlags(WM_CF_MEMDEV); WM_EnableMemdev(WM_HBKWIN); #endif /* Enable redrawing mechanism for background window */ WM_SetDesktopColor(GUI_BLACK); /* Create and execute the intro dialog */ GUI_ExecDialogBox(_aIntro, GUI_COUNTOF(_aIntro), _cbIntro, WM_HBKWIN, 0, 0); /* Create main frame window */ hMainFrame = FRAMEWIN_CreateEx(0, 0, 320, 240, WM_HBKWIN, WM_CF_SHOW, 0, 0, "Application", 0); FRAMEWIN_SetTextAlign(hMainFrame, GUI_TA_HCENTER); hClientWindow = WM_GetClientWindow(hMainFrame); /* Get client window of main frame window */ WM_GetClientRectEx(hClientWindow, &Rect); /* Get size of window */ /* Create parent window for dialogs A - E */ _hParent = WM_CreateWindowAsChild(0, 0, 259, Rect.y1, hClientWindow, WM_CF_SHOW, _cbParent, 0); /* Create button menu window */ WM_CreateWindowAsChild(260, 0, Rect.x1 - 260, Rect.y1, hClientWindow, WM_CF_SHOW, _cbMenu, 0); while(1) { WM_Exec(); GUI_X_WAIT_EVENT(); } }