T-Watch. Menu, pages, navigation entre écrans avec TFT_eSPI • Domotique et objets connectés à faire soi-même

Dans ce tutoriel nous allons apprendre comment créer des menus (et des menus défilants) et naviguer entre les pages d’une application à l’aide de la librairie TFT_eSPI. Ce tutoriel est destiné en priorité aux montres ESP32 TTGO T-Watch de LilyGo. Moyennant quelques petites adaptations du code, vous pourrez l’utiliser pour d’autres projets Arduino avec un écran TFT classique.

La librairie TFT_eSPI est très facile à utiliser pour créer des menus et des éléments d’interface.

https://projetsdiy.fr/data/uploads/2020/11/TTGO-T-Watch-menu-screen-navigation-TFT-eSPI.mp4

Il est tout à fait possible d’utiliser conjointement la librairie TFT_eSPI et LVGL dans un projet d’application pour T-Watch.

Activer la librairie TFT_eSPI

Par défaut la librairie TFT_eSPI est intégrée et activée par la librairie LilyGoWatch. C’est d’ailleurs le cas quelque soit le modèle de T-Watch que vous utilisé. Il n’y a donc rien à faire de plus.

Au niveau programmation, il est plus facile de déclarer un pointeur vers l’objet au début du projet. De cette façon vous n’aurez pas besoin de re-déclarer à chaque fois la classe pour accéder aux fonctions de la librairie TFT_eSPI

TTGOClass *ttgo; // Pointeur vers l'API des périphériques de la montre
TFT_eSPI *tft;   // Pointeur vers les fonctions de la librairie TFT_eSPI

Dans le setup, on créé les objets ttgo et tft que l’on place dans les pointeurs créés au début du projet

void setup(){  
  ...
  ttgo = TTGOClass::getWatch();
  ttgo->begin();     
  tft = ttgo->tft;
  ...
}

Maintenant, vous pouvez accéder aux fonctions de gestion de l’écran n’importe où dans le projet.

Comment porter du code d’un projet Arduino avec la librairie TFT_eSPI ?

Il est tout à fait possible de porter du code développé pour un Arduino et l’adapter à la T-Watch.

Il faudra simplement remplacer tous les appels aux fonctions qui sont fait avec l’opérateur point (.) par l’opérateur flèche (->).

Préparer les icônes (images) XBM

Avant toute chose, il est nécessaire de convertir les images au format XBM de chaque icônes, et ce pour chaque résolution. En effet, la librairie TFT_eSPI ne propose aucune fonction pour redimensionner les images.

Vous trouverez sur le dépôt GitHub du projet plusieurs icônes aux formats PNG et XBM que vous pouvez utiliser dans vos projets. Elles sont disponibles dans plusieurs résolutions.

Icône Nom du fichier 80×80 32×32 30×30
Menu main 7kildgueqjglluyh0nrg-2861703 anytbo85ymeugyrbdrau-8603449 opbanaydjglmnjxqyeei-4351432
WiFi wifi pfagsglemlhjbltew7sp-4580835 szfby1hwnprp3naijibf-2321018
Bluetooth bluetooth c2qghpk3x9hqeuud8soe-2710184 opcdyea6eqrgisocvwfb-1271464
Accéléromètre accel uuv0cinwbiczwrshnhje-9286261
GPS gps 6tjx9z98xr1enlycrvpr-8137584
Réglages settings t2phu0osyi2wiiqg97qz-2020161
Horloge clock x4q311y09swllh1n1whc-4136566
Musique music y340r3deh0lmorm0uota-4044485
Outils tools
Sortie exit

Il est très facile de fabriquer vos propres icônes monochrome en convertissant une image au format XBM. Lisez ce tutoriel qui explique en détail comment faire.

Organisation des pages et menus de l’application T-Watch

Bien évidemment, nous n’allons pas développer l’intégralité de l’application dans ce tutoriel. Nous allons nous concentrer sur les menus et la navigation entre les pages (écrans) de l’application que voici.

  • Le haut de la page principale est occupée par une barre d’état. L’icône de gauche permet d’accéder au menu défilant pour accéder à une page de l’application. Le menu de droite est identique. Chaque option est précédée d’un icône de 30×30 pixels monochrome.
  • Au centre de la page, on trouve une icône qui permet d’accéder au menu pleine page
  • Chaque page de l’application affiche simplement le titre dans la barre d’état

ifhsbbwnc3at2tw5joos-3168207

Créer un menu en pleine page

Le premier menu que nous allons créer et un menu qui s’affiche en pleine page. Il est constitué de 4 boutons. Ici, pour sortir du menu, une icône est réservée à cette usage. On pourrait également utiliser un bouton ou l’accéléromètre (secouer pour revenir en arrière par exemple).

Pour créé un menu en pleine page, il suffit de dessiner les 4 boutons à leur position à l’aide de la méthode drawXBitmap() dont les paramètres sont les suivants :

  • Origine x, y de l’image
  • Tableau de point de l’image au format XBM (const unsigned char)
  • La largeur et la hauteur de l’image
  • La couleur de l’icône
  • La couleur de fond. En général, il est identique au fond de l’écran. Il suffit d’inverser les couleurs en cas de rendu erroné.

On reste dans une boucle while jusqu’à ce que la variable exitMenu passe à False.

En testant la position du doigt sur l’écran renvoyé par la fonction getTouch(), on peut en déterminer le bouton qui a été touché et renvoyer l’index correspondant.

int toolPageMenu(){
  tft->fillScreen(TFT_BLACK);  // efface la page précédente
  tft->drawXBitmap(25, 25, wifi, icon_width, icon_height, TFT_WHITE, TFT_BLACK);
  tft->drawXBitmap(130, 25, bluetooth, icon_width, icon_height, TFT_WHITE, TFT_BLACK);
  tft->drawXBitmap(25, 130, gps, icon_width, icon_height, TFT_WHITE, TFT_BLACK);
  tft->drawXBitmap(130, 130, menuexit, icon_width, icon_height, TFT_WHITE, TFT_BLACK);

  int16_t x, y, tx, ty;

  int mSelect; 
  // Permet de maintenir la page TFT_eSPI ouverte jusqu'à ce que l'utilisateur touche une option
  boolean exitMenu = false;   
  
  while (!exitMenu) {
    // Attend que l'utilisateur touche l'écran
    if (ttgo->getTouch(x, y)) { 
      while (ttgo->getTouch(tx, ty)) {} 
      int index = 0;
      if ( x < w / 2 && y < h / 2 ) {
        mSelect = 1;
        exitMenu = true;
      } else if ( x > w / 2 && y < h / 2 ) {
        mSelect = 2;
        exitMenu = true;
      } else if ( x < w / 2 && y > h / 2 ) {
        mSelect = 6;
        exitMenu = true;
      } else {
        exitMenu = true;
      } 
    }
  }
  menuOpened = false;

  // Renvoie l'index de la page désirée
  return mSelect;
}

Voici ce qu’on obtient avec cette fonction

hkywfab1f2xbwm2gzkzs-8739158

Menu défilant avec icône à gauche (ou pas)

Contrairement à la librairie LVGL, la librairie TFT_eSPI ne “permet” (c’est déjà beaucoup !) que de dessiner des formes géométriques simples. Pour créer un menu vertical défilent, l’astuce consiste à redessiner le menu lorsqu’on touche le haut ou le bas de l’écran.

La fonction displayScrollingMenu() permet de surveiller l’action de l’utilisateur sur l’écran. Ici, le menu est constitué de trois cellules. On récupère les libellés des cellules à l’aide d’un pointeur. Dès que l’utilisateur touche une ligne du menu, on reconstruit celui-ci en modifiant la position du curseur mSelect à l’aide des méthodes createMenuList() ou createMenuListIcon().

refreshMenu().

int displayScrollingMenu(){
  int16_t x, y, tx, ty;
  int mSelect = menuSelected; // l'option sélectionnée, cellule centrale du menu
  boolean exitMenu = false;   // permet de laisser le menu à l'écran
    
  refreshMenu(menuSelected); // affiche le menu défilant vertical
  
  while (!exitMenu) {
    if (ttgo->getTouch(x, y)) { 
      // ON attend que l'écran soit relâché avant de se déplacer
      while (ttgo->getTouch(tx, ty)) {} 
      // L'utilisateur se déplace vers le bas du menu
      if (y >= 160 ) { 
        mSelect += 1;
        if (mSelect == appMax) mSelect = 0;
        refreshMenu(mSelect);
      }
      // L'utilisateur se déplace vers le haut du menu
      if (y  80 && y setTextDatum(TL_DATUM);  
  tft->setTextColor(TFT_WHITE);
  tft->setTextSize(2);
  tft->drawString(appName[pageindex], menuSize + 2 * menuPadding, menuPadding, 1);
  tft->drawFastHLine(0, menuSize + menuPadding, w, TFT_DARKGREY);
  createLeftMenuButton();
  createRightMenuButton();
}

Comme un écran est une simple fonction, on peut renvoyer simplement des paramètres la commande return. C’est ce qu’on fait par exemple pour sélectionner une option du menu.

int displayScrollingMenu(){
  ...
  return mSelect;
}

Code complet du projet

Le code complet du projet est disponible sur GitHub.

zwymnd5dhjc8satxj3ot-3846544

/* Arduino IDE - un-comment your watch */
#define LILYGO_WATCH_2019_WITH_TOUCH
//#define  LILYGO_WATCH_2019_NO_TOUCH
//#define LILYGO_WATCH_BLOCK
//#define LILYGO_WATCH_2020_V1
#include 
#include "icones.h"             

//  Pointeurs 
TTGOClass *ttgo;
TFT_eSPI *tft;

//*************************//
//*       Prototypes      *//
//*************************//
void goToPage(int pageindex);
void createMainPage();
void createPage(int pageindex);
void createLeftMenuButton();
void createRightMenuButton();
String isMenuTouched(int x, int y);
int displayScrollingMenu();
void createMenuList(int mSel);
void createMenuListIcon(int mSel);
const unsigned char* getMenuIcon(int icoIndex);
//*************************//
//*   STATIC VARIABLES    *//
//*************************//
int w, h;           //  résolution de l'écran
int pageindex = 0;  //  page à afficher

#define menuSize 30
#define menuPadding 10
bool menuOpened = false;
//  Pages de l'application
const int appMax = 9; 
String appName[appMax] = {"Main", "WiFi", "Bluetooth", "Accel", "Settings", "Clock", "GPS", "Music", "Tools"}; 

int menuSelected = 0;
String menuType = "list";  //  Type de menu à afficher (liste ou icone)

void setup() {
  Serial.begin(115200);
  // Get ttgo object and set up the display | Récupère l'objet et allume l'écran
  ttgo = TTGOClass::getWatch();
  ttgo->begin();     
  ttgo->openBL();

  //  Accès facile aux fonctions de la librairie TFT 
  tft = ttgo->tft;
  //tft->setRotation(0);
  tft->fillScreen(TFT_BLACK);

  // Récupère le résolution de l'écran
  w = tft->width();     // width  | largeur
  h = tft->height();    // height | hauteur
  
  createMainPage();   //  affiche la page principale au démarrage
}

void loop() {
  // Attend que l'utilisateur touche un bouton de menu
  int16_t x, y, tx, ty;
  if (ttgo->getTouch(x, y)) {
    while (ttgo->getTouch(tx, ty)) {} // wait until you stop touching
    String menuindex = isMenuTouched(x, y);
    // Left menu, scrolling list
    // Menu de gauche, liste défilante
    if  ( menuindex  == "leftmenu" ) {
      menuType = "list";
      menuSelected = displayScrollingMenu();
      goToPage(menuSelected);
    // Ouvre le menu droit (liste avec icone)  
    } else if ( menuindex == "rightmenu" ) {
      Serial.println("right menu ");
      menuType = "icon";
      menuSelected = displayScrollingMenu();
      goToPage(menuSelected);
    // Menu central en pleine page constitué de 4 boutons  
    } else if ( menuindex == "mainmenu" ) { 
      Serial.println("display tool page"); 
      menuSelected = toolPageMenu();
      goToPage(menuSelected);
    }   
  } 
}
//*************************//
//*    Scrolling Menu     *//
//*************************//
// Affiche le menu défilant
int displayScrollingMenu(){
  int16_t x, y, tx, ty;
  int mSelect = menuSelected; // The currently highlighted app
  boolean exitMenu = false;   // used to stay in the menu until user selects app
    
  refreshMenu(menuSelected); //  affiche le menu défilant vertical
  
  while (!exitMenu) {
    if (ttgo->getTouch(x, y)) { // If you have touched something...
      while (ttgo->getTouch(tx, ty)) {} // wait until you stop touching

      // L'utilisateur se déplace vers le bas du menu
      if (y >= 160 ) { 
        mSelect += 1;
        if (mSelect == appMax) mSelect = 0;
        refreshMenu(mSelect);
      }
      // L'utilisateur se déplace vers le haut du menu
      if (y  80 && y tft->fillScreen(TFT_BLACK);
  menuOpened = false;

  return mSelect;
}
//*************************//
//*    Menus Helpers      *//
//*************************//
// L'utilisateur s'est déplacé dans le menu, on reconstruit le menu
void refreshMenu(int selectPosition){
  if ( menuType == "list" ) {
    // List menu | Menu liste
    createMenuList(selectPosition);
  } else {
    // Icon | menu icône
    createMenuListIcon(selectPosition);
  }
}
// Construit les 3 lignes visibles du menu défilant liste
void createMenuList(int mSel) {
  Serial.printf("createMenuList %u", mSel);
  menuOpened = true;
  // Application
  int curSel = 0;   
  // On colorie le fond de l'écran en bleue
  ttgo->tft->fillScreen(TFT_BLUE);
  // The central rectangle in black to simulate the list
  // Le rectangle central en noir pour simuler la liste
  ttgo->tft->fillRect(0, 80, 239, 80, TFT_BLACK);

  // Affiche le libellé des 3 applications à l'écran
  if (mSel == 0) curSel = appMax - 1;
  else curSel = mSel - 1;

  // Première ligne du menu déroulant
  ttgo->tft->setTextSize(2);
  ttgo->tft->setTextColor(TFT_GREEN);
  ttgo->tft->setCursor(50, 30);
  ttgo->tft->println(appName[curSel]);

  // Ligne centrale (option sélectionnée)
  ttgo->tft->setTextSize(3);
  ttgo->tft->setTextColor(TFT_RED);
  ttgo->tft->setCursor(40, 110);
  ttgo->tft->println(appName[mSel]);

  // Dernière ligne du menu
  if (mSel == appMax - 1) curSel = 0;
  else curSel = mSel + 1;

  ttgo->tft->setTextSize(2);
  ttgo->tft->setTextColor(TFT_GREEN);
  ttgo->tft->setCursor(50, 190);
  ttgo->tft->print(appName[curSel]);
}
// Construit les 3 lignes visibles du menu défilant liste avec icône monochrome (fichier XMB)
void createMenuListIcon(int mSel) {
  menuOpened = true;
  int curSel = 0;
  // Créé un fond bleu avec une ligne noire au milieu
  ttgo->tft->fillScreen(TFT_BLUE);
  ttgo->tft->fillRect(0, 80, 240, 80, TFT_BLACK);

  // Première ligne du menu déroulant
  if (mSel == 0) curSel = appMax - 1;
  else curSel = mSel - 1;
  
  ttgo->tft->setTextSize(2);
  ttgo->tft->setTextColor(TFT_WHITE);
  ttgo->tft->drawXBitmap(10, 20, getMenuIcon(curSel), 32, 32, TFT_WHITE, TFT_BLUE);
  ttgo->tft->setCursor(50, 30);
  ttgo->tft->println(appName[curSel]);

  // Ligne centrale (option sélectionnée)
  ttgo->tft->setTextSize(3);
  ttgo->tft->setTextColor(TFT_RED);
  ttgo->tft->drawXBitmap(10, 100, getMenuIcon(mSel), 32, 32, TFT_WHITE, TFT_BLACK);
  ttgo->tft->setCursor(50, 110);  // 40
  ttgo->tft->println(appName[mSel]);

  // Dernière ligne du menu
  if (mSel == appMax - 1) curSel = 0;
  else curSel = mSel + 1;

  ttgo->tft->setTextSize(2);
  ttgo->tft->setTextColor(TFT_WHITE);
  ttgo->tft->drawXBitmap(10, 180, getMenuIcon(curSel), 32, 32, TFT_WHITE, TFT_BLUE);
  ttgo->tft->setCursor(50, 190);
  ttgo->tft->print(appName[curSel]);
}
// Renvoie l'index du menu qui vient d'être touché
String isMenuTouched(int x, int y){
  String menuindex = "no";
  Serial.printf("isMenuTouched at %u:%u \n", x, y);
  if ( x fillScreen(TFT_BLACK);  // Fill background in black | colorie le fond de l'écran en noir
  tft->setTextDatum(TL_DATUM);  
  tft->setTextColor(TFT_WHITE);
  tft->setTextSize(2);
  tft->drawString(appName[pageindex], menuSize + 2 * menuPadding, menuPadding, 1);
  tft->drawFastHLine(0, menuSize + menuPadding, w, TFT_DARKGREY);
  createLeftMenuButton();
  createRightMenuButton();
}
void createLeftMenuButton(){
  for (size_t i = 0; i < 3; i++) {
    tft->fillRoundRect(menuPadding, menuPadding + i*8, menuSize, 4, 2, TFT_WHITE);
  }
}
void createRightMenuButton(){
    tft->drawXBitmap(w - 30 - menuPadding, menuPadding , menu30, 30, 30, TFT_WHITE, TFT_BLACK);
}
// Menu central en plein écran avec uniquement 4 boutons (wifi, bluetooth, GPS, sortie)
int toolPageMenu(){
  tft->fillScreen(TFT_BLACK);  // colorie le fond de l'écran en noir
  tft->drawXBitmap(25, 25, wifi, icon_width, icon_height, TFT_WHITE, TFT_BLACK);
  tft->drawXBitmap(130, 25, bluetooth, icon_width, icon_height, TFT_WHITE, TFT_BLACK);
  tft->drawXBitmap(25, 130, gps, icon_width, icon_height, TFT_WHITE, TFT_BLACK);
  tft->drawXBitmap(130, 130, menuexit, icon_width, icon_height, TFT_WHITE, TFT_BLACK);

  int16_t x, y, tx, ty;

  int mSelect = 0; 
  // Permet de maintenir la page TFT_eSPI ouverte jusqu'à ce que l'utilisateur touche une option
  boolean exitMenu = false;   
  
  while (!exitMenu) {
    // Attend que l'utilisateur touche l'écran
    if (ttgo->getTouch(x, y)) { 
      while (ttgo->getTouch(tx, ty)) {} 
      Serial.printf("toolPageMenu clicked %u %u\n", x, y);
      int index = 0;
      if ( x < w / 2 && y < h / 2 ) {
        mSelect = 1;
        exitMenu = true;
      } else if ( x > w / 2 && y < h / 2 ) {
        mSelect = 2;
        exitMenu = true;
      } else if ( x < w / 2 && y > h / 2 ) {
        mSelect = 6;
        exitMenu = true;
      } else {
        mSelect = 0;
        exitMenu = true;
      } 
    }
  }
  ttgo->tft->fillScreen(TFT_BLACK);
  menuOpened = false;

  // Renvoie l'index de la page désirée
  return mSelect;
}
#include   // PROGMEM support header

#define icon_width 80
#define icon_height 80
PROGMEM const unsigned char menu[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x00,
  0x80, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x00, 0xC0, 0xFF,
  0xFF, 0xFF, 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0xFF, 0xFF, 0xFF,
  0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0x03, 0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8,
  0xFF, 0xFF, 0xFF, 0x07, 0xF0, 0xFF, 0xFF, 0xFF, 0x1F, 0xF8, 0xFF, 0xFF,
  0xFF, 0x07, 0xF0, 0x07, 0x00, 0xC0, 0x1F, 0xF8, 0x01, 0x00, 0xE0, 0x07,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03,
  0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00,
  0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03,
  0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00,
  0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03,
  0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00,
  0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x07,
  0x00, 0xC0, 0x1F, 0xF8, 0x01, 0x00, 0xE0, 0x07, 0xF0, 0xFF, 0xFF, 0xFF,
  0x1F, 0xF8, 0xFF, 0xFF, 0xFF, 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8,
  0xFF, 0xFF, 0xFF, 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF,
  0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0x01,
  0x80, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFE,
  0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8,
  0xFF, 0x3F, 0x00, 0x00, 0xFE, 0xFF, 0x1F, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
  0x01, 0x80, 0xFF, 0xFF, 0x7F, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0x03, 0xE0,
  0xFF, 0xFF, 0xFF, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0x07, 0xF0, 0xFF, 0xFF,
  0xFF, 0x03, 0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0x03,
  0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8, 0xFF, 0xFF, 0xFF, 0x07, 0xF0, 0x07,
  0x00, 0xC0, 0x1F, 0xF8, 0x03, 0x00, 0xF0, 0x07, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x01, 0x00, 0xE0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00,
  0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03,
  0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00,
  0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03,
  0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00,
  0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F,
  0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03,
  0x00, 0x80, 0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80,
  0x1F, 0xFC, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x03, 0x00, 0x80, 0x1F, 0xFC,
  0x01, 0x00, 0xE0, 0x07, 0xF0, 0x07, 0x00, 0xC0, 0x1F, 0xF8, 0x03, 0x00,
  0xF0, 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8, 0xFF, 0xFF, 0xFF, 0x07,
  0xE0, 0xFF, 0xFF, 0xFF, 0x0F, 0xF0, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0xFF,
  0xFF, 0xFF, 0x07, 0xF0, 0xFF, 0xFF, 0xFF, 0x03, 0x80, 0xFF, 0xFF, 0xFF,
  0x03, 0xE0, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0xFF, 0xFF, 0xFF, 0x01, 0x80,
  0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xF0, 0xFF, 0x1F, 0x00, 0x00, 0xFC, 0xFF,
  0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char menuexit[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF,
  0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  0x1F, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00,
  0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00,
  0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0xFF,
  0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF,
  0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFC, 0x9B, 0xA6, 0x55, 0x69, 0xB9,
  0x7F, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00,
  0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
  0xFC, 0x01, 0x00, 0x00, 0x00, 0x80, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03,
  0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00,
  0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00,
  0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00,
  0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00,
  0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x01,
  0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00,
  0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00,
  0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x03,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0xFC, 0x01, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xFE, 0x07, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
  0x1F, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x1F, 0x00,
  0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x3F, 0x00, 0xFC, 0x03,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x7F, 0x00, 0xFC, 0x01, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xC0, 0xFF, 0x01, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xFF, 0x07, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x07,
  0xFC, 0x01, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xFC, 0x03,
  0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xFC, 0x01, 0x00, 0x80,
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0x03, 0x00, 0x80, 0xFF, 0xFF,
  0xFF, 0xFF, 0xFF, 0x3F, 0xFC, 0x03, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF,
  0xFF, 0x3F, 0xFC, 0x01, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F,
  0xFC, 0x03, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0xFC, 0x01,
  0x00, 0x00, 0xDC, 0xDD, 0xB7, 0xDB, 0xFF, 0x0F, 0xFC, 0x03, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFF, 0x07, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x80, 0xFF, 0x03, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  0xFF, 0x01, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0x00,
  0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x7F, 0x00, 0xFC, 0x01,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0xFC, 0x01, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xFC, 0x1F, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xFC, 0x0F, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
  0x07, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00,
  0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0xFC, 0x01,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0xFC, 0x01,
  0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00,
  0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00,
  0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00,
  0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00,
  0xFC, 0x03, 0x00, 0x00, 0x00, 0x80, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03,
  0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00,
  0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x7F, 0x00, 0x00, 0x00, 0xFC, 0x5B, 0xB5, 0xA5, 0x59, 0xAA, 0x7F, 0x00,
  0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
  0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xFC, 0xFF,
  0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF,
  0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  0x3F, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00,
  0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};

PROGMEM const unsigned char wifi[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x02, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF,
  0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF,
  0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00,
  0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0xF8,
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0xFE, 0xFF, 0xFF,
  0x2B, 0xE4, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x00, 0x00,
  0xFC, 0xFF, 0xFF, 0x00, 0x80, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0xC0, 0xFF,
  0xFF, 0x01, 0xE0, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x07,
  0xF0, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0x07, 0xF8, 0xFF,
  0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0x1F, 0xFC, 0xFF, 0x03, 0x00,
  0x00, 0x00, 0x00, 0x80, 0xFF, 0x3F, 0xFE, 0xFF, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFF, 0x7F, 0xFC, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xFC, 0x3F, 0xF8, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x3F,
  0xF8, 0x0F, 0x00, 0x00, 0x68, 0x09, 0x00, 0x00, 0xF0, 0x0F, 0xF0, 0x07,
  0x00, 0x80, 0xFF, 0xFF, 0x01, 0x00, 0xE0, 0x07, 0xC0, 0x03, 0x00, 0xF0,
  0xFF, 0xFF, 0x0F, 0x00, 0x80, 0x03, 0xC0, 0x00, 0x00, 0xFE, 0xFF, 0xFF,
  0x7F, 0x00, 0x80, 0x03, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00,
  0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00,
  0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF,
  0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
  0xFF, 0x7F, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x03, 0xE0, 0xFF, 0xFF,
  0x00, 0x00, 0x00, 0x80, 0xFF, 0x7F, 0x00, 0x00, 0xFE, 0xFF, 0x03, 0x00,
  0x00, 0x80, 0xFF, 0x1F, 0x00, 0x00, 0xF8, 0xFF, 0x01, 0x00, 0x00, 0x00,
  0xFF, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x03,
  0x00, 0x00, 0xC0, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00,
  0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x1E,
  0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00,
  0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xF0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x1F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x80, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF,
  0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x03, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x80, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF,
  0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFC, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xF0, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};

PROGMEM const unsigned char bluetooth[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x80, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x3F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xC0, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xC0, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF,
  0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x1F, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xEF, 0x7F, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xC0, 0xDF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xC0, 0x9F, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xC0, 0x0F, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x1F,
  0xFE, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0xFC, 0x0F,
  0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x80, 0x0F, 0xF0, 0x0F, 0x00, 0x00,
  0x00, 0x00, 0x7E, 0x00, 0xC0, 0x1F, 0xF0, 0x1F, 0x00, 0x00, 0x00, 0x00,
  0xFE, 0x01, 0xC0, 0x1F, 0xE0, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x01,
  0xC0, 0x0F, 0xC0, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x03, 0xC0, 0x1F,
  0x80, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x07, 0xC0, 0x0F, 0xC0, 0x7F,
  0x00, 0x00, 0x00, 0x00, 0xF8, 0x0F, 0xC0, 0x1F, 0xE0, 0x3F, 0x00, 0x00,
  0x00, 0x00, 0xF0, 0x1F, 0xC0, 0x1F, 0xF0, 0x1F, 0x00, 0x00, 0x00, 0x00,
  0xE0, 0x7F, 0xC0, 0x1F, 0xF8, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F,
  0xC0, 0x0F, 0xFE, 0x07, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xC0, 0x1F,
  0xFE, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC3, 0x1F, 0xFF, 0x01,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xC3, 0xCF, 0xFF, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xFC, 0xCF, 0xDF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xF8, 0xCF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0,
  0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF,
  0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x07, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFE, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xF8, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x3F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x3F, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x7F, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFE, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF,
  0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x0F, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xF8, 0x8F, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xFC, 0xC7, 0xDF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
  0xC7, 0xCF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC1, 0x1F,
  0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xC1, 0x0F, 0xFE, 0x03,
  0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F, 0xC0, 0x1F, 0xFC, 0x07, 0x00, 0x00,
  0x00, 0x00, 0xE0, 0x7F, 0xC0, 0x0F, 0xF8, 0x0F, 0x00, 0x00, 0x00, 0x00,
  0xF0, 0x1F, 0xC0, 0x1F, 0xF8, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x0F,
  0xC0, 0x1F, 0xE0, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x0F, 0xC0, 0x1F,
  0xC0, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x03, 0xC0, 0x0F, 0x80, 0x7F,
  0x00, 0x00, 0x00, 0x00, 0xFE, 0x01, 0xC0, 0x1F, 0x80, 0x7F, 0x00, 0x00,
  0x00, 0x00, 0xFE, 0x00, 0xC0, 0x1F, 0xE0, 0x3F, 0x00, 0x00, 0x00, 0x00,
  0xFE, 0x00, 0xC0, 0x0F, 0xF0, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x00,
  0xC0, 0x1F, 0xF8, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x1F,
  0xFC, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x0F, 0xFE, 0x03,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0xFF, 0x03, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xC0, 0x9F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xC0, 0xCF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xC0, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF,
  0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x0F, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x07, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xC0, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xC0, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x3F, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x80, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00,
};

PROGMEM const unsigned char gps[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff,
  0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x03, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x07, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xf8, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xf0, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff,
  0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0x01, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xfe, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xfc, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
  0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0x3f,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x7f, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xfe, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff,
  0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x1f, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0x0f, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x87, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xc0, 0xff, 0x83, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x80, 0xff, 0xe1, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
  0xe0, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xf8, 0xff,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xfc, 0xff, 0x01, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xfc, 0xff, 0x03, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
  0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff,
  0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x03, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x80, 0x9f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x80, 0x3f, 0xff, 0xff, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
  0xfe, 0x3f, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfd, 0x3f,
  0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xf9, 0x0f, 0xff, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xf7, 0x0f, 0xff, 0x01, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xfc, 0xe7, 0xc3, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xfc, 0xcf, 0xc3, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
  0x9f, 0xf0, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x3f, 0xf0,
  0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x3f, 0xf0, 0xff, 0x3f,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x7f, 0xe0, 0xff, 0x7f, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x7e, 0x80, 0xff, 0xff, 0x01, 0x00, 0x0e, 0x1c, 0x0c, 0x00,
  0x38, 0x00, 0xff, 0xff, 0x03, 0x00, 0x0c, 0x18, 0x1c, 0x00, 0x00, 0x00,
  0xfe, 0xff, 0x07, 0x00, 0x0e, 0x38, 0x3c, 0x00, 0x00, 0x00, 0xfc, 0xff,
  0x0f, 0x00, 0x1c, 0x38, 0x78, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x1f, 0x00,
  0x1c, 0x30, 0xf0, 0x00, 0x00, 0x00, 0xf0, 0xff, 0x3f, 0x00, 0x18, 0x70,
  0xe0, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x7f, 0x00, 0x38, 0xf0, 0x80, 0x00,
  0x00, 0x00, 0xc0, 0xff, 0xff, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x00,
  0x80, 0xff, 0xff, 0x01, 0x70, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0xff,
  0xff, 0x03, 0x70, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0x07,
  0xe0, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x0f, 0xe0, 0x01,
  0xfe, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x1f, 0xc0, 0x01, 0xf0, 0x00,
  0x00, 0x00, 0x00, 0xf0, 0xff, 0x1f, 0x80, 0x03, 0x80, 0x00, 0x00, 0x00,
  0x00, 0xe0, 0xff, 0x07, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
  0xff, 0x07, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x01,
  0x00, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0x00, 0xf8,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0xf0, 0x03, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0xc0, 0x1f, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x10, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

PROGMEM const unsigned char accel[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0xe0, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0xf0, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8,
   0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x01, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0xff, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0xdf, 0xe7, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xce,
   0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0xc0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0,
   0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0x07,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x0f, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0xf8, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0xf8, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0xfc, 0x01,
   0x00, 0x7e, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x7c,
   0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x7c, 0x00, 0x00,
   0x80, 0x3f, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x80, 0x3f,
   0x00, 0x00, 0xfc, 0xf0, 0x1f, 0x7c, 0x00, 0x00, 0xc0, 0x1f, 0x00, 0x00,
   0xfc, 0xf8, 0x3f, 0x7c, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xf8,
   0x3f, 0x7c, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0x7c,
   0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0x7c, 0x00, 0x00,
   0xf8, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0x7c, 0x00, 0x00, 0xf0, 0xff,
   0xff, 0xff, 0xff, 0xf8, 0x3f, 0x7c, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff,
   0xff, 0xf8, 0x3f, 0x7c, 0x00, 0x00, 0xc0, 0x1f, 0x00, 0x00, 0xfc, 0xf0,
   0x3f, 0x7c, 0x00, 0x00, 0x80, 0x3f, 0x00, 0x00, 0xfc, 0xf0, 0x1f, 0x7c,
   0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x7c, 0x00, 0x00,
   0x00, 0x7e, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x3c,
   0x00, 0x00, 0xf8, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00,
   0xf8, 0x01, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff,
   0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x7f,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xc1, 0x01, 0x00, 0x00,
   0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xe3, 0x03, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0xf8, 0xe7, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0xf0, 0xef, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0,
   0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x03,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x03, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x03, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0xfe, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0xe0, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0,
   0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x03,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x03, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char clockico[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0, 0x1B, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xFE, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF,
  0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF,
  0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F,
  0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xEF, 0xFB, 0xFF, 0x1F, 0x00, 0x00,
  0x00, 0x00, 0xFE, 0x7F, 0xC0, 0x01, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00,
  0xFF, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x07,
  0xC0, 0x03, 0xF0, 0xFF, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x03, 0xC0, 0x01,
  0xE0, 0xFF, 0x03, 0x00, 0x00, 0xE0, 0xFF, 0x06, 0x80, 0x01, 0x30, 0xFF,
  0x03, 0x00, 0x00, 0xF0, 0x3F, 0x0C, 0x00, 0x00, 0x10, 0xFE, 0x0F, 0x00,
  0x00, 0xF8, 0x1F, 0x08, 0x00, 0x00, 0x10, 0xF8, 0x0F, 0x00, 0x00, 0xFC,
  0x0F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x1F, 0x00, 0x00, 0xFC, 0x07, 0x00,
  0x00, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0xFE, 0x03, 0x00, 0x00, 0x00,
  0x00, 0xC0, 0x3F, 0x00, 0x00, 0xFE, 0x01, 0x00, 0x00, 0x00, 0x00, 0xC0,
  0x7F, 0x00, 0x00, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x7F, 0x00,
  0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x00, 0x80, 0xFF,
  0x03, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0x00, 0x80, 0xFF, 0x0F, 0x00,
  0x00, 0x00, 0x00, 0xF0, 0xFF, 0x01, 0xC0, 0xBF, 0x0F, 0x00, 0x00, 0x00,
  0x00, 0xF8, 0xFE, 0x01, 0xC0, 0x3F, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x70,
  0xFC, 0x01, 0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0xFC, 0x03,
  0xE0, 0x1F, 0x80, 0x07, 0x00, 0x00, 0xE0, 0x01, 0xF8, 0x03, 0xE0, 0x0F,
  0xC0, 0x1F, 0x00, 0x00, 0xF8, 0x01, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3F,
  0x00, 0x00, 0xFF, 0x01, 0xF8, 0x07, 0xE0, 0x0F, 0x00, 0xFF, 0x00, 0x00,
  0xFF, 0x00, 0xF8, 0x07, 0xF0, 0x0F, 0x00, 0xFE, 0x03, 0xE0, 0x3F, 0x00,
  0xF0, 0x07, 0xF0, 0x07, 0x00, 0xF8, 0x0F, 0xF8, 0x1F, 0x00, 0xF0, 0x07,
  0xF0, 0x07, 0x00, 0xE0, 0xBF, 0xFD, 0x07, 0x00, 0xF0, 0x07, 0xF0, 0x07,
  0x00, 0xC0, 0xFF, 0xFF, 0x01, 0x00, 0xF0, 0x07, 0xF0, 0x07, 0x00, 0x00,
  0xFE, 0x7F, 0x00, 0x00, 0xF0, 0x0F, 0xF0, 0x7F, 0x00, 0x00, 0xFC, 0x1F,
  0x00, 0x00, 0xFF, 0x07, 0xF0, 0x7F, 0x00, 0x00, 0xF0, 0x0F, 0x00, 0x00,
  0xFE, 0x0F, 0xF0, 0x07, 0x00, 0x00, 0xF0, 0x07, 0x00, 0x00, 0xF0, 0x07,
  0xF0, 0x07, 0x00, 0x00, 0xE0, 0x03, 0x00, 0x00, 0xF0, 0x07, 0xF0, 0x0F,
  0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xF0, 0x07, 0xE0, 0x07, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xF0, 0x07, 0xF0, 0x0F, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xF0, 0x07, 0xE0, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xF8, 0x07, 0xE0, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x03,
  0xE0, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x03, 0xE0, 0x1F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x03, 0xC0, 0x1F, 0x04, 0x00,
  0x00, 0x00, 0x00, 0x10, 0xFC, 0x03, 0xC0, 0x3F, 0x0F, 0x00, 0x00, 0x00,
  0x00, 0x78, 0xFC, 0x03, 0xC0, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF8,
  0xFF, 0x01, 0x80, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0x01,
  0x80, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0x00, 0xFF,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x00, 0x00, 0xFF, 0x01, 0x00,
  0x00, 0x00, 0x00, 0x80, 0x7F, 0x00, 0x00, 0xFE, 0x01, 0x00, 0x00, 0x00,
  0x00, 0xC0, 0x7F, 0x00, 0x00, 0xFE, 0x03, 0x00, 0x00, 0x00, 0x00, 0xE0,
  0x3F, 0x00, 0x00, 0xFC, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x1F, 0x00,
  0x00, 0xF8, 0x0F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x1F, 0x00, 0x00, 0xF8,
  0x1F, 0x08, 0x00, 0x00, 0x10, 0xFC, 0x0F, 0x00, 0x00, 0xF0, 0x3F, 0x0C,
  0x00, 0x00, 0x30, 0xFE, 0x07, 0x00, 0x00, 0xE0, 0xFF, 0x06, 0xC0, 0x01,
  0x30, 0xFF, 0x03, 0x00, 0x00, 0xC0, 0xFF, 0x07, 0xC0, 0x03, 0xE0, 0xFF,
  0x01, 0x00, 0x00, 0x80, 0xFF, 0x07, 0xC0, 0x01, 0xF0, 0xFF, 0x00, 0x00,
  0x00, 0x00, 0xFF, 0x1F, 0xC0, 0x01, 0xFC, 0xFF, 0x00, 0x00, 0x00, 0x00,
  0xFE, 0xFF, 0xC1, 0x81, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF,
  0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF,
  0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xF0, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x05,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char music[] = {
  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, 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, 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, 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, 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, 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,
  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, 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, 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, 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, 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, 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,
  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, 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, 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, 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,
};
PROGMEM const unsigned char settings[] = {
  0x00, 0x00, 0x00, 0x00, 0xFC, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x5F, 0xF9, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x0F, 0xF0, 0x01, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x80, 0x0F, 0xF0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x80, 0x0F, 0xF0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x0F, 0x80,
  0x07, 0xF0, 0x01, 0xF0, 0x01, 0x00, 0x00, 0xC0, 0x3F, 0xC0, 0x07, 0xE0,
  0x01, 0xFC, 0x03, 0x00, 0x00, 0xE0, 0x7F, 0xE0, 0x07, 0xE0, 0x07, 0xFE,
  0x07, 0x00, 0x00, 0xF0, 0xFF, 0xFC, 0x07, 0xE0, 0xBF, 0xFF, 0x0F, 0x00,
  0x00, 0xF8, 0xFF, 0xFF, 0x07, 0xE0, 0xFF, 0xBF, 0x1F, 0x00, 0x00, 0xFC,
  0xF8, 0xFF, 0x03, 0xC0, 0xFF, 0x1F, 0x3F, 0x00, 0x00, 0x7E, 0xE0, 0x7F,
  0x00, 0x00, 0xFE, 0x07, 0x7F, 0x00, 0x00, 0x7F, 0xC0, 0x0F, 0x00, 0x00,
  0xF0, 0x03, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00,
  0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00,
  0x80, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x3F, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x1F, 0x00, 0x00, 0x1F, 0x00,
  0x00, 0xF8, 0x01, 0x00, 0xFF, 0xFF, 0x00, 0x80, 0x1F, 0x00, 0x00, 0xF0,
  0x01, 0x80, 0xFF, 0xFF, 0x01, 0x80, 0x0F, 0x00, 0x00, 0xF8, 0x00, 0xE0,
  0xFF, 0xFF, 0x07, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0xF0, 0x5F, 0xFA,
  0x0F, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0xF8, 0x07, 0xE0, 0x1F, 0x00,
  0x1E, 0x00, 0x00, 0x7C, 0x00, 0xFC, 0x01, 0x80, 0x3F, 0x00, 0x3E, 0x00,
  0x00, 0x7C, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x7E, 0x00, 0xE0, 0x3F,
  0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0xFC, 0x07, 0xFC, 0x3F, 0x00, 0x3F,
  0x00, 0x00, 0xFC, 0x00, 0xFC, 0x3F, 0xFE, 0x3F, 0x00, 0x1F, 0x00, 0x00,
  0xF8, 0x00, 0xF8, 0x7F, 0xFE, 0x1F, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00,
  0xF8, 0xFF, 0xFF, 0x02, 0x80, 0x0F, 0x00, 0x00, 0xF0, 0x01, 0x80, 0xFF,
  0x0F, 0x00, 0x80, 0x0F, 0x00, 0x00, 0xF0, 0x01, 0x00, 0xF8, 0x1F, 0x00,
  0x80, 0x07, 0x00, 0x00, 0xF0, 0x01, 0x00, 0xF0, 0x0F, 0x00, 0x80, 0x07,
  0x00, 0x00, 0xE0, 0x01, 0x00, 0xF8, 0x1F, 0x00, 0x80, 0x0F, 0x00, 0x00,
  0xE0, 0x01, 0x00, 0xF0, 0x1F, 0x00, 0x80, 0x0F, 0x00, 0x00, 0xE0, 0x01,
  0x00, 0xF0, 0x0F, 0x00, 0x80, 0x07, 0x00, 0x00, 0xF0, 0x01, 0x00, 0xF8,
  0x1F, 0x00, 0x80, 0x07, 0x00, 0x00, 0xE0, 0x01, 0x00, 0xF0, 0x0F, 0x00,
  0x80, 0x0F, 0x00, 0x00, 0xF0, 0x01, 0x00, 0xF8, 0x7F, 0x00, 0x80, 0x0F,
  0x00, 0x00, 0xF0, 0x01, 0x80, 0xFF, 0xFF, 0x0F, 0x00, 0x1F, 0x00, 0x00,
  0xF8, 0x00, 0xF8, 0xFF, 0xFE, 0x3F, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00,
  0xFC, 0x7F, 0xFC, 0x3F, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x3F,
  0xF0, 0x3F, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x00, 0xFC, 0x07, 0x00, 0x7E,
  0x00, 0x7C, 0x00, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0xFC,
  0x01, 0x80, 0x3F, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, 0xF8, 0x07, 0xE0,
  0x1F, 0x00, 0x3E, 0x00, 0x00, 0xF8, 0x00, 0xF0, 0x3F, 0xFC, 0x0F, 0x00,
  0x1F, 0x00, 0x00, 0xF8, 0x00, 0xE0, 0xFF, 0xFF, 0x07, 0x00, 0x1F, 0x00,
  0x00, 0xF0, 0x01, 0x80, 0xFF, 0xFF, 0x01, 0x80, 0x0F, 0x00, 0x00, 0xF0,
  0x01, 0x00, 0xFF, 0xFF, 0x00, 0x80, 0x0F, 0x00, 0x00, 0xF8, 0x01, 0x00,
  0xF8, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00,
  0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x00, 0x00,
  0xC0, 0x00, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0x00, 0x00, 0xF0, 0x03,
  0xFE, 0x00, 0x00, 0x7E, 0xE0, 0x7F, 0x00, 0x00, 0xFE, 0x07, 0x7E, 0x00,
  0x00, 0xFC, 0xF0, 0xFF, 0x03, 0xC0, 0xFF, 0x0F, 0x3F, 0x00, 0x00, 0xF8,
  0xFD, 0xFF, 0x07, 0xC0, 0xFF, 0xBF, 0x1F, 0x00, 0x00, 0xF0, 0xFF, 0xFD,
  0x07, 0xE0, 0xBF, 0xFF, 0x0F, 0x00, 0x00, 0xE0, 0x7F, 0xF0, 0x07, 0xE0,
  0x07, 0xFE, 0x07, 0x00, 0x00, 0xC0, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xFC,
  0x03, 0x00, 0x00, 0x80, 0x1F, 0x80, 0x07, 0xF0, 0x01, 0xF0, 0x01, 0x00,
  0x00, 0x00, 0x00, 0x80, 0x0F, 0xF0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x80, 0x0F, 0xF0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
  0x0F, 0xF0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9F, 0xF5,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0xFC, 0x3F, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char tools[] = {
  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, 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, 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, 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, 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, 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,
  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, 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, 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, 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, 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, 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,
  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, 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, 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, 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,
};
PROGMEM const unsigned char main32[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1F, 0xF8, 0x0F,
  0xFC, 0x3F, 0xFC, 0x1F, 0x0C, 0x70, 0x0E, 0x30, 0x0C, 0x20, 0x06, 0x30,
  0x0C, 0x30, 0x06, 0x30, 0x0C, 0x60, 0x06, 0x30, 0x0E, 0x70, 0x06, 0x30,
  0x0C, 0x20, 0x06, 0x30, 0x0C, 0x30, 0x06, 0x30, 0x0C, 0x60, 0x06, 0x30,
  0x0C, 0x70, 0x06, 0x30, 0xFC, 0x3F, 0xFE, 0x3F, 0xF8, 0x3F, 0xFC, 0x0F,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x0D, 0xB0, 0x09,
  0xF8, 0x3F, 0xFC, 0x1F, 0x1C, 0x30, 0x4E, 0x3A, 0x0C, 0x70, 0x06, 0x30,
  0x0C, 0x20, 0x06, 0x30, 0x0C, 0x30, 0x06, 0x30, 0x0C, 0x60, 0x06, 0x30,
  0x0C, 0x60, 0x06, 0x30, 0x0C, 0x30, 0x06, 0x30, 0x0E, 0x60, 0x06, 0x30,
  0x0C, 0x60, 0x06, 0x30, 0x4C, 0x3A, 0x9E, 0x39, 0xF8, 0x3F, 0xFC, 0x1F,
  0xD0, 0x06, 0xA0, 0x09, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char wifi32[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x05, 0x00, 0x00, 0xFE, 0x7F, 0x00,
  0x80, 0xFF, 0xFF, 0x01, 0xE0, 0xFF, 0xFF, 0x07, 0xF0, 0x0F, 0xF0, 0x1F,
  0xFC, 0x01, 0x80, 0x3F, 0x7E, 0x00, 0x00, 0x7E, 0x1E, 0x00, 0x00, 0x7C,
  0x0C, 0xE0, 0x0B, 0x30, 0x04, 0xFC, 0x3F, 0x20, 0x00, 0xFF, 0x7F, 0x00,
  0x80, 0xFF, 0xFF, 0x01, 0xC0, 0x1F, 0xF8, 0x03, 0xC0, 0x07, 0xE0, 0x03,
  0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00,
  0x00, 0xE0, 0x07, 0x00, 0x00, 0xE0, 0x07, 0x00, 0x00, 0xF0, 0x0F, 0x00,
  0x00, 0xF0, 0x0F, 0x00, 0x00, 0xE0, 0x07, 0x00, 0x00, 0xE0, 0x07, 0x00,
  0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char bluetooth32[] = {
  0x00, 0x00, 0x03, 0x00, 0x00, 0x80, 0x03, 0x00, 0x00, 0x00, 0x0F, 0x00,
  0x00, 0x80, 0x1F, 0x00, 0x00, 0x80, 0x3F, 0x00, 0x00, 0x00, 0x3B, 0x00,
  0x00, 0x80, 0xF3, 0x00, 0x80, 0x81, 0xE3, 0x01, 0x80, 0x03, 0xC3, 0x01,
  0x00, 0x8F, 0xE3, 0x01, 0x00, 0x9E, 0x73, 0x00, 0x00, 0x9C, 0x7B, 0x00,
  0x00, 0x78, 0x3F, 0x00, 0x00, 0xF0, 0x0F, 0x00, 0x00, 0xE0, 0x0F, 0x00,
  0x00, 0xC0, 0x03, 0x00, 0x00, 0xC0, 0x07, 0x00, 0x00, 0xE0, 0x07, 0x00,
  0x00, 0xF0, 0x0F, 0x00, 0x00, 0xB8, 0x3F, 0x00, 0x00, 0x3C, 0x7B, 0x00,
  0x00, 0x8E, 0xF3, 0x00, 0x00, 0x8F, 0xE3, 0x01, 0x80, 0x03, 0xC3, 0x01,
  0x80, 0x81, 0xE3, 0x01, 0x00, 0x80, 0x73, 0x00, 0x00, 0x00, 0x7B, 0x00,
  0x00, 0x80, 0x3F, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x80, 0x0F, 0x00,
  0x00, 0x80, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00,
};
PROGMEM const unsigned char gps32[] = {
  0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
  0x7c, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0xfc, 0x01, 0x00, 0x00,
  0xf8, 0x03, 0x00, 0x00, 0xf0, 0x07, 0x00, 0x00, 0xe0, 0x0f, 0x00, 0x00,
  0xc0, 0x1f, 0x00, 0x00, 0x80, 0x3f, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00,
  0x00, 0x9e, 0x03, 0x00, 0x00, 0xcc, 0x07, 0x00, 0x00, 0xe0, 0x0f, 0x00,
  0x00, 0xf0, 0x0f, 0x00, 0x00, 0xf0, 0x0f, 0x00, 0x00, 0xee, 0x07, 0x00,
  0x00, 0xfc, 0x33, 0x00, 0x00, 0xb8, 0x79, 0x00, 0x00, 0x78, 0xfc, 0x00,
  0x00, 0x60, 0xfc, 0x01, 0x80, 0x40, 0xf8, 0x03, 0x12, 0x01, 0xf0, 0x07,
  0x22, 0x03, 0xe0, 0x0f, 0x42, 0x00, 0xc0, 0x1f, 0xc4, 0x00, 0x80, 0x3f,
  0x08, 0x01, 0x00, 0x3f, 0x18, 0x00, 0x00, 0x1e, 0x20, 0x00, 0x00, 0x1c,
  0xc0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char accel32[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x3c, 0x00,
  0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x5a, 0x00,
  0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0xff, 0x00,
  0x00, 0x80, 0xff, 0x01, 0x20, 0xc0, 0x81, 0x03, 0x30, 0xc0, 0x00, 0x03,
  0x38, 0xc0, 0x3c, 0x03, 0xfc, 0xff, 0x3c, 0x03, 0xfc, 0xff, 0x3c, 0x03,
  0x38, 0xc0, 0x3c, 0x03, 0x30, 0xc0, 0x00, 0x03, 0x00, 0x80, 0x83, 0x03,
  0x00, 0x80, 0xff, 0x03, 0x00, 0x00, 0x7e, 0x37, 0x00, 0x00, 0x00, 0x3e,
  0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x3e,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0
};
PROGMEM const unsigned char settings32[] = {
  0x00, 0xe0, 0x07, 0x00, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x20, 0x04, 0x00,
  0xc0, 0x30, 0x0c, 0x03, 0xe0, 0x35, 0xcc, 0x07, 0x70, 0x1f, 0xf8, 0x0c,
  0x18, 0x04, 0x40, 0x18, 0x18, 0x00, 0x00, 0x18, 0x30, 0x00, 0x00, 0x0c,
  0x20, 0xc0, 0x03, 0x0c, 0x60, 0xf0, 0x0f, 0x04, 0x30, 0x18, 0x18, 0x0c,
  0x18, 0x0c, 0x30, 0x2c, 0x1f, 0x0c, 0x20, 0xf8, 0x03, 0x06, 0x60, 0xc0,
  0x03, 0x06, 0x60, 0xc0, 0x03, 0x06, 0x60, 0x80, 0x03, 0x06, 0x60, 0xc0,
  0x1f, 0x04, 0x20, 0xf8, 0x38, 0x0c, 0x30, 0x1c, 0x30, 0x18, 0x1c, 0x0c,
  0x60, 0xf0, 0x0f, 0x04, 0x20, 0xc0, 0x03, 0x0e, 0x30, 0x00, 0x00, 0x0c,
  0x18, 0x00, 0x00, 0x18, 0x18, 0x02, 0x00, 0x18, 0x30, 0x1f, 0xf8, 0x0c,
  0xe0, 0x39, 0xac, 0x07, 0xc0, 0x20, 0x0c, 0x03, 0x00, 0x20, 0x04, 0x00,
  0x00, 0xe0, 0x06, 0x00, 0x00, 0xc0, 0x07, 0x00,
};
PROGMEM const unsigned char clock32[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x0F, 0x00,
  0x00, 0xFE, 0x7F, 0x00, 0x00, 0xBF, 0xFD, 0x00, 0xC0, 0x87, 0xE1, 0x01,
  0xE0, 0x03, 0xA0, 0x03, 0xE0, 0x00, 0x80, 0x07, 0x70, 0x00, 0x00, 0x0F,
  0x78, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x1F, 0x1C, 0x00, 0x00, 0x1C,
  0x1C, 0x06, 0x60, 0x38, 0x1C, 0x1C, 0x38, 0x38, 0x0C, 0x30, 0x0C, 0x38,
  0x1C, 0xE0, 0x07, 0x38, 0x0C, 0x80, 0x03, 0x38, 0x1C, 0x00, 0x00, 0x38,
  0x1C, 0x00, 0x00, 0x38, 0x1C, 0x00, 0x00, 0x18, 0x98, 0x00, 0x00, 0x1D,
  0xF8, 0x00, 0x00, 0x1E, 0x38, 0x00, 0x00, 0x0E, 0x70, 0x00, 0x00, 0x0E,
  0xE0, 0x00, 0x00, 0x07, 0xC0, 0x07, 0xE0, 0x03, 0xC0, 0x87, 0xE0, 0x03,
  0x00, 0xBF, 0xFF, 0x00, 0x00, 0xFC, 0x7F, 0x00, 0x00, 0xF8, 0x0F, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char music32[] = {
  0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x40, 0x3f, 0x00, 0x00, 0xff, 0x7f,
  0x00, 0xf8, 0xff, 0x3f, 0x00, 0xf8, 0xff, 0x7f, 0x00, 0xf8, 0xff, 0x3f,
  0x00, 0xf8, 0xff, 0x7f, 0x00, 0xf8, 0x3f, 0x30, 0x00, 0xb8, 0x00, 0x60,
  0x00, 0x38, 0x00, 0x30, 0x00, 0x18, 0x00, 0x30, 0x00, 0x18, 0x00, 0x30,
  0x00, 0x38, 0x00, 0x30, 0x00, 0x18, 0x00, 0x30, 0x00, 0x38, 0x00, 0x30,
  0x00, 0x18, 0x00, 0x30, 0x00, 0x38, 0x00, 0x30, 0x00, 0x18, 0x00, 0x30,
  0x00, 0x38, 0x00, 0x30, 0x00, 0x18, 0x00, 0x31, 0x00, 0x38, 0xc0, 0x7f,
  0x00, 0x18, 0xf0, 0x3f, 0xc0, 0x3b, 0xf8, 0x3f, 0xf0, 0x1f, 0xf8, 0x7f,
  0xf8, 0x3f, 0xfc, 0x3f, 0xfc, 0x1f, 0xf8, 0x3f, 0xfc, 0x1f, 0xfc, 0x1f,
  0xfc, 0x1f, 0xf8, 0x0f, 0xfe, 0x1f, 0xf0, 0x07, 0xfc, 0x0f, 0x00, 0x00,
  0xf8, 0x03, 0x00, 0x00, 0xe0, 0x01, 0x00, 0x00,
};
PROGMEM const unsigned char tools32[] = {
  0x00, 0x00, 0x00, 0x00, 0xE0, 0x01, 0x07, 0x00, 0xE0, 0x07, 0x3E, 0x00,
  0xE0, 0x0F, 0xF0, 0x00, 0xC2, 0x0F, 0xE0, 0x01, 0x0E, 0x1F, 0xE0, 0x03,
  0x0E, 0x0F, 0xE0, 0x07, 0x3E, 0x1F, 0xE0, 0x07, 0xFE, 0x1F, 0xE0, 0x0F,
  0xFC, 0x1F, 0xF0, 0x1F, 0xFC, 0x3F, 0xF8, 0x1F, 0xF8, 0xFF, 0x3C, 0x7C,
  0x60, 0x7F, 0x1E, 0x78, 0x00, 0x3C, 0x0F, 0x38, 0x00, 0xB8, 0x07, 0x08,
  0x00, 0xC0, 0x03, 0x00, 0x00, 0xE0, 0x09, 0x00, 0x00, 0xE0, 0x1C, 0x00,
  0x00, 0x5C, 0x3E, 0x00, 0x00, 0x3E, 0xFF, 0x03, 0x00, 0x3F, 0xFE, 0x1F,
  0x80, 0x1F, 0xFC, 0x1F, 0xC0, 0x0F, 0xFC, 0x3F, 0xE0, 0x07, 0xF0, 0x7F,
  0xF0, 0x03, 0xF0, 0x7C, 0xFC, 0x03, 0xF8, 0x70, 0xFE, 0x00, 0xF8, 0x71,
  0xFE, 0x00, 0xF0, 0x21, 0x7C, 0x00, 0xE0, 0x03, 0x3C, 0x00, 0xE0, 0x0F,
  0x10, 0x00, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00,
};
PROGMEM const unsigned char menu30[] = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x1F, 0xFC, 0x07,
  0xFC, 0x1F, 0xFF, 0x0F, 0x0C, 0x38, 0x03, 0x0C, 0x04, 0x30, 0x03, 0x0C,
  0x0E, 0x30, 0x03, 0x0C, 0x0C, 0x30, 0x03, 0x18, 0x0E, 0x30, 0x03, 0x0C,
  0x04, 0x30, 0x03, 0x0C, 0x0C, 0x30, 0x03, 0x1C, 0x0C, 0x30, 0x03, 0x0C,
  0xFC, 0x1F, 0xFE, 0x0F, 0xFC, 0x1F, 0xFE, 0x07, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x70, 0x07, 0xBC, 0x01, 0xFC, 0x1F, 0xFE, 0x0F,
  0x8C, 0x38, 0x07, 0x0E, 0x0C, 0x30, 0x03, 0x0C, 0x04, 0x30, 0x03, 0x08,
  0x0E, 0x30, 0x03, 0x0C, 0x0C, 0x30, 0x03, 0x1C, 0x04, 0x10, 0x03, 0x0C,
  0x0E, 0x30, 0x03, 0x08, 0x04, 0x30, 0x03, 0x0C, 0x4C, 0x39, 0x47, 0x0E,
  0xFC, 0x1F, 0xFE, 0x0F, 0x70, 0x07, 0x78, 0x01, 0x00, 0x00, 0x00, 0x00,
};