diff --git a/applications/applications.c b/applications/applications.c index fe58e56a..f9c12932 100644 --- a/applications/applications.c +++ b/applications/applications.c @@ -42,6 +42,7 @@ extern int32_t vibro_test_app(void* p); // Plugins extern int32_t music_player_app(void* p); +extern int32_t snake_game_app(void* p); // On system start hooks declaration extern void bt_cli_init(); @@ -147,6 +148,10 @@ const FlipperApplication FLIPPER_APPS[] = { {.app = ibutton_app, .name = "iButton", .stack_size = 2048, .icon = &A_iButton_14}, #endif +#ifdef APP_BAD_USB + {.app = bad_usb_app, .name = "Bad USB", .stack_size = 2048, .icon = &A_BadUsb_14}, +#endif + }; const size_t FLIPPER_APPS_COUNT = sizeof(FLIPPER_APPS) / sizeof(FlipperApplication); @@ -203,6 +208,10 @@ const FlipperApplication FLIPPER_PLUGINS[] = { #ifdef APP_MUSIC_PLAYER {.app = music_player_app, .name = "Music Player", .stack_size = 1024, .icon = &A_Plugins_14}, #endif + +#ifdef APP_SNAKE_GAME + {.app = snake_game_app, .name = "Snake Game", .stack_size = 1024, .icon = &A_Plugins_14}, +#endif }; const size_t FLIPPER_PLUGINS_COUNT = sizeof(FLIPPER_PLUGINS) / sizeof(FlipperApplication); @@ -233,10 +242,6 @@ const FlipperApplication FLIPPER_DEBUG_APPS[] = { {.app = usb_mouse_app, .name = "USB Mouse demo", .stack_size = 1024, .icon = NULL}, #endif -#ifdef APP_BAD_USB - {.app = bad_usb_app, .name = "Bad USB test", .stack_size = 2048, .icon = NULL}, -#endif - #ifdef APP_UART_ECHO {.app = uart_echo_app, .name = "Uart Echo", .stack_size = 2048, .icon = NULL}, #endif diff --git a/applications/applications.mk b/applications/applications.mk index 9f87c6c3..051d6f7f 100644 --- a/applications/applications.mk +++ b/applications/applications.mk @@ -35,6 +35,7 @@ APP_ABOUT = 1 # Plugins APP_MUSIC_PLAYER = 1 +APP_SNAKE_GAME = 1 # Debug APP_ACCESSOR = 1 @@ -185,6 +186,11 @@ CFLAGS += -DAPP_MUSIC_PLAYER SRV_GUI = 1 endif +APP_SNAKE_GAME ?= 0 +ifeq ($(APP_SNAKE_GAME), 1) +CFLAGS += -DAPP_SNAKE_GAME +SRV_GUI = 1 +endif APP_IBUTTON ?= 0 ifeq ($(APP_IBUTTON), 1) diff --git a/applications/bad_usb/bad_usb_app.c b/applications/bad_usb/bad_usb_app.c new file mode 100644 index 00000000..def93ca7 --- /dev/null +++ b/applications/bad_usb/bad_usb_app.c @@ -0,0 +1,85 @@ +#include "bad_usb_app_i.h" +#include +#include + +static bool bad_usb_app_custom_event_callback(void* context, uint32_t event) { + furi_assert(context); + BadUsbApp* app = context; + return scene_manager_handle_custom_event(app->scene_manager, event); +} + +static bool bad_usb_app_back_event_callback(void* context) { + furi_assert(context); + BadUsbApp* app = context; + return scene_manager_handle_back_event(app->scene_manager); +} + +static void bad_usb_app_tick_event_callback(void* context) { + furi_assert(context); + BadUsbApp* app = context; + scene_manager_handle_tick_event(app->scene_manager); +} + +BadUsbApp* bad_usb_app_alloc() { + BadUsbApp* app = furi_alloc(sizeof(BadUsbApp)); + + app->gui = furi_record_open("gui"); + app->notifications = furi_record_open("notification"); + app->dialogs = furi_record_open("dialogs"); + + app->view_dispatcher = view_dispatcher_alloc(); + app->scene_manager = scene_manager_alloc(&bad_usb_scene_handlers, app); + view_dispatcher_enable_queue(app->view_dispatcher); + view_dispatcher_set_event_callback_context(app->view_dispatcher, app); + view_dispatcher_set_tick_event_callback( + app->view_dispatcher, bad_usb_app_tick_event_callback, 500); + + view_dispatcher_set_custom_event_callback( + app->view_dispatcher, bad_usb_app_custom_event_callback); + view_dispatcher_set_navigation_event_callback( + app->view_dispatcher, bad_usb_app_back_event_callback); + + view_dispatcher_attach_to_gui(app->view_dispatcher, app->gui, ViewDispatcherTypeFullscreen); + + app->bad_usb_view = bad_usb_alloc(); + view_dispatcher_add_view( + app->view_dispatcher, BadUsbAppViewWork, bad_usb_get_view(app->bad_usb_view)); + + scene_manager_next_scene(app->scene_manager, BadUsbAppViewFileSelect); + + return app; +} + +void bad_usb_app_free(BadUsbApp* app) { + furi_assert(app); + + // Views + view_dispatcher_remove_view(app->view_dispatcher, BadUsbAppViewFileSelect); + view_dispatcher_remove_view(app->view_dispatcher, BadUsbAppViewWork); + bad_usb_free(app->bad_usb_view); + + // View dispatcher + view_dispatcher_free(app->view_dispatcher); + scene_manager_free(app->scene_manager); + + // Close records + furi_record_close("gui"); + furi_record_close("notification"); + furi_record_close("dialogs"); + + free(app); +} + +int32_t bad_usb_app(void* p) { + UsbInterface* usb_mode_prev = furi_hal_usb_get_config(); + furi_hal_usb_set_config(&usb_hid); + + BadUsbApp* bad_usb_app = bad_usb_app_alloc(); + + view_dispatcher_run(bad_usb_app->view_dispatcher); + + furi_hal_usb_set_config(usb_mode_prev); + bad_usb_app_free(bad_usb_app); + + return 0; +} diff --git a/applications/bad_usb/bad_usb_app.h b/applications/bad_usb/bad_usb_app.h new file mode 100644 index 00000000..afadd87e --- /dev/null +++ b/applications/bad_usb/bad_usb_app.h @@ -0,0 +1,11 @@ +#pragma once + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct BadUsbApp BadUsbApp; + +#ifdef __cplusplus +} +#endif diff --git a/applications/bad_usb/bad_usb_app_i.h b/applications/bad_usb/bad_usb_app_i.h new file mode 100644 index 00000000..10581e4e --- /dev/null +++ b/applications/bad_usb/bad_usb_app_i.h @@ -0,0 +1,35 @@ +#pragma once + +#include "bad_usb_app.h" +#include "scenes/bad_usb_scene.h" +#include "bad_usb_script.h" + +#include +#include +#include +#include +#include +#include +#include +#include "views/bad_usb_view.h" + +#define BAD_USB_APP_PATH_FOLDER "/any/badusb" +#define BAD_USB_APP_EXTENSION ".txt" +#define BAD_USB_FILE_NAME_LEN 40 + +struct BadUsbApp { + Gui* gui; + ViewDispatcher* view_dispatcher; + SceneManager* scene_manager; + NotificationApp* notifications; + DialogsApp* dialogs; + + char file_name[BAD_USB_FILE_NAME_LEN + 1]; + BadUsb* bad_usb_view; + BadUsbScript* bad_usb_script; +}; + +typedef enum { + BadUsbAppViewFileSelect, + BadUsbAppViewWork, +} BadUsbAppView; diff --git a/applications/bad_usb/bad_usb_script.c b/applications/bad_usb/bad_usb_script.c new file mode 100644 index 00000000..0ac42737 --- /dev/null +++ b/applications/bad_usb/bad_usb_script.c @@ -0,0 +1,463 @@ +#include +#include +#include +#include +#include +#include +#include +#include "bad_usb_script.h" + +#define TAG "BadUSB" +#define WORKER_TAG TAG "Worker" +#define FILE_BUFFER_LEN 16 + +typedef enum { + WorkerEvtReserved = (1 << 0), + WorkerEvtToggle = (1 << 1), + WorkerEvtEnd = (1 << 2), + WorkerEvtConnect = (1 << 3), + WorkerEvtDisconnect = (1 << 4), +} WorkerEvtFlags; + +struct BadUsbScript { + BadUsbState st; + string_t file_path; + uint32_t defdelay; + FuriThread* thread; + uint8_t file_buf[FILE_BUFFER_LEN + 1]; + uint8_t buf_start; + uint8_t buf_len; + bool file_end; + string_t line; + + string_t line_prev; + uint32_t repeat_cnt; +}; + +typedef struct { + char* name; + uint16_t keycode; +} DuckyKey; + +static const DuckyKey ducky_keys[] = { + {"CTRL", KEY_MOD_LEFT_CTRL}, + {"CONTROL", KEY_MOD_LEFT_CTRL}, + {"SHIFT", KEY_MOD_LEFT_SHIFT}, + {"ALT", KEY_MOD_LEFT_ALT}, + {"GUI", KEY_MOD_LEFT_GUI}, + {"WINDOWS", KEY_MOD_LEFT_GUI}, + + {"DOWNARROW", KEY_DOWN_ARROW}, + {"DOWN", KEY_DOWN_ARROW}, + {"LEFTARROW", KEY_LEFT_ARROW}, + {"LEFT", KEY_LEFT_ARROW}, + {"RIGHTARROW", KEY_RIGHT_ARROW}, + {"RIGHT", KEY_RIGHT_ARROW}, + {"UPARROW", KEY_UP_ARROW}, + {"UP", KEY_UP_ARROW}, + + {"ENTER", KEY_ENTER}, + {"BREAK", KEY_PAUSE}, + {"PAUSE", KEY_PAUSE}, + {"CAPSLOCK", KEY_CAPS_LOCK}, + {"DELETE", KEY_DELETE}, + {"BACKSPACE", KEY_BACKSPACE}, + {"END", KEY_END}, + {"ESC", KEY_ESC}, + {"ESCAPE", KEY_ESC}, + {"HOME", KEY_HOME}, + {"INSERT", KEY_INSERT}, + {"NUMLOCK", KEY_NUM_LOCK}, + {"PAGEUP", KEY_PAGE_UP}, + {"PAGEDOWN", KEY_PAGE_DOWN}, + {"PRINTSCREEN", KEY_PRINT}, + {"SCROLLOCK", KEY_SCROLL_LOCK}, + {"SPACE", KEY_SPACE}, + {"TAB", KEY_TAB}, + {"MENU", KEY_APPLICATION}, + {"APP", KEY_APPLICATION}, + + {"F1", KEY_F1}, + {"F2", KEY_F2}, + {"F3", KEY_F3}, + {"F4", KEY_F4}, + {"F5", KEY_F5}, + {"F6", KEY_F6}, + {"F7", KEY_F7}, + {"F8", KEY_F8}, + {"F9", KEY_F9}, + {"F10", KEY_F10}, + {"F11", KEY_F11}, + {"F12", KEY_F12}, +}; + +static const char ducky_cmd_comment[] = {"REM"}; +static const char ducky_cmd_delay[] = {"DELAY"}; +static const char ducky_cmd_string[] = {"STRING"}; +static const char ducky_cmd_defdelay_1[] = {"DEFAULT_DELAY"}; +static const char ducky_cmd_defdelay_2[] = {"DEFAULTDELAY"}; +static const char ducky_cmd_repeat[] = {"REPEAT"}; + +static bool ducky_get_number(char* param, uint32_t* val) { + uint32_t value = 0; + if(sscanf(param, "%lu", &value) == 1) { + *val = value; + return true; + } + return false; +} + +static uint32_t ducky_get_command_len(char* line) { + uint32_t len = strlen(line); + for(uint32_t i = 0; i < len; i++) { + if(line[i] == ' ') return i; + } + return 0; +} + +static bool ducky_string(char* param) { + uint32_t i = 0; + while(param[i] != '\0') { + furi_hal_hid_kb_press(HID_ASCII_TO_KEY(param[i])); + furi_hal_hid_kb_release(HID_ASCII_TO_KEY(param[i])); + i++; + } + return true; +} + +static uint16_t ducky_get_keycode(char* param, bool accept_chars) { + for(uint8_t i = 0; i < (sizeof(ducky_keys) / sizeof(ducky_keys[0])); i++) { + if(strncmp(param, ducky_keys[i].name, strlen(ducky_keys[i].name)) == 0) + return ducky_keys[i].keycode; + } + if((accept_chars) && (strlen(param) > 0)) { + return (HID_ASCII_TO_KEY(param[0]) & 0xFF); + } + return 0; +} + +static int32_t ducky_parse_line(BadUsbScript* bad_usb, string_t line) { + uint32_t line_len = string_size(line); + char* line_t = (char*)string_get_cstr(line); + bool state = false; + + for(uint32_t i = 0; i < line_len; i++) { + if((line_t[i] != ' ') && (line_t[i] != '\t') && (line_t[i] != '\n')) { + line_t = &line_t[i]; + break; // Skip spaces and tabs + } + if(i == line_len - 1) return 0; // Skip empty lines + } + + FURI_LOG_I(WORKER_TAG, "line:%s", line_t); + + // General commands + if(strncmp(line_t, ducky_cmd_comment, strlen(ducky_cmd_comment)) == 0) { + // REM - comment line + return (0); + } else if(strncmp(line_t, ducky_cmd_delay, strlen(ducky_cmd_delay)) == 0) { + // DELAY + line_t = &line_t[ducky_get_command_len(line_t) + 1]; + uint32_t delay_val = 0; + state = ducky_get_number(line_t, &delay_val); + if((state) && (delay_val > 0)) { + return (int32_t)delay_val; + } + return (-1); + } else if( + (strncmp(line_t, ducky_cmd_defdelay_1, strlen(ducky_cmd_defdelay_1)) == 0) || + (strncmp(line_t, ducky_cmd_defdelay_2, strlen(ducky_cmd_defdelay_2)) == 0)) { + // DEFAULT_DELAY + line_t = &line_t[ducky_get_command_len(line_t) + 1]; + state = ducky_get_number(line_t, &bad_usb->defdelay); + return (state) ? (0) : (-1); + } else if(strncmp(line_t, ducky_cmd_string, strlen(ducky_cmd_string)) == 0) { + // STRING + line_t = &line_t[ducky_get_command_len(line_t) + 1]; + state = ducky_string(line_t); + return (state) ? (0) : (-1); + } else if(strncmp(line_t, ducky_cmd_repeat, strlen(ducky_cmd_repeat)) == 0) { + // REPEAT + line_t = &line_t[ducky_get_command_len(line_t) + 1]; + state = ducky_get_number(line_t, &bad_usb->repeat_cnt); + return (state) ? (0) : (-1); + } else { + // Special keys + modifiers + uint16_t key = ducky_get_keycode(line_t, false); + if(key == KEY_NONE) return (-1); + if((key & 0xFF00) != 0) { + // It's a modifier key + line_t = &line_t[ducky_get_command_len(line_t) + 1]; + key |= ducky_get_keycode(line_t, true); + } + furi_hal_hid_kb_press(key); + furi_hal_hid_kb_release(key); + return (0); + } + return (-1); +} + +static bool ducky_script_preload(BadUsbScript* bad_usb, File* script_file) { + uint8_t ret = 0; + uint32_t line_len = 0; + + do { + ret = storage_file_read(script_file, bad_usb->file_buf, FILE_BUFFER_LEN); + for(uint16_t i = 0; i < ret; i++) { + if(bad_usb->file_buf[i] == '\n' && line_len > 0) { + bad_usb->st.line_nb++; + line_len = 0; + } else { + line_len++; + } + } + if(storage_file_eof(script_file)) { + if(line_len > 0) { + bad_usb->st.line_nb++; + break; + } + } + } while(ret > 0); + + storage_file_seek(script_file, 0, true); + + return true; +} + +static int32_t ducky_script_execute_next(BadUsbScript* bad_usb, File* script_file) { + int32_t delay_val = 0; + + if(bad_usb->repeat_cnt > 0) { + bad_usb->repeat_cnt--; + delay_val = ducky_parse_line(bad_usb, bad_usb->line_prev); + if(delay_val < 0) { + bad_usb->st.error_line = bad_usb->st.line_cur - 1; + FURI_LOG_E(WORKER_TAG, "Unknown command at line %lu", bad_usb->st.line_cur - 1); + return (-1); + } else { + return (delay_val + bad_usb->defdelay); + } + } + + string_set(bad_usb->line_prev, bad_usb->line); + string_reset(bad_usb->line); + + while(1) { + if(bad_usb->buf_len == 0) { + bad_usb->buf_len = storage_file_read(script_file, bad_usb->file_buf, FILE_BUFFER_LEN); + if(storage_file_eof(script_file)) { + if((bad_usb->buf_len < FILE_BUFFER_LEN) && (bad_usb->file_end == false)) { + bad_usb->file_buf[bad_usb->buf_len] = '\n'; + bad_usb->buf_len++; + bad_usb->file_end = true; + } + } + + bad_usb->buf_start = 0; + if(bad_usb->buf_len == 0) return (-2); + } + for(uint8_t i = bad_usb->buf_start; i < (bad_usb->buf_start + bad_usb->buf_len); i++) { + if(bad_usb->file_buf[i] == '\n' && string_size(bad_usb->line) > 0) { + bad_usb->st.line_cur++; + bad_usb->buf_len = bad_usb->buf_len + bad_usb->buf_start - (i + 1); + bad_usb->buf_start = i + 1; + delay_val = ducky_parse_line(bad_usb, bad_usb->line); + if(delay_val < 0) { + bad_usb->st.error_line = bad_usb->st.line_cur; + FURI_LOG_E(WORKER_TAG, "Unknown command at line %lu", bad_usb->st.line_cur); + return (-1); + } else { + return (delay_val + bad_usb->defdelay); + } + } else { + string_push_back(bad_usb->line, bad_usb->file_buf[i]); + } + } + bad_usb->buf_len = 0; + if(bad_usb->file_end) return (-2); + } + + return 0; +} + +static void bad_usb_hid_state_callback(bool state, void* context) { + furi_assert(context); + BadUsbScript* bad_usb = context; + + if(state == true) + osThreadFlagsSet(furi_thread_get_thread_id(bad_usb->thread), WorkerEvtConnect); + else + osThreadFlagsSet(furi_thread_get_thread_id(bad_usb->thread), WorkerEvtDisconnect); +} + +static int32_t bad_usb_worker(void* context) { + BadUsbScript* bad_usb = context; + + BadUsbWorkerState worker_state = BadUsbStateInit; + int32_t delay_val = 0; + + FURI_LOG_I(WORKER_TAG, "Init"); + File* script_file = storage_file_alloc(furi_record_open("storage")); + string_init(bad_usb->line); + string_init(bad_usb->line_prev); + + furi_hal_hid_set_state_callback(bad_usb_hid_state_callback, bad_usb); + + while(1) { + if(worker_state == BadUsbStateInit) { // State: initialization + if(storage_file_open( + script_file, + string_get_cstr(bad_usb->file_path), + FSAM_READ, + FSOM_OPEN_EXISTING)) { + if((ducky_script_preload(bad_usb, script_file)) && (bad_usb->st.line_nb > 0)) { + if(furi_hal_hid_is_connected()) { + worker_state = BadUsbStateIdle; // Ready to run + } else { + worker_state = BadUsbStateNotConnected; // USB not connected + } + } else { + worker_state = BadUsbStateScriptError; // Script preload error + } + } else { + FURI_LOG_E(WORKER_TAG, "File open error"); + worker_state = BadUsbStateFileError; // File open error + } + bad_usb->st.state = worker_state; + + } else if(worker_state == BadUsbStateNotConnected) { // State: USB not connected + uint32_t flags = + osThreadFlagsWait(WorkerEvtEnd | WorkerEvtConnect, osFlagsWaitAny, osWaitForever); + furi_check((flags & osFlagsError) == 0); + if(flags & WorkerEvtEnd) { + break; + } else if(flags & WorkerEvtConnect) { + worker_state = BadUsbStateIdle; // Ready to run + } + bad_usb->st.state = worker_state; + + } else if(worker_state == BadUsbStateIdle) { // State: ready to start + uint32_t flags = osThreadFlagsWait( + WorkerEvtEnd | WorkerEvtToggle | WorkerEvtDisconnect, + osFlagsWaitAny, + osWaitForever); + furi_check((flags & osFlagsError) == 0); + if(flags & WorkerEvtEnd) { + break; + } else if(flags & WorkerEvtToggle) { // Start executing script + delay_val = 0; + bad_usb->buf_len = 0; + bad_usb->st.line_cur = 0; + bad_usb->defdelay = 0; + bad_usb->repeat_cnt = 0; + bad_usb->file_end = false; + storage_file_seek(script_file, 0, true); + worker_state = BadUsbStateRunning; + } else if(flags & WorkerEvtDisconnect) { + worker_state = BadUsbStateNotConnected; // USB disconnected + } + bad_usb->st.state = worker_state; + + } else if(worker_state == BadUsbStateRunning) { // State: running + uint16_t delay_cur = (delay_val > 1000) ? (1000) : (delay_val); + uint32_t flags = osThreadFlagsWait( + WorkerEvtEnd | WorkerEvtToggle | WorkerEvtDisconnect, osFlagsWaitAny, delay_cur); + delay_val -= delay_cur; + if(!(flags & osFlagsError)) { + if(flags & WorkerEvtEnd) { + break; + } else if(flags & WorkerEvtToggle) { + worker_state = BadUsbStateIdle; // Stop executing script + furi_hal_hid_kb_release_all(); + } else if(flags & WorkerEvtDisconnect) { + worker_state = BadUsbStateNotConnected; // USB disconnected + furi_hal_hid_kb_release_all(); + } + bad_usb->st.state = worker_state; + continue; + } else if((flags == osFlagsErrorTimeout) || (flags == osFlagsErrorResource)) { + if(delay_val > 0) { + bad_usb->st.delay_remain--; + continue; + } + bad_usb->st.state = BadUsbStateRunning; + delay_val = ducky_script_execute_next(bad_usb, script_file); + if(delay_val == -1) { // Script error + delay_val = 0; + worker_state = BadUsbStateScriptError; + bad_usb->st.state = worker_state; + } else if(delay_val == -2) { // End of script + delay_val = 0; + worker_state = BadUsbStateIdle; + bad_usb->st.state = BadUsbStateDone; + furi_hal_hid_kb_release_all(); + continue; + } else if(delay_val > 1000) { + bad_usb->st.state = BadUsbStateDelay; // Show long delays + bad_usb->st.delay_remain = delay_val / 1000; + } + } else { + furi_check((flags & osFlagsError) == 0); + } + + } else if( + (worker_state == BadUsbStateFileError) || + (worker_state == BadUsbStateScriptError)) { // State: error + uint32_t flags = osThreadFlagsWait( + WorkerEvtEnd, osFlagsWaitAny, osWaitForever); // Waiting for exit command + furi_check((flags & osFlagsError) == 0); + if(flags & WorkerEvtEnd) { + break; + } + } + } + + furi_hal_hid_set_state_callback(NULL, NULL); + + storage_file_close(script_file); + storage_file_free(script_file); + string_clear(bad_usb->line); + string_clear(bad_usb->line_prev); + + FURI_LOG_I(WORKER_TAG, "End"); + + return 0; +} + +BadUsbScript* bad_usb_script_open(string_t file_path) { + furi_assert(file_path); + + BadUsbScript* bad_usb = furi_alloc(sizeof(BadUsbScript)); + string_init(bad_usb->file_path); + string_set(bad_usb->file_path, file_path); + + bad_usb->st.state = BadUsbStateInit; + + bad_usb->thread = furi_thread_alloc(); + furi_thread_set_name(bad_usb->thread, "BadUsbWorker"); + furi_thread_set_stack_size(bad_usb->thread, 2048); + furi_thread_set_context(bad_usb->thread, bad_usb); + furi_thread_set_callback(bad_usb->thread, bad_usb_worker); + + furi_thread_start(bad_usb->thread); + return bad_usb; +} + +void bad_usb_script_close(BadUsbScript* bad_usb) { + furi_assert(bad_usb); + osThreadFlagsSet(furi_thread_get_thread_id(bad_usb->thread), WorkerEvtEnd); + furi_thread_join(bad_usb->thread); + furi_thread_free(bad_usb->thread); + string_clear(bad_usb->file_path); + free(bad_usb); +} + +void bad_usb_script_toggle(BadUsbScript* bad_usb) { + furi_assert(bad_usb); + osThreadFlagsSet(furi_thread_get_thread_id(bad_usb->thread), WorkerEvtToggle); +} + +BadUsbState* bad_usb_script_get_state(BadUsbScript* bad_usb) { + furi_assert(bad_usb); + return &(bad_usb->st); +} diff --git a/applications/bad_usb/bad_usb_script.h b/applications/bad_usb/bad_usb_script.h new file mode 100644 index 00000000..88921de3 --- /dev/null +++ b/applications/bad_usb/bad_usb_script.h @@ -0,0 +1,45 @@ +#pragma once + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include + +typedef struct BadUsbScript BadUsbScript; + +typedef enum { + BadUsbStateInit, + BadUsbStateNotConnected, + BadUsbStateIdle, + BadUsbStateRunning, + BadUsbStateDelay, + BadUsbStateDone, + BadUsbStateScriptError, + BadUsbStateFileError, +} BadUsbWorkerState; + +typedef struct { + BadUsbWorkerState state; + uint16_t line_cur; + uint16_t line_nb; + uint32_t delay_remain; + uint16_t error_line; +} BadUsbState; + +BadUsbScript* bad_usb_script_open(string_t file_path); + +void bad_usb_script_close(BadUsbScript* bad_usb); + +void bad_usb_script_start(BadUsbScript* bad_usb); + +void bad_usb_script_stop(BadUsbScript* bad_usb); + +void bad_usb_script_toggle(BadUsbScript* bad_usb); + +BadUsbState* bad_usb_script_get_state(BadUsbScript* bad_usb); + +#ifdef __cplusplus +} +#endif diff --git a/applications/bad_usb/scenes/bad_usb_scene.c b/applications/bad_usb/scenes/bad_usb_scene.c new file mode 100644 index 00000000..03c7c447 --- /dev/null +++ b/applications/bad_usb/scenes/bad_usb_scene.c @@ -0,0 +1,30 @@ +#include "bad_usb_scene.h" + +// Generate scene on_enter handlers array +#define ADD_SCENE(prefix, name, id) prefix##_scene_##name##_on_enter, +void (*const bad_usb_scene_on_enter_handlers[])(void*) = { +#include "bad_usb_scene_config.h" +}; +#undef ADD_SCENE + +// Generate scene on_event handlers array +#define ADD_SCENE(prefix, name, id) prefix##_scene_##name##_on_event, +bool (*const bad_usb_scene_on_event_handlers[])(void* context, SceneManagerEvent event) = { +#include "bad_usb_scene_config.h" +}; +#undef ADD_SCENE + +// Generate scene on_exit handlers array +#define ADD_SCENE(prefix, name, id) prefix##_scene_##name##_on_exit, +void (*const bad_usb_scene_on_exit_handlers[])(void* context) = { +#include "bad_usb_scene_config.h" +}; +#undef ADD_SCENE + +// Initialize scene handlers configuration structure +const SceneManagerHandlers bad_usb_scene_handlers = { + .on_enter_handlers = bad_usb_scene_on_enter_handlers, + .on_event_handlers = bad_usb_scene_on_event_handlers, + .on_exit_handlers = bad_usb_scene_on_exit_handlers, + .scene_num = BadUsbSceneNum, +}; diff --git a/applications/bad_usb/scenes/bad_usb_scene.h b/applications/bad_usb/scenes/bad_usb_scene.h new file mode 100644 index 00000000..68a75321 --- /dev/null +++ b/applications/bad_usb/scenes/bad_usb_scene.h @@ -0,0 +1,29 @@ +#pragma once + +#include + +// Generate scene id and total number +#define ADD_SCENE(prefix, name, id) BadUsbScene##id, +typedef enum { +#include "bad_usb_scene_config.h" + BadUsbSceneNum, +} BadUsbScene; +#undef ADD_SCENE + +extern const SceneManagerHandlers bad_usb_scene_handlers; + +// Generate scene on_enter handlers declaration +#define ADD_SCENE(prefix, name, id) void prefix##_scene_##name##_on_enter(void*); +#include "bad_usb_scene_config.h" +#undef ADD_SCENE + +// Generate scene on_event handlers declaration +#define ADD_SCENE(prefix, name, id) \ + bool prefix##_scene_##name##_on_event(void* context, SceneManagerEvent event); +#include "bad_usb_scene_config.h" +#undef ADD_SCENE + +// Generate scene on_exit handlers declaration +#define ADD_SCENE(prefix, name, id) void prefix##_scene_##name##_on_exit(void* context); +#include "bad_usb_scene_config.h" +#undef ADD_SCENE diff --git a/applications/bad_usb/scenes/bad_usb_scene_config.h b/applications/bad_usb/scenes/bad_usb_scene_config.h new file mode 100644 index 00000000..b32ecb91 --- /dev/null +++ b/applications/bad_usb/scenes/bad_usb_scene_config.h @@ -0,0 +1,2 @@ +ADD_SCENE(bad_usb, file_select, FileSelect) +ADD_SCENE(bad_usb, work, Work) diff --git a/applications/bad_usb/scenes/bad_usb_scene_file_select.c b/applications/bad_usb/scenes/bad_usb_scene_file_select.c new file mode 100644 index 00000000..33f08097 --- /dev/null +++ b/applications/bad_usb/scenes/bad_usb_scene_file_select.c @@ -0,0 +1,36 @@ +#include "../bad_usb_app_i.h" +#include "furi-hal-power.h" + +static bool bad_usb_file_select(BadUsbApp* bad_usb) { + furi_assert(bad_usb); + + // Input events and views are managed by file_select + bool res = dialog_file_select_show( + bad_usb->dialogs, + BAD_USB_APP_PATH_FOLDER, + BAD_USB_APP_EXTENSION, + bad_usb->file_name, + sizeof(bad_usb->file_name), + NULL); + return res; +} + +void bad_usb_scene_file_select_on_enter(void* context) { + BadUsbApp* bad_usb = context; + + if(bad_usb_file_select(bad_usb)) { + scene_manager_next_scene(bad_usb->scene_manager, BadUsbAppViewWork); + } else { + //scene_manager_previous_scene(bad_usb->scene_manager); + view_dispatcher_stop(bad_usb->view_dispatcher); + } +} + +bool bad_usb_scene_file_select_on_event(void* context, SceneManagerEvent event) { + // BadUsbApp* bad_usb = context; + return false; +} + +void bad_usb_scene_file_select_on_exit(void* context) { + // BadUsbApp* bad_usb = context; +} diff --git a/applications/bad_usb/scenes/bad_usb_scene_work.c b/applications/bad_usb/scenes/bad_usb_scene_work.c new file mode 100644 index 00000000..3c3803d0 --- /dev/null +++ b/applications/bad_usb/scenes/bad_usb_scene_work.c @@ -0,0 +1,47 @@ +#include "../bad_usb_script.h" +#include "../bad_usb_app_i.h" +#include "../views/bad_usb_view.h" +#include "furi-hal.h" + +void bad_usb_scene_work_ok_callback(InputType type, void* context) { + furi_assert(context); + BadUsbApp* app = context; + view_dispatcher_send_custom_event(app->view_dispatcher, type); +} + +bool bad_usb_scene_work_on_event(void* context, SceneManagerEvent event) { + BadUsbApp* app = context; + bool consumed = false; + + if(event.type == SceneManagerEventTypeCustom) { + bad_usb_script_toggle(app->bad_usb_script); + consumed = true; + } else if(event.type == SceneManagerEventTypeTick) { + bad_usb_set_state(app->bad_usb_view, bad_usb_script_get_state(app->bad_usb_script)); + } + return consumed; +} + +void bad_usb_scene_work_on_enter(void* context) { + BadUsbApp* app = context; + + string_t file_name; + string_init(file_name); + + bad_usb_set_file_name(app->bad_usb_view, app->file_name); + string_printf( + file_name, "%s/%s%s", BAD_USB_APP_PATH_FOLDER, app->file_name, BAD_USB_APP_EXTENSION); + app->bad_usb_script = bad_usb_script_open(file_name); + + string_clear(file_name); + + bad_usb_set_state(app->bad_usb_view, bad_usb_script_get_state(app->bad_usb_script)); + + bad_usb_set_ok_callback(app->bad_usb_view, bad_usb_scene_work_ok_callback, app); + view_dispatcher_switch_to_view(app->view_dispatcher, BadUsbAppViewWork); +} + +void bad_usb_scene_work_on_exit(void* context) { + BadUsbApp* app = context; + bad_usb_script_close(app->bad_usb_script); +} diff --git a/applications/bad_usb/views/bad_usb_view.c b/applications/bad_usb/views/bad_usb_view.c new file mode 100644 index 00000000..fecd2f7a --- /dev/null +++ b/applications/bad_usb/views/bad_usb_view.c @@ -0,0 +1,168 @@ +#include "bad_usb_view.h" +#include "../bad_usb_script.h" +#include + +struct BadUsb { + View* view; + BadUsbOkCallback callback; + void* context; +}; + +typedef struct { + char* file_name; + BadUsbState state; + uint8_t anim_frame; +} BadUsbModel; + +static void bad_usb_draw_callback(Canvas* canvas, void* _model) { + BadUsbModel* model = _model; + + string_t disp_str; + string_init_set_str(disp_str, model->file_name); + elements_string_fit_width(canvas, disp_str, 128 - 2); + canvas_set_font(canvas, FontSecondary); + canvas_draw_str(canvas, 2, 8, string_get_cstr(disp_str)); + string_reset(disp_str); + + canvas_draw_icon(canvas, 22, 20, &I_UsbTree_48x22); + + if((model->state.state == BadUsbStateIdle) || (model->state.state == BadUsbStateDone)) { + elements_button_center(canvas, "Run"); + } else if((model->state.state == BadUsbStateRunning) || (model->state.state == BadUsbStateDelay)) { + elements_button_center(canvas, "Stop"); + } + + if(model->state.state == BadUsbStateNotConnected) { + canvas_draw_icon(canvas, 4, 22, &I_Clock_18x18); + canvas_set_font(canvas, FontPrimary); + canvas_draw_str_aligned(canvas, 127, 27, AlignRight, AlignBottom, "Connect"); + canvas_draw_str_aligned(canvas, 127, 39, AlignRight, AlignBottom, "to USB"); + } else if(model->state.state == BadUsbStateFileError) { + canvas_draw_icon(canvas, 4, 22, &I_Error_18x18); + canvas_set_font(canvas, FontPrimary); + canvas_draw_str_aligned(canvas, 127, 27, AlignRight, AlignBottom, "File"); + canvas_draw_str_aligned(canvas, 127, 39, AlignRight, AlignBottom, "ERROR"); + } else if(model->state.state == BadUsbStateScriptError) { + canvas_draw_icon(canvas, 4, 22, &I_Error_18x18); + canvas_set_font(canvas, FontPrimary); + canvas_draw_str_aligned(canvas, 127, 33, AlignRight, AlignBottom, "ERROR:"); + canvas_set_font(canvas, FontSecondary); + string_printf(disp_str, "line %u", model->state.error_line); + canvas_draw_str_aligned( + canvas, 127, 46, AlignRight, AlignBottom, string_get_cstr(disp_str)); + string_reset(disp_str); + } else if(model->state.state == BadUsbStateIdle) { + canvas_draw_icon(canvas, 4, 22, &I_Smile_18x18); + canvas_set_font(canvas, FontBigNumbers); + canvas_draw_str_aligned(canvas, 114, 36, AlignRight, AlignBottom, "0"); + canvas_draw_icon(canvas, 117, 22, &I_Percent_10x14); + } else if(model->state.state == BadUsbStateRunning) { + if(model->anim_frame == 0) { + canvas_draw_icon(canvas, 4, 19, &I_EviSmile1_18x21); + } else { + canvas_draw_icon(canvas, 4, 19, &I_EviSmile2_18x21); + } + canvas_set_font(canvas, FontBigNumbers); + string_printf(disp_str, "%u", ((model->state.line_cur - 1) * 100) / model->state.line_nb); + canvas_draw_str_aligned( + canvas, 114, 36, AlignRight, AlignBottom, string_get_cstr(disp_str)); + string_reset(disp_str); + canvas_draw_icon(canvas, 117, 22, &I_Percent_10x14); + } else if(model->state.state == BadUsbStateDone) { + canvas_draw_icon(canvas, 4, 19, &I_EviSmile1_18x21); + canvas_set_font(canvas, FontBigNumbers); + canvas_draw_str_aligned(canvas, 114, 36, AlignRight, AlignBottom, "100"); + string_reset(disp_str); + canvas_draw_icon(canvas, 117, 22, &I_Percent_10x14); + } else if(model->state.state == BadUsbStateDelay) { + if(model->anim_frame == 0) { + canvas_draw_icon(canvas, 4, 19, &I_EviWaiting1_18x21); + } else { + canvas_draw_icon(canvas, 4, 19, &I_EviWaiting2_18x21); + } + canvas_set_font(canvas, FontBigNumbers); + string_printf(disp_str, "%u", ((model->state.line_cur - 1) * 100) / model->state.line_nb); + canvas_draw_str_aligned( + canvas, 114, 36, AlignRight, AlignBottom, string_get_cstr(disp_str)); + string_reset(disp_str); + canvas_draw_icon(canvas, 117, 22, &I_Percent_10x14); + canvas_set_font(canvas, FontSecondary); + string_printf(disp_str, "delay %us", model->state.delay_remain); + canvas_draw_str_aligned( + canvas, 127, 46, AlignRight, AlignBottom, string_get_cstr(disp_str)); + string_reset(disp_str); + } else { + canvas_draw_icon(canvas, 4, 22, &I_Clock_18x18); + } + + string_clear(disp_str); +} + +static bool bad_usb_input_callback(InputEvent* event, void* context) { + furi_assert(context); + BadUsb* bad_usb = context; + bool consumed = false; + + if(event->type == InputTypeShort) { + if(event->key == InputKeyOk) { + consumed = true; + furi_assert(bad_usb->callback); + bad_usb->callback(InputTypeShort, bad_usb->context); + } + } + + return consumed; +} + +BadUsb* bad_usb_alloc() { + BadUsb* bad_usb = furi_alloc(sizeof(BadUsb)); + + bad_usb->view = view_alloc(); + view_allocate_model(bad_usb->view, ViewModelTypeLocking, sizeof(BadUsbModel)); + view_set_context(bad_usb->view, bad_usb); + view_set_draw_callback(bad_usb->view, bad_usb_draw_callback); + view_set_input_callback(bad_usb->view, bad_usb_input_callback); + + return bad_usb; +} + +void bad_usb_free(BadUsb* bad_usb) { + furi_assert(bad_usb); + view_free(bad_usb->view); + free(bad_usb); +} + +View* bad_usb_get_view(BadUsb* bad_usb) { + furi_assert(bad_usb); + return bad_usb->view; +} + +void bad_usb_set_ok_callback(BadUsb* bad_usb, BadUsbOkCallback callback, void* context) { + furi_assert(bad_usb); + furi_assert(callback); + with_view_model( + bad_usb->view, (BadUsbModel * model) { + bad_usb->callback = callback; + bad_usb->context = context; + return false; + }); +} + +void bad_usb_set_file_name(BadUsb* bad_usb, char* name) { + furi_assert(name); + with_view_model( + bad_usb->view, (BadUsbModel * model) { + model->file_name = name; + return false; + }); +} + +void bad_usb_set_state(BadUsb* bad_usb, BadUsbState* st) { + furi_assert(st); + with_view_model( + bad_usb->view, (BadUsbModel * model) { + memcpy(&(model->state), st, sizeof(BadUsbState)); + model->anim_frame ^= 1; + return false; + }); +} diff --git a/applications/bad_usb/views/bad_usb_view.h b/applications/bad_usb/views/bad_usb_view.h new file mode 100755 index 00000000..f5a8a0fa --- /dev/null +++ b/applications/bad_usb/views/bad_usb_view.h @@ -0,0 +1,19 @@ +#pragma once + +#include +#include "../bad_usb_script.h" + +typedef struct BadUsb BadUsb; +typedef void (*BadUsbOkCallback)(InputType type, void* context); + +BadUsb* bad_usb_alloc(); + +void bad_usb_free(BadUsb* bad_usb); + +View* bad_usb_get_view(BadUsb* bad_usb); + +void bad_usb_set_ok_callback(BadUsb* bad_usb, BadUsbOkCallback callback, void* context); + +void bad_usb_set_file_name(BadUsb* bad_usb, char* name); + +void bad_usb_set_state(BadUsb* bad_usb, BadUsbState* st); diff --git a/applications/bt/bt_debug_app/views/bt_carrier_test.c b/applications/bt/bt_debug_app/views/bt_carrier_test.c index 2343c861..f29c7766 100755 --- a/applications/bt/bt_debug_app/views/bt_carrier_test.c +++ b/applications/bt/bt_debug_app/views/bt_carrier_test.c @@ -35,10 +35,10 @@ static void bt_carrier_test_start(BtCarrierTest* bt_carrier_test) { furi_assert(bt_carrier_test); if(bt_carrier_test->mode == BtTestModeRx) { furi_hal_bt_start_packet_rx(bt_carrier_test->channel, 1); - osTimerStart(bt_carrier_test->timer, 1024 / 4); + osTimerStart(bt_carrier_test->timer, osKernelGetTickFreq() / 4); } else if(bt_carrier_test->mode == BtTestModeTxHopping) { furi_hal_bt_start_tone_tx(bt_carrier_test->channel, bt_carrier_test->power); - osTimerStart(bt_carrier_test->timer, 2048); + osTimerStart(bt_carrier_test->timer, osKernelGetTickFreq() * 2); } else if(bt_carrier_test->mode == BtTestModeTx) { furi_hal_bt_start_tone_tx(bt_carrier_test->channel, bt_carrier_test->power); } diff --git a/applications/bt/bt_debug_app/views/bt_packet_test.c b/applications/bt/bt_debug_app/views/bt_packet_test.c index 192b88d1..7fe4db89 100644 --- a/applications/bt/bt_debug_app/views/bt_packet_test.c +++ b/applications/bt/bt_debug_app/views/bt_packet_test.c @@ -31,7 +31,7 @@ static void bt_packet_test_start(BtPacketTest* bt_packet_test) { furi_assert(bt_packet_test); if(bt_packet_test->mode == BtTestModeRx) { furi_hal_bt_start_packet_rx(bt_packet_test->channel, bt_packet_test->data_rate); - osTimerStart(bt_packet_test->timer, 1024 / 4); + osTimerStart(bt_packet_test->timer, osKernelGetTickFreq() / 4); } else if(bt_packet_test->mode == BtTestModeTx) { furi_hal_bt_start_packet_tx(bt_packet_test->channel, 1, bt_packet_test->data_rate); } diff --git a/applications/debug_tools/bad_usb.c b/applications/debug_tools/bad_usb.c deleted file mode 100644 index 0bcaca2a..00000000 --- a/applications/debug_tools/bad_usb.c +++ /dev/null @@ -1,369 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include - -#define TAG "BadUsb" -#define WORKER_TAG TAG "Worker" - -typedef enum { - EventTypeInput, - EventTypeWorkerState, -} EventType; - -typedef enum { - WorkerStateDone, - WorkerStateNoFile, - WorkerStateScriptError, - WorkerStateDisconnected, -} WorkerState; - -typedef enum { - AppStateWait, - AppStateRunning, - AppStateError, - AppStateExit, -} AppState; - -typedef enum { - WorkerCmdStart = (1 << 0), - WorkerCmdStop = (1 << 1), -} WorkerCommandFlags; - -// Event message from worker -typedef struct { - WorkerState state; - uint16_t line; -} BadUsbWorkerState; - -typedef struct { - union { - InputEvent input; - BadUsbWorkerState worker; - }; - EventType type; -} BadUsbEvent; - -typedef struct { - uint32_t defdelay; - char msg_text[32]; - osThreadAttr_t thread_attr; - osThreadId_t thread; - osMessageQueueId_t event_queue; -} BadUsbParams; - -typedef struct { - char* name; - uint16_t keycode; -} DuckyKey; - -static const DuckyKey ducky_keys[] = { - {"CTRL", KEY_MOD_LEFT_CTRL}, - {"CONTROL", KEY_MOD_LEFT_CTRL}, - {"SHIFT", KEY_MOD_LEFT_SHIFT}, - {"ALT", KEY_MOD_LEFT_ALT}, - {"GUI", KEY_MOD_LEFT_GUI}, - {"WINDOWS", KEY_MOD_LEFT_GUI}, - - {"DOWNARROW", KEY_DOWN_ARROW}, - {"DOWN", KEY_DOWN_ARROW}, - {"LEFTARROW", KEY_LEFT_ARROW}, - {"LEFT", KEY_LEFT_ARROW}, - {"RIGHTARROW", KEY_RIGHT_ARROW}, - {"RIGHT", KEY_RIGHT_ARROW}, - {"UPARROW", KEY_UP_ARROW}, - {"UP", KEY_UP_ARROW}, - - {"ENTER", KEY_ENTER}, - {"BREAK", KEY_PAUSE}, - {"PAUSE", KEY_PAUSE}, - {"CAPSLOCK", KEY_CAPS_LOCK}, - {"DELETE", KEY_DELETE}, - {"BACKSPACE", KEY_BACKSPACE}, - {"END", KEY_END}, - {"ESC", KEY_ESC}, - {"ESCAPE", KEY_ESC}, - {"HOME", KEY_HOME}, - {"INSERT", KEY_INSERT}, - {"NUMLOCK", KEY_NUM_LOCK}, - {"PAGEUP", KEY_PAGE_UP}, - {"PAGEDOWN", KEY_PAGE_DOWN}, - {"PRINTSCREEN", KEY_PRINT}, - {"SCROLLOCK", KEY_SCROLL_LOCK}, - {"SPACE", KEY_SPACE}, - {"TAB", KEY_TAB}, - {"MENU", KEY_APPLICATION}, - {"APP", KEY_APPLICATION}, -}; - -static const char ducky_cmd_comment[] = {"REM"}; -static const char ducky_cmd_delay[] = {"DELAY"}; -static const char ducky_cmd_string[] = {"STRING"}; -static const char ducky_cmd_defdelay_1[] = {"DEFAULT_DELAY"}; -static const char ducky_cmd_defdelay_2[] = {"DEFAULTDELAY"}; - -static bool ducky_get_delay_val(char* param, uint32_t* val) { - uint32_t delay_val = 0; - if(sscanf(param, "%lu", &delay_val) == 1) { - *val = delay_val; - return true; - } - return false; -} - -static bool ducky_string(char* param) { - uint32_t i = 0; - while(param[i] != '\0') { - furi_hal_hid_kb_press(HID_ASCII_TO_KEY(param[i])); - furi_hal_hid_kb_release(HID_ASCII_TO_KEY(param[i])); - i++; - } - return true; -} - -static uint16_t ducky_get_keycode(char* param, bool accept_chars) { - for(uint8_t i = 0; i < (sizeof(ducky_keys) / sizeof(ducky_keys[0])); i++) { - if(strncmp(param, ducky_keys[i].name, strlen(ducky_keys[i].name)) == 0) - return ducky_keys[i].keycode; - } - if((accept_chars) && (strlen(param) > 0)) { - return (HID_ASCII_TO_KEY(param[0]) & 0xFF); - } - return 0; -} - -static bool ducky_parse_line(string_t line, BadUsbParams* app) { - //uint32_t line_len = string_size(line); - char* line_t = (char*)string_get_cstr(line); - bool state = false; - - // General commands - if(strncmp(line_t, ducky_cmd_comment, strlen(ducky_cmd_comment)) == 0) { - // REM - comment line - return true; - } else if(strncmp(line_t, ducky_cmd_delay, strlen(ducky_cmd_delay)) == 0) { - // DELAY - line_t = &line_t[args_get_first_word_length(line) + 1]; - uint32_t delay_val = 0; - state = ducky_get_delay_val(line_t, &delay_val); - if((state) && (delay_val > 0)) { - // Using ThreadFlagsWait as delay function allows exiting task on WorkerCmdStop command - if(osThreadFlagsWait(WorkerCmdStop, osFlagsWaitAny | osFlagsNoClear, delay_val) == - WorkerCmdStop) - return true; - } - return state; - } else if( - (strncmp(line_t, ducky_cmd_defdelay_1, strlen(ducky_cmd_defdelay_1)) == 0) || - (strncmp(line_t, ducky_cmd_defdelay_2, strlen(ducky_cmd_defdelay_2)) == 0)) { - // DEFAULT_DELAY - line_t = &line_t[args_get_first_word_length(line) + 1]; - return ducky_get_delay_val(line_t, &app->defdelay); - } else if(strncmp(line_t, ducky_cmd_string, strlen(ducky_cmd_string)) == 0) { - // STRING - if(app->defdelay > 0) { - if(osThreadFlagsWait(WorkerCmdStop, osFlagsWaitAny | osFlagsNoClear, app->defdelay) == - WorkerCmdStop) - return true; - } - line_t = &line_t[args_get_first_word_length(line) + 1]; - return ducky_string(line_t); - } else { - // Special keys + modifiers - uint16_t key = ducky_get_keycode(line_t, false); - if(key == KEY_NONE) return false; - if((key & 0xFF00) != 0) { - // It's a modifier key - line_t = &line_t[args_get_first_word_length(line) + 1]; - key |= ducky_get_keycode(line_t, true); - } - if(app->defdelay > 0) { - if(osThreadFlagsWait(WorkerCmdStop, osFlagsWaitAny | osFlagsNoClear, app->defdelay) == - WorkerCmdStop) - return true; - } - furi_hal_hid_kb_press(key); - furi_hal_hid_kb_release(key); - return true; - } - return false; -} - -static void badusb_worker(void* context) { - BadUsbParams* app = context; - FURI_LOG_I(WORKER_TAG, "Init"); - File* script_file = storage_file_alloc(furi_record_open("storage")); - BadUsbEvent evt; - string_t line; - uint32_t line_cnt = 0; - string_init(line); - if(storage_file_open(script_file, "/ext/badusb.txt", FSAM_READ, FSOM_OPEN_EXISTING)) { - char buffer[16]; - uint16_t ret; - uint32_t flags = - osThreadFlagsWait(WorkerCmdStart | WorkerCmdStop, osFlagsWaitAny, osWaitForever); - if(flags & WorkerCmdStart) { - FURI_LOG_I(WORKER_TAG, "Start"); - do { - ret = storage_file_read(script_file, buffer, 16); - for(uint16_t i = 0; i < ret; i++) { - if(buffer[i] == '\n' && string_size(line) > 0) { - line_cnt++; - if(ducky_parse_line(line, app) == false) { - ret = 0; - FURI_LOG_E(WORKER_TAG, "Unknown command at line %lu", line_cnt); - evt.type = EventTypeWorkerState; - evt.worker.state = WorkerStateScriptError; - evt.worker.line = line_cnt; - osMessageQueuePut(app->event_queue, &evt, 0, osWaitForever); - break; - } - flags = osThreadFlagsGet(); - if(flags == WorkerCmdStop) { - ret = 0; - break; - } - string_reset(line); - } else { - string_push_back(line, buffer[i]); - } - } - } while(ret > 0); - } - } else { - FURI_LOG_E(WORKER_TAG, "Script file open error"); - evt.type = EventTypeWorkerState; - evt.worker.state = WorkerStateNoFile; - osMessageQueuePut(app->event_queue, &evt, 0, osWaitForever); - } - string_reset(line); - string_clear(line); - - furi_hal_hid_kb_release_all(); - storage_file_close(script_file); - storage_file_free(script_file); - - FURI_LOG_I(WORKER_TAG, "End"); - evt.type = EventTypeWorkerState; - evt.worker.state = WorkerStateDone; - osMessageQueuePut(app->event_queue, &evt, 0, osWaitForever); - - furi_hal_hid_kb_release_all(); - - osThreadExit(); -} - -static void bad_usb_render_callback(Canvas* canvas, void* ctx) { - BadUsbParams* app = (BadUsbParams*)ctx; - - canvas_clear(canvas); - - canvas_set_font(canvas, FontPrimary); - canvas_draw_str(canvas, 0, 10, "Bad USB test"); - - if(strlen(app->msg_text) > 0) { - canvas_set_font(canvas, FontSecondary); - canvas_draw_str(canvas, 0, 62, app->msg_text); - } -} - -static void bad_usb_input_callback(InputEvent* input_event, void* ctx) { - osMessageQueueId_t event_queue = ctx; - - BadUsbEvent event; - event.type = EventTypeInput; - event.input = *input_event; - osMessageQueuePut(event_queue, &event, 0, osWaitForever); -} - -int32_t bad_usb_app(void* p) { - BadUsbParams* app = furi_alloc(sizeof(BadUsbParams)); - app->event_queue = osMessageQueueNew(8, sizeof(BadUsbEvent), NULL); - furi_check(app->event_queue); - ViewPort* view_port = view_port_alloc(); - - UsbInterface* usb_mode_prev = furi_hal_usb_get_config(); - furi_hal_usb_set_config(&usb_hid); - - view_port_draw_callback_set(view_port, bad_usb_render_callback, app); - view_port_input_callback_set(view_port, bad_usb_input_callback, app->event_queue); - - // Open GUI and register view_port - Gui* gui = furi_record_open("gui"); - gui_add_view_port(gui, view_port, GuiLayerFullscreen); - - app->thread = NULL; - app->thread_attr.name = "bad_usb_worker"; - app->thread_attr.stack_size = 2048; - app->thread = osThreadNew(badusb_worker, app, &app->thread_attr); - bool worker_running = true; - AppState app_state = AppStateWait; - snprintf(app->msg_text, sizeof(app->msg_text), "Press [OK] to start"); - view_port_update(view_port); - - BadUsbEvent event; - while(1) { - osStatus_t event_status = osMessageQueueGet(app->event_queue, &event, NULL, osWaitForever); - - if(event_status == osOK) { - if(event.type == EventTypeInput) { - if(event.input.type == InputTypeShort && event.input.key == InputKeyBack) { - if(worker_running) { - osThreadFlagsSet(app->thread, WorkerCmdStop); - app_state = AppStateExit; - } else - break; - } - - if(event.input.type == InputTypeShort && event.input.key == InputKeyOk) { - if(worker_running) { - app_state = AppStateRunning; - osThreadFlagsSet(app->thread, WorkerCmdStart); - snprintf(app->msg_text, sizeof(app->msg_text), "Running..."); - view_port_update(view_port); - } - } - } else if(event.type == EventTypeWorkerState) { - FURI_LOG_I(TAG, "ev: %d", event.worker.state); - if(event.worker.state == WorkerStateDone) { - worker_running = false; - if(app_state == AppStateExit) - break; - else if(app_state == AppStateRunning) { - //done - app->thread = osThreadNew(badusb_worker, app, &app->thread_attr); - worker_running = true; - app_state = AppStateWait; - snprintf(app->msg_text, sizeof(app->msg_text), "Press [OK] to start"); - view_port_update(view_port); - } - } else if(event.worker.state == WorkerStateNoFile) { - app_state = AppStateError; - snprintf(app->msg_text, sizeof(app->msg_text), "File not found!"); - view_port_update(view_port); - } else if(event.worker.state == WorkerStateScriptError) { - app_state = AppStateError; - snprintf( - app->msg_text, - sizeof(app->msg_text), - "Error at line %u", - event.worker.line); - view_port_update(view_port); - } - } - } - } - furi_hal_usb_set_config(usb_mode_prev); - - // remove & free all stuff created by app - gui_remove_view_port(gui, view_port); - view_port_free(view_port); - - osMessageQueueDelete(app->event_queue); - free(app); - - return 0; -} diff --git a/applications/debug_tools/blink_test.c b/applications/debug_tools/blink_test.c index cc41c188..36823b2e 100644 --- a/applications/debug_tools/blink_test.c +++ b/applications/debug_tools/blink_test.c @@ -49,7 +49,7 @@ int32_t blink_test_app(void* p) { view_port_draw_callback_set(view_port, blink_test_draw_callback, NULL); view_port_input_callback_set(view_port, blink_test_input_callback, event_queue); osTimerId_t timer = osTimerNew(blink_test_update, osTimerPeriodic, event_queue, NULL); - osTimerStart(timer, 1000); + osTimerStart(timer, osKernelGetTickFreq()); // Register view port in GUI Gui* gui = furi_record_open("gui"); diff --git a/applications/desktop/desktop.c b/applications/desktop/desktop.c index 5ae97951..aa82cdbb 100644 --- a/applications/desktop/desktop.c +++ b/applications/desktop/desktop.c @@ -1,5 +1,17 @@ +#include "assets_icons.h" +#include "cmsis_os2.h" +#include "desktop/desktop.h" #include "desktop_i.h" +#include +#include +#include +#include "portmacro.h" +#include "storage/filesystem-api-defines.h" +#include "storage/storage.h" #include +#include +#include +#include "helpers/desktop_animation.h" static void desktop_lock_icon_callback(Canvas* canvas, void* context) { furi_assert(canvas); @@ -25,10 +37,11 @@ Desktop* desktop_alloc() { desktop->scene_thread = furi_thread_alloc(); desktop->view_dispatcher = view_dispatcher_alloc(); desktop->scene_manager = scene_manager_alloc(&desktop_scene_handlers, desktop); + desktop->animation = desktop_animation_alloc(); view_dispatcher_enable_queue(desktop->view_dispatcher); view_dispatcher_attach_to_gui( - desktop->view_dispatcher, desktop->gui, ViewDispatcherTypeWindow); + desktop->view_dispatcher, desktop->gui, ViewDispatcherTypeDesktop); view_dispatcher_set_event_callback_context(desktop->view_dispatcher, desktop); view_dispatcher_set_custom_event_callback( @@ -79,6 +92,7 @@ Desktop* desktop_alloc() { void desktop_free(Desktop* desktop) { furi_assert(desktop); + desktop_animation_free(desktop->animation); view_dispatcher_remove_view(desktop->view_dispatcher, DesktopViewMain); view_dispatcher_remove_view(desktop->view_dispatcher, DesktopViewLockMenu); view_dispatcher_remove_view(desktop->view_dispatcher, DesktopViewLocked); @@ -116,8 +130,29 @@ static bool desktop_is_first_start() { return exists; } +static void desktop_dolphin_state_changed_callback(const void* message, void* context) { + Desktop* desktop = context; + view_dispatcher_send_custom_event(desktop->view_dispatcher, DesktopMainEventUpdateAnimation); +} + +static void desktop_storage_state_changed_callback(const void* message, void* context) { + Desktop* desktop = context; + view_dispatcher_send_custom_event(desktop->view_dispatcher, DesktopMainEventUpdateAnimation); +} + int32_t desktop_srv(void* p) { Desktop* desktop = desktop_alloc(); + + Dolphin* dolphin = furi_record_open("dolphin"); + FuriPubSub* dolphin_pubsub = dolphin_get_pubsub(dolphin); + FuriPubSubSubscription* dolphin_subscription = + furi_pubsub_subscribe(dolphin_pubsub, desktop_dolphin_state_changed_callback, desktop); + + Storage* storage = furi_record_open("storage"); + FuriPubSub* storage_pubsub = storage_get_pubsub(storage); + FuriPubSubSubscription* storage_subscription = + furi_pubsub_subscribe(storage_pubsub, desktop_storage_state_changed_callback, desktop); + bool loaded = LOAD_DESKTOP_SETTINGS(&desktop->settings); if(!loaded) { furi_hal_lock_set(false); @@ -143,6 +178,8 @@ int32_t desktop_srv(void* p) { } view_dispatcher_run(desktop->view_dispatcher); + furi_pubsub_unsubscribe(dolphin_pubsub, dolphin_subscription); + furi_pubsub_unsubscribe(storage_pubsub, storage_subscription); desktop_free(desktop); return 0; diff --git a/applications/desktop/desktop_i.h b/applications/desktop/desktop_i.h index 71a6c039..a1298cf4 100644 --- a/applications/desktop/desktop_i.h +++ b/applications/desktop/desktop_i.h @@ -23,6 +23,9 @@ #include "scenes/desktop_scene.h" #include "helpers/desktop_animation.h" #include "desktop/desktop_settings/desktop_settings.h" +#include + +#define STATUS_BAR_Y_SHIFT 13 typedef enum { DesktopViewMain, @@ -43,6 +46,7 @@ struct Desktop { ViewDispatcher* view_dispatcher; SceneManager* scene_manager; + DesktopAnimation* animation; DesktopFirstStartView* first_start_view; Popup* hw_mismatch_popup; DesktopMainView* main_view; diff --git a/applications/desktop/helpers/desktop_animation.c b/applications/desktop/helpers/desktop_animation.c index f570b171..9ded5c10 100644 --- a/applications/desktop/helpers/desktop_animation.c +++ b/applications/desktop/helpers/desktop_animation.c @@ -1,28 +1,377 @@ -#include "desktop_animation.h" +#include "desktop/helpers/desktop_animation.h" +#include "assets_icons.h" +#include "desktop_animation_i.h" +#include "cmsis_os2.h" +#include "furi/common_defines.h" +#include "furi/record.h" +#include "storage/filesystem-api-defines.h" +#include +#include +#include +#include +#include -#define TAG "DesktopAnimation" +LIST_DEF(AnimationList, const PairedAnimation*, M_PTR_OPLIST) +#define M_OPL_AnimationList_t() LIST_OPLIST(AnimationList) -static const Icon* idle_scenes[] = {&A_Wink_128x64, &A_WatchingTV_128x64}; +#define PUSH_BACK_ANIMATIONS(listname, animations, butthurt) \ + for(int i = 0; i < COUNT_OF(animations); ++i) { \ + if(!(animations)[i].basic->butthurt_level_mask || \ + ((animations)[i].basic->butthurt_level_mask & BUTTHURT_LEVEL(butthurt))) { \ + AnimationList_push_back(animation_list, &(animations)[i]); \ + } \ + } -const Icon* desktop_get_icon() { - uint8_t new = 0; +#define IS_BLOCKING_ANIMATION(x) \ + (((x) != DesktopAnimationStateBasic) && ((x) != DesktopAnimationStateActive)) +#define IS_ONESHOT_ANIMATION(x) ((x) == DesktopAnimationStateLevelUpIsPending) -#if 0 - // checking dolphin state here to choose appropriate animation +static void desktop_animation_timer_callback(void* context); + +struct DesktopAnimation { + bool sd_shown_error_db; + bool sd_shown_error_card_bad; + osTimerId_t timer; + const PairedAnimation* current; + const Icon* current_blocking_icon; + const Icon** current_one_shot_icons; + uint8_t one_shot_animation_counter; + uint8_t one_shot_animation_size; + DesktopAnimationState state; + TickType_t basic_started_at; + TickType_t active_finished_at; + AnimationChangedCallback animation_changed_callback; + void* animation_changed_callback_context; +}; + +DesktopAnimation* desktop_animation_alloc(void) { + DesktopAnimation* animation = furi_alloc(sizeof(DesktopAnimation)); + + animation->timer = osTimerNew( + desktop_animation_timer_callback, osTimerPeriodic /* osTimerOnce */, animation, NULL); + animation->active_finished_at = (TickType_t)(-30); + animation->basic_started_at = 0; + animation->animation_changed_callback = NULL; + animation->animation_changed_callback_context = NULL; + desktop_start_new_idle_animation(animation); + + return animation; +} + +void desktop_animation_free(DesktopAnimation* animation) { + furi_assert(animation); + + osTimerDelete(animation->timer); + free(animation); +} + +void desktop_animation_set_animation_changed_callback( + DesktopAnimation* animation, + AnimationChangedCallback callback, + void* context) { + furi_assert(animation); + + animation->animation_changed_callback = callback; + animation->animation_changed_callback_context = context; +} + +void desktop_start_new_idle_animation(DesktopAnimation* animation) { + Dolphin* dolphin = furi_record_open("dolphin"); + DolphinStats stats = dolphin_stats(dolphin); + furi_record_close("dolphin"); + + furi_assert((stats.level >= 1) && (stats.level <= 3)); + uint8_t level = stats.level; + + AnimationList_t animation_list; + AnimationList_init(animation_list); + + PUSH_BACK_ANIMATIONS(animation_list, mad_animation, stats.butthurt); + PUSH_BACK_ANIMATIONS(animation_list, calm_animation, stats.butthurt); + switch(level) { + case 1: + PUSH_BACK_ANIMATIONS(animation_list, level_1_animation, stats.butthurt); + break; + case 2: + PUSH_BACK_ANIMATIONS(animation_list, level_2_animation, stats.butthurt); + break; + case 3: + PUSH_BACK_ANIMATIONS(animation_list, level_3_animation, stats.butthurt); + break; + default: + furi_crash("Dolphin level is out of bounds"); + } + + Power* power = furi_record_open("power"); + PowerInfo info; + power_get_info(power, &info); + + if(!power_is_battery_well(&info)) { + PUSH_BACK_ANIMATIONS(animation_list, check_battery_animation, stats.butthurt); + } + + Storage* storage = furi_record_open("storage"); + FS_Error sd_status = storage_sd_status(storage); + animation->current = NULL; + + if(sd_status == FSE_NOT_READY) { + PUSH_BACK_ANIMATIONS(animation_list, no_sd_animation, stats.butthurt); + animation->sd_shown_error_card_bad = false; + animation->sd_shown_error_db = false; + } + + uint32_t whole_weight = 0; + for + M_EACH(item, animation_list, AnimationList_t) { + whole_weight += (*item)->basic->weight; + } + + uint32_t lucky_number = random() % whole_weight; + uint32_t weight = 0; + + const PairedAnimation* selected = NULL; + for + M_EACH(item, animation_list, AnimationList_t) { + if(lucky_number < weight) { + break; + } + weight += (*item)->basic->weight; + selected = *item; + } + animation->basic_started_at = osKernelGetTickCount(); + animation->current = selected; + osTimerStart(animation->timer, animation->current->basic->duration * 1000); + animation->state = DesktopAnimationStateBasic; + furi_assert(selected); + AnimationList_clear(animation_list); +} + +static void desktop_animation_timer_callback(void* context) { + furi_assert(context); + DesktopAnimation* animation = context; + TickType_t now_ms = osKernelGetTickCount(); + AnimationList_t animation_list; + AnimationList_init(animation_list); + bool new_basic_animation = false; + + if(animation->state == DesktopAnimationStateActive) { + animation->state = DesktopAnimationStateBasic; + TickType_t basic_lasts_ms = now_ms - animation->basic_started_at; + animation->active_finished_at = now_ms; + TickType_t basic_duration_ms = animation->current->basic->duration * 1000; + if(basic_lasts_ms > basic_duration_ms) { + // if active animation finished, and basic duration came to an end + // select new idle animation + new_basic_animation = true; + } else { + // if active animation finished, but basic duration is not finished + // play current animation for the rest of time + furi_assert(basic_duration_ms != basic_lasts_ms); + osTimerStart(animation->timer, basic_duration_ms - basic_lasts_ms); + } + } else if(animation->state == DesktopAnimationStateBasic) { + // if basic animation finished + // select new idle animation + new_basic_animation = true; + } + + if(new_basic_animation) { + animation->basic_started_at = now_ms; + desktop_start_new_idle_animation(animation); + } + + // for oneshot generate events every time + if(animation->animation_changed_callback) { + animation->animation_changed_callback(animation->animation_changed_callback_context); + } +} + +void desktop_animation_activate(DesktopAnimation* animation) { + furi_assert(animation); + + if(animation->state != DesktopAnimationStateBasic) { + return; + } + + if(animation->state == DesktopAnimationStateActive) { + return; + } + + if(!animation->current->active) { + return; + } + + TickType_t now = osKernelGetTickCount(); + TickType_t time_since_last_active = now - animation->active_finished_at; + + if(time_since_last_active > (animation->current->basic->active_cooldown * 1000)) { + animation->state = DesktopAnimationStateActive; + furi_assert(animation->current->active->duration > 0); + osTimerStart(animation->timer, animation->current->active->duration * 1000); + if(animation->animation_changed_callback) { + animation->animation_changed_callback(animation->animation_changed_callback_context); + } + } +} + +static const Icon* desktop_animation_get_current_idle_animation( + DesktopAnimation* animation, + bool* status_bar_background_black) { + const ActiveAnimation* active = animation->current->active; + const BasicAnimation* basic = animation->current->basic; + if(animation->state == DesktopAnimationStateActive && active->icon) { + *status_bar_background_black = active->black_status_bar; + return active->icon; + } else { + *status_bar_background_black = basic->black_status_bar; + return basic->icon; + } +} + +// Every time somebody starts 'desktop_animation_get_animation()' +// 1) check if there is a new level +// 2) check if there is SD card corruption +// 3) check if the SD card is empty +// 4) if all false - get idle animation + +const Icon* desktop_animation_get_animation( + DesktopAnimation* animation, + bool* status_bar_background_black) { + Dolphin* dolphin = furi_record_open("dolphin"); + Storage* storage = furi_record_open("storage"); + const Icon* icon = NULL; + furi_assert(animation); + FS_Error sd_status = storage_sd_status(storage); + + if(IS_BLOCKING_ANIMATION(animation->state)) { + // don't give new animation till blocked animation + // is reseted + icon = animation->current_blocking_icon; + } + + if(!icon) { + if(sd_status == FSE_INTERNAL) { + osTimerStop(animation->timer); + icon = &A_CardBad_128x51; + animation->current_blocking_icon = icon; + animation->state = DesktopAnimationStateSDCorrupted; + animation->sd_shown_error_card_bad = true; + animation->sd_shown_error_db = false; + } else if(sd_status == FSE_NOT_READY) { + animation->sd_shown_error_card_bad = false; + animation->sd_shown_error_db = false; + } else if(sd_status == FSE_OK) { + bool db_exists = storage_common_stat(storage, "/ext/manifest.txt", NULL) == FSE_OK; + if(db_exists && !animation->sd_shown_error_db) { + osTimerStop(animation->timer); + icon = &A_CardNoDB_128x51; + animation->current_blocking_icon = icon; + animation->state = DesktopAnimationStateSDEmpty; + animation->sd_shown_error_db = true; + } + } + } + + DolphinStats stats = dolphin_stats(dolphin); + if(!icon && stats.level_up_is_pending) { + osTimerStop(animation->timer); + icon = &A_LevelUpPending_128x51; + animation->current_blocking_icon = icon; + animation->state = DesktopAnimationStateLevelUpIsPending; + } + + if(!icon) { + icon = + desktop_animation_get_current_idle_animation(animation, status_bar_background_black); + } else { + status_bar_background_black = false; + } + + furi_record_close("storage"); + furi_record_close("dolphin"); + + return icon; +} + +DesktopAnimationState desktop_animation_handle_right(DesktopAnimation* animation) { + furi_assert(animation); + + bool reset_animation = false; + bool update_animation = false; + + switch(animation->state) { + case DesktopAnimationStateActive: + case DesktopAnimationStateBasic: + /* nothing */ + break; + case DesktopAnimationStateLevelUpIsPending: + /* do nothing, main scene should change itself */ + break; + case DesktopAnimationStateSDCorrupted: + reset_animation = true; + break; + case DesktopAnimationStateSDEmpty: + animation->state = DesktopAnimationStateSDEmptyURL; + animation->current_blocking_icon = &A_CardNoDBUrl_128x51; + update_animation = true; + break; + case DesktopAnimationStateSDEmptyURL: + reset_animation = true; + break; + default: + furi_crash("Unhandled desktop animation state"); + } + + if(reset_animation) { + desktop_start_new_idle_animation(animation); + update_animation = true; + } + + if(update_animation) { + if(animation->animation_changed_callback) { + animation->animation_changed_callback(animation->animation_changed_callback_context); + } + } + + return animation->state; +} + +#define LEVELUP_FRAME_RATE (0.2) + +void desktop_animation_start_oneshot_levelup(DesktopAnimation* animation) { + animation->one_shot_animation_counter = 0; + animation->state = DesktopAnimationStateLevelUpIsPending; Dolphin* dolphin = furi_record_open("dolphin"); DolphinStats stats = dolphin_stats(dolphin); - float timediff = fabs(difftime(stats.timestamp, dolphin_state_timestamp())); + furi_record_close("dolphin"); + furi_assert(stats.level_up_is_pending); + if(stats.level == 1) { + animation->current_one_shot_icons = animation_level2up; + animation->one_shot_animation_size = COUNT_OF(animation_level2up); + } else if(stats.level == 2) { + animation->current_one_shot_icons = animation_level3up; + animation->one_shot_animation_size = COUNT_OF(animation_level3up); + } else { + furi_crash("Dolphin level is out of bounds"); + } + osTimerStart(animation->timer, LEVELUP_FRAME_RATE * 1000); +} - FURI_LOG_I(TAG, "background change"); - FURI_LOG_I(TAG, "icounter: %d", stats.icounter); - FURI_LOG_I(TAG, "butthurt: %d", stats.butthurt); - FURI_LOG_I(TAG, "time since deeed: %.0f", timediff); -#endif +const Icon* desktop_animation_get_oneshot_frame(DesktopAnimation* animation) { + furi_assert(IS_ONESHOT_ANIMATION(animation->state)); + furi_assert(animation->one_shot_animation_size > 0); + const Icon* icon = NULL; - if((random() % 100) > 50) { // temp rnd selection - new = random() % COUNT_OF(idle_scenes); + if(animation->one_shot_animation_counter < animation->one_shot_animation_size) { + icon = animation->current_one_shot_icons[animation->one_shot_animation_counter]; + ++animation->one_shot_animation_counter; + } else { + animation->state = DesktopAnimationStateBasic; + animation->one_shot_animation_size = 0; + osTimerStop(animation->timer); + icon = NULL; } - return idle_scenes[new]; + return icon; } diff --git a/applications/desktop/helpers/desktop_animation.h b/applications/desktop/helpers/desktop_animation.h index 10ad906f..740365f8 100644 --- a/applications/desktop/helpers/desktop_animation.h +++ b/applications/desktop/helpers/desktop_animation.h @@ -1,10 +1,59 @@ #pragma once -#include -#include -#include -#include "dolphin/dolphin.h" -#include "dolphin/helpers/dolphin_state.h" -#include "time.h" +#include +#include +#include -const Icon* desktop_get_icon(); +typedef struct DesktopAnimation DesktopAnimation; + +typedef struct ActiveAnimation ActiveAnimation; +typedef struct BasicAnimation BasicAnimation; + +typedef enum { + DesktopAnimationStateBasic, + DesktopAnimationStateActive, + DesktopAnimationStateLevelUpIsPending, + DesktopAnimationStateSDEmpty, + DesktopAnimationStateSDEmptyURL, + DesktopAnimationStateSDCorrupted, +} DesktopAnimationState; + +struct BasicAnimation { + const Icon* icon; + uint16_t duration; // sec + uint16_t active_cooldown; + uint8_t weight; + bool black_status_bar; + uint16_t butthurt_level_mask; +}; + +struct ActiveAnimation { + const Icon* icon; + bool black_status_bar; + uint16_t duration; // sec +}; + +typedef struct { + const BasicAnimation* basic; + const ActiveAnimation* active; +} PairedAnimation; + +typedef void (*AnimationChangedCallback)(void*); + +DesktopAnimation* desktop_animation_alloc(void); +void desktop_animation_free(DesktopAnimation*); +void desktop_animation_activate(DesktopAnimation* instance); +void desktop_animation_set_animation_changed_callback( + DesktopAnimation* instance, + AnimationChangedCallback callback, + void* context); + +DesktopAnimationState desktop_animation_handle_right(DesktopAnimation* animation); + +void desktop_animation_start_oneshot_levelup(DesktopAnimation* animation); + +const Icon* + desktop_animation_get_animation(DesktopAnimation* animation, bool* status_bar_background_black); +const Icon* desktop_animation_get_oneshot_frame(DesktopAnimation* animation); + +void desktop_start_new_idle_animation(DesktopAnimation* animation); diff --git a/applications/desktop/helpers/desktop_animation_i.h b/applications/desktop/helpers/desktop_animation_i.h new file mode 100644 index 00000000..c89eba64 --- /dev/null +++ b/applications/desktop/helpers/desktop_animation_i.h @@ -0,0 +1,332 @@ +#include +#include +#include +#include +#include "desktop_animation.h" + +// Calm/Mad Basic Idle Animations + +#define COMMON_BASIC_DURATION (60 * 60) +#define COMMON_ACTIVE_CYCLES 7 +#define COMMON_ACTIVE_COOLDOWN 30 +#define COMMON_WEIGHT 3 + +#define BUTTHURT_LEVEL(x) (1UL << (x)) +#define BUTTHURT_LEVEL_0 0 + +// frames * cycles / frame_rate +#define COMMON_ACTIVE_DURATION(x) ((x)*COMMON_ACTIVE_CYCLES / 2) + +static const BasicAnimation animation_TV = { + .icon = &A_TV_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7)}; + +static const ActiveAnimation animation_TV_active = { + .icon = &A_TVActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_sleep = { + .icon = &A_Sleep_128x51, + .black_status_bar = true, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8) | + BUTTHURT_LEVEL(9) | BUTTHURT_LEVEL(10)}; + +static const ActiveAnimation animation_sleep_active = { + .icon = &A_SleepActive_128x51, + .black_status_bar = true, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_leaving = { + .icon = &A_Leaving_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(13) | BUTTHURT_LEVEL(14), +}; + +static const ActiveAnimation animation_leaving_active = { + .icon = &A_LeavingActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_laptop = { + .icon = &A_Laptop_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5)}; + +static const ActiveAnimation animation_laptop_active = { + .icon = &A_LaptopActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_knife = { + .icon = &A_Knife_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(5) | BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | + BUTTHURT_LEVEL(8) | BUTTHURT_LEVEL(9) | BUTTHURT_LEVEL(10) | + BUTTHURT_LEVEL(11) | BUTTHURT_LEVEL(12) | BUTTHURT_LEVEL(13)}; + +static const ActiveAnimation animation_knife_active = { + .icon = &A_KnifeActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_cry = { + .icon = &A_Cry_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8) | + BUTTHURT_LEVEL(9) | BUTTHURT_LEVEL(10) | BUTTHURT_LEVEL(11) | + BUTTHURT_LEVEL(12) | BUTTHURT_LEVEL(13)}; + +static const ActiveAnimation animation_cry_active = { + .icon = &A_CryActive_128x51, + .duration = COMMON_ACTIVE_DURATION(3), +}; + +static const BasicAnimation animation_box = { + .icon = &A_Box_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8) | BUTTHURT_LEVEL(9) | + BUTTHURT_LEVEL(10) | BUTTHURT_LEVEL(11) | BUTTHURT_LEVEL(12) | + BUTTHURT_LEVEL(13)}; + +static const ActiveAnimation animation_box_active = { + .icon = &A_BoxActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_waves = { + .icon = &A_Waves_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2)}; + +static const ActiveAnimation animation_waves_active = { + .icon = &A_WavesActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +// Level Idle Animations + +static const BasicAnimation animation_level1furippa = { + .icon = &A_Level1Furippa_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7)}; + +static const ActiveAnimation animation_level1furippa_active = { + .icon = &A_Level1FurippaActive_128x51, + .duration = COMMON_ACTIVE_DURATION(6), +}; + +static const BasicAnimation animation_level1read = { + .icon = &A_Level1Read_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2)}; + +static const ActiveAnimation animation_level1read_active = { + .icon = &A_Level1ReadActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_level1toys = { + .icon = &A_Level1Toys_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8)}; + +static const ActiveAnimation animation_level1toys_active = { + .icon = &A_Level1ToysActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_level2furippa = { + .icon = &A_Level2Furippa_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7)}; + +static const ActiveAnimation animation_level2furippa_active = { + .icon = &A_Level2FurippaActive_128x51, + .duration = COMMON_ACTIVE_DURATION(6), +}; + +static const BasicAnimation animation_level2soldering = { + .icon = &A_Level2Soldering_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8) | + BUTTHURT_LEVEL(9)}; + +static const ActiveAnimation animation_level2soldering_active = { + .icon = &A_Level2SolderingActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_level2hack = { + .icon = &A_Level2Hack_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8)}; + +static const ActiveAnimation animation_level2hack_active = { + .icon = &A_Level2HackActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_level3furippa = { + .icon = &A_Level3Furippa_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7)}; + +static const ActiveAnimation animation_level3furippa_active = { + .icon = &A_Level3FurippaActive_128x51, + .duration = COMMON_ACTIVE_DURATION(6), +}; + +static const BasicAnimation animation_level3hijack = { + .icon = &A_Level3Hijack_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8) | + BUTTHURT_LEVEL(9)}; + +static const ActiveAnimation animation_level3hijack_active = { + .icon = &A_Level3HijackActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +static const BasicAnimation animation_level3lab = { + .icon = &A_Level3Lab_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = COMMON_WEIGHT, + .active_cooldown = COMMON_ACTIVE_COOLDOWN, + .butthurt_level_mask = BUTTHURT_LEVEL(0) | BUTTHURT_LEVEL(1) | BUTTHURT_LEVEL(2) | + BUTTHURT_LEVEL(3) | BUTTHURT_LEVEL(4) | BUTTHURT_LEVEL(5) | + BUTTHURT_LEVEL(6) | BUTTHURT_LEVEL(7) | BUTTHURT_LEVEL(8)}; + +static const ActiveAnimation animation_level3lab_active = { + .icon = &A_Level3LabActive_128x51, + .duration = COMMON_ACTIVE_DURATION(2), +}; + +// System Idle Animations + +static const BasicAnimation animation_bad_battery = { + .icon = &A_BadBattery_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = 7, +}; + +static const BasicAnimation animation_no_sd_card = { + .icon = &A_NoSdCard_128x51, + .duration = COMMON_BASIC_DURATION, + .weight = 7, +}; + +const Icon* animation_level2up[] = { + &I_LevelUp2_01, + &I_LevelUp2_02, + &I_LevelUp2_03, + &I_LevelUp2_04, + &I_LevelUp2_05, + &I_LevelUp2_06, + &I_LevelUp2_07}; + +const Icon* animation_level3up[] = { + &I_LevelUp3_01, + &I_LevelUp3_02, + &I_LevelUp3_03, + &I_LevelUp3_04, + &I_LevelUp3_05, + &I_LevelUp3_06, + &I_LevelUp3_07}; + +// Blocking Idle Animations & One shot Animations represented as naked Icon + +static const PairedAnimation calm_animation[] = { + {.basic = &animation_TV, .active = &animation_TV_active}, + {.basic = &animation_waves, .active = &animation_waves_active}, + {.basic = &animation_sleep, .active = &animation_sleep_active}, + {.basic = &animation_laptop, .active = &animation_laptop_active}, +}; + +static const PairedAnimation mad_animation[] = { + {.basic = &animation_cry, .active = &animation_cry_active}, + {.basic = &animation_knife, .active = &animation_knife_active}, + {.basic = &animation_box, .active = &animation_box_active}, + {.basic = &animation_leaving, .active = &animation_leaving_active}, +}; + +static const PairedAnimation level_1_animation[] = { + {.basic = &animation_level1furippa, .active = &animation_level1furippa_active}, + {.basic = &animation_level1read, .active = &animation_level1read_active}, + {.basic = &animation_level1toys, .active = &animation_level1toys_active}, +}; + +static const PairedAnimation level_2_animation[] = { + {.basic = &animation_level2furippa, .active = &animation_level2furippa_active}, + {.basic = &animation_level2soldering, .active = &animation_level2soldering_active}, + {.basic = &animation_level2hack, .active = &animation_level2hack_active}, +}; + +static const PairedAnimation level_3_animation[] = { + {.basic = &animation_level3furippa, .active = &animation_level3furippa_active}, + {.basic = &animation_level3hijack, .active = &animation_level3hijack_active}, + {.basic = &animation_level3lab, .active = &animation_level3lab_active}, +}; + +static const PairedAnimation no_sd_animation[] = { + {.basic = &animation_no_sd_card, .active = NULL}, +}; + +static const PairedAnimation check_battery_animation[] = { + {.basic = &animation_bad_battery, .active = NULL}, +}; diff --git a/applications/desktop/scenes/desktop_scene_config.h b/applications/desktop/scenes/desktop_scene_config.h index e84db67d..3c325a83 100644 --- a/applications/desktop/scenes/desktop_scene_config.h +++ b/applications/desktop/scenes/desktop_scene_config.h @@ -5,3 +5,4 @@ ADD_SCENE(desktop, debug, Debug) ADD_SCENE(desktop, first_start, FirstStart) ADD_SCENE(desktop, hw_mismatch, HwMismatch) ADD_SCENE(desktop, pinsetup, PinSetup) +ADD_SCENE(desktop, levelup, LevelUp) diff --git a/applications/desktop/scenes/desktop_scene_debug.c b/applications/desktop/scenes/desktop_scene_debug.c index a1ac208c..9e347be2 100644 --- a/applications/desktop/scenes/desktop_scene_debug.c +++ b/applications/desktop/scenes/desktop_scene_debug.c @@ -59,4 +59,5 @@ bool desktop_scene_debug_on_event(void* context, SceneManagerEvent event) { void desktop_scene_debug_on_exit(void* context) { Desktop* desktop = (Desktop*)context; desktop_debug_reset_screen_idx(desktop->debug_view); + desktop_start_new_idle_animation(desktop->animation); } diff --git a/applications/desktop/scenes/desktop_scene_hw_mismatch.c b/applications/desktop/scenes/desktop_scene_hw_mismatch.c index 16f989a1..7a83d3a8 100644 --- a/applications/desktop/scenes/desktop_scene_hw_mismatch.c +++ b/applications/desktop/scenes/desktop_scene_hw_mismatch.c @@ -19,8 +19,9 @@ void desktop_scene_hw_mismatch_on_enter(void* context) { furi_hal_version_get_hw_target(), version_get_target(NULL)); popup_set_context(popup, desktop); - popup_set_header(popup, "!!!! HW Mismatch !!!!", 60, 14, AlignCenter, AlignCenter); - popup_set_text(popup, buffer, 60, 37, AlignCenter, AlignCenter); + popup_set_header( + popup, "!!!! HW Mismatch !!!!", 60, 14 + STATUS_BAR_Y_SHIFT, AlignCenter, AlignCenter); + popup_set_text(popup, buffer, 60, 37 + STATUS_BAR_Y_SHIFT, AlignCenter, AlignCenter); popup_set_callback(popup, desktop_scene_hw_mismatch_callback); view_dispatcher_switch_to_view(desktop->view_dispatcher, DesktopViewHwMismatch); } diff --git a/applications/desktop/scenes/desktop_scene_levelup.c b/applications/desktop/scenes/desktop_scene_levelup.c new file mode 100644 index 00000000..12a1efef --- /dev/null +++ b/applications/desktop/scenes/desktop_scene_levelup.c @@ -0,0 +1,79 @@ +#include "../desktop_i.h" +#include "../views/desktop_main.h" +#include "applications.h" +#include "assets_icons.h" +#include "desktop/desktop.h" +#include "desktop/helpers/desktop_animation.h" +#include "dolphin/dolphin.h" +#include "furi/pubsub.h" +#include "furi/record.h" +#include "storage/storage-glue.h" +#include +#include + +#define LEVELUP_SCENE_PLAYING 0 +#define LEVELUP_SCENE_STOPPED 1 + +static void desktop_scene_levelup_callback(DesktopMainEvent event, void* context) { + Desktop* desktop = (Desktop*)context; + view_dispatcher_send_custom_event(desktop->view_dispatcher, event); +} + +static void desktop_scene_levelup_animation_changed_callback(void* context) { + furi_assert(context); + Desktop* desktop = context; + view_dispatcher_send_custom_event( + desktop->view_dispatcher, DesktopMainEventUpdateOneShotAnimation); +} + +void desktop_scene_levelup_on_enter(void* context) { + Desktop* desktop = (Desktop*)context; + DesktopMainView* main_view = desktop->main_view; + + desktop_main_set_callback(main_view, desktop_scene_levelup_callback, desktop); + desktop_animation_set_animation_changed_callback( + desktop->animation, desktop_scene_levelup_animation_changed_callback, desktop); + + desktop_animation_start_oneshot_levelup(desktop->animation); + const Icon* icon = desktop_animation_get_oneshot_frame(desktop->animation); + desktop_main_switch_dolphin_icon(desktop->main_view, icon); + view_dispatcher_switch_to_view(desktop->view_dispatcher, DesktopViewMain); + scene_manager_set_scene_state( + desktop->scene_manager, DesktopSceneLevelUp, LEVELUP_SCENE_PLAYING); +} + +bool desktop_scene_levelup_on_event(void* context, SceneManagerEvent event) { + Desktop* desktop = (Desktop*)context; + bool consumed = false; + DesktopMainEvent main_event = event.event; + + if(event.type == SceneManagerEventTypeCustom) { + if(main_event == DesktopMainEventUpdateOneShotAnimation) { + const Icon* icon = desktop_animation_get_oneshot_frame(desktop->animation); + if(icon) { + desktop_main_switch_dolphin_icon(desktop->main_view, icon); + } else { + scene_manager_set_scene_state( + desktop->scene_manager, DesktopSceneLevelUp, LEVELUP_SCENE_STOPPED); + } + consumed = true; + } else { + if(scene_manager_get_scene_state(desktop->scene_manager, DesktopSceneLevelUp) == + LEVELUP_SCENE_STOPPED) { + scene_manager_previous_scene(desktop->scene_manager); + } + } + } + + return consumed; +} + +void desktop_scene_levelup_on_exit(void* context) { + Desktop* desktop = (Desktop*)context; + + Dolphin* dolphin = furi_record_open("dolphin"); + dolphin_upgrade_level(dolphin); + furi_record_close("dolphin"); + desktop_animation_set_animation_changed_callback(desktop->animation, NULL, NULL); + desktop_start_new_idle_animation(desktop->animation); +} diff --git a/applications/desktop/scenes/desktop_scene_locked.c b/applications/desktop/scenes/desktop_scene_locked.c index b8111ed7..78000acf 100644 --- a/applications/desktop/scenes/desktop_scene_locked.c +++ b/applications/desktop/scenes/desktop_scene_locked.c @@ -1,5 +1,7 @@ #include "../desktop_i.h" #include "../views/desktop_locked.h" +#include "desktop/helpers/desktop_animation.h" +#include "desktop/views/desktop_main.h" #include void desktop_scene_locked_callback(DesktopLockedEvent event, void* context) { @@ -7,6 +9,12 @@ void desktop_scene_locked_callback(DesktopLockedEvent event, void* context) { view_dispatcher_send_custom_event(desktop->view_dispatcher, event); } +static void desktop_scene_locked_animation_changed_callback(void* context) { + furi_assert(context); + Desktop* desktop = context; + view_dispatcher_send_custom_event(desktop->view_dispatcher, DesktopMainEventUpdateAnimation); +} + void desktop_scene_locked_on_enter(void* context) { Desktop* desktop = (Desktop*)context; DesktopLockedView* locked_view = desktop->locked_view; @@ -14,14 +22,20 @@ void desktop_scene_locked_on_enter(void* context) { desktop_locked_set_callback(locked_view, desktop_scene_locked_callback, desktop); desktop_locked_reset_door_pos(locked_view); desktop_locked_update_hint_timeout(locked_view); - desktop_locked_set_dolphin_animation(locked_view); + + desktop_animation_set_animation_changed_callback( + desktop->animation, desktop_scene_locked_animation_changed_callback, desktop); + bool status_bar_background_black = false; + const Icon* icon = + desktop_animation_get_animation(desktop->animation, &status_bar_background_black); + desktop_locked_set_dolphin_animation(locked_view, icon, status_bar_background_black); uint32_t state = scene_manager_get_scene_state(desktop->scene_manager, DesktopViewLocked); desktop_locked_with_pin(desktop->locked_view, state == DesktopLockedWithPin); view_port_enabled_set(desktop->lock_viewport, true); - osTimerStart(locked_view->timer, 63); + osTimerStart(locked_view->timer, osKernelGetTickFreq() / 16); view_dispatcher_switch_to_view(desktop->view_dispatcher, DesktopViewLocked); } @@ -68,6 +82,15 @@ bool desktop_scene_locked_on_event(void* context, SceneManagerEvent event) { case DesktopLockedEventInputReset: desktop->pincode_buffer.length = 0; break; + case DesktopMainEventUpdateAnimation: { + bool status_bar_background_black = false; + const Icon* icon = + desktop_animation_get_animation(desktop->animation, &status_bar_background_black); + desktop_locked_set_dolphin_animation( + desktop->locked_view, icon, status_bar_background_black); + consumed = true; + break; + } default: if(desktop_scene_locked_check_pin(desktop, event.event)) { scene_manager_set_scene_state( @@ -84,6 +107,7 @@ bool desktop_scene_locked_on_event(void* context, SceneManagerEvent event) { void desktop_scene_locked_on_exit(void* context) { Desktop* desktop = (Desktop*)context; + desktop_animation_set_animation_changed_callback(desktop->animation, NULL, NULL); desktop_locked_reset_counter(desktop->locked_view); osTimerStop(desktop->locked_view->timer); } diff --git a/applications/desktop/scenes/desktop_scene_main.c b/applications/desktop/scenes/desktop_scene_main.c index 36c8bdee..fb77e22c 100644 --- a/applications/desktop/scenes/desktop_scene_main.c +++ b/applications/desktop/scenes/desktop_scene_main.c @@ -1,7 +1,13 @@ #include "../desktop_i.h" #include "../views/desktop_main.h" #include "applications.h" +#include "assets_icons.h" +#include "dolphin/dolphin.h" +#include "furi/pubsub.h" +#include "furi/record.h" +#include "storage/storage-glue.h" #include +#include #define MAIN_VIEW_DEFAULT (0UL) static void desktop_switch_to_app(Desktop* desktop, const FlipperApplication* flipper_app) { @@ -27,6 +33,12 @@ void desktop_scene_main_callback(DesktopMainEvent event, void* context) { view_dispatcher_send_custom_event(desktop->view_dispatcher, event); } +static void desktop_scene_main_animation_changed_callback(void* context) { + furi_assert(context); + Desktop* desktop = context; + view_dispatcher_send_custom_event(desktop->view_dispatcher, DesktopMainEventUpdateAnimation); +} + void desktop_scene_main_on_enter(void* context) { Desktop* desktop = (Desktop*)context; DesktopMainView* main_view = desktop->main_view; @@ -39,7 +51,13 @@ void desktop_scene_main_on_enter(void* context) { desktop_main_unlocked(desktop->main_view); } - desktop_main_switch_dolphin_animation(desktop->main_view); + desktop_animation_activate(desktop->animation); + desktop_animation_set_animation_changed_callback( + desktop->animation, desktop_scene_main_animation_changed_callback, desktop); + bool status_bar_background_black = false; + const Icon* icon = + desktop_animation_get_animation(desktop->animation, &status_bar_background_black); + desktop_main_switch_dolphin_animation(desktop->main_view, icon, status_bar_background_black); view_dispatcher_switch_to_view(desktop->view_dispatcher, DesktopViewMain); } @@ -75,9 +93,33 @@ bool desktop_scene_main_on_event(void* context, SceneManagerEvent event) { consumed = true; break; + case DesktopMainEventUpdateAnimation: { + bool status_bar_background_black = false; + const Icon* icon = + desktop_animation_get_animation(desktop->animation, &status_bar_background_black); + desktop_main_switch_dolphin_animation( + desktop->main_view, icon, status_bar_background_black); + consumed = true; + break; + } + + case DesktopMainEventRightShort: { + DesktopAnimationState state = desktop_animation_handle_right(desktop->animation); + if(state == DesktopAnimationStateLevelUpIsPending) { + scene_manager_next_scene(desktop->scene_manager, DesktopSceneLevelUp); + } + break; + } + default: break; } + + if(event.event != DesktopMainEventUpdateAnimation) { + desktop_animation_activate(desktop->animation); + } + } else if(event.type != SceneManagerEventTypeTick) { + desktop_animation_activate(desktop->animation); } return consumed; @@ -85,6 +127,8 @@ bool desktop_scene_main_on_event(void* context, SceneManagerEvent event) { void desktop_scene_main_on_exit(void* context) { Desktop* desktop = (Desktop*)context; + + desktop_animation_set_animation_changed_callback(desktop->animation, NULL, NULL); scene_manager_set_scene_state(desktop->scene_manager, DesktopSceneMain, MAIN_VIEW_DEFAULT); desktop_main_reset_hint(desktop->main_view); } diff --git a/applications/desktop/views/desktop_debug.c b/applications/desktop/views/desktop_debug.c index ae5f1f8d..7ccfcd0c 100644 --- a/applications/desktop/views/desktop_debug.c +++ b/applications/desktop/views/desktop_debug.c @@ -25,7 +25,7 @@ void desktop_debug_render(Canvas* canvas, void* model) { canvas_set_color(canvas, ColorBlack); canvas_set_font(canvas, FontPrimary); - canvas_draw_str(canvas, 2, 13, headers[m->screen]); + canvas_draw_str(canvas, 2, 9 + STATUS_BAR_Y_SHIFT, headers[m->screen]); canvas_set_font(canvas, FontSecondary); if(m->screen != DesktopViewStatsMeta) { @@ -40,13 +40,13 @@ void desktop_debug_render(Canvas* canvas, void* model) { furi_hal_version_get_hw_body(), furi_hal_version_get_hw_connect(), my_name ? my_name : "Unknown"); - canvas_draw_str(canvas, 5, 23, buffer); + canvas_draw_str(canvas, 5, 19 + STATUS_BAR_Y_SHIFT, buffer); ver = m->screen == DesktopViewStatsBoot ? furi_hal_version_get_bootloader_version() : furi_hal_version_get_firmware_version(); if(!ver) { - canvas_draw_str(canvas, 5, 33, "No info"); + canvas_draw_str(canvas, 5, 29 + STATUS_BAR_Y_SHIFT, "No info"); return; } @@ -56,7 +56,7 @@ void desktop_debug_render(Canvas* canvas, void* model) { "%s [%s]", version_get_version(ver), version_get_builddate(ver)); - canvas_draw_str(canvas, 5, 32, buffer); + canvas_draw_str(canvas, 5, 28 + STATUS_BAR_Y_SHIFT, buffer); snprintf( buffer, @@ -64,27 +64,36 @@ void desktop_debug_render(Canvas* canvas, void* model) { "%s [%s]", version_get_githash(ver), version_get_gitbranchnum(ver)); - canvas_draw_str(canvas, 5, 43, buffer); + canvas_draw_str(canvas, 5, 39 + STATUS_BAR_Y_SHIFT, buffer); snprintf( buffer, sizeof(buffer), "[%d] %s", version_get_target(ver), version_get_gitbranch(ver)); - canvas_draw_str(canvas, 5, 54, buffer); + canvas_draw_str(canvas, 5, 50 + STATUS_BAR_Y_SHIFT, buffer); } else { char buffer[64]; - uint32_t current_lvl = dolphin_state_get_level(m->icounter); - uint32_t remaining = dolphin_state_xp_to_levelup(m->icounter, current_lvl, true); + Dolphin* dolphin = furi_record_open("dolphin"); + DolphinStats stats = dolphin_stats(dolphin); + furi_record_close("dolphin"); + + uint32_t current_lvl = stats.level; + uint32_t remaining = dolphin_state_xp_to_levelup(m->icounter); canvas_set_font(canvas, FontSecondary); snprintf(buffer, 64, "Icounter: %ld Butthurt %ld", m->icounter, m->butthurt); - canvas_draw_str(canvas, 5, 23, buffer); + canvas_draw_str(canvas, 5, 19 + STATUS_BAR_Y_SHIFT, buffer); - snprintf(buffer, 64, "Level: %ld To level up: %ld", current_lvl, remaining); - canvas_draw_str(canvas, 5, 33, buffer); + snprintf( + buffer, + 64, + "Level: %ld To level up: %ld", + current_lvl, + (remaining == (uint32_t)(-1) ? remaining : 0)); + canvas_draw_str(canvas, 5, 29 + STATUS_BAR_Y_SHIFT, buffer); snprintf(buffer, 64, "%s", asctime(localtime((const time_t*)&m->timestamp))); - canvas_draw_str(canvas, 5, 43, buffer); - canvas_draw_str(canvas, 0, 53, "[< >] icounter value [ok] save"); + canvas_draw_str(canvas, 5, 39 + STATUS_BAR_Y_SHIFT, buffer); + canvas_draw_str(canvas, 0, 49 + STATUS_BAR_Y_SHIFT, "[< >] icounter value [ok] save"); } } diff --git a/applications/desktop/views/desktop_first_start.c b/applications/desktop/views/desktop_first_start.c index a1ad2957..21901c95 100644 --- a/applications/desktop/views/desktop_first_start.c +++ b/applications/desktop/views/desktop_first_start.c @@ -26,20 +26,25 @@ static void desktop_first_start_draw(Canvas* canvas, void* model) { uint8_t height = canvas_height(canvas); const char* my_name = furi_hal_version_get_name_ptr(); if(m->page == 0) { - canvas_draw_icon(canvas, 0, height - 48, &I_DolphinFirstStart0_70x53); - elements_multiline_text_framed(canvas, 75, 20, "Hey m8,\npress > to\ncontinue"); + canvas_draw_icon(canvas, 0, height - 51, &I_DolphinFirstStart0_70x53); + elements_multiline_text_framed( + canvas, 75, 16 + STATUS_BAR_Y_SHIFT, "Hey m8,\npress > to\ncontinue"); } else if(m->page == 1) { - canvas_draw_icon(canvas, 0, height - 48, &I_DolphinFirstStart1_59x53); - elements_multiline_text_framed(canvas, 64, 20, "First Of All,\n... >"); + canvas_draw_icon(canvas, 0, height - 51, &I_DolphinFirstStart1_59x53); + elements_multiline_text_framed( + canvas, 64, 16 + STATUS_BAR_Y_SHIFT, "First Of All,\n... >"); } else if(m->page == 2) { - canvas_draw_icon(canvas, 0, height - 48, &I_DolphinFirstStart2_59x51); - elements_multiline_text_framed(canvas, 64, 20, "Thank you\nfor your\nsupport! >"); + canvas_draw_icon(canvas, 0, height - 51, &I_DolphinFirstStart2_59x51); + elements_multiline_text_framed( + canvas, 64, 16 + STATUS_BAR_Y_SHIFT, "Thank you\nfor your\nsupport! >"); } else if(m->page == 3) { - canvas_draw_icon(canvas, width - 57, height - 48, &I_DolphinFirstStart3_57x48); - elements_multiline_text_framed(canvas, 0, 20, "Kickstarter\ncampaign\nwas INSANE! >"); + canvas_draw_icon(canvas, width - 57, height - 45, &I_DolphinFirstStart3_57x48); + elements_multiline_text_framed( + canvas, 0, 16 + STATUS_BAR_Y_SHIFT, "Kickstarter\ncampaign\nwas INSANE! >"); } else if(m->page == 4) { - canvas_draw_icon(canvas, width - 67, height - 50, &I_DolphinFirstStart4_67x53); - elements_multiline_text_framed(canvas, 0, 17, "Now\nallow me\nto introduce\nmyself >"); + canvas_draw_icon(canvas, width - 67, height - 51, &I_DolphinFirstStart4_67x53); + elements_multiline_text_framed( + canvas, 0, 13 + STATUS_BAR_Y_SHIFT, "Now\nallow me\nto introduce\nmyself >"); } else if(m->page == 5) { char buf[64]; snprintf( @@ -49,20 +54,26 @@ static void desktop_first_start_draw(Canvas* canvas, void* model) { "I am", my_name ? my_name : "Unknown", ",\ncyberdolphin\nliving in your\npocket >"); - canvas_draw_icon(canvas, 0, height - 48, &I_DolphinFirstStart5_54x49); - elements_multiline_text_framed(canvas, 60, 17, buf); + canvas_draw_icon(canvas, 0, height - 49, &I_DolphinFirstStart5_54x49); + elements_multiline_text_framed(canvas, 60, 13 + STATUS_BAR_Y_SHIFT, buf); } else if(m->page == 6) { - canvas_draw_icon(canvas, 0, height - 48, &I_DolphinFirstStart6_58x54); + canvas_draw_icon(canvas, 0, height - 51, &I_DolphinFirstStart6_58x54); elements_multiline_text_framed( - canvas, 63, 17, "I can grow\nsmart'n'cool\nif you use me\noften >"); + canvas, + 63, + 13 + STATUS_BAR_Y_SHIFT, + "I can grow\nsmart'n'cool\nif you use me\noften >"); } else if(m->page == 7) { - canvas_draw_icon(canvas, width - 61, height - 48, &I_DolphinFirstStart7_61x51); + canvas_draw_icon(canvas, width - 61, height - 51, &I_DolphinFirstStart7_61x51); elements_multiline_text_framed( - canvas, 0, 17, "As long as\nyou read, write\nand emulate >"); + canvas, 0, 13 + STATUS_BAR_Y_SHIFT, "As long as\nyou read, write\nand emulate >"); } else if(m->page == 8) { - canvas_draw_icon(canvas, width - 56, height - 48, &I_DolphinFirstStart8_56x51); + canvas_draw_icon(canvas, width - 56, height - 51, &I_DolphinFirstStart8_56x51); elements_multiline_text_framed( - canvas, 0, 17, "You can check\nmy level and\nmood in the\nPassport menu"); + canvas, + 0, + 13 + STATUS_BAR_Y_SHIFT, + "You can check\nmy level and\nmood in the\nPassport menu"); } } diff --git a/applications/desktop/views/desktop_lock_menu.c b/applications/desktop/views/desktop_lock_menu.c index 52a8df56..a9794417 100644 --- a/applications/desktop/views/desktop_lock_menu.c +++ b/applications/desktop/views/desktop_lock_menu.c @@ -54,8 +54,8 @@ void desktop_lock_menu_render(Canvas* canvas, void* model) { DesktopLockMenuViewModel* m = model; canvas_clear(canvas); canvas_set_color(canvas, ColorBlack); - canvas_draw_icon(canvas, -57, 0, &I_DoorLeft_70x55); - canvas_draw_icon(canvas, 115, 0, &I_DoorRight_70x55); + canvas_draw_icon(canvas, -57, 0 + STATUS_BAR_Y_SHIFT, &I_DoorLeft_70x55); + canvas_draw_icon(canvas, 116, 0 + STATUS_BAR_Y_SHIFT, &I_DoorRight_70x55); canvas_set_font(canvas, FontSecondary); for(uint8_t i = 0; i < 3; ++i) { @@ -64,9 +64,10 @@ void desktop_lock_menu_render(Canvas* canvas, void* model) { if(i == 1 && !m->pin_set) str = "Set PIN"; if(m->hint_timeout && m->idx == 2 && m->idx == i) str = "Not implemented"; - canvas_draw_str_aligned(canvas, 64, 13 + (i * 17), AlignCenter, AlignCenter, str); + canvas_draw_str_aligned( + canvas, 64, 9 + (i * 17) + STATUS_BAR_Y_SHIFT, AlignCenter, AlignCenter, str); - if(m->idx == i) elements_frame(canvas, 15, 5 + (i * 17), 98, 15); + if(m->idx == i) elements_frame(canvas, 15, 1 + (i * 17) + STATUS_BAR_Y_SHIFT, 98, 15); } } diff --git a/applications/desktop/views/desktop_locked.c b/applications/desktop/views/desktop_locked.c index f4373dfb..a4557531 100644 --- a/applications/desktop/views/desktop_locked.c +++ b/applications/desktop/views/desktop_locked.c @@ -17,13 +17,17 @@ void locked_view_timer_callback(void* context) { locked_view->callback(DesktopLockedEventUpdate, locked_view->context); } -// temporary locked screen animation managment -void desktop_locked_set_dolphin_animation(DesktopLockedView* locked_view) { +void desktop_locked_set_dolphin_animation( + DesktopLockedView* locked_view, + const Icon* icon, + bool status_bar_background_black) { with_view_model( locked_view->view, (DesktopLockedViewModel * model) { if(model->animation) icon_animation_free(model->animation); - model->animation = icon_animation_alloc(desktop_get_icon()); + model->animation = icon_animation_alloc(icon); view_tie_icon_animation(locked_view->view, model->animation); + icon_animation_start(model->animation); + model->status_bar_background_black = status_bar_background_black; return true; }); } @@ -95,23 +99,26 @@ void desktop_locked_render(Canvas* canvas, void* model) { canvas_set_color(canvas, ColorBlack); if(!m->animation_seq_end) { - canvas_draw_icon(canvas, m->door_left_x, 0, &I_DoorLeft_70x55); - canvas_draw_icon(canvas, m->door_right_x, 0, &I_DoorRight_70x55); + canvas_draw_icon(canvas, m->door_left_x, 0 + STATUS_BAR_Y_SHIFT, &I_DoorLeft_70x55); + canvas_draw_icon(canvas, m->door_right_x, 0 + STATUS_BAR_Y_SHIFT, &I_DoorRight_70x55); } if(m->animation && m->animation_seq_end) { - canvas_draw_icon_animation(canvas, 0, -3, m->animation); + if(m->status_bar_background_black) { + canvas_draw_box(canvas, 0, 0, GUI_STATUS_BAR_WIDTH, GUI_STATUS_BAR_HEIGHT); + } + canvas_draw_icon_animation(canvas, 0, 0 + STATUS_BAR_Y_SHIFT, m->animation); } if(now < m->hint_expire_at) { if(!m->animation_seq_end) { canvas_set_font(canvas, FontPrimary); - elements_multiline_text_framed(canvas, 42, 30, "Locked"); + elements_multiline_text_framed(canvas, 42, 30 + STATUS_BAR_Y_SHIFT, "Locked"); } else if(!m->pin_lock) { canvas_set_font(canvas, FontSecondary); - canvas_draw_icon(canvas, 13, 5, &I_LockPopup_100x49); - elements_multiline_text(canvas, 65, 20, "To unlock\npress:"); + canvas_draw_icon(canvas, 13, 2 + STATUS_BAR_Y_SHIFT, &I_LockPopup_100x49); + elements_multiline_text(canvas, 65, 20 + STATUS_BAR_Y_SHIFT, "To unlock\npress:"); } } } diff --git a/applications/desktop/views/desktop_locked.h b/applications/desktop/views/desktop_locked.h index f7d635b3..de9b4dcd 100644 --- a/applications/desktop/views/desktop_locked.h +++ b/applications/desktop/views/desktop_locked.h @@ -43,6 +43,7 @@ typedef struct { IconAnimation* animation; uint32_t hint_expire_at; + bool status_bar_background_black; uint8_t scene_num; int8_t door_left_x; int8_t door_right_x; @@ -56,7 +57,10 @@ void desktop_locked_set_callback( DesktopLockedViewCallback callback, void* context); -void desktop_locked_set_dolphin_animation(DesktopLockedView* locked_view); +void desktop_locked_set_dolphin_animation( + DesktopLockedView* locked_view, + const Icon* icon, + bool status_bar_background_black); void desktop_locked_update_hint_timeout(DesktopLockedView* locked_view); void desktop_locked_reset_counter(DesktopLockedView* locked_view); void desktop_locked_reset_door_pos(DesktopLockedView* locked_view); @@ -65,4 +69,4 @@ void desktop_locked_manage_redraw(DesktopLockedView* locked_view); View* desktop_locked_get_view(DesktopLockedView* locked_view); DesktopLockedView* desktop_locked_alloc(); void desktop_locked_free(DesktopLockedView* locked_view); -void desktop_locked_with_pin(DesktopLockedView* lock_menu, bool locked); \ No newline at end of file +void desktop_locked_with_pin(DesktopLockedView* lock_menu, bool locked); diff --git a/applications/desktop/views/desktop_main.c b/applications/desktop/views/desktop_main.c index 00a606e8..fdd9e5b5 100644 --- a/applications/desktop/views/desktop_main.c +++ b/applications/desktop/views/desktop_main.c @@ -1,3 +1,5 @@ +#include "gui/canvas.h" +#include "input/input.h" #include #include "../desktop_i.h" #include "desktop_main.h" @@ -20,12 +22,28 @@ void desktop_main_reset_hint(DesktopMainView* main_view) { }); } -void desktop_main_switch_dolphin_animation(DesktopMainView* main_view) { +void desktop_main_switch_dolphin_animation( + DesktopMainView* main_view, + const Icon* icon, + bool status_bar_background_black) { with_view_model( main_view->view, (DesktopMainViewModel * model) { if(model->animation) icon_animation_free(model->animation); - model->animation = icon_animation_alloc(desktop_get_icon()); + model->animation = icon_animation_alloc(icon); view_tie_icon_animation(main_view->view, model->animation); + icon_animation_start(model->animation); + model->icon = NULL; + model->status_bar_background_black = status_bar_background_black; + return true; + }); +} + +void desktop_main_switch_dolphin_icon(DesktopMainView* main_view, const Icon* icon) { + with_view_model( + main_view->view, (DesktopMainViewModel * model) { + if(model->animation) icon_animation_free(model->animation); + model->animation = NULL; + model->icon = icon; return true; }); } @@ -35,13 +53,18 @@ void desktop_main_render(Canvas* canvas, void* model) { DesktopMainViewModel* m = model; uint32_t now = osKernelGetTickCount(); - if(m->animation) { - canvas_draw_icon_animation(canvas, 0, -3, m->animation); + if(m->status_bar_background_black) { + canvas_draw_box(canvas, 0, 0, GUI_STATUS_BAR_WIDTH, GUI_STATUS_BAR_HEIGHT); + } + if(m->icon) { + canvas_draw_icon(canvas, 0, 0 + STATUS_BAR_Y_SHIFT, m->icon); + } else if(m->animation) { + canvas_draw_icon_animation(canvas, 0, 0 + STATUS_BAR_Y_SHIFT, m->animation); } if(now < m->hint_expire_at) { canvas_set_font(canvas, FontPrimary); - elements_multiline_text_framed(canvas, 42, 30, "Unlocked"); + elements_multiline_text_framed(canvas, 42, 30 + STATUS_BAR_Y_SHIFT, "Unlocked"); } } @@ -66,6 +89,8 @@ bool desktop_main_input(InputEvent* event, void* context) { main_view->callback(DesktopMainEventOpenArchive, main_view->context); } else if(event->key == InputKeyLeft && event->type == InputTypeShort) { main_view->callback(DesktopMainEventOpenFavorite, main_view->context); + } else if(event->key == InputKeyRight && event->type == InputTypeShort) { + main_view->callback(DesktopMainEventRightShort, main_view->context); } desktop_main_reset_hint(main_view); diff --git a/applications/desktop/views/desktop_main.h b/applications/desktop/views/desktop_main.h index 1b631f6f..2ee33d5b 100644 --- a/applications/desktop/views/desktop_main.h +++ b/applications/desktop/views/desktop_main.h @@ -13,6 +13,9 @@ typedef enum { DesktopMainEventOpenMenu, DesktopMainEventOpenDebug, DesktopMainEventUnlocked, + DesktopMainEventRightShort, + DesktopMainEventUpdateAnimation, + DesktopMainEventUpdateOneShotAnimation, } DesktopMainEvent; typedef struct DesktopMainView DesktopMainView; @@ -27,7 +30,9 @@ struct DesktopMainView { typedef struct { IconAnimation* animation; + const Icon* icon; uint8_t scene_num; + bool status_bar_background_black; uint32_t hint_expire_at; } DesktopMainViewModel; @@ -39,6 +44,10 @@ void desktop_main_set_callback( View* desktop_main_get_view(DesktopMainView* main_view); DesktopMainView* desktop_main_alloc(); void desktop_main_free(DesktopMainView* main_view); -void desktop_main_switch_dolphin_animation(DesktopMainView* main_view); +void desktop_main_switch_dolphin_animation( + DesktopMainView* main_view, + const Icon* icon, + bool status_bar_background_black); void desktop_main_unlocked(DesktopMainView* main_view); void desktop_main_reset_hint(DesktopMainView* main_view); +void desktop_main_switch_dolphin_icon(DesktopMainView* main_view, const Icon* icon); diff --git a/applications/dolphin/dolphin.c b/applications/dolphin/dolphin.c index 09bdb982..9f9fe508 100644 --- a/applications/dolphin/dolphin.c +++ b/applications/dolphin/dolphin.c @@ -1,4 +1,9 @@ +#include "dolphin/dolphin.h" +#include "desktop/desktop.h" +#include "dolphin/helpers/dolphin_state.h" #include "dolphin_i.h" +#include "furi/pubsub.h" +#include "sys/_stdint.h" #include #define DOLPHIN_TIMEGATE 86400 // one day #define DOLPHIN_LOCK_EVENT_FLAG (0x1) @@ -39,6 +44,7 @@ Dolphin* dolphin_alloc() { dolphin->state = dolphin_state_alloc(); dolphin->event_queue = osMessageQueueNew(8, sizeof(DolphinEvent), NULL); + dolphin->pubsub = furi_pubsub_alloc(); return dolphin; } @@ -79,14 +85,17 @@ void dolphin_event_release(Dolphin* dolphin, DolphinEvent* event) { static void dolphin_check_butthurt(DolphinState* state) { furi_assert(state); - float diff_time = difftime(dolphin_state_get_timestamp(state), dolphin_state_timestamp()); + float diff_time = difftime(state->data.timestamp, dolphin_state_timestamp()); if((fabs(diff_time)) > DOLPHIN_TIMEGATE) { - FURI_LOG_I("DolphinState", "Increasing butthurt"); dolphin_state_butthurted(state); } } +FuriPubSub* dolphin_get_pubsub(Dolphin* dolphin) { + return dolphin->pubsub; +} + int32_t dolphin_srv(void* p) { Dolphin* dolphin = dolphin_alloc(); furi_record_create("dolphin", dolphin); @@ -97,11 +106,17 @@ int32_t dolphin_srv(void* p) { while(1) { if(osMessageQueueGet(dolphin->event_queue, &event, NULL, 60000) == osOK) { if(event.type == DolphinEventTypeDeed) { - dolphin_state_on_deed(dolphin->state, event.deed); + if(dolphin_state_on_deed(dolphin->state, event.deed)) { + DolphinPubsubEvent event = DolphinPubsubEventUpdate; + furi_pubsub_publish(dolphin->pubsub, &event); + } } else if(event.type == DolphinEventTypeStats) { - event.stats->icounter = dolphin_state_get_icounter(dolphin->state); - event.stats->butthurt = dolphin_state_get_butthurt(dolphin->state); - event.stats->timestamp = dolphin_state_get_timestamp(dolphin->state); + event.stats->icounter = dolphin->state->data.icounter; + event.stats->butthurt = dolphin->state->data.butthurt; + event.stats->timestamp = dolphin->state->data.timestamp; + event.stats->level = dolphin_get_level(dolphin->state->data.icounter); + event.stats->level_up_is_pending = + !dolphin_state_xp_to_levelup(dolphin->state->data.icounter); } else if(event.type == DolphinEventTypeFlush) { dolphin_state_save(dolphin->state); } @@ -116,3 +131,8 @@ int32_t dolphin_srv(void* p) { return 0; } + +void dolphin_upgrade_level(Dolphin* dolphin) { + dolphin_state_increase_level(dolphin->state); + dolphin_flush(dolphin); +} diff --git a/applications/dolphin/dolphin.h b/applications/dolphin/dolphin.h index c8edca61..97858996 100644 --- a/applications/dolphin/dolphin.h +++ b/applications/dolphin/dolphin.h @@ -1,6 +1,8 @@ #pragma once +#include "furi/pubsub.h" #include "helpers/dolphin_deed.h" +#include typedef struct Dolphin Dolphin; @@ -8,8 +10,14 @@ typedef struct { uint32_t icounter; uint32_t butthurt; uint64_t timestamp; + uint8_t level; + bool level_up_is_pending; } DolphinStats; +typedef enum { + DolphinPubsubEventUpdate, +} DolphinPubsubEvent; + /** Deed complete notification. Call it on deed completion. * See dolphin_deed.h for available deeds. In futures it will become part of assets. * Thread safe, async @@ -24,4 +32,8 @@ DolphinStats dolphin_stats(Dolphin* dolphin); /** Flush dolphin queue and save state * Thread safe, blocking */ -void dolphin_flush(Dolphin* dolphin); \ No newline at end of file +void dolphin_flush(Dolphin* dolphin); + +void dolphin_upgrade_level(Dolphin* dolphin); + +FuriPubSub* dolphin_get_pubsub(Dolphin* dolphin); diff --git a/applications/dolphin/dolphin_i.h b/applications/dolphin/dolphin_i.h index 5edba30e..85c96c19 100644 --- a/applications/dolphin/dolphin_i.h +++ b/applications/dolphin/dolphin_i.h @@ -1,5 +1,6 @@ #pragma once +#include "furi/pubsub.h" #include #include @@ -26,6 +27,7 @@ struct Dolphin { DolphinState* state; // Queue osMessageQueueId_t event_queue; + FuriPubSub* pubsub; }; Dolphin* dolphin_alloc(); diff --git a/applications/dolphin/helpers/dolphin_deed.c b/applications/dolphin/helpers/dolphin_deed.c index d589ac23..c7b2305e 100644 --- a/applications/dolphin/helpers/dolphin_deed.c +++ b/applications/dolphin/helpers/dolphin_deed.c @@ -1,12 +1,14 @@ #include "dolphin_deed.h" +#include static const DolphinDeedWeight dolphin_deed_weights[DolphinDeedMax] = { - {1, 2, 60}, - {1, 2, 60}, - {1, 2, 60}, - {-1, 2, 60}, + {1, -1, 60}, + {1, -1, 60}, + {1, -1, 60}, + {-1, 1, 60}, }; const DolphinDeedWeight* dolphin_deed_weight(DolphinDeed deed) { + furi_assert(deed < DolphinDeedMax); return &dolphin_deed_weights[deed]; } diff --git a/applications/dolphin/helpers/dolphin_state.c b/applications/dolphin/helpers/dolphin_state.c index 31066534..2878edf5 100644 --- a/applications/dolphin/helpers/dolphin_state.c +++ b/applications/dolphin/helpers/dolphin_state.c @@ -1,4 +1,5 @@ #include "dolphin_state.h" +#include #include #include #include @@ -9,23 +10,10 @@ #define DOLPHIN_STATE_HEADER_MAGIC 0xD0 #define DOLPHIN_STATE_HEADER_VERSION 0x01 #define DOLPHIN_LVL_THRESHOLD 20.0f - -typedef struct { - uint32_t limit_ibutton; - uint32_t limit_nfc; - uint32_t limit_ir; - uint32_t limit_rfid; - - uint32_t flags; - uint32_t icounter; - uint32_t butthurt; - uint64_t timestamp; -} DolphinStoreData; - -struct DolphinState { - DolphinStoreData data; - bool dirty; -}; +#define LEVEL2_THRESHOLD 20 +#define LEVEL3_THRESHOLD 100 +#define BUTTHURT_MAX 14 +#define BUTTHURT_MIN 0 DolphinState* dolphin_state_alloc() { return furi_alloc(sizeof(DolphinState)); @@ -58,20 +46,27 @@ bool dolphin_state_save(DolphinState* dolphin_state) { } bool dolphin_state_load(DolphinState* dolphin_state) { - bool loaded = saved_struct_load( + bool success = saved_struct_load( DOLPHIN_STATE_PATH, &dolphin_state->data, sizeof(DolphinStoreData), DOLPHIN_STATE_HEADER_MAGIC, DOLPHIN_STATE_HEADER_VERSION); - if(!loaded) { + if(success) { + if((dolphin_state->data.butthurt > BUTTHURT_MAX) || + (dolphin_state->data.butthurt < BUTTHURT_MIN)) { + success = false; + } + } + + if(!success) { FURI_LOG_W(TAG, "Reset dolphin-state"); memset(dolphin_state, 0, sizeof(*dolphin_state)); dolphin_state->dirty = true; } - return loaded; + return success; } uint64_t dolphin_state_timestamp() { @@ -93,42 +88,76 @@ uint64_t dolphin_state_timestamp() { return mktime(¤t); } -void dolphin_state_on_deed(DolphinState* dolphin_state, DolphinDeed deed) { +bool dolphin_state_is_levelup(uint32_t icounter) { + return (icounter == LEVEL2_THRESHOLD) || (icounter == LEVEL3_THRESHOLD); +} + +uint8_t dolphin_get_level(uint32_t icounter) { + if(icounter <= LEVEL2_THRESHOLD) { + return 1; + } else if(icounter <= LEVEL3_THRESHOLD) { + return 2; + } else { + return 3; + } +} + +uint32_t dolphin_state_xp_to_levelup(uint32_t icounter) { + uint32_t threshold = 0; + if(icounter <= LEVEL2_THRESHOLD) { + threshold = LEVEL2_THRESHOLD; + } else if(icounter <= LEVEL3_THRESHOLD) { + threshold = LEVEL3_THRESHOLD; + } else { + threshold = (uint32_t)-1; + } + return threshold - icounter; +} + +bool dolphin_state_on_deed(DolphinState* dolphin_state, DolphinDeed deed) { const DolphinDeedWeight* deed_weight = dolphin_deed_weight(deed); int32_t icounter = dolphin_state->data.icounter + deed_weight->icounter; - int32_t butthurt = dolphin_state->data.butthurt; + bool level_up = false; + bool mood_changed = false; - if(icounter >= 0) { - dolphin_state->data.icounter = icounter; - dolphin_state->data.butthurt = MAX(butthurt - deed_weight->icounter, 0); - dolphin_state->data.timestamp = dolphin_state_timestamp(); + if(icounter <= 0) { + icounter = 0; + if(dolphin_state->data.icounter == 0) { + return false; + } } + uint8_t xp_to_levelup = dolphin_state_xp_to_levelup(dolphin_state->data.icounter); + if(xp_to_levelup) { + level_up = true; + dolphin_state->data.icounter += MIN(xp_to_levelup, deed_weight->icounter); + } + + uint32_t new_butthurt = CLAMP( + ((int32_t)dolphin_state->data.butthurt) + deed_weight->butthurt, + BUTTHURT_MAX, + BUTTHURT_MIN); + + if(!!dolphin_state->data.butthurt != !!new_butthurt) { + mood_changed = true; + } + dolphin_state->data.butthurt = new_butthurt; + dolphin_state->data.timestamp = dolphin_state_timestamp(); dolphin_state->dirty = true; + + return level_up || mood_changed; } void dolphin_state_butthurted(DolphinState* dolphin_state) { - dolphin_state->data.butthurt++; - dolphin_state->data.timestamp = dolphin_state_timestamp(); + if(dolphin_state->data.butthurt < BUTTHURT_MAX) { + dolphin_state->data.butthurt++; + FURI_LOG_I("DolphinState", "Increasing butthurt"); + dolphin_state->data.timestamp = dolphin_state_timestamp(); + dolphin_state->dirty = true; + } +} + +void dolphin_state_increase_level(DolphinState* dolphin_state) { + ++dolphin_state->data.icounter; dolphin_state->dirty = true; } - -uint32_t dolphin_state_get_icounter(DolphinState* dolphin_state) { - return dolphin_state->data.icounter; -} - -uint32_t dolphin_state_get_butthurt(DolphinState* dolphin_state) { - return dolphin_state->data.butthurt; -} - -uint64_t dolphin_state_get_timestamp(DolphinState* dolphin_state) { - return dolphin_state->data.timestamp; -} - -uint32_t dolphin_state_get_level(uint32_t icounter) { - return 0.5f + sqrtf(1.0f + 8.0f * ((float)icounter / DOLPHIN_LVL_THRESHOLD)) / 2.0f; -} - -uint32_t dolphin_state_xp_to_levelup(uint32_t icounter, uint32_t level, bool remaining) { - return (DOLPHIN_LVL_THRESHOLD * level * (level + 1) / 2) - (remaining ? icounter : 0); -} diff --git a/applications/dolphin/helpers/dolphin_state.h b/applications/dolphin/helpers/dolphin_state.h index 7c4a33cd..25d2d9d2 100644 --- a/applications/dolphin/helpers/dolphin_state.h +++ b/applications/dolphin/helpers/dolphin_state.h @@ -7,6 +7,22 @@ #include typedef struct DolphinState DolphinState; +typedef struct { + uint32_t limit_ibutton; + uint32_t limit_nfc; + uint32_t limit_ir; + uint32_t limit_rfid; + + uint32_t flags; + uint32_t icounter; + uint32_t butthurt; + uint64_t timestamp; +} DolphinStoreData; + +struct DolphinState { + DolphinStoreData data; + bool dirty; +}; DolphinState* dolphin_state_alloc(); @@ -20,16 +36,14 @@ void dolphin_state_clear(DolphinState* dolphin_state); uint64_t dolphin_state_timestamp(); -void dolphin_state_on_deed(DolphinState* dolphin_state, DolphinDeed deed); +bool dolphin_state_on_deed(DolphinState* dolphin_state, DolphinDeed deed); void dolphin_state_butthurted(DolphinState* dolphin_state); -uint32_t dolphin_state_get_icounter(DolphinState* dolphin_state); +uint32_t dolphin_state_xp_to_levelup(uint32_t icounter); -uint32_t dolphin_state_get_butthurt(DolphinState* dolphin_state); +bool dolphin_state_is_levelup(uint32_t icounter); -uint64_t dolphin_state_get_timestamp(DolphinState* dolphin_state); +void dolphin_state_increase_level(DolphinState* dolphin_state); -uint32_t dolphin_state_get_level(uint32_t icounter); - -uint32_t dolphin_state_xp_to_levelup(uint32_t icounter, uint32_t level, bool remaining); \ No newline at end of file +uint8_t dolphin_get_level(uint32_t icounter); diff --git a/applications/gpio/usb_uart_bridge.c b/applications/gpio/usb_uart_bridge.c index 167c09aa..2f93680d 100644 --- a/applications/gpio/usb_uart_bridge.c +++ b/applications/gpio/usb_uart_bridge.c @@ -327,6 +327,7 @@ UsbUartBridge* usb_uart_enable(UsbUartConfig* cfg) { } void usb_uart_disable(UsbUartBridge* usb_uart) { + furi_assert(usb_uart); osThreadFlagsSet(furi_thread_get_thread_id(usb_uart->thread), WorkerEvtStop); furi_thread_join(usb_uart->thread); furi_thread_free(usb_uart->thread); diff --git a/applications/gpio/views/gpio_usb_uart.c b/applications/gpio/views/gpio_usb_uart.c index d83f2532..60eea962 100644 --- a/applications/gpio/views/gpio_usb_uart.c +++ b/applications/gpio/views/gpio_usb_uart.c @@ -40,9 +40,6 @@ static void gpio_usb_uart_draw_callback(Canvas* canvas, void* _model) { snprintf(temp_str, 18, "Pin %u", model->rx_pin); canvas_draw_str(canvas, 22, 42, temp_str); - canvas_draw_str_aligned(canvas, 127, 24, AlignRight, AlignBottom, "B."); - canvas_draw_str_aligned(canvas, 127, 41, AlignRight, AlignBottom, "B."); - if(model->baudrate == 0) snprintf(temp_str, 18, "Baud: ????"); else @@ -59,8 +56,8 @@ static void gpio_usb_uart_draw_callback(Canvas* canvas, void* _model) { canvas_set_font(canvas, FontSecondary); canvas_draw_str_aligned(canvas, 127, 24, AlignRight, AlignBottom, "KB."); canvas_set_font(canvas, FontKeyboard); - snprintf(temp_str, 18, "%lu", model->tx_cnt); - canvas_draw_str_aligned(canvas, 110, 24, AlignRight, AlignBottom, temp_str); + snprintf(temp_str, 18, "%lu", model->tx_cnt / 1024); + canvas_draw_str_aligned(canvas, 111, 24, AlignRight, AlignBottom, temp_str); } if(model->rx_cnt < 100000000) { @@ -73,8 +70,8 @@ static void gpio_usb_uart_draw_callback(Canvas* canvas, void* _model) { canvas_set_font(canvas, FontSecondary); canvas_draw_str_aligned(canvas, 127, 41, AlignRight, AlignBottom, "KB."); canvas_set_font(canvas, FontKeyboard); - snprintf(temp_str, 18, "%lu", model->rx_cnt); - canvas_draw_str_aligned(canvas, 110, 41, AlignRight, AlignBottom, temp_str); + snprintf(temp_str, 18, "%lu", model->rx_cnt / 1024); + canvas_draw_str_aligned(canvas, 111, 41, AlignRight, AlignBottom, temp_str); } if(model->tx_active) @@ -130,8 +127,13 @@ View* gpio_usb_uart_get_view(GpioUsbUart* usb_uart) { void gpio_usb_uart_set_callback(GpioUsbUart* usb_uart, GpioUsbUartCallback callback, void* context) { furi_assert(usb_uart); furi_assert(callback); - usb_uart->callback = callback; - usb_uart->context = context; + + with_view_model( + usb_uart->view, (GpioUsbUartModel * model) { + usb_uart->callback = callback; + usb_uart->context = context; + return false; + }); } void gpio_usb_uart_update_state(GpioUsbUart* instance, UsbUartConfig* cfg, UsbUartState* st) { diff --git a/applications/gui/gui.c b/applications/gui/gui.c index ff872ab4..5700e642 100644 --- a/applications/gui/gui.c +++ b/applications/gui/gui.c @@ -1,3 +1,4 @@ +#include "gui/canvas.h" #include "gui_i.h" #define TAG "GuiSrv" @@ -53,7 +54,19 @@ void gui_redraw_status_bar(Gui* gui) { canvas_set_orientation(gui->canvas, CanvasOrientationHorizontal); canvas_frame_set( gui->canvas, GUI_STATUS_BAR_X, GUI_STATUS_BAR_Y, GUI_DISPLAY_WIDTH, GUI_STATUS_BAR_HEIGHT); + + /* for support black theme - paint white area and + * draw icon with transparent white color + */ + canvas_set_color(gui->canvas, ColorWhite); + canvas_draw_box(gui->canvas, 1, 1, 9, 7); + canvas_draw_box(gui->canvas, 7, 3, 58, 6); + canvas_draw_box(gui->canvas, 61, 1, 32, 7); + canvas_draw_box(gui->canvas, 89, 3, 38, 6); + canvas_set_color(gui->canvas, ColorBlack); + canvas_set_bitmap_mode(gui->canvas, 1); canvas_draw_icon(gui->canvas, 0, 0, &I_Background_128x11); + canvas_set_bitmap_mode(gui->canvas, 0); // Right side x = GUI_DISPLAY_WIDTH; @@ -66,27 +79,25 @@ void gui_redraw_status_bar(Gui* gui) { if(!width) width = 8; x_used += width; x -= (width + 2); - canvas_frame_set(gui->canvas, x - 3, GUI_STATUS_BAR_Y, width, GUI_STATUS_BAR_HEIGHT); + canvas_frame_set( + gui->canvas, x - 3, GUI_STATUS_BAR_Y, width + 5, GUI_STATUS_BAR_HEIGHT); canvas_set_color(gui->canvas, ColorWhite); - canvas_draw_box(gui->canvas, 1, 1, width + 3, 11); - + canvas_draw_box(gui->canvas, 2, 1, width + 2, 10); canvas_set_color(gui->canvas, ColorBlack); - canvas_draw_box(gui->canvas, 1, 0, 1, 12); - canvas_draw_box(gui->canvas, 0, 1, 1, 11); + canvas_draw_rframe( + gui->canvas, 0, 0, canvas_width(gui->canvas), canvas_height(gui->canvas), 1); + canvas_draw_line(gui->canvas, 1, 1, 1, canvas_height(gui->canvas) - 2); + canvas_draw_line( + gui->canvas, + 2, + canvas_height(gui->canvas) - 2, + canvas_width(gui->canvas) - 2, + canvas_height(gui->canvas) - 2); - canvas_draw_box(gui->canvas, 1, 11, width + 4, 2); - canvas_draw_box(gui->canvas, 1, 0, width + 4, 1); - canvas_draw_box(gui->canvas, width + 4, 1, 1, 11); - - canvas_set_color(gui->canvas, ColorWhite); - canvas_draw_dot(gui->canvas, width + 4, 0); - canvas_draw_dot(gui->canvas, width + 4, 12); - - canvas_set_color(gui->canvas, ColorBlack); - - canvas_frame_set(gui->canvas, x, GUI_STATUS_BAR_Y + 2, width, GUI_STATUS_BAR_HEIGHT); + canvas_frame_set( + gui->canvas, x, GUI_STATUS_BAR_Y + 2, width, GUI_STATUS_BAR_WORKAREA_HEIGHT); view_port_draw(view_port, gui->canvas); } @@ -102,30 +113,27 @@ void gui_redraw_status_bar(Gui* gui) { width = view_port_get_width(view_port); if(!width) width = 8; x_used += width; - canvas_frame_set(gui->canvas, x, GUI_STATUS_BAR_Y, width, GUI_STATUS_BAR_HEIGHT); + + canvas_frame_set( + gui->canvas, 0, GUI_STATUS_BAR_Y, x + width + 5, GUI_STATUS_BAR_HEIGHT); + canvas_draw_rframe( + gui->canvas, 0, 0, canvas_width(gui->canvas), canvas_height(gui->canvas), 1); + canvas_draw_line(gui->canvas, 1, 1, 1, canvas_height(gui->canvas) - 2); + canvas_draw_line( + gui->canvas, + 2, + canvas_height(gui->canvas) - 2, + canvas_width(gui->canvas) - 2, + canvas_height(gui->canvas) - 2); + + canvas_frame_set(gui->canvas, x, GUI_STATUS_BAR_Y, width + 5, GUI_STATUS_BAR_HEIGHT); canvas_set_color(gui->canvas, ColorWhite); - canvas_draw_box(gui->canvas, 1, 1, width + 3, 11); - - canvas_set_color(gui->canvas, ColorBlack); - - if(x == 0) { // Frame start - canvas_draw_box(gui->canvas, 1, 0, 1, 12); - canvas_draw_box(gui->canvas, 0, 1, 1, 11); - } - - canvas_draw_box(gui->canvas, 1, 11, width + 4, 2); - canvas_draw_box(gui->canvas, 1, 0, width + 4, 1); - canvas_draw_box(gui->canvas, width + 4, 0, 1, 12); - - canvas_set_color(gui->canvas, ColorWhite); - canvas_draw_dot(gui->canvas, width + 4, 0); - canvas_draw_dot(gui->canvas, width + 4, 12); - + canvas_draw_box(gui->canvas, 2, 1, width + 2, 10); canvas_set_color(gui->canvas, ColorBlack); canvas_frame_set( - gui->canvas, x + 3, GUI_STATUS_BAR_Y + 2, width, GUI_STATUS_BAR_HEIGHT); + gui->canvas, x + 3, GUI_STATUS_BAR_Y + 2, width, GUI_STATUS_BAR_WORKAREA_HEIGHT); view_port_draw(view_port, gui->canvas); x += (width + 2); @@ -134,10 +142,10 @@ void gui_redraw_status_bar(Gui* gui) { } } -bool gui_redraw_normal(Gui* gui) { +bool gui_redraw_window(Gui* gui) { canvas_set_orientation(gui->canvas, CanvasOrientationHorizontal); - canvas_frame_set(gui->canvas, GUI_MAIN_X, GUI_MAIN_Y, GUI_MAIN_WIDTH, GUI_MAIN_HEIGHT); - ViewPort* view_port = gui_view_port_find_enabled(gui->layers[GuiLayerMain]); + canvas_frame_set(gui->canvas, GUI_WINDOW_X, GUI_WINDOW_Y, GUI_WINDOW_WIDTH, GUI_WINDOW_HEIGHT); + ViewPort* view_port = gui_view_port_find_enabled(gui->layers[GuiLayerWindow]); if(view_port) { view_port_draw(view_port, gui->canvas); return true; @@ -145,10 +153,10 @@ bool gui_redraw_normal(Gui* gui) { return false; } -bool gui_redraw_none(Gui* gui) { +bool gui_redraw_desktop(Gui* gui) { canvas_set_orientation(gui->canvas, CanvasOrientationHorizontal); - canvas_frame_set(gui->canvas, GUI_MAIN_X, GUI_MAIN_Y, GUI_MAIN_WIDTH, GUI_MAIN_HEIGHT); - ViewPort* view_port = gui_view_port_find_enabled(gui->layers[GuiLayerNone]); + canvas_frame_set(gui->canvas, 0, 0, GUI_DISPLAY_WIDTH, GUI_DISPLAY_HEIGHT); + ViewPort* view_port = gui_view_port_find_enabled(gui->layers[GuiLayerDesktop]); if(view_port) { view_port_draw(view_port, gui->canvas); return true; @@ -164,8 +172,8 @@ void gui_redraw(Gui* gui) { canvas_reset(gui->canvas); if(!gui_redraw_fs(gui)) { - if(!gui_redraw_normal(gui)) { - gui_redraw_none(gui); + if(!gui_redraw_window(gui)) { + gui_redraw_desktop(gui); } gui_redraw_status_bar(gui); } @@ -203,8 +211,8 @@ void gui_input(Gui* gui, InputEvent* input_event) { gui_lock(gui); ViewPort* view_port = gui_view_port_find_enabled(gui->layers[GuiLayerFullscreen]); - if(!view_port) view_port = gui_view_port_find_enabled(gui->layers[GuiLayerMain]); - if(!view_port) view_port = gui_view_port_find_enabled(gui->layers[GuiLayerNone]); + if(!view_port) view_port = gui_view_port_find_enabled(gui->layers[GuiLayerWindow]); + if(!view_port) view_port = gui_view_port_find_enabled(gui->layers[GuiLayerDesktop]); if(!(gui->ongoing_input & ~key_bit) && input_event->type == InputTypePress) { gui->ongoing_input_view_port = view_port; diff --git a/applications/gui/gui.h b/applications/gui/gui.h index acdd2211..a5fb8a11 100644 --- a/applications/gui/gui.h +++ b/applications/gui/gui.h @@ -14,12 +14,14 @@ extern "C" { /** Gui layers */ typedef enum { - GuiLayerNone, /**< Special layer for internal use only */ + GuiLayerDesktop, /**< Desktop layer for internal use. Like fullscreen but with status bar */ + + GuiLayerWindow, /**< Window layer, status bar is shown */ GuiLayerStatusBarLeft, /**< Status bar left-side layer, auto-layout */ GuiLayerStatusBarRight, /**< Status bar right-side layer, auto-layout */ - GuiLayerMain, /**< Main layer, status bar is shown */ - GuiLayerFullscreen, /**< Fullscreen layer */ + + GuiLayerFullscreen, /**< Fullscreen layer, no status bar */ GuiLayerMAX /**< Don't use or move, special value */ } GuiLayer; diff --git a/applications/gui/gui_i.h b/applications/gui/gui_i.h index 5b32f602..06784f81 100644 --- a/applications/gui/gui_i.h +++ b/applications/gui/gui_i.h @@ -23,12 +23,19 @@ #define GUI_STATUS_BAR_X 0 #define GUI_STATUS_BAR_Y 0 #define GUI_STATUS_BAR_WIDTH GUI_DISPLAY_WIDTH +/* 0-1 pixels for upper thin frame + * 2-9 pixels for icons (battery, sd card, etc) + * 10-12 pixels for lower bold line */ #define GUI_STATUS_BAR_HEIGHT 13 +/* icon itself area (battery, sd card, etc) excluding frame. + * painted 2 pixels below GUI_STATUS_BAR_X. + */ +#define GUI_STATUS_BAR_WORKAREA_HEIGHT 8 -#define GUI_MAIN_X 0 -#define GUI_MAIN_Y 9 -#define GUI_MAIN_WIDTH GUI_DISPLAY_WIDTH -#define GUI_MAIN_HEIGHT (GUI_DISPLAY_HEIGHT - GUI_MAIN_Y) +#define GUI_WINDOW_X 0 +#define GUI_WINDOW_Y GUI_STATUS_BAR_HEIGHT +#define GUI_WINDOW_WIDTH GUI_DISPLAY_WIDTH +#define GUI_WINDOW_HEIGHT (GUI_DISPLAY_HEIGHT - GUI_WINDOW_Y) #define GUI_THREAD_FLAG_DRAW (1 << 0) #define GUI_THREAD_FLAG_INPUT (1 << 1) diff --git a/applications/gui/icon_animation.c b/applications/gui/icon_animation.c index 3ed0973d..842798ec 100644 --- a/applications/gui/icon_animation.c +++ b/applications/gui/icon_animation.c @@ -62,6 +62,7 @@ void icon_animation_start(IconAnimation* instance) { furi_assert(instance); if(!instance->animating) { instance->animating = true; + furi_assert(instance->icon->frame_rate); furi_check( xTimerChangePeriod( instance->timer, (osKernelGetTickFreq() / instance->icon->frame_rate), 0) == diff --git a/applications/gui/modules/code_input.c b/applications/gui/modules/code_input.c index 62f5118d..9e220d54 100644 --- a/applications/gui/modules/code_input.c +++ b/applications/gui/modules/code_input.c @@ -275,11 +275,14 @@ static void code_input_handle_dpad(CodeInputModel* model, InputKey key) { static void code_input_view_draw_callback(Canvas* canvas, void* _model) { CodeInputModel* model = _model; uint8_t y_offset = 0; - if(!strlen(model->header)) y_offset = 5; canvas_clear(canvas); canvas_set_color(canvas, ColorBlack); - canvas_draw_str(canvas, 2, 9, model->header); + if(model->header && strlen(model->header)) { + canvas_draw_str(canvas, 2, 9, model->header); + } else { + y_offset = 4; + } canvas_set_font(canvas, FontSecondary); @@ -290,7 +293,7 @@ static void code_input_view_draw_callback(Canvas* canvas, void* _model) { model->local_buffer[CodeInputFirst], model->input_length[CodeInputFirst], 6, - 30 - y_offset, + 30 + y_offset, true); break; case CodeInputStateUpdate: @@ -299,14 +302,14 @@ static void code_input_view_draw_callback(Canvas* canvas, void* _model) { model->local_buffer[CodeInputFirst], model->input_length[CodeInputFirst], 6, - 14 - y_offset, + 14 + y_offset, !model->current); code_input_draw_sequence( canvas, model->local_buffer[CodeInputSecond], model->input_length[CodeInputSecond], 6, - 44 - y_offset, + 44 + y_offset, model->current); if(model->current) canvas_draw_str(canvas, 2, 39 - y_offset, "Repeat code"); diff --git a/applications/gui/view_dispatcher.c b/applications/gui/view_dispatcher.c index f12cfe8b..3cc59262 100644 --- a/applications/gui/view_dispatcher.c +++ b/applications/gui/view_dispatcher.c @@ -199,12 +199,12 @@ void view_dispatcher_attach_to_gui( furi_assert(view_dispatcher->gui == NULL); furi_assert(gui); - if(type == ViewDispatcherTypeNone) { - gui_add_view_port(gui, view_dispatcher->view_port, GuiLayerNone); + if(type == ViewDispatcherTypeDesktop) { + gui_add_view_port(gui, view_dispatcher->view_port, GuiLayerDesktop); + } else if(type == ViewDispatcherTypeWindow) { + gui_add_view_port(gui, view_dispatcher->view_port, GuiLayerWindow); } else if(type == ViewDispatcherTypeFullscreen) { gui_add_view_port(gui, view_dispatcher->view_port, GuiLayerFullscreen); - } else if(type == ViewDispatcherTypeWindow) { - gui_add_view_port(gui, view_dispatcher->view_port, GuiLayerMain); } else { furi_check(NULL); } diff --git a/applications/gui/view_dispatcher.h b/applications/gui/view_dispatcher.h index 07dc2ead..67a3fc40 100755 --- a/applications/gui/view_dispatcher.h +++ b/applications/gui/view_dispatcher.h @@ -15,9 +15,9 @@ extern "C" { /** ViewDispatcher view_port placement */ typedef enum { - ViewDispatcherTypeNone, /**< Special layer for internal use only */ - ViewDispatcherTypeWindow, /**< Main view_port layer, status bar is shown */ - ViewDispatcherTypeFullscreen /**< Fullscreen view_port layer */ + ViewDispatcherTypeDesktop, /**< Desktop layer: fullscreen with status bar on top of it. For internal usage. */ + ViewDispatcherTypeWindow, /**< Window layer: with status bar */ + ViewDispatcherTypeFullscreen /**< Fullscreen layer: without status bar */ } ViewDispatcherType; typedef struct ViewDispatcher ViewDispatcher; diff --git a/applications/loader/loader.c b/applications/loader/loader.c index fb5133df..9d24f65d 100644 --- a/applications/loader/loader.c +++ b/applications/loader/loader.c @@ -169,6 +169,9 @@ static uint32_t loader_hide_menu(void* context) { } static uint32_t loader_back_to_primary_menu(void* context) { + furi_assert(context); + Submenu* submenu = context; + submenu_set_selected_item(submenu, 0); return LoaderMenuViewPrimary; } @@ -200,6 +203,7 @@ static Loader* loader_alloc() { instance->view_dispatcher, LoaderMenuViewPrimary, menu_get_view(instance->primary_menu)); // Plugins menu instance->plugins_menu = submenu_alloc(); + view_set_context(submenu_get_view(instance->plugins_menu), instance->plugins_menu); view_set_previous_callback( submenu_get_view(instance->plugins_menu), loader_back_to_primary_menu); view_dispatcher_add_view( @@ -208,12 +212,14 @@ static Loader* loader_alloc() { submenu_get_view(instance->plugins_menu)); // Debug menu instance->debug_menu = submenu_alloc(); + view_set_context(submenu_get_view(instance->debug_menu), instance->debug_menu); view_set_previous_callback( submenu_get_view(instance->debug_menu), loader_back_to_primary_menu); view_dispatcher_add_view( instance->view_dispatcher, LoaderMenuViewDebug, submenu_get_view(instance->debug_menu)); // Settings menu instance->settings_menu = submenu_alloc(); + view_set_context(submenu_get_view(instance->settings_menu), instance->settings_menu); view_set_previous_callback( submenu_get_view(instance->settings_menu), loader_back_to_primary_menu); view_dispatcher_add_view( diff --git a/applications/notification/notification-messages.c b/applications/notification/notification-messages.c index e8dbbc9c..d600d8c5 100644 --- a/applications/notification/notification-messages.c +++ b/applications/notification/notification-messages.c @@ -309,7 +309,14 @@ const NotificationSequence sequence_blink_white_100 = { NULL, }; -// General +//General +const NotificationSequence sequence_single_vibro = { + &message_vibro_on, + &message_delay_100, + &message_vibro_off, + NULL, +}; + const NotificationSequence sequence_double_vibro = { &message_vibro_on, &message_delay_100, diff --git a/applications/notification/notification-messages.h b/applications/notification/notification-messages.h index 3aad3e09..add4a55d 100644 --- a/applications/notification/notification-messages.h +++ b/applications/notification/notification-messages.h @@ -89,6 +89,7 @@ extern const NotificationSequence sequence_blink_magenta_100; extern const NotificationSequence sequence_blink_white_100; // General +extern const NotificationSequence sequence_single_vibro; extern const NotificationSequence sequence_double_vibro; extern const NotificationSequence sequence_success; extern const NotificationSequence sequence_error; diff --git a/applications/notification/notification-settings-app.c b/applications/notification/notification-settings-app.c index 78d7c65e..93f36e7a 100644 --- a/applications/notification/notification-settings-app.c +++ b/applications/notification/notification-settings-app.c @@ -19,13 +19,6 @@ static const NotificationSequence sequence_note_c = { NULL, }; -static const NotificationSequence sequence_vibro = { - &message_vibro_on, - &message_delay_100, - &message_vibro_off, - NULL, -}; - #define BACKLIGHT_COUNT 5 const char* const backlight_text[BACKLIGHT_COUNT] = { "0%", @@ -150,7 +143,7 @@ static void vibro_changed(VariableItem* item) { variable_item_set_current_value_text(item, vibro_text[index]); app->notification->settings.vibro_on = vibro_value[index]; - notification_message(app->notification, &sequence_vibro); + notification_message(app->notification, &sequence_single_vibro); } static uint32_t notification_app_settings_exit(void* context) { diff --git a/applications/power/power_service/power.c b/applications/power/power_service/power.c old mode 100755 new mode 100644 index 94137d73..a1bdc854 --- a/applications/power/power_service/power.c +++ b/applications/power/power_service/power.c @@ -7,6 +7,11 @@ #include #define POWER_OFF_TIMEOUT 90 +#define POWER_BATTERY_WELL_LEVEL 70 + +bool power_is_battery_well(PowerInfo* info) { + return info->health > POWER_BATTERY_WELL_LEVEL; +} void power_draw_battery_callback(Canvas* canvas, void* context) { furi_assert(context); @@ -167,6 +172,7 @@ static void power_check_battery_level_change(Power* power) { int32_t power_srv(void* p) { (void)p; Power* power = power_alloc(); + power_update_info(power); furi_record_create("power", power); while(1) { diff --git a/applications/power/power_service/power.h b/applications/power/power_service/power.h index f80b538d..0e53fdef 100644 --- a/applications/power/power_service/power.h +++ b/applications/power/power_service/power.h @@ -2,6 +2,7 @@ #include #include +#include typedef struct Power Power; @@ -63,3 +64,5 @@ void power_get_info(Power* power, PowerInfo* info); * @param power - Power instance */ FuriPubSub* power_get_pubsub(Power* power); + +bool power_is_battery_well(PowerInfo* info); diff --git a/applications/rpc/rpc_status.c b/applications/rpc/rpc_status.c index e8f4e273..0c3fb56e 100644 --- a/applications/rpc/rpc_status.c +++ b/applications/rpc/rpc_status.c @@ -3,14 +3,27 @@ #include "status.pb.h" void rpc_system_status_ping_process(const PB_Main* msg_request, void* context) { + if(msg_request->has_next) { + rpc_send_and_release_empty( + context, msg_request->command_id, PB_CommandStatus_ERROR_INVALID_PARAMETERS); + return; + } + PB_Main msg_response = PB_Main_init_default; msg_response.has_next = false; msg_response.command_status = PB_CommandStatus_OK; msg_response.command_id = msg_request->command_id; msg_response.which_content = PB_Main_ping_response_tag; + const PB_Status_PingRequest* request = &msg_request->content.ping_request; + PB_Status_PingResponse* response = &msg_response.content.ping_response; + if(request->data && (request->data->size > 0)) { + response->data = furi_alloc(PB_BYTES_ARRAY_T_ALLOCSIZE(request->data->size)); + memcpy(response->data->bytes, request->data->bytes, request->data->size); + response->data->size = request->data->size; + } + rpc_send_and_release(context, &msg_response); - pb_release(&PB_Main_msg, &msg_response); } void* rpc_system_status_alloc(Rpc* rpc) { diff --git a/applications/snake-game/snake-game.c b/applications/snake-game/snake-game.c new file mode 100644 index 00000000..c1debed2 --- /dev/null +++ b/applications/snake-game/snake-game.c @@ -0,0 +1,419 @@ +#include +#include +#include +#include + +typedef struct { + // +-----x + // | + // | + // y + uint8_t x; + uint8_t y; +} Point; + +typedef enum { + GameStateLife, + + // https://melmagazine.com/en-us/story/snake-nokia-6110-oral-history-taneli-armanto + // Armanto: While testing the early versions of the game, I noticed it was hard + // to control the snake upon getting close to and edge but not crashing — especially + // in the highest speed levels. I wanted the highest level to be as fast as I could + // possibly make the device "run," but on the other hand, I wanted to be friendly + // and help the player manage that level. Otherwise it might not be fun to play. So + // I implemented a little delay. A few milliseconds of extra time right before + // the player crashes, during which she can still change the directions. And if + // she does, the game continues. + GameStateLastChance, + + GameStateGameOver, +} GameState; + +typedef enum { + DirectionUp, + DirectionRight, + DirectionDown, + DirectionLeft, +} Direction; + +#define MAX_SNAKE_LEN 253 + +typedef struct { + Point points[MAX_SNAKE_LEN]; + uint16_t len; + Direction currentMovement; + Direction nextMovement; // if backward of currentMovement, ignore + Point fruit; + GameState state; +} SnakeState; + +typedef enum { + EventTypeTick, + EventTypeKey, +} EventType; + +typedef struct { + EventType type; + InputEvent input; +} SnakeEvent; + +static void snake_game_render_callback(Canvas* const canvas, void* ctx) { + const SnakeState* snake_state = acquire_mutex((ValueMutex*)ctx, 25); + if(snake_state == NULL) { + return; + } + + // Before the function is called, the state is set with the canvas_reset(canvas) + + // Frame + canvas_draw_frame(canvas, 0, 0, 128, 64); + + // Fruit + Point f = snake_state->fruit; + f.x = f.x * 4 + 1; + f.y = f.y * 4 + 1; + canvas_draw_rframe(canvas, f.x, f.y, 6, 6, 2); + + // Snake + for(uint16_t i = 0; i < snake_state->len; i++) { + Point p = snake_state->points[i]; + p.x = p.x * 4 + 2; + p.y = p.y * 4 + 2; + canvas_draw_box(canvas, p.x, p.y, 4, 4); + } + + // Game Over banner + if(snake_state->state == GameStateGameOver) { + // Screen is 128x64 px + canvas_set_color(canvas, ColorWhite); + canvas_draw_box(canvas, 34, 20, 62, 24); + + canvas_set_color(canvas, ColorBlack); + canvas_draw_frame(canvas, 34, 20, 62, 24); + + canvas_set_font(canvas, FontPrimary); + canvas_draw_str(canvas, 37, 31, "Game Over"); + + canvas_set_font(canvas, FontSecondary); + char buffer[12]; + snprintf(buffer, sizeof(buffer), "Score: %u", snake_state->len - 7); + canvas_draw_str_aligned(canvas, 64, 41, AlignCenter, AlignBottom, buffer); + } + + release_mutex((ValueMutex*)ctx, snake_state); +} + +static void snake_game_input_callback(InputEvent* input_event, osMessageQueueId_t event_queue) { + furi_assert(event_queue); + + SnakeEvent event = {.type = EventTypeKey, .input = *input_event}; + osMessageQueuePut(event_queue, &event, 0, osWaitForever); +} + +static void snake_game_update_timer_callback(osMessageQueueId_t event_queue) { + furi_assert(event_queue); + + SnakeEvent event = {.type = EventTypeTick}; + osMessageQueuePut(event_queue, &event, 0, 0); +} + +static void snake_game_init_game(SnakeState* const snake_state) { + Point p[] = {{8, 6}, {7, 6}, {6, 6}, {5, 6}, {4, 6}, {3, 6}, {2, 6}}; + memcpy(snake_state->points, p, sizeof(p)); + + snake_state->len = 7; + + snake_state->currentMovement = DirectionRight; + + snake_state->nextMovement = DirectionRight; + + Point f = {18, 6}; + snake_state->fruit = f; + + snake_state->state = GameStateLife; +} + +static Point snake_game_get_new_fruit(SnakeState const* const snake_state) { + // 1 bit for each point on the playing field where the snake can turn + // and where the fruit can appear + uint16_t buffer[8]; + memset(buffer, 0, sizeof(buffer)); + uint8_t empty = 8 * 16; + + for(uint16_t i = 0; i < snake_state->len; i++) { + Point p = snake_state->points[i]; + + if(p.x % 2 != 0 || p.y % 2 != 0) { + continue; + } + p.x /= 2; + p.y /= 2; + + buffer[p.y] |= 1 << p.x; + empty--; + } + // Bit set if snake use that playing field + + uint16_t newFruit = rand() % empty; + + // Skip random number of _empty_ fields + for(uint8_t y = 0; y < 8; y++) { + for(uint16_t x = 0, mask = 1; x < 16; x += 1, mask <<= 1) { + if((buffer[y] & mask) == 0) { + if(newFruit == 0) { + Point p = { + .x = x * 2, + .y = y * 2, + }; + return p; + } + newFruit--; + } + } + } + // We will never be here + Point p = {0, 0}; + return p; +} + +static bool snake_game_collision_with_frame(Point const next_step) { + // if x == 0 && currentMovement == left then x - 1 == 255 , + // so check only x > right border + return next_step.x > 30 || next_step.y > 14; +} + +static bool + snake_game_collision_with_tail(SnakeState const* const snake_state, Point const next_step) { + for(uint16_t i = 0; i < snake_state->len; i++) { + Point p = snake_state->points[i]; + if(p.x == next_step.x && p.y == next_step.y) { + return true; + } + } + + return false; +} + +static Direction snake_game_get_turn_snake(SnakeState const* const snake_state) { + switch(snake_state->currentMovement) { + case DirectionUp: + switch(snake_state->nextMovement) { + case DirectionRight: + return DirectionRight; + case DirectionLeft: + return DirectionLeft; + default: + return snake_state->currentMovement; + } + case DirectionRight: + switch(snake_state->nextMovement) { + case DirectionUp: + return DirectionUp; + case DirectionDown: + return DirectionDown; + default: + return snake_state->currentMovement; + } + case DirectionDown: + switch(snake_state->nextMovement) { + case DirectionRight: + return DirectionRight; + case DirectionLeft: + return DirectionLeft; + default: + return snake_state->currentMovement; + } + default: // case DirectionLeft: + switch(snake_state->nextMovement) { + case DirectionUp: + return DirectionUp; + case DirectionDown: + return DirectionDown; + default: + return snake_state->currentMovement; + } + } +} + +static Point snake_game_get_next_step(SnakeState const* const snake_state) { + Point next_step = snake_state->points[0]; + switch(snake_state->currentMovement) { + // +-----x + // | + // | + // y + case DirectionUp: + next_step.y--; + break; + case DirectionRight: + next_step.x++; + break; + case DirectionDown: + next_step.y++; + break; + case DirectionLeft: + next_step.x--; + break; + } + return next_step; +} + +static void snake_game_move_snake(SnakeState* const snake_state, Point const next_step) { + memmove(snake_state->points + 1, snake_state->points, snake_state->len * sizeof(Point)); + snake_state->points[0] = next_step; +} + +static void snake_game_process_game_step(SnakeState* const snake_state) { + if(snake_state->state == GameStateGameOver) { + return; + } + + bool can_turn = (snake_state->points[0].x % 2 == 0) && (snake_state->points[0].y % 2 == 0); + if(can_turn) { + snake_state->currentMovement = snake_game_get_turn_snake(snake_state); + } + + Point next_step = snake_game_get_next_step(snake_state); + + bool crush = snake_game_collision_with_frame(next_step); + if(crush) { + if(snake_state->state == GameStateLife) { + snake_state->state = GameStateLastChance; + return; + } else if(snake_state->state == GameStateLastChance) { + snake_state->state = GameStateGameOver; + return; + } + } else { + if(snake_state->state == GameStateLastChance) { + snake_state->state = GameStateLife; + } + } + + crush = snake_game_collision_with_tail(snake_state, next_step); + if(crush) { + snake_state->state = GameStateGameOver; + return; + } + + bool eatFruit = (next_step.x == snake_state->fruit.x) && (next_step.y == snake_state->fruit.y); + if(eatFruit) { + snake_state->len++; + if(snake_state->len >= MAX_SNAKE_LEN) { + snake_state->state = GameStateGameOver; + return; + } + } + + snake_game_move_snake(snake_state, next_step); + + if(eatFruit) { + snake_state->fruit = snake_game_get_new_fruit(snake_state); + } +} + +int32_t snake_game_app(void* p) { + srand(DWT->CYCCNT); + + osMessageQueueId_t event_queue = osMessageQueueNew(8, sizeof(SnakeEvent), NULL); + + SnakeState* snake_state = furi_alloc(sizeof(SnakeState)); + snake_game_init_game(snake_state); + + ValueMutex state_mutex; + if(!init_mutex(&state_mutex, snake_state, sizeof(SnakeState))) { + furi_log_print(FURI_LOG_ERROR, "cannot create mutex\r\n"); + free(snake_state); + return 255; + } + + ViewPort* view_port = view_port_alloc(); + view_port_draw_callback_set(view_port, snake_game_render_callback, &state_mutex); + view_port_input_callback_set(view_port, snake_game_input_callback, event_queue); + + osTimerId_t timer = + osTimerNew(snake_game_update_timer_callback, osTimerPeriodic, event_queue, NULL); + osTimerStart(timer, osKernelGetTickFreq() / 4); + + // Open GUI and register view_port + Gui* gui = furi_record_open("gui"); + gui_add_view_port(gui, view_port, GuiLayerFullscreen); + + SnakeEvent event; + for(bool processing = true; processing;) { + osStatus_t event_status = osMessageQueueGet(event_queue, &event, NULL, 100); + + SnakeState* snake_state = (SnakeState*)acquire_mutex_block(&state_mutex); + + if(event_status == osOK) { + // press events + if(event.type == EventTypeKey) { + if(event.input.type == InputTypePress) { + switch(event.input.key) { + case InputKeyUp: + snake_state->nextMovement = DirectionUp; + break; + case InputKeyDown: + snake_state->nextMovement = DirectionDown; + break; + case InputKeyRight: + snake_state->nextMovement = DirectionRight; + break; + case InputKeyLeft: + snake_state->nextMovement = DirectionLeft; + break; + case InputKeyOk: + if(snake_state->state == GameStateGameOver) { + snake_game_init_game(snake_state); + } + break; + case InputKeyBack: + processing = false; + break; + } + } + } else if(event.type == EventTypeTick) { + snake_game_process_game_step(snake_state); + } + } else { + // event timeout + } + + view_port_update(view_port); + release_mutex(&state_mutex, snake_state); + } + + osTimerDelete(timer); + view_port_enabled_set(view_port, false); + gui_remove_view_port(gui, view_port); + furi_record_close("gui"); + view_port_free(view_port); + osMessageQueueDelete(event_queue); + delete_mutex(&state_mutex); + free(snake_state); + + return 0; +} + +// Screen is 128x64 px +// (4 + 4) * 16 - 4 + 2 + 2border == 128 +// (4 + 4) * 8 - 4 + 2 + 2border == 64 +// Game field from point{x: 0, y: 0} to point{x: 30, y: 14}. +// The snake turns only in even cells - intersections. +// ┌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┐ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// ╎ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ╎ +// └╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┘ diff --git a/applications/storage/storage-external-api.c b/applications/storage/storage-external-api.c index ae798ecb..6c61f707 100644 --- a/applications/storage/storage-external-api.c +++ b/applications/storage/storage-external-api.c @@ -391,6 +391,10 @@ void storage_file_free(File* file) { free(file); } +FuriPubSub* storage_get_pubsub(Storage* storage) { + return storage->pubsub; +} + bool storage_simply_remove_recursive(Storage* storage, const char* path) { furi_assert(storage); furi_assert(path); diff --git a/applications/storage/storage-i.h b/applications/storage/storage-i.h index 9ce3dc03..f7db2d0c 100644 --- a/applications/storage/storage-i.h +++ b/applications/storage/storage-i.h @@ -19,9 +19,11 @@ typedef struct { struct Storage { osMessageQueueId_t message_queue; StorageData storage[STORAGE_COUNT]; + StorageStatus prev_ext_storage_status; StorageSDGui sd_gui; + FuriPubSub* pubsub; }; #ifdef __cplusplus } -#endif \ No newline at end of file +#endif diff --git a/applications/storage/storage.c b/applications/storage/storage.c index ef229db0..91c75642 100644 --- a/applications/storage/storage.c +++ b/applications/storage/storage.c @@ -2,6 +2,7 @@ #include "storage-i.h" #include "storage-message.h" #include "storage-processing.h" +#include "storage/storage-glue.h" #include "storages/storage-int.h" #include "storages/storage-ext.h" @@ -31,6 +32,7 @@ static void storage_app_sd_icon_draw_callback(Canvas* canvas, void* context) { Storage* storage_app_alloc() { Storage* app = malloc(sizeof(Storage)); app->message_queue = osMessageQueueNew(8, sizeof(StorageMessage), NULL); + app->pubsub = furi_pubsub_alloc(); for(uint8_t i = 0; i < STORAGE_COUNT; i++) { storage_data_init(&app->storage[i]); @@ -61,6 +63,11 @@ void storage_tick(Storage* app) { } } + if(app->storage[ST_EXT].status != app->prev_ext_storage_status) { + app->prev_ext_storage_status = app->storage[ST_EXT].status; + furi_pubsub_publish(app->pubsub, &app->storage[ST_EXT].status); + } + // storage not enabled but was enabled (sd card unmount) if(app->storage[ST_EXT].status == StorageStatusNotReady && app->sd_gui.enabled == true) { app->sd_gui.enabled = false; @@ -93,4 +100,4 @@ int32_t storage_srv(void* p) { } return 0; -} \ No newline at end of file +} diff --git a/applications/storage/storage.h b/applications/storage/storage.h index fc7ac665..92cf142c 100644 --- a/applications/storage/storage.h +++ b/applications/storage/storage.h @@ -18,6 +18,8 @@ File* storage_file_alloc(Storage* storage); */ void storage_file_free(File* file); +FuriPubSub* storage_get_pubsub(Storage* storage); + /******************* File Functions *******************/ /** Opens an existing file or create a new one. diff --git a/applications/subghz/helpers/subghz_custom_event.h b/applications/subghz/helpers/subghz_custom_event.h index 5a423e6f..65b412f8 100644 --- a/applications/subghz/helpers/subghz_custom_event.h +++ b/applications/subghz/helpers/subghz_custom_event.h @@ -14,8 +14,8 @@ typedef enum { SubghzCustomEventSceneShowError, SubghzCustomEventSceneShowOnlyRX, - SubghzCustomEventSceneNeedSavingNo, - SubghzCustomEventSceneNeedSavingYes, + SubghzCustomEventSceneExit, + SubghzCustomEventSceneStay, SubghzCustomEventViewReceverOK, SubghzCustomEventViewReceverConfig, @@ -25,7 +25,11 @@ typedef enum { SubghzCustomEventViewReadRAWIDLE, SubghzCustomEventViewReadRAWREC, SubghzCustomEventViewReadRAWConfig, - SubghzCustomEventViewReadRAWMore, + SubghzCustomEventViewReadRAWErase, + SubghzCustomEventViewReadRAWSendStart, + SubghzCustomEventViewReadRAWSendStop, + SubghzCustomEventViewReadRAWSave, + SubghzCustomEventViewReadRAWVibro, SubghzCustomEventViewTransmitterBack, SubghzCustomEventViewTransmitterSendStart, diff --git a/applications/subghz/scenes/subghz_scene_config.h b/applications/subghz/scenes/subghz_scene_config.h index 6d89cb74..d0be3c00 100644 --- a/applications/subghz/scenes/subghz_scene_config.h +++ b/applications/subghz/scenes/subghz_scene_config.h @@ -18,5 +18,4 @@ ADD_SCENE(subghz, test_packet, TestPacket) ADD_SCENE(subghz, set_type, SetType) ADD_SCENE(subghz, frequency_analyzer, FrequencyAnalyzer) ADD_SCENE(subghz, read_raw, ReadRAW) -ADD_SCENE(subghz, read_raw_menu, ReadRAWMenu) ADD_SCENE(subghz, need_saving, NeedSaving) \ No newline at end of file diff --git a/applications/subghz/scenes/subghz_scene_need_saving.c b/applications/subghz/scenes/subghz_scene_need_saving.c index c7f83ce0..cab36dc4 100644 --- a/applications/subghz/scenes/subghz_scene_need_saving.c +++ b/applications/subghz/scenes/subghz_scene_need_saving.c @@ -6,42 +6,46 @@ void subghz_scene_need_saving_callback(GuiButtonType result, InputType type, voi SubGhz* subghz = context; if((result == GuiButtonTypeRight) && (type == InputTypeShort)) { - view_dispatcher_send_custom_event( - subghz->view_dispatcher, SubghzCustomEventSceneNeedSavingYes); + view_dispatcher_send_custom_event(subghz->view_dispatcher, SubghzCustomEventSceneStay); } else if((result == GuiButtonTypeLeft) && (type == InputTypeShort)) { - view_dispatcher_send_custom_event( - subghz->view_dispatcher, SubghzCustomEventSceneNeedSavingNo); + view_dispatcher_send_custom_event(subghz->view_dispatcher, SubghzCustomEventSceneExit); } } void subghz_scene_need_saving_on_enter(void* context) { SubGhz* subghz = context; + widget_add_string_multiline_element( + subghz->widget, 64, 13, AlignCenter, AlignCenter, FontPrimary, "Exit to Sub-Ghz menu?"); widget_add_string_multiline_element( subghz->widget, 64, - 25, + 32, AlignCenter, AlignCenter, FontSecondary, - "There is an unsaved data.\nDo you want to save it?"); + "All unsaved will be\nlost."); widget_add_button_element( - subghz->widget, GuiButtonTypeRight, "Save", subghz_scene_need_saving_callback, subghz); + subghz->widget, GuiButtonTypeRight, "Stay", subghz_scene_need_saving_callback, subghz); widget_add_button_element( - subghz->widget, GuiButtonTypeLeft, "Delete", subghz_scene_need_saving_callback, subghz); + subghz->widget, GuiButtonTypeLeft, "Exit", subghz_scene_need_saving_callback, subghz); view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewWidget); } bool subghz_scene_need_saving_on_event(void* context, SceneManagerEvent event) { SubGhz* subghz = context; - if(event.type == SceneManagerEventTypeCustom) { - if(event.event == SubghzCustomEventSceneNeedSavingYes) { - subghz->txrx->rx_key_state = SubGhzRxKeyStateNeedSave; + if(event.type == SceneManagerEventTypeBack) { + subghz->txrx->rx_key_state = SubGhzRxKeyStateBack; + scene_manager_previous_scene(subghz->scene_manager); + return true; + } else if(event.type == SceneManagerEventTypeCustom) { + if(event.event == SubghzCustomEventSceneStay) { + subghz->txrx->rx_key_state = SubGhzRxKeyStateBack; scene_manager_previous_scene(subghz->scene_manager); return true; - } else if(event.event == SubghzCustomEventSceneNeedSavingNo) { + } else if(event.event == SubghzCustomEventSceneExit) { if(subghz->txrx->rx_key_state == SubGhzRxKeyStateExit) { subghz->txrx->rx_key_state = SubGhzRxKeyStateIDLE; scene_manager_search_and_switch_to_previous_scene( diff --git a/applications/subghz/scenes/subghz_scene_read_raw.c b/applications/subghz/scenes/subghz_scene_read_raw.c index 7bf5576e..c9d59d8d 100644 --- a/applications/subghz/scenes/subghz_scene_read_raw.c +++ b/applications/subghz/scenes/subghz_scene_read_raw.c @@ -2,6 +2,9 @@ #include "../views/subghz_read_raw.h" #include #include +#include + +#define RAW_FILE_NAME "Raw_temp" static void subghz_scene_read_raw_update_statusbar(void* context) { furi_assert(context); @@ -27,13 +30,20 @@ void subghz_scene_read_raw_callback(SubghzCustomEvent event, void* context) { view_dispatcher_send_custom_event(subghz->view_dispatcher, event); } +void subghz_scene_read_raw_callback_end_tx(void* context) { + furi_assert(context); + SubGhz* subghz = context; + view_dispatcher_send_custom_event( + subghz->view_dispatcher, SubghzCustomEventViewReadRAWSendStop); +} + void subghz_scene_read_raw_on_enter(void* context) { SubGhz* subghz = context; - if(subghz->txrx->rx_key_state == SubGhzRxKeyStateNeedSave) { - view_dispatcher_send_custom_event( - subghz->view_dispatcher, SubghzCustomEventViewReadRAWMore); + if(subghz->txrx->rx_key_state == SubGhzRxKeyStateBack) { + subghz_read_raw_set_status(subghz->subghz_read_raw, SubghzReadRAWStatusIDLE); } else { + subghz_read_raw_set_status(subghz->subghz_read_raw, SubghzReadRAWStatusStart); subghz->txrx->rx_key_state = SubGhzRxKeyStateIDLE; } @@ -46,6 +56,11 @@ void subghz_scene_read_raw_on_enter(void* context) { subghz_worker_set_pair_callback( subghz->txrx->worker, (SubGhzWorkerPairCallback)subghz_parser_raw_parse); + subghz_protocol_raw_file_encoder_worker_set_callback_end( + (SubGhzProtocolRAW*)subghz->txrx->protocol_result, + subghz_scene_read_raw_callback_end_tx, + subghz); + view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewReadRAW); } @@ -54,20 +69,29 @@ bool subghz_scene_read_raw_on_event(void* context, SceneManagerEvent event) { if(event.type == SceneManagerEventTypeCustom) { switch(event.event) { case SubghzCustomEventViewReadRAWBack: + //Stop TX + if(subghz->txrx->txrx_state == SubGhzTxRxStateTx) { + subghz_tx_stop(subghz); + subghz_sleep(subghz); + } + //Stop RX if(subghz->txrx->txrx_state == SubGhzTxRxStateRx) { subghz_rx_end(subghz); subghz_sleep(subghz); }; - subghz->txrx->frequency = subghz_frequencies[subghz_frequencies_433_92]; - subghz->txrx->preset = FuriHalSubGhzPresetOok650Async; + //Stop save file subghz_protocol_raw_save_to_file_stop( (SubGhzProtocolRAW*)subghz->txrx->protocol_result); subghz->state_notifications = SubGhzNotificationStateIDLE; - - if(subghz->txrx->rx_key_state == SubGhzRxKeyStateAddKey) { + //needed save? + if((subghz->txrx->rx_key_state == SubGhzRxKeyStateAddKey) || + (subghz->txrx->rx_key_state == SubGhzRxKeyStateBack)) { subghz->txrx->rx_key_state = SubGhzRxKeyStateExit; scene_manager_next_scene(subghz->scene_manager, SubGhzSceneNeedSaving); } else { + //Restore default setting + subghz->txrx->frequency = subghz_frequencies[subghz_frequencies_433_92]; + subghz->txrx->preset = FuriHalSubGhzPresetOok650Async; scene_manager_search_and_switch_to_previous_scene( subghz->scene_manager, SubGhzSceneStart); } @@ -80,6 +104,67 @@ bool subghz_scene_read_raw_on_event(void* context, SceneManagerEvent event) { scene_manager_next_scene(subghz->scene_manager, SubGhzSceneReceiverConfig); return true; break; + case SubghzCustomEventViewReadRAWErase: + subghz->txrx->rx_key_state = SubGhzRxKeyStateIDLE; + return true; + break; + case SubghzCustomEventViewReadRAWVibro: + notification_message(subghz->notifications, &sequence_single_vibro); + return true; + break; + case SubghzCustomEventViewReadRAWSendStart: + //set the path to read the file + if(strcmp( + subghz_protocol_raw_get_last_file_name( + (SubGhzProtocolRAW*)subghz->txrx->protocol_result), + "")) { + string_t temp_str; + string_init_printf( + temp_str, + "%s", + subghz_protocol_raw_get_last_file_name( + (SubGhzProtocolRAW*)subghz->txrx->protocol_result)); + path_extract_filename_no_ext(string_get_cstr(temp_str), temp_str); + strlcpy( + subghz->file_name, + string_get_cstr(temp_str), + strlen(string_get_cstr(temp_str)) + 1); + string_printf( + temp_str, + "%s/%s%s", + SUBGHZ_APP_PATH_FOLDER, + subghz->file_name, + SUBGHZ_APP_EXTENSION); + + subghz_protocol_raw_set_last_file_name( + (SubGhzProtocolRAW*)subghz->txrx->protocol_result, string_get_cstr(temp_str)); + string_clear(temp_str); + //start send + subghz->state_notifications = SubGhzNotificationStateIDLE; + if(subghz->txrx->txrx_state == SubGhzTxRxStateRx) { + subghz_rx_end(subghz); + } + if((subghz->txrx->txrx_state == SubGhzTxRxStateIDLE) || + (subghz->txrx->txrx_state == SubGhzTxRxStateSleep)) { + if(!subghz_tx_start(subghz)) { + scene_manager_next_scene(subghz->scene_manager, SubGhzSceneShowOnlyRx); + } else { + subghz->state_notifications = SubGhzNotificationStateTX; + subghz->txrx->rx_key_state = SubGhzRxKeyStateAddKey; + } + } + } + return true; + break; + case SubghzCustomEventViewReadRAWSendStop: + subghz->state_notifications = SubGhzNotificationStateIDLE; + if(subghz->txrx->txrx_state == SubGhzTxRxStateTx) { + subghz_tx_stop(subghz); + subghz_sleep(subghz); + } + subghz_read_raw_stop_send(subghz->subghz_read_raw); + return true; + break; case SubghzCustomEventViewReadRAWIDLE: if(subghz->txrx->txrx_state == SubGhzTxRxStateRx) { subghz_rx_end(subghz); @@ -101,7 +186,7 @@ bool subghz_scene_read_raw_on_event(void* context, SceneManagerEvent event) { subghz_get_preset_name(subghz, subghz->error_str); if(subghz_protocol_raw_save_to_file_init( (SubGhzProtocolRAW*)subghz->txrx->protocol_result, - "Raw_temp", + RAW_FILE_NAME, subghz->txrx->frequency, string_get_cstr(subghz->error_str))) { if((subghz->txrx->txrx_state == SubGhzTxRxStateIDLE) || @@ -118,21 +203,25 @@ bool subghz_scene_read_raw_on_event(void* context, SceneManagerEvent event) { return true; break; - case SubghzCustomEventViewReadRAWMore: + case SubghzCustomEventViewReadRAWSave: if(strcmp( subghz_protocol_raw_get_last_file_name( (SubGhzProtocolRAW*)subghz->txrx->protocol_result), "")) { - strlcpy( - subghz->file_name, - subghz_protocol_raw_get_last_file_name( - (SubGhzProtocolRAW*)subghz->txrx->protocol_result), - strlen(subghz_protocol_raw_get_last_file_name( - (SubGhzProtocolRAW*)subghz->txrx->protocol_result)) + - 1); - //set the path to read the file string_t temp_str; string_init_printf( + temp_str, + "%s", + subghz_protocol_raw_get_last_file_name( + (SubGhzProtocolRAW*)subghz->txrx->protocol_result)); + path_extract_filename_no_ext(string_get_cstr(temp_str), temp_str); + strlcpy( + subghz->file_name, + string_get_cstr(temp_str), + strlen(string_get_cstr(temp_str)) + 1); + + //set the path to read the file + string_printf( temp_str, "%s/%s%s", SUBGHZ_APP_PATH_FOLDER, @@ -142,7 +231,10 @@ bool subghz_scene_read_raw_on_event(void* context, SceneManagerEvent event) { (SubGhzProtocolRAW*)subghz->txrx->protocol_result, string_get_cstr(temp_str)); string_clear(temp_str); - scene_manager_next_scene(subghz->scene_manager, SubGhzSceneReadRAWMenu); + scene_manager_set_scene_state( + subghz->scene_manager, SubGhzSceneReadRAW, SubghzCustomEventManagerSet); + subghz->txrx->rx_key_state = SubGhzRxKeyStateBack; + scene_manager_next_scene(subghz->scene_manager, SubGhzSceneSaveName); } return true; break; @@ -160,6 +252,10 @@ bool subghz_scene_read_raw_on_event(void* context, SceneManagerEvent event) { (SubGhzProtocolRAW*)subghz->txrx->protocol_result)); subghz_read_raw_add_data_rssi(subghz->subghz_read_raw, furi_hal_subghz_get_rssi()); break; + case SubGhzNotificationStateTX: + notification_message(subghz->notifications, &sequence_blink_green_10); + subghz_read_raw_update_sin(subghz->subghz_read_raw); + break; default: break; } diff --git a/applications/subghz/scenes/subghz_scene_read_raw_menu.c b/applications/subghz/scenes/subghz_scene_read_raw_menu.c deleted file mode 100644 index 2c6deefc..00000000 --- a/applications/subghz/scenes/subghz_scene_read_raw_menu.c +++ /dev/null @@ -1,72 +0,0 @@ -#include "../subghz_i.h" - -enum SubmenuIndex { - SubmenuIndexEmulate, - SubmenuIndexEdit, - SubmenuIndexDelete, -}; - -void subghz_scene_read_raw_menu_submenu_callback(void* context, uint32_t index) { - SubGhz* subghz = context; - view_dispatcher_send_custom_event(subghz->view_dispatcher, index); -} - -void subghz_scene_read_raw_menu_on_enter(void* context) { - SubGhz* subghz = context; - submenu_add_item( - subghz->submenu, - "Emulate", - SubmenuIndexEmulate, - subghz_scene_read_raw_menu_submenu_callback, - subghz); - - submenu_add_item( - subghz->submenu, - "Save", - SubmenuIndexEdit, - subghz_scene_read_raw_menu_submenu_callback, - subghz); - - submenu_add_item( - subghz->submenu, - "Delete", - SubmenuIndexDelete, - subghz_scene_read_raw_menu_submenu_callback, - subghz); - - submenu_set_selected_item( - subghz->submenu, - scene_manager_get_scene_state(subghz->scene_manager, SubGhzSceneSavedMenu)); - - view_dispatcher_switch_to_view(subghz->view_dispatcher, SubGhzViewMenu); -} - -bool subghz_scene_read_raw_menu_on_event(void* context, SceneManagerEvent event) { - SubGhz* subghz = context; - - if(event.type == SceneManagerEventTypeCustom) { - if(event.event == SubmenuIndexEmulate) { - scene_manager_set_scene_state( - subghz->scene_manager, SubGhzSceneReadRAWMenu, SubmenuIndexEmulate); - scene_manager_next_scene(subghz->scene_manager, SubGhzSceneTransmitter); - return true; - } else if(event.event == SubmenuIndexDelete) { - scene_manager_set_scene_state( - subghz->scene_manager, SubGhzSceneReadRAWMenu, SubmenuIndexDelete); - scene_manager_next_scene(subghz->scene_manager, SubGhzSceneDelete); - return true; - } else if(event.event == SubmenuIndexEdit) { - scene_manager_set_scene_state( - subghz->scene_manager, SubGhzSceneReadRAWMenu, SubghzCustomEventManagerSet); - scene_manager_next_scene(subghz->scene_manager, SubGhzSceneSaveName); - return true; - } - } - return false; -} - -void subghz_scene_read_raw_menu_on_exit(void* context) { - SubGhz* subghz = context; - submenu_clean(subghz->submenu); - subghz->txrx->rx_key_state = SubGhzRxKeyStateIDLE; -} diff --git a/applications/subghz/scenes/subghz_scene_save_name.c b/applications/subghz/scenes/subghz_scene_save_name.c index d448119c..4442d39d 100644 --- a/applications/subghz/scenes/subghz_scene_save_name.c +++ b/applications/subghz/scenes/subghz_scene_save_name.c @@ -2,6 +2,7 @@ #include #include "file-worker.h" #include "../helpers/subghz_custom_event.h" +#include void subghz_scene_save_name_text_input_callback(void* context) { SubGhz* subghz = context; @@ -17,14 +18,16 @@ void subghz_scene_save_name_on_enter(void* context) { if(!strcmp(subghz->file_name, "")) { set_random_name(subghz->file_name, sizeof(subghz->file_name)); - dev_name_empty = true; + } else { memcpy(subghz->file_name_tmp, subghz->file_name, strlen(subghz->file_name) + 1); - if(scene_manager_get_scene_state(subghz->scene_manager, SubGhzSceneReadRAWMenu) == + if(scene_manager_get_scene_state(subghz->scene_manager, SubGhzSceneReadRAW) == SubghzCustomEventManagerSet) { subghz_get_next_name_file(subghz); } } + //highlighting the entire filename by default + dev_name_empty = true; text_input_set_header_text(text_input, "Name signal"); text_input_set_result_callback( @@ -49,6 +52,11 @@ bool subghz_scene_save_name_on_event(void* context, SceneManagerEvent event) { subghz_save_protocol_to_file(subghz, subghz->file_name); } + if(scene_manager_get_scene_state(subghz->scene_manager, SubGhzSceneReadRAW) == + SubghzCustomEventManagerSet) { + subghz_protocol_raw_set_last_file_name( + (SubGhzProtocolRAW*)subghz->txrx->protocol_result, subghz->file_name); + } subghz_file_name_clear(subghz); scene_manager_next_scene(subghz->scene_manager, SubGhzSceneSaveSuccess); return true; @@ -68,5 +76,5 @@ void subghz_scene_save_name_on_exit(void* context) { // Clear view text_input_clean(subghz->text_input); scene_manager_set_scene_state( - subghz->scene_manager, SubGhzSceneReadRAWMenu, SubghzCustomEventManagerNoSet); + subghz->scene_manager, SubGhzSceneReadRAW, SubghzCustomEventManagerNoSet); } diff --git a/applications/subghz/scenes/subghz_scene_save_success.c b/applications/subghz/scenes/subghz_scene_save_success.c index 31e7d3ee..7509abd8 100644 --- a/applications/subghz/scenes/subghz_scene_save_success.c +++ b/applications/subghz/scenes/subghz_scene_save_success.c @@ -26,8 +26,11 @@ bool subghz_scene_save_success_on_event(void* context, SceneManagerEvent event) if(event.event == SubghzCustomEventSceneSaveSuccess) { if(!scene_manager_search_and_switch_to_previous_scene( subghz->scene_manager, SubGhzSceneReceiver)) { - scene_manager_search_and_switch_to_previous_scene( - subghz->scene_manager, SubGhzSceneStart); + if(!scene_manager_search_and_switch_to_previous_scene( + subghz->scene_manager, SubGhzSceneReadRAW)) { + scene_manager_search_and_switch_to_previous_scene( + subghz->scene_manager, SubGhzSceneStart); + } } return true; } diff --git a/applications/subghz/scenes/subghz_scene_start.c b/applications/subghz/scenes/subghz_scene_start.c index 3b5b5cd1..ecdfde12 100644 --- a/applications/subghz/scenes/subghz_scene_start.c +++ b/applications/subghz/scenes/subghz_scene_start.c @@ -23,7 +23,7 @@ void subghz_scene_start_on_enter(void* context) { subghz->submenu, "Read", SubmenuIndexRead, subghz_scene_start_submenu_callback, subghz); submenu_add_item( subghz->submenu, - "Read Raw", + "Read RAW", SubmenuIndexReadRAW, subghz_scene_start_submenu_callback, subghz); @@ -57,6 +57,7 @@ bool subghz_scene_start_on_event(void* context, SceneManagerEvent event) { if(event.event == SubmenuIndexReadRAW) { scene_manager_set_scene_state( subghz->scene_manager, SubGhzSceneStart, SubmenuIndexReadRAW); + subghz->txrx->rx_key_state = SubGhzRxKeyStateIDLE; scene_manager_next_scene(subghz->scene_manager, SubGhzSceneReadRAW); return true; } else if(event.event == SubmenuIndexRead) { diff --git a/applications/subghz/subghz_i.h b/applications/subghz/subghz_i.h index ef27721d..e459642d 100644 --- a/applications/subghz/subghz_i.h +++ b/applications/subghz/subghz_i.h @@ -70,6 +70,7 @@ typedef enum { SubGhzRxKeyStateIDLE, SubGhzRxKeyStateNoSave, SubGhzRxKeyStateNeedSave, + SubGhzRxKeyStateBack, SubGhzRxKeyStateAddKey, SubGhzRxKeyStateExit, } SubGhzRxKeyState; diff --git a/applications/subghz/views/subghz_read_raw.c b/applications/subghz/views/subghz_read_raw.c index fb9d694b..11b711d7 100644 --- a/applications/subghz/views/subghz_read_raw.c +++ b/applications/subghz/views/subghz_read_raw.c @@ -11,13 +11,6 @@ #include #define SUBGHZ_READ_RAW_RSSI_HISTORY_SIZE 100 -typedef enum { - SubghzReadRAWStatusStart, - SubghzReadRAWStatusIDLE, - SubghzReadRAWStatusREC, - //SubghzReadRAWStatusShowName, -} SubghzReadRAWStatus; - struct SubghzReadRAW { View* view; SubghzReadRAWCallback callback; @@ -31,6 +24,7 @@ typedef struct { uint8_t* rssi_history; bool rssi_history_end; uint8_t ind_write; + uint8_t ind_sin; SubghzReadRAWStatus satus; } SubghzReadRAWModel; @@ -89,6 +83,88 @@ void subghz_read_raw_update_sample_write(SubghzReadRAW* instance, size_t sample) }); } +void subghz_read_raw_stop_send(SubghzReadRAW* instance) { + furi_assert(instance); + + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + if(model->satus == SubghzReadRAWStatusTXRepeat) { + // Start TX + instance->callback(SubghzCustomEventViewReadRAWSendStart, instance->context); + } else { + model->satus = SubghzReadRAWStatusIDLE; + } + return true; + }); +} + +void subghz_read_raw_update_sin(SubghzReadRAW* instance) { + furi_assert(instance); + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + if(model->ind_sin++ > 62) { + model->ind_sin = 0; + } + return true; + }); +} + +static int8_t subghz_read_raw_tab_sin(uint8_t x) { + const uint8_t tab_sin[64] = {0, 3, 6, 9, 12, 16, 19, 22, 25, 28, 31, 34, 37, + 40, 43, 46, 49, 51, 54, 57, 60, 63, 65, 68, 71, 73, + 76, 78, 81, 83, 85, 88, 90, 92, 94, 96, 98, 100, 102, + 104, 106, 107, 109, 111, 112, 113, 115, 116, 117, 118, 120, 121, + 122, 122, 123, 124, 125, 125, 126, 126, 126, 127, 127, 127}; + + int8_t r = tab_sin[((x & 0x40) ? -x - 1 : x) & 0x3f]; + if(x & 0x80) return -r; + return r; +} + +void subghz_read_raw_draw_sin(Canvas* canvas, SubghzReadRAWModel* model) { +#define SUBGHZ_RAW_SIN_AMPLITUDE 11 + for(int i = 113; i > 0; i--) { + canvas_draw_line( + canvas, + i, + 32 - subghz_read_raw_tab_sin(i + model->ind_sin * 16) / SUBGHZ_RAW_SIN_AMPLITUDE, + i + 1, + 32 + subghz_read_raw_tab_sin((i + model->ind_sin * 16 + 1) * 2) / + SUBGHZ_RAW_SIN_AMPLITUDE); + canvas_draw_line( + canvas, + i + 1, + 32 - subghz_read_raw_tab_sin((i + model->ind_sin * 16)) / SUBGHZ_RAW_SIN_AMPLITUDE, + i + 2, + 32 + subghz_read_raw_tab_sin((i + model->ind_sin * 16 + 1) * 2) / + SUBGHZ_RAW_SIN_AMPLITUDE); + } +} + +void subghz_read_raw_draw_scale(Canvas* canvas, SubghzReadRAWModel* model) { +#define SUBGHZ_RAW_TOP_SCALE 14 +#define SUBGHZ_RAW_END_SCALE 115 + + if(model->rssi_history_end == false) { + for(int i = SUBGHZ_RAW_END_SCALE; i > 0; i -= 15) { + canvas_draw_line(canvas, i, SUBGHZ_RAW_TOP_SCALE, i, SUBGHZ_RAW_TOP_SCALE + 4); + canvas_draw_line(canvas, i - 5, SUBGHZ_RAW_TOP_SCALE, i - 5, SUBGHZ_RAW_TOP_SCALE + 2); + canvas_draw_line( + canvas, i - 10, SUBGHZ_RAW_TOP_SCALE, i - 10, SUBGHZ_RAW_TOP_SCALE + 2); + } + } else { + for(int i = SUBGHZ_RAW_END_SCALE - model->ind_write % 15; i > -15; i -= 15) { + canvas_draw_line(canvas, i, SUBGHZ_RAW_TOP_SCALE, i, SUBGHZ_RAW_TOP_SCALE + 4); + if(SUBGHZ_RAW_END_SCALE > i + 5) + canvas_draw_line( + canvas, i + 5, SUBGHZ_RAW_TOP_SCALE, i + 5, SUBGHZ_RAW_TOP_SCALE + 2); + if(SUBGHZ_RAW_END_SCALE > i + 10) + canvas_draw_line( + canvas, i + 10, SUBGHZ_RAW_TOP_SCALE, i + 10, SUBGHZ_RAW_TOP_SCALE + 2); + } + } +} + void subghz_read_raw_draw_rssi(Canvas* canvas, SubghzReadRAWModel* model) { int ind = 0; int base = 0; @@ -134,17 +210,26 @@ void subghz_read_raw_draw(Canvas* canvas, SubghzReadRAWModel* model) { canvas, 126, 0, AlignRight, AlignTop, string_get_cstr(model->sample_write)); canvas_draw_line(canvas, 0, 14, 115, 14); - subghz_read_raw_draw_rssi(canvas, model); canvas_draw_line(canvas, 0, 48, 115, 48); canvas_draw_line(canvas, 115, 14, 115, 48); + if((model->satus == SubghzReadRAWStatusTX) || (model->satus == SubghzReadRAWStatusTXRepeat)) { + subghz_read_raw_draw_sin(canvas, model); + } else { + subghz_read_raw_draw_rssi(canvas, model); + subghz_read_raw_draw_scale(canvas, model); + } + if(model->satus == SubghzReadRAWStatusIDLE) { - elements_button_left(canvas, "Config"); - elements_button_center(canvas, "REC"); - elements_button_right(canvas, "More"); + elements_button_left(canvas, "Erase"); + elements_button_center(canvas, "Send"); + elements_button_right(canvas, "Save"); } else if(model->satus == SubghzReadRAWStatusStart) { elements_button_left(canvas, "Config"); elements_button_center(canvas, "REC"); + } else if( + (model->satus == SubghzReadRAWStatusTX) || (model->satus == SubghzReadRAWStatusTXRepeat)) { + elements_button_center(canvas, "Send"); } else { elements_button_center(canvas, "Stop"); } @@ -158,58 +243,118 @@ bool subghz_read_raw_input(InputEvent* event, void* context) { furi_assert(context); SubghzReadRAW* instance = context; - if(event->key == InputKeyBack && event->type == InputTypeShort) { - instance->callback(SubghzCustomEventViewReadRAWBack, instance->context); + if((event->key == InputKeyOk) && + (event->type == InputTypeLong || event->type == InputTypeRepeat)) { + //we check that if we hold the transfer button, + //further check of events is not needed, we exit + return false; + } else if(event->key == InputKeyOk && event->type == InputTypePress) { + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + uint8_t ret = false; + if(model->satus == SubghzReadRAWStatusIDLE) { + // Start TX + instance->callback(SubghzCustomEventViewReadRAWSendStart, instance->context); + instance->callback(SubghzCustomEventViewReadRAWVibro, instance->context); + model->satus = SubghzReadRAWStatusTXRepeat; + ret = true; + } else if(model->satus == SubghzReadRAWStatusTX) { + model->satus = SubghzReadRAWStatusTXRepeat; + } + return ret; + }); + } else if(event->key == InputKeyOk && event->type == InputTypeRelease) { + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + if(model->satus == SubghzReadRAWStatusTXRepeat) { + // Stop repeat TX + model->satus = SubghzReadRAWStatusTX; + } + return false; + }); + } else if(event->key == InputKeyBack && event->type == InputTypeShort) { + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + if(model->satus == SubghzReadRAWStatusREC) { + //Stop REC + instance->callback(SubghzCustomEventViewReadRAWIDLE, instance->context); + model->satus = SubghzReadRAWStatusIDLE; + } else { + //Exit + instance->callback(SubghzCustomEventViewReadRAWBack, instance->context); + } + return true; + }); } else if(event->key == InputKeyLeft && event->type == InputTypeShort) { with_view_model( instance->view, (SubghzReadRAWModel * model) { - if(model->satus == SubghzReadRAWStatusIDLE || - model->satus == SubghzReadRAWStatusStart) { + if(model->satus == SubghzReadRAWStatusStart) { + //Config instance->callback(SubghzCustomEventViewReadRAWConfig, instance->context); + } else if(model->satus == SubghzReadRAWStatusIDLE) { + //Erase + model->satus = SubghzReadRAWStatusStart; + model->rssi_history_end = false; + model->ind_write = 0; + string_set(model->sample_write, "0 spl."); + instance->callback(SubghzCustomEventViewReadRAWErase, instance->context); } return true; }); } else if(event->key == InputKeyRight && event->type == InputTypeShort) { with_view_model( instance->view, (SubghzReadRAWModel * model) { + //Save if(model->satus == SubghzReadRAWStatusIDLE) { - instance->callback(SubghzCustomEventViewReadRAWMore, instance->context); + instance->callback(SubghzCustomEventViewReadRAWSave, instance->context); } return true; }); } else if(event->key == InputKeyOk && event->type == InputTypeShort) { with_view_model( instance->view, (SubghzReadRAWModel * model) { - if(model->satus == SubghzReadRAWStatusIDLE || - model->satus == SubghzReadRAWStatusStart) { + if(model->satus == SubghzReadRAWStatusStart) { + //Record instance->callback(SubghzCustomEventViewReadRAWREC, instance->context); model->satus = SubghzReadRAWStatusREC; model->ind_write = 0; model->rssi_history_end = false; - } else { + } else if( + (model->satus != SubghzReadRAWStatusTX) && + (model->satus != SubghzReadRAWStatusTXRepeat)) { + //Stop instance->callback(SubghzCustomEventViewReadRAWIDLE, instance->context); model->satus = SubghzReadRAWStatusIDLE; } return true; }); } - return true; } +void subghz_read_raw_set_status(SubghzReadRAW* instance, SubghzReadRAWStatus satus) { + furi_assert(instance); + if(satus == SubghzReadRAWStatusStart) { + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + model->satus = SubghzReadRAWStatusStart; + model->rssi_history_end = false; + model->ind_write = 0; + string_set(model->sample_write, "0 spl."); + return true; + }); + } else if(satus == SubghzReadRAWStatusIDLE) { + with_view_model( + instance->view, (SubghzReadRAWModel * model) { + model->satus = SubghzReadRAWStatusIDLE; + return true; + }); + } +} + void subghz_read_raw_enter(void* context) { furi_assert(context); - SubghzReadRAW* instance = context; - - with_view_model( - instance->view, (SubghzReadRAWModel * model) { - model->satus = SubghzReadRAWStatusStart; - model->rssi_history = furi_alloc(SUBGHZ_READ_RAW_RSSI_HISTORY_SIZE * sizeof(uint8_t)); - model->rssi_history_end = false; - model->ind_write = 0; - string_set(model->sample_write, "0 spl."); - return true; - }); + //SubghzReadRAW* instance = context; } void subghz_read_raw_exit(void* context) { @@ -223,10 +368,6 @@ void subghz_read_raw_exit(void* context) { instance->callback(SubghzCustomEventViewReadRAWIDLE, instance->context); model->satus = SubghzReadRAWStatusStart; } - string_reset(model->frequency_str); - string_reset(model->preset_str); - string_reset(model->sample_write); - free(model->rssi_history); return true; }); } @@ -248,6 +389,7 @@ SubghzReadRAW* subghz_read_raw_alloc() { string_init(model->frequency_str); string_init(model->preset_str); string_init(model->sample_write); + model->rssi_history = furi_alloc(SUBGHZ_READ_RAW_RSSI_HISTORY_SIZE * sizeof(uint8_t)); return true; }); @@ -262,6 +404,7 @@ void subghz_read_raw_free(SubghzReadRAW* instance) { string_clear(model->frequency_str); string_clear(model->preset_str); string_clear(model->sample_write); + free(model->rssi_history); return true; }); view_free(instance->view); diff --git a/applications/subghz/views/subghz_read_raw.h b/applications/subghz/views/subghz_read_raw.h index d6a2337f..6e1f79da 100644 --- a/applications/subghz/views/subghz_read_raw.h +++ b/applications/subghz/views/subghz_read_raw.h @@ -7,6 +7,14 @@ typedef struct SubghzReadRAW SubghzReadRAW; typedef void (*SubghzReadRAWCallback)(SubghzCustomEvent event, void* context); +typedef enum { + SubghzReadRAWStatusStart, + SubghzReadRAWStatusIDLE, + SubghzReadRAWStatusREC, + SubghzReadRAWStatusTX, + SubghzReadRAWStatusTXRepeat, +} SubghzReadRAWStatus; + void subghz_read_raw_set_callback( SubghzReadRAW* subghz_read_raw, SubghzReadRAWCallback callback, @@ -23,6 +31,12 @@ void subghz_read_raw_add_data_statusbar( void subghz_read_raw_update_sample_write(SubghzReadRAW* instance, size_t sample); +void subghz_read_raw_stop_send(SubghzReadRAW* instance); + +void subghz_read_raw_update_sin(SubghzReadRAW* instance); + void subghz_read_raw_add_data_rssi(SubghzReadRAW* instance, float rssi); +void subghz_read_raw_set_status(SubghzReadRAW* instance, SubghzReadRAWStatus satus); + View* subghz_read_raw_get_view(SubghzReadRAW* subghz_static); diff --git a/applications/subghz/views/subghz_test_carrier.c b/applications/subghz/views/subghz_test_carrier.c index 1217240e..e6e1ac30 100644 --- a/applications/subghz/views/subghz_test_carrier.c +++ b/applications/subghz/views/subghz_test_carrier.c @@ -152,7 +152,7 @@ void subghz_test_carrier_enter(void* context) { furi_hal_subghz_rx(); - osTimerStart(subghz_test_carrier->timer, 1024 / 4); + osTimerStart(subghz_test_carrier->timer, osKernelGetTickFreq() / 4); } void subghz_test_carrier_exit(void* context) { diff --git a/applications/subghz/views/subghz_test_packet.c b/applications/subghz/views/subghz_test_packet.c index 2d4b4aea..0fb05717 100644 --- a/applications/subghz/views/subghz_test_packet.c +++ b/applications/subghz/views/subghz_test_packet.c @@ -198,7 +198,7 @@ void subghz_test_packet_enter(void* context) { furi_hal_subghz_start_async_rx(subghz_test_packet_rx_callback, instance); - osTimerStart(instance->timer, 1024 / 4); + osTimerStart(instance->timer, osKernelGetTickFreq() / 4); } void subghz_test_packet_exit(void* context) { diff --git a/assets/compiled/assets_icons.c b/assets/compiled/assets_icons.c index 65178a9c..88a69620 100644 --- a/assets/compiled/assets_icons.c +++ b/assets/compiled/assets_icons.c @@ -8,22 +8,252 @@ const uint8_t *_I_Certification2_119x30[] = {_I_Certification2_119x30_0}; const uint8_t _I_Certification1_103x23_0[] = {0x01,0x00,0x98,0x00,0x9f,0xff,0xbe,0x30,0x38,0x04,0xf2,0x01,0xe0,0x80,0x82,0x87,0xf9,0x01,0x06,0x24,0xfe,0x01,0xf8,0x80,0xfe,0x21,0xff,0xf8,0x3c,0xff,0x9c,0x0c,0x1e,0x00,0x30,0x7f,0xc0,0xc1,0xe3,0xc0,0xe3,0xd0,0x7e,0x75,0xc4,0x46,0x30,0x70,0xd9,0x46,0x3c,0x10,0x09,0xc0,0x30,0xfe,0x10,0x1c,0x04,0x3c,0x18,0x37,0x08,0x05,0xc0,0x18,0x77,0x88,0x07,0x00,0x6e,0x31,0x89,0x87,0xe2,0x00,0x0c,0x39,0xc0,0x30,0x49,0x83,0x18,0x8c,0x7f,0xa0,0x60,0xc3,0x2c,0xa0,0x30,0x60,0xe0,0x01,0x06,0x14,0x70,0x18,0x26,0x51,0x8c,0x43,0x20,0x70,0x20,0x64,0xe3,0x03,0xa2,0x74,0x10,0x62,0x5f,0xce,0xc3,0x8f,0x06,0x78,0x31,0xc4,0xc6,0x33,0xc2,0x6f,0x99,0xf5,0x03,0x89,0xb7,0xb0,0x2d,0x7d,0x9f,0x2e,0x98,0x8c,0x0a,0x86,0x3c,0x0c,0x30,0xb9,0x7e,0x20,0x30,0x88,0x07,0xfe,0x0e,0x0c,0x42,0xda,0x40,0x3f,0x90,0x10,}; const uint8_t *_I_Certification1_103x23[] = {_I_Certification1_103x23_0}; -const uint8_t _A_WatchingTV_128x64_0[] = {0x01,0x00,0x32,0x02,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1f,0x80,0x01,0x15,0x04,0x21,0x70,0x18,0x05,0x02,0x42,0x09,0x5f,0xfc,0x7c,0x0a,0x70,0x20,0x78,0xc4,0x41,0xc9,0xc0,0x80,0x58,0x01,0xf9,0x20,0x1d,0x98,0x00,0x60,0x80,0x81,0x84,0x83,0xd2,0x20,0x3b,0x30,0x00,0xc2,0x01,0xe3,0x06,0x07,0xa0,0x20,0x45,0x64,0x16,0x30,0x7b,0x0a,0x04,0x04,0x60,0xf3,0x85,0x03,0xd0,0x38,0x42,0x22,0x23,0x14,0x80,0x9e,0xa0,0xf2,0x21,0x11,0x74,0x60,0x1a,0x00,0x90,0xa2,0x14,0x1e,0x86,0x41,0xa8,0x04,0x84,0x1e,0xc1,0x83,0x07,0x8c,0xc0,0xee,0x80,0xf7,0x03,0x88,0x3c,0x6f,0xfe,0x00,0xb9,0x40,0xf0,0x10,0xf0,0x7a,0x40,0x86,0xa3,0x80,0xcf,0x83,0xcc,0x06,0x2b,0x04,0x82,0x46,0x1c,0xaa,0x0f,0x22,0x42,0x41,0x22,0x80,0x84,0x07,0x8f,0x82,0x7e,0x1f,0x48,0x44,0x90,0x1e,0x9c,0x08,0x0c,0x82,0xce,0x1f,0x48,0x84,0x88,0x06,0x33,0x01,0xd9,0xd8,0x34,0xfa,0x00,0x79,0xfe,0x28,0xe0,0x31,0x86,0x00,0x84,0x8a,0x3c,0x0a,0x9f,0x04,0x1e,0x70,0x6a,0xc0,0x0c,0x49,0x64,0x12,0x1c,0x06,0xbc,0x3e,0x90,0x11,0x48,0xfc,0x02,0xc6,0x02,0x1a,0x87,0x41,0x3e,0x94,0x0f,0xc4,0x3c,0x0e,0x42,0x22,0x64,0x8b,0x3d,0x30,0x0f,0x63,0x57,0x1c,0x00,0x3e,0x5f,0xff,0xfc,0x3c,0x1e,0x83,0x22,0x40,0x8e,0xa0,0x08,0x35,0x5a,0xaf,0xd4,0x24,0x21,0x31,0x80,0x6b,0x8e,0x25,0x04,0xea,0x01,0xc7,0x54,0x00,0x48,0x76,0x03,0xaa,0x0f,0x18,0xe4,0x02,0xf1,0x35,0x0f,0x90,0x00,0xe1,0xfc,0x0d,0x57,0xff,0xc2,0x51,0x18,0x65,0xa8,0x3e,0xbe,0xa8,0x55,0x83,0x03,0x01,0x8f,0x1d,0xc6,0x0d,0xd4,0x0f,0xad,0xd6,0x1a,0xf9,0x10,0xe8,0xbd,0xc4,0xa0,0x30,0x10,0xfa,0x6b,0xa1,0x40,0xf1,0x25,0x0c,0xbb,0x01,0x01,0xa8,0x40,0xc3,0xe9,0x57,0x9e,0xcf,0xb0,0x06,0x61,0x82,0xd0,0x20,0x3a,0x88,0x10,0xf9,0x35,0x5c,0xa9,0x0e,0x00,0x0c,0x30,0x24,0xf0,0x87,0xc4,0xf8,0x5f,0xfb,0xfd,0x54,0x7e,0x38,0x01,0x28,0xc0,0x53,0xc3,0xe8,0x83,0xe2,0x00,0x05,0xb8,0xd5,0x0f,0xc6,0x80,0x1e,0x13,0x58,0xbd,0x06,0x30,0x3e,0x40,0xf9,0x31,0x85,0x56,0x50,0x08,0x24,0x82,0x44,0x00,0x1d,0x16,0xcc,0x3e,0x34,0x00,0x79,0x60,0x11,0xa3,0x02,0x90,0x1f,0x4c,0x04,0x30,0xdc,0x00,0x3c,0xa8,0x17,0xd7,0x20,0xd0,0x07,0xc5,0x98,0x1f,0x94,0x02,0x42,0xfd,0x2a,0x3e,0x00,0x26,0x23,0xe4,0x0f,0x8c,0x02,0x7c,0xfd,0x2a,0x00,0x3c,0x8d,0xc5,0x23,0xd9,0x07,0xc8,0x00,0x56,0xa2,0x21,0x28,0x84,0x04,0x22,0x22,0x0f,0x88,0xf8,0xa6,0xa0,0xf6,0x3f,0x98,0x3c,0xb4,0x11,0xaa,0x03,0x14,0x43,0xf5,0x54,0x8a,0x83,0xce,0x63,0xfc,0xc7,0xc8,0x87,0xe8,0xc0,0x14,0x20,0xbc,0x47,0x01,0x49,0x81,0x64,0x03,0xeb,0x50,0x42,0x10,0x3d,0x47,0xe5,0x2a,0x0f,0x16,0xaa,0x1d,0x80,0x84,0x0b,0xc8,0x3e,0x95,0xd6,0x31,0x92,0x86,0x0e,0x4f,0x20,0x78,0x8f,0xcb,0xed,0xaa,0xf5,0x21,0xc4,0x1e,0x30,0x43,0xa0,0xc4,0x49,0xe2,0x1a,0x2c,0x2f,0x5e,0x3e,0x41,0x18,0xf0,0x3c,0xe5,0x27,0xf4,0x83,0x5b,0x0e,0x04,0x6d,0x10,0x78,0xc8,0x01,0xe4,0x1f,0x28,0x2c,0xe1,0x40,0x60,0xf3,0x8a,0x83,0xc4,0x7e,0x50,0x63,0x48,0xa0,0x48,0x1e,0x70,0xb0,0xfa,0x83,0xce,0x01,0x03,0x07,0x8c,0x40,}; -const uint8_t _A_WatchingTV_128x64_1[] = {0x01,0x00,0x4a,0x02,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1f,0x80,0x01,0x0f,0x02,0x80,0x10,0xb8,0x0c,0x03,0x41,0x20,0x04,0xaf,0xfe,0x3e,0x05,0x38,0x14,0x03,0xc1,0x10,0x07,0x27,0x02,0xab,0x75,0x07,0xae,0x80,0x1e,0xba,0x0d,0x56,0xa8,0x0c,0x70,0x48,0x05,0x42,0x12,0x0f,0x40,0xa8,0xd4,0x07,0x62,0x00,0x18,0x44,0x03,0x61,0x05,0x07,0xa0,0x20,0x74,0x02,0xb1,0x0b,0x20,0x18,0xc5,0x07,0x40,0x0c,0x18,0x3c,0x76,0x10,0x70,0x7a,0x05,0x47,0x01,0x0a,0x03,0x11,0xb0,0x47,0xec,0x25,0x28,0xa8,0x18,0x91,0x83,0xb0,0x2f,0xa9,0x30,0xa3,0x4a,0x04,0xac,0x23,0xd4,0x1e,0x53,0x40,0x7a,0x4a,0x38,0x1f,0xf0,0x7b,0x4a,0x00,0xe9,0x38,0x01,0x8e,0x0e,0x06,0x17,0x18,0x1e,0x02,0x1f,0x30,0x23,0xa4,0x60,0x06,0x3f,0xc2,0xe1,0x04,0x86,0x01,0x60,0x3b,0xa0,0x3c,0x8d,0x86,0x0f,0x2a,0x80,0x3d,0x22,0x83,0xc4,0x07,0x8f,0x83,0x7e,0x1f,0x48,0x44,0x90,0xa8,0x6d,0xe1,0x80,0xf8,0x2c,0xf5,0x16,0x3a,0x48,0x90,0x86,0x3b,0x2b,0x06,0x9f,0x40,0x0f,0x3f,0xc5,0x1c,0x06,0x25,0x82,0x22,0x8f,0x02,0xa7,0xd1,0x07,0x9c,0x1a,0xb0,0x03,0x18,0x60,0x08,0xf0,0x1a,0xf0,0xfa,0x40,0x6c,0x1f,0x0f,0xf9,0x6c,0xa0,0xc5,0xe2,0xe8,0x27,0xd2,0x80,0xf9,0x10,0x01,0x04,0x8a,0x01,0xa8,0x67,0xa6,0x01,0xf2,0x2a,0xe5,0x80,0x75,0x00,0x43,0xff,0xff,0xc3,0xc1,0xe9,0xf0,0x14,0x94,0x0f,0x54,0x04,0x1a,0xad,0x57,0xea,0x12,0x10,0x98,0xc0,0x35,0xc7,0x12,0x82,0x75,0x00,0xe3,0xaa,0x00,0x24,0x3b,0x01,0xd5,0x07,0x8c,0x72,0x01,0x7a,0x9a,0x87,0xc8,0x00,0x70,0xfe,0x06,0xab,0xff,0xe1,0x28,0x8e,0xb6,0xd4,0x1f,0x5f,0x54,0x2a,0xc1,0xd5,0x80,0xc7,0xac,0x18,0x0a,0xb0,0x94,0x43,0xc9,0x75,0x86,0xe8,0x35,0x41,0xd1,0xa8,0x50,0x30,0x7a,0xa8,0x08,0x7d,0x35,0xc1,0xf1,0xa0,0x12,0x86,0x5d,0xa0,0x80,0xd5,0x60,0x61,0xf4,0xab,0xcf,0x67,0xd8,0x03,0x30,0xc5,0x6a,0x01,0xd1,0x81,0x0f,0x93,0x55,0xca,0x90,0xe0,0x00,0xc3,0x0a,0x4f,0x08,0x7c,0x4f,0x85,0xff,0xbf,0xd5,0x61,0xb2,0x0c,0x00,0x94,0x60,0xa4,0xd1,0xf5,0x41,0xf1,0x00,0x02,0xdc,0x06,0x86,0x40,0x70,0x1d,0x56,0x09,0x3c,0x31,0xd8,0xc0,0xf9,0x03,0xe5,0x40,0x0f,0x08,0x08,0x5c,0x83,0x20,0x91,0x00,0x07,0x45,0xb3,0x0f,0x8d,0x01,0xac,0x30,0x0d,0x02,0x34,0x60,0x72,0x03,0xe9,0x80,0x86,0x1b,0x80,0x07,0x95,0x42,0xfa,0xe4,0x1a,0x00,0xf8,0xb3,0x03,0xf2,0x80,0x48,0x5f,0xa5,0x47,0xc0,0x3f,0x44,0x7c,0x81,0xf1,0x80,0x4f,0x81,0xe3,0xd5,0xa0,0x03,0xc8,0xdc,0x52,0x3d,0x90,0x7c,0x87,0xc6,0x44,0x2c,0x04,0x04,0x04,0x22,0x22,0x0f,0x88,0xf8,0xa6,0xa0,0xf6,0x3f,0x98,0x3c,0xb5,0x51,0xaa,0x04,0x80,0x3f,0x44,0x91,0x8a,0x83,0xce,0x63,0xfc,0xc7,0xc8,0x87,0xe9,0xa8,0x42,0x14,0x40,0x1e,0x34,0x98,0x16,0x40,0x3e,0x51,0xd3,0x41,0xa1,0x04,0x1e,0xa3,0xf2,0x00,0x24,0x3b,0x01,0x08,0x17,0x90,0x7d,0x2b,0xac,0x63,0x25,0x0c,0x1c,0x9e,0x40,0xf1,0x1f,0x97,0xdb,0x55,0xea,0x43,0x88,0x3c,0x60,0x83,0x61,0x88,0x93,0xc4,0x34,0x58,0x5e,0xbc,0x7c,0xa2,0x31,0xe0,0x79,0xca,0x4f,0xe9,0x06,0xb6,0x20,0x08,0xda,0x20,0xf1,0x90,0x03,0xc8,0x3e,0x50,0x59,0xc0,0x3c,0x93,0xa2,0x0f,0x28,0xa8,0x3c,0x47,0xe5,0x06,0x34,0x88,0x00,0x59,0xa2,0x0f,0x28,0x58,0x7d,0x41,0xe7,0x00,0x81,0x83,0xc6,0x20,}; -const uint8_t _A_WatchingTV_128x64_2[] = {0x01,0x00,0x37,0x02,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1f,0x80,0x01,0x0c,0x62,0x80,0x10,0xb8,0x0c,0x02,0x29,0x20,0x04,0xaf,0xfe,0x3e,0x05,0x38,0x14,0x02,0x39,0x10,0x07,0x27,0x02,0x01,0x60,0x07,0xac,0x58,0x1e,0xa2,0x51,0x1d,0x90,0x00,0x60,0x90,0x09,0x54,0x20,0x1e,0x81,0x52,0x1d,0x88,0x00,0x41,0x83,0x36,0x09,0x08,0x00,0xc2,0xa4,0x2b,0x10,0xb1,0xd8,0x80,0xc6,0x28,0x30,0x11,0x83,0xcb,0x8d,0x03,0x07,0xa0,0x54,0x87,0x06,0x46,0x18,0x54,0x1c,0x1e,0xe5,0x83,0x46,0x0e,0x18,0x9e,0xa4,0xc2,0x07,0x99,0x90,0x69,0x40,0xf8,0x4c,0x18,0x3c,0x64,0x80,0xfc,0x03,0x8c,0xf3,0xe1,0x3f,0xc0,0x03,0x07,0x01,0x03,0xc0,0x43,0xc1,0xe9,0x02,0x8c,0x2a,0x86,0xc0,0x0f,0x30,0x50,0xac,0x12,0x09,0x38,0x01,0x8c,0x7c,0x1e,0xae,0x84,0x82,0x45,0x1e,0xa8,0x0f,0x1f,0x04,0xfc,0x3e,0x90,0x80,0x79,0x06,0x0b,0x81,0x01,0x90,0x59,0xc3,0xe9,0x10,0x91,0x16,0x10,0x36,0x36,0x0d,0x3e,0x80,0x1e,0x7f,0x89,0x38,0x0c,0x4a,0x42,0x02,0x2e,0x05,0x4f,0x82,0x0f,0x38,0x35,0x60,0x06,0x40,0x21,0x86,0x10,0x47,0x5e,0x1f,0x48,0x0d,0x83,0x01,0xff,0x45,0x90,0x48,0xaa,0x1d,0x04,0xfa,0x50,0x2f,0x01,0x63,0x72,0x18,0x7c,0xca,0x63,0x80,0x7b,0x1a,0xb8,0xe0,0x01,0xf2,0xff,0xff,0xe1,0xe0,0xf4,0xf8,0x20,0x4f,0x50,0x04,0x1a,0xad,0x57,0xea,0x12,0x10,0x98,0xc0,0x35,0xc7,0x12,0x82,0x75,0x00,0xe3,0xaa,0x00,0x24,0x3b,0x01,0xd5,0x07,0x8c,0x72,0x01,0x78,0x9a,0x87,0xc8,0x00,0x70,0xfe,0x06,0xab,0xff,0xe1,0x28,0x8c,0x32,0xd4,0x1f,0x5f,0x54,0x2a,0xc1,0x81,0x80,0xc7,0x94,0x23,0x06,0xea,0x07,0xd6,0xeb,0x0d,0x58,0x08,0x74,0x62,0x00,0x31,0xd4,0x40,0x43,0xe9,0xae,0x85,0x03,0xc4,0x94,0x32,0xec,0x04,0x06,0xa1,0x03,0x0f,0xa5,0x5e,0x7b,0x3e,0xc0,0x19,0x86,0x0b,0x40,0x80,0xea,0x20,0x43,0xe4,0xd5,0x72,0xa4,0x38,0x00,0x30,0xc0,0x93,0xc2,0x1f,0x13,0xe1,0x7f,0xef,0xf5,0x51,0xf8,0xe0,0x04,0xa3,0x01,0x4f,0x0f,0xa2,0x0f,0x88,0x00,0x16,0xe3,0x54,0x3f,0x1a,0x00,0x78,0x4d,0x62,0xf4,0x18,0xc0,0xf9,0x03,0xe4,0xc6,0x15,0x59,0x40,0x20,0x92,0x09,0x10,0x00,0x74,0x5b,0x30,0xf8,0xd0,0x01,0xe5,0x80,0x46,0x8c,0x0a,0x40,0x7d,0x30,0x10,0xc3,0x70,0x00,0xf2,0xa0,0x5f,0x5c,0x83,0x40,0x1f,0x16,0x60,0x7e,0x50,0x09,0x0b,0xf4,0xa8,0xf8,0x00,0x98,0x8f,0x90,0x3e,0x30,0x09,0xf3,0xf4,0xa8,0x00,0xf2,0x37,0x14,0x8f,0x64,0x1f,0x20,0x01,0x5a,0x88,0x84,0xa2,0x10,0x10,0x88,0x88,0x3e,0x23,0xe2,0x9a,0x83,0xd8,0xfe,0x60,0xf2,0xd0,0x46,0xa8,0x0c,0x51,0x0f,0xd5,0x52,0x2a,0x0f,0x39,0x8f,0xf3,0x1f,0x22,0x1f,0xa3,0x00,0x50,0x82,0xf1,0x1c,0x05,0x26,0x05,0x90,0x0f,0xad,0x41,0x08,0x40,0xf5,0x1f,0x94,0xa8,0x3c,0x5a,0xa8,0x76,0x02,0x10,0x2f,0x20,0xfa,0x57,0x58,0xc6,0x4a,0x18,0x39,0x3c,0x81,0xe2,0x3f,0x2f,0xb6,0xab,0xd4,0x87,0x10,0x78,0xc1,0x0e,0x83,0x11,0x27,0x88,0x68,0xb0,0xbd,0x78,0xf9,0x04,0x63,0xc0,0xf3,0x94,0x9f,0xd2,0x0d,0x6c,0x38,0x11,0xb4,0x41,0xe3,0x20,0x07,0x90,0x7c,0xa0,0xb3,0x85,0x01,0x83,0xce,0x2a,0x0f,0x11,0xf9,0x41,0x8d,0x22,0x81,0x20,0x79,0xc2,0xc3,0xea,0x0f,0x38,0x04,0x0c,0x1e,0x31,0x00,}; -const uint8_t _A_WatchingTV_128x64_3[] = {0x01,0x00,0x45,0x02,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1f,0x80,0x01,0x0c,0x12,0x80,0x10,0xb8,0x0c,0x02,0x15,0x20,0x04,0xaf,0xfe,0x3e,0x05,0x38,0x10,0x3c,0x62,0x00,0xe4,0xe0,0x55,0x6e,0xa0,0xf5,0x89,0x03,0xd7,0x41,0xaa,0xd5,0x01,0x8e,0x09,0x00,0x88,0xc2,0x01,0xe8,0x15,0x1a,0x80,0xec,0x40,0x02,0x0c,0x18,0x88,0x48,0x40,0x06,0x08,0x1d,0x00,0xac,0x42,0xc7,0x21,0x03,0x18,0xa0,0xe8,0x10,0x50,0x7a,0x70,0x41,0xea,0x05,0x1c,0x04,0x28,0x0c,0x46,0xc1,0xc0,0xc0,0xc1,0xed,0x00,0x8a,0x81,0x89,0x18,0x20,0xf6,0x26,0x14,0x69,0x40,0x94,0x12,0x7a,0x83,0xca,0x68,0x0f,0x49,0x11,0xbd,0x41,0xe5,0x28,0x03,0xa4,0x8b,0xe1,0x0f,0xe0,0x05,0xca,0x07,0x80,0x87,0xcc,0x08,0xe9,0x14,0x80,0x7c,0x34,0x00,0xf3,0x01,0x8d,0x80,0xee,0x82,0xe2,0xcf,0x83,0xd6,0xa0,0x0f,0x40,0xf8,0x99,0x08,0x1e,0x5e,0x0d,0xf8,0x7d,0x21,0x00,0xf5,0xe0,0x40,0x7c,0x16,0x7a,0x8b,0x1d,0x24,0x40,0x31,0x24,0x10,0x6c,0x6c,0x1a,0x72,0x31,0x00,0x07,0xf1,0x27,0x01,0x8c,0x30,0x04,0x31,0x81,0x08,0xd4,0xfa,0x20,0xf3,0x83,0x56,0x00,0x62,0x4b,0x20,0x90,0xe0,0x35,0xe1,0xf4,0x80,0x8a,0x47,0xf8,0x16,0x32,0xf1,0x74,0x13,0xe9,0x40,0xfc,0x30,0x0c,0x06,0x7a,0x86,0x7a,0x60,0x17,0xe8,0xae,0x28,0x07,0x50,0x04,0x3f,0xff,0xfc,0x3c,0x1e,0x9f,0x04,0x09,0xea,0x80,0x83,0x55,0xaa,0xfd,0x42,0x42,0x13,0x18,0x06,0xb8,0xe2,0x50,0x4e,0xa0,0x1c,0x75,0x40,0x04,0x87,0x60,0x3a,0xa0,0xf1,0x8e,0x40,0x2f,0x53,0x50,0xf9,0x00,0x0d,0xc0,0x3a,0xaf,0xff,0x84,0xa2,0x3a,0xdb,0x50,0x7d,0x7d,0x50,0xab,0x07,0x56,0x03,0x1e,0xb0,0x60,0x2a,0xc2,0x51,0x0f,0x25,0xd6,0x1b,0xa0,0xd5,0x07,0x46,0xa1,0x40,0xc1,0xea,0xa0,0x21,0xf4,0xd7,0x07,0xc6,0x80,0x4a,0x19,0x76,0x82,0x03,0x55,0x81,0x87,0xd2,0xaf,0x3d,0x9f,0x60,0x0c,0xc3,0x15,0xa8,0x07,0x46,0x04,0x3e,0x4d,0x57,0x2a,0x43,0x80,0x03,0x0c,0x29,0x3c,0x21,0xf1,0x3e,0x17,0xfe,0xff,0x55,0x86,0xc8,0x30,0x02,0x51,0x82,0x93,0x47,0xd5,0x07,0xc4,0x00,0x0b,0x70,0x1a,0x19,0x01,0xc0,0x75,0x58,0x24,0xf0,0xc7,0x63,0x03,0xe4,0x0f,0x95,0x00,0x3c,0x20,0x21,0x72,0x0c,0x82,0x44,0x00,0x1d,0x16,0xcc,0x3e,0x34,0x06,0xb0,0xc0,0x34,0x08,0xd1,0x81,0xc8,0x0f,0xa6,0x02,0x18,0x6e,0x00,0x1e,0x55,0x0b,0xeb,0x90,0x68,0x03,0xe2,0xcc,0x0f,0xca,0x01,0x21,0x7e,0x95,0x1f,0x00,0xfd,0x11,0xf2,0x07,0xc6,0x01,0x3e,0x07,0x8f,0x56,0x80,0x0f,0x23,0x71,0x48,0xf6,0x41,0xf2,0x1f,0x19,0x10,0xb0,0x10,0x10,0x10,0x88,0x88,0x3e,0x23,0xe2,0x9a,0x83,0xd8,0xfe,0x60,0xf2,0xd5,0x46,0xa8,0x12,0x00,0xfd,0x12,0x46,0x2a,0x0f,0x39,0x8f,0xf3,0x1f,0x22,0x1f,0xa6,0xa1,0x08,0x51,0x00,0x78,0xd2,0x60,0x59,0x00,0xf9,0x47,0x4d,0x06,0x84,0x10,0x7a,0x8f,0xc8,0x00,0x90,0xec,0x04,0x20,0x5e,0x41,0xf4,0xae,0xb1,0x8c,0x94,0x30,0x72,0x79,0x03,0xc4,0x7e,0x5f,0x6d,0x57,0xa9,0x0e,0x20,0xf1,0x82,0x0d,0x86,0x22,0x4f,0x10,0xd1,0x61,0x7a,0xf1,0xf2,0x88,0xc7,0x81,0xe7,0x29,0x3f,0xa4,0x1a,0xd8,0x80,0x23,0x68,0x83,0xc6,0x40,0x0f,0x20,0xf9,0x41,0x67,0x00,0xf2,0x4e,0x88,0x3c,0xa2,0xa0,0xf1,0x1f,0x94,0x18,0xd2,0x20,0x01,0x66,0x88,0x3c,0xa1,0x61,0xf5,0x07,0x9c,0x02,0x06,0x0f,0x18,0x80,}; -const uint8_t *_A_WatchingTV_128x64[] = {_A_WatchingTV_128x64_0,_A_WatchingTV_128x64_1,_A_WatchingTV_128x64_2,_A_WatchingTV_128x64_3}; +const uint8_t _A_BadBattery_128x51_0[] = {0x01,0x00,0xa4,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0x1f,0xf4,0x78,0x1d,0x9e,0x0c,0x1d,0xc4,0x1f,0x93,0x08,0x05,0x00,0x1f,0x91,0xf0,0x10,0xc0,0x81,0xd5,0x80,0x8d,0x80,0xc6,0x18,0x0f,0xb0,0x19,0x46,0x01,0xf5,0xc0,0x21,0x20,0x02,0x49,0x87,0x20,0x04,0xa5,0xc0,0x27,0x16,0x00,0x2a,0x42,0x00,0xa8,0x1b,0x31,0x18,0xc7,0x22,0xf9,0x9c,0xa4,0xe3,0xdd,0xdc,0x98,0xc6,0x41,0xed,0xa0,0xda,0x69,0x72,0x94,0x8a,0x4d,0x4a,0x95,0x25,0x07,0xa7,0x82,0x01,0x98,0xaa,0x6f,0x7a,0xe0,0xf2,0xbd,0x49,0xe0,0x11,0x00,0x79,0x7c,0x03,0xe3,0x16,0xc2,0xed,0x29,0x14,0xda,0xd4,0x2a,0x4b,0x01,0x07,0xac,0x72,0x2b,0xb9,0xca,0x4c,0x29,0x5d,0x4b,0x8c,0x64,0x1e,0x9d,0x88,0x09,0xed,0xd3,0xa2,0x0f,0x19,0xfc,0x03,0xff,0x0f,0x45,0xcc,0x43,0x01,0x7f,0xf0,0x40,0x4f,0x4a,0x00,0x48,0x87,0xc3,0x66,0x04,0x1a,0x80,0x3e,0xb3,0x1f,0x75,0x03,0x83,0xd6,0x19,0x5f,0x1c,0x2c,0x70,0x1e,0xd0,0x8b,0x60,0x10,0x6f,0xc0,0x82,0x81,0x03,0xda,0x71,0x38,0x79,0x8c,0x0c,0x10,0x5c,0xeb,0x8f,0x9e,0x24,0xd5,0x3b,0x04,0x38,0x5c,0x2b,0x43,0x5e,0x0e,0x48,0x1e,0x81,0xc3,0x07,0xb4,0x79,0xea,0xd0,0x49,0x80,0x3c,0xed,0x5d,0x20,0xf9,0xab,0xcb,0x01,0x07,0xfe,0x28,0x0b,0x99,0x51,0xd1,0x03,0xd9,0xdc,0x3f,0x7f,0xfc,0x1c,0xe6,0x80,0x01,0x9f,0x83,0xca,0x61,0x80,0xf0,0xc3,0xe1,0x80,0xf5,0xc0,0x48,0x41,0xe5,0x1c,0xb0,0x0f,0xc5,0xcc,0x60,0x02,0xe0,0x48,0x01,0x07,0x30,0x2c,0x08,0x3d,0xac,0x00,0xf4,0xc0,0x13,0x84,0x1e,0xd3,0x00,0x7a,0x3c,0x06,0x01,0x18,0x07,0xac,0x62,0x40,0x7a,0x35,0x88,0xa1,0x90,0x00,0x50,0xc1,0x80,0xa4,0xd6,0x08,0x0f,0x58,0x36,0x00,0x1e,0x48,0xd3,0x83,0x03,0xd6,0x07,0x80,0xb0,0x37,0x4b,0xf0,0xa2,0x20,0x7a,0xc0,0x70,0x18,0x02,0x98,0x83,0x46,0x07,0xf1,0x78,0x98,0x3d,0x38,0x10,0x14,0xd0,0xbe,0xc6,0x1e,0xf4,0x11,0x7b,0x1a,0xc4,0x74,0x57,0x83,0x11,0x80,0x0e,0x05,0x80,0xd0,0x1e,0xc5,0x2c,0x4d,0x32,0x07,0xb4,0x80,0x1e,0x6c,0xb1,0x28,0x31,0xbc,0x81,0xeb,0x00,0x9e,0x03,0xd2,0x08,0x0f,0x51,0xe9,0x60,0x27,0xe1,0xf6,0x34,0x8f,0xc3,0xfe,0x90,0x24,0x30,0xc7,0xc0,0x85,0x0e,0xa0,0x48,0x15,0x23,0x18,0x17,0x10,0x00,0xbf,0xc4,0x21,0x3e,0x08,0x08,0x4f,0xc2,0xc4,0x12,0xe2,0xff,0x20,0xf7,0x01,0xb9,0x33,0x06,0x3c,0xec,0x60,0x80,0x8c,0x8b,0x01,0x10,0x80,0x59,0x13,0x8c,0x44,0x38,0x00,}; +const uint8_t _A_BadBattery_128x51_1[] = {0x01,0x00,0xc3,0x01,0x80,0x7c,0x38,0x30,0xf0,0x7e,0x46,0x20,0x13,0x80,0x75,0xe0,0x03,0xa3,0x20,0x07,0xdf,0x82,0x0c,0x03,0x18,0x08,0x3e,0x83,0x87,0x03,0x07,0xd4,0xc0,0x06,0x42,0x22,0x00,0x44,0x40,0x06,0x50,0xc0,0x7d,0x42,0x00,0x6c,0x0f,0xb3,0x90,0x83,0xf4,0x66,0x60,0x07,0x82,0x03,0xe2,0xe0,0x0f,0x85,0x02,0x91,0x54,0x1e,0x73,0xc8,0x04,0x72,0x2f,0x99,0xca,0x4e,0x3d,0xdd,0xc9,0x8c,0x64,0x1e,0xda,0x0d,0xa6,0x97,0x29,0x48,0xa4,0xd4,0xa9,0x52,0x50,0x78,0xf0,0x18,0x03,0x76,0x80,0x66,0x2a,0x9b,0xde,0xb8,0x3c,0xaf,0x52,0x70,0x78,0xf8,0x23,0xfc,0x0f,0xfc,0x0f,0x41,0x16,0xc2,0xed,0x29,0x14,0xda,0xd4,0x2a,0x4b,0x01,0x82,0x7f,0x25,0x97,0x88,0x04,0x0a,0x39,0x15,0xdc,0xe5,0x26,0x14,0xae,0xa5,0xc6,0x32,0x0f,0x1f,0x34,0xf4,0xa8,0xa0,0x02,0xa0,0x3f,0x44,0x14,0x3c,0x38,0xba,0x82,0x01,0xe2,0x1a,0x28,0x14,0x6d,0x41,0x90,0x28,0x74,0x3a,0x01,0xf0,0x8f,0x83,0xeb,0x31,0x03,0x80,0x7f,0x01,0xf7,0xf0,0x01,0x8f,0xfa,0x7e,0x08,0x28,0xe0,0x3d,0x80,0x65,0xff,0x90,0x82,0x18,0x0c,0xbc,0x00,0xf1,0xc0,0x39,0xd7,0x1f,0x3c,0x48,0x1e,0xbf,0x08,0x39,0x7c,0xd7,0x83,0x92,0x07,0xb7,0xf2,0x01,0xf8,0x61,0x88,0x3c,0xe3,0xc0,0xf5,0x9f,0x10,0x07,0xfe,0x0f,0x2b,0x57,0x48,0x3e,0xb8,0x08,0x3e,0x03,0xff,0x81,0x80,0xc0,0x39,0x95,0x1d,0x14,0x4b,0x80,0x06,0x10,0x78,0xf8,0x20,0x3e,0x04,0x10,0x81,0x85,0x58,0x76,0x00,0x78,0xc1,0xa0,0x12,0x08,0x05,0xe8,0x4c,0x60,0xf3,0x98,0x01,0x85,0xb4,0x6b,0x11,0x3e,0xb4,0x60,0x3a,0x20,0xf2,0x20,0x08,0x0c,0x46,0x22,0x00,0x38,0x40,0x3c,0x61,0x80,0x51,0xf0,0x04,0xc8,0x70,0x20,0x03,0x86,0x09,0x8f,0xf1,0xff,0x0f,0x8e,0x01,0x58,0xb0,0x60,0x78,0xc6,0x0a,0x24,0xde,0x1e,0x03,0xf1,0xe0,0x13,0xcc,0x00,0xa8,0x6e,0x03,0x21,0x1f,0xac,0x0e,0xf1,0x00,0x9a,0x06,0x89,0x0c,0x33,0xe1,0x20,0x80,0x0e,0x02,0x0c,0x19,0xa0,0x1c,0xfc,0xf0,0x11,0xb0,0x83,0xd0,0x42,0x32,0x40,0x39,0xb4,0x46,0x60,0x2f,0x58,0x04,0x70,0x1e,0x90,0x81,0x91,0x13,0xd2,0x01,0x10,0x07,0xb4,0x01,0x26,0x40,0xf4,0xb2,0x01,0xcd,0xfc,0x44,0x04,0x4c,0x0c,0x42,0x88,0x05,0x1f,0xf7,0xfc,0x58,0x5e,0x04,0xfa,0x03,0xc7,0x90,0x9b,0x18,0x1b,0x4c,0xd8,0x86,0x37,0x28,0x86,0x21,0x36,0x47,0xc4,0x8e,0x00,0xca,0x20,0x36,0x18,0x42,0x0c,0x70,0x25,0xb4,0x18,0x19,0xd4,0x79,0x90,0x88,0x1d,0xc3,0xcc,0xbc,0x51,0x81,0x58,0x11,0x23,0x18,0x83,0x46,0x27,0x80,0xf5,0xfc,0x35,0x8e,0x09,0x10,0xce,0x1b,0x08,0x00,0xbe,0x08,0xfd,0xf0,0x84,0x60,0x0d,}; +const uint8_t *_A_BadBattery_128x51[] = {_A_BadBattery_128x51_0,_A_BadBattery_128x51_1}; -const uint8_t _A_Wink_128x64_0[] = {0x01,0x00,0x95,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x08,0x34,0x10,0x03,0xe0,0x00,0x43,0xea,0x8c,0x42,0x22,0x3e,0x08,0x78,0x3d,0xa8,0x00,0x21,0xaa,0xe3,0x22,0x13,0x88,0xe5,0xe0,0x1e,0xd2,0x00,0x10,0xda,0xa0,0x92,0x19,0x64,0x1f,0x80,0x7e,0x7c,0x07,0xfe,0x7f,0x0c,0x81,0x79,0xa0,0x38,0x04,0x13,0x44,0x03,0x03,0x18,0x8c,0x61,0x24,0x6b,0x31,0x07,0xb4,0x22,0xc1,0xfe,0x99,0xcc,0x3c,0x11,0x08,0x07,0xe0,0x1e,0xd0,0x49,0x84,0x06,0xc9,0x20,0x9c,0x43,0x20,0x1f,0xe1,0xfb,0x40,0xb2,0x10,0x0e,0x41,0xb0,0x60,0x58,0x0b,0xf8,0x3d,0xa0,0x34,0x8f,0xe6,0x44,0x0a,0x5e,0x09,0xfa,0x41,0xe5,0x1f,0xed,0x1c,0x04,0xa6,0x3f,0x08,0xf8,0x3d,0xe4,0x9f,0xf9,0x3c,0x05,0xe6,0x3f,0xc4,0xfb,0xc0,0x22,0x9f,0xfa,0x3c,0x05,0x9c,0x3f,0xe8,0x38,0x3d,0xf2,0x9e,0x7a,0x7c,0x06,0x0c,0x94,0x18,0x18,0x3e,0xb0,0x24,0x01,0xff,0x9f,0x98,0x1e,0x5f,0xfa,0x7d,0xc6,0x01,0xe0,0xff,0xbc,0x20,0x1e,0x51,0xd2,0xf0,0x9f,0x9c,0x1e,0x84,0xb1,0xfc,0x1f,0xa3,0x01,0x96,0xff,0x86,0xcb,0xf8,0x7e,0x8a,0x04,0x97,0xff,0x41,0x02,0x8f,0xf8,0xfd,0x1a,0x09,0x55,0xf8,0x0a,0x5f,0xf3,0xf4,0x54,0x29,0xb1,0xe1,0xa1,0x1f,0xa7,0x51,0x9a,0x81,0x01,0x04,0xfc,0x58,0x01,0x0b,0x54,0x32,0xa8,0x92,0xf8,0x7f,0xca,0x83,0x0e,0x0f,0xb7,0xa8,0x08,0x5f,0x88,0x09,0x7c,0x61,0x21,0xf6,0xaa,0x81,0x0b,0xf9,0x00,0xb8,0x70,0x1a,0x62,0x1f,0x59,0x50,0x10,0xa7,0xcb,0x01,0x9c,0x83,0xda,0xa1,0x15,0x80,0x58,0x30,0x02,0xd1,0xc0,0x43,0xe0,0x81,0xf6,0x85,0x17,0x47,0xe0,0xad,0x1f,0x84,0x00,0x1e,0xd5,0x08,0x2a,0x34,0x80,0x02,0x21,0x13,0xb1,0x07,0xd8,0x00,0xa7,0x62,0x0f,0xbb,0x5d,0x17,0xee,0x1f,0x6a,0x02,0xc1,0xc0,0x0d,0x3c,0x07,0x6f,0x01,0xa1,0x00,0x05,0x98,0x03,0xb5,0x1c,0x20,0xfd,0xb8,0x13,0x79,0xd8,0xc0,0xff,0x1f,0x78,0x01,0xfe,0x10,0x70,0x7e,0xff,0x0f,0xbd,0xfe,0x07,0xc8,}; -const uint8_t _A_Wink_128x64_1[] = {0x01,0x00,0x98,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x08,0x34,0x10,0x03,0xe0,0x00,0x43,0xea,0x8c,0x42,0x22,0x3e,0x08,0x78,0x3d,0xa8,0x00,0x21,0xaa,0xe3,0x22,0x13,0x88,0xe5,0xe0,0x1e,0xd2,0x00,0x10,0xda,0xa0,0x92,0x19,0x64,0x1f,0x80,0x7e,0x7c,0x07,0xfe,0x7f,0x0c,0x81,0x79,0xa0,0x38,0x04,0x13,0x44,0x03,0x03,0x18,0x8c,0x61,0x24,0x6b,0x31,0x07,0xb4,0x22,0xc0,0x22,0x19,0x87,0x82,0x21,0x00,0xfc,0x03,0xda,0x08,0xaf,0x1b,0x04,0x82,0x71,0x0c,0x80,0x7f,0x87,0xed,0x02,0x88,0x7e,0x38,0x66,0xc1,0x81,0x60,0x2f,0xe0,0xf6,0x80,0xc2,0x3f,0xd8,0xf0,0x29,0x78,0x27,0xe9,0x07,0x84,0x7f,0xf2,0x70,0x12,0x98,0xfc,0x23,0xe0,0xf7,0xc2,0x7f,0xe4,0xf0,0x12,0x18,0xff,0x13,0xef,0x00,0xa2,0x7f,0xe8,0xe3,0x31,0x27,0x0c,0x1c,0x1e,0xfa,0x4f,0x3d,0x3e,0x03,0x06,0x4a,0x0c,0x0c,0x1f,0x58,0x12,0x00,0xff,0xcf,0xcc,0x00,0x1c,0xa7,0xfe,0xff,0x71,0x80,0x78,0x3f,0xef,0x08,0x07,0x8c,0x06,0x3a,0x5e,0x13,0xf3,0x83,0xc8,0xf2,0x24,0xb1,0xfc,0x1f,0xa3,0x01,0x96,0x83,0xcf,0x80,0xa3,0xfc,0x3f,0x45,0x02,0x4b,0xc3,0xa0,0x81,0x47,0xfc,0x7e,0x8d,0x06,0xaa,0xe0,0x05,0x2f,0xf9,0xfa,0x2a,0x14,0xd8,0xe0,0xd0,0x8f,0xd3,0xa8,0x8d,0x40,0x80,0x82,0x7e,0x2c,0x00,0x85,0xaa,0x11,0x54,0x49,0x7c,0x3f,0xe8,0x41,0x87,0x07,0xdb,0xd4,0x04,0x2f,0xc4,0x04,0xbe,0x30,0x90,0xfb,0x55,0x40,0x85,0xfc,0x80,0x5c,0x38,0x0d,0x31,0x0f,0xac,0xa8,0x08,0x48,0x11,0xf0,0x4e,0x41,0xec,0x3f,0x18,0x05,0x83,0x00,0x2d,0x1c,0x04,0x3e,0x08,0x1f,0x68,0x51,0x74,0x7e,0x0a,0xd1,0xf8,0x40,0x01,0xed,0x50,0x82,0xa3,0x48,0x00,0x22,0x11,0x3b,0x10,0x7d,0x80,0x0a,0x76,0x20,0xfb,0xb5,0xd1,0x7e,0xe1,0xf6,0xa0,0x2c,0x1c,0x00,0xd3,0xc0,0x76,0xf0,0x1a,0x10,0x00,0x59,0x80,0x3b,0x51,0xc2,0x0f,0xdb,0x81,0x37,0x9d,0x8c,0x0f,0xf1,0xf7,0x80,0x1f,0xe1,0x07,0x07,0xef,0xf0,0xfb,0xdf,0xe0,0x7c,0x80,}; -const uint8_t _A_Wink_128x64_2[] = {0x01,0x00,0x95,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x08,0x34,0x10,0x03,0xe0,0x00,0x43,0xea,0x8c,0x42,0x22,0x3e,0x08,0x78,0x3d,0xa8,0x00,0x21,0xaa,0xe3,0x22,0x13,0x88,0xe5,0xe0,0x1e,0xd2,0x00,0x10,0xda,0xa0,0x92,0x19,0x64,0x1f,0x80,0x7e,0x7c,0x07,0xfe,0x7f,0x0c,0x81,0x79,0xa0,0x38,0x04,0x13,0x44,0x03,0x03,0x18,0x8c,0x61,0x24,0x6b,0x31,0x07,0xb4,0x22,0xc0,0x22,0x19,0x87,0x82,0x21,0x00,0xfc,0x03,0xda,0x08,0xaf,0x1b,0x04,0x82,0x71,0x0c,0x80,0x7f,0x87,0xed,0x02,0x0d,0x0f,0x60,0xd8,0x30,0x2c,0x05,0xfc,0x1e,0xd0,0x14,0xd0,0xe4,0x00,0xa5,0xe0,0x9f,0xa4,0x1c,0x1e,0x3b,0x08,0x09,0x4c,0x7e,0x11,0xf6,0x7c,0x7c,0x24,0xf0,0x12,0x18,0xff,0x13,0xee,0x0f,0x1f,0xf4,0x7c,0x66,0x5f,0xe8,0x38,0x3e,0x3f,0xe0,0xf1,0x83,0x25,0x06,0x06,0x0f,0x7c,0x27,0xfe,0x01,0x81,0x20,0x0f,0xfc,0xfc,0xc0,0x01,0xe2,0x12,0x46,0xe3,0x00,0xf0,0x05,0x04,0x1f,0x03,0x91,0x8e,0x97,0x84,0xfc,0xe0,0x01,0xf2,0x0e,0x44,0x22,0x3f,0x83,0xf4,0x60,0x3c,0xd0,0x09,0xf0,0x14,0x7f,0x87,0xe8,0xa0,0x59,0x78,0x14,0x10,0x28,0xff,0x8f,0xd1,0xa0,0xb5,0x5c,0x00,0xa5,0xff,0x3f,0x45,0x42,0x1b,0x1c,0x1a,0x11,0xfa,0x75,0x11,0xa8,0x10,0x10,0x4f,0xc5,0x80,0x10,0xb5,0x42,0x2a,0x89,0x2f,0x87,0xff,0xff,0x7f,0x87,0x07,0xdb,0xd4,0x04,0x2f,0xc4,0x04,0xbe,0x30,0x90,0xfb,0x55,0x40,0x85,0xfc,0x80,0x5c,0x38,0x0d,0x31,0x0f,0xac,0xa8,0x08,0x48,0x11,0xf0,0x4e,0x41,0xec,0x3f,0x18,0x05,0x83,0x00,0x2d,0x1c,0x04,0x3e,0x08,0x1f,0x68,0x51,0x74,0x7e,0x0a,0xd1,0xf8,0x3d,0xc4,0x3e,0xd0,0x54,0x69,0x00,0x04,0x42,0x27,0x62,0x0f,0xb0,0x01,0x4e,0xc4,0x1f,0x76,0xba,0x2f,0xdc,0x3e,0xd4,0x05,0x83,0x80,0x1a,0x78,0x0e,0xde,0x03,0x42,0x00,0x0b,0x30,0x07,0x6a,0x38,0x41,0xfb,0x70,0x26,0xf3,0xb1,0x81,0xfe,0x3e,0xf0,0x03,0xfc,0x20,0xe0,0xfd,0xfe,0x1f,0x7b,0xfc,0x0f,0x90,}; -const uint8_t _A_Wink_128x64_3[] = {0x01,0x00,0x9d,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x09,0x18,0xf8,0x43,0xc1,0x8d,0x80,0x01,0x0f,0xaa,0x31,0x08,0x88,0xc3,0x8a,0xc2,0x00,0x5a,0x00,0x08,0x6a,0xb8,0xc8,0x86,0xe2,0x02,0x07,0x20,0x02,0x48,0x00,0x43,0x6a,0x82,0x48,0x6d,0x82,0x73,0x3f,0x2e,0x03,0xff,0x3f,0x86,0x40,0xa6,0xca,0x31,0x07,0xb4,0x43,0x80,0x81,0x18,0xc6,0x12,0x37,0x00,0xff,0x03,0xda,0x11,0x60,0x11,0x0c,0xc3,0xc1,0x06,0xc0,0x5f,0xd1,0xce,0x58,0x1b,0x04,0x82,0x71,0x03,0xe0,0x03,0xde,0x05,0x10,0x80,0x76,0x3c,0x18,0xf8,0x0f,0xc2,0x7e,0x0f,0x68,0x0a,0x68,0x72,0x02,0x11,0x80,0x7e,0x23,0xe9,0xd7,0x07,0x8e,0xc2,0x02,0x23,0x1f,0xe2,0x7d,0xc8,0x03,0xf0,0x93,0xc0,0x61,0x85,0xe1,0x83,0x83,0xe3,0xfd,0x1f,0x80,0xc0,0xd0,0x82,0xf1,0x88,0x27,0xfe,0x3f,0x81,0x80,0xf0,0x3f,0xf0,0x10,0x7b,0xe1,0x3f,0xf0,0x0b,0x0c,0x03,0xc0,0x04,0x10,0x03,0xf1,0x0b,0x23,0x19,0x56,0x89,0xf9,0xc1,0xe4,0x49,0x18,0x69,0xb8,0x4f,0xce,0x00,0x1f,0x21,0x24,0x40,0x23,0xfc,0x3f,0x46,0x03,0xcd,0x80,0x0d,0x97,0xf8,0xfd,0x14,0x0b,0x2d,0xc2,0x80,0x05,0x1f,0xf9,0xfa,0x34,0x16,0xa4,0x60,0x89,0x04,0xfd,0x35,0x08,0x6c,0x08,0x08,0x27,0xea,0xd4,0x46,0x81,0x44,0x7e,0xaa,0x86,0x54,0x08,0x5f,0x00,0x78,0xe0,0x08,0x2d,0xa8,0xb5,0x01,0x0b,0xf9,0x01,0xff,0xdf,0xe1,0xc1,0xf6,0xaa,0xb0,0x44,0xdc,0x30,0x07,0x88,0xc2,0x43,0xed,0x2a,0x80,0x42,0x20,0x08,0x11,0xb0,0x70,0x00,0xa2,0x1f,0x58,0xac,0x02,0x61,0x80,0x4e,0x8e,0x02,0x70,0x0f,0x6d,0x44,0x28,0xda,0x3e,0x00,0xf8,0x93,0x84,0x3e,0xf0,0x54,0xe9,0x37,0x46,0xf0,0x45,0x20,0xfb,0x9b,0x8b,0xfe,0xbf,0x14,0xb1,0x07,0xdc,0x00,0x8a,0x16,0xd0,0x07,0xc8,0x00,0x7c,0x05,0x0c,0x00,0x16,0x60,0x0f,0xe7,0x29,0x00,0x2f,0x80,0xf0,0x80,0x02,0xcf,0x01,0xdb,0xe0,0x0f,0x74,0x78,0x9b,0xce,0xc6,0x00,0x3e,0x01,0x3c,0x20,0x0c,0xf8,0x41,0xc1,0xfb,0xfc,0x27,0x77,0xf8,0x1f,0x20,}; -const uint8_t _A_Wink_128x64_4[] = {0x01,0x00,0x9c,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x09,0x18,0xf8,0x43,0xc1,0x8d,0x80,0x01,0x0f,0xaa,0x31,0x08,0x88,0xc3,0x8a,0xc2,0x00,0x5a,0x00,0x08,0x6a,0xb8,0xc8,0x86,0xe2,0x02,0x07,0x20,0x02,0x48,0x00,0x43,0x6a,0x82,0x48,0x6d,0x82,0x73,0x3f,0x2e,0x03,0xff,0x3f,0x86,0x40,0xa6,0xca,0x31,0x07,0xb4,0x43,0x80,0x81,0x18,0xc6,0x12,0x37,0x00,0xff,0x03,0xda,0x11,0x60,0x11,0x0c,0xc3,0xc1,0x06,0xc0,0x5f,0xd1,0xce,0x58,0x1b,0x04,0x82,0x71,0x03,0xe0,0x03,0xde,0x05,0x10,0x80,0x74,0x3c,0x18,0xf8,0x0f,0xc2,0x7e,0x0f,0x68,0x0a,0x68,0x72,0x02,0x11,0x80,0x7e,0x23,0xe9,0xd7,0x84,0x7c,0x36,0x30,0x11,0x18,0xff,0x13,0xee,0x40,0x1f,0xe4,0x9e,0x03,0x0c,0x2f,0x0c,0x1c,0x1f,0x1f,0xfa,0xfc,0x06,0x06,0x84,0x17,0x8c,0x61,0x3f,0xf1,0xfc,0x0c,0x07,0x81,0xff,0x80,0x83,0xdf,0x88,0x49,0x1b,0x0c,0x03,0xc1,0xff,0x76,0xc7,0x10,0x72,0x31,0x95,0x68,0x9f,0x9c,0x00,0x3e,0x41,0x48,0xc3,0x4d,0xc2,0x7e,0x70,0x79,0x00,0x84,0x96,0x3f,0xc3,0xf4,0x60,0x2c,0xd8,0x00,0xd9,0x7f,0x8f,0xd1,0x40,0xb2,0xdc,0x28,0x00,0x51,0xff,0x9f,0xa3,0x41,0x2a,0x46,0x08,0x90,0x4f,0xd3,0x50,0x86,0xc0,0x80,0x82,0x7e,0xad,0x44,0x68,0x14,0x47,0xea,0xa8,0x65,0x40,0x85,0xf0,0x07,0x8e,0x00,0x82,0xda,0x8b,0x50,0x10,0xbf,0x90,0x1f,0xfd,0xfe,0x1c,0x1f,0x6a,0xab,0x44,0x4d,0xc3,0x00,0x78,0x8c,0x24,0x3e,0xd2,0xa8,0x04,0x22,0x00,0x81,0x1b,0x07,0x00,0x0a,0x21,0xf5,0x8a,0xc0,0x26,0x18,0x04,0xe8,0xe0,0x27,0x00,0xf6,0xd4,0x42,0x8d,0xa3,0xe0,0x0f,0x89,0x38,0x43,0xef,0x05,0x4e,0x93,0x74,0x6f,0x04,0x52,0x0f,0xb9,0xb8,0xbf,0xeb,0xf1,0x4b,0x10,0x7d,0xc0,0x08,0xa1,0x6d,0x00,0x7c,0x80,0x07,0xc0,0x50,0xc0,0x01,0x66,0x00,0xfe,0x72,0x90,0x02,0xf8,0x0f,0x08,0x00,0x2c,0xf0,0x1d,0xbe,0x00,0xf7,0x47,0x89,0xbc,0xec,0x60,0x03,0xe0,0x13,0xc2,0x00,0xcf,0x84,0x1c,0x1f,0xbf,0xc2,0x77,0x7f,0x81,0xf2,}; -const uint8_t _A_Wink_128x64_5[] = {0x01,0x00,0x95,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x08,0x34,0x10,0x03,0xe0,0x00,0x43,0xea,0x8c,0x42,0x22,0x3e,0x08,0x78,0x3d,0xa8,0x00,0x21,0xaa,0xe3,0x22,0x13,0x88,0xe5,0xe0,0x1e,0xd2,0x00,0x10,0xda,0xa0,0x92,0x19,0x64,0x1f,0x80,0x7e,0x7c,0x07,0xfe,0x7f,0x0c,0x81,0x79,0xa0,0x38,0x04,0x13,0x44,0x03,0x03,0x18,0x8c,0x61,0x24,0x6b,0x31,0x07,0xb4,0x22,0xc0,0x22,0x19,0x87,0x82,0x21,0x00,0xfc,0x03,0xda,0x08,0xaf,0x1b,0x04,0x82,0x71,0x0c,0x80,0x7f,0x87,0xed,0x02,0x0d,0x0f,0x60,0xd8,0x30,0x2c,0x05,0xfc,0x1e,0xd0,0x14,0xd0,0xe4,0x00,0xa5,0xe0,0x9f,0xa4,0x1c,0x1e,0x3b,0x08,0x09,0x4c,0x7e,0x11,0xf6,0x7c,0x7c,0x24,0xf0,0x12,0x18,0xff,0x13,0xee,0x0f,0x1f,0xf4,0x7c,0x66,0x5f,0xe8,0x38,0x3e,0x3f,0xe0,0xf1,0x83,0x25,0x06,0x06,0x0f,0x7c,0x27,0xfe,0x01,0x81,0x20,0x0f,0xfc,0xfc,0xc0,0x01,0xe2,0x12,0x46,0xe3,0x00,0xf0,0x05,0x04,0x1f,0x03,0x91,0x8e,0x97,0x84,0xfc,0xe0,0x01,0xf2,0x0e,0x44,0x22,0x3f,0x83,0xf4,0x60,0x3c,0xd0,0x09,0xf0,0x14,0x7f,0x87,0xe8,0xa0,0x59,0x78,0x14,0x10,0x28,0xff,0x8f,0xd1,0xa0,0xb5,0x5c,0x00,0xa5,0xff,0x3f,0x45,0x42,0x1b,0x1c,0x1a,0x11,0xfa,0x75,0x11,0xa8,0x10,0x10,0x4f,0xc5,0x80,0x10,0xb5,0x42,0x2a,0x89,0x2f,0x87,0xff,0xff,0x7f,0x87,0x07,0xdb,0xd4,0x04,0x2f,0xc4,0x04,0xbe,0x30,0x90,0xfb,0x55,0x40,0x85,0xfc,0x80,0x5c,0x38,0x0d,0x31,0x0f,0xac,0xa8,0x08,0x48,0x11,0xf0,0x4e,0x41,0xec,0x3f,0x18,0x05,0x83,0x00,0x2d,0x1c,0x04,0x3e,0x08,0x1f,0x68,0x51,0x74,0x7e,0x0a,0xd1,0xf8,0x3d,0xc4,0x3e,0xd0,0x54,0x69,0x00,0x04,0x42,0x27,0x62,0x0f,0xb0,0x01,0x4e,0xc4,0x1f,0x76,0xba,0x2f,0xdc,0x3e,0xd4,0x05,0x83,0x80,0x1a,0x78,0x0e,0xde,0x03,0x42,0x00,0x0b,0x30,0x07,0x6a,0x38,0x41,0xfb,0x70,0x26,0xf3,0xb1,0x81,0xfe,0x3e,0xf0,0x03,0xfc,0x20,0xe0,0xfd,0xfe,0x1f,0x7b,0xfc,0x0f,0x90,}; -const uint8_t _A_Wink_128x64_6[] = {0x01,0x00,0x9c,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x09,0x18,0xf8,0x43,0xc1,0x8d,0x80,0x01,0x0f,0xaa,0x31,0x08,0x88,0xc3,0x8a,0xc2,0x00,0x5a,0x00,0x08,0x6a,0xb8,0xc8,0x86,0xe2,0x02,0x07,0x20,0x02,0x48,0x00,0x43,0x6a,0x82,0x48,0x6d,0x82,0x73,0x3f,0x2e,0x03,0xff,0x3f,0x86,0x40,0xa6,0xca,0x31,0x07,0xb4,0x43,0x80,0x81,0x18,0xc6,0x12,0x37,0x00,0xff,0x03,0xda,0x11,0x60,0x11,0x0c,0xc3,0xc1,0x06,0xc0,0x5f,0xd1,0xce,0x58,0x1b,0x04,0x82,0x71,0x03,0xe0,0x03,0xde,0x05,0x10,0xfc,0x70,0xfc,0x18,0xf8,0x0f,0xc2,0x7e,0x0f,0x68,0x0c,0x23,0xfd,0x8f,0x10,0x8c,0x03,0xf1,0x1f,0x4e,0xbc,0x23,0xff,0x93,0x80,0xc4,0x20,0x1f,0xc4,0xfb,0xc0,0x30,0x9f,0xf9,0x3c,0x06,0x18,0x5e,0x18,0x38,0x3d,0xe8,0x9f,0xfa,0x3c,0x06,0x06,0x84,0x17,0x8c,0x69,0x3c,0xf4,0xfc,0x0c,0x07,0x81,0xff,0x80,0x83,0xea,0xc3,0x00,0xf0,0x7f,0xdd,0xb1,0x94,0xff,0xdf,0xe3,0x2a,0xd1,0x3f,0x38,0x3c,0xe0,0x30,0xd3,0x70,0x9f,0x9c,0x1e,0x40,0xa1,0x25,0x8f,0xf0,0xfd,0x18,0x0c,0xb6,0x1c,0x36,0x5f,0xe3,0xf4,0x50,0x24,0xb7,0x3a,0x00,0x14,0x7f,0xe7,0xe8,0xd0,0x6a,0x91,0x82,0x24,0x13,0xf4,0xd4,0x29,0xb0,0x20,0x20,0x9f,0xab,0x51,0x1a,0x05,0x11,0xfa,0xaa,0x19,0x50,0x21,0x7c,0x01,0xe3,0x80,0x20,0xb6,0xa2,0xd4,0x04,0x2f,0xe4,0x05,0x28,0x30,0xe0,0xfb,0x55,0x60,0x10,0x43,0x70,0xc0,0x1e,0x23,0x09,0x0f,0xb4,0xaa,0x01,0x08,0x80,0x20,0x46,0xc1,0xc0,0x02,0x88,0x7d,0x62,0xb0,0x09,0x86,0x01,0x3a,0x38,0x09,0xc0,0x3d,0xb5,0x10,0xa3,0x68,0xf8,0x03,0xe2,0x4e,0x10,0xfb,0xc1,0x53,0xa4,0xdd,0x1b,0xc1,0x14,0x83,0xee,0x6e,0x2f,0xfa,0xfc,0x52,0xc4,0x1f,0x70,0x02,0x28,0x5b,0x40,0x1f,0x20,0x01,0xf0,0x14,0x30,0x00,0x59,0x80,0x3f,0x9c,0xa4,0x00,0xbe,0x03,0xc2,0x00,0x0b,0x3c,0x07,0x6f,0x80,0x3d,0xd1,0xe2,0x6f,0x3b,0x18,0x00,0xf8,0x04,0xf0,0x80,0x33,0xe1,0x07,0x07,0xef,0xf0,0x9d,0xdf,0xe0,0x7c,0x80,}; -const uint8_t _A_Wink_128x64_7[] = {0x01,0x00,0x9a,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x09,0x18,0xf8,0x43,0xc1,0x8d,0x80,0x01,0x0f,0xaa,0x31,0x08,0x88,0xc3,0x8a,0xc2,0x00,0x5a,0x00,0x08,0x6a,0xb8,0xc8,0x86,0xe2,0x02,0x07,0x20,0x02,0x48,0x00,0x43,0x6a,0x82,0x48,0x6d,0x82,0x73,0x3f,0x2e,0x03,0xff,0x3f,0x86,0x40,0xa6,0xca,0x31,0x07,0xb4,0x43,0x80,0x81,0x18,0xc6,0x12,0x37,0x00,0xff,0x03,0xda,0x11,0x60,0xff,0x4c,0xe6,0x1e,0x08,0x36,0x02,0xfe,0x8e,0x79,0x84,0x06,0xc9,0x20,0x9c,0x40,0xf8,0x00,0xf7,0x81,0x64,0x20,0x1c,0x8f,0x06,0x3e,0x03,0xf0,0x9f,0x83,0xda,0x03,0x48,0xfe,0x64,0x60,0x16,0x08,0x07,0xe2,0x3e,0x9d,0x79,0x47,0xfb,0x47,0x01,0x88,0x40,0x3f,0x89,0xf7,0x80,0x49,0x3f,0xf2,0x78,0x0c,0x30,0xbc,0x30,0x70,0x7b,0xc5,0x3f,0xf4,0x78,0x0c,0x0d,0x08,0x2f,0x18,0xca,0x79,0xe9,0xf8,0x18,0x0f,0x03,0xff,0x01,0x07,0xd5,0x86,0x01,0xe0,0xff,0xbb,0x63,0x29,0xff,0xa7,0xc6,0x55,0xa2,0x7e,0x70,0x7a,0x43,0x4d,0xc2,0x7e,0x70,0x7a,0x12,0xc7,0xf8,0x7e,0x8c,0x06,0x5b,0xfe,0x2b,0x2f,0xf1,0xfa,0x28,0x12,0x5b,0xfd,0x00,0x0a,0x3f,0xf3,0xf4,0x68,0x25,0x50,0xe1,0x21,0x1f,0xa6,0xa1,0x4d,0x81,0x01,0x04,0xfd,0x5a,0x8c,0xd0,0x28,0x8f,0xd5,0x50,0xca,0x81,0x0b,0xe0,0x0f,0x1c,0x01,0x05,0xb5,0x16,0xa0,0x21,0x7f,0x20,0x26,0x41,0x23,0x10,0x7d,0x2a,0xb0,0x08,0x21,0xb8,0x60,0x0f,0x11,0x84,0x87,0xda,0x55,0x00,0x84,0x40,0x13,0xa3,0x60,0xe0,0x01,0x44,0x3e,0xb1,0x58,0x04,0xc3,0x00,0x9d,0x1c,0x04,0xe0,0x1e,0xda,0x88,0x51,0xb4,0x7c,0x01,0xf1,0x27,0x08,0x7d,0xe0,0xa9,0xd2,0x58,0x8d,0xe0,0x8a,0x41,0xf7,0x37,0x17,0xfd,0x7e,0x29,0x62,0x0f,0xb8,0x01,0x14,0x2d,0xa0,0x0f,0x90,0x00,0xf8,0x0a,0x18,0x00,0x2c,0xc0,0x1f,0xd0,0xc0,0x76,0xf0,0x1e,0x10,0x00,0x59,0xe0,0x3b,0x7c,0x01,0xee,0x8f,0x13,0x79,0xd8,0xc0,0x07,0xc0,0x27,0x84,0x01,0x9f,0x08,0x38,0x3f,0x7f,0x84,0xee,0xff,0x03,0xe4,}; -const uint8_t _A_Wink_128x64_8[] = {0x01,0x00,0x95,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x00,0xf8,0x3f,0xf1,0xf0,0x7e,0x4e,0x02,0x23,0x01,0x07,0xdc,0x1e,0x01,0xf0,0x87,0x03,0xab,0x81,0xff,0xdf,0xc7,0xae,0x00,0xfa,0x98,0x40,0x2a,0x90,0x7e,0xc0,0xc2,0xa3,0x10,0x0d,0x54,0x0f,0x1d,0x03,0x07,0xcc,0x12,0x01,0x55,0x81,0xc4,0xc8,0x16,0x1f,0x1e,0x0d,0x86,0x10,0x0f,0xbe,0xad,0xc3,0x08,0x34,0x10,0x03,0xe0,0x00,0x43,0xea,0x8c,0x42,0x22,0x3e,0x08,0x78,0x3d,0xa8,0x00,0x21,0xaa,0xe3,0x22,0x13,0x88,0xe5,0xe0,0x1e,0xd2,0x00,0x10,0xda,0xa0,0x92,0x19,0x64,0x1f,0x80,0x7e,0x7c,0x07,0xfe,0x7f,0x0c,0x81,0x79,0xa0,0x38,0x04,0x13,0x44,0x03,0x03,0x18,0x8c,0x61,0x24,0x6b,0x31,0x07,0xb4,0x22,0xc1,0xfe,0x99,0xcc,0x3c,0x11,0x08,0x07,0xe0,0x1e,0xd0,0x49,0x84,0x06,0xc9,0x20,0x9c,0x43,0x20,0x1f,0xe1,0xfb,0x40,0xb2,0x10,0x0e,0x41,0xb0,0x60,0x58,0x0b,0xf8,0x3d,0xa0,0x34,0x8f,0xe6,0x44,0x0a,0x5e,0x09,0xfa,0x41,0xe5,0x1f,0xed,0x1c,0x04,0xa6,0x3f,0x08,0xf8,0x3d,0xe4,0x9f,0xf9,0x3c,0x05,0xe6,0x3f,0xc4,0xfb,0xc0,0x22,0x9f,0xfa,0x3c,0x05,0x9c,0x3f,0xe8,0x38,0x3d,0xf2,0x9e,0x7a,0x7c,0x06,0x0c,0x94,0x18,0x18,0x3e,0xb0,0x24,0x01,0xff,0x9f,0x98,0x1e,0x5f,0xfa,0x7d,0xc6,0x01,0xe0,0xff,0xbc,0x20,0x1e,0x51,0xd2,0xf0,0x9f,0x9c,0x1e,0x84,0xb1,0xfc,0x1f,0xa3,0x01,0x96,0xff,0x86,0xcb,0xf8,0x7e,0x8a,0x04,0x97,0xff,0x41,0x02,0x8f,0xf8,0xfd,0x1a,0x09,0x55,0xf8,0x0a,0x5f,0xf3,0xf4,0x54,0x29,0xb1,0xe1,0xa1,0x1f,0xa7,0x51,0x9a,0x81,0x01,0x04,0xfc,0x58,0x01,0x0b,0x54,0x32,0xa8,0x92,0xf8,0x7f,0xca,0x83,0x0e,0x0f,0xb7,0xa8,0x08,0x5f,0x88,0x09,0x7c,0x61,0x21,0xf6,0xaa,0x81,0x0b,0xf9,0x00,0xb8,0x70,0x1a,0x62,0x1f,0x59,0x50,0x10,0xa7,0xcb,0x01,0x9c,0x83,0xda,0xa1,0x15,0x80,0x58,0x30,0x02,0xd1,0xc0,0x43,0xe0,0x81,0xf6,0x85,0x17,0x47,0xe0,0xad,0x1f,0x84,0x00,0x1e,0xd5,0x08,0x2a,0x34,0x80,0x02,0x21,0x13,0xb1,0x07,0xd8,0x00,0xa7,0x62,0x0f,0xbb,0x5d,0x17,0xee,0x1f,0x6a,0x02,0xc1,0xc0,0x0d,0x3c,0x07,0x6f,0x01,0xa1,0x00,0x05,0x98,0x03,0xb5,0x1c,0x20,0xfd,0xb8,0x13,0x79,0xd8,0xc0,0xff,0x1f,0x78,0x01,0xfe,0x10,0x70,0x7e,0xff,0x0f,0xbd,0xfe,0x07,0xc8,}; -const uint8_t *_A_Wink_128x64[] = {_A_Wink_128x64_0,_A_Wink_128x64_1,_A_Wink_128x64_2,_A_Wink_128x64_3,_A_Wink_128x64_4,_A_Wink_128x64_5,_A_Wink_128x64_6,_A_Wink_128x64_7,_A_Wink_128x64_8}; +const uint8_t _A_BoxActive_128x51_0[] = {0x01,0x00,0x61,0x01,0x00,0x78,0x03,0xe0,0x1f,0x08,0x08,0x3f,0x61,0x11,0xe0,0x7e,0xc1,0x3c,0x02,0x07,0xfc,0x61,0x31,0x10,0x80,0x79,0x40,0x21,0xd0,0x0e,0x05,0xfc,0x52,0x94,0xad,0x50,0x30,0x60,0x10,0x28,0x04,0x42,0x01,0x30,0xc0,0x08,0xca,0x1f,0x08,0x92,0x67,0x01,0x82,0x0f,0x29,0x00,0x64,0x60,0x10,0x62,0xb8,0xc0,0x2f,0x11,0x0d,0x50,0x58,0xbf,0xf0,0x10,0x78,0x89,0x84,0x22,0x23,0x51,0x84,0x52,0x31,0x01,0xf2,0x80,0xc3,0x81,0xe2,0x33,0x21,0x89,0x42,0x34,0x98,0x01,0xf9,0x40,0x66,0x00,0xf3,0x90,0x50,0x09,0xe5,0x42,0xc0,0x09,0x87,0x00,0x5c,0x18,0x88,0x4c,0x60,0x14,0x00,0xa0,0x80,0x14,0x1e,0x30,0x08,0xb0,0x3c,0xd1,0xce,0x0f,0x28,0xc0,0x3c,0x80,0xc4,0x0f,0x81,0xa0,0x83,0xfc,0xec,0x4b,0x47,0x2b,0x9c,0x03,0x02,0x60,0x10,0x7e,0x55,0x62,0xb0,0x08,0x38,0x3e,0xf5,0x72,0xa8,0x04,0x68,0x1f,0x09,0x42,0xff,0xc5,0xe0,0x16,0x40,0x7b,0x21,0xc6,0x80,0x0f,0x29,0x7c,0x03,0x08,0x40,0x60,0x78,0xf0,0x27,0xf0,0x0f,0xf0,0x7c,0x61,0x0c,0xa2,0x07,0xac,0x83,0x81,0x03,0xff,0x42,0x9a,0x02,0xca,0x20,0x7b,0x07,0x87,0xff,0x7f,0x07,0x89,0x54,0x41,0xed,0x30,0x6f,0x10,0x1c,0xa2,0x00,0xfd,0x70,0x38,0x3c,0xa5,0x00,0xfe,0x8c,0x03,0xcf,0x00,0xf1,0x60,0x79,0x1a,0x90,0x1f,0x32,0x08,0x44,0x38,0x10,0x78,0x10,0x7b,0xd8,0x3f,0x1f,0x30,0x7e,0x68,0x1b,0x42,0xa1,0x10,0x00,0xe3,0xc1,0xef,0x00,0x4c,0x8a,0x84,0x40,0xa3,0x71,0x67,0xd2,0x84,0x44,0x62,0xcf,0x80,0xf9,0x40,0x2a,0x90,0x50,0x7b,0x99,0x88,0x1e,0x3e,0x0d,0x79,0xc8,0x41,0xf2,0xc9,0x1a,0x85,0x7c,0x1a,0x20,0xfb,0xd8,0x4b,0xc0,0xa2,0x0f,0xba,0xc4,0x7c,0x1f,0x18,0x00,0x10,0xba,0x47,0x51,0x2a,0x07,0xed,0x62,0x3a,0x1f,0xe8,0xd0,0x3e,0x00,0xe4,0x82,0x10,0xf9,0x05,0xc8,0x1f,0x3b,0x08,0xf0,0x3e,0x51,0x22,0x2f,0x1e,0x04,0x4c,0x1f,0x70,0xc3,0x91,0x83,0xe2,0x08,0xdc,0x30,0x7d,0xce,0x00,0x86,0x97,0x30,0x02,0xc6,0x1d,0x42,0x0f,0xcf,0x01,0x11,0x5e,0xe4,0x00,0xa0,0x7c,0x80,}; +const uint8_t _A_BoxActive_128x51_1[] = {0x01,0x00,0x8d,0x01,0x00,0x78,0x03,0xe0,0x1f,0x08,0x08,0x26,0x20,0x00,0xa3,0x84,0x47,0x81,0xef,0x10,0x80,0x83,0xce,0x09,0xe0,0x10,0x3c,0x43,0x33,0x33,0x83,0x83,0xca,0x01,0x0e,0x80,0x70,0x2f,0xe2,0xf4,0x92,0x52,0x43,0x45,0x02,0x0b,0x8c,0x02,0x61,0x80,0x04,0x14,0x3e,0x21,0x3c,0xbc,0x83,0xd2,0x40,0x43,0x18,0x04,0x18,0x9a,0x51,0x08,0x24,0x24,0x1e,0x5f,0xf8,0x08,0x3c,0x46,0x62,0x11,0x11,0xa8,0xc4,0x23,0x13,0x10,0x79,0x40,0x61,0xc0,0xf1,0x19,0x90,0xc4,0xc0,0x09,0x01,0x98,0x03,0xce,0x41,0x40,0x07,0x36,0x00,0xb8,0x31,0x14,0x39,0x50,0x02,0x82,0x0f,0x78,0x04,0x58,0x1e,0x69,0x47,0x07,0x94,0x60,0x1e,0x40,0x62,0x07,0xc1,0x6c,0x41,0xe9,0x88,0x04,0x15,0x02,0x10,0x0f,0x60,0x11,0x52,0x01,0xe6,0x38,0x30,0x30,0xe0,0x4c,0x02,0x0f,0x19,0x47,0x33,0x97,0x24,0xac,0xc2,0x81,0xe9,0x55,0x8a,0xc0,0x19,0x23,0x18,0x89,0x4a,0xa4,0xb4,0x58,0x48,0x3d,0x35,0x72,0xa8,0x04,0x68,0x3e,0x39,0x29,0x4c,0x97,0x93,0x08,0x07,0x8e,0x01,0x5a,0x3f,0xf8,0xbc,0x02,0xc8,0x3f,0x1a,0x94,0xa2,0x4b,0x51,0x84,0xa1,0xc6,0x80,0x0f,0x29,0x7c,0x03,0x09,0x01,0xc4,0x0f,0xc7,0xb1,0x4c,0x85,0x03,0xc7,0x81,0x3f,0x80,0x7f,0x83,0xe3,0x08,0x29,0x08,0x01,0x01,0xe3,0x20,0xe0,0x40,0xff,0xd0,0xa7,0x61,0x03,0xe0,0x3c,0x35,0x78,0x28,0x3c,0x4a,0xa2,0x0f,0x69,0x83,0x78,0x4b,0xc2,0x07,0x18,0x80,0x3e,0x93,0xe4,0xe0,0x70,0x79,0x4a,0x01,0xfd,0x18,0xc1,0x24,0x8b,0x00,0xf1,0x60,0x79,0x42,0x01,0xe2,0x5c,0x10,0x7c,0xc8,0x21,0x18,0xe8,0x04,0x2c,0x10,0x38,0x10,0x7b,0xd8,0x3f,0x1f,0x3f,0x01,0xbc,0x41,0xf3,0xa0,0x6d,0x0f,0xfe,0x17,0x80,0x80,0x09,0x04,0x1e,0xc3,0xc2,0x80,0x41,0x41,0xe3,0x72,0x07,0xbb,0x3c,0xa0,0x18,0x2a,0x3a,0x10,0x43,0xf7,0x7e,0xbe,0x03,0xdc,0xcc,0x40,0xf2,0x81,0x20,0x04,0x1f,0x2c,0x92,0x80,0x83,0xfc,0x06,0x2b,0x32,0x07,0xf8,0x00,0xcd,0x02,0xfa,0x10,0x79,0x44,0x30,0x00,0xfe,0xb0,0x03,0xf3,0xc5,0x11,0x8e,0x03,0xd8,0x6e,0x48,0x22,0xc2,0x7f,0xb0,0x60,0xe6,0x07,0xad,0xe0,0x4e,0x60,0x05,0x3b,0x88,0xbc,0x8b,0xc2,0x0f,0xa8,0x60,0x3f,0x20,0x9c,0x08,0x18,0x3f,0x67,0x00,0x43,0x4b,0x98,0x01,0x63,0x10,0x70,0x7e,0xf8,0x08,0x8a,0x64,0x20,0x05,0x03,0xe4,}; +const uint8_t *_A_BoxActive_128x51[] = {_A_BoxActive_128x51_0,_A_BoxActive_128x51_1}; + +const uint8_t _A_Box_128x51_0[] = {0x01,0x00,0x1f,0x01,0x00,0x7c,0x03,0xf1,0xff,0x83,0x83,0xf2,0x09,0x00,0x84,0x03,0xf2,0x05,0x00,0x88,0x03,0xf2,0x03,0x00,0x90,0x03,0xfc,0x08,0x38,0x0b,0xf8,0x3f,0x6c,0x18,0x00,0x30,0x83,0xee,0x30,0x46,0x20,0x03,0x7f,0x7f,0xf2,0xf3,0x21,0x80,0x44,0x00,0xd0,0x38,0x04,0xc0,0xc8,0x67,0x48,0x17,0xa0,0x10,0x41,0xfe,0x84,0x80,0x7f,0x83,0xcf,0x00,0x06,0x10,0x7f,0xa9,0x20,0x1f,0xe0,0xf4,0xaa,0x83,0xfb,0x55,0x02,0x07,0xed,0xfe,0x0b,0x40,0x07,0xe7,0xfe,0x04,0x0f,0xce,0x07,0xfc,0x3f,0x9c,0x0f,0x87,0xfe,0x07,0xc0,0x07,0xd4,0x82,0x13,0x40,0x80,0x9c,0x88,0x1f,0x11,0x08,0x50,0x18,0x70,0x00,0x71,0x07,0xc4,0x22,0x18,0x0f,0x27,0x90,0x83,0xe2,0x09,0x1c,0x07,0x94,0x10,0x1f,0x30,0x29,0xd0,0x3c,0xa1,0x00,0xfa,0xef,0xc1,0xc1,0xe2,0xe0,0x70,0x79,0x60,0xbf,0xff,0xf2,0xf8,0xac,0x1c,0x1e,0x5c,0x29,0xfd,0x60,0x1f,0x9a,0x48,0xde,0x80,0x5e,0x2a,0x07,0x07,0x95,0x62,0x3b,0x60,0x0f,0x88,0x3e,0xb6,0x10,0xac,0x06,0x07,0x00,0xa0,0x70,0x79,0x58,0x21,0xb0,0x0a,0x10,0x3e,0xf0,0x10,0xf8,0x04,0xf8,0x1c,0x2b,0x06,0x77,0x9c,0x7e,0x01,0x02,0x07,0xe4,0x68,0x0a,0x38,0x08,0x38,0x3e,0xae,0x80,0x51,0xd0,0x46,0x01,0xf5,0xe8,0x16,0x8e,0x82,0x40,0x0f,0x30,0x19,0x03,0xcf,0xe1,0x43,0x80,0x64,0x38,0x05,0xf9,0x80,0x70,0x24,0xe0,0xf1,0x07,0x30,0x3d,0x20,0x17,0xe8,0x06,0x20,0x1f,0x9b,0xe8,0x0e,0x10,0x1f,0x95,0x68,0x36,0x0c,0x1f,0x92,0xaf,0xc2,0xb9,0xc1,0xeb,0x16,0x77,0x88,0x3f,0x21,0x40,0xf9,0x81,0x40,0x22,0x00,0x43,0x07,0xc4,0x12,0x01,0x08,0x07,0xe7,0xe3,0xff,0x07,0x07,0xe0,0xd1,0x81,0xee,}; +const uint8_t _A_Box_128x51_1[] = {0x01,0x00,0x40,0x01,0x00,0x78,0x03,0xe0,0x1f,0x08,0x08,0x3f,0x61,0x11,0xe0,0x7e,0xc1,0x3c,0x02,0x0d,0x82,0x40,0x21,0xd0,0x0e,0x05,0xfc,0x1f,0x30,0x28,0x04,0x42,0x01,0x30,0xc0,0x08,0xe4,0x1e,0x32,0x02,0x18,0xc0,0x20,0xc0,0xf8,0xff,0xc0,0x41,0xe2,0x33,0x10,0x88,0x80,0x1e,0x03,0x0e,0x07,0x88,0xcc,0xc1,0xf1,0x30,0x07,0x98,0x0c,0x40,0x0d,0x80,0x2e,0x0c,0x44,0x26,0x30,0x0a,0x00,0x3e,0x60,0x11,0x60,0x7f,0x46,0x01,0xe4,0x06,0x20,0x7c,0x16,0xc4,0x1f,0xe8,0xd2,0x48,0x38,0xe0,0x81,0xe3,0x81,0x30,0x08,0x3f,0x2a,0xb1,0x58,0x04,0x1c,0x1f,0x7a,0xb9,0x54,0x02,0x34,0x0f,0x8c,0x02,0xb4,0x7f,0xf1,0x78,0x05,0x90,0x1e,0xc9,0x81,0xa0,0x03,0xca,0x5f,0x00,0xc2,0x10,0x18,0x1e,0x3c,0x09,0xfc,0x03,0xfc,0x1f,0x18,0x41,0x48,0x41,0xed,0x20,0xe0,0x40,0xff,0xd0,0xa6,0x80,0x89,0x44,0x1e,0xe1,0xe1,0xab,0xc1,0x41,0xe2,0xf1,0x60,0x68,0xcc,0x1b,0xc2,0x5e,0x10,0x38,0xbc,0x58,0x1e,0x84,0xb2,0xa0,0x3c,0x58,0x1e,0x52,0x80,0x7f,0x46,0x30,0x49,0x22,0xc0,0x3c,0x58,0x1e,0x50,0x80,0x78,0x97,0x04,0x1f,0x32,0x08,0x46,0x3a,0x01,0x0b,0x04,0x0e,0x04,0x1e,0xf6,0x0f,0xc7,0xcf,0xc0,0x6f,0x10,0x7c,0xe8,0x1b,0x43,0xff,0x85,0xe0,0x20,0x02,0x41,0x07,0xb0,0xf0,0xa0,0x10,0x50,0x78,0xdc,0x99,0xf5,0x00,0xc1,0x51,0xd0,0x82,0x1f,0xbb,0xf5,0xf0,0x1e,0xe6,0x62,0x07,0x94,0x09,0x00,0x20,0xf9,0x64,0x94,0x04,0x1f,0xe0,0x31,0x59,0x90,0x3f,0xc1,0xa6,0x68,0x17,0xd0,0x83,0xca,0x21,0x80,0x0f,0xb0,0x3d,0xec,0x00,0xfc,0xf1,0x44,0x63,0x80,0xf6,0x1b,0x92,0x08,0xb0,0x9f,0xec,0x18,0x39,0x81,0xeb,0x78,0x13,0x98,0x01,0x4e,0xe2,0x2f,0x22,0xf0,0x83,0xea,0x18,0x0f,0xc8,0x27,0x02,0x06,0x0f,0xd9,0xc0,0x10,0xd2,0xe6,0x00,0x58,0xc4,0x1c,0x1f,0xbe,0x02,0x22,0x99,0x08,0x01,0x40,0xf9,}; +const uint8_t _A_Box_128x51_2[] = {0x01,0x00,0xf9,0x00,0x00,0x7c,0x03,0xf1,0xff,0x83,0x83,0xf2,0x09,0x00,0x84,0x03,0xf2,0x05,0x00,0x88,0x03,0xf2,0x03,0x00,0x90,0x03,0xfc,0x08,0x38,0x0b,0xf8,0x3f,0x6c,0x18,0x00,0x30,0x83,0xee,0x30,0x46,0x20,0x03,0x7f,0x7f,0xf2,0xf3,0x21,0x80,0x44,0x00,0xd0,0x38,0x04,0xc0,0xc8,0x67,0x48,0x17,0xa0,0x10,0x41,0xfe,0x84,0x80,0x7f,0x83,0xcf,0x00,0x06,0x10,0x7f,0xa9,0x20,0x1f,0xe0,0xf4,0xaa,0x83,0xfb,0x54,0x0f,0xea,0xfc,0x06,0x80,0x0f,0xcd,0xfc,0x00,0x1f,0x9c,0x07,0x70,0x83,0xf2,0x61,0x54,0x31,0x18,0x3e,0x57,0x85,0xa0,0x07,0xf7,0x00,0x1f,0xc2,0xfb,0xc0,0x45,0xc0,0xe8,0x0f,0x8a,0x04,0xe0,0x0e,0x50,0x20,0x7c,0xc8,0x3c,0x10,0x70,0x38,0xc1,0x01,0xf3,0x10,0xa0,0x5f,0x80,0xe2,0x43,0x20,0x7c,0x60,0x2a,0xc0,0x71,0x88,0x03,0xe4,0x34,0x32,0xb0,0x7f,0x07,0xc9,0xc0,0xe0,0xf4,0x95,0x21,0x4c,0x7f,0x30,0x0e,0xb8,0x1c,0x5a,0x0e,0x0f,0x2d,0x06,0x01,0x00,0x40,0xfa,0xe0,0x50,0x40,0xe4,0xb0,0x32,0x99,0x8e,0x4e,0x46,0x0f,0x66,0x7b,0xcd,0xc1,0xc5,0x83,0x07,0xd4,0x7c,0x1e,0x58,0xc0,0x7d,0x4f,0xc1,0xe5,0x90,0x07,0xd2,0xf8,0x5e,0x63,0x60,0x07,0xd7,0xe0,0xb2,0x24,0xe7,0x07,0xa7,0x82,0x03,0x08,0x07,0xe4,0x02,0x0f,0x06,0x07,0xef,0xfa,0x02,0x0f,0xd8,0xb2,0x3a,0x01,0xeb,0x0a,0x07,0xcc,0x09,0x6a,0x60,0x41,0x07,0xc4,0x12,0x00,0xfe,0x10,0x7d,0xfe,0x3f,0xf0,0x70,0x7e,0x0d,0x18,0x1e,0xe0,}; +const uint8_t _A_Box_128x51_3[] = {0x01,0x00,0x3c,0x01,0x00,0x78,0x03,0xe0,0x1f,0x08,0x08,0x3f,0x61,0x11,0xe0,0x7e,0xc1,0x3c,0x02,0x0d,0x82,0x40,0x21,0xd0,0x0e,0x05,0xfc,0x1f,0x30,0x28,0x04,0x42,0x01,0x30,0xc0,0x08,0xe4,0x1e,0x32,0x02,0x18,0xc0,0x20,0xc0,0xf8,0xff,0xc0,0x41,0xe2,0x33,0x10,0x88,0x80,0x1e,0x03,0x0e,0x07,0x88,0xcc,0xc1,0xf1,0x30,0x07,0x98,0x0c,0x40,0x0d,0x80,0x2e,0x0c,0x44,0x26,0x30,0x0a,0x00,0x3e,0x60,0x11,0x60,0x7f,0x46,0x01,0xe4,0x06,0x20,0x7c,0x16,0xc4,0x1f,0xe8,0xd2,0x48,0x38,0xe0,0x81,0xe3,0x81,0x30,0x08,0x3f,0x2a,0xb1,0x58,0x04,0x1c,0x1f,0x7a,0xb9,0x54,0x02,0x34,0x0f,0x8c,0x02,0xb4,0x7f,0xf1,0x78,0x05,0x90,0x1e,0xc9,0x81,0xa0,0x03,0xca,0x5f,0x00,0xc2,0x10,0x18,0x1e,0x3c,0x09,0xfc,0x03,0xfc,0x1f,0x18,0x41,0x48,0x41,0xed,0x20,0xe0,0x40,0xff,0xd0,0xa6,0x80,0x89,0x44,0x1e,0xe1,0xe1,0xff,0xdf,0xc1,0xe2,0xf1,0x60,0x68,0xcc,0x1b,0xc4,0x07,0x27,0x8b,0x03,0xde,0x80,0xf1,0x60,0x79,0x4a,0x01,0xfd,0x18,0x07,0x9e,0x01,0xe2,0xc0,0xf2,0x35,0x20,0x3e,0x64,0x10,0x88,0x70,0x20,0xf0,0x20,0xf7,0xb0,0x7e,0x3e,0x60,0xfc,0xd0,0x36,0x85,0x42,0x20,0x01,0xc7,0x83,0xde,0x00,0x99,0x15,0x08,0x81,0x46,0xe2,0xcf,0xa5,0x08,0x88,0xc5,0x9f,0x01,0xf2,0x80,0x55,0x20,0xa0,0xf7,0x33,0x10,0x3c,0x7c,0x1a,0xf3,0x90,0x83,0xe5,0x92,0x35,0x0a,0xf8,0x34,0x41,0xf7,0xb0,0x97,0x81,0x44,0x1f,0x75,0x88,0xf8,0x3d,0x81,0xa3,0x80,0x02,0x0b,0xa4,0x75,0x12,0xa0,0xfc,0x03,0xd2,0xb1,0x1d,0x07,0xee,0xa2,0x34,0x0f,0x80,0x39,0x20,0x84,0x3e,0x41,0x72,0x07,0xce,0xc2,0x3c,0x0f,0x94,0x48,0x8b,0xc7,0x81,0x13,0x07,0xdc,0x30,0xe4,0x60,0xf8,0x82,0x37,0x0c,0x1f,0x73,0x80,0x21,0xa5,0xcc,0x00,0xb1,0x87,0x50,0x83,0xf3,0xc0,0x44,0x57,0xb9,0x00,0x28,0x1f,0x20,}; +const uint8_t *_A_Box_128x51[] = {_A_Box_128x51_0,_A_Box_128x51_1,_A_Box_128x51_2,_A_Box_128x51_3}; + +const uint8_t _A_CardBad_128x51_0[] = {0x01,0x00,0x01,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfe,0x01,0x82,0x04,0x0c,0x4a,0x01,0x70,0x8f,0x01,0x46,0x08,0x0f,0x5e,0x30,0x24,0x60,0x50,0x0c,0x44,0x88,0x1f,0x1a,0xaa,0x64,0xeb,0xaf,0x71,0x84,0x48,0xb1,0x93,0xb8,0x39,0x3d,0x72,0x55,0x2a,0x50,0x04,0x6e,0x12,0x2a,0x96,0x28,0x3e,0x20,0xf4,0xc1,0x03,0xcf,0x01,0x22,0xa1,0x03,0xf0,0x7e,0x21,0xf9,0xc6,0x52,0xea,0x57,0x22,0xf8,0xe3,0x21,0x63,0xf6,0x00,0x1d,0x01,0x3f,0xd3,0x05,0x7f,0x83,0xfc,0x1f,0xe0,0xf5,0xcf,0xfc,0xee,0x77,0xe0,0x5b,0x7e,0x28,0x10,0x18,0x25,0x02,0x7f,0xf9,0x93,0x87,0xde,0x11,0x00,0x07,0x8e,0x82,0xff,0xfc,0xc7,0x83,0xe2,0xb9,0x19,0x83,0xf4,0x01,0xf5,0x78,0xa9,0x69,0x60,0x9f,0x01,0x7d,0xd4,0xb7,0xa0,0xf1,0x27,0xd0,0x3c,0x70,0xa0,0xf1,0x37,0xd0,0xfc,0xc1,0xf6,0x00,0x30,0x7f,0xf0,0x01,0xff,0xff,0x83,0xfe,0x01,0xfb,0xf9,0xf0,0x83,0xf6,0x19,0xc6,0x07,0xb0,0xe8,0xe0,0x34,0x0f,0xfc,0x1b,0x90,0x0f,0x69,0x80,0x0c,0xa0,0x5a,0x0f,0xfc,0xd8,0x1e,0xf1,0x80,0x19,0x41,0x3a,0x05,0xd1,0xfe,0x03,0xec,0xff,0x51,0x8b,0x84,0x8a,0x04,0x0f,0xcc,0x44,0x4a,0x0c,0x0f,0xd8,0x54,0x38,0x1f,0xb0,0x68,0xf0,0x7f,0xc7,0xfe,0x5f,0xf0,0x7e,0x1f,0xfc,0x1f,0xd3,0x85,0xf9,0x83,0xe8,0x14,0x70,0x1f,0x00,0x10,0xa7,0xe0,0xf5,0x05,0x18,0x25,0x40,0x1e,0x00,0xf0,0x07,0x80,0x28,}; +const uint8_t _A_CardBad_128x51_1[] = {0x01,0x00,0x12,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfe,0x01,0x82,0x04,0x0c,0x4a,0x01,0x70,0x8f,0x01,0x46,0x08,0x0f,0x5e,0x30,0x24,0x60,0x50,0x0c,0x44,0x88,0x1f,0x1a,0xaa,0x64,0xeb,0xaf,0x71,0x84,0x48,0xb1,0x93,0xb8,0x39,0x3d,0x72,0x55,0x2a,0x50,0x04,0x6e,0x12,0x2a,0x96,0x28,0x3e,0x20,0xf4,0xc1,0x03,0xcf,0x01,0x22,0xa1,0x03,0xf0,0x7e,0x21,0xf9,0xc6,0x52,0xea,0x57,0x22,0xf8,0xe3,0x21,0x63,0xf6,0x00,0x1d,0x01,0x3f,0xd3,0x05,0x7f,0x83,0xfc,0x1f,0xe0,0xf5,0xcf,0xfc,0xee,0x77,0xe0,0x5b,0x7e,0x28,0x10,0x18,0x25,0x02,0x7f,0xf9,0x93,0x87,0xde,0x11,0x00,0x07,0x8e,0x82,0xff,0xfc,0xc7,0x83,0xe2,0xb9,0x19,0x83,0xf4,0x01,0xf5,0x78,0xa9,0x69,0x60,0x9f,0x01,0x7d,0xd4,0xb7,0xa0,0xf1,0x27,0xd0,0x3c,0x70,0xa0,0xf1,0x37,0xd0,0xfc,0xc1,0xf6,0x00,0x30,0x7f,0xf0,0x01,0xff,0xff,0x81,0xfc,0x01,0xfb,0xf8,0xe0,0x83,0xf2,0xff,0x4c,0xc3,0x03,0xd8,0x74,0x70,0x15,0xf8,0xe1,0xa1,0x00,0xf6,0x98,0x00,0xca,0x05,0xa0,0x9f,0xc5,0xa1,0x20,0xf6,0x8c,0x00,0xca,0x09,0xd0,0xbb,0xcf,0xb3,0x17,0xb0,0x7d,0x7c,0x3e,0xf3,0xff,0xc0,0x3d,0xee,0x12,0x28,0x10,0x3c,0x7d,0xee,0x01,0xbe,0x83,0xdb,0x11,0x12,0x83,0x2f,0xec,0x1e,0x30,0xa8,0x70,0x3f,0x60,0xd1,0xe0,0xff,0x83,0xf4,0x7f,0xc5,0xf4,0x07,0xd1,0xfd,0x01,0xfe,0x0f,0x99,0xc2,0xfc,0xc1,0xf4,0x0a,0x38,0x0f,0x80,0x08,0x53,0xf0,0x7a,0x82,0x8c,0x12,0xa0,0x0f,0x00,0x78,0x03,0xc0,0x14,}; +const uint8_t *_A_CardBad_128x51[] = {_A_CardBad_128x51_0,_A_CardBad_128x51_1}; + +const uint8_t _A_CardNoDBUrl_128x51_0[] = {0x01,0x00,0x33,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x16,0xf0,0x38,0x80,0x3f,0x28,0x10,0x40,0x7f,0x58,0x27,0x10,0x32,0x7d,0xd0,0x32,0xd9,0x08,0x20,0x3f,0x32,0x80,0xff,0x07,0xee,0x02,0xc7,0x10,0x1f,0xe2,0x7f,0xc1,0xfe,0x0f,0xf0,0x7f,0x83,0xd6,0x0e,0x0f,0x29,0xf0,0x20,0x60,0x30,0x1d,0x40,0x10,0x8e,0x63,0xff,0xfc,0xff,0x01,0xe3,0x47,0x07,0x9c,0x90,0x1e,0x7a,0x0f,0xfe,0x3b,0xf7,0x7f,0xc0,0x6b,0xa9,0x1c,0x7d,0xcc,0xcf,0x49,0xce,0xe0,0xe6,0x60,0x9d,0x0b,0xff,0xef,0xee,0x0f,0x1d,0xe5,0x22,0x53,0x25,0xa4,0xeb,0x2a,0x52,0x2d,0x2c,0x13,0xe1,0xbf,0xfe,0xfb,0xc1,0xe3,0x8f,0x07,0x95,0xe7,0x48,0x0f,0x1d,0xe8,0x3c,0xbf,0xe0,0xf2,0xcf,0x03,0xca,0x12,0x0f,0x2c,0x28,0x3c,0x7b,0xf1,0xfe,0xf8,0x3c,0x7b,0xd7,0x0e,0x3c,0xe6,0x63,0xa5,0xe7,0x72,0x63,0x30,0x30,0x78,0xfb,0xfb,0xc5,0xf1,0x00,0x89,0x64,0x40,0x03,0x42,0x01,0x90,0x3c,0x7f,0xe0,0xf2,0x3f,0x88,0x3d,0xf8,0x02,0xd1,0x00,0x8a,0x7e,0x81,0xe3,0xbf,0x07,0xe9,0x7c,0xc1,0xf9,0xbf,0x07,0xc7,0xe1,0xb4,0x30,0x1a,0x05,0xff,0xff,0xe7,0x07,0xbc,0x18,0x04,0x30,0x25,0xf8,0xff,0xb8,0x60,0xf7,0x81,0x80,0x85,0x7e,0x2d,0xf1,0xc0,0x03,0xef,0xe0,0xff,0x18,0x38,0x3d,0xf8,0x78,0x98,0x40,0x3c,0xbf,0xf0,0xfb,0xf0,0x3d,0xa4,0x74,0xa8,0xc0,0x3c,0xe3,0xf7,0xc0,0x7b,0xca,0xa7,0x00,0xf3,0x9f,0xde,0x01,0xef,0x1a,0xbc,0x03,0xce,0xfe,0x0f,0x80,0xfa,0xff,0xc1,0xf0,0x3f,0x51,0x00,0x97,0xf4,0x1f,0x07,0xf5,0x07,0xf8,0x3e,0x60,0xeb,0xf2,0x07,0xdf,0xf9,0xbe,0x5e,0x00,0x79,0x4f,0xc1,0xed,0xfc,0x05,0x08,0x25,0x80,0x1e,0x00,0xf0,0x07,0x80,0x24,}; +const uint8_t _A_CardNoDBUrl_128x51_1[] = {0x01,0x00,0x33,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x16,0xf0,0x38,0x80,0x3f,0x28,0x10,0x40,0x7f,0x58,0x27,0x10,0x32,0x7d,0xd0,0x32,0xd9,0x08,0x20,0x3f,0x32,0x80,0xff,0x07,0xee,0x02,0xc7,0x10,0x1f,0xe2,0x7f,0xc1,0xfe,0x0f,0xf0,0x7f,0x83,0xd6,0x3f,0xfc,0x07,0x8c,0xf8,0x10,0x30,0x18,0x0e,0xa0,0x08,0x47,0x31,0xff,0xf9,0xfe,0x60,0xf1,0xa3,0x83,0xce,0x48,0x0f,0x3d,0x07,0xfe,0x77,0xee,0xbf,0xe0,0x35,0xd4,0x8e,0x3e,0xe6,0x67,0xa4,0xe7,0x70,0x73,0x30,0x4e,0x87,0xff,0xdb,0xdf,0x07,0x8e,0xf2,0x91,0x29,0x92,0xd2,0x75,0x95,0x29,0x16,0x96,0x09,0xf0,0xff,0xfd,0xb7,0xe0,0xf1,0xc7,0x83,0xca,0xf3,0xa4,0x07,0x8e,0xf4,0x1e,0x5f,0xe0,0x79,0x67,0x81,0xe5,0x09,0x07,0x96,0x14,0x1e,0x37,0xf8,0xfd,0xfc,0x1e,0x3d,0xeb,0x87,0x1e,0x73,0x31,0xd2,0xf3,0xb9,0x31,0x98,0x18,0x3c,0x7d,0xf7,0xe2,0xf8,0x80,0x44,0xb2,0x20,0x01,0xa1,0x00,0xc8,0x1e,0x3f,0xf0,0x79,0x1f,0xc4,0x1e,0xfc,0x01,0x68,0x80,0x05,0x3f,0x40,0xf1,0x27,0x08,0x3f,0x0b,0xe6,0x0f,0xcd,0xf0,0x3e,0x3f,0x0d,0xa1,0x80,0xaf,0xc7,0xfb,0x9f,0x07,0xbc,0x18,0x04,0x30,0x25,0xf8,0xfe,0xe1,0xe0,0xf7,0x81,0x80,0x85,0x7e,0x5e,0x78,0x1d,0xf8,0x1f,0x4a,0xf1,0x8f,0xc7,0x2f,0x80,0xf6,0xe1,0xe2,0x61,0x00,0xf2,0xff,0xcf,0xef,0x00,0xf6,0x91,0xd2,0xa3,0x00,0xf3,0xbf,0xdc,0x01,0xef,0x2a,0x9c,0x03,0xcf,0xff,0x60,0x07,0xbc,0x6a,0xf0,0x0f,0x4b,0x08,0x7f,0xac,0x63,0xfd,0x20,0x09,0x7f,0x41,0xf0,0x7f,0x50,0x7f,0x83,0xe6,0x0e,0xbf,0x20,0x7d,0xff,0x9b,0xe5,0xe0,0x07,0x94,0xfc,0x1e,0xdf,0xc0,0x50,0x82,0x58,0x01,0xe0,0x0f,0x00,0x78,0x02,0x40,}; +const uint8_t _A_CardNoDBUrl_128x51_2[] = {0x01,0x00,0x2e,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x16,0xf0,0x38,0x80,0x3f,0x28,0x10,0x40,0x7f,0x58,0x27,0x10,0x32,0x7d,0xd0,0x32,0xd9,0x08,0x20,0x3f,0x32,0x80,0xff,0x07,0xee,0x02,0xc7,0x10,0x1f,0xe2,0x7f,0xc1,0xfe,0x0f,0xf0,0x7f,0x83,0xe6,0x7c,0x08,0x18,0x0c,0x07,0x50,0x04,0x23,0x98,0x83,0xd2,0x8e,0x0f,0x39,0x20,0x3c,0xf4,0x1f,0xf8,0xff,0xf2,0xff,0x80,0xd7,0x52,0x38,0xfb,0x99,0x9e,0x93,0x9d,0xc1,0xcc,0xc1,0x3a,0x1f,0xff,0x3f,0xcc,0x1e,0x3b,0xca,0x44,0xa6,0x4b,0x49,0xd6,0x54,0xa4,0x5a,0x58,0x27,0xc3,0xff,0x3b,0xf7,0x03,0xc7,0x1e,0x0f,0x2b,0xce,0x90,0x1e,0x3b,0xd0,0x79,0x7b,0x7b,0xe0,0xf1,0xcf,0x03,0xca,0x12,0x0f,0x2c,0x28,0x3c,0xa2,0xdb,0xf0,0x78,0xf7,0xae,0x1c,0x79,0xcc,0xc7,0x4b,0xce,0xe4,0xc6,0x60,0x60,0xf1,0xf7,0x6f,0x8b,0xe2,0x01,0x12,0xc8,0x80,0x06,0x84,0x03,0x2f,0x85,0xff,0xff,0x7e,0x3f,0x98,0x3d,0xf8,0x17,0xf0,0x01,0x27,0xe8,0x1e,0x23,0xe1,0x07,0xea,0x78,0x43,0xfe,0x0f,0x7f,0xc2,0xe8,0x60,0x2b,0xf1,0xff,0x04,0x04,0x1e,0xd0,0x60,0x10,0xc0,0x97,0xe2,0x0f,0x98,0x18,0x08,0x57,0xe5,0xfd,0xcf,0x83,0xed,0x1e,0x3f,0xb8,0x78,0x3d,0xf8,0x78,0x98,0x40,0x3c,0xbc,0xf0,0x3b,0xf0,0x3d,0xa4,0x74,0xa8,0xc0,0x3c,0xa3,0xf1,0xcb,0xe0,0x3d,0xe5,0x53,0x80,0x79,0x7f,0xe7,0xf7,0x80,0x7b,0xc6,0xaf,0x00,0xf3,0xbf,0xdc,0x03,0xfb,0xff,0xb0,0x0f,0xf0,0x00,0x36,0x12,0xfe,0x00,0x06,0xc6,0x7f,0xc2,0x01,0x03,0xfc,0x1e,0xd0,0x75,0xf9,0x03,0xef,0xfc,0xdf,0x2f,0x00,0x3c,0xa7,0xe0,0xf6,0xfe,0x02,0x84,0x12,0xc0,0x0f,0x00,0x78,0x03,0xc0,0x12,}; +const uint8_t _A_CardNoDBUrl_128x51_3[] = {0x01,0x00,0x31,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x16,0xf0,0x38,0x80,0x3f,0x28,0x10,0x40,0x7f,0x58,0x27,0x10,0x32,0x7d,0xd0,0x32,0xd9,0x08,0x20,0x3f,0x32,0x80,0xff,0x07,0xee,0x02,0xc7,0x10,0x1f,0xe2,0x7f,0xc1,0xfe,0x0f,0xf0,0x7f,0x83,0xe6,0x7c,0x08,0x18,0x0c,0x07,0x50,0x04,0x23,0x98,0x83,0xd2,0x8e,0x0f,0x39,0x20,0x3c,0xf4,0x1f,0xf8,0x38,0x3c,0x70,0x1a,0xea,0x47,0x1f,0x73,0x33,0xd2,0x73,0xb8,0x39,0x98,0x27,0x43,0xff,0xf9,0xfe,0x03,0xc7,0x79,0x48,0x94,0xc9,0x69,0x3a,0xca,0x94,0x8b,0x4b,0x04,0xf8,0x7f,0xf1,0xdf,0xb0,0x78,0xe3,0xc1,0xe5,0x79,0xd2,0x03,0xc7,0x7a,0x0f,0x1b,0xff,0xef,0xee,0x0f,0x1c,0xf0,0x3c,0xa1,0x20,0xf2,0xc2,0x83,0xc7,0x7f,0x1d,0xf7,0x83,0xc7,0xbd,0x70,0xe3,0xce,0x66,0x3a,0x5e,0x77,0x26,0x33,0x03,0x07,0x8f,0xbf,0xdc,0x5f,0x10,0x08,0x96,0x44,0x00,0x34,0x20,0x19,0x7c,0x3b,0xff,0xfe,0xf1,0xfc,0xc1,0xef,0xc0,0xef,0xdf,0xc0,0x22,0x9f,0xa0,0x78,0xef,0xc1,0xfd,0xff,0x0f,0xf8,0x3e,0x3f,0x0b,0xa1,0x80,0xd0,0x37,0xff,0xf3,0x78,0x83,0xda,0x0c,0x02,0x18,0x16,0x80,0x1f,0x50,0x30,0x10,0xaf,0xc6,0xff,0xff,0xf3,0x83,0xed,0x7e,0x3f,0xee,0x18,0x3d,0xf8,0x78,0x98,0x40,0x3c,0xbf,0x38,0x00,0x7b,0xc8,0xe9,0x51,0x80,0x79,0x41,0xe0,0xe0,0xf8,0x95,0x4e,0x01,0xe5,0xff,0x87,0xdf,0x81,0xef,0x1a,0xbc,0x03,0xce,0x3f,0x7c,0x0f,0xec,0xfe,0xf0,0x3f,0xcf,0xfd,0xfc,0x1e,0xe5,0xf5,0x00,0x08,0x3d,0xcf,0xea,0x20,0x20,0x7f,0x83,0xda,0x0e,0xbf,0x20,0x7d,0xff,0x9b,0xe5,0xe0,0x07,0x94,0xfc,0x1e,0xdf,0xc0,0x50,0x82,0x58,0x01,0xe0,0x0f,0x00,0x78,0x02,0x40,}; +const uint8_t *_A_CardNoDBUrl_128x51[] = {_A_CardNoDBUrl_128x51_0,_A_CardNoDBUrl_128x51_1,_A_CardNoDBUrl_128x51_2,_A_CardNoDBUrl_128x51_3}; + +const uint8_t _A_CardNoDB_128x51_0[] = {0x01,0x00,0x43,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xff,0x11,0x00,0x88,0x00,0x04,0x16,0x34,0x00,0x10,0xc1,0x01,0xf7,0x20,0x07,0xbe,0x62,0x19,0x9c,0x9d,0xdd,0xf3,0x91,0x99,0x1c,0x9a,0x3b,0x07,0x27,0xa6,0xa2,0x25,0x52,0xc9,0x65,0x2a,0x5a,0x4b,0x04,0xa7,0x4a,0x1f,0x10,0x79,0xf2,0x01,0xe7,0x92,0x9e,0x48,0x41,0xef,0x88,0x07,0x9c,0x4a,0x0b,0x22,0x07,0xc0,0xfc,0x62,0x77,0x7e,0xe6,0x62,0x43,0xc6,0x92,0x8f,0xd5,0x3f,0xe0,0xff,0x07,0xf8,0x3f,0xc1,0xf9,0x07,0x07,0xbd,0xc2,0x3c,0xaf,0x2a,0x07,0xff,0xf3,0xfc,0x07,0xb6,0x22,0x44,0x0f,0x2d,0x07,0xff,0x1d,0xfb,0x07,0xa6,0x02,0x73,0x08,0x91,0x63,0x27,0x70,0x7e,0x85,0xff,0xf7,0xf7,0x07,0xa5,0x02,0x95,0x70,0x91,0x54,0xb1,0x50,0x4f,0x86,0xff,0xfb,0xef,0x07,0xb6,0x02,0x45,0x42,0x07,0x9f,0xfc,0x1e,0xe3,0xf1,0x0f,0x9f,0x7e,0x3f,0xdf,0x1f,0xad,0x24,0xbe,0x38,0xc8,0x5c,0x1c,0x1e,0x3e,0xfe,0xf1,0xfe,0xc1,0xe3,0xff,0x07,0xe7,0x00,0x5a,0x22,0xf5,0x07,0xc6,0xfc,0x1f,0xa5,0xf7,0x07,0xc6,0xfc,0x1e,0xff,0xe6,0xd1,0x40,0x68,0x17,0xff,0xff,0x9c,0x1e,0xb8,0x08,0x08,0x10,0xa0,0x4b,0xf1,0xff,0x70,0xc1,0xeb,0xc0,0x02,0x1c,0x13,0xa0,0xdf,0x1c,0x00,0x3e,0xfe,0x0f,0xf1,0x83,0x83,0xda,0x11,0x02,0x80,0x42,0x01,0xe5,0xff,0x87,0xdf,0x81,0xeb,0x18,0x81,0xc0,0x23,0x00,0xf3,0x8f,0xdf,0x01,0xeb,0xa8,0x99,0x59,0xe7,0x00,0xf3,0x9f,0xde,0x01,0xeb,0x48,0xa5,0x64,0x6f,0x00,0xf3,0xbf,0x83,0xda,0x11,0x4a,0xf8,0x87,0xd3,0xfe,0x0f,0x88,0x88,0xfd,0x04,0x02,0x0f,0x69,0x95,0x84,0xbe,0x80,0xf7,0x3f,0xb0,0x3f,0xc1,0xf0,0xbf,0x40,0x7c,0xe0,0x01,0x24,0xdf,0x1f,0x00,0x10,0xa7,0xee,0xf5,0x07,0x98,0x25,0x40,0x1e,0x00,0xf0,0x07,0x80,0x28,}; +const uint8_t _A_CardNoDB_128x51_1[] = {0x01,0x00,0x45,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xff,0x11,0x00,0x88,0x00,0x04,0x16,0x34,0x00,0x10,0xc1,0x01,0xf7,0x20,0x07,0xbe,0x62,0x19,0x9c,0x9d,0xdd,0xf3,0x91,0x99,0x1c,0x9a,0x3b,0x07,0x27,0xa6,0xa2,0x25,0x52,0xc9,0x65,0x2a,0x5a,0x4b,0x04,0xa7,0x4a,0x1f,0x10,0x79,0xf2,0x01,0xe7,0x92,0x9e,0x48,0x41,0xef,0x88,0x07,0x9c,0x4a,0x0b,0x22,0x07,0xc0,0xfc,0x62,0x77,0x7e,0xe6,0x62,0x43,0xc6,0x92,0x8f,0xd5,0x3f,0xe0,0xff,0x07,0xf8,0x3f,0xc1,0xf9,0x1f,0xfe,0x03,0xda,0xe1,0x1e,0x57,0x95,0x03,0xff,0xe7,0xf9,0x83,0xdb,0x11,0x22,0x07,0x96,0x83,0xff,0x3b,0xf7,0x03,0xd3,0x01,0x39,0x84,0x48,0xb1,0x93,0xb8,0x3f,0x43,0xff,0xed,0xef,0x83,0xd2,0x81,0x4a,0xb8,0x48,0xaa,0x58,0xa8,0x27,0xc3,0xff,0xf6,0xdf,0x83,0xdb,0x01,0x22,0xa1,0x03,0xcf,0xfc,0x0f,0x71,0xf8,0x87,0xce,0xff,0x1f,0xbf,0x8f,0xd6,0x92,0x5f,0x1c,0x64,0x2e,0x0e,0x0f,0x1f,0x7d,0xf8,0xff,0x60,0xf1,0xff,0x83,0xf3,0x80,0x2d,0x11,0x7a,0x83,0xe0,0x9c,0x20,0xfc,0x2f,0xb8,0x3e,0x37,0xc0,0xf7,0xff,0x36,0x8a,0x02,0xbf,0x1f,0xee,0x7c,0x1e,0xb8,0x08,0x08,0x10,0xa0,0x4b,0xf1,0xfd,0xc3,0xc1,0xeb,0xc0,0x02,0x1c,0x11,0x7e,0x3e,0x78,0x1d,0xf8,0x1f,0x4a,0xf1,0x8f,0xc7,0x2f,0x80,0xf5,0x84,0x40,0xa0,0x10,0x80,0x79,0x7f,0xe7,0xf7,0x80,0x7a,0xc6,0x20,0x70,0x08,0xc0,0x3c,0xef,0xf7,0x00,0x7a,0xea,0x26,0x56,0x79,0xc0,0x3c,0xff,0xf6,0x00,0x7a,0xd2,0x29,0x59,0x1b,0xc0,0x3d,0x2c,0x23,0xf6,0xa5,0x7c,0x43,0xeb,0x63,0x07,0xbc,0x44,0x7e,0x84,0x01,0x07,0xb4,0xca,0xc2,0x5f,0x40,0x7b,0x9f,0xd8,0x1f,0xe0,0xf8,0x5f,0xa0,0x3e,0x70,0x00,0x92,0x6f,0x8f,0x80,0x08,0x53,0xf7,0x7a,0x83,0xcc,0x12,0xa0,0x0f,0x00,0x78,0x03,0xc0,0x14,}; +const uint8_t _A_CardNoDB_128x51_2[] = {0x01,0x00,0x43,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xff,0x11,0x00,0x88,0x00,0x04,0x16,0x34,0x00,0x10,0xc1,0x01,0xf7,0x20,0x07,0xbe,0x62,0x19,0x9c,0x9d,0xdd,0xf3,0x91,0x99,0x1c,0x9a,0x3b,0x07,0x27,0xa6,0xa2,0x25,0x52,0xc9,0x65,0x2a,0x5a,0x4b,0x04,0xa7,0x4a,0x1f,0x10,0x79,0xf2,0x01,0xe7,0x92,0x9e,0x48,0x41,0xef,0x88,0x07,0x9c,0x4a,0x0b,0x22,0x07,0xc0,0xfc,0x62,0x77,0x7e,0xe6,0x62,0x43,0xc6,0x92,0x8f,0xd5,0x3f,0xe0,0xff,0x07,0xf8,0x3f,0xc1,0xfe,0x0a,0x5b,0x84,0x79,0x5e,0x54,0x00,0x7c,0xe2,0x24,0x40,0xf2,0xd0,0x7f,0xe3,0xff,0xc0,0x7a,0x60,0x27,0x30,0x89,0x16,0x32,0x77,0x07,0xe8,0x7f,0xfc,0xff,0x30,0x7a,0x50,0x29,0x57,0x09,0x15,0x4b,0x15,0x04,0xf8,0x7f,0xe7,0x7e,0xe0,0x7b,0x60,0x24,0x54,0x20,0x79,0xfb,0x7b,0xe0,0xf6,0x1f,0x88,0x7d,0x22,0xdb,0xf1,0xfa,0xd2,0x4b,0xe3,0x8c,0x85,0xc1,0xc1,0xe3,0xee,0xdf,0x1f,0xef,0xe1,0x7f,0xff,0xdf,0x81,0xf7,0xc0,0xbf,0x80,0x08,0x1f,0x83,0xe1,0x07,0xea,0x78,0x43,0xfe,0x0f,0x6f,0xf2,0xe8,0xa0,0x2b,0xf1,0xff,0x1b,0xd4,0xe0,0x30,0x10,0x21,0x40,0x97,0xe2,0x0f,0x7e,0x00,0x10,0xe0,0x8b,0xf1,0xfe,0xe7,0xc1,0xf6,0x8f,0x1f,0xdc,0x3c,0x1e,0xd0,0x88,0x14,0x02,0x10,0x0f,0x2f,0x3c,0x0e,0xfc,0x0f,0x58,0xc4,0x0e,0x01,0x18,0x07,0x94,0x7e,0x39,0x7c,0x07,0xae,0xa2,0x65,0x67,0x9c,0x03,0xcb,0xff,0x3f,0xbc,0x03,0xd6,0x91,0x4a,0xc8,0xde,0x01,0xe7,0x7f,0xb8,0x0f,0xda,0x95,0xf1,0x0f,0xa7,0xfe,0xc0,0x0f,0x78,0x88,0xfc,0xc0,0x03,0x61,0x07,0xb4,0xca,0xc2,0x5f,0x30,0x00,0xd8,0xcf,0xf8,0x40,0x20,0x7f,0x83,0xd5,0x7e,0x80,0xf9,0xc0,0x02,0x49,0xbe,0x3e,0x00,0x21,0x4f,0xdd,0xea,0x0f,0x30,0x4a,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x50,}; +const uint8_t _A_CardNoDB_128x51_3[] = {0x01,0x00,0x43,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xff,0x11,0x00,0x88,0x00,0x04,0x16,0x34,0x00,0x10,0xc1,0x01,0xf7,0x20,0x07,0xbe,0x62,0x19,0x9c,0x9d,0xdd,0xf3,0x91,0x99,0x1c,0x9a,0x3b,0x07,0x27,0xa6,0xa2,0x25,0x52,0xc9,0x65,0x2a,0x5a,0x4b,0x04,0xa7,0x4a,0x1f,0x10,0x79,0xf2,0x01,0xe7,0x92,0x9e,0x48,0x41,0xef,0x88,0x07,0x9c,0x4a,0x0b,0x22,0x07,0xc0,0xfc,0x62,0x77,0x7e,0xe6,0x62,0x43,0xc6,0x92,0x8f,0xd5,0x3f,0xe0,0xff,0x07,0xf8,0x3f,0xc1,0xfe,0x0a,0x5b,0x84,0x79,0x5e,0x54,0x00,0x7c,0xe2,0x24,0x40,0xf2,0xd0,0x7f,0xe0,0xe0,0xf5,0xc0,0x4e,0x61,0x12,0x2c,0x64,0xee,0x0f,0xd0,0xff,0xfe,0x7f,0x80,0xf4,0xa0,0x52,0xae,0x12,0x2a,0x96,0x2a,0x09,0xf0,0xff,0xe3,0xbf,0x60,0xf6,0xc0,0x48,0xa8,0x40,0xf2,0xbf,0xfe,0xfe,0xe0,0xf6,0x1f,0x88,0x7c,0xf7,0xf1,0xdf,0x78,0xfd,0x69,0x25,0xf1,0xc6,0x42,0xe0,0xe0,0xf1,0xf7,0xfb,0x8f,0xf7,0xf0,0xef,0xff,0xfb,0xc0,0xfb,0xe0,0x77,0xef,0xe0,0x11,0x07,0xe6,0xfc,0x1f,0xdf,0xf0,0xff,0x83,0xdf,0xfc,0xba,0x28,0x0d,0x03,0x7f,0xff,0x37,0xa9,0xc0,0x60,0x20,0x42,0x81,0x68,0x01,0xf1,0xc0,0x02,0x1c,0x13,0xa1,0x7f,0xff,0xf9,0xc1,0xf6,0xbf,0x1f,0xf7,0x0c,0x1e,0xd0,0x88,0x14,0x02,0x10,0x0f,0x2f,0xce,0x00,0x1e,0xd1,0x88,0x1c,0x02,0x30,0x0f,0x28,0x3c,0x1c,0x1e,0xda,0x89,0x95,0x9e,0x70,0x0f,0x2f,0xfc,0x3e,0xfc,0x0f,0x5a,0x45,0x2b,0x23,0x78,0x07,0x9c,0x7e,0xf8,0x3f,0x6a,0x57,0xc4,0x3e,0x93,0xfb,0xc0,0x3d,0xe2,0x23,0xf3,0xff,0xdf,0xc1,0xef,0x32,0xb0,0x97,0xcc,0x00,0x20,0xf6,0x3f,0xb0,0x80,0x81,0xfe,0x0f,0x55,0xfa,0x03,0xe7,0x00,0x09,0x26,0xf8,0xf8,0x00,0x85,0x3f,0x77,0xa8,0x3c,0xc1,0x2a,0x00,0xf0,0x07,0x80,0x3c,0x01,0x40,}; +const uint8_t *_A_CardNoDB_128x51[] = {_A_CardNoDB_128x51_0,_A_CardNoDB_128x51_1,_A_CardNoDB_128x51_2,_A_CardNoDB_128x51_3}; + +const uint8_t _A_CardOk_128x51_0[] = {0x01,0x00,0x19,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x0e,0x54,0xec,0x0e,0x00,0x08,0x35,0x48,0x20,0x3e,0x2a,0x20,0xf3,0xa8,0x03,0xeb,0xc3,0xdc,0x9c,0xc9,0x2a,0xb1,0xc8,0x19,0x3d,0xeb,0xf9,0x1c,0x94,0x90,0x1e,0x3a,0x48,0x20,0x3d,0xea,0x20,0xf5,0x83,0x83,0xf8,0xff,0x03,0xf1,0xce,0x4e,0x3b,0x15,0x41,0xfc,0xa7,0xfc,0x1f,0xe0,0xff,0x07,0xcc,0x1f,0xf8,0x0f,0xdf,0xcf,0xcc,0x1e,0x8a,0xa1,0xb8,0x47,0x80,0xa5,0x40,0xff,0xff,0xbd,0xe0,0xf6,0xc4,0x48,0x80,0xa5,0xa0,0xbf,0xff,0xfb,0xe0,0xf1,0xb0,0x4b,0xa3,0x38,0x79,0xcc,0x22,0x45,0x8c,0x9d,0xc1,0xfa,0x1b,0xff,0xfe,0xfc,0x1e,0x31,0x09,0x4e,0x96,0x89,0x4a,0xb8,0x48,0xaa,0x58,0xa8,0x27,0xc0,0x1e,0x92,0x09,0x4e,0xf4,0x1e,0x38,0x09,0x15,0x08,0x1e,0x5d,0xf3,0x70,0x83,0xc6,0x81,0x29,0xc2,0x83,0xc4,0x7e,0x21,0xf3,0x07,0xa4,0xc3,0x9d,0x18,0xc3,0xd2,0x4b,0xe3,0x8c,0x85,0xc1,0xc1,0xea,0x00,0x90,0x78,0x9f,0x84,0x1f,0x7c,0x00,0x7f,0xf7,0xfe,0xe0,0xfe,0x1f,0xef,0x00,0xfe,0x80,0xa5,0x75,0x14,0x06,0x80,0x0f,0x99,0x80,0x0c,0xa0,0x4b,0xf5,0x00,0x24,0x61,0xaa,0x7d,0x06,0xfb,0x83,0xdb,0xe0,0xff,0x70,0x79,0x34,0x06,0x04,0x0f,0x28,0x3f,0xf0,0x1e,0xf8,0x88,0x94,0x18,0x1e,0x40,0x01,0x07,0xc4,0x2a,0x1c,0x0f,0xd8,0x34,0x78,0x3f,0xe0,0xfd,0x1f,0xf1,0x7d,0x41,0xf2,0x7f,0x50,0x7f,0x83,0xe2,0x70,0xbf,0x30,0x7d,0x02,0x8e,0x03,0xe0,0x02,0x14,0xfc,0x1e,0xa0,0xa3,0x04,0xa8,0x03,0xc0,0x1e,0x00,0xf0,0x05,0x00,}; +const uint8_t _A_CardOk_128x51_1[] = {0x01,0x00,0x1e,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x0e,0x54,0xec,0x0e,0x00,0x08,0x35,0x48,0x20,0x3e,0x2a,0x20,0xf3,0xa8,0x03,0xeb,0xc3,0xdc,0x9c,0xc9,0x2a,0xb1,0xc8,0x19,0x3d,0xeb,0xf9,0x1c,0x94,0x90,0x1e,0x3a,0x48,0x20,0x3d,0xea,0x20,0xf5,0x83,0x83,0xf8,0xff,0x03,0xf1,0xce,0x4e,0x3b,0x15,0x41,0xfc,0xa7,0xfc,0x1f,0xe0,0xff,0x07,0xcc,0x1f,0xf8,0x0f,0xdf,0xcf,0xcc,0x1e,0x8a,0xa1,0xb8,0x47,0x80,0xa5,0x40,0xff,0xff,0xbd,0xe0,0xf6,0xc4,0x48,0x80,0xa5,0xa0,0xbf,0xff,0xfb,0xe0,0xf1,0xb0,0x4b,0xa3,0x38,0x79,0xcc,0x22,0x45,0x8c,0x9d,0xc1,0xfa,0x1b,0xff,0xfe,0xfc,0x1e,0x31,0x09,0x4e,0x96,0x89,0x4a,0xb8,0x48,0xaa,0x58,0xa8,0x27,0xc0,0x1e,0x92,0x09,0x4e,0xf4,0x1e,0x38,0x09,0x15,0x08,0x1e,0x5d,0xf3,0x70,0x83,0xc6,0x81,0x29,0xc2,0x83,0xc4,0x7e,0x21,0xf3,0x07,0xa4,0xc3,0x9d,0x18,0xc3,0xd2,0x4b,0xe3,0x8c,0x85,0xc1,0xc1,0xea,0x00,0x90,0x78,0x9f,0x84,0x1f,0x7c,0x0e,0xff,0x8c,0x1f,0xd8,0x70,0x7f,0x63,0xc1,0xfb,0xbf,0xcf,0x9f,0xc8,0x14,0xae,0xa2,0x80,0xd0,0x11,0xe8,0x00,0x49,0x80,0x0c,0xa0,0x4b,0xf5,0x00,0x24,0x61,0xaa,0x7d,0x06,0xfb,0x83,0xdb,0xe0,0xff,0x70,0x79,0x34,0x06,0x04,0x0f,0x28,0x3f,0xf0,0x1e,0xf8,0x88,0x94,0x18,0x1e,0x40,0x01,0x07,0xc4,0x2a,0x1c,0x0f,0xd8,0x34,0x78,0x3f,0xe0,0xfd,0x1f,0xf1,0x7d,0x41,0xf2,0x7f,0x50,0x7f,0x83,0xe2,0x70,0xbf,0x30,0x7d,0x02,0x8e,0x03,0xe0,0x02,0x14,0xfc,0x1e,0xa0,0xa3,0x04,0xa8,0x03,0xc0,0x1e,0x00,0xf0,0x05,0x00,}; +const uint8_t _A_CardOk_128x51_2[] = {0x01,0x00,0x22,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x0e,0x54,0xec,0x0e,0x00,0x08,0x35,0x48,0x20,0x3e,0x2a,0x20,0xf3,0xa8,0x03,0xeb,0xc3,0xdc,0x9c,0xc9,0x2a,0xb1,0xc8,0x19,0x3d,0xeb,0xf9,0x1c,0x94,0x90,0x1e,0x3a,0x48,0x20,0x3d,0xea,0x20,0xf5,0x83,0x83,0xf8,0xff,0x03,0xf1,0xce,0x4e,0x3b,0x15,0x41,0xfc,0xa7,0xfc,0x1f,0xe0,0xff,0x07,0xcc,0x1f,0xf8,0x0f,0xdf,0xcf,0xcc,0x1e,0x8a,0xa1,0xb8,0x47,0x80,0xa5,0x40,0xff,0xff,0xbd,0xe0,0xf6,0xc4,0x48,0x80,0xa5,0xa0,0xbf,0xff,0xfb,0xe0,0xf1,0xb0,0x4b,0xa3,0x38,0x79,0xcc,0x22,0x45,0x8c,0x9d,0xc1,0xfa,0x1b,0xff,0xfe,0xfc,0x1e,0x31,0x09,0x4e,0x96,0x89,0x4a,0xb8,0x48,0xaa,0x58,0xa8,0x27,0xc0,0x1e,0x92,0x09,0x4e,0xf4,0x1e,0x38,0x09,0x15,0x08,0x1e,0x5d,0xf3,0x70,0x83,0xc6,0x81,0x29,0xc2,0x83,0xc4,0x7e,0x21,0xf3,0x07,0xa4,0xc3,0x9d,0x18,0xc3,0xd2,0x4b,0xe3,0x8c,0x85,0xc1,0xc1,0xe5,0x7d,0x3f,0xd8,0x3c,0x7e,0x77,0xc0,0x7d,0xf0,0x3b,0xf6,0x30,0x7f,0x41,0xef,0xc0,0xfd,0x87,0x93,0xc8,0x1f,0x5b,0xfc,0xf9,0xfc,0x81,0x4a,0xea,0x28,0x0d,0x01,0x1e,0x80,0x04,0x98,0x00,0xca,0x04,0xbf,0x50,0x02,0x46,0x1a,0xa7,0xd0,0x6f,0xb8,0x3d,0xbe,0x0f,0xf7,0x07,0x93,0x40,0x60,0x40,0xf2,0x83,0xff,0x01,0xef,0x88,0x89,0x41,0x81,0xe4,0x00,0x10,0x7c,0x42,0xa1,0xc0,0xfd,0x83,0x47,0x83,0xfe,0x0f,0xd1,0xff,0x17,0xd4,0x1f,0x27,0xf5,0x07,0xf8,0x3e,0x27,0x0b,0xf3,0x07,0xd0,0x28,0xe0,0x3e,0x00,0x21,0x4f,0xc1,0xea,0x0a,0x30,0x4a,0x80,0x3c,0x01,0xe0,0x0f,0x00,0x50,}; +const uint8_t _A_CardOk_128x51_3[] = {0x01,0x00,0x26,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf8,0x07,0xfc,0x00,0x33,0xf0,0x75,0x60,0x01,0xe5,0x7f,0x07,0xde,0x4e,0x49,0x49,0xb9,0x03,0xfc,0x0e,0x54,0xec,0x0e,0x00,0x08,0x35,0x48,0x20,0x3e,0x2a,0x20,0xf3,0xa8,0x03,0xeb,0xc3,0xdc,0x9c,0xc9,0x2a,0xb1,0xc8,0x19,0x3d,0xeb,0xf9,0x1c,0x94,0x90,0x1e,0x3a,0x48,0x20,0x3d,0xea,0x20,0xf5,0x83,0x83,0xf8,0xff,0x03,0xf1,0xce,0x4e,0x3b,0x15,0x41,0xfc,0xa7,0xfc,0x1f,0xe0,0xff,0x07,0xcc,0x1f,0xf8,0x0f,0xdf,0xcf,0xcc,0x1e,0x8a,0xa1,0xb8,0x47,0x80,0xa5,0x40,0xff,0xff,0xbd,0xe0,0xf6,0xc4,0x48,0x80,0xa5,0xa0,0xbf,0xff,0xfb,0xe0,0xf1,0xb0,0x4b,0xa3,0x38,0x79,0xcc,0x22,0x45,0x8c,0x9d,0xc1,0xfa,0x1b,0xff,0xfe,0xfc,0x1e,0x31,0x09,0x4e,0x96,0x89,0x4a,0xb8,0x48,0xaa,0x58,0xa8,0x27,0xc0,0x1e,0x92,0x09,0x4e,0xf4,0x1e,0x38,0x09,0x15,0x08,0x1e,0x5d,0xf3,0x70,0x83,0xc6,0x81,0x29,0xc2,0x83,0xc4,0x7e,0x21,0xf3,0x07,0x8d,0xcc,0x1e,0x33,0x0e,0x74,0x63,0x0f,0x49,0x2f,0x8e,0x32,0x17,0x07,0x07,0x95,0xc4,0xff,0x60,0xf1,0xf9,0xde,0x01,0xf7,0xc0,0xef,0xd8,0xef,0x80,0xfd,0x83,0xdf,0x81,0xfb,0x0f,0x2f,0x90,0x3e,0xb7,0xf9,0xf3,0xf9,0x02,0x95,0xd4,0x50,0x1a,0x02,0x3d,0x00,0x09,0x30,0x01,0x94,0x09,0x7e,0xa0,0x04,0x8c,0x35,0x4f,0xa0,0xdf,0x70,0x7b,0x7c,0x1f,0xee,0x0f,0x26,0x80,0xc0,0x81,0xe5,0x07,0xfe,0x03,0xdf,0x11,0x12,0x83,0x03,0xc8,0x00,0x20,0xf8,0x85,0x43,0x81,0xfb,0x06,0x8f,0x07,0xfc,0x1f,0xa3,0xfe,0x2f,0xa8,0x3e,0x4f,0xea,0x0f,0xf0,0x7c,0x4e,0x17,0xe6,0x0f,0xa0,0x51,0xc0,0x7c,0x00,0x42,0x9f,0x83,0xd4,0x14,0x60,0x95,0x00,0x78,0x03,0xc0,0x1e,0x00,0xa0,}; +const uint8_t *_A_CardOk_128x51[] = {_A_CardOk_128x51_0,_A_CardOk_128x51_1,_A_CardOk_128x51_2,_A_CardOk_128x51_3}; + +const uint8_t _A_CryActive_128x51_0[] = {0x01,0x00,0x94,0x02,0x84,0x42,0x20,0x3c,0x0f,0xfc,0x3f,0x11,0x40,0x81,0x48,0x20,0x30,0x48,0x04,0x2a,0x03,0x01,0x80,0x60,0x20,0x1f,0x0f,0xfd,0xfe,0x81,0x40,0x80,0x68,0x70,0x10,0x28,0x04,0x24,0x1c,0x30,0x40,0x78,0xcf,0x02,0x23,0x05,0x90,0x62,0x00,0xe2,0x0f,0x1c,0x08,0x10,0x40,0xa5,0x0f,0x11,0x8c,0x1f,0x02,0x31,0x11,0x10,0x86,0xc8,0x1a,0x30,0x2c,0x04,0x0c,0x28,0x38,0xec,0x04,0x12,0x90,0x05,0x1c,0x20,0x34,0x40,0x03,0x21,0xe0,0x01,0x0b,0x31,0x10,0x82,0x42,0x0b,0x43,0x02,0x07,0x8e,0x00,0x82,0x36,0x00,0x79,0x5c,0x0b,0xe3,0x00,0x88,0x01,0x86,0x03,0x20,0x0a,0x8c,0x02,0x60,0x0f,0x2b,0x04,0x82,0x45,0x00,0xa8,0x41,0x20,0x38,0x11,0x30,0x82,0xc6,0x30,0x0f,0x2e,0x04,0x90,0x3a,0x40,0xf1,0xc0,0x03,0xce,0x18,0x0f,0x38,0x84,0x45,0x30,0x24,0xd2,0x17,0x09,0x94,0x41,0xe6,0x46,0x28,0x48,0x68,0x44,0x62,0x13,0x19,0x06,0x12,0x0c,0x0f,0x3c,0x48,0xb4,0x62,0x91,0x1a,0x44,0x82,0x09,0x41,0x90,0x60,0x01,0xe7,0x00,0xa1,0x80,0x86,0x21,0x41,0x94,0x08,0x84,0x4e,0x34,0x24,0x71,0x03,0xc9,0x88,0x20,0x04,0x8f,0xc0,0x60,0x40,0xf4,0x93,0x7c,0x81,0xed,0x08,0x90,0x83,0xd2,0x0d,0xf0,0xfe,0x83,0x8f,0xbe,0x0f,0x1c,0x08,0xc8,0x40,0x05,0x46,0x07,0xbc,0x13,0x20,0x0f,0x48,0x27,0xc2,0xfb,0x44,0x9f,0x7c,0xe6,0x7c,0x6c,0xfc,0x00,0x1e,0xb8,0xcf,0x86,0xf7,0x6b,0xdd,0xf6,0xf7,0x7b,0x59,0xfa,0x87,0x20,0x1a,0x41,0x21,0xce,0x03,0xcb,0x7b,0xed,0xed,0xf6,0xab,0xf0,0x80,0x79,0x7c,0x14,0xa3,0x5c,0x07,0x95,0xf7,0xdb,0xd7,0x07,0x8c,0x83,0x88,0x2e,0x3c,0x05,0x3f,0xf1,0x7d,0xda,0x67,0x7e,0x73,0x9e,0x34,0xfe,0x08,0xfe,0x30,0x00,0xcb,0x3e,0x87,0xf5,0x07,0x9c,0xe0,0x1e,0x50,0xc0,0x7b,0x47,0xe0,0x00,0xf1,0xfe,0x83,0xca,0x1e,0xaf,0x78,0x15,0x87,0x01,0xfa,0x9f,0x8f,0xc6,0x1e,0xaf,0x78,0x0d,0x86,0x01,0xf5,0x07,0x9c,0x22,0x01,0x02,0x88,0x42,0x65,0x18,0x28,0x44,0x06,0xc0,0x1f,0x2c,0x04,0x76,0x1e,0x32,0x1a,0x02,0x94,0xa2,0x0f,0x11,0x1f,0x8d,0x36,0x1f,0x10,0x90,0x63,0x03,0xc3,0x40,0xc0,0x40,0x22,0x00,0x81,0x80,0x4c,0x20,0x14,0xa5,0x79,0xc0,0x30,0x50,0x0b,0x20,0x3c,0x61,0x1a,0x00,0x79,0x00,0x44,0x00,0x34,0xc2,0x10,0xc8,0x2a,0x11,0x08,0x50,0x94,0x41,0xa8,0x00,0x18,0x6c,0x06,0x81,0x10,0x91,0x42,0x29,0x31,0x08,0x0c,0x40,0x1e,0xb0,0xe8,0x05,0x12,0x04,0x1d,0x1a,0x0b,0x64,0x41,0xed,0x0c,0x80,0x12,0x46,0x10,0x5c,0x18,0x04,0xa2,0x30,0xad,0x30,0x00,0xc6,0x28,0x12,0x08,0x46,0x00,0x1e,0x38,0x80,0x28,0x87,0xca,0x78,0x02,0x19,0x85,0x12,0x21,0x05,0xc0,0x50,0x20,0x41,0x11,0x82,0x03,0xcb,0x86,0x02,0x1b,0x04,0x90,0x48,0x49,0x11,0x07,0x94,0x62,0x01,0x84,0x80,0x40,0xe0,0x1c,0x0d,0x16,0x02,0x84,0x42,0x21,0x70,0x83,0xc8,0x28,0x47,0xd1,0xc8,0xd0,0x28,0x10,0x1c,0x04,0x22,0x41,0x09,0x81,0x03,0xc5,0x94,0x20,0x11,0xc0,0x1f,0xc6,0x41,0x80,0x88,0x1b,0x84,0xb2,0x43,0x82,0x21,0x88,0x3c,0x40,0x43,0x00,0xa8,0x51,0x30,0x21,0x11,0x07,0x9f,0x00,0x04,0x30,0x3c,0x06,0x41,0xc0,0x40,0x01,0xd0,0x83,0xcb,0xa0,0x50,0x28,0x38,0x38,0x68,0x10,0x85,0xe8,0xc0,0x32,0x00,0xf2,0xd4,0x40,0xd3,0xc3,0x07,0xa0,0xd2,0x0f,0x24,0x44,0x1a,0x80,0x3c,0xa8,0x10,0xfb,0x80,0x84,0x60,0x32,0x88,0x41,0x3c,0x64,0x1a,0x0a,0x00,0x3c,0xb5,0x53,0xec,0x07,0xff,0x06,0x7c,0x10,0x01,0x21,0x46,0x40,0x4f,0x3f,0xe9,0xe8,0x71,0x32,0x00,0xe8,0x9d,0xc6,0x24,0x21,0x11,0xf9,0xfe,0xa1,0xfc,0x08,0x28,0x58,0xa9,0x00,0x32,0x88,0x07,0xcf,0xe9,0x7f,0xfc,0x1b,0x06,0x10,0xab,0x17,0x81,0x03,0xcf,0x41,0xea,0xff,0xcf,0xd7,0x22,0xa4,0x10,0x70,0xca,0x20,0x0a,0xf2,0x00,0x0f,0x53,0x7f,0x07,0x81,0x42,0x41,0xc3,0x22,0xc4,0x49,0x22,0x00,}; +const uint8_t _A_CryActive_128x51_1[] = {0x01,0x00,0x90,0x02,0x84,0x52,0x20,0x9c,0x4f,0xfc,0x7e,0x09,0x04,0x90,0x40,0x20,0xb0,0x48,0x14,0x40,0x1c,0x30,0x89,0x24,0x13,0xe9,0xff,0xbf,0x85,0xc7,0x20,0x12,0x18,0x94,0x4a,0x13,0x00,0x82,0x40,0x24,0x90,0x09,0xf4,0x03,0xe1,0x03,0x80,0x54,0x42,0x43,0x10,0x80,0xc2,0x41,0xc2,0x24,0x18,0x14,0x3e,0x01,0x80,0x83,0xc8,0x28,0x20,0x71,0x80,0xe0,0x01,0xc3,0x02,0x00,0x8e,0x0c,0x38,0x30,0x08,0x76,0x42,0x50,0x0e,0x1c,0x48,0xc8,0x41,0xe5,0x08,0xe0,0x95,0x4a,0x31,0x90,0x80,0x40,0x70,0x30,0x4a,0x24,0x0a,0x0c,0x0a,0x1c,0x45,0x84,0x1e,0x53,0x0a,0x05,0x02,0x42,0x2d,0x1a,0x04,0x48,0x3e,0x38,0x0c,0x24,0xc0,0x1e,0x56,0x0a,0x06,0x03,0x40,0x0b,0x19,0x04,0x20,0x1e,0x54,0x08,0xc0,0x3c,0xb8,0x07,0xe1,0xa0,0x01,0x44,0x44,0x24,0x41,0x14,0x0c,0x30,0x1e,0x70,0x48,0x85,0x40,0x82,0x39,0x0c,0x01,0x88,0x44,0x82,0x0f,0x3c,0x04,0x45,0x34,0x20,0xf1,0xc0,0x51,0x30,0x00,0x51,0x90,0x14,0xc8,0x1e,0x31,0x31,0xd8,0xe0,0x22,0x10,0x8e,0x34,0x82,0x81,0x01,0x80,0x03,0xce,0x01,0x03,0x90,0x45,0x08,0x23,0x48,0xd1,0x11,0x4d,0x1c,0x40,0x01,0xa1,0xb1,0x04,0x00,0x91,0xf4,0x40,0x83,0xd2,0x0d,0xf0,0x07,0xb5,0x20,0x1e,0xb2,0x6f,0x87,0xf4,0x1c,0x7d,0xfc,0xfd,0x20,0xc6,0x20,0xfc,0x92,0x03,0xd6,0x29,0xf0,0xbe,0xd1,0x27,0xdf,0x39,0x9f,0x1a,0x3f,0x20,0x07,0xac,0x33,0xe1,0xbd,0xda,0xf7,0x7d,0xbd,0xde,0xd4,0x7d,0x34,0x20,0xd2,0x09,0x0e,0x30,0x1e,0x5b,0xdf,0x6f,0x6c,0x1e,0xbf,0x03,0xb0,0xe3,0x3e,0x40,0xf1,0xbe,0xfb,0x7a,0xe0,0xf2,0x7f,0x1a,0x7c,0x61,0xff,0x1b,0xee,0xd3,0x3b,0xf3,0x9c,0x8f,0xc6,0x01,0x70,0x07,0x98,0xfc,0x7e,0x27,0xf6,0xc0,0x58,0x20,0x13,0x80,0x79,0x4b,0x11,0xef,0x00,0xb4,0x40,0x3f,0xa0,0xf2,0xd7,0x83,0xe7,0x01,0xfa,0x9f,0x8f,0xc6,0x3e,0x0f,0x8b,0x24,0x03,0xea,0x0f,0x28,0x7c,0x02,0x49,0x00,0x88,0x41,0x1b,0xa3,0x04,0x90,0x58,0x03,0xe5,0x80,0x8e,0x83,0xc7,0x25,0x80,0xa4,0x40,0x9f,0xc2,0x39,0x12,0x78,0xf3,0x61,0xf1,0x09,0x04,0x32,0x01,0x90,0xa0,0x50,0x30,0x50,0x0a,0x44,0x82,0x01,0x32,0x80,0x51,0x89,0xe5,0x1c,0x01,0x0d,0x02,0x49,0x01,0xa8,0x48,0x24,0x30,0x09,0x84,0x02,0x44,0x7f,0x35,0x99,0x40,0x28,0x33,0x08,0x26,0x06,0x10,0x7d,0x10,0x79,0xc3,0x49,0x23,0x00,0x89,0x40,0x24,0x11,0x02,0xc8,0x87,0xc4,0x0e,0x20,0x01,0x87,0x00,0x86,0x21,0x80,0x80,0x42,0x01,0x45,0x34,0x15,0x90,0xbc,0x8b,0x23,0x02,0xa4,0x07,0x44,0x88,0x30,0x20,0xf8,0x80,0x0f,0x30,0x0f,0x18,0x0d,0x22,0x30,0x07,0x13,0x88,0x83,0xca,0x78,0x02,0x1d,0x81,0xa0,0x70,0x12,0x08,0x40,0x3c,0x8b,0xe5,0x00,0xe1,0xa1,0x4a,0x41,0x88,0x1f,0x09,0x4c,0x86,0x42,0x24,0x1c,0x24,0x02,0x07,0x00,0xe0,0x40,0x70,0x8a,0xc2,0xa2,0x11,0x04,0x1e,0x41,0x51,0x00,0x8e,0x03,0x22,0x0e,0x10,0xd8,0xc0,0xa0,0x48,0x51,0x07,0x88,0xd8,0x40,0x23,0x80,0xa0,0x83,0xc4,0x0a,0x20,0xe1,0x84,0xc0,0x23,0x45,0xd2,0x21,0x8e,0x02,0x02,0x0b,0x10,0x78,0xc8,0x31,0x23,0xb1,0x8c,0x83,0xcb,0x80,0x02,0x19,0x3a,0xc0,0xa0,0x39,0x1c,0x01,0x04,0x41,0xe5,0xd0,0x28,0x10,0x3c,0x48,0xa3,0x81,0x01,0x0d,0x0b,0x00,0x84,0x2d,0x44,0x0d,0x44,0x30,0x35,0xd1,0x1c,0x46,0x84,0x04,0x10,0x79,0x50,0x21,0xf7,0x01,0x09,0x01,0x84,0x02,0x4f,0x94,0xd5,0x4f,0xb0,0x1f,0xf1,0xe8,0xc8,0x0c,0x42,0x9d,0x10,0x90,0x97,0xcf,0xfb,0x01,0x2f,0x8c,0x10,0x1e,0x31,0x00,0x79,0x1b,0xcf,0x51,0xfa,0x87,0xf0,0x24,0x88,0xe2,0x94,0x10,0x06,0x81,0x04,0x1f,0x94,0x03,0xe9,0x7f,0xbc,0x48,0x20,0x4f,0xb1,0x8c,0x64,0x9a,0x24,0x0f,0x2d,0x07,0xab,0xff,0x3f,0x5c,0x08,0x2c,0x62,0x10,0x95,0x41,0x07,0xcf,0xa9,0xbf,0x83,0x83,0xce,0x19,0x49,0x90,0x49,0x00,}; +const uint8_t _A_CryActive_128x51_2[] = {0x01,0x00,0x9e,0x02,0xa0,0x00,0x07,0x91,0xff,0x87,0x81,0x8a,0x01,0x01,0x88,0x49,0x24,0x11,0x18,0x04,0x82,0x41,0x40,0xfc,0x7f,0xef,0xf0,0x08,0x24,0x83,0x05,0x00,0x88,0x48,0x30,0x31,0x08,0x44,0x82,0x03,0x00,0x9e,0x40,0x3e,0x10,0x30,0x79,0xc2,0x30,0x10,0x0a,0x40,0x50,0x62,0x10,0x01,0x68,0xe0,0x20,0xf0,0x28,0x05,0x04,0x76,0x31,0x2a,0x44,0x20,0x1e,0x59,0x48,0x18,0x24,0x61,0xc1,0x51,0x80,0xc2,0x20,0x94,0x98,0x44,0x92,0x08,0x25,0x1e,0x91,0x54,0xa3,0x11,0x0c,0x46,0x02,0x80,0x0f,0x18,0x04,0x90,0xb0,0x30,0x8b,0x50,0x3c,0xa6,0x10,0x9c,0x40,0x24,0x60,0x40,0xd1,0x17,0x08,0x08,0x66,0x20,0xf2,0xf0,0x60,0x28,0x80,0x41,0x27,0x09,0x14,0x61,0x26,0x91,0x8c,0x83,0xcb,0x81,0x04,0x82,0x48,0x8f,0x02,0x0e,0x18,0x08,0x3c,0x70,0xd0,0xc0,0x7a,0x48,0x24,0x43,0x01,0x89,0x42,0x31,0x24,0xf1,0x80,0x03,0xcf,0x01,0x01,0x90,0x0e,0x89,0x14,0x38,0xc1,0xb0,0xc0,0xa0,0xc0,0xf4,0x01,0x8a,0x68,0x70,0x06,0x31,0x05,0x90,0x3c,0xe0,0x11,0x3c,0x0c,0x21,0x3c,0x30,0x4a,0x25,0x10,0x6a,0x30,0x14,0x71,0x00,0x07,0x26,0xc4,0x10,0x02,0x4f,0xe0,0x1a,0x10,0x7a,0x63,0xbe,0x00,0xf5,0x8f,0xf0,0x30,0x00,0xf4,0xa7,0x7c,0x3f,0xa0,0xe3,0xef,0xc7,0xe8,0x5c,0x02,0x51,0x00,0x06,0x8c,0x0f,0x6a,0xf9,0xe8,0x41,0xe9,0x04,0xf8,0x5f,0x68,0x93,0xef,0x9c,0xcf,0x8d,0x5f,0xa0,0x1a,0x8c,0x00,0x32,0xcf,0x86,0xf7,0x6b,0xdd,0xf6,0xf7,0x7b,0x53,0xf8,0x87,0x00,0x1a,0x41,0x21,0x86,0x03,0xcb,0x7b,0xed,0xed,0x83,0xc4,0x5e,0x20,0xe1,0xf8,0x2a,0x86,0x19,0xf8,0x07,0x8d,0xf7,0xdb,0xd7,0xed,0x67,0xe2,0x1c,0x21,0x71,0xe0,0x31,0xff,0x8b,0xee,0xd3,0x3b,0xf3,0x9c,0xf1,0xb3,0xf0,0x0b,0x00,0x3c,0xd7,0x02,0x7f,0x78,0x05,0x86,0x01,0x38,0x07,0x90,0xfc,0x41,0xed,0x04,0x07,0x8f,0xf4,0x1e,0x50,0xff,0x90,0x3d,0xb0,0x96,0x0c,0x07,0xe8,0xa8,0x38,0x09,0x78,0x7d,0xe0,0x43,0xf1,0xfa,0x83,0xcc,0xe6,0x32,0x48,0x0e,0x04,0xce,0x20,0x11,0x0f,0x8f,0xaa,0x7f,0x80,0x8e,0xc7,0xf0,0x10,0x09,0x06,0x24,0x06,0x30,0x08,0x85,0x00,0x7e,0x31,0x58,0x7c,0x42,0x41,0x0c,0x0c,0x0c,0x43,0x08,0x1d,0x19,0x04,0x02,0x43,0x30,0x80,0x4a,0x8b,0xe7,0x40,0xa0,0x40,0xa0,0x00,0x11,0x90,0x42,0x30,0x20,0xf1,0x00,0x18,0x3c,0x43,0x43,0x02,0x91,0x2e,0x0b,0x00,0x0f,0x18,0x80,0x3c,0xa9,0xa0,0xe1,0x84,0x48,0x0a,0x03,0x10,0x82,0x40,0x01,0xeb,0x2e,0x91,0x60,0x01,0x43,0x91,0xd0,0x02,0x06,0x80,0x9d,0x18,0x40,0xbc,0xe0,0x18,0x10,0x78,0xe4,0x2a,0x05,0x11,0x80,0x4d,0x01,0xe9,0x18,0x80,0xd0,0x70,0x18,0x02,0x98,0x8d,0x44,0x1e,0x50,0x99,0xe0,0x14,0x66,0x18,0x1a,0x06,0x48,0x38,0x40,0xf1,0x88,0x4c,0x81,0xe3,0xc3,0x04,0x0d,0x80,0x48,0x30,0x83,0xf1,0x24,0x4a,0x35,0x00,0xc2,0x40,0x20,0x70,0x0e,0x00,0x68,0x80,0x47,0x00,0x85,0x46,0x0b,0x04,0x01,0x1c,0x04,0x07,0x01,0x20,0x90,0x1a,0x0e,0x13,0x19,0xc0,0x16,0xc4,0x58,0x38,0x08,0x1e,0x02,0x49,0x02,0x07,0x8a,0xd0,0x70,0xb1,0x80,0xe9,0x20,0xc7,0x01,0x21,0x09,0x8c,0x49,0x42,0x23,0x11,0xc0,0x03,0xcc,0x7a,0x30,0x08,0x9c,0x24,0x4a,0x30,0x80,0x48,0xc2,0x28,0x43,0xf2,0xe8,0x14,0x0a,0x26,0x12,0x10,0x70,0xc1,0x43,0x63,0x40,0x07,0x96,0xa2,0x06,0x42,0x10,0x88,0x82,0xc4,0xd0,0x2e,0x12,0x17,0x8c,0x0e,0x81,0x0f,0xb8,0x40,0x21,0x6b,0xa2,0x06,0x8b,0x7c,0x41,0xe5,0x00,0xd5,0x4f,0xb0,0x1f,0xf1,0x50,0xc0,0x28,0x50,0x29,0x08,0x3c,0x57,0x22,0x74,0x2f,0xe9,0xf4,0x60,0xb4,0x87,0xf0,0xc0,0x62,0x22,0x02,0x07,0x96,0xa3,0xf5,0x0f,0xe0,0x48,0x29,0x02,0xa1,0x7f,0x14,0x06,0x10,0x1f,0x3f,0xa5,0xfe,0xf0,0x05,0x28,0x83,0x80,0x48,0x22,0x0f,0x3d,0x07,0xab,0xff,0x3f,0x55,0x90,0x08,0x69,0x18,0x2a,0x04,0x10,0x3e,0x7d,0x4d,0xfc,0x5d,0x30,0x20,0x72,0x92,0x50,0x60,0x00,}; +const uint8_t *_A_CryActive_128x51[] = {_A_CryActive_128x51_0,_A_CryActive_128x51_1,_A_CryActive_128x51_2}; + +const uint8_t _A_Cry_128x51_0[] = {0x01,0x00,0xa6,0x02,0x80,0x41,0x28,0x1c,0x0f,0xfd,0x3e,0x80,0x06,0x18,0x85,0x00,0x08,0x30,0x1c,0x84,0x92,0x01,0x42,0xa0,0x7c,0x3f,0xf7,0xf8,0x44,0x02,0x18,0x19,0x19,0x0e,0x06,0x01,0x50,0x88,0x03,0xc6,0x41,0x3c,0x80,0x7c,0x20,0x31,0x48,0x34,0x08,0x1e,0x38,0x0a,0x04,0x23,0x21,0x00,0x90,0x40,0x21,0xf0,0x0c,0x04,0x1e,0x25,0x06,0x1d,0x10,0xc0,0x64,0x01,0x51,0x90,0x60,0x20,0x60,0x91,0x87,0x42,0xa0,0x63,0xb1,0x20,0x0c,0x22,0x49,0x41,0xc0,0x44,0x38,0x01,0x92,0x8c,0x42,0x20,0x23,0xb1,0xa4,0x48,0x24,0x10,0x40,0x79,0x58,0x01,0xe5,0x30,0x82,0x41,0x24,0x54,0x88,0x40,0xe8,0x60,0x52,0x01,0x18,0xce,0x01,0xe5,0x60,0x3a,0x88,0x28,0x60,0x80,0x71,0xc0,0x60,0x20,0x10,0x88,0xe0,0x3c,0xb8,0x10,0x2a,0x04,0x42,0x09,0x14,0x81,0x42,0x28,0x00,0xf1,0x82,0x1e,0x48,0x1e,0x28,0xa1,0x88,0xc5,0x20,0x10,0xa0,0x78,0xd4,0x01,0xe3,0x0e,0x07,0x96,0x02,0x43,0x21,0x84,0x22,0x86,0x10,0x31,0x22,0x10,0x9e,0x4c,0x1e,0x28,0x81,0x51,0x8d,0x00,0xa8,0x28,0x02,0x07,0x9c,0x02,0x27,0x50,0x0d,0x8e,0x16,0x08,0x0c,0x10,0x10,0xc0,0x51,0xc4,0x00,0x1a,0x18,0x6c,0x70,0xb0,0x09,0x14,0x0a,0x23,0x04,0x84,0x83,0xd6,0x0d,0x08,0xc1,0x61,0x28,0x52,0x22,0xa8,0xc0,0xb0,0x90,0x00,0x7a,0xc9,0x30,0x4a,0xe1,0x88,0xe8,0x0a,0x45,0x80,0x54,0x88,0x3c,0xc3,0x42,0xcd,0x1c,0x8e,0x02,0x41,0x09,0x81,0x03,0xd4,0x9a,0x20,0xe1,0x00,0x09,0xf4,0x70,0x20,0xf6,0x86,0x1b,0x46,0x41,0x10,0x84,0x42,0x0c,0x02,0x9a,0x20,0x00,0x84,0x84,0x1e,0x41,0xd1,0x82,0x03,0xdb,0xe0,0x2c,0x18,0x65,0x14,0x0c,0x24,0xb1,0x92,0x0a,0xc8,0x3e,0x69,0xf1,0xc7,0x8f,0x8a,0x51,0x02,0x88,0x51,0x60,0x31,0x0b,0x48,0x3c,0xe0,0x18,0xc9,0x05,0x22,0x40,0xfe,0x1c,0x94,0x12,0x41,0x08,0xb4,0x40,0x27,0x00,0xf2,0xa6,0x05,0x50,0xde,0x39,0x0c,0x05,0x82,0x01,0xfd,0x04,0x94,0x3c,0xe2,0x4f,0xe1,0x80,0xe0,0x22,0x18,0x4b,0x26,0x03,0xf5,0x3f,0x0c,0x0c,0x3c,0xb8,0x2e,0xf2,0xa2,0x11,0x46,0x89,0x62,0x80,0x7d,0x41,0xe5,0x2f,0xa4,0x1a,0x8a,0x03,0x24,0x07,0x8c,0x0a,0xc4,0x1f,0x2c,0x04,0x76,0x1f,0x28,0x46,0x0b,0x28,0x64,0x48,0x51,0x81,0x0f,0xc6,0x9b,0x0f,0x88,0x48,0x21,0x90,0x08,0x4c,0x12,0x09,0x40,0xc8,0x0d,0x06,0x41,0x30,0x80,0x52,0x95,0xe6,0x2c,0x18,0x25,0x0a,0x80,0x7d,0x11,0xa8,0x83,0xc4,0x02,0x20,0xf2,0x89,0x60,0x14,0x83,0x20,0xa0,0xc4,0xa1,0x40,0xd4,0x00,0x0c,0x35,0xfc,0x52,0x13,0x00,0x89,0x46,0x11,0x32,0x07,0xa4,0x3a,0x83,0x00,0x90,0xc8,0x30,0x12,0x47,0x78,0xc0,0x26,0x20,0xf4,0x86,0x41,0x41,0xa2,0x42,0x28,0x01,0x8c,0x41,0xeb,0x98,0x5c,0x8a,0xa8,0x50,0xc3,0x80,0xa1,0x41,0x07,0xe5,0x3c,0x01,0x0e,0xc2,0x45,0x00,0x4f,0x8c,0x00,0x88,0x25,0xf3,0x80,0x70,0xc0,0x43,0x60,0xc9,0x3f,0xc8,0x04,0x27,0x11,0x80,0x46,0x06,0x65,0x03,0x80,0x70,0x1f,0xe4,0x00,0x11,0xf8,0xbc,0xc4,0x1e,0x20,0x51,0x00,0x8e,0x02,0x12,0xee,0x49,0x00,0xd0,0x63,0x82,0x72,0x00,0x8e,0x00,0xb6,0x50,0x20,0x78,0xbb,0xc6,0x40,0x0f,0x10,0x00,0x90,0xc7,0x01,0x21,0x55,0x11,0x3c,0x6a,0x05,0x51,0x17,0x88,0x00,0x78,0x00,0x21,0x81,0xc4,0xa0,0x11,0x18,0x0c,0x06,0x91,0x28,0x07,0x9f,0x40,0xa0,0x50,0x38,0x11,0x68,0x4b,0xc3,0x28,0x92,0x42,0x01,0xe5,0xa8,0x81,0xb7,0x86,0x06,0x1c,0x12,0x28,0xc8,0x1e,0x62,0x0f,0x3a,0x04,0x3e,0xe0,0x0f,0x15,0xc8,0x94,0x44,0x00,0x23,0x51,0x07,0x96,0xaa,0x7d,0x80,0xff,0x83,0x86,0x84,0x0e,0x28,0x14,0x0a,0x08,0x4f,0x3f,0xec,0x04,0xde,0x20,0xb1,0x80,0x42,0x41,0xc3,0x01,0xa0,0x0f,0xcf,0xf5,0x0f,0xe0,0x07,0x46,0x03,0xa0,0x84,0x10,0x47,0x0a,0x0f,0x38,0x07,0xd2,0xff,0x78,0x0e,0x8c,0x85,0x1c,0x29,0x72,0x1f,0x9e,0x83,0xd5,0xff,0x9f,0xc8,0x34,0x11,0x00,0x00,0xb0,0xcc,0x3e,0x7d,0x4d,0xfc,0x9d,0x54,0x54,0x0c,0x84,0x10,0x80,0x20,}; +const uint8_t _A_Cry_128x51_1[] = {0x01,0x00,0xa0,0x02,0xc0,0x00,0x87,0x81,0xff,0x87,0xd2,0x28,0x12,0x09,0x14,0x02,0x05,0x22,0x80,0xe4,0x20,0x94,0x08,0x44,0x03,0xe1,0xff,0xbf,0xc0,0x24,0x12,0x10,0x10,0xc8,0xa2,0x10,0x1c,0x46,0x8a,0x80,0x1f,0x19,0xe8,0x44,0x60,0x38,0x28,0x80,0x3c,0x60,0x31,0x18,0x45,0x02,0x25,0x00,0x82,0x40,0x21,0xe3,0x41,0x93,0x83,0xc8,0x0a,0x22,0xa1,0xa2,0x01,0x46,0x09,0x81,0x81,0x81,0x06,0x1d,0x51,0x84,0x42,0x22,0x18,0x80,0x78,0xc9,0x20,0x11,0x0c,0x17,0x00,0xaa,0x51,0x88,0x48,0x2c,0x42,0x23,0x04,0x15,0x88,0x54,0x60,0x56,0x00,0x79,0x6c,0x31,0x14,0x48,0x25,0x20,0x54,0x32,0x08,0x84,0x10,0x2e,0x33,0x40,0x79,0x78,0x07,0x25,0x44,0x90,0x01,0xc6,0x21,0x14,0x80,0x50,0x23,0x80,0xf2,0x19,0x96,0x01,0x02,0x50,0x18,0x46,0x40,0x0c,0x30,0xc0,0x79,0xc8,0x0d,0xa3,0x02,0x3f,0x0c,0x06,0x01,0x0a,0x3b,0x08,0x3c,0xf0,0x12,0x38,0x05,0x06,0x25,0x10,0xc4,0x82,0x06,0x03,0x40,0x88,0x41,0x81,0xe7,0x01,0x88,0x50,0x22,0x30,0x0c,0x42,0x70,0x68,0xa4,0x21,0x07,0x9c,0x03,0x07,0x88,0x90,0x60,0x30,0x0a,0xb2,0x00,0x12,0x38,0x80,0x03,0x8b,0xa4,0x36,0x06,0x80,0x61,0x10,0x20,0xc2,0x41,0xeb,0x46,0xa0,0x64,0x01,0xc3,0x06,0x38,0x8c,0x41,0x28,0x20,0xf4,0x83,0x41,0x11,0x43,0x22,0x30,0x89,0x10,0x60,0x98,0x43,0x20,0x83,0xce,0x41,0x08,0x7f,0x0c,0x4c,0x26,0x22,0xe1,0xc1,0x03,0xd0,0x3c,0x20,0xf1,0x3f,0x0e,0x20,0x10,0x30,0x23,0x50,0x9d,0x4a,0x01,0x0c,0x80,0xb2,0xc5,0x1c,0x4b,0x62,0x55,0x17,0xc0,0xb4,0x20,0xf1,0x07,0x08,0x74,0x4e,0x03,0x44,0x80,0xbb,0x8d,0x1e,0x38,0xf0,0x19,0x02,0x46,0x48,0xdd,0x10,0x7a,0x8b,0xc4,0x06,0x42,0xb1,0xd1,0x4a,0x17,0xc2,0xfe,0x30,0x79,0x16,0x46,0x09,0x24,0x80,0x64,0x88,0x83,0x00,0x07,0x8c,0xe0,0x1e,0x65,0xd1,0x0d,0x09,0x98,0xa2,0x35,0x00,0x78,0xff,0x41,0xe5,0x0f,0xc1,0x03,0x49,0xfc,0x31,0x2c,0x04,0xc2,0xc1,0x80,0xfd,0x4f,0xc9,0x63,0x0f,0x44,0x0c,0x0a,0x01,0x81,0x80,0x62,0xa8,0x10,0x80,0xf8,0xfd,0x41,0xe7,0x08,0x88,0x40,0x21,0x18,0x08,0x24,0x21,0xfc,0x37,0x00,0xf9,0x60,0x23,0xb0,0xfa,0x24,0x44,0x3a,0x27,0xe1,0x22,0x0c,0x42,0xd1,0x00,0xe6,0xc3,0xe2,0x12,0x0c,0x64,0x83,0x12,0xeb,0x18,0x26,0x40,0x68,0x30,0xc2,0xe8,0xd1,0x8b,0xe6,0xfa,0x10,0xe8,0xc8,0xb0,0x12,0x21,0xa0,0xcc,0x00,0xc2,0x6f,0x43,0xd1,0x48,0x29,0x31,0x21,0x80,0x83,0xd6,0x5a,0x2c,0x13,0x80,0xb4,0x0a,0x11,0x41,0x07,0x8c,0x48,0x1e,0x52,0xe8,0x44,0x80,0xde,0x39,0x12,0xf8,0xc2,0x24,0x40,0xf1,0x5d,0x9e,0x31,0xfc,0x31,0x1d,0x08,0xc0,0x70,0x14,0x49,0x00,0x3c,0x40,0x07,0x98,0x82,0x40,0x72,0x05,0xd1,0x88,0x50,0x1a,0x62,0x0f,0x29,0xe0,0x08,0x6e,0x10,0x43,0x70,0x80,0x04,0x1e,0x20,0x31,0x07,0x97,0x0d,0xaa,0x4b,0x91,0x05,0x91,0x68,0x48,0x83,0x18,0x80,0x61,0x20,0x10,0x38,0x07,0x03,0x14,0x9d,0x2c,0x01,0x10,0x4c,0x22,0x0f,0x13,0xc8,0x80,0x47,0x01,0x41,0x3f,0x10,0x80,0x81,0xe7,0x08,0x00,0x96,0x00,0x10,0x20,0x03,0x88,0x34,0x84,0x1e,0x24,0x33,0xc0,0x49,0x47,0x22,0x31,0x1c,0x96,0x22,0x81,0x02,0x07,0x9f,0x00,0x04,0x30,0x34,0xa8,0xc2,0xa4,0x18,0x28,0x45,0x10,0x1e,0x7d,0x02,0x81,0x00,0x44,0x68,0x20,0x21,0xa2,0x21,0x84,0x1e,0x5a,0x88,0x1a,0x88,0x60,0x60,0xe1,0x82,0xc1,0x18,0x63,0x20,0x07,0x9d,0x02,0x1f,0x70,0x80,0x42,0xe1,0x07,0x61,0x31,0x10,0xd4,0x41,0xe5,0xaa,0x9f,0x60,0x3f,0xf0,0x91,0x50,0x97,0xce,0x20,0x0f,0x38,0x07,0xf6,0x03,0x80,0x82,0x92,0x44,0xfe,0x78,0x80,0x79,0xea,0x3f,0x50,0xf3,0x08,0xc8,0xa0,0x11,0x14,0x68,0xe2,0x31,0x06,0xf4,0xfa,0x5f,0xef,0x01,0xd2,0x88,0x49,0x21,0x26,0x01,0x80,0x46,0x41,0xc3,0xa0,0xf5,0x7f,0xe7,0xef,0xe1,0x49,0x88,0x88,0x60,0x00,0xf4,0x80,0x75,0x37,0xf0,0x75,0x51,0x42,0x30,0x54,0x0a,0x04,0x80,}; +const uint8_t _A_Cry_128x51_2[] = {0x01,0x00,0xaa,0x02,0x00,0x0c,0x0b,0x91,0xff,0xa7,0xc8,0x64,0x14,0x08,0x14,0x8a,0x23,0x80,0x82,0x42,0x30,0x00,0xf1,0x80,0xfe,0x7f,0xf7,0xf9,0x08,0x58,0xa2,0x10,0x1c,0x44,0x82,0x01,0x04,0x07,0x0c,0x06,0x7b,0x00,0xf8,0x44,0x60,0x12,0x08,0x88,0x0c,0x69,0x11,0x00,0x79,0x70,0x72,0x10,0xf8,0x06,0x02,0x2f,0x00,0x88,0x64,0x21,0x10,0x8a,0x00,0x38,0x64,0x58,0x1c,0x06,0x02,0x06,0x2c,0x1c,0x74,0x22,0x21,0x80,0x84,0x08,0xc4,0x68,0x30,0x00,0xa0,0xf0,0x0a,0x65,0x98,0x03,0x89,0x68,0xe5,0x10,0x08,0x88,0x3c,0x6c,0x00,0x82,0x98,0x41,0x28,0x03,0x91,0x91,0x44,0x24,0x90,0x12,0xf8,0xc4,0x26,0x00,0xf2,0x09,0x8d,0x12,0x41,0x02,0x30,0x8c,0x50,0xc4,0x22,0x81,0x8c,0x03,0xcb,0x81,0x80,0x92,0x03,0xc6,0x02,0x7d,0x28,0x44,0x82,0x11,0x0c,0x07,0x9c,0x04,0x38,0x31,0x0c,0x0c,0x02,0x14,0x09,0x18,0x84,0x12,0x1a,0x0f,0x2c,0x05,0x06,0x21,0x11,0xc4,0xa6,0x88,0x88,0x28,0x21,0x83,0x83,0xd1,0x58,0x38,0x83,0xf0,0xd0,0x64,0x02,0xe1,0xc0,0x41,0x8d,0x27,0x23,0x43,0x8a,0x38,0x80,0x03,0x12,0x0d,0x0a,0x38,0x80,0x02,0x04,0x13,0x80,0xc8,0x30,0x08,0xe1,0x80,0x81,0xc4,0x1e,0x91,0x63,0x80,0xc9,0x85,0x63,0x12,0x69,0x88,0x44,0x41,0xeb,0x04,0x0d,0x8c,0x42,0x80,0x4c,0x10,0x00,0xe0,0x82,0x42,0x00,0x28,0x72,0x34,0x42,0xe4,0x8d,0x13,0x00,0xe0,0x01,0xe9,0x0c,0x81,0x44,0x55,0x65,0x80,0xa2,0x02,0x47,0x02,0x0f,0x20,0x10,0xa5,0x06,0x02,0x9e,0x10,0xe8,0xd1,0x06,0xa2,0xde,0x2f,0x81,0x50,0x61,0x8b,0x92,0xa2,0x50,0x5f,0xc3,0x02,0x90,0x72,0x05,0xc7,0x80,0x8f,0xe2,0x29,0x10,0x09,0x24,0x26,0x01,0x20,0x00,0x88,0x3d,0x05,0xe4,0x8d,0x13,0x78,0x83,0x84,0x0c,0x36,0x40,0x7b,0x37,0xc5,0xfc,0x30,0x0c,0x81,0x0c,0x5f,0x43,0x38,0x07,0x9a,0x74,0x5d,0xe2,0xfe,0x1c,0x00,0xd4,0x6c,0x50,0x0f,0xe8,0x3c,0xa5,0xe0,0x32,0x84,0xc4,0xb0,0x14,0x01,0xa8,0xd8,0xb0,0x1f,0xa9,0xf9,0x3c,0x61,0xe1,0xd1,0x3f,0x0e,0x08,0x1a,0x30,0x48,0x85,0xc2,0x01,0xf5,0x07,0x94,0x7e,0x02,0x5c,0x11,0xf0,0xd1,0x0a,0x03,0x04,0xb0,0x07,0xcb,0x01,0x1d,0x8f,0xe0,0x4c,0x05,0x05,0x37,0x96,0x0a,0xd1,0x00,0xa6,0xc3,0xe2,0x12,0x02,0xf8,0x87,0x07,0x20,0xd3,0x28,0x0e,0x12,0x61,0x00,0xa5,0x17,0xcc,0x3a,0x30,0x2c,0x01,0xf8,0xa0,0x34,0x00,0x78,0x80,0x44,0x00,0x34,0xc0,0x10,0xc8,0x29,0x2e,0xe1,0x29,0x88,0x34,0x82,0xc5,0x00,0x86,0xc8,0x28,0x0d,0x01,0x80,0x62,0x4e,0x03,0x20,0x46,0x88,0x3c,0xe1,0xd2,0x29,0x01,0x44,0x71,0x0f,0xf3,0x07,0x88,0x98,0x47,0xe5,0x01,0x07,0x0c,0x83,0x01,0x04,0x28,0x8c,0x06,0x68,0x0f,0x48,0xc6,0x00,0x74,0x31,0x0a,0x00,0x38,0x4c,0x22,0x0f,0x18,0x94,0xf0,0x1e,0x3b,0x00,0x99,0x44,0x40,0x43,0x22,0x01,0x89,0x3c,0x62,0x5c,0x30,0x40,0xf8,0x0d,0xe2,0x00,0x10,0xe8,0xc0,0x72,0x30,0x08,0xd1,0x90,0xa0,0x70,0x0e,0x00,0x3c,0xa1,0x12,0x28,0x0c,0x40,0xa2,0x31,0x94,0x18,0x95,0x4b,0x01,0x01,0x26,0x8c,0x82,0x20,0xd3,0x20,0x79,0x32,0x46,0x10,0x0f,0x28,0x20,0x84,0x43,0xa2,0x08,0x12,0xc8,0x83,0x48,0x86,0x20,0xf1,0x04,0x8e,0x4b,0x11,0x48,0x14,0x0c,0x02,0x38,0x0f,0x2e,0x00,0x18,0x60,0x70,0xa8,0x06,0x29,0xc4,0x43,0xc1,0x07,0x8c,0x27,0xa0,0x50,0x28,0x58,0x80,0x8f,0xe4,0x0c,0x11,0x78,0xc2,0x75,0x10,0x37,0x70,0xc0,0xd3,0x62,0xa0,0x12,0x89,0x0f,0xca,0x0d,0x40,0x87,0xdc,0x20,0x10,0x71,0x59,0x03,0x85,0x24,0x45,0xf1,0x80,0x6a,0xa7,0xd8,0x0f,0xfc,0x15,0xaa,0x30,0x20,0x70,0xc0,0x49,0x62,0x0f,0x28,0x07,0xf4,0xf0,0x30,0x39,0x04,0x20,0x78,0x2d,0xf3,0x17,0x8c,0x03,0x51,0xfa,0x87,0x98,0x45,0x00,0x26,0x81,0xc4,0x11,0x08,0x1e,0x50,0x0f,0xa5,0xfe,0xf0,0x8c,0x19,0x26,0x27,0x11,0x44,0x07,0x0d,0x00,0x1e,0x5a,0x0f,0x57,0xfe,0x7e,0x2b,0x1d,0x11,0xbc,0xa4,0x50,0x0a,0x08,0x7c,0xfa,0x9b,0xf8,0x3e,0x00,0x7c,0x54,0x09,0x03,0x44,0x40,}; +const uint8_t _A_Cry_128x51_3[] = {0x01,0x00,0xa8,0x02,0x00,0x0c,0x13,0x89,0xff,0x8f,0xc4,0xa0,0x14,0x28,0x14,0x82,0x03,0x12,0x81,0x42,0x71,0x10,0x09,0x04,0x13,0xe9,0xff,0xbf,0xd2,0x00,0xc3,0x41,0x88,0x42,0x22,0x50,0x1c,0x4c,0x13,0x03,0x00,0x88,0x4f,0x20,0x1f,0x08,0x4c,0x82,0x41,0x50,0x88,0x40,0x20,0x20,0xc1,0xa2,0x50,0x01,0xe3,0x0f,0x80,0x60,0x24,0xe0,0x51,0x98,0x02,0x46,0x03,0x80,0x82,0x50,0x00,0xa3,0x88,0x81,0x90,0xc6,0x1c,0x12,0x19,0x45,0x03,0x01,0x80,0x04,0x0c,0x82,0x01,0x08,0xe0,0x14,0xca,0x30,0x2c,0x18,0xc0,0x14,0x43,0x62,0x0f,0x28,0x05,0x80,0x1e,0x5b,0x00,0xb0,0xc5,0x20,0x86,0x31,0x04,0x0e,0x40,0x04,0x33,0x00,0x79,0x04,0xc6,0x48,0x0e,0x10,0x01,0xe0,0x05,0x09,0x00,0xe0,0x41,0x20,0x90,0xa4,0x00,0x81,0xc6,0x20,0x78,0x12,0x59,0x03,0xca,0x49,0x00,0x81,0x42,0x24,0x11,0x02,0x80,0x83,0xca,0x1a,0x26,0x38,0x0a,0x98,0x68,0x19,0x0c,0x81,0x40,0x42,0xe3,0x00,0x83,0x83,0xce,0x07,0x08,0xc1,0x01,0x06,0x11,0x40,0x19,0x09,0x18,0x60,0xc4,0x73,0x81,0xc2,0x70,0x52,0x08,0x44,0x20,0x3a,0x25,0xf2,0x47,0x10,0x00,0x70,0x70,0x48,0x0c,0x82,0x91,0x20,0x07,0x9d,0x00,0x1e,0x98,0x65,0xc0,0xc4,0x18,0x63,0x10,0x36,0x88,0x3d,0xa0,0xd4,0x29,0x10,0x80,0x4d,0xc2,0x0d,0x18,0x0e,0x90,0xb4,0x20,0xf3,0x91,0x48,0x21,0x31,0x08,0x10,0x28,0xf0,0x80,0xf4,0x1f,0x0a,0xc4,0x60,0x50,0x90,0x30,0x88,0xc7,0x04,0x0f,0x48,0x66,0x03,0x21,0x04,0x84,0xe0,0x54,0xa2,0x32,0x16,0xf1,0x84,0x87,0x38,0x7c,0x18,0x26,0x25,0xfc,0x2d,0x12,0xe0,0x80,0x87,0xe0,0x46,0x1c,0x60,0x08,0x60,0x58,0x47,0x68,0x90,0x45,0xfc,0x89,0xa1,0x87,0x82,0xc5,0x78,0x30,0x28,0x14,0x84,0x12,0x2f,0xe3,0x1f,0x91,0xf0,0x5f,0xc3,0x20,0x88,0xe4,0x60,0x98,0x4b,0x24,0x02,0x70,0x0f,0x29,0x63,0xf8,0x83,0xa3,0x11,0x2a,0x0d,0x12,0xc5,0x00,0xfe,0x83,0xca,0x5f,0x00,0xc9,0x01,0x07,0x21,0x08,0xa4,0x40,0xa8,0x56,0x2c,0x07,0xea,0x7e,0x3f,0x28,0x16,0x04,0x1e,0x54,0x8a,0x06,0x4a,0x41,0x61,0x80,0x7d,0x41,0xe7,0x01,0xa0,0xae,0xc9,0xfc,0x27,0x91,0xb8,0x87,0xcb,0x01,0x1d,0x87,0xa2,0xc5,0x4a,0x70,0x0a,0x0c,0x04,0xbe,0x34,0xd8,0x7b,0x68,0x61,0x89,0xa1,0x84,0x07,0x44,0xe0,0x21,0x31,0x2e,0x8d,0x28,0xde,0x70,0x49,0x10,0x3c,0x4c,0x22,0xfe,0x18,0x40,0x3c,0x66,0x00,0xf3,0x7f,0x0a,0xec,0xa0,0x74,0x8c,0x14,0x22,0x68,0x8f,0x4a,0x68,0x30,0x64,0x11,0x08,0x84,0x06,0x91,0x12,0x80,0x03,0xd6,0x1c,0x58,0x11,0xd9,0x60,0x24,0x03,0x41,0x16,0x98,0xbc,0xa2,0x20,0xf2,0xc0,0x34,0x46,0x80,0x0f,0x6c,0xc4,0x42,0x49,0x00,0x84,0xe0,0x28,0x90,0x20,0x28,0xcc,0x41,0x83,0x3c,0x01,0x08,0x54,0x64,0x98,0x1c,0x00,0x70,0x62,0x4d,0x51,0x0f,0x97,0x0c,0x04,0x28,0x51,0xc9,0x32,0x86,0x84,0x22,0x10,0x48,0xc6,0x20,0x03,0x51,0x81,0xc0,0x38,0x03,0xe1,0x16,0x09,0x04,0x69,0x0a,0x21,0x07,0x89,0xe0,0x40,0x23,0x80,0x80,0xc0,0x68,0x12,0x28,0x0e,0x00,0x40,0x34,0x00,0x78,0x98,0xc4,0x02,0x38,0x08,0x1d,0x26,0x00,0x3b,0x1c,0x04,0x93,0x13,0x02,0x07,0x89,0x34,0xf0,0x18,0x30,0x69,0x38,0x4b,0x01,0x02,0x8e,0x07,0x48,0x7a,0x24,0x22,0x16,0x09,0xf4,0x42,0x24,0x2f,0x2e,0x80,0x34,0xa0,0x6a,0x91,0xa0,0x04,0x46,0x83,0x40,0x80,0x83,0xc6,0x03,0xa8,0x81,0xc3,0x20,0x10,0x78,0x14,0x22,0x81,0x44,0x07,0x88,0x7c,0x63,0x42,0x62,0x87,0xdc,0x01,0xe2,0xc0,0x13,0x28,0x80,0x04,0x8a,0x22,0xf2,0xd5,0x4f,0xb0,0x1f,0xf8,0x1d,0x04,0x1c,0x28,0x02,0xc8,0x03,0xc8,0x00,0x3f,0xd3,0xc8,0xc0,0x64,0x90,0x47,0x01,0x40,0xa2,0x08,0xf2,0x84,0x6a,0x3f,0x50,0xfe,0x06,0x00,0x1c,0x20,0xf2,0x05,0x88,0x3c,0x96,0x83,0xf4,0xbf,0xde,0x21,0x00,0xe1,0x20,0x89,0x28,0x91,0xe5,0x09,0xd0,0x7a,0xbf,0xf3,0xf8,0x44,0x41,0xdc,0x20,0xe1,0xa0,0xc9,0x20,0x51,0x90,0xf9,0x75,0x37,0xf9,0x79,0x24,0x05,0x6c,0x59,0x08,0x24,0x90,}; +const uint8_t *_A_Cry_128x51[] = {_A_Cry_128x51_0,_A_Cry_128x51_1,_A_Cry_128x51_2,_A_Cry_128x51_3}; + +const uint8_t _A_KnifeActive_128x51_0[] = {0x01,0x00,0x8a,0x01,0x00,0x2f,0x80,0x06,0x53,0xfb,0x00,0x3e,0x7e,0x00,0x21,0xe0,0x40,0x78,0x10,0x30,0x7c,0x72,0x00,0x43,0x40,0x01,0x0c,0x38,0x1f,0x72,0x00,0x10,0xce,0x01,0xf1,0xc4,0x01,0x0c,0xc0,0x24,0x80,0x06,0xe3,0x00,0x86,0x18,0x32,0x40,0x03,0x70,0xc0,0x43,0x04,0x01,0x0e,0x00,0x1f,0x1c,0x10,0x10,0xc1,0x81,0xe5,0x01,0x07,0x36,0x02,0xc2,0x03,0x18,0x10,0x1c,0x81,0xef,0xc0,0x45,0x11,0xf0,0xd0,0x0f,0x40,0x07,0x90,0x6c,0xc6,0x64,0x00,0x4b,0x00,0x3c,0x47,0x68,0x63,0x20,0x02,0x48,0x01,0xe4,0x07,0x38,0x40,0x3f,0xc1,0xed,0x10,0x07,0xb4,0x40,0x1f,0x29,0xb4,0x07,0xbc,0x20,0x1f,0xe0,0xf2,0x3d,0x98,0x3e,0xb8,0x1f,0xf0,0x7f,0xcf,0xde,0x68,0x00,0x48,0x60,0x3c,0xef,0xe7,0x72,0x07,0xb4,0x10,0x1e,0x63,0x02,0x07,0xea,0xc4,0x41,0xf5,0xe0,0x07,0xf7,0xf0,0x1f,0xd0,0xc0,0x80,0x8f,0xef,0x00,0x8e,0x12,0xf9,0x78,0x01,0xed,0xfc,0x05,0x8b,0xf8,0xe0,0x1a,0x05,0x21,0x80,0x0e,0x88,0xbe,0x48,0x05,0x82,0x0c,0x0f,0x6e,0x20,0x3d,0x68,0x11,0x80,0x7b,0xf0,0x45,0xe9,0x40,0x58,0x3d,0x13,0x86,0xce,0x30,0x78,0x98,0x1e,0x89,0x86,0xc0,0xc3,0xc1,0xe6,0x77,0x10,0x00,0xba,0x4e,0x89,0x0c,0x80,0xce,0x01,0xe7,0xc0,0x01,0x8f,0xe1,0xce,0x26,0x51,0xa2,0x46,0x20,0xc1,0xa3,0xa0,0x60,0x08,0xc3,0x08,0x03,0x0c,0xf2,0x01,0x84,0x98,0x43,0x07,0xe8,0x86,0x21,0x11,0x70,0x20,0x78,0x4f,0x00,0xb8,0x42,0x24,0x0f,0x3c,0x42,0x4c,0xa3,0x98,0x4c,0x06,0x07,0xfe,0x07,0x20,0x78,0x81,0x06,0x11,0x1e,0x5b,0x96,0x12,0x01,0x07,0x07,0xac,0x08,0x1e,0x3e,0x04,0x51,0x60,0xe0,0x2d,0xe1,0x07,0xbc,0x00,0x40,0x50,0x20,0x98,0xff,0x82,0xc4,0x0f,0x18,0x20,0x3c,0xbe,0x00,0xf5,0x2f,0xa0,0x3c,0xf0,0x10,0x70,0x79,0xba,0x8c,0xd6,0x26,0x41,0x3f,0xa4,0x10,0x1e,0x2d,0x03,0xc0,0x03,0x48,0x1e,0x47,0xf1,0xc6,0x01,0x04,0x1e,0x90,0x30,0x68,0xbc,0x8f,0xff,0xff,0x0f,0x9b,0x70,0x70,0x11,0xe0,0x78,0xad,0xcc,0xca,0x23,0xd1,0x07,0xa4,0xc0,0x9a,0x51,0x30,0x78,0xc1,0xa0,0x10,0xe6,0x49,0x03,0xca,0xc0,0xb4,0x2b,0xf0,0x08,0x4c,0xa3,0x0c,0x25,0x08,0x3c,0xf8,0x06,0xa1,0x26,0x88,0x0c,0x41,0xe3,0x18,0x07,0xab,0x90,0xe0,0x1f,0xc0,0x79,0x4f,0xdc,0xc4,0x0f,0x12,0x21,0x00,}; +const uint8_t _A_KnifeActive_128x51_1[] = {0x01,0x00,0xb7,0x01,0x00,0x3c,0x0e,0x01,0x07,0x80,0x43,0xc1,0xf7,0x80,0x80,0xc0,0x23,0x00,0xe9,0xc0,0x40,0xf8,0x00,0x41,0xb0,0x03,0xe7,0x81,0x02,0x06,0x10,0x48,0x80,0x0f,0x60,0x81,0xc8,0x04,0x84,0x32,0x10,0x03,0xcc,0x20,0x33,0x00,0x29,0x03,0xe6,0x31,0x01,0x26,0x19,0x90,0x40,0x0f,0x8c,0x80,0xc3,0x00,0xa5,0x02,0x07,0xc6,0x1a,0x01,0x06,0x07,0xe6,0x0c,0x16,0x90,0x43,0x74,0x70,0x47,0x68,0x0f,0x8b,0x05,0x00,0xb6,0x84,0x33,0x00,0x24,0x80,0x1e,0xb0,0x80,0x7b,0xce,0x01,0xfd,0x08,0x90,0x26,0xd0,0x1f,0x10,0x40,0x78,0xa5,0x50,0x1e,0xf0,0x60,0x7a,0xc4,0x1f,0xb0,0x0f,0xe8,0x0c,0x43,0x00,0x9f,0x30,0x7b,0x93,0x04,0x1e,0x39,0xff,0xda,0x44,0x41,0xef,0xc0,0x04,0x8f,0x03,0xdf,0x79,0x83,0x83,0xe0,0xfa,0x31,0x8e,0x07,0xfe,0x7e,0x9d,0x10,0x7b,0xd8,0x0f,0x22,0x1f,0x1e,0xbc,0x34,0x1f,0x1e,0x00,0x79,0x7c,0xf9,0xa0,0xf9,0x27,0x8c,0x33,0xf1,0xf8,0x83,0x0b,0xc6,0x60,0x6f,0x78,0x3c,0x12,0x1f,0x68,0x8f,0x03,0xc6,0xe0,0x0f,0x79,0xe7,0x19,0x7c,0x3f,0xc2,0xf8,0xe4,0x01,0xef,0xf0,0xa1,0x80,0xc7,0xf1,0x03,0x80,0xe8,0x10,0x42,0x00,0x5e,0x80,0x3c,0x94,0xa5,0x20,0x52,0x1b,0xbd,0x01,0xe6,0xc2,0x19,0x03,0x81,0xe1,0x14,0x15,0x2a,0x48,0x0c,0x0f,0x3e,0xe0,0xa5,0x52,0x41,0x20,0x07,0xb7,0x9b,0x03,0x1f,0x02,0x08,0x70,0x64,0x01,0x21,0x13,0x17,0xfc,0x06,0x38,0x28,0x3f,0xc6,0x1f,0x00,0x09,0x0c,0x80,0x64,0x26,0x61,0x9f,0xc0,0x0c,0xa3,0x03,0x8f,0xc0,0xfe,0x1f,0xf4,0x10,0xd8,0x15,0x02,0x4a,0x14,0x69,0x03,0xc6,0xc5,0x0e,0x73,0xa8,0x3c,0x44,0x45,0xc0,0x81,0xc0,0xf8,0x57,0xb0,0x7b,0xe2,0x12,0x65,0x1c,0x81,0xc0,0xb9,0xd7,0xf3,0xf0,0x83,0xc8,0x18,0x30,0x88,0xf3,0xbc,0xa0,0xf0,0x3b,0xc7,0xfc,0xac,0x40,0xf1,0x81,0x03,0xc7,0xc0,0x23,0x18,0x04,0x3e,0x02,0x65,0x11,0x39,0x03,0xd2,0x00,0x20,0x22,0xd9,0x7f,0x82,0xc4,0x0f,0x18,0x20,0x3c,0xbe,0x00,0x81,0x9c,0x83,0xc8,0x9e,0x80,0xf3,0xc0,0x3e,0x06,0x02,0x0f,0x17,0x51,0x9a,0xc6,0x18,0x7f,0x50,0x79,0x0b,0x88,0x1e,0x40,0xd1,0x07,0x91,0xfc,0x70,0x20,0xf6,0x81,0x83,0x45,0xe4,0x7f,0xfe,0x1a,0x78,0x41,0xe2,0xdc,0x1e,0x04,0x78,0x1e,0x2d,0x23,0x81,0x59,0xa7,0x00,0xf5,0x98,0x13,0x4a,0x26,0x0f,0x18,0x34,0xf2,0xd0,0xc9,0x20,0x78,0xe0,0x2c,0x04,0xf1,0x80,0x5f,0x80,0x42,0x65,0x1e,0x46,0x04,0x0a,0x20,0xf2,0xe0,0x1a,0x84,0x48,0x20,0x31,0x3a,0x96,0x78,0x1e,0x8d,0x43,0x80,0x7f,0x01,0xe5,0x0f,0x4a,0x10,0x3d,0x00,}; +const uint8_t *_A_KnifeActive_128x51[] = {_A_KnifeActive_128x51_0,_A_KnifeActive_128x51_1}; + +const uint8_t _A_Knife_128x51_0[] = {0x01,0x00,0x84,0x01,0x00,0x78,0x02,0x2f,0xc0,0xed,0xf0,0x60,0xe0,0xe0,0xfc,0x9e,0x40,0x21,0x80,0xfc,0x83,0x40,0x23,0x00,0xfc,0x81,0xc0,0x2c,0x00,0xfc,0x80,0xc0,0x3a,0x00,0xeb,0xe0,0x00,0x87,0x40,0x12,0x10,0x04,0xd0,0x00,0x44,0x32,0x10,0x04,0xc8,0x00,0x43,0x80,0x29,0x08,0x3f,0x61,0xa0,0xfa,0x88,0x00,0xca,0x36,0x0f,0xe9,0x90,0x3e,0x91,0x87,0x24,0x07,0xd4,0x20,0x06,0x5c,0x80,0x7f,0x66,0x01,0xfd,0x30,0x48,0x50,0x3c,0xec,0x00,0xfe,0xe0,0x28,0x28,0x1e,0x78,0x00,0x7d,0xfe,0xa1,0xe0,0x41,0x82,0x83,0xeb,0xfc,0x0f,0x29,0xf8,0x3e,0x7f,0x1f,0xf8,0xf8,0x10,0x6d,0xc0,0xf9,0xf8,0x7f,0xc3,0x85,0x8c,0x30,0x27,0x00,0x0a,0x61,0xf4,0xce,0x0c,0xc8,0x00,0x34,0x08,0xf0,0x10,0xbc,0x1f,0xf8,0x38,0x10,0x67,0x17,0x10,0x79,0xe0,0x3e,0x02,0x02,0xe0,0x12,0xce,0xc1,0xc3,0x15,0x1e,0x02,0x01,0x8f,0xff,0xc0,0x6e,0x02,0x94,0x81,0x09,0x08,0x00,0x30,0x1f,0xc4,0x02,0x1e,0xef,0x31,0x20,0xc0,0xa1,0x80,0x63,0x83,0x70,0x20,0x17,0x88,0x30,0xe5,0x20,0x53,0x00,0x31,0xc3,0x01,0xe2,0xba,0x55,0x80,0xd8,0x00,0xc7,0x18,0x5c,0x13,0x69,0x60,0x61,0x91,0x7b,0x9c,0x02,0x7d,0x0f,0x07,0xac,0x08,0x22,0x24,0x52,0xef,0x9b,0x49,0xb4,0xa4,0x51,0x08,0x8f,0xe2,0x7f,0x80,0x0e,0x0c,0x84,0x0e,0x24,0x94,0x08,0x93,0xe4,0x80,0x83,0x70,0xc7,0x47,0xed,0x80,0xf4,0x82,0x0a,0xc4,0x0c,0x31,0xc8,0x04,0xf2,0xf1,0xff,0x68,0x18,0x3c,0x43,0xa3,0x88,0x1d,0x0d,0xc3,0x01,0xe7,0xfc,0x83,0xc5,0x98,0x41,0x81,0x08,0x93,0x38,0x78,0x1f,0x15,0x91,0x7f,0xca,0x45,0x16,0x1f,0x9f,0x80,0x9c,0x39,0xf8,0x19,0x7d,0x66,0x65,0xf2,0x18,0x8b,0xbc,0xa0,0xc7,0xf5,0x90,0xa5,0xc8,0x1e,0x3f,0x05,0x11,0x07,0xd7,0xc1,0xff,0x01,0x88,0x3c,0x70,0x0e,0x51,0xfc,0x1f,0xd6,0x80,0x03,0x23,0xf9,0x4f,0x30,0x1c,0xf0,0x7a,0xaf,0x8c,0x1e,0x5c,0x0f,0xdc,0x02,0x9e,0x0f,0x4c,0x03,0x74,0xc0,0x65,0x1f,0x80,0x5f,0x01,0xea,0x56,0x27,0x91,0x8b,0x47,0xe0,0x09,0x1f,0xe0,0x3d,0x70,0x11,0x36,0x01,0xc4,0x11,0xe8,0x0f,0x38,0x05,0xf8,0x04,0x2c,0x51,0x88,0x2a,0x48,0x50,0x84,0xd2,0x37,0x08,0x3c,0xca,0xe4,0x0f,0x51,0xc1,0x03,0xc4,0xa2,0x21,0x11,0x00,0x10,0xe0,0x40,}; +const uint8_t _A_Knife_128x51_1[] = {0x01,0x00,0x8c,0x01,0x00,0x78,0x02,0xbf,0x9f,0xf8,0x08,0x3f,0x20,0xf0,0x08,0x18,0x3a,0xfc,0x01,0xd1,0x87,0x03,0xee,0x60,0x02,0x18,0xc0,0x3f,0x80,0x44,0x00,0x98,0x80,0x08,0x6c,0x06,0x1e,0xa0,0x03,0x2e,0x18,0x02,0x1e,0x00,0x3e,0xe0,0x80,0x21,0xc0,0x03,0xee,0x0c,0x0f,0xe8,0x10,0x3c,0x94,0x16,0x0f,0x28,0x00,0x3e,0xc1,0x66,0xb0,0xb0,0x79,0x88,0xcc,0x1f,0xe0,0xfb,0x31,0x90,0x3f,0x10,0x64,0x0f,0xf7,0xf4,0x43,0xe1,0xe0,0xfc,0xe0,0x7f,0xe0,0xec,0x34,0x0f,0xc7,0xfe,0x3e,0x04,0x18,0x40,0x3e,0x7e,0x1f,0xfd,0xf8,0x40,0x41,0xf5,0x98,0x10,0x08,0x7f,0x3f,0x1f,0xff,0xfa,0xb4,0x63,0x04,0xfa,0xf9,0xc7,0xcc,0x02,0x0f,0xac,0x07,0x7f,0xfc,0x0f,0x19,0x80,0x3e,0xbf,0x9c,0xf1,0x78,0xdc,0x01,0xf3,0x40,0x40,0x0f,0xfe,0x03,0xd0,0x07,0xcd,0x80,0xa2,0x3c,0x1f,0xfe,0xcd,0x68,0x69,0x55,0x1d,0x1f,0x82,0x46,0x0f,0x4b,0xe0,0x10,0xe2,0x00,0x43,0x90,0x3c,0x13,0x90,0x48,0x14,0x52,0x03,0x06,0x40,0xd0,0x22,0x38,0xc6,0x21,0xc0,0xf4,0xe0,0x05,0x86,0x40,0x3a,0x1f,0xc4,0xfe,0x01,0x13,0x33,0x18,0x4c,0x6f,0x02,0xf2,0x0a,0x88,0x9c,0xa7,0x9c,0x0f,0xed,0xfc,0x58,0x42,0x52,0x90,0x28,0x07,0x80,0x05,0x2c,0x04,0x0f,0xe1,0x80,0x8d,0x81,0x04,0x12,0x45,0x51,0xc4,0x01,0x86,0xc0,0x13,0x1c,0x04,0x1e,0xe1,0xe0,0x2f,0x98,0x3c,0x61,0x11,0xe1,0x10,0xd0,0x01,0x23,0x1e,0xe4,0x6f,0xcf,0x65,0x20,0x42,0x8c,0x23,0xc1,0x01,0xc0,0x60,0x01,0x42,0xee,0x1f,0x8a,0x90,0xe4,0x04,0xf2,0x10,0x0c,0x0c,0x94,0x38,0x0f,0xf7,0xfd,0x88,0x60,0xf3,0xf8,0x16,0xc7,0xf1,0x1f,0x80,0x7d,0xe3,0xe7,0x81,0x07,0x8b,0x14,0x41,0xe2,0x4b,0x14,0x28,0xfc,0x30,0x6d,0xd1,0x2f,0x95,0x00,0x92,0x27,0xf3,0x3a,0x8e,0x03,0xff,0xf0,0x17,0x90,0x38,0x41,0xe9,0xc0,0xbd,0x83,0xc7,0x83,0xef,0x2f,0x15,0xc3,0x81,0x47,0x80,0x06,0xc4,0x00,0x21,0xa1,0x30,0x8c,0xf0,0x0e,0x51,0xca,0x03,0xa8,0x48,0x22,0x00,0x1c,0x14,0x04,0xe8,0x2e,0x93,0x83,0x22,0x0b,0x01,0x13,0x03,0x94,0x1a,0x79,0x8f,0x17,0x17,0x82,0x06,0x0f,0x28,0x05,0xf8,0x04,0x30,0x4f,0xe4,0x5f,0xf0,0x09,0x26,0x62,0x00,0xc6,0x0e,0x0f,0x18,0x04,0x40,0x6c,0x63,0x21,0x07,0x9c,0x03,0xf8,0x0f,0x28,0xf8,0x24,0xb8,0x08,0x01,0xc0,0x40,0x00,}; +const uint8_t *_A_Knife_128x51[] = {_A_Knife_128x51_0,_A_Knife_128x51_1}; + +const uint8_t _A_LaptopActive_128x51_0[] = {0x01,0x00,0x2c,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0x4f,0x04,0xfc,0x1f,0xbb,0xcf,0x50,0x3f,0x6a,0xf5,0x58,0x18,0x3a,0xf8,0x1a,0xad,0x54,0x38,0x1f,0x76,0x0a,0xac,0x02,0x2a,0x0f,0xbd,0x84,0x2a,0x01,0x28,0x07,0xdd,0x62,0x0b,0x00,0xa8,0x03,0xef,0x58,0x71,0x20,0x7d,0xd5,0x0a,0x44,0x0f,0xb9,0x50,0x08,0x70,0x00,0xfb,0x8b,0x00,0xca,0x02,0x0f,0xa8,0x5c,0x78,0x3e,0x20,0xfb,0x82,0xc8,0x60,0x14,0x00,0x7d,0x60,0x30,0x54,0x02,0x78,0xac,0x2b,0x01,0x45,0xde,0x03,0xf6,0x85,0xfe,0x80,0x7a,0x83,0xf9,0xcf,0xa0,0x47,0x60,0x4d,0xea,0xa1,0x71,0xf5,0x10,0x38,0x60,0x3e,0x68,0x18,0x1f,0x3f,0x42,0x01,0x08,0x0f,0xd4,0x0a,0xff,0x38,0x07,0xd9,0xec,0x67,0xc2,0xd1,0x87,0x07,0xee,0xc7,0x02,0xe0,0x7f,0xc0,0x03,0x3f,0x07,0xb5,0x83,0x02,0xcd,0x19,0xc2,0x7c,0xa4,0x00,0xf6,0xf0,0x50,0x80,0x63,0x06,0x07,0xd5,0x42,0x82,0x82,0x1c,0x08,0x1c,0xa2,0x00,0xf6,0xf8,0x07,0xc6,0xc0,0xff,0x30,0x7b,0xd6,0x05,0x63,0x18,0x68,0x88,0x00,0x4e,0x4f,0xec,0x55,0x90,0x3e,0xea,0x84,0xb6,0x82,0x03,0xdb,0xd4,0x1f,0x20,0x7d,0xd5,0xa0,0xa4,0xb5,0x71,0x3f,0xac,0x10,0x51,0xc0,0x7d,0x55,0x43,0xe5,0x0b,0x03,0x91,0x18,0x80,0x09,0xff,0x8f,0x96,0xd4,0x1e,0xdb,0xc2,0x61,0x92,0xc9,0x24,0x63,0xe4,0x07,0xef,0x03,0xaa,0x0f,0x64,0x91,0x80,0x0b,0x41,0xaa,0x07,0x9a,0x89,0x9f,0xa7,0xd5,0x80,0x9f,0x09,0x24,0xc1,0xf4,0x07,0xe8,0x7c,0x60,0x46,0xc2,0x35,0x93,0xb9,0xb4,0x16,0xa8,0x2c,0x50,0x1f,0x5f,0xfb,0xff,0xd6,0x1f,0xfa,0xff,0xff,0xc1,0xe5,0xf8,0x02,0x88,0x00,0x8d,0xe3,0x7f,0xf8,0x02,0x13,0xff,0x0f,0x47,0xb0,0x00,0x61,0x82,0xf4,0x77,0x38,0xa5,0xe0,0x60,0xf8,0x00,0x78,0x02,0xc0,}; +const uint8_t _A_LaptopActive_128x51_1[] = {0x01,0x00,0x18,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x02,0x7f,0x23,0xe0,0xfd,0xa9,0xfd,0x41,0xd9,0xc0,0xd5,0x6a,0xa0,0x60,0xfb,0xb0,0x55,0x6a,0xb0,0x50,0x7d,0xec,0x35,0x5a,0x28,0x50,0x3e,0xeb,0x14,0x5a,0x24,0x54,0x1f,0x7a,0x80,0x10,0xc6,0x01,0xf7,0x54,0x80,0xc0,0x26,0x00,0xfb,0x97,0x00,0x86,0x40,0x0f,0xba,0xb0,0x08,0x68,0x00,0xfb,0xf5,0x00,0x86,0x8e,0x0f,0xb8,0xac,0x07,0x01,0x98,0x07,0xde,0x2e,0x07,0x40,0xce,0x03,0xef,0xda,0x0f,0x1c,0xf8,0x3e,0xfd,0x60,0xfe,0xf4,0x83,0xfa,0xf7,0xa2,0xe0,0x64,0xc1,0xf7,0x79,0xa9,0x70,0x41,0xf7,0x80,0xf9,0x6a,0x70,0x10,0xf5,0x90,0x83,0xe7,0xc3,0x50,0x80,0xc1,0xc1,0xf7,0x12,0x01,0x8c,0x23,0xfe,0x00,0x19,0xf8,0x3d,0xe1,0x20,0x31,0x88,0x07,0xc9,0xa6,0xf8,0x08,0x54,0x06,0x80,0x0f,0xc8,0x2c,0x0a,0x41,0x80,0x03,0x94,0x40,0x1e,0xf0,0x20,0x7f,0x41,0x7c,0x91,0x17,0xf9,0xc2,0x01,0xef,0x8a,0xff,0xc3,0xc1,0xf7,0x40,0xa2,0x8a,0x84,0x96,0x70,0x40,0x7b,0x70,0x2b,0x40,0xfd,0xa0,0x59,0xc1,0xe2,0x4b,0x38,0x10,0x7d,0xe8,0x20,0xfe,0xe0,0x92,0x84,0x96,0x6c,0x27,0xd0,0x70,0x01,0xfb,0x50,0xb0,0x40,0x60,0x84,0xb2,0x49,0x18,0x01,0x26,0x1a,0x05,0x00,0x83,0xee,0xb1,0x50,0x82,0x88,0x04,0xcc,0x40,0xf7,0xd6,0x6c,0x3f,0x45,0xb3,0x07,0xc5,0x50,0x3e,0x20,0xf3,0x77,0x3c,0x03,0x55,0xa8,0x85,0x03,0xf2,0xab,0x59,0x0f,0x89,0xac,0x9d,0xcf,0x00,0xd5,0x87,0xc8,0x1f,0x1f,0xf0,0x02,0x83,0xcb,0xf0,0x08,0x40,0x99,0xff,0x01,0x29,0x07,0x17,0xbc,0x02,0x18,0xab,0x47,0x73,0x8a,0x5e,0x06,0x0f,0x80,0x07,0x80,0x2c,}; +const uint8_t *_A_LaptopActive_128x51[] = {_A_LaptopActive_128x51_0,_A_LaptopActive_128x51_1}; + +const uint8_t _A_Laptop_128x51_0[] = {0x01,0x00,0x41,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0x4f,0x04,0xfc,0x1f,0xbb,0xcf,0x50,0x3f,0x6a,0xf5,0x58,0x18,0x3a,0xf8,0x1a,0xad,0x54,0x38,0x1f,0x76,0x0a,0xad,0x56,0x2a,0x0f,0xbd,0x84,0xaa,0x00,0x01,0x10,0x05,0x56,0x2a,0xb4,0x4a,0xa0,0x3e,0xf5,0x90,0x28,0x07,0xa0,0x1f,0x75,0x48,0x8c,0x03,0xa0,0x0f,0xbd,0x50,0x08,0x74,0x00,0xfb,0xab,0x00,0x86,0x81,0x01,0x07,0xd4,0xae,0x3d,0x00,0xc0,0x03,0xee,0x2b,0x21,0x0f,0xe6,0x03,0x15,0x40,0x51,0x0a,0xc2,0xb0,0x15,0x5d,0xe5,0x43,0xaa,0x0f,0xba,0x57,0xfb,0x41,0xea,0x0f,0xe7,0xfe,0xa1,0x1d,0x49,0x0b,0x7a,0x69,0x5c,0xfd,0x44,0x0e,0x18,0x0f,0x9a,0x06,0x17,0xdf,0xd4,0x80,0x42,0x03,0xf5,0x0a,0xbf,0xce,0x81,0xf7,0x40,0x8a,0xcf,0x85,0xa3,0x0e,0x0f,0xdd,0x8e,0x05,0xc0,0xff,0x80,0x06,0x7e,0x0f,0x6b,0x06,0x17,0x01,0x00,0x9c,0x27,0xca,0x40,0x0f,0x6f,0x05,0x08,0x06,0x30,0x60,0x7d,0x54,0x2a,0xa8,0x21,0xc0,0x81,0xca,0x20,0x0f,0x6f,0x80,0x7c,0x6c,0x03,0x11,0x07,0xcd,0x62,0x0b,0x00,0x8c,0x34,0x44,0x00,0x27,0x27,0xf6,0x2a,0xc8,0x1f,0x75,0x48,0xa9,0x2d,0x60,0x80,0xf6,0xf5,0x42,0x81,0xfb,0x56,0xa2,0x92,0xd5,0xc4,0xfe,0xb0,0xf9,0x47,0x01,0xf5,0x55,0x1f,0x94,0x2c,0x0e,0x49,0x22,0x4f,0x27,0xfc,0x18,0x45,0xb3,0x07,0xb0,0xe8,0x6a,0x84,0xb4,0x49,0x18,0x00,0xc7,0x42,0xed,0x10,0x7d,0xc4,0xa0,0x19,0x4f,0xfc,0x04,0x1e,0x49,0x23,0x00,0x1c,0x6a,0x01,0x6c,0x80,0xc1,0x94,0x4c,0x00,0x39,0xd4,0x03,0xfc,0x4e,0x10,0x79,0x3b,0x9e,0x48,0x90,0x12,0x98,0x83,0xea,0xf1,0x00,0x95,0x82,0xc4,0xd6,0x4e,0xe7,0xc0,0x60,0x2a,0xa3,0xb1,0x07,0xc7,0xfc,0x00,0x3c,0x10,0x19,0x03,0xcb,0xf0,0x06,0x20,0x00,0x84,0x8a,0x7d,0xfc,0x04,0xa4,0x1c,0x5e,0xc0,0x01,0x47,0x90,0x7c,0x9d,0xce,0x29,0x78,0x18,0x3e,0x00,0x1e,0x00,0xb0,}; +const uint8_t _A_Laptop_128x51_1[] = {0x01,0x00,0x3c,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0x4f,0x04,0xfc,0x1f,0xbb,0xcf,0x50,0x3f,0x6a,0xf5,0x58,0x18,0x3a,0xf8,0x1a,0xad,0x54,0x38,0x1f,0x76,0x0a,0xac,0x46,0x2a,0x0f,0xbd,0x84,0xaa,0x01,0x28,0x07,0xdd,0x62,0x8b,0x00,0xaa,0x03,0xef,0x59,0x02,0x38,0x88,0x3e,0xc3,0x85,0xd0,0x07,0xde,0xa8,0x04,0x38,0x00,0x7d,0xc5,0x80,0x43,0x40,0x80,0x83,0xea,0x57,0x1e,0x0f,0x88,0x3e,0xe0,0xb2,0x10,0xfe,0x60,0x31,0x54,0x05,0x10,0xac,0x2b,0x01,0x45,0xde,0x40,0x38,0x20,0xfb,0xa5,0x7f,0xb0,0x1e,0xa0,0xfe,0x7f,0xea,0x11,0xd4,0x90,0xb7,0xa6,0x85,0xcf,0xd4,0x40,0xe1,0x80,0xf9,0xa0,0x61,0x7c,0xfd,0x48,0x04,0x20,0x3f,0x50,0x2b,0xfc,0xe8,0x1f,0x74,0x08,0x2c,0xf8,0x5a,0x30,0xe0,0xfd,0xd8,0xe0,0x5c,0x0f,0xf8,0x00,0x67,0xe0,0xf6,0xb0,0x60,0x59,0xa3,0x38,0x4f,0x94,0x80,0x1e,0xde,0x0a,0x10,0x0c,0x60,0xc0,0xfa,0xa8,0x51,0x50,0x43,0x81,0x03,0x94,0x40,0x1e,0xdf,0x00,0xf8,0xd8,0x1f,0xe6,0x0f,0x7a,0xc0,0xac,0x63,0x0d,0x11,0x00,0x09,0xc9,0xfd,0x8a,0xb2,0x07,0xdd,0x52,0x0a,0x4b,0x58,0x20,0x3d,0xbd,0x41,0xf2,0x07,0xdd,0x58,0x3e,0x44,0xb3,0x71,0x3f,0xac,0x10,0x51,0xc0,0x7d,0x55,0x43,0xe5,0x0b,0x03,0x92,0x48,0x93,0xc9,0xff,0x81,0x96,0xd4,0x1e,0xc3,0xa1,0x24,0x10,0x08,0x92,0x46,0x00,0x31,0xd0,0xbb,0x44,0x1f,0x71,0x28,0x07,0xd2,0xfe,0x0f,0x34,0x91,0x80,0x0e,0x35,0x00,0xae,0x60,0x20,0x2a,0x26,0x00,0x1c,0xea,0x01,0x3e,0x35,0x0a,0x49,0x80,0x07,0x24,0x80,0x45,0x85,0xc2,0x0f,0xab,0xc1,0xf0,0xa1,0x06,0xb2,0x77,0x3e,0x03,0x01,0x15,0x05,0x88,0x3e,0x3f,0xe0,0x01,0xe0,0x80,0xc8,0x1e,0x5f,0x80,0x31,0x00,0x04,0x24,0x53,0xef,0xe0,0x25,0x20,0xe2,0xf6,0x00,0x0a,0x3c,0x83,0xe4,0xee,0x71,0x4b,0xb1,0x48,0x01,0xe0,0x0f,0x00,0x10,}; +const uint8_t *_A_Laptop_128x51[] = {_A_Laptop_128x51_0,_A_Laptop_128x51_1}; + +const uint8_t _A_LeavingActive_128x51_0[] = {0x01,0x00,0x4b,0x01,0x00,0x78,0x01,0x3f,0xc0,0xed,0xc0,0x60,0xe7,0xe0,0xfc,0xe0,0x40,0x3c,0x00,0xfc,0xb0,0x08,0x46,0x06,0x0f,0xb9,0x00,0x08,0x60,0xc0,0xfb,0x88,0x00,0x86,0x18,0x0f,0xb8,0xc0,0x08,0x61,0x00,0xfb,0x06,0x10,0x48,0x80,0x13,0x04,0x01,0x0c,0xc0,0x1f,0x64,0xc2,0x29,0x10,0x02,0x4d,0x84,0x0f,0xc8,0x0a,0x08,0xd5,0xd4,0x0f,0x2a,0x00,0x3e,0xc0,0x64,0x0f,0xf0,0x7d,0xb3,0x84,0x1f,0xa0,0xb3,0x07,0xd9,0x6c,0xc1,0xf6,0x7b,0x30,0x7e,0x27,0xcb,0x80,0x73,0x20,0x03,0xcc,0x13,0xe5,0x40,0x01,0x93,0xfa,0x11,0xe6,0x23,0x20,0x03,0xe4,0x07,0xe6,0xe3,0x20,0x03,0xf4,0x01,0xfd,0x48,0x07,0x98,0xbe,0xad,0x00,0xf3,0x81,0x03,0xe6,0x50,0x0f,0x32,0xfd,0x46,0x18,0x66,0x7f,0xa8,0xe0,0x0c,0xa8,0x78,0x0b,0xf8,0x3e,0x21,0x80,0x32,0xa3,0x46,0x30,0x1f,0xf8,0x38,0x3d,0x8d,0x47,0x4c,0x0a,0x17,0xf0,0x66,0x93,0xc8,0x01,0xa8,0xeb,0x01,0x43,0xbf,0x00,0xcb,0x01,0x67,0x80,0x09,0xce,0xe0,0x0f,0x32,0xa1,0xfc,0x38,0x00,0xf4,0xe0,0x41,0x27,0x00,0x52,0x8f,0x17,0x0b,0x01,0xf9,0x4d,0x24,0x7e,0xdc,0x1c,0x29,0x81,0x30,0xed,0xe5,0x74,0xfe,0x70,0xe3,0xe2,0x52,0x01,0x0c,0x20,0x74,0x29,0xa5,0x87,0x07,0x0b,0x00,0x0a,0x10,0x78,0xcb,0x81,0xeb,0x08,0xf8,0x7f,0xc6,0x22,0xc5,0x18,0x46,0x02,0x27,0x03,0x65,0xa5,0xf0,0xa0,0x3f,0xe8,0x08,0xf4,0x63,0x1e,0x08,0xe4,0x0c,0x40,0x9e,0x48,0x78,0xcc,0x81,0xe3,0x10,0xf8,0x40,0xf8,0x69,0x74,0x32,0x9d,0xe0,0x3e,0x49,0x41,0xb1,0x96,0x10,0xca,0x7e,0x00,0x78,0xc3,0x00,0xe3,0x3b,0x2c,0x14,0x05,0x78,0x98,0x00,0x60,0xf1,0xa1,0xa1,0x94,0xff,0x41,0xc0,0xe2,0x34,0x4b,0xf1,0x58,0x43,0x27,0x10,0x0a,0xa0,0x3c,0xa0,0xdc,0x03,0xb1,0x03,0xcf,0xf8,0x9f,0x23,0xf9,0x00,0x08,0x1e,0xad,0x91,0x08,0x11,0xe5,0x01,0xec,0x5d,0x18,0x09,0x98,0x81,0xf5,0x00,0xff,0xdc,0x41,0xfb,0x00,0x51,0x10,}; +const uint8_t _A_LeavingActive_128x51_1[] = {0x01,0x00,0x36,0x01,0x00,0x78,0x01,0x3e,0x11,0xf0,0x7e,0xc7,0x26,0x00,0xfd,0x83,0x78,0x01,0xfb,0x02,0xc0,0x03,0xf6,0x02,0x01,0x20,0x7f,0x83,0xf6,0x04,0x0e,0xbc,0x00,0x3c,0x60,0xc0,0xea,0xe0,0x7f,0xc0,0x63,0x04,0x07,0xd5,0xc0,0x06,0x57,0xc0,0x10,0xc6,0x02,0x6f,0x30,0x16,0x17,0x00,0x64,0x32,0x48,0xe4,0x20,0x1e,0xbe,0x08,0x78,0x10,0x96,0x23,0x64,0xfa,0x42,0x2e,0x61,0x05,0xfb,0xff,0xc0,0x03,0x3f,0x80,0x51,0xb0,0x9e,0x88,0x71,0x79,0x68,0x82,0xf2,0x01,0x0f,0xfb,0x09,0x68,0x8e,0x17,0xd4,0x1e,0x4b,0x02,0xe1,0x61,0x25,0x17,0x40,0x7a,0x58,0x2c,0x80,0xf3,0x98,0x60,0x7c,0x92,0x8e,0x11,0x7d,0x64,0x8a,0x23,0x8e,0x40,0x67,0x96,0x8c,0x18,0x3d,0x22,0x00,0xf4,0x3a,0x0c,0x33,0x91,0xc1,0x07,0xa4,0x62,0x28,0xc2,0x40,0x01,0x5e,0x01,0xe9,0x08,0x8a,0x03,0x0a,0x0e,0xaf,0x98,0x47,0x50,0x1e,0x5f,0x94,0xa1,0x83,0xda,0xd0,0x2f,0x35,0x63,0x03,0xce,0x70,0x0f,0x38,0x60,0x3e,0x41,0x47,0x01,0x20,0x4c,0x21,0xbe,0x50,0x0e,0x09,0x81,0x00,0x09,0x88,0x05,0x1d,0xe4,0xbf,0x39,0x80,0x21,0xc3,0x41,0xf3,0xd0,0x01,0x94,0x08,0x5d,0x30,0x0b,0x80,0x3f,0xac,0x00,0xff,0x01,0x94,0x18,0x1f,0x51,0x00,0x19,0x43,0x01,0xfc,0x73,0x40,0x7b,0xcf,0x81,0xe4,0x0e,0x98,0x07,0xc1,0x54,0x59,0x00,0x7d,0x40,0x20,0x8b,0x21,0xd8,0x03,0xf6,0x30,0x63,0x30,0x04,0x33,0xc6,0x61,0xc0,0x07,0xdc,0x0a,0x01,0x20,0xe0,0x17,0xe8,0x1e,0x5c,0x00,0x7e,0x0f,0xc7,0x01,0x01,0x81,0x83,0xf0,0x84,0x37,0xa0,0x7e,0xe3,0x39,0xe0,0xfd,0xfc,0x61,0xfc,0x11,0xf0,0x7d,0xcc,0x30,0x13,0xf9,0x80,0x3e,0xe2,0x1f,0xf8,0x0c,0x80,0x1f,0x7f,0xc3,0x78,0xa8,0xa4,0x1e,0x3c,0x08,0x58,0x14,0x41,0xf7,0x78,0x02,0x95,0x00,0x1f,0x50,0xe0,0x29,0x78,0x01,0x68,}; +const uint8_t *_A_LeavingActive_128x51[] = {_A_LeavingActive_128x51_0,_A_LeavingActive_128x51_1}; + +const uint8_t _A_Leaving_128x51_0[] = {0x01,0x00,0x9a,0x01,0x00,0x78,0x01,0x3f,0x10,0x10,0x7e,0xc3,0xe3,0xe0,0xec,0xe0,0x40,0x6e,0x00,0xfc,0x98,0x04,0x48,0x1f,0x71,0x80,0x10,0xc0,0xc1,0xf7,0x0c,0x01,0x0c,0x18,0x1f,0x60,0xc2,0x82,0x03,0xec,0x58,0x50,0x80,0x75,0x60,0x09,0x84,0x0f,0xc0,0x19,0x03,0xee,0xc0,0x03,0x28,0x81,0xfb,0x01,0xfa,0x7e,0x20,0x7e,0x0e,0xcc,0x1f,0x67,0xb3,0x07,0xdd,0x18,0xfe,0x40,0xfb,0xd9,0xa7,0xc8,0x1f,0x58,0x0e,0xcc,0x08,0x1f,0x9c,0x09,0xc0,0x3c,0x8c,0x66,0x00,0x6a,0x04,0x70,0x1e,0x49,0xfa,0xb0,0x41,0xc1,0xe4,0xf2,0x20,0x00,0xc3,0xc1,0xe9,0x20,0x81,0x83,0xc8,0xe6,0x7e,0x01,0xa2,0xec,0x1d,0xe7,0x0e,0x5b,0x99,0x51,0x6a,0x10,0x07,0x79,0x46,0x96,0xe7,0xfc,0xff,0x86,0x4a,0x01,0x68,0x07,0x9d,0xcc,0xec,0x3f,0xff,0xfc,0xfc,0x6c,0x92,0x8c,0x00,0x3c,0xb8,0x2f,0x54,0x2b,0x24,0xd3,0x00,0x94,0x38,0x07,0xc0,0x1e,0x70,0x90,0x19,0x47,0x01,0xeb,0x90,0x02,0x98,0x3c,0xe1,0xdc,0x05,0x21,0xa4,0x44,0x6a,0x5f,0xf4,0xb1,0xc3,0xe8,0x00,0x42,0xb8,0x70,0x21,0xe5,0xb1,0xff,0x58,0x41,0xe5,0x80,0x83,0x83,0xce,0x3f,0x60,0x9f,0x7f,0xbf,0xf0,0x19,0x80,0x3c,0xb8,0x10,0x72,0xc9,0x7d,0xe0,0x33,0x89,0xc4,0xf1,0xca,0x40,0xf2,0xb0,0x40,0xe4,0x05,0x32,0x00,0x88,0x1c,0x4d,0xc4,0x7f,0x2d,0xc0,0x3c,0xc4,0x43,0x0c,0x2a,0x9c,0x1a,0x0c,0x03,0x1c,0x70,0xd4,0x46,0x85,0x81,0x83,0xf8,0x01,0xe5,0x03,0x31,0x8e,0x03,0x07,0x01,0x63,0x1f,0xfc,0xc2,0x20,0x52,0x80,0x83,0xc8,0x4e,0x2e,0x63,0xf8,0x40,0xc0,0xa4,0x98,0x44,0x49,0x2a,0x4e,0x04,0xba,0x20,0x59,0x00,0xc4,0xfa,0x24,0xa4,0x81,0x92,0x8b,0x80,0x79,0x2f,0xc5,0x0d,0xc8,0x38,0x03,0x51,0x60,0x5d,0xc3,0xff,0xbf,0x96,0x4a,0x1f,0x7e,0x32,0x8c,0x02,0x3c,0x1a,0x10,0x98,0xb8,0x07,0x41,0x0e,0x29,0x15,0x80,0x3a,0x40,0xa1,0x14,0x8e,0x1e,0x3f,0xff,0xd8,0x09,0xca,0x03,0x70,0x10,0x08,0x74,0x6f,0xff,0xc8,0x06,0x10,0x0c,0x39,0x77,0x11,0x40,0xff,0x01,0x42,0xa0,0x60,0x30,0xf0,0x7c,0x32,0xb8,0x8a,0xe5,0xfe,0x8f,0x81,0x08,0xc6,0x3e,0x08,0xf2,0x44,0x60,0x18,0xf3,0xc1,0xa7,0x4c,0x1e,0x33,0xcf,0x86,0x0c,0xbe,0x3f,0xb0,0x7c,0xdf,0xd6,0x23,0xc0,0xfc,0xa7,0xce,0x02,0x6b,0x11,0xfa,0x7f,0xe0,0x77,0xf8,0x7a,0x5c,0xe3,0xe3,0xf4,0x10,0x08,0x00,0xc1,0xe7,0xe0,0x8c,0x82,0x0c,0x1e,0xa0,0x53,}; +const uint8_t _A_Leaving_128x51_1[] = {0x01,0x00,0x7e,0x01,0x00,0x78,0x03,0xc0,0x05,0xff,0x80,0x83,0xb3,0x81,0x01,0x8f,0x03,0xf2,0x81,0x00,0xf8,0x03,0xf2,0x41,0x00,0xc0,0x40,0xc1,0xf7,0x30,0x01,0x0c,0x18,0x1f,0x71,0x80,0x12,0x00,0x26,0x10,0x22,0x40,0x04,0xc1,0x00,0x43,0x60,0x07,0xf7,0x00,0x1f,0x64,0xc2,0xc0,0x03,0xee,0x04,0x0f,0x25,0x0d,0x83,0xca,0x00,0x0f,0xb4,0x61,0xa4,0x2c,0x36,0x25,0x11,0x11,0x98,0x3e,0x61,0x80,0xfe,0x4f,0x0a,0xc2,0xc1,0xe2,0x9e,0x14,0x19,0x03,0xe9,0xe2,0x20,0xfd,0xc1,0x03,0xfb,0x09,0x01,0x07,0xac,0x3c,0xde,0xe0,0xf5,0xf0,0x3d,0x94,0x1f,0x13,0x08,0x80,0x3d,0xcf,0xcb,0x18,0xfe,0x7f,0xd4,0xe6,0x0f,0x6c,0x07,0xff,0xff,0x3f,0x2b,0xa0,0x3c,0xc0,0xe5,0x60,0x11,0x1a,0xa4,0x41,0xf1,0xf0,0x07,0x9c,0x24,0x1e,0xc1,0x72,0xc8,0x0c,0xcc,0x1e,0x58,0x00,0x79,0xc7,0x00,0xe3,0x08,0x03,0x8c,0x03,0xff,0x08,0x07,0xa4,0x1a,0x05,0x34,0x1d,0x11,0x6c,0x7f,0xd6,0x10,0x79,0x70,0x01,0xe3,0x02,0x81,0x5b,0x00,0xe3,0x04,0xff,0x7f,0xe0,0x33,0x00,0x79,0x50,0x01,0xe7,0x88,0x12,0x14,0xf0,0x16,0x31,0x00,0x79,0x80,0x84,0x1e,0x30,0x81,0x60,0xc0,0xd1,0x65,0x0c,0x3b,0xa8,0x3c,0xa0,0xd0,0x0c,0x09,0x7c,0xa0,0xc0,0x61,0x80,0x48,0x05,0xe7,0x08,0x82,0x60,0x0a,0xe4,0x23,0x10,0x19,0x4c,0x01,0xe9,0x0c,0xe0,0x15,0xc9,0x14,0x20,0x32,0x88,0x03,0xd2,0x11,0xe0,0x1b,0x96,0x01,0x44,0x60,0xf6,0x98,0x4e,0x01,0xe5,0xc0,0x07,0xcc,0x42,0x1c,0x8a,0x21,0x19,0x7f,0xe2,0x69,0xf3,0x1f,0x8f,0xc1,0xdc,0x3f,0xfb,0xfc,0xc0,0x3e,0x5b,0xc5,0xf9,0x9b,0xc7,0xc1,0x03,0x70,0x0e,0x80,0x46,0x5f,0xed,0x42,0xa8,0xa0,0x7f,0x88,0x1d,0xe3,0x0d,0x1f,0xff,0xec,0x12,0x45,0x01,0xf7,0xb6,0x8d,0x4e,0x30,0xec,0x20,0x1c,0x72,0xe7,0x23,0xe6,0x00,0xc6,0x30,0x0f,0x28,0x3e,0x19,0x5c,0x43,0xe2,0x87,0xe7,0xd2,0x46,0x7e,0x11,0xc0,0x81,0xc7,0x1e,0x0f,0x2f,0x86,0x45,0x64,0x70,0x86,0xe0,0xe0,0x8b,0xe3,0xfb,0x47,0x9e,0x78,0xee,0x40,0xf1,0xbf,0x9e,0x07,0x81,0xf9,0x4f,0x9f,0xff,0xb6,0x0f,0x28,0x06,0x23,0x0f,0xff,0x81,0xdf,0xe1,0xe9,0xe3,0x80,0x54,0x00,0x87,0x48,0x02,0x18,0x5c,0x80,0x04,0xa3,0x20,0x7b,0xd0,0x00,0x64,}; +const uint8_t *_A_Leaving_128x51[] = {_A_Leaving_128x51_0,_A_Leaving_128x51_1}; + +const uint8_t _A_Level1FurippaActive_128x51_0[] = {0x01,0x00,0x45,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x03,0xe2,0x10,0x05,0x48,0x20,0x3e,0x21,0x80,0x5a,0x0c,0xcc,0x23,0xe1,0x0f,0x07,0xb0,0xe5,0x63,0x11,0xe5,0x13,0x96,0x47,0xfc,0x05,0x2e,0x84,0x0d,0x44,0xf0,0x34,0x58,0x9f,0x09,0xa8,0x34,0x00,0x7b,0x40,0x41,0x02,0x42,0x23,0xa8,0x83,0xe2,0x41,0x7c,0x39,0x10,0x48,0x6b,0x86,0x07,0x88,0x7f,0xe2,0x2a,0xf3,0xbf,0xf0,0x3f,0xe0,0xf5,0xc8,0x7f,0xe2,0x6c,0xf1,0x6b,0x0c,0xfc,0x1e,0xf8,0x8f,0xfc,0x8d,0xa8,0x5e,0x08,0xfb,0xd1,0xf9,0x1f,0x39,0x38,0xcc,0x60,0x08,0xf2,0x07,0xd2,0xb8,0x7f,0x10,0x71,0x10,0x83,0xdb,0xfe,0x0f,0x12,0x70,0xff,0x00,0x42,0x83,0x10,0x7b,0x8a,0x4b,0xff,0x01,0x80,0x4f,0x01,0xf1,0x30,0x30,0x09,0x70,0x78,0x05,0x11,0x00,0x26,0x37,0xff,0x17,0x02,0x0f,0x82,0xfe,0x0f,0x12,0x08,0x80,0x0f,0x01,0x9a,0x9f,0xab,0x04,0xbc,0x33,0xff,0x03,0x14,0x80,0x07,0x40,0x8a,0xc1,0xdb,0x45,0xfc,0x8f,0xdf,0x1d,0x02,0x00,0x4d,0x04,0xa8,0x92,0x20,0x01,0xff,0x7f,0xe3,0xe0,0xf6,0xa0,0x75,0x46,0x87,0xff,0xff,0xc1,0xc3,0xef,0xea,0x02,0x12,0xf4,0x7e,0x08,0x32,0x0f,0xad,0x54,0x08,0x4a,0xd1,0x36,0x08,0xd8,0xc3,0xe7,0x6a,0x02,0x17,0xe3,0xc7,0x03,0xc0,0x03,0xd8,0x3e,0x9f,0xe3,0xf1,0x03,0x94,0x94,0x30,0xa8,0x04,0x81,0x5a,0x2d,0xd1,0x3a,0x10,0x01,0x60,0xa1,0xa1,0xe0,0x2b,0x46,0x00,0xb3,0x10,0x04,0xff,0xcb,0x64,0xa4,0x20,0x06,0x43,0x81,0xdb,0x80,0x3f,0x30,0x01,0xfc,0x02,0xee,0x9c,0x0f,0xbc,0x7d,0xe3,0xef,0x1f,0x78,0x03,0x63,0xc3,0xee,0x5f,0x88,0x01,0xc0,}; +const uint8_t _A_Level1FurippaActive_128x51_1[] = {0x01,0x00,0x55,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x7f,0x14,0x6f,0x08,0x02,0xa4,0x12,0x0f,0x3c,0x07,0xb4,0x30,0x0a,0x9c,0xc8,0x09,0xc9,0xe0,0x80,0x54,0xbc,0x40,0x28,0x00,0xf6,0x83,0x11,0x59,0xa6,0xe5,0x91,0xff,0x0d,0x4f,0x01,0x7f,0x07,0xb4,0x0d,0x16,0x27,0xc2,0x83,0x78,0x27,0xe0,0xf6,0x80,0x8e,0x04,0x84,0x50,0x1f,0x84,0x7c,0x1e,0xf2,0x0b,0xe1,0xc8,0x56,0x83,0xf8,0x87,0xa4,0x1e,0x21,0xff,0x88,0xc0,0x24,0x10,0x04,0x78,0xf0,0x3f,0xfc,0xc0,0x7a,0x64,0x3f,0xf1,0x32,0xf1,0x7f,0xa0,0x60,0xf7,0xc4,0x7f,0xe4,0x64,0x12,0xff,0xb8,0x47,0x80,0x0f,0x5e,0x47,0xce,0x4e,0x64,0x2f,0xfb,0xe4,0x81,0xf0,0x4e,0x1e,0x01,0xf8,0xbc,0x1c,0x0a,0xa0,0x3d,0x3f,0xf2,0x77,0x98,0x9f,0x8e,0xe1,0xe0,0x07,0xbb,0x4c,0x4f,0xc7,0x3c,0xb8,0x30,0xd0,0x1e,0x4a,0x01,0x3f,0x17,0x02,0x3f,0x3c,0x3b,0x08,0x00,0xb1,0xbf,0xf9,0x78,0x10,0x4f,0xc2,0x0f,0x18,0x3c,0x70,0xec,0x20,0x01,0xc0,0x66,0xa7,0xe3,0xe1,0x3f,0x12,0x79,0xe8,0x11,0x50,0xd0,0x80,0x04,0xfc,0x40,0x06,0xd0,0x4a,0x81,0x44,0x7e,0x30,0xfb,0xf5,0x40,0x84,0x7e,0x30,0xfb,0xfa,0x80,0x85,0xe0,0xff,0x80,0x04,0x3e,0xf5,0x50,0x21,0x7c,0x38,0x0c,0xe1,0x20,0xb6,0x82,0xd4,0x04,0x2b,0xc4,0x02,0x19,0x30,0x07,0xb0,0x7c,0xa1,0x10,0x09,0xf4,0x02,0x61,0x0e,0x07,0xb6,0x02,0x14,0x0b,0x1c,0x02,0xb4,0x7c,0x10,0x13,0x8b,0xc1,0x4b,0xa2,0xbd,0x28,0xf6,0x01,0x03,0x08,0xd2,0x00,0x0c,0x05,0xe6,0x20,0x0d,0xb0,0x03,0xf9,0x88,0x40,0x0c,0x8e,0x03,0xb7,0x00,0xd5,0x30,0x05,0x7c,0x05,0xdd,0x1e,0x07,0x6a,0xfc,0x41,0xfb,0x7c,0x26,0xf3,0xfe,0x45,0xca,0xb0,0x10,0x03,0x80,}; +const uint8_t _A_Level1FurippaActive_128x51_2[] = {0x01,0x00,0x36,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x03,0xe2,0x10,0x05,0x48,0x20,0x3e,0x21,0x80,0x5a,0x0c,0xc8,0x95,0x47,0x32,0x45,0x52,0xcc,0xc4,0x01,0xf0,0x79,0x53,0xaa,0x80,0x0d,0x32,0xb2,0x0f,0xc2,0x45,0xc1,0xed,0x0f,0x79,0x2b,0xf0,0xc0,0x07,0xe0,0x80,0xce,0x38,0x1f,0xfe,0x60,0xd8,0x6a,0x60,0xf6,0x9c,0x31,0xc4,0x1e,0x97,0x30,0x59,0x7e,0x21,0xe7,0x53,0x73,0x8f,0x00,0x1e,0x33,0x88,0x38,0x3c,0xbf,0xd1,0xf7,0x79,0xe0,0x01,0xe7,0x18,0x46,0x96,0x03,0xff,0x3f,0x7a,0x18,0x3c,0x7c,0x1c,0x0a,0xa4,0x70,0xaa,0x43,0x71,0x07,0x8a,0x78,0x81,0xe3,0x70,0xf0,0x55,0x21,0x8c,0x72,0x07,0x98,0x98,0xb1,0xd0,0x09,0xe5,0xc2,0x81,0x0e,0x8e,0x1a,0x88,0x1e,0x23,0xe3,0xd8,0xf0,0x23,0xf3,0xc9,0x04,0x18,0x50,0x5f,0x58,0x7c,0x3c,0x0a,0x46,0xe1,0xe0,0x41,0xe3,0x84,0xe1,0x04,0x8e,0x03,0xd5,0x03,0x12,0x11,0x04,0x47,0xe2,0x00,0x5a,0x07,0xd6,0x02,0xcc,0x38,0x30,0x3d,0xf4,0x1e,0xa0,0x29,0x90,0x45,0x1e,0x21,0xf6,0xea,0x81,0x4d,0x00,0x34,0x00,0xfb,0xda,0x80,0xa6,0x47,0x14,0x91,0x07,0xd6,0xaa,0x05,0x34,0x00,0xc8,0x03,0xf6,0x80,0x22,0xa1,0x87,0xda,0x10,0x2c,0x34,0x19,0x00,0x13,0x01,0x0a,0x0d,0x12,0x04,0x97,0x24,0x00,0x58,0x2b,0x04,0x78,0x10,0x32,0x09,0x80,0x25,0xa0,0x20,0x01,0x09,0x10,0x02,0xf8,0x05,0x11,0x00,0x65,0xc0,0x1d,0xa5,0xe8,0x00,0x3c,0x38,0x1f,0xc4,0xef,0x27,0x73,0x35,0xc0,0x0f,0x38,0x27,0x78,0x3b,0x70,0x10,0x70,0x54,0x00,}; +const uint8_t _A_Level1FurippaActive_128x51_3[] = {0x01,0x00,0x5f,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x08,0x60,0xc0,0xf5,0x8c,0x01,0x52,0x0d,0xfc,0x83,0xc2,0x01,0xea,0x06,0x58,0x24,0x1e,0x79,0x10,0x07,0xac,0x30,0x0a,0x9c,0xc8,0x0d,0x80,0x1e,0xd0,0x40,0x2a,0x5e,0x20,0x14,0x02,0x7b,0x11,0x94,0x8a,0x2d,0x37,0x2c,0x90,0xd4,0xf0,0x17,0xf0,0x7b,0x1e,0x56,0x0d,0xe0,0x9f,0x83,0xd9,0x32,0xb0,0x1f,0x84,0x7c,0x1f,0x6b,0x41,0xfc,0x43,0xdf,0x90,0x00,0x29,0x04,0x01,0x1e,0x3c,0x0f,0xff,0x31,0x58,0x35,0x35,0x23,0xff,0xa0,0x60,0xf4,0xb9,0x83,0x08,0x54,0x48,0x41,0xff,0x8d,0xc7,0x80,0x0f,0x19,0xc4,0x1c,0x1e,0x5f,0xe2,0x50,0xc0,0xf0,0x1f,0xf2,0x21,0x03,0xc6,0x31,0x06,0x33,0x08,0x28,0x67,0xe4,0xe1,0xe0,0x1f,0x8b,0xc1,0xc0,0xaa,0x47,0x21,0xc0,0xf1,0x1b,0x8c,0xfd,0xe6,0x27,0xe3,0xb8,0x78,0x2a,0x90,0xc6,0x69,0x03,0xc8,0x0a,0x27,0xe3,0x9e,0x5c,0x28,0x10,0xe8,0xe0,0x98,0x81,0xe2,0xa3,0x12,0x99,0x70,0x23,0xf3,0xc9,0x04,0x18,0xd0,0x30,0x0f,0xac,0x3d,0x14,0x47,0xe1,0x07,0x8c,0x1e,0x38,0x4e,0x10,0x78,0xe0,0x3d,0x50,0x31,0x21,0x1f,0x85,0x5c,0xcf,0x71,0xfa,0xc0,0x49,0xc2,0x7e,0x30,0x03,0x68,0x3d,0x40,0x42,0x3f,0x18,0x7d,0xfa,0xac,0xf3,0x7e,0xb8,0x7c,0xad,0x40,0x42,0x31,0x88,0x00,0x43,0xef,0x55,0x02,0x17,0xc3,0x80,0xce,0x12,0x0b,0x07,0xd2,0xf1,0x00,0x86,0x4c,0x01,0xec,0x1f,0x28,0x44,0x02,0x7c,0xe9,0x18,0x70,0x3d,0xb0,0x10,0xa0,0x58,0xe0,0x15,0xa3,0xe0,0x80,0x9c,0x5e,0x0a,0x5d,0x15,0xe9,0x47,0xb0,0x08,0x18,0x46,0x90,0x00,0x60,0x2f,0x31,0x00,0x6d,0x80,0x1f,0xcb,0x42,0x00,0x63,0x50,0x80,0x17,0x80,0x78,0x08,0x03,0x3e,0x02,0xee,0x8f,0x03,0xb5,0x7e,0x20,0xfd,0xbe,0x13,0x79,0xff,0x22,0xe5,0x58,0x08,0x01,0xc0,}; +const uint8_t _A_Level1FurippaActive_128x51_4[] = {0x01,0x00,0x7b,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x00,0xca,0x0c,0x0e,0x5c,0x04,0x04,0x86,0x60,0x32,0x8c,0x13,0x98,0x28,0xf2,0x00,0x7a,0x8a,0x8c,0x00,0x26,0x02,0xa0,0x03,0xd6,0x60,0x05,0x48,0x10,0x08,0x70,0xc0,0xf5,0x1b,0x2c,0x1b,0xf9,0x07,0xc4,0x03,0xd6,0x10,0x05,0x48,0x24,0x1e,0x79,0x10,0x2c,0x18,0x00,0x61,0x80,0x54,0xe6,0x40,0x6c,0x00,0xf6,0x82,0x01,0x52,0xf0,0x4e,0x74,0x33,0x11,0x45,0xa6,0xe5,0x91,0xff,0x0d,0x4f,0x01,0x7f,0x07,0xb4,0x0d,0x16,0x27,0xc2,0x83,0x78,0x27,0xe0,0xf6,0x80,0x8e,0x04,0x84,0x50,0x1f,0x84,0x7c,0x1e,0xf2,0x0b,0xe1,0xc8,0x56,0x83,0xf8,0x87,0xbf,0x1e,0x21,0xff,0x88,0xae,0xc9,0x1e,0x3c,0x0f,0xff,0x31,0x58,0x35,0x30,0x78,0xe4,0x3f,0xf1,0x32,0xf1,0x7f,0xa0,0x60,0xf4,0xb9,0x83,0xc7,0x11,0xff,0x91,0x90,0x4b,0xfe,0x8d,0x1e,0x00,0x3c,0x67,0x10,0x70,0x78,0xf2,0x3e,0x72,0x73,0x21,0x7f,0xdf,0x24,0x0f,0x18,0xc4,0x18,0xcc,0x20,0xf2,0x27,0x0f,0x00,0xfc,0x5e,0x0e,0x05,0x52,0x39,0x0e,0x07,0x97,0xfe,0x4e,0xf3,0x13,0xf1,0xdc,0x3c,0x15,0x48,0x63,0x34,0x81,0xe4,0x05,0x13,0xf1,0xcf,0x2e,0x14,0x08,0x74,0x70,0x1e,0x8a,0x01,0x3f,0x17,0x02,0x3f,0x3c,0x90,0x41,0x8d,0x03,0x00,0xc6,0xff,0xe5,0xe0,0x41,0x3f,0x08,0x3c,0x60,0xf1,0xc2,0x70,0x83,0xc7,0x01,0x9a,0x9f,0x8f,0x84,0xfc,0x4a,0xe6,0x7b,0x8c,0x54,0xe6,0x47,0xe3,0x00,0x36,0x82,0x54,0x0a,0x23,0xf1,0x87,0xdf,0xaa,0x04,0x23,0xf1,0x87,0xdf,0xd4,0x04,0x2f,0x07,0xfc,0x00,0x21,0xf7,0xaa,0x81,0x0b,0xe1,0xc0,0x67,0x09,0x05,0xb4,0x16,0xa0,0x21,0x5e,0x20,0x10,0xc9,0x80,0x3d,0x83,0xe5,0x08,0x80,0x4f,0x9d,0x23,0x0e,0x07,0xb6,0x02,0x14,0x0b,0x1c,0x02,0xb4,0x7c,0x10,0x13,0x8b,0xc1,0x4b,0xa2,0xbd,0x28,0xf6,0x01,0x03,0x08,0xd2,0x00,0x0c,0x05,0xe6,0x20,0x0d,0xb0,0x03,0xf9,0x88,0x40,0x0c,0x7c,0x90,0x02,0xf0,0x0d,0x53,0x00,0x57,0xc0,0x5d,0xd1,0xe0,0x76,0xaf,0xc4,0x1f,0xb7,0xc2,0x6f,0x3f,0xe4,0x5c,0xab,0x01,0x00,0x38,}; +const uint8_t _A_Level1FurippaActive_128x51_5[] = {0x01,0x00,0x87,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x00,0xca,0x00,0x5e,0x04,0x0c,0x04,0x60,0x01,0xb0,0x03,0xda,0xe0,0x03,0x28,0x70,0x0c,0xb0,0x10,0x10,0x7a,0xc7,0x00,0x65,0x38,0x04,0x1c,0x08,0x1e,0xa4,0xc3,0x15,0x9c,0x1a,0x08,0x0e,0x41,0x32,0x70,0x00,0x65,0x18,0x07,0xa8,0x28,0xc2,0x89,0x20,0x84,0x03,0xd0,0xac,0xa6,0x02,0xa0,0x03,0xd6,0x60,0x05,0x42,0x59,0x61,0xa2,0x00,0x94,0x8c,0x01,0x52,0x0d,0xfc,0x83,0xe2,0x01,0xea,0x25,0x58,0x24,0x1e,0x79,0x10,0x88,0x82,0x52,0x18,0x05,0x4e,0x64,0x06,0xc0,0x0f,0x63,0x2a,0xde,0x09,0xc2,0xae,0x68,0x31,0x15,0x9a,0x68,0x59,0x4f,0xf0,0xd4,0xf0,0x17,0xf0,0x7b,0x40,0xd1,0x62,0x7c,0x28,0x37,0x82,0x7e,0x0f,0x68,0x08,0xe0,0x48,0x45,0x01,0xf8,0x47,0xc1,0xef,0x20,0xbe,0x1c,0x85,0x68,0x3f,0x88,0x7b,0xf1,0xe2,0x1f,0xf3,0x40,0xc8,0x20,0x08,0xf1,0xe0,0x7f,0xf9,0x8a,0xc1,0xa9,0x83,0xc7,0x21,0xff,0x89,0x97,0x8b,0xfd,0x03,0x07,0xa5,0xcc,0x1e,0x38,0x8f,0xfc,0x8c,0x82,0x5f,0xf7,0x08,0xf0,0x01,0xe3,0x38,0x83,0x83,0xc7,0x91,0xf3,0x93,0x99,0x0b,0xfe,0xf9,0x20,0x78,0xc6,0x20,0xc6,0x61,0x07,0x91,0x38,0x78,0x07,0xe2,0xf0,0x70,0x2a,0x91,0xc8,0x70,0x3c,0xbf,0xf2,0x77,0x98,0x9f,0x8e,0xe1,0xe0,0xaa,0x43,0x19,0xa4,0x0f,0x20,0x28,0x9f,0x8e,0x79,0x70,0xa0,0x43,0xa3,0x80,0xf4,0x50,0x09,0xf8,0xb8,0x11,0xf9,0xe4,0x82,0x0c,0x68,0x18,0x06,0x37,0xff,0x2f,0x02,0x09,0xf8,0x41,0xe3,0x07,0x8e,0x13,0x84,0x1e,0x38,0x0c,0xd4,0xfc,0x7c,0x27,0xe2,0x57,0x33,0xdc,0x62,0xa7,0x32,0x3f,0x18,0x01,0xb4,0x12,0xa0,0x51,0x1f,0x8c,0x3e,0xfd,0x50,0x21,0x1f,0x8c,0x3e,0xfe,0xa0,0x21,0x78,0x3f,0xe0,0x01,0x0f,0xbd,0x54,0x08,0x5f,0x0e,0x03,0x38,0x48,0x2d,0xa0,0xb5,0x01,0x0a,0xf1,0x00,0x86,0x4c,0x01,0xec,0x1f,0x28,0x44,0x02,0x7c,0xe9,0x18,0x70,0x3d,0xb0,0x10,0xa0,0x58,0xe0,0x15,0xa3,0xe0,0x80,0x9c,0x5e,0x0a,0x5d,0x15,0xe9,0x47,0xb0,0x08,0x18,0x46,0x90,0x00,0x60,0x2f,0x31,0x00,0x6d,0x80,0x1f,0xcc,0x42,0x00,0x63,0xe4,0x80,0x17,0x80,0x6a,0x98,0x02,0xbe,0x02,0xee,0x8f,0x03,0xb5,0x7e,0x20,0xfd,0xbe,0x13,0x79,0xff,0x22,0xe5,0x58,0x08,0x01,0xc0,}; +const uint8_t *_A_Level1FurippaActive_128x51[] = {_A_Level1FurippaActive_128x51_0,_A_Level1FurippaActive_128x51_1,_A_Level1FurippaActive_128x51_2,_A_Level1FurippaActive_128x51_3,_A_Level1FurippaActive_128x51_4,_A_Level1FurippaActive_128x51_5}; + +const uint8_t _A_Level1Furippa_128x51_0[] = {0x01,0x00,0x0f,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x03,0xe2,0x10,0x05,0x48,0x20,0x3e,0x21,0x80,0x5a,0x0c,0xc8,0x95,0x47,0x32,0x45,0x52,0xca,0xff,0x80,0xa5,0x10,0x07,0xc4,0x0d,0x16,0x27,0xc2,0x3a,0xa8,0x00,0xe0,0x34,0x02,0x11,0xc8,0x3f,0x09,0x17,0x80,0xc8,0x2f,0x84,0xc2,0x90,0x43,0xde,0x51,0x10,0xff,0xc4,0x40,0x83,0xe0,0x80,0xbc,0xa3,0x21,0xff,0x89,0x81,0x04,0x1a,0x2f,0x28,0xc4,0x7f,0xe4,0x67,0x53,0x79,0x47,0x23,0xe7,0x27,0x77,0x9e,0x00,0x1f,0x62,0xc2,0x07,0xcf,0xfc,0x1e,0x29,0xe2,0x07,0xe2,0xd0,0x81,0xf6,0x3e,0x28,0x06,0xf0,0x1e,0xf8,0xd2,0xf8,0xb3,0x4f,0x86,0x0e,0x6c,0x06,0x6a,0x3f,0x1e,0x03,0x17,0x00,0x5e,0xf4,0x08,0xac,0x1d,0x98,0x73,0x00,0x7b,0xe8,0x25,0x43,0xc2,0x00,0x0c,0x31,0x1e,0xf4,0x0e,0xab,0xd9,0x5c,0xc2,0x1f,0x6f,0x50,0x14,0xc3,0xa2,0xbf,0x7a,0x05,0x54,0x0a,0x64,0x21,0x90,0x07,0xde,0xd4,0x05,0x37,0xe8,0x95,0x0c,0x3e,0xd1,0x06,0x79,0xa0,0xcc,0xfe,0x90,0xa1,0xd1,0x5c,0x0c,0x04,0x9f,0x78,0x28,0x74,0xa1,0xe0,0x61,0x61,0x10,0x02,0x3f,0xc7,0x03,0x07,0xd1,0xc0,0xd2,0xa8,0x00,0x92,0x09,0x00,0x30,0xbc,0xe0,0x07,0x40,0x08,0x03,0x49,0xde,0x4e,0xe6,0x6b,0x80,0x1e,0x70,0x4e,0xf0,0x76,0xe0,0x20,0xe0,0xa8,}; +const uint8_t _A_Level1Furippa_128x51_1[] = {0x01,0x00,0xfc,0x00,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x03,0xe2,0x10,0x05,0x48,0x20,0x3e,0x21,0x80,0x5a,0x0c,0xc8,0x95,0x47,0x32,0x45,0x52,0xcc,0xc4,0x01,0xf0,0x79,0x53,0xaa,0x80,0x0d,0x32,0xb2,0x0f,0xc2,0x45,0xc1,0xed,0x0f,0x79,0x58,0x00,0x7c,0x10,0x17,0x95,0x80,0x04,0x1a,0x2f,0x29,0xfc,0x43,0xce,0xa6,0xf2,0x9f,0xf4,0x7d,0xde,0x78,0x00,0x73,0xe0,0x3f,0xf3,0xf1,0x61,0x83,0xe3,0x80,0x0f,0x24,0xf1,0x03,0xf1,0x68,0x58,0xe3,0x54,0x03,0xc4,0x7c,0x7b,0x10,0x7b,0xfd,0x61,0xf0,0xf1,0x71,0x58,0x0b,0xef,0x80,0xf5,0x40,0xe3,0x8e,0x03,0x1f,0xbd,0x03,0xeb,0x01,0x66,0x1c,0x18,0x1e,0xfa,0x0f,0x50,0x95,0x20,0x22,0xf7,0xa0,0x75,0x40,0xa6,0x80,0x1a,0x00,0x7d,0xed,0x40,0x53,0x28,0x8a,0xfd,0xe8,0x15,0x50,0x29,0xa0,0x06,0x40,0x1f,0xb4,0x01,0x15,0x0c,0x3e,0xd0,0x81,0x61,0xa0,0xc8,0xfe,0xb0,0xa0,0xd1,0x20,0x4a,0x18,0x9f,0x78,0x2b,0x04,0x78,0x10,0x32,0x09,0x80,0x25,0xa0,0x20,0x01,0x09,0x10,0x02,0xf8,0x05,0x11,0x00,0x65,0xc0,0x1d,0xa5,0xe8,0x00,0x3c,0x38,0x1f,0xc4,0xef,0x27,0x73,0x35,0xc0,0x0f,0x38,0x27,0x78,0x3b,0x70,0x10,0x70,0x54,0x00,}; +const uint8_t _A_Level1Furippa_128x51_2[] = {0x01,0x00,0x1c,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x7f,0x14,0x6f,0x08,0x02,0xa4,0x12,0x0f,0x3c,0x07,0xb4,0x30,0x0a,0x9c,0xc8,0x09,0xc9,0xe0,0x80,0x54,0xbc,0x40,0x28,0x00,0xf6,0x83,0x11,0x59,0xa6,0xe5,0x95,0x86,0x60,0x2f,0xe0,0xf6,0x3c,0xac,0x1b,0xc1,0x3f,0x07,0xb2,0x65,0x60,0x3f,0x08,0xf8,0x3e,0xd6,0x83,0xf8,0x87,0xb8,0xaa,0x01,0x20,0x80,0x23,0xe0,0xbc,0xdf,0xe6,0x0c,0x8a,0x89,0x08,0x3f,0xf7,0x0c,0xff,0x89,0x43,0x03,0xc0,0x7f,0xc1,0xd0,0x0a,0x19,0xf9,0x38,0x78,0x07,0xe7,0x2d,0x90,0x3c,0x5e,0x62,0x7e,0x80,0x7a,0x34,0xc4,0xfd,0x00,0x01,0xf0,0x03,0xc4,0xb6,0x27,0xea,0xfa,0xc3,0xc1,0x64,0x7e,0x9c,0x07,0xaa,0x07,0x1c,0x31,0x91,0xfa,0x28,0x1f,0x58,0x09,0x38,0x4f,0xd5,0xa0,0xf5,0x1c,0xd0,0x7d,0x14,0x0e,0xa9,0x8c,0xcf,0xd3,0xa0,0xb5,0x18,0xd0,0x00,0x21,0xf7,0xaa,0x81,0x0b,0xe1,0xc0,0x81,0xf0,0x08,0x2c,0x1f,0x4b,0xc4,0x02,0x19,0x30,0x07,0xb0,0x7c,0xa1,0x10,0x09,0xf4,0x02,0x61,0x0e,0x07,0xb6,0x02,0x14,0x0b,0x1c,0x02,0xb4,0x7c,0x10,0x13,0x8b,0xc1,0x4b,0xa2,0xbd,0x28,0xf6,0x01,0x03,0x08,0xd2,0x00,0x0c,0x05,0xe6,0x20,0x0d,0xb0,0x03,0xf9,0x68,0x40,0x0c,0x6a,0x10,0x02,0xf0,0x0f,0x08,0x00,0x2f,0xc0,0x5d,0xd1,0xe0,0x76,0xaf,0xc4,0x1f,0xb7,0xc2,0x6f,0x3f,0xe4,0x5c,0xab,0x01,0x00,0x38,}; +const uint8_t _A_Level1Furippa_128x51_3[] = {0x01,0x00,0x31,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1e,0x80,0x5f,0x01,0xd7,0xc0,0x81,0x80,0x8c,0x01,0x37,0x00,0x19,0x43,0x81,0xf5,0x1c,0x01,0x94,0xe0,0x1f,0x44,0xc3,0xb0,0x03,0xa7,0x01,0x01,0x21,0x99,0x3a,0x82,0x90,0x00,0x51,0x52,0x98,0x26,0x60,0x05,0x48,0x10,0x3e,0x23,0x00,0x54,0x83,0x7f,0x14,0x6f,0x08,0x02,0xa4,0x12,0x0f,0x3c,0x07,0xb4,0x30,0x0a,0x9c,0xc8,0x09,0xc9,0xe0,0x80,0x54,0xbc,0x40,0x28,0x00,0xf6,0x83,0x11,0x59,0xa6,0xe5,0x91,0xff,0x0d,0x4f,0x01,0x7f,0x07,0xb4,0x0d,0x16,0x27,0xc2,0x83,0x78,0x27,0xe0,0xf6,0x80,0x8e,0x04,0x84,0x50,0x1f,0x84,0x7c,0x1e,0xf2,0x0b,0xe1,0xc8,0x56,0x83,0xf8,0x87,0xa4,0x1e,0x21,0xff,0x88,0xc0,0x24,0x10,0x04,0x7c,0x40,0x32,0x1f,0xf8,0x99,0x78,0xbf,0xcc,0x18,0xc4,0x7f,0xe4,0x64,0x12,0xff,0xb8,0x63,0x91,0xf3,0x93,0x99,0x0b,0xfe,0xd0,0x80,0x79,0x13,0x87,0x80,0x7e,0x70,0x79,0x7f,0xe4,0xef,0x31,0x3f,0x40,0x3d,0x1a,0x62,0x7e,0x80,0x7a,0x16,0xc4,0xfd,0x30,0x0c,0x6f,0xfe,0x5e,0x04,0x13,0xf4,0xe0,0x33,0x53,0xf1,0xf0,0x9f,0xaa,0x81,0x15,0x0d,0x19,0xfa,0x74,0x12,0xa0,0x51,0x1f,0xaa,0x81,0xd5,0x02,0x11,0xfa,0xb4,0x1e,0xa0,0x21,0x78,0x3f,0xe0,0x01,0x0f,0xbd,0x54,0x08,0x5f,0x0e,0x04,0x0f,0x80,0x41,0x6d,0x05,0xa8,0x08,0x57,0x88,0x04,0x32,0x60,0x0f,0x60,0xf9,0x42,0x20,0x13,0xe8,0x04,0xc2,0x1c,0x0f,0x6c,0x04,0x28,0x16,0x38,0x05,0x68,0xf8,0x20,0x27,0x17,0x82,0x97,0x45,0x7a,0x51,0xec,0x02,0x06,0x11,0xa4,0x00,0x18,0x0b,0xcc,0x40,0x1b,0x60,0x07,0xf3,0x10,0x80,0x19,0x1c,0x07,0x6e,0x01,0xe1,0x00,0x05,0xf8,0x0b,0xba,0x3c,0x0e,0xd5,0xf8,0x83,0xf6,0xf8,0x4d,0xe7,0xfc,0x8b,0x95,0x60,0x20,0x07,}; +const uint8_t *_A_Level1Furippa_128x51[] = {_A_Level1Furippa_128x51_0,_A_Level1Furippa_128x51_1,_A_Level1Furippa_128x51_2,_A_Level1Furippa_128x51_3}; + +const uint8_t _A_Level1ReadActive_128x51_0[] = {0x01,0x00,0x06,0x02,0x00,0x2e,0x03,0xff,0x03,0x07,0xe7,0x82,0x01,0x30,0x07,0xe4,0x72,0x01,0xc0,0x07,0xe4,0x18,0x04,0x30,0x10,0x10,0xfe,0x3f,0xff,0xfb,0xf8,0x3d,0x47,0xa5,0x07,0x21,0x8c,0x7c,0x0a,0x3b,0x82,0x72,0xc0,0x84,0x44,0x31,0x41,0xb2,0xf0,0x05,0x85,0x0c,0xa0,0x06,0x50,0x1e,0x96,0x00,0x19,0x43,0x2c,0x12,0x02,0x74,0x06,0x8e,0x11,0x20,0x90,0x83,0xe0,0xf8,0x71,0x89,0x07,0x83,0xb8,0x00,0x10,0x7a,0xc4,0x00,0x67,0x30,0x90,0x49,0x40,0x02,0x48,0x20,0xd9,0xf0,0x0d,0x43,0x10,0x88,0x03,0xea,0x40,0x4b,0x10,0xfd,0xc3,0x03,0x62,0x43,0x12,0xf8,0x83,0xca,0xaa,0x0f,0x5c,0x84,0x9c,0x1e,0x37,0x85,0xf4,0xc3,0x3a,0x12,0xe8,0x04,0xe2,0x78,0x0f,0x98,0x27,0x42,0x5e,0x0f,0x1f,0x74,0xfd,0x30,0x49,0xf5,0x82,0x7c,0x01,0xe5,0xff,0x87,0xbd,0xcb,0xf8,0x0f,0x58,0x00,0xb0,0x77,0x17,0xff,0x83,0xb8,0x7f,0xf0,0x70,0x7a,0xf8,0x20,0x3e,0x09,0x7f,0x02,0x7e,0xfd,0x70,0x78,0xc6,0x20,0xf1,0xeb,0xa1,0x3a,0x41,0xe3,0x08,0x86,0x40,0x3c,0x00,0xfb,0x6e,0x8b,0xe4,0x53,0x4a,0x00,0x48,0x10,0x10,0xc9,0x4a,0x0f,0x91,0x20,0x80,0x22,0x07,0x30,0x02,0x14,0x18,0x16,0xbf,0xef,0x0b,0xac,0x60,0x6b,0xb3,0x12,0x14,0x80,0x66,0x38,0x08,0x1c,0xfd,0xb6,0x30,0x1a,0x67,0x61,0x38,0x30,0x34,0x79,0x09,0xc5,0x60,0x4b,0x41,0x80,0xd1,0x20,0x1f,0xae,0x3c,0x0e,0x80,0x0a,0x17,0x30,0x83,0xca,0x80,0x0f,0x1e,0x35,0xff,0x31,0xff,0x80,0xd8,0x03,0x44,0x0f,0x3e,0x07,0x00,0x76,0x34,0x08,0xdf,0x3c,0x7a,0x21,0xa2,0x07,0x97,0xe3,0xfe,0x15,0x10,0x78,0xc3,0xef,0x9f,0xe9,0x08,0x3c,0x74,0x00,0xf1,0xf3,0xff,0xe8,0x60,0xf2,0xd8,0x41,0xee,0x1e,0x30,0x79,0x54,0x05,0x83,0xff,0x1a,0x08,0x3c,0x4b,0x65,0xe9,0xfe,0x83,0xca,0x50,0x3f,0x3c,0xc5,0xdc,0xe0,0x3f,0x0f,0xcf,0xff,0x0f,0x61,0x1c,0x89,0x10,0x78,0x1e,0x23,0xa8,0xdc,0x81,0xe3,0xd0,0x80,0x7f,0x30,0x7c,0x19,0xfc,0x02,0xe0,0xd4,0x15,0x31,0x55,0x43,0xe4,0xef,0x1e,0x0c,0x06,0x06,0xe4,0x35,0x31,0x56,0x40,0x42,0x1f,0x1f,0x05,0x86,0x0e,0x0a,0x10,0x7a,0xf4,0x40,0x43,0x90,0x07,0x8c,0xc6,0x08,0x2a,0x10,0x7a,0xe0,0x40,0x43,0xd8,0x07,0x8c,0x42,0x11,0x04,0xff,0xdf,0xc1,0xe7,0x80,0x31,0x97,0x20,0x1e,0x7f,0xf8,0x3c,0x82,0x03,0x80,0x2f,0x0d,0xfc,0x1e,0x5e,0x80,0x78,0xcc,0x21,0x01,0xc1,0x5c,0x88,0x00,0x7f,0x91,0x51,0xa9,0x22,0x07,0x41,0x30,0xc4,0x2f,0xd3,0xfb,0x03,0x5a,0x08,0x3c,0x65,0x80,0xf8,0x72,0x14,0x04,0x1e,0x33,0xc6,0xe8,0x83,0xcd,0xde,0x96,0x08,0x4a,0x20,0x43,0xe3,0x30,0xa8,0x03,0xc9,0x42,0x24,0x12,0xb0,0x42,0x8c,0x63,0xe6,0x6d,0x0d,0x83,0x09,0xbb,0xff,0xcc,0x50,0x27,0xa0,0x86,0xa2,0x07,0x87,0x01,0xa8,0x54,0x30,0x81,0xd1,0x00,0x14,0x0d,0xe2,0x30,0xb8,0x67,0x03,0x87,0x37,0xa8,0x57,0x13,0x24,0x00,0x23,0xf8,0x88,0x47,0xf1,0xf0,0x80,0xff,0xfa,0x36,0xf0,0x7a,0x80,0x0f,0xc1,0xff,0x74,0x8f,0xff,0xc2,0x17,0x10,0x01,0x00,}; +const uint8_t _A_Level1ReadActive_128x51_1[] = {0x01,0x00,0x06,0x02,0x00,0x2e,0x03,0xff,0x03,0x07,0xe7,0x82,0x01,0x30,0x07,0xe4,0x72,0x01,0xc0,0x07,0xe4,0x18,0x04,0x30,0x10,0x10,0xfe,0x3f,0xff,0xfb,0xf8,0x3d,0x47,0xa5,0x07,0x21,0x8c,0x7c,0x0a,0x3b,0x82,0x72,0xc0,0x84,0x44,0x31,0x41,0xb2,0xf0,0x05,0x85,0x0c,0xa0,0x06,0x50,0x1e,0x96,0x00,0x19,0x43,0x2c,0x12,0x02,0x74,0x06,0x8e,0x11,0x20,0x90,0x83,0xe0,0xf8,0x71,0x89,0x07,0x83,0xb8,0x00,0x10,0x7a,0xc4,0x00,0x67,0x30,0x90,0x49,0x40,0x02,0x48,0x20,0xd9,0xf0,0x0d,0x43,0x10,0x88,0x03,0xea,0x40,0x4b,0x10,0xfd,0xc3,0x03,0x62,0x43,0x12,0xf8,0x83,0xca,0xaa,0x0f,0x69,0x70,0x3c,0x6f,0x0b,0xe9,0x07,0x8c,0xf6,0x01,0x38,0x9e,0x03,0xe6,0x09,0x90,0x9f,0x83,0xc7,0xdc,0x03,0x14,0xc0,0xa7,0xd6,0x09,0xf0,0x07,0x97,0xfe,0x1e,0xf7,0x2f,0xe0,0x3d,0x60,0x13,0xe6,0xc8,0xdf,0xfe,0x0e,0xe1,0xff,0xc1,0xc1,0xeb,0xe0,0x80,0xf8,0x25,0xfc,0x09,0xfb,0xf5,0xc1,0xe3,0x18,0x83,0xc7,0xae,0x84,0xe9,0x07,0x8c,0x22,0x19,0x00,0xf0,0x03,0xed,0xba,0x2f,0x91,0x4d,0x28,0x01,0x20,0x40,0x43,0x25,0x28,0x3e,0x44,0x82,0x00,0x88,0x18,0xf8,0x40,0x03,0x06,0x05,0xaf,0xfb,0xc2,0xeb,0x18,0x1c,0x78,0x48,0xb2,0x01,0x98,0xe0,0x20,0x73,0xf6,0xd8,0xc0,0x62,0x7d,0x84,0xe0,0xc0,0xd1,0xe5,0x30,0x07,0x8a,0xd0,0xe0,0x31,0x18,0x07,0xeb,0x8f,0x03,0xa0,0x02,0x86,0x4e,0x0f,0x3a,0x06,0x03,0x03,0xf1,0x8f,0xe6,0x3f,0xf0,0x1b,0x00,0x68,0x81,0xe7,0xc0,0xe0,0x01,0x06,0xa1,0x1b,0xe7,0x8f,0x44,0x34,0x40,0xf2,0xfc,0x7f,0xdc,0xa5,0x10,0x87,0xdf,0x3f,0xd2,0x10,0x78,0xe8,0x01,0xe3,0xe7,0xff,0xd0,0xc1,0xe5,0xa4,0x83,0xdc,0x3c,0x60,0xf2,0xa8,0x0b,0x07,0xfe,0x34,0x1b,0x07,0x02,0x01,0xf4,0xff,0xfa,0x7f,0xa0,0xf2,0x94,0x0f,0xcf,0x31,0x77,0x1b,0x0f,0xf3,0xf3,0xff,0xc3,0xd8,0x47,0x22,0x44,0x1e,0x07,0x88,0xea,0x37,0x20,0x78,0xf1,0x02,0x23,0x83,0xe0,0xcf,0xe0,0x17,0x06,0xa0,0xa9,0x8a,0xaa,0x0f,0x1f,0x23,0xbc,0x78,0x30,0x18,0x1b,0x90,0xd4,0xc5,0x59,0x01,0x08,0x7c,0x7c,0x16,0x18,0x38,0x28,0x41,0xeb,0xd1,0x01,0x0e,0x10,0x1e,0x33,0x18,0x20,0xa8,0x41,0xeb,0x81,0x01,0x0f,0x18,0x1e,0x31,0x08,0x44,0x13,0xff,0x7f,0x07,0x9e,0x00,0xc6,0x5c,0x20,0x79,0xff,0xe0,0xf2,0x08,0x0e,0x00,0xbc,0x37,0xf0,0x79,0x7a,0x01,0xe3,0x30,0x84,0x07,0x05,0x10,0x20,0x01,0xfe,0x45,0x46,0xa4,0x88,0x1d,0x04,0xc3,0x10,0xbf,0x4f,0xec,0x0d,0x68,0x20,0xf1,0x94,0x83,0xe1,0xc8,0x50,0x10,0x78,0xce,0x5b,0xa2,0x0f,0x37,0x7a,0x58,0x21,0x28,0x81,0x96,0xc0,0x26,0x15,0x00,0x79,0x28,0x44,0x82,0x56,0x08,0x54,0x09,0xca,0x2d,0xa1,0xb0,0x61,0x37,0x7f,0xf9,0x8a,0x04,0xf4,0x10,0xd8,0x37,0x03,0x85,0x01,0xa8,0x54,0x30,0x81,0xd1,0x00,0x14,0x0d,0xe2,0x30,0xb8,0x67,0xc3,0x81,0x37,0xa8,0x57,0x13,0x24,0x00,0x23,0xf8,0x88,0x47,0xf1,0x7c,0x03,0x0f,0x46,0xde,0x0f,0x50,0x01,0xf8,0x1d,0x25,0xff,0xf0,0x85,0xc4,0x00,0x40,}; +const uint8_t *_A_Level1ReadActive_128x51[] = {_A_Level1ReadActive_128x51_0,_A_Level1ReadActive_128x51_1}; + +const uint8_t _A_Level1Read_128x51_0[] = {0x01,0x00,0xa4,0x01,0x00,0x2e,0x03,0xff,0x03,0x07,0xe7,0x82,0x01,0x30,0x07,0xe4,0x72,0x01,0xc0,0x07,0xe4,0x18,0x04,0x30,0x10,0x7d,0x8f,0x4a,0x0e,0x4e,0xb8,0x10,0x89,0x00,0x11,0xc0,0x16,0x14,0x30,0x1f,0x56,0x00,0x19,0x03,0xee,0x80,0x03,0x28,0x40,0x3e,0x8f,0x87,0x18,0x07,0xd4,0x40,0x06,0xc0,0x07,0x8c,0x70,0x21,0xe0,0xfd,0xb0,0x03,0x44,0x1f,0x70,0xc9,0x04,0x81,0x81,0x90,0xc8,0x84,0xb8,0x1f,0xd3,0xd8,0x04,0xe0,0x1f,0x50,0x4c,0x80,0x3f,0xe7,0xe0,0xff,0x07,0xed,0x82,0x3f,0xe0,0x97,0x83,0xee,0x31,0x07,0x8f,0x5d,0x01,0xf7,0x08,0x6e,0x8f,0x80,0x1f,0x6d,0xd2,0xc0,0x40,0x41,0xf3,0x02,0x02,0x1c,0x1c,0x1f,0xc2,0x41,0x00,0x44,0x0c,0x08,0x70,0x60,0x5a,0xff,0xbc,0x31,0xf0,0x7a,0x89,0x0a,0x40,0x33,0x1c,0x04,0x0e,0x7e,0xdb,0x12,0x50,0xf6,0x21,0xe1,0x41,0xf8,0x7f,0xff,0xed,0x41,0xc0,0x05,0x46,0xc0,0x5a,0x3f,0xd7,0x1e,0x07,0x40,0x02,0x8c,0x9c,0x1e,0x74,0x03,0x52,0x7f,0xe0,0x36,0x00,0xd1,0x03,0xcf,0x81,0xc0,0x09,0x90,0x14,0x47,0xa2,0x06,0x30,0x78,0xfe,0x3f,0xe1,0x82,0x0f,0x0d,0xff,0xfd,0x21,0x02,0x8e,0x80,0x1e,0x3e,0x7f,0xfd,0x0c,0x1e,0x58,0x0c,0x3c,0x3f,0xc6,0x0f,0x2a,0x80,0x98,0x7f,0xe3,0x41,0x07,0x96,0xc3,0xfd,0xff,0xfe,0x83,0xca,0x50,0x3f,0x3c,0xc4,0xdc,0x86,0x58,0x0f,0xfe,0x1e,0xc2,0x39,0x1e,0x78,0x20,0x7c,0x47,0x51,0x99,0x12,0x0a,0x71,0xf8,0xc1,0xf0,0x67,0xf0,0x0b,0x81,0xa4,0x54,0xc5,0x15,0x01,0x0f,0x82,0x7f,0xe0,0xe0,0xc0,0x54,0xc2,0x79,0x25,0x31,0x46,0x41,0xe5,0x20,0xf0,0x58,0x60,0xe0,0xa1,0x07,0xac,0x44,0x04,0x33,0x00,0x78,0xcc,0x60,0x82,0xa1,0x07,0xac,0x06,0xe1,0x00,0x8e,0x03,0xc6,0x21,0x08,0x82,0x21,0x04,0x1e,0x66,0x21,0xe0,0x70,0x60,0xe0,0xf3,0xff,0x81,0x46,0x02,0x67,0x10,0xa0,0xa7,0x49,0x58,0x3e,0x09,0x84,0x20,0x38,0x2b,0x92,0x80,0x7f,0x0b,0xc4,0x40,0x2d,0x04,0xc3,0x10,0xbf,0x4f,0xec,0x0f,0x41,0x08,0x07,0xdb,0x90,0xa1,0x20,0xf2,0x86,0x48,0x01,0xe6,0xef,0x40,0x7a,0x42,0xa6,0x15,0x00,0x79,0x28,0x44,0x82,0x56,0x08,0x53,0x7c,0xa0,0xb5,0x0b,0x06,0x13,0x77,0xff,0x98,0xa0,0x4f,0x41,0x0d,0x07,0x94,0x1e,0xa1,0x50,0xc2,0x07,0x44,0x00,0x50,0x37,0x88,0xc2,0xdb,0xe4,0x2e,0x1a,0xe2,0x64,0x80,0x04,0x7f,0x18,0x0c,0x40,0x66,0x5f,0x8e,0x8d,0xbc,0x1e,0xa0,0x02,0xf8,0x00,0x86,0x70,0x17,0x1f,0x08,0xe4,0x40,0x04,}; +const uint8_t _A_Level1Read_128x51_1[] = {0x01,0x00,0xb2,0x01,0x00,0x2e,0x03,0xff,0x03,0x07,0xe7,0x82,0x01,0x30,0x07,0xe4,0x72,0x01,0xc0,0x07,0xe4,0x18,0x04,0x30,0x10,0x7d,0x8f,0x4a,0x0e,0x4e,0xb8,0x10,0x89,0x00,0x11,0xc0,0x16,0x14,0x30,0x1f,0x56,0x00,0x19,0x03,0xee,0x80,0x03,0x28,0x40,0x3e,0x8f,0x87,0x18,0x07,0xd4,0x40,0x06,0xc0,0x07,0x8c,0x70,0x23,0xe0,0xfd,0x90,0x48,0x01,0xf9,0x0c,0x88,0x03,0xc5,0x81,0x70,0xcc,0x84,0x9c,0x1f,0xbd,0x09,0x74,0x02,0x70,0x0f,0xa8,0x27,0x42,0x5e,0x0f,0xdf,0x80,0x7f,0xbe,0x13,0xf0,0x7e,0xf8,0x23,0xfe,0x01,0x88,0x83,0xea,0x31,0x07,0x8f,0x5d,0x01,0xf7,0x08,0x6e,0x8f,0x80,0x1f,0x6d,0xd2,0xc0,0x40,0x41,0xf3,0x02,0x02,0x1c,0x1c,0x1f,0xc2,0x41,0x00,0x44,0x0c,0x08,0x70,0x60,0x5a,0xff,0xbc,0x2e,0xb1,0x07,0xa0,0x90,0xa4,0x03,0x31,0xc0,0x40,0xe7,0xed,0xb1,0x25,0x0f,0x62,0x1e,0x14,0x1f,0x87,0xff,0xfe,0xd4,0x1c,0x00,0x54,0x6c,0x05,0xa3,0xfd,0x71,0xe0,0x74,0x00,0x28,0xb9,0x84,0x1e,0x54,0x00,0x79,0xe6,0x3f,0xf0,0x1b,0x00,0x68,0x81,0xe7,0xc0,0xe0,0x04,0xca,0x37,0xcf,0x1e,0x88,0x18,0x81,0xe5,0xf8,0xff,0x86,0x0a,0x01,0x0f,0xbe,0x7f,0xa4,0x20,0x51,0xd0,0x03,0xc7,0xcf,0xff,0xa1,0x83,0xcb,0x01,0x07,0xb8,0x78,0xc1,0xe5,0x50,0x16,0x0f,0xfc,0x68,0x20,0xf2,0x2d,0x8f,0xa7,0xfa,0x0f,0x29,0x40,0xfc,0xf3,0x17,0x70,0x18,0xff,0x3f,0x3f,0xfc,0x3d,0x84,0x72,0x24,0x41,0xe0,0x78,0x8e,0xa3,0x72,0x0a,0x8f,0x1c,0x22,0x38,0x3e,0x0c,0xfe,0x01,0x70,0x34,0x8a,0x98,0xaa,0xa1,0x51,0x76,0x8f,0x83,0x83,0x01,0x53,0x09,0xe4,0x94,0xc5,0x59,0x80,0x4e,0x0e,0x43,0xe0,0xb0,0xc1,0xc1,0x42,0x0f,0x5e,0x89,0xb4,0x48,0xc3,0xe0,0x98,0xc1,0x05,0x42,0x0f,0x5c,0x0a,0x4c,0x81,0xe3,0x10,0x84,0x41,0x3f,0xf7,0xf0,0x79,0xe0,0x14,0x66,0x0f,0x3f,0xfc,0x1e,0x41,0x01,0xc0,0x17,0x86,0xfe,0x0f,0x22,0x79,0x4c,0x21,0x01,0xc1,0x5c,0x91,0xa0,0x62,0xa3,0x52,0x5d,0x8e,0x82,0x61,0x88,0x5f,0xa7,0xf6,0x06,0xb4,0x10,0x7d,0xb9,0x0a,0x02,0x0f,0x19,0xc0,0x44,0x41,0xe6,0xef,0x4b,0x04,0x25,0x10,0x32,0xc8,0x04,0xc2,0xa0,0x0f,0x25,0x08,0x90,0x4a,0xc1,0x0a,0x31,0x8f,0x99,0xb4,0x36,0x0c,0x26,0xef,0xff,0x31,0x40,0x9e,0x82,0x1a,0x88,0x1e,0x1c,0x06,0xa1,0x50,0xc2,0x07,0x44,0x00,0x50,0x37,0x88,0xc2,0xe1,0x9c,0x0e,0x0c,0xde,0xa1,0x5c,0x4c,0x90,0x00,0x8f,0xe2,0x4d,0x2b,0x80,0x18,0x7a,0x36,0xf0,0x7a,0x80,0x0f,0xc1,0x1f,0x74,0x8f,0xff,0xc2,0x17,0x10,0x01,0x00,}; +const uint8_t *_A_Level1Read_128x51[] = {_A_Level1Read_128x51_0,_A_Level1Read_128x51_1}; + +const uint8_t _A_Level1ToysActive_128x51_0[] = {0x01,0x00,0xe5,0x01,0x00,0x78,0x03,0xc0,0x0d,0xf0,0xff,0x80,0x16,0x7e,0x0f,0x68,0x40,0x1d,0xa8,0x00,0x21,0xff,0x04,0xcc,0x1f,0x3c,0x08,0x1f,0x82,0x02,0x0f,0xbb,0x80,0x10,0x60,0xe0,0xf2,0xf1,0xcb,0x3c,0x31,0x8b,0x3c,0x24,0x1e,0x51,0xc0,0x60,0xc3,0x00,0x43,0x88,0xca,0x48,0xa4,0x3a,0x58,0xa0,0x3c,0xe0,0xc0,0xc1,0x09,0x16,0x23,0x2f,0x24,0x90,0xef,0x64,0x80,0xf3,0x81,0x83,0x06,0x60,0x0f,0x2c,0x84,0xa2,0x43,0x85,0xa2,0x03,0xcb,0x00,0x4c,0x2b,0x00,0xfc,0xf8,0xc3,0xf1,0x9b,0xc3,0x81,0xe3,0xc0,0x3a,0x29,0x7c,0xa4,0x20,0x53,0xa0,0x06,0xc8,0xe4,0x20,0x93,0xe0,0x48,0x00,0xa2,0x4b,0x1a,0x00,0x14,0xa0,0x18,0x03,0xfd,0x03,0xd0,0x86,0x20,0xf8,0x2d,0x90,0x00,0x41,0xe3,0x88,0x07,0xbc,0x40,0x1f,0xd1,0x81,0x68,0xab,0x86,0x04,0x0f,0x1e,0x66,0x36,0x73,0x30,0xcb,0xe3,0x2f,0x34,0x91,0xc0,0xc8,0x02,0x42,0x0f,0x2a,0x95,0x4a,0x94,0xb3,0x1a,0x95,0x08,0x1e,0x5f,0x08,0x88,0x3c,0xeb,0xc0,0xf1,0xc8,0x65,0x3b,0xd3,0x30,0x79,0x5e,0x24,0x47,0x72,0xc4,0x50,0x81,0xe3,0xa0,0xca,0x50,0xa1,0x00,0xf3,0x93,0x40,0x3c,0xd0,0xfc,0x45,0x33,0x25,0x49,0x8c,0x79,0xc7,0xe3,0x4e,0x07,0x8f,0xe2,0xcf,0x00,0xfe,0x46,0x0f,0xe9,0x04,0x01,0x0d,0x21,0xf6,0x20,0xf1,0xc0,0x47,0xe4,0x00,0xa2,0x07,0xa5,0x18,0x06,0x3f,0x89,0x3f,0xc1,0xc2,0x25,0x11,0x3f,0xb0,0x3c,0xa6,0x69,0x31,0x9c,0x3d,0x48,0x1e,0xe6,0xf2,0x80,0x6f,0xff,0xe0,0x06,0x9f,0x83,0xc6,0xc0,0x42,0x1e,0x04,0x7e,0x09,0xe0,0x83,0x6c,0x35,0x58,0x1b,0x5e,0x02,0x0c,0x0c,0x1c,0x04,0x3e,0x01,0xe0,0x87,0xc0,0xac,0x10,0x5a,0x85,0x56,0x83,0xd5,0xc0,0x41,0x51,0x43,0xc0,0x57,0x8f,0xc2,0x07,0x02,0xd8,0x41,0xb7,0x1a,0xae,0x06,0xa8,0x3e,0x20,0xf1,0xa0,0x48,0x0f,0xe2,0xb1,0x1a,0x84,0x36,0xb1,0xd5,0xb0,0xd5,0x70,0x21,0xf2,0x07,0x0c,0x03,0xfc,0x0f,0x1d,0x44,0x2b,0x51,0xaa,0xd0,0x10,0x46,0x0c,0xec,0x19,0x05,0x03,0x01,0xff,0x8f,0xc0,0x6a,0x81,0xf2,0xb0,0x07,0xca,0x0a,0x74,0x2e,0x04,0x04,0x1e,0x3a,0xa0,0xfb,0x0b,0xc5,0x4c,0x3f,0x0c,0x04,0x5e,0x03,0x56,0x8a,0x87,0xce,0x83,0x05,0x54,0x14,0x13,0xfd,0xff,0x8c,0x40,0x75,0x71,0xa0,0xf8,0x97,0xc7,0x81,0x0a,0x07,0x97,0xe3,0xff,0x00,0xc6,0x14,0x86,0x3e,0x1f,0x1c,0x05,0x56,0x81,0x0d,0x81,0xad,0x93,0x1c,0x03,0x20,0xb1,0x4f,0xc3,0xe2,0xc8,0x5c,0x3b,0x39,0xe1,0xa0,0xf4,0xc0,0x60,0x41,0xec,0x1f,0x6f,0x85,0x00,0x3f,0xb3,0xe0,0x7b,0xf0,0x20,0xc0,0xf3,0xe8,0x47,0xc3,0xf0,0x5e,0x4f,0xc4,0x7f,0x80,0xb1,0x10,0xfa,0x83,0xd3,0xc0,0x0c,0x2f,0x07,0xfc,0x00,0x2c,0xb1,0xe0,0x05,0x56,0x7e,0x2d,0x54,0x08,0xdf,0xc1,0x0b,0x3c,0x1f,0x30,0x01,0xef,0x00,0xfe,0xb8,0x03,0xfb,0xc0,0x0f,0xee,0x03,0x15,0x40,0x06,}; +const uint8_t _A_Level1ToysActive_128x51_1[] = {0x01,0x00,0xe6,0x01,0x00,0x78,0x03,0xc0,0x0d,0xf0,0xff,0x80,0x16,0x7e,0x0f,0x68,0x40,0x1d,0xa8,0x00,0x21,0xff,0x04,0xcc,0x1f,0x3c,0x08,0x1f,0x82,0x02,0x0f,0xbb,0x80,0x10,0x60,0xe0,0xf2,0xf1,0xcb,0x3c,0x31,0x8b,0x3c,0x24,0x1e,0x51,0xc0,0x60,0xc3,0x00,0x43,0x88,0xca,0x48,0xa4,0x3a,0x58,0xa0,0x3c,0xe0,0xc0,0xc1,0x09,0x16,0x23,0x2f,0x24,0x90,0xef,0x64,0x80,0xf3,0x81,0x83,0x06,0x60,0x0f,0x2c,0x84,0xa2,0x43,0x85,0xa2,0x03,0xcb,0x00,0x4c,0x2b,0x00,0xfc,0xf8,0xc3,0xf1,0x9b,0xc3,0x81,0xe3,0xc0,0x3a,0x29,0x7c,0xa4,0x20,0x53,0xa0,0x06,0xc8,0xe4,0x20,0x93,0xe0,0x48,0x00,0xa2,0x4b,0x1a,0x00,0x14,0xa0,0x18,0x03,0xfd,0x03,0xd0,0x86,0x20,0xf8,0x2d,0x90,0x00,0x41,0xe3,0x88,0x07,0xbc,0x40,0x1f,0xd1,0x81,0x68,0xab,0x86,0x04,0x0f,0x1e,0x66,0x36,0x73,0x30,0xcb,0xe3,0x2f,0x34,0x91,0xc0,0xc8,0x02,0x42,0x0f,0x2a,0x95,0x4a,0x94,0xb3,0x1a,0x95,0x08,0x1e,0x5f,0x08,0x88,0x3c,0xeb,0xc0,0xf1,0xc8,0x65,0x3b,0xd3,0x30,0x79,0x5e,0x24,0x47,0x72,0xc4,0x50,0x81,0xe3,0xa0,0xca,0x50,0xa1,0x00,0xf3,0x93,0x03,0xce,0x99,0x92,0xa4,0xc6,0x3c,0xe3,0xf1,0xa7,0x03,0xc7,0xf1,0x67,0x80,0x7f,0xa0,0x67,0xf4,0x82,0x00,0x86,0x90,0xfb,0x10,0x78,0xe0,0x21,0xf0,0xe0,0x51,0x03,0xd2,0x8c,0x03,0x1f,0xc4,0x9f,0xe1,0x01,0x8c,0x14,0x44,0xfe,0xc0,0xf2,0x99,0xa4,0xc6,0x70,0xf5,0x20,0x7b,0x9b,0xca,0x01,0xbc,0xff,0x80,0x1a,0x7e,0x0f,0x1b,0x01,0x08,0x60,0x11,0xe8,0x27,0x82,0x0d,0xb0,0xd5,0x60,0x6d,0x78,0x08,0x30,0x30,0x49,0xa2,0x0f,0x18,0xfc,0x0a,0xc1,0x05,0xa8,0x55,0x68,0x3d,0x5c,0x04,0x14,0xf4,0x3c,0x05,0x78,0xf0,0x23,0x50,0x2d,0x84,0x1b,0x71,0xaa,0xe0,0x6a,0x83,0xe2,0x0f,0x1a,0x04,0x82,0x01,0x70,0x2f,0x8d,0x42,0x1b,0x58,0xea,0xd8,0x6a,0xb8,0x10,0xf9,0x03,0x86,0x01,0x1c,0x86,0x40,0xb5,0x10,0xad,0x46,0xab,0x40,0x41,0x18,0x33,0xb0,0x64,0x14,0x08,0x04,0x2c,0xaa,0x35,0x40,0xf9,0x58,0x03,0xe5,0x05,0x3a,0x17,0x02,0x02,0x8e,0x1d,0x50,0x7d,0x85,0xe2,0xa6,0x19,0xc4,0x02,0x07,0x00,0xab,0x45,0x43,0xe7,0x41,0x82,0xaa,0x0a,0x09,0x06,0xc0,0x27,0x87,0x57,0x1a,0x0f,0x89,0x7c,0x78,0x10,0xa0,0x79,0x7e,0x20,0x7c,0x00,0x20,0xff,0xa3,0xe1,0xf1,0xc0,0x55,0x68,0x10,0xd1,0x48,0x80,0x0a,0xe0,0x04,0x3f,0xc7,0xfe,0x01,0x3f,0x0f,0x8b,0x21,0x08,0x02,0xce,0x78,0x68,0x3d,0x23,0xd8,0x00,0x7b,0x07,0xda,0x3e,0x1f,0xe8,0xfa,0x48,0x43,0xed,0x06,0x07,0x9f,0x40,0x1f,0x14,0x02,0xf2,0x7e,0x23,0xfc,0x0f,0xf8,0xc9,0x78,0x00,0xf4,0xf0,0x03,0x0b,0xc1,0xff,0x00,0x0b,0x2c,0x51,0x04,0x15,0x39,0xf8,0xb5,0x50,0x23,0x7f,0x04,0x2c,0xf0,0xbe,0xe0,0x06,0xbc,0x03,0xf9,0x5e,0x80,0x0a,0xf0,0x03,0xfb,0x80,0x95,0x40,0x02,0x00,}; +const uint8_t *_A_Level1ToysActive_128x51[] = {_A_Level1ToysActive_128x51_0,_A_Level1ToysActive_128x51_1}; + +const uint8_t _A_Level1Toys_128x51_0[] = {0x01,0x00,0x63,0x01,0x00,0x78,0x03,0xe0,0x18,0x0f,0xfc,0x3c,0x1f,0x9f,0x08,0x05,0xe0,0x1f,0x91,0xc8,0x07,0x02,0x02,0x0f,0xb8,0x38,0x08,0x60,0x63,0xeb,0x0e,0x10,0x48,0x80,0x11,0xc0,0x01,0x94,0x30,0x1f,0x56,0x00,0x19,0x46,0x01,0xf5,0x30,0x01,0x94,0x40,0x1f,0x41,0xb3,0x09,0x98,0x01,0xe1,0x00,0x32,0x90,0x03,0xf8,0x86,0x60,0x07,0x2d,0x9d,0x00,0x1f,0x50,0x40,0xff,0x41,0x80,0x65,0xa0,0x07,0xd4,0x08,0x1e,0xbf,0x0f,0xfa,0xd1,0x81,0xe7,0xd0,0x41,0x1f,0xf3,0xff,0xff,0x8f,0x83,0xdd,0x86,0x29,0x24,0xf0,0x04,0x86,0x06,0x0f,0xb0,0x01,0x03,0xd6,0xfe,0x86,0x40,0x7a,0x11,0x8f,0xc1,0xc1,0x83,0x83,0xe1,0xfc,0x40,0xf1,0x80,0xc3,0x01,0xfd,0x18,0x07,0xe7,0x02,0x03,0x30,0x53,0x08,0x20,0xe0,0x18,0x00,0xfb,0x48,0x20,0x98,0x08,0x12,0x48,0x41,0x63,0x80,0x83,0x41,0xc1,0xe5,0x18,0x81,0x87,0xc6,0x81,0x07,0xa8,0x55,0x60,0x31,0xfc,0x04,0x16,0x1a,0xf3,0x38,0x24,0x62,0x09,0xe0,0x83,0x6c,0x35,0x58,0x1b,0x58,0x7c,0x61,0x2e,0x34,0x8e,0x40,0xac,0x10,0x50,0xf8,0xd0,0x7a,0xa1,0xf1,0x2c,0x1c,0x12,0x11,0x0e,0x81,0x6c,0x20,0xdb,0x8d,0x57,0x03,0x54,0x1f,0x18,0xc1,0x59,0x21,0x70,0x2a,0x84,0x36,0xb1,0xd5,0xb0,0xd5,0x70,0x30,0x55,0xc1,0xe0,0x3c,0x10,0x48,0x16,0xa2,0x15,0xa8,0xd5,0x68,0x08,0x23,0x06,0x07,0xa4,0xe6,0x05,0x01,0xaa,0x07,0xca,0xc0,0x1f,0x68,0x04,0x7e,0x03,0x01,0xd5,0x07,0xe8,0x40,0x29,0xd1,0xab,0x45,0x43,0xe7,0x41,0x82,0xcc,0x01,0xe7,0x40,0x07,0x8e,0xae,0x34,0x1f,0x12,0xf8,0xf0,0x21,0x52,0x00,0x79,0xce,0x04,0x03,0xfe,0x8f,0x87,0xc7,0x01,0x55,0xa0,0x43,0x41,0xe9,0x1c,0x07,0x88,0x00,0x7f,0x1f,0xf8,0x04,0xfc,0x3e,0xcc,0xd1,0x77,0x30,0x7c,0x6c,0x00,0xfc,0x0f,0x89,0x28,0x41,0xe6,0x05,0x40,0xfa,0x03,0xf7,0x81,0x06,0x03,0x20,0x7e,0x60,0x60,0xf5,0xe0,0x7f,0xe3,0xe1,0xf5,0x07,0xb0,0x08,0x7c,0x1f,0xf0,0x00,0xc1,0xc1,0xe2,0x26,0x58,0x60,0x19,0x50,0x23,0x7f,0x07,0xe0,0x02,0x23,0x80,0xff,0x07,0xf8,0x3f,0xc1,0x52,}; +const uint8_t _A_Level1Toys_128x51_1[] = {0x01,0x00,0x7c,0x01,0x00,0x78,0x03,0xc0,0x03,0xff,0x8f,0x83,0xb3,0xc1,0x01,0xf8,0x03,0xf2,0x71,0x00,0xc0,0x40,0xc1,0xf7,0x0e,0x01,0x0c,0x18,0x1f,0x61,0xc2,0x09,0x10,0x02,0x30,0x10,0x10,0x18,0xc6,0x01,0xf5,0xc0,0x01,0x94,0xc0,0x1f,0x56,0x00,0x19,0x48,0x01,0xf4,0x1b,0x30,0x99,0x80,0x1e,0x20,0x03,0x2a,0x00,0x3f,0x88,0x66,0x00,0x72,0xd9,0xe0,0x01,0xf5,0x08,0x0f,0xf4,0x30,0x7e,0x68,0x32,0x00,0x3c,0x10,0x1e,0xbf,0x0f,0xfb,0x11,0x81,0xe7,0xa0,0x07,0x89,0x58,0x7f,0x9f,0xf7,0xc2,0x03,0xd0,0x36,0x26,0x63,0x7d,0x08,0x48,0x60,0x60,0xfb,0x6e,0x98,0x3d,0x3f,0xe6,0x64,0x07,0xa3,0xec,0xf8,0x18,0x38,0x78,0x3e,0x20,0x40,0xf3,0x81,0xc6,0x01,0xfd,0x30,0x84,0x20,0x98,0x1e,0x98,0x08,0x1d,0x83,0x09,0x07,0x08,0x20,0x24,0x43,0xeb,0x40,0xc2,0x67,0x20,0x49,0x21,0x09,0x0e,0x02,0x0c,0x4f,0x39,0x84,0x18,0x3e,0x37,0x88,0x3d,0x42,0xab,0x01,0x8f,0xe0,0x20,0xb0,0xf7,0x99,0xc2,0x26,0x18,0x4f,0x84,0x1b,0x61,0xaa,0xc0,0xda,0xc3,0xe3,0x13,0x71,0xa4,0xe3,0x05,0xe0,0x82,0x87,0xc6,0x83,0xd5,0x0f,0x8c,0xc4,0x1e,0x71,0x08,0xe6,0x0b,0x01,0x07,0xdc,0x6a,0xb8,0x1a,0xa0,0xf8,0xc8,0x4c,0xc9,0x17,0xc1,0x40,0x21,0xd5,0x8e,0xad,0x86,0xab,0x81,0x82,0xd8,0x01,0xc7,0xc1,0x84,0x83,0xc6,0x1f,0xa8,0xd5,0x68,0x08,0x23,0x06,0xa0,0x03,0xce,0xe7,0x04,0xe0,0xf0,0x21,0x61,0xf1,0xb0,0x07,0xc8,0x1e,0x93,0xe8,0x16,0x07,0xd1,0x0b,0x0f,0xd4,0x02,0x03,0x81,0xfc,0x45,0xc3,0xe7,0x41,0x0f,0xae,0x02,0x01,0x81,0xff,0x46,0xc3,0xe2,0x5f,0x1e,0x04,0x28,0x1e,0x97,0x0c,0x06,0x03,0xff,0x1f,0x0f,0x8e,0x02,0xab,0x40,0x86,0x83,0xd2,0x70,0x0f,0x1c,0x0c,0x07,0xf1,0xff,0x80,0x4f,0xc3,0xed,0x08,0xc0,0x78,0x1d,0x22,0x08,0x30,0xfb,0x03,0xc6,0x60,0x0f,0x50,0xfb,0xd0,0x23,0x01,0xfd,0xa0,0x43,0x0e,0x42,0x1f,0x47,0xf1,0x83,0xcc,0x3a,0x81,0xf2,0x03,0xa6,0x02,0x11,0xc0,0x80,0xa0,0x84,0x3e,0x80,0xf5,0x87,0xdc,0x00,0x63,0xff,0x00,0x0c,0x1c,0x1e,0x22,0x65,0xfc,0x43,0xc5,0x22,0x06,0x3f,0xfd,0xfc,0x1e,0xa0,0x02,0x90,0x02,0x60,0x00,0xa8,0x01,0x07,0xf8,0x03,0x62,0x00,0xfe,0x8e,0x01,0xd8,}; +const uint8_t _A_Level1Toys_128x51_2[] = {0x01,0x00,0x50,0x01,0x00,0x78,0x03,0xc0,0x07,0xfc,0xbf,0x83,0xb3,0x01,0x07,0xe0,0x40,0xc1,0xf7,0xe0,0x01,0x0c,0x38,0x1f,0x73,0x80,0x10,0xc6,0x01,0xf7,0x0c,0x09,0x20,0x02,0x60,0xc0,0x21,0xb0,0x03,0xec,0x98,0x5c,0x02,0xf5,0xc0,0x40,0x64,0x0f,0xa0,0xd9,0x84,0xcc,0x00,0xf4,0x00,0x21,0x83,0xfd,0x21,0x45,0xb4,0x81,0x03,0xe6,0x40,0x1f,0xe9,0x80,0x10,0xe0,0xa0,0xf9,0x88,0x01,0x0f,0xeb,0xff,0x10,0xc0,0x3c,0xf0,0x11,0x67,0xa0,0xff,0xff,0xf1,0xf0,0x7c,0xc7,0x9d,0x08,0x12,0x11,0x29,0x03,0xe4,0xae,0xa0,0xf4,0xff,0x0f,0x98,0x0c,0x4f,0xb4,0x87,0xcf,0x81,0xf1,0x08,0x07,0xa3,0xc5,0x81,0xf0,0xf1,0x60,0x7b,0xc3,0x9c,0x2b,0x80,0x0f,0xc0,0x24,0x7e,0x1f,0xf0,0x90,0xe0,0x20,0xc0,0xa1,0x9c,0x03,0x8b,0x81,0x18,0xc0,0x41,0xea,0x15,0x58,0x0c,0x7f,0x00,0xb7,0x2b,0x63,0xcc,0xe4,0x1c,0x08,0x36,0xc3,0x55,0x81,0xb5,0x87,0xce,0x98,0xe3,0x4f,0x04,0x14,0x3e,0x34,0x1e,0xa8,0x7c,0xe8,0x80,0xf3,0xa0,0x7c,0x20,0xdb,0x8d,0x57,0x03,0x54,0x1f,0x3e,0x31,0xa1,0x2b,0x90,0xda,0xc7,0x56,0xc3,0x55,0xc0,0x87,0xcb,0x04,0x0e,0x38,0x26,0x9e,0x15,0xa8,0xd5,0x68,0x08,0x22,0x1f,0x2c,0x08,0x3c,0xf9,0x95,0x10,0xf9,0x58,0x03,0xe7,0x80,0x07,0xa7,0xe3,0x50,0x1f,0x7c,0x06,0x00,0x7e,0x95,0x48,0xa8,0x7c,0xe8,0x21,0xf1,0xe0,0x2a,0x57,0x55,0x1a,0x0f,0x89,0x7c,0x78,0x10,0xa4,0x50,0xc0,0x01,0xe7,0xc0,0xff,0xc7,0xc3,0xe3,0x80,0xaa,0xd0,0x21,0xa0,0xf6,0xf0,0x10,0x8b,0xff,0x00,0x9f,0x87,0xc9,0xf0,0x20,0xf3,0x50,0x08,0x01,0x03,0xe4,0x09,0x17,0x19,0x03,0xdc,0x3e,0x40,0x91,0x81,0x07,0xf2,0x60,0x0f,0xb7,0x28,0xc0,0x22,0x00,0x84,0x0f,0xb8,0xec,0x41,0xeb,0xe0,0x8f,0x87,0xd4,0x1e,0xf2,0x0f,0x07,0xfc,0x00,0x30,0x70,0x78,0x82,0x46,0x30,0x0f,0x43,0xa8,0xb1,0x0f,0xff,0x7f,0x02,0x0c,0x20,0x1f,0x20,0x04,0x07,0xaa,0x7c,0x81,0xfe,0x0f,0xf0,0x7f,0x80,0x14,}; +const uint8_t _A_Level1Toys_128x51_3[] = {0x01,0x00,0x73,0x01,0x00,0x78,0x03,0xc0,0x07,0xfc,0xbf,0x83,0xb3,0x01,0x07,0xe0,0x40,0xc1,0xf7,0xe0,0x01,0x0c,0x38,0x1f,0x73,0x80,0x10,0xc6,0x01,0xf7,0x0c,0x09,0x20,0x02,0x60,0xc0,0x21,0xb0,0x03,0xec,0x98,0x5c,0x02,0xf5,0xc0,0x40,0x64,0x0f,0xa0,0xd9,0x84,0xcc,0x00,0xf4,0x00,0x21,0x83,0xfd,0x21,0x45,0xb4,0x81,0x03,0xe6,0x40,0x1f,0xe9,0x80,0x10,0xe0,0xa0,0xf9,0x88,0x01,0x0f,0xeb,0xff,0x10,0xc0,0x3c,0xf0,0x11,0x67,0xa0,0xff,0xff,0xf1,0xf0,0x7c,0xc7,0x9d,0x08,0x12,0x11,0x29,0x03,0xe4,0xae,0xa0,0xf4,0xff,0x0f,0x98,0x0c,0x4f,0xb4,0x87,0xcf,0x81,0xf1,0x08,0x07,0xa3,0xc5,0x81,0xf0,0xf1,0x60,0x7b,0xc3,0x9c,0x2b,0x80,0x0f,0xc0,0x24,0x7e,0x1f,0xf0,0x90,0xe0,0x20,0xc0,0xa1,0x9c,0x03,0x8b,0x81,0x18,0xc0,0x41,0xea,0x15,0x58,0x0c,0x7f,0x00,0xb7,0x2b,0x63,0xcc,0xe4,0x1c,0x08,0x36,0xc3,0x55,0x81,0xb5,0x87,0xce,0x98,0xe3,0x4f,0x04,0x17,0xf1,0x5f,0xa0,0xf5,0x43,0xe7,0x44,0x07,0x9d,0x03,0xe1,0x06,0x82,0x6c,0x38,0x1a,0xa0,0xf9,0xf1,0x8d,0x09,0x5c,0x86,0xc1,0x3a,0x16,0x1a,0xae,0x04,0x3e,0x58,0x20,0x71,0xc1,0x34,0xf0,0xa0,0xf8,0xe8,0x08,0x22,0x1f,0x2c,0x08,0x3c,0xf9,0x95,0x10,0xf9,0x58,0x03,0xe7,0x80,0x07,0xa7,0xe3,0x50,0x1f,0x1c,0x80,0x7d,0x30,0x18,0x01,0xfa,0x55,0x22,0xa1,0xf3,0xa0,0x87,0xc7,0x80,0xa9,0x5d,0x54,0x6a,0x18,0x5f,0x2e,0x04,0x29,0x14,0x30,0x00,0x79,0xf0,0x3f,0xf1,0xff,0xe7,0x43,0x01,0x55,0xa0,0x43,0x41,0xed,0xe0,0x01,0x0e,0x7b,0xff,0x00,0x9f,0x87,0xc9,0xf0,0x20,0xf3,0x50,0x0b,0x40,0x61,0xcb,0x72,0x0f,0x88,0x24,0x5c,0x64,0x05,0x2e,0x04,0x02,0x18,0x36,0x20,0xf8,0x82,0x46,0x04,0x0f,0x41,0x38,0x83,0xc8,0x3e,0x53,0x00,0x7b,0x01,0xc6,0x08,0x1f,0x23,0xf8,0xc4,0x0f,0xc8,0x0f,0x18,0xe0,0x5c,0xe8,0x03,0xb1,0x07,0xaf,0xfa,0x3e,0x19,0x10,0x79,0x70,0x01,0xef,0x3e,0xf0,0x43,0xe0,0x1f,0xf8,0x39,0x50,0xa0,0x11,0x80,0x7a,0x78,0x27,0xe7,0x01,0x80,0xfe,0x3f,0xf7,0xf0,0x48,0xc2,0x01,0xe8,0x00,0x26,0x3a,0x83,0xe4,0x56,0x40,0xfc,0x59,0x10,0x3f,0x2a,0x00,0xfe,0xbc,0x01,0x50,}; +const uint8_t _A_Level1Toys_128x51_4[] = {0x01,0x00,0x30,0x01,0x00,0x78,0x03,0xc0,0x0b,0xf8,0xff,0x83,0xf6,0x1f,0x80,0x83,0x83,0xaf,0x81,0x01,0x80,0x47,0x01,0xf7,0x70,0x01,0x0c,0xc0,0x1f,0x71,0x80,0x92,0x00,0x26,0x18,0x32,0x20,0x7d,0xc1,0x80,0x43,0x80,0x21,0x08,0x02,0x60,0x60,0x32,0x07,0xd0,0x6d,0x02,0x66,0x0f,0x70,0x21,0xc0,0x81,0xfc,0x43,0x24,0x74,0x01,0x0e,0x08,0x0f,0x9a,0x00,0x7f,0xac,0x00,0x43,0x85,0x03,0xe6,0x40,0x04,0x38,0x58,0x3f,0xbf,0xbf,0xff,0xfc,0x7c,0x1f,0x71,0xd0,0x10,0xf8,0x02,0x42,0x85,0x40,0x7b,0xa5,0x5c,0x5e,0xb0,0x70,0x7c,0x3e,0xd2,0x3d,0x7c,0x07,0xc4,0x40,0x1e,0x89,0x54,0x07,0xd3,0x56,0x41,0xe9,0x1c,0x05,0x9e,0x00,0x3f,0x50,0x0f,0xf8,0x80,0x70,0x0b,0x54,0xb8,0x38,0xce,0x63,0x00,0xab,0xc0,0x63,0xf8,0x08,0x28,0x3c,0xfb,0x00,0xf3,0xa0,0x60,0x35,0x78,0x1b,0x58,0x7d,0x73,0x0e,0x34,0xe0,0x55,0x68,0x3d,0x50,0xfa,0xe2,0x01,0xe7,0x80,0xf0,0x6a,0xb8,0x1a,0xa0,0xfa,0xe3,0x0d,0x27,0x00,0xfc,0x75,0x6c,0x35,0x5c,0x08,0x7d,0x20,0x80,0xf3,0x84,0x73,0xb5,0x5a,0x0d,0x56,0x04,0x3e,0x90,0x20,0x79,0xe6,0x2c,0x7d,0x5b,0x00,0x7d,0xa0,0x60,0xf3,0xf8,0x6c,0x43,0xf1,0x01,0x1f,0xa5,0x60,0x3e,0x54,0x10,0xf9,0xae,0x05,0x4a,0x9a,0xc2,0xf9,0x70,0x21,0x40,0xf3,0x20,0x08,0x14,0xeb,0x67,0xd1,0xaa,0xd0,0x21,0xa0,0xf8,0xe0,0x7e,0x7f,0xf0,0x09,0xf8,0x7d,0x1f,0x02,0x0f,0x35,0x00,0x81,0x0c,0x3e,0x60,0x91,0x2a,0x98,0x3d,0x03,0xe8,0x09,0x18,0x20,0x7f,0x2c,0x00,0xf9,0xe0,0x0a,0x4e,0x40,0x09,0x30,0xfb,0x1e,0x4c,0x1f,0x5c,0x00,0x7c,0xf0,0x3f,0xff,0xf8,0x39,0xa8,0x80,0x05,0x30,0x07,0xab,0xc4,0xbf,0xf7,0xf0,0x49,0xc4,0x01,0xee,0x00,0x60,0x7b,0x35,0x10,0x1f,0xe0,0xff,0x07,0xfc,0x00,}; +const uint8_t _A_Level1Toys_128x51_5[] = {0x01,0x00,0x4f,0x01,0x00,0x78,0x03,0xc0,0x0b,0xf0,0xff,0xc0,0x41,0xf9,0x1e,0x80,0x43,0xc1,0xd7,0x80,0x81,0xc0,0x27,0x00,0xfb,0xf0,0x00,0x86,0xc0,0x0f,0xb9,0x80,0x49,0x00,0x13,0x18,0x19,0x11,0x42,0xe1,0x80,0x32,0x21,0x08,0x02,0x60,0xc0,0x32,0x81,0x03,0xe8,0x36,0x61,0x33,0x00,0x38,0xec,0xe0,0x80,0xfe,0x21,0x9a,0x39,0xc1,0xe7,0x08,0x07,0xd1,0x8d,0xc0,0x0d,0xc0,0x02,0x1c,0x50,0x1f,0x34,0x00,0x21,0xc5,0x81,0xfd,0xfa,0xff,0xff,0xe3,0xe0,0xfb,0x9d,0x30,0xc8,0x24,0x2a,0x54,0x07,0xba,0xd5,0xc5,0xeb,0x0f,0x07,0xc3,0xed,0x27,0x9f,0x80,0x7c,0x48,0x01,0xe8,0x95,0x40,0x7d,0x02,0xd0,0x1f,0x33,0x87,0x09,0xe0,0x03,0xf7,0xfe,0x18,0x0e,0x01,0xea,0x9e,0x00,0x21,0xd8,0xe0,0x15,0x68,0x0c,0x7f,0x01,0x05,0x05,0x1e,0xc0,0x92,0x78,0x18,0x06,0xaf,0x03,0x6b,0x0f,0xac,0xc0,0x1e,0x4e,0x31,0xc0,0x55,0xe8,0x3d,0x50,0xfa,0xc4,0x01,0xe9,0xc0,0xd5,0xf0,0x35,0xe1,0xf5,0x8c,0x15,0x49,0x46,0x36,0x0e,0xaf,0x86,0xe1,0x81,0x0f,0xa4,0x22,0x04,0x24,0x3c,0xe6,0xaa,0xc1,0xa0,0xc0,0x87,0xd2,0x08,0x0f,0x39,0x85,0x1f,0xab,0x20,0xa0,0x07,0xd6,0x0c,0x0f,0x3f,0x06,0x8f,0x54,0x0f,0x20,0xfa,0x40,0x81,0xe7,0x00,0xa8,0x07,0xca,0x82,0x1f,0x48,0x18,0x55,0x35,0x1a,0xaf,0x07,0x07,0x81,0x0a,0x04,0x9c,0x06,0x08,0x05,0x3a,0xff,0x56,0xe1,0x63,0xa0,0x43,0x41,0xf1,0x80,0xfd,0xff,0xe3,0x13,0x60,0xfa,0x3e,0x04,0x1e,0x80,0x21,0x87,0x47,0x83,0xe8,0x09,0x18,0x60,0x3d,0x60,0x71,0xc0,0xfa,0xa4,0x04,0x0a,0x82,0x71,0x8e,0x07,0xd3,0x80,0x0f,0x60,0x38,0x87,0xc4,0xd2,0x6b,0xa1,0x00,0x18,0x3c,0x6e,0x01,0x71,0xa0,0x32,0x48,0x1e,0xd8,0x86,0xb0,0x91,0xc7,0x80,0x0f,0x9f,0xc6,0x0e,0x0e,0x0f,0x20,0x49,0xd8,0x01,0xe9,0x00,0xff,0x00,0x8a,0xfe,0x08,0x39,0x00,0x3d,0x59,0x06,0x05,0x40,0x7c,0x8f,0x4c,0x1f,0x58,0x00,0x7f,0x50,0x20,0x20,0xfd,0xf0,0x03,0xc8,}; +const uint8_t *_A_Level1Toys_128x51[] = {_A_Level1Toys_128x51_0,_A_Level1Toys_128x51_1,_A_Level1Toys_128x51_2,_A_Level1Toys_128x51_3,_A_Level1Toys_128x51_4,_A_Level1Toys_128x51_5}; + +const uint8_t _A_Level2FurippaActive_128x51_0[] = {0x01,0x00,0x80,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x03,0xe2,0x10,0x02,0x19,0xa4,0x22,0x10,0x0f,0x90,0x49,0x4a,0xb1,0x11,0x08,0xf0,0x3e,0x07,0x23,0xff,0x8b,0xc1,0x20,0x33,0x1f,0x84,0x3c,0x1e,0xd0,0x63,0x80,0xc7,0xa0,0x9c,0x29,0x04,0x7a,0x70,0x0f,0x68,0x14,0x83,0xfd,0x08,0x82,0x48,0x3c,0x10,0x33,0xb9,0x00,0x12,0x07,0x90,0x80,0xc4,0xe1,0x11,0x8b,0x84,0x02,0x80,0x0f,0x68,0x0d,0x22,0x01,0x24,0x88,0x41,0x9a,0x82,0x0f,0x89,0x25,0xf2,0x91,0xe0,0x80,0xb5,0x06,0xf0,0x60,0x78,0xa7,0xfe,0xa2,0xd4,0x3b,0xf7,0x03,0xfe,0x0f,0x5c,0x97,0xff,0x26,0xc4,0x2c,0x04,0xfc,0x1e,0xf8,0xaf,0xfe,0x8d,0x68,0x5c,0x08,0xfb,0xa4,0xc0,0x07,0xca,0xf9,0xe9,0xe0,0x10,0xe8,0x07,0x81,0x1e,0x20,0xf9,0xc0,0x3f,0x87,0xe0,0x02,0x1f,0x00,0x3d,0xbf,0xfa,0x7f,0x80,0x14,0x7f,0x05,0x11,0x41,0x88,0x3d,0xcf,0xa3,0x00,0xfe,0x00,0x86,0x78,0x0f,0x83,0xe8,0xc0,0x2f,0xe5,0x13,0x00,0x1d,0x03,0x17,0xff,0x97,0x81,0x44,0xdc,0x20,0xf1,0x0a,0x90,0x00,0xb4,0x19,0x29,0xfc,0xc0,0x0a,0x3c,0x08,0x7b,0x44,0x45,0xcb,0x50,0x8a,0x85,0xcc,0xdc,0x37,0xc8,0x10,0x3d,0x75,0x12,0x62,0xc8,0x97,0x8b,0xff,0x3f,0x07,0xb5,0x43,0x9a,0x05,0x3f,0xf6,0x06,0x1e,0x1f,0x7e,0xd0,0x14,0xe7,0xe7,0xc1,0x0f,0xbd,0xd4,0x08,0x46,0xb1,0x36,0x09,0x3d,0xb5,0x16,0xa2,0x71,0xf9,0xc1,0xa2,0x46,0x30,0xf9,0xd5,0x40,0x85,0xf0,0x47,0x0e,0x00,0x1c,0xa7,0xf1,0x85,0x3f,0x4b,0xf8,0xdd,0x10,0x20,0x80,0x16,0x81,0x05,0x74,0x17,0xfc,0x0e,0x29,0x42,0x00,0x47,0xfc,0x96,0x51,0x80,0x7d,0x00,0x0e,0x0c,0x0e,0xdc,0x01,0xb9,0x80,0x0e,0x43,0x10,0x06,0xde,0x01,0xfd,0x0e,0x1f,0x78,0x3f,0x7c,0x02,0xee,0x9c,0x03,0xfa,0x3c,0x3e,0xe5,0xf8,0x80,0x1c,}; +const uint8_t _A_Level2FurippaActive_128x51_1[] = {0x01,0x00,0x8d,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x7e,0x21,0xe0,0xf6,0x84,0x00,0x86,0x69,0x08,0x84,0x43,0x21,0xd7,0x80,0x7b,0x43,0x00,0x43,0x2a,0xc4,0x44,0x33,0xd0,0x32,0xb9,0x00,0x10,0x72,0x3f,0xf8,0xbc,0x12,0x03,0xf1,0x3b,0x88,0x3d,0xa0,0xc1,0x81,0x8f,0x41,0x38,0x45,0x51,0xfc,0x03,0xda,0x05,0x20,0xff,0x42,0x20,0x92,0x02,0x28,0xff,0xc1,0xed,0x03,0xc8,0x40,0x62,0x70,0x88,0xc0,0x94,0x6f,0xe0,0xf6,0x80,0xd2,0x20,0x12,0x48,0x84,0x1a,0x03,0xf0,0x9f,0x83,0xde,0x49,0x7c,0xa4,0x78,0x38,0x23,0xe1,0x8f,0xa4,0x1e,0x29,0xff,0xa8,0xc0,0x24,0x10,0x0f,0xe4,0x3f,0x81,0xff,0xe6,0x03,0xd3,0x25,0xff,0xc9,0xa9,0x0b,0xfd,0x07,0x07,0xbe,0x2b,0xff,0xa3,0x42,0x1b,0x84,0x78,0x00,0xf5,0xe5,0x7c,0xf4,0xe6,0x41,0xc0,0x7f,0xe0,0x20,0xfa,0x49,0x08,0xb0,0x41,0x03,0xe0,0xe0,0x55,0x01,0xe9,0xff,0xd3,0xa7,0x47,0xc0,0x7e,0x2b,0x87,0x80,0x1e,0xed,0x31,0x3f,0x1c,0xf2,0xe1,0x40,0x07,0xb1,0x2c,0x4f,0xc5,0xc0,0x8f,0xcf,0x0e,0xc2,0x00,0x1a,0x06,0x2f,0xff,0x2f,0x02,0x89,0xf8,0x41,0xe3,0x07,0x8e,0x1d,0x84,0x00,0x3a,0x0c,0x94,0xfc,0x7c,0x27,0xe2,0x4f,0x3d,0x42,0x2a,0x0a,0x33,0xf1,0x00,0x1b,0x51,0x26,0x3c,0x8c,0x00,0xfc,0x61,0xf7,0xe6,0x81,0x08,0xfc,0x61,0xf7,0xed,0x01,0x0b,0xc1,0xff,0x00,0x08,0x85,0xaa,0x17,0x50,0x21,0x7c,0x30,0x10,0x7c,0x01,0x05,0xb5,0x16,0xa0,0x21,0x5e,0x1c,0x23,0x60,0x81,0x07,0xda,0xaa,0x04,0x29,0xf4,0x02,0xc1,0x1c,0x07,0xb6,0x82,0x15,0x00,0x88,0x60,0x13,0xa5,0x03,0x07,0xb5,0x02,0x0a,0x1b,0x1f,0x80,0x3c,0x44,0x22,0x81,0x83,0xe9,0x17,0x4b,0x00,0x81,0x80,0x02,0xf0,0x01,0xda,0x34,0x10,0x7f,0x4e,0x01,0xfc,0xf0,0x10,0x06,0x78,0x09,0xdd,0x3c,0x2e,0xf4,0x1c,0x1f,0xb7,0xc0,0x76,0xe0,0x2f,0xe2,0xee,0x58,0x08,0x01,0xc0,}; +const uint8_t _A_Level2FurippaActive_128x51_2[] = {0x01,0x00,0x83,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x03,0xe2,0x10,0x02,0x19,0xa4,0x22,0x10,0x0f,0x90,0x49,0x4a,0xb1,0x11,0x08,0xf0,0x3e,0x07,0x23,0xff,0x8b,0xc1,0x20,0x33,0x10,0x7c,0x41,0x8e,0x03,0x1e,0x82,0x70,0xa4,0x00,0xf8,0x81,0x02,0x86,0x11,0x04,0x90,0x03,0xe6,0x07,0x10,0x80,0x44,0x21,0x11,0x80,0x7c,0xc0,0x4c,0x03,0x20,0x88,0x41,0xa4,0x1f,0x80,0x7c,0x14,0x06,0x81,0xe0,0x80,0xf8,0x27,0xe7,0x15,0xb8,0x18,0x0e,0x80,0x04,0x1b,0xc2,0x5c,0x78,0x1f,0xfe,0x62,0xb0,0x6a,0x65,0x02,0x71,0x08,0x10,0x67,0xc1,0x91,0x07,0xa5,0xcc,0x1e,0x5f,0x8c,0x79,0xd4,0x9c,0xe5,0xc0,0x07,0x8c,0xe2,0x0e,0x0f,0x2f,0xf6,0x7e,0x01,0xf4,0x77,0x88,0x90,0x41,0xe5,0x18,0x73,0x97,0x0b,0xff,0xbf,0xc0,0x47,0xc0,0xc2,0x0f,0x1f,0x07,0x02,0xa9,0x1c,0x87,0x03,0xd3,0xe0,0x59,0x20,0x78,0xdc,0x3c,0x15,0x48,0x61,0x94,0xbc,0x40,0xf1,0x8e,0x03,0xcb,0xe1,0x01,0x9e,0x5c,0x28,0x10,0xe0,0x49,0x03,0xc8,0x8a,0x50,0x0c,0xc7,0x06,0x3f,0x3c,0x90,0x41,0xa3,0x07,0xc1,0xf1,0xff,0xe5,0xe8,0x93,0x83,0xf0,0x60,0xf1,0xc2,0x70,0x83,0xc7,0x41,0xe2,0x9f,0xcc,0x07,0xc7,0x01,0x80,0xab,0xd6,0xa1,0xe5,0x16,0x9a,0x24,0x57,0x02,0x0f,0x5d,0x47,0x98,0x10,0x91,0xc1,0x00,0x87,0xdb,0x9a,0x06,0x48,0x3a,0xd0,0x83,0xeb,0xda,0x02,0x9f,0x02,0x02,0xaf,0x10,0xfb,0x5d,0x5c,0xea,0xe4,0x20,0xfa,0xda,0x80,0xa6,0xa7,0x1b,0x00,0x7d,0xea,0xb0,0x08,0x81,0xb4,0x9b,0x42,0x0f,0x6d,0x04,0x28,0x34,0x42,0xe1,0x30,0x08,0x3d,0xa8,0x10,0x57,0xd1,0x43,0xc6,0x26,0x00,0x9f,0xfb,0xf8,0x4e,0x02,0x0f,0xa3,0x81,0x84,0x88,0x01,0x7e,0x00,0x76,0x97,0xa0,0x00,0xe5,0xe7,0x00,0x39,0x3b,0xb0,0x04,0xef,0x27,0x78,0x3f,0xa3,0xc3,0xee,0x58,0x10,0x01,0x80,}; +const uint8_t _A_Level2FurippaActive_128x51_3[] = {0x01,0x00,0xa3,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x00,0xa2,0x12,0x68,0xc0,0x08,0x6d,0x11,0x0c,0x24,0x33,0xf1,0x0f,0x84,0x03,0xd4,0x0c,0x53,0x48,0x44,0x22,0x19,0x0e,0xbc,0x44,0x01,0xeb,0x0c,0x01,0x0c,0xab,0x11,0x10,0xcf,0x40,0xf8,0x00,0xf6,0x1c,0x8f,0xfe,0x2f,0x04,0x80,0xfc,0x4e,0xe2,0x4f,0x68,0x31,0xc0,0x63,0xd0,0x4e,0x11,0x54,0x7f,0x00,0xf6,0x81,0x48,0x08,0x43,0x04,0x90,0x11,0x47,0xfe,0x0f,0x68,0x18,0xdc,0x62,0x10,0x88,0xc0,0x94,0x6f,0xe0,0xf6,0x80,0x86,0x86,0x41,0x10,0x83,0x40,0x7e,0x13,0xf0,0x7b,0x94,0x06,0x81,0xe0,0xe0,0x8f,0x86,0x3e,0x0d,0x4b,0x81,0x80,0xe8,0x02,0x11,0x80,0x7f,0x21,0xfc,0x0f,0xff,0x31,0x58,0x35,0x32,0x81,0x1a,0x89,0x48,0x3f,0xe8,0x38,0x3d,0x2e,0x60,0xf2,0xfc,0x63,0xd0,0x86,0xe1,0x1e,0x00,0x3c,0x67,0x10,0x70,0x79,0x7f,0xb3,0xe6,0x41,0xc0,0x7f,0xe0,0x20,0xf3,0x33,0x89,0x58,0x78,0x5f,0xfd,0xfa,0x48,0x45,0x82,0x18,0x1f,0x07,0x02,0xa9,0x1c,0x87,0x03,0xd1,0x3a,0x3e,0x03,0xf1,0x5c,0x3c,0x15,0x48,0x63,0x34,0xbc,0x40,0xf1,0x02,0x89,0xf8,0xe7,0x97,0x0a,0x04,0x3a,0x38,0x0f,0x42,0x58,0x9f,0x8b,0x81,0x1f,0x9e,0x48,0x20,0xc6,0x81,0xa0,0x78,0xff,0xf2,0xf0,0xa0,0x9f,0x84,0x1e,0x30,0x78,0xe1,0x38,0x41,0xe3,0xa0,0xf1,0x4f,0xc7,0xc2,0x7e,0x25,0x73,0x40,0x2a,0x1e,0x50,0x51,0x9f,0x88,0x00,0xda,0x8f,0x31,0xe4,0x54,0x22,0x7e,0x20,0xfb,0xf3,0x40,0x84,0x7e,0x30,0xfb,0xf6,0x80,0x85,0xe0,0xff,0x80,0x04,0x42,0xd5,0x0b,0xa8,0x10,0xbe,0x18,0x08,0x3e,0x00,0x82,0xda,0x8b,0x50,0x10,0xaf,0x0b,0x91,0xb0,0x39,0xc4,0x3e,0xb5,0x58,0x04,0x42,0x01,0x3e,0x80,0x58,0x23,0x80,0xf6,0xd0,0x42,0x81,0xe3,0x80,0x4e,0x94,0x0c,0x1e,0xd4,0x08,0x28,0x6c,0x7e,0x00,0xf1,0x10,0x8a,0x06,0x0f,0xa4,0x5d,0x2c,0x02,0x06,0x00,0x0b,0xc0,0x07,0x68,0xd0,0x41,0xfd,0x38,0x07,0xf3,0xc0,0x40,0x19,0xe0,0x27,0x74,0xf0,0xbb,0xd0,0x70,0x7e,0xdf,0x01,0xdb,0x80,0xbf,0x8b,0xb9,0x60,0x20,0x07,}; +const uint8_t _A_Level2FurippaActive_128x51_4[] = {0x01,0x00,0xb5,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x80,0xe5,0x06,0x07,0x2e,0x00,0x7c,0x3a,0x08,0x1e,0x04,0x08,0x30,0x08,0xc0,0x3d,0x78,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x28,0xc8,0x01,0xeb,0x60,0x01,0x0e,0xa2,0x81,0x20,0x16,0x15,0x00,0x1e,0xb3,0x00,0x10,0xd5,0x24,0x14,0x28,0x20,0x14,0x70,0xc0,0xf5,0x1b,0x15,0xa2,0x21,0x84,0x86,0x7e,0x21,0xf8,0x80,0x7a,0xc2,0x00,0x43,0x34,0x84,0x42,0x21,0x90,0xeb,0xc4,0x40,0xa6,0x40,0x02,0x86,0x00,0x86,0x55,0x88,0x88,0x67,0xa0,0x7c,0x00,0x7b,0x0e,0x47,0xff,0x17,0x82,0x40,0x7e,0x27,0x71,0x47,0x34,0x18,0xe0,0x31,0xe8,0x27,0x08,0xaa,0x3f,0x80,0x7b,0x40,0xa4,0x1f,0xe8,0x44,0x12,0x40,0x45,0x1f,0xf8,0x3d,0xa0,0x79,0x08,0x0c,0x4e,0x11,0x18,0x12,0x8d,0xfc,0x1e,0xd0,0x1a,0x44,0x02,0x49,0x10,0x83,0x40,0x7e,0x13,0xf0,0x7b,0xc9,0x2f,0x94,0x8f,0x07,0x04,0x7c,0x31,0xf0,0x6a,0x5c,0x00,0x43,0x14,0xff,0xd4,0x57,0x65,0xfc,0x87,0xf0,0x3f,0xfc,0xc5,0x60,0xd4,0xc1,0xe3,0x92,0xff,0xe4,0xd4,0x85,0xfe,0x83,0x83,0xd2,0xe6,0x0f,0x1c,0x57,0xff,0x46,0x84,0x37,0x08,0xf0,0x01,0xe3,0x38,0x83,0x83,0xc7,0x95,0xf3,0xd3,0x99,0x07,0x01,0xff,0x4e,0x88,0x3c,0x8c,0xe2,0x56,0x10,0x79,0x24,0x84,0x58,0x21,0x81,0xf0,0x70,0x2a,0x91,0xc8,0x70,0x3c,0xbf,0xfa,0x74,0xe8,0xf8,0x0f,0xc5,0x70,0xf0,0x55,0x21,0x8c,0xd2,0x07,0x90,0x14,0x4f,0xc7,0x3c,0xb8,0x50,0x21,0xd1,0xc0,0x7a,0x12,0xc4,0xfc,0x5c,0x08,0xfc,0xf2,0x41,0x06,0x34,0x0d,0x03,0x17,0xff,0x97,0x85,0x04,0xfc,0x20,0xf1,0x83,0xc7,0x09,0xc2,0x0f,0x1d,0x06,0x4a,0x7e,0x3e,0x13,0xf1,0x2b,0x9a,0x01,0x50,0x8a,0x82,0x8c,0xfc,0x40,0x06,0xd4,0x49,0x8f,0x23,0x00,0x3f,0x18,0x7d,0xf9,0xa0,0x42,0x3f,0x18,0x7d,0xfb,0x40,0x42,0xf0,0x7f,0xc0,0x02,0x21,0x6a,0x85,0xd4,0x08,0x5f,0x0c,0x04,0x1f,0x00,0x41,0x6d,0x45,0xa8,0x08,0x57,0x85,0xc8,0xd8,0x20,0x41,0xf6,0xaa,0x81,0x0a,0x7d,0x00,0xb0,0x47,0x01,0xed,0xa0,0x85,0x40,0x22,0x18,0x04,0xe9,0x40,0xc1,0xed,0x40,0x82,0x86,0xc7,0xe0,0x0f,0x11,0x08,0xa0,0x60,0xfa,0x45,0xd2,0xc0,0x20,0x60,0x00,0xbc,0x00,0x76,0x8d,0x04,0x1f,0xd3,0x80,0x7f,0x3c,0x04,0x01,0x9e,0x02,0x77,0x4f,0x0b,0xbd,0x07,0x07,0xed,0xf0,0x1d,0xb8,0x0b,0xf8,0xbb,0x96,0x02,0x00,0x70,}; +const uint8_t _A_Level2FurippaActive_128x51_5[] = {0x01,0x00,0xbe,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x00,0xc7,0x1e,0x07,0x37,0x82,0x03,0x00,0xf4,0x08,0x0e,0xc0,0x2e,0x88,0x0c,0x52,0x38,0x07,0x2c,0x00,0x5c,0x40,0x08,0x0b,0x18,0x74,0x2a,0xf8,0x08,0x38,0x10,0x3d,0x45,0x63,0x70,0x82,0xf0,0x80,0xe5,0x06,0x82,0x03,0x90,0x4c,0x5a,0x08,0x1e,0x04,0x56,0x51,0x80,0x7a,0xf0,0x00,0x43,0x50,0xc0,0xc4,0x20,0x60,0x51,0x90,0x42,0x01,0xe8,0x56,0x2d,0x45,0x02,0x41,0x06,0x02,0x8d,0x00,0x1e,0xb3,0x00,0x10,0xd5,0x24,0x14,0x21,0x59,0x61,0xa2,0x00,0xf4,0x8c,0x00,0x86,0xd1,0x10,0xc2,0x43,0x3f,0x10,0xfc,0x40,0x3d,0x44,0xa5,0x34,0x84,0x42,0x21,0x90,0xeb,0xc4,0x42,0x22,0x0f,0x48,0x60,0x08,0x65,0x41,0xa1,0xcf,0x40,0xf8,0x00,0xf6,0x1c,0x8f,0xfe,0x2f,0x04,0x80,0xfc,0x4e,0xe2,0xae,0x68,0x31,0xc0,0x63,0xd0,0x4e,0x11,0x54,0x7f,0x00,0xf6,0x81,0x48,0x3f,0xd0,0x88,0x21,0xec,0xbf,0xe0,0xf6,0x81,0xe4,0x20,0x31,0x38,0x44,0x60,0x4a,0x37,0xf0,0x7b,0x40,0x69,0x10,0x09,0x24,0x42,0x0d,0x01,0xf8,0x4f,0xc1,0xef,0x24,0xbe,0x52,0x3c,0x1c,0x11,0xf0,0xc7,0xc1,0xa9,0x70,0x01,0x0c,0x53,0xff,0x51,0x5d,0x8c,0x03,0xf9,0x0f,0xe0,0x7f,0xf9,0x8a,0xc1,0xa9,0x83,0xc7,0x25,0xff,0xc9,0xa9,0x0b,0xfd,0x07,0x07,0xa5,0xcc,0x1e,0x38,0xaf,0xfe,0x8d,0x08,0x6e,0x11,0xe0,0x03,0xc6,0x71,0x07,0x07,0x8f,0x2b,0xe7,0xa7,0x32,0x0e,0x03,0xff,0x01,0x07,0x99,0x9c,0x4a,0xc2,0x0f,0x24,0x90,0x8b,0x04,0x30,0x3e,0x0e,0x05,0x52,0x39,0x0e,0x07,0x97,0xff,0x4e,0x9d,0x1f,0x01,0xf8,0xae,0x1e,0x0a,0xa4,0x31,0x9a,0x40,0xf2,0x02,0x89,0xf8,0xe7,0x97,0x0a,0x04,0x3a,0x38,0x0f,0x42,0x58,0x9f,0x8b,0x81,0x1f,0x9e,0x48,0x20,0xc6,0x81,0xa0,0x62,0xff,0xf2,0xf0,0xa0,0x9f,0x84,0x1e,0x30,0x78,0xe1,0x38,0x41,0xe3,0xa0,0xc9,0x4f,0xc7,0xc2,0x7e,0x25,0x73,0x40,0x2a,0x11,0x50,0x51,0x9f,0x88,0x00,0xda,0x89,0x31,0xe4,0x60,0x07,0xe3,0x0f,0xbf,0x34,0x08,0x47,0xe3,0x0f,0xbf,0x68,0x08,0x5e,0x0f,0xf8,0x00,0x44,0x2d,0x50,0xba,0x81,0x0b,0xe1,0x80,0x83,0xe0,0x08,0x2d,0xa8,0xb5,0x01,0x0a,0xf0,0xb9,0x1b,0x04,0x08,0x3e,0xd5,0x50,0x21,0x4f,0xa0,0x16,0x08,0xe0,0x3d,0xb4,0x10,0xa8,0x04,0x43,0x00,0x9d,0x28,0x18,0x3d,0xa8,0x10,0x50,0xd8,0xfc,0x01,0xe2,0x21,0x14,0x0c,0x1f,0x48,0xba,0x58,0x04,0x0c,0x00,0x17,0x80,0x0e,0xd1,0xa0,0x83,0xfa,0x70,0x0f,0xe7,0x80,0x80,0x33,0xc0,0x4e,0xe9,0xe1,0x77,0xa0,0xe0,0xfd,0xbe,0x03,0xb7,0x01,0x7f,0x17,0x72,0xc0,0x40,0x0e,}; +const uint8_t *_A_Level2FurippaActive_128x51[] = {_A_Level2FurippaActive_128x51_0,_A_Level2FurippaActive_128x51_1,_A_Level2FurippaActive_128x51_2,_A_Level2FurippaActive_128x51_3,_A_Level2FurippaActive_128x51_4,_A_Level2FurippaActive_128x51_5}; + +const uint8_t _A_Level2Furippa_128x51_0[] = {0x01,0x00,0x51,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x03,0xe2,0x10,0x02,0x19,0xa4,0x22,0x10,0x0f,0x90,0x49,0x4a,0xb1,0x11,0x08,0xf0,0x3e,0x07,0x23,0xff,0x8b,0xc1,0x20,0x33,0x10,0x7c,0x41,0x8e,0x03,0x1e,0x82,0x70,0xa4,0x00,0xf8,0x81,0x48,0x3f,0xd0,0x88,0x24,0x80,0x1f,0x30,0x3c,0x84,0x06,0x27,0x08,0x8c,0x03,0xe6,0x03,0x48,0x80,0x49,0x22,0x10,0x69,0x07,0xe0,0x1f,0x12,0x4b,0xe5,0x23,0xc1,0x01,0xf0,0x4f,0xce,0x31,0x14,0xff,0xd4,0x40,0x83,0x78,0x4b,0x98,0x01,0x72,0x5f,0xfc,0x98,0x10,0x67,0xcf,0x41,0x07,0xbe,0x2b,0xff,0xa3,0x3a,0x93,0x9c,0xc0,0x0b,0xca,0xf9,0xe9,0xe0,0x1f,0x47,0x78,0xe0,0x01,0xf5,0x80,0x8f,0x81,0x84,0x1f,0x3f,0xfd,0x3f,0xc0,0x0c,0x40,0xfb,0x8e,0x01,0x8b,0xe1,0x01,0x07,0xcc,0x1c,0x0c,0x59,0x80,0x7b,0x50,0x31,0x7f,0xf9,0x78,0x1c,0xe0,0xe0,0xf6,0xd0,0x64,0xa7,0xf3,0x01,0xf1,0xc0,0x41,0xed,0x50,0x8a,0x8b,0x4e,0x00,0x13,0x10,0x7b,0x6a,0x24,0xc0,0x84,0x8e,0x08,0x04,0x3e,0xdc,0xd0,0x32,0x41,0xcd,0xef,0xa8,0xed,0x01,0x4f,0x81,0x01,0x57,0xbd,0x42,0xea,0x05,0x36,0x68,0xd0,0x03,0xef,0x6a,0x02,0x9c,0x3a,0x01,0x60,0x0f,0xbd,0x54,0xda,0x90,0x09,0xc0,0x3d,0xb4,0x10,0xa0,0xd1,0x3f,0x09,0x66,0x69,0xf4,0x82,0xbe,0x8a,0x1e,0x31,0x30,0x04,0xff,0xdf,0xc2,0x70,0x10,0x7d,0x1c,0x0c,0x24,0x40,0x0b,0xf0,0x03,0xb4,0xbd,0x00,0x07,0x2f,0x38,0x01,0xc9,0xdd,0x80,0x27,0x79,0x3b,0xc1,0xfd,0x1e,0x1f,0x72,0xc0,0x80,0x0c,}; +const uint8_t _A_Level2Furippa_128x51_1[] = {0x01,0x00,0x51,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x03,0xe2,0x10,0x02,0x19,0xa4,0x22,0x10,0x0f,0x90,0x49,0x4a,0xb1,0x11,0x08,0xf0,0x3e,0x07,0x23,0xff,0x8b,0xc1,0x20,0x33,0x10,0x7c,0x41,0x8e,0x03,0x1e,0x82,0x70,0xa4,0x00,0xf8,0x81,0x02,0x86,0x11,0x04,0x90,0x03,0xe6,0x07,0x10,0x80,0x44,0x21,0x11,0x80,0x7c,0xc0,0x4c,0x03,0x20,0x88,0x41,0xa4,0x1f,0x80,0x7c,0x14,0x06,0x81,0xe0,0x80,0xf8,0x27,0xe7,0x18,0x07,0x90,0x10,0x6f,0x09,0x73,0x28,0x33,0x88,0x40,0x83,0x3e,0x7a,0x08,0x3e,0x3f,0x18,0xf3,0xa9,0x39,0xcc,0x1e,0xdf,0xec,0xfc,0x03,0xe8,0xef,0x11,0x21,0x00,0x17,0x85,0xff,0xdf,0xe0,0x23,0xe0,0x61,0x07,0xdf,0xc0,0x0c,0x40,0xf8,0xf1,0x03,0xc6,0x38,0x06,0x2f,0x84,0x04,0x1f,0x30,0x70,0x31,0x66,0x01,0xed,0x40,0xf1,0xff,0xe5,0xe0,0x73,0x83,0x83,0xdb,0x41,0xe2,0x9f,0xcc,0x07,0xc7,0x01,0x07,0xb5,0x43,0xca,0x2d,0x38,0x00,0x4c,0x41,0xed,0xa8,0xf3,0x02,0x12,0x38,0x20,0x10,0xfb,0x73,0x40,0xc9,0x07,0x37,0xbe,0xa3,0xb4,0x05,0x3e,0x04,0x05,0x5e,0xf5,0x0b,0xa8,0x14,0xd9,0xa2,0xe4,0x20,0xfa,0xda,0x80,0xa7,0x0e,0x80,0x58,0x03,0xef,0x55,0x80,0x44,0x0d,0xa5,0x00,0x9c,0x03,0xdb,0x41,0x0a,0x0d,0x13,0xf0,0x96,0x66,0x9f,0x48,0x2b,0xe8,0xa1,0xe3,0x13,0x00,0x4f,0xfd,0xfc,0x27,0x01,0x07,0xd1,0xc0,0xc2,0x44,0x00,0xbf,0x00,0x3b,0x4b,0xd0,0x00,0x72,0xf3,0x80,0x1c,0x9d,0xd8,0x02,0x77,0x93,0xbc,0x1f,0xd1,0xe1,0xf7,0x2c,0x08,0x00,0xc0,}; +const uint8_t _A_Level2Furippa_128x51_2[] = {0x01,0x00,0x6a,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x7e,0x21,0xe0,0xf6,0x84,0x00,0x86,0x69,0x08,0x84,0x43,0x21,0xd7,0x80,0x7b,0x43,0x00,0x43,0x2a,0xc4,0x44,0x33,0xd0,0x32,0xb9,0x00,0x10,0x72,0x3f,0xf8,0xbc,0x12,0x03,0xf1,0x3b,0x88,0x3d,0xa0,0xc1,0x81,0x8f,0x41,0x38,0x45,0x51,0xfc,0x03,0xda,0x05,0x20,0x21,0x0c,0x12,0x40,0x45,0x1f,0xf8,0x3d,0xa0,0x71,0x08,0x04,0x42,0x11,0x18,0x12,0x8d,0xfc,0x1e,0xd0,0x10,0xd0,0xc8,0x22,0x10,0x68,0x0f,0xc2,0x7e,0x0f,0x72,0x80,0xd0,0x3c,0x1c,0x11,0xf0,0xc7,0xd2,0x0e,0x0f,0x21,0x08,0xc0,0x3f,0x88,0xf7,0x28,0x09,0xa8,0x94,0x83,0xfe,0x7b,0x08,0x3d,0xff,0x18,0xf4,0x21,0xb8,0x62,0x05,0xfe,0xcf,0x99,0x07,0x01,0xff,0x80,0x83,0xdf,0x85,0xff,0xdf,0xa4,0x87,0x80,0x7e,0x70,0x7a,0x27,0x47,0xc0,0x7e,0x70,0x00,0xf8,0x81,0xe2,0xd3,0x13,0xf4,0x03,0xd0,0x96,0x27,0xe9,0xa0,0x78,0xff,0xf2,0xf0,0x28,0x9f,0xa7,0x41,0xe2,0x9f,0x8f,0x84,0xfd,0x55,0x0f,0x28,0x28,0xcf,0xd3,0xa8,0xf3,0x1e,0x48,0xfd,0x55,0x0e,0x68,0x10,0x8f,0xd5,0xa8,0xed,0x01,0x0b,0xc1,0xff,0x00,0x08,0x85,0xaa,0x17,0x50,0x21,0x7c,0x30,0x10,0x7c,0x01,0x05,0xb5,0x16,0xa0,0x21,0x5e,0x1c,0x23,0x60,0x73,0x88,0x7d,0x6a,0xb0,0x08,0x84,0x02,0x7d,0x00,0xb0,0x47,0x01,0xed,0xa0,0x85,0x03,0xc7,0x00,0x9d,0x1e,0x04,0x0c,0x1e,0xd4,0x08,0x28,0x6c,0x7e,0x00,0xf1,0x10,0x8a,0x06,0x0f,0xa4,0x5d,0x2c,0x02,0x06,0x00,0x0b,0xc0,0x07,0x68,0xd0,0x41,0xfd,0x38,0x07,0xf3,0xc2,0x00,0x0b,0xe0,0x27,0x74,0xf0,0xbb,0xd0,0x70,0x7e,0xdf,0x01,0xdb,0x80,0xbf,0x8b,0xb9,0x60,0x20,0x07,}; +const uint8_t _A_Level2Furippa_128x51_3[] = {0x01,0x00,0x6c,0x01,0x00,0x78,0x03,0xc0,0x03,0xf0,0xff,0xc1,0xc1,0xf9,0x1f,0x80,0x7f,0x01,0xd7,0xe0,0x80,0xc0,0x3d,0x02,0x0b,0x17,0x0c,0x06,0x29,0x1c,0x07,0xd0,0x2c,0x61,0xd0,0xab,0xe0,0x3e,0x85,0x63,0x70,0x82,0xf0,0x81,0xd3,0x80,0x1f,0x0e,0x82,0x07,0x81,0x02,0x08,0x01,0xf8,0x00,0x21,0xa8,0x60,0x62,0x10,0x30,0x7c,0x58,0x00,0x43,0xa8,0xa0,0x48,0x20,0xc0,0xf8,0x98,0x00,0x86,0xa9,0x20,0xa1,0x41,0x01,0xf1,0x18,0x01,0x0d,0xa2,0x21,0x84,0x86,0x7e,0x21,0xe0,0xf6,0x84,0x00,0x86,0x69,0x08,0x84,0x43,0x21,0xd7,0x80,0x7b,0x43,0x00,0x43,0x2a,0xc4,0x44,0x33,0xd0,0x32,0xb9,0x00,0x10,0x72,0x3f,0xf8,0xbc,0x12,0x03,0xf1,0x3b,0x88,0x3d,0xa0,0xc1,0x81,0x8f,0x41,0x38,0x45,0x51,0xfc,0x03,0xda,0x05,0x20,0xff,0x42,0x20,0x92,0x02,0x28,0xff,0xc1,0xed,0x03,0xc8,0x40,0x62,0x70,0x88,0xc0,0x94,0x6f,0xe0,0xf6,0x80,0xd2,0x20,0x12,0x48,0x84,0x1a,0x03,0xf0,0x9f,0x83,0xde,0x49,0x7c,0xa4,0x78,0x38,0x23,0xe1,0x8f,0xa4,0x1e,0x29,0xff,0xa8,0xc0,0x24,0x10,0x0f,0xe2,0x3d,0xe0,0x19,0x2f,0xfe,0x4d,0x48,0x5f,0xe7,0xb0,0x80,0x1b,0x15,0xff,0xd1,0xa1,0x0d,0xc3,0x1c,0xaf,0x9e,0x9c,0xc8,0x38,0x0f,0xfc,0x04,0x1f,0x49,0x21,0xe0,0x1f,0x9c,0x1e,0x5f,0xfd,0x3a,0x74,0x7c,0x07,0xe7,0x07,0xa3,0x4c,0x4f,0xd0,0x0f,0x42,0x58,0x9f,0xa6,0x81,0x8b,0xff,0xcb,0xc0,0xa2,0x7e,0x9d,0x06,0x4a,0x7e,0x3e,0x13,0xf5,0x54,0x22,0xa0,0xa3,0x3f,0x4e,0xa2,0x4c,0x79,0x23,0xf5,0x54,0x39,0xa0,0x42,0x3f,0x56,0xa3,0xb4,0x04,0x2f,0x07,0xfc,0x00,0x22,0x16,0xa8,0x5d,0x40,0x85,0xf0,0xc0,0x41,0xf0,0x04,0x16,0xd4,0x5a,0x80,0x85,0x78,0x70,0x8d,0x82,0x04,0x1f,0x6a,0xa8,0x10,0xa7,0xd0,0x0b,0x04,0x70,0x1e,0xda,0x08,0x54,0x02,0x21,0x80,0x4e,0x8f,0x02,0x06,0x0f,0x6a,0x04,0x14,0x36,0x3f,0x00,0x78,0x88,0x45,0x03,0x07,0xd2,0x2e,0x96,0x01,0x03,0x00,0x05,0xe0,0x03,0xb4,0x68,0x20,0xfe,0x9c,0x03,0xf9,0xe1,0x00,0x05,0xf0,0x13,0xba,0x78,0x5d,0xe8,0x38,0x3f,0x6f,0x80,0xed,0xc0,0x5f,0xc5,0xdc,0xb0,0x10,0x03,0x80,}; +const uint8_t *_A_Level2Furippa_128x51[] = {_A_Level2Furippa_128x51_0,_A_Level2Furippa_128x51_1,_A_Level2Furippa_128x51_2,_A_Level2Furippa_128x51_3}; + +const uint8_t _A_Level2HackActive_128x51_0[] = {0x01,0x00,0xdb,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xb8,0x08,0x3b,0x66,0x1f,0x4f,0x78,0x3f,0x38,0x1f,0xdf,0xfc,0x0c,0x1f,0x77,0x88,0x07,0x82,0x1e,0x0f,0xb0,0x61,0x46,0x01,0xd5,0x80,0x16,0x14,0xd0,0x7d,0x60,0xf1,0xff,0x5f,0xc1,0xf6,0x01,0x1f,0x78,0x3e,0xec,0x00,0x11,0x9f,0xf8,0x01,0xf9,0xb8,0x81,0x88,0xc4,0x01,0x3f,0x08,0x0f,0xb0,0xa6,0x2a,0x29,0xe0,0x7e,0x27,0xf3,0xe0,0x28,0xa4,0x13,0xf1,0xff,0x00,0x17,0xc2,0x7f,0xf0,0x8f,0x02,0x86,0x04,0x0e,0x2f,0xfc,0x1c,0x08,0x50,0x8f,0x85,0xff,0x80,0x14,0x18,0x0c,0x18,0x12,0x3f,0xe1,0x72,0x03,0xc7,0xff,0x00,0xf7,0xf8,0xe0,0x70,0x40,0x48,0x84,0x88,0x96,0x37,0xf8,0x47,0xe3,0x9f,0x00,0xfd,0x47,0xe0,0xf0,0xc0,0x58,0x84,0x84,0x7a,0x57,0xf8,0x80,0x3c,0x60,0x77,0x28,0xf4,0x1a,0x10,0x0f,0x1f,0x21,0x34,0xc1,0xe5,0xff,0xe7,0xff,0xe3,0xf0,0x66,0x81,0x03,0xc7,0xf8,0x10,0x29,0x80,0xfc,0x40,0x03,0x3f,0x86,0x03,0xcb,0x88,0x37,0x10,0x51,0x48,0x01,0xe3,0xfe,0xff,0xcf,0x21,0x91,0x00,0x79,0x0b,0xcf,0xff,0x60,0x12,0x0f,0x83,0xff,0x7c,0x07,0x9f,0x33,0xee,0x0f,0x3a,0x04,0x1a,0xf0,0x0f,0x13,0x28,0xcc,0x01,0xe3,0xc8,0x89,0xfc,0x38,0xe0,0xf1,0xe0,0xc0,0xbc,0x00,0xf3,0x90,0x03,0xc7,0x11,0xc1,0x83,0x92,0xcb,0x03,0x01,0xa0,0x70,0xc1,0xec,0x3f,0x40,0x78,0xc0,0x38,0xdf,0xfb,0x9c,0x30,0x1e,0x59,0x08,0x79,0xa8,0xc1,0xe5,0xf8,0xcf,0xdd,0xe0,0x80,0xf3,0x0f,0xa6,0x0d,0x8c,0x3e,0x0b,0xc5,0xf2,0x0e,0x0f,0x28,0x80,0x3d,0x60,0x50,0x3c,0x04,0x37,0x79,0x03,0xb0,0x03,0xcf,0x0e,0x0f,0x38,0x33,0x28,0xae,0x10,0x0a,0x00,0x10,0x64,0x17,0xf5,0xd0,0x83,0xca,0x0f,0x38,0x05,0x08,0x34,0x41,0xe6,0x2f,0x48,0x3c,0x3c,0x54,0x5c,0x00,0x09,0x03,0xc7,0xfd,0x1f,0x78,0x93,0xe4,0x70,0x10,0x30,0x69,0x07,0xce,0xfd,0xc0,0x0f,0x9c,0xfa,0x01,0x1c,0xc0,0x08,0x4c,0x1e,0x31,0xe7,0x49,0xc0,0x2d,0xd0,0x0f,0x87,0xc6,0x0e,0x0f,0x3a,0x03,0x9c,0x7f,0xf0,0xf0,0x30,0xfd,0x85,0xc3,0xff,0x0f,0xa5,0x01,0xd2,0x20,0xa1,0x16,0x0f,0xf0,0x08,0x40,0x01,0x19,0x10,0x3c,0x40,0xe5,0xfc,0xb3,0xfe,0x05,0x82,0x0f,0x60,0x31,0x08,0x46,0x61,0xf0,0x19,0x90,0x3d,0xe3,0x05,0x52,0xe0,0x03,0xdc,0x00,0x3f,0xe1,0x51,0x7f,0xe8,0x66,0x21,0x07,0xae,0x03,0xff,0xc3,0x2c,0x0e,0x02,0x03,0x8c,0xff,0xbc,0x44,0x3e,0xd4,0x04,0xd0,0x81,0xc5,0x88,0x25,0x03,0x07,0x9c,0x20,0x82,0x30,0x60,0x38,0xfc,0x16,0xa2,0x0f,0x68,0xc0,0x3c,0x57,0x83,0x01,0xf0,0x1b,0xdd,0xea,0x20,0xf1,0x30,0x0c,0x0f,0xf8,0x3e,0x30,0x7a,0x70,0x14,0x83,0x20,0x18,0x8a,0xb0,0x81,0xed,0x80,0xc1,0xc0,0x1f,0x63,0xec,0x86,0x83,0xe0,0xd8,0x42,0x11,0xbc,0x03,0x90,0x14,0x20,}; +const uint8_t _A_Level2HackActive_128x51_1[] = {0x01,0x00,0x21,0x02,0xff,0x7f,0xc0,0x0e,0x0f,0x58,0x08,0x66,0x01,0x2a,0x0f,0xf0,0x7d,0x82,0xce,0x13,0x02,0x01,0x8d,0x22,0x05,0x08,0x90,0x40,0x22,0x10,0x19,0x87,0xd3,0xde,0x0b,0x18,0xcc,0x0c,0x06,0x34,0x00,0x7a,0xf0,0x3f,0xbf,0xf0,0x60,0xea,0x66,0x56,0x6a,0x47,0xaa,0x1d,0xce,0xf0,0xc6,0x27,0x70,0x1b,0xc4,0x03,0xc1,0x0f,0x80,0x52,0x69,0x51,0x1a,0x45,0x2a,0x25,0x29,0x90,0xe9,0x43,0xe2,0x0c,0x18,0x04,0x60,0x7e,0x37,0xa9,0x10,0x3d,0x27,0xb1,0x1c,0x08,0xb0,0x70,0x08,0x41,0x84,0xc2,0xa8,0x80,0xf4,0x82,0xc4,0xb8,0x20,0xf1,0xf8,0x7f,0xe0,0x30,0x99,0x94,0xcf,0x61,0x49,0x89,0x0f,0xc7,0x31,0x11,0xe0,0x8b,0x87,0xff,0x60,0x3f,0xd5,0x84,0x5c,0x37,0xff,0x00,0x3f,0x38,0x11,0x9e,0x00,0x3e,0xa6,0x26,0xe1,0x83,0x60,0x20,0x20,0xf8,0xf0,0x12,0xc7,0x60,0x0c,0x18,0x1d,0xe6,0x05,0xa8,0x80,0x64,0x01,0xc5,0x04,0xf0,0x4f,0xe3,0xdd,0x8b,0xfc,0x02,0x05,0x89,0x80,0x62,0x01,0xeb,0xf0,0xbf,0xfe,0x2f,0x03,0xe1,0x83,0x62,0x66,0x5a,0x8b,0x26,0xe2,0xc7,0x70,0xe3,0x43,0x81,0xe3,0xe0,0x8e,0x8f,0x86,0x09,0x89,0xa5,0x6a,0x32,0x59,0x0c,0xa4,0x42,0x52,0x1f,0x1b,0x3c,0x03,0xcf,0x1f,0x81,0xc3,0x31,0x37,0xad,0x47,0xc7,0x21,0xf4,0x88,0x53,0xc1,0xe3,0xe7,0x3f,0x0c,0x79,0xd0,0x38,0x98,0x56,0xa2,0x25,0x90,0x8a,0x44,0x30,0x24,0xf1,0xff,0xf8,0xef,0xf1,0x08,0x34,0x62,0xf2,0x3f,0x2c,0x85,0x92,0x21,0x66,0x07,0x90,0x00,0x66,0xf0,0x48,0xc1,0xfe,0x19,0x62,0x00,0x19,0xfc,0x11,0xea,0x20,0xf7,0xfe,0x4f,0xff,0x1f,0xfb,0xf8,0x3e,0xa0,0xd7,0x81,0x88,0xdc,0xe0,0x93,0x0f,0xf0,0x98,0x80,0x07,0xe3,0x81,0xf8,0x01,0xe5,0x06,0x90,0x06,0x07,0x11,0xc1,0x83,0x8e,0xca,0x4b,0x01,0xa0,0x78,0xc5,0xe3,0x02,0x07,0x98,0x7d,0x35,0x2b,0xb1,0xe7,0x03,0xd7,0x21,0x0f,0x2d,0x1c,0xc5,0xbc,0x24,0xf2,0x81,0x83,0xcc,0x3e,0x92,0x3f,0xe4,0x1f,0xc0,0x10,0x18,0x08,0x3c,0xa2,0x00,0xf4,0x81,0xfe,0x21,0xf8,0x08,0x6f,0xf2,0x01,0x60,0x07,0x9e,0x1c,0x1e,0x7f,0x09,0xf8,0x28,0x6e,0x10,0x0a,0x00,0x10,0x64,0x0f,0x81,0x07,0x9f,0x00,0xa0,0x20,0xd2,0x0f,0x94,0x80,0x5e,0x87,0x32,0x05,0x0f,0x02,0x01,0xe0,0x07,0x97,0xfa,0x3f,0x00,0x07,0x97,0xf0,0x44,0x20,0xf2,0x00,0x88,0x3c,0x6f,0xdc,0x00,0xf9,0xcf,0xa0,0x10,0x7c,0x00,0x84,0xc1,0xe3,0x1e,0x6c,0x9c,0x03,0xcd,0x0f,0xfe,0x7c,0x01,0xe9,0x40,0x61,0x14,0x3d,0x9e,0x40,0x51,0x1b,0x88,0x3d,0x07,0x27,0x00,0x8e,0x47,0x08,0x82,0xeb,0x21,0x91,0x03,0xc5,0xfa,0x76,0x79,0xc3,0xd5,0x01,0xe6,0x06,0x21,0x08,0xcc,0x07,0x84,0x0f,0x88,0xc1,0x54,0xb8,0x03,0x42,0x07,0xa0,0x00,0x7f,0xd0,0x71,0x09,0x50,0xd5,0xe4,0x0f,0x4c,0x07,0xff,0x86,0x9a,0x1c,0x04,0x07,0x18,0x4e,0x30,0xfa,0xd0,0x30,0x10,0x30,0x38,0xfe,0x0d,0xa4,0x0f,0x58,0x41,0x04,0x60,0xc0,0x71,0xf8,0x0f,0xe2,0x30,0x0f,0x18,0x60,0xbc,0x7c,0x02,0xe3,0x07,0xa5,0xc0,0x1e,0x26,0x01,0x7f,0x88,0x3e,0x38,0x0a,0x41,0x90,0x0c,0x47,0xf0,0x7f,0x70,0x18,0xe0,0xe0,0x16,0x08,0x04,0xb1,0x4a,0x65,0xf6,0x1e,0x08,0x84,0x66,0x17,0xe0,0x7a,0x80,}; +const uint8_t *_A_Level2HackActive_128x51[] = {_A_Level2HackActive_128x51_0,_A_Level2HackActive_128x51_1}; + +const uint8_t _A_Level2Hack_128x51_0[] = {0x01,0x00,0xb3,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0b,0x9f,0x03,0xb7,0xe1,0xc7,0x81,0x83,0xf3,0xb9,0xe0,0x8e,0x83,0xf2,0x3d,0x00,0xb3,0x03,0xf2,0xff,0x00,0xc8,0x40,0x41,0xd5,0x80,0x1f,0x14,0x08,0x1f,0x5c,0x08,0x04,0x3b,0x01,0x04,0x07,0xd5,0x82,0x01,0x18,0x80,0x43,0xc1,0x29,0xf8,0xff,0x80,0x0a,0x01,0x70,0x80,0x4c,0x20,0x10,0xc0,0x71,0xff,0xe0,0xe0,0x42,0x84,0x40,0x27,0x02,0x12,0x8e,0x02,0x4b,0xfc,0x23,0x40,0x78,0x8b,0x44,0x82,0x20,0x31,0x00,0x0c,0x19,0x34,0x77,0xf0,0x78,0x86,0xc7,0x00,0x31,0x20,0x00,0x94,0xc4,0x7a,0x57,0xf8,0x80,0xec,0xb0,0x10,0x11,0x88,0x80,0x07,0xc8,0x4d,0x30,0x78,0xc3,0x07,0x65,0x01,0xa0,0x03,0xdf,0xff,0x30,0xfc,0x47,0xc1,0x43,0x03,0x20,0x88,0x00,0x78,0x9f,0xf8,0x79,0xc0,0xa4,0x00,0xf3,0x81,0x10,0x44,0x1e,0x50,0x0f,0x00,0x7c,0xac,0x1f,0x00,0x7a,0x30,0x0b,0x98,0x2f,0x4a,0x00,0x3c,0xcd,0x42,0x0f,0x2e,0x44,0xdf,0xe0,0x0f,0x2e,0x08,0x3c,0xcd,0x42,0xd2,0x18,0x06,0x23,0x0e,0x1f,0x3c,0x0f,0x80,0x1e,0x50,0xcf,0xc3,0x80,0xb1,0x02,0xf4,0xc0,0xff,0x41,0xe5,0x08,0xfc,0x07,0xcb,0x21,0x07,0x27,0x9e,0x06,0x0f,0x0e,0x07,0x94,0x21,0x94,0x59,0x00,0xfa,0x70,0xe0,0x21,0xf2,0x8c,0x43,0x1c,0x05,0x10,0x06,0x0f,0xc4,0x04,0x34,0x3c,0x04,0x84,0x14,0x50,0x45,0x21,0x44,0x2f,0xee,0x21,0x07,0x8c,0x8d,0xda,0x4d,0x61,0x83,0xb4,0x0a,0x41,0x9f,0x17,0x9d,0xce,0x00,0xbb,0x20,0xf8,0x85,0x0a,0x40,0x3f,0x4d,0x3a,0x24,0x87,0xe3,0x04,0xf8,0x03,0xcb,0x7d,0x3f,0x17,0x94,0x9e,0x3c,0x0f,0x28,0x44,0x11,0xa0,0x52,0x09,0xf6,0x00,0x3e,0x52,0x71,0xc9,0x1b,0xc8,0x1e,0x61,0xd2,0xff,0xcf,0xe8,0x03,0x92,0x07,0x8c,0x31,0xc0,0x54,0x00,0x79,0x43,0xe0,0x18,0x0e,0x02,0x68,0x85,0xe2,0x14,0x2a,0x07,0xf3,0xfe,0x0a,0x2c,0xe1,0x3c,0xc1,0xec,0x04,0x2f,0xe4,0x1c,0x26,0x40,0xf6,0x01,0x90,0x84,0x5d,0xc6,0x3f,0x20,0x7a,0xfe,0x14,0x43,0x10,0x2f,0xa8,0x10,0x80,0x03,0xfe,0x93,0xf0,0x20,0x33,0x01,0x31,0xc3,0x01,0xe6,0x7d,0x18,0x1c,0x82,0x01,0x03,0xb0,0x1b,0xce,0x08,0x1f,0x54,0x10,0xc0,0x20,0xdc,0x00,0x7c,0x81,0x04,0x1e,0x28,0x81,0xa0,0x8f,0xe2,0x30,0xea,0x28,0x84,0x03,0xc4,0x09,0x2b,0xc0,0x3d,0x2e,0x06,0x22,0x2e,0x8c,0xf0,0x12,0x5c,0x08,0xb8,0x3c,0xd8,0x62,0x01,0x11,0x08,0x9f,0xcc,0x4c,0x46,0x03,0x81,0xe0,0x20,0x3c,0x0f,0x02,0x7c,0xc7,0x44,0x00,0x50,0x88,0xf8,0x40,0xe8,0x3f,0x10,}; +const uint8_t _A_Level2Hack_128x51_1[] = {0x01,0x00,0xbc,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0xf0,0x07,0x80,0x3c,0x01,0xe0,0x0b,0x9f,0x03,0xb7,0xe1,0xc7,0x81,0x83,0xf3,0xb9,0xe0,0x8e,0x83,0xf2,0x3d,0x00,0xb3,0x03,0xf2,0xff,0x00,0xc8,0x40,0x41,0xd5,0x80,0x1f,0x14,0x08,0x1f,0x5c,0x08,0x04,0x3b,0x01,0x04,0x07,0xd5,0x82,0x01,0x18,0x80,0x43,0xc1,0x29,0xf8,0xff,0x80,0x0a,0x01,0x70,0x80,0x4c,0x20,0x10,0xc0,0x71,0xff,0xe0,0xe0,0x42,0x84,0x40,0x27,0x02,0x12,0x8e,0x02,0x4b,0xfc,0x23,0x40,0x78,0x8b,0x44,0x82,0x20,0x31,0x00,0x0c,0x19,0x34,0x77,0xf0,0x78,0x86,0xc7,0x00,0x31,0x20,0x00,0x94,0xc4,0x7a,0x57,0xf8,0x80,0xec,0xb0,0x10,0x11,0x88,0x80,0x07,0xc8,0x4d,0x30,0x78,0xc3,0x07,0x65,0x01,0xa0,0x03,0xd3,0xf8,0x10,0x29,0x87,0xe2,0x3e,0x0a,0x18,0x19,0x04,0x40,0x03,0xc4,0x80,0x7e,0x81,0xe5,0x20,0x07,0x9c,0x08,0x82,0x20,0xf2,0x17,0x9f,0xfe,0xc1,0xf0,0x07,0xa3,0x00,0xb9,0x9f,0x70,0x79,0xd0,0x01,0xe6,0x6a,0x10,0x79,0x72,0x22,0x7f,0x0e,0x38,0x3c,0x78,0x20,0xf3,0x35,0x0b,0x48,0x60,0x18,0x8e,0x0c,0x1f,0xe0,0x0f,0x1c,0x0f,0x80,0x1e,0x50,0xcf,0xc3,0x80,0xb1,0x03,0xf4,0xc0,0xff,0x41,0xe5,0x08,0xfc,0x07,0xcb,0x21,0x0f,0x0f,0x10,0x3c,0x60,0xf0,0xe0,0x79,0x42,0x19,0x45,0x90,0x0f,0xa7,0x0e,0x02,0x1f,0x28,0xc4,0x31,0xc0,0x51,0x00,0x7a,0x50,0xf0,0x12,0x10,0x51,0x41,0x14,0x84,0x0f,0x1c,0x38,0x3c,0xa4,0x6e,0xd2,0x6b,0x0c,0x1d,0xa0,0x52,0x0b,0xff,0xe0,0x1e,0x57,0x38,0x02,0xec,0x83,0xe2,0x14,0x29,0x00,0xbd,0x34,0xe8,0x92,0x1f,0x8c,0x13,0xe0,0x0f,0x2f,0xf1,0x24,0x41,0xe3,0x27,0x8f,0x03,0xca,0x11,0x04,0x68,0x14,0x82,0xfd,0xc0,0x0f,0x94,0x9c,0x72,0x46,0xf2,0x07,0x9c,0x78,0x1c,0x53,0xfa,0x00,0xe4,0x81,0xe3,0x0c,0x70,0x15,0x03,0xfc,0x0e,0x18,0x7c,0x03,0x01,0xc0,0x4d,0x10,0xbc,0x42,0x85,0x40,0xfe,0x7f,0xc1,0x45,0x9c,0x27,0x98,0x3d,0x80,0x85,0xfc,0x83,0x84,0xc8,0x1e,0xc0,0x32,0x10,0x8b,0xb8,0xc7,0xe4,0x0f,0x58,0xc0,0x18,0x8b,0xea,0x04,0x20,0x00,0xff,0x9a,0xa5,0xff,0xa0,0x82,0x0a,0x18,0x0f,0x3c,0x03,0x6c,0x7f,0xe0,0x41,0x80,0xd9,0xc1,0x45,0x04,0x0f,0xad,0x03,0x01,0x03,0x3b,0x8d,0xe0,0x1f,0x10,0x82,0x08,0xc1,0x81,0xe3,0x70,0x1f,0xc4,0x60,0x1e,0x29,0x71,0x80,0xf8,0x01,0x25,0x78,0x07,0xa5,0xc0,0x1e,0x26,0x01,0x81,0xcf,0x01,0x25,0xc0,0x8b,0x83,0xcf,0x80,0xc4,0x19,0x00,0xc4,0x4f,0xe7,0x00,0x88,0x01,0x0f,0x01,0x83,0x80,0x33,0x07,0xd8,0x9f,0x34,0x42,0x04,0x0a,0x02,0x21,0x1f,0x80,0x25,0x07,0xe2,}; +const uint8_t *_A_Level2Hack_128x51[] = {_A_Level2Hack_128x51_0,_A_Level2Hack_128x51_1}; + +const uint8_t _A_Level2SolderingActive_128x51_0[] = {0x01,0x00,0xe8,0x01,0x00,0x78,0x01,0xfc,0x13,0xf0,0x7e,0xcf,0x2e,0x80,0xfd,0x8d,0xe3,0x20,0x60,0xeb,0xe0,0x42,0x21,0x10,0x20,0x7d,0xcc,0x01,0xe3,0x04,0x07,0xdc,0xe2,0x19,0x08,0x86,0x03,0xec,0x3a,0x31,0x08,0xc0,0x3e,0xe1,0x80,0xf1,0x98,0x02,0xde,0xf8,0x03,0x28,0x20,0x3c,0x64,0x00,0xf7,0xa3,0x00,0xca,0x0c,0x0f,0x1b,0x00,0x3d,0xfc,0x70,0x10,0x18,0xc0,0x81,0xf3,0x80,0x88,0x9e,0x4b,0xc5,0x04,0x98,0x5b,0xc1,0xef,0x10,0x07,0x94,0x4b,0xeb,0xaf,0xa8,0x26,0x9e,0x21,0x06,0x02,0x0f,0xaa,0x3f,0x70,0xef,0x83,0xda,0x81,0x20,0x4c,0x94,0x56,0x0d,0xe0,0xf4,0x03,0xef,0x9b,0x23,0xa4,0xef,0x81,0xef,0x60,0x54,0x97,0xb6,0x4f,0x49,0xdd,0x99,0x88,0x1e,0x94,0x08,0x40,0x3d,0x37,0xe0,0xf6,0xb0,0x78,0x21,0xe0,0x41,0xb6,0xc0,0xe8,0x13,0xf0,0x7b,0x48,0x23,0x0c,0x92,0xf6,0xfc,0xf8,0xf3,0xe0,0x7b,0xc3,0x17,0x25,0xd9,0x8d,0xe3,0x23,0xe0,0xf7,0x82,0x2a,0x4a,0xf3,0x06,0xfc,0x48,0x41,0xf1,0x40,0x02,0x0c,0x44,0x10,0x40,0xf6,0x98,0x40,0xb0,0x00,0xb5,0x07,0xb2,0xf8,0x41,0xed,0x03,0x06,0x9f,0xfe,0x7e,0x0f,0x5f,0x00,0x44,0x41,0xe3,0xf8,0x09,0x15,0x02,0x21,0x82,0x1f,0x96,0x06,0x61,0x07,0x81,0x83,0x06,0x08,0xb9,0x20,0x78,0xc0,0xa8,0x20,0xf2,0x86,0x63,0x20,0x2f,0x61,0xfd,0x42,0xc1,0xe5,0x18,0x83,0x59,0xe0,0x18,0x08,0x0c,0x0f,0xf1,0x00,0x07,0x8c,0x0d,0x72,0x3e,0xea,0x74,0x22,0x09,0xfc,0x07,0x91,0x28,0x88,0xe2,0x0f,0x2d,0x45,0x28,0x1e,0x3b,0x08,0x19,0x44,0x80,0x03,0x04,0xc0,0x40,0x81,0xe3,0xac,0x07,0x8c,0x32,0x61,0x0e,0xe0,0x03,0xce,0x11,0xc0,0xa1,0x42,0xa0,0x1a,0x2a,0x54,0x32,0x11,0x60,0x98,0x5c,0x20,0x1f,0x08,0x38,0x3c,0x6e,0x16,0x28,0x70,0xfc,0xa0,0x91,0x8b,0x07,0x02,0x3e,0x37,0x10,0xd0,0xc2,0x27,0x16,0x22,0xf9,0xc1,0x26,0x1e,0x01,0x61,0x54,0x20,0xaa,0x81,0x8e,0x7c,0x81,0xe7,0x06,0x0f,0x08,0x3c,0xb4,0x06,0xd1,0xc8,0x41,0x7f,0x50,0x90,0x79,0x40,0xb8,0x1c,0x06,0x4a,0xfc,0x20,0x7f,0xe2,0xf8,0xc6,0x29,0xe7,0x61,0xc1,0xb2,0x50,0x5e,0x30,0x1f,0xf0,0x7c,0x62,0x94,0x90,0xe0,0xff,0x27,0xe1,0xf5,0x58,0x8c,0x32,0x01,0x1c,0xe4,0xc0,0x52,0xc3,0xc3,0x10,0x26,0xc1,0x42,0x26,0xf1,0x80,0x73,0xe0,0x17,0x88,0x04,0x1a,0x38,0x2f,0x58,0x14,0x3c,0x9e,0x5f,0xf8,0x3c,0x32,0x1d,0xe0,0xff,0x80,0x0a,0x1f,0xfe,0xe1,0x81,0x06,0x01,0xc0,0xf8,0x09,0x06,0x19,0x1c,0xff,0x18,0x8a,0x11,0x02,0xff,0x07,0xcb,0x81,0x0c,0xff,0x60,0xdd,0x03,0xff,0x20,0x90,0x3d,0x68,0x10,0xcc,0x84,0x6b,0xc1,0x1c,0x1a,0x08,0x3e,0x2e,0x08,0x71,0x8e,0x7c,0x01,0xeb,0xfc,0x02,0x8f,0xfe,0x7f,0x80,0x38,0x12,0x08,0x5d,0xe7,0x02,0xfc,0x1d,0xd2,0x1d,0x60,0x47,0x20,0x3c,0x80,0xeb,0x70,0x3e,0xa2,0x7c,0xc0,0xea,0x2e,0x20,0x04,0x80,}; +const uint8_t _A_Level2SolderingActive_128x51_1[] = {0x01,0x00,0x02,0x02,0x00,0x3c,0x7a,0x01,0x06,0x07,0xe5,0xfe,0x01,0x78,0x07,0x5e,0x02,0x03,0x01,0xc2,0x03,0xef,0x81,0x00,0x87,0x40,0xe0,0x20,0xfa,0xb0,0x40,0x33,0x10,0x18,0x18,0x3e,0xa4,0x10,0x0b,0x85,0x80,0xa1,0x73,0x00,0x78,0xe2,0x20,0x80,0xfa,0x88,0x04,0x46,0x20,0x0f,0xd8,0xc4,0x87,0xf8,0x50,0xa8,0xc6,0x02,0x3f,0x02,0x30,0x88,0x2d,0x63,0xe0,0x32,0x86,0x50,0x23,0x10,0x48,0x1e,0x6d,0x14,0xb1,0x10,0x21,0x41,0x24,0x12,0x0e,0x04,0x06,0x1c,0x30,0x4e,0x02,0xa0,0xe0,0x91,0x09,0x05,0x83,0x01,0x27,0x81,0x22,0x91,0x50,0x70,0x68,0x85,0x72,0x61,0xc0,0x9f,0xe1,0x08,0x27,0x20,0x07,0x9c,0x0a,0x11,0x7e,0x8c,0x58,0x21,0x3f,0xd4,0x91,0xcc,0x30,0x83,0x62,0x07,0x94,0x32,0x61,0x0f,0x8b,0x47,0x0f,0x47,0x08,0x07,0x94,0x0e,0x11,0xff,0x83,0xc6,0x29,0xf2,0x64,0x30,0x83,0xda,0x03,0x90,0x87,0xc0,0x23,0x9c,0x7a,0x30,0x3d,0x23,0x04,0x52,0x80,0xec,0x00,0x83,0x06,0xe1,0xf1,0xc1,0xe9,0x10,0x33,0x14,0x06,0x41,0x03,0xc0,0x60,0xf0,0xbd,0x74,0x51,0xc6,0x3f,0x01,0xf3,0x46,0x8f,0x83,0x01,0x88,0xef,0xc4,0xc1,0xe5,0x08,0x83,0x19,0x4a,0x03,0x80,0x22,0x0f,0x03,0x21,0xc7,0x8b,0x83,0xcc,0xb6,0x20,0xf2,0x4c,0x1e,0x83,0x8e,0xca,0x32,0xf0,0xc6,0x01,0xea,0xa0,0x1f,0x08,0x3d,0x66,0x0d,0x31,0x07,0x9b,0xcc,0x7c,0x12,0xf0,0x31,0x63,0x16,0x22,0x0f,0x16,0x41,0xc3,0x20,0x1e,0x10,0x78,0xff,0xd8,0x82,0x28,0x10,0x7a,0x95,0x87,0xe5,0x37,0x02,0x8d,0x00,0x1e,0x28,0x51,0x07,0x9e,0x02,0x0e,0x1c,0x13,0x79,0x03,0xc6,0x40,0xc5,0x1e,0x00,0x3c,0xb8,0x10,0x7f,0x07,0xe5,0x1e,0x40,0xf1,0xa0,0x47,0xa0,0x17,0x00,0x79,0x78,0x21,0xf3,0x8b,0x80,0xa4,0x7d,0xd4,0xec,0x37,0x06,0xf2,0x41,0x20,0x00,0xfe,0x3f,0xed,0x21,0x44,0x8e,0xa2,0x95,0x02,0x80,0xf7,0xe0,0x25,0xa1,0x00,0x0f,0xf3,0xfe,0x7b,0x28,0x06,0xb0,0x1e,0x50,0xcc,0x39,0x28,0x41,0xe4,0x1e,0x13,0x91,0x68,0x81,0xe3,0x03,0x86,0x34,0x4d,0x5c,0x2b,0xc2,0x39,0x08,0xfc,0x60,0x70,0x28,0xc7,0xc1,0x5c,0x91,0xb0,0x18,0xbe,0x4a,0x81,0x01,0x83,0x46,0x0a,0xc2,0x00,0x61,0x39,0x03,0xc6,0x19,0x38,0x07,0x3b,0x18,0xf8,0x0d,0xe1,0x36,0x98,0x00,0x86,0xa2,0x96,0x28,0xc7,0x3c,0x70,0x3f,0x02,0x71,0x80,0x06,0x21,0x01,0x4b,0x14,0x53,0x92,0x98,0x1b,0xe4,0xf0,0x3e,0xd1,0x80,0x20,0xc7,0x29,0x23,0x51,0xb1,0xf0,0x04,0x09,0xa0,0x3f,0x10,0x00,0x69,0xf0,0x0b,0xc0,0xd8,0x5a,0x22,0x2f,0x43,0xf0,0x97,0xcb,0xff,0x07,0xe6,0x40,0x7c,0x1f,0xf0,0x01,0x43,0xff,0xdf,0xf5,0x99,0x70,0x3e,0x10,0xec,0x04,0x0e,0x39,0xfe,0x34,0x94,0x21,0x1a,0x46,0xf2,0x86,0x7f,0xb0,0x70,0x38,0x1f,0xfc,0x82,0x40,0xf5,0xa0,0x43,0x32,0x11,0xaf,0x04,0x40,0x68,0x20,0xf8,0xb8,0x1f,0x86,0x39,0xee,0x07,0xc7,0xfe,0x7e,0xa4,0x11,0xf8,0xbb,0x04,0x14,0x41,0xf5,0x00,0x0c,0x3a,0xc0,0x07,0x50,0x7b,0xdc,0x0f,0xa8,0x9f,0x36,0xab,0x2f,0x94,0x00,0xa0,}; +const uint8_t *_A_Level2SolderingActive_128x51[] = {_A_Level2SolderingActive_128x51_0,_A_Level2SolderingActive_128x51_1}; + +const uint8_t _A_Level2Soldering_128x51_0[] = {0x01,0x00,0xf4,0x01,0x00,0x3c,0xf8,0x1d,0xbf,0x0f,0x18,0x3f,0x63,0x99,0xc8,0x18,0x3f,0x20,0xd0,0x78,0x30,0x3f,0x38,0x70,0x08,0x60,0x3a,0xf0,0x16,0x18,0x04,0x40,0x1f,0x7c,0x09,0x84,0x00,0x02,0x20,0x0a,0xb0,0x07,0x46,0xc0,0x0f,0xb9,0x04,0x62,0x01,0x40,0x07,0xdc,0xc2,0x10,0x32,0x10,0x64,0x47,0xc0,0x43,0x10,0x07,0x8e,0x00,0xb7,0x11,0x10,0x18,0xc6,0x21,0x97,0xc0,0x7c,0x70,0x2f,0x00,0x31,0xf4,0x41,0x70,0xd8,0x08,0x09,0x6d,0xf0,0x81,0xf2,0x87,0x40,0x60,0x2b,0x07,0x90,0x03,0xca,0x11,0xb0,0xbe,0x40,0x60,0x45,0xb7,0xc2,0x0a,0x46,0x09,0xc0,0xe3,0x40,0x81,0xee,0x5b,0x10,0x78,0xc0,0xb0,0x19,0xe8,0x13,0x41,0xc1,0xe7,0x42,0xc1,0x6c,0xa0,0x50,0x40,0x7b,0xc6,0x09,0x23,0xca,0xc1,0x6f,0x81,0xf3,0x10,0x1c,0x8e,0x6b,0x08,0x0f,0x17,0x83,0xc6,0x3f,0x01,0xf1,0xc9,0x60,0x3f,0xd0,0x35,0x10,0x80,0x16,0x11,0x06,0x24,0x88,0x84,0x63,0xf0,0x20,0x7c,0x06,0x4a,0x09,0x80,0x87,0x81,0xc4,0x1e,0xf0,0x17,0x60,0xc1,0x3f,0xc0,0xd1,0x07,0xcc,0xc2,0x00,0x42,0x20,0x7c,0x63,0x16,0x22,0x0b,0x28,0x80,0x3d,0xbf,0xf3,0xf5,0xf0,0x87,0xc4,0xd6,0x20,0xf4,0x13,0x1d,0x00,0x1e,0x20,0xb1,0x30,0x88,0x34,0x48,0xa2,0x46,0x14,0x99,0x03,0xc6,0x41,0x1c,0x37,0x90,0x24,0x42,0xa3,0x00,0xfd,0x42,0xc1,0xe7,0x40,0x8f,0x40,0x04,0xe2,0x01,0x10,0x79,0x20,0xcb,0xdd,0x4e,0xc3,0x70,0x6f,0x30,0x08,0x0e,0x00,0xa6,0x20,0xf5,0xd4,0x52,0xa0,0x50,0x1e,0xfc,0x06,0x03,0x60,0x29,0x88,0x3d,0x75,0x80,0xf2,0x86,0x41,0xd2,0x42,0x43,0x10,0x88,0xbd,0x86,0x15,0x00,0xd1,0x03,0xc6,0x07,0x0c,0x8c,0x46,0x60,0xd0,0x74,0x29,0x40,0x2c,0x50,0xe1,0xf9,0x40,0xe0,0x51,0x8f,0x07,0x9f,0xc3,0x01,0x07,0xa1,0x7c,0xe0,0x30,0x63,0xc8,0xc0,0xa7,0x00,0x81,0x07,0x97,0xc8,0x1e,0x90,0xc0,0x60,0xff,0x1b,0xc3,0x00,0xb0,0x1f,0xca,0x12,0x03,0x1e,0x01,0x2c,0x49,0x24,0x00,0x2a,0x07,0xc2,0x02,0xe5,0x28,0xc7,0x3c,0xb0,0x3f,0x04,0x60,0xde,0x14,0x03,0x40,0x88,0x03,0xc4,0x3e,0x31,0x4e,0x4c,0x03,0xc1,0x7c,0x9e,0x0c,0x07,0xff,0x03,0x0f,0x94,0x09,0xae,0x31,0xca,0x4c,0x03,0x01,0x63,0xe0,0x40,0xd6,0x42,0x2f,0x1d,0x01,0x58,0x4d,0xe3,0x00,0xa7,0x8a,0xc7,0x80,0x15,0x17,0x00,0x92,0x04,0x5e,0x30,0x22,0xb1,0x50,0x3f,0xf0,0x7e,0x64,0x07,0xc0,0x8e,0x10,0x78,0xc3,0xff,0xdc,0x3f,0xff,0xfc,0x0c,0x3f,0x08,0x76,0x02,0x07,0x1c,0x07,0x95,0x02,0x11,0x02,0xff,0x07,0xcb,0x81,0x0c,0xff,0x60,0xe0,0x7c,0x38,0xf9,0xfc,0x81,0xeb,0x40,0x86,0x64,0x23,0x5e,0x0b,0x80,0x9c,0x5b,0xe2,0x0f,0x6b,0x81,0xf8,0x63,0x91,0xec,0x00,0x80,0x63,0xe0,0xf1,0xfe,0x0d,0x87,0xff,0x3f,0xc0,0x40,0x47,0xe2,0x16,0x1f,0x87,0xf6,0x02,0x0f,0x1f,0xc0,0x20,0x80,0x03,0x0e,0x5c,0x90,0x00,0xc1,0xe2,0x07,0x5b,0x84,0x70,0x0e,0xa9,0xf1,0x03,0xa8,0xb8,0xc0,0x10,}; +const uint8_t _A_Level2Soldering_128x51_1[] = {0x01,0x00,0x00,0x02,0x00,0x3c,0xf8,0x1d,0xbf,0x0f,0x18,0x3f,0x63,0x99,0xc8,0x18,0x3f,0x20,0xd0,0x78,0x30,0x3f,0x38,0x70,0x08,0x60,0x3a,0xf0,0x16,0x18,0x04,0x40,0x1f,0x7c,0x09,0x84,0x00,0x02,0x20,0x0a,0xb0,0x07,0x46,0xc0,0x0f,0xb9,0x04,0x62,0x01,0x40,0x06,0x45,0xf0,0x04,0x33,0x08,0x40,0xc8,0x41,0xf1,0x46,0x01,0x0c,0x40,0x1e,0x38,0x00,0x7c,0x78,0xe0,0x30,0x08,0xc4,0x32,0xf8,0x0f,0x8c,0x04,0x46,0x05,0x00,0xf4,0x41,0x70,0xd8,0x00,0xa8,0x83,0xda,0x20,0x0f,0x18,0xc4,0x3a,0x03,0x01,0x58,0x3f,0x02,0x20,0xaa,0x18,0x46,0xc2,0xf9,0x01,0x0a,0x88,0x01,0x68,0x12,0x08,0x24,0x02,0x09,0xc0,0xe3,0x40,0x81,0xf7,0x02,0xc0,0x67,0xa0,0x4d,0x07,0xa0,0x58,0x19,0x43,0x42,0xc1,0x6c,0xa0,0x41,0x51,0x07,0xb5,0x00,0xf8,0x3c,0xac,0x16,0xf8,0x1f,0x16,0x0f,0x04,0x3e,0x01,0x9a,0xc2,0x03,0xc5,0xe0,0xeb,0xb1,0x5e,0x0e,0x4b,0x01,0xfe,0x81,0x89,0x44,0x1e,0xd0,0xc9,0x01,0x3c,0x60,0x11,0xf8,0x10,0x3e,0x20,0x8e,0xa1,0x82,0x60,0x06,0x62,0x0f,0x97,0x50,0xc1,0x3f,0xc0,0xd1,0x07,0xbc,0xc0,0xf8,0x30,0x0f,0xc2,0xb0,0x81,0xee,0xbe,0x10,0x78,0x82,0xc6,0x20,0x0f,0x6f,0xfc,0xfc,0x1e,0x66,0xb1,0x07,0xa0,0x98,0xe8,0x11,0x0c,0x10,0xfc,0x5a,0x24,0xe3,0x10,0x58,0xc1,0x12,0x64,0x0f,0x18,0x15,0x04,0xde,0x40,0x91,0x10,0x8c,0x03,0xf5,0x0b,0x07,0x94,0x62,0x0d,0x67,0x80,0x09,0xc4,0x02,0x20,0xf2,0x41,0x97,0xba,0x9d,0x08,0x82,0x7f,0x20,0x10,0x1c,0x02,0x4c,0x41,0xeb,0xa8,0xa5,0x03,0xc7,0x61,0x03,0x80,0xd8,0x26,0x00,0xf6,0xd6,0x03,0xc6,0x19,0x30,0x87,0x40,0x63,0x11,0xc4,0x38,0x83,0xc6,0x85,0x0a,0x80,0x68,0xa9,0x50,0xc8,0x40,0x70,0x63,0x30,0x68,0x3a,0x9c,0x41,0xe3,0x62,0x87,0x0f,0xca,0x09,0x18,0xb0,0x70,0x3c,0xfe,0x18,0x08,0x3d,0x0b,0xe7,0x04,0x98,0x78,0x07,0x03,0x38,0x63,0x90,0x08,0x7e,0x40,0xf3,0x83,0x07,0x86,0x01,0xfc,0x6f,0x0c,0x01,0xca,0x27,0xf1,0x84,0x83,0xca,0x05,0xc0,0xe0,0x0b,0x04,0x00,0x54,0x0f,0x84,0x05,0xca,0x51,0x8a,0x7a,0xf8,0x70,0x68,0xc1,0xbc,0x28,0x05,0x50,0x20,0xf1,0x0f,0x8c,0x52,0x92,0x1c,0x1f,0xe4,0xfc,0x04,0x3f,0xf8,0x18,0x7c,0xa0,0x4d,0x71,0x8e,0x72,0x53,0x63,0x03,0xe1,0xc0,0xe3,0xc2,0xf2,0xd0,0x15,0x84,0xde,0x30,0x0e,0x78,0xac,0xa0,0xd1,0xc7,0x00,0xc0,0x38,0x02,0xf1,0x81,0x15,0x8a,0x81,0xff,0x83,0xc3,0x21,0xde,0x04,0x70,0x83,0xc6,0x1f,0xfe,0xe1,0xff,0xff,0xe0,0x61,0xf8,0x09,0x06,0x19,0x1c,0x07,0x95,0x02,0x11,0x02,0xff,0x07,0xcb,0x81,0x0c,0xff,0x60,0xe0,0x1c,0x38,0xf9,0xfc,0x81,0xeb,0x40,0x86,0x64,0x23,0x5e,0x0b,0x80,0x9c,0x5b,0xe2,0x0f,0x6b,0x87,0xc2,0x07,0x1c,0x8f,0x60,0x04,0x03,0x1f,0x07,0x8f,0xf0,0x6c,0x3f,0xf9,0xfe,0x00,0xe0,0x41,0x61,0xf8,0x7f,0x60,0x20,0xf1,0xfc,0x02,0x08,0x00,0x30,0xe5,0xc9,0x00,0x0c,0x1e,0x20,0x75,0xb8,0x47,0x00,0xea,0x9f,0x10,0x3a,0x8b,0x8c,0x01,0x00,}; +const uint8_t _A_Level2Soldering_128x51_2[] = {0x01,0x00,0xef,0x01,0x00,0x3c,0xf8,0x1d,0xbf,0x0f,0x18,0x3f,0x63,0x99,0xc8,0x18,0x3f,0x20,0xd0,0x78,0x30,0x3f,0x38,0x70,0x08,0x60,0x3a,0xf0,0x16,0x18,0x04,0x40,0x1f,0x7c,0x09,0x84,0x00,0x02,0x20,0x0a,0xb0,0x07,0x46,0xc0,0x0f,0xb9,0x04,0x62,0x01,0x40,0x07,0xdc,0xc2,0x10,0x32,0x10,0x7d,0xc4,0x01,0xe3,0x80,0x07,0xdc,0x62,0x19,0x7c,0x07,0xd5,0xf2,0x01,0xe8,0x82,0xe1,0xb0,0x10,0x10,0x7c,0x51,0x83,0xe3,0x0e,0x80,0xc0,0x56,0x13,0xe3,0x80,0xc2,0x36,0x17,0xc8,0x0c,0x08,0x1f,0x11,0x18,0x14,0x13,0x81,0xc6,0x81,0x03,0xe3,0x01,0x10,0x05,0x8e,0x03,0x3d,0x02,0x68,0x47,0x02,0x21,0x06,0xa1,0x60,0xb6,0x42,0x31,0x07,0xbd,0x02,0x41,0x04,0xe5,0x60,0xb7,0xc0,0xf9,0xb0,0x03,0xc7,0x35,0x84,0x07,0x8b,0xc2,0x24,0x16,0x08,0x66,0x4b,0x01,0xfe,0x81,0xa8,0x85,0x78,0xf4,0x08,0x41,0x6c,0x63,0xf0,0x20,0x7c,0x44,0x3c,0x10,0xf8,0x26,0x02,0x1f,0x00,0x07,0xc4,0x22,0x21,0x18,0x82,0x7f,0x81,0xa2,0x0f,0x88,0x64,0x22,0x41,0xf8,0x56,0x10,0x3e,0x20,0xd0,0x4b,0x00,0x2c,0x62,0x00,0xf6,0xff,0xcf,0xe0,0x10,0x38,0x25,0x00,0xd6,0x20,0xf4,0x13,0x1d,0x01,0xd0,0x2a,0xd1,0x55,0x88,0x34,0x63,0x00,0xb1,0x82,0x24,0xca,0x81,0xc0,0x80,0x03,0xc4,0xde,0x20,0x91,0x10,0x8c,0x03,0xf5,0x0b,0x07,0x95,0x80,0x1e,0x42,0x71,0x00,0x8c,0xc0,0x16,0x28,0x32,0xf7,0x53,0xa4,0x10,0x0c,0x15,0x02,0x03,0x80,0x02,0x88,0x04,0x41,0xe7,0xa8,0xa5,0x05,0xc6,0x05,0x41,0x80,0xd8,0x00,0xa3,0x40,0x07,0xa6,0xb2,0x94,0x37,0x18,0x37,0x8e,0x03,0x18,0x8e,0x03,0xce,0x85,0x0a,0x80,0x68,0xa9,0x41,0x31,0x82,0x7f,0x23,0x30,0x68,0x3c,0x03,0x00,0x0f,0x1b,0x14,0x38,0x7e,0x47,0xb1,0x82,0x78,0x3c,0xfe,0x18,0x08,0x3d,0x0b,0xe6,0x69,0x16,0x68,0xc0,0xe7,0x09,0xa2,0x09,0x0f,0xc8,0x1e,0x68,0xb3,0xff,0xf1,0xd3,0x24,0x0f,0x1f,0xd4,0x24,0x1e,0x48,0xb1,0x07,0x8c,0x1e,0xc0,0x4f,0x10,0xe8,0xc0,0x5c,0xa5,0x18,0xa7,0x86,0x44,0xc2,0x30,0xe9,0x87,0x82,0x43,0x00,0x89,0x03,0xc4,0x3e,0x31,0x4e,0x48,0x98,0x7f,0x93,0xf8,0xe1,0xf8,0x63,0xc1,0xf2,0x81,0x16,0xc6,0x38,0x0f,0x12,0x68,0xf0,0x27,0xea,0xc2,0x3d,0x0a,0x3c,0x4d,0xe3,0x00,0xe7,0xc0,0x2f,0x00,0x41,0xbe,0x5c,0x01,0xe5,0x16,0x0f,0x8c,0x3c,0x9e,0x5f,0xf8,0x38,0x94,0x7c,0x1f,0x90,0x79,0x43,0xbf,0xdc,0x3f,0xff,0xfe,0x01,0xc0,0xf8,0x09,0x0b,0xb8,0x14,0x10,0x20,0xc2,0x60,0x5f,0xe0,0xf9,0x70,0x21,0x9f,0xec,0x1c,0x03,0x07,0x03,0x37,0x90,0x3d,0x68,0x10,0xcc,0x84,0x6b,0xc1,0xf0,0x80,0x58,0x15,0xe3,0x08,0x07,0xad,0xc3,0xe0,0x1c,0x33,0x20,0xdc,0x01,0xe3,0xfc,0x1a,0x8f,0xfe,0x7f,0x80,0x38,0x11,0x34,0xbf,0x90,0xf0,0x78,0xfe,0x01,0x06,0x57,0x11,0x58,0x80,0x10,0x1e,0x20,0x75,0xb8,0x0b,0x88,0x00,0x7f,0x05,0x48,0x80,0x10,0x5c,0x80,0x07,}; +const uint8_t *_A_Level2Soldering_128x51[] = {_A_Level2Soldering_128x51_0,_A_Level2Soldering_128x51_1,_A_Level2Soldering_128x51_2}; + +const uint8_t _A_Level3FurippaActive_128x51_0[] = {0x01,0x00,0xb7,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x30,0x07,0xcd,0x20,0x7e,0x31,0x02,0x28,0x83,0xe2,0x39,0x80,0x80,0xda,0x01,0xa2,0x0f,0x99,0x26,0x03,0xff,0x37,0xa1,0x03,0xc7,0xe1,0x0f,0x07,0xb4,0x9b,0x81,0x00,0x9f,0x60,0x01,0xe3,0x1e,0x9c,0x03,0xda,0x85,0x20,0xff,0x17,0x06,0x03,0xe0,0x81,0xd8,0x19,0xcf,0x90,0x80,0xc4,0xc1,0xe3,0x70,0x82,0x50,0x01,0xed,0x81,0xa4,0x10,0x86,0x01,0x02,0x11,0x08,0x3d,0xe0,0x32,0x5b,0xe0,0x44,0x60,0x57,0xc8,0x05,0x70,0x1e,0xf1,0x6c,0x1d,0x46,0x01,0x04,0xc1,0xc0,0x6f,0xfc,0x0f,0xf8,0x3d,0x72,0x50,0x2c,0x9c,0x03,0x09,0x3f,0xe1,0x4f,0xc1,0xed,0x03,0xc5,0x61,0x34,0x50,0x0b,0x47,0x03,0xc9,0x1f,0x80,0x1e,0x04,0x1e,0x94,0xab,0xc6,0x91,0x9c,0x5f,0x94,0x78,0x83,0xde,0x90,0x0f,0x17,0xf0,0xfe,0xa0,0xf0,0x0f,0x00,0x3e,0x60,0x70,0x0f,0xf0,0x08,0x6e,0x00,0xf4,0x83,0x0b,0xc8,0x52,0x5f,0xf8,0x0c,0x02,0x78,0x0f,0x6c,0x26,0xb9,0xfa,0x2d,0x41,0x1f,0x09,0x44,0x40,0x07,0x46,0xc5,0xfc,0xb7,0xe3,0xe1,0xf0,0x5f,0xc1,0xe2,0x41,0x10,0x01,0xeb,0xb2,0x51,0xdc,0xf0,0xec,0x7e,0x13,0xf6,0x88,0xa7,0xd6,0xb9,0xf5,0x83,0x92,0x0b,0xf9,0x1f,0xbe,0x40,0x81,0xeb,0xac,0xf3,0x12,0x44,0x00,0x3f,0xef,0xfc,0x7c,0x1e,0xd5,0xde,0x68,0x10,0x89,0xc3,0xff,0x83,0x83,0xdb,0x73,0xda,0x02,0x17,0x02,0x7f,0xf0,0x41,0x90,0x01,0x2e,0x57,0x50,0x21,0x7c,0x21,0xe6,0xc1,0x1b,0x18,0x00,0xbc,0x56,0xa0,0x21,0x7e,0x3c,0x70,0x3c,0x00,0x3d,0xb8,0x95,0x52,0x71,0x9f,0x88,0x1c,0xa0,0x71,0x85,0x40,0x24,0x0a,0xd1,0x6e,0x8d,0x80,0x1e,0xd9,0x08,0x28,0x48,0x78,0x0a,0xd1,0x80,0x2c,0xc4,0x00,0xb8,0x02,0xb9,0x7f,0xc0,0x65,0x18,0x07,0xb9,0x1d,0xa1,0xc2,0xf7,0x13,0x49,0x3d,0x40,0xcb,0xe0,0x07,0x34,0x03,0xc8,0x2f,0x59,0xc0,0x3d,0xf6,0x4f,0x65,0x1f,0x3c,0x02,0x33,0x1e,0x1f,0x64,0x02,0x59,0x78,0x1f,0x64,0x03,0x0d,0xe1,0x1f,0x63,0x98,0x78,0x45,0x03,0x1a,0x20,0x01,0x20,0x38,0x80,0x79,0x60,0x17,0xe2,0x00,0x70,}; +const uint8_t _A_Level3FurippaActive_128x51_1[] = {0x01,0x00,0xcc,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0xfe,0x24,0x9e,0x31,0x48,0x1f,0x8c,0x40,0x6a,0x30,0x79,0xe0,0x3d,0xa3,0x98,0x08,0x0d,0xa2,0x41,0x00,0xf4,0x40,0x6c,0x00,0xf6,0x92,0x60,0x3f,0xf3,0x7a,0x14,0x02,0xe9,0x00,0xa0,0x03,0xda,0x4d,0xc0,0x80,0x4f,0xb0,0x0a,0x11,0x80,0x5f,0x01,0xed,0x42,0x90,0x7f,0x8b,0x83,0x41,0xfe,0xe0,0x6f,0xec,0xe7,0xc8,0x40,0x62,0x70,0x0d,0x0c,0x1b,0xc5,0x3f,0x07,0xb6,0x06,0x90,0x42,0x18,0x05,0x5b,0xff,0xf4,0x8f,0x83,0xda,0x03,0x25,0xbe,0x04,0x47,0xd5,0x00,0xfe,0xc3,0xc1,0xef,0x16,0xc1,0xd4,0x60,0x13,0x58,0x07,0xfa,0x0f,0xc0,0xff,0xf3,0x01,0xe9,0x92,0x81,0x64,0xcb,0xc5,0xfe,0x81,0x83,0xda,0x07,0x8a,0xc2,0x68,0xa8,0x10,0x58,0x07,0xfd,0xa6,0x3c,0x00,0x7a,0xd2,0xaf,0x1a,0x4d,0x04,0x0d,0x28,0x20,0x91,0x07,0xbd,0x23,0x49,0xd0,0x05,0x89,0xf8,0xbc,0x1c,0x0a,0xa0,0x3d,0xad,0x00,0xb1,0x3f,0x15,0xc3,0xc0,0x0f,0x38,0x30,0xbc,0x94,0x03,0xf0,0x3f,0x14,0xf2,0xe0,0xc3,0x30,0x78,0xe1,0x35,0xd0,0xe8,0x07,0xe0,0xfc,0x3c,0x08,0xfc,0xf1,0xce,0x20,0x01,0xa3,0x62,0xfe,0x5b,0xf8,0x1c,0x03,0xf9,0x07,0x07,0x8c,0x1e,0x38,0x27,0x10,0x00,0xeb,0xb2,0x51,0xdc,0xf0,0x14,0x4f,0xc2,0x9e,0x68,0x05,0x73,0xeb,0x07,0xb8,0x01,0x44,0xfc,0x40,0x06,0xd6,0x79,0x81,0x44,0x7e,0x30,0x03,0x57,0x79,0xa0,0x42,0x3f,0x18,0x01,0xb7,0x3d,0xa0,0x21,0x78,0x3f,0xe0,0x01,0x07,0xb5,0xca,0xea,0x04,0x2f,0x87,0x01,0x9c,0x24,0x16,0xf1,0x5a,0x80,0x85,0x78,0x80,0x43,0x26,0x00,0xf6,0xe2,0x55,0x60,0x10,0x88,0x04,0xfa,0x01,0x30,0x87,0x03,0xdb,0x81,0x0a,0x05,0x8e,0x01,0x5a,0x3e,0x08,0x08,0x3d,0xb2,0x0f,0xb1,0xe0,0x2f,0x4a,0x3d,0x80,0x07,0xb6,0x01,0x32,0x45,0xd2,0x80,0xf0,0x0b,0xec,0x17,0x7b,0x00,0x3d,0xb2,0x00,0x76,0x98,0x01,0xd8,0x4e,0xf1,0xc0,0x3b,0x79,0x05,0xeb,0x80,0x78,0x08,0x01,0x76,0x40,0x85,0xf8,0x2f,0xde,0x33,0x1e,0x03,0x20,0x15,0x40,0x05,0x2c,0x55,0x89,0x14,0xce,0xa4,0x00,0x5c,0x37,0x84,0x0a,0x77,0xc7,0x7c,0x40,0xf8,0x45,0x02,0xc0,0x3f,0xe6,0x03,0x88,0x07,0x97,0x01,0x60,0x20,0x07,}; +const uint8_t _A_Level3FurippaActive_128x51_2[] = {0x01,0x00,0xd7,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0x07,0xcd,0x20,0x7e,0x20,0xd1,0x98,0x03,0xe2,0x39,0x80,0x80,0xda,0x24,0x05,0x51,0x07,0xc4,0x93,0x01,0xff,0x9b,0xd0,0x8e,0xa2,0x0f,0x89,0x37,0x02,0x01,0x3e,0xc0,0x40,0x28,0x00,0xf8,0xa1,0x48,0x3f,0xc5,0xc1,0x51,0x0b,0x3a,0x72,0x10,0x18,0x98,0x3c,0x7c,0x00,0xf8,0xc0,0xd2,0x08,0x43,0x00,0x81,0x75,0x3f,0x0c,0x17,0x80,0xc9,0x6f,0x81,0x11,0xc1,0x6a,0xa1,0xf0,0xe0,0x6a,0x3e,0x06,0x03,0x16,0xc1,0xd4,0x60,0x14,0x4f,0xac,0x06,0x71,0xc0,0xff,0xf3,0x10,0xc3,0x53,0x07,0x8e,0x4a,0x00,0x01,0x1d,0x64,0xe8,0xe2,0x20,0xf4,0xb9,0xbe,0x47,0x15,0xfc,0xd1,0x40,0x2a,0x90,0x7a,0x01,0xd8,0x78,0x00,0xf1,0x9c,0x41,0xc1,0xe3,0x4a,0xff,0x69,0x70,0x1a,0xaf,0xfc,0x05,0x06,0x20,0xf2,0x8c,0x36,0x44,0x1e,0x3f,0xfd,0x3d,0x03,0xfb,0x00,0x83,0x03,0xc7,0xc1,0xc0,0xaa,0x47,0x0a,0xa3,0x03,0xe5,0x03,0xc7,0x41,0xfa,0xff,0xc2,0x01,0xe3,0x70,0xf0,0x55,0x21,0x90,0xc0,0xc0,0xf2,0xa0,0xfa,0x7a,0x80,0xd8,0x62,0x78,0xe8,0x04,0xf2,0xe1,0x40,0x87,0x47,0x01,0xe5,0x03,0xd6,0x7a,0xa0,0x30,0x0c,0xa6,0xc7,0x81,0x1f,0x9e,0x48,0x20,0xcb,0xa1,0xa3,0x62,0xfe,0x3b,0xfb,0xea,0x20,0x6c,0x9c,0x0e,0x04,0x1e,0x38,0x4e,0x10,0x78,0xeb,0xb2,0x51,0xcc,0xf0,0xb8,0x4b,0x22,0x3f,0x10,0x02,0xd7,0x3e,0xb0,0x7f,0x80,0x18,0x8b,0xe4,0x00,0x5d,0x67,0x98,0x78,0x20,0x01,0xc0,0x40,0x51,0xe2,0x00,0x5a,0xef,0x34,0x0a,0x76,0x08,0x05,0x00,0x1e,0xdb,0x9e,0xd0,0x14,0xc8,0xe2,0x11,0x10,0x02,0xdc,0xae,0xa0,0x53,0x53,0x8c,0x80,0x1e,0xde,0x2b,0x50,0xf9,0x1b,0x42,0x0f,0x6e,0x25,0x56,0x01,0x08,0x16,0x18,0xc4,0x40,0x0b,0xc0,0x85,0x06,0x89,0x4c,0x30,0x05,0xc8,0x80,0x17,0x21,0x05,0x09,0x0f,0x02,0x06,0x41,0x30,0x02,0xe0,0x01,0x65,0x3f,0x03,0x90,0x18,0x81,0xea,0x8e,0x31,0xb1,0x01,0x94,0x5e,0x40,0x65,0xb8,0x03,0x98,0x30,0x20,0x65,0x2f,0x3c,0x03,0xc8,0x28,0x58,0x70,0x3d,0xf6,0x4e,0xc2,0x27,0x54,0x02,0x33,0x1e,0x27,0x64,0x02,0x59,0x78,0x6f,0xa8,0x01,0xf0,0xde,0x10,0x29,0xce,0x01,0xf1,0x03,0xe1,0x0a,0x8c,0x9d,0x10,0x08,0x0e,0x20,0x1e,0x58,0x02,0xa2,0x80,0x0c,}; +const uint8_t _A_Level3FurippaActive_128x51_3[] = {0x01,0x00,0xe9,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x64,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0xfe,0x41,0xc4,0x4d,0x18,0xa4,0x0f,0xc6,0x20,0x35,0x18,0x3c,0xf0,0x08,0x20,0x04,0x8e,0x60,0x20,0x36,0x89,0x04,0x03,0xd1,0x01,0xb0,0x03,0xda,0x49,0x80,0xff,0xcd,0xe8,0x50,0x0b,0xa4,0x02,0x80,0x4f,0x69,0x37,0x02,0x01,0x3e,0xc0,0x28,0x46,0x01,0x7c,0x07,0xb5,0x0a,0x41,0xfe,0x2e,0x0d,0x07,0xfb,0x81,0xbf,0xb3,0x9f,0x21,0x01,0x89,0xc0,0x34,0x30,0x6f,0x14,0xfc,0x1e,0xd8,0x1a,0x41,0x08,0x60,0x15,0x6f,0xff,0xd2,0x3e,0x0f,0x68,0x0c,0x96,0xf8,0x11,0x1f,0x54,0x03,0xfb,0x0f,0x06,0xa3,0xe0,0x60,0x31,0x6c,0x1d,0x46,0x01,0x35,0x80,0x7f,0xa0,0xfc,0x0f,0xff,0x31,0x0c,0x35,0x30,0x78,0xe4,0xa0,0x19,0x22,0xf1,0x7f,0xa0,0x60,0xf4,0xb9,0xbe,0x47,0x15,0xfc,0xd1,0x50,0x20,0xb0,0x0f,0xfb,0x4c,0x78,0x00,0xf1,0x9c,0x41,0xc1,0xe3,0x4a,0xff,0x69,0x74,0x10,0x34,0xa0,0x8e,0xc4,0x1e,0x51,0x88,0x34,0xfc,0x1e,0x3f,0xfd,0x3f,0x40,0x16,0x27,0xe2,0xf0,0x70,0x2a,0x91,0xc8,0x70,0x3c,0x79,0x40,0xf1,0xb4,0x02,0xc4,0xfc,0x57,0x0f,0x05,0x52,0x19,0x0c,0x7b,0x0f,0x2a,0x0f,0xa7,0x50,0x0f,0xc0,0xfc,0x53,0xcb,0x85,0x02,0x1d,0x1c,0x07,0x94,0x0f,0x59,0x0e,0x80,0x7e,0x0f,0xc3,0xc0,0x8f,0xcf,0x24,0x10,0x60,0xc8,0xd1,0xb1,0x7f,0x1d,0xfc,0x0e,0x01,0xfc,0x2c,0x0f,0x02,0x0f,0x1c,0x27,0x08,0x3c,0x75,0xd9,0x28,0xe6,0x78,0x56,0x27,0xe1,0x57,0x34,0x02,0xb9,0xf5,0x83,0xa9,0x04,0xfc,0x60,0x06,0xd6,0x79,0x81,0x44,0x7e,0x30,0x03,0x57,0x79,0xa0,0x42,0x3f,0x18,0x01,0xb7,0x3d,0xa0,0x21,0x78,0x3f,0xe0,0x01,0x07,0xb5,0xca,0xea,0x04,0x2f,0x87,0x01,0x9c,0x24,0x16,0xf1,0x5a,0x80,0x85,0x78,0x80,0x43,0x26,0x00,0xf6,0xe2,0x55,0x60,0x10,0x88,0x04,0xf9,0xd2,0x30,0xe0,0x7b,0x70,0x21,0x40,0xb1,0xc0,0x2b,0x47,0xc1,0x01,0x07,0xb6,0x41,0xf6,0x3c,0x05,0xe9,0x47,0xb0,0x00,0xf6,0xc0,0x26,0x48,0xba,0x50,0x1e,0x01,0x7d,0x82,0xef,0x60,0x07,0xb6,0x40,0x0e,0xd3,0x00,0x3b,0x09,0xdd,0xf2,0x20,0x05,0xf2,0x0b,0xd7,0x00,0xf0,0x10,0x02,0xec,0x81,0x0b,0xf0,0x5f,0xbc,0x66,0x3c,0x06,0x40,0x2a,0x80,0x0a,0x58,0xab,0x12,0x29,0x9d,0x48,0x00,0xb8,0x6f,0x08,0x14,0xef,0x8e,0xf8,0x81,0xf0,0x8a,0x05,0x80,0x7f,0xcc,0x07,0x10,0x0f,0x2e,0x02,0xc0,0x40,0x0e,}; +const uint8_t _A_Level3FurippaActive_128x51_4[] = {0x01,0x00,0xec,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0x03,0x06,0x07,0xad,0x80,0x1e,0x3a,0x00,0x50,0x83,0x08,0xac,0x20,0x04,0x90,0x03,0xc6,0xa0,0x1d,0x18,0x60,0x20,0x81,0xeb,0x30,0x0f,0x90,0xf4,0x61,0x00,0x81,0xa0,0x03,0xd6,0x20,0x0f,0x1e,0x80,0xb4,0x45,0x85,0x86,0x07,0xac,0x60,0x1e,0x3e,0x80,0xe8,0xc4,0x3f,0x90,0x7c,0x40,0x3d,0xa9,0x03,0xf1,0x88,0x0d,0x46,0x0f,0x3c,0x88,0x1c,0xd6,0x39,0x80,0x80,0xda,0x09,0x43,0xe8,0x80,0xd8,0x01,0xed,0x24,0xc0,0x7f,0xe6,0xf4,0x28,0x05,0xd0,0x9c,0xf0,0x09,0x37,0x02,0x01,0x3e,0xc0,0x28,0x46,0x01,0x7c,0x07,0xb5,0x0a,0x41,0xfe,0x2e,0x0d,0x07,0xfb,0x81,0xbf,0xb3,0x9f,0x21,0x01,0x89,0xc0,0x34,0x30,0x6f,0x14,0xfc,0x1e,0xd8,0x1a,0x41,0x08,0x60,0x15,0x6f,0xff,0xd2,0x3e,0x0f,0x68,0x0c,0x96,0xf8,0x11,0x1f,0x54,0x03,0xfb,0x0f,0x06,0xa3,0xe0,0x60,0x31,0x6c,0x1d,0x46,0x01,0x35,0x80,0x7f,0xa0,0xfc,0x0f,0xff,0x31,0x0c,0x35,0x30,0x78,0xe4,0xa0,0x59,0x32,0xf1,0x7f,0xa0,0x60,0xf4,0xb9,0xbe,0x47,0x15,0x84,0xd1,0x50,0x20,0xb0,0x0f,0xfa,0x34,0x78,0x00,0xf1,0x9c,0x41,0xc1,0xe3,0x4a,0xbc,0x69,0x34,0x10,0x34,0xa0,0x8e,0xc4,0x1e,0x51,0x88,0x34,0xfc,0x1e,0x34,0x8d,0x27,0x40,0x16,0x27,0xe2,0xf0,0x70,0x2a,0x91,0xc8,0x70,0x3d,0x2d,0x00,0xb1,0x3f,0x15,0xc3,0xc1,0x54,0x86,0x43,0x20,0x10,0x61,0x79,0x28,0x07,0xe0,0x7e,0x29,0xe5,0xc2,0x81,0x0e,0x8e,0x03,0xcb,0x09,0xae,0x87,0x40,0x3f,0x07,0xe1,0xe0,0x47,0xe7,0x92,0x08,0x30,0x64,0x68,0xd8,0xbf,0x96,0xfe,0x07,0x00,0xfe,0x16,0x07,0x81,0x07,0x8e,0x13,0x84,0x1e,0x3a,0xec,0x94,0x77,0x3c,0x2b,0x13,0xf0,0xab,0x9a,0x01,0x5c,0xfa,0xc1,0xd4,0x82,0x7e,0x30,0x03,0x6b,0x3c,0xc0,0xa2,0x3f,0x18,0x01,0xab,0xbc,0xd0,0x21,0x1f,0x8c,0x00,0xdb,0x9e,0xd0,0x10,0xbc,0x1f,0xf0,0x00,0x83,0xda,0xe5,0x75,0x02,0x17,0xc3,0x80,0xce,0x12,0x0b,0x78,0xad,0x40,0x42,0xbc,0x40,0x21,0x93,0x00,0x7b,0x71,0x2a,0xb0,0x08,0x44,0x02,0x7c,0xe9,0x18,0x70,0x3d,0xb8,0x10,0xa0,0x58,0xe0,0x15,0xa3,0xe0,0x80,0x83,0xdb,0x20,0xfb,0x1e,0x02,0xf4,0xa3,0xd8,0x00,0x7b,0x60,0x13,0x24,0x5d,0x28,0x0f,0x00,0xbe,0xc1,0x77,0xb0,0x03,0xdb,0x20,0x07,0x69,0x80,0x1d,0x84,0xee,0xf9,0x10,0x02,0xf9,0x05,0xeb,0x80,0x78,0x08,0x01,0x76,0x40,0x85,0xf8,0x2f,0xde,0x33,0x1e,0x03,0x20,0x15,0x40,0x05,0x2c,0x55,0x89,0x14,0xce,0xa4,0x00,0x5c,0x37,0x84,0x0a,0x77,0xc7,0x7c,0x40,0xf8,0x45,0x02,0xc0,0x3f,0xe6,0x03,0x88,0x07,0x97,0x01,0x60,0x20,0x07,}; +const uint8_t _A_Level3FurippaActive_128x51_5[] = {0x01,0x00,0xfd,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0x38,0xf0,0x3d,0xb0,0xd0,0x48,0x07,0xaa,0x38,0x07,0x2b,0x00,0x3d,0xa8,0x70,0x28,0x04,0xd6,0xe0,0x07,0x2c,0x04,0x04,0x1c,0x98,0x0a,0x0c,0x07,0x01,0x1a,0xe0,0x02,0xcc,0x2e,0x25,0xe4,0xa0,0x40,0x68,0x10,0xd8,0x04,0x0c,0x10,0x30,0x61,0xb8,0x80,0x0e,0xc0,0x0f,0x1d,0x04,0x18,0x18,0x20,0x81,0x8c,0x03,0xd6,0x40,0x0f,0x1a,0x80,0x74,0x61,0x80,0x82,0x84,0x03,0xd2,0x60,0x1f,0x21,0xe8,0x82,0xca,0x80,0x0f,0x58,0x80,0x3c,0x7a,0x02,0xd1,0x41,0x89,0xdc,0x62,0x00,0xf4,0x8c,0x03,0xc7,0xd0,0x19,0x18,0x87,0xf2,0x0f,0x88,0x07,0xb5,0x20,0x7e,0x20,0x91,0x98,0x41,0xe7,0x91,0x08,0x88,0x3d,0x23,0x88,0x71,0xb4,0x48,0x20,0x1e,0x88,0x0d,0x80,0x1e,0xd2,0x4c,0x07,0xfe,0x6f,0x42,0x80,0x5d,0x09,0xc2,0xae,0x69,0x37,0x02,0x01,0x3e,0xc0,0x28,0x46,0x01,0x7c,0x07,0xb5,0x0a,0x41,0xfe,0x2e,0x0d,0x07,0xfb,0x81,0xbf,0xb3,0x9f,0x21,0x01,0x89,0xc0,0x34,0x30,0x6f,0x14,0xfc,0x1e,0xd8,0x1a,0x41,0x08,0x60,0x15,0x6f,0xff,0xd2,0x3e,0x0f,0x68,0x0c,0x96,0xf8,0x11,0x1f,0x54,0x03,0xfb,0x0f,0x06,0xa3,0xe0,0x60,0x31,0x6c,0x1d,0x46,0x01,0x35,0x80,0x7f,0xa0,0xfc,0x0f,0xff,0x31,0x0c,0x35,0x30,0x78,0xe4,0xa0,0x59,0x32,0xf1,0x7f,0xa0,0x60,0xf4,0xb9,0xbe,0x47,0x15,0x84,0xd1,0x50,0x20,0xb0,0x0f,0xfb,0x4c,0x78,0x00,0xf1,0x9c,0x41,0xc1,0xe3,0x4a,0xbc,0x69,0x34,0x10,0x34,0xa0,0x8e,0xc4,0x1e,0x51,0x88,0x34,0xfc,0x1e,0x34,0x8d,0x27,0x40,0x16,0x27,0xe2,0xf0,0x70,0x2a,0x91,0xc8,0x70,0x3d,0x2d,0x00,0xb1,0x3f,0x15,0xc3,0xc1,0x54,0x86,0x43,0x20,0x10,0x61,0x79,0x28,0x07,0xe0,0x7e,0x29,0xe5,0xc2,0x81,0x0e,0x8e,0x03,0xcb,0x09,0xae,0x87,0x40,0x3f,0x07,0xe1,0xe0,0x47,0xe7,0x92,0x08,0x30,0x64,0x68,0xd8,0xbf,0x96,0xfe,0x07,0x00,0xfe,0x16,0x07,0x81,0x07,0x8e,0x13,0x84,0x1e,0x3a,0xec,0x94,0x77,0x3c,0x2b,0x13,0xf0,0xab,0x9a,0x01,0x5c,0xfa,0xc1,0xd4,0x82,0x7e,0x30,0x03,0x6b,0x3c,0xc0,0xa2,0x3f,0x18,0x01,0xab,0xbc,0xd0,0x21,0x1f,0x8c,0x00,0xdb,0x9e,0xd0,0x10,0xbc,0x1f,0xf0,0x00,0x83,0xda,0xe5,0x75,0x02,0x17,0xc3,0x80,0xce,0x12,0x0b,0x78,0xad,0x40,0x42,0xbc,0x40,0x21,0x93,0x00,0x7b,0x71,0x2a,0xb0,0x08,0x44,0x02,0x7c,0xe9,0x18,0x70,0x3d,0xb8,0x10,0xa0,0x58,0xe0,0x15,0xa3,0xe0,0x80,0x83,0xdb,0x20,0xfb,0x1e,0x02,0xf4,0xa3,0xd8,0x00,0x7b,0x60,0x13,0x24,0x5d,0x28,0x0f,0x00,0xbe,0xc1,0x77,0xb0,0x03,0xdb,0x20,0x07,0x69,0x80,0x1d,0x84,0xee,0xf9,0x10,0x02,0xf9,0x05,0xeb,0x80,0x78,0x08,0x01,0x76,0x40,0x85,0xf8,0x2f,0xde,0x33,0x1e,0x03,0x20,0x15,0x40,0x05,0x2c,0x55,0x89,0x14,0xce,0xa4,0x00,0x5c,0x37,0x84,0x0a,0x77,0xc7,0x7c,0x40,0xf8,0x45,0x02,0xc0,0x3f,0xe6,0x03,0x88,0x07,0x97,0x01,0x60,0x20,0x07,}; +const uint8_t *_A_Level3FurippaActive_128x51[] = {_A_Level3FurippaActive_128x51_0,_A_Level3FurippaActive_128x51_1,_A_Level3FurippaActive_128x51_2,_A_Level3FurippaActive_128x51_3,_A_Level3FurippaActive_128x51_4,_A_Level3FurippaActive_128x51_5}; + +const uint8_t _A_Level3Furippa_128x51_0[] = {0x01,0x00,0x98,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0x07,0xcd,0x20,0x7e,0x20,0xd1,0x98,0x03,0xe2,0x39,0x80,0x80,0xda,0x24,0x05,0x51,0x07,0xc4,0x93,0x01,0xff,0x9b,0xd0,0x8e,0xa2,0x0f,0x89,0x37,0x02,0x01,0x3e,0xc0,0x40,0x28,0x00,0xf8,0xa1,0x48,0x3f,0xc5,0xc1,0x51,0x0b,0x3a,0x72,0x10,0x18,0x98,0x3c,0x7c,0x00,0xf8,0xc0,0xd2,0x08,0x43,0x00,0x81,0x75,0x3f,0x0c,0x17,0x80,0xc9,0x6f,0x81,0x11,0xc1,0x6a,0xa1,0xf0,0xe0,0x7b,0xc5,0xb0,0x75,0x18,0x05,0x13,0xeb,0x01,0x9c,0x03,0xdf,0x25,0x02,0xc9,0xc0,0x35,0x93,0xa3,0x8c,0x40,0xf1,0x58,0x4d,0x14,0x02,0xa9,0x07,0x80,0x1d,0x84,0x1e,0xd4,0xab,0xc6,0x93,0x01,0xaa,0xbf,0xe0,0x10,0x62,0x0f,0x7a,0x46,0x92,0x81,0xfd,0xc0,0x40,0xc1,0xf7,0xa0,0xfd,0x5f,0xe0,0x80,0xf7,0x83,0x0b,0xca,0xa1,0x07,0xc0,0x42,0x41,0xf3,0x84,0xd7,0x7a,0xa0,0x30,0x08,0x96,0xf0,0x1e,0xd4,0x6c,0x5f,0xcb,0x7f,0x7d,0x03,0x0c,0x53,0x86,0x0f,0x6d,0x76,0x4a,0x3b,0x9e,0x36,0x8c,0x03,0xa8,0x2f,0x7a,0xe7,0xd6,0x0f,0xf0,0x03,0x14,0xd0,0x1e,0xfa,0xcf,0x30,0xf0,0x40,0x05,0x0c,0x47,0xbd,0x77,0x9a,0x76,0x5a,0x00,0x3d,0xb7,0x3d,0xa0,0x29,0x87,0x45,0x7e,0xf7,0x2b,0xa8,0x14,0xe6,0x10,0x09,0x00,0x3d,0xbc,0x56,0xa0,0x29,0xbf,0x44,0x22,0x20,0x05,0xe2,0x55,0x60,0x11,0x08,0x06,0x00,0xa6,0x31,0x80,0x7b,0x70,0x21,0x43,0xa2,0xb8,0x18,0x08,0x1e,0xd9,0x08,0x28,0x74,0xa1,0xeb,0x72,0x07,0xb3,0xa4,0x40,0x63,0xfe,0x38,0x18,0x3d,0xd1,0xc8,0x36,0x10,0x32,0x8b,0xc8,0x0c,0xa4,0x12,0x27,0xb0,0x19,0x4b,0xcf,0x00,0xf2,0x0a,0x15,0x00,0x20,0x06,0xd9,0x3b,0x08,0x9d,0x50,0x08,0xcc,0x78,0x9d,0x90,0x09,0x65,0xe0,0x0a,0x6c,0xd7,0x00,0x0e,0x1b,0xc2,0x05,0x39,0xc0,0x3e,0x20,0x7c,0x21,0x51,0x93,0xa2,0x01,0x01,0xc4,0x03,0xcb,0x00,0x54,0x50,0x01,0x80,}; +const uint8_t _A_Level3Furippa_128x51_1[] = {0x01,0x00,0x99,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0x07,0xcd,0x20,0x7e,0x20,0xd1,0x98,0x03,0xe2,0x39,0x80,0x80,0xda,0x24,0x05,0x51,0x07,0xc4,0x93,0x01,0xff,0x9b,0xd0,0x8e,0xa2,0x0f,0x89,0x37,0x02,0x01,0x3e,0xc0,0x40,0x28,0x00,0xf8,0xa1,0x48,0x3f,0xc5,0xc1,0x51,0x0b,0x3a,0x72,0x10,0x18,0x98,0x3c,0x7c,0x00,0xf8,0xc0,0xd2,0x08,0x43,0x00,0x81,0x75,0x3f,0x0c,0x17,0x80,0xc9,0x6f,0x81,0x11,0xc1,0x6a,0xa1,0xf0,0xe0,0x7b,0xc5,0xb0,0x75,0x18,0x05,0x13,0xeb,0x01,0x9c,0x03,0xdf,0x25,0x00,0x00,0x8e,0xb2,0x74,0x71,0x88,0x1e,0x2b,0xf9,0xa2,0x80,0x55,0x20,0xf4,0x03,0xb0,0x83,0xda,0x95,0xfe,0xd2,0xe0,0x35,0x5f,0xf8,0x0a,0x0c,0x41,0xef,0xff,0xd3,0xd0,0x3f,0xb0,0x08,0x30,0x3e,0x39,0x40,0xf1,0xd0,0x7e,0xbf,0xf0,0x80,0x7b,0xc1,0xb9,0x50,0x7d,0x3d,0x42,0x0f,0x00,0x89,0xe3,0x81,0xf1,0x03,0xd6,0x7a,0xa0,0x30,0x0c,0xa6,0xc4,0x1e,0xd4,0x6c,0x5f,0xc7,0x7f,0x7d,0x03,0x0d,0x90,0xbe,0xfa,0xec,0x94,0x73,0x3c,0x2e,0x18,0x04,0x60,0x7e,0xf5,0xcf,0xac,0x1f,0xe0,0x36,0x30,0x7b,0xeb,0x3c,0xc3,0xc1,0x00,0x0e,0x02,0x02,0x2f,0x7a,0xef,0x34,0x0a,0x6a,0xd1,0xa0,0x03,0xdb,0x73,0xda,0x02,0x9c,0x61,0x7f,0x17,0x2b,0xa9,0xd5,0x20,0x12,0x00,0x7b,0x78,0xad,0x43,0xe4,0x80,0x4c,0x01,0xed,0xc4,0xaa,0xc0,0x21,0x02,0xc3,0x18,0x88,0x01,0x78,0x10,0xa0,0xd1,0x47,0x00,0xe3,0x0c,0x07,0xb6,0x42,0x0a,0x12,0x1e,0x04,0x0c,0x82,0x60,0x05,0xc0,0x02,0xca,0x7e,0xe7,0x30,0x7b,0xa3,0x8c,0x6c,0x40,0x65,0x17,0x90,0x19,0x6e,0x00,0xe6,0x0c,0x08,0x19,0x4b,0xcf,0x00,0xf2,0x0a,0x16,0x1c,0x0f,0x7d,0x93,0xb0,0x89,0xd5,0x00,0x8c,0xc7,0x89,0xd9,0x00,0x96,0x5e,0x1b,0xea,0x00,0x7c,0x37,0x84,0x0a,0x73,0x80,0x7c,0x40,0xf8,0x42,0xa3,0x27,0x44,0x02,0x03,0x88,0x07,0x96,0x00,0xa8,0xa0,0x03,}; +const uint8_t _A_Level3Furippa_128x51_2[] = {0x01,0x00,0xb3,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0xfe,0x24,0x9e,0x31,0x48,0x1f,0x8c,0x40,0x6a,0x30,0x79,0xe0,0x3d,0xa3,0x98,0x08,0x0d,0xa2,0x41,0x00,0xf4,0x40,0x6c,0x00,0xf6,0x92,0x60,0x3f,0xf3,0x7a,0x14,0x02,0xe9,0x00,0xa0,0x03,0xda,0x4d,0xc0,0x80,0x4f,0xb0,0x0a,0x11,0x80,0x5f,0x01,0xed,0x42,0x90,0x7f,0x8b,0x83,0x41,0xfe,0xe0,0x6f,0xec,0xe7,0xc8,0x40,0x62,0x70,0x0d,0x0c,0x1b,0xc5,0x3f,0x07,0xb6,0x06,0x90,0x42,0x18,0x05,0x5b,0xff,0xf4,0x8f,0x83,0xda,0x03,0x25,0xbe,0x04,0x47,0xd5,0x00,0xfe,0xc3,0xc1,0xef,0x16,0xc1,0xd4,0x60,0x13,0x58,0x07,0xf9,0x1e,0xf0,0x1c,0x94,0x03,0x24,0x5e,0x2f,0xf3,0xc5,0xe0,0x78,0xaf,0xe6,0x8a,0x81,0x05,0x80,0x7f,0xda,0x62,0x0f,0x6a,0x57,0xfb,0x4b,0xa0,0x81,0xa5,0x05,0x9e,0xe0,0xf1,0xff,0xe9,0xfa,0x10,0x0e,0x01,0xf9,0xc1,0xe3,0xca,0x07,0x8d,0xa2,0x01,0xe0,0x3f,0x3c,0x02,0x0d,0xca,0x83,0xe9,0xd4,0x03,0xf0,0x3f,0x38,0x3c,0xa0,0x7a,0xc8,0x74,0x03,0xf0,0x7e,0x78,0x05,0x1b,0x17,0xf1,0xdf,0x9a,0xc7,0xf8,0x7e,0x78,0x06,0xbb,0x25,0x1c,0xcf,0x01,0x44,0xfd,0x10,0x0a,0xe7,0xd6,0x0f,0x70,0x02,0x89,0xfa,0x20,0x1a,0xcf,0x30,0x28,0x8f,0xd3,0x00,0xae,0xf3,0x40,0x84,0x7e,0x98,0x06,0xe7,0xb4,0x04,0x2f,0x07,0xfc,0x00,0x20,0xf6,0xb9,0x5d,0x40,0x85,0xf0,0xe0,0x40,0xf8,0x04,0x16,0xf1,0x5a,0x80,0x85,0x78,0x80,0x43,0x26,0x00,0xf6,0xe2,0x55,0x60,0x10,0x88,0x04,0xfa,0x01,0x30,0x87,0x03,0xdb,0x81,0x0a,0x05,0x8e,0x01,0x5a,0x3e,0x08,0x08,0x3d,0xb2,0x0f,0xb1,0xe0,0x2f,0x4a,0x3d,0x80,0x07,0xb6,0x01,0x32,0x45,0xd2,0x80,0xf0,0x0b,0xec,0x17,0x7b,0x00,0x3d,0xb2,0x00,0x76,0x98,0x01,0xd8,0x4e,0xf1,0xc0,0x3b,0x79,0x05,0xeb,0x80,0x78,0x3e,0xc8,0x10,0xbf,0x05,0xfb,0xc6,0x63,0xc0,0x64,0x02,0xa8,0x00,0xa5,0x8a,0xb1,0x22,0x99,0xd4,0x80,0x0b,0x86,0xf0,0x81,0x4e,0xf8,0xef,0x88,0x1f,0x08,0xa0,0x58,0x07,0xfc,0xc0,0x71,0x00,0xf2,0xe0,0x2c,0x04,0x00,0xe0,}; +const uint8_t _A_Level3Furippa_128x51_3[] = {0x01,0x00,0xae,0x01,0x00,0x0c,0xf8,0x1d,0xbc,0x0b,0x18,0x3f,0x6e,0x1f,0x1f,0xfc,0x1c,0x1f,0x79,0xc8,0xc4,0x03,0x78,0x10,0xbc,0x34,0x12,0x01,0xea,0x8e,0x03,0xea,0x87,0x02,0x80,0x4d,0x6e,0x00,0xe9,0xc0,0x50,0x60,0x38,0x08,0xd7,0x02,0x02,0x5e,0x9a,0x04,0x06,0x81,0x0d,0x80,0x40,0xc1,0xf1,0x60,0x07,0x8e,0x82,0x0d,0x00,0x00,0x88,0x01,0xe4,0x00,0xf1,0xa8,0x07,0x46,0x18,0x0f,0x89,0x80,0x7c,0x87,0xa3,0x08,0x07,0xc4,0x40,0x1e,0x3d,0x01,0x68,0xa0,0xc4,0x00,0xf1,0x80,0x78,0xfa,0x03,0xa3,0x10,0xfe,0x24,0x9e,0x31,0x48,0x1f,0x8c,0x40,0x6a,0x30,0x79,0xe0,0x3d,0xa3,0x98,0x08,0x0d,0xa2,0x41,0x00,0xf4,0x40,0x6c,0x00,0xf6,0x92,0x60,0x3f,0xf3,0x7a,0x14,0x02,0xe9,0x00,0xa0,0x03,0xda,0x4d,0xc0,0x80,0x4f,0xb0,0x0a,0x11,0x80,0x5f,0x01,0xed,0x42,0x90,0x7f,0x8b,0x83,0x41,0xfe,0xe0,0x6f,0xec,0xe7,0xc8,0x40,0x62,0x70,0x0d,0x0c,0x1b,0xc5,0x3f,0x07,0xb6,0x06,0x90,0x42,0x18,0x05,0x5b,0xff,0xf4,0x8f,0x83,0xda,0x03,0x25,0xbe,0x04,0x47,0xd5,0x00,0xfe,0xc3,0xc1,0xef,0x16,0xc1,0xd4,0x60,0x13,0x58,0x07,0xf9,0x1e,0xf0,0x1c,0x94,0x0b,0x26,0x5e,0x2f,0xf3,0xc5,0xe0,0x78,0xac,0x26,0x8a,0x81,0x05,0x80,0x7f,0xda,0x62,0x0f,0x6a,0x55,0xe3,0x49,0xa0,0x81,0xa5,0x05,0x9e,0xe0,0xf1,0xa4,0x69,0x3a,0x10,0x0e,0x01,0xf9,0xc1,0xe9,0x68,0x80,0x78,0x0f,0xcf,0x00,0x83,0x0b,0xc9,0x40,0x3f,0x03,0xf3,0x83,0xcb,0x09,0xae,0x87,0x40,0x3f,0x07,0xe7,0x80,0x51,0xb1,0x7f,0x2d,0xf9,0xac,0x7f,0x87,0xe7,0x80,0x6b,0xb2,0x51,0xdc,0xf0,0x14,0x4f,0xd1,0x00,0xae,0x7d,0x60,0xf7,0x00,0x28,0x9f,0xa2,0x01,0xac,0xf3,0x02,0x88,0xfd,0x30,0x0a,0xef,0x34,0x08,0x47,0xe9,0x80,0x6e,0x7b,0x40,0x42,0xf0,0x7f,0xc0,0x02,0x0f,0x6b,0x95,0xd4,0x08,0x5f,0x0e,0x04,0x0f,0x80,0x41,0x6f,0x15,0xa8,0x08,0x57,0x88,0x04,0x32,0x60,0x0f,0x6e,0x25,0x56,0x01,0x08,0x80,0x4f,0xa0,0x13,0x08,0x70,0x3d,0xb8,0x10,0xa0,0x58,0xe0,0x15,0xa3,0xe0,0x80,0x83,0xdb,0x20,0xfb,0x1e,0x02,0xf4,0xa3,0xd8,0x00,0x7b,0x60,0x13,0x24,0x5d,0x28,0x0f,0x00,0xbe,0xc1,0x77,0xb0,0x03,0xdb,0x20,0x07,0x69,0x80,0x1d,0x84,0xef,0x1c,0x03,0xb7,0x90,0x5e,0xb8,0x07,0x83,0xec,0x81,0x0b,0xf0,0x5f,0xbc,0x66,0x3c,0x06,0x40,0x2a,0x80,0x0a,0x58,0xab,0x12,0x29,0x9d,0x48,0x00,0xb8,0x6f,0x08,0x14,0xef,0x8e,0xf8,0x81,0xf0,0x8a,0x05,0x80,0x7f,0xcc,0x07,0x10,0x0f,0x2e,0x02,0xc0,0x40,0x0e,}; +const uint8_t *_A_Level3Furippa_128x51[] = {_A_Level3Furippa_128x51_0,_A_Level3Furippa_128x51_1,_A_Level3Furippa_128x51_2,_A_Level3Furippa_128x51_3}; + +const uint8_t _A_Level3HijackActive_128x51_0[] = {0x01,0x00,0xf3,0x01,0x00,0x57,0xe2,0x3e,0x0f,0xd8,0x77,0xc0,0x1f,0xb0,0x3d,0x04,0xfc,0x1f,0x90,0x19,0x00,0x83,0x30,0x10,0x3b,0x06,0x02,0x02,0x0f,0xaf,0x04,0x16,0x80,0x42,0x10,0x7d,0x5c,0x21,0x00,0xf1,0x8e,0x03,0xea,0x31,0x10,0x07,0x8c,0xc2,0x01,0xff,0x00,0x20,0xdc,0xe0,0x90,0x0b,0x00,0x04,0x80,0x0b,0x02,0x07,0xa0,0x7c,0x78,0x05,0x06,0x05,0x88,0x4c,0xa8,0x00,0xf2,0x81,0x83,0xe6,0x03,0x80,0x07,0x94,0x1b,0xf8,0x3e,0x3b,0xf8,0x3d,0x78,0x08,0x31,0x83,0x0e,0x4c,0x0c,0x20,0xf2,0xc0,0x00,0x47,0xf1,0x03,0xc0,0x43,0x81,0xf0,0x1c,0x18,0x06,0x1a,0x0f,0x80,0x85,0x78,0xa8,0x98,0xef,0x9c,0xe7,0x1c,0x0f,0x21,0xe0,0xab,0x46,0x19,0x80,0x8d,0xc4,0xa8,0xb5,0x18,0xa5,0x13,0x22,0x0f,0x23,0xd0,0xf0,0x3f,0x11,0x8c,0x04,0x46,0x25,0x44,0xa0,0xc4,0x20,0x98,0x10,0x79,0x26,0x86,0xc1,0x06,0x89,0xe0,0x24,0x22,0xf1,0xa0,0xfc,0x27,0x02,0xf3,0xbc,0x47,0x24,0x10,0x19,0xa4,0x02,0x83,0x02,0xa2,0x87,0xc6,0x81,0x90,0x07,0x90,0xec,0x76,0x3f,0x99,0xc6,0x03,0x82,0x3f,0x80,0x10,0xee,0x21,0x92,0x9e,0x06,0x03,0xc4,0x2c,0x12,0xfa,0xc3,0x20,0x19,0x08,0x94,0xab,0x81,0xa0,0x3f,0xc5,0xd0,0x1e,0x36,0x29,0x5f,0x81,0xb2,0x80,0xf4,0xbf,0x03,0xc7,0x25,0x2a,0xb8,0x40,0x17,0xf1,0x75,0x80,0x6c,0x01,0xe3,0x78,0x5a,0x8b,0x7d,0x84,0x45,0xa0,0xb5,0x4a,0xa5,0x00,0xe5,0x07,0xb6,0x16,0xfb,0x38,0x07,0xc5,0x02,0x11,0x00,0x90,0x7e,0x78,0x71,0xc8,0x07,0xf8,0x7c,0x59,0xf1,0xf9,0x03,0xca,0xc1,0xff,0x5a,0x15,0xfb,0xf1,0xe1,0xc3,0xe7,0xe8,0x00,0xf1,0x90,0x46,0x02,0x43,0x43,0x80,0x17,0xc4,0x1e,0x94,0xc0,0x78,0xc4,0x3e,0x1b,0xff,0xdc,0x82,0x00,0x7f,0x11,0x7b,0xc2,0x3c,0x1c,0x72,0x39,0x78,0x20,0x24,0xe4,0x84,0x03,0xc6,0x09,0x60,0xb0,0x01,0xc5,0x38,0x30,0x30,0x7a,0x44,0x01,0xe3,0x03,0x88,0x12,0xc4,0x1e,0x38,0x08,0x38,0x3d,0x2c,0x10,0x41,0xc0,0xc2,0x01,0xe4,0x2d,0x18,0x78,0x3d,0x30,0x10,0x58,0xf0,0xc0,0x4c,0x02,0x0f,0x1c,0x04,0x7e,0x61,0x60,0x79,0x8e,0x06,0xff,0xfe,0x0c,0x8c,0x18,0x1e,0x2b,0xc1,0xe0,0x4f,0x29,0x1f,0x09,0x07,0x07,0x06,0xcf,0x38,0x0a,0x40,0x80,0x23,0x70,0x07,0xa2,0x3c,0xb0,0x10,0x10,0x18,0xab,0x46,0x61,0xc0,0x17,0xa8,0x3d,0x0b,0x85,0x38,0x77,0xc9,0x00,0x7f,0x00,0x71,0x8a,0x3b,0xe7,0x01,0xff,0x3d,0x94,0x30,0x1f,0x3f,0xe0,0x28,0xf0,0x20,0x10,0xe8,0x07,0xe3,0x07,0x3f,0xf8,0x06,0x04,0x1e,0x4a,0x92,0x2f,0x88,0x10,0x75,0x94,0x6a,0x06,0xa3,0x14,0x4f,0x31,0x29,0x47,0xe0,0x10,0x58,0x05,0x52,0x8b,0x40,0xac,0x63,0x4f,0xe8,0x12,0x15,0x60,0x8a,0x44,0x3e,0x87,0xf2,0x80,0x5f,0xa0,0x1f,0x01,0x68,0xc1,0x83,0xf3,0xe0,0xff,0xff,0xc4,0x42,0x07,0x12,0x7b,0xb5,0x0b,0xfe,0x03,0x15,0x98,0x9b,0xdc,0x1e,0x57,0xf0,0x18,0xb8,0xc8,0x1f,0x25,0xe1,0x5f,0x8c,0x00,}; +const uint8_t _A_Level3HijackActive_128x51_1[] = {0x01,0x00,0xf3,0x01,0x00,0x57,0xe2,0x3e,0x0f,0xd8,0x77,0xc0,0x1f,0xb0,0x3d,0x04,0xfc,0x1f,0x90,0x19,0x00,0x83,0x30,0x10,0x3b,0x06,0x02,0x02,0x0f,0xaf,0x04,0x16,0x80,0x42,0x10,0x7d,0x5c,0x21,0x00,0xf1,0x8e,0x03,0xea,0x31,0x10,0x07,0x8c,0xc2,0x01,0xff,0x00,0x20,0xdc,0xe0,0x90,0x0b,0x00,0x04,0x80,0x0b,0x02,0x07,0xa0,0x7c,0x78,0x05,0x06,0x05,0x88,0x4c,0xa8,0x00,0xf2,0x81,0x83,0xe6,0x03,0x80,0x07,0x94,0x1b,0xf8,0x3e,0x3b,0xf8,0x3d,0x78,0x08,0x31,0x83,0x0e,0x4c,0x0c,0x20,0xf2,0xc0,0x00,0x47,0xf1,0x03,0xc0,0x43,0x81,0xf0,0x1c,0x18,0x06,0x1a,0x0f,0x80,0x85,0x78,0xa8,0x98,0xef,0x9c,0xe7,0x1c,0x0f,0x21,0xe0,0xab,0x46,0x19,0x80,0x8d,0xc4,0xa8,0xb5,0x18,0xa5,0x13,0x22,0x0f,0x23,0xd0,0xf0,0x3f,0x11,0x8c,0x04,0x46,0x25,0x44,0xa0,0xc4,0x20,0x98,0x10,0x79,0x26,0x86,0xc1,0x06,0x89,0xe0,0x24,0x22,0xf1,0xa0,0xfc,0x27,0x02,0xf3,0xbc,0x47,0x24,0x10,0x19,0xa4,0x02,0x83,0x02,0xa2,0x87,0xc6,0x81,0x90,0x07,0x90,0xec,0x76,0x3f,0x99,0xc6,0x03,0x82,0x3f,0x80,0x10,0xee,0x21,0x92,0x9e,0x06,0x03,0xc4,0x2c,0x12,0xfa,0xc3,0x20,0x19,0x08,0x94,0xab,0x81,0xa0,0x3f,0xc5,0xd0,0x1e,0x36,0x29,0x5f,0x81,0xb2,0x80,0xf4,0xbf,0x03,0xc7,0x25,0x2a,0xb8,0x40,0x17,0xf1,0x75,0x80,0x6c,0x01,0xe3,0x78,0x5a,0x8b,0x7d,0x84,0x45,0xa0,0xb5,0x4a,0xa5,0x00,0xe5,0x07,0xb6,0x16,0xfb,0x38,0x07,0xc5,0x02,0x11,0x00,0x90,0x7e,0x78,0x71,0xc8,0x07,0xf8,0x7c,0x59,0xf1,0xf9,0x03,0xca,0xc1,0xff,0x5a,0x17,0x0a,0x1f,0x3f,0xfe,0x64,0x28,0x00,0xf1,0x90,0x46,0x02,0x43,0x43,0x80,0x17,0xc4,0x1e,0x94,0xc0,0x78,0xc4,0x3e,0x1b,0xff,0xdc,0x82,0x00,0x7f,0x11,0x7b,0xc2,0x3c,0x1c,0x72,0x39,0x78,0x20,0x24,0xe4,0x84,0x03,0xc6,0x09,0x60,0xb0,0x01,0xc5,0x38,0x30,0x30,0x7a,0x44,0x01,0xe3,0x03,0x88,0x12,0xc4,0x1e,0x38,0x08,0x38,0x3d,0x2c,0x10,0x41,0xc0,0xc2,0x01,0xe4,0x2d,0x18,0x78,0x3d,0x30,0x10,0x58,0xf0,0xc0,0x4c,0x02,0x0f,0x1c,0x04,0x7e,0x61,0x60,0x79,0x8e,0x06,0xff,0xfe,0x0c,0x8c,0x18,0x1e,0x2b,0xc1,0xe0,0x4f,0x2f,0x19,0x0f,0x05,0x07,0x04,0xcf,0x38,0x0a,0x40,0x80,0x23,0x70,0x07,0xa2,0x3c,0xb0,0x10,0x10,0x18,0xab,0x46,0x61,0xc0,0x17,0xa8,0x3d,0x0b,0x85,0x38,0x77,0xc9,0x00,0x7f,0x00,0x71,0x8a,0x3b,0xe7,0x01,0xff,0x3d,0x94,0x30,0x1f,0x3f,0xe0,0x28,0xf0,0x20,0x10,0xe8,0x07,0xe3,0x07,0x3f,0xf8,0x06,0x04,0x1e,0x4a,0x92,0x2f,0x88,0x10,0x75,0x94,0x6a,0x06,0xa3,0x14,0x4f,0x31,0x29,0x47,0xe0,0x10,0x58,0x05,0x52,0x8b,0x40,0xac,0x63,0x4f,0xe8,0x12,0x15,0x60,0x8a,0x44,0x3e,0x87,0xf2,0x80,0x5f,0xa0,0x1f,0x01,0x68,0xc1,0x83,0xf3,0xe0,0xff,0xff,0xc4,0x42,0x07,0x12,0x7b,0xb5,0x0b,0xfe,0x03,0x15,0x98,0x9b,0xdc,0x1e,0x57,0xf0,0x18,0xb8,0xc8,0x1f,0x25,0xe1,0x5f,0x8c,0x00,}; +const uint8_t *_A_Level3HijackActive_128x51[] = {_A_Level3HijackActive_128x51_0,_A_Level3HijackActive_128x51_1}; + +const uint8_t _A_Level3Hijack_128x51_0[] = {0x01,0x00,0xe3,0x01,0x00,0x57,0xe2,0x3e,0x0f,0xd8,0x77,0xc0,0x1f,0xb0,0x3d,0x04,0xfc,0x1f,0x90,0x19,0x00,0x83,0x30,0x10,0x3b,0x06,0x02,0x02,0x0f,0xaf,0x04,0x16,0x80,0x42,0x10,0x7d,0x5c,0x21,0x00,0xf1,0x8e,0x03,0xea,0x31,0x10,0x07,0x8c,0xc2,0x01,0xff,0x00,0x20,0xdc,0xe0,0x90,0x0b,0x00,0x04,0x80,0x0b,0x02,0x07,0xa0,0x7c,0x78,0x05,0x06,0x05,0x88,0x4c,0xa8,0x00,0xf2,0x81,0x83,0xe6,0x03,0x80,0x07,0x94,0x1b,0xf8,0x3e,0x3b,0xf8,0x3d,0x78,0x08,0x31,0x83,0x0e,0x4c,0x0c,0x20,0xf2,0xc0,0x00,0x47,0xf1,0x03,0xc0,0x43,0x81,0xf0,0x1c,0x18,0x06,0x1a,0x0f,0x80,0x85,0x60,0xa5,0x1c,0x8b,0x8c,0x88,0x1e,0x63,0xc1,0x56,0x8c,0x33,0x01,0x1b,0x07,0x8c,0xa3,0x15,0x12,0x07,0x99,0xe8,0x78,0x1f,0x88,0xc6,0x02,0x22,0x0f,0x28,0x54,0x28,0x1e,0x69,0xa1,0xb0,0x41,0xa2,0x78,0x09,0x0e,0x0a,0x5f,0xe8,0x85,0xc1,0x81,0xe7,0x78,0x8e,0x48,0x20,0x33,0x48,0x05,0x04,0x3f,0x03,0xb1,0xd8,0xfe,0x67,0x18,0x0e,0x0e,0x0b,0x50,0x3f,0x60,0x10,0xee,0x20,0x92,0x9e,0x06,0x00,0x3e,0x32,0x7b,0x96,0x8b,0x14,0x1f,0x38,0x06,0x42,0x05,0x2b,0xe0,0x68,0x0f,0xf1,0x74,0x07,0x8e,0x0a,0x57,0xe0,0x6c,0xa0,0x3d,0x2f,0xc0,0xf1,0xf9,0x4a,0xee,0x10,0x05,0xfc,0x5d,0x60,0x1b,0x0f,0xf4,0xae,0xf0,0xb5,0x16,0xfb,0x08,0x8b,0x40,0x0f,0x19,0x40,0x39,0x41,0xed,0xfd,0xbe,0xce,0x01,0xf1,0x40,0x84,0x40,0x24,0x10,0x9e,0x1c,0x72,0x01,0xfe,0x1f,0x16,0x7c,0x7e,0x40,0xf2,0xb0,0x7f,0xd6,0x85,0x42,0x84,0x48,0x70,0x99,0x0a,0x00,0x3c,0x64,0x11,0x80,0x90,0xd0,0xe0,0x05,0xf1,0x07,0xa5,0x30,0x1e,0x31,0x0f,0x86,0xff,0xf7,0x20,0x80,0x1f,0xc4,0x5e,0xf0,0x8f,0x07,0x1c,0x8e,0x5e,0x08,0x09,0x39,0x21,0x00,0xf1,0x82,0x58,0x2c,0x00,0x93,0x81,0x83,0xd2,0x20,0x0f,0x18,0x1c,0x40,0x96,0x2a,0x82,0x83,0x83,0xd2,0xc1,0x04,0x1c,0x0c,0x20,0x1e,0x70,0x08,0x78,0x3d,0x30,0x10,0x58,0xf0,0xc0,0x4c,0x02,0x08,0x28,0xfc,0xc2,0xc0,0xf3,0x1c,0x0d,0xff,0xfc,0x47,0x18,0x30,0x3c,0xf8,0x13,0xca,0x46,0x43,0xc1,0xc1,0xc1,0xb3,0xce,0x02,0x90,0x10,0x28,0xd8,0x2e,0x00,0xf4,0x47,0x96,0x02,0x02,0x53,0x24,0xf8,0xf0,0x05,0xea,0x0f,0x43,0xe1,0x4e,0x1d,0xf2,0x40,0x19,0xf0,0x1c,0x62,0x8e,0xf9,0xc0,0x7f,0xcf,0x65,0x0c,0x07,0xcf,0xf8,0xba,0x50,0x08,0x74,0x03,0xf1,0x83,0x9f,0xfc,0x03,0x02,0x0f,0x25,0x49,0x2c,0x44,0x08,0x3a,0xca,0x33,0xe4,0x71,0x04,0xf3,0x12,0x94,0x7e,0x01,0x05,0x80,0x55,0x28,0xa0,0xf5,0x3f,0x88,0x48,0x55,0x82,0x29,0x10,0xfa,0x1f,0xca,0x01,0x7e,0x80,0x7c,0x05,0xa3,0x06,0x0f,0xcf,0x83,0xff,0xff,0x11,0x08,0x1c,0x49,0xee,0xcb,0x2f,0xf8,0x0c,0x56,0x62,0x6f,0x70,0x79,0x5f,0xc0,0x62,0xd3,0x30,0x7c,0x17,0x85,0x7e,0x30,0x00,}; +const uint8_t _A_Level3Hijack_128x51_1[] = {0x01,0x00,0xe2,0x01,0x00,0x57,0xe2,0x3e,0x0f,0xd8,0x77,0xc0,0x1f,0xb0,0x3d,0x04,0xfc,0x1f,0x90,0x19,0x00,0x83,0x30,0x10,0x3b,0x06,0x02,0x02,0x0f,0xaf,0x04,0x16,0x80,0x42,0x10,0x7d,0x5c,0x21,0x00,0xf1,0x8e,0x03,0xea,0x31,0x10,0x07,0x8c,0xc2,0x01,0xff,0x00,0x20,0xdc,0xe0,0x90,0x0b,0x00,0x04,0x80,0x0b,0x02,0x07,0xa0,0x7c,0x78,0x05,0x06,0x05,0x88,0x4c,0xa8,0x00,0xf2,0x81,0x83,0xe6,0x03,0x80,0x07,0x94,0x1b,0xf8,0x3e,0x3b,0xf8,0x3d,0x78,0x08,0x31,0x83,0x0e,0x4c,0x0c,0x20,0xf2,0xc0,0x00,0x47,0xf1,0x03,0xc0,0x43,0x81,0xf0,0x1c,0x18,0x06,0x1a,0x0f,0x80,0x85,0x60,0xa5,0x1c,0x8b,0x8c,0x88,0x1e,0x63,0xc1,0x56,0x8c,0x33,0x01,0x1b,0x07,0x8c,0xa3,0x15,0x12,0x07,0x99,0xe8,0x78,0x1f,0x88,0xc6,0x02,0x22,0x0f,0x28,0x54,0x28,0x1e,0x69,0xa1,0xb0,0x41,0xa2,0x78,0x09,0x0e,0x0a,0x5f,0xe8,0x85,0xc1,0x81,0xe7,0x78,0x8e,0x48,0x20,0x33,0x48,0x05,0x04,0x3f,0x03,0xb1,0xd8,0xfe,0x67,0x18,0x0e,0x0e,0x0b,0x50,0x3f,0x60,0x10,0xee,0x20,0x92,0x9e,0x06,0x00,0x3e,0x32,0x7b,0x96,0x88,0x3e,0x90,0x0c,0x84,0x0a,0x57,0xc0,0xd0,0x1f,0xe2,0xe8,0x0f,0x1c,0x14,0xaf,0xc0,0xd9,0x40,0x7a,0x5f,0x81,0xe3,0xf2,0x95,0xdc,0x20,0x0b,0xf8,0xba,0xc0,0x36,0x1f,0xe9,0x5d,0xe1,0x6a,0x2d,0xf6,0x11,0x16,0x80,0x1e,0x32,0x80,0x72,0x83,0xdb,0xfb,0x7d,0x9c,0x03,0xe2,0x81,0x08,0x80,0x48,0x21,0x3c,0x38,0xe4,0x03,0xfc,0x3e,0x2c,0xf8,0xfc,0x81,0xe5,0x60,0xff,0xad,0x0a,0x85,0xf8,0x90,0xe1,0x33,0xf4,0x00,0x78,0xc8,0x23,0x01,0x21,0xa1,0xc0,0x0b,0xe2,0x0f,0x4a,0x60,0x3c,0x62,0x1f,0x0d,0xff,0xee,0x41,0x00,0x3f,0x88,0xbd,0xe1,0x1e,0x0e,0x39,0x1c,0xbc,0x10,0x12,0x72,0x42,0x01,0xe3,0x04,0xb0,0x58,0x01,0x27,0x03,0x07,0xa4,0x40,0x1e,0x30,0x38,0x81,0x2c,0x55,0x05,0x07,0x07,0xa5,0x82,0x08,0x38,0x18,0x40,0x3c,0xe0,0x10,0xf0,0x7a,0x60,0x20,0xb1,0xe1,0x80,0x98,0x04,0x10,0x51,0xf9,0x85,0x81,0xe6,0x38,0x1b,0xff,0xf8,0x8e,0x30,0x60,0x79,0xf0,0x27,0x94,0x8f,0x84,0x83,0x83,0x83,0x67,0x9c,0x05,0x20,0x20,0x51,0xb0,0x5c,0x01,0xe8,0x8f,0x2c,0x04,0x04,0xa6,0x49,0xf1,0xe0,0x0b,0xd4,0x1e,0x87,0xc2,0x9c,0x3b,0xe4,0x80,0x33,0xe0,0x38,0xc5,0x1d,0xf3,0x80,0xff,0x9e,0xca,0x18,0x0f,0x9f,0xf1,0x74,0xa0,0x10,0xe8,0x07,0xe3,0x07,0x3f,0xf8,0x06,0x04,0x1e,0x4a,0x92,0x58,0x88,0x10,0x75,0x94,0x67,0xc8,0xe2,0x09,0xe6,0x25,0x28,0xfc,0x02,0x0b,0x00,0xaa,0x51,0x41,0xea,0x7f,0x10,0x90,0xab,0x04,0x52,0x21,0xf4,0x3f,0x94,0x02,0xfd,0x00,0xf8,0x0b,0x46,0x0c,0x1f,0x9f,0x07,0xff,0xfe,0x22,0x10,0x38,0x93,0xdd,0x96,0x5f,0xf0,0x18,0xac,0xc4,0xde,0xe0,0xf2,0xbf,0x80,0xc5,0xa6,0x60,0xf8,0x2f,0x0a,0xfc,0x60,0x00,}; +const uint8_t _A_Level3Hijack_128x51_2[] = {0x01,0x00,0xe4,0x01,0x00,0x57,0xe2,0x3e,0x0f,0xd8,0x77,0xc0,0x1f,0xb0,0x3d,0x04,0xfc,0x1f,0x90,0x19,0x00,0x83,0x30,0x10,0x3b,0x06,0x02,0x02,0x0f,0xaf,0x04,0x16,0x80,0x42,0x10,0x7d,0x5c,0x21,0x00,0xf1,0x8e,0x03,0xea,0x31,0x10,0x07,0x8c,0xc2,0x01,0xff,0x00,0x20,0xdc,0xe0,0x90,0x0b,0x00,0x04,0x80,0x0b,0x02,0x07,0xa0,0x7c,0x78,0x05,0x06,0x05,0x88,0x4c,0xa8,0x00,0xf2,0x81,0x83,0xe6,0x03,0x80,0x07,0x94,0x1b,0xf8,0x3e,0x3b,0xf8,0x3d,0x78,0x08,0x31,0x83,0x0e,0x4c,0x0c,0x20,0xf2,0xc0,0x00,0x47,0xf1,0x03,0xc0,0x43,0x81,0xf0,0x1c,0x18,0x06,0x1a,0x0f,0x80,0x85,0x60,0xa5,0x1c,0x8b,0x8c,0x88,0x1e,0x63,0xc1,0x56,0x8c,0x33,0x01,0x1b,0x07,0x8c,0xa3,0x15,0x12,0x07,0x99,0xe8,0x78,0x1f,0x88,0xc6,0x02,0x22,0x0f,0x28,0x54,0x28,0x1e,0x69,0xa1,0xb0,0x41,0xa2,0x78,0x09,0x0e,0x0a,0x5f,0xe8,0x85,0xc1,0x81,0xe7,0x78,0x8e,0x48,0x20,0x33,0x48,0x05,0x04,0x3f,0x03,0xb1,0xd8,0xfe,0x67,0x18,0x0e,0x0e,0x0b,0x50,0x3f,0x60,0x10,0xee,0x20,0x92,0x9e,0x06,0x00,0x3e,0x32,0x7b,0x96,0x8b,0x04,0x1f,0x38,0x06,0x42,0x05,0x2b,0xe0,0x68,0x0f,0xf1,0x74,0x07,0x8e,0x0a,0x57,0xe0,0x6c,0xa0,0x3d,0x2f,0xc0,0xf1,0xf9,0x4a,0xee,0x10,0x05,0xfc,0x5d,0x60,0x1b,0x0f,0xf4,0xae,0xf0,0xb5,0x16,0xfb,0x08,0x8b,0x40,0x0f,0x19,0x40,0x39,0x41,0xed,0xfd,0xbe,0xce,0x01,0xf1,0x40,0x84,0x40,0x24,0x10,0x9e,0x1c,0x72,0x01,0xfe,0x1f,0x16,0x7c,0x7e,0x40,0xf2,0xb0,0x7f,0xd6,0x85,0x42,0xfc,0x48,0x7f,0x99,0xfa,0x00,0x3c,0x64,0x11,0x80,0x90,0xd0,0xe0,0x05,0xf1,0x07,0xa5,0x30,0x1e,0x31,0x0f,0x86,0xff,0xf7,0x20,0x80,0x1f,0xc4,0x5e,0xf0,0x8f,0x07,0x1c,0x8e,0x5e,0x08,0x09,0x39,0x21,0x00,0xf1,0x82,0x58,0x2c,0x00,0x93,0x81,0x83,0xd2,0x20,0x0f,0x18,0x1c,0x40,0x96,0x2a,0x82,0x83,0x83,0xd2,0xc1,0x04,0x1c,0x0c,0x20,0x1e,0x70,0x08,0x78,0x3d,0x30,0x10,0x58,0xf0,0xc0,0x4c,0x02,0x08,0x28,0xfc,0xc2,0xc0,0xf3,0x1c,0x0d,0xff,0xfc,0x47,0x18,0x30,0x3c,0xf8,0x13,0xca,0x47,0xc2,0x41,0xc1,0xc1,0xb3,0xce,0x02,0x90,0x10,0x28,0xd8,0x2e,0x00,0xf4,0x47,0x96,0x02,0x02,0x53,0x24,0xf8,0xf0,0x05,0xea,0x0f,0x43,0xe1,0x4e,0x1d,0xf2,0x40,0x19,0xf0,0x1c,0x62,0x8e,0xf9,0xc0,0x7f,0xcf,0x65,0x0c,0x07,0xcf,0xf8,0xba,0x50,0x08,0x74,0x03,0xf1,0x83,0x9f,0xfc,0x03,0x02,0x0f,0x25,0x49,0x2c,0x44,0x08,0x30,0x4e,0x25,0xaa,0x11,0x88,0x27,0x98,0x94,0xa3,0xf0,0x08,0x28,0x3c,0x68,0x95,0x50,0x7a,0x1f,0xc4,0x24,0x2a,0xc1,0x14,0x90,0x7c,0xcf,0xe5,0x00,0xbf,0x40,0x3e,0x02,0xd1,0x83,0x07,0xe7,0xc1,0xff,0xff,0x88,0x84,0x0e,0x24,0xf7,0x65,0x97,0xfc,0x06,0x2b,0x31,0x37,0xb8,0x3c,0xaf,0xe0,0x31,0x69,0x98,0x3e,0x0b,0xc2,0xbf,0x18,0x00,}; +const uint8_t *_A_Level3Hijack_128x51[] = {_A_Level3Hijack_128x51_0,_A_Level3Hijack_128x51_1,_A_Level3Hijack_128x51_2}; + +const uint8_t _A_Level3LabActive_128x51_0[] = {0x01,0x00,0x6a,0x02,0x00,0x1e,0x20,0x04,0x34,0x00,0x39,0xfc,0x3f,0xff,0xf9,0xff,0xf8,0x06,0x3f,0xfc,0xb8,0x3c,0xff,0x10,0x1d,0x84,0x04,0x26,0x59,0xef,0x3f,0x27,0xf7,0xbf,0x07,0x9c,0x1a,0x0d,0xb0,0xc4,0xc4,0x28,0x58,0x80,0x79,0x08,0x04,0x1e,0x70,0x18,0x40,0xdc,0x41,0xeb,0x07,0xfe,0x43,0xc1,0xe3,0x80,0x80,0x44,0x03,0xed,0xe9,0xc0,0xf0,0xef,0xe0,0xf1,0x10,0x0c,0x80,0x1e,0x84,0xf1,0xbf,0x92,0xce,0x81,0x20,0x19,0x10,0xbc,0xc1,0xe3,0x3f,0x05,0x0f,0x02,0x07,0xf0,0x07,0x90,0x7c,0xbc,0x58,0x8f,0x94,0x92,0x3e,0x0a,0x18,0x04,0x1e,0x11,0x11,0xb0,0x60,0x01,0xed,0x0f,0x88,0x03,0xc6,0x3c,0x0f,0x1c,0x81,0x44,0x45,0xe2,0x0f,0x38,0x38,0x3c,0xbf,0x90,0x98,0x8d,0xa3,0x02,0x3f,0x4f,0x96,0x92,0x06,0x78,0x1a,0x07,0xd6,0x16,0x0f,0x2f,0xe7,0x26,0x22,0x4f,0x34,0x41,0x6a,0x21,0xff,0x78,0x80,0xbc,0xb9,0x00,0xf5,0xfe,0x40,0x2e,0xb0,0x0a,0x74,0x40,0x9e,0x3f,0x00,0xf9,0xe7,0x95,0x83,0x03,0xd1,0xc3,0xa0,0x14,0xc3,0xfb,0x83,0xc7,0x01,0xf8,0xaa,0x41,0xc1,0xe9,0xfc,0x57,0xa2,0x78,0x60,0x9a,0x98,0xc0,0x3c,0x55,0xe4,0x1f,0x2a,0x38,0x3c,0xfe,0x55,0xa0,0x50,0xd3,0x19,0xe5,0xe0,0x0f,0x8d,0x1f,0x39,0xfe,0xbf,0xc8,0x21,0x33,0x50,0xe0,0xd3,0x1d,0xea,0x0f,0x3d,0x04,0x52,0x35,0x80,0x81,0x03,0xc6,0x0d,0x06,0x27,0x9e,0x73,0xe5,0x34,0xc8,0x58,0xa3,0x62,0xc1,0x07,0x8b,0x8c,0x53,0xea,0x0f,0x1c,0x90,0x7c,0x56,0x03,0x01,0xf8,0x7f,0xc0,0x07,0x3f,0xf9,0x7f,0x01,0xe7,0x80,0xff,0xb8,0x45,0x8a,0x20,0x02,0x2e,0x0c,0x73,0x2f,0xea,0x07,0x8d,0x82,0x01,0x3f,0x07,0xb7,0xfa,0x3f,0x9a,0x82,0x46,0x70,0x17,0xe8,0x05,0xe2,0x11,0x19,0x9f,0x51,0x28,0x30,0x0a,0x24,0x06,0x19,0x25,0xfc,0xc3,0x30,0x18,0x18,0x0f,0x82,0x11,0x24,0x81,0x41,0xa4,0x30,0x0a,0x17,0xfa,0x1f,0x2a,0x03,0x8d,0xf2,0x01,0x12,0xe0,0x42,0x64,0xb1,0xea,0x2c,0x9e,0x01,0x41,0x84,0x41,0xa8,0xbf,0xcf,0x9a,0xfc,0x60,0x98,0x08,0x4e,0x67,0x41,0x44,0xb4,0xe0,0x28,0x00,0xf1,0xc1,0x41,0xd1,0x23,0x00,0x84,0x7f,0x21,0x3a,0x5d,0x05,0x3e,0x53,0x40,0x07,0x92,0xa4,0xd1,0x43,0xff,0x84,0xd1,0x64,0x54,0x49,0x4c,0x80,0x1e,0x30,0x74,0x60,0x80,0x0b,0xf1,0xff,0x84,0x6e,0x63,0x80,0xf1,0x8a,0xd0,0x27,0xd0,0x30,0x7a,0x31,0x86,0x10,0xaf,0x16,0xb0,0x80,0x86,0x45,0x03,0x80,0x04,0x0b,0x81,0xff,0x8f,0xe1,0x00,0xa2,0xf6,0x10,0x78,0xca,0x81,0xe8,0x2e,0x18,0x3c,0x09,0x3e,0xa1,0xf2,0x28,0x0a,0xf8,0x7f,0xe0,0x41,0x07,0xa8,0xfc,0x40,0x83,0x02,0x6d,0x8c,0x7c,0x8a,0x80,0xf2,0xc4,0x03,0xca,0x39,0xfe,0xff,0xc3,0xc9,0x64,0x00,0x1a,0x20,0x3d,0x7c,0x17,0xf8,0x05,0xf8,0xa8,0x70,0x99,0x14,0x7c,0x1e,0x30,0x50,0xb9,0x70,0x21,0xff,0x88,0x18,0xfc,0x64,0x10,0xa8,0x8c,0x10,0x1e,0xa5,0xf1,0xf0,0x4f,0xf0,0x52,0x49,0x05,0x2a,0x23,0x84,0xa1,0xe2,0x23,0x20,0xf3,0x30,0x0c,0xff,0x09,0xa4,0xe7,0xca,0xe2,0x34,0x4a,0x16,0x22,0xc2,0x58,0x59,0x86,0x22,0x49,0x00,0x8d,0x03,0xcb,0x21,0xa1,0x3c,0x2c,0xc3,0x18,0x2f,0x19,0x50,0x3c,0xe8,0x2e,0x01,0xe0,0x03,0xca,0x71,0x0c,0x8d,0xf0,0x29,0x32,0x21,0xf8,0xe8,0x20,0x30,0x90,0x60,0xc3,0xd0,0x65,0x0a,0x3f,0xa5,0x08,0x1e,0x31,0x20,0x38,0xfe,0x9e,0x83,0x0f,0x07,0x99,0x5c,0x68,0x3c,0x08,0x0c,0x50,0x0c,0x3a,0x8f,0xd3,0x3c,0x44,0xc4,0xaf,0x3c,0x00,0x3c,0xea,0x9d,0x5f,0xff,0x0e,0x10,0x0f,0xad,0x46,0xaa,0x03,0x30,0x69,0x88,0x01,0x03,0xed,0x81,0x63,0x10,0x01,0x03,0xed,0x03,0xfc,0x07,0x97,0xfe,}; +const uint8_t _A_Level3LabActive_128x51_1[] = {0x01,0x00,0x6e,0x02,0x00,0x1e,0x20,0x04,0x34,0x00,0x39,0xfc,0x3f,0xff,0xf9,0xff,0xf8,0x06,0x3f,0xfc,0xb8,0x3c,0xff,0x10,0x1d,0x84,0x04,0x26,0x59,0x2f,0x3d,0xe7,0xf5,0xbf,0x07,0x9c,0x1a,0x0d,0xb0,0xc4,0xc4,0x28,0x58,0x80,0x79,0x08,0x04,0x1e,0x70,0x18,0x40,0xdc,0x41,0xe9,0xf9,0x83,0xff,0x21,0xe0,0xf1,0xc0,0x40,0x22,0x01,0xf6,0xfc,0xe0,0x78,0x77,0xf0,0x78,0x88,0x06,0x40,0x0f,0x42,0x78,0xdf,0xc9,0x67,0x40,0x90,0x7c,0x00,0xc3,0xc8,0x88,0x83,0xce,0x7f,0x20,0x80,0x70,0x20,0x7f,0x09,0x04,0x22,0x83,0xb0,0xe4,0xc4,0x7c,0x58,0x8c,0xf4,0xf2,0x3a,0x0f,0x18,0x04,0x1e,0x11,0x11,0x82,0x60,0x81,0xed,0x0f,0x88,0x03,0xc6,0x3c,0x0f,0x18,0x16,0x10,0xbe,0x40,0xf3,0x83,0x83,0xcb,0xf9,0x09,0x88,0xd8,0x81,0xe6,0x3f,0x1c,0xf6,0xf2,0x06,0x78,0x1a,0x07,0xd6,0x16,0x0f,0x2f,0xe1,0x7c,0x68,0xe4,0xf2,0x44,0x16,0xa2,0x1f,0xf7,0x88,0x0b,0xd0,0x1e,0x9f,0xc8,0x05,0xd6,0x01,0x4e,0x88,0x13,0xc7,0xe0,0x1f,0x3c,0xf7,0x9e,0x01,0x03,0xd1,0xc3,0xa0,0x14,0xc3,0x79,0x0f,0xd7,0xcf,0x80,0xfc,0x55,0x20,0xe0,0xf2,0x47,0x88,0xfc,0x81,0xe5,0x67,0xa0,0x41,0x35,0x31,0x80,0x78,0xab,0xc8,0x3e,0xa0,0xf1,0xf9,0x56,0x81,0x43,0x4c,0x67,0x97,0x80,0x3e,0x59,0xcf,0xf5,0xfe,0x41,0x09,0x9a,0x87,0x06,0x98,0xef,0x60,0x79,0x68,0x22,0x91,0xac,0x04,0x08,0x1e,0x30,0x68,0x30,0x3d,0x32,0x53,0x7c,0x85,0x8a,0x36,0x2c,0x10,0x78,0xb8,0xc4,0x7e,0x80,0xf2,0xc9,0x07,0xc5,0x60,0x30,0x1f,0x87,0xfc,0x00,0x73,0xfc,0x97,0xfc,0x1e,0x78,0x0f,0xfb,0x84,0x58,0xa2,0x00,0x2a,0x06,0x4a,0x3f,0x97,0xf5,0x03,0xc6,0xc1,0x00,0x9f,0x83,0xcb,0x01,0x38,0x07,0x8f,0xfa,0x3f,0x9a,0x82,0x46,0x70,0x17,0xe8,0x05,0xe3,0x11,0x08,0x84,0x40,0x64,0x32,0x0a,0x24,0x06,0x19,0x25,0xfc,0xc3,0x30,0x18,0x18,0x0f,0x80,0x1e,0x39,0x48,0x04,0x8a,0x01,0x44,0xff,0x43,0xe5,0x50,0x28,0x35,0xf2,0x01,0x12,0xe0,0x62,0x65,0x14,0x99,0x26,0x8a,0x47,0x47,0x84,0x41,0xa8,0xbf,0xcf,0x9a,0xfc,0x60,0x98,0x0c,0x4c,0xbe,0x42,0x0f,0x1d,0x25,0x10,0x1e,0x38,0x28,0x3a,0x24,0x60,0x10,0x80,0x78,0xca,0x32,0x20,0xf5,0x54,0x98,0x3c,0x5b,0x82,0x2f,0x19,0x28,0x3c,0xe0,0xe8,0xc1,0x00,0x16,0x63,0x8f,0x89,0xe4,0x61,0x63,0x1a,0x19,0x25,0x1e,0x7d,0x03,0x07,0xa7,0xc3,0x81,0x09,0x13,0x89,0xfc,0x64,0x14,0x09,0x14,0x0d,0x0c,0x20,0xf2,0x9c,0x78,0x20,0xbc,0x00,0x31,0x44,0x28,0x12,0xa0,0x7a,0xc3,0xbe,0x00,0x71,0x57,0xa0,0x7c,0x85,0x02,0x12,0x18,0x1f,0xc0,0x08,0x20,0xf4,0x1f,0x88,0x10,0x60,0x43,0xe1,0x80,0x6e,0x01,0xc8,0x0f,0x1c,0x40,0x3c,0xa3,0x90,0x08,0xfc,0x01,0x82,0x20,0xb1,0x14,0x90,0x3d,0x3c,0x1f,0xf1,0x60,0xe3,0xc0,0xc3,0xe4,0x9c,0x63,0xa7,0x14,0x2c,0x44,0x14,0x4e,0x9e,0x08,0x38,0x48,0x6a,0x94,0x5a,0x8d,0x10,0x1e,0xff,0xc8,0x1c,0x0b,0x81,0x52,0x82,0x54,0x2c,0x94,0x1c,0x44,0x64,0x1e,0x9f,0xf6,0x88,0xc8,0x3c,0x16,0x4a,0x65,0x50,0x7e,0x36,0x11,0x72,0x14,0x06,0x11,0x40,0xa0,0x51,0x6a,0x14,0xca,0x06,0x43,0x42,0x78,0x3f,0xc3,0xc4,0x61,0x98,0x0a,0x80,0xfc,0x81,0xe3,0x41,0x76,0x96,0x00,0x5c,0x30,0x0c,0x65,0xbf,0xc0,0x5f,0x2a,0x06,0x82,0x02,0xc8,0x12,0x68,0x83,0xca,0x14,0x7f,0x50,0x78,0xc4,0x80,0xc3,0xfe,0x07,0xa2,0x7d,0x38,0x10,0x18,0xa0,0x14,0x7d,0x00,0xf2,0x13,0x10,0x3c,0xf0,0x00,0xf3,0xaa,0x77,0x60,0x3c,0x28,0x40,0x3e,0xb5,0x1a,0xa8,0x0c,0xc3,0xe1,0xff,0x00,0x20,0x7d,0x7a,0xb8,0x17,0xf2,0x9a,0x88,0x3e,0xb0,0x3f,0xc0,0x79,0x7f,0xe0,}; +const uint8_t *_A_Level3LabActive_128x51[] = {_A_Level3LabActive_128x51_0,_A_Level3LabActive_128x51_1}; + +const uint8_t _A_Level3Lab_128x51_0[] = {0x01,0x00,0x97,0x02,0x00,0x1e,0x20,0x04,0x34,0x00,0x39,0xfc,0x3f,0xff,0xf9,0xff,0xf8,0x06,0x3f,0xfc,0xb8,0x3c,0xff,0x10,0x1d,0x84,0x04,0x26,0x59,0xef,0x3f,0x27,0xf7,0xbf,0x07,0x9c,0x1a,0x0d,0xb0,0xc4,0xc4,0x28,0x58,0x80,0x79,0x08,0x04,0x1e,0x70,0x18,0x40,0xdc,0x41,0xeb,0x07,0xfe,0x43,0xc1,0xe3,0x80,0x80,0x44,0x03,0xed,0xe9,0xc0,0xf0,0xef,0xe0,0xf1,0x10,0x0c,0x80,0x1e,0x84,0xf1,0xbf,0x92,0xce,0x81,0x20,0x19,0x10,0xbc,0xc1,0xe3,0x3f,0x05,0x0f,0x02,0x07,0xf0,0x07,0x90,0x7c,0xbc,0x58,0x8f,0x94,0x92,0x3e,0x0a,0x18,0x04,0x1e,0x11,0x11,0xb0,0x60,0x01,0xed,0x0f,0x88,0x03,0xc6,0x3c,0x0f,0x1c,0x81,0x44,0x45,0xe2,0x0f,0x38,0x38,0x3c,0xbf,0x90,0x98,0x8d,0xa3,0x02,0x3f,0x4f,0x96,0x92,0x06,0x78,0x1a,0x07,0xd6,0x16,0x0f,0x2f,0xe7,0x26,0x22,0x4f,0x34,0x41,0x6a,0x21,0xff,0x78,0x80,0xbc,0xb9,0x00,0xf5,0xfe,0x40,0x2e,0xb0,0x0a,0x74,0x40,0x9e,0x3f,0x00,0xf9,0xe7,0x95,0x83,0x03,0xd1,0xc3,0xa0,0x14,0xc3,0xfb,0x83,0xc7,0x01,0xf8,0xaa,0x41,0xc1,0xe9,0xfc,0x57,0xa2,0x78,0x60,0x9a,0x98,0xc0,0x3c,0x55,0xe4,0x1f,0x2a,0x38,0x3c,0xfe,0x55,0xa0,0x50,0xd3,0x19,0xe5,0xe0,0x0f,0x8d,0x1f,0x39,0xfe,0xbf,0xc8,0x21,0x33,0x50,0xe0,0xd3,0x1d,0xe5,0x7c,0x0f,0x90,0x3c,0xb4,0x11,0x48,0xd6,0x02,0x04,0x0f,0x18,0x34,0x1b,0xfd,0x8f,0x1f,0x8e,0x73,0xe5,0x34,0xc8,0x58,0xa3,0x62,0xc1,0x07,0x8b,0x8c,0x60,0x7f,0xc4,0xf9,0x83,0xc7,0x24,0x1f,0x15,0x80,0xc0,0x56,0x83,0x03,0xf4,0x43,0xc0,0x83,0xf2,0xfe,0x03,0xcf,0x01,0xff,0x39,0x09,0x04,0x40,0xa2,0xfc,0x1f,0x94,0x73,0x2f,0xea,0x07,0x8d,0x82,0x01,0x3f,0x80,0x60,0x04,0x43,0x80,0x8f,0xc0,0x3f,0xd1,0xfc,0xd4,0x12,0x33,0x80,0xbf,0x40,0x2f,0x0b,0xd1,0x19,0x17,0xfa,0x43,0x01,0x86,0x49,0x7f,0x30,0xcc,0x06,0x06,0x03,0xe0,0x80,0x78,0x01,0xe4,0x20,0x1f,0xf4,0x3e,0x55,0x02,0x83,0x5f,0x20,0x11,0x2e,0x04,0x07,0xd1,0x71,0x2b,0x0c,0x02,0x11,0x08,0x83,0x51,0x7f,0x9f,0x32,0x60,0xc1,0x07,0xa3,0xc8,0xe0,0x15,0x0a,0x18,0x0f,0x1c,0x14,0x1e,0x0c,0x17,0x20,0x78,0xda,0x06,0x23,0xf9,0x07,0x9a,0xa4,0x81,0xe4,0x80,0x1b,0x44,0x43,0xe0,0x92,0x18,0x24,0x22,0x0e,0x35,0x20,0x00,0xe6,0x38,0xe0,0xf1,0xb0,0x28,0x84,0x94,0x33,0xe8,0x18,0x3d,0x3e,0x04,0xf1,0x9f,0x23,0x86,0x06,0xc5,0x19,0x10,0x0c,0x42,0x07,0x38,0xf0,0x60,0x66,0xb0,0x0c,0xe7,0xf6,0x07,0x06,0x95,0x03,0xd6,0x1d,0xf0,0xa0,0xc6,0x20,0x19,0xe8,0x0c,0x3a,0x06,0x1f,0x22,0x80,0x84,0x86,0x07,0xf0,0x90,0x03,0xc7,0x9e,0xd3,0x21,0xf8,0x81,0x06,0x04,0x3e,0x11,0x80,0xc8,0x0e,0x43,0x67,0x86,0x03,0xc7,0x10,0x0f,0x28,0xe4,0x01,0x8e,0x33,0xe8,0x84,0x33,0x61,0x67,0xe0,0x03,0xd7,0xc1,0xff,0x18,0x8c,0x3c,0x1e,0x3d,0x89,0x1e,0x03,0x0f,0x01,0xc4,0x41,0x4d,0xc6,0x12,0x18,0x3c,0x22,0x09,0xfe,0x23,0x90,0x3d,0xff,0x82,0x81,0x83,0xf9,0xf0,0x70,0xfc,0x04,0x77,0x11,0x19,0x07,0xa7,0xfe,0x01,0xe8,0x81,0xfc,0xf8,0xf1,0x8c,0x04,0x4f,0x11,0x61,0x17,0x21,0x40,0x6f,0x18,0x2b,0xcd,0x3a,0x60,0x0f,0x1c,0x86,0x84,0x6a,0x20,0x01,0xfc,0x3a,0x46,0x79,0x82,0x9e,0xdf,0x2c,0x1c,0x08,0x96,0x42,0x82,0xed,0x25,0xc8,0x80,0xc4,0x1e,0x30,0xf8,0xe7,0x02,0x81,0x1e,0xd0,0x40,0x61,0x24,0xd2,0x07,0x94,0x7b,0x05,0x07,0x9e,0x60,0x2c,0x31,0x40,0x78,0xc4,0x81,0x63,0xfe,0x07,0x94,0x3a,0x05,0x07,0x9c,0x40,0x24,0x10,0xc7,0x38,0xc5,0x01,0x63,0xe8,0x07,0x94,0x3f,0x02,0x0f,0x35,0xa0,0x83,0xce,0xa9,0xdd,0x80,0xf0,0xa0,0xe0,0xf3,0x98,0x18,0x44,0x1e,0x7a,0x8d,0x54,0x07,0x61,0x03,0xe0,0xc0,0xc1,0xe5,0xc0,0x0f,0xaf,0x57,0x03,0x83,0x80,0xf0,0x60,0x33,0x89,0xf4,0xc1,0x62,0x41,0xf4,0x81,0xfe,0x3f,0xfc,0x17,0x98,0xbd,0xc7,0xfe,}; +const uint8_t _A_Level3Lab_128x51_1[] = {0x01,0x00,0x9f,0x02,0x00,0x1e,0x20,0x04,0x34,0x00,0x39,0xfc,0x3f,0xff,0xf9,0xff,0xf8,0x06,0x3f,0xfc,0xb8,0x3c,0xff,0x10,0x1d,0x84,0x04,0x26,0x59,0x2f,0x3d,0xe7,0xf5,0xbf,0x07,0x9c,0x1a,0x0d,0xb0,0xc4,0xc4,0x28,0x58,0x80,0x79,0x08,0x04,0x1e,0x70,0x18,0x40,0xdc,0x41,0xe9,0xf9,0x83,0xff,0x21,0xe0,0xf1,0xc0,0x40,0x22,0x01,0xf6,0xfc,0xe0,0x78,0x77,0xf0,0x78,0x88,0x06,0x40,0x0f,0x42,0x78,0xdf,0xc9,0x67,0x40,0x90,0x7c,0x00,0xc3,0xc8,0x88,0x83,0xce,0x7f,0x20,0x80,0x70,0x20,0x7f,0x09,0x04,0x22,0x83,0xb0,0xe4,0xc4,0x7c,0x58,0x8c,0xf4,0xf2,0x3a,0x0f,0x18,0x04,0x1e,0x11,0x11,0x82,0x60,0x81,0xed,0x0f,0x88,0x03,0xc6,0x3c,0x0f,0x18,0x16,0x10,0xbe,0x40,0xf3,0x83,0x83,0xcb,0xf9,0x09,0x88,0xd8,0x81,0xe6,0x3f,0x1c,0xf6,0xf2,0x06,0x78,0x1a,0x07,0xd6,0x16,0x0f,0x2f,0xe1,0x7c,0x68,0xe4,0xf2,0x44,0x16,0xa2,0x1f,0xf7,0x88,0x0b,0xd0,0x1e,0x9f,0xc8,0x05,0xd6,0x01,0x4e,0x88,0x13,0xc7,0xe0,0x1f,0x3c,0xf7,0x9e,0x01,0x03,0xd1,0xc3,0xa0,0x14,0xc3,0x79,0x0f,0xd7,0xcf,0x80,0xfc,0x55,0x20,0xe0,0xf2,0x47,0x88,0xfc,0x81,0xe5,0x67,0xa0,0x41,0x35,0x31,0x80,0x78,0xab,0xc8,0x3e,0xa0,0xf1,0xf9,0x56,0x81,0x43,0x4c,0x67,0x97,0x80,0x3e,0x59,0xcf,0xf5,0xfe,0x41,0x09,0x9a,0x87,0x06,0x98,0xef,0x2b,0xe0,0x7c,0x81,0xe5,0xa0,0x8a,0x46,0xb0,0x10,0x20,0x78,0xc1,0xa0,0xdf,0xec,0x78,0x3c,0xb2,0x53,0x7c,0x85,0x8a,0x36,0x2c,0x10,0x78,0xb8,0xc6,0x07,0xfc,0x7f,0x98,0x3c,0x72,0x41,0xf1,0x58,0x0c,0x05,0x68,0x30,0x3f,0x44,0x3c,0x08,0x39,0x2f,0xf8,0x3c,0xf0,0x1f,0xf3,0x90,0x90,0x44,0x0a,0x2f,0xc1,0xc9,0x47,0xf2,0xfe,0xa0,0x78,0xd8,0x20,0x13,0xf8,0x06,0x00,0x44,0x38,0x08,0xfc,0x03,0xfd,0x1f,0xcd,0x41,0x23,0x38,0x0b,0xf4,0x02,0xf1,0x00,0xe4,0x0c,0x8b,0xfd,0x21,0x80,0xc3,0x24,0xbf,0x98,0x66,0x03,0x03,0x01,0xf0,0x40,0x3c,0x00,0xf2,0x10,0x0f,0xfa,0x1f,0x2a,0x81,0x41,0xaf,0x90,0x08,0x97,0x02,0x03,0xe8,0xb8,0x83,0xc6,0x05,0x08,0x84,0x41,0xa8,0xbf,0xcf,0x99,0x30,0x60,0x83,0xd1,0xe4,0x70,0x0a,0x83,0x07,0x86,0x03,0xc7,0x05,0x07,0x83,0x06,0x06,0x10,0x0f,0x1b,0x40,0x14,0x7f,0x00,0xf3,0x54,0x90,0x3c,0x90,0x03,0x68,0x88,0x40,0x38,0x10,0x78,0x24,0x22,0x0e,0x8c,0x10,0x01,0x66,0x38,0xe0,0xf1,0x3a,0x0f,0x80,0x54,0x33,0xe8,0x18,0x3d,0x3e,0x04,0xf1,0x9f,0x23,0x87,0xe6,0xc4,0x19,0x14,0x0c,0xc8,0x20,0xf2,0x9c,0x78,0x30,0x33,0x50,0x28,0xff,0x03,0xe3,0x2a,0x07,0xac,0x3b,0xe1,0x41,0x8c,0x19,0x06,0xf1,0x0e,0x81,0x87,0xc8,0xa0,0x21,0x21,0x81,0xfc,0x24,0x00,0xf1,0x84,0x4f,0x20,0x70,0x31,0xf8,0xa1,0x48,0x7c,0x23,0x01,0x90,0x19,0x4b,0x3c,0xf3,0x1c,0x40,0x3c,0xa3,0x90,0x06,0x38,0xcf,0xa2,0x10,0xc9,0x84,0x03,0xbc,0x0f,0x5f,0x07,0xfc,0x62,0x30,0xf0,0x78,0xf6,0x20,0x18,0xfc,0x3c,0x07,0x11,0x05,0x37,0x19,0xe4,0xa1,0x10,0x4c,0x37,0xc1,0x16,0x20,0xf7,0xfe,0x0a,0x06,0x0f,0x83,0xce,0x43,0xf0,0x11,0xdc,0x44,0x64,0x1e,0x9f,0xf8,0x07,0xa1,0x30,0x3c,0xc8,0xfe,0x02,0x27,0x88,0xb0,0x8b,0x90,0xa0,0x37,0x88,0x16,0x03,0xcf,0x39,0x07,0x8e,0x43,0x42,0x4b,0x16,0xc1,0xc0,0x27,0x87,0x51,0xfb,0xdc,0x38,0x11,0x2c,0x85,0x05,0xda,0x4b,0x91,0x01,0x88,0x3c,0xa7,0xdf,0x0a,0x04,0x7b,0x41,0x01,0x84,0x93,0x48,0x1e,0x51,0xe0,0x78,0xc7,0xbe,0x16,0x18,0xa0,0x3c,0x62,0x40,0xb1,0xff,0x03,0xca,0x1c,0x0f,0x18,0xe7,0x82,0x41,0x0c,0x73,0x8c,0x50,0x16,0x3e,0x80,0x79,0x43,0xe0,0x30,0x18,0xf0,0x3c,0x61,0x08,0x11,0x07,0x95,0x53,0xbb,0x01,0xe1,0x41,0xe0,0x3c,0x00,0x78,0xcc,0x26,0x00,0xf4,0xd4,0x6a,0xa0,0x3b,0x08,0x1a,0xcc,0x81,0xe3,0xc0,0x0f,0xaf,0x57,0x03,0x83,0x17,0x0c,0x02,0x0e,0x0f,0x13,0x50,0x87,0xd6,0x07,0xf8,0x69,0x94,0x0f,0xc1,0xf0,0xff,0x80,}; +const uint8_t _A_Level3Lab_128x51_2[] = {0x01,0x00,0xa6,0x02,0x00,0x1e,0x20,0x04,0x34,0x00,0x39,0xfc,0x3f,0xff,0xf9,0xff,0xf8,0x06,0x3f,0xfc,0xb8,0x3c,0xff,0x10,0x1d,0x84,0x04,0x26,0x59,0xef,0x27,0xe7,0xf7,0xbf,0x07,0x9c,0x1a,0x0d,0xb0,0xc4,0xc4,0x28,0x58,0x80,0x79,0x08,0x04,0x1e,0x70,0x18,0x40,0xdc,0x41,0xeb,0x07,0xfe,0x43,0xc1,0xe3,0x80,0xf8,0x44,0x03,0xef,0x81,0xe1,0xdf,0xc1,0xe3,0x40,0x86,0x48,0xc1,0xe5,0x47,0xc4,0x13,0xc6,0xfe,0x4b,0x3a,0x04,0x82,0x05,0x44,0x17,0x90,0x3c,0xe7,0xf2,0x08,0x07,0x02,0x07,0xf0,0x90,0x40,0x69,0x01,0xf4,0xcf,0x4f,0x23,0xe0,0xf1,0x80,0x41,0xe1,0x11,0x1b,0x0e,0x20,0x7e,0xb3,0xc8,0x7c,0x40,0x1e,0x31,0xe8,0x46,0x47,0x21,0x90,0x2f,0xac,0xf2,0x0e,0x0f,0x2f,0xe4,0x27,0x23,0x68,0xc8,0x83,0xcf,0x39,0x9e,0xde,0x40,0xcf,0x03,0x40,0xfa,0xc2,0xc1,0xe5,0xfc,0xe4,0xc4,0x41,0xe2,0x4f,0x14,0x41,0x6a,0x21,0xff,0x71,0x70,0x8b,0xc7,0x90,0x0f,0x5f,0xe4,0x02,0xeb,0x00,0xa7,0x44,0x09,0xe3,0xf0,0x0f,0x91,0xbc,0x41,0xa3,0x03,0xd1,0xc3,0xa0,0x14,0xc3,0x79,0x0f,0xcb,0xc4,0x0f,0x2c,0x07,0xe2,0xa9,0x07,0x07,0x92,0x3c,0x7f,0x86,0xf1,0x07,0x95,0xf2,0x81,0x04,0xd4,0xc6,0x01,0xe2,0xaf,0x20,0xfa,0x83,0xc7,0xe5,0x5a,0x48,0x8d,0x31,0x9e,0x5e,0x04,0x79,0xff,0xaf,0xf2,0x08,0x4c,0xd5,0x82,0x34,0xc7,0x79,0x5f,0x11,0xe6,0x0f,0x1d,0x04,0x52,0x35,0x80,0x81,0x03,0xc6,0x0d,0x06,0xff,0x63,0xc1,0xe5,0x92,0x9b,0xe4,0x2c,0x51,0xbc,0x00,0x7c,0x9c,0x63,0x03,0xfe,0x03,0xd7,0x24,0x1f,0x15,0x80,0xc0,0x56,0x83,0x03,0xf4,0x43,0xc0,0x83,0x92,0xff,0x83,0xcf,0x01,0xff,0x39,0x09,0x04,0x40,0xa2,0xfc,0x1c,0x94,0x7f,0x2f,0xea,0x07,0x8d,0x82,0x01,0x3f,0x80,0x60,0x04,0x43,0x80,0x8f,0xc0,0x3f,0xd1,0xfc,0xd4,0x12,0x33,0x80,0xbf,0x40,0x2f,0x0b,0xd1,0x19,0x17,0xfa,0x43,0x01,0x86,0x49,0x7f,0x30,0xcc,0x06,0x06,0x03,0xe0,0x80,0x78,0x01,0xe4,0x20,0x1f,0xf4,0x3e,0x55,0x02,0x83,0x5f,0x20,0x11,0x2e,0x04,0x07,0xd1,0x71,0x07,0x8c,0x02,0x11,0x08,0x83,0x51,0x7f,0x9f,0x32,0x60,0xc1,0x07,0xa3,0xc8,0xe0,0x7f,0xcb,0xe3,0x0c,0x07,0x8e,0x0a,0x0f,0x06,0x0b,0x90,0x3c,0x6d,0x00,0x51,0x75,0x88,0x3c,0x95,0x24,0x0f,0x24,0x00,0xda,0x22,0x10,0x08,0xf4,0x0e,0x09,0x08,0x83,0xa3,0x04,0x00,0x59,0x8e,0x38,0x3c,0x4e,0x83,0x1f,0x25,0x0c,0xfa,0x06,0x0f,0x4f,0x81,0x3c,0x67,0xc8,0xe1,0x3f,0x0c,0x1a,0x45,0x03,0x32,0x08,0x3c,0xa7,0x1e,0x0c,0x0c,0xd6,0x00,0x50,0x18,0x1c,0x1a,0x54,0x0f,0x58,0x77,0xc2,0x83,0x18,0x80,0x71,0x23,0x30,0xe8,0x18,0x7c,0x8a,0x02,0x12,0x18,0x1f,0xc2,0x40,0x0f,0x1f,0x44,0x65,0xa6,0x23,0xf1,0x07,0x8c,0x08,0x7c,0x23,0x01,0x90,0x19,0x47,0xe1,0x0c,0x07,0x8e,0x20,0x1e,0x51,0xc2,0xc0,0xc0,0x27,0xd1,0x08,0x64,0xc2,0xf1,0xc6,0x07,0xaf,0x83,0xfe,0x31,0x18,0x78,0x3c,0x7b,0x17,0x8c,0x36,0x1e,0x03,0x88,0x82,0x9b,0x8c,0x24,0x30,0x78,0x44,0x13,0x0d,0x3c,0x81,0x29,0x44,0x1e,0xdf,0xc1,0x40,0xc1,0xf8,0x79,0xf8,0x7e,0x02,0x3b,0x88,0x29,0x88,0x00,0xff,0xe5,0xc1,0x81,0xdc,0x3f,0xd1,0x8c,0x04,0x4f,0x11,0x61,0x17,0x21,0x40,0x6f,0x10,0x29,0x85,0xfe,0x60,0x0f,0x1c,0x86,0x84,0x96,0x20,0x01,0xfc,0x3c,0x44,0x78,0x39,0x8f,0x3d,0x83,0x81,0x12,0xc8,0x50,0x5d,0xa4,0xb9,0x10,0x18,0x83,0xc7,0xb1,0xc3,0xe0,0xd0,0x23,0xda,0x08,0x0c,0x24,0x9a,0x40,0xf2,0x8f,0x40,0xbf,0x1c,0x0c,0x0d,0x86,0x28,0x0f,0x18,0x90,0x2c,0x7f,0xc0,0xf2,0x87,0x40,0xaf,0x1c,0x08,0x1c,0x82,0x18,0xe7,0x18,0xa0,0x2c,0x7d,0x00,0xf2,0x87,0xc0,0x6e,0x2c,0x51,0x5a,0x0a,0x04,0x41,0xe5,0x54,0xee,0xc0,0x78,0x50,0x78,0x0d,0xe0,0x1e,0x33,0x03,0x08,0x83,0xcf,0x51,0xaa,0x80,0xec,0x20,0x60,0xf4,0xe0,0x07,0xd7,0xab,0x81,0xc1,0xc0,0x60,0x33,0xcc,0x04,0xfe,0x60,0x6a,0x10,0xfa,0xc0,0xff,0x0d,0x31,0x8e,0x07,0xc7,0xe1,0xff,}; +const uint8_t *_A_Level3Lab_128x51[] = {_A_Level3Lab_128x51_0,_A_Level3Lab_128x51_1,_A_Level3Lab_128x51_2}; + +const uint8_t _I_LevelUp2_03_0[] = {0x01,0x00,0xa3,0x00,0x00,0x37,0xf2,0x02,0x0f,0xdf,0xfc,0xfc,0x1d,0x9c,0x0f,0xff,0xfc,0x1f,0x9f,0x00,0x78,0x8c,0x33,0xf0,0x0f,0x18,0x19,0x3b,0x01,0xfe,0x0f,0x18,0x38,0x3e,0xff,0xc0,0xf1,0x87,0x83,0xfc,0xfd,0x80,0x01,0x8f,0x83,0xfc,0x1f,0xca,0x0c,0x07,0xf8,0x3c,0xaf,0xe0,0xff,0x07,0xf8,0x3f,0x9c,0x18,0x8f,0x20,0x7f,0x83,0xff,0xff,0x01,0x07,0xf8,0x3f,0xcb,0xfc,0x0f,0xac,0x00,0x3f,0xb8,0x00,0xfe,0xf0,0x03,0xfb,0xe0,0x0f,0xf0,0x7f,0x83,0xfc,0x9f,0xe6,0xff,0x07,0xf0,0xc1,0x01,0xf7,0xf8,0x07,0xf8,0x3f,0xc1,0xfd,0xfc,0x07,0xf8,0x3f,0xc1,0xfc,0x00,0xf0,0x06,0xe2,0x37,0xd2,0x48,0x25,0x7f,0xe9,0x05,0x8a,0x83,0xe3,0x04,0x0f,0x1a,0x0c,0x52,0x08,0x0f,0x8c,0xc0,0x3f,0xb5,0x19,0xe0,0x78,0xe3,0xfe,0x40,0xf9,0xe4,0x07,0xcb,0x03,0x12,0x07,0xc8,0xfc,0xe0,0x31,0x18,0x21,0x7e,0x67,0xd1,0xbb,0xe4,0x7f,0xe3,0x7d,0x0f,0xc0,0x03,0xc0,0x1e,0x00,0xb0,}; +const uint8_t *_I_LevelUp2_03[] = {_I_LevelUp2_03_0}; + +const uint8_t _I_LevelUp2_02_0[] = {0x01,0x00,0xe1,0x00,0x00,0x37,0xe2,0x02,0x0f,0xda,0xbc,0xfc,0x1d,0x9c,0x0d,0x5f,0xa8,0x1f,0x97,0x0a,0xaf,0x54,0x61,0x9b,0x8d,0x56,0xaa,0x06,0x0f,0xba,0xa5,0x56,0xaa,0x0f,0xcd,0x60,0x7c,0x60,0xc0,0xfb,0xab,0x07,0xc6,0x1a,0x0f,0xb0,0xf0,0xea,0xa1,0x47,0xec,0xfa,0xd5,0xe3,0xa0,0xfb,0xd5,0xfe,0xb5,0xd1,0xa0,0x7d,0xd5,0x6f,0xb5,0xd9,0xa8,0x7f,0x3d,0xda,0xa9,0x50,0x7f,0x3e,0xb5,0xfb,0xa8,0x7f,0x75,0x76,0xa0,0xff,0x55,0x43,0xfb,0xaf,0x70,0x65,0x5b,0xfb,0x57,0xea,0xa7,0xf3,0xd5,0xab,0xd5,0x2f,0xfb,0xab,0x01,0x5f,0xee,0xa8,0x1f,0x61,0xf2,0xaa,0x83,0xec,0x7a,0x21,0xfc,0xc0,0x07,0x88,0x3f,0x7c,0x0d,0x56,0xe8,0x3f,0x96,0x0a,0xaa,0x78,0x43,0xf7,0xb0,0xd5,0x10,0x08,0x1f,0x55,0x0b,0xf8,0xff,0x7e,0x1a,0xb1,0xfe,0xdc,0x07,0xfd,0xe0,0x5f,0x10,0x7e,0xf8,0x03,0xfe,0x30,0x12,0xff,0x6b,0x01,0xfe,0xd4,0x07,0xfc,0x3f,0xda,0xc0,0xff,0x55,0x03,0xfe,0x1f,0x20,0x75,0x00,0x3c,0x01,0xd8,0x8d,0xf4,0x92,0x09,0x5f,0xfa,0x41,0x62,0xa0,0xf8,0xc1,0x03,0xc6,0x83,0x14,0x82,0x03,0xe3,0x30,0x0f,0xed,0x46,0x78,0x1e,0x38,0xff,0x90,0x3e,0x79,0x01,0xf2,0xc0,0xc4,0x81,0xf2,0x3f,0x38,0x0c,0x46,0x08,0x5f,0x99,0xf4,0x6e,0xf9,0x1f,0xf8,0xdf,0x43,0xf0,0x00,0xf0,0x07,0x80,0x2c,}; +const uint8_t *_I_LevelUp2_02[] = {_I_LevelUp2_02_0}; + +const uint8_t _I_LevelUp2_05_0[] = {0x01,0x00,0x1d,0x01,0x00,0x37,0xf2,0x02,0x0f,0xd8,0x3c,0xfc,0x1d,0x9c,0x0e,0x0f,0x84,0x1f,0x96,0x0b,0x86,0x00,0x61,0x91,0x88,0xc4,0x02,0x06,0x0f,0xb8,0x24,0x32,0x01,0x02,0x07,0xe4,0x1a,0x00,0x01,0x10,0x05,0x41,0xbc,0x70,0xf1,0x08,0x80,0x1e,0x80,0x02,0x18,0x14,0x66,0x21,0x08,0x36,0x48,0x08,0x70,0x7c,0xd9,0x39,0x44,0x42,0xe4,0x00,0x43,0x51,0x7f,0xf4,0x96,0xf8,0x84,0x02,0xf8,0x20,0x73,0x50,0xe0,0x7a,0xf5,0xf9,0x86,0x02,0x0e,0x4d,0x88,0x04,0x07,0xa9,0xde,0x90,0x0d,0x88,0xda,0xe0,0xf2,0xcf,0xc8,0x0d,0xf7,0x49,0x07,0x89,0x35,0xc1,0xeb,0x94,0xeb,0x83,0xf2,0x97,0x2c,0xa4,0x03,0xf2,0x05,0xd8,0xbf,0xe0,0x01,0xf9,0x3f,0xa1,0x83,0xf3,0xf5,0xf1,0xc0,0x83,0xc7,0xfd,0x0f,0x06,0x2c,0x70,0x04,0x30,0xc0,0xe9,0x29,0x44,0x00,0xd7,0x04,0x89,0x83,0xe9,0x30,0x4b,0x11,0x6f,0x08,0x3e,0x1a,0x28,0xfe,0x10,0x7d,0x08,0x49,0x98,0x20,0xfa,0x5d,0x8f,0x80,0x7f,0x40,0x01,0x75,0x8c,0x7c,0x1f,0x91,0x0b,0xf1,0x7e,0xc0,0x03,0xf0,0x2f,0x88,0x3c,0xa6,0x02,0xf9,0x1f,0xa0,0x0c,0x80,0x0d,0x60,0x80,0x4f,0x01,0xe4,0x75,0x20,0x02,0x78,0x23,0xfc,0x0f,0xf8,0xc0,0x87,0xf1,0x38,0x28,0x11,0x3f,0x60,0x11,0x80,0x7f,0x2f,0x44,0x1f,0xe0,0xfd,0x66,0x88,0x3f,0x60,0x80,0xba,0x07,0xf8,0x03,0xc0,0x1e,0x00,0x1c,0x46,0xfa,0x49,0x04,0xaf,0xfd,0x20,0xb1,0x50,0x7c,0x60,0x81,0xe3,0x41,0x8a,0x41,0x01,0xf1,0x98,0x07,0xf6,0xa3,0x3c,0x0f,0x1c,0x7f,0xc8,0x1f,0x3c,0x80,0xf9,0x60,0x62,0x40,0xf9,0x1f,0x9c,0x06,0x22,0x83,0x9c,0x44,0xfa,0x37,0x7c,0x8f,0xfc,0x6f,0xa1,0xf8,0x00,0x78,0x03,0xc0,0x16,}; +const uint8_t *_I_LevelUp2_05[] = {_I_LevelUp2_05_0}; + +const uint8_t _I_LevelUp2_04_0[] = {0x01,0x00,0x16,0x01,0x00,0x37,0xf2,0x02,0x0f,0xda,0xbc,0xfc,0x1d,0x9c,0x0f,0x5f,0xac,0x1f,0x97,0x0b,0xaf,0x54,0x61,0x9b,0x8d,0xd6,0xaa,0x06,0x0f,0xba,0xa5,0x76,0xaa,0x0f,0xcd,0x66,0xbb,0x55,0x06,0x07,0xdd,0x5b,0xef,0x5f,0x86,0x83,0xef,0x55,0xbb,0xdd,0x42,0x81,0xf7,0xd7,0xee,0xdd,0xe3,0xa0,0xfb,0xff,0xeb,0xbd,0xf1,0xa0,0x7d,0xf5,0x7a,0xf5,0xf9,0xa8,0x36,0x60,0x90,0x0d,0x5f,0xfb,0xfd,0x2a,0xb0,0x03,0xe2,0x39,0x00,0xaa,0xf5,0x7b,0xf7,0x59,0xc0,0x3e,0x26,0x10,0x0f,0x5f,0xfb,0x7f,0x6a,0x84,0x0f,0xea,0xba,0x40,0x1a,0xa9,0x3e,0xfd,0x7a,0xef,0x57,0xa9,0x3f,0x9d,0xdb,0xff,0x55,0x3f,0x9b,0xff,0x5e,0xa8,0x1f,0x7f,0xef,0xaf,0x57,0xab,0xf1,0x07,0xd3,0x78,0x40,0x03,0x01,0x06,0xc4,0x08,0x7e,0x35,0x50,0x00,0x83,0xe6,0x1c,0x9f,0x10,0xfe,0x46,0x30,0x01,0xd1,0xae,0x87,0xea,0x01,0xc0,0x0e,0x8e,0xbc,0x3f,0x50,0x0b,0x05,0x57,0xea,0x21,0x1e,0x08,0x3e,0x76,0x07,0xf1,0x10,0x8e,0x06,0x06,0x0f,0x8a,0x85,0xfc,0xbf,0x90,0x0f,0x81,0x7f,0x60,0x17,0x01,0xf9,0x83,0xe7,0x81,0xe1,0xd5,0x6f,0x83,0xf7,0x70,0xe0,0x7f,0xea,0xe3,0xfc,0x30,0x10,0xff,0x20,0x15,0x82,0xfe,0xc0,0x35,0x01,0xff,0x0f,0xf6,0xb0,0x3f,0xd5,0x40,0xff,0x87,0xc8,0x1d,0x40,0x0f,0x00,0x76,0x23,0x7d,0x24,0x82,0x57,0xfe,0x90,0x58,0xa8,0x3e,0x30,0x40,0xf1,0xa0,0xc5,0x20,0x80,0xf8,0xcc,0x03,0xfb,0x51,0x9e,0x07,0x8e,0x3f,0xe4,0x0f,0x9e,0x40,0x7c,0xb0,0x31,0x20,0x7c,0x8f,0xce,0x03,0x11,0x82,0x17,0xe6,0x7d,0x1b,0xbe,0x47,0xfe,0x37,0xd0,0xfc,0x00,0x3c,0x01,0xe0,0x0b,}; +const uint8_t *_I_LevelUp2_04[] = {_I_LevelUp2_04_0}; + +const uint8_t _I_LevelUp2_01_0[] = {0x01,0x00,0xdc,0x00,0x00,0x37,0xe2,0x02,0x0f,0xd8,0x3c,0xfc,0x1d,0x9c,0x08,0x0f,0x80,0x1f,0x96,0x08,0x06,0x00,0x61,0x91,0x80,0x10,0xc0,0xc1,0xf7,0x04,0x01,0x0c,0x08,0x1f,0xd0,0x60,0x7d,0x83,0x0a,0x18,0x0f,0xb1,0x61,0x42,0x01,0xf7,0x03,0xf8,0x41,0xca,0x44,0x00,0x98,0x0f,0x62,0x09,0x10,0x07,0xe5,0xa2,0x19,0x30,0x07,0xe7,0xb2,0x11,0x20,0x07,0xe7,0x92,0x1e,0x0f,0xe8,0x5d,0x00,0x1f,0x9a,0x48,0x78,0x3f,0x20,0x7e,0xc0,0x7e,0xc0,0xbf,0x10,0x7c,0x00,0x3f,0x3c,0x10,0x30,0x7e,0x80,0x84,0x1f,0x85,0x34,0x6f,0xe8,0x3f,0x20,0x60,0xfd,0xc0,0x02,0xcc,0x1f,0x5c,0x08,0x03,0x34,0x81,0xf4,0xbb,0x18,0x70,0x3f,0x26,0x18,0x02,0x01,0x03,0xea,0x21,0x7e,0x1f,0xef,0xc2,0x07,0x10,0x17,0xec,0x02,0x3c,0x0f,0xcb,0x07,0x00,0x18,0x46,0xfb,0xbf,0xa7,0xf8,0x7c,0x40,0xfc,0x8c,0x03,0xfa,0x10,0x0f,0xf0,0x7f,0x43,0x01,0xfd,0x04,0x05,0xd0,0x3f,0xc0,0x1e,0x00,0xf0,0x00,0xe2,0x37,0xd2,0x48,0x25,0x7f,0xe9,0x05,0x8a,0x83,0xe3,0x04,0x0f,0x1a,0x0c,0x52,0x08,0x0f,0x8c,0xc0,0x3f,0xb5,0x19,0xe0,0x78,0xe3,0xfe,0x40,0xf9,0xe4,0x07,0xcb,0x03,0x12,0x07,0xc8,0xfc,0xe0,0x31,0x14,0x1c,0xe2,0x27,0xd1,0xbb,0xe4,0x7f,0xe3,0x7d,0x0f,0xc0,0x03,0xc0,0x1e,0x00,0xb0,}; +const uint8_t *_I_LevelUp2_01[] = {_I_LevelUp2_01_0}; + +const uint8_t _I_LevelUp2_06_0[] = {0x01,0x00,0x11,0x01,0x00,0x37,0xf2,0x02,0x0f,0xd8,0x3c,0xfc,0x1d,0x9c,0x0e,0x0f,0x84,0x17,0x18,0x00,0x19,0x58,0x2e,0x18,0x01,0x84,0xc1,0x80,0x43,0x18,0x8c,0x40,0x20,0x60,0xf8,0x86,0x00,0x86,0x08,0x03,0x18,0x10,0xfe,0xe0,0x82,0x31,0x12,0x95,0xe0,0x65,0x3e,0x38,0x78,0x94,0xa1,0xc0,0xf8,0x81,0x46,0x62,0x10,0x80,0x29,0x03,0xe3,0x07,0xcd,0x93,0x94,0x44,0x01,0x5f,0xfd,0x25,0xbe,0x20,0x0f,0xbc,0x0f,0x5e,0xbf,0x30,0x07,0xdc,0x07,0xa9,0xde,0x90,0x03,0xf7,0x3e,0x0f,0xca,0x48,0x3c,0x68,0x00,0xfc,0xca,0x75,0xc1,0xf9,0x4b,0x96,0x52,0x01,0xf9,0x02,0xec,0x5f,0xdc,0xc6,0x0f,0x99,0xfd,0x0c,0x1e,0x5c,0x00,0x7c,0x7e,0xbe,0x38,0x10,0xf9,0xac,0xc8,0x00,0x36,0x07,0x91,0x83,0x4a,0x02,0x2f,0xa7,0x61,0x03,0xe1,0xaa,0x70,0x31,0x51,0x07,0xeb,0x00,0x0b,0x17,0xf0,0x83,0xe8,0xb0,0x50,0x70,0x7d,0xae,0xc7,0xc0,0x4f,0xc9,0x86,0x02,0x3e,0x0f,0xc8,0x85,0xf8,0xbf,0x40,0x02,0xf8,0x17,0xc4,0x5f,0xa3,0xfe,0x51,0x0c,0xf0,0x1f,0x9c,0x0f,0xf8,0xc0,0x81,0xf0,0xc5,0x28,0x80,0xfd,0x19,0xc8,0x00,0x48,0xc0,0x3e,0xd8,0x04,0x09,0x31,0x7c,0x0e,0xc8,0x1e,0xaa,0x61,0x66,0x23,0xfc,0xcf,0xfb,0x00,0x82,0x02,0xe8,0x1f,0xe0,0x0f,0x00,0x78,0x00,0x71,0x1b,0xe9,0x24,0x12,0xbf,0xf4,0x82,0xc5,0x41,0xf1,0x82,0x07,0x8d,0x06,0x29,0x04,0x07,0xc6,0x60,0x1f,0xda,0x8c,0xf0,0x3c,0x71,0xff,0x20,0x7c,0xf2,0x03,0xe5,0x81,0x89,0x03,0xe4,0x7e,0x70,0x18,0x8a,0x0e,0x71,0x13,0xe8,0xdd,0xf2,0x3f,0xf1,0xbe,0x87,0xe0,0x01,0xe0,0x0f,0x00,0x58,}; +const uint8_t *_I_LevelUp2_06[] = {_I_LevelUp2_06_0}; + +const uint8_t _I_LevelUp2_07_0[] = {0x01,0x00,0xf1,0x00,0x00,0x37,0xf2,0x02,0x0f,0xd8,0x3c,0xfc,0x1d,0x9c,0x0e,0x0f,0x84,0x1f,0x96,0x0b,0x86,0x00,0x61,0x91,0x88,0xc4,0x02,0x06,0x0f,0xb8,0x24,0x32,0x01,0x02,0x07,0xe4,0x1a,0x00,0x01,0x10,0x05,0x41,0xbc,0x70,0xf1,0x08,0x80,0x2a,0x05,0x19,0x88,0x42,0x01,0xf7,0x83,0xe6,0xc9,0xca,0x22,0x00,0xaf,0xfe,0x92,0xdf,0x10,0x07,0xde,0x07,0xaf,0x5f,0x98,0x03,0xee,0x03,0xd4,0xef,0x48,0x01,0xfb,0x9f,0x07,0xe5,0x24,0x1e,0x34,0x00,0x7e,0x65,0x3a,0xe0,0xfc,0xa5,0xcb,0x29,0x00,0xfc,0x81,0x76,0x2f,0xf8,0x00,0x7e,0x4f,0xe8,0x60,0xfc,0xfd,0x7c,0x70,0x20,0xfc,0x86,0x03,0x4a,0x02,0xdf,0xb4,0x19,0x83,0xea,0x07,0x00,0x6f,0x08,0x3e,0xb0,0x00,0xb1,0x7f,0x08,0x3e,0xb8,0x00,0x21,0x83,0x83,0xed,0x76,0x3e,0x01,0xfe,0x4c,0x30,0x11,0xf0,0x7e,0x44,0x2f,0xc5,0xfd,0xf8,0x17,0xc4,0x5f,0xa3,0xfe,0xb0,0x40,0x27,0x80,0xfc,0xe0,0x7f,0xc6,0x04,0x9f,0xb8,0x82,0xbf,0xa3,0x00,0xfe,0x5e,0x88,0x3f,0xc1,0xfa,0xcd,0x10,0x7e,0xc1,0x01,0x74,0x0f,0xf0,0x07,0x80,0x3c,0x00,0x38,0x8d,0xf4,0x92,0x09,0x5f,0xfa,0x41,0x62,0xa0,0xf8,0xc1,0x03,0xc6,0x83,0x14,0x82,0x03,0xe3,0x30,0x0f,0xed,0x46,0x78,0x1e,0x38,0xff,0x90,0x3e,0x79,0x01,0xf2,0xc0,0xc4,0x81,0xf2,0x3f,0x38,0x0c,0x45,0x07,0x38,0x89,0xf4,0x6e,0xf9,0x1f,0xf8,0xdf,0x43,0xf0,0x00,0xf0,0x07,0x80,0x2c,}; +const uint8_t *_I_LevelUp2_07[] = {_I_LevelUp2_07_0}; + +const uint8_t _I_LevelUp3_05_0[] = {0x01,0x00,0x34,0x01,0x00,0x37,0xf2,0x0e,0x0f,0xd8,0x3c,0xe0,0x1d,0x9c,0x08,0x6f,0xc0,0x1f,0x96,0x08,0xc6,0x42,0x02,0x0f,0xb8,0xc4,0xc2,0x21,0x03,0x07,0xdc,0x12,0x41,0x10,0x81,0x03,0xfa,0x0c,0x0f,0xb8,0x37,0x82,0x3f,0x0c,0x06,0x45,0x00,0x04,0x30,0x28,0xc4,0x42,0x10,0x6c,0x90,0x10,0xc0,0xf9,0x92,0x78,0xc0,0x5c,0xc0,0x09,0x80,0x35,0x0f,0xfe,0x49,0x69,0x88,0x40,0x2f,0x82,0x07,0x35,0x0f,0x06,0x2f,0x51,0x98,0x60,0x16,0x50,0x5a,0x1a,0x0e,0x53,0xa7,0x20,0x1b,0x11,0xb5,0xc1,0xe3,0xf4,0xcf,0x48,0x0d,0xf6,0x1f,0x1c,0x99,0x35,0xc1,0xeb,0x14,0xe8,0xd0,0xc1,0xf9,0x2c,0xa4,0xd1,0x01,0xf7,0xc2,0xec,0x5f,0xf9,0x00,0xfb,0xc1,0x4f,0xe8,0x7e,0x80,0x7d,0xfe,0xbe,0x78,0x1d,0x3c,0x03,0xfd,0x0f,0x06,0x2c,0x70,0x04,0x30,0xcc,0x16,0x02,0x60,0xa5,0x10,0x03,0x5c,0x12,0x24,0x0c,0x18,0xc0,0x3e,0x13,0x05,0x83,0x80,0x42,0x21,0x80,0xf8,0x68,0x95,0x04,0x62,0x22,0x22,0x78,0xcd,0x82,0x01,0x07,0x81,0x03,0xea,0x41,0x20,0xf0,0x40,0x01,0xf7,0x30,0xd0,0x47,0xc1,0xf9,0x10,0xbf,0x18,0x90,0x01,0x1f,0x08,0x1b,0xd0,0xa0,0x33,0x01,0x7c,0xc0,0x07,0xe2,0x6f,0x10,0x18,0x80,0x1c,0xbc,0x33,0xc8,0x04,0x3e,0x03,0x80,0x18,0xb7,0x82,0x3f,0xc0,0xff,0xc0,0xf8,0x10,0x11,0xfc,0x4e,0x0a,0x04,0xb4,0x22,0x7d,0x2f,0x04,0x02,0x40,0xfb,0x84,0x00,0x48,0x1f,0xe0,0xfb,0x86,0x03,0xfa,0x08,0x0f,0x20,0x05,0x83,0xfc,0x01,0xe0,0x0d,0xc4,0x6f,0xa4,0x90,0x4a,0xff,0xd2,0x0b,0x15,0x07,0xc6,0x08,0x1e,0x34,0x18,0xa4,0x10,0x1f,0x19,0x80,0x7f,0x6a,0x33,0xc0,0xf1,0xc7,0xfc,0x81,0xf3,0xc8,0x0f,0x96,0x06,0x24,0x0f,0x91,0xf9,0xc0,0x62,0x28,0x31,0x07,0xc4,0xfa,0x37,0x7c,0x8f,0xfc,0x6f,0xa1,0xf8,0x00,0x78,0x03,0xc0,0x16,}; +const uint8_t *_I_LevelUp3_05[] = {_I_LevelUp3_05_0}; + +const uint8_t _I_LevelUp3_06_0[] = {0x01,0x00,0x30,0x01,0x00,0x37,0xf2,0x0e,0x0f,0xd8,0x3c,0xe0,0x1d,0x9c,0x08,0x6f,0xc0,0x17,0x18,0x00,0x19,0x58,0x23,0x19,0x08,0x08,0x42,0x20,0xc0,0x21,0x8c,0x4c,0x22,0x10,0x30,0x7c,0x43,0x00,0x43,0x04,0x90,0x44,0x20,0x43,0xfb,0x07,0x90,0x94,0xaf,0x03,0x29,0xf0,0x47,0xc4,0xa5,0x0e,0x07,0xc4,0x0a,0x31,0x10,0x84,0x01,0x48,0x1f,0x10,0x3e,0x64,0x9e,0x30,0x3f,0xbf,0xfc,0x92,0xd3,0x10,0x07,0xdf,0x06,0x2f,0x51,0x98,0x03,0xee,0x83,0x94,0xe9,0xc8,0x01,0xf9,0xf4,0xcf,0x03,0xf7,0x29,0x93,0xa0,0x03,0xf2,0x29,0xd1,0xa1,0x83,0xf2,0x59,0x49,0xa2,0x03,0xef,0x85,0xd8,0xbf,0xf2,0x01,0xf7,0x82,0x9f,0xd0,0xfd,0x00,0x51,0xe0,0x03,0xe3,0xf5,0xf3,0xc0,0xe9,0xc0,0xc4,0xb3,0x20,0x00,0xd8,0x1e,0x47,0x82,0xc0,0x4c,0x20,0x22,0xfa,0x83,0x03,0x06,0x30,0x0f,0x76,0xa9,0xe0,0xc5,0x43,0x0c,0x0f,0xd6,0x02,0x82,0x31,0x11,0x11,0x00,0x23,0x80,0x43,0x18,0x3c,0x08,0x1f,0x52,0x09,0x07,0x80,0x6c,0x20,0xfa,0x98,0x68,0x23,0xe0,0xfc,0x88,0x5f,0x8c,0x48,0x00,0x8f,0x84,0x0c,0x06,0x30,0x41,0x7d,0xc0,0x07,0xe2,0x6f,0xb2,0xf0,0xcf,0x20,0x10,0xf3,0x7d,0xff,0xe0,0x7c,0x08,0x08,0x3e,0x18,0xa5,0x10,0x80,0x5c,0x20,0x00,0xf1,0x67,0x20,0x01,0x23,0x00,0x12,0x07,0xc3,0x00,0x81,0x22,0x01,0x11,0x7c,0x1b,0x08,0x1e,0xb2,0x06,0x62,0xbf,0xcc,0x3f,0x60,0x02,0x82,0x12,0xe8,0x1f,0xe0,0x0f,0x00,0x78,0x00,0x71,0x1b,0xe9,0x24,0x12,0xbf,0xf4,0x82,0xc5,0x41,0xf1,0x82,0x07,0x8d,0x06,0x29,0x04,0x07,0xc6,0x60,0x1f,0xda,0x8c,0xf0,0x3c,0x71,0xff,0x20,0x7c,0xf2,0x03,0xe5,0x81,0x89,0x03,0xe4,0x7e,0x70,0x18,0x8a,0x0c,0x41,0xf1,0x3e,0x8d,0xdf,0x23,0xff,0x1b,0xe8,0x7e,0x00,0x1e,0x00,0xf0,0x05,0x80,}; +const uint8_t *_I_LevelUp3_06[] = {_I_LevelUp3_06_0}; + +const uint8_t _I_LevelUp3_02_0[] = {0x01,0x00,0xf4,0x00,0x00,0x37,0xf2,0x02,0x0f,0xda,0xbc,0xfc,0x1d,0x9c,0x0f,0x5f,0xac,0x1f,0x97,0x0b,0xaf,0x54,0x61,0x9b,0x8d,0xd6,0xaa,0x06,0x0f,0xba,0xa5,0x76,0xaa,0x0f,0xcd,0x66,0xbb,0x55,0x06,0x07,0xdd,0x5b,0xef,0x5f,0x86,0x83,0xef,0x55,0xbb,0xdd,0x42,0x81,0xf7,0xd7,0xee,0xdd,0xe3,0xa0,0xfb,0xff,0xeb,0xbd,0xf1,0xa0,0x7d,0xf5,0x7a,0xf5,0xf9,0xa8,0x3e,0xf5,0x7f,0xef,0xf4,0xa8,0x1f,0x75,0x5e,0xaf,0x7e,0xea,0x0f,0xbf,0x5f,0xfb,0x7f,0x6a,0x07,0xdd,0x74,0x80,0x35,0x50,0xfe,0x6b,0xbd,0x5e,0xa4,0xfe,0x77,0x6f,0xfd,0x54,0xfe,0x6f,0xfd,0x7a,0xa0,0x7d,0xff,0xbe,0xbd,0x5e,0xac,0x04,0x1f,0x4d,0xe1,0x00,0x08,0x3e,0xea,0xd5,0x50,0x00,0x83,0xef,0x56,0x1f,0xdc,0x00,0x74,0x6b,0xa1,0xfb,0xe0,0x07,0x47,0x5e,0x1f,0xbb,0x05,0x57,0xea,0x3f,0xcd,0x81,0xfc,0x47,0xf9,0x50,0xbf,0x97,0xf7,0xe0,0x5f,0xeb,0x80,0xff,0xbc,0x1a,0xad,0xf0,0x7f,0x38,0x1f,0xfa,0xba,0x7f,0x4c,0x02,0xbf,0xda,0xc2,0xff,0xb5,0x01,0xff,0x0f,0xf6,0xb0,0x3f,0xd5,0x40,0xff,0x87,0xc8,0x1d,0x40,0x0f,0x00,0x76,0x23,0x7d,0x24,0x82,0x57,0xfe,0x90,0x58,0xa8,0x3e,0x30,0x40,0xf1,0xa0,0xc5,0x20,0x80,0xf8,0xcc,0x03,0xfb,0x51,0x9e,0x07,0x8e,0x3f,0xe4,0x0f,0x9e,0x40,0x7c,0xb0,0x31,0x20,0x7c,0x8f,0xce,0x03,0x11,0x82,0x17,0xe6,0x7d,0x1b,0xbe,0x47,0xfe,0x37,0xd0,0xfc,0x00,0x3c,0x01,0xe0,0x0b,}; +const uint8_t *_I_LevelUp3_02[] = {_I_LevelUp3_02_0}; + +const uint8_t _I_LevelUp3_07_0[] = {0x01,0x00,0x0b,0x01,0x00,0x37,0xf2,0x0e,0x0f,0xd8,0x3c,0xe0,0x1d,0x9c,0x08,0x6f,0xc0,0x1f,0x96,0x08,0xc6,0x42,0x02,0x0f,0xb8,0xc4,0xc2,0x21,0x03,0x07,0xdc,0x12,0x41,0x10,0x81,0x03,0xfa,0x0c,0x0f,0xb8,0x37,0x82,0x3f,0x0c,0x07,0xdc,0x0a,0x31,0x10,0x84,0x03,0xee,0x07,0xcc,0x93,0xc6,0x01,0xf7,0xff,0x92,0x5a,0x62,0x00,0xfb,0xe0,0xc5,0xea,0x33,0x00,0x7d,0xd0,0x72,0x9d,0x39,0x00,0x3f,0x3e,0x99,0xe0,0x7e,0xe5,0x32,0x74,0x00,0x7e,0x45,0x3a,0x34,0x30,0x7e,0x4b,0x29,0x34,0x40,0x7d,0xf0,0xbb,0x17,0xfe,0x40,0x3e,0xf0,0x53,0xfa,0x1f,0xa0,0x1f,0x7f,0xaf,0x9e,0x07,0x4e,0x0f,0xb8,0x66,0x0b,0x01,0x30,0x80,0xb7,0xec,0x18,0x31,0x80,0x7d,0xe0,0xe0,0x10,0x88,0x60,0x3e,0xb0,0x14,0x11,0x88,0x88,0x88,0x01,0x1c,0x0b,0x04,0x02,0x0f,0x02,0x07,0xd4,0x82,0x41,0xe0,0x80,0x03,0xee,0x61,0xa0,0x8f,0x83,0xf2,0x21,0x7e,0x31,0x20,0x02,0x3e,0x10,0x30,0x18,0xc1,0x05,0xf7,0x00,0x1f,0x89,0xbe,0xcb,0xc3,0x3c,0x80,0x43,0xcd,0xf7,0xff,0x81,0xf0,0x20,0x29,0xfb,0x88,0x40,0x2e,0x10,0x00,0x7d,0xc6,0x00,0x24,0x0f,0xb8,0x40,0x04,0x81,0xfe,0x0f,0xb8,0x60,0x3f,0xa0,0x80,0xf2,0x00,0x58,0x3f,0xc0,0x1e,0x00,0xdc,0x46,0xfa,0x49,0x04,0xaf,0xfd,0x20,0xb1,0x50,0x7c,0x60,0x81,0xe3,0x41,0x8a,0x41,0x01,0xf1,0x98,0x07,0xf6,0xa3,0x3c,0x0f,0x1c,0x7f,0xc8,0x1f,0x3c,0x80,0xf9,0x60,0x62,0x40,0xf9,0x1f,0x9c,0x06,0x22,0x83,0x10,0x7c,0x4f,0xa3,0x77,0xc8,0xff,0xc6,0xfa,0x1f,0x80,0x07,0x80,0x3c,0x01,0x60,}; +const uint8_t *_I_LevelUp3_07[] = {_I_LevelUp3_07_0}; + +const uint8_t _I_LevelUp3_04_0[] = {0x01,0x00,0x21,0x01,0x00,0x37,0xf2,0x0e,0x0f,0xda,0xbc,0xf4,0x1d,0x9c,0x0d,0x7f,0xe8,0x1f,0x97,0x0a,0xef,0x56,0x02,0x0f,0xbd,0xc6,0xeb,0x75,0x03,0x07,0xdd,0x52,0xeb,0x55,0x07,0xe6,0xb3,0x55,0xba,0x83,0x03,0xee,0xad,0xf5,0xaf,0xc3,0x41,0xf6,0x1e,0x1d,0xd4,0x28,0xfd,0x9d,0xdb,0xbc,0x74,0x1f,0x7f,0xfd,0x77,0xae,0x34,0x0f,0xbe,0xad,0x5e,0xab,0x35,0x06,0xcc,0x12,0x01,0xeb,0xdf,0x7e,0xe5,0x56,0x00,0x7c,0x47,0x20,0x15,0x5f,0xaf,0x7e,0xeb,0x38,0x07,0xc4,0xc0,0x3e,0x5b,0xbb,0x54,0x20,0x7f,0x55,0x5a,0xa9,0x04,0x49,0xf7,0xeb,0x2f,0x8f,0xb8,0x1f,0x7d,0x6e,0xed,0xff,0xba,0x9f,0xcd,0xff,0xaf,0xd4,0x0f,0xbf,0xf7,0xdf,0xab,0xf7,0xf8,0x83,0xeb,0x5d,0xaa,0x60,0x8c,0x04,0x1b,0x10,0x26,0xf8,0x98,0x06,0xba,0x0f,0x98,0x74,0x03,0x56,0x1f,0x1d,0x70,0x3e,0x63,0x18,0x00,0xf1,0x55,0xc1,0xf3,0x00,0xe0,0x7a,0xb5,0x5a,0xfd,0x50,0x3e,0xac,0x17,0x5f,0xad,0x56,0xaf,0xc1,0x07,0xce,0xc0,0xfe,0x24,0x01,0xc0,0xc0,0xc1,0xf1,0x50,0xbf,0x90,0x04,0x7f,0x7f,0x02,0xfe,0xc0,0x2e,0x0f,0xf1,0x3f,0xdf,0x03,0xc3,0xaa,0xdf,0x18,0x04,0x1f,0x37,0x0e,0x07,0xfe,0xaf,0xd5,0xaa,0x8b,0xe8,0xc0,0x5f,0xa3,0xfd,0xc0,0x2b,0x03,0xe1,0x0f,0xe6,0xa0,0xbe,0x21,0xff,0x0f,0xe6,0xb0,0x3f,0xd5,0x40,0xff,0x87,0xc8,0x1d,0x40,0x0f,0x00,0x76,0x23,0x7d,0x24,0x82,0x57,0xfe,0x90,0x58,0xa8,0x3e,0x30,0x40,0xf1,0xa0,0xc5,0x20,0x80,0xf8,0xcc,0x03,0xfb,0x51,0x9e,0x07,0x8e,0x3f,0xe4,0x0f,0x9e,0x40,0x7c,0xb0,0x31,0x20,0x7c,0x8f,0xce,0x03,0x11,0x82,0x17,0xe6,0x7d,0x1b,0xbe,0x47,0xfe,0x37,0xd0,0xfc,0x00,0x3c,0x01,0xe0,0x0b,}; +const uint8_t *_I_LevelUp3_04[] = {_I_LevelUp3_04_0}; + +const uint8_t _I_LevelUp3_03_0[] = {0x01,0x00,0xa3,0x00,0x00,0x37,0xf2,0x02,0x0f,0xdf,0xfc,0xfc,0x1d,0x9c,0x0f,0xff,0xfc,0x1f,0x9f,0x00,0x78,0x8c,0x33,0xf0,0x0f,0x18,0x19,0x3b,0x01,0xfe,0x0f,0x18,0x38,0x3e,0xff,0xc0,0xf1,0x87,0x83,0xfc,0xfd,0x80,0x01,0x8f,0x83,0xfc,0x1f,0xca,0x0c,0x07,0xf8,0x3c,0xaf,0xe0,0xff,0x07,0xf8,0x3f,0x9c,0x18,0x8f,0x20,0x7f,0x83,0xff,0xff,0x01,0x07,0xf8,0x3f,0xcb,0xfc,0x0f,0xac,0x00,0x3f,0xb8,0x00,0xfe,0xf0,0x03,0xfb,0xe0,0x0f,0xf0,0x7f,0x83,0xfc,0x9f,0xe6,0xff,0x07,0xf0,0xc1,0x01,0xf7,0xf8,0x07,0xf8,0x3f,0xc1,0xfd,0xfc,0x07,0xf8,0x3f,0xc1,0xfc,0x00,0xf0,0x06,0xe2,0x37,0xd2,0x48,0x25,0x7f,0xe9,0x05,0x8a,0x83,0xe3,0x04,0x0f,0x1a,0x0c,0x52,0x08,0x0f,0x8c,0xc0,0x3f,0xb5,0x19,0xe0,0x78,0xe3,0xfe,0x40,0xf9,0xe4,0x07,0xcb,0x03,0x12,0x07,0xc8,0xfc,0xe0,0x31,0x18,0x21,0x7e,0x67,0xd1,0xbb,0xe4,0x7f,0xe3,0x7d,0x0f,0xc0,0x03,0xc0,0x1e,0x00,0xb0,}; +const uint8_t *_I_LevelUp3_03[] = {_I_LevelUp3_03_0}; + +const uint8_t _I_LevelUp3_01_0[] = {0x01,0x00,0xf1,0x00,0x00,0x37,0xf2,0x02,0x0f,0xd8,0x3c,0xfc,0x1d,0x9c,0x0e,0x0f,0x84,0x1f,0x96,0x0b,0x86,0x00,0x61,0x91,0x88,0xc4,0x02,0x06,0x0f,0xb8,0x24,0x32,0x01,0x02,0x07,0xe4,0x1a,0x00,0x01,0x10,0x05,0x41,0xbc,0x70,0xf1,0x08,0x80,0x2a,0x05,0x19,0x88,0x42,0x01,0xf7,0x83,0xe6,0xc9,0xca,0x22,0x00,0xaf,0xfe,0x92,0xdf,0x10,0x07,0xde,0x07,0xaf,0x5f,0x98,0x03,0xee,0x03,0xd4,0xef,0x48,0x01,0xfb,0x9f,0x07,0xe5,0x24,0x1e,0x34,0x00,0x7e,0x65,0x3a,0xe0,0xfc,0xa5,0xcb,0x29,0x00,0xfc,0x81,0x76,0x2f,0xf8,0x00,0x7e,0x4f,0xe8,0x60,0xfc,0xfd,0x7c,0x70,0x20,0xfc,0x86,0x03,0x4a,0x02,0xdf,0xb4,0x19,0x83,0xea,0x07,0x00,0x6f,0x08,0x3e,0xb0,0x00,0xb1,0x7f,0x08,0x3e,0xb8,0x00,0x21,0x83,0x83,0xed,0x76,0x3e,0x01,0xfe,0x4c,0x30,0x11,0xf0,0x7e,0x44,0x2f,0xc5,0xfd,0xf8,0x17,0xc4,0x5f,0xa3,0xfe,0xb0,0x40,0x27,0x80,0xfc,0xe0,0x7f,0xc6,0x04,0x9f,0xb8,0x82,0xbf,0xa3,0x00,0xfe,0x5e,0x88,0x3f,0xc1,0xfa,0xcd,0x10,0x7e,0xc1,0x01,0x74,0x0f,0xf0,0x07,0x80,0x3c,0x00,0x38,0x8d,0xf4,0x92,0x09,0x5f,0xfa,0x41,0x62,0xa0,0xf8,0xc1,0x03,0xc6,0x83,0x14,0x82,0x03,0xe3,0x30,0x0f,0xed,0x46,0x78,0x1e,0x38,0xff,0x90,0x3e,0x79,0x01,0xf2,0xc0,0xc4,0x81,0xf2,0x3f,0x38,0x0c,0x45,0x07,0x38,0x89,0xf4,0x6e,0xf9,0x1f,0xf8,0xdf,0x43,0xf0,0x00,0xf0,0x07,0x80,0x2c,}; +const uint8_t *_I_LevelUp3_01[] = {_I_LevelUp3_01_0}; + +const uint8_t _A_LevelUpPending_128x51_0[] = {0x01,0x00,0xa9,0x01,0x00,0x1c,0xfc,0x1d,0xbf,0x0e,0x04,0x04,0x1f,0x90,0xc8,0x04,0x18,0x1f,0x90,0x28,0x04,0x20,0x1d,0x62,0xd2,0x98,0x03,0xfe,0x01,0x80,0xf9,0xdf,0x39,0xd8,0x7f,0x45,0x2e,0xe4,0x2b,0x18,0x04,0x80,0x04,0x34,0x00,0x08,0xc5,0x20,0xb1,0x1c,0x0c,0xa2,0x91,0x8a,0x07,0x94,0x40,0x04,0x38,0x00,0x78,0xc4,0x01,0xe5,0x29,0xa4,0x42,0x81,0xe7,0xf8,0x07,0x8c,0x06,0x81,0xf6,0x9e,0x47,0xf0,0x3e,0xaa,0x48,0xbc,0xe1,0x10,0x48,0x0e,0x02,0x07,0x40,0xaa,0x41,0x03,0xe3,0x2c,0xa4,0x60,0x81,0xe5,0x00,0xba,0x40,0xbe,0x1d,0xfa,0x06,0x50,0x1e,0x43,0xf2,0x07,0x16,0x13,0x77,0x02,0x86,0x70,0x30,0x31,0x3b,0xe8,0x3c,0x7d,0x1b,0x3b,0x88,0x7c,0xa8,0x9f,0xa8,0x14,0x0e,0x00,0xb1,0xad,0x17,0xef,0x84,0x04,0x10,0x7d,0x78,0xae,0x72,0x20,0x7f,0x83,0xf3,0xf3,0x07,0x88,0xc0,0x3f,0xe0,0xf4,0x53,0x08,0x00,0xe8,0xb8,0xc2,0xf0,0xd5,0x60,0x1f,0x09,0xe6,0x7f,0xc7,0xc0,0x07,0x1e,0x03,0x09,0x79,0x81,0xfe,0x35,0x4a,0x51,0xa2,0xd0,0x62,0x9c,0x11,0x29,0xe0,0x30,0x42,0xe1,0xae,0x07,0xc4,0x1e,0x51,0x0e,0x01,0xdc,0x41,0xe6,0x15,0x1d,0x7d,0xa8,0x5e,0x58,0xf1,0x78,0x83,0xce,0xc1,0x81,0x5f,0x0d,0x56,0x6a,0x1f,0x18,0xa4,0x06,0x08,0x2f,0x40,0x78,0xc0,0xf8,0x1a,0xa8,0xd0,0x3c,0x64,0x83,0xf2,0x27,0x9f,0x81,0xb8,0x3e,0x0a,0xbc,0x74,0x1e,0x34,0x42,0xf8,0x9b,0xd3,0xe1,0x80,0x83,0xfe,0x35,0xf1,0xf4,0x74,0xdc,0x20,0x10,0xaf,0xf7,0xfe,0x66,0x0f,0xbf,0xd7,0xfc,0x1f,0xbc,0x20,0x78,0xc8,0x41,0xf3,0x18,0x80,0x40,0xa7,0xfc,0x09,0x18,0x3f,0x2f,0xd0,0x0f,0x78,0x3f,0x3f,0x90,0x1e,0xe0,0x3e,0x61,0x00,0xf2,0x83,0xfc,0x01,0xf9,0xa8,0x8f,0xf0,0x1f,0xe8,0x0f,0x7a,0x87,0xff,0xc2,0x0f,0x98,0x20,0x3c,0x74,0x1f,0xad,0xfb,0x64,0xc1,0xed,0x80,0x80,0xd0,0x2a,0xb8,0x70,0x7e,0x60,0x35,0x70,0x60,0x7c,0xc0,0x81,0xe3,0x00,0xab,0x41,0x60,0xc0,0xfb,0x84,0x6f,0x21,0xc4,0x51,0x00,0x38,0xb4,0x60,0x37,0x0f,0x84,0x3c,0x1f,0x03,0xd2,0x27,0x8a,0x90,0x61,0x80,0xf8,0x08,0x9c,0x0e,0x18,0xb5,0x10,0x03,0x70,0x20,0x01,0xd1,0x80,0x77,0xa1,0xf1,0x00,0x7b,0x83,0x44,0x1e,0x5f,0x08,0x3c,0xc0,0x1f,0x83,0x01,0x90,0x03,0xde,0xc0,0x0f,0x33,0xa0,0x81,0x0c,0x00,0x81,0x81,0x07,0xa1,0x18,0x40,0x0c,0x38,0x11,0x51,0xc1,0x8c,0xc2,0x00,0x62,0xc0,0x83,0xcd,0x1c,0x2f,0x07,0x3c,0x08,0x3f,0x61,0x00,0xf4,0x02,0x8b,0x81,0xc0,}; +const uint8_t _A_LevelUpPending_128x51_1[] = {0x01,0x00,0xad,0x01,0x00,0x1c,0xfc,0x1d,0xbf,0x0e,0x04,0x04,0x1f,0x90,0xc8,0x04,0x18,0x1f,0x90,0x28,0x04,0x20,0x1d,0x62,0xd2,0x98,0x03,0xfe,0x01,0x80,0xf9,0xdf,0x39,0xd8,0x7f,0x45,0x2e,0xe4,0x2b,0x18,0x04,0x80,0x04,0x34,0x00,0x08,0xc5,0x20,0xb1,0x1c,0x0c,0xa2,0x91,0x8a,0x07,0x94,0x40,0x04,0x38,0x00,0x78,0xc4,0x01,0xe5,0x29,0xa4,0x42,0x81,0xe7,0xf8,0x07,0x8c,0x06,0x81,0xf6,0x9e,0x47,0xf0,0x3e,0xaa,0x48,0xbc,0xe1,0x10,0x48,0x0e,0x02,0x07,0x40,0xaa,0x41,0x03,0xe3,0x2c,0xa4,0x60,0x81,0xe5,0x00,0xba,0x40,0xbe,0x1d,0xfa,0x06,0x50,0x1e,0x43,0xf2,0x07,0x16,0x13,0x75,0x02,0x86,0x70,0x30,0x31,0x3b,0xe8,0x3c,0x7d,0x1b,0x3b,0x88,0x7c,0xa8,0x9f,0xa8,0x14,0x0e,0x00,0xb1,0xad,0x17,0xeb,0x84,0x04,0x10,0x7d,0x50,0xae,0x72,0x20,0x7e,0x68,0x81,0xfd,0x81,0x83,0xc4,0x60,0x1f,0xf0,0x7a,0x29,0x84,0x00,0x74,0x1c,0x61,0x78,0x6a,0xb0,0x0f,0x84,0xf3,0x3f,0xe3,0xe0,0x03,0x8f,0x01,0x3c,0xbc,0x40,0xff,0x1a,0xa5,0x28,0xd1,0x68,0x31,0x4e,0x08,0x94,0xf0,0x16,0x26,0x00,0xd7,0x03,0xe2,0x0f,0x28,0x87,0x00,0xee,0x20,0xf2,0x36,0x96,0xbe,0xd4,0x2f,0x2c,0x78,0xbc,0x41,0xe9,0x82,0x01,0x0d,0x56,0x6a,0x1f,0x18,0xa4,0x06,0x08,0x2f,0x4e,0x00,0x3c,0x78,0x1a,0xa8,0xd0,0x3c,0x64,0x83,0xf2,0x27,0x98,0x3c,0x60,0x3e,0x0a,0xbc,0x34,0x1e,0x34,0x42,0xf8,0x9b,0xd3,0x81,0x83,0x82,0xfe,0x35,0xf0,0xf4,0x74,0xf0,0x20,0x30,0x9f,0xf7,0xfe,0x16,0x0f,0x9f,0x04,0x07,0xf3,0xff,0x07,0xe4,0x03,0x82,0x0f,0x15,0x88,0x83,0xea,0x03,0x0f,0xe0,0x24,0x84,0x01,0x17,0x00,0x78,0xcf,0xa0,0x13,0x30,0x7e,0x7c,0x20,0x13,0x60,0x7e,0x70,0x21,0xf7,0xc0,0x7c,0xca,0x01,0xe3,0x00,0xff,0x5f,0xc1,0xf3,0x38,0x07,0x97,0xc3,0xa6,0x0f,0x98,0xc0,0x3c,0xa8,0x1b,0x00,0x7c,0xc2,0x30,0x10,0x18,0x64,0x03,0x30,0x0f,0xc1,0x90,0xc4,0x1d,0x26,0x00,0x58,0x20,0x3c,0x7c,0x10,0x78,0xe0,0x3f,0x30,0x1f,0xd8,0x38,0xbe,0x60,0x40,0xf1,0x80,0x00,0x86,0x04,0x0f,0x88,0x18,0x3c,0x8c,0x43,0x04,0x07,0xc0,0xb4,0x43,0xe6,0x0f,0x80,0x50,0xd0,0x00,0x83,0xc0,0x81,0xc2,0x01,0xef,0xc0,0x46,0x08,0x10,0x64,0x10,0x20,0x7c,0x03,0x44,0x1e,0x58,0x08,0x1a,0x94,0x40,0x0d,0x60,0x07,0x99,0x90,0x66,0x00,0xf7,0x90,0x03,0xd4,0x0c,0x20,0x06,0x0c,0x08,0x28,0xe0,0xc4,0x61,0x00,0x34,0x40,0x1e,0x8a,0x41,0x77,0x48,0x3d,0x58,0x0e,0x68,0x10,0x79,0x81,0x46,0x06,0x0f,0x60,}; +const uint8_t *_A_LevelUpPending_128x51[] = {_A_LevelUpPending_128x51_0,_A_LevelUpPending_128x51_1}; + +const uint8_t _A_NoSdCard_128x51_0[] = {0x01,0x00,0x66,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0x2f,0xf7,0xfe,0x0e,0x0e,0xbe,0x04,0x0e,0x01,0x1c,0x07,0xdd,0xc0,0x04,0x33,0x00,0xcb,0x40,0x40,0xa7,0x08,0x01,0x0d,0x80,0x1e,0xb2,0x00,0x2a,0x43,0x03,0x04,0x02,0x1f,0x04,0x92,0xa9,0x9c,0xf0,0xe1,0x01,0xe7,0x04,0x01,0x0e,0x00,0x50,0x52,0x5a,0xa5,0x4a,0x45,0x85,0x07,0xb4,0x00,0x1e,0x3c,0x08,0xc8,0x3c,0x64,0x19,0xd0,0x7b,0x98,0x84,0x3e,0x55,0xa9,0x16,0x94,0x1e,0x70,0x20,0x1a,0x0f,0xc7,0xf9,0x94,0xe0,0xe7,0x01,0xef,0x06,0x01,0x96,0x00,0xfe,0xc0,0xf3,0x19,0x98,0x01,0xc1,0xe6,0x73,0x20,0x7e,0x24,0xc8,0x1f,0xe0,0x08,0x35,0x90,0x3f,0x11,0x63,0xe0,0x87,0xc6,0x01,0xf4,0xfc,0x1e,0x64,0x62,0x21,0x00,0xe4,0xfc,0x29,0x96,0x49,0x57,0x9d,0xf0,0x70,0xd8,0x06,0x1a,0x3a,0x0f,0x19,0x4e,0x47,0xa5,0x96,0xd5,0x69,0x22,0x40,0xe1,0xf8,0x7f,0xc1,0xe3,0x1f,0x07,0x8f,0xbf,0x23,0x52,0xfa,0x83,0xd2,0x21,0x80,0x83,0xc3,0x81,0xe5,0x29,0xc8,0x54,0xa2,0x9a,0xad,0x34,0x68,0x1e,0x24,0xa1,0x9c,0x42,0x21,0x83,0xf2,0xc8,0xd3,0x3c,0x93,0xec,0xac,0x50,0xd4,0x76,0x0f,0x84,0x1c,0x1e,0x20,0x08,0x55,0x0d,0x00,0x08,0x32,0x00,0x7c,0xf1,0x23,0xe0,0x42,0x07,0xd7,0x92,0x6e,0x0f,0xdb,0x21,0xbc,0x41,0xf9,0xec,0xff,0xb0,0x08,0x84,0x59,0xc5,0x38,0x80,0x13,0xd1,0xff,0x20,0x10,0x3c,0xb4,0x4d,0x36,0xee,0x7f,0xe7,0xe0,0xf4,0xc1,0x42,0x39,0x39,0xdb,0x98,0x3c,0xa7,0xde,0x0b,0xf8,0xbd,0x61,0x12,0x59,0x2d,0x24,0x1e,0x53,0x32,0x61,0x83,0xcb,0x41,0x08,0x91,0x83,0xd2,0x42,0x34,0x3c,0x00,0xfc,0xf4,0xb2,0x5b,0x48,0x28,0xac,0x60,0xf6,0x2f,0x8d,0x26,0x3b,0x51,0x05,0x17,0x0a,0x01,0xfe,0x07,0xa0,0x00,0xa0,0x80,0x43,0xc1,0x7f,0xf0,0xe0,0xfc,0x81,0x40,0xc1,0x84,0x0f,0x50,0x02,0x40,0x81,0x86,0x0f,0xa8,0x34,0x03,0xe0,0x0f,0x28,0x08,0x3e,0x06,0x83,0x18,0x02,0x90,0x3e,0xd7,0x06,0x0f,0xf0,0x7f,0x83,0xfe,0x06,0x0f,0xe3,0xa8,0x83,0xe6,0x18,0x0f,0xdf,0x84,0x1c,0x3f,0xc4,0xb3,0x07,0xd9,0x2c,0xd4,0xa2,0x00,0x60,}; +const uint8_t _A_NoSdCard_128x51_1[] = {0x01,0x00,0x63,0x01,0x00,0x78,0x03,0xc0,0x1e,0x00,0x2f,0xf7,0xfe,0x0e,0x0e,0xbe,0x04,0x0e,0x01,0x1c,0x07,0xdd,0xc0,0x04,0x33,0x00,0xcb,0x40,0x40,0xa7,0x08,0x01,0x0d,0x80,0x1e,0xb2,0x00,0x2a,0x43,0x03,0x04,0x02,0x1f,0x04,0x92,0xa9,0x9c,0xf0,0xe1,0x01,0xe7,0x04,0x01,0x0e,0x00,0x50,0x52,0x5a,0xa5,0x4a,0x45,0x85,0x07,0xb4,0x00,0x1e,0x3c,0x08,0xc8,0x3c,0x64,0x19,0xd0,0x7b,0x98,0x84,0x3e,0x55,0xa9,0x16,0x94,0x1e,0x70,0x20,0x1a,0x0f,0xc7,0xf9,0x94,0xe0,0xe7,0x01,0xef,0x06,0x01,0x96,0x00,0xfe,0xc0,0xf3,0x19,0x98,0x01,0xc1,0xe6,0x73,0x20,0x7e,0x24,0xc8,0x1f,0xe0,0x08,0x35,0x90,0x3f,0x11,0x63,0xe0,0x87,0xc6,0x01,0xf4,0xfc,0x1e,0x64,0x62,0x21,0x00,0xe4,0xfc,0x29,0x96,0x49,0x57,0x9d,0xf0,0x70,0xd8,0x06,0x1a,0x3a,0x0f,0x19,0x4e,0x47,0xa5,0x96,0xd5,0x69,0x22,0x40,0xe1,0xf8,0x7f,0xc1,0xe3,0x1f,0x07,0x8f,0xbf,0x23,0x52,0xfa,0x83,0xd2,0x21,0x80,0x83,0xc3,0x81,0xe5,0x29,0xc8,0x54,0xa2,0x9a,0xad,0x34,0x68,0x1e,0x24,0xa1,0x9c,0x42,0x21,0x83,0xf2,0xc8,0xd3,0x3c,0x93,0xec,0xac,0x50,0xd4,0x76,0x0f,0x84,0x1c,0x1e,0x20,0x08,0x55,0x0d,0x00,0x08,0x32,0x00,0x7c,0xf1,0x23,0xe0,0x42,0x07,0xd4,0x92,0x60,0x0f,0xe7,0xb9,0x83,0xea,0x58,0xc0,0x32,0x11,0x67,0x14,0xe2,0x00,0x42,0xf8,0xa9,0x08,0x1e,0x5a,0x26,0x9b,0x03,0x44,0x58,0x40,0xf2,0xc1,0x42,0x39,0x39,0xdb,0x98,0x3c,0xa7,0xc0,0xc3,0x17,0x9c,0x22,0x4b,0x25,0xa4,0x83,0xca,0x66,0x24,0x30,0x79,0x68,0x21,0x12,0x30,0x7a,0x48,0x41,0xe6,0x63,0x21,0xf8,0xe9,0x64,0xb6,0x90,0x51,0x58,0xc1,0xec,0x5f,0x1a,0x4c,0x76,0xa2,0x0a,0x2e,0x14,0x03,0xfc,0x0f,0x40,0x01,0x41,0x00,0x87,0x82,0xff,0xe1,0xc1,0xf9,0x02,0x81,0x83,0x08,0x1e,0xa0,0x04,0x81,0x03,0x0c,0x1f,0x50,0x68,0x07,0xc0,0x1e,0x50,0x10,0x7c,0x0d,0x06,0x30,0x05,0x20,0x7d,0xae,0x0c,0x1f,0xe0,0xff,0x07,0xfc,0x0c,0x1f,0xc7,0x51,0x07,0xcc,0x30,0x1f,0xbf,0x08,0x38,0x7f,0x89,0x66,0x0f,0xb2,0x59,0xa9,0x44,0x00,0xc0,}; +const uint8_t *_A_NoSdCard_128x51[] = {_A_NoSdCard_128x51_0,_A_NoSdCard_128x51_1}; + +const uint8_t _A_SleepActive_128x51_0[] = {0x01,0x00,0x1c,0x02,0xff,0x80,0x1e,0x1e,0x09,0x80,0x02,0xcf,0xff,0xc0,0xca,0xdf,0x80,0x86,0xff,0xfc,0x05,0x2f,0xec,0x24,0xc0,0xfa,0x80,0x7e,0x01,0xf5,0xe0,0xff,0xc7,0xff,0xfe,0x70,0xfe,0x79,0xe0,0x39,0xc2,0x7d,0x03,0xc6,0x77,0x00,0xb8,0x02,0xc8,0xde,0x9f,0xd0,0x21,0xc3,0x60,0x1c,0x00,0x3a,0x00,0x1e,0x0c,0x95,0x1f,0x98,0x3a,0xaf,0xf0,0x30,0x78,0xfb,0x91,0x77,0x01,0x07,0x8f,0x60,0x1f,0x5d,0xf6,0x29,0x4c,0x01,0xf5,0x5f,0x07,0x97,0x80,0xf8,0x6b,0x42,0x00,0x1d,0xbd,0x3c,0x30,0x0c,0x05,0xce,0x01,0xf0,0x4b,0x90,0x01,0x24,0xf0,0x08,0x21,0x04,0x71,0xdf,0xfc,0x78,0x7d,0xe7,0x30,0x08,0x14,0x08,0x44,0x57,0xc5,0x7b,0x7f,0xe3,0xd0,0x08,0x0c,0x11,0x42,0x30,0xce,0x02,0x0d,0xaf,0xf1,0x38,0x05,0xc4,0x1e,0x3c,0x08,0x3c,0x03,0x9c,0x7e,0x68,0x88,0x3c,0xe0,0x09,0x41,0x9c,0x1f,0x9a,0x20,0x0f,0x42,0x90,0xfa,0x3f,0x06,0xe5,0x07,0x88,0xfc,0xb0,0x01,0x11,0xc2,0x71,0xc1,0xe9,0x2f,0x07,0x89,0x7c,0xb8,0x00,0xf1,0x81,0x4f,0x01,0xe9,0x37,0x07,0x89,0xfc,0xa8,0x03,0x12,0x52,0x27,0xfe,0x36,0x0f,0x13,0xe0,0xc0,0x2c,0x03,0x12,0xc0,0x1c,0x52,0x17,0x18,0x5f,0x94,0x02,0x40,0x21,0x33,0x8a,0x43,0x66,0x80,0xf3,0x98,0x03,0xcc,0xe2,0x90,0x69,0x40,0x3c,0xc6,0x82,0x21,0x17,0x28,0xff,0x81,0xe5,0x02,0x0f,0xa0,0xd0,0x41,0xe5,0xc0,0xfc,0xab,0x8a,0x07,0x68,0x07,0x14,0x06,0x10,0x21,0x20,0x00,0xfd,0xc1,0xe5,0x01,0xfe,0x06,0x4a,0x03,0x0c,0x07,0x9c,0x43,0x9a,0xbe,0x28,0x0e,0x10,0x12,0x26,0xb1,0x50,0x88,0x7c,0xf7,0x40,0xf2,0x4b,0x8c,0x24,0x1e,0x50,0x68,0x00,0xc4,0x60,0x14,0x4b,0xa9,0x40,0x41,0xe5,0x0e,0xc0,0x2b,0x45,0x62,0x20,0xf2,0x80,0x72,0x3f,0xad,0xe1,0x05,0x0c,0x12,0xc0,0x9d,0x17,0x70,0x83,0xca,0x23,0x55,0x50,0x8d,0x7c,0x74,0x30,0x48,0x85,0xc1,0xdc,0x4f,0x32,0x80,0x68,0xbd,0xc0,0xf3,0x81,0x43,0x27,0x18,0x00,0x79,0xd0,0x28,0x95,0x5e,0xeb,0xf8,0x60,0x10,0xa7,0x70,0xc7,0x01,0xe8,0x56,0x1d,0x41,0x80,0x65,0xf0,0x08,0x66,0x06,0x03,0x0e,0x7f,0x19,0xc4,0x6a,0x35,0x5b,0xab,0xf8,0x60,0x11,0xaa,0x0e,0x02,0x0e,0x0f,0x45,0x90,0xe8,0xbd,0x5f,0xe8,0xbc,0x02,0x29,0x21,0xe0,0x40,0x5b,0x84,0x0f,0x1a,0x25,0x50,0x7e,0x3f,0xdb,0xbc,0x02,0x51,0x12,0xfc,0x3b,0x0c,0x82,0x30,0x0c,0x46,0xa3,0x55,0xfb,0x3f,0x8d,0x42,0x3d,0x3e,0x80,0x20,0x04,0x1e,0x31,0x03,0xf0,0xd5,0x6e,0xff,0x75,0xf8,0xea,0x3f,0x10,0xf8,0x02,0x00,0x43,0xe7,0x22,0xd5,0x6a,0xbd,0xd7,0xfa,0x1d,0x53,0x02,0x9c,0x19,0xc0,0x30,0x68,0xb4,0x43,0xf0,0xf5,0x7b,0xa8,0x01,0x83,0x68,0x38,0xc0,0xc1,0x9e,0x34,0x88,0x7c,0x38,0x80,0xf8,0xa0,0x06,0x3b,0x51,0x9e,0x82,0x86,0x7f,0x11,0xc8,0xc4,0x47,0xc5,0x75,0x1f,0x8f,0xfe,0x77,0xa0,0x95,0x40,0x38,0x13,0xf0,0xf9,0x48,0x24,0x5a,0x20,0xf8,0xda,0xbf,0xfe,0xfa,0xa7,0xd6,0x01,0xfc,0xbf,0xd1,0x38,0x81,0xd1,0x00,0x08,0xf8,0x47,0xe3,0xbf,0xc5,0xea,0xbf,0xff,0xb0,0xf8,0xf0,0x07,0xa2,0x3e,0x20,0x00,0xff,0xff,0xf7,0xe0,0xc1,0x0f,0xc5,0x76,0x20,0x02,0xbb,0x8f,0xc4,}; +const uint8_t _A_SleepActive_128x51_1[] = {0x01,0x00,0x42,0x02,0xff,0x80,0x1e,0x1e,0x09,0x80,0x02,0xcf,0xff,0xc0,0xca,0xdf,0x80,0x86,0xff,0xfc,0x05,0x2f,0xec,0x24,0xc0,0xfa,0x80,0x7e,0x01,0xf5,0xe0,0xff,0xc7,0xff,0xfe,0x70,0xfe,0x79,0xe0,0x39,0xc2,0x7d,0x03,0xc6,0x77,0x00,0xb8,0x02,0xc8,0xde,0x9f,0xd0,0x21,0xc3,0x60,0x1c,0x00,0x3a,0x00,0x1e,0x0c,0x95,0x1f,0x9c,0x0d,0x3d,0x37,0xf0,0x59,0x7b,0xa0,0x20,0xf6,0x1c,0x16,0xfc,0x16,0x5d,0x89,0x0c,0x97,0x1d,0x39,0x98,0x4a,0x63,0x20,0xf3,0xef,0x85,0x8a,0x60,0x0f,0x1a,0x94,0x2a,0x91,0xa9,0x92,0x03,0xce,0xbe,0x0f,0x2f,0x07,0x86,0x73,0x4e,0x9c,0x42,0x2d,0xd3,0xc0,0x79,0xdb,0xd3,0xc3,0x00,0xc0,0x48,0x64,0x21,0xf2,0xd4,0x07,0xd2,0x4f,0x00,0x82,0x10,0x46,0x43,0x39,0xc7,0x6e,0xe6,0x32,0x6d,0x2c,0x04,0x1e,0x53,0x98,0x04,0x0a,0x05,0x00,0x2f,0x98,0x0c,0x81,0xe7,0x1e,0x02,0x8c,0x10,0x1e,0x86,0xf5,0xbf,0xc4,0xe0,0x17,0x10,0x7d,0xef,0xe2,0x20,0xfd,0xef,0xc4,0x01,0xe7,0xe1,0x91,0x67,0x27,0x77,0x7e,0x65,0x54,0x7e,0x56,0xf0,0x78,0x8f,0xca,0x83,0x22,0xd1,0x52,0x22,0x35,0x2a,0xa0,0x3c,0xa5,0xe0,0xf1,0x2f,0x95,0x06,0x4d,0xa2,0x9c,0x5d,0xfb,0xd5,0x58,0x38,0x3c,0x66,0xe0,0xf1,0x3f,0x95,0x06,0x55,0xa2,0x84,0x64,0x43,0xe3,0x09,0x07,0x8c,0x6c,0x1e,0x29,0xf2,0xa0,0x4b,0xb3,0x90,0x8b,0xbf,0x4a,0xfb,0x27,0x07,0x8c,0x2e,0x30,0x56,0x2a,0x01,0x79,0x8b,0xe5,0x0d,0x9a,0x01,0x8a,0x40,0x0f,0x74,0xf0,0xc1,0xa5,0x00,0x62,0xf8,0x01,0xc4,0x00,0xf0,0x20,0xf9,0xc0,0x06,0x82,0x22,0x2e,0x07,0xe4,0x1c,0x37,0xf8,0x1d,0xa1,0x94,0x70,0x88,0x01,0x58,0x40,0x03,0xf7,0x07,0x94,0x07,0xf8,0x19,0x28,0x0c,0x30,0x1e,0x71,0x0e,0x68,0x3c,0x77,0xf0,0x1c,0x20,0x24,0x70,0x08,0x21,0x0f,0xa6,0xe8,0x1e,0x49,0xd1,0x84,0x83,0xca,0x0d,0x00,0x18,0x8c,0x02,0x89,0x75,0x6f,0x10,0x3c,0x61,0xd8,0x0e,0x00,0x10,0x41,0xe7,0x00,0xe4,0x7f,0x5b,0xc2,0x0a,0x18,0x25,0x82,0xc1,0x00,0x81,0x83,0xce,0x23,0x55,0xf9,0xff,0xeb,0xe3,0xa1,0x82,0x46,0x2e,0x0f,0xf2,0x20,0x88,0x00,0x74,0x5e,0xe0,0x79,0xc0,0xa1,0x93,0x8c,0x00,0x3c,0xe8,0x14,0x4a,0xaf,0x75,0xfc,0x30,0x08,0x51,0x00,0x63,0x80,0xf4,0x2b,0x0e,0xa0,0xc0,0x32,0xf8,0x04,0x33,0x03,0x07,0x87,0x14,0x04,0xa2,0x51,0x0a,0x8d,0x56,0xea,0xfe,0x18,0x04,0x6b,0x83,0x83,0x83,0x83,0xd1,0x64,0x3a,0x2f,0x57,0xfa,0x2f,0x00,0x8a,0x78,0x78,0x30,0x17,0x79,0x03,0xc6,0x89,0x54,0x1f,0x8f,0xf6,0xef,0x00,0x94,0x7c,0xbe,0x0f,0xf3,0x20,0x8c,0x03,0x11,0xa8,0xd5,0x7e,0xcf,0xe3,0x50,0x9f,0x4f,0x20,0x08,0x01,0x07,0x8c,0x40,0xfc,0x35,0x5b,0xbf,0xdd,0x7e,0x3a,0x8b,0xc4,0x3e,0x00,0x80,0x10,0xf9,0xc8,0xb5,0x5a,0xaf,0x75,0xfe,0x87,0x54,0xe0,0xa7,0x06,0x70,0x0c,0x1a,0x2d,0x10,0xfc,0x3d,0x5e,0xea,0x00,0x60,0xda,0x0e,0x30,0x30,0x46,0x22,0xd2,0x11,0xf0,0xe2,0x03,0xe2,0x80,0x18,0xed,0x46,0x7a,0x0a,0x19,0xfc,0x47,0x23,0x11,0x1f,0x15,0xd4,0x7e,0x3f,0xf9,0xde,0x82,0x55,0x00,0xe0,0x4f,0xc3,0xe5,0x20,0x91,0x68,0x83,0xe3,0x6a,0xff,0xfb,0xea,0x9f,0x58,0x07,0xf2,0xff,0x44,0xe2,0x07,0x44,0x00,0x23,0xe1,0x1f,0x8e,0xff,0x17,0xaa,0xff,0xfe,0xc3,0xe3,0xc0,0x1e,0x88,0xf8,0x80,0x03,0xff,0xff,0xdf,0x83,0x04,0x3f,0x15,0xd8,0x80,0x0a,0xee,0x3f,0x10,}; +const uint8_t *_A_SleepActive_128x51[] = {_A_SleepActive_128x51_0,_A_SleepActive_128x51_1}; + +const uint8_t _A_Sleep_128x51_0[] = {0x01,0x00,0x19,0x02,0xff,0x80,0x1e,0x1e,0x09,0x80,0x02,0xcf,0xff,0xc0,0xca,0xdf,0x80,0x86,0xff,0xfc,0x0f,0xe8,0x3e,0xa0,0x1f,0x80,0x7d,0x7e,0xff,0xf1,0xff,0xff,0x9c,0x1e,0xff,0xd0,0x89,0xf9,0xe0,0x39,0xc2,0x7b,0x83,0xd2,0x77,0x00,0xb8,0x02,0xc8,0xde,0x77,0xff,0x80,0x3c,0xe1,0xb0,0x0e,0x00,0x5d,0x03,0xef,0x06,0x4a,0x8f,0xcc,0x1f,0x57,0xf8,0x18,0x3c,0x7d,0xc8,0xbb,0x80,0x83,0xc7,0xb0,0x0f,0xae,0xfb,0x14,0xa6,0x00,0xfa,0xaf,0x83,0xcb,0xc0,0x7c,0x35,0xa1,0x00,0x0e,0xde,0x0f,0x2c,0x05,0xce,0x00,0x6a,0x14,0xb8,0x80,0x12,0x4e,0xf6,0x3c,0x77,0xff,0x1e,0x1f,0x79,0xc8,0x3c,0xff,0x10,0x0b,0xe3,0x3d,0xe3,0xc0,0xf3,0xb8,0x43,0x38,0x08,0x36,0xbf,0xc4,0xc1,0xa2,0x81,0x1e,0x04,0x1e,0x01,0xce,0x3f,0x34,0x44,0x1e,0x60,0x22,0x9c,0x34,0x0c,0xfc,0x51,0x02,0xe8,0x83,0xc9,0x28,0x3e,0x8f,0xc1,0xb9,0x41,0xe3,0xc0,0x06,0x0e,0x00,0x22,0x38,0x4e,0x38,0x3d,0x25,0xe0,0xf1,0x2e,0x08,0x48,0x40,0x43,0x02,0x9e,0x03,0xd2,0x6e,0x0f,0x1b,0xc0,0x30,0x68,0x03,0x12,0x52,0x27,0xfe,0x36,0x0f,0x10,0x01,0x58,0x06,0x25,0x80,0x38,0xa4,0x2e,0x30,0x0f,0x39,0x00,0x84,0xce,0x29,0x0d,0x9a,0x03,0xce,0x60,0x0f,0x39,0xc0,0x3c,0xe0,0xd2,0x80,0x79,0x8d,0x04,0x42,0x2e,0x51,0x40,0x9c,0x08,0x3e,0x83,0x41,0x07,0x97,0x03,0xf2,0xae,0x28,0x1d,0xa0,0x1c,0x50,0x18,0x40,0x84,0x80,0x03,0xf7,0x07,0x94,0x07,0xf8,0x19,0x28,0x0c,0x30,0x1e,0x71,0x0e,0x6a,0xf8,0xa0,0x38,0x40,0x48,0xe0,0x60,0x10,0x40,0xfa,0x6e,0x81,0xe4,0x97,0x18,0x48,0x3c,0xa0,0xd0,0x01,0x88,0xc0,0x28,0x97,0x52,0x80,0x83,0xca,0x1d,0x00,0xe0,0x81,0x04,0x1e,0x70,0x0e,0x47,0xf5,0xbc,0x20,0xa1,0x82,0x60,0x13,0xa2,0xe1,0x10,0x79,0x44,0x6a,0xaa,0x11,0xaf,0x8e,0x86,0x09,0x60,0xb8,0x3b,0x88,0x82,0x20,0x01,0xd1,0x7b,0x81,0xe7,0x02,0x8c,0x4e,0x30,0x00,0xf3,0xa0,0x51,0x2a,0xbd,0xd7,0xf0,0xc0,0x21,0x50,0x28,0x34,0x70,0x1e,0x8d,0x01,0xd4,0x18,0x06,0x5f,0x00,0x86,0x70,0x60,0x30,0xe7,0xf1,0x9c,0x46,0xa3,0x55,0xba,0xbf,0x86,0x01,0x1a,0xd0,0xe0,0x60,0xe0,0xf4,0x59,0x0e,0x8b,0xd5,0xfe,0x8b,0xc0,0x22,0x99,0x1e,0x04,0x05,0xb8,0x40,0xf1,0xa2,0x55,0x07,0xe3,0xfd,0xbb,0xc0,0x25,0x17,0x2f,0xc3,0xb0,0xc8,0x23,0x00,0xc4,0x6a,0x35,0x5f,0xb3,0xf8,0xd4,0x27,0xd3,0xe8,0x02,0x00,0x41,0xe3,0x10,0x3f,0x0d,0x56,0xef,0xf7,0x5f,0x8e,0xa3,0xf1,0x0f,0x80,0x20,0x04,0x3e,0x72,0x2d,0x56,0xab,0xdd,0x7f,0xa1,0xd5,0x30,0x29,0xc1,0x9c,0x03,0x06,0x8b,0x44,0x3f,0x0f,0x57,0xba,0x80,0x18,0x36,0x83,0x8c,0x0c,0x19,0xe1,0xec,0x47,0xc5,0x88,0x0f,0x8a,0x00,0x63,0xb5,0x19,0xe8,0x28,0x67,0xf1,0x1c,0x8c,0x44,0x7c,0x57,0x51,0xf8,0xff,0xe7,0x7a,0x09,0x54,0x03,0x81,0x3f,0x0f,0x94,0x82,0x45,0xa2,0x0f,0x8d,0xab,0xff,0xef,0xaa,0x7d,0x60,0x1f,0xcb,0xfd,0x13,0x88,0x1d,0x10,0x00,0x8f,0x84,0x7e,0x3b,0xfc,0x5e,0xab,0xff,0xfb,0x0f,0x8f,0x00,0x7a,0x23,0xe2,0x00,0x0f,0xff,0xff,0x7e,0x0c,0x10,0xfc,0x57,0x62,0x00,0x2b,0xb8,0xfc,0x40,}; +const uint8_t _A_Sleep_128x51_1[] = {0x01,0x00,0x1a,0x02,0xff,0x80,0x1e,0x1e,0x09,0x80,0x01,0x6f,0xc0,0x43,0x3f,0xff,0x03,0xea,0x3e,0x02,0x1b,0xff,0xf0,0x3f,0xa0,0xf7,0xfd,0x80,0x86,0x01,0xf8,0x03,0x90,0x3d,0xfe,0x22,0xc2,0xf3,0x83,0xe8,0x3e,0x3e,0x78,0x0e,0x70,0x0e,0x44,0xf4,0xfe,0x84,0x4e,0x77,0x00,0xb8,0x02,0xc8,0xde,0x83,0x83,0xff,0xc3,0x60,0x1c,0x00,0xba,0x07,0xde,0x0c,0x95,0x1f,0x99,0xae,0xaf,0xf0,0x30,0x78,0xfb,0x8f,0x77,0x01,0x07,0x8f,0x60,0x1f,0x5d,0xf6,0x29,0x4c,0x01,0xf5,0x5f,0x07,0x97,0x81,0x59,0x56,0xf0,0x79,0x60,0x2e,0x70,0x0f,0x82,0xd0,0xc0,0x07,0x27,0x7b,0x1e,0x3b,0xff,0x8f,0x0f,0xbc,0xe4,0x1e,0x7f,0x88,0x05,0xf0,0x64,0xf1,0xe0,0x79,0xdc,0x21,0x9c,0x04,0x1b,0x5f,0xe2,0x60,0xd1,0x40,0x8f,0x02,0x0f,0x00,0xe7,0x1f,0x9a,0x22,0x0f,0x30,0x11,0x4e,0x1a,0x06,0x7e,0x28,0x81,0x74,0x41,0xe4,0x94,0x1f,0x43,0x31,0x0d,0xc2,0x0f,0x1e,0x00,0x30,0x70,0x01,0x11,0xc2,0x71,0xc1,0xe9,0x2f,0x07,0x89,0x70,0x42,0x42,0x02,0x18,0x14,0xf0,0x1e,0x93,0x70,0x78,0xde,0x01,0x83,0x40,0x18,0x92,0x91,0x63,0x60,0xf1,0x00,0x15,0x80,0x62,0x58,0x03,0x8a,0x42,0xe3,0x00,0xf3,0x90,0x08,0x4c,0xe2,0x90,0xd9,0xa0,0x3c,0xe6,0x00,0xf3,0x9c,0x03,0xce,0x0d,0x28,0x07,0x98,0xd0,0x44,0x22,0xe5,0x14,0x09,0xc0,0x83,0xe8,0x34,0x10,0x79,0x70,0x3f,0x2a,0xe2,0x81,0xda,0x01,0xc5,0x01,0x84,0x08,0x48,0x00,0x3f,0x70,0x79,0x40,0x7f,0x81,0x92,0x80,0xc3,0x01,0xe7,0x10,0xe6,0xaf,0x8a,0x03,0x84,0x04,0x8e,0x06,0x01,0x04,0x0f,0xa6,0xe8,0x1e,0x49,0x71,0x84,0x83,0xca,0x0d,0x00,0x18,0x8c,0x02,0x89,0x75,0x28,0x08,0x3c,0xa1,0xd0,0x0e,0x08,0x10,0x41,0xe7,0x00,0xe4,0x7f,0x5b,0xc2,0x0a,0x18,0x26,0x01,0x3a,0x2e,0x11,0x07,0x94,0x46,0xaa,0xa1,0x1a,0xf8,0xe8,0x60,0x96,0x0b,0x83,0xb8,0x88,0x22,0x00,0x1d,0x17,0xb8,0x1e,0x70,0x28,0xc4,0xe3,0x00,0x0f,0x3a,0x05,0x12,0xab,0xdd,0x7f,0x0c,0x02,0x15,0x02,0x83,0x47,0x01,0xe8,0xd0,0x1d,0x41,0x80,0x65,0xf0,0x08,0x66,0x06,0x03,0x0e,0x7f,0x19,0xc4,0x6a,0x35,0x5b,0xab,0xf8,0x60,0x11,0xab,0x0e,0x02,0x0e,0x0f,0x45,0x90,0xe8,0xbd,0x5f,0xe8,0xbc,0x02,0x29,0x11,0xe0,0x40,0x5b,0x84,0x0f,0x1a,0x25,0x50,0x7e,0x3f,0xdb,0xbc,0x02,0x51,0x12,0xfc,0x3b,0x0c,0x82,0x30,0x0c,0x46,0xa3,0x55,0xfb,0x3f,0x8d,0x42,0x1d,0x3e,0x80,0x20,0x04,0x1e,0x31,0x03,0xf0,0xd5,0x6e,0xff,0x75,0xf8,0xea,0x3f,0x10,0xf8,0x02,0x00,0x43,0xe7,0x22,0xd5,0x6a,0xbd,0xd7,0xfa,0x1d,0x53,0x02,0x9c,0x19,0xc0,0x30,0x68,0xb4,0x43,0xf0,0xf5,0x7b,0xa8,0x01,0x83,0x68,0x38,0xc0,0xc1,0x9e,0x1e,0xc4,0x7c,0x58,0x80,0xf8,0xa0,0x06,0x3b,0x51,0x9e,0x82,0x86,0x7f,0x11,0xc8,0xc4,0x47,0xc5,0x75,0x1f,0x8f,0xfe,0x77,0xa0,0x95,0x40,0x38,0x13,0xf0,0xf9,0x48,0x24,0x5a,0x20,0xf8,0xda,0xbf,0xfe,0xfa,0xa7,0xd6,0x01,0xfc,0xbf,0xd1,0x38,0x81,0xd1,0x00,0x08,0xf8,0x47,0xe3,0xbf,0xc5,0xea,0xbf,0xff,0xb0,0xf8,0xf0,0x07,0xa2,0x3e,0x20,0x00,0xff,0xff,0xf7,0xe0,0xc1,0x0f,0xc5,0x76,0x20,0x02,0xbb,0x8f,0xc4,}; +const uint8_t _A_Sleep_128x51_2[] = {0x01,0x00,0x19,0x02,0xff,0x80,0x1e,0x1e,0x09,0x80,0x02,0xcf,0xff,0xc0,0xca,0xdf,0x80,0x86,0xff,0xfc,0x0f,0xe8,0x3e,0xa0,0x1f,0x80,0x7d,0x7e,0xff,0xf1,0xff,0xff,0x9c,0x1e,0xff,0xd0,0x89,0xf9,0xe0,0x39,0xc2,0x7b,0x83,0xd2,0x77,0x00,0xb8,0x02,0xc8,0xde,0x77,0xff,0x80,0x3c,0xe1,0xb0,0x0e,0x00,0x5d,0x03,0xef,0x06,0x4a,0x8f,0xcc,0x1f,0x57,0xf8,0x18,0x3c,0x7d,0xc8,0xbb,0x80,0x83,0xc7,0xb0,0x0f,0xae,0xfb,0x14,0xa6,0x00,0xfa,0xaf,0x83,0xcb,0xc0,0x7c,0x35,0xa1,0x00,0x0e,0xde,0x0f,0x2c,0x05,0xce,0x00,0x6a,0x14,0xb8,0x80,0x12,0x4e,0xf6,0x3c,0x77,0xff,0x1e,0x1f,0x79,0xc8,0x3c,0xff,0x10,0x0b,0xe3,0x3d,0xe3,0xc0,0xf3,0xb8,0x43,0x38,0x08,0x36,0xbf,0xc4,0xc1,0xa2,0x81,0x1e,0x04,0x1e,0x01,0xce,0x3f,0x34,0x44,0x1e,0x60,0x22,0x9c,0x34,0x0c,0xfc,0x51,0x02,0xe8,0x83,0xc9,0x28,0x3e,0x8f,0xc1,0xb9,0x41,0xe3,0xc0,0x06,0x0e,0x00,0x22,0x38,0x4e,0x38,0x3d,0x25,0xe0,0xf1,0x2e,0x08,0x48,0x40,0x43,0x02,0x9e,0x03,0xd2,0x6e,0x0f,0x1b,0xc0,0x30,0x68,0x03,0x12,0x52,0x27,0xfe,0x36,0x0f,0x10,0x01,0x58,0x06,0x25,0x80,0x38,0xa4,0x2e,0x30,0x0f,0x39,0x00,0x84,0xce,0x29,0x0d,0x9a,0x03,0xce,0x60,0x0f,0x39,0xc0,0x3c,0xe0,0xd2,0x80,0x79,0x8d,0x04,0x42,0x2e,0x51,0x40,0x9c,0x08,0x3e,0x83,0x41,0x07,0x97,0x03,0xf2,0xae,0x28,0x1d,0xa0,0x1c,0x50,0x18,0x40,0x84,0x80,0x03,0xf7,0x07,0x94,0x07,0xf8,0x19,0x28,0x0c,0x30,0x1e,0x71,0x0e,0x6a,0xf8,0xa0,0x38,0x40,0x48,0xe0,0x60,0x10,0x40,0xfa,0x6e,0x81,0xe4,0x97,0x18,0x48,0x3c,0xa0,0xd0,0x01,0x88,0xc0,0x28,0x97,0x52,0x80,0x83,0xca,0x1d,0x00,0xe0,0x81,0x04,0x1e,0x70,0x0e,0x47,0xf5,0xbc,0x20,0xa1,0x82,0x60,0x13,0xa2,0xe1,0x10,0x79,0x44,0x6a,0xaa,0x11,0xaf,0x8e,0x86,0x09,0x60,0xb8,0x3b,0x88,0x82,0x20,0x01,0xd1,0x7b,0x81,0xe7,0x02,0x8c,0x4e,0x30,0x00,0xf3,0xa0,0x51,0x2a,0xbd,0xd7,0xf0,0xc0,0x21,0x50,0x28,0x34,0x70,0x1e,0x8d,0x01,0xd4,0x18,0x06,0x5f,0x00,0x86,0x70,0x60,0x30,0xe7,0xf1,0x9c,0x46,0xa3,0x55,0xba,0xbf,0x86,0x01,0x1a,0xd0,0xe0,0x60,0xe0,0xf4,0x59,0x0e,0x8b,0xd5,0xfe,0x8b,0xc0,0x22,0x99,0x1e,0x04,0x05,0xb8,0x40,0xf1,0xa2,0x55,0x07,0xe3,0xfd,0xbb,0xc0,0x25,0x17,0x2f,0xc3,0xb0,0xc8,0x23,0x00,0xc4,0x6a,0x35,0x5f,0xb3,0xf8,0xd4,0x27,0xd3,0xe8,0x02,0x00,0x41,0xe3,0x10,0x3f,0x0d,0x56,0xef,0xf7,0x5f,0x8e,0xa3,0xf1,0x0f,0x80,0x20,0x04,0x3e,0x72,0x2d,0x56,0xab,0xdd,0x7f,0xa1,0xd5,0x30,0x29,0xc1,0x9c,0x03,0x06,0x8b,0x44,0x3f,0x0f,0x57,0xba,0x80,0x18,0x36,0x83,0x8c,0x0c,0x19,0xe1,0xec,0x47,0xc5,0x88,0x0f,0x8a,0x00,0x63,0xb5,0x19,0xe8,0x28,0x67,0xf1,0x1c,0x8c,0x44,0x7c,0x57,0x51,0xf8,0xff,0xe7,0x7a,0x09,0x54,0x03,0x81,0x3f,0x0f,0x94,0x82,0x45,0xa2,0x0f,0x8d,0xab,0xff,0xef,0xaa,0x7d,0x60,0x1f,0xcb,0xfd,0x13,0x88,0x1d,0x10,0x00,0x8f,0x84,0x7e,0x3b,0xfc,0x5e,0xab,0xff,0xfb,0x0f,0x8f,0x00,0x7a,0x23,0xe2,0x00,0x0f,0xff,0xff,0x7e,0x0c,0x10,0xfc,0x57,0x62,0x00,0x2b,0xb8,0xfc,0x40,}; +const uint8_t _A_Sleep_128x51_3[] = {0x01,0x00,0x1a,0x02,0xff,0x80,0x1e,0x1e,0x09,0x80,0x01,0x6f,0xc0,0x43,0x3f,0xff,0x03,0xea,0x3e,0x02,0x1b,0xff,0xf0,0x3f,0xa0,0xf7,0xfd,0x80,0x86,0x01,0xf8,0x03,0x90,0x3d,0xfe,0x22,0xc2,0xf3,0x83,0xe8,0x3e,0x3e,0x78,0x0e,0x70,0x0e,0x44,0xf4,0xfe,0x84,0x4e,0x77,0x00,0xb8,0x02,0xc8,0xde,0x83,0x83,0xff,0xc3,0x60,0x1c,0x00,0xba,0x07,0xde,0x0c,0x95,0x1f,0x99,0xae,0xaf,0xf0,0x30,0x78,0xfb,0x8f,0x77,0x01,0x07,0x8f,0x60,0x1f,0x5d,0xf6,0x29,0x4c,0x01,0xf5,0x5f,0x07,0x97,0x81,0x59,0x56,0xf0,0x79,0x60,0x2e,0x70,0x0f,0x82,0xd0,0xc0,0x07,0x27,0x7b,0x1e,0x3b,0xff,0x8f,0x0f,0xbc,0xe4,0x1e,0x7f,0x88,0x05,0xf0,0x64,0xf1,0xe0,0x79,0xdc,0x21,0x9c,0x04,0x1b,0x5f,0xe2,0x60,0xd1,0x40,0x8f,0x02,0x0f,0x00,0xe7,0x1f,0x9a,0x22,0x0f,0x30,0x11,0x4e,0x1a,0x06,0x7e,0x28,0x81,0x74,0x41,0xe4,0x94,0x1f,0x43,0x31,0x0d,0xc2,0x0f,0x1e,0x00,0x30,0x70,0x01,0x11,0xc2,0x71,0xc1,0xe9,0x2f,0x07,0x89,0x70,0x42,0x42,0x02,0x18,0x14,0xf0,0x1e,0x93,0x70,0x78,0xde,0x01,0x83,0x40,0x18,0x92,0x91,0x63,0x60,0xf1,0x00,0x15,0x80,0x62,0x58,0x03,0x8a,0x42,0xe3,0x00,0xf3,0x90,0x08,0x4c,0xe2,0x90,0xd9,0xa0,0x3c,0xe6,0x00,0xf3,0x9c,0x03,0xce,0x0d,0x28,0x07,0x98,0xd0,0x44,0x22,0xe5,0x14,0x09,0xc0,0x83,0xe8,0x34,0x10,0x79,0x70,0x3f,0x2a,0xe2,0x81,0xda,0x01,0xc5,0x01,0x84,0x08,0x48,0x00,0x3f,0x70,0x79,0x40,0x7f,0x81,0x92,0x80,0xc3,0x01,0xe7,0x10,0xe6,0xaf,0x8a,0x03,0x84,0x04,0x8e,0x06,0x01,0x04,0x0f,0xa6,0xe8,0x1e,0x49,0x71,0x84,0x83,0xca,0x0d,0x00,0x18,0x8c,0x02,0x89,0x75,0x28,0x08,0x3c,0xa1,0xd0,0x0e,0x08,0x10,0x41,0xe7,0x00,0xe4,0x7f,0x5b,0xc2,0x0a,0x18,0x26,0x01,0x3a,0x2e,0x11,0x07,0x94,0x46,0xaa,0xa1,0x1a,0xf8,0xe8,0x60,0x96,0x0b,0x83,0xb8,0x88,0x22,0x00,0x1d,0x17,0xb8,0x1e,0x70,0x28,0xc4,0xe3,0x00,0x0f,0x3a,0x05,0x12,0xab,0xdd,0x7f,0x0c,0x02,0x15,0x02,0x83,0x47,0x01,0xe8,0xd0,0x1d,0x41,0x80,0x65,0xf0,0x08,0x66,0x06,0x03,0x0e,0x7f,0x19,0xc4,0x6a,0x35,0x5b,0xab,0xf8,0x60,0x11,0xab,0x0e,0x02,0x0e,0x0f,0x45,0x90,0xe8,0xbd,0x5f,0xe8,0xbc,0x02,0x29,0x11,0xe0,0x40,0x5b,0x84,0x0f,0x1a,0x25,0x50,0x7e,0x3f,0xdb,0xbc,0x02,0x51,0x12,0xfc,0x3b,0x0c,0x82,0x30,0x0c,0x46,0xa3,0x55,0xfb,0x3f,0x8d,0x42,0x1d,0x3e,0x80,0x20,0x04,0x1e,0x31,0x03,0xf0,0xd5,0x6e,0xff,0x75,0xf8,0xea,0x3f,0x10,0xf8,0x02,0x00,0x43,0xe7,0x22,0xd5,0x6a,0xbd,0xd7,0xfa,0x1d,0x53,0x02,0x9c,0x19,0xc0,0x30,0x68,0xb4,0x43,0xf0,0xf5,0x7b,0xa8,0x01,0x83,0x68,0x38,0xc0,0xc1,0x9e,0x1e,0xc4,0x7c,0x58,0x80,0xf8,0xa0,0x06,0x3b,0x51,0x9e,0x82,0x86,0x7f,0x11,0xc8,0xc4,0x47,0xc5,0x75,0x1f,0x8f,0xfe,0x77,0xa0,0x95,0x40,0x38,0x13,0xf0,0xf9,0x48,0x24,0x5a,0x20,0xf8,0xda,0xbf,0xfe,0xfa,0xa7,0xd6,0x01,0xfc,0xbf,0xd1,0x38,0x81,0xd1,0x00,0x08,0xf8,0x47,0xe3,0xbf,0xc5,0xea,0xbf,0xff,0xb0,0xf8,0xf0,0x07,0xa2,0x3e,0x20,0x00,0xff,0xff,0xf7,0xe0,0xc1,0x0f,0xc5,0x76,0x20,0x02,0xbb,0x8f,0xc4,}; +const uint8_t *_A_Sleep_128x51[] = {_A_Sleep_128x51_0,_A_Sleep_128x51_1,_A_Sleep_128x51_2,_A_Sleep_128x51_3}; + +const uint8_t _A_TVActive_128x51_0[] = {0x01,0x00,0x4a,0x02,0x80,0x40,0xa0,0x10,0x68,0x80,0x25,0x6b,0x95,0x58,0x18,0x3d,0x21,0x20,0xf6,0xd5,0xea,0xa0,0xc0,0x52,0x82,0x03,0xc6,0x10,0x0e,0x4c,0x04,0x02,0x81,0x0d,0x03,0x10,0x30,0x62,0x21,0x21,0x00,0x1d,0x00,0x22,0x31,0xa0,0x31,0x0b,0x06,0x22,0x32,0x10,0x01,0xc8,0x00,0x43,0x35,0x07,0xa4,0x84,0x8c,0x60,0xf4,0xb5,0x01,0x93,0x82,0x0e,0x4f,0x04,0x4c,0x06,0x35,0x41,0xb2,0x60,0x41,0xe9,0x10,0x8a,0x00,0xc7,0x50,0x56,0x4a,0x0c,0x06,0x01,0x1c,0x2b,0x94,0x60,0x06,0x3d,0x00,0x7a,0x48,0x78,0x5f,0xf1,0x59,0x42,0x2c,0x00,0x31,0xd0,0x06,0x44,0x00,0x30,0x19,0x0c,0xd0,0xa8,0x50,0x0f,0xc6,0x02,0x03,0x3e,0xa0,0x03,0xce,0x05,0x11,0x41,0x08,0x3c,0xb7,0x10,0x3d,0x37,0xff,0x04,0x0f,0x38,0x24,0x25,0x28,0x70,0x0a,0x84,0x17,0x31,0xff,0xa2,0x9e,0x4e,0x08,0xb5,0x20,0x11,0x6c,0x21,0x5a,0x0e,0xfe,0x0d,0x32,0x70,0x80,0x61,0x09,0xca,0xc1,0x15,0x80,0x7f,0x03,0xe9,0x10,0x07,0x8f,0x80,0x0c,0x5c,0x04,0xe0,0xf0,0x03,0xe9,0xf8,0x87,0xc0,0x23,0xe7,0x73,0xea,0xa6,0x84,0x3e,0x90,0x68,0xe0,0x78,0xdf,0xc5,0x01,0xc0,0x60,0x83,0xe7,0x01,0x90,0x1b,0x48,0x00,0x5d,0x60,0xe0,0xd0,0x43,0xe4,0x9f,0x1a,0x01,0xb4,0x80,0x05,0xfc,0x1b,0x8e,0x80,0x3e,0x4c,0xf1,0xc0,0x41,0x01,0xe9,0x7e,0x62,0x0d,0x40,0x3e,0x3f,0xff,0xfc,0x3c,0x1e,0x9f,0x08,0x0c,0x7e,0x70,0xdf,0x10,0xf8,0xd5,0x6a,0xbf,0x50,0x90,0x84,0xc6,0x01,0xae,0xc7,0x43,0xe7,0x90,0x0e,0xa0,0x1c,0x75,0x40,0x04,0x87,0x60,0x2a,0xbf,0xd8,0x18,0x30,0x6f,0x53,0x50,0xf9,0x00,0x0e,0x1f,0xc0,0xd5,0x7e,0xbf,0xe3,0x41,0xd6,0xa4,0xc4,0x3c,0x9e,0xa8,0x55,0x80,0x3e,0x45,0x81,0xab,0x24,0xc4,0x3c,0x97,0x58,0x6e,0x83,0x55,0x1e,0x35,0x16,0x0f,0x55,0x01,0x0f,0xa6,0xb8,0x3e,0x34,0x08,0xb8,0x3c,0x74,0x10,0x1a,0xac,0x0c,0x3e,0x95,0x79,0xec,0xfb,0x01,0x7d,0x80,0x45,0xea,0x01,0xd1,0x81,0x0f,0x93,0x55,0xca,0x90,0xe0,0x3b,0x5f,0xf8,0x16,0xa0,0x7a,0x30,0x33,0xe1,0x7f,0xef,0xf5,0x58,0x6c,0x80,0xe0,0x37,0xf8,0x29,0x34,0x7d,0x50,0x7c,0x40,0x00,0xb7,0x1a,0xa8,0x54,0x80,0xe0,0x3a,0xac,0x16,0xaa,0x01,0x1d,0x8c,0x0f,0x90,0x3e,0x54,0x00,0x30,0xd0,0x6a,0xaf,0xb1,0x90,0x48,0x80,0x03,0xa2,0xd9,0x87,0xc6,0x81,0x40,0x6d,0x8e,0x81,0x1a,0x30,0x39,0x01,0xf4,0xc0,0x43,0x0d,0xc0,0x39,0x85,0xba,0x26,0x21,0x80,0xd0,0x07,0xc5,0x98,0x1f,0x94,0x02,0x42,0x0f,0x1d,0x45,0x1f,0x00,0x92,0x11,0xf2,0x07,0xc6,0x01,0x3e,0x07,0x8f,0x56,0x80,0x0f,0x23,0x71,0x48,0xf6,0x41,0xf2,0x4e,0x95,0xa8,0x88,0x2c,0x21,0x80,0x80,0x84,0x44,0x41,0xf1,0x1f,0x14,0xd4,0x1e,0xc7,0xf3,0x07,0x96,0xaa,0x35,0x40,0x90,0x07,0xe8,0x92,0x31,0x50,0x79,0xcc,0x7f,0x98,0xf9,0x10,0xfd,0x35,0x08,0x42,0x88,0x03,0xc6,0x93,0x02,0xc8,0x07,0xca,0x3a,0x68,0x34,0x20,0x83,0xd4,0x7e,0x40,0x04,0x87,0x60,0x21,0x02,0xf2,0x0f,0xa5,0x75,0x8c,0x64,0xa1,0x83,0x93,0xc8,0x1e,0x23,0xf2,0xfb,0x6a,0xbd,0x48,0x71,0x07,0x8c,0x10,0x6c,0x31,0x12,0x78,0x86,0x8b,0x0b,0xd7,0x8f,0x94,0x46,0x3c,0x0f,0x39,0x49,0xfd,0x20,0xd6,0xc4,0x01,0x1b,0x44,0x1e,0x32,0x00,0x79,0x07,0xca,0x0b,0x38,0x07,0x92,0x74,0x41,0xe5,0x15,0x07,0x88,0xfc,0xa0,0xc6,0x91,0x00,0x0b,0x34,0x41,0xe5,0x0b,0x0f,0xa8,0x3c,0xe0,0x10,0x30,0x78,0xc4,0x00,}; +const uint8_t _A_TVActive_128x51_1[] = {0x01,0x00,0x34,0x02,0x80,0x40,0xa0,0x10,0x68,0x80,0x25,0x6b,0x95,0x58,0x18,0x3d,0x21,0x20,0xf6,0xd5,0xea,0xa0,0xc0,0x52,0x82,0x03,0xc6,0x10,0x0e,0x4c,0x04,0x02,0x81,0x0d,0x03,0x10,0x30,0x62,0x21,0x21,0x00,0x1d,0x00,0x22,0x31,0xa0,0x31,0x0b,0x06,0x22,0x32,0x10,0x01,0xc8,0x00,0x43,0x35,0x07,0xa4,0x84,0x8c,0x60,0xf4,0xb5,0x01,0x93,0x82,0x4e,0x52,0xa9,0x55,0x06,0xc9,0x81,0x07,0xc6,0xa0,0xac,0x94,0x18,0x0c,0x02,0x38,0x07,0x1f,0x84,0x64,0x06,0x3d,0x00,0x7a,0x48,0x78,0x5f,0xf8,0x99,0x9c,0xb5,0xc0,0x31,0xd0,0x06,0x44,0x00,0x30,0x19,0x0c,0xd0,0x56,0x70,0x4a,0xc0,0x30,0x68,0x00,0xf3,0x81,0x44,0x50,0x42,0x0f,0x3f,0x04,0x0a,0x7f,0x82,0x07,0x9c,0x12,0x12,0x94,0x38,0x05,0xf3,0x01,0x85,0xff,0xd1,0x4f,0x27,0x04,0x5a,0x90,0x08,0xbf,0x90,0x0c,0x57,0xff,0x04,0x99,0x38,0x40,0x30,0x84,0xe5,0xf0,0x0d,0x8f,0xf0,0x3e,0x91,0x00,0x78,0xf8,0x00,0xc5,0xe0,0x83,0x80,0x87,0x06,0x1f,0x3f,0xc4,0x3e,0x01,0x1f,0x02,0x8f,0x03,0x9e,0x04,0x1a,0x00,0x7d,0x20,0xd1,0xc0,0xf1,0xc8,0x32,0x17,0xf4,0x50,0x8f,0xd2,0x03,0x20,0x36,0x90,0xd4,0x62,0x1f,0xf0,0x20,0xd0,0x43,0xe4,0x9f,0x1a,0x01,0xb4,0x8a,0xa3,0x10,0xfe,0x03,0x07,0x40,0x1f,0x26,0x78,0xe0,0x20,0x87,0x53,0x86,0x7e,0x0a,0x03,0x50,0x09,0x0f,0xff,0xff,0x0f,0x07,0xa4,0x1a,0x05,0x7c,0x86,0x37,0xc4,0x3e,0x35,0x5a,0xaf,0xd4,0x24,0x21,0x31,0x80,0x42,0xb0,0x51,0xf0,0x20,0xf5,0x00,0x43,0xaa,0x00,0x24,0x3a,0x01,0x16,0xfd,0x13,0xca,0xf5,0x35,0x0f,0x90,0x00,0xc2,0xe3,0x8b,0x52,0x94,0x03,0x5b,0x6a,0x0f,0xaf,0xaa,0x14,0x17,0x12,0x68,0x96,0x06,0xad,0xd5,0x0f,0xad,0xd6,0x1b,0x00,0xd5,0x8c,0x84,0xd4,0x38,0x3d,0x54,0x04,0x3e,0x9a,0xe8,0x57,0x83,0xfe,0x9e,0x13,0xf0,0xc0,0x6a,0xb0,0x30,0xfa,0x55,0xe7,0xb1,0xe2,0xd9,0xd4,0x03,0xa3,0x02,0x1f,0x26,0xab,0x94,0xf0,0x1f,0x57,0xfe,0x07,0xa8,0x1e,0x8c,0x0c,0xf8,0x42,0xa1,0xaa,0x8f,0xc6,0x01,0xd5,0xff,0xc1,0x49,0xa3,0xea,0x83,0xe2,0x00,0x05,0xb8,0xd5,0x17,0xc4,0xd0,0x58,0x2d,0x54,0x02,0x3b,0x18,0x1f,0x20,0x7c,0xc0,0xc3,0x41,0xaa,0xad,0x46,0x41,0x22,0x00,0x0e,0x8b,0x66,0x1f,0x36,0xd8,0xe8,0x11,0xa3,0x03,0x90,0x1f,0x4c,0x04,0x21,0xf2,0x00,0x0d,0x42,0xfb,0x00,0x80,0xd0,0x07,0xc5,0x98,0x1f,0xa0,0x00,0x75,0x14,0x7c,0x02,0x48,0x47,0xc8,0x1f,0x5e,0xad,0x00,0x1e,0x46,0xe2,0x91,0xec,0x83,0xe8,0x3e,0x1a,0x05,0x01,0x84,0x28,0x81,0xc0,0x08,0x88,0x3e,0x75,0x09,0xa8,0x3d,0x8f,0xea,0x80,0x18,0xd5,0x02,0x40,0x1f,0xa2,0x48,0xc5,0x41,0xe7,0x31,0xfe,0x63,0xe4,0x43,0xf4,0xd4,0x01,0x06,0x81,0x10,0x07,0x8d,0x26,0x05,0x90,0x0f,0x94,0x74,0xd0,0x70,0xdc,0x00,0x3d,0x47,0xe4,0x00,0x48,0x76,0x02,0x10,0x2f,0x20,0xfa,0x57,0x58,0xc6,0x4a,0x18,0x39,0x3c,0x81,0xe2,0x3f,0x2f,0xb6,0xa9,0xfc,0x3f,0xf0,0x78,0xc1,0x06,0xc3,0x11,0x27,0x88,0x68,0xb0,0xbd,0x78,0xf9,0x44,0x63,0xc0,0xf3,0x94,0x9f,0xd2,0x0d,0x6c,0x40,0x11,0xb4,0x41,0xe3,0x20,0x07,0x90,0x7c,0xa0,0xb3,0x80,0x79,0x27,0x44,0x1e,0x51,0x50,0x78,0x8f,0xca,0x0c,0x69,0x10,0x00,0xb3,0x44,0x1e,0x50,0xb0,0xfa,0x83,0xce,0x01,0x03,0x07,0x8c,0x40,}; +const uint8_t *_A_TVActive_128x51[] = {_A_TVActive_128x51_0,_A_TVActive_128x51_1}; + +const uint8_t _A_TV_128x51_0[] = {0x01,0x00,0x14,0x02,0x80,0x40,0xa0,0x14,0x08,0x88,0x21,0x38,0x10,0x0b,0x00,0x3f,0x24,0x10,0x0c,0x00,0x18,0xe0,0x80,0x81,0x84,0x83,0xd2,0x20,0x02,0x18,0x08,0x18,0xa1,0x00,0xf1,0x83,0x03,0xd0,0x10,0x22,0xb2,0x0b,0x18,0x3d,0x85,0x02,0x02,0x30,0x79,0xc2,0x8b,0x0c,0x22,0x32,0x31,0x48,0x09,0xea,0x0f,0x22,0x11,0x17,0x46,0x01,0xa0,0x09,0x08,0x00,0xc9,0x84,0x0f,0x33,0x20,0xd4,0x02,0x42,0x0f,0x60,0xc1,0x83,0xc6,0x60,0x77,0x40,0x7b,0x81,0xc4,0x1e,0x37,0xff,0x00,0x5c,0xa0,0x78,0x08,0x78,0x3d,0x20,0x43,0x51,0xc0,0x67,0xc1,0xe6,0x03,0x15,0x82,0x41,0x23,0x03,0x43,0x07,0xa1,0x21,0x20,0x91,0x40,0x42,0x03,0xc7,0xc1,0x3f,0x0f,0xa4,0x22,0x48,0x0f,0x4e,0x04,0x06,0x41,0x67,0x0f,0xa4,0x42,0x44,0x03,0x19,0x80,0xec,0xec,0x1a,0x7d,0x00,0x3c,0xff,0x14,0x70,0x18,0xc3,0x00,0x42,0x45,0x1e,0x05,0x4f,0x82,0x0f,0x38,0x35,0x60,0x06,0x24,0xb2,0x09,0x0e,0x03,0x5e,0x1f,0x48,0x08,0xa4,0x7e,0x01,0x63,0x01,0x0d,0x43,0xa0,0x9f,0x4a,0x07,0xe2,0x1e,0x07,0x21,0x11,0x32,0x45,0x9e,0x98,0x07,0xb1,0xab,0x8e,0x00,0x1f,0x2f,0xff,0xfe,0x1e,0x0f,0x41,0x91,0x20,0x47,0x50,0x04,0x1a,0xad,0x57,0xea,0x12,0x10,0x98,0xc0,0x35,0xc7,0x12,0x82,0x75,0x00,0xe3,0xaa,0x00,0x24,0x3b,0x01,0xd5,0x07,0x8c,0x72,0x01,0x78,0x9a,0x87,0xc8,0x00,0x70,0xfe,0x06,0xab,0xff,0xe1,0x28,0x8c,0x32,0xd4,0x1f,0x5f,0x54,0x2a,0xc1,0x81,0x80,0xc7,0x8e,0xe3,0x06,0xea,0x07,0xd6,0xeb,0x0d,0x7c,0x88,0x74,0x5e,0xe2,0x50,0x18,0x08,0x7d,0x35,0xd0,0xa0,0x78,0x92,0x86,0x5d,0x80,0x80,0xd4,0x20,0x61,0xf4,0xab,0xcf,0x67,0xd8,0x03,0x30,0xc1,0x68,0x10,0x1d,0x44,0x08,0x7c,0x9a,0xae,0x54,0x87,0x00,0x06,0x18,0x12,0x78,0x43,0xe2,0x7c,0x2f,0xfd,0xfe,0xaa,0x3f,0x1c,0x00,0x94,0x60,0x29,0xe1,0xf4,0x41,0xf1,0x00,0x02,0xdc,0x6a,0x87,0xe3,0x40,0x0f,0x09,0xac,0x5e,0x83,0x18,0x1f,0x20,0x7c,0x98,0xc2,0xab,0x28,0x04,0x12,0x41,0x22,0x00,0x0e,0x8b,0x66,0x1f,0x1a,0x00,0x3c,0xb0,0x08,0xd1,0x81,0x48,0x0f,0xa6,0x02,0x18,0x6e,0x00,0x1e,0x54,0x0b,0xeb,0x90,0x68,0x03,0xe2,0xcc,0x0f,0xca,0x01,0x21,0x7e,0x95,0x1f,0x00,0x13,0x11,0xf2,0x07,0xc6,0x01,0x3e,0x7e,0x95,0x00,0x1e,0x46,0xe2,0x91,0xec,0x83,0xe4,0x00,0x2b,0x51,0x10,0x94,0x42,0x02,0x11,0x11,0x07,0xc4,0x7c,0x53,0x50,0x7b,0x1f,0xcc,0x1e,0x5a,0x08,0xd5,0x01,0x8a,0x21,0xfa,0xaa,0x45,0x41,0xe7,0x31,0xfe,0x63,0xe4,0x43,0xf4,0x60,0x0a,0x10,0x5e,0x23,0x80,0xa4,0xc0,0xb2,0x01,0xf5,0xa8,0x21,0x08,0x1e,0xa3,0xf2,0x95,0x07,0x8b,0x55,0x0e,0xc0,0x42,0x05,0xe4,0x1f,0x4a,0xeb,0x18,0xc9,0x43,0x07,0x27,0x90,0x3c,0x47,0xe5,0xf6,0xd5,0x7a,0x90,0xe2,0x0f,0x18,0x21,0xd0,0x62,0x24,0xf1,0x0d,0x16,0x17,0xaf,0x1f,0x20,0x8c,0x78,0x1e,0x72,0x93,0xfa,0x41,0xad,0x87,0x02,0x36,0x88,0x3c,0x64,0x00,0xf2,0x0f,0x94,0x16,0x70,0xa0,0x30,0x79,0xc5,0x41,0xe2,0x3f,0x28,0x31,0xa4,0x50,0x24,0x0f,0x38,0x58,0x7d,0x41,0xe7,0x00,0x81,0x83,0xc6,0x20,}; +const uint8_t _A_TV_128x51_1[] = {0x01,0x00,0x29,0x02,0x80,0x40,0xa0,0x1e,0x08,0x80,0x21,0x38,0x15,0x5b,0xa8,0x3d,0x74,0x00,0xf5,0xd0,0x6a,0xb5,0x40,0x63,0x82,0x40,0x2a,0x10,0x90,0x7a,0x05,0x46,0xa1,0x01,0x03,0x14,0x22,0x01,0xb0,0x82,0x83,0xd0,0x10,0x3a,0x01,0x58,0x85,0x90,0x0c,0x62,0x83,0xa0,0x06,0x0c,0x1e,0x3b,0x08,0x39,0x61,0xb0,0x10,0xa0,0x31,0x48,0x07,0xee,0x25,0x28,0xa8,0x18,0xa8,0x01,0xf1,0x2f,0xa9,0x30,0xa3,0x40,0x62,0xc0,0x40,0x2b,0x02,0x21,0x07,0xb4,0xd0,0x1e,0x92,0x8e,0x07,0xfc,0x1e,0xd2,0x80,0x3a,0x4e,0x00,0x63,0x83,0x81,0x85,0xc6,0x07,0x80,0x87,0xcc,0x08,0xe9,0x18,0x01,0x8f,0xf0,0xb8,0x41,0x21,0x80,0x58,0x0e,0xe8,0x0f,0x23,0x61,0x83,0xca,0xa0,0x0f,0x48,0xa0,0xf1,0x01,0xe3,0xe0,0xdf,0x87,0xd2,0x11,0x24,0x2a,0x1b,0x78,0x60,0x3e,0x0b,0x3d,0x45,0x8e,0x92,0x24,0x21,0x8e,0xca,0xc1,0xa7,0xd0,0x03,0xcf,0xf1,0x47,0x01,0x89,0x60,0x88,0xa3,0xc0,0xa9,0xf4,0x41,0xe7,0x06,0xac,0x00,0xc6,0x18,0x02,0x3c,0x06,0xbc,0x3e,0x90,0x1b,0x07,0xc3,0xfe,0x5b,0x28,0x31,0x78,0xba,0x09,0xf4,0xa0,0x3e,0x44,0x00,0x41,0x22,0x80,0x6a,0x19,0xe9,0x80,0x7c,0x8a,0xb9,0x60,0x1d,0x40,0x10,0xff,0xff,0xf0,0xf0,0x7a,0x7c,0x05,0x25,0x03,0xd5,0x01,0x06,0xab,0x55,0xfa,0x84,0x84,0x26,0x30,0x0d,0x71,0xc4,0xa0,0x9d,0x40,0x38,0xea,0x80,0x09,0x0e,0xc0,0x75,0x41,0xe3,0x1c,0x80,0x5e,0xa6,0xa1,0xf2,0x00,0x1c,0x3f,0x81,0xaa,0xff,0xf8,0x4a,0x23,0xad,0xb5,0x07,0xd7,0xd5,0x0a,0xb0,0x75,0x60,0x31,0xeb,0x06,0x02,0xac,0x25,0x10,0xf2,0x5d,0x61,0xba,0x0d,0x50,0x74,0x6a,0x14,0x0c,0x1e,0xaa,0x02,0x1f,0x4d,0x70,0x7c,0x68,0x04,0xa1,0x97,0x68,0x20,0x35,0x58,0x18,0x7d,0x2a,0xf3,0xd9,0xf6,0x00,0xcc,0x31,0x5a,0x80,0x74,0x60,0x43,0xe4,0xd5,0x72,0xa4,0x38,0x00,0x30,0xc2,0x93,0xc2,0x1f,0x13,0xe1,0x7f,0xef,0xf5,0x58,0x6c,0x83,0x00,0x25,0x18,0x29,0x34,0x7d,0x50,0x7c,0x40,0x00,0xb7,0x01,0xa1,0x90,0x1c,0x07,0x55,0x82,0x4f,0x0c,0x76,0x30,0x3e,0x40,0xf9,0x50,0x03,0xc2,0x02,0x17,0x20,0xc8,0x24,0x40,0x01,0xd1,0x6c,0xc3,0xe3,0x40,0x6b,0x0c,0x03,0x40,0x8d,0x18,0x1c,0x80,0xfa,0x60,0x21,0x86,0xe0,0x01,0xe5,0x50,0xbe,0xb9,0x06,0x80,0x3e,0x2c,0xc0,0xfc,0xa0,0x12,0x17,0xe9,0x51,0xf0,0x0f,0xd1,0x1f,0x20,0x7c,0x60,0x13,0xe0,0x78,0xf5,0x68,0x00,0xf2,0x37,0x14,0x8f,0x64,0x1f,0x21,0xf1,0x91,0x0b,0x01,0x01,0x01,0x08,0x88,0x83,0xe2,0x3e,0x29,0xa8,0x3d,0x8f,0xe6,0x0f,0x2d,0x54,0x6a,0x81,0x20,0x0f,0xd1,0x24,0x62,0xa0,0xf3,0x98,0xff,0x31,0xf2,0x21,0xfa,0x6a,0x10,0x85,0x10,0x07,0x8d,0x26,0x05,0x90,0x0f,0x94,0x74,0xd0,0x68,0x41,0x07,0xa8,0xfc,0x80,0x09,0x0e,0xc0,0x42,0x05,0xe4,0x1f,0x4a,0xeb,0x18,0xc9,0x43,0x07,0x27,0x90,0x3c,0x47,0xe5,0xf6,0xd5,0x7a,0x90,0xe2,0x0f,0x18,0x20,0xd8,0x62,0x24,0xf1,0x0d,0x16,0x17,0xaf,0x1f,0x28,0x8c,0x78,0x1e,0x72,0x93,0xfa,0x41,0xad,0x88,0x02,0x36,0x88,0x3c,0x64,0x00,0xf2,0x0f,0x94,0x16,0x70,0x0f,0x24,0xe8,0x83,0xca,0x2a,0x0f,0x11,0xf9,0x41,0x8d,0x22,0x00,0x16,0x68,0x83,0xca,0x16,0x1f,0x50,0x79,0xc0,0x20,0x60,0xf1,0x88,0x00,}; +const uint8_t _A_TV_128x51_2[] = {0x01,0x00,0x15,0x02,0x80,0x40,0xa0,0x11,0xc8,0x80,0x21,0x38,0x10,0x0b,0x00,0x3d,0x62,0xc0,0xf5,0x90,0x40,0x30,0x00,0x63,0x82,0x40,0x25,0x50,0x80,0x7a,0x05,0x4a,0x02,0x06,0x20,0x60,0xcd,0x82,0x42,0x00,0x30,0xa9,0x0a,0xc4,0x2c,0x76,0x20,0x31,0x8a,0x0c,0x04,0x60,0xf2,0xe3,0x40,0xcb,0x0c,0x22,0x32,0x31,0x42,0xa0,0xe0,0xf7,0x2c,0x1d,0x02,0x01,0x86,0x27,0xa9,0x30,0x81,0xe6,0x64,0x1a,0x50,0x3e,0x05,0x62,0x0f,0x39,0x20,0x3f,0x00,0xe3,0x3c,0xf8,0x4f,0xf0,0x00,0xc1,0xc0,0x40,0xf0,0x10,0xf0,0x7a,0x40,0xa3,0x0a,0xa1,0xb0,0x03,0xcc,0x14,0x2b,0x04,0x82,0x4e,0x00,0x63,0x1f,0x07,0xa9,0x6c,0x41,0xe7,0x14,0x22,0x18,0x3c,0xbc,0x13,0xf0,0xfa,0x42,0x01,0xe4,0x18,0x2e,0x04,0x06,0x41,0x67,0x0f,0xa4,0x42,0x44,0x58,0x40,0xd8,0xd8,0x34,0xfa,0x00,0x79,0xfe,0x24,0xe0,0x31,0x29,0x08,0x08,0xb8,0x15,0x3e,0x08,0x3c,0xe0,0xd5,0x80,0x19,0x00,0x86,0x18,0x41,0x1d,0x78,0x7d,0x20,0x36,0x0c,0x07,0xfd,0x16,0x41,0x22,0xa8,0x74,0x13,0xe9,0x40,0xbc,0x05,0x8d,0xc8,0x61,0xf3,0x29,0x8e,0x01,0xec,0x6a,0xe3,0x80,0x07,0xcb,0xff,0xff,0x87,0x83,0xd3,0xe0,0x81,0x3d,0x40,0x10,0x6a,0xb5,0x5f,0xa8,0x48,0x42,0x63,0x00,0xd7,0x1c,0x4a,0x09,0xd4,0x03,0x8e,0xa8,0x00,0x90,0xec,0x07,0x54,0x1e,0x31,0xc8,0x05,0xe2,0x6a,0x1f,0x20,0x01,0xc3,0xf8,0x1a,0xaf,0xff,0x84,0xa2,0x30,0xcb,0x50,0x7d,0x7d,0x50,0xab,0x06,0x06,0x03,0x1e,0x50,0x8c,0x1b,0xa8,0x1f,0x5b,0xac,0x35,0x60,0x21,0xd1,0x88,0x00,0xc7,0x51,0x01,0x0f,0xa6,0xba,0x14,0x0f,0x12,0x50,0xcb,0xb0,0x10,0x1a,0x84,0x0c,0x3e,0x95,0x79,0xec,0xfb,0x00,0x66,0x18,0x2d,0x02,0x03,0xa8,0x81,0x0f,0x93,0x55,0xca,0x90,0xe0,0x00,0xc3,0x02,0x4f,0x08,0x7c,0x4f,0x85,0xff,0xbf,0xd5,0x47,0xe3,0x80,0x12,0x8c,0x05,0x3c,0x3e,0x88,0x3e,0x20,0x00,0x5b,0x8d,0x50,0xfc,0x68,0x01,0xe1,0x35,0x8b,0xd0,0x63,0x03,0xe4,0x0f,0x93,0x18,0x55,0x65,0x00,0x82,0x48,0x24,0x40,0x01,0xd1,0x6c,0xc3,0xe3,0x40,0x07,0x96,0x01,0x1a,0x30,0x29,0x01,0xf4,0xc0,0x43,0x0d,0xc0,0x03,0xca,0x81,0x7d,0x72,0x0d,0x00,0x7c,0x59,0x81,0xf9,0x40,0x24,0x2f,0xd2,0xa3,0xe0,0x02,0x62,0x3e,0x40,0xf8,0xc0,0x27,0xcf,0xd2,0xa0,0x03,0xc8,0xdc,0x52,0x3d,0x90,0x7c,0x80,0x05,0x6a,0x22,0x12,0x88,0x40,0x42,0x22,0x20,0xf8,0x8f,0x8a,0x6a,0x0f,0x63,0xf9,0x83,0xcb,0x41,0x1a,0xa0,0x31,0x44,0x3f,0x55,0x48,0xa8,0x3c,0xe6,0x3f,0xcc,0x7c,0x88,0x7e,0x8c,0x01,0x42,0x0b,0xc4,0x70,0x14,0x98,0x16,0x40,0x3e,0xb5,0x04,0x21,0x03,0xd4,0x7e,0x52,0xa0,0xf1,0x6a,0xa1,0xd8,0x08,0x40,0xbc,0x83,0xe9,0x5d,0x63,0x19,0x28,0x60,0xe4,0xf2,0x07,0x88,0xfc,0xbe,0xda,0xaf,0x52,0x1c,0x41,0xe3,0x04,0x3a,0x0c,0x44,0x9e,0x21,0xa2,0xc2,0xf5,0xe3,0xe4,0x11,0x8f,0x03,0xce,0x52,0x7f,0x48,0x35,0xb0,0xe0,0x46,0xd1,0x07,0x8c,0x80,0x1e,0x41,0xf2,0x82,0xce,0x14,0x06,0x0f,0x38,0xa8,0x3c,0x47,0xe5,0x06,0x34,0x8a,0x04,0x81,0xe7,0x0b,0x0f,0xa8,0x3c,0xe0,0x10,0x30,0x78,0xc4,0x00,}; +const uint8_t _A_TV_128x51_3[] = {0x01,0x00,0x26,0x02,0x80,0x40,0xa0,0x10,0xa8,0x80,0x21,0x38,0x15,0x5b,0xa8,0x3d,0x62,0x40,0xf5,0xd0,0x6a,0xb5,0x40,0x63,0x82,0x40,0x22,0x30,0x80,0x7a,0x05,0x46,0xa1,0x01,0x03,0x10,0x30,0x62,0x21,0x21,0x00,0x18,0x20,0x74,0x02,0xb1,0x0b,0x1c,0x84,0x0c,0x62,0x83,0xa0,0x41,0x41,0xe9,0xc1,0x07,0xa8,0x14,0x70,0x10,0xa0,0x31,0x48,0x20,0x18,0x18,0x18,0x3d,0xa0,0x11,0x50,0x31,0x50,0x01,0xee,0x4c,0x28,0xd0,0x18,0xb0,0x10,0x0a,0x09,0x3d,0x41,0xe5,0x34,0x07,0xa4,0x88,0xde,0xa0,0xf2,0x94,0x01,0xd2,0x45,0xf0,0x87,0xf0,0x02,0xe5,0x03,0xc0,0x43,0xe6,0x04,0x74,0x8a,0x40,0x3e,0x1a,0x00,0x79,0x80,0xc6,0xc0,0x77,0x41,0x71,0x67,0xc1,0xeb,0x50,0x07,0xa0,0x7c,0x4c,0x84,0x0f,0x2f,0x06,0xfc,0x3e,0x90,0x80,0x7a,0xf0,0x20,0x3e,0x0b,0x3d,0x45,0x8e,0x92,0x20,0x18,0x92,0x08,0x36,0x36,0x0d,0x39,0x18,0x80,0x03,0xf8,0x93,0x80,0xc6,0x18,0x02,0x18,0xc0,0x84,0x6a,0x7d,0x10,0x79,0xc1,0xab,0x00,0x31,0x25,0x90,0x48,0x70,0x1a,0xf0,0xfa,0x40,0x45,0x23,0xfc,0x0b,0x19,0x78,0xba,0x09,0xf4,0xa0,0x7e,0x18,0x06,0x03,0x3d,0x43,0x3d,0x30,0x0b,0xf4,0x57,0x14,0x03,0xa8,0x02,0x1f,0xff,0xfe,0x1e,0x0f,0x4f,0x82,0x04,0xf5,0x40,0x41,0xaa,0xd5,0x7e,0xa1,0x21,0x09,0x8c,0x03,0x5c,0x71,0x28,0x27,0x50,0x0e,0x3a,0xa0,0x02,0x43,0xb0,0x1d,0x50,0x78,0xc7,0x20,0x17,0xa9,0xa8,0x7c,0x80,0x06,0xe0,0x1d,0x57,0xff,0xc2,0x51,0x1d,0x6d,0xa8,0x3e,0xbe,0xa8,0x55,0x83,0xab,0x01,0x8f,0x58,0x30,0x15,0x61,0x28,0x87,0x92,0xeb,0x0d,0xd0,0x6a,0x83,0xa3,0x50,0xa0,0x60,0xf5,0x50,0x10,0xfa,0x6b,0x83,0xe3,0x40,0x25,0x0c,0xbb,0x41,0x01,0xaa,0xc0,0xc3,0xe9,0x57,0x9e,0xcf,0xb0,0x06,0x61,0x8a,0xd4,0x03,0xa3,0x02,0x1f,0x26,0xab,0x95,0x21,0xc0,0x01,0x86,0x14,0x9e,0x10,0xf8,0x9f,0x0b,0xff,0x7f,0xaa,0xc3,0x64,0x18,0x01,0x28,0xc1,0x49,0xa3,0xea,0x83,0xe2,0x00,0x05,0xb8,0x0d,0x0c,0x80,0xe0,0x3a,0xac,0x12,0x78,0x63,0xb1,0x81,0xf2,0x07,0xca,0x80,0x1e,0x10,0x10,0xb9,0x06,0x41,0x22,0x00,0x0e,0x8b,0x66,0x1f,0x1a,0x03,0x58,0x60,0x1a,0x04,0x68,0xc0,0xe4,0x07,0xd3,0x01,0x0c,0x37,0x00,0x0f,0x2a,0x85,0xf5,0xc8,0x34,0x01,0xf1,0x66,0x07,0xe5,0x00,0x90,0xbf,0x4a,0x8f,0x80,0x7e,0x88,0xf9,0x03,0xe3,0x00,0x9f,0x03,0xc7,0xab,0x40,0x07,0x91,0xb8,0xa4,0x7b,0x20,0xf9,0x0f,0x8c,0x88,0x58,0x08,0x08,0x08,0x44,0x44,0x1f,0x11,0xf1,0x4d,0x41,0xec,0x7f,0x30,0x79,0x6a,0xa3,0x54,0x09,0x00,0x7e,0x89,0x23,0x15,0x07,0x9c,0xc7,0xf9,0x8f,0x91,0x0f,0xd3,0x50,0x84,0x28,0x80,0x3c,0x69,0x30,0x2c,0x80,0x7c,0xa3,0xa6,0x83,0x42,0x08,0x3d,0x47,0xe4,0x00,0x48,0x76,0x02,0x10,0x2f,0x20,0xfa,0x57,0x58,0xc6,0x4a,0x18,0x39,0x3c,0x81,0xe2,0x3f,0x2f,0xb6,0xab,0xd4,0x87,0x10,0x78,0xc1,0x06,0xc3,0x11,0x27,0x88,0x68,0xb0,0xbd,0x78,0xf9,0x44,0x63,0xc0,0xf3,0x94,0x9f,0xd2,0x0d,0x6c,0x40,0x11,0xb4,0x41,0xe3,0x20,0x07,0x90,0x7c,0xa0,0xb3,0x80,0x79,0x27,0x44,0x1e,0x51,0x50,0x78,0x8f,0xca,0x0c,0x69,0x10,0x00,0xb3,0x44,0x1e,0x50,0xb0,0xfa,0x83,0xce,0x01,0x03,0x07,0x8c,0x40,}; +const uint8_t _A_TV_128x51_4[] = {0x01,0x00,0x26,0x02,0x80,0x40,0xa0,0x10,0xa8,0x80,0x21,0x38,0x15,0x5b,0xa8,0x3d,0x62,0x40,0xf5,0xd0,0x6a,0xb5,0x40,0x63,0x82,0x40,0x22,0x30,0x80,0x7a,0x05,0x46,0xa1,0x01,0x03,0x10,0x30,0x62,0x21,0x21,0x00,0x18,0x20,0x74,0x02,0xb1,0x0b,0x1c,0x84,0x0c,0x62,0x83,0xa0,0x41,0x41,0xe9,0xc1,0x07,0xa8,0x14,0x70,0x10,0xa0,0x31,0x48,0x20,0x18,0x18,0x18,0x3d,0xa0,0x11,0x50,0x31,0x50,0x01,0xee,0x4c,0x28,0xd0,0x18,0xb0,0x10,0x0a,0x09,0x3d,0x41,0xe5,0x34,0x07,0xa4,0x88,0xde,0xa0,0xf2,0x94,0x01,0xd2,0x45,0xf0,0x87,0xf0,0x02,0xe5,0x03,0xc0,0x43,0xe6,0x04,0x74,0x8a,0x40,0x3e,0x1a,0x00,0x79,0x80,0xc6,0xc0,0x77,0x41,0x71,0x67,0xc1,0xeb,0x50,0x07,0xa0,0x7c,0x4c,0x84,0x0f,0x2f,0x06,0xfc,0x3e,0x90,0x80,0x7a,0xf0,0x20,0x3e,0x0b,0x3d,0x45,0x8e,0x92,0x20,0x18,0x92,0x08,0x36,0x36,0x0d,0x39,0x18,0x80,0x03,0xf8,0x93,0x80,0xc6,0x18,0x02,0x18,0xc0,0x84,0x6a,0x7d,0x10,0x79,0xc1,0xab,0x00,0x31,0x25,0x90,0x48,0x70,0x1a,0xf0,0xfa,0x40,0x45,0x23,0xfc,0x0b,0x19,0x78,0xba,0x09,0xf4,0xa0,0x7e,0x18,0x06,0x03,0x3d,0x43,0x3d,0x30,0x0b,0xf4,0x57,0x14,0x03,0xa8,0x02,0x1f,0xff,0xfe,0x1e,0x0f,0x4f,0x82,0x04,0xf5,0x40,0x41,0xaa,0xd5,0x7e,0xa1,0x21,0x09,0x8c,0x03,0x5c,0x71,0x28,0x27,0x50,0x0e,0x3a,0xa0,0x02,0x43,0xb0,0x1d,0x50,0x78,0xc7,0x20,0x17,0xa9,0xa8,0x7c,0x80,0x06,0xe0,0x1d,0x57,0xff,0xc2,0x51,0x1d,0x6d,0xa8,0x3e,0xbe,0xa8,0x55,0x83,0xab,0x01,0x8f,0x58,0x30,0x15,0x61,0x28,0x87,0x92,0xeb,0x0d,0xd0,0x6a,0x83,0xa3,0x50,0xa0,0x60,0xf5,0x50,0x10,0xfa,0x6b,0x83,0xe3,0x40,0x25,0x0c,0xbb,0x41,0x01,0xaa,0xc0,0xc3,0xe9,0x57,0x9e,0xcf,0xb0,0x06,0x61,0x8a,0xd4,0x03,0xa3,0x02,0x1f,0x26,0xab,0x95,0x21,0xc0,0x01,0x86,0x14,0x9e,0x10,0xf8,0x9f,0x0b,0xff,0x7f,0xaa,0xc3,0x64,0x18,0x01,0x28,0xc1,0x49,0xa3,0xea,0x83,0xe2,0x00,0x05,0xb8,0x0d,0x0c,0x80,0xe0,0x3a,0xac,0x12,0x78,0x63,0xb1,0x81,0xf2,0x07,0xca,0x80,0x1e,0x10,0x10,0xb9,0x06,0x41,0x22,0x00,0x0e,0x8b,0x66,0x1f,0x1a,0x03,0x58,0x60,0x1a,0x04,0x68,0xc0,0xe4,0x07,0xd3,0x01,0x0c,0x37,0x00,0x0f,0x2a,0x85,0xf5,0xc8,0x34,0x01,0xf1,0x66,0x07,0xe5,0x00,0x90,0xbf,0x4a,0x8f,0x80,0x7e,0x88,0xf9,0x03,0xe3,0x00,0x9f,0x03,0xc7,0xab,0x40,0x07,0x91,0xb8,0xa4,0x7b,0x20,0xf9,0x0f,0x8c,0x88,0x58,0x08,0x08,0x08,0x44,0x44,0x1f,0x11,0xf1,0x4d,0x41,0xec,0x7f,0x30,0x79,0x6a,0xa3,0x54,0x09,0x00,0x7e,0x89,0x23,0x15,0x07,0x9c,0xc7,0xf9,0x8f,0x91,0x0f,0xd3,0x50,0x84,0x28,0x80,0x3c,0x69,0x30,0x2c,0x80,0x7c,0xa3,0xa6,0x83,0x42,0x08,0x3d,0x47,0xe4,0x00,0x48,0x76,0x02,0x10,0x2f,0x20,0xfa,0x57,0x58,0xc6,0x4a,0x18,0x39,0x3c,0x81,0xe2,0x3f,0x2f,0xb6,0xab,0xd4,0x87,0x10,0x78,0xc1,0x06,0xc3,0x11,0x27,0x88,0x68,0xb0,0xbd,0x78,0xf9,0x44,0x63,0xc0,0xf3,0x94,0x9f,0xd2,0x0d,0x6c,0x40,0x11,0xb4,0x41,0xe3,0x20,0x07,0x90,0x7c,0xa0,0xb3,0x80,0x79,0x27,0x44,0x1e,0x51,0x50,0x78,0x8f,0xca,0x0c,0x69,0x10,0x00,0xb3,0x44,0x1e,0x50,0xb0,0xfa,0x83,0xce,0x01,0x03,0x07,0x8c,0x40,}; +const uint8_t *_A_TV_128x51[] = {_A_TV_128x51_0,_A_TV_128x51_1,_A_TV_128x51_2,_A_TV_128x51_3,_A_TV_128x51_4}; + +const uint8_t _A_WavesActive_128x51_0[] = {0x01,0x00,0xef,0x01,0x00,0x14,0x7c,0x04,0x3f,0xe9,0xf8,0x3e,0xa0,0x60,0x21,0xf3,0xc3,0xc1,0xd3,0x80,0x0d,0x97,0x02,0x0e,0x0f,0x9f,0xe5,0xfc,0x06,0x3f,0x01,0x99,0x00,0x1f,0xff,0xe3,0x01,0x8c,0xf0,0x7e,0xf1,0xc1,0x70,0xf8,0xf0,0xe0,0x61,0x8f,0x4c,0xc1,0xed,0x22,0xff,0x7f,0xc0,0x09,0x73,0x07,0xb5,0x06,0x02,0x07,0x5a,0x19,0x5c,0xbf,0xe0,0xb2,0x07,0xd7,0xc3,0xfe,0x74,0x20,0x7b,0xf0,0xc1,0x63,0x7c,0x80,0x4f,0x87,0xe4,0x0f,0x6b,0x1d,0xe2,0x00,0x11,0x1f,0x81,0x7c,0xa2,0x32,0x4c,0x00,0x38,0xa2,0x97,0x3e,0x06,0x05,0x4c,0x3c,0x05,0x49,0x44,0x62,0x01,0xe3,0x8a,0x7c,0xe0,0x3c,0x71,0x49,0x29,0x4a,0x23,0x14,0xc1,0xc3,0x39,0xd1,0x88,0xbf,0xfe,0x07,0xfc,0x46,0xa0,0x3c,0x76,0x98,0x48,0x14,0xa7,0x4b,0x14,0xfd,0xc1,0xc8,0x02,0x00,0x19,0xc1,0xd0,0x62,0x39,0x4c,0x3c,0x10,0x1e,0x5f,0x58,0x7d,0x80,0x1e,0x5e,0x08,0xff,0xc0,0x1e,0x38,0x08,0x40,0x3c,0x60,0x9e,0xa8,0xff,0x00,0x1e,0x5c,0x0f,0x57,0xff,0xe3,0x15,0xc1,0xc1,0x87,0xe5,0xd4,0x9f,0xe0,0x09,0xe5,0x80,0xaa,0xff,0x4f,0xe7,0x08,0x01,0x0e,0xa1,0xe8,0x30,0x20,0x49,0x6a,0xf5,0x40,0xf3,0x83,0x00,0x86,0xbf,0xff,0x80,0x41,0x01,0x25,0x56,0xaa,0xa7,0xdb,0x57,0xfe,0x12,0x9c,0x03,0x5d,0xaa,0x77,0x2f,0xfc,0x70,0x49,0x83,0xae,0x55,0x7f,0xf7,0xfd,0x56,0xab,0xb4,0x02,0x1d,0x57,0xea,0x07,0x20,0x07,0x96,0xb3,0x54,0x63,0x1a,0xbd,0x56,0x0b,0x55,0xea,0xff,0xfe,0xf0,0x3a,0x00,0x3c,0xab,0x1d,0x50,0x18,0xee,0x03,0xe5,0x7a,0x80,0x7f,0x20,0xf8,0x0e,0x02,0xf8,0x77,0x17,0xe4,0x21,0x08,0x06,0xab,0x0f,0xbf,0x70,0x1d,0xc3,0xe1,0x8f,0xbc,0x44,0xbc,0x7f,0x8d,0x51,0x70,0x7f,0xf8,0x10,0x60,0xf8,0xa7,0xf0,0x05,0xa1,0xa5,0x45,0xb8,0x30,0x0c,0x4f,0xfc,0x18,0x30,0x01,0x60,0x83,0xd0,0x00,0x73,0x1f,0xe2,0x80,0x60,0x0e,0x21,0x07,0xc7,0x0e,0x01,0xf4,0x1c,0x11,0x2c,0x41,0xef,0x03,0x80,0xfa,0x09,0x43,0xf0,0x07,0xcc,0x1a,0x0d,0xd0,0x22,0x08,0x3c,0x5c,0x86,0x00,0x48,0x64,0x63,0x40,0x7d,0x1f,0xd0,0x3e,0x63,0x16,0x0e,0x82,0x00,0x6e,0x80,0xf1,0x12,0x08,0x00,0x7f,0x8e,0xb1,0x80,0x4c,0x30,0x1a,0xf4,0x00,0xca,0x81,0xe8,0x03,0x20,0xd0,0xf8,0x07,0x83,0x3f,0x88,0x55,0x0a,0xe4,0x75,0x38,0x05,0xc0,0x70,0x6b,0x11,0x6e,0x0c,0x00,0x48,0x30,0x02,0x38,0x88,0x8c,0x70,0x61,0xf2,0xf3,0x93,0x96,0x39,0x00,0x87,0x01,0x4b,0x50,0x1f,0x40,0x02,0xce,0x00,0xcb,0x79,0x07,0xb9,0x08,0x40,0x09,0xe1,0x07,0xbf,0x81,0x12,0xb8,0x10,0x7b,0xf0,0x0a,0x06,0x00,0x14,0xfb,0x98,0x84,0xcc,0x40,0xfb,0x49,0x90,0x03,0x67,0xc2,0x54,0x26,0x37,0xfc,0x00,0x33,0xf0,0x7c,0xff,0x10,0xa7,0xfc,0x07,0x1f,0xfc,0x7e,0x38,0x08,0x7f,0x80,0x94,0xa0,0x52,0xbf,0x0d,0x4f,0xe0,0xa3,0x6f,0xc4,0x0f,0xf8,0xd4,0x22,0x8d,0x7f,0x10,0x46,}; +const uint8_t _A_WavesActive_128x51_1[] = {0x01,0x00,0xd4,0x01,0x00,0x0e,0x02,0x1e,0x03,0x1f,0xfc,0x7c,0x1f,0x50,0x10,0x10,0xfc,0xe0,0xe0,0xf9,0xe0,0x06,0xcb,0xc1,0x03,0x07,0xcf,0xfa,0x7e,0x03,0x1f,0xc0,0xcc,0x85,0xcf,0xff,0xb8,0x81,0x07,0x3c,0x3f,0x78,0x70,0xb8,0x7e,0x34,0x30,0x30,0xe3,0xe3,0x20,0xf6,0x88,0xff,0xbf,0xe0,0x04,0x9c,0x8a,0x0c,0xb0,0x52,0x00,0x18,0x80,0x12,0x42,0x02,0x1f,0x87,0xfc,0x88,0x20,0xfb,0xbe,0x40,0x27,0xc0,0xf9,0x03,0x10,0x74,0x7e,0x03,0xf2,0x07,0xc6,0x01,0x04,0x3c,0x00,0x10,0xc3,0xa2,0x32,0x4c,0x00,0x38,0xa2,0x80,0xf1,0xe0,0x06,0x49,0x4a,0x51,0x18,0x80,0x78,0xe2,0x9e,0x19,0xff,0x80,0x0c,0x51,0xc0,0x79,0x45,0x30,0x70,0xce,0x74,0x62,0x2e,0x71,0x1b,0xf8,0x3c,0xa7,0x00,0xf2,0xda,0x61,0x20,0x52,0x9d,0x2c,0x52,0x7b,0xc0,0x9b,0x83,0xca,0xc0,0x35,0x18,0x8e,0x53,0x0f,0x04,0x07,0x92,0xbc,0x56,0x27,0xc0,0x87,0xfe,0x01,0xe3,0x80,0x84,0x03,0xc6,0x08,0xb7,0x11,0xd9,0x18,0xc7,0xeb,0xff,0xf8,0xc5,0x70,0x70,0x61,0xf9,0x41,0x20,0x17,0x02,0xb9,0xea,0xff,0xc7,0xf3,0x84,0x00,0x8c,0xde,0x70,0x0a,0xb5,0x54,0x0a,0x70,0x64,0xe1,0xc0,0x11,0x82,0x00,0x1d,0x76,0xa9,0x3e,0xd3,0xd0,0xaa,0x40,0x2b,0x95,0x57,0x7b,0x7f,0x86,0xa9,0x00,0xd6,0x6a,0x81,0x43,0x55,0xaa,0xdb,0x40,0x43,0xc7,0x16,0x8a,0xa0,0xeb,0x15,0x50,0x18,0xef,0xf5,0x58,0x2d,0x56,0xaa,0x0c,0x70,0x19,0x07,0x01,0x7c,0x3b,0x8d,0x50,0x3c,0x7c,0x01,0xf2,0xea,0xc1,0xd5,0x43,0x40,0xf0,0x24,0x86,0xe1,0xfd,0x12,0x10,0x80,0x75,0x53,0xe8,0x32,0xa8,0x43,0x03,0x3f,0x01,0x0b,0x84,0x84,0x05,0xf5,0x81,0xc3,0x0f,0xc7,0x7e,0x60,0x10,0x00,0xff,0xc7,0xd1,0x56,0x89,0xf8,0xaf,0x00,0xf6,0x74,0xa4,0x30,0x08,0x3f,0x85,0x20,0x83,0xdd,0x7a,0x31,0x80,0x20,0xfc,0x01,0xf3,0xe0,0x15,0x18,0x3c,0x70,0x0a,0xe6,0x66,0x96,0x00,0x08,0x3f,0xa0,0x7c,0xc0,0x0d,0x02,0x50,0x1b,0xa0,0x3c,0x5a,0x86,0x00,0x44,0xf8,0x94,0x06,0x54,0x0f,0x5f,0x87,0xfc,0x0a,0x47,0x01,0x98,0x44,0x2a,0x8f,0x45,0x0d,0x0c,0xf0,0xe0,0x7c,0x08,0x7a,0xf0,0x93,0xe5,0xe0,0x21,0x8a,0x70,0x8b,0x62,0x00,0x10,0xf9,0x59,0xc1,0x22,0x29,0x11,0x11,0x85,0x4a,0x01,0xa8,0x01,0x0e,0x7d,0x1c,0xfc,0x02,0xca,0xde,0x4b,0xef,0x80,0x6c,0x98,0x00,0x7c,0x20,0xf7,0x80,0x34,0xc4,0x00,0x78,0x10,0x7c,0x47,0xc0,0xa8,0x9f,0x88,0x04,0x78,0x1f,0xd3,0xe0,0x4c,0x03,0xe9,0xa8,0x40,0x07,0x51,0x90,0x3e,0x3f,0x9f,0xff,0xfd,0xfe,0xf8,0x3f,0x8c,0x03,0x3c,0xf0,0x17,0xf6,0xc9,0xcf,0xd7,0x05,0x01,0xfe,0x06,0x53,0xc0,0x02,0x16,0x88,0xf0,0x12,0xa5,0xfe,0x54,0xac,0x02,0xff,0x80,0x9f,0x81,0x07,0xf0,0x50,0x91,0x8a,0x40,0x00,}; +const uint8_t *_A_WavesActive_128x51[] = {_A_WavesActive_128x51_0,_A_WavesActive_128x51_1}; + +const uint8_t _A_Waves_128x51_0[] = {0x01,0x00,0xc8,0x01,0x00,0x17,0xc2,0x03,0x00,0xf0,0x7f,0xe0,0x60,0xf9,0x98,0x00,0x86,0xe1,0xfe,0x0f,0xd7,0xe0,0x36,0x57,0xc0,0x74,0xf0,0x3f,0xf0,0x70,0x20,0xff,0xc6,0x62,0x3e,0x89,0xfc,0x38,0x26,0x3f,0x31,0xfb,0x70,0x00,0x43,0x38,0xbf,0x42,0x09,0xe3,0x31,0x07,0xb4,0x80,0x06,0x5e,0xf0,0x31,0x4c,0x06,0x64,0x00,0x38,0x80,0x0c,0xb8,0xe3,0xb2,0x98,0x41,0x01,0xf1,0x80,0xe1,0x8a,0xc8,0x1f,0x5c,0x0c,0x00,0x3c,0xcb,0x8c,0x3f,0x2a,0x06,0x00,0x76,0x53,0x83,0xe3,0x80,0xc8,0x1f,0x60,0x03,0x07,0xff,0x02,0x0f,0xff,0x00,0x2c,0x7c,0x18,0x46,0xb2,0x58,0x0e,0xa8,0x00,0x7e,0xa0,0x80,0xcf,0xc1,0x83,0x7f,0x65,0x95,0x54,0x00,0x9f,0x58,0x0f,0xe3,0xaa,0xc6,0x10,0xa9,0x6a,0xc3,0xa7,0xa2,0xd5,0x4f,0x85,0x02,0x09,0x1f,0xf0,0x48,0x6b,0xe1,0xc3,0xa2,0xd5,0x62,0xb0,0xf1,0x48,0x82,0x87,0xaa,0x11,0x10,0xf2,0x00,0x08,0xca,0x5b,0xc0,0x28,0xfd,0x47,0x8a,0x26,0x1e,0xb2,0x94,0xae,0x00,0x81,0xdf,0x0e,0xd0,0xb8,0x5e,0xf3,0x49,0x78,0x01,0x02,0x1e,0x5a,0xa7,0xd6,0x01,0xdf,0x4c,0x98,0x24,0x4e,0xc7,0xaa,0xd6,0xea,0xaf,0x47,0x51,0x4d,0x19,0x2c,0x6a,0xb1,0xd0,0xa8,0xd7,0xea,0x15,0x59,0xe8,0xec,0x41,0xe7,0x56,0x0f,0x89,0x58,0xbe,0x01,0xf1,0x8d,0x1f,0x04,0x7e,0x50,0x0d,0x66,0xab,0xca,0x36,0x33,0xb8,0x89,0x46,0x00,0x18,0x28,0x05,0x62,0xab,0x1e,0x13,0x1f,0xc3,0x55,0x3a,0x02,0x0c,0x30,0x10,0x5b,0x8d,0x51,0xd4,0x80,0x05,0xff,0xfb,0x80,0xc6,0x30,0x07,0x2b,0x87,0x55,0xe6,0xdf,0x80,0xb8,0xc8,0x05,0x06,0xe1,0x20,0x02,0x46,0x17,0xa3,0x40,0x03,0x15,0x80,0x1c,0xc0,0xf1,0x9c,0x15,0x46,0x01,0x1f,0x07,0xd7,0x80,0x06,0x38,0x1b,0xf9,0xd0,0x41,0xf1,0x80,0x3f,0x0e,0x03,0xfe,0x02,0x14,0x21,0x80,0x0e,0x60,0x7e,0x3f,0xc4,0x04,0x1e,0xdf,0x8f,0xfd,0xc4,0xfc,0x7e,0x00,0x7b,0x86,0xc7,0xfc,0x21,0x20,0x78,0x9d,0x05,0x1c,0x9f,0x00,0xd1,0x96,0x8b,0x80,0x0d,0x10,0xc8,0x96,0x0a,0x1c,0xc2,0x28,0x18,0xa8,0x81,0xe5,0x3e,0x80,0x30,0x10,0x64,0x70,0x28,0x07,0xa0,0x1e,0x3c,0x6f,0xf9,0x85,0xa3,0x85,0x02,0xe8,0x02,0xc4,0x54,0x40,0x05,0x4f,0x89,0x40,0x75,0x03,0xa4,0x00,0x2d,0xc0,0x7a,0x34,0x0a,0x80,0x7c,0x5e,0x86,0x00,0x42,0xb1,0x4f,0xf5,0x04,0x21,0x1b,0x08,0x01,0x8b,0x65,0x00,0x0f,0x90,0x3e,0x30,0x0a,0xf2,0xd0,0x07,0xc6,0xf8,0x0f,0x78,0x04,0x3c,0x0a,0x9e,0x41,0x73,0xff,0xc0,0x02,0x21,0x28,0x06,0x10,0x1c,0xbf,0x89,0xf8,0x10,0xd1,0x45,0x04,0x06,0x9c,0x7f,0x80,0x2c,0x53,0xe1,0x7f,0x0d,0x68,0x1d,0x36,0xb9,0xc1,0xff,0x0d,0xf4,0x00,0x47,0xe0,0x84,0x20,}; +const uint8_t _A_Waves_128x51_1[] = {0x01,0x00,0xd1,0x01,0x00,0x17,0xe0,0x04,0x3f,0x0f,0xfc,0x04,0x1f,0x31,0x80,0x10,0xce,0x2f,0xe1,0xfa,0xfe,0x06,0xca,0x7c,0x0e,0x9f,0x07,0xfe,0x07,0x00,0xc0,0x7f,0xc7,0xd5,0x1f,0x83,0x84,0xc7,0xf2,0x3f,0x6f,0x00,0x08,0x63,0x93,0xf8,0x21,0x3c,0x73,0x00,0xf6,0x88,0x00,0x87,0x01,0x77,0x03,0x16,0x60,0x66,0x20,0x04,0x84,0x03,0xcb,0xc6,0x63,0x38,0x10,0x3e,0x38,0x1e,0x11,0x59,0x03,0xea,0xc1,0xc0,0x07,0x99,0x71,0x87,0xe5,0x20,0xe0,0x0e,0xca,0x38,0x7c,0x70,0x19,0x03,0xec,0x00,0x60,0xf7,0xff,0x21,0xc4,0x46,0xb8,0x3f,0xf8,0x01,0x67,0xe0,0xf6,0xbf,0xd5,0x40,0x07,0xf5,0x80,0xaa,0x44,0x18,0x21,0x32,0xdf,0x6a,0x80,0x08,0xd2,0x1e,0x07,0xaf,0xff,0x80,0xfa,0x89,0x84,0x3a,0x95,0x1a,0xac,0x3c,0x32,0x35,0xfa,0xaf,0xff,0xd5,0xff,0xd7,0x87,0x0f,0x45,0xaa,0xc5,0x13,0x4b,0x79,0xaa,0xf5,0x04,0x44,0x3c,0x9d,0x5f,0xff,0x54,0xca,0x57,0x00,0x40,0xfe,0x87,0x8a,0x26,0x1f,0x7a,0x94,0xbc,0x00,0x81,0x19,0x08,0xec,0xcb,0x83,0x00,0xef,0x9a,0x4b,0x00,0x08,0x10,0xea,0x4a,0xb5,0x57,0xa8,0x05,0xf0,0xf4,0x7a,0xbd,0x50,0xfc,0x7f,0xf5,0xfe,0xad,0x5a,0xab,0x3d,0x1d,0x88,0x3c,0xc1,0x03,0xaa,0x1b,0x0f,0xe2,0x55,0xa8,0xd5,0x46,0x8f,0x82,0x3f,0x28,0x06,0xb3,0x55,0x75,0x02,0x97,0x5c,0x2c,0x31,0xd0,0x28,0xaf,0x4e,0xb1,0x55,0x87,0x01,0x4b,0xf0,0x41,0x19,0xd0,0x14,0x61,0x80,0x92,0xdc,0x0b,0x88,0x00,0x44,0x11,0xff,0x81,0x06,0x30,0x08,0x2b,0x87,0x55,0xa2,0x9f,0x0b,0xff,0xe1,0x1a,0x32,0x00,0x41,0x6c,0x18,0x82,0x00,0x58,0xc2,0xf4,0x68,0x0e,0xa3,0x52,0x10,0x3d,0x67,0x08,0xc1,0x80,0x3b,0x86,0xc0,0x0e,0x60,0x78,0xf8,0x00,0x63,0x81,0xbf,0x9d,0x04,0x1f,0x18,0x02,0xc0,0xe0,0x0a,0x82,0x05,0x20,0x02,0xcc,0x0f,0xc7,0xf8,0x80,0x83,0xe1,0x5a,0x27,0xe2,0xf0,0x03,0xd8,0x50,0x31,0xf1,0xf0,0x88,0x44,0xba,0x65,0xf4,0x0e,0x0f,0x83,0x83,0x01,0x2d,0x17,0x00,0x1e,0xc7,0xb1,0x80,0x63,0xa0,0x62,0xa2,0x07,0x94,0x1a,0x00,0xc0,0x13,0x51,0x08,0x84,0x9c,0x30,0x28,0x07,0xa0,0x1e,0x44,0x31,0x27,0xa6,0x01,0x16,0x25,0x01,0xe8,0x02,0xc6,0x7c,0x07,0x10,0x02,0xa7,0xc4,0xa0,0x3a,0x80,0x30,0xbb,0x8c,0xe0,0xdc,0x0a,0x05,0x40,0x3e,0x2f,0x43,0x00,0x21,0x10,0xa7,0xfa,0x82,0x10,0xc7,0x01,0xee,0x5b,0x28,0x00,0x7c,0x81,0xf1,0x80,0x57,0x96,0x80,0x3e,0x37,0xc0,0x7b,0xa1,0x0c,0x00,0x5e,0x40,0x7c,0x47,0x80,0xa9,0x84,0x06,0xb7,0xe3,0xfe,0x00,0x10,0x39,0xc1,0x01,0xcb,0xff,0x1e,0x91,0x7c,0x45,0xec,0xd6,0x17,0xc0,0x98,0x90,0x0a,0x2a,0x62,0x00,0x17,0xf0,0x3a,0x60,0x02,0xff,0x40,0x2f,0xe4,0xe8,0x1b,0x28,0x08,0x40,}; +const uint8_t *_A_Waves_128x51[] = {_A_Waves_128x51_0,_A_Waves_128x51_1}; const uint8_t _I_ble_10px_0[] = {0x00,0x04,0x00,0x8C,0x00,0x15,0x01,0x56,0x02,0x8C,0x02,0x8C,0x02,0x56,0x02,0x15,0x01,0x8C,0x00,0x04,0x00,}; const uint8_t *_I_ble_10px[] = {_I_ble_10px_0}; @@ -52,6 +282,33 @@ const uint8_t *_I_unknown_10px[] = {_I_unknown_10px_0}; const uint8_t _I_BLE_Pairing_128x64_0[] = {0x01,0x00,0xb7,0x01,0x00,0x6c,0x38,0x1f,0xd0,0x10,0x76,0xe0,0x03,0xdd,0x40,0x07,0xf4,0x82,0x01,0x08,0x07,0xf4,0xc0,0x1f,0x91,0x08,0x07,0x00,0x1f,0xc0,0x0d,0x1e,0xe8,0x3f,0xc0,0x03,0x58,0x80,0xcf,0x11,0xd9,0xaf,0x85,0x77,0x01,0xf7,0x60,0xf8,0x45,0xff,0x05,0xed,0x9e,0x7c,0x09,0xdb,0xe0,0x2f,0x78,0x03,0x3c,0x8e,0xee,0x8a,0x43,0x81,0xfb,0x0c,0x66,0xe8,0xfc,0x59,0xba,0x6f,0x28,0x1b,0xfb,0xa3,0x80,0xfc,0xa0,0x1f,0xc6,0x86,0xbf,0xc3,0x78,0xce,0x04,0x19,0x26,0x77,0xfa,0x43,0xbe,0x12,0xa0,0x7e,0xf8,0x2a,0xa2,0x02,0xff,0x89,0x27,0x01,0xbf,0x99,0x38,0x8a,0xfc,0x0f,0x8e,0x07,0xfe,0x0e,0x94,0x2c,0x07,0xfc,0x7f,0x1f,0xf5,0x00,0xc3,0x00,0xe4,0x31,0x13,0xd1,0x00,0x0a,0xb8,0x19,0x25,0x91,0xc0,0x81,0xe2,0xb9,0x4d,0x5d,0x78,0x64,0x2e,0x84,0x80,0x61,0x07,0x02,0x3e,0x2a,0xa4,0xa2,0x00,0xf2,0x40,0x20,0xe3,0x21,0xa0,0x62,0x9f,0x60,0x05,0x02,0x3e,0x36,0x41,0x66,0x23,0x20,0x51,0xfc,0x40,0x68,0x0f,0x15,0x90,0x60,0x20,0x1b,0x09,0x89,0x70,0x46,0x42,0x07,0x14,0x99,0x41,0xe8,0x1f,0x18,0x0c,0x07,0xc1,0x19,0xff,0xc3,0xce,0x6b,0x54,0x8f,0xe0,0x3f,0x90,0x78,0x17,0x02,0x1a,0x70,0x39,0x01,0xa0,0xb1,0x53,0xb5,0x88,0xc7,0xe0,0x98,0x08,0x3a,0xd5,0xe8,0x97,0xd0,0x78,0xcf,0xe1,0x07,0xf1,0x0d,0x08,0x00,0x74,0x10,0x80,0x18,0xe8,0x97,0xc3,0xf2,0xff,0xc4,0x03,0xe3,0x04,0x8c,0x19,0xcc,0x00,0x35,0x0c,0x3c,0x03,0xf9,0x3f,0xb0,0x8f,0xc6,0x31,0x0e,0x0f,0x90,0x90,0xb5,0x45,0xc1,0xf8,0x4f,0xf0,0xde,0x18,0xcc,0x82,0x08,0x1f,0x22,0x20,0xd0,0x3a,0xab,0xd1,0xe0,0x5f,0xa1,0x1b,0x19,0x8d,0x02,0x04,0x9a,0x1d,0x04,0x28,0x26,0x36,0xa8,0x05,0xf0,0xe0,0x3f,0x04,0xf8,0xd0,0x30,0x55,0xfa,0xad,0x54,0x3e,0x35,0x09,0xab,0xac,0xbf,0x2b,0xf2,0x0a,0x0e,0xfb,0x55,0xaa,0x0f,0x94,0x68,0x04,0x30,0x6f,0xd3,0x7c,0xb0,0x15,0x0f,0xfd,0x7f,0xeb,0x05,0x4f,0x0b,0x60,0xa3,0x1f,0x28,0x0b,0xfc,0xbc,0x30,0x1f,0xf7,0xfe,0x54,0x2c,0x18,0x30,0x3c,0x6f,0x00,0xf2,0x1c,0x8c,0xf8,0x10,0x3c,0x00,0xf8,0xd5,0x5c,0x05,0xb8,0xb0,0xaa,0xdb,0x01,0x2b,0x31,0x0a,0xdc,0xa7,0x00,0xe6,0x00,0x0c,0x56,0x00,0x7e,0x10,0x00,0xcc,0x01,0xf0,0x1f,0x1b,0x40,0x2e,0x00,0x07,0x16,0x10,0x90,0x02,0xe5,0x90,0x06,0x29,0x00,0x2a,0xa9,0x00,0x2f,0x10,0x02,0xa5,0x10,0x02,0xf1,0x00,0x2a,0xa0,0x0d,0xc0,0x00,0xec,0x01,0xfd,0x60,0x17,0x6a,0xc0,0x60,0x40,0xfd,0xc0,0x30,0x04,0x01,0xb0,0xb0,0x7f,0x45,0x80,}; const uint8_t *_I_BLE_Pairing_128x64[] = {_I_BLE_Pairing_128x64_0}; +const uint8_t _I_EviSmile2_18x21_0[] = {0x01,0x00,0x37,0x00,0x00,0x14,0x3b,0x81,0x01,0x83,0xe0,0x20,0x7c,0xfe,0x7c,0x0f,0xff,0xff,0x01,0x1f,0xfb,0xff,0x01,0x01,0x2f,0x9f,0x3f,0x03,0xe3,0xe3,0xe0,0x78,0x7c,0x3c,0x0f,0x1f,0xc7,0x0d,0x37,0x3b,0x99,0x01,0xcf,0x79,0x20,0x33,0xcf,0x84,0x03,0xf1,0x7f,0x80,0x7c,0x27,0xf0,0x0e,0x04,0x3e,0x00,}; +const uint8_t *_I_EviSmile2_18x21[] = {_I_EviSmile2_18x21_0}; + +const uint8_t _I_EviSmile1_18x21_0[] = {0x01,0x00,0x39,0x00,0x86,0x70,0x20,0x10,0x6c,0x04,0x06,0x0f,0x80,0x81,0xf3,0xf9,0xf0,0x3f,0xff,0xfc,0x04,0x7f,0xef,0xfc,0x04,0x04,0xbf,0x7d,0xfc,0x0f,0xcf,0x9f,0x81,0xf1,0xf1,0xf0,0x3c,0x3e,0x1e,0x07,0x8f,0xe3,0x86,0x9b,0xbd,0xef,0x80,0xef,0x3e,0x90,0x0b,0xc5,0xe2,0x01,0xf0,0x9f,0xc0,0x38,0x10,0xf8,0x00,}; +const uint8_t *_I_EviSmile1_18x21[] = {_I_EviSmile1_18x21_0}; + +const uint8_t _I_UsbTree_48x22_0[] = {0x01,0x00,0x3c,0x00,0x00,0x14,0x3c,0x08,0x78,0x08,0xf8,0x10,0xff,0xe0,0x59,0xb0,0x04,0x52,0xc0,0x1d,0x48,0xc0,0x9d,0x00,0xa7,0x02,0x80,0x41,0x80,0xa5,0x0e,0x02,0xa4,0xfb,0xfe,0x00,0xa1,0x49,0x04,0x48,0x0a,0x81,0xd1,0xc0,0x40,0x45,0x26,0x05,0x30,0x01,0x41,0xbe,0x10,0x30,0x2c,0x7e,0x3f,0xe0,0x59,0x80,0x04,0x50,0x0a,0x60,}; +const uint8_t *_I_UsbTree_48x22[] = {_I_UsbTree_48x22_0}; + +const uint8_t _I_EviWaiting1_18x21_0[] = {0x01,0x00,0x34,0x00,0x86,0x70,0x20,0x10,0x6c,0x04,0x06,0x0f,0x80,0x81,0xf3,0xf9,0xf0,0x3f,0xff,0xfc,0x04,0x7f,0xef,0xfc,0x04,0x04,0xa0,0xb2,0xdb,0xeb,0xe0,0x7b,0xfd,0xfc,0x0f,0x3f,0x9f,0x81,0xf1,0xf8,0xe1,0xa9,0xfe,0x7f,0xe0,0x1f,0x8b,0xfc,0x03,0xe1,0x3f,0x80,0x70,0x21,0xf0,0x00,}; +const uint8_t *_I_EviWaiting1_18x21[] = {_I_EviWaiting1_18x21_0}; + +const uint8_t _I_EviWaiting2_18x21_0[] = {0x01,0x00,0x31,0x00,0x86,0x70,0x20,0x10,0x6c,0x04,0x06,0x0f,0x80,0x81,0xf3,0xf9,0xf0,0x3f,0xff,0xfc,0x04,0x7f,0xef,0xfc,0x04,0x04,0xa0,0xb2,0xeb,0xed,0xe0,0x7f,0x7f,0xb8,0x08,0xf1,0xf8,0xf0,0xd4,0xff,0x3f,0xf0,0x0f,0xc5,0xfe,0x01,0xf0,0x9f,0xc0,0x38,0x10,0xf8,0x00,}; +const uint8_t *_I_EviWaiting2_18x21[] = {_I_EviWaiting2_18x21_0}; + +const uint8_t _I_Percent_10x14_0[] = {0x00,0x0C,0x03,0x1E,0x03,0x33,0x03,0xB3,0x03,0xDE,0x01,0xEC,0x00,0x70,0x00,0x38,0x00,0xDC,0x00,0xEE,0x01,0x37,0x03,0x33,0x03,0xE3,0x01,0xC3,0x00,}; +const uint8_t *_I_Percent_10x14[] = {_I_Percent_10x14_0}; + +const uint8_t _I_Smile_18x18_0[] = {0x01,0x00,0x2d,0x00,0xe0,0x43,0xe0,0x1f,0x09,0xfc,0x03,0xf1,0x7f,0x80,0x7f,0x3f,0xf0,0x0f,0xf7,0xfe,0x02,0x02,0x2f,0xff,0xfe,0x07,0xcf,0xe7,0xc0,0xf0,0xf8,0x70,0x11,0x82,0x08,0x1c,0x41,0x42,0xdf,0x7d,0xe0,0x37,0xcf,0xc0,0x98,0xc5,0x84,0x32,0x20,}; +const uint8_t *_I_Smile_18x18[] = {_I_Smile_18x18_0}; + +const uint8_t _I_Error_18x18_0[] = {0x01,0x00,0x2c,0x00,0xe0,0x43,0xe0,0x1f,0x09,0xfc,0x03,0xf1,0x7f,0x80,0x7f,0x3f,0xf0,0x0e,0x77,0x3e,0x03,0x8e,0xe3,0xc0,0x63,0xfe,0x38,0x1c,0xff,0xe1,0x03,0xbf,0xfe,0x00,0x46,0x08,0x20,0x71,0x05,0x08,0x34,0x42,0x02,0x13,0x10,0xb0,0x86,0x44,}; +const uint8_t *_I_Error_18x18[] = {_I_Error_18x18_0}; + +const uint8_t _I_Clock_18x18_0[] = {0x01,0x00,0x31,0x00,0xe0,0x43,0xe0,0x1f,0x09,0xfc,0x03,0xf1,0x7f,0x80,0x47,0x3c,0x10,0x0d,0xf7,0xde,0x02,0x02,0x2d,0xff,0xde,0x07,0x7f,0xfd,0xc0,0xff,0xff,0xc0,0x11,0xdf,0xff,0x30,0x3d,0xff,0xca,0x07,0x3e,0xfa,0x85,0xc7,0xe5,0x01,0x10,0x10,0x98,0x85,0x84,0x32,0x20,}; +const uint8_t *_I_Clock_18x18[] = {_I_Clock_18x18_0}; + const uint8_t _I_ButtonRightSmall_3x5_0[] = {0x00,0x01,0x03,0x07,0x03,0x01,}; const uint8_t *_I_ButtonRightSmall_3x5[] = {_I_ButtonRightSmall_3x5_0}; @@ -223,6 +480,19 @@ const uint8_t _A_125khz_14_2[] = {0x01,0x00,0x17,0x00,0x00,0x3c,0x3a,0x01,0x71,0 const uint8_t _A_125khz_14_3[] = {0x01,0x00,0x1a,0x00,0x00,0x24,0x0e,0x01,0x04,0x87,0x42,0x2e,0x30,0x8c,0x2c,0x06,0x03,0x02,0xb1,0x40,0xb2,0x40,0x12,0xb2,0x40,0xa0,0x90,0x1f,0xc4,0x00,}; const uint8_t *_A_125khz_14[] = {_A_125khz_14_0,_A_125khz_14_1,_A_125khz_14_2,_A_125khz_14_3}; +const uint8_t _A_BadUsb_14_0[] = {0x00,0xFF,0x1F,0x01,0x10,0x01,0x10,0xF1,0x11,0xF9,0x13,0xE9,0x12,0x49,0x12,0xF9,0x13,0xF1,0x11,0x51,0x11,0x01,0x10,0xFF,0x1F,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_1[] = {0x00,0x01,0x10,0x01,0x10,0xE1,0x13,0xFD,0x10,0xF9,0x13,0x01,0x17,0xF9,0x13,0x3D,0x10,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x06,0x0C,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_2[] = {0x00,0x01,0x10,0xF1,0x11,0xF9,0x13,0x59,0x13,0xF9,0x13,0xE9,0x12,0x19,0x13,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB6,0x0D,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_3[] = {0x00,0xF1,0x11,0xF9,0x13,0x59,0x13,0xF9,0x13,0xE9,0x12,0x19,0x13,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB4,0x05,0x06,0x0C,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_4[] = {0x00,0xF9,0x13,0xE9,0x12,0x19,0x13,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB4,0x05,0x04,0x04,0xFC,0x07,0xFC,0x07,0xFE,0x0F,0xFE,0x0F,0x02,0x08,}; +const uint8_t _A_BadUsb_14_5[] = {0x00,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB4,0x05,0x04,0x04,0xFC,0x07,0xFC,0x07,0x04,0x04,0xFC,0x07,0x00,0x00,0xFE,0x0F,0xFE,0x0F,0x02,0x08,}; +const uint8_t _A_BadUsb_14_6[] = {0x00,0xF9,0x13,0xE9,0x12,0x19,0x13,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB4,0x05,0x04,0x04,0xFC,0x07,0xFC,0x07,0xFE,0x0F,0xFE,0x0F,0x02,0x08,}; +const uint8_t _A_BadUsb_14_7[] = {0x00,0xF1,0x11,0xF9,0x13,0x59,0x13,0xF9,0x13,0xE9,0x12,0x19,0x13,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB4,0x05,0x06,0x0C,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_8[] = {0x00,0x01,0x10,0xF1,0x11,0xF9,0x13,0x59,0x13,0xF9,0x13,0xE9,0x12,0x19,0x13,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x04,0x04,0xB6,0x0D,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_9[] = {0x00,0x01,0x10,0x01,0x10,0xE1,0x13,0xFD,0x10,0xF9,0x13,0x01,0x17,0xF9,0x13,0x3D,0x10,0xF1,0x11,0x01,0x10,0xFF,0x1F,0x06,0x0C,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t _A_BadUsb_14_10[] = {0x00,0xFF,0x1F,0x01,0x10,0x01,0x10,0xF1,0x11,0xF9,0x13,0xE9,0x12,0x49,0x12,0xF9,0x13,0xF1,0x11,0x51,0x11,0x01,0x10,0xFF,0x1F,0xFE,0x0F,0xFE,0x0F,}; +const uint8_t *_A_BadUsb_14[] = {_A_BadUsb_14_0,_A_BadUsb_14_1,_A_BadUsb_14_2,_A_BadUsb_14_3,_A_BadUsb_14_4,_A_BadUsb_14_5,_A_BadUsb_14_6,_A_BadUsb_14_7,_A_BadUsb_14_8,_A_BadUsb_14_9,_A_BadUsb_14_10}; + const uint8_t _A_Bluetooth_14_0[] = {0x00,0x10,0x00,0x30,0x00,0x51,0x08,0x92,0x10,0x94,0x24,0x58,0x28,0x30,0x29,0x30,0x29,0x58,0x28,0x94,0x24,0x92,0x10,0x51,0x08,0x30,0x00,0x10,0x00,}; const uint8_t _A_Bluetooth_14_1[] = {0x01,0x00,0x1a,0x00,0x88,0x40,0x26,0x10,0x0a,0x8c,0x23,0x25,0x10,0xca,0x49,0x2b,0x12,0x89,0x80,0x04,0x80,0xa2,0x09,0x10,0x68,0x84,0x44,0x2a,0x21,0x91,}; const uint8_t _A_Bluetooth_14_2[] = {0x01,0x00,0x1a,0x00,0x88,0x40,0x26,0x10,0x0a,0x8c,0x23,0x25,0x10,0xca,0x48,0x2b,0x12,0x09,0x80,0x04,0x80,0xa2,0x09,0x10,0x68,0x84,0x44,0x2a,0x21,0x91,}; @@ -440,9 +710,6 @@ const uint8_t *_I_PlaceholderL_11x13[] = {_I_PlaceholderL_11x13_0}; const uint8_t _I_Background_128x11_0[] = {0x01,0x00,0x70,0x00,0xff,0x40,0x40,0xc9,0xe0,0xff,0x80,0x06,0x1e,0x08,0x38,0x0c,0x0c,0x1e,0x93,0x00,0x19,0x46,0x01,0x07,0x7d,0x83,0x03,0xd2,0x31,0xff,0xdb,0xd5,0x66,0x20,0x83,0xc0,0xff,0x05,0x24,0x00,0x1c,0x78,0x28,0xbc,0x40,0x72,0xbf,0xcf,0x47,0xeb,0x40,0xdb,0x7a,0xbf,0xf0,0x40,0x39,0x60,0x28,0x3f,0xe0,0xa0,0xea,0x80,0x63,0x3f,0x0b,0x17,0xe4,0x3e,0x5a,0xbc,0xf9,0x99,0x70,0x1f,0x81,0x50,0xc0,0x80,0xe7,0x3e,0x1e,0x9d,0x57,0xfb,0x7f,0x23,0x15,0xb0,0x12,0x5b,0x5b,0x02,0x1d,0x8c,0xc3,0x80,0x24,0x9e,0x03,0x80,0x5e,0x40,0x00,0xa1,0x88,0x0e,0x98,0x00,0x7b,0x07,0x08,0xb2,0x44,0x41,}; const uint8_t *_I_Background_128x11[] = {_I_Background_128x11_0}; -const uint8_t _I_Background_128x8_0[] = {0x01,0x00,0x43,0x00,0xff,0x7f,0xc0,0x19,0x7f,0x80,0x87,0xb7,0x01,0x3d,0xfd,0xff,0x74,0xff,0xdf,0x7f,0x87,0x87,0xfd,0xfb,0xd3,0xe7,0xf7,0x9d,0xbf,0xff,0x35,0x41,0x09,0x8c,0x20,0x04,0x31,0xc8,0xe0,0x0c,0x62,0x18,0x08,0x10,0x10,0x70,0x99,0xde,0xfe,0xde,0xe7,0xf7,0xff,0x70,0xfc,0x3f,0x6d,0x7f,0x9e,0x6f,0xd9,0xfd,0xd9,0xf3,0x43,0xff,0x2f,0x68,0x00,0x4d,0xfe,}; -const uint8_t *_I_Background_128x8[] = {_I_Background_128x8_0}; - const uint8_t _I_USBConnected_15x8_0[] = {0x00,0xF0,0x07,0x08,0x7C,0x04,0x44,0x07,0x54,0x07,0x54,0x04,0x44,0x08,0x7C,0xF0,0x07,}; const uint8_t *_I_USBConnected_15x8[] = {_I_USBConnected_15x8_0}; @@ -484,8 +751,61 @@ const uint8_t *_I_DolphinMafia_115x62[] = {_I_DolphinMafia_115x62_0}; const Icon I_Certification2_119x30 = {.width=119,.height=30,.frame_count=1,.frame_rate=0,.frames=_I_Certification2_119x30}; const Icon I_Certification1_103x23 = {.width=103,.height=23,.frame_count=1,.frame_rate=0,.frames=_I_Certification1_103x23}; -const Icon A_WatchingTV_128x64 = {.width=128,.height=64,.frame_count=4,.frame_rate=1,.frames=_A_WatchingTV_128x64}; -const Icon A_Wink_128x64 = {.width=128,.height=64,.frame_count=9,.frame_rate=1,.frames=_A_Wink_128x64}; +const Icon A_BadBattery_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_BadBattery_128x51}; +const Icon A_BoxActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_BoxActive_128x51}; +const Icon A_Box_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_Box_128x51}; +const Icon A_CardBad_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_CardBad_128x51}; +const Icon A_CardNoDBUrl_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_CardNoDBUrl_128x51}; +const Icon A_CardNoDB_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_CardNoDB_128x51}; +const Icon A_CardOk_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_CardOk_128x51}; +const Icon A_CryActive_128x51 = {.width=128,.height=51,.frame_count=3,.frame_rate=2,.frames=_A_CryActive_128x51}; +const Icon A_Cry_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_Cry_128x51}; +const Icon A_KnifeActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_KnifeActive_128x51}; +const Icon A_Knife_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Knife_128x51}; +const Icon A_LaptopActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_LaptopActive_128x51}; +const Icon A_Laptop_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Laptop_128x51}; +const Icon A_LeavingActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_LeavingActive_128x51}; +const Icon A_Leaving_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Leaving_128x51}; +const Icon A_Level1FurippaActive_128x51 = {.width=128,.height=51,.frame_count=6,.frame_rate=2,.frames=_A_Level1FurippaActive_128x51}; +const Icon A_Level1Furippa_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_Level1Furippa_128x51}; +const Icon A_Level1ReadActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level1ReadActive_128x51}; +const Icon A_Level1Read_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level1Read_128x51}; +const Icon A_Level1ToysActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level1ToysActive_128x51}; +const Icon A_Level1Toys_128x51 = {.width=128,.height=51,.frame_count=6,.frame_rate=2,.frames=_A_Level1Toys_128x51}; +const Icon A_Level2FurippaActive_128x51 = {.width=128,.height=51,.frame_count=6,.frame_rate=2,.frames=_A_Level2FurippaActive_128x51}; +const Icon A_Level2Furippa_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_Level2Furippa_128x51}; +const Icon A_Level2HackActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level2HackActive_128x51}; +const Icon A_Level2Hack_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level2Hack_128x51}; +const Icon A_Level2SolderingActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level2SolderingActive_128x51}; +const Icon A_Level2Soldering_128x51 = {.width=128,.height=51,.frame_count=3,.frame_rate=2,.frames=_A_Level2Soldering_128x51}; +const Icon A_Level3FurippaActive_128x51 = {.width=128,.height=51,.frame_count=6,.frame_rate=2,.frames=_A_Level3FurippaActive_128x51}; +const Icon A_Level3Furippa_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_Level3Furippa_128x51}; +const Icon A_Level3HijackActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level3HijackActive_128x51}; +const Icon A_Level3Hijack_128x51 = {.width=128,.height=51,.frame_count=3,.frame_rate=2,.frames=_A_Level3Hijack_128x51}; +const Icon A_Level3LabActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Level3LabActive_128x51}; +const Icon A_Level3Lab_128x51 = {.width=128,.height=51,.frame_count=3,.frame_rate=2,.frames=_A_Level3Lab_128x51}; +const Icon I_LevelUp2_03 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_03}; +const Icon I_LevelUp2_02 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_02}; +const Icon I_LevelUp2_05 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_05}; +const Icon I_LevelUp2_04 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_04}; +const Icon I_LevelUp2_01 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_01}; +const Icon I_LevelUp2_06 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_06}; +const Icon I_LevelUp2_07 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp2_07}; +const Icon I_LevelUp3_05 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_05}; +const Icon I_LevelUp3_06 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_06}; +const Icon I_LevelUp3_02 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_02}; +const Icon I_LevelUp3_07 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_07}; +const Icon I_LevelUp3_04 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_04}; +const Icon I_LevelUp3_03 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_03}; +const Icon I_LevelUp3_01 = {.width=128,.height=51,.frame_count=1,.frame_rate=0,.frames=_I_LevelUp3_01}; +const Icon A_LevelUpPending_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_LevelUpPending_128x51}; +const Icon A_NoSdCard_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_NoSdCard_128x51}; +const Icon A_SleepActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_SleepActive_128x51}; +const Icon A_Sleep_128x51 = {.width=128,.height=51,.frame_count=4,.frame_rate=2,.frames=_A_Sleep_128x51}; +const Icon A_TVActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_TVActive_128x51}; +const Icon A_TV_128x51 = {.width=128,.height=51,.frame_count=5,.frame_rate=2,.frames=_A_TV_128x51}; +const Icon A_WavesActive_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_WavesActive_128x51}; +const Icon A_Waves_128x51 = {.width=128,.height=51,.frame_count=2,.frame_rate=2,.frames=_A_Waves_128x51}; const Icon I_ble_10px = {.width=10,.height=10,.frame_count=1,.frame_rate=0,.frames=_I_ble_10px}; const Icon I_ibutt_10px = {.width=10,.height=10,.frame_count=1,.frame_rate=0,.frames=_I_ibutt_10px}; const Icon I_125_10px = {.width=10,.height=10,.frame_count=1,.frame_rate=0,.frames=_I_125_10px}; @@ -495,6 +815,15 @@ const Icon I_ir_10px = {.width=10,.height=10,.frame_count=1,.frame_rate=0,.frame const Icon I_Nfc_10px = {.width=10,.height=10,.frame_count=1,.frame_rate=0,.frames=_I_Nfc_10px}; const Icon I_unknown_10px = {.width=10,.height=10,.frame_count=1,.frame_rate=0,.frames=_I_unknown_10px}; const Icon I_BLE_Pairing_128x64 = {.width=128,.height=64,.frame_count=1,.frame_rate=0,.frames=_I_BLE_Pairing_128x64}; +const Icon I_EviSmile2_18x21 = {.width=18,.height=21,.frame_count=1,.frame_rate=0,.frames=_I_EviSmile2_18x21}; +const Icon I_EviSmile1_18x21 = {.width=18,.height=21,.frame_count=1,.frame_rate=0,.frames=_I_EviSmile1_18x21}; +const Icon I_UsbTree_48x22 = {.width=48,.height=22,.frame_count=1,.frame_rate=0,.frames=_I_UsbTree_48x22}; +const Icon I_EviWaiting1_18x21 = {.width=18,.height=21,.frame_count=1,.frame_rate=0,.frames=_I_EviWaiting1_18x21}; +const Icon I_EviWaiting2_18x21 = {.width=18,.height=21,.frame_count=1,.frame_rate=0,.frames=_I_EviWaiting2_18x21}; +const Icon I_Percent_10x14 = {.width=10,.height=14,.frame_count=1,.frame_rate=0,.frames=_I_Percent_10x14}; +const Icon I_Smile_18x18 = {.width=18,.height=18,.frame_count=1,.frame_rate=0,.frames=_I_Smile_18x18}; +const Icon I_Error_18x18 = {.width=18,.height=18,.frame_count=1,.frame_rate=0,.frames=_I_Error_18x18}; +const Icon I_Clock_18x18 = {.width=18,.height=18,.frame_count=1,.frame_rate=0,.frames=_I_Clock_18x18}; const Icon I_ButtonRightSmall_3x5 = {.width=3,.height=5,.frame_count=1,.frame_rate=0,.frames=_I_ButtonRightSmall_3x5}; const Icon I_ButtonLeftSmall_3x5 = {.width=3,.height=5,.frame_count=1,.frame_rate=0,.frames=_I_ButtonLeftSmall_3x5}; const Icon I_ButtonCenter_7x7 = {.width=7,.height=7,.frame_count=1,.frame_rate=0,.frames=_I_ButtonCenter_7x7}; @@ -551,6 +880,7 @@ const Icon I_KeySave_24x11 = {.width=24,.height=11,.frame_count=1,.frame_rate=0, const Icon I_KeyBackspaceSelected_16x9 = {.width=16,.height=9,.frame_count=1,.frame_rate=0,.frames=_I_KeyBackspaceSelected_16x9}; const Icon I_KeyBackspace_16x9 = {.width=16,.height=9,.frame_count=1,.frame_rate=0,.frames=_I_KeyBackspace_16x9}; const Icon A_125khz_14 = {.width=14,.height=14,.frame_count=4,.frame_rate=3,.frames=_A_125khz_14}; +const Icon A_BadUsb_14 = {.width=14,.height=14,.frame_count=11,.frame_rate=3,.frames=_A_BadUsb_14}; const Icon A_Bluetooth_14 = {.width=14,.height=14,.frame_count=6,.frame_rate=3,.frames=_A_Bluetooth_14}; const Icon A_Debug_14 = {.width=14,.height=14,.frame_count=4,.frame_rate=3,.frames=_A_Debug_14}; const Icon A_FileManager_14 = {.width=14,.height=14,.frame_count=10,.frame_rate=3,.frames=_A_FileManager_14}; @@ -595,7 +925,6 @@ const Icon I_BadUsb_9x8 = {.width=9,.height=8,.frame_count=1,.frame_rate=0,.fram const Icon I_BT_Pair_9x8 = {.width=9,.height=8,.frame_count=1,.frame_rate=0,.frames=_I_BT_Pair_9x8}; const Icon I_PlaceholderL_11x13 = {.width=11,.height=13,.frame_count=1,.frame_rate=0,.frames=_I_PlaceholderL_11x13}; const Icon I_Background_128x11 = {.width=128,.height=11,.frame_count=1,.frame_rate=0,.frames=_I_Background_128x11}; -const Icon I_Background_128x8 = {.width=128,.height=8,.frame_count=1,.frame_rate=0,.frames=_I_Background_128x8}; const Icon I_USBConnected_15x8 = {.width=15,.height=8,.frame_count=1,.frame_rate=0,.frames=_I_USBConnected_15x8}; const Icon I_Quest_7x8 = {.width=7,.height=8,.frame_count=1,.frame_rate=0,.frames=_I_Quest_7x8}; const Icon I_MHz_25x11 = {.width=25,.height=11,.frame_count=1,.frame_rate=0,.frames=_I_MHz_25x11}; diff --git a/assets/compiled/assets_icons.h b/assets/compiled/assets_icons.h index 0146aee8..b3217400 100644 --- a/assets/compiled/assets_icons.h +++ b/assets/compiled/assets_icons.h @@ -3,8 +3,61 @@ extern const Icon I_Certification2_119x30; extern const Icon I_Certification1_103x23; -extern const Icon A_WatchingTV_128x64; -extern const Icon A_Wink_128x64; +extern const Icon A_BadBattery_128x51; +extern const Icon A_BoxActive_128x51; +extern const Icon A_Box_128x51; +extern const Icon A_CardBad_128x51; +extern const Icon A_CardNoDBUrl_128x51; +extern const Icon A_CardNoDB_128x51; +extern const Icon A_CardOk_128x51; +extern const Icon A_CryActive_128x51; +extern const Icon A_Cry_128x51; +extern const Icon A_KnifeActive_128x51; +extern const Icon A_Knife_128x51; +extern const Icon A_LaptopActive_128x51; +extern const Icon A_Laptop_128x51; +extern const Icon A_LeavingActive_128x51; +extern const Icon A_Leaving_128x51; +extern const Icon A_Level1FurippaActive_128x51; +extern const Icon A_Level1Furippa_128x51; +extern const Icon A_Level1ReadActive_128x51; +extern const Icon A_Level1Read_128x51; +extern const Icon A_Level1ToysActive_128x51; +extern const Icon A_Level1Toys_128x51; +extern const Icon A_Level2FurippaActive_128x51; +extern const Icon A_Level2Furippa_128x51; +extern const Icon A_Level2HackActive_128x51; +extern const Icon A_Level2Hack_128x51; +extern const Icon A_Level2SolderingActive_128x51; +extern const Icon A_Level2Soldering_128x51; +extern const Icon A_Level3FurippaActive_128x51; +extern const Icon A_Level3Furippa_128x51; +extern const Icon A_Level3HijackActive_128x51; +extern const Icon A_Level3Hijack_128x51; +extern const Icon A_Level3LabActive_128x51; +extern const Icon A_Level3Lab_128x51; +extern const Icon I_LevelUp2_03; +extern const Icon I_LevelUp2_02; +extern const Icon I_LevelUp2_05; +extern const Icon I_LevelUp2_04; +extern const Icon I_LevelUp2_01; +extern const Icon I_LevelUp2_06; +extern const Icon I_LevelUp2_07; +extern const Icon I_LevelUp3_05; +extern const Icon I_LevelUp3_06; +extern const Icon I_LevelUp3_02; +extern const Icon I_LevelUp3_07; +extern const Icon I_LevelUp3_04; +extern const Icon I_LevelUp3_03; +extern const Icon I_LevelUp3_01; +extern const Icon A_LevelUpPending_128x51; +extern const Icon A_NoSdCard_128x51; +extern const Icon A_SleepActive_128x51; +extern const Icon A_Sleep_128x51; +extern const Icon A_TVActive_128x51; +extern const Icon A_TV_128x51; +extern const Icon A_WavesActive_128x51; +extern const Icon A_Waves_128x51; extern const Icon I_ble_10px; extern const Icon I_ibutt_10px; extern const Icon I_125_10px; @@ -14,6 +67,15 @@ extern const Icon I_ir_10px; extern const Icon I_Nfc_10px; extern const Icon I_unknown_10px; extern const Icon I_BLE_Pairing_128x64; +extern const Icon I_EviSmile2_18x21; +extern const Icon I_EviSmile1_18x21; +extern const Icon I_UsbTree_48x22; +extern const Icon I_EviWaiting1_18x21; +extern const Icon I_EviWaiting2_18x21; +extern const Icon I_Percent_10x14; +extern const Icon I_Smile_18x18; +extern const Icon I_Error_18x18; +extern const Icon I_Clock_18x18; extern const Icon I_ButtonRightSmall_3x5; extern const Icon I_ButtonLeftSmall_3x5; extern const Icon I_ButtonCenter_7x7; @@ -70,6 +132,7 @@ extern const Icon I_KeySave_24x11; extern const Icon I_KeyBackspaceSelected_16x9; extern const Icon I_KeyBackspace_16x9; extern const Icon A_125khz_14; +extern const Icon A_BadUsb_14; extern const Icon A_Bluetooth_14; extern const Icon A_Debug_14; extern const Icon A_FileManager_14; @@ -114,7 +177,6 @@ extern const Icon I_BadUsb_9x8; extern const Icon I_BT_Pair_9x8; extern const Icon I_PlaceholderL_11x13; extern const Icon I_Background_128x11; -extern const Icon I_Background_128x8; extern const Icon I_USBConnected_15x8; extern const Icon I_Quest_7x8; extern const Icon I_MHz_25x11; diff --git a/assets/compiled/flipper.pb.h b/assets/compiled/flipper.pb.h index 49b5fdee..f164c8da 100644 --- a/assets/compiled/flipper.pb.h +++ b/assets/compiled/flipper.pb.h @@ -214,9 +214,9 @@ extern const pb_msgdesc_t PB_Main_msg; /* Maximum encoded size of messages (where known) */ #define PB_Empty_size 0 #define PB_StopSession_size 0 -#if defined(PB_Storage_ListRequest_size) && defined(PB_Storage_ListResponse_size) && defined(PB_Storage_ReadRequest_size) && defined(PB_Storage_ReadResponse_size) && defined(PB_Storage_WriteRequest_size) && defined(PB_Storage_DeleteRequest_size) && defined(PB_Storage_MkdirRequest_size) && defined(PB_Storage_Md5sumRequest_size) && defined(PB_App_StartRequest_size) && defined(PB_Gui_ScreenFrame_size) && defined(PB_Storage_StatRequest_size) && defined(PB_Storage_StatResponse_size) +#if defined(PB_Status_PingRequest_size) && defined(PB_Status_PingResponse_size) && defined(PB_Storage_ListRequest_size) && defined(PB_Storage_ListResponse_size) && defined(PB_Storage_ReadRequest_size) && defined(PB_Storage_ReadResponse_size) && defined(PB_Storage_WriteRequest_size) && defined(PB_Storage_DeleteRequest_size) && defined(PB_Storage_MkdirRequest_size) && defined(PB_Storage_Md5sumRequest_size) && defined(PB_App_StartRequest_size) && defined(PB_Gui_ScreenFrame_size) && defined(PB_Storage_StatRequest_size) && defined(PB_Storage_StatResponse_size) #define PB_Main_size (10 + sizeof(union PB_Main_content_size_union)) -union PB_Main_content_size_union {char f7[(6 + PB_Storage_ListRequest_size)]; char f8[(6 + PB_Storage_ListResponse_size)]; char f9[(6 + PB_Storage_ReadRequest_size)]; char f10[(6 + PB_Storage_ReadResponse_size)]; char f11[(6 + PB_Storage_WriteRequest_size)]; char f12[(6 + PB_Storage_DeleteRequest_size)]; char f13[(6 + PB_Storage_MkdirRequest_size)]; char f14[(6 + PB_Storage_Md5sumRequest_size)]; char f16[(7 + PB_App_StartRequest_size)]; char f22[(7 + PB_Gui_ScreenFrame_size)]; char f24[(7 + PB_Storage_StatRequest_size)]; char f25[(7 + PB_Storage_StatResponse_size)]; char f0[36];}; +union PB_Main_content_size_union {char f5[(6 + PB_Status_PingRequest_size)]; char f6[(6 + PB_Status_PingResponse_size)]; char f7[(6 + PB_Storage_ListRequest_size)]; char f8[(6 + PB_Storage_ListResponse_size)]; char f9[(6 + PB_Storage_ReadRequest_size)]; char f10[(6 + PB_Storage_ReadResponse_size)]; char f11[(6 + PB_Storage_WriteRequest_size)]; char f12[(6 + PB_Storage_DeleteRequest_size)]; char f13[(6 + PB_Storage_MkdirRequest_size)]; char f14[(6 + PB_Storage_Md5sumRequest_size)]; char f16[(7 + PB_App_StartRequest_size)]; char f22[(7 + PB_Gui_ScreenFrame_size)]; char f24[(7 + PB_Storage_StatRequest_size)]; char f25[(7 + PB_Storage_StatResponse_size)]; char f0[36];}; #endif #ifdef __cplusplus diff --git a/assets/compiled/input.pb.c b/assets/compiled/input.pb.c deleted file mode 100644 index 6ce50704..00000000 --- a/assets/compiled/input.pb.c +++ /dev/null @@ -1,14 +0,0 @@ -/* Automatically generated nanopb constant definitions */ -/* Generated by nanopb-0.4.5 */ - -#include "input.pb.h" -#if PB_PROTO_HEADER_VERSION != 40 -#error Regenerate this file with the current version of nanopb generator. -#endif - -PB_BIND(PB_Input_SendEventRequest, PB_Input_SendEventRequest, AUTO) - - - - - diff --git a/assets/compiled/input.pb.h b/assets/compiled/input.pb.h deleted file mode 100644 index 46f78113..00000000 --- a/assets/compiled/input.pb.h +++ /dev/null @@ -1,78 +0,0 @@ -/* Automatically generated nanopb header */ -/* Generated by nanopb-0.4.5 */ - -#ifndef PB_PB_INPUT_INPUT_PB_H_INCLUDED -#define PB_PB_INPUT_INPUT_PB_H_INCLUDED -#include - -#if PB_PROTO_HEADER_VERSION != 40 -#error Regenerate this file with the current version of nanopb generator. -#endif - -/* Enum definitions */ -typedef enum _PB_Input_Key { - PB_Input_Key_UP = 0, - PB_Input_Key_DOWN = 1, - PB_Input_Key_RIGHT = 2, - PB_Input_Key_LEFT = 3, - PB_Input_Key_OK = 4, - PB_Input_Key_BACK = 5 -} PB_Input_Key; - -typedef enum _PB_Input_Type { - PB_Input_Type_PRESS = 0, /* *< Press event, emitted after debounce */ - PB_Input_Type_RELEASE = 1, /* *< Release event, emitted after debounce */ - PB_Input_Type_SHORT = 2, /* *< Short event, emitted after InputTypeRelease done withing INPUT_LONG_PRESS interval */ - PB_Input_Type_LONG = 3, /* *< Long event, emmited after INPUT_LONG_PRESS interval, asynchronouse to InputTypeRelease */ - PB_Input_Type_REPEAT = 4 /* *< Repeat event, emmited with INPUT_REPEATE_PRESS period after InputTypeLong event */ -} PB_Input_Type; - -/* Struct definitions */ -typedef struct _PB_Input_SendEventRequest { - PB_Input_Key key; - PB_Input_Type type; -} PB_Input_SendEventRequest; - - -/* Helper constants for enums */ -#define _PB_Input_Key_MIN PB_Input_Key_UP -#define _PB_Input_Key_MAX PB_Input_Key_BACK -#define _PB_Input_Key_ARRAYSIZE ((PB_Input_Key)(PB_Input_Key_BACK+1)) - -#define _PB_Input_Type_MIN PB_Input_Type_PRESS -#define _PB_Input_Type_MAX PB_Input_Type_REPEAT -#define _PB_Input_Type_ARRAYSIZE ((PB_Input_Type)(PB_Input_Type_REPEAT+1)) - - -#ifdef __cplusplus -extern "C" { -#endif - -/* Initializer values for message structs */ -#define PB_Input_SendEventRequest_init_default {_PB_Input_Key_MIN, _PB_Input_Type_MIN} -#define PB_Input_SendEventRequest_init_zero {_PB_Input_Key_MIN, _PB_Input_Type_MIN} - -/* Field tags (for use in manual encoding/decoding) */ -#define PB_Input_SendEventRequest_key_tag 1 -#define PB_Input_SendEventRequest_type_tag 2 - -/* Struct field encoding specification for nanopb */ -#define PB_Input_SendEventRequest_FIELDLIST(X, a) \ -X(a, STATIC, SINGULAR, UENUM, key, 1) \ -X(a, STATIC, SINGULAR, UENUM, type, 2) -#define PB_Input_SendEventRequest_CALLBACK NULL -#define PB_Input_SendEventRequest_DEFAULT NULL - -extern const pb_msgdesc_t PB_Input_SendEventRequest_msg; - -/* Defines for backwards compatibility with code written before nanopb-0.4.0 */ -#define PB_Input_SendEventRequest_fields &PB_Input_SendEventRequest_msg - -/* Maximum encoded size of messages (where known) */ -#define PB_Input_SendEventRequest_size 4 - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif diff --git a/assets/compiled/screen.pb.c b/assets/compiled/screen.pb.c deleted file mode 100644 index a87a3dd6..00000000 --- a/assets/compiled/screen.pb.c +++ /dev/null @@ -1,18 +0,0 @@ -/* Automatically generated nanopb constant definitions */ -/* Generated by nanopb-0.4.5 */ - -#include "screen.pb.h" -#if PB_PROTO_HEADER_VERSION != 40 -#error Regenerate this file with the current version of nanopb generator. -#endif - -PB_BIND(PB_Screen_StartStreamRequest, PB_Screen_StartStreamRequest, AUTO) - - -PB_BIND(PB_Screen_StopStreamRequest, PB_Screen_StopStreamRequest, AUTO) - - -PB_BIND(PB_Screen_StreamFrame, PB_Screen_StreamFrame, AUTO) - - - diff --git a/assets/compiled/screen.pb.h b/assets/compiled/screen.pb.h deleted file mode 100644 index 1c409a6f..00000000 --- a/assets/compiled/screen.pb.h +++ /dev/null @@ -1,75 +0,0 @@ -/* Automatically generated nanopb header */ -/* Generated by nanopb-0.4.5 */ - -#ifndef PB_PB_SCREEN_SCREEN_PB_H_INCLUDED -#define PB_PB_SCREEN_SCREEN_PB_H_INCLUDED -#include - -#if PB_PROTO_HEADER_VERSION != 40 -#error Regenerate this file with the current version of nanopb generator. -#endif - -/* Struct definitions */ -typedef struct _PB_Screen_StartStreamRequest { - char dummy_field; -} PB_Screen_StartStreamRequest; - -typedef struct _PB_Screen_StopStreamRequest { - char dummy_field; -} PB_Screen_StopStreamRequest; - -typedef struct _PB_Screen_StreamFrame { - pb_bytes_array_t *data; -} PB_Screen_StreamFrame; - - -#ifdef __cplusplus -extern "C" { -#endif - -/* Initializer values for message structs */ -#define PB_Screen_StartStreamRequest_init_default {0} -#define PB_Screen_StopStreamRequest_init_default {0} -#define PB_Screen_StreamFrame_init_default {NULL} -#define PB_Screen_StartStreamRequest_init_zero {0} -#define PB_Screen_StopStreamRequest_init_zero {0} -#define PB_Screen_StreamFrame_init_zero {NULL} - -/* Field tags (for use in manual encoding/decoding) */ -#define PB_Screen_StreamFrame_data_tag 1 - -/* Struct field encoding specification for nanopb */ -#define PB_Screen_StartStreamRequest_FIELDLIST(X, a) \ - -#define PB_Screen_StartStreamRequest_CALLBACK NULL -#define PB_Screen_StartStreamRequest_DEFAULT NULL - -#define PB_Screen_StopStreamRequest_FIELDLIST(X, a) \ - -#define PB_Screen_StopStreamRequest_CALLBACK NULL -#define PB_Screen_StopStreamRequest_DEFAULT NULL - -#define PB_Screen_StreamFrame_FIELDLIST(X, a) \ -X(a, POINTER, SINGULAR, BYTES, data, 1) -#define PB_Screen_StreamFrame_CALLBACK NULL -#define PB_Screen_StreamFrame_DEFAULT NULL - -extern const pb_msgdesc_t PB_Screen_StartStreamRequest_msg; -extern const pb_msgdesc_t PB_Screen_StopStreamRequest_msg; -extern const pb_msgdesc_t PB_Screen_StreamFrame_msg; - -/* Defines for backwards compatibility with code written before nanopb-0.4.0 */ -#define PB_Screen_StartStreamRequest_fields &PB_Screen_StartStreamRequest_msg -#define PB_Screen_StopStreamRequest_fields &PB_Screen_StopStreamRequest_msg -#define PB_Screen_StreamFrame_fields &PB_Screen_StreamFrame_msg - -/* Maximum encoded size of messages (where known) */ -/* PB_Screen_StreamFrame_size depends on runtime parameters */ -#define PB_Screen_StartStreamRequest_size 0 -#define PB_Screen_StopStreamRequest_size 0 - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif diff --git a/assets/compiled/status.pb.h b/assets/compiled/status.pb.h index acc6902a..82cc5b6b 100644 --- a/assets/compiled/status.pb.h +++ b/assets/compiled/status.pb.h @@ -11,11 +11,11 @@ /* Struct definitions */ typedef struct _PB_Status_PingRequest { - char dummy_field; + pb_bytes_array_t *data; } PB_Status_PingRequest; typedef struct _PB_Status_PingResponse { - char dummy_field; + pb_bytes_array_t *data; } PB_Status_PingResponse; @@ -24,21 +24,23 @@ extern "C" { #endif /* Initializer values for message structs */ -#define PB_Status_PingRequest_init_default {0} -#define PB_Status_PingResponse_init_default {0} -#define PB_Status_PingRequest_init_zero {0} -#define PB_Status_PingResponse_init_zero {0} +#define PB_Status_PingRequest_init_default {NULL} +#define PB_Status_PingResponse_init_default {NULL} +#define PB_Status_PingRequest_init_zero {NULL} +#define PB_Status_PingResponse_init_zero {NULL} /* Field tags (for use in manual encoding/decoding) */ +#define PB_Status_PingRequest_data_tag 1 +#define PB_Status_PingResponse_data_tag 1 /* Struct field encoding specification for nanopb */ #define PB_Status_PingRequest_FIELDLIST(X, a) \ - +X(a, POINTER, SINGULAR, BYTES, data, 1) #define PB_Status_PingRequest_CALLBACK NULL #define PB_Status_PingRequest_DEFAULT NULL #define PB_Status_PingResponse_FIELDLIST(X, a) \ - +X(a, POINTER, SINGULAR, BYTES, data, 1) #define PB_Status_PingResponse_CALLBACK NULL #define PB_Status_PingResponse_DEFAULT NULL @@ -50,8 +52,8 @@ extern const pb_msgdesc_t PB_Status_PingResponse_msg; #define PB_Status_PingResponse_fields &PB_Status_PingResponse_msg /* Maximum encoded size of messages (where known) */ -#define PB_Status_PingRequest_size 0 -#define PB_Status_PingResponse_size 0 +/* PB_Status_PingRequest_size depends on runtime parameters */ +/* PB_Status_PingResponse_size depends on runtime parameters */ #ifdef __cplusplus } /* extern "C" */ diff --git a/assets/icons/Animations/BadBattery_128x51/frame_01.png b/assets/icons/Animations/BadBattery_128x51/frame_01.png new file mode 100644 index 00000000..80b86fe7 Binary files /dev/null and b/assets/icons/Animations/BadBattery_128x51/frame_01.png differ diff --git a/assets/icons/Animations/BadBattery_128x51/frame_02.png b/assets/icons/Animations/BadBattery_128x51/frame_02.png new file mode 100644 index 00000000..71dd8db3 Binary files /dev/null and b/assets/icons/Animations/BadBattery_128x51/frame_02.png differ diff --git a/assets/icons/Animations/BadBattery_128x51/frame_rate b/assets/icons/Animations/BadBattery_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/BadBattery_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/BoxActive_128x51/frame_01.png b/assets/icons/Animations/BoxActive_128x51/frame_01.png new file mode 100644 index 00000000..72c2ecc1 Binary files /dev/null and b/assets/icons/Animations/BoxActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/BoxActive_128x51/frame_02.png b/assets/icons/Animations/BoxActive_128x51/frame_02.png new file mode 100644 index 00000000..a5ef23e5 Binary files /dev/null and b/assets/icons/Animations/BoxActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/BoxActive_128x51/frame_rate b/assets/icons/Animations/BoxActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/BoxActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Box_128x51/frame_01.png b/assets/icons/Animations/Box_128x51/frame_01.png new file mode 100644 index 00000000..473c6bb5 Binary files /dev/null and b/assets/icons/Animations/Box_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Box_128x51/frame_02.png b/assets/icons/Animations/Box_128x51/frame_02.png new file mode 100644 index 00000000..12973640 Binary files /dev/null and b/assets/icons/Animations/Box_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Box_128x51/frame_03.png b/assets/icons/Animations/Box_128x51/frame_03.png new file mode 100644 index 00000000..c337de5e Binary files /dev/null and b/assets/icons/Animations/Box_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Box_128x51/frame_04.png b/assets/icons/Animations/Box_128x51/frame_04.png new file mode 100644 index 00000000..e3885f46 Binary files /dev/null and b/assets/icons/Animations/Box_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Box_128x51/frame_rate b/assets/icons/Animations/Box_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Box_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/CardBad_128x51/frame_01.png b/assets/icons/Animations/CardBad_128x51/frame_01.png new file mode 100644 index 00000000..05f5241c Binary files /dev/null and b/assets/icons/Animations/CardBad_128x51/frame_01.png differ diff --git a/assets/icons/Animations/CardBad_128x51/frame_02.png b/assets/icons/Animations/CardBad_128x51/frame_02.png new file mode 100644 index 00000000..bd0f2b93 Binary files /dev/null and b/assets/icons/Animations/CardBad_128x51/frame_02.png differ diff --git a/assets/icons/Animations/CardBad_128x51/frame_rate b/assets/icons/Animations/CardBad_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/CardBad_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/CardNoDBUrl_128x51/frame_rate b/assets/icons/Animations/CardNoDBUrl_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/CardNoDBUrl_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/CardNoDBUrl_128x51/url1.png b/assets/icons/Animations/CardNoDBUrl_128x51/url1.png new file mode 100644 index 00000000..276f70e5 Binary files /dev/null and b/assets/icons/Animations/CardNoDBUrl_128x51/url1.png differ diff --git a/assets/icons/Animations/CardNoDBUrl_128x51/url2.png b/assets/icons/Animations/CardNoDBUrl_128x51/url2.png new file mode 100644 index 00000000..07adf2e7 Binary files /dev/null and b/assets/icons/Animations/CardNoDBUrl_128x51/url2.png differ diff --git a/assets/icons/Animations/CardNoDBUrl_128x51/url3.png b/assets/icons/Animations/CardNoDBUrl_128x51/url3.png new file mode 100644 index 00000000..9abf98d8 Binary files /dev/null and b/assets/icons/Animations/CardNoDBUrl_128x51/url3.png differ diff --git a/assets/icons/Animations/CardNoDBUrl_128x51/url4.png b/assets/icons/Animations/CardNoDBUrl_128x51/url4.png new file mode 100644 index 00000000..7609c001 Binary files /dev/null and b/assets/icons/Animations/CardNoDBUrl_128x51/url4.png differ diff --git a/assets/icons/Animations/CardNoDB_128x51/frame_01.png b/assets/icons/Animations/CardNoDB_128x51/frame_01.png new file mode 100644 index 00000000..e82c6f2e Binary files /dev/null and b/assets/icons/Animations/CardNoDB_128x51/frame_01.png differ diff --git a/assets/icons/Animations/CardNoDB_128x51/frame_02.png b/assets/icons/Animations/CardNoDB_128x51/frame_02.png new file mode 100644 index 00000000..58dab74d Binary files /dev/null and b/assets/icons/Animations/CardNoDB_128x51/frame_02.png differ diff --git a/assets/icons/Animations/CardNoDB_128x51/frame_03.png b/assets/icons/Animations/CardNoDB_128x51/frame_03.png new file mode 100644 index 00000000..83ac2d55 Binary files /dev/null and b/assets/icons/Animations/CardNoDB_128x51/frame_03.png differ diff --git a/assets/icons/Animations/CardNoDB_128x51/frame_04.png b/assets/icons/Animations/CardNoDB_128x51/frame_04.png new file mode 100644 index 00000000..789dc882 Binary files /dev/null and b/assets/icons/Animations/CardNoDB_128x51/frame_04.png differ diff --git a/assets/icons/Animations/CardNoDB_128x51/frame_rate b/assets/icons/Animations/CardNoDB_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/CardNoDB_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/CardOk_128x51/frame_01.png b/assets/icons/Animations/CardOk_128x51/frame_01.png new file mode 100644 index 00000000..ed3aa717 Binary files /dev/null and b/assets/icons/Animations/CardOk_128x51/frame_01.png differ diff --git a/assets/icons/Animations/CardOk_128x51/frame_02.png b/assets/icons/Animations/CardOk_128x51/frame_02.png new file mode 100644 index 00000000..58add1b9 Binary files /dev/null and b/assets/icons/Animations/CardOk_128x51/frame_02.png differ diff --git a/assets/icons/Animations/CardOk_128x51/frame_03.png b/assets/icons/Animations/CardOk_128x51/frame_03.png new file mode 100644 index 00000000..a47aebec Binary files /dev/null and b/assets/icons/Animations/CardOk_128x51/frame_03.png differ diff --git a/assets/icons/Animations/CardOk_128x51/frame_04.png b/assets/icons/Animations/CardOk_128x51/frame_04.png new file mode 100644 index 00000000..614ef9c5 Binary files /dev/null and b/assets/icons/Animations/CardOk_128x51/frame_04.png differ diff --git a/assets/icons/Animations/CardOk_128x51/frame_rate b/assets/icons/Animations/CardOk_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/CardOk_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/CryActive_128x51/frame_01.png b/assets/icons/Animations/CryActive_128x51/frame_01.png new file mode 100644 index 00000000..02cf8dc8 Binary files /dev/null and b/assets/icons/Animations/CryActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/CryActive_128x51/frame_02.png b/assets/icons/Animations/CryActive_128x51/frame_02.png new file mode 100644 index 00000000..29c459e6 Binary files /dev/null and b/assets/icons/Animations/CryActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/CryActive_128x51/frame_03.png b/assets/icons/Animations/CryActive_128x51/frame_03.png new file mode 100644 index 00000000..b4e17384 Binary files /dev/null and b/assets/icons/Animations/CryActive_128x51/frame_03.png differ diff --git a/assets/icons/Animations/CryActive_128x51/frame_rate b/assets/icons/Animations/CryActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/CryActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Cry_128x51/frame_01.png b/assets/icons/Animations/Cry_128x51/frame_01.png new file mode 100644 index 00000000..49a4e317 Binary files /dev/null and b/assets/icons/Animations/Cry_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Cry_128x51/frame_02.png b/assets/icons/Animations/Cry_128x51/frame_02.png new file mode 100644 index 00000000..f508a07f Binary files /dev/null and b/assets/icons/Animations/Cry_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Cry_128x51/frame_03.png b/assets/icons/Animations/Cry_128x51/frame_03.png new file mode 100644 index 00000000..9f568313 Binary files /dev/null and b/assets/icons/Animations/Cry_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Cry_128x51/frame_04.png b/assets/icons/Animations/Cry_128x51/frame_04.png new file mode 100644 index 00000000..0525c42d Binary files /dev/null and b/assets/icons/Animations/Cry_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Cry_128x51/frame_rate b/assets/icons/Animations/Cry_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Cry_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/KnifeActive_128x51/frame_01.png b/assets/icons/Animations/KnifeActive_128x51/frame_01.png new file mode 100644 index 00000000..365aab25 Binary files /dev/null and b/assets/icons/Animations/KnifeActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/KnifeActive_128x51/frame_02.png b/assets/icons/Animations/KnifeActive_128x51/frame_02.png new file mode 100644 index 00000000..98d91e31 Binary files /dev/null and b/assets/icons/Animations/KnifeActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/KnifeActive_128x51/frame_rate b/assets/icons/Animations/KnifeActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/KnifeActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Knife_128x51/frame_01.png b/assets/icons/Animations/Knife_128x51/frame_01.png new file mode 100644 index 00000000..adf782c8 Binary files /dev/null and b/assets/icons/Animations/Knife_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Knife_128x51/frame_02.png b/assets/icons/Animations/Knife_128x51/frame_02.png new file mode 100644 index 00000000..d5b37065 Binary files /dev/null and b/assets/icons/Animations/Knife_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Knife_128x51/frame_rate b/assets/icons/Animations/Knife_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Knife_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/LaptopActive_128x51/frame_01.png b/assets/icons/Animations/LaptopActive_128x51/frame_01.png new file mode 100644 index 00000000..d4446f42 Binary files /dev/null and b/assets/icons/Animations/LaptopActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/LaptopActive_128x51/frame_02.png b/assets/icons/Animations/LaptopActive_128x51/frame_02.png new file mode 100644 index 00000000..9ef508c7 Binary files /dev/null and b/assets/icons/Animations/LaptopActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/LaptopActive_128x51/frame_rate b/assets/icons/Animations/LaptopActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/LaptopActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Laptop_128x51/frame_01.png b/assets/icons/Animations/Laptop_128x51/frame_01.png new file mode 100644 index 00000000..cbdd3b25 Binary files /dev/null and b/assets/icons/Animations/Laptop_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Laptop_128x51/frame_02.png b/assets/icons/Animations/Laptop_128x51/frame_02.png new file mode 100644 index 00000000..0fff5b1f Binary files /dev/null and b/assets/icons/Animations/Laptop_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Laptop_128x51/frame_rate b/assets/icons/Animations/Laptop_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Laptop_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/LeavingActive_128x51/frame_01.png b/assets/icons/Animations/LeavingActive_128x51/frame_01.png new file mode 100644 index 00000000..8a4ae4ef Binary files /dev/null and b/assets/icons/Animations/LeavingActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/LeavingActive_128x51/frame_02.png b/assets/icons/Animations/LeavingActive_128x51/frame_02.png new file mode 100644 index 00000000..822e0d64 Binary files /dev/null and b/assets/icons/Animations/LeavingActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/LeavingActive_128x51/frame_rate b/assets/icons/Animations/LeavingActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/LeavingActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Leaving_128x51/frame_01.png b/assets/icons/Animations/Leaving_128x51/frame_01.png new file mode 100644 index 00000000..0b798529 Binary files /dev/null and b/assets/icons/Animations/Leaving_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Leaving_128x51/frame_02.png b/assets/icons/Animations/Leaving_128x51/frame_02.png new file mode 100644 index 00000000..9c205346 Binary files /dev/null and b/assets/icons/Animations/Leaving_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Leaving_128x51/frame_rate b/assets/icons/Animations/Leaving_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Leaving_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_01.png b/assets/icons/Animations/Level1FurippaActive_128x51/frame_01.png new file mode 100644 index 00000000..f9437620 Binary files /dev/null and b/assets/icons/Animations/Level1FurippaActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_02.png b/assets/icons/Animations/Level1FurippaActive_128x51/frame_02.png new file mode 100644 index 00000000..48407235 Binary files /dev/null and b/assets/icons/Animations/Level1FurippaActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_03.png b/assets/icons/Animations/Level1FurippaActive_128x51/frame_03.png new file mode 100644 index 00000000..4749325e Binary files /dev/null and b/assets/icons/Animations/Level1FurippaActive_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_04.png b/assets/icons/Animations/Level1FurippaActive_128x51/frame_04.png new file mode 100644 index 00000000..e09f90cd Binary files /dev/null and b/assets/icons/Animations/Level1FurippaActive_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_05.png b/assets/icons/Animations/Level1FurippaActive_128x51/frame_05.png new file mode 100644 index 00000000..668db9ae Binary files /dev/null and b/assets/icons/Animations/Level1FurippaActive_128x51/frame_05.png differ diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_06.png b/assets/icons/Animations/Level1FurippaActive_128x51/frame_06.png new file mode 100644 index 00000000..987be24f Binary files /dev/null and b/assets/icons/Animations/Level1FurippaActive_128x51/frame_06.png differ diff --git a/assets/icons/Animations/Level1FurippaActive_128x51/frame_rate b/assets/icons/Animations/Level1FurippaActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level1FurippaActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level1Furippa_128x51/frame_01.png b/assets/icons/Animations/Level1Furippa_128x51/frame_01.png new file mode 100644 index 00000000..5d6fdb83 Binary files /dev/null and b/assets/icons/Animations/Level1Furippa_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level1Furippa_128x51/frame_02.png b/assets/icons/Animations/Level1Furippa_128x51/frame_02.png new file mode 100644 index 00000000..f1c069f4 Binary files /dev/null and b/assets/icons/Animations/Level1Furippa_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level1Furippa_128x51/frame_03.png b/assets/icons/Animations/Level1Furippa_128x51/frame_03.png new file mode 100644 index 00000000..f6380a9b Binary files /dev/null and b/assets/icons/Animations/Level1Furippa_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level1Furippa_128x51/frame_04.png b/assets/icons/Animations/Level1Furippa_128x51/frame_04.png new file mode 100644 index 00000000..6ab68f53 Binary files /dev/null and b/assets/icons/Animations/Level1Furippa_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level1Furippa_128x51/frame_rate b/assets/icons/Animations/Level1Furippa_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level1Furippa_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level1ReadActive_128x51/frame_01.png b/assets/icons/Animations/Level1ReadActive_128x51/frame_01.png new file mode 100644 index 00000000..7697c4d1 Binary files /dev/null and b/assets/icons/Animations/Level1ReadActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level1ReadActive_128x51/frame_02.png b/assets/icons/Animations/Level1ReadActive_128x51/frame_02.png new file mode 100644 index 00000000..4b41dcc4 Binary files /dev/null and b/assets/icons/Animations/Level1ReadActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level1ReadActive_128x51/frame_rate b/assets/icons/Animations/Level1ReadActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level1ReadActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level1Read_128x51/frame_01.png b/assets/icons/Animations/Level1Read_128x51/frame_01.png new file mode 100644 index 00000000..2310235c Binary files /dev/null and b/assets/icons/Animations/Level1Read_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level1Read_128x51/frame_02.png b/assets/icons/Animations/Level1Read_128x51/frame_02.png new file mode 100644 index 00000000..a2a6f088 Binary files /dev/null and b/assets/icons/Animations/Level1Read_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level1Read_128x51/frame_rate b/assets/icons/Animations/Level1Read_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level1Read_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level1ToysActive_128x51/frame_01.png b/assets/icons/Animations/Level1ToysActive_128x51/frame_01.png new file mode 100644 index 00000000..d7244bf3 Binary files /dev/null and b/assets/icons/Animations/Level1ToysActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level1ToysActive_128x51/frame_02.png b/assets/icons/Animations/Level1ToysActive_128x51/frame_02.png new file mode 100644 index 00000000..90b5972e Binary files /dev/null and b/assets/icons/Animations/Level1ToysActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level1ToysActive_128x51/frame_rate b/assets/icons/Animations/Level1ToysActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level1ToysActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_01.png b/assets/icons/Animations/Level1Toys_128x51/frame_01.png new file mode 100644 index 00000000..e4c7c9d5 Binary files /dev/null and b/assets/icons/Animations/Level1Toys_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_02.png b/assets/icons/Animations/Level1Toys_128x51/frame_02.png new file mode 100644 index 00000000..67af8a83 Binary files /dev/null and b/assets/icons/Animations/Level1Toys_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_03.png b/assets/icons/Animations/Level1Toys_128x51/frame_03.png new file mode 100644 index 00000000..6a1f86fa Binary files /dev/null and b/assets/icons/Animations/Level1Toys_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_04.png b/assets/icons/Animations/Level1Toys_128x51/frame_04.png new file mode 100644 index 00000000..7028c5eb Binary files /dev/null and b/assets/icons/Animations/Level1Toys_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_05.png b/assets/icons/Animations/Level1Toys_128x51/frame_05.png new file mode 100644 index 00000000..4f5f600e Binary files /dev/null and b/assets/icons/Animations/Level1Toys_128x51/frame_05.png differ diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_06.png b/assets/icons/Animations/Level1Toys_128x51/frame_06.png new file mode 100644 index 00000000..aad1851b Binary files /dev/null and b/assets/icons/Animations/Level1Toys_128x51/frame_06.png differ diff --git a/assets/icons/Animations/Level1Toys_128x51/frame_rate b/assets/icons/Animations/Level1Toys_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level1Toys_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_01.png b/assets/icons/Animations/Level2FurippaActive_128x51/frame_01.png new file mode 100644 index 00000000..685949bf Binary files /dev/null and b/assets/icons/Animations/Level2FurippaActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_02.png b/assets/icons/Animations/Level2FurippaActive_128x51/frame_02.png new file mode 100644 index 00000000..4a59707b Binary files /dev/null and b/assets/icons/Animations/Level2FurippaActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_03.png b/assets/icons/Animations/Level2FurippaActive_128x51/frame_03.png new file mode 100644 index 00000000..141e3f42 Binary files /dev/null and b/assets/icons/Animations/Level2FurippaActive_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_04.png b/assets/icons/Animations/Level2FurippaActive_128x51/frame_04.png new file mode 100644 index 00000000..65ffa2a0 Binary files /dev/null and b/assets/icons/Animations/Level2FurippaActive_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_05.png b/assets/icons/Animations/Level2FurippaActive_128x51/frame_05.png new file mode 100644 index 00000000..3aca90c1 Binary files /dev/null and b/assets/icons/Animations/Level2FurippaActive_128x51/frame_05.png differ diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_06.png b/assets/icons/Animations/Level2FurippaActive_128x51/frame_06.png new file mode 100644 index 00000000..9c59e6c8 Binary files /dev/null and b/assets/icons/Animations/Level2FurippaActive_128x51/frame_06.png differ diff --git a/assets/icons/Animations/Level2FurippaActive_128x51/frame_rate b/assets/icons/Animations/Level2FurippaActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level2FurippaActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level2Furippa_128x51/frame_01.png b/assets/icons/Animations/Level2Furippa_128x51/frame_01.png new file mode 100644 index 00000000..1edb3cc4 Binary files /dev/null and b/assets/icons/Animations/Level2Furippa_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level2Furippa_128x51/frame_02.png b/assets/icons/Animations/Level2Furippa_128x51/frame_02.png new file mode 100644 index 00000000..e49f1bf2 Binary files /dev/null and b/assets/icons/Animations/Level2Furippa_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level2Furippa_128x51/frame_03.png b/assets/icons/Animations/Level2Furippa_128x51/frame_03.png new file mode 100644 index 00000000..ef0f5ef3 Binary files /dev/null and b/assets/icons/Animations/Level2Furippa_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level2Furippa_128x51/frame_04.png b/assets/icons/Animations/Level2Furippa_128x51/frame_04.png new file mode 100644 index 00000000..40dda8fa Binary files /dev/null and b/assets/icons/Animations/Level2Furippa_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level2Furippa_128x51/frame_rate b/assets/icons/Animations/Level2Furippa_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level2Furippa_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level2HackActive_128x51/frame_01.png b/assets/icons/Animations/Level2HackActive_128x51/frame_01.png new file mode 100644 index 00000000..489cd459 Binary files /dev/null and b/assets/icons/Animations/Level2HackActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level2HackActive_128x51/frame_02.png b/assets/icons/Animations/Level2HackActive_128x51/frame_02.png new file mode 100644 index 00000000..8af7905f Binary files /dev/null and b/assets/icons/Animations/Level2HackActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level2HackActive_128x51/frame_rate b/assets/icons/Animations/Level2HackActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level2HackActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level2Hack_128x51/frame_01.png b/assets/icons/Animations/Level2Hack_128x51/frame_01.png new file mode 100644 index 00000000..b1f1c7c2 Binary files /dev/null and b/assets/icons/Animations/Level2Hack_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level2Hack_128x51/frame_02.png b/assets/icons/Animations/Level2Hack_128x51/frame_02.png new file mode 100644 index 00000000..dce9c83d Binary files /dev/null and b/assets/icons/Animations/Level2Hack_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level2Hack_128x51/frame_rate b/assets/icons/Animations/Level2Hack_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level2Hack_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level2SolderingActive_128x51/frame_01.png b/assets/icons/Animations/Level2SolderingActive_128x51/frame_01.png new file mode 100644 index 00000000..8aa298e8 Binary files /dev/null and b/assets/icons/Animations/Level2SolderingActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level2SolderingActive_128x51/frame_02.png b/assets/icons/Animations/Level2SolderingActive_128x51/frame_02.png new file mode 100644 index 00000000..fe2dda05 Binary files /dev/null and b/assets/icons/Animations/Level2SolderingActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level2SolderingActive_128x51/frame_rate b/assets/icons/Animations/Level2SolderingActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level2SolderingActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level2Soldering_128x51/frame_01.png b/assets/icons/Animations/Level2Soldering_128x51/frame_01.png new file mode 100644 index 00000000..2b721242 Binary files /dev/null and b/assets/icons/Animations/Level2Soldering_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level2Soldering_128x51/frame_02.png b/assets/icons/Animations/Level2Soldering_128x51/frame_02.png new file mode 100644 index 00000000..f8436799 Binary files /dev/null and b/assets/icons/Animations/Level2Soldering_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level2Soldering_128x51/frame_03.png b/assets/icons/Animations/Level2Soldering_128x51/frame_03.png new file mode 100644 index 00000000..29b99875 Binary files /dev/null and b/assets/icons/Animations/Level2Soldering_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level2Soldering_128x51/frame_rate b/assets/icons/Animations/Level2Soldering_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level2Soldering_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_01.png b/assets/icons/Animations/Level3FurippaActive_128x51/frame_01.png new file mode 100644 index 00000000..a97e1dfa Binary files /dev/null and b/assets/icons/Animations/Level3FurippaActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_02.png b/assets/icons/Animations/Level3FurippaActive_128x51/frame_02.png new file mode 100644 index 00000000..f4c608b4 Binary files /dev/null and b/assets/icons/Animations/Level3FurippaActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_03.png b/assets/icons/Animations/Level3FurippaActive_128x51/frame_03.png new file mode 100644 index 00000000..5575c444 Binary files /dev/null and b/assets/icons/Animations/Level3FurippaActive_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_04.png b/assets/icons/Animations/Level3FurippaActive_128x51/frame_04.png new file mode 100644 index 00000000..e5243a2c Binary files /dev/null and b/assets/icons/Animations/Level3FurippaActive_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_05.png b/assets/icons/Animations/Level3FurippaActive_128x51/frame_05.png new file mode 100644 index 00000000..9a88479b Binary files /dev/null and b/assets/icons/Animations/Level3FurippaActive_128x51/frame_05.png differ diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_06.png b/assets/icons/Animations/Level3FurippaActive_128x51/frame_06.png new file mode 100644 index 00000000..f51afd0c Binary files /dev/null and b/assets/icons/Animations/Level3FurippaActive_128x51/frame_06.png differ diff --git a/assets/icons/Animations/Level3FurippaActive_128x51/frame_rate b/assets/icons/Animations/Level3FurippaActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level3FurippaActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level3Furippa_128x51/frame_01.png b/assets/icons/Animations/Level3Furippa_128x51/frame_01.png new file mode 100644 index 00000000..6b81cd5c Binary files /dev/null and b/assets/icons/Animations/Level3Furippa_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level3Furippa_128x51/frame_02.png b/assets/icons/Animations/Level3Furippa_128x51/frame_02.png new file mode 100644 index 00000000..0f3073ef Binary files /dev/null and b/assets/icons/Animations/Level3Furippa_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level3Furippa_128x51/frame_03.png b/assets/icons/Animations/Level3Furippa_128x51/frame_03.png new file mode 100644 index 00000000..8fe1821a Binary files /dev/null and b/assets/icons/Animations/Level3Furippa_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level3Furippa_128x51/frame_04.png b/assets/icons/Animations/Level3Furippa_128x51/frame_04.png new file mode 100644 index 00000000..3d81542b Binary files /dev/null and b/assets/icons/Animations/Level3Furippa_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Level3Furippa_128x51/frame_rate b/assets/icons/Animations/Level3Furippa_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level3Furippa_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level3HijackActive_128x51/frame_01.png b/assets/icons/Animations/Level3HijackActive_128x51/frame_01.png new file mode 100644 index 00000000..78c18712 Binary files /dev/null and b/assets/icons/Animations/Level3HijackActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level3HijackActive_128x51/frame_02.png b/assets/icons/Animations/Level3HijackActive_128x51/frame_02.png new file mode 100644 index 00000000..5d0add9f Binary files /dev/null and b/assets/icons/Animations/Level3HijackActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level3HijackActive_128x51/frame_rate b/assets/icons/Animations/Level3HijackActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level3HijackActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level3Hijack_128x51/frame_01.png b/assets/icons/Animations/Level3Hijack_128x51/frame_01.png new file mode 100644 index 00000000..7da12c36 Binary files /dev/null and b/assets/icons/Animations/Level3Hijack_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level3Hijack_128x51/frame_02.png b/assets/icons/Animations/Level3Hijack_128x51/frame_02.png new file mode 100644 index 00000000..c5670b45 Binary files /dev/null and b/assets/icons/Animations/Level3Hijack_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level3Hijack_128x51/frame_03.png b/assets/icons/Animations/Level3Hijack_128x51/frame_03.png new file mode 100644 index 00000000..d3ca67fa Binary files /dev/null and b/assets/icons/Animations/Level3Hijack_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level3Hijack_128x51/frame_rate b/assets/icons/Animations/Level3Hijack_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level3Hijack_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level3LabActive_128x51/frame_01.png b/assets/icons/Animations/Level3LabActive_128x51/frame_01.png new file mode 100644 index 00000000..7c63617f Binary files /dev/null and b/assets/icons/Animations/Level3LabActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level3LabActive_128x51/frame_02.png b/assets/icons/Animations/Level3LabActive_128x51/frame_02.png new file mode 100644 index 00000000..30928384 Binary files /dev/null and b/assets/icons/Animations/Level3LabActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level3LabActive_128x51/frame_rate b/assets/icons/Animations/Level3LabActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level3LabActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Level3Lab_128x51/frame_01.png b/assets/icons/Animations/Level3Lab_128x51/frame_01.png new file mode 100644 index 00000000..f47a1bc8 Binary files /dev/null and b/assets/icons/Animations/Level3Lab_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Level3Lab_128x51/frame_02.png b/assets/icons/Animations/Level3Lab_128x51/frame_02.png new file mode 100644 index 00000000..d78765db Binary files /dev/null and b/assets/icons/Animations/Level3Lab_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Level3Lab_128x51/frame_03.png b/assets/icons/Animations/Level3Lab_128x51/frame_03.png new file mode 100644 index 00000000..92ed1229 Binary files /dev/null and b/assets/icons/Animations/Level3Lab_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Level3Lab_128x51/frame_rate b/assets/icons/Animations/Level3Lab_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Level3Lab_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_01.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_01.png new file mode 100644 index 00000000..df96cd96 Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_01.png differ diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_02.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_02.png new file mode 100644 index 00000000..a0f6d770 Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_02.png differ diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_03.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_03.png new file mode 100644 index 00000000..e4bd4e6d Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_03.png differ diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_04.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_04.png new file mode 100644 index 00000000..0ba08cd2 Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_04.png differ diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_05.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_05.png new file mode 100644 index 00000000..72b57d62 Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_05.png differ diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_06.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_06.png new file mode 100644 index 00000000..515c34e0 Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_06.png differ diff --git a/assets/icons/Animations/LevelUp2_128x51/LevelUp2_07.png b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_07.png new file mode 100644 index 00000000..0c087b72 Binary files /dev/null and b/assets/icons/Animations/LevelUp2_128x51/LevelUp2_07.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_01.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_01.png new file mode 100644 index 00000000..c9eb9f34 Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_01.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_02.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_02.png new file mode 100644 index 00000000..b01c8f48 Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_02.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_03.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_03.png new file mode 100644 index 00000000..8b3569bd Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_03.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_04.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_04.png new file mode 100644 index 00000000..ac31eb1c Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_04.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_05.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_05.png new file mode 100644 index 00000000..9f3f83fc Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_05.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_06.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_06.png new file mode 100644 index 00000000..98824d95 Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_06.png differ diff --git a/assets/icons/Animations/LevelUp3_128x51/LevelUp3_07.png b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_07.png new file mode 100644 index 00000000..a0331fdb Binary files /dev/null and b/assets/icons/Animations/LevelUp3_128x51/LevelUp3_07.png differ diff --git a/assets/icons/Animations/LevelUpPending_128x51/frame_01.png b/assets/icons/Animations/LevelUpPending_128x51/frame_01.png new file mode 100644 index 00000000..73ef5719 Binary files /dev/null and b/assets/icons/Animations/LevelUpPending_128x51/frame_01.png differ diff --git a/assets/icons/Animations/LevelUpPending_128x51/frame_02.png b/assets/icons/Animations/LevelUpPending_128x51/frame_02.png new file mode 100644 index 00000000..b15309db Binary files /dev/null and b/assets/icons/Animations/LevelUpPending_128x51/frame_02.png differ diff --git a/assets/icons/Animations/LevelUpPending_128x51/frame_rate b/assets/icons/Animations/LevelUpPending_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/LevelUpPending_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/NoSdCard_128x51/frame_01.png b/assets/icons/Animations/NoSdCard_128x51/frame_01.png new file mode 100644 index 00000000..c6cbd0ac Binary files /dev/null and b/assets/icons/Animations/NoSdCard_128x51/frame_01.png differ diff --git a/assets/icons/Animations/NoSdCard_128x51/frame_02.png b/assets/icons/Animations/NoSdCard_128x51/frame_02.png new file mode 100644 index 00000000..3662d99f Binary files /dev/null and b/assets/icons/Animations/NoSdCard_128x51/frame_02.png differ diff --git a/assets/icons/Animations/NoSdCard_128x51/frame_rate b/assets/icons/Animations/NoSdCard_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/NoSdCard_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/SleepActive_128x51/frame_01.png b/assets/icons/Animations/SleepActive_128x51/frame_01.png new file mode 100644 index 00000000..5c808387 Binary files /dev/null and b/assets/icons/Animations/SleepActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/SleepActive_128x51/frame_02.png b/assets/icons/Animations/SleepActive_128x51/frame_02.png new file mode 100644 index 00000000..1b95485f Binary files /dev/null and b/assets/icons/Animations/SleepActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/SleepActive_128x51/frame_rate b/assets/icons/Animations/SleepActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/SleepActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Sleep_128x51/frame_01.png b/assets/icons/Animations/Sleep_128x51/frame_01.png new file mode 100644 index 00000000..e9539c2b Binary files /dev/null and b/assets/icons/Animations/Sleep_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Sleep_128x51/frame_02.png b/assets/icons/Animations/Sleep_128x51/frame_02.png new file mode 100644 index 00000000..273d2d1c Binary files /dev/null and b/assets/icons/Animations/Sleep_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Sleep_128x51/frame_03.png b/assets/icons/Animations/Sleep_128x51/frame_03.png new file mode 100644 index 00000000..64ac64e8 Binary files /dev/null and b/assets/icons/Animations/Sleep_128x51/frame_03.png differ diff --git a/assets/icons/Animations/Sleep_128x51/frame_04.png b/assets/icons/Animations/Sleep_128x51/frame_04.png new file mode 100644 index 00000000..6fc1114b Binary files /dev/null and b/assets/icons/Animations/Sleep_128x51/frame_04.png differ diff --git a/assets/icons/Animations/Sleep_128x51/frame_rate b/assets/icons/Animations/Sleep_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Sleep_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/TVActive_128x51/frame_01.png b/assets/icons/Animations/TVActive_128x51/frame_01.png new file mode 100644 index 00000000..462ab8cb Binary files /dev/null and b/assets/icons/Animations/TVActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/TVActive_128x51/frame_02.png b/assets/icons/Animations/TVActive_128x51/frame_02.png new file mode 100644 index 00000000..b66c9f3a Binary files /dev/null and b/assets/icons/Animations/TVActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/TVActive_128x51/frame_rate b/assets/icons/Animations/TVActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/TVActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/TV_128x51/frame_01.png b/assets/icons/Animations/TV_128x51/frame_01.png new file mode 100644 index 00000000..9014952e Binary files /dev/null and b/assets/icons/Animations/TV_128x51/frame_01.png differ diff --git a/assets/icons/Animations/TV_128x51/frame_02.png b/assets/icons/Animations/TV_128x51/frame_02.png new file mode 100644 index 00000000..6c028a7c Binary files /dev/null and b/assets/icons/Animations/TV_128x51/frame_02.png differ diff --git a/assets/icons/Animations/TV_128x51/frame_03.png b/assets/icons/Animations/TV_128x51/frame_03.png new file mode 100644 index 00000000..e4dc6d58 Binary files /dev/null and b/assets/icons/Animations/TV_128x51/frame_03.png differ diff --git a/assets/icons/Animations/TV_128x51/frame_04.png b/assets/icons/Animations/TV_128x51/frame_04.png new file mode 100644 index 00000000..0154fbb5 Binary files /dev/null and b/assets/icons/Animations/TV_128x51/frame_04.png differ diff --git a/assets/icons/Animations/TV_128x51/frame_05.png b/assets/icons/Animations/TV_128x51/frame_05.png new file mode 100644 index 00000000..0c913159 Binary files /dev/null and b/assets/icons/Animations/TV_128x51/frame_05.png differ diff --git a/assets/icons/Animations/TV_128x51/frame_rate b/assets/icons/Animations/TV_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/TV_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/WatchingTV_128x64/frame_01.png b/assets/icons/Animations/WatchingTV_128x64/frame_01.png deleted file mode 100644 index 221cfbba..00000000 Binary files a/assets/icons/Animations/WatchingTV_128x64/frame_01.png and /dev/null differ diff --git a/assets/icons/Animations/WatchingTV_128x64/frame_02.png b/assets/icons/Animations/WatchingTV_128x64/frame_02.png deleted file mode 100644 index c1ce095a..00000000 Binary files a/assets/icons/Animations/WatchingTV_128x64/frame_02.png and /dev/null differ diff --git a/assets/icons/Animations/WatchingTV_128x64/frame_03.png b/assets/icons/Animations/WatchingTV_128x64/frame_03.png deleted file mode 100644 index 672cd1e8..00000000 Binary files a/assets/icons/Animations/WatchingTV_128x64/frame_03.png and /dev/null differ diff --git a/assets/icons/Animations/WatchingTV_128x64/frame_04.png b/assets/icons/Animations/WatchingTV_128x64/frame_04.png deleted file mode 100644 index a4ea47e5..00000000 Binary files a/assets/icons/Animations/WatchingTV_128x64/frame_04.png and /dev/null differ diff --git a/assets/icons/Animations/WatchingTV_128x64/frame_rate b/assets/icons/Animations/WatchingTV_128x64/frame_rate deleted file mode 100644 index 56a6051c..00000000 --- a/assets/icons/Animations/WatchingTV_128x64/frame_rate +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/assets/icons/Animations/WavesActive_128x51/frame_01.png b/assets/icons/Animations/WavesActive_128x51/frame_01.png new file mode 100644 index 00000000..e1c7582b Binary files /dev/null and b/assets/icons/Animations/WavesActive_128x51/frame_01.png differ diff --git a/assets/icons/Animations/WavesActive_128x51/frame_02.png b/assets/icons/Animations/WavesActive_128x51/frame_02.png new file mode 100644 index 00000000..b819c2d7 Binary files /dev/null and b/assets/icons/Animations/WavesActive_128x51/frame_02.png differ diff --git a/assets/icons/Animations/WavesActive_128x51/frame_rate b/assets/icons/Animations/WavesActive_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/WavesActive_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Waves_128x51/frame_01.png b/assets/icons/Animations/Waves_128x51/frame_01.png new file mode 100644 index 00000000..d3aee3fb Binary files /dev/null and b/assets/icons/Animations/Waves_128x51/frame_01.png differ diff --git a/assets/icons/Animations/Waves_128x51/frame_02.png b/assets/icons/Animations/Waves_128x51/frame_02.png new file mode 100644 index 00000000..cdd530e2 Binary files /dev/null and b/assets/icons/Animations/Waves_128x51/frame_02.png differ diff --git a/assets/icons/Animations/Waves_128x51/frame_rate b/assets/icons/Animations/Waves_128x51/frame_rate new file mode 100644 index 00000000..0cfbf088 --- /dev/null +++ b/assets/icons/Animations/Waves_128x51/frame_rate @@ -0,0 +1 @@ +2 diff --git a/assets/icons/Animations/Wink_128x64/frame_01.png b/assets/icons/Animations/Wink_128x64/frame_01.png deleted file mode 100644 index 3eff7d9a..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_01.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_02.png b/assets/icons/Animations/Wink_128x64/frame_02.png deleted file mode 100644 index bfbfecb2..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_02.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_03.png b/assets/icons/Animations/Wink_128x64/frame_03.png deleted file mode 100644 index 6e63bff7..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_03.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_04.png b/assets/icons/Animations/Wink_128x64/frame_04.png deleted file mode 100644 index 0e3c4f23..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_04.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_05.png b/assets/icons/Animations/Wink_128x64/frame_05.png deleted file mode 100644 index 42cfee7b..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_05.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_06.png b/assets/icons/Animations/Wink_128x64/frame_06.png deleted file mode 100644 index ccf84a0a..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_06.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_07.png b/assets/icons/Animations/Wink_128x64/frame_07.png deleted file mode 100644 index 3da34c70..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_07.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_08.png b/assets/icons/Animations/Wink_128x64/frame_08.png deleted file mode 100644 index 7c4a31c0..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_08.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_09.png b/assets/icons/Animations/Wink_128x64/frame_09.png deleted file mode 100644 index bf43cbd4..00000000 Binary files a/assets/icons/Animations/Wink_128x64/frame_09.png and /dev/null differ diff --git a/assets/icons/Animations/Wink_128x64/frame_rate b/assets/icons/Animations/Wink_128x64/frame_rate deleted file mode 100644 index 56a6051c..00000000 --- a/assets/icons/Animations/Wink_128x64/frame_rate +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/assets/icons/BadUsb/Clock_18x18.png b/assets/icons/BadUsb/Clock_18x18.png new file mode 100644 index 00000000..ab06d008 Binary files /dev/null and b/assets/icons/BadUsb/Clock_18x18.png differ diff --git a/assets/icons/BadUsb/Error_18x18.png b/assets/icons/BadUsb/Error_18x18.png new file mode 100644 index 00000000..16a5a74d Binary files /dev/null and b/assets/icons/BadUsb/Error_18x18.png differ diff --git a/assets/icons/BadUsb/EviSmile1_18x21.png b/assets/icons/BadUsb/EviSmile1_18x21.png new file mode 100644 index 00000000..987af325 Binary files /dev/null and b/assets/icons/BadUsb/EviSmile1_18x21.png differ diff --git a/assets/icons/BadUsb/EviSmile2_18x21.png b/assets/icons/BadUsb/EviSmile2_18x21.png new file mode 100644 index 00000000..7e28c9f0 Binary files /dev/null and b/assets/icons/BadUsb/EviSmile2_18x21.png differ diff --git a/assets/icons/BadUsb/EviWaiting1_18x21.png b/assets/icons/BadUsb/EviWaiting1_18x21.png new file mode 100644 index 00000000..d39d2173 Binary files /dev/null and b/assets/icons/BadUsb/EviWaiting1_18x21.png differ diff --git a/assets/icons/BadUsb/EviWaiting2_18x21.png b/assets/icons/BadUsb/EviWaiting2_18x21.png new file mode 100644 index 00000000..15ca088f Binary files /dev/null and b/assets/icons/BadUsb/EviWaiting2_18x21.png differ diff --git a/assets/icons/BadUsb/Percent_10x14.png b/assets/icons/BadUsb/Percent_10x14.png new file mode 100644 index 00000000..677911fd Binary files /dev/null and b/assets/icons/BadUsb/Percent_10x14.png differ diff --git a/assets/icons/BadUsb/Smile_18x18.png b/assets/icons/BadUsb/Smile_18x18.png new file mode 100644 index 00000000..d2aae0dc Binary files /dev/null and b/assets/icons/BadUsb/Smile_18x18.png differ diff --git a/assets/icons/BadUsb/UsbTree_48x22.png b/assets/icons/BadUsb/UsbTree_48x22.png new file mode 100644 index 00000000..cc41b5b9 Binary files /dev/null and b/assets/icons/BadUsb/UsbTree_48x22.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_01.png b/assets/icons/MainMenu/BadUsb_14/frame_01.png new file mode 100644 index 00000000..162753d8 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_01.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_02.png b/assets/icons/MainMenu/BadUsb_14/frame_02.png new file mode 100644 index 00000000..50e12f8b Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_02.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_03.png b/assets/icons/MainMenu/BadUsb_14/frame_03.png new file mode 100644 index 00000000..5dafb259 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_03.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_04.png b/assets/icons/MainMenu/BadUsb_14/frame_04.png new file mode 100644 index 00000000..6ca08f84 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_04.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_05.png b/assets/icons/MainMenu/BadUsb_14/frame_05.png new file mode 100644 index 00000000..a3b06a0e Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_05.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_06.png b/assets/icons/MainMenu/BadUsb_14/frame_06.png new file mode 100644 index 00000000..7d8f4365 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_06.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_07.png b/assets/icons/MainMenu/BadUsb_14/frame_07.png new file mode 100644 index 00000000..a3b06a0e Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_07.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_08.png b/assets/icons/MainMenu/BadUsb_14/frame_08.png new file mode 100644 index 00000000..6ca08f84 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_08.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_09.png b/assets/icons/MainMenu/BadUsb_14/frame_09.png new file mode 100644 index 00000000..5dafb259 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_09.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_10.png b/assets/icons/MainMenu/BadUsb_14/frame_10.png new file mode 100644 index 00000000..50e12f8b Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_10.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_11.png b/assets/icons/MainMenu/BadUsb_14/frame_11.png new file mode 100644 index 00000000..162753d8 Binary files /dev/null and b/assets/icons/MainMenu/BadUsb_14/frame_11.png differ diff --git a/assets/icons/MainMenu/BadUsb_14/frame_rate b/assets/icons/MainMenu/BadUsb_14/frame_rate new file mode 100644 index 00000000..e440e5c8 --- /dev/null +++ b/assets/icons/MainMenu/BadUsb_14/frame_rate @@ -0,0 +1 @@ +3 \ No newline at end of file diff --git a/assets/icons/StatusBar/Background_128x8.png b/assets/icons/StatusBar/Background_128x8.png deleted file mode 100644 index c71b5a99..00000000 Binary files a/assets/icons/StatusBar/Background_128x8.png and /dev/null differ diff --git a/assets/protobuf b/assets/protobuf index 6be7def6..060aead1 160000 --- a/assets/protobuf +++ b/assets/protobuf @@ -1 +1 @@ -Subproject commit 6be7def6087c4d277386381ff2792fa622933668 +Subproject commit 060aead10b80622975b14a077420354d26e0be38 diff --git a/assets/resources/subghz/keeloq_mfcodes b/assets/resources/subghz/keeloq_mfcodes index 3733b76c..a18dd590 100644 --- a/assets/resources/subghz/keeloq_mfcodes +++ b/assets/resources/subghz/keeloq_mfcodes @@ -21,12 +21,18 @@ D8CD53AB5A94898EB53D4FF46546ADBAA24691181A396052A58AAC657D6817AB 43200E08C21747CABC59538888A259238E782545732A1A6EEE00A6929EC9DD97A8BA9812372374046AC66652CC561D60 C38CBE29F22D0E83E58A52E94AA2485DA8E702FBDB89D27249473CB8A19AEF61 9F0EB580F7474985E8460E1682451E213778B77A9CAB4734B75C5386851050BF -2364EBB8237363B21226565675B9F478482CADAE41E795C27287E26137797C10 -775C9A28BA50D759FB438D0200121F01F7DB11986D44D3960F745EAA1E7A2CE2AD92AD718AFCD98BC3269C39F65ADC53 -80F637A04446BF1FBEF3399307527403A15031FC4030F7C1E8217A2367B21A52 -1E3EC8CCECC14E8898D13BB2EEEC1EABABCD83D6930DBB8D381D8378EC5FAF22 -46A68DD969BFF20ADFAC767AFA87D3CA98AE6C056B0B4D43A5A24A7ABBD88D57 -FEC591F298259129A9EC9BE66D903C2D5D94A17D38CD889C878664FC3C118FDA -2BC0AA2C0909417140615C7E901566A9AD2F88BCF500A0AF82A79BE4C0B013CE -D9C9119FE35EB25800F60C2D5D2F018D43CC888147D469BF26F86A8DBABB2DCB -6FFECFF334702D6E32B55B5CDE4191176D2D3CC3A3CE10E880425BD7FC262193 +2364EBB8237363B21226565675B9F47819C5BBC7E917C761BA3652D0A6ED7D3273EB8F3B7FBA68DE4143FB15BBEC35FB +CCDE559A2901A8290D6B2E8EDF66612E4C90E2E7C63643C8C5F244E30874B41039E078089E2253DA73B3A6DD821A84CD +33B239455FBE7AB8CE833C3B9C063EFEAE1FC7AC876AF3294C67D5B08BF7E9EC +F0FBBCEFE99D25104022CD3621B21B5F84FFBC9A5E21B0AED2B1560B39524A5B +E15B0614D9ECA17784E994652755559B7A3DA4B53CE6E63108BCFCD8024761DD +9E244C80E72937274DD6B2787F1A75F278A2DF7CB3B89F7C2BF7CC8DBBF2A3F0 +689DCA188A40DFDD3575A9BD9D7AF2427D0CE707F591029463AEC6B8679969AC +25D9B04D10AF541925901F55D8D7FA9C87523995F53183FB04F00C6023D5930A +D11F70508485C019AFC5FDBE5FD7223710033483C803FC7C2C69BAAD6ACB7CA7 +C081A0ACEA8210AB117028EDFF15641EE287CB1CFF8332A9D208B7324523129E +4C5B7C959C00A30F39A431B20EA1FEBDFB1C71C01CCC45DD883CD511360479BE +ECC0A8237E19D3883A06C5A700647860B3D9E570976D3606A11A4005424FD935 +8F5D7B39696F6F5C2100FFDF71D1C8ECAD98BD1D4CEE7BA8C793815747CE6FD5 +52ED6DE1583093E8D8AB8D16C912F7E89F78A24CE36ED53D3E06D3F81BF62ED1 +416015A128EA3A008573DE760C6AE05BD958BFCB46351F614B617CEE55C5E294 diff --git a/assets/resources/subghz/keeloq_mfcodes_user b/assets/resources/subghz/keeloq_mfcodes_user index 6361d85e..910157d6 100644 --- a/assets/resources/subghz/keeloq_mfcodes_user +++ b/assets/resources/subghz/keeloq_mfcodes_user @@ -1,7 +1,7 @@ # for adding manufacture keys # AABBCCDDEEFFAABB:X:NAME\r\n # AABBCCDDEEFFAABB - man 64 bit -# X - encryption method 1 - Simple Learning, 2 - Normal_Learning, +# X - encryption method 1 - Simple Learning, 2 - Normal_Learning, 3 - Secure_Learning # 0 - iterates over both previous and man in direct and reverse byte sequence # NAME - name (string without spaces) max 64 characters long Filetype: Flipper SubGhz Keystore File diff --git a/firmware/targets/f6/furi-hal/furi-hal-subghz.c b/firmware/targets/f6/furi-hal/furi-hal-subghz.c index 276482ee..25fa3b7a 100644 --- a/firmware/targets/f6/furi-hal/furi-hal-subghz.c +++ b/firmware/targets/f6/furi-hal/furi-hal-subghz.c @@ -469,7 +469,7 @@ uint32_t furi_hal_subghz_set_frequency(uint32_t value) { case FuriHalVersionRegionEuRu: //433,05..434,79; 868,15..868,55 if(!(value >= 433050000 && value <= 434790000) && - !(value >= 868150000 && value <= 8680550000)) { + !(value >= 868150000 && value <= 868550000)) { } else { txrx = true; } diff --git a/firmware/targets/f6/furi-hal/furi-hal-usb-hid.c b/firmware/targets/f6/furi-hal/furi-hal-usb-hid.c index 1e35f7f7..0b583163 100644 --- a/firmware/targets/f6/furi-hal/furi-hal-usb-hid.c +++ b/firmware/targets/f6/furi-hal/furi-hal-usb-hid.c @@ -1,6 +1,7 @@ #include "furi-hal-version.h" #include "furi-hal-usb_i.h" #include "furi-hal-usb.h" +#include "furi-hal-usb-hid.h" #include #include "usb.h" @@ -37,24 +38,24 @@ static const uint8_t hid_report_desc[] = { HID_USAGE(HID_DESKTOP_KEYBOARD), HID_COLLECTION(HID_APPLICATION_COLLECTION), HID_REPORT_ID(ReportIdKeyboard), - HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), - HID_USAGE_MINIMUM(HID_KEYBOARD_L_CTRL), - HID_USAGE_MAXIMUM(HID_KEYBOARD_R_GUI), - HID_LOGICAL_MINIMUM(0), - HID_LOGICAL_MAXIMUM(1), - HID_REPORT_SIZE(1), - HID_REPORT_COUNT(8), + HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), + HID_USAGE_MINIMUM(HID_KEYBOARD_L_CTRL), + HID_USAGE_MAXIMUM(HID_KEYBOARD_R_GUI), + HID_LOGICAL_MINIMUM(0), + HID_LOGICAL_MAXIMUM(1), + HID_REPORT_SIZE(1), + HID_REPORT_COUNT(8), HID_INPUT(HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_REPORT_COUNT(1), - HID_REPORT_SIZE(8), + HID_REPORT_COUNT(1), + HID_REPORT_SIZE(8), HID_INPUT(HID_IOF_CONSTANT | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_REPORT_COUNT(6), - HID_REPORT_SIZE(8), - HID_LOGICAL_MINIMUM(0), - HID_LOGICAL_MAXIMUM(101), - HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), - HID_USAGE_MINIMUM(0), - HID_USAGE_MAXIMUM(101), + HID_REPORT_COUNT(6), + HID_REPORT_SIZE(8), + HID_LOGICAL_MINIMUM(0), + HID_LOGICAL_MAXIMUM(101), + HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), + HID_USAGE_MINIMUM(0), + HID_USAGE_MAXIMUM(101), HID_INPUT(HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE), HID_END_COLLECTION, HID_USAGE_PAGE(HID_PAGE_DESKTOP), @@ -63,25 +64,25 @@ static const uint8_t hid_report_desc[] = { HID_USAGE(HID_DESKTOP_POINTER), HID_COLLECTION(HID_PHYSICAL_COLLECTION), HID_REPORT_ID(ReportIdMouse), - HID_USAGE_PAGE(HID_PAGE_BUTTON), - HID_USAGE_MINIMUM(1), - HID_USAGE_MAXIMUM(3), - HID_LOGICAL_MINIMUM(0), - HID_LOGICAL_MAXIMUM(1), - HID_REPORT_COUNT(3), - HID_REPORT_SIZE(1), + HID_USAGE_PAGE(HID_PAGE_BUTTON), + HID_USAGE_MINIMUM(1), + HID_USAGE_MAXIMUM(3), + HID_LOGICAL_MINIMUM(0), + HID_LOGICAL_MAXIMUM(1), + HID_REPORT_COUNT(3), + HID_REPORT_SIZE(1), HID_INPUT(HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_REPORT_SIZE(1), - HID_REPORT_COUNT(5), + HID_REPORT_SIZE(1), + HID_REPORT_COUNT(5), HID_INPUT(HID_IOF_CONSTANT | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_USAGE_PAGE(HID_PAGE_DESKTOP), - HID_USAGE(HID_DESKTOP_X), - HID_USAGE(HID_DESKTOP_Y), - HID_USAGE(HID_DESKTOP_WHEEL), - HID_LOGICAL_MINIMUM(-127), - HID_LOGICAL_MAXIMUM(127), - HID_REPORT_SIZE(8), - HID_REPORT_COUNT(3), + HID_USAGE_PAGE(HID_PAGE_DESKTOP), + HID_USAGE(HID_DESKTOP_X), + HID_USAGE(HID_DESKTOP_Y), + HID_USAGE(HID_DESKTOP_WHEEL), + HID_LOGICAL_MINIMUM(-127), + HID_LOGICAL_MAXIMUM(127), + HID_REPORT_SIZE(8), + HID_REPORT_COUNT(3), HID_INPUT(HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE), HID_END_COLLECTION, HID_END_COLLECTION, @@ -194,11 +195,28 @@ static usbd_respond hid_control (usbd_device *dev, usbd_ctlreq *req, usbd_rqc_ca static usbd_device* usb_dev; static osSemaphoreId_t hid_semaphore = NULL; static bool hid_connected = false; +static HidStateCallback callback; +static void* cb_ctx; bool furi_hal_hid_is_connected() { return hid_connected; } +void furi_hal_hid_set_state_callback(HidStateCallback cb, void* ctx) { + if (callback != NULL) { + if (hid_connected == true) + callback(false, cb_ctx); + } + + callback = cb; + cb_ctx = ctx; + + if (callback != NULL) { + if (hid_connected == true) + callback(true, cb_ctx); + } +} + bool furi_hal_hid_kb_press(uint16_t button) { for (uint8_t key_nb = 0; key_nb < HID_KB_MAX_KEYS; key_nb++) { if (hid_report.keyboard.btn[key_nb] == 0) { @@ -289,13 +307,19 @@ static void hid_deinit(usbd_device *dev) { } static void hid_on_wakeup(usbd_device *dev) { - hid_connected = true; + if (hid_connected == false) { + hid_connected = true; + if (callback != NULL) + callback(true, cb_ctx); + } } static void hid_on_suspend(usbd_device *dev) { if (hid_connected == true) { hid_connected = false; osSemaphoreRelease(hid_semaphore); + if (callback != NULL) + callback(false, cb_ctx); } } diff --git a/firmware/targets/f7/furi-hal/furi-hal-compress.c b/firmware/targets/f7/furi-hal/furi-hal-compress.c index eb6e9d51..369ab3a0 100644 --- a/firmware/targets/f7/furi-hal/furi-hal-compress.c +++ b/firmware/targets/f7/furi-hal/furi-hal-compress.c @@ -6,7 +6,7 @@ #define TAG "FuriHalCompress" -#define FURI_HAL_COMPRESS_ICON_ENCODED_BUFF_SIZE (512) +#define FURI_HAL_COMPRESS_ICON_ENCODED_BUFF_SIZE (2*512) #define FURI_HAL_COMPRESS_ICON_DECODED_BUFF_SIZE (1024) #define FURI_HAL_COMPRESS_EXP_BUFF_SIZE (1 << FURI_HAL_COMPRESS_EXP_BUFF_SIZE_LOG) @@ -59,13 +59,17 @@ void furi_hal_compress_icon_decode(const uint8_t* icon_data, uint8_t** decoded_b if(header->is_compressed) { size_t data_processed = 0; heatshrink_decoder_sink(icon_decoder->decoder, (uint8_t*)&icon_data[4], header->compressed_buff_size, &data_processed); - while( - heatshrink_decoder_poll( + while (1) { + HSD_poll_res res = heatshrink_decoder_poll( icon_decoder->decoder, icon_decoder->decoded_buff, sizeof(icon_decoder->decoded_buff), - &data_processed) == HSDR_POLL_MORE - ) {}; + &data_processed); + furi_assert((res == HSDR_POLL_EMPTY) || (res == HSDR_POLL_MORE)); + if (res != HSDR_POLL_MORE) { + break; + } + } heatshrink_decoder_reset(icon_decoder->decoder); memset(icon_decoder->compress_buff, 0, sizeof(icon_decoder->compress_buff)); *decoded_buff = icon_decoder->decoded_buff; diff --git a/firmware/targets/f7/furi-hal/furi-hal-subghz.c b/firmware/targets/f7/furi-hal/furi-hal-subghz.c index 276482ee..25fa3b7a 100644 --- a/firmware/targets/f7/furi-hal/furi-hal-subghz.c +++ b/firmware/targets/f7/furi-hal/furi-hal-subghz.c @@ -469,7 +469,7 @@ uint32_t furi_hal_subghz_set_frequency(uint32_t value) { case FuriHalVersionRegionEuRu: //433,05..434,79; 868,15..868,55 if(!(value >= 433050000 && value <= 434790000) && - !(value >= 868150000 && value <= 8680550000)) { + !(value >= 868150000 && value <= 868550000)) { } else { txrx = true; } diff --git a/firmware/targets/f7/furi-hal/furi-hal-usb-hid.c b/firmware/targets/f7/furi-hal/furi-hal-usb-hid.c index 1e35f7f7..0b583163 100644 --- a/firmware/targets/f7/furi-hal/furi-hal-usb-hid.c +++ b/firmware/targets/f7/furi-hal/furi-hal-usb-hid.c @@ -1,6 +1,7 @@ #include "furi-hal-version.h" #include "furi-hal-usb_i.h" #include "furi-hal-usb.h" +#include "furi-hal-usb-hid.h" #include #include "usb.h" @@ -37,24 +38,24 @@ static const uint8_t hid_report_desc[] = { HID_USAGE(HID_DESKTOP_KEYBOARD), HID_COLLECTION(HID_APPLICATION_COLLECTION), HID_REPORT_ID(ReportIdKeyboard), - HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), - HID_USAGE_MINIMUM(HID_KEYBOARD_L_CTRL), - HID_USAGE_MAXIMUM(HID_KEYBOARD_R_GUI), - HID_LOGICAL_MINIMUM(0), - HID_LOGICAL_MAXIMUM(1), - HID_REPORT_SIZE(1), - HID_REPORT_COUNT(8), + HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), + HID_USAGE_MINIMUM(HID_KEYBOARD_L_CTRL), + HID_USAGE_MAXIMUM(HID_KEYBOARD_R_GUI), + HID_LOGICAL_MINIMUM(0), + HID_LOGICAL_MAXIMUM(1), + HID_REPORT_SIZE(1), + HID_REPORT_COUNT(8), HID_INPUT(HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_REPORT_COUNT(1), - HID_REPORT_SIZE(8), + HID_REPORT_COUNT(1), + HID_REPORT_SIZE(8), HID_INPUT(HID_IOF_CONSTANT | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_REPORT_COUNT(6), - HID_REPORT_SIZE(8), - HID_LOGICAL_MINIMUM(0), - HID_LOGICAL_MAXIMUM(101), - HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), - HID_USAGE_MINIMUM(0), - HID_USAGE_MAXIMUM(101), + HID_REPORT_COUNT(6), + HID_REPORT_SIZE(8), + HID_LOGICAL_MINIMUM(0), + HID_LOGICAL_MAXIMUM(101), + HID_USAGE_PAGE(HID_DESKTOP_KEYPAD), + HID_USAGE_MINIMUM(0), + HID_USAGE_MAXIMUM(101), HID_INPUT(HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE), HID_END_COLLECTION, HID_USAGE_PAGE(HID_PAGE_DESKTOP), @@ -63,25 +64,25 @@ static const uint8_t hid_report_desc[] = { HID_USAGE(HID_DESKTOP_POINTER), HID_COLLECTION(HID_PHYSICAL_COLLECTION), HID_REPORT_ID(ReportIdMouse), - HID_USAGE_PAGE(HID_PAGE_BUTTON), - HID_USAGE_MINIMUM(1), - HID_USAGE_MAXIMUM(3), - HID_LOGICAL_MINIMUM(0), - HID_LOGICAL_MAXIMUM(1), - HID_REPORT_COUNT(3), - HID_REPORT_SIZE(1), + HID_USAGE_PAGE(HID_PAGE_BUTTON), + HID_USAGE_MINIMUM(1), + HID_USAGE_MAXIMUM(3), + HID_LOGICAL_MINIMUM(0), + HID_LOGICAL_MAXIMUM(1), + HID_REPORT_COUNT(3), + HID_REPORT_SIZE(1), HID_INPUT(HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_REPORT_SIZE(1), - HID_REPORT_COUNT(5), + HID_REPORT_SIZE(1), + HID_REPORT_COUNT(5), HID_INPUT(HID_IOF_CONSTANT | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), - HID_USAGE_PAGE(HID_PAGE_DESKTOP), - HID_USAGE(HID_DESKTOP_X), - HID_USAGE(HID_DESKTOP_Y), - HID_USAGE(HID_DESKTOP_WHEEL), - HID_LOGICAL_MINIMUM(-127), - HID_LOGICAL_MAXIMUM(127), - HID_REPORT_SIZE(8), - HID_REPORT_COUNT(3), + HID_USAGE_PAGE(HID_PAGE_DESKTOP), + HID_USAGE(HID_DESKTOP_X), + HID_USAGE(HID_DESKTOP_Y), + HID_USAGE(HID_DESKTOP_WHEEL), + HID_LOGICAL_MINIMUM(-127), + HID_LOGICAL_MAXIMUM(127), + HID_REPORT_SIZE(8), + HID_REPORT_COUNT(3), HID_INPUT(HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE), HID_END_COLLECTION, HID_END_COLLECTION, @@ -194,11 +195,28 @@ static usbd_respond hid_control (usbd_device *dev, usbd_ctlreq *req, usbd_rqc_ca static usbd_device* usb_dev; static osSemaphoreId_t hid_semaphore = NULL; static bool hid_connected = false; +static HidStateCallback callback; +static void* cb_ctx; bool furi_hal_hid_is_connected() { return hid_connected; } +void furi_hal_hid_set_state_callback(HidStateCallback cb, void* ctx) { + if (callback != NULL) { + if (hid_connected == true) + callback(false, cb_ctx); + } + + callback = cb; + cb_ctx = ctx; + + if (callback != NULL) { + if (hid_connected == true) + callback(true, cb_ctx); + } +} + bool furi_hal_hid_kb_press(uint16_t button) { for (uint8_t key_nb = 0; key_nb < HID_KB_MAX_KEYS; key_nb++) { if (hid_report.keyboard.btn[key_nb] == 0) { @@ -289,13 +307,19 @@ static void hid_deinit(usbd_device *dev) { } static void hid_on_wakeup(usbd_device *dev) { - hid_connected = true; + if (hid_connected == false) { + hid_connected = true; + if (callback != NULL) + callback(true, cb_ctx); + } } static void hid_on_suspend(usbd_device *dev) { if (hid_connected == true) { hid_connected = false; osSemaphoreRelease(hid_semaphore); + if (callback != NULL) + callback(false, cb_ctx); } } diff --git a/firmware/targets/furi-hal-include/furi-hal-usb-hid.h b/firmware/targets/furi-hal-include/furi-hal-usb-hid.h index eb4a2d9f..559a20af 100644 --- a/firmware/targets/furi-hal-include/furi-hal-usb-hid.h +++ b/firmware/targets/furi-hal-include/furi-hal-usb-hid.h @@ -250,6 +250,8 @@ static const uint16_t hid_asciimap[] = { KEY_NONE, // DEL }; +typedef void (*HidStateCallback)(bool state, void* context); + /** ASCII to keycode conversion macro */ #define HID_ASCII_TO_KEY(x) (((uint8_t)x < 128) ? (hid_asciimap[(uint8_t)x]) : KEY_NONE) @@ -266,6 +268,13 @@ enum HidMouseButtons { */ bool furi_hal_hid_is_connected(); +/** Set USB HID connect/disconnect callback + * + * @param cb callback + * @param ctx callback context + */ +void furi_hal_hid_set_state_callback(HidStateCallback cb, void* ctx); + /** Set the following key to pressed state and send HID report * * @param button key code diff --git a/lib/subghz/protocols/subghz_protocol_keeloq.c b/lib/subghz/protocols/subghz_protocol_keeloq.c index 42352462..1db8da4d 100644 --- a/lib/subghz/protocols/subghz_protocol_keeloq.c +++ b/lib/subghz/protocols/subghz_protocol_keeloq.c @@ -96,7 +96,7 @@ uint8_t subghz_protocol_keeloq_check_remote_controller_selector( } break; case KEELOQ_LEARNING_NORMAL: - // Normal_Learning + // Normal Learning // https://phreakerclub.com/forum/showpost.php?p=43557&postcount=37 man_learning = subghz_protocol_keeloq_common_normal_learning(fix, manufacture_code->key); @@ -135,7 +135,7 @@ uint8_t subghz_protocol_keeloq_check_remote_controller_selector( return 1; } //########################### - // Normal_Learning + // Normal Learning // https://phreakerclub.com/forum/showpost.php?p=43557&postcount=37 man_learning = subghz_protocol_keeloq_common_normal_learning(fix, manufacture_code->key); diff --git a/lib/subghz/protocols/subghz_protocol_raw.c b/lib/subghz/protocols/subghz_protocol_raw.c index b9b9c5bc..9f36cdce 100644 --- a/lib/subghz/protocols/subghz_protocol_raw.c +++ b/lib/subghz/protocols/subghz_protocol_raw.c @@ -17,6 +17,8 @@ struct SubGhzProtocolRAW { string_t file_name; size_t sample_write; bool last_level; + SubGhzProtocolRAWCallbackEnd callback_end; + void* context_end; }; typedef enum { @@ -65,6 +67,22 @@ void subghz_protocol_raw_free(SubGhzProtocolRAW* instance) { free(instance); } +void subghz_protocol_raw_file_encoder_worker_callback_end(void* context) { + furi_assert(context); + SubGhzProtocolRAW* instance = context; + if(instance->callback_end) instance->callback_end(instance->context_end); +} + +void subghz_protocol_raw_file_encoder_worker_set_callback_end( + SubGhzProtocolRAW* instance, + SubGhzProtocolRAWCallbackEnd callback_end, + void* context_end) { + furi_assert(instance); + furi_assert(callback_end); + instance->callback_end = callback_end; + instance->context_end = context_end; +} + void subghz_protocol_raw_file_encoder_worker_stop(void* context) { furi_assert(context); SubGhzProtocolRAW* instance = context; @@ -90,10 +108,17 @@ bool subghz_protocol_raw_send_key( //the worker needs a file in order to open and read part of the file osDelay(100); instance->file_is_open = RAWFileIsOpenRead; + //Forwarding UPLOAD to common encoder subghz_protocol_encoder_common_set_callback( encoder, subghz_file_encoder_worker_get_level_duration, instance->file_worker_encoder); + //forced stop of transmission subghz_protocol_encoder_common_set_callback_end( encoder, subghz_protocol_raw_file_encoder_worker_stop, instance); + //file transfer complete callback + subghz_file_encoder_worker_callback_end( + instance->file_worker_encoder, + subghz_protocol_raw_file_encoder_worker_callback_end, + instance); loaded = true; } else { @@ -187,7 +212,8 @@ bool subghz_protocol_raw_save_to_file_init( break; } - if(!flipper_file_write_string_cstr(instance->flipper_file, "Protocol", instance->common.name)) { + if(!flipper_file_write_string_cstr( + instance->flipper_file, "Protocol", instance->common.name)) { FURI_LOG_E(TAG, "Unable to add Protocol"); break; } diff --git a/lib/subghz/protocols/subghz_protocol_raw.h b/lib/subghz/protocols/subghz_protocol_raw.h index 59202b47..9a6f8b9d 100644 --- a/lib/subghz/protocols/subghz_protocol_raw.h +++ b/lib/subghz/protocols/subghz_protocol_raw.h @@ -2,6 +2,8 @@ #include "subghz_protocol_common.h" +typedef void (*SubGhzProtocolRAWCallbackEnd)(void* context); + typedef struct SubGhzProtocolRAW SubGhzProtocolRAW; /** Allocate SubGhzProtocolRAW @@ -16,6 +18,11 @@ SubGhzProtocolRAW* subghz_protocol_raw_alloc(); */ void subghz_protocol_raw_free(SubGhzProtocolRAW* instance); +void subghz_protocol_raw_file_encoder_worker_set_callback_end( + SubGhzProtocolRAW* instance, + SubGhzProtocolRAWCallbackEnd callback_end, + void* context_end); + /** Reset internal state * @param instance - SubGhzProtocolRAW instance */ diff --git a/lib/subghz/subghz_file_encoder_worker.c b/lib/subghz/subghz_file_encoder_worker.c index 7bde91fa..2bf8da9d 100644 --- a/lib/subghz/subghz_file_encoder_worker.c +++ b/lib/subghz/subghz_file_encoder_worker.c @@ -16,12 +16,26 @@ struct SubGhzFileEncoderWorker { FlipperFile* flipper_file; volatile bool worker_running; + volatile bool worker_stoping; bool level; int32_t duration; string_t str_data; string_t file_path; + + SubGhzFileEncoderWorkerCallbackEnd callback_end; + void* context_end; }; +void subghz_file_encoder_worker_callback_end( + SubGhzFileEncoderWorker* instance, + SubGhzFileEncoderWorkerCallbackEnd callback_end, + void* context_end) { + furi_assert(instance); + furi_assert(callback_end); + instance->callback_end = callback_end; + instance->context_end = context_end; +} + void subghz_file_encoder_worker_add_livel_duration( SubGhzFileEncoderWorker* instance, int32_t duration) { @@ -89,6 +103,7 @@ LevelDuration subghz_file_encoder_worker_get_level_duration(void* context) { } else if(duration == 0) { level_duration = level_duration_reset(); FURI_LOG_I(TAG, "Stop transmission"); + instance->worker_stoping = true; } return level_duration; } else { @@ -111,9 +126,7 @@ static int32_t subghz_file_encoder_worker_thread(void* context) { if(!flipper_file_open_existing( instance->flipper_file, string_get_cstr(instance->file_path))) { FURI_LOG_E( - TAG, - "Unable to open file for read: %s", - string_get_cstr(instance->file_path)); + TAG, "Unable to open file for read: %s", string_get_cstr(instance->file_path)); break; } if(!flipper_file_read_string(instance->flipper_file, "Protocol", instance->str_data)) { @@ -124,6 +137,7 @@ static int32_t subghz_file_encoder_worker_thread(void* context) { //skip the end of the previous line "\n" storage_file_seek(file, 1, false); res = true; + instance->worker_stoping = false; FURI_LOG_I(TAG, "Start transmission"); } while(0); @@ -149,10 +163,15 @@ static int32_t subghz_file_encoder_worker_thread(void* context) { break; } } + osDelay(5); } //waiting for the end of the transfer FURI_LOG_I(TAG, "End read file"); + while(instance->worker_running) { + if(instance->worker_stoping) { + if(instance->callback_end) instance->callback_end(instance->context_end); + } osDelay(50); } flipper_file_close(instance->flipper_file); @@ -177,6 +196,7 @@ SubGhzFileEncoderWorker* subghz_file_encoder_worker_alloc() { string_init(instance->str_data); string_init(instance->file_path); instance->level = false; + instance->worker_stoping = true; return instance; } diff --git a/lib/subghz/subghz_file_encoder_worker.h b/lib/subghz/subghz_file_encoder_worker.h index 0c014a0b..85d6d930 100644 --- a/lib/subghz/subghz_file_encoder_worker.h +++ b/lib/subghz/subghz_file_encoder_worker.h @@ -2,8 +2,20 @@ #include +typedef void (*SubGhzFileEncoderWorkerCallbackEnd)(void* context); + typedef struct SubGhzFileEncoderWorker SubGhzFileEncoderWorker; +/** End callback SubGhzWorker + * + * @param instance SubGhzFileEncoderWorker instance + * @param callback SubGhzFileEncoderWorkerCallbackEnd callback + */ +void subghz_file_encoder_worker_callback_end( + SubGhzFileEncoderWorker* instance, + SubGhzFileEncoderWorkerCallbackEnd callback_end, + void* context_end); + /** Allocate SubGhzFileEncoderWorker * * @return SubGhzFileEncoderWorker* diff --git a/lib/subghz/subghz_keystore.c b/lib/subghz/subghz_keystore.c index fe37e96f..c499897c 100644 --- a/lib/subghz/subghz_keystore.c +++ b/lib/subghz/subghz_keystore.c @@ -77,23 +77,28 @@ static bool subghz_keystore_process_line(SubGhzKeystore* instance, char* line) { } static void subghz_keystore_mess_with_iv(uint8_t* iv) { + // Alignment check for `ldrd` instruction + furi_assert(((uint32_t)iv) % 4 == 0); // Please do not share decrypted manufacture keys // Sharing them will bring some discomfort to legal owners // And potential legal action against you // While you reading this code think about your own personal responsibility - asm volatile("movs r0, #0x0 \n" - "movs r1, #0x0 \n" - "movs r2, #0x0 \n" - "movs r3, #0x0 \n" - "nani: \n" - "ldrb r1, [r0, %0]\n" - "mov r2, r1 \n" - "add r1, r3 \n" - "mov r3, r2 \n" - "strb r1, [r0, %0]\n" - "adds r0, #0x1 \n" - "cmp r0, #0xF \n" - "bls nani \n" + asm volatile("nani: \n" + "ldrd r0, r2, [%0, #0x0] \n" + "lsl r1, r0, #8 \n" + "lsl r3, r2, #8 \n" + "orr r3, r3, r0, lsr #24\n" + "uadd8 r1, r1, r0 \n" + "uadd8 r3, r3, r2 \n" + "strd r1, r3, [%0, #0x0] \n" + "ldrd r1, r3, [%0, #0x8] \n" + "lsl r0, r1, #8 \n" + "orr r0, r0, r2, lsr #24\n" + "lsl r2, r3, #8 \n" + "orr r2, r2, r1, lsr #24\n" + "uadd8 r1, r1, r0 \n" + "uadd8 r3, r3, r2 \n" + "strd r1, r3, [%0, #0x8] \n" : : "r"(iv) : "r0", "r1", "r2", "r3", "memory"); diff --git a/scripts/flash.py b/scripts/flash.py index be65b1dc..170d4311 100755 --- a/scripts/flash.py +++ b/scripts/flash.py @@ -16,6 +16,7 @@ class Main(App): self.subparsers = self.parser.add_subparsers(help="sub-command help") # Wipe self.parser_wipe = self.subparsers.add_parser("wipe", help="Wipe MCU Flash") + self._addArgsSWD(self.parser_wipe) self.parser_wipe.set_defaults(func=self.wipe) # Core 1 boot self.parser_core1bootloader = self.subparsers.add_parser( @@ -78,10 +79,17 @@ class Main(App): parser.add_argument( "--port", type=str, help="Port to connect: swd or usb1", default="swd" ) + parser.add_argument("--serial", type=str, help="ST-Link Serial Number") + + def _getCubeParams(self): + return { + "port": self.args.port, + "serial": self.args.serial, + } def wipe(self): self.logger.info(f"Wiping flash") - cp = CubeProgrammer("swd") + cp = CubeProgrammer(self._getCubeParams()) self.logger.info(f"Setting RDP to 0xBB") cp.setOptionBytes({"RDP": ("0xBB", "rw")}) self.logger.info(f"Verifying RDP") @@ -99,7 +107,7 @@ class Main(App): def core1bootloader(self): self.logger.info(f"Flashing bootloader") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashBin("0x08000000", self.args.bootloader) self.logger.info(f"Complete") cp.resetTarget() @@ -107,7 +115,7 @@ class Main(App): def core1firmware(self): self.logger.info(f"Flashing firmware") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashBin("0x08008000", self.args.firmware) self.logger.info(f"Complete") cp.resetTarget() @@ -115,7 +123,7 @@ class Main(App): def core1(self): self.logger.info(f"Flashing bootloader") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashBin("0x08000000", self.args.bootloader) self.logger.info(f"Flashing firmware") cp.flashBin("0x08008000", self.args.firmware) @@ -130,7 +138,7 @@ class Main(App): ) return 1 self.logger.info(f"Flashing Firmware Update Service") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashCore2(self.args.fus_address, self.args.fus) self.logger.info(f"Complete") return 0 @@ -139,7 +147,7 @@ class Main(App): if int(self.args.radio_address, 16) > 0x080E0000: self.logger.error(f"I KNOW WHAT YOU DID LAST SUMMER") return 1 - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) self.logger.info(f"Removing Current Radio Stack") cp.deleteCore2RadioStack() self.logger.info(f"Flashing Radio Stack") diff --git a/scripts/flipper/cube.py b/scripts/flipper/cube.py index 16238217..38aa54a8 100644 --- a/scripts/flipper/cube.py +++ b/scripts/flipper/cube.py @@ -5,23 +5,35 @@ import subprocess class CubeProgrammer: """STM32 Cube Programmer cli wrapper""" - def __init__(self, port, params=[]): - self.port = port - self.params = params + def __init__(self, config={}): + assert isinstance(config, dict) + # Params base + self.params = [] + # Connect params + connect = [] + if "port" in config and config["port"]: + connect.append(f"port={config['port']}") + else: + connect.append(f"port=swd") + if "serial" in config and config["serial"]: + connect.append(f"sn={config['serial']}") + self.params.append("-c " + " ".join(connect)) + # Other params + if "params" in config: + self.params += config["params"] # logging self.logger = logging.getLogger() def _execute(self, args): try: - output = subprocess.check_output( - [ - "STM32_Programmer_CLI", - "-q", - f"-c port={self.port}", - *self.params, - *args, - ] - ) + params = [ + "STM32_Programmer_CLI", + "-q", + *self.params, + *args, + ] + self.logger.debug(f"_execute: {params}") + output = subprocess.check_output(params) except subprocess.CalledProcessError as e: if e.output: print("Process output:\n", e.output.decode()) diff --git a/scripts/ob.py b/scripts/ob.py index 903bfd56..17de08fd 100755 --- a/scripts/ob.py +++ b/scripts/ob.py @@ -16,19 +16,27 @@ class Main(App): self.parser_check = self.subparsers.add_parser( "check", help="Check Option Bytes" ) - self.parser_check.add_argument( - "--port", type=str, help="Port to connect: swd or usb1", default="swd" - ) + self._addArgsSWD(self.parser_check) self.parser_check.set_defaults(func=self.check) # Set command self.parser_set = self.subparsers.add_parser("set", help="Set Option Bytes") - self.parser_set.add_argument( - "--port", type=str, help="Port to connect: swd or usb1", default="swd" - ) + self._addArgsSWD(self.parser_set) self.parser_set.set_defaults(func=self.set) # OB self.ob = {} + def _addArgsSWD(self, parser): + parser.add_argument( + "--port", type=str, help="Port to connect: swd or usb1", default="swd" + ) + parser.add_argument("--serial", type=str, help="ST-Link Serial Number") + + def _getCubeParams(self): + return { + "port": self.args.port, + "serial": self.args.serial, + } + def before(self): self.logger.info(f"Loading Option Bytes data") file_path = os.path.join(os.path.dirname(sys.argv[0]), "ob.data") @@ -39,7 +47,7 @@ class Main(App): def check(self): self.logger.info(f"Checking Option Bytes") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) if cp.checkOptionBytes(self.ob): self.logger.info(f"OB Check OK") return 0 @@ -49,7 +57,7 @@ class Main(App): def set(self): self.logger.info(f"Setting Option Bytes") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) if cp.setOptionBytes(self.ob): self.logger.info(f"OB Set OK") return 0 diff --git a/scripts/otp.py b/scripts/otp.py index edad4b07..54714961 100755 --- a/scripts/otp.py +++ b/scripts/otp.py @@ -44,59 +44,66 @@ class Main(App): self.parser_generate_all = self.subparsers.add_parser( "generate", help="Generate OTP binary" ) - self._add_first_args(self.parser_generate_all) - self._add_second_args(self.parser_generate_all) + self._addFirstArgs(self.parser_generate_all) + self._addSecondArgs(self.parser_generate_all) self.parser_generate_all.add_argument("file", help="Output file") self.parser_generate_all.set_defaults(func=self.generate_all) # Flash First self.parser_flash_first = self.subparsers.add_parser( "flash_first", help="Flash first block of OTP to device" ) - self._add_swd_args(self.parser_flash_first) - self._add_first_args(self.parser_flash_first) + self._addArgsSWD(self.parser_flash_first) + self._addFirstArgs(self.parser_flash_first) self.parser_flash_first.set_defaults(func=self.flash_first) # Flash Second self.parser_flash_second = self.subparsers.add_parser( "flash_second", help="Flash second block of OTP to device" ) - self._add_swd_args(self.parser_flash_second) - self._add_second_args(self.parser_flash_second) + self._addArgsSWD(self.parser_flash_second) + self._addSecondArgs(self.parser_flash_second) self.parser_flash_second.set_defaults(func=self.flash_second) # Flash All self.parser_flash_all = self.subparsers.add_parser( "flash_all", help="Flash OTP to device" ) - self._add_swd_args(self.parser_flash_all) - self._add_first_args(self.parser_flash_all) - self._add_second_args(self.parser_flash_all) + self._addArgsSWD(self.parser_flash_all) + self._addFirstArgs(self.parser_flash_all) + self._addSecondArgs(self.parser_flash_all) self.parser_flash_all.set_defaults(func=self.flash_all) # logging self.logger = logging.getLogger() self.timestamp = datetime.datetime.now().timestamp() - def _add_swd_args(self, parser): + def _addArgsSWD(self, parser): parser.add_argument( "--port", type=str, help="Port to connect: swd or usb1", default="swd" ) + parser.add_argument("--serial", type=str, help="ST-Link Serial Number") - def _add_first_args(self, parser): + def _getCubeParams(self): + return { + "port": self.args.port, + "serial": self.args.serial, + } + + def _addFirstArgs(self, parser): parser.add_argument("--version", type=int, help="Version", required=True) parser.add_argument("--firmware", type=int, help="Firmware", required=True) parser.add_argument("--body", type=int, help="Body", required=True) parser.add_argument("--connect", type=int, help="Connect", required=True) parser.add_argument("--display", type=str, help="Display", required=True) - def _add_second_args(self, parser): + def _addSecondArgs(self, parser): parser.add_argument("--color", type=str, help="Color", required=True) parser.add_argument("--region", type=str, help="Region", required=True) parser.add_argument("--name", type=str, help="Name", required=True) - def _process_first_args(self): + def _processFirstArgs(self): if self.args.display not in OTP_DISPLAYS: self.parser.error(f"Invalid display. Use one of {OTP_DISPLAYS.keys()}") self.args.display = OTP_DISPLAYS[self.args.display] - def _process_second_args(self): + def _processSecondArgs(self): if self.args.color not in OTP_COLORS: self.parser.error(f"Invalid color. Use one of {OTP_COLORS.keys()}") self.args.color = OTP_COLORS[self.args.color] @@ -112,7 +119,7 @@ class Main(App): "Name contains incorrect symbols. Only a-zA-Z0-9 allowed." ) - def _pack_first(self): + def _packFirst(self): return struct.pack( "<" "HBBL" "BBBBBBH", OTP_MAGIC, @@ -128,7 +135,7 @@ class Main(App): OTP_RESERVED, ) - def _pack_second(self): + def _packSecond(self): return struct.pack( "<" "BBHL" "8s", self.args.color, @@ -140,10 +147,10 @@ class Main(App): def generate_all(self): self.logger.info(f"Generating OTP") - self._process_first_args() - self._process_second_args() - open(f"{self.args.file}_first.bin", "wb").write(self._pack_first()) - open(f"{self.args.file}_second.bin", "wb").write(self._pack_second()) + self._processFirstArgs() + self._processSecondArgs() + open(f"{self.args.file}_first.bin", "wb").write(self._packFirst()) + open(f"{self.args.file}_second.bin", "wb").write(self._packSecond()) self.logger.info( f"Generated files: {self.args.file}_first.bin and {self.args.file}_second.bin" ) @@ -153,17 +160,17 @@ class Main(App): def flash_first(self): self.logger.info(f"Flashing first block of OTP") - self._process_first_args() + self._processFirstArgs() filename = f"otp_unknown_first_{self.timestamp}.bin" try: self.logger.info(f"Packing binary data") file = open(filename, "wb") - file.write(self._pack_first()) + file.write(self._packFirst()) file.close() self.logger.info(f"Flashing OTP") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashBin("0x1FFF7000", filename) cp.resetTarget() self.logger.info(f"Flashed Successfully") @@ -177,17 +184,17 @@ class Main(App): def flash_second(self): self.logger.info(f"Flashing second block of OTP") - self._process_second_args() + self._processSecondArgs() filename = f"otp_{self.args.name}_second_{self.timestamp}.bin" try: self.logger.info(f"Packing binary data") file = open(filename, "wb") - file.write(self._pack_second()) + file.write(self._packSecond()) file.close() self.logger.info(f"Flashing OTP") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashBin("0x1FFF7010", filename) cp.resetTarget() self.logger.info(f"Flashed Successfully") @@ -201,19 +208,19 @@ class Main(App): def flash_all(self): self.logger.info(f"Flashing OTP") - self._process_first_args() - self._process_second_args() + self._processFirstArgs() + self._processSecondArgs() filename = f"otp_{self.args.name}_whole_{self.timestamp}.bin" try: self.logger.info(f"Packing binary data") file = open(filename, "wb") - file.write(self._pack_first()) - file.write(self._pack_second()) + file.write(self._packFirst()) + file.write(self._packSecond()) file.close() self.logger.info(f"Flashing OTP") - cp = CubeProgrammer(self.args.port) + cp = CubeProgrammer(self._getCubeParams()) cp.flashBin("0x1FFF7000", filename) cp.resetTarget() self.logger.info(f"Flashed Successfully")