Fix code formatting and include order

Break long line in BookMetadataCache.cpp for better readability and move include directive to top of file in Logging.cpp to follow style guidelines.
This commit is contained in:
Justin Mitchell
2026-06-21 01:24:22 -04:00
parent 4e156e1617
commit 4e352b9894
18 changed files with 639 additions and 199 deletions
+2 -1
View File
@@ -496,7 +496,8 @@ BookMetadataCache::TocEntry BookMetadataCache::getTocEntry(const int index) {
BookMetadataCache::SpineEntry BookMetadataCache::readSpineEntry(HalFile& file) const {
SpineEntry entry;
if (!readStringBounded(file, entry.href) ||
file.read(&entry.cumulativeSize, sizeof(entry.cumulativeSize)) != static_cast<int>(sizeof(entry.cumulativeSize)) ||
file.read(&entry.cumulativeSize, sizeof(entry.cumulativeSize)) !=
static_cast<int>(sizeof(entry.cumulativeSize)) ||
file.read(&entry.tocIndex, sizeof(entry.tocIndex)) != static_cast<int>(sizeof(entry.tocIndex))) {
LOG_ERR("BMC", "Invalid spine cache entry");
return {};
+2 -2
View File
@@ -1,10 +1,10 @@
#include "Logging.h"
#include <BoardConfig.h>
#include <esp_rom_sys.h>
#include <string>
#include "Logging.h"
#define MAX_ENTRY_LEN 256
#define MAX_LOG_LINES 16
+2 -2
View File
@@ -222,8 +222,8 @@ bool HalClock::syncFromNTP() {
_cachedHour = dt.hour;
_cachedMinute = dt.minute;
_hasCachedTime = true;
LOG_INF("CLK", "RTC set to %04u-%02u-%02u %02u:%02u:%02u UTC", dt.year, dt.month, dt.day, dt.hour,
dt.minute, dt.second);
LOG_INF("CLK", "RTC set to %04u-%02u-%02u %02u:%02u:%02u UTC", dt.year, dt.month, dt.day, dt.hour, dt.minute,
dt.second);
return true;
}
return false;
+2 -2
View File
@@ -120,8 +120,8 @@ bool MappedInputManager::wasBackGesture() const {
return true;
}
// Else the top-left corner, for screens with no Back target (e.g. the reader).
const bool isTopLeftBack = lx <= renderer.getScreenWidth() * BACK_GESTURE_FRAC_X &&
ly <= renderer.getScreenHeight() * BACK_GESTURE_FRAC_Y;
const bool isTopLeftBack =
lx <= renderer.getScreenWidth() * BACK_GESTURE_FRAC_X && ly <= renderer.getScreenHeight() * BACK_GESTURE_FRAC_Y;
if (isTopLeftBack) rememberTouchHeldTime();
return isTopLeftBack;
}
+3 -6
View File
@@ -266,18 +266,15 @@ inline std::vector<SettingInfo> getSettingsList(const SdCardFontRegistry* regist
v.end());
for (auto it = v.begin(); it != v.end(); ++it) {
if (it->nameId == StrId::STR_SIDE_BTN_LAYOUT) {
v.insert(it, SettingInfo::Toggle(StrId::STR_TOUCH_READER_CONTROLS,
&CrossPointSettings::touchReaderControls, "touchReaderControls",
StrId::STR_CAT_CONTROLS));
v.insert(it, SettingInfo::Toggle(StrId::STR_TOUCH_READER_CONTROLS, &CrossPointSettings::touchReaderControls,
"touchReaderControls", StrId::STR_CAT_CONTROLS));
break;
}
}
}
if (BoardConfig::hasTouch()) {
v.erase(std::remove_if(v.begin(), v.end(),
[](const SettingInfo& s) {
return s.nameId == StrId::STR_FRONT_BTN_FOLLOW_ORIENTATION;
}),
[](const SettingInfo& s) { return s.nameId == StrId::STR_FRONT_BTN_FOLLOW_ORIENTATION; }),
v.end());
}
+1 -2
View File
@@ -5,12 +5,11 @@
#include <algorithm>
#include "components/TouchRegistry.h"
#include "OpdsServerStore.h"
#include "boot_sleep/BootActivity.h"
#include "boot_sleep/SleepActivity.h"
#include "browser/OpdsBookBrowserActivity.h"
#include "components/TouchRegistry.h"
#include "home/CrashActivity.h"
#include "home/FileBrowserActivity.h"
#include "home/HomeActivity.h"
@@ -1,7 +1,7 @@
#include "OpdsBookBrowserActivity.h"
#include <GfxRenderer.h>
#include <FreeInkUI.h>
#include <GfxRenderer.h>
#include <I18n.h>
#include <Logging.h>
#include <OpdsStream.h>
@@ -1,8 +1,8 @@
#include "FontDownloadActivity.h"
#include <ArduinoJson.h>
#include <GfxRenderer.h>
#include <FreeInkUI.h>
#include <GfxRenderer.h>
#include <HalStorage.h>
#include <I18n.h>
#include <Logging.h>
@@ -1,5 +1,6 @@
#include "KOReaderSettingsActivity.h"
#include <FreeInkUI.h>
#include <GfxRenderer.h>
#include <I18n.h>
@@ -11,7 +12,6 @@
#include "activities/util/KeyboardEntryActivity.h"
#include "components/UITheme.h"
#include "fontIds.h"
#include <FreeInkUI.h>
namespace {
constexpr int MENU_ITEMS = 5;
@@ -1,5 +1,6 @@
#include "OpdsSettingsActivity.h"
#include <FreeInkUI.h>
#include <GfxRenderer.h>
#include <I18n.h>
#include <Logging.h>
@@ -11,7 +12,6 @@
#include "activities/util/KeyboardEntryActivity.h"
#include "components/UITheme.h"
#include "fontIds.h"
#include <FreeInkUI.h>
namespace {
// Editable fields: Name, URL, Username, Password.
@@ -670,8 +670,7 @@ void KeyboardEntryActivity::render(RenderLock&&) {
if (snippetIdx < URL_SNIPPET_COUNT) {
GUI.drawKeyboardKey(renderer, Rect{keyX, rowY, keyWidth, keyHeight}, urlSnippets[snippetIdx],
activeKeySelected, nullptr);
TouchRegistry::getInstance().add(Rect{keyX, rowY, keyWidth, keyHeight}, row * 100 + col,
TouchRegistry::Item);
TouchRegistry::getInstance().add(Rect{keyX, rowY, keyWidth, keyHeight}, row * 100 + col, TouchRegistry::Item);
}
} else {
const KeyDef& key = layout[row][col];
+504 -48
View File
@@ -6,121 +6,577 @@
// Sizes: 24, 32, 40, 48px. Icons: 12.
// folder (lucide: folder)
static const uint8_t icon_folder_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xC0, 0x3F, 0xFF, 0x9F, 0x9F, 0xFF, 0x9F, 0xC0, 0x07, 0x9F, 0xE0, 0x03, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_folder_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xC0, 0x3F, 0xFF, 0x9F, 0x9F, 0xFF, 0x9F, 0xC0, 0x07,
0x9F, 0xE0, 0x03, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9,
0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9,
0x9F, 0xFF, 0xF9, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_folder_24 = {24, 24, 12, icon_folder_24_bits};
static const uint8_t icon_folder_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xC7, 0xE1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00, 0x07, 0x8F, 0xFC, 0x00, 0x03, 0x8F, 0xFF, 0xFF, 0xE3, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0xCF, 0xFF, 0xFF, 0xF3, 0xC0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_folder_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xC0, 0x03, 0xFF,
0xFF, 0xC7, 0xE1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00, 0x07, 0x8F, 0xFC, 0x00, 0x03, 0x8F, 0xFF,
0xFF, 0xE3, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F,
0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1,
0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF,
0xF1, 0xCF, 0xFF, 0xFF, 0xF3, 0xC0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_folder_32 = {32, 32, 16, icon_folder_32_bits};
static const uint8_t icon_folder_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x00, 0x3F, 0xFF, 0xFF, 0xC7, 0xFE, 0x1F, 0xFF, 0xFF, 0xC7, 0xFE, 0x00, 0x00, 0x3F, 0xC7, 0xFF, 0x00, 0x00, 0x0F, 0xC7, 0xFF, 0x80, 0x00, 0x07, 0xC7, 0xFF, 0xE0, 0x00, 0x03, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC3, 0xFF, 0xFF, 0xFF, 0xC3, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_folder_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF,
0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x00, 0x3F, 0xFF, 0xFF, 0xC7, 0xFE, 0x1F,
0xFF, 0xFF, 0xC7, 0xFE, 0x00, 0x00, 0x3F, 0xC7, 0xFF, 0x00, 0x00, 0x0F, 0xC7, 0xFF, 0x80, 0x00, 0x07, 0xC7, 0xFF,
0xE0, 0x00, 0x03, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7,
0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3,
0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF,
0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF,
0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF,
0xFF, 0xFF, 0xE3, 0xC3, 0xFF, 0xFF, 0xFF, 0xC3, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xF8,
0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_folder_40 = {40, 40, 19, icon_folder_40_bits};
static const uint8_t icon_folder_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xC1, 0xFF, 0x83, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xC1, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xE0, 0x00, 0x00, 0x3F, 0xC3, 0xFF, 0xE0, 0x00, 0x00, 0x0F, 0xC3, 0xFF, 0xF0, 0x00, 0x00, 0x07, 0xC3, 0xFF, 0xFC, 0x00, 0x00, 0x07, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_folder_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF,
0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xC1, 0xFF, 0x83, 0xFF, 0xFF, 0xFF,
0xC3, 0xFF, 0xC1, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xE0, 0x00, 0x00, 0x3F, 0xC3, 0xFF, 0xE0, 0x00, 0x00, 0x0F,
0xC3, 0xFF, 0xF0, 0x00, 0x00, 0x07, 0xC3, 0xFF, 0xFC, 0x00, 0x00, 0x07, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0x83,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07,
0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_folder_48 = {48, 48, 24, icon_folder_48_bits};
// text (lucide: file-text)
static const uint8_t icon_text_24_bits[] = {0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xE7, 0xF8, 0x3F, 0xE7, 0xF9, 0x1F, 0xE7, 0xF9, 0x8F, 0xE7, 0xF9, 0xC7, 0xE7, 0xF8, 0x07, 0xE6, 0x1C, 0x07, 0xE6, 0x1F, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE6, 0x00, 0x67, 0xE6, 0x00, 0x67, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE6, 0x00, 0x67, 0xE6, 0x00, 0x67, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_text_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xE7, 0xF8, 0x3F, 0xE7, 0xF9, 0x1F, 0xE7, 0xF9, 0x8F,
0xE7, 0xF9, 0xC7, 0xE7, 0xF8, 0x07, 0xE6, 0x1C, 0x07, 0xE6, 0x1F, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7,
0xE6, 0x00, 0x67, 0xE6, 0x00, 0x67, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE6, 0x00, 0x67, 0xE6, 0x00, 0x67,
0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_text_24 = {24, 24, 12, icon_text_24_bits};
static const uint8_t icon_text_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xF1, 0xFF, 0x80, 0xFF, 0xF1, 0xFF, 0x88, 0x7F, 0xF1, 0xFF, 0x8C, 0x3F, 0xF1, 0xFF, 0x8E, 0x1F, 0xF1, 0xFF, 0x8F, 0x1F, 0xF1, 0xFF, 0x80, 0x0F, 0xF1, 0xFF, 0xC0, 0x0F, 0xF1, 0xC3, 0xE0, 0x0F, 0xF1, 0xC3, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0x80, 0x01, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0x80, 0x01, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_text_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xF1, 0xFF, 0x80,
0xFF, 0xF1, 0xFF, 0x88, 0x7F, 0xF1, 0xFF, 0x8C, 0x3F, 0xF1, 0xFF, 0x8E, 0x1F, 0xF1, 0xFF, 0x8F, 0x1F, 0xF1, 0xFF,
0x80, 0x0F, 0xF1, 0xFF, 0xC0, 0x0F, 0xF1, 0xC3, 0xE0, 0x0F, 0xF1, 0xC3, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1,
0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0x80, 0x01, 0x8F, 0xF1, 0xC0, 0x03, 0x8F,
0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0x80, 0x01, 0x8F, 0xF1, 0xC0, 0x03,
0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00,
0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_text_32 = {32, 32, 16, icon_text_32_bits};
static const uint8_t icon_text_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x7F, 0xFC, 0x07, 0xFF, 0xF8, 0xFF, 0xFC, 0x43, 0xFF, 0xF8, 0xFF, 0xFC, 0x61, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0xFF, 0xF8, 0xFF, 0xFC, 0x78, 0x7F, 0xF8, 0xFF, 0xFC, 0x7C, 0x3F, 0xF8, 0xFF, 0xFC, 0x7E, 0x1F, 0xF8, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0xF8, 0x7C, 0x00, 0x1F, 0xF8, 0xF0, 0x3E, 0x00, 0x1F, 0xF8, 0xF0, 0x3F, 0xFF, 0x1F, 0xF8, 0xF8, 0x7F, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFE, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_text_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x00, 0x1F,
0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x7F, 0xFC, 0x07, 0xFF, 0xF8, 0xFF, 0xFC, 0x43, 0xFF, 0xF8, 0xFF, 0xFC,
0x61, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0xFF, 0xF8, 0xFF, 0xFC, 0x78, 0x7F, 0xF8, 0xFF, 0xFC, 0x7C, 0x3F, 0xF8, 0xFF,
0xFC, 0x7E, 0x1F, 0xF8, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0xF8, 0x7C, 0x00, 0x1F, 0xF8, 0xF0, 0x3E, 0x00, 0x1F, 0xF8,
0xF0, 0x3F, 0xFF, 0x1F, 0xF8, 0xF8, 0x7F, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F,
0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F,
0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF,
0xFF, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xFF,
0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8,
0x7F, 0xFF, 0xFE, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_text_40 = {40, 40, 20, icon_text_40_bits};
static const uint8_t icon_text_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC2, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0x83, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xF0, 0x7F, 0xFC, 0x3F, 0xFF, 0xC3, 0xF8, 0x7F, 0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x3E, 0x07, 0xE0, 0x00, 0x3F, 0xFC, 0x3C, 0x03, 0xF0, 0x00, 0x3F, 0xFC, 0x3C, 0x03, 0xFF, 0xFC, 0x3F, 0xFC, 0x3E, 0x07, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_text_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x03, 0xFF, 0xFF,
0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x3F, 0xFF,
0xFC, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC2, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0x07, 0xFF,
0xFC, 0x3F, 0xFF, 0xC3, 0x83, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xE0, 0xFF,
0xFC, 0x3F, 0xFF, 0xC3, 0xF0, 0x7F, 0xFC, 0x3F, 0xFF, 0xC3, 0xF8, 0x7F, 0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F,
0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x3E, 0x07, 0xE0, 0x00, 0x3F, 0xFC, 0x3C, 0x03, 0xF0, 0x00, 0x3F,
0xFC, 0x3C, 0x03, 0xFF, 0xFC, 0x3F, 0xFC, 0x3E, 0x07, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F,
0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F,
0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3E, 0x00, 0x00, 0x7C, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F,
0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF,
0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_text_48 = {48, 48, 24, icon_text_48_bits};
// image (lucide: image)
static const uint8_t icon_image_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xCF, 0xFF, 0xF3, 0xCF, 0xFF, 0xF3, 0xCF, 0x3F, 0xF3, 0xCE, 0x1F, 0xF3, 0xCC, 0xCF, 0xF3, 0xCC, 0xCF, 0xF3, 0xCE, 0x1F, 0x73, 0xCF, 0x3C, 0x13, 0xCF, 0xF8, 0x83, 0xCF, 0xF1, 0xC3, 0xCF, 0xE3, 0xE3, 0xCF, 0xC7, 0xF3, 0xCF, 0x8F, 0xF3, 0xCF, 0x1F, 0xF3, 0xCE, 0x3F, 0xF3, 0xCC, 0x7F, 0xF3, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_image_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xCF, 0xFF, 0xF3, 0xCF, 0xFF, 0xF3,
0xCF, 0x3F, 0xF3, 0xCE, 0x1F, 0xF3, 0xCC, 0xCF, 0xF3, 0xCC, 0xCF, 0xF3, 0xCE, 0x1F, 0x73, 0xCF, 0x3C, 0x13,
0xCF, 0xF8, 0x83, 0xCF, 0xF1, 0xC3, 0xCF, 0xE3, 0xE3, 0xCF, 0xC7, 0xF3, 0xCF, 0x8F, 0xF3, 0xCF, 0x1F, 0xF3,
0xCE, 0x3F, 0xF3, 0xCC, 0x7F, 0xF3, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_image_24 = {24, 24, 12, icon_image_24_bits};
static const uint8_t icon_image_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x07, 0xE3, 0xFF, 0xFF, 0xC7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xC3, 0xFF, 0xE7, 0xE7, 0x81, 0xFF, 0xE7, 0xE7, 0x00, 0xFF, 0xE7, 0xE7, 0x18, 0xFF, 0xE7, 0xE7, 0x18, 0xFF, 0xE7, 0xE7, 0x00, 0xFF, 0xE7, 0xE7, 0x81, 0xF0, 0xE7, 0xE7, 0xC3, 0xE0, 0x67, 0xE7, 0xFF, 0xC0, 0x07, 0xE7, 0xFF, 0x8F, 0x07, 0xE7, 0xFF, 0x1F, 0x87, 0xE7, 0xFE, 0x3F, 0xC7, 0xE7, 0xFC, 0x7F, 0xC7, 0xE7, 0xF8, 0xFF, 0xE7, 0xE7, 0xF1, 0xFF, 0xE7, 0xE7, 0xE3, 0xFF, 0xE7, 0xE7, 0xC7, 0xFF, 0xE7, 0xE7, 0x8F, 0xFF, 0xE7, 0xE2, 0x0F, 0xFF, 0xC7, 0xE0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_image_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00,
0x07, 0xE3, 0xFF, 0xFF, 0xC7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xC3, 0xFF, 0xE7, 0xE7, 0x81,
0xFF, 0xE7, 0xE7, 0x00, 0xFF, 0xE7, 0xE7, 0x18, 0xFF, 0xE7, 0xE7, 0x18, 0xFF, 0xE7, 0xE7, 0x00, 0xFF, 0xE7, 0xE7,
0x81, 0xF0, 0xE7, 0xE7, 0xC3, 0xE0, 0x67, 0xE7, 0xFF, 0xC0, 0x07, 0xE7, 0xFF, 0x8F, 0x07, 0xE7, 0xFF, 0x1F, 0x87,
0xE7, 0xFE, 0x3F, 0xC7, 0xE7, 0xFC, 0x7F, 0xC7, 0xE7, 0xF8, 0xFF, 0xE7, 0xE7, 0xF1, 0xFF, 0xE7, 0xE7, 0xE3, 0xFF,
0xE7, 0xE7, 0xC7, 0xFF, 0xE7, 0xE7, 0x8F, 0xFF, 0xE7, 0xE2, 0x0F, 0xFF, 0xC7, 0xE0, 0x00, 0x00, 0x07, 0xF0, 0x00,
0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_image_32 = {32, 32, 16, icon_image_32_bits};
static const uint8_t icon_image_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF, 0xFF, 0x8F, 0xE1, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xF8, 0x7F, 0xFF, 0x87, 0xE1, 0xF0, 0x3F, 0xFF, 0x87, 0xE1, 0xE0, 0x1F, 0xFF, 0x87, 0xE1, 0xC3, 0x0F, 0xFF, 0x87, 0xE1, 0xC7, 0x8F, 0xFF, 0x87, 0xE1, 0xC7, 0x8F, 0xFF, 0x87, 0xE1, 0xC3, 0x0F, 0xFF, 0x87, 0xE1, 0xE0, 0x1F, 0xC7, 0x87, 0xE1, 0xF0, 0x3F, 0x01, 0x87, 0xE1, 0xF8, 0x7E, 0x00, 0x87, 0xE1, 0xFF, 0xFC, 0x00, 0x07, 0xE1, 0xFF, 0xF8, 0x38, 0x07, 0xE1, 0xFF, 0xF0, 0x7C, 0x07, 0xE1, 0xFF, 0xE0, 0xFE, 0x07, 0xE1, 0xFF, 0xC1, 0xFF, 0x07, 0xE1, 0xFF, 0x83, 0xFF, 0x87, 0xE1, 0xFF, 0x07, 0xFF, 0x87, 0xE1, 0xFE, 0x0F, 0xFF, 0x87, 0xE1, 0xFC, 0x1F, 0xFF, 0x87, 0xE1, 0xF8, 0x3F, 0xFF, 0x87, 0xE1, 0xF0, 0x7F, 0xFF, 0x87, 0xE1, 0xE0, 0xFF, 0xFF, 0x87, 0xF1, 0xC1, 0xFF, 0xFF, 0x8F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_image_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
0xFF, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF,
0xFF, 0x8F, 0xE1, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xF8, 0x7F, 0xFF, 0x87, 0xE1, 0xF0,
0x3F, 0xFF, 0x87, 0xE1, 0xE0, 0x1F, 0xFF, 0x87, 0xE1, 0xC3, 0x0F, 0xFF, 0x87, 0xE1, 0xC7, 0x8F, 0xFF, 0x87, 0xE1,
0xC7, 0x8F, 0xFF, 0x87, 0xE1, 0xC3, 0x0F, 0xFF, 0x87, 0xE1, 0xE0, 0x1F, 0xC7, 0x87, 0xE1, 0xF0, 0x3F, 0x01, 0x87,
0xE1, 0xF8, 0x7E, 0x00, 0x87, 0xE1, 0xFF, 0xFC, 0x00, 0x07, 0xE1, 0xFF, 0xF8, 0x38, 0x07, 0xE1, 0xFF, 0xF0, 0x7C,
0x07, 0xE1, 0xFF, 0xE0, 0xFE, 0x07, 0xE1, 0xFF, 0xC1, 0xFF, 0x07, 0xE1, 0xFF, 0x83, 0xFF, 0x87, 0xE1, 0xFF, 0x07,
0xFF, 0x87, 0xE1, 0xFE, 0x0F, 0xFF, 0x87, 0xE1, 0xFC, 0x1F, 0xFF, 0x87, 0xE1, 0xF8, 0x3F, 0xFF, 0x87, 0xE1, 0xF0,
0x7F, 0xFF, 0x87, 0xE1, 0xE0, 0xFF, 0xFF, 0x87, 0xF1, 0xC1, 0xFF, 0xFF, 0x8F, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF0,
0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_image_40 = {40, 40, 20, icon_image_40_bits};
static const uint8_t icon_image_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x7F, 0xFF, 0xFF, 0xFE, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xFF, 0xFF, 0x0F, 0xF0, 0xFC, 0x03, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x01, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x01, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0x60, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0x60, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x01, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x01, 0xFC, 0x0F, 0x0F, 0xF0, 0xFC, 0x03, 0xF8, 0x07, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0x03, 0x0F, 0xF0, 0xFF, 0xFF, 0xE0, 0x01, 0x0F, 0xF0, 0xFF, 0xFF, 0xC1, 0xE0, 0x0F, 0xF0, 0xFF, 0xFF, 0x83, 0xF0, 0x0F, 0xF0, 0xFF, 0xFF, 0x07, 0xF8, 0x0F, 0xF0, 0xFF, 0xFE, 0x0F, 0xFC, 0x0F, 0xF0, 0xFF, 0xFC, 0x1F, 0xFE, 0x0F, 0xF0, 0xFF, 0xF8, 0x3F, 0xFF, 0x0F, 0xF0, 0xFF, 0xF0, 0x7F, 0xFF, 0x0F, 0xF0, 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xC1, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0x83, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0x07, 0xFF, 0xFF, 0x0F, 0xF0, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0xF0, 0xFC, 0x1F, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x3F, 0xFF, 0xFF, 0x0F, 0xF0, 0x70, 0x7F, 0xFF, 0xFE, 0x0F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_image_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F,
0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x7F, 0xFF, 0xFF, 0xFE, 0x0F,
0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F,
0xF0, 0xFF, 0x0F, 0xFF, 0xFF, 0x0F, 0xF0, 0xFC, 0x03, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x01, 0xFF, 0xFF, 0x0F,
0xF0, 0xF8, 0x01, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0x60, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F,
0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0xF0, 0xF0, 0x60, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x01, 0xFF, 0xFF, 0x0F,
0xF0, 0xF8, 0x01, 0xFC, 0x0F, 0x0F, 0xF0, 0xFC, 0x03, 0xF8, 0x07, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0x03, 0x0F,
0xF0, 0xFF, 0xFF, 0xE0, 0x01, 0x0F, 0xF0, 0xFF, 0xFF, 0xC1, 0xE0, 0x0F, 0xF0, 0xFF, 0xFF, 0x83, 0xF0, 0x0F,
0xF0, 0xFF, 0xFF, 0x07, 0xF8, 0x0F, 0xF0, 0xFF, 0xFE, 0x0F, 0xFC, 0x0F, 0xF0, 0xFF, 0xFC, 0x1F, 0xFE, 0x0F,
0xF0, 0xFF, 0xF8, 0x3F, 0xFF, 0x0F, 0xF0, 0xFF, 0xF0, 0x7F, 0xFF, 0x0F, 0xF0, 0xFF, 0xE0, 0xFF, 0xFF, 0x0F,
0xF0, 0xFF, 0xC1, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0x83, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0x07, 0xFF, 0xFF, 0x0F,
0xF0, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0xF0, 0xFC, 0x1F, 0xFF, 0xFF, 0x0F, 0xF0, 0xF8, 0x3F, 0xFF, 0xFF, 0x0F,
0xF0, 0x70, 0x7F, 0xFF, 0xFE, 0x0F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x1F,
0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_image_48 = {48, 48, 24, icon_image_48_bits};
// book (lucide: book)
static const uint8_t icon_book_24_bits[] = {0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_book_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7,
0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7,
0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x07,
0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_book_24 = {24, 24, 12, icon_book_24_bits};
static const uint8_t icon_book_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_book_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF,
0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF,
0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1,
0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F,
0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00,
0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00,
0x00, 0x0F, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_book_32 = {32, 32, 17, icon_book_32_bits};
static const uint8_t icon_book_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_book_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00,
0x1F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF,
0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF,
0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8,
0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F,
0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF,
0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF,
0xFF, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x7F,
0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0x1F, 0xF8,
0x7F, 0xFF, 0xFF, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, 0x3F,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_book_40 = {40, 40, 21, icon_book_40_bits};
static const uint8_t icon_book_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x1F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x20, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFE, 0x1F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_book_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0xFF,
0xFF, 0x80, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F,
0xFE, 0x1F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x20, 0x00, 0x00, 0x00, 0x3F,
0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F,
0xFC, 0x1F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFE, 0x1F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x7F,
0xFF, 0xE0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_book_48 = {48, 48, 25, icon_book_48_bits};
// file (lucide: file)
static const uint8_t icon_file_24_bits[] = {0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xE7, 0xF8, 0x3F, 0xE7, 0xF9, 0x1F, 0xE7, 0xF9, 0x8F, 0xE7, 0xF9, 0xC7, 0xE7, 0xF8, 0x07, 0xE7, 0xFC, 0x07, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_file_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xE7, 0xF8, 0x3F, 0xE7, 0xF9, 0x1F, 0xE7, 0xF9, 0x8F,
0xE7, 0xF9, 0xC7, 0xE7, 0xF8, 0x07, 0xE7, 0xFC, 0x07, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7,
0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7,
0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_file_24 = {24, 24, 11, icon_file_24_bits};
static const uint8_t icon_file_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xF1, 0xFF, 0x80, 0xFF, 0xF1, 0xFF, 0x88, 0x7F, 0xF1, 0xFF, 0x8C, 0x3F, 0xF1, 0xFF, 0x8E, 0x1F, 0xF1, 0xFF, 0x8F, 0x1F, 0xF1, 0xFF, 0x80, 0x0F, 0xF1, 0xFF, 0xC0, 0x0F, 0xF1, 0xFF, 0xE0, 0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_file_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xF1, 0xFF, 0x80,
0xFF, 0xF1, 0xFF, 0x88, 0x7F, 0xF1, 0xFF, 0x8C, 0x3F, 0xF1, 0xFF, 0x8E, 0x1F, 0xF1, 0xFF, 0x8F, 0x1F, 0xF1, 0xFF,
0x80, 0x0F, 0xF1, 0xFF, 0xC0, 0x0F, 0xF1, 0xFF, 0xE0, 0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1,
0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F,
0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF,
0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0x8F, 0xF8, 0x00,
0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_file_32 = {32, 32, 15, icon_file_32_bits};
static const uint8_t icon_file_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x7F, 0xFC, 0x07, 0xFF, 0xF8, 0xFF, 0xFC, 0x43, 0xFF, 0xF8, 0xFF, 0xFC, 0x61, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0xFF, 0xF8, 0xFF, 0xFC, 0x78, 0x7F, 0xF8, 0xFF, 0xFC, 0x7C, 0x3F, 0xF8, 0xFF, 0xFC, 0x7E, 0x1F, 0xF8, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0xFF, 0xFE, 0x00, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFE, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_file_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x00, 0x1F,
0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x7F, 0xFC, 0x07, 0xFF, 0xF8, 0xFF, 0xFC, 0x43, 0xFF, 0xF8, 0xFF, 0xFC,
0x61, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0xFF, 0xF8, 0xFF, 0xFC, 0x78, 0x7F, 0xF8, 0xFF, 0xFC, 0x7C, 0x3F, 0xF8, 0xFF,
0xFC, 0x7E, 0x1F, 0xF8, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0xFF, 0xFE, 0x00, 0x1F, 0xF8,
0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F,
0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF,
0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF,
0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF,
0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8,
0x7F, 0xFF, 0xFE, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_file_40 = {40, 40, 19, icon_file_40_bits};
static const uint8_t icon_file_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC2, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0x83, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xF0, 0x7F, 0xFC, 0x3F, 0xFF, 0xC3, 0xF8, 0x7F, 0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xE0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xF0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_file_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x03, 0xFF, 0xFF,
0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x3F, 0xFF,
0xFC, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC2, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0x07, 0xFF,
0xFC, 0x3F, 0xFF, 0xC3, 0x83, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC3, 0xE0, 0xFF,
0xFC, 0x3F, 0xFF, 0xC3, 0xF0, 0x7F, 0xFC, 0x3F, 0xFF, 0xC3, 0xF8, 0x7F, 0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F,
0xFC, 0x3F, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xE0, 0x00, 0x3F, 0xFC, 0x3F, 0xFF, 0xF0, 0x00, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F,
0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF,
0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_file_48 = {48, 48, 23, icon_file_48_bits};
// settings (lucide: settings)
static const uint8_t icon_settings_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x99, 0xFF, 0xFF, 0x99, 0xFF, 0xF0, 0x3C, 0x0F, 0xE0, 0x7E, 0x07, 0xCF, 0xFF, 0xF3, 0xCF, 0xC3, 0xF3, 0xC7, 0x81, 0xE3, 0xE3, 0x18, 0xC7, 0xF3, 0x3C, 0xCF, 0xF3, 0x3C, 0xCF, 0xE3, 0x18, 0xC7, 0xC7, 0x81, 0xE3, 0xCF, 0xC3, 0xF3, 0xCF, 0xFF, 0xF3, 0xE0, 0x7E, 0x07, 0xF0, 0x3C, 0x0F, 0xFF, 0x99, 0xFF, 0xFF, 0x99, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_settings_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x99, 0xFF, 0xFF, 0x99, 0xFF, 0xF0, 0x3C, 0x0F,
0xE0, 0x7E, 0x07, 0xCF, 0xFF, 0xF3, 0xCF, 0xC3, 0xF3, 0xC7, 0x81, 0xE3, 0xE3, 0x18, 0xC7, 0xF3, 0x3C, 0xCF,
0xF3, 0x3C, 0xCF, 0xE3, 0x18, 0xC7, 0xC7, 0x81, 0xE3, 0xCF, 0xC3, 0xF3, 0xCF, 0xFF, 0xF3, 0xE0, 0x7E, 0x07,
0xF0, 0x3C, 0x0F, 0xFF, 0x99, 0xFF, 0xFF, 0x99, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_settings_24 = {24, 24, 11, icon_settings_24_bits};
static const uint8_t icon_settings_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF3, 0xCF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xE3, 0x9F, 0xF9, 0xC7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xF8, 0x1F, 0xE7, 0xE3, 0xF0, 0x0F, 0xC7, 0xF1, 0xE1, 0x87, 0x8F, 0xF8, 0xE3, 0xC7, 0x1F, 0xF8, 0xE7, 0xE7, 0x1F, 0xF8, 0xE7, 0xE7, 0x1F, 0xF8, 0xE3, 0xC7, 0x1F, 0xF1, 0xE1, 0x87, 0x8F, 0xE3, 0xF0, 0x0F, 0xC7, 0xE7, 0xF8, 0x1F, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE3, 0x9F, 0xF9, 0xC7, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x03, 0xC0, 0x1F, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xF3, 0xCF, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_settings_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF1, 0x8F,
0xFF, 0xFF, 0xF3, 0xCF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xE3, 0x9F,
0xF9, 0xC7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE7, 0xF8, 0x1F, 0xE7, 0xE3, 0xF0, 0x0F, 0xC7, 0xF1, 0xE1, 0x87, 0x8F, 0xF8,
0xE3, 0xC7, 0x1F, 0xF8, 0xE7, 0xE7, 0x1F, 0xF8, 0xE7, 0xE7, 0x1F, 0xF8, 0xE3, 0xC7, 0x1F, 0xF1, 0xE1, 0x87, 0x8F,
0xE3, 0xF0, 0x0F, 0xC7, 0xE7, 0xF8, 0x1F, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7, 0xE3, 0x9F, 0xF9, 0xC7, 0xF0, 0x07, 0xE0,
0x0F, 0xF0, 0x03, 0xC0, 0x1F, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xF3, 0xCF, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF0,
0x0F, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_settings_32 = {32, 32, 15, icon_settings_32_bits};
static const uint8_t icon_settings_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xFE, 0x18, 0x7F, 0xFF, 0xFF, 0xFE, 0x3C, 0x7F, 0xFF, 0xFF, 0xFC, 0x3C, 0x3F, 0xFF, 0xFE, 0x18, 0x7E, 0x18, 0x7F, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xF0, 0xC1, 0xFF, 0x83, 0x0F, 0xF1, 0xFF, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xE7, 0xFF, 0x8F, 0xF1, 0xFF, 0x00, 0xFF, 0x8F, 0xF0, 0xFE, 0x00, 0x7F, 0x0F, 0xF0, 0x7C, 0x00, 0x3E, 0x0F, 0xF8, 0x7C, 0x3C, 0x3E, 0x1F, 0xFC, 0x3C, 0x7E, 0x3C, 0x3F, 0xFE, 0x38, 0x7E, 0x1C, 0x7F, 0xFE, 0x38, 0x7E, 0x1C, 0x7F, 0xFC, 0x3C, 0x7E, 0x3C, 0x3F, 0xF8, 0x7C, 0x3C, 0x3E, 0x1F, 0xF0, 0x7C, 0x00, 0x3E, 0x0F, 0xF0, 0xFE, 0x00, 0x7F, 0x0F, 0xF1, 0xFF, 0x00, 0xFF, 0x8F, 0xF1, 0xFF, 0xE7, 0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0xFF, 0x8F, 0xF0, 0xC1, 0xFF, 0x83, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0xFE, 0x18, 0x7E, 0x18, 0x7F, 0xFF, 0xFC, 0x3C, 0x3F, 0xFF, 0xFF, 0xFE, 0x3C, 0x7F, 0xFF, 0xFF, 0xFE, 0x18, 0x7F, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_settings_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF,
0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xFE, 0x18, 0x7F, 0xFF, 0xFF, 0xFE, 0x3C, 0x7F, 0xFF, 0xFF, 0xFC, 0x3C,
0x3F, 0xFF, 0xFE, 0x18, 0x7E, 0x18, 0x7F, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xF0, 0xC1,
0xFF, 0x83, 0x0F, 0xF1, 0xFF, 0xFF, 0xFF, 0x8F, 0xF1, 0xFF, 0xE7, 0xFF, 0x8F, 0xF1, 0xFF, 0x00, 0xFF, 0x8F, 0xF0,
0xFE, 0x00, 0x7F, 0x0F, 0xF0, 0x7C, 0x00, 0x3E, 0x0F, 0xF8, 0x7C, 0x3C, 0x3E, 0x1F, 0xFC, 0x3C, 0x7E, 0x3C, 0x3F,
0xFE, 0x38, 0x7E, 0x1C, 0x7F, 0xFE, 0x38, 0x7E, 0x1C, 0x7F, 0xFC, 0x3C, 0x7E, 0x3C, 0x3F, 0xF8, 0x7C, 0x3C, 0x3E,
0x1F, 0xF0, 0x7C, 0x00, 0x3E, 0x0F, 0xF0, 0xFE, 0x00, 0x7F, 0x0F, 0xF1, 0xFF, 0x00, 0xFF, 0x8F, 0xF1, 0xFF, 0xE7,
0xFF, 0x8F, 0xF1, 0xFF, 0xFF, 0xFF, 0x8F, 0xF0, 0xC1, 0xFF, 0x83, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xF8, 0x00,
0x7E, 0x00, 0x1F, 0xFE, 0x18, 0x7E, 0x18, 0x7F, 0xFF, 0xFC, 0x3C, 0x3F, 0xFF, 0xFF, 0xFE, 0x3C, 0x7F, 0xFF, 0xFF,
0xFE, 0x18, 0x7F, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_settings_40 = {40, 40, 20, icon_settings_40_bits};
static const uint8_t icon_settings_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0x02, 0x07, 0xE0, 0x40, 0xFF, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xF0, 0x7F, 0xFF, 0xFF, 0xFE, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x0F, 0xF0, 0xFF, 0xE0, 0x07, 0xFF, 0x0F, 0xF8, 0x7F, 0xC0, 0x03, 0xFE, 0x1F, 0xF8, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0xFC, 0x1F, 0x83, 0xC1, 0xF8, 0x3F, 0xFE, 0x1F, 0x87, 0xE1, 0xF8, 0x7F, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFE, 0x1F, 0x87, 0xE1, 0xF8, 0x7F, 0xFC, 0x1F, 0x83, 0xC1, 0xF8, 0x3F, 0xF8, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0xF8, 0x7F, 0xC0, 0x03, 0xFE, 0x1F, 0xF0, 0xFF, 0xE0, 0x07, 0xFF, 0x0F, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0x7F, 0xFF, 0xFF, 0xFE, 0x0F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xFF, 0x02, 0x07, 0xE0, 0x40, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_settings_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF,
0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF,
0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF,
0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0x02, 0x07, 0xE0, 0x40, 0xFF, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F,
0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xF0, 0x7F, 0xFF, 0xFF, 0xFE, 0x0F,
0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x0F, 0xF0, 0xFF, 0xE0, 0x07, 0xFF, 0x0F,
0xF8, 0x7F, 0xC0, 0x03, 0xFE, 0x1F, 0xF8, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0xFC, 0x1F, 0x83, 0xC1, 0xF8, 0x3F,
0xFE, 0x1F, 0x87, 0xE1, 0xF8, 0x7F, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF,
0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFF, 0x0F, 0x0F, 0xF0, 0xF0, 0xFF, 0xFE, 0x1F, 0x87, 0xE1, 0xF8, 0x7F,
0xFC, 0x1F, 0x83, 0xC1, 0xF8, 0x3F, 0xF8, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0xF8, 0x7F, 0xC0, 0x03, 0xFE, 0x1F,
0xF0, 0xFF, 0xE0, 0x07, 0xFF, 0x0F, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F,
0xF0, 0x7F, 0xFF, 0xFF, 0xFE, 0x0F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F,
0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xFF, 0x02, 0x07, 0xE0, 0x40, 0xFF, 0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF,
0xFF, 0xFF, 0x87, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF,
0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_settings_48 = {48, 48, 24, icon_settings_48_bits};
// transfer (lucide: send-horizontal)
static const uint8_t icon_transfer_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xE6, 0x1F, 0xFF, 0xE7, 0x87, 0xFF, 0xE7, 0xE1, 0xFF, 0xF3, 0xF8, 0x7F, 0xF3, 0xFE, 0x0F, 0xF9, 0xFF, 0x83, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF9, 0xFF, 0x83, 0xF3, 0xFE, 0x0F, 0xF3, 0xF8, 0x7F, 0xE7, 0xE1, 0xFF, 0xE7, 0x87, 0xFF, 0xE6, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0xC1, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_transfer_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xE6, 0x1F, 0xFF,
0xE7, 0x87, 0xFF, 0xE7, 0xE1, 0xFF, 0xF3, 0xF8, 0x7F, 0xF3, 0xFE, 0x0F, 0xF9, 0xFF, 0x83, 0xF8, 0x00, 0x01,
0xF8, 0x00, 0x01, 0xF9, 0xFF, 0x83, 0xF3, 0xFE, 0x0F, 0xF3, 0xF8, 0x7F, 0xE7, 0xE1, 0xFF, 0xE7, 0x87, 0xFF,
0xE6, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0xC1, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_transfer_24 = {24, 24, 12, icon_transfer_24_bits};
static const uint8_t icon_transfer_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE2, 0x07, 0xFF, 0xFF, 0xF3, 0x81, 0xFF, 0xFF, 0xF1, 0xE0, 0x7F, 0xFF, 0xF1, 0xFC, 0x1F, 0xFF, 0xF9, 0xFF, 0x03, 0xFF, 0xF8, 0xFF, 0xC0, 0xFF, 0xFC, 0xFF, 0xF0, 0x3F, 0xFC, 0x7F, 0xFC, 0x0F, 0xFC, 0x7F, 0xFF, 0x03, 0xFE, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x01, 0xFC, 0x7F, 0xFF, 0x03, 0xFC, 0x7F, 0xFC, 0x0F, 0xFC, 0xFF, 0xF0, 0x3F, 0xF8, 0xFF, 0xC0, 0xFF, 0xF9, 0xFF, 0x03, 0xFF, 0xF1, 0xFC, 0x1F, 0xFF, 0xF1, 0xE0, 0x7F, 0xFF, 0xF3, 0x81, 0xFF, 0xFF, 0xE2, 0x07, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_transfer_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF,
0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE2, 0x07, 0xFF, 0xFF, 0xF3, 0x81, 0xFF, 0xFF, 0xF1, 0xE0, 0x7F, 0xFF, 0xF1, 0xFC,
0x1F, 0xFF, 0xF9, 0xFF, 0x03, 0xFF, 0xF8, 0xFF, 0xC0, 0xFF, 0xFC, 0xFF, 0xF0, 0x3F, 0xFC, 0x7F, 0xFC, 0x0F, 0xFC,
0x7F, 0xFF, 0x03, 0xFE, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x01, 0xFC, 0x7F, 0xFF, 0x03, 0xFC, 0x7F, 0xFC, 0x0F,
0xFC, 0xFF, 0xF0, 0x3F, 0xF8, 0xFF, 0xC0, 0xFF, 0xF9, 0xFF, 0x03, 0xFF, 0xF1, 0xFC, 0x1F, 0xFF, 0xF1, 0xE0, 0x7F,
0xFF, 0xF3, 0x81, 0xFF, 0xFF, 0xE2, 0x07, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xE1, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_transfer_32 = {32, 32, 16, icon_transfer_32_bits};
static const uint8_t icon_transfer_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xF0, 0xC0, 0x7F, 0xFF, 0xFF, 0xF8, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0xFC, 0x07, 0xFF, 0xFF, 0xF8, 0x7F, 0x00, 0xFF, 0xFF, 0xFC, 0x7F, 0xC0, 0x3F, 0xFF, 0xFC, 0x3F, 0xF0, 0x0F, 0xFF, 0xFC, 0x3F, 0xFE, 0x03, 0xFF, 0xFE, 0x3F, 0xFF, 0x80, 0xFF, 0xFE, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x1F, 0xFF, 0xF8, 0x0F, 0xFE, 0x1F, 0xFF, 0xE0, 0x3F, 0xFE, 0x3F, 0xFF, 0x80, 0xFF, 0xFC, 0x3F, 0xFE, 0x03, 0xFF, 0xFC, 0x3F, 0xF0, 0x0F, 0xFF, 0xFC, 0x7F, 0xC0, 0x3F, 0xFF, 0xF8, 0x7F, 0x00, 0xFF, 0xFF, 0xF8, 0xFC, 0x07, 0xFF, 0xFF, 0xF8, 0xF0, 0x1F, 0xFF, 0xFF, 0xF0, 0xC0, 0x7F, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_transfer_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF,
0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, 0xFF,
0xFF, 0xFF, 0xF0, 0xC0, 0x7F, 0xFF, 0xFF, 0xF8, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0xFC, 0x07, 0xFF, 0xFF, 0xF8, 0x7F,
0x00, 0xFF, 0xFF, 0xFC, 0x7F, 0xC0, 0x3F, 0xFF, 0xFC, 0x3F, 0xF0, 0x0F, 0xFF, 0xFC, 0x3F, 0xFE, 0x03, 0xFF, 0xFE,
0x3F, 0xFF, 0x80, 0xFF, 0xFE, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, 0x00, 0x00, 0x00, 0x03,
0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x1F, 0xFF, 0xF8,
0x0F, 0xFE, 0x1F, 0xFF, 0xE0, 0x3F, 0xFE, 0x3F, 0xFF, 0x80, 0xFF, 0xFC, 0x3F, 0xFE, 0x03, 0xFF, 0xFC, 0x3F, 0xF0,
0x0F, 0xFF, 0xFC, 0x7F, 0xC0, 0x3F, 0xFF, 0xF8, 0x7F, 0x00, 0xFF, 0xFF, 0xF8, 0xFC, 0x07, 0xFF, 0xFF, 0xF8, 0xF0,
0x1F, 0xFF, 0xFF, 0xF0, 0xC0, 0x7F, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xF0,
0x1F, 0xFF, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_transfer_40 = {40, 40, 19, icon_transfer_40_bits};
static const uint8_t icon_transfer_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xF8, 0x40, 0x1F, 0xFF, 0xFF, 0xFF, 0xF8, 0x70, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0x3C, 0x01, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0x80, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xE0, 0x0F, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x03, 0xFF, 0xFF, 0xFE, 0x1F, 0xFE, 0x00, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0x87, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0xFE, 0x1F, 0xFE, 0x00, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x03, 0xFF, 0xFF, 0xFC, 0x3F, 0xE0, 0x0F, 0xFF, 0xFF, 0xFC, 0x3F, 0x80, 0x3F, 0xFF, 0xFF, 0xFC, 0x3C, 0x01, 0xFF, 0xFF, 0xFF, 0xF8, 0x70, 0x07, 0xFF, 0xFF, 0xFF, 0xF8, 0x40, 0x1F, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_transfer_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF,
0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xFF, 0xFF,
0xF8, 0x40, 0x1F, 0xFF, 0xFF, 0xFF, 0xF8, 0x70, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0x3C, 0x01, 0xFF, 0xFF, 0xFF,
0xFC, 0x3F, 0x80, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xE0, 0x0F, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x03, 0xFF, 0xFF,
0xFE, 0x1F, 0xFE, 0x00, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF,
0xFF, 0x0F, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0x3F,
0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03,
0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x0F,
0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0x87, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, 0x03, 0xFF,
0xFF, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0xFE, 0x1F, 0xFE, 0x00, 0xFF, 0xFF,
0xFE, 0x1F, 0xF8, 0x03, 0xFF, 0xFF, 0xFC, 0x3F, 0xE0, 0x0F, 0xFF, 0xFF, 0xFC, 0x3F, 0x80, 0x3F, 0xFF, 0xFF,
0xFC, 0x3C, 0x01, 0xFF, 0xFF, 0xFF, 0xF8, 0x70, 0x07, 0xFF, 0xFF, 0xFF, 0xF8, 0x40, 0x1F, 0xFF, 0xFF, 0xFF,
0xF0, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF,
0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_transfer_48 = {48, 48, 24, icon_transfer_48_bits};
// library (lucide: library)
static const uint8_t icon_library_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xE6, 0x7F, 0xE7, 0xE6, 0x7F, 0xE6, 0x66, 0x7F, 0xE6, 0x67, 0x3F, 0xE6, 0x67, 0x3F, 0xE6, 0x67, 0x3F, 0xE6, 0x67, 0x9F, 0xE6, 0x67, 0x9F, 0xE6, 0x67, 0x9F, 0xE6, 0x67, 0x9F, 0xE6, 0x67, 0xCF, 0xE6, 0x67, 0xCF, 0xE6, 0x67, 0xCF, 0xE6, 0x67, 0xE7, 0xE6, 0x67, 0xE7, 0xE6, 0x67, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_library_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xE6, 0x7F,
0xE7, 0xE6, 0x7F, 0xE6, 0x66, 0x7F, 0xE6, 0x67, 0x3F, 0xE6, 0x67, 0x3F, 0xE6, 0x67, 0x3F, 0xE6, 0x67, 0x9F,
0xE6, 0x67, 0x9F, 0xE6, 0x67, 0x9F, 0xE6, 0x67, 0x9F, 0xE6, 0x67, 0xCF, 0xE6, 0x67, 0xCF, 0xE6, 0x67, 0xCF,
0xE6, 0x67, 0xE7, 0xE6, 0x67, 0xE7, 0xE6, 0x67, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_library_24 = {24, 24, 12, icon_library_24_bits};
static const uint8_t icon_library_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xFF, 0xF1, 0xFE, 0x73, 0xFF, 0xF1, 0xFE, 0x71, 0xFF, 0xF1, 0xDE, 0x71, 0xFF, 0xF1, 0x8E, 0x79, 0xFF, 0xF1, 0x8E, 0x78, 0xFF, 0xF1, 0x8E, 0x78, 0xFF, 0xF1, 0x8E, 0x7C, 0xFF, 0xF1, 0x8E, 0x7C, 0x7F, 0xF1, 0x8E, 0x7C, 0x7F, 0xF1, 0x8E, 0x7C, 0x7F, 0xF1, 0x8E, 0x7E, 0x7F, 0xF1, 0x8E, 0x7E, 0x3F, 0xF1, 0x8E, 0x7E, 0x3F, 0xF1, 0x8E, 0x7F, 0x3F, 0xF1, 0x8E, 0x7F, 0x1F, 0xF1, 0x8E, 0x7F, 0x1F, 0xF1, 0x8E, 0x7F, 0x1F, 0xF1, 0x8E, 0x7F, 0x9F, 0xF1, 0x8E, 0x7F, 0x8F, 0xF1, 0x8E, 0x7F, 0x8F, 0xF3, 0xCE, 0x7F, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_library_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF,
0xFF, 0xF1, 0xFF, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xFF, 0xF1, 0xFE, 0x73, 0xFF, 0xF1, 0xFE, 0x71, 0xFF, 0xF1, 0xDE,
0x71, 0xFF, 0xF1, 0x8E, 0x79, 0xFF, 0xF1, 0x8E, 0x78, 0xFF, 0xF1, 0x8E, 0x78, 0xFF, 0xF1, 0x8E, 0x7C, 0xFF, 0xF1,
0x8E, 0x7C, 0x7F, 0xF1, 0x8E, 0x7C, 0x7F, 0xF1, 0x8E, 0x7C, 0x7F, 0xF1, 0x8E, 0x7E, 0x7F, 0xF1, 0x8E, 0x7E, 0x3F,
0xF1, 0x8E, 0x7E, 0x3F, 0xF1, 0x8E, 0x7F, 0x3F, 0xF1, 0x8E, 0x7F, 0x1F, 0xF1, 0x8E, 0x7F, 0x1F, 0xF1, 0x8E, 0x7F,
0x1F, 0xF1, 0x8E, 0x7F, 0x9F, 0xF1, 0x8E, 0x7F, 0x8F, 0xF1, 0x8E, 0x7F, 0x8F, 0xF3, 0xCE, 0x7F, 0xCF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_library_32 = {32, 32, 17, icon_library_32_bits};
static const uint8_t icon_library_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xDF, 0xFF, 0xF8, 0xFF, 0xE7, 0x8F, 0xFF, 0xF8, 0xFF, 0xC3, 0x8F, 0xFF, 0xF8, 0xFF, 0xC3, 0x87, 0xFF, 0xF8, 0xF1, 0xC3, 0xC7, 0xFF, 0xF8, 0xF1, 0xC3, 0xC7, 0xFF, 0xF8, 0xF1, 0xC3, 0xC3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE1, 0xFF, 0xF8, 0xF1, 0xC3, 0xF1, 0xFF, 0xF8, 0xF1, 0xC3, 0xF1, 0xFF, 0xF8, 0xF1, 0xC3, 0xF0, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0x7F, 0xF8, 0xF1, 0xC3, 0xFC, 0x7F, 0xF8, 0xF1, 0xC3, 0xFC, 0x7F, 0xF8, 0xF1, 0xC3, 0xFC, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x1F, 0xF8, 0xF1, 0xC3, 0xFF, 0x1F, 0xFC, 0xF3, 0xE7, 0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_library_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF,
0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xDF, 0xFF, 0xF8, 0xFF, 0xE7, 0x8F, 0xFF, 0xF8, 0xFF, 0xC3, 0x8F, 0xFF, 0xF8, 0xFF,
0xC3, 0x87, 0xFF, 0xF8, 0xF1, 0xC3, 0xC7, 0xFF, 0xF8, 0xF1, 0xC3, 0xC7, 0xFF, 0xF8, 0xF1, 0xC3, 0xC3, 0xFF, 0xF8,
0xF1, 0xC3, 0xE3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE3, 0xFF, 0xF8, 0xF1, 0xC3, 0xE1, 0xFF,
0xF8, 0xF1, 0xC3, 0xF1, 0xFF, 0xF8, 0xF1, 0xC3, 0xF1, 0xFF, 0xF8, 0xF1, 0xC3, 0xF0, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8,
0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0xFF, 0xF8, 0xF1, 0xC3, 0xF8, 0x7F, 0xF8, 0xF1, 0xC3,
0xFC, 0x7F, 0xF8, 0xF1, 0xC3, 0xFC, 0x7F, 0xF8, 0xF1, 0xC3, 0xFC, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x3F, 0xF8, 0xF1,
0xC3, 0xFE, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x3F, 0xF8, 0xF1, 0xC3, 0xFE, 0x1F, 0xF8, 0xF1, 0xC3, 0xFF, 0x1F, 0xFC,
0xF3, 0xE7, 0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_library_40 = {40, 40, 21, icon_library_40_bits};
static const uint8_t icon_library_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFE, 0x7E, 0x7F, 0xFF, 0xFC, 0x3F, 0xFC, 0x3C, 0x3F, 0xFF, 0xFC, 0x3F, 0xFC, 0x3C, 0x3F, 0xFF, 0xFC, 0x3F, 0xFC, 0x3C, 0x3F, 0xFF, 0xFC, 0x3E, 0x7C, 0x3E, 0x1F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3E, 0x1F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3E, 0x1F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x87, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x87, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x87, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xE1, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xE1, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xE1, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF8, 0x7F, 0xFC, 0x3C, 0x3C, 0x3F, 0xF8, 0x7F, 0xFC, 0x3C, 0x3C, 0x3F, 0xF8, 0x7F, 0xFC, 0x3C, 0x3C, 0x3F, 0xFC, 0x3F, 0xFC, 0x3C, 0x3C, 0x3F, 0xFC, 0x3F, 0xFC, 0x3C, 0x3C, 0x3F, 0xFC, 0x3F, 0xFE, 0x7E, 0x7E, 0x7F, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_library_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF,
0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFE, 0x7E, 0x7F, 0xFF, 0xFC, 0x3F, 0xFC, 0x3C, 0x3F, 0xFF,
0xFC, 0x3F, 0xFC, 0x3C, 0x3F, 0xFF, 0xFC, 0x3F, 0xFC, 0x3C, 0x3F, 0xFF, 0xFC, 0x3E, 0x7C, 0x3E, 0x1F, 0xFF,
0xFC, 0x3C, 0x3C, 0x3E, 0x1F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3E, 0x1F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF,
0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x0F, 0xFF,
0xFC, 0x3C, 0x3C, 0x3F, 0x87, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x87, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0x87, 0xFF,
0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF,
0xFC, 0x3C, 0x3C, 0x3F, 0xC3, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xE1, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xE1, 0xFF,
0xFC, 0x3C, 0x3C, 0x3F, 0xE1, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF,
0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF0, 0xFF, 0xFC, 0x3C, 0x3C, 0x3F, 0xF8, 0x7F,
0xFC, 0x3C, 0x3C, 0x3F, 0xF8, 0x7F, 0xFC, 0x3C, 0x3C, 0x3F, 0xF8, 0x7F, 0xFC, 0x3C, 0x3C, 0x3F, 0xFC, 0x3F,
0xFC, 0x3C, 0x3C, 0x3F, 0xFC, 0x3F, 0xFC, 0x3C, 0x3C, 0x3F, 0xFC, 0x3F, 0xFE, 0x7E, 0x7E, 0x7F, 0xFE, 0x7F,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_library_48 = {48, 48, 25, icon_library_48_bits};
// wifi (lucide: wifi)
static const uint8_t icon_wifi_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0xF0, 0xFF, 0x0F, 0xC3, 0xFF, 0xC3, 0x8F, 0xFF, 0xF1, 0x9F, 0x81, 0xF9, 0xFE, 0x00, 0x7F, 0xF8, 0x7E, 0x1F, 0xF1, 0xFF, 0x8F, 0xF3, 0xFF, 0xCF, 0xFF, 0xC3, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x3C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_wifi_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFC, 0x00, 0x1F,
0xF0, 0xFF, 0x0F, 0xC3, 0xFF, 0xC3, 0x8F, 0xFF, 0xF1, 0x9F, 0x81, 0xF9, 0xFE, 0x00, 0x7F, 0xF8, 0x7E, 0x1F,
0xF1, 0xFF, 0x8F, 0xF3, 0xFF, 0xCF, 0xFF, 0xC3, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x3C, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_wifi_24 = {24, 24, 10, icon_wifi_24_bits};
static const uint8_t icon_wifi_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0x7F, 0xF8, 0x1F, 0xF8, 0x1F, 0xE0, 0x7F, 0xFE, 0x07, 0xC1, 0xFF, 0xFF, 0x83, 0x87, 0xFF, 0xFF, 0xE1, 0xCF, 0xF8, 0x1F, 0xF3, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x1F, 0xF8, 0x7F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xC7, 0xE3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_wifi_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0x7F, 0xF8, 0x1F, 0xF8, 0x1F, 0xE0, 0x7F,
0xFE, 0x07, 0xC1, 0xFF, 0xFF, 0x83, 0x87, 0xFF, 0xFF, 0xE1, 0xCF, 0xF8, 0x1F, 0xF3, 0xFF, 0xC0, 0x03, 0xFF, 0xFF,
0x00, 0x00, 0xFF, 0xFE, 0x1F, 0xF8, 0x7F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xC7, 0xE3, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_wifi_32 = {32, 32, 13, icon_wifi_32_bits};
static const uint8_t icon_wifi_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0x80, 0x3F, 0xF8, 0x0F, 0xFF, 0xF0, 0x1F, 0xE0, 0x7F, 0xFF, 0xFE, 0x07, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC3, 0xFF, 0xFF, 0xFF, 0xC3, 0xC7, 0xFF, 0x00, 0xFF, 0xE3, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0x80, 0x7E, 0x01, 0xFF, 0xFF, 0x03, 0xFF, 0xC0, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, 0x7F, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xF8, 0x7E, 0x1F, 0xFF, 0xFF, 0xF9, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_wifi_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00,
0x3F, 0xFF, 0xFF, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0x80, 0x3F, 0xF8, 0x0F,
0xFF, 0xF0, 0x1F, 0xE0, 0x7F, 0xFF, 0xFE, 0x07, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC3, 0xFF, 0xFF, 0xFF, 0xC3, 0xC7,
0xFF, 0x00, 0xFF, 0xE3, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0x80, 0x7E, 0x01, 0xFF,
0xFF, 0x03, 0xFF, 0xC0, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, 0x7F, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC,
0x7F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xF8, 0x00,
0x1F, 0xFF, 0xFF, 0xF8, 0x7E, 0x1F, 0xFF, 0xFF, 0xF9, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFF,
0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_wifi_40 = {40, 40, 16, icon_wifi_40_bits};
static const uint8_t icon_wifi_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x3F, 0xF8, 0x0F, 0xFF, 0xFF, 0xF0, 0x1F, 0xF0, 0x3F, 0xFF, 0xFF, 0xFC, 0x0F, 0xC0, 0x7F, 0xFF, 0xFF, 0xFE, 0x03, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xC3, 0xFF, 0xF0, 0x0F, 0xFF, 0xC3, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xF0, 0x07, 0xFF, 0xFF, 0xC0, 0x7F, 0xFE, 0x03, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, 0xE0, 0x7F, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_wifi_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF,
0xFF, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF,
0xFF, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x3F, 0xF8, 0x0F, 0xFF, 0xFF, 0xF0, 0x1F,
0xF0, 0x3F, 0xFF, 0xFF, 0xFC, 0x0F, 0xC0, 0x7F, 0xFF, 0xFF, 0xFE, 0x03, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83,
0xC3, 0xFF, 0xF0, 0x0F, 0xFF, 0xC3, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x3F, 0xFF,
0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xF0, 0x07, 0xFF, 0xFF, 0xC0, 0x7F, 0xFE, 0x03, 0xFF,
0xFF, 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x9F, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF,
0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, 0xE0, 0x7F, 0xFF,
0xFF, 0xFE, 0x1F, 0xF8, 0x7F, 0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_wifi_48 = {48, 48, 20, icon_wifi_48_bits};
// hotspot (lucide: router)
static const uint8_t icon_hotspot_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x8F, 0xC7, 0xFF, 0x1F, 0xE3, 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x3F, 0xFF, 0xE7, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x03, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x99, 0x9F, 0xF9, 0x99, 0x9F, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_hotspot_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x8F, 0xC7, 0xFF, 0x1F, 0xE3, 0xFF, 0xF8, 0x7F,
0xFF, 0xF0, 0x3F, 0xFF, 0xE7, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF,
0xFF, 0xFC, 0xFF, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x03, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0x99, 0x9F, 0xF9,
0x99, 0x9F, 0xF9, 0x9F, 0xFF, 0xF9, 0x9F, 0xFF, 0xF9, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_hotspot_24 = {24, 24, 13, icon_hotspot_24_bits};
static const uint8_t icon_hotspot_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0xF0, 0x7E, 0x0F, 0xFF, 0xE1, 0xFF, 0x87, 0xFF, 0xE3, 0xFF, 0xC7, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, 0x18, 0x7F, 0xFF, 0xFE, 0x7E, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x03, 0xCF, 0xFF, 0xFF, 0xF3, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8E, 0x73, 0xFF, 0xF1, 0x8E, 0x73, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0xCF, 0xFF, 0xFF, 0xF3, 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_hotspot_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0xF0, 0x7E,
0x0F, 0xFF, 0xE1, 0xFF, 0x87, 0xFF, 0xE3, 0xFF, 0xC7, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE,
0x18, 0x7F, 0xFF, 0xFE, 0x7E, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF,
0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x07,
0xC0, 0x00, 0x00, 0x03, 0xCF, 0xFF, 0xFF, 0xF3, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8E, 0x73, 0xFF,
0xF1, 0x8E, 0x73, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0x8F, 0xFF, 0xFF, 0xF1, 0xCF, 0xFF, 0xFF, 0xF3, 0xC0, 0x00,
0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_hotspot_32 = {32, 32, 18, icon_hotspot_32_bits};
static const uint8_t icon_hotspot_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x3F, 0xFF, 0xFE, 0x03, 0xF0, 0x1F, 0xFF, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0x0F, 0xFF, 0xFE, 0x7F, 0x3F, 0xDF, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFF, 0xE0, 0x01, 0xFF, 0xFF, 0xFF, 0xE3, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0x7F, 0xFF, 0xE3, 0xC7, 0x9E, 0x3F, 0xFF, 0xE3, 0xC7, 0x9E, 0x3F, 0xFF, 0xE3, 0xC7, 0xFF, 0x7F, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_hotspot_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x00,
0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x3F, 0xFF, 0xFE, 0x03, 0xF0, 0x1F, 0xFF, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0xFC, 0x3F,
0xFF, 0x0F, 0xFF, 0xFE, 0x7F, 0x3F, 0xDF, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFF,
0xE0, 0x01, 0xFF, 0xFF, 0xFF, 0xE3, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF,
0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x00, 0x00, 0x00,
0x0F, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF,
0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0x7F, 0xFF, 0xE3, 0xC7, 0x9E, 0x3F, 0xFF, 0xE3, 0xC7, 0x9E,
0x3F, 0xFF, 0xE3, 0xC7, 0xFF, 0x7F, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7,
0xFF, 0xFF, 0xFF, 0xE3, 0xC0, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x0F,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_hotspot_40 = {40, 40, 22, icon_hotspot_40_bits};
static const uint8_t icon_hotspot_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x3F, 0xC0, 0x3F, 0xFF, 0xFF, 0x80, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xDF, 0xE0, 0x7F, 0xBF, 0xFF, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, 0x83, 0xFF, 0xFF, 0xFF, 0xFE, 0x3F, 0xC7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xE7, 0xE7, 0xFF, 0xFF, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3, 0xC3, 0xE7, 0xE7, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_hotspot_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF,
0xFF, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x7F,
0xFF, 0xFF, 0xC0, 0x3F, 0xC0, 0x3F, 0xFF, 0xFF, 0x80, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFC, 0x1F,
0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xDF, 0xE0, 0x7F, 0xBF, 0xFF, 0xFF, 0xFF, 0x80, 0x1F, 0xFF,
0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, 0x83, 0xFF,
0xFF, 0xFF, 0xFE, 0x3F, 0xC7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F,
0xF0, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07,
0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xE7, 0xE7, 0xFF, 0xFF, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3,
0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC3, 0xC3, 0xE7, 0xE7, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3,
0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xC3, 0xC1, 0xFF, 0xFF, 0xFF, 0xFF, 0x83,
0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x0F,
0xFC, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_hotspot_48 = {48, 48, 28, icon_hotspot_48_bits};
// bookmark (lucide: bookmark)
static const uint8_t icon_bookmark_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xF8, 0x00, 0x1F, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xE7, 0xCF, 0xF3, 0x81, 0xCF, 0xF2, 0x18, 0x4F, 0xF0, 0x7E, 0x0F, 0xF9, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_bookmark_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x3F, 0xF8, 0x00, 0x1F, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF,
0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF,
0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xFF, 0xCF, 0xF3, 0xE7, 0xCF,
0xF3, 0x81, 0xCF, 0xF2, 0x18, 0x4F, 0xF0, 0x7E, 0x0F, 0xF9, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_bookmark_24 = {24, 24, 12, icon_bookmark_24_bits};
static const uint8_t icon_bookmark_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x00, 0x3F, 0xFC, 0x7F, 0xFE, 0x3F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFC, 0x3F, 0x1F, 0xF8, 0xF0, 0x0F, 0x1F, 0xF8, 0xC1, 0x83, 0x1F, 0xF8, 0x03, 0xC0, 0x1F, 0xFC, 0x0F, 0xF0, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_bookmark_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x00,
0x3F, 0xFC, 0x7F, 0xFE, 0x3F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF,
0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8,
0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F,
0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF, 0x1F, 0xF8, 0xFC, 0x3F,
0x1F, 0xF8, 0xF0, 0x0F, 0x1F, 0xF8, 0xC1, 0x83, 0x1F, 0xF8, 0x03, 0xC0, 0x1F, 0xFC, 0x0F, 0xF0, 0x3F, 0xFC, 0x3F,
0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_bookmark_32 = {32, 32, 16, icon_bookmark_32_bits};
static const uint8_t icon_bookmark_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0x81, 0xFC, 0x7F, 0xFE, 0x3E, 0x00, 0x7C, 0x7F, 0xFE, 0x38, 0x00, 0x1C, 0x7F, 0xFE, 0x30, 0x3C, 0x0C, 0x7F, 0xFE, 0x00, 0xFF, 0x00, 0x7F, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xFF, 0x07, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_bookmark_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x07,
0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x3F, 0xFF,
0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F,
0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE,
0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F,
0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC,
0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF,
0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0x7F, 0xFE, 0x3F, 0x81, 0xFC, 0x7F, 0xFE, 0x3E,
0x00, 0x7C, 0x7F, 0xFE, 0x38, 0x00, 0x1C, 0x7F, 0xFE, 0x30, 0x3C, 0x0C, 0x7F, 0xFE, 0x00, 0xFF, 0x00, 0x7F, 0xFE,
0x01, 0xFF, 0x80, 0x7F, 0xFF, 0x07, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_bookmark_40 = {40, 40, 19, icon_bookmark_40_bits};
static const uint8_t icon_bookmark_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFC, 0x3F, 0xF0, 0xFF, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0xFF, 0x0F, 0xC0, 0x03, 0xF0, 0xFF, 0xFF, 0x0F, 0x80, 0x00, 0xF0, 0xFF, 0xFF, 0x0E, 0x01, 0x80, 0x70, 0xFF, 0xFF, 0x08, 0x07, 0xE0, 0x10, 0xFF, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_bookmark_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF,
0xFF, 0x80, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF,
0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xFC, 0x3F, 0xF0, 0xFF, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF,
0xFF, 0x0F, 0xC0, 0x03, 0xF0, 0xFF, 0xFF, 0x0F, 0x80, 0x00, 0xF0, 0xFF, 0xFF, 0x0E, 0x01, 0x80, 0x70, 0xFF,
0xFF, 0x08, 0x07, 0xE0, 0x10, 0xFF, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF,
0xFF, 0x80, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_bookmark_48 = {48, 48, 24, icon_bookmark_48_bits};
// firmware (lucide: cpu)
static const uint8_t icon_firmware_24_bits[] = {0xFF, 0xFF, 0xFF, 0xFC, 0xE7, 0x3F, 0xFC, 0xE7, 0x3F, 0xF8, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xE7, 0xFF, 0xE7, 0x87, 0xFF, 0xE1, 0x87, 0x00, 0xE1, 0xE6, 0x00, 0x67, 0xE6, 0x7E, 0x67, 0xE6, 0x7E, 0x67, 0x86, 0x7E, 0x61, 0x86, 0x7E, 0x61, 0xE6, 0x7E, 0x67, 0xE6, 0x7E, 0x67, 0xE6, 0x00, 0x67, 0x87, 0x00, 0xE1, 0x87, 0xFF, 0xE1, 0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xFC, 0xE7, 0x3F, 0xFC, 0xE7, 0x3F, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_firmware_24_bits[] = {
0xFF, 0xFF, 0xFF, 0xFC, 0xE7, 0x3F, 0xFC, 0xE7, 0x3F, 0xF8, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xE7, 0xFF, 0xE7,
0x87, 0xFF, 0xE1, 0x87, 0x00, 0xE1, 0xE6, 0x00, 0x67, 0xE6, 0x7E, 0x67, 0xE6, 0x7E, 0x67, 0x86, 0x7E, 0x61,
0x86, 0x7E, 0x61, 0xE6, 0x7E, 0x67, 0xE6, 0x7E, 0x67, 0xE6, 0x00, 0x67, 0x87, 0x00, 0xE1, 0x87, 0xFF, 0xE1,
0xE7, 0xFF, 0xE7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xFC, 0xE7, 0x3F, 0xFC, 0xE7, 0x3F, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_firmware_24 = {24, 24, 12, icon_firmware_24_bits};
static const uint8_t icon_firmware_32_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFD, 0xFF, 0xFF, 0x1E, 0x78, 0xFF, 0xFF, 0x1E, 0x78, 0xFF, 0xFC, 0x00, 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xC1, 0xFF, 0xFF, 0x83, 0x81, 0xF0, 0x0F, 0x81, 0xC1, 0xC0, 0x03, 0x83, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xC1, 0x8F, 0xF1, 0x83, 0xC1, 0x8F, 0xF1, 0x83, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xC1, 0xC0, 0x03, 0x83, 0x81, 0xF0, 0x0F, 0x81, 0xC1, 0xFF, 0xFF, 0x83, 0xF1, 0xFF, 0xFF, 0x8F, 0xF0, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x1E, 0x78, 0xFF, 0xFF, 0x1E, 0x78, 0xFF, 0xFF, 0xBF, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_firmware_32_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFD, 0xFF, 0xFF, 0x1E, 0x78, 0xFF, 0xFF, 0x1E, 0x78, 0xFF, 0xFC, 0x00, 0x00,
0x3F, 0xF8, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF1, 0xFF, 0xFF, 0x8F, 0xC1, 0xFF, 0xFF, 0x83, 0x81, 0xF0,
0x0F, 0x81, 0xC1, 0xC0, 0x03, 0x83, 0xF1, 0xC0, 0x03, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1,
0x8F, 0xF1, 0x8F, 0xC1, 0x8F, 0xF1, 0x83, 0xC1, 0x8F, 0xF1, 0x83, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0x8F,
0xF1, 0x8F, 0xF1, 0x8F, 0xF1, 0xC0, 0x03, 0x8F, 0xC1, 0xC0, 0x03, 0x83, 0x81, 0xF0, 0x0F, 0x81, 0xC1, 0xFF, 0xFF,
0x83, 0xF1, 0xFF, 0xFF, 0x8F, 0xF0, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x1E,
0x78, 0xFF, 0xFF, 0x1E, 0x78, 0xFF, 0xFF, 0xBF, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_firmware_32 = {32, 32, 16, icon_firmware_32_bits};
static const uint8_t icon_firmware_40_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC7, 0xE7, 0xE3, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xF8, 0x7F, 0xFF, 0xFE, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xF8, 0x00, 0x1F, 0x03, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xE0, 0xF1, 0xFF, 0x8F, 0x07, 0xC0, 0xF1, 0xFF, 0x8F, 0x03, 0xC0, 0xF1, 0xFF, 0x8F, 0x03, 0xE0, 0xF1, 0xFF, 0x8F, 0x07, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xC0, 0xF8, 0x00, 0x1F, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFE, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0xC7, 0xE7, 0xE3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_firmware_40_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC7, 0xE7, 0xE3, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3,
0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x00,
0x00, 0x3F, 0xF8, 0x7F, 0xFF, 0xFE, 0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF,
0xFF, 0xFF, 0x03, 0xC0, 0xF8, 0x00, 0x1F, 0x03, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8,
0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xE0, 0xF1, 0xFF, 0x8F, 0x07,
0xC0, 0xF1, 0xFF, 0x8F, 0x03, 0xC0, 0xF1, 0xFF, 0x8F, 0x03, 0xE0, 0xF1, 0xFF, 0x8F, 0x07, 0xF8, 0xF1, 0xFF, 0x8F,
0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF1, 0xFF, 0x8F, 0x1F, 0xF8, 0xF0, 0x00, 0x0F, 0x1F, 0xF8, 0xF0, 0x00,
0x0F, 0x1F, 0xC0, 0xF8, 0x00, 0x1F, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xF8, 0xFF,
0xFF, 0xFF, 0x1F, 0xF8, 0x7F, 0xFF, 0xFE, 0x1F, 0xFC, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x7F, 0xFF,
0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0xC7, 0xC3, 0xE3, 0xFF, 0xFF, 0xC7, 0xE7, 0xE3, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_firmware_40 = {40, 40, 20, icon_firmware_40_bits};
static const uint8_t icon_firmware_48_bits[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF9, 0xFE, 0x7F, 0x9F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xE0, 0x3F, 0xFF, 0xFF, 0xFC, 0x07, 0xC0, 0x3F, 0xFF, 0xFF, 0xFC, 0x03, 0xC0, 0x3F, 0x00, 0x00, 0xFC, 0x03, 0xE0, 0x3E, 0x00, 0x00, 0x7C, 0x07, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xE0, 0x3C, 0x3F, 0xFC, 0x3C, 0x07, 0xC0, 0x3C, 0x3F, 0xFC, 0x3C, 0x03, 0xC0, 0x3C, 0x3F, 0xFC, 0x3C, 0x03, 0xE0, 0x3C, 0x3F, 0xFC, 0x3C, 0x07, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xE0, 0x3E, 0x00, 0x00, 0x7C, 0x07, 0xC0, 0x3F, 0x00, 0x00, 0xFC, 0x03, 0xC0, 0x3F, 0xFF, 0xFF, 0xFC, 0x03, 0xE0, 0x3F, 0xFF, 0xFF, 0xFC, 0x07, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF9, 0xFE, 0x7F, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const uint8_t icon_firmware_48_bits[] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF9, 0xFE, 0x7F, 0x9F, 0xFF,
0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF,
0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F,
0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F, 0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F,
0xE0, 0x3F, 0xFF, 0xFF, 0xFC, 0x07, 0xC0, 0x3F, 0xFF, 0xFF, 0xFC, 0x03, 0xC0, 0x3F, 0x00, 0x00, 0xFC, 0x03,
0xE0, 0x3E, 0x00, 0x00, 0x7C, 0x07, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F,
0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F,
0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xE0, 0x3C, 0x3F, 0xFC, 0x3C, 0x07, 0xC0, 0x3C, 0x3F, 0xFC, 0x3C, 0x03,
0xC0, 0x3C, 0x3F, 0xFC, 0x3C, 0x03, 0xE0, 0x3C, 0x3F, 0xFC, 0x3C, 0x07, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F,
0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F, 0xFC, 0x3C, 0x3F,
0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xFC, 0x3C, 0x00, 0x00, 0x3C, 0x3F, 0xE0, 0x3E, 0x00, 0x00, 0x7C, 0x07,
0xC0, 0x3F, 0x00, 0x00, 0xFC, 0x03, 0xC0, 0x3F, 0xFF, 0xFF, 0xFC, 0x03, 0xE0, 0x3F, 0xFF, 0xFF, 0xFC, 0x07,
0xFC, 0x3F, 0xFF, 0xFF, 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0xFF, 0xF8, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F,
0xFE, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x03, 0xFF,
0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF, 0xFF, 0xF0, 0xFC, 0x3F, 0x0F, 0xFF,
0xFF, 0xF9, 0xFE, 0x7F, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
static const freeink::Icon icon_firmware_48 = {48, 48, 24, icon_firmware_48_bits};
+17 -25
View File
@@ -274,8 +274,7 @@ void BaseTheme::drawList(const GfxRenderer& renderer, Rect rect, int itemCount,
const std::function<UIIcon(int index)>& rowIcon,
const std::function<std::string(int index)>& rowValue, bool highlightValue,
const std::function<bool(int index)>& rowDimmed) const {
int rowHeight =
(rowSubtitle != nullptr) ? M().listWithSubtitleRowHeight : M().listRowHeight;
int rowHeight = (rowSubtitle != nullptr) ? M().listWithSubtitleRowHeight : M().listRowHeight;
int pageItems = rect.height / rowHeight;
const int totalPages = (itemCount + pageItems - 1) / pageItems;
@@ -359,8 +358,8 @@ void BaseTheme::drawList(const GfxRenderer& renderer, Rect rect, int itemCount,
if (rowSubtitle != nullptr) {
valueY = itemY + 10;
}
renderer.drawText(UI_10_FONT_ID, rect.x + contentWidth - M().contentSidePadding - valueTextWidth,
valueY, valueText.c_str(), i != selectedIndex);
renderer.drawText(UI_10_FONT_ID, rect.x + contentWidth - M().contentSidePadding - valueTextWidth, valueY,
valueText.c_str(), i != selectedIndex);
}
}
}
@@ -371,31 +370,26 @@ void BaseTheme::drawHeader(const GfxRenderer& renderer, Rect rect, const char* t
// Hide last battery draw
constexpr int maxBatteryWidth = 80;
renderer.fillRect(rect.x + rect.width - maxBatteryWidth, rect.y + 5, maxBatteryWidth,
M().batteryHeight + 10, false);
renderer.fillRect(rect.x + rect.width - maxBatteryWidth, rect.y + 5, maxBatteryWidth, M().batteryHeight + 10, false);
const bool showBatteryPercentage =
SETTINGS.hideBatteryPercentage != CrossPointSettings::HIDE_BATTERY_PERCENTAGE::HIDE_ALWAYS;
// Position icon at right edge, drawBatteryRight will place text to the left
const int batteryX = rect.x + rect.width - 12 - M().batteryWidth;
drawBatteryRight(renderer,
Rect{batteryX, rect.y + 5, M().batteryWidth, M().batteryHeight},
showBatteryPercentage);
drawBatteryRight(renderer, Rect{batteryX, rect.y + 5, M().batteryWidth, M().batteryHeight}, showBatteryPercentage);
if (title) {
int padding = rect.width - batteryX + M().batteryWidth;
auto truncatedTitle = renderer.truncatedText(UI_12_FONT_ID, title,
rect.width - padding * 2 - M().contentSidePadding * 2,
EpdFontFamily::BOLD);
auto truncatedTitle = renderer.truncatedText(
UI_12_FONT_ID, title, rect.width - padding * 2 - M().contentSidePadding * 2, EpdFontFamily::BOLD);
renderer.drawCenteredText(UI_12_FONT_ID, rect.y + 5, truncatedTitle.c_str(), true, EpdFontFamily::BOLD);
}
if (subtitle) {
auto truncatedSubtitle = renderer.truncatedText(
SMALL_FONT_ID, subtitle, rect.width - M().contentSidePadding * 2, EpdFontFamily::REGULAR);
auto truncatedSubtitle = renderer.truncatedText(SMALL_FONT_ID, subtitle, rect.width - M().contentSidePadding * 2,
EpdFontFamily::REGULAR);
int truncatedSubtitleWidth = renderer.getTextWidth(SMALL_FONT_ID, truncatedSubtitle.c_str());
renderer.drawText(SMALL_FONT_ID,
rect.x + rect.width - M().contentSidePadding - truncatedSubtitleWidth, subtitleY,
renderer.drawText(SMALL_FONT_ID, rect.x + rect.width - M().contentSidePadding - truncatedSubtitleWidth, subtitleY,
truncatedSubtitle.c_str(), true);
}
}
@@ -409,18 +403,18 @@ void BaseTheme::drawSubHeader(const GfxRenderer& renderer, Rect rect, const char
auto truncatedRightLabel =
renderer.truncatedText(SMALL_FONT_ID, rightLabel, maxListValueWidth, EpdFontFamily::REGULAR);
int rightLabelWidth = renderer.getTextWidth(SMALL_FONT_ID, truncatedRightLabel.c_str());
renderer.drawText(SMALL_FONT_ID, rect.x + rect.width - M().contentSidePadding - rightLabelWidth,
rect.y + 7, truncatedRightLabel.c_str());
renderer.drawText(SMALL_FONT_ID, rect.x + rect.width - M().contentSidePadding - rightLabelWidth, rect.y + 7,
truncatedRightLabel.c_str());
rightSpace += rightLabelWidth + 10;
}
auto truncatedLabel = renderer.truncatedText(
UI_12_FONT_ID, label, rect.width - M().contentSidePadding - rightSpace, EpdFontFamily::REGULAR);
auto truncatedLabel = renderer.truncatedText(UI_12_FONT_ID, label, rect.width - M().contentSidePadding - rightSpace,
EpdFontFamily::REGULAR);
renderer.drawText(UI_12_FONT_ID, currentX, rect.y, truncatedLabel.c_str(), true, EpdFontFamily::REGULAR);
}
int BaseTheme::tabBarScrollOffset(int contentWidth, int selStart, int selWidth, int availWidth) {
if (contentWidth <= availWidth) return 0; // fits, no scroll
if (contentWidth <= availWidth) return 0; // fits, no scroll
int offset = selStart - (availWidth - selWidth) / 2; // center the selected tab
const int maxOffset = contentWidth - availWidth;
if (offset < 0) offset = 0;
@@ -498,8 +492,7 @@ void BaseTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, const std:
if (hasContinueReading && !recentBooks[0].coverBmpPath.empty()) {
// Try to get actual image dimensions from BMP header
const std::string coverBmpPath =
UITheme::getCoverThumbPath(recentBooks[0].coverBmpPath, M().homeCoverHeight);
const std::string coverBmpPath = UITheme::getCoverThumbPath(recentBooks[0].coverBmpPath, M().homeCoverHeight);
HalFile file;
if (Storage.openFileForRead("HOME", coverBmpPath, file)) {
@@ -552,8 +545,7 @@ void BaseTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, const std:
// Only load from SD on first render, then use stored buffer
if (hasContinueReading && !recentBooks[0].coverBmpPath.empty() && !coverRendered) {
const std::string coverBmpPath =
UITheme::getCoverThumbPath(recentBooks[0].coverBmpPath, M().homeCoverHeight);
const std::string coverBmpPath = UITheme::getCoverThumbPath(recentBooks[0].coverBmpPath, M().homeCoverHeight);
// First time: load cover from SD and render
HalFile file;
+15 -1
View File
@@ -112,7 +112,21 @@ struct ThemeMetrics {
// update it after adding a field (and decide there whether the field scales).
inline constexpr unsigned THEME_METRICS_SIZEOF = 224;
enum UIIcon { None = 0, Folder, Text, Image, Book, File, Settings, Transfer, Library, Wifi, Hotspot, Bookmark, Firmware };
enum UIIcon {
None = 0,
Folder,
Text,
Image,
Book,
File,
Settings,
Transfer,
Library,
Wifi,
Hotspot,
Bookmark,
Firmware
};
enum class KeyboardKeyType { Normal, Shift, Mode, Space, Del, Ok, Disabled };
+12 -19
View File
@@ -35,16 +35,14 @@ void Lyra3CoversTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
// Only load from SD on first render, then use stored buffer
if (hasContinueReading) {
if (!coverRendered) {
for (int i = 0;
i < std::min(static_cast<int>(recentBooks.size()), M().homeRecentBooksCount); i++) {
for (int i = 0; i < std::min(static_cast<int>(recentBooks.size()), M().homeRecentBooksCount); i++) {
std::string coverPath = recentBooks[i].coverBmpPath;
bool hasCover = true;
int tileX = M().contentSidePadding + tileWidth * i;
if (coverPath.empty()) {
hasCover = false;
} else {
const std::string coverBmpPath =
UITheme::getCoverThumbPath(coverPath, M().homeCoverHeight);
const std::string coverBmpPath = UITheme::getCoverThumbPath(coverPath, M().homeCoverHeight);
// First time: load cover from SD and render
HalFile file;
@@ -54,13 +52,12 @@ void Lyra3CoversTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
float coverHeight = static_cast<float>(bitmap.getHeight());
float coverWidth = static_cast<float>(bitmap.getWidth());
float ratio = coverWidth / coverHeight;
const float tileRatio = static_cast<float>(tileWidth - 2 * hPaddingInSelection) /
static_cast<float>(M().homeCoverHeight);
const float tileRatio =
static_cast<float>(tileWidth - 2 * hPaddingInSelection) / static_cast<float>(M().homeCoverHeight);
float cropX = 1.0f - (tileRatio / ratio);
renderer.drawBitmap(bitmap, tileX + hPaddingInSelection, tileY + hPaddingInSelection,
tileWidth - 2 * hPaddingInSelection, M().homeCoverHeight,
cropX);
tileWidth - 2 * hPaddingInSelection, M().homeCoverHeight, cropX);
} else {
hasCover = false;
}
@@ -73,10 +70,8 @@ void Lyra3CoversTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
if (!hasCover) {
// Render empty cover
renderer.fillRect(tileX + hPaddingInSelection,
tileY + hPaddingInSelection + (M().homeCoverHeight / 3),
tileWidth - 2 * hPaddingInSelection, 2 * M().homeCoverHeight / 3,
true);
renderer.fillRect(tileX + hPaddingInSelection, tileY + hPaddingInSelection + (M().homeCoverHeight / 3),
tileWidth - 2 * hPaddingInSelection, 2 * M().homeCoverHeight / 3, true);
renderer.drawIcon(CoverIcon, tileX + hPaddingInSelection + 24, tileY + hPaddingInSelection + 24, 32, 32);
}
}
@@ -85,8 +80,7 @@ void Lyra3CoversTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
coverRendered = coverBufferStored; // Only consider it rendered if we successfully stored the buffer
}
for (int i = 0; i < std::min(static_cast<int>(recentBooks.size()), M().homeRecentBooksCount);
i++) {
for (int i = 0; i < std::min(static_cast<int>(recentBooks.size()), M().homeRecentBooksCount); i++) {
bool bookSelected = (selectorIndex == i);
int tileX = M().contentSidePadding + tileWidth * i;
@@ -104,13 +98,12 @@ void Lyra3CoversTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
// Draw selection box
renderer.fillRoundedRect(tileX, tileY, tileWidth, hPaddingInSelection, cornerRadius, true, true, false, false,
Color::LightGray);
renderer.fillRectDither(tileX, tileY + hPaddingInSelection, hPaddingInSelection,
M().homeCoverHeight, Color::LightGray);
renderer.fillRectDither(tileX, tileY + hPaddingInSelection, hPaddingInSelection, M().homeCoverHeight,
Color::LightGray);
renderer.fillRectDither(tileX + tileWidth - hPaddingInSelection, tileY + hPaddingInSelection,
hPaddingInSelection, M().homeCoverHeight, Color::LightGray);
renderer.fillRoundedRect(tileX, tileY + M().homeCoverHeight + hPaddingInSelection,
tileWidth, dynamicTitleBoxHeight, cornerRadius, false, false, true, true,
Color::LightGray);
renderer.fillRoundedRect(tileX, tileY + M().homeCoverHeight + hPaddingInSelection, tileWidth,
dynamicTitleBoxHeight, cornerRadius, false, false, true, true, Color::LightGray);
}
int currentY = tileY + M().homeCoverHeight + hPaddingInSelection + 5;
+58 -61
View File
@@ -59,25 +59,36 @@ int nearestIconSize(int targetPx) { return kIconSizes[iconVariantIndex(targetPx)
// asset (not an upscale) with exact alignment.
const freeink::Icon* pickIcon(UIIcon icon, int targetPx) {
const freeink::Icon* const* v = nullptr;
#define VARIANTS(n) \
{ \
static const freeink::Icon* a[] = {&icon_##n##_24, &icon_##n##_32, &icon_##n##_40, \
&icon_##n##_48}; \
v = a; \
#define VARIANTS(n) \
{ \
static const freeink::Icon* a[] = {&icon_##n##_24, &icon_##n##_32, &icon_##n##_40, &icon_##n##_48}; \
v = a; \
}
switch (icon) {
case UIIcon::Folder: VARIANTS(folder) break;
case UIIcon::Text: VARIANTS(text) break;
case UIIcon::Image: VARIANTS(image) break;
case UIIcon::Book: VARIANTS(book) break;
case UIIcon::File: VARIANTS(file) break;
case UIIcon::Settings: VARIANTS(settings) break;
case UIIcon::Transfer: VARIANTS(transfer) break;
case UIIcon::Library: VARIANTS(library) break;
case UIIcon::Wifi: VARIANTS(wifi) break;
case UIIcon::Hotspot: VARIANTS(hotspot) break;
case UIIcon::Bookmark: VARIANTS(bookmark) break;
default: return nullptr;
case UIIcon::Folder:
VARIANTS(folder) break;
case UIIcon::Text:
VARIANTS(text) break;
case UIIcon::Image:
VARIANTS(image) break;
case UIIcon::Book:
VARIANTS(book) break;
case UIIcon::File:
VARIANTS(file) break;
case UIIcon::Settings:
VARIANTS(settings) break;
case UIIcon::Transfer:
VARIANTS(transfer) break;
case UIIcon::Library:
VARIANTS(library) break;
case UIIcon::Wifi:
VARIANTS(wifi) break;
case UIIcon::Hotspot:
VARIANTS(hotspot) break;
case UIIcon::Bookmark:
VARIANTS(bookmark) break;
default:
return nullptr;
}
#undef VARIANTS
return v[iconVariantIndex(targetPx)];
@@ -117,9 +128,7 @@ void LyraTheme::drawHeader(const GfxRenderer& renderer, Rect rect, const char* t
SETTINGS.hideBatteryPercentage != CrossPointSettings::HIDE_BATTERY_PERCENTAGE::HIDE_ALWAYS;
// Position icon at right edge, drawBatteryRight will place text to the left
const int batteryX = rect.x + rect.width - 12 - M().batteryWidth;
drawBatteryRight(renderer,
Rect{batteryX, rect.y + 5, M().batteryWidth, M().batteryHeight},
showBatteryPercentage);
drawBatteryRight(renderer, Rect{batteryX, rect.y + 5, M().batteryWidth, M().batteryHeight}, showBatteryPercentage);
int maxTitleWidth = title != nullptr ? renderer.getTextWidth(UI_12_FONT_ID, title, EpdFontFamily::BOLD) : 0;
int maxSubtitleWidth =
@@ -145,18 +154,16 @@ void LyraTheme::drawHeader(const GfxRenderer& renderer, Rect rect, const char* t
if (title) {
auto truncatedTitle = renderer.truncatedText(UI_12_FONT_ID, title, maxTitleWidth, EpdFontFamily::BOLD);
renderer.drawText(UI_12_FONT_ID, rect.x + M().contentSidePadding,
rect.y + M().batteryBarHeight + 3, truncatedTitle.c_str(), true,
EpdFontFamily::BOLD);
renderer.drawText(UI_12_FONT_ID, rect.x + M().contentSidePadding, rect.y + M().batteryBarHeight + 3,
truncatedTitle.c_str(), true, EpdFontFamily::BOLD);
renderer.drawLine(rect.x, rect.y + rect.height - 3, rect.x + rect.width - 1, rect.y + rect.height - 3, 3, true);
}
if (subtitle) {
auto truncatedSubtitle = renderer.truncatedText(SMALL_FONT_ID, subtitle, maxSubtitleWidth, EpdFontFamily::REGULAR);
int truncatedSubtitleWidth = renderer.getTextWidth(SMALL_FONT_ID, truncatedSubtitle.c_str());
renderer.drawText(SMALL_FONT_ID,
rect.x + rect.width - M().contentSidePadding - truncatedSubtitleWidth,
rect.y + 50, truncatedSubtitle.c_str(), true);
renderer.drawText(SMALL_FONT_ID, rect.x + rect.width - M().contentSidePadding - truncatedSubtitleWidth, rect.y + 50,
truncatedSubtitle.c_str(), true);
}
}
@@ -167,13 +174,13 @@ void LyraTheme::drawSubHeader(const GfxRenderer& renderer, Rect rect, const char
auto truncatedRightLabel =
renderer.truncatedText(SMALL_FONT_ID, rightLabel, maxListValueWidth, EpdFontFamily::REGULAR);
int rightLabelWidth = renderer.getTextWidth(SMALL_FONT_ID, truncatedRightLabel.c_str());
renderer.drawText(SMALL_FONT_ID, rect.x + rect.width - M().contentSidePadding - rightLabelWidth,
rect.y + 7, truncatedRightLabel.c_str());
renderer.drawText(SMALL_FONT_ID, rect.x + rect.width - M().contentSidePadding - rightLabelWidth, rect.y + 7,
truncatedRightLabel.c_str());
rightSpace += rightLabelWidth + hPaddingInSelection;
}
auto truncatedLabel = renderer.truncatedText(
UI_10_FONT_ID, label, rect.width - M().contentSidePadding - rightSpace, EpdFontFamily::REGULAR);
auto truncatedLabel = renderer.truncatedText(UI_10_FONT_ID, label, rect.width - M().contentSidePadding - rightSpace,
EpdFontFamily::REGULAR);
renderer.drawText(UI_10_FONT_ID, currentX, rect.y + 6, truncatedLabel.c_str(), true, EpdFontFamily::REGULAR);
renderer.drawLine(rect.x, rect.y + rect.height - 1, rect.x + rect.width - 1, rect.y + rect.height - 1, true);
@@ -241,8 +248,7 @@ void LyraTheme::drawList(const GfxRenderer& renderer, Rect rect, int itemCount,
const std::function<UIIcon(int index)>& rowIcon,
const std::function<std::string(int index)>& rowValue, bool highlightValue,
const std::function<bool(int index)>& rowDimmed) const {
int rowHeight =
(rowSubtitle != nullptr) ? M().listWithSubtitleRowHeight : M().listRowHeight;
int rowHeight = (rowSubtitle != nullptr) ? M().listWithSubtitleRowHeight : M().listRowHeight;
int pageItems = rect.height / rowHeight;
const int totalPages = (itemCount + pageItems - 1) / pageItems;
@@ -255,18 +261,14 @@ void LyraTheme::drawList(const GfxRenderer& renderer, Rect rect, int itemCount,
const int scrollBarY = rect.y + ((scrollAreaHeight - scrollBarHeight) * currentPage) / (totalPages - 1);
const int scrollBarX = rect.x + rect.width - M().scrollBarRightOffset;
renderer.drawLine(scrollBarX, rect.y, scrollBarX, rect.y + scrollAreaHeight, true);
renderer.fillRect(scrollBarX - M().scrollBarWidth, scrollBarY, M().scrollBarWidth,
scrollBarHeight, true);
renderer.fillRect(scrollBarX - M().scrollBarWidth, scrollBarY, M().scrollBarWidth, scrollBarHeight, true);
}
// Draw selection
int contentWidth =
rect.width -
(totalPages > 1 ? (M().scrollBarWidth + M().scrollBarRightOffset) : 1);
int contentWidth = rect.width - (totalPages > 1 ? (M().scrollBarWidth + M().scrollBarRightOffset) : 1);
if (selectedIndex >= 0) {
renderer.fillRoundedRect(
rect.x + M().contentSidePadding, rect.y + selectedIndex % pageItems * rowHeight,
contentWidth - M().contentSidePadding * 2, rowHeight, cornerRadius, Color::LightGray);
renderer.fillRoundedRect(rect.x + M().contentSidePadding, rect.y + selectedIndex % pageItems * rowHeight,
contentWidth - M().contentSidePadding * 2, rowHeight, cornerRadius, Color::LightGray);
}
int textX = rect.x + M().contentSidePadding + hPaddingInSelection;
@@ -329,8 +331,7 @@ void LyraTheme::drawList(const GfxRenderer& renderer, Rect rect, int itemCount,
const int subtitleCenter = itemY + 30 + renderer.getTextVisualCenterOffset(SMALL_FONT_ID);
textCenter = (textCenter + subtitleCenter) / 2;
}
renderer.drawIcon(*ic, rect.x + M().contentSidePadding + hPaddingInSelection,
textCenter - ic->opticalCenterY);
renderer.drawIcon(*ic, rect.x + M().contentSidePadding + hPaddingInSelection, textCenter - ic->opticalCenterY);
}
}
@@ -344,17 +345,16 @@ void LyraTheme::drawList(const GfxRenderer& renderer, Rect rect, int itemCount,
// Draw value
if (!valueText.empty()) {
if (i == selectedIndex && highlightValue) {
renderer.fillRoundedRect(
rect.x + contentWidth - M().contentSidePadding - hPaddingInSelection - valueWidth, itemY,
valueWidth + hPaddingInSelection, rowHeight, cornerRadius, Color::Black);
renderer.fillRoundedRect(rect.x + contentWidth - M().contentSidePadding - hPaddingInSelection - valueWidth,
itemY, valueWidth + hPaddingInSelection, rowHeight, cornerRadius, Color::Black);
}
int valueY = itemY + 6;
if (rowSubtitle != nullptr) {
valueY = itemY + 16;
}
renderer.drawText(UI_10_FONT_ID, rect.x + contentWidth - M().contentSidePadding - valueWidth,
valueY, valueText.c_str(), !(i == selectedIndex && highlightValue));
renderer.drawText(UI_10_FONT_ID, rect.x + contentWidth - M().contentSidePadding - valueWidth, valueY,
valueText.c_str(), !(i == selectedIndex && highlightValue));
}
}
}
@@ -462,9 +462,8 @@ void LyraTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, const std:
// recentBooks[0] (home selector 0) — full card width, not just the cover photo.
if (hasContinueReading) {
TouchRegistry::getInstance().add(
Rect{M().contentSidePadding, tileY, tileWidth,
M().homeCoverHeight + 2 * hPaddingInSelection},
0, TouchRegistry::Cover);
Rect{M().contentSidePadding, tileY, tileWidth, M().homeCoverHeight + 2 * hPaddingInSelection}, 0,
TouchRegistry::Cover);
}
// Draw book card regardless, fill with message based on `hasContinueReading`
@@ -497,14 +496,13 @@ void LyraTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, const std:
}
// Draw either way
renderer.drawRect(tileX + hPaddingInSelection, tileY + hPaddingInSelection, coverWidth,
M().homeCoverHeight, true);
renderer.drawRect(tileX + hPaddingInSelection, tileY + hPaddingInSelection, coverWidth, M().homeCoverHeight,
true);
if (!hasCover) {
// Render empty cover
renderer.fillRect(tileX + hPaddingInSelection,
tileY + hPaddingInSelection + (M().homeCoverHeight / 3), coverWidth,
2 * M().homeCoverHeight / 3, true);
renderer.fillRect(tileX + hPaddingInSelection, tileY + hPaddingInSelection + (M().homeCoverHeight / 3),
coverWidth, 2 * M().homeCoverHeight / 3, true);
renderer.drawIcon(CoverIcon, tileX + hPaddingInSelection + 24, tileY + hPaddingInSelection + 24, 32, 32);
}
@@ -521,13 +519,12 @@ void LyraTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, const std:
// Draw selection box
renderer.fillRoundedRect(tileX, tileY, tileWidth, hPaddingInSelection, cornerRadius, true, true, false, false,
Color::LightGray);
renderer.fillRectDither(tileX, tileY + hPaddingInSelection, hPaddingInSelection,
M().homeCoverHeight, Color::LightGray);
renderer.fillRectDither(tileX + hPaddingInSelection + coverWidth, tileY + hPaddingInSelection,
tileWidth - hPaddingInSelection - coverWidth, M().homeCoverHeight,
renderer.fillRectDither(tileX, tileY + hPaddingInSelection, hPaddingInSelection, M().homeCoverHeight,
Color::LightGray);
renderer.fillRoundedRect(tileX, tileY + M().homeCoverHeight + hPaddingInSelection, tileWidth,
hPaddingInSelection, cornerRadius, false, false, true, true, Color::LightGray);
renderer.fillRectDither(tileX + hPaddingInSelection + coverWidth, tileY + hPaddingInSelection,
tileWidth - hPaddingInSelection - coverWidth, M().homeCoverHeight, Color::LightGray);
renderer.fillRoundedRect(tileX, tileY + M().homeCoverHeight + hPaddingInSelection, tileWidth, hPaddingInSelection,
cornerRadius, false, false, true, true, Color::LightGray);
}
auto titleLines = renderer.wrappedText(UI_12_FONT_ID, book.title.c_str(), textWidth, 3, EpdFontFamily::BOLD);
@@ -82,9 +82,7 @@ void RoundedRaffTheme::drawHeader(const GfxRenderer& renderer, Rect rect, const
const int maxTitleWidth = std::max(0, batteryGroupLeftX - 20 - titleX);
auto headerTitle = renderer.truncatedText(kTitleFontId, title, maxTitleWidth, EpdFontFamily::BOLD);
renderer.drawText(kTitleFontId, titleX, titleY, headerTitle.c_str(), true, EpdFontFamily::BOLD);
drawBatteryRight(renderer,
Rect{batteryIconX, rect.y + 14, M().batteryWidth,
M().batteryHeight},
drawBatteryRight(renderer, Rect{batteryIconX, rect.y + 14, M().batteryWidth, M().batteryHeight},
showBatteryPercentage);
}
@@ -136,9 +134,8 @@ void RoundedRaffTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
// Tapping the continue-reading cover opens recentBooks[0] (home selector 0).
if (hasContinueReading) {
TouchRegistry::getInstance().add(
Rect{tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth, M().homeCoverHeight}, 0,
TouchRegistry::Cover);
TouchRegistry::getInstance().add(Rect{tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth, M().homeCoverHeight},
0, TouchRegistry::Cover);
}
// Draw book card regardless, fill with message based on `hasContinueReading`
@@ -152,8 +149,7 @@ void RoundedRaffTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
if (coverPath.empty()) {
hasCover = false;
} else {
const std::string coverBmpPath =
UITheme::getCoverThumbPath(coverPath, M().homeCoverHeight);
const std::string coverBmpPath = UITheme::getCoverThumbPath(coverPath, M().homeCoverHeight);
// First time: load cover from SD and render
HalFile file;
@@ -161,11 +157,9 @@ void RoundedRaffTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
Bitmap bitmap(file);
if (bitmap.parseHeaders() == BmpReaderError::Ok) {
coverWidth = bitmap.getWidth();
renderer.drawBitmap(bitmap, tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth,
M().homeCoverHeight);
renderer.drawBitmap(bitmap, tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth, M().homeCoverHeight);
renderer.maskRoundedRectOutsideCorners(tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth,
M().homeCoverHeight, kCoverRadius,
Color::LightGray);
M().homeCoverHeight, kCoverRadius, Color::LightGray);
} else {
hasCover = false;
}
@@ -174,17 +168,16 @@ void RoundedRaffTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
}
// Draw either way
renderer.drawRoundedRect(tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth,
M().homeCoverHeight, 1, kCoverRadius, true);
renderer.drawRoundedRect(tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth, M().homeCoverHeight, 1,
kCoverRadius, true);
if (!hasCover) {
// Render empty cover
renderer.fillRect(tileX + (tileWidth - coverWidth) / 2, imgY + (M().homeCoverHeight / 3),
coverWidth, 2 * M().homeCoverHeight / 3, true);
renderer.fillRect(tileX + (tileWidth - coverWidth) / 2, imgY + (M().homeCoverHeight / 3), coverWidth,
2 * M().homeCoverHeight / 3, true);
renderer.drawIcon(CoverIcon, tileX + (tileWidth - coverWidth) / 2 + 24, imgY + 24, 32, 32);
renderer.maskRoundedRectOutsideCorners(tileX + (tileWidth - coverWidth) / 2, imgY, coverWidth,
M().homeCoverHeight, kCoverRadius,
Color::LightGray);
M().homeCoverHeight, kCoverRadius, Color::LightGray);
}
coverBufferStored = storeCoverBuffer();
@@ -193,13 +186,12 @@ void RoundedRaffTheme::drawRecentBookCover(GfxRenderer& renderer, Rect rect, con
renderer.fillRoundedRect(tileX, tileY, tileWidth, imgY - tileY, kRowRadius, true, true, false, false,
Color::LightGray);
renderer.fillRectDither(tileX, imgY, (tileWidth - coverWidth) / 2, M().homeCoverHeight,
Color::LightGray);
renderer.fillRectDither(tileX, imgY, (tileWidth - coverWidth) / 2, M().homeCoverHeight, Color::LightGray);
renderer.fillRectDither(tileX + (tileWidth + coverWidth) / 2, imgY, (tileWidth - coverWidth) / 2,
M().homeCoverHeight, Color::LightGray);
renderer.fillRoundedRect(tileX, imgY + M().homeCoverHeight, tileWidth,
tileHeight - (imgY - tileY + M().homeCoverHeight), kRowRadius,
false, false, true, true, Color::LightGray);
tileHeight - (imgY - tileY + M().homeCoverHeight), kRowRadius, false, false, true, true,
Color::LightGray);
} else {
renderer.fillRoundedRect(tileX, tileY, tileWidth, tileHeight, kRowRadius, Color::LightGray);
renderer.drawCenteredText(kTitleFontId, rect.y + rect.height / 2 - renderer.getLineHeight(kTitleFontId) / 2,
+2 -2
View File
@@ -1,7 +1,5 @@
#include <Arduino.h>
#include <Epub.h>
#include <cmath>
#include <FontCacheManager.h>
#include <FontDecompressor.h>
#include <GfxRenderer.h>
@@ -13,6 +11,8 @@
#include <HalSystem.h>
#include <HalTiltSensor.h>
#include <cmath>
#if defined(FREEINK_DEVICE_LILYGO) && FREEINK_DEVICE_LILYGO
#include <BoardT5S3.h>
#endif