Compare commits

..

No commits in common. "master" and "1.1.5" have entirely different histories.

107 changed files with 1471 additions and 20429 deletions

View File

@ -1,27 +0,0 @@
name: Build Example Watchfaces
on:
push:
branches:
- "dev"
pull_request:
branches:
- "dev"
jobs:
build:
name: Build Example Watchfaces
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: ArminJo/arduino-test-compile@v3
with:
arduino-board-fqbn: esp32:esp32:watchy:Revision=v20,PartitionScheme=min_spiffs,UploadSpeed=921600,DebugLevel=none,EraseFlash=none
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
required-libraries: Adafruit GFX Library,Arduino_JSON,DS3232RTC,NTPClient,Rtc_Pcf8563,GxEPD2,WiFiManager
set-build-path: true
- uses: actions/upload-artifact@v3
with:
name: binaries
path: ${{ github.workspace }}/examples/WatchFaces/**/build/*.bin
- uses: actions/download-artifact@v3
- name: Display structure of downloaded files
run: ls -R

View File

@ -1,38 +0,0 @@
name: Release
on:
push:
tags:
- "v[0-9]+.[0-9]+.[0-9]+"
jobs:
release:
name: Build and Release
runs-on: ubuntu-latest
strategy:
matrix:
board-revisions: [v10, v15, v20]
steps:
- uses: actions/checkout@master
- uses: ArminJo/arduino-test-compile@v3
with:
arduino-board-fqbn: esp32:esp32:watchy:Revision=${{ matrix.board-revisions }},PartitionScheme=min_spiffs,UploadSpeed=921600,DebugLevel=none,EraseFlash=none
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
required-libraries: Adafruit GFX Library,Arduino_JSON,DS3232RTC,NTPClient,Rtc_Pcf8563,GxEPD2,WiFiManager
set-build-path: true
- name: Rename binaries with board revision
run: |
parent_dir="${{ github.workspace }}/examples/WatchFaces"
for dir in "$parent_dir"/*; do
if [ -d "$dir" ]; then
cd "$dir/build"
for file in *; do
name="${file%%.*}"
ext="${file#$name.}"
mv "$file" "$name-${{ matrix.board-revisions }}.$ext"
done
cd -
fi
done
- uses: softprops/action-gh-release@v1
with:
name: "Watchy Arduino Library ${{ github.ref_name }}"
files: ${{ github.workspace }}/examples/WatchFaces/**/build/*.bin

1
.gitignore vendored
View File

@ -67,4 +67,3 @@ avr-toolchain-*.zip
manifest.mf
nbbuild.xml
nbproject
.vscode

View File

@ -1,15 +0,0 @@
# How to contribute
### Check out the issue tracker
Search through [Issue tracker](https://github.com/sqfmi/Watchy/issues) for matching topics. It is also recommended to check with current [Pull requests](https://github.com/sqfmi/Watchy/pulls).
### Issue Pull Request
1. Fork this repo and branch out from `dev`.
2. Push commits.
3. Issue pull request.
## Community
- [Discord](https://discord.gg/ZXDegGV8E7)

21
LICENSE
View File

@ -1,21 +0,0 @@
MIT License
Copyright (c) 2023 SQFMI
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,32 +1,21 @@
# Watchy - Fully Open Source E-Paper Watch
# Watchy
![Watchy](https://watchy.sqfmi.com/img/watchy_render.png)
![Watchy](extras/Watchy.jpg)
**Buy Watchy from [The Pi Hut](https://thepihut.com/collections/sqfmi), [Crowd Supply](https://www.crowdsupply.com/sqfmi/watchy), and [Mouser](https://www.mouser.com/ProductDetail/SQFMI/SQFMI-WATCHY-10?qs=DRkmTr78QARN9VSJRzqRxw%3D%3D)!**
[**Watchy Case & Accessories**](https://shop.sqfmi.com)
Visit [**https://watchy.sqfmi.com**](https://watchy.sqfmi.com) for documentation, hardware design files, and more!
[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_buynowCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=UD3CRTDKHHPT8)
## Setup
1. In the Arduino IDE Boards Manager, [install support for the ESP32](https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html).
* Arduino > Preferences > Additional Board Manager URLs
* ```https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json```
2. Install this library (search for **Watchy** in the library manager), and any other dependencies when prompted
1. In the Arduino IDE Boards Manager, install support for the ESP32. You can find instructions here: https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md
2. Install the following libraries:
* [DS3232RTC](https://github.com/JChristensen/DS3232RTC)
* [GxEPD](https://github.com/ZinggJM/GxEPD)
* [Watchy](https://github.com/sqfmi/Watchy) (This library)
3. Check out the examples under ```Examples``` -> ```Watchy```
4. Compile & Upload with these board settings:
* Board: "Watchy"
* Partition Scheme: "Huge App"
* Board Revision: Choose your Watchy version
* Board: "ESP32 Wrover Module"
* All Other Settings: leave to default
You may also have to install the [CP2104 USB to Serial drivers](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) if the port is not automatically detected.
### Have Fun! :)
### Got Questions?
Join our [Discord](https://discord.gg/ZXDegGV8E7)
* You may have to install the [CP2104 USB to Serial drivers](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) if the port is not automatically detected
* Have Fun! :)
Looking for Watchy hardware details? Go here https://github.com/sqfmi/Watchy-Hardware

Binary file not shown.

View File

@ -1,13 +0,0 @@
#include "Watchy_7_SEG.h"
#include "settings.h"
Watchy7SEG watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,199 +0,0 @@
// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const uint8_t DSEG7_Classic_Bold_25Bitmaps[] PROGMEM = {
// Bitmap Data:
0x00, // ' '
0x00, // '!'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '"'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '#'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '$'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '%'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '&'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '''
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '('
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // ')'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '*'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '+'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // ','
0x7F,0xE7,0xFF,0x9F,0xF8, // '-'
0x67,0x98, // '.'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '/'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDC,0x00,0x60,0x00,0x07,0x00,0x1B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xFF,0xEC,0xFF,0xFA,0x3F,0xFE,0x00, // '0'
0x26,0xEE,0xEE,0xEE,0xEE,0x60,0x6E,0xEE,0xEE,0xEE,0xE6,0x20, // '1'
0x3F,0xFE,0x1F,0xFE,0x87,0xFE,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC3,0xFF,0x63,0xFF,0xC7,0xFF,0xC3,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xFF,0xE0,0xFF,0xF8,0x3F,0xFE,0x00, // '2'
0xFF,0xF9,0xFF,0xE9,0xFF,0xB0,0x00,0xE0,0x01,0xC0,0x03,0x80,0x07,0x00,0x0E,0x00,0x1C,0x00,0x38,0x00,0x73,0xFF,0x6F,0xFF,0x0F,0xFD,0x80,0x07,0x00,0x0E,0x00,0x1C,0x00,0x38,0x00,0x70,0x00,0xE0,0x01,0xC0,0x03,0x9F,0xFB,0x7F,0xFA,0xFF,0xF8, // '3'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x81,0xFF,0xB0,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x18,0x00,0x04, // '4'
0x3F,0xFE,0x3F,0xFE,0x3F,0xFE,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1F,0xFF,0x03,0xFF,0xC0,0xFF,0xD8,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x7F,0xEC,0x7F,0xFA,0x3F,0xFE,0x00, // '5'
0x3F,0xFE,0x3F,0xFE,0x3F,0xFE,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1F,0xFF,0x03,0xFF,0xC7,0xFF,0xDB,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xFF,0xEC,0xFF,0xFA,0x3F,0xFE,0x00, // '6'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDC,0x00,0x60,0x00,0x00,0x00,0x18,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x0C,0x00,0x02, // '7'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC7,0xFF,0xDB,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xFF,0xEC,0xFF,0xFA,0x3F,0xFE,0x00, // '8'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC0,0xFF,0xD8,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x7F,0xEC,0x7F,0xFA,0x3F,0xFE,0x00, // '9'
0x4E,0xE0,0x00,0x00,0x00,0x4E,0xE4, // ':'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // ';'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '<'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '='
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '>'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '?'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '@'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC7,0xFF,0xDB,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0x80,0x0C,0x80,0x02, // 'A'
0x40,0x00,0x70,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3F,0xFE,0x07,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'B'
0x1F,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'C'
0x00,0x01,0x00,0x01,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x87,0xFE,0xC7,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'D'
0x3F,0xFE,0x7F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'E'
0x3F,0xFE,0x7F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x00,0x40,0x00, // 'F'
0x3F,0xFE,0x3F,0xFE,0x3F,0xFE,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1C,0x00,0x00,0x00,0x07,0x00,0x1B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xFF,0xEC,0xFF,0xFA,0x3F,0xFE,0x00, // 'G'
0x40,0x00,0x70,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3F,0xFE,0x07,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x00,0x19,0x00,0x04, // 'H'
0x6E,0xEE,0xEE,0xEE,0xE6,0x20, // 'I'
0x00,0x01,0x00,0x01,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x00,0xC0,0x00,0x0E,0x00,0x37,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'J'
0x3F,0xFE,0x3F,0xFE,0x3F,0xFE,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1F,0xFF,0x03,0xFF,0xC7,0xFF,0xDB,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0x80,0x0C,0x80,0x02, // 'K'
0x40,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x00,0x00,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'L'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDC,0x00,0x60,0x00,0x07,0x00,0x1B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0x80,0x0C,0x80,0x02, // 'M'
0x1F,0xF8,0x1F,0xFE,0x3F,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDC,0x00,0x64,0x00,0x10, // 'N'
0x1F,0xF8,0x1F,0xFE,0x3F,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x67,0xFF,0xD1,0xFF,0xF0, // 'O'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC7,0xFF,0xC3,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0x80,0x00,0x80,0x00, // 'P'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC0,0xFF,0xD8,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x0C,0x00,0x02, // 'Q'
0x1F,0xF8,0x7F,0xFB,0xFF,0xE7,0x80,0x0F,0x00,0x1E,0x00,0x3C,0x00,0x78,0x00,0xF0,0x01,0xE0,0x03,0xC0,0x07,0x00,0x04,0x00,0x00, // 'R'
0x40,0x00,0x70,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3F,0xFE,0x07,0xFF,0x81,0xFF,0xB0,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0xFF,0xD8,0xFF,0xF4,0x7F,0xFC, // 'S'
0x40,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'T'
0xE0,0x03,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x7F,0xFD,0x9F,0xFF,0x47,0xFF,0xC0, // 'U'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xB8,0x00,0xC0,0x00,0x0E,0x00,0x37,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'V'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'W'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x00,0x19,0x00,0x04, // 'X'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x81,0xFF,0xB0,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0xFF,0xD8,0xFF,0xF4,0x7F,0xFC, // 'Y'
0x3F,0xFE,0x1F,0xFE,0x87,0xFE,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0x60,0x00,0x07,0x00,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xFF,0xE0,0xFF,0xF8,0x3F,0xFE,0x00, // 'Z'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '['
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '\'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // ']'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '^'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '_'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '`'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC7,0xFF,0xDB,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0x80,0x0C,0x80,0x02, // 'a'
0x40,0x00,0x70,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3F,0xFE,0x07,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'b'
0x1F,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'c'
0x00,0x01,0x00,0x01,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x87,0xFE,0xC7,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'd'
0x3F,0xFE,0x7F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'e'
0x3F,0xFE,0x7F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x00,0x40,0x00, // 'f'
0x3F,0xFE,0x3F,0xFE,0x3F,0xFE,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1C,0x00,0x00,0x00,0x07,0x00,0x1B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xFF,0xEC,0xFF,0xFA,0x3F,0xFE,0x00, // 'g'
0x40,0x00,0x70,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3F,0xFE,0x07,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x00,0x19,0x00,0x04, // 'h'
0x6E,0xEE,0xEE,0xEE,0xE6,0x20, // 'i'
0x00,0x01,0x00,0x01,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x00,0xC0,0x00,0x0E,0x00,0x37,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'j'
0x3F,0xFE,0x3F,0xFE,0x3F,0xFE,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1F,0xFF,0x03,0xFF,0xC7,0xFF,0xDB,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0x80,0x0C,0x80,0x02, // 'k'
0x40,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xE0,0x00,0x00,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 'l'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDC,0x00,0x60,0x00,0x07,0x00,0x1B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0x80,0x0C,0x80,0x02, // 'm'
0x1F,0xF8,0x1F,0xFE,0x3F,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDC,0x00,0x64,0x00,0x10, // 'n'
0x1F,0xF8,0x1F,0xFE,0x3F,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x67,0xFF,0xD1,0xFF,0xF0, // 'o'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC7,0xFF,0xC3,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0x80,0x00,0x80,0x00, // 'p'
0x3F,0xFE,0x3F,0xFE,0xBF,0xFE,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDF,0xFF,0x63,0xFF,0xC0,0xFF,0xD8,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x0C,0x00,0x02, // 'q'
0x1F,0xF8,0x7F,0xFB,0xFF,0xE7,0x80,0x0F,0x00,0x1E,0x00,0x3C,0x00,0x78,0x00,0xF0,0x01,0xE0,0x03,0xC0,0x07,0x00,0x04,0x00,0x00, // 'r'
0x40,0x00,0x70,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3F,0xFE,0x07,0xFF,0x81,0xFF,0xB0,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0xFF,0xD8,0xFF,0xF4,0x7F,0xFC, // 's'
0x40,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x3F,0xFC,0xFF,0xF8,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xF0,0x00,0xFF,0xF8,0x7F,0xFC,0x3F,0xFE, // 't'
0xE0,0x03,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x7F,0xFD,0x9F,0xFF,0x47,0xFF,0xC0, // 'u'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xB8,0x00,0xC0,0x00,0x0E,0x00,0x37,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'v'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0xFF,0xD9,0xFF,0xF4,0x7F,0xFC, // 'w'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x8F,0xFF,0xB7,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x00,0x19,0x00,0x04, // 'x'
0x40,0x01,0x70,0x01,0xBC,0x01,0xDE,0x00,0xEF,0x00,0x77,0x80,0x3B,0xC0,0x1D,0xE0,0x0E,0xF0,0x07,0x78,0x03,0xBF,0xFE,0xC7,0xFF,0x81,0xFF,0xB0,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0xE0,0x00,0x70,0xFF,0xD8,0xFF,0xF4,0x7F,0xFC, // 'y'
0x3F,0xFE,0x1F,0xFE,0x87,0xFE,0xC0,0x00,0xE0,0x00,0x70,0x00,0x38,0x00,0x1C,0x00,0x0E,0x00,0x07,0x00,0x03,0x80,0x01,0xC0,0x00,0x60,0x00,0x07,0x00,0x03,0xC0,0x01,0xE0,0x00,0xF0,0x00,0x78,0x00,0x3C,0x00,0x1E,0x00,0x0F,0x00,0x07,0x80,0x03,0xFF,0xE0,0xFF,0xF8,0x3F,0xFE,0x00, // 'z'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '{'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE, // '|'
0xFE,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82,0xFE // '}'
};
const GFXglyph DSEG7_Classic_Bold_25Glyphs[] PROGMEM = {
// bitmapOffset, width, height, xAdvance, xOffset, yOffset
{ 0, 1, 1, 6, 0, 0 }, // ' '
{ 1, 1, 1, 21, 0, 0 }, // '!'
{ 2, 8, 17, 10, 1, -17 }, // '"'
{ 19, 8, 17, 10, 1, -17 }, // '#'
{ 36, 8, 17, 10, 1, -17 }, // '$'
{ 53, 8, 17, 10, 1, -17 }, // '%'
{ 70, 8, 17, 10, 1, -17 }, // '&'
{ 87, 8, 17, 10, 1, -17 }, // '''
{ 104, 8, 17, 10, 1, -17 }, // '('
{ 121, 8, 17, 10, 1, -17 }, // ')'
{ 138, 8, 17, 10, 1, -17 }, // '*'
{ 155, 8, 17, 10, 1, -17 }, // '+'
{ 172, 8, 17, 10, 1, -17 }, // ','
{ 189, 13, 3, 21, 4, -14 }, // '-'
{ 194, 5, 3, 1, -2, -3 }, // '.'
{ 196, 8, 17, 10, 1, -17 }, // '/'
{ 213, 17, 25, 21, 2, -25 }, // '0'
{ 267, 4, 23, 21, 15, -24 }, // '1'
{ 279, 17, 25, 21, 2, -25 }, // '2'
{ 333, 15, 25, 21, 4, -25 }, // '3'
{ 380, 17, 23, 21, 2, -24 }, // '4'
{ 429, 17, 25, 21, 2, -25 }, // '5'
{ 483, 17, 25, 21, 2, -25 }, // '6'
{ 537, 17, 24, 21, 2, -25 }, // '7'
{ 588, 17, 25, 21, 2, -25 }, // '8'
{ 642, 17, 25, 21, 2, -25 }, // '9'
{ 696, 4, 14, 6, 1, -19 }, // ':'
{ 703, 8, 17, 10, 1, -17 }, // ';'
{ 720, 8, 17, 10, 1, -17 }, // '<'
{ 737, 8, 17, 10, 1, -17 }, // '='
{ 754, 8, 17, 10, 1, -17 }, // '>'
{ 771, 8, 17, 10, 1, -17 }, // '?'
{ 788, 8, 17, 10, 1, -17 }, // '@'
{ 805, 17, 24, 21, 2, -25 }, // 'A'
{ 856, 17, 24, 21, 2, -24 }, // 'B'
{ 907, 16, 14, 21, 2, -14 }, // 'C'
{ 935, 17, 24, 21, 2, -24 }, // 'D'
{ 986, 16, 25, 21, 2, -25 }, // 'E'
{ 1036, 16, 24, 21, 2, -25 }, // 'F'
{ 1084, 17, 25, 21, 2, -25 }, // 'G'
{ 1138, 17, 23, 21, 2, -24 }, // 'H'
{ 1187, 4, 11, 21, 15, -12 }, // 'I'
{ 1193, 17, 24, 21, 2, -24 }, // 'J'
{ 1244, 17, 24, 21, 2, -25 }, // 'K'
{ 1295, 16, 24, 21, 2, -24 }, // 'L'
{ 1343, 17, 24, 21, 2, -25 }, // 'M'
{ 1394, 17, 13, 21, 2, -14 }, // 'N'
{ 1422, 17, 14, 21, 2, -14 }, // 'O'
{ 1452, 17, 24, 21, 2, -25 }, // 'P'
{ 1503, 17, 24, 21, 2, -25 }, // 'Q'
{ 1554, 15, 13, 21, 2, -14 }, // 'R'
{ 1579, 17, 24, 21, 2, -24 }, // 'S'
{ 1630, 16, 24, 21, 2, -24 }, // 'T'
{ 1678, 17, 12, 21, 2, -12 }, // 'U'
{ 1704, 17, 24, 21, 2, -24 }, // 'V'
{ 1755, 17, 24, 21, 2, -24 }, // 'W'
{ 1806, 17, 23, 21, 2, -24 }, // 'X'
{ 1855, 17, 24, 21, 2, -24 }, // 'Y'
{ 1906, 17, 25, 21, 2, -25 }, // 'Z'
{ 1960, 8, 17, 10, 1, -17 }, // '['
{ 1977, 8, 17, 10, 1, -17 }, // '\'
{ 1994, 8, 17, 10, 1, -17 }, // ']'
{ 2011, 8, 17, 10, 1, -17 }, // '^'
{ 2028, 8, 17, 10, 1, -17 }, // '_'
{ 2045, 8, 17, 10, 1, -17 }, // '`'
{ 2062, 17, 24, 21, 2, -25 }, // 'a'
{ 2113, 17, 24, 21, 2, -24 }, // 'b'
{ 2164, 16, 14, 21, 2, -14 }, // 'c'
{ 2192, 17, 24, 21, 2, -24 }, // 'd'
{ 2243, 16, 25, 21, 2, -25 }, // 'e'
{ 2293, 16, 24, 21, 2, -25 }, // 'f'
{ 2341, 17, 25, 21, 2, -25 }, // 'g'
{ 2395, 17, 23, 21, 2, -24 }, // 'h'
{ 2444, 4, 11, 21, 15, -12 }, // 'i'
{ 2450, 17, 24, 21, 2, -24 }, // 'j'
{ 2501, 17, 24, 21, 2, -25 }, // 'k'
{ 2552, 16, 24, 21, 2, -24 }, // 'l'
{ 2600, 17, 24, 21, 2, -25 }, // 'm'
{ 2651, 17, 13, 21, 2, -14 }, // 'n'
{ 2679, 17, 14, 21, 2, -14 }, // 'o'
{ 2709, 17, 24, 21, 2, -25 }, // 'p'
{ 2760, 17, 24, 21, 2, -25 }, // 'q'
{ 2811, 15, 13, 21, 2, -14 }, // 'r'
{ 2836, 17, 24, 21, 2, -24 }, // 's'
{ 2887, 16, 24, 21, 2, -24 }, // 't'
{ 2935, 17, 12, 21, 2, -12 }, // 'u'
{ 2961, 17, 24, 21, 2, -24 }, // 'v'
{ 3012, 17, 24, 21, 2, -24 }, // 'w'
{ 3063, 17, 23, 21, 2, -24 }, // 'x'
{ 3112, 17, 24, 21, 2, -24 }, // 'y'
{ 3163, 17, 25, 21, 2, -25 }, // 'z'
{ 3217, 8, 17, 10, 1, -17 }, // '{'
{ 3234, 8, 17, 10, 1, -17 }, // '|'
{ 3251, 8, 17, 10, 1, -17 } // '}'
};
const GFXfont DSEG7_Classic_Bold_25 PROGMEM = {
(uint8_t *)DSEG7_Classic_Bold_25Bitmaps,(GFXglyph *)DSEG7_Classic_Bold_25Glyphs,0x20, 0x7E, 28};

View File

@ -1,199 +0,0 @@
// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const uint8_t DSEG7_Classic_Regular_15Bitmaps[] PROGMEM = {
// Bitmap Data:
0x00, // ' '
0x00, // '!'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '"'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '#'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '$'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '%'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '&'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '''
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '('
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // ')'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '*'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '+'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // ','
0xFF,0x00, // '-'
0xD8, // '.'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '/'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x30,0x00,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // '0'
0xDB,0x6D,0x86,0xDB,0x6C, // '1'
0x7F,0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x33,0xFC,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE0, // '2'
0xFF,0x00,0x60,0x18,0x06,0x01,0x80,0x60,0x1B,0xFC,0x01,0x80,0x60,0x18,0x06,0x01,0x80,0x6F,0xF0, // '3'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0,0x06,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C, // '4'
0x7F,0x98,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x03,0xFC,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x9F,0xE0, // '5'
0x7F,0x98,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x03,0xFC,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // '6'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x30,0x00,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80, // '7'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // '8'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x9F,0xE0, // '9'
0xA0,0x0A, // ':'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // ';'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '<'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '='
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '>'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '?'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '@'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80, // 'A'
0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'B'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x01,0xFE, // 'C'
0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x9F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'D'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x01,0xFE,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x07,0xF8, // 'E'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x01,0xFE,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x00, // 'F'
0x7F,0x98,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x00,0x00,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // 'G'
0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C, // 'H'
0xDB,0x6D,0x80, // 'I'
0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x06,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'J'
0x7F,0x98,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x03,0xFC,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80, // 'K'
0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x00,0x03,0x00,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x1F,0xE0, // 'L'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x30,0x00,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80, // 'M'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x30, // 'N'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC, // 'O'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x00, // 'P'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80, // 'Q'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x00, // 'R'
0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE0,0x06,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0xFF,0x00, // 'S'
0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x07,0xFB,0x00,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x1F,0xE0, // 'T'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // 'U'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80,0x06,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'V'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'W'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C, // 'X'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0,0x06,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0xFF,0x00, // 'Y'
0x7F,0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE0, // 'Z'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '['
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '\'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // ']'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '^'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '_'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '`'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80, // 'a'
0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'b'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x01,0xFE, // 'c'
0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x9F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'd'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x01,0xFE,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x07,0xF8, // 'e'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x01,0xFE,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x00, // 'f'
0x7F,0x98,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x00,0x00,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // 'g'
0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C, // 'h'
0xDB,0x6D,0x80, // 'i'
0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x06,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'j'
0x7F,0x98,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x03,0xFC,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80, // 'k'
0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x00,0x03,0x00,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x1F,0xE0, // 'l'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x30,0x00,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80, // 'm'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x30, // 'n'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC, // 'o'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x00, // 'p'
0x7F,0x98,0x1B,0x03,0x60,0x6C,0x0D,0x81,0xB0,0x33,0xFC,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80, // 'q'
0x7F,0xB0,0x0C,0x03,0x00,0xC0,0x30,0x0C,0x00, // 'r'
0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE0,0x06,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0xFF,0x00, // 's'
0xC0,0x30,0x0C,0x03,0x00,0xC0,0x30,0x07,0xFB,0x00,0xC0,0x30,0x0C,0x03,0x00,0xC0,0x1F,0xE0, // 't'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0, // 'u'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x80,0x06,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'v'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C,0xFF,0x00, // 'w'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE6,0x06,0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0C, // 'x'
0xC0,0xD8,0x1B,0x03,0x60,0x6C,0x0D,0x81,0x9F,0xE0,0x06,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0xFF,0x00, // 'y'
0x7F,0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x00,0xC0,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x1F,0xE0, // 'z'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '{'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC, // '|'
0xF4,0xA5,0x29,0x4A,0x52,0x94,0xBC // '}'
};
const GFXglyph DSEG7_Classic_Regular_15Glyphs[] PROGMEM = {
// bitmapOffset, width, height, xAdvance, xOffset, yOffset
{ 0, 1, 1, 4, 0, 0 }, // ' '
{ 1, 1, 1, 13, 0, 0 }, // '!'
{ 2, 5, 11, 6, 1, -11 }, // '"'
{ 9, 5, 11, 6, 1, -11 }, // '#'
{ 16, 5, 11, 6, 1, -11 }, // '$'
{ 23, 5, 11, 6, 1, -11 }, // '%'
{ 30, 5, 11, 6, 1, -11 }, // '&'
{ 37, 5, 11, 6, 1, -11 }, // '''
{ 44, 5, 11, 6, 1, -11 }, // '('
{ 51, 5, 11, 6, 1, -11 }, // ')'
{ 58, 5, 11, 6, 1, -11 }, // '*'
{ 65, 5, 11, 6, 1, -11 }, // '+'
{ 72, 5, 11, 6, 1, -11 }, // ','
{ 79, 9, 1, 13, 2, -8 }, // '-'
{ 81, 3, 2, 1, -1, -2 }, // '.'
{ 82, 5, 11, 6, 1, -11 }, // '/'
{ 89, 11, 15, 13, 1, -15 }, // '0'
{ 110, 3, 13, 13, 9, -14 }, // '1'
{ 115, 11, 15, 13, 1, -15 }, // '2'
{ 136, 10, 15, 13, 2, -15 }, // '3'
{ 155, 11, 13, 13, 1, -14 }, // '4'
{ 173, 11, 15, 13, 1, -15 }, // '5'
{ 194, 11, 15, 13, 1, -15 }, // '6'
{ 215, 11, 14, 13, 1, -15 }, // '7'
{ 235, 11, 15, 13, 1, -15 }, // '8'
{ 256, 11, 15, 13, 1, -15 }, // '9'
{ 277, 2, 8, 4, 1, -11 }, // ':'
{ 279, 5, 11, 6, 1, -11 }, // ';'
{ 286, 5, 11, 6, 1, -11 }, // '<'
{ 293, 5, 11, 6, 1, -11 }, // '='
{ 300, 5, 11, 6, 1, -11 }, // '>'
{ 307, 5, 11, 6, 1, -11 }, // '?'
{ 314, 5, 11, 6, 1, -11 }, // '@'
{ 321, 11, 14, 13, 1, -15 }, // 'A'
{ 341, 11, 14, 13, 1, -14 }, // 'B'
{ 361, 10, 8, 13, 1, -8 }, // 'C'
{ 371, 11, 14, 13, 1, -14 }, // 'D'
{ 391, 10, 15, 13, 1, -15 }, // 'E'
{ 410, 10, 14, 13, 1, -15 }, // 'F'
{ 428, 11, 15, 13, 1, -15 }, // 'G'
{ 449, 11, 13, 13, 1, -14 }, // 'H'
{ 467, 3, 6, 13, 9, -7 }, // 'I'
{ 470, 11, 14, 13, 1, -14 }, // 'J'
{ 490, 11, 14, 13, 1, -15 }, // 'K'
{ 510, 10, 14, 13, 1, -14 }, // 'L'
{ 528, 11, 14, 13, 1, -15 }, // 'M'
{ 548, 11, 7, 13, 1, -8 }, // 'N'
{ 558, 11, 8, 13, 1, -8 }, // 'O'
{ 569, 11, 14, 13, 1, -15 }, // 'P'
{ 589, 11, 14, 13, 1, -15 }, // 'Q'
{ 609, 10, 7, 13, 1, -8 }, // 'R'
{ 618, 11, 14, 13, 1, -14 }, // 'S'
{ 638, 10, 14, 13, 1, -14 }, // 'T'
{ 656, 11, 7, 13, 1, -7 }, // 'U'
{ 666, 11, 14, 13, 1, -14 }, // 'V'
{ 686, 11, 14, 13, 1, -14 }, // 'W'
{ 706, 11, 13, 13, 1, -14 }, // 'X'
{ 724, 11, 14, 13, 1, -14 }, // 'Y'
{ 744, 11, 15, 13, 1, -15 }, // 'Z'
{ 765, 5, 11, 6, 1, -11 }, // '['
{ 772, 5, 11, 6, 1, -11 }, // '\'
{ 779, 5, 11, 6, 1, -11 }, // ']'
{ 786, 5, 11, 6, 1, -11 }, // '^'
{ 793, 5, 11, 6, 1, -11 }, // '_'
{ 800, 5, 11, 6, 1, -11 }, // '`'
{ 807, 11, 14, 13, 1, -15 }, // 'a'
{ 827, 11, 14, 13, 1, -14 }, // 'b'
{ 847, 10, 8, 13, 1, -8 }, // 'c'
{ 857, 11, 14, 13, 1, -14 }, // 'd'
{ 877, 10, 15, 13, 1, -15 }, // 'e'
{ 896, 10, 14, 13, 1, -15 }, // 'f'
{ 914, 11, 15, 13, 1, -15 }, // 'g'
{ 935, 11, 13, 13, 1, -14 }, // 'h'
{ 953, 3, 6, 13, 9, -7 }, // 'i'
{ 956, 11, 14, 13, 1, -14 }, // 'j'
{ 976, 11, 14, 13, 1, -15 }, // 'k'
{ 996, 10, 14, 13, 1, -14 }, // 'l'
{ 1014, 11, 14, 13, 1, -15 }, // 'm'
{ 1034, 11, 7, 13, 1, -8 }, // 'n'
{ 1044, 11, 8, 13, 1, -8 }, // 'o'
{ 1055, 11, 14, 13, 1, -15 }, // 'p'
{ 1075, 11, 14, 13, 1, -15 }, // 'q'
{ 1095, 10, 7, 13, 1, -8 }, // 'r'
{ 1104, 11, 14, 13, 1, -14 }, // 's'
{ 1124, 10, 14, 13, 1, -14 }, // 't'
{ 1142, 11, 7, 13, 1, -7 }, // 'u'
{ 1152, 11, 14, 13, 1, -14 }, // 'v'
{ 1172, 11, 14, 13, 1, -14 }, // 'w'
{ 1192, 11, 13, 13, 1, -14 }, // 'x'
{ 1210, 11, 14, 13, 1, -14 }, // 'y'
{ 1230, 11, 15, 13, 1, -15 }, // 'z'
{ 1251, 5, 11, 6, 1, -11 }, // '{'
{ 1258, 5, 11, 6, 1, -11 }, // '|'
{ 1265, 5, 11, 6, 1, -11 } // '}'
};
const GFXfont DSEG7_Classic_Regular_15 PROGMEM = {
(uint8_t *)DSEG7_Classic_Regular_15Bitmaps,(GFXglyph *)DSEG7_Classic_Regular_15Glyphs,0x20, 0x7E, 17};

View File

@ -1,199 +0,0 @@
// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const uint8_t DSEG7_Classic_Regular_39Bitmaps[] PROGMEM = {
// Bitmap Data:
0x00, // ' '
0x00, // '!'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '"'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '#'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '$'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '%'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '&'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '''
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '('
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // ')'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '*'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '+'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // ','
0x7F,0xFF,0xE7,0xFF,0xFF,0x9F,0xFF,0xF8, // '-'
0x67,0xBD,0xE6,0x00, // '.'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '/'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0,0x00,0x00,0x08,0x00,0x00,0x36,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDD,0xFF,0xFE,0xED,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // '0'
0x33,0xBD,0xEF,0x7B,0xDE,0xF7,0xBD,0xEF,0x7B,0xCE,0x30,0x0C,0xEF,0x7B,0xDE,0xF7,0xBD,0xEF,0x7B,0xDE,0xF3,0x8C, // '1'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC1,0xFF,0xFE,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x03,0x87,0xFF,0xFE,0xC7,0xFF,0xFF,0x89,0xFF,0xFF,0x86,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1D,0xFF,0xFE,0x0D,0xFF,0xFF,0x81,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // '2'
0xFF,0xFF,0xF1,0xFF,0xFF,0xE1,0xFF,0xFF,0xB1,0xFF,0xFE,0xE0,0x00,0x03,0xC0,0x00,0x07,0x80,0x00,0x0F,0x00,0x00,0x1E,0x00,0x00,0x3C,0x00,0x00,0x78,0x00,0x00,0xF0,0x00,0x01,0xE0,0x00,0x03,0xC0,0x00,0x07,0x80,0x00,0x0F,0x00,0x00,0x1E,0x00,0x00,0x3C,0x00,0x00,0x39,0xFF,0xFF,0xB7,0xFF,0xFF,0x87,0xFF,0xFE,0xC0,0x00,0x03,0x80,0x00,0x0F,0x00,0x00,0x1E,0x00,0x00,0x3C,0x00,0x00,0x78,0x00,0x00,0xF0,0x00,0x01,0xE0,0x00,0x03,0xC0,0x00,0x07,0x80,0x00,0x0F,0x00,0x00,0x1E,0x00,0x00,0x3C,0x00,0x00,0x78,0x00,0x00,0xF1,0xFF,0xFE,0xE7,0xFF,0xFE,0xDF,0xFF,0xFE,0x3F,0xFF,0xFC,0x00, // '3'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC0,0x00,0x00,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x03,0x80,0x00,0x00,0xC0, // '4'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0x1D,0xFF,0xFE,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x37,0xFF,0xFE,0x07,0xFF,0xFF,0x81,0xFF,0xFF,0xB0,0x00,0x00,0x38,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC1,0xFF,0xFE,0xE1,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // '5'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0x1D,0xFF,0xFE,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x37,0xFF,0xFE,0x07,0xFF,0xFF,0x89,0xFF,0xFF,0xB6,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDD,0xFF,0xFE,0xED,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // '6'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x38,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x00,0xE0,0x00,0x00,0x30, // '7'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x89,0xFF,0xFF,0xB6,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDD,0xFF,0xFE,0xED,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // '8'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x81,0xFF,0xFF,0xB0,0x00,0x00,0x38,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC1,0xFF,0xFE,0xE1,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // '9'
0x79,0xE7,0x9E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x79,0xE7,0x9E, // ':'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // ';'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '<'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '='
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '>'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '?'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '@'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x89,0xFF,0xFF,0xB6,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x00,0xEC,0x00,0x00,0x30, // 'A'
0xC0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xDF,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'B'
0x1F,0xFF,0xF8,0x7F,0xFF,0xFA,0x7F,0xFF,0xE6,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xDF,0xFF,0xE3,0x7F,0xFF,0xE1,0xFF,0xFF,0xE3,0xFF,0xFF,0xC0, // 'C'
0x00,0x00,0x03,0x00,0x00,0x03,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x0E,0x1F,0xFF,0xFB,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'D'
0x3F,0xFF,0xFC,0x7F,0xFF,0xFB,0x7F,0xFF,0xE7,0x7F,0xFF,0x8E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x7F,0xFF,0xE1,0xFF,0xFF,0xE9,0xFF,0xFF,0x98,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x7F,0xFF,0x8D,0xFF,0xFF,0x87,0xFF,0xFF,0x8F,0xFF,0xFF,0x00, // 'E'
0x3F,0xFF,0xFC,0x7F,0xFF,0xFB,0x7F,0xFF,0xE7,0x7F,0xFF,0x8E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x7F,0xFF,0xE1,0xFF,0xFF,0xE9,0xFF,0xFF,0x98,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0C,0x00,0x00,0x00, // 'F'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0x1D,0xFF,0xFE,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x36,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDD,0xFF,0xFE,0xED,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // 'G'
0xC0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xDF,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0, // 'H'
0x33,0xBD,0xEF,0x7B,0xDE,0xF7,0xBD,0xEF,0x7B,0xCE,0x30, // 'I'
0x00,0x00,0x03,0x00,0x00,0x03,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x0E,0x00,0x00,0x03,0x00,0x00,0x00,0x20,0x00,0x00,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'J'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0x1D,0xFF,0xFE,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x37,0xFF,0xFE,0x07,0xFF,0xFF,0x89,0xFF,0xFF,0xB6,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x00,0xEC,0x00,0x00,0x30, // 'K'
0xC0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x06,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xDF,0xFF,0xE3,0x7F,0xFF,0xE1,0xFF,0xFF,0xE3,0xFF,0xFF,0xC0, // 'L'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0,0x00,0x00,0x08,0x00,0x00,0x36,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x00,0xEC,0x00,0x00,0x30, // 'M'
0x1F,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0, // 'N'
0x1F,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'O'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x89,0xFF,0xFF,0x86,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0C,0x00,0x00,0x00, // 'P'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x81,0xFF,0xFF,0xB0,0x00,0x00,0x38,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x00,0xE0,0x00,0x00,0x30, // 'Q'
0x1F,0xFF,0xF8,0x7F,0xFF,0xFA,0x7F,0xFF,0xE6,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x00,0x00,0x00, // 'R'
0xC0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xDF,0xFF,0xF8,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC0,0x00,0x00,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x07,0xFF,0xFB,0x87,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'S'
0xC0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xDF,0xFF,0xF8,0x7F,0xFF,0xFA,0x7F,0xFF,0xE6,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xDF,0xFF,0xE3,0x7F,0xFF,0xE1,0xFF,0xFF,0xE3,0xFF,0xFF,0xC0, // 'T'
0x80,0x00,0x03,0x60,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xDF,0xFF,0xEE,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x0F,0xFF,0xFF,0x00, // 'U'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xC0,0x00,0x03,0x00,0x00,0x00,0x20,0x00,0x00,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'V'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'W'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0, // 'X'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC0,0x00,0x00,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x07,0xFF,0xFB,0x87,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'Y'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC1,0xFF,0xFE,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x03,0x80,0x00,0x00,0xC0,0x00,0x00,0x08,0x00,0x00,0x06,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1D,0xFF,0xFE,0x0D,0xFF,0xFF,0x81,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // 'Z'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '['
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '\'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // ']'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '^'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '_'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '`'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x89,0xFF,0xFF,0xB6,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x00,0xEC,0x00,0x00,0x30, // 'a'
0xC0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xDF,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'b'
0x1F,0xFF,0xF8,0x7F,0xFF,0xFA,0x7F,0xFF,0xE6,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xDF,0xFF,0xE3,0x7F,0xFF,0xE1,0xFF,0xFF,0xE3,0xFF,0xFF,0xC0, // 'c'
0x00,0x00,0x03,0x00,0x00,0x03,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x0E,0x1F,0xFF,0xFB,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'd'
0x3F,0xFF,0xFC,0x7F,0xFF,0xFB,0x7F,0xFF,0xE7,0x7F,0xFF,0x8E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x7F,0xFF,0xE1,0xFF,0xFF,0xE9,0xFF,0xFF,0x98,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x7F,0xFF,0x8D,0xFF,0xFF,0x87,0xFF,0xFF,0x8F,0xFF,0xFF,0x00, // 'e'
0x3F,0xFF,0xFC,0x7F,0xFF,0xFB,0x7F,0xFF,0xE7,0x7F,0xFF,0x8E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x7F,0xFF,0xE1,0xFF,0xFF,0xE9,0xFF,0xFF,0x98,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0C,0x00,0x00,0x00, // 'f'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0x1D,0xFF,0xFE,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x36,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDD,0xFF,0xFE,0xED,0xFF,0xFF,0xB1,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // 'g'
0xC0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xDF,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0, // 'h'
0x33,0xBD,0xEF,0x7B,0xDE,0xF7,0xBD,0xEF,0x7B,0xCE,0x30, // 'i'
0x00,0x00,0x03,0x00,0x00,0x03,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x0E,0x00,0x00,0x03,0x00,0x00,0x00,0x20,0x00,0x00,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'j'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0x1D,0xFF,0xFE,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x37,0xFF,0xFE,0x07,0xFF,0xFF,0x89,0xFF,0xFF,0xB6,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x00,0xEC,0x00,0x00,0x30, // 'k'
0xC0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x06,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xDF,0xFF,0xE3,0x7F,0xFF,0xE1,0xFF,0xFF,0xE3,0xFF,0xFF,0xC0, // 'l'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0,0x00,0x00,0x08,0x00,0x00,0x36,0x00,0x00,0x3B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x00,0xEC,0x00,0x00,0x30, // 'm'
0x1F,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0, // 'n'
0x1F,0xFF,0xF8,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'o'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x89,0xFF,0xFF,0x86,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0C,0x00,0x00,0x00, // 'p'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x37,0xFF,0xFE,0xDD,0xFF,0xFE,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x81,0xFF,0xFF,0xB0,0x00,0x00,0x38,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x00,0xE0,0x00,0x00,0x30, // 'q'
0x1F,0xFF,0xF8,0x7F,0xFF,0xFA,0x7F,0xFF,0xE6,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x00,0x00,0x00, // 'r'
0xC0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xDF,0xFF,0xF8,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC0,0x00,0x00,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x07,0xFF,0xFB,0x87,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 's'
0xC0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xDF,0xFF,0xF8,0x7F,0xFF,0xFA,0x7F,0xFF,0xE6,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0xE0,0x00,0x01,0xDF,0xFF,0xE3,0x7F,0xFF,0xE1,0xFF,0xFF,0xE3,0xFF,0xFF,0xC0, // 't'
0x80,0x00,0x03,0x60,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xDF,0xFF,0xEE,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x0F,0xFF,0xFF,0x00, // 'u'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xC0,0x00,0x03,0x00,0x00,0x00,0x20,0x00,0x00,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'v'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x77,0xFF,0xFB,0xB7,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'w'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x27,0xFF,0xFE,0xD8,0x00,0x00,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x03,0xB0,0x00,0x00,0xC0, // 'x'
0xC0,0x00,0x03,0x70,0x00,0x03,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x1E,0xE0,0x00,0x0F,0x70,0x00,0x07,0xB8,0x00,0x03,0xDC,0x00,0x01,0xEE,0x00,0x00,0xF7,0x00,0x00,0x7B,0x80,0x00,0x3D,0xC0,0x00,0x0E,0xDF,0xFF,0xFB,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC0,0x00,0x00,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x07,0xFF,0xFB,0x87,0xFF,0xFE,0xC7,0xFF,0xFF,0x83,0xFF,0xFF,0xC0, // 'y'
0x3F,0xFF,0xFC,0x1F,0xFF,0xFE,0x07,0xFF,0xFE,0xC1,0xFF,0xFE,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x07,0x80,0x00,0x03,0xC0,0x00,0x01,0xE0,0x00,0x00,0xF0,0x00,0x00,0x78,0x00,0x00,0x3C,0x00,0x00,0x1E,0x00,0x00,0x0F,0x00,0x00,0x03,0x80,0x00,0x00,0xC0,0x00,0x00,0x08,0x00,0x00,0x06,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1C,0x00,0x00,0x0E,0x00,0x00,0x07,0x00,0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0x70,0x00,0x00,0x38,0x00,0x00,0x1D,0xFF,0xFE,0x0D,0xFF,0xFF,0x81,0xFF,0xFF,0xE0,0xFF,0xFF,0xF0, // 'z'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '{'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8, // '|'
0xFF,0xD0,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x50,0x0A,0x01,0x40,0x28,0x05,0x00,0xA0,0x14,0x02,0x80,0x5F,0xF8 // '}'
};
const GFXglyph DSEG7_Classic_Regular_39Glyphs[] PROGMEM = {
// bitmapOffset, width, height, xAdvance, xOffset, yOffset
{ 0, 1, 1, 9, 0, 0 }, // ' '
{ 1, 1, 1, 33, 0, 0 }, // '!'
{ 2, 11, 26, 15, 1, -26 }, // '"'
{ 38, 11, 26, 15, 1, -26 }, // '#'
{ 74, 11, 26, 15, 1, -26 }, // '$'
{ 110, 11, 26, 15, 1, -26 }, // '%'
{ 146, 11, 26, 15, 1, -26 }, // '&'
{ 182, 11, 26, 15, 1, -26 }, // '''
{ 218, 11, 26, 15, 1, -26 }, // '('
{ 254, 11, 26, 15, 1, -26 }, // ')'
{ 290, 11, 26, 15, 1, -26 }, // '*'
{ 326, 11, 26, 15, 1, -26 }, // '+'
{ 362, 11, 26, 15, 1, -26 }, // ','
{ 398, 21, 3, 33, 6, -21 }, // '-'
{ 406, 5, 5, 1, -2, -5 }, // '.'
{ 410, 11, 26, 15, 1, -26 }, // '/'
{ 446, 25, 39, 33, 4, -39 }, // '0'
{ 568, 5, 35, 33, 24, -37 }, // '1'
{ 590, 25, 39, 33, 4, -39 }, // '2'
{ 712, 23, 39, 33, 6, -39 }, // '3'
{ 825, 25, 35, 33, 4, -37 }, // '4'
{ 935, 25, 39, 33, 4, -39 }, // '5'
{ 1057, 25, 39, 33, 4, -39 }, // '6'
{ 1179, 25, 37, 33, 4, -39 }, // '7'
{ 1295, 25, 39, 33, 4, -39 }, // '8'
{ 1417, 25, 39, 33, 4, -39 }, // '9'
{ 1539, 6, 20, 9, 1, -29 }, // ':'
{ 1554, 11, 26, 15, 1, -26 }, // ';'
{ 1590, 11, 26, 15, 1, -26 }, // '<'
{ 1626, 11, 26, 15, 1, -26 }, // '='
{ 1662, 11, 26, 15, 1, -26 }, // '>'
{ 1698, 11, 26, 15, 1, -26 }, // '?'
{ 1734, 11, 26, 15, 1, -26 }, // '@'
{ 1770, 25, 37, 33, 4, -39 }, // 'A'
{ 1886, 25, 37, 33, 4, -37 }, // 'B'
{ 2002, 23, 21, 33, 4, -21 }, // 'C'
{ 2063, 25, 37, 33, 4, -37 }, // 'D'
{ 2179, 23, 39, 33, 4, -39 }, // 'E'
{ 2292, 23, 37, 33, 4, -39 }, // 'F'
{ 2399, 25, 39, 33, 4, -39 }, // 'G'
{ 2521, 25, 35, 33, 4, -37 }, // 'H'
{ 2631, 5, 17, 33, 24, -19 }, // 'I'
{ 2642, 25, 37, 33, 4, -37 }, // 'J'
{ 2758, 25, 37, 33, 4, -39 }, // 'K'
{ 2874, 23, 37, 33, 4, -37 }, // 'L'
{ 2981, 25, 37, 33, 4, -39 }, // 'M'
{ 3097, 25, 19, 33, 4, -21 }, // 'N'
{ 3157, 25, 21, 33, 4, -21 }, // 'O'
{ 3223, 25, 37, 33, 4, -39 }, // 'P'
{ 3339, 25, 37, 33, 4, -39 }, // 'Q'
{ 3455, 23, 19, 33, 4, -21 }, // 'R'
{ 3510, 25, 37, 33, 4, -37 }, // 'S'
{ 3626, 23, 37, 33, 4, -37 }, // 'T'
{ 3733, 25, 19, 33, 4, -19 }, // 'U'
{ 3793, 25, 37, 33, 4, -37 }, // 'V'
{ 3909, 25, 37, 33, 4, -37 }, // 'W'
{ 4025, 25, 35, 33, 4, -37 }, // 'X'
{ 4135, 25, 37, 33, 4, -37 }, // 'Y'
{ 4251, 25, 39, 33, 4, -39 }, // 'Z'
{ 4373, 11, 26, 15, 1, -26 }, // '['
{ 4409, 11, 26, 15, 1, -26 }, // '\'
{ 4445, 11, 26, 15, 1, -26 }, // ']'
{ 4481, 11, 26, 15, 1, -26 }, // '^'
{ 4517, 11, 26, 15, 1, -26 }, // '_'
{ 4553, 11, 26, 15, 1, -26 }, // '`'
{ 4589, 25, 37, 33, 4, -39 }, // 'a'
{ 4705, 25, 37, 33, 4, -37 }, // 'b'
{ 4821, 23, 21, 33, 4, -21 }, // 'c'
{ 4882, 25, 37, 33, 4, -37 }, // 'd'
{ 4998, 23, 39, 33, 4, -39 }, // 'e'
{ 5111, 23, 37, 33, 4, -39 }, // 'f'
{ 5218, 25, 39, 33, 4, -39 }, // 'g'
{ 5340, 25, 35, 33, 4, -37 }, // 'h'
{ 5450, 5, 17, 33, 24, -19 }, // 'i'
{ 5461, 25, 37, 33, 4, -37 }, // 'j'
{ 5577, 25, 37, 33, 4, -39 }, // 'k'
{ 5693, 23, 37, 33, 4, -37 }, // 'l'
{ 5800, 25, 37, 33, 4, -39 }, // 'm'
{ 5916, 25, 19, 33, 4, -21 }, // 'n'
{ 5976, 25, 21, 33, 4, -21 }, // 'o'
{ 6042, 25, 37, 33, 4, -39 }, // 'p'
{ 6158, 25, 37, 33, 4, -39 }, // 'q'
{ 6274, 23, 19, 33, 4, -21 }, // 'r'
{ 6329, 25, 37, 33, 4, -37 }, // 's'
{ 6445, 23, 37, 33, 4, -37 }, // 't'
{ 6552, 25, 19, 33, 4, -19 }, // 'u'
{ 6612, 25, 37, 33, 4, -37 }, // 'v'
{ 6728, 25, 37, 33, 4, -37 }, // 'w'
{ 6844, 25, 35, 33, 4, -37 }, // 'x'
{ 6954, 25, 37, 33, 4, -37 }, // 'y'
{ 7070, 25, 39, 33, 4, -39 }, // 'z'
{ 7192, 11, 26, 15, 1, -26 }, // '{'
{ 7228, 11, 26, 15, 1, -26 }, // '|'
{ 7264, 11, 26, 15, 1, -26 } // '}'
};
const GFXfont DSEG7_Classic_Regular_39 PROGMEM = {
(uint8_t *)DSEG7_Classic_Regular_39Bitmaps,(GFXglyph *)DSEG7_Classic_Regular_39Glyphs,0x20, 0x7E, 43};

View File

@ -1 +0,0 @@
To toggle between Dark Mode/Light Mode, change `#define DARKMODE true` in `Watchy_7_SEG.cpp`

View File

@ -1,204 +0,0 @@
const uint8_t Seven_Segment10pt7bBitmaps[] PROGMEM = {
0x00, 0xFF, 0xFC, 0xA0, 0x09, 0x05, 0x86, 0x9F, 0xF1, 0x47, 0xFC, 0xB0,
0xD0, 0x48, 0x00, 0x10, 0x10, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7E, 0x10, 0x10, 0x00, 0x40, 0x04,
0x70, 0x88, 0x88, 0x89, 0x08, 0xB0, 0x72, 0x00, 0x66, 0x04, 0x90, 0xC9,
0x08, 0x91, 0x06, 0x30, 0x02, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00,
0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
0x00, 0x00, 0x00, 0x7E, 0x1F, 0x0F, 0x87, 0xE1, 0xF8, 0x02, 0x01, 0x00,
0x81, 0x20, 0x80, 0x20, 0x10, 0x08, 0x12, 0x08, 0x02, 0x01, 0x00, 0x81,
0x20, 0x80, 0x20, 0x10, 0x08, 0x12, 0x08, 0x02, 0x01, 0x00, 0x81, 0x20,
0x80, 0x20, 0x10, 0x08, 0x12, 0x07, 0xE2, 0x01, 0x00, 0x7E, 0x20, 0xFE,
0x18, 0x61, 0x86, 0x18, 0x61, 0x86, 0x18, 0x61, 0x87, 0xF0, 0x7C, 0x21,
0x08, 0x42, 0x10, 0x84, 0x21, 0x08, 0x3C, 0xF0, 0x42, 0x10, 0x84, 0x21,
0x08, 0x42, 0x10, 0xF8, 0x21, 0x3E, 0xEF, 0xD4, 0x80, 0x04, 0x00, 0x80,
0x10, 0x02, 0x00, 0x41, 0xF7, 0xC1, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10,
0x00, 0x60, 0xF8, 0x80, 0x01, 0x00, 0x80, 0xC0, 0x40, 0x60, 0x20, 0x30,
0x00, 0x10, 0x18, 0x08, 0x0C, 0x04, 0x04, 0x00, 0x7E, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0xFF, 0xFC,
0x7E, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80,
0x80, 0x7E, 0xF8, 0x10, 0x41, 0x04, 0x1F, 0x81, 0x04, 0x10, 0x41, 0x07,
0xE0, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x7E, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0xF8, 0x10, 0x41, 0x04, 0x10,
0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81,
0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x7E, 0x81, 0x81, 0x81,
0x81, 0x81, 0x7E, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7E, 0xCC, 0xFE,
0x18, 0x61, 0x86, 0x18, 0x61, 0x86, 0x18, 0x61, 0x87, 0xF0, 0x25, 0x25,
0x24, 0x89, 0x22, 0x40, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x91, 0x24,
0x49, 0x29, 0x29, 0x00, 0x7E, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7E,
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x81, 0x81, 0x81, 0x8F, 0x91,
0x91, 0x10, 0x91, 0x91, 0x8E, 0x80, 0x80, 0x7E, 0x7E, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81,
0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E,
0x7E, 0x08, 0x20, 0x82, 0x08, 0x20, 0x82, 0x08, 0x20, 0x81, 0xF0, 0x7E,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
0x7E, 0x7E, 0x08, 0x20, 0x82, 0x07, 0xE0, 0x82, 0x08, 0x20, 0x81, 0xF0,
0x7E, 0x08, 0x20, 0x82, 0x07, 0xE0, 0x82, 0x08, 0x20, 0x82, 0x00, 0x7E,
0x80, 0x80, 0x80, 0x80, 0x80, 0x3E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0xFF, 0xFC, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x86, 0x8C, 0x98, 0xB0,
0xA0, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0x08, 0x20,
0x82, 0x08, 0x20, 0x82, 0x08, 0x20, 0x81, 0xF0, 0x7B, 0xD0, 0x86, 0x10,
0xC2, 0x18, 0x43, 0x08, 0x61, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0,
0x18, 0x03, 0x00, 0x40, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x7E, 0x81, 0x81, 0x81,
0x81, 0x81, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x83, 0x7F,
0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x80, 0xB0, 0x98, 0x8C, 0x86,
0x82, 0x81, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x7E, 0xF7, 0x84, 0x02, 0x01, 0x00, 0x80, 0x40, 0x20,
0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x80, 0x40, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x42, 0x42, 0x66, 0x24, 0x24,
0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x21, 0x84,
0x30, 0x86, 0x10, 0xC2, 0x18, 0x42, 0xF7, 0x80, 0x81, 0xC3, 0x42, 0x66,
0x24, 0x24, 0x00, 0x00, 0x24, 0x24, 0x66, 0x42, 0xC3, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x7E, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7E,
0xFE, 0x02, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x10, 0x30, 0x20, 0x60, 0x40,
0x40, 0x7F, 0x7C, 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0x08, 0x3C, 0x80,
0x60, 0x10, 0x04, 0x03, 0x00, 0x80, 0x40, 0x00, 0x0C, 0x03, 0x00, 0x80,
0x60, 0x10, 0x0C, 0xF0, 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0xF8,
0x06, 0xC0, 0xE1, 0xEC, 0x00, 0xC0, 0xFF, 0xC0, 0xFE, 0x18, 0x61, 0x86,
0x18, 0x61, 0x86, 0x18, 0x61, 0x87, 0xF0, 0x7E, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81,
0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x7E,
0x08, 0x20, 0x82, 0x08, 0x20, 0x82, 0x08, 0x20, 0x81, 0xF0, 0x7E, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E,
0x7E, 0x08, 0x20, 0x82, 0x07, 0xE0, 0x82, 0x08, 0x20, 0x81, 0xF0, 0x7E,
0x08, 0x20, 0x82, 0x07, 0xE0, 0x82, 0x08, 0x20, 0x82, 0x00, 0x7E, 0x80,
0x80, 0x80, 0x80, 0x80, 0x3E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0xFF, 0xFC, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x86, 0x8C, 0x98, 0xB0, 0xA0,
0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x82, 0x08, 0x20, 0x82,
0x08, 0x20, 0x82, 0x08, 0x20, 0x81, 0xF0, 0x7B, 0xD0, 0x86, 0x10, 0xC2,
0x18, 0x43, 0x08, 0x61, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18,
0x03, 0x00, 0x40, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x7E, 0x81, 0x81, 0x81, 0x81,
0x81, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x83, 0x7F, 0x7E,
0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x80, 0xB0, 0x98, 0x8C, 0x86, 0x82,
0x81, 0x7E, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7E, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x7E, 0xF7, 0x84, 0x02, 0x01, 0x00, 0x80, 0x40, 0x20, 0x10,
0x08, 0x04, 0x02, 0x01, 0x00, 0x80, 0x40, 0x81, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x7E, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x81, 0x81, 0x81, 0x42, 0x42, 0x66, 0x24, 0x24, 0x80,
0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x21, 0x84, 0x30,
0x86, 0x10, 0xC2, 0x18, 0x42, 0xF7, 0x80, 0x81, 0xC3, 0x42, 0x66, 0x24,
0x24, 0x00, 0x00, 0x24, 0x24, 0x66, 0x42, 0xC3, 0x81, 0x81, 0x81, 0x81,
0x81, 0x81, 0x81, 0x7E, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x7E, 0xFE,
0x02, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x10, 0x30, 0x20, 0x60, 0x40, 0x40,
0x7F, 0x1E, 0x40, 0x81, 0x02, 0x04, 0x08, 0x60, 0x20, 0x40, 0x81, 0x02,
0x03, 0xC0, 0xFF, 0xFF, 0xF0, 0x10, 0x20, 0x40, 0x81, 0x02, 0x03, 0x08,
0x10, 0x20, 0x40, 0x9E, 0x00, 0xFE, 0x18, 0x61, 0x86, 0x18, 0x61, 0x86,
0x18, 0x61, 0x87, 0xF0 };
const GFXglyph Seven_Segment10pt7bGlyphs[] PROGMEM = {
{ 0, 1, 1, 6, 0, 0 }, // 0x20 ' '
{ 1, 1, 14, 4, 1, -13 }, // 0x21 '!'
{ 3, 3, 1, 6, 1, -12 }, // 0x22 '"'
{ 4, 9, 9, 11, 1, -8 }, // 0x23 '#'
{ 15, 8, 18, 10, 1, -15 }, // 0x24 '$'
{ 33, 12, 14, 14, 1, -13 }, // 0x25 '%'
{ 54, 44, 14, 47, 1, -13 }, // 0x26 '&'
{ 131, 6, 14, 7, 1, -13 }, // 0x27 '''
{ 142, 5, 14, 8, 1, -13 }, // 0x28 '('
{ 151, 5, 14, 8, 1, -13 }, // 0x29 ')'
{ 160, 5, 7, 8, 2, -16 }, // 0x2A '*'
{ 165, 11, 11, 13, 1, -11 }, // 0x2B '+'
{ 181, 2, 2, 5, 1, -1 }, // 0x2C ','
{ 182, 5, 1, 8, 1, -6 }, // 0x2D '-'
{ 183, 1, 1, 4, 1, 0 }, // 0x2E '.'
{ 184, 9, 14, 11, 1, -13 }, // 0x2F '/'
{ 200, 8, 14, 10, 1, -13 }, // 0x30 '0'
{ 214, 1, 14, 4, 1, -13 }, // 0x31 '1'
{ 216, 8, 14, 10, 1, -13 }, // 0x32 '2'
{ 230, 6, 14, 9, 2, -13 }, // 0x33 '3'
{ 241, 8, 14, 10, 1, -13 }, // 0x34 '4'
{ 255, 8, 14, 10, 1, -13 }, // 0x35 '5'
{ 269, 8, 14, 10, 1, -13 }, // 0x36 '6'
{ 283, 6, 14, 9, 2, -13 }, // 0x37 '7'
{ 294, 8, 14, 10, 1, -13 }, // 0x38 '8'
{ 308, 8, 14, 10, 1, -13 }, // 0x39 '9'
{ 322, 1, 6, 4, 1, -5 }, // 0x3A ':'
{ 323, 6, 14, 7, 1, -13 }, // 0x3B ';'
{ 334, 3, 14, 6, 1, -13 }, // 0x3C '<'
{ 340, 9, 5, 11, 1, -7 }, // 0x3D '='
{ 346, 3, 14, 6, 1, -13 }, // 0x3E '>'
{ 352, 8, 14, 10, 1, -13 }, // 0x3F '?'
{ 366, 8, 14, 10, 1, -13 }, // 0x40 '@'
{ 380, 8, 14, 10, 1, -13 }, // 0x41 'A'
{ 394, 8, 14, 10, 1, -13 }, // 0x42 'B'
{ 408, 6, 14, 9, 1, -13 }, // 0x43 'C'
{ 419, 8, 14, 10, 1, -13 }, // 0x44 'D'
{ 433, 6, 14, 9, 1, -13 }, // 0x45 'E'
{ 444, 6, 14, 9, 1, -13 }, // 0x46 'F'
{ 455, 8, 14, 10, 1, -13 }, // 0x47 'G'
{ 469, 8, 14, 10, 1, -13 }, // 0x48 'H'
{ 483, 1, 14, 4, 1, -13 }, // 0x49 'I'
{ 485, 8, 14, 10, 1, -13 }, // 0x4A 'J'
{ 499, 8, 14, 10, 1, -13 }, // 0x4B 'K'
{ 513, 6, 14, 9, 1, -13 }, // 0x4C 'L'
{ 524, 11, 14, 14, 1, -13 }, // 0x4D 'M'
{ 544, 8, 14, 10, 1, -13 }, // 0x4E 'N'
{ 558, 8, 14, 10, 1, -13 }, // 0x4F 'O'
{ 572, 8, 14, 10, 1, -13 }, // 0x50 'P'
{ 586, 8, 14, 10, 1, -13 }, // 0x51 'Q'
{ 600, 8, 14, 10, 1, -13 }, // 0x52 'R'
{ 614, 8, 14, 10, 1, -13 }, // 0x53 'S'
{ 628, 9, 14, 12, 1, -13 }, // 0x54 'T'
{ 644, 8, 14, 10, 1, -13 }, // 0x55 'U'
{ 658, 8, 14, 10, 1, -13 }, // 0x56 'V'
{ 672, 11, 14, 14, 1, -13 }, // 0x57 'W'
{ 692, 8, 14, 10, 1, -13 }, // 0x58 'X'
{ 706, 8, 14, 10, 1, -13 }, // 0x59 'Y'
{ 720, 8, 14, 10, 1, -13 }, // 0x5A 'Z'
{ 734, 5, 14, 8, 1, -13 }, // 0x5B '['
{ 743, 9, 14, 11, 1, -13 }, // 0x5C '\'
{ 759, 5, 14, 8, 1, -13 }, // 0x5D ']'
{ 768, 14, 3, 16, 1, -8 }, // 0x5E '^'
{ 774, 10, 1, 12, 1, 0 }, // 0x5F '_'
{ 776, 6, 14, 7, 1, -13 }, // 0x60 '`'
{ 787, 8, 14, 10, 1, -13 }, // 0x61 'a'
{ 801, 8, 14, 10, 1, -13 }, // 0x62 'b'
{ 815, 6, 14, 9, 1, -13 }, // 0x63 'c'
{ 826, 8, 14, 10, 1, -13 }, // 0x64 'd'
{ 840, 6, 14, 9, 1, -13 }, // 0x65 'e'
{ 851, 6, 14, 9, 1, -13 }, // 0x66 'f'
{ 862, 8, 14, 10, 1, -13 }, // 0x67 'g'
{ 876, 8, 14, 10, 1, -13 }, // 0x68 'h'
{ 890, 1, 14, 4, 1, -13 }, // 0x69 'i'
{ 892, 8, 14, 10, 1, -13 }, // 0x6A 'j'
{ 906, 8, 14, 10, 1, -13 }, // 0x6B 'k'
{ 920, 6, 14, 9, 1, -13 }, // 0x6C 'l'
{ 931, 11, 14, 14, 1, -13 }, // 0x6D 'm'
{ 951, 8, 14, 10, 1, -13 }, // 0x6E 'n'
{ 965, 8, 14, 10, 1, -13 }, // 0x6F 'o'
{ 979, 8, 14, 10, 1, -13 }, // 0x70 'p'
{ 993, 8, 14, 10, 1, -13 }, // 0x71 'q'
{ 1007, 8, 14, 10, 1, -13 }, // 0x72 'r'
{ 1021, 8, 14, 10, 1, -13 }, // 0x73 's'
{ 1035, 9, 14, 12, 1, -13 }, // 0x74 't'
{ 1051, 8, 14, 10, 1, -13 }, // 0x75 'u'
{ 1065, 8, 14, 10, 1, -13 }, // 0x76 'v'
{ 1079, 11, 14, 14, 1, -13 }, // 0x77 'w'
{ 1099, 8, 14, 10, 1, -13 }, // 0x78 'x'
{ 1113, 8, 14, 10, 1, -13 }, // 0x79 'y'
{ 1127, 8, 14, 10, 1, -13 }, // 0x7A 'z'
{ 1141, 7, 14, 10, 1, -13 }, // 0x7B '{'
{ 1154, 1, 16, 4, 1, -15 }, // 0x7C '|'
{ 1156, 7, 14, 10, 1, -13 }, // 0x7D '}'
{ 1169, 6, 14, 7, 1, -13 } }; // 0x7E '~'
const GFXfont Seven_Segment10pt7b PROGMEM = {
(uint8_t *)Seven_Segment10pt7bBitmaps,
(GFXglyph *)Seven_Segment10pt7bGlyphs,
0x20, 0x7E, 20 };
// Approx. 1852 bytes

View File

@ -1,153 +0,0 @@
#include "Watchy_7_SEG.h"
#define DARKMODE true
const uint8_t BATTERY_SEGMENT_WIDTH = 7;
const uint8_t BATTERY_SEGMENT_HEIGHT = 11;
const uint8_t BATTERY_SEGMENT_SPACING = 9;
const uint8_t WEATHER_ICON_WIDTH = 48;
const uint8_t WEATHER_ICON_HEIGHT = 32;
void Watchy7SEG::drawWatchFace(){
display.fillScreen(DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);
display.setTextColor(DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
drawTime();
drawDate();
drawSteps();
drawWeather();
drawBattery();
display.drawBitmap(120, 77, WIFI_CONFIGURED ? wifi : wifioff, 26, 18, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
if(BLE_CONFIGURED){
display.drawBitmap(100, 75, bluetooth, 13, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
}
}
void Watchy7SEG::drawTime(){
display.setFont(&DSEG7_Classic_Bold_53);
display.setCursor(5, 53+5);
int displayHour;
if(HOUR_12_24==12){
displayHour = ((currentTime.Hour+11)%12)+1;
} else {
displayHour = currentTime.Hour;
}
if(displayHour < 10){
display.print("0");
}
display.print(displayHour);
display.print(":");
if(currentTime.Minute < 10){
display.print("0");
}
display.println(currentTime.Minute);
}
void Watchy7SEG::drawDate(){
display.setFont(&Seven_Segment10pt7b);
int16_t x1, y1;
uint16_t w, h;
String dayOfWeek = dayStr(currentTime.Wday);
display.getTextBounds(dayOfWeek, 5, 85, &x1, &y1, &w, &h);
if(currentTime.Wday == 4){
w = w - 5;
}
display.setCursor(85 - w, 85);
display.println(dayOfWeek);
String month = monthShortStr(currentTime.Month);
display.getTextBounds(month, 60, 110, &x1, &y1, &w, &h);
display.setCursor(85 - w, 110);
display.println(month);
display.setFont(&DSEG7_Classic_Bold_25);
display.setCursor(5, 120);
if(currentTime.Day < 10){
display.print("0");
}
display.println(currentTime.Day);
display.setCursor(5, 150);
display.println(tmYearToCalendar(currentTime.Year));// offset from 1970, since year is stored in uint8_t
}
void Watchy7SEG::drawSteps(){
// reset step counter at midnight
if (currentTime.Hour == 0 && currentTime.Minute == 0){
sensor.resetStepCounter();
}
uint32_t stepCount = sensor.getCounter();
display.drawBitmap(10, 165, steps, 19, 23, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
display.setCursor(35, 190);
display.println(stepCount);
}
void Watchy7SEG::drawBattery(){
display.drawBitmap(154, 73, battery, 37, 21, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
display.fillRect(159, 78, 27, BATTERY_SEGMENT_HEIGHT, DARKMODE ? GxEPD_BLACK : GxEPD_WHITE);//clear battery segments
int8_t batteryLevel = 0;
float VBAT = getBatteryVoltage();
if(VBAT > 4.1){
batteryLevel = 3;
}
else if(VBAT > 3.95 && VBAT <= 4.1){
batteryLevel = 2;
}
else if(VBAT > 3.80 && VBAT <= 3.95){
batteryLevel = 1;
}
else if(VBAT <= 3.80){
batteryLevel = 0;
}
for(int8_t batterySegments = 0; batterySegments < batteryLevel; batterySegments++){
display.fillRect(159 + (batterySegments * BATTERY_SEGMENT_SPACING), 78, BATTERY_SEGMENT_WIDTH, BATTERY_SEGMENT_HEIGHT, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
}
}
void Watchy7SEG::drawWeather(){
weatherData currentWeather = getWeatherData();
int8_t temperature = currentWeather.temperature;
int16_t weatherConditionCode = currentWeather.weatherConditionCode;
display.setFont(&DSEG7_Classic_Regular_39);
int16_t x1, y1;
uint16_t w, h;
display.getTextBounds(String(temperature), 0, 0, &x1, &y1, &w, &h);
if(159 - w - x1 > 87){
display.setCursor(159 - w - x1, 150);
}else{
display.setFont(&DSEG7_Classic_Bold_25);
display.getTextBounds(String(temperature), 0, 0, &x1, &y1, &w, &h);
display.setCursor(159 - w - x1, 136);
}
display.println(temperature);
display.drawBitmap(165, 110, currentWeather.isMetric ? celsius : fahrenheit, 26, 20, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
const unsigned char* weatherIcon;
if(WIFI_CONFIGURED){
//https://openweathermap.org/weather-conditions
if(weatherConditionCode > 801){//Cloudy
weatherIcon = cloudy;
}else if(weatherConditionCode == 801){//Few Clouds
weatherIcon = cloudsun;
}else if(weatherConditionCode == 800){//Clear
weatherIcon = sunny;
}else if(weatherConditionCode >=700){//Atmosphere
weatherIcon = atmosphere;
}else if(weatherConditionCode >=600){//Snow
weatherIcon = snow;
}else if(weatherConditionCode >=500){//Rain
weatherIcon = rain;
}else if(weatherConditionCode >=300){//Drizzle
weatherIcon = drizzle;
}else if(weatherConditionCode >=200){//Thunderstorm
weatherIcon = thunderstorm;
}else
return;
}else{
weatherIcon = chip;
}
display.drawBitmap(145, 158, weatherIcon, WEATHER_ICON_WIDTH, WEATHER_ICON_HEIGHT, DARKMODE ? GxEPD_WHITE : GxEPD_BLACK);
}

View File

@ -1,22 +0,0 @@
#ifndef WATCHY_7_SEG_H
#define WATCHY_7_SEG_H
#include <Watchy.h>
#include "Seven_Segment10pt7b.h"
#include "DSEG7_Classic_Regular_15.h"
#include "DSEG7_Classic_Bold_25.h"
#include "DSEG7_Classic_Regular_39.h"
#include "icons.h"
class Watchy7SEG : public Watchy{
using Watchy::Watchy;
public:
void drawWatchFace();
void drawTime();
void drawDate();
void drawSteps();
void drawWeather();
void drawBattery();
};
#endif

View File

@ -1,207 +0,0 @@
// 'battery', 37x21px
const unsigned char battery [] PROGMEM = {
0x3f, 0xff, 0xff, 0xff, 0x80, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xe0,
0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xf8, 0xe0, 0x00,
0x00, 0x00, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00,
0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00,
0x38, 0xe0, 0x00, 0x00, 0x00, 0x38, 0xe0, 0x00, 0x00, 0x00, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0xf8,
0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f,
0xff, 0xff, 0xff, 0xc0, 0x3f, 0xff, 0xff, 0xff, 0x80
};
// 'bluetooth', 13x21px
const unsigned char bluetooth [] PROGMEM = {
0x1f, 0xc0, 0x3f, 0xe0, 0x7f, 0xf0, 0xfd, 0xf8, 0xfc, 0xf8, 0xfc, 0x78, 0xdd, 0x38, 0xcd, 0x98,
0xe5, 0x38, 0xf0, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0x78, 0xe5, 0x38, 0xcd, 0x98, 0xfd, 0x38,
0xfc, 0x78, 0xfc, 0xf8, 0x7d, 0xf0, 0x3f, 0xe0, 0x1f, 0xc0
};
// 'celsius', 26x20px
const unsigned char celsius [] PROGMEM = {
0x3f, 0x80, 0x1f, 0xc0, 0x7f, 0xc0, 0x3f, 0xc0, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
0xc0, 0x60, 0x60, 0x00, 0xff, 0xc0, 0x40, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00,
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00,
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x3f, 0xc0
};
// 'fahrenheit', 26x20px
const unsigned char fahrenheit [] PROGMEM = {
0x3f, 0x80, 0x1f, 0xc0, 0x7f, 0xc0, 0x3f, 0xc0, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00, 0xc0, 0x60, 0x60, 0x00,
0xc0, 0x60, 0x60, 0x00, 0xff, 0xc0, 0x7f, 0xc0, 0x7f, 0x80, 0x3f, 0xc0, 0x00, 0x00, 0x60, 0x00,
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00,
0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'cloudsun', 48x32px
const unsigned char cloudsun [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
0x84, 0x40, 0x00, 0x00, 0x00, 0x10, 0x44, 0x42, 0x00, 0x00, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00,
0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0,
0x00, 0x00, 0x00, 0x31, 0x80, 0x61, 0x00, 0x07, 0xe0, 0x19, 0x00, 0x32, 0x00, 0x38, 0x38, 0x02,
0x00, 0x10, 0x00, 0x60, 0x04, 0x02, 0x00, 0x10, 0x00, 0x80, 0x03, 0xf2, 0x00, 0x10, 0x01, 0x00,
0x01, 0x9e, 0x00, 0x10, 0x03, 0x00, 0x00, 0x03, 0x00, 0x10, 0x02, 0x00, 0x00, 0x01, 0x80, 0x10,
0x02, 0x00, 0x00, 0x00, 0x80, 0x32, 0x04, 0x00, 0x00, 0x00, 0x40, 0x61, 0x04, 0x00, 0x00, 0x00,
0x70, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x30, 0x00, 0x00, 0x00, 0x02, 0x08, 0x60, 0x00,
0x00, 0x00, 0x01, 0x04, 0x40, 0x00, 0x00, 0x00, 0x01, 0xc2, 0x40, 0x00, 0x00, 0x00, 0x00, 0xc0,
0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00,
0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x20, 0x00,
0x00, 0x00, 0x03, 0x00, 0x10, 0x00, 0x00, 0x00, 0x06, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xfc, 0x00
};
// 'cloudy', 48x32px
const unsigned char cloudy [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x18, 0x03, 0x00, 0x00, 0x00,
0x00, 0x60, 0x00, 0x80, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x40, 0x00, 0x00, 0x01, 0x80, 0x00, 0x3f,
0xc0, 0x00, 0x01, 0x00, 0x00, 0x00, 0x30, 0x00, 0x02, 0x00, 0x00, 0x00, 0x18, 0x00, 0x02, 0x00,
0x00, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00,
0x04, 0x00, 0x00, 0x00, 0x03, 0x80, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x60, 0x30, 0x00, 0x00, 0x00,
0x00, 0x10, 0x60, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x00, 0x00, 0x00, 0x00, 0x04, 0x80, 0x00,
0x00, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x02,
0x80, 0x00, 0x00, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x00,
0x00, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x04, 0x40, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x20, 0x00,
0x00, 0x00, 0x00, 0x08, 0x18, 0x00, 0x00, 0x00, 0x00, 0x30, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xe0
};
// 'rain', 48x32px
const unsigned char rain [] PROGMEM = {
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x00, 0x00,
0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00,
0x00, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08,
0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00,
0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x80,
0x00, 0x00, 0x00, 0x60, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x21, 0x08, 0x42, 0x10, 0x00, 0x00, 0x42, 0x10, 0x84, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x10, 0x84, 0x21, 0x00, 0x00, 0x04, 0x21,
0x08, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x84, 0x21, 0x08, 0x00, 0x00
};
// 'snow', 48x32px
const unsigned char snow [] PROGMEM = {
0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x20,
0x00, 0x00, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x04, 0x81, 0x02, 0x40, 0x00, 0x00, 0x02, 0x81, 0x02, 0x80, 0x00,
0x00, 0x01, 0x81, 0x03, 0x00, 0x00, 0x00, 0x07, 0x81, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x41, 0x04,
0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x11, 0x10, 0x00, 0x00, 0x00, 0x80,
0x09, 0x20, 0x04, 0x00, 0x00, 0x40, 0x05, 0x40, 0x08, 0x00, 0x00, 0x20, 0x03, 0x80, 0x10, 0x00,
0x03, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x20, 0x03, 0x80, 0x10, 0x00, 0x00, 0x40, 0x05, 0x40,
0x08, 0x00, 0x00, 0x80, 0x09, 0x20, 0x04, 0x00, 0x00, 0x00, 0x11, 0x10, 0x00, 0x00, 0x00, 0x00,
0x21, 0x08, 0x00, 0x00, 0x00, 0x00, 0x41, 0x04, 0x00, 0x00, 0x00, 0x03, 0x81, 0x03, 0x80, 0x00,
0x00, 0x01, 0x81, 0x03, 0x00, 0x00, 0x00, 0x02, 0x81, 0x02, 0x80, 0x00, 0x00, 0x04, 0x01, 0x00,
0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00,
0x05, 0x40, 0x00, 0x00, 0x00, 0x00, 0x09, 0x20, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
};
// 'sunny', 48x32px
const unsigned char sunny [] PROGMEM = {
0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
0x00, 0x00, 0x00, 0x00, 0x41, 0x08, 0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x18,
0x20, 0x10, 0x60, 0x00, 0x00, 0x0c, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00,
0x00, 0x02, 0x0f, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0c,
0x00, 0x00, 0x00, 0x30, 0x80, 0x04, 0x30, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01,
0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00,
0x03, 0xf2, 0x00, 0x01, 0x1f, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01,
0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x30,
0x80, 0x04, 0x30, 0x00, 0x00, 0x00, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00,
0x00, 0x02, 0x0f, 0xc1, 0x00, 0x00, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00,
0xc0, 0x00, 0x00, 0x18, 0x20, 0x10, 0x60, 0x00, 0x00, 0x00, 0x21, 0x08, 0x00, 0x00, 0x00, 0x00,
0x41, 0x08, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
};
// 'atmosphere', 48x32px
const unsigned char atmosphere[] PROGMEM = {
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x00, 0x00,
0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00,
0x00, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08,
0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00,
0x00, 0x08, 0x04, 0x07, 0xff, 0xf8, 0xf0, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x80,
0x00, 0x00, 0x00, 0x60, 0x00, 0x9f, 0x1f, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0xff, 0xfc, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'drizzle', 48x32px
const unsigned char drizzle[] PROGMEM = {
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x00, 0x00,
0x00, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00,
0x00, 0x00, 0x00, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08,
0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00,
0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x80,
0x00, 0x00, 0x00, 0x60, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x08, 0x00, 0x00
};
// 'thunderstorm', 48x32px
const unsigned char thunderstorm[] PROGMEM = {
0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x81, 0x80, 0x00, 0x00, 0x00, 0x06, 0x00, 0x60,
0x00, 0x00, 0x00, 0x08, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x30,
0x00, 0x00, 0x30, 0x00, 0x00, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0x08, 0x00,
0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x00, 0x07, 0x80, 0x00, 0xc0, 0x0f, 0x80,
0x00, 0xc0, 0x03, 0x00, 0x0f, 0x80, 0x00, 0x20, 0x02, 0x00, 0x1f, 0x00, 0x00, 0x10, 0x04, 0x00,
0x1e, 0x00, 0x00, 0x18, 0x04, 0x00, 0x3e, 0x00, 0x00, 0x08, 0x08, 0x00, 0x3c, 0x00, 0x00, 0x08,
0x08, 0x00, 0x7c, 0x00, 0x00, 0x08, 0x04, 0x00, 0x78, 0x00, 0x00, 0x08, 0x04, 0x00, 0xf8, 0x00,
0x00, 0x08, 0x04, 0x00, 0xff, 0x00, 0x00, 0x10, 0x02, 0x00, 0x1f, 0x00, 0x00, 0x30, 0x01, 0x80,
0x1e, 0x00, 0x00, 0x60, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x01,
0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'cputemp', 48x32px
const unsigned char cputemp [] PROGMEM = {
0x00, 0x01, 0x8c, 0xe7, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xe7, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xe7,
0x00, 0x00, 0x00, 0x01, 0x8c, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x03, 0xef, 0xff, 0xff, 0xef, 0x80,
0x03, 0xef, 0xff, 0xff, 0xef, 0x80, 0x03, 0xef, 0xff, 0xff, 0xe7, 0x80, 0x00, 0x0f, 0xff, 0xff,
0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x03, 0xef, 0xff, 0xff, 0xef, 0x80, 0x03, 0xef,
0xff, 0xff, 0xef, 0x80, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00,
0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x03, 0xef, 0xff, 0xff, 0xef, 0x80, 0x03, 0xef, 0xff, 0xff,
0xef, 0x80, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f,
0xff, 0xff, 0xe0, 0x00, 0x03, 0xef, 0xff, 0xff, 0xef, 0x80, 0x03, 0xef, 0xff, 0xff, 0xef, 0x80,
0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xe7, 0x00, 0x00, 0x00, 0x01,
0x8c, 0xe7, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xe7, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xe7, 0x00, 0x00
};
// 'steps', 19x23px
const unsigned char steps [] PROGMEM = {
0x00, 0x03, 0xc0, 0x00, 0x07, 0xe0, 0x00, 0x07, 0xe0, 0x00, 0x0f, 0xe0, 0x78, 0x0f, 0xe0, 0xfc,
0x0f, 0xe0, 0xfc, 0x0f, 0xe0, 0xfc, 0x0f, 0xe0, 0xfe, 0x0f, 0xe0, 0xfe, 0x07, 0xc0, 0xfe, 0x07,
0xc0, 0xfe, 0x07, 0x80, 0xfe, 0x00, 0x00, 0x7c, 0x0e, 0x00, 0x7c, 0x0f, 0x80, 0x7c, 0x1f, 0x80,
0x20, 0x1f, 0x00, 0x06, 0x0f, 0x00, 0x3e, 0x0e, 0x00, 0x3e, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x1e,
0x00, 0x00, 0x1e, 0x00, 0x00
};
// 'wifi', 26x18px
const unsigned char wifi [] PROGMEM = {
0x00, 0x7f, 0x80, 0x00, 0x03, 0xff, 0xf0, 0x00, 0x0f, 0xff, 0xfc, 0x00, 0x1f, 0xc0, 0xfe, 0x00,
0x7e, 0x00, 0x1f, 0x80, 0xf8, 0x3f, 0x07, 0xc0, 0x71, 0xff, 0xe3, 0x80, 0x23, 0xff, 0xf1, 0x00,
0x07, 0xc0, 0xf8, 0x00, 0x0f, 0x00, 0x3c, 0x00, 0x06, 0x3f, 0x18, 0x00, 0x02, 0x7f, 0x90, 0x00,
0x00, 0xff, 0xc0, 0x00, 0x00, 0xe1, 0xc0, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x0c, 0x00, 0x00,
0x00, 0x1e, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00
};
// 'wifioff', 26x18px
const unsigned char wifioff [] PROGMEM = {
0x00, 0x7f, 0x87, 0xc0, 0x03, 0xff, 0xff, 0x80, 0x0f, 0xff, 0xff, 0x00, 0x1f, 0xc0, 0xfe, 0x00,
0x7e, 0x00, 0x7f, 0x80, 0xf8, 0x3f, 0xf7, 0xc0, 0x71, 0xff, 0xe3, 0x80, 0x23, 0xff, 0xf1, 0x00,
0x07, 0xcf, 0xf8, 0x00, 0x0f, 0x3e, 0x3c, 0x00, 0x06, 0x7f, 0x18, 0x00, 0x02, 0xff, 0x90, 0x00,
0x01, 0xff, 0xc0, 0x00, 0x07, 0xe1, 0xc0, 0x00, 0x0f, 0xc0, 0x80, 0x00, 0x1f, 0x0c, 0x00, 0x00,
0x3c, 0x1e, 0x00, 0x00, 0xf8, 0x0c, 0x00, 0x00
};
// 'chip', 48x32px
const unsigned char chip [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x48, 0x00, 0x00, 0x00, 0x00,
0x12, 0x48, 0x00, 0x00, 0x00, 0x00, 0x12, 0x48, 0x00, 0x00, 0x00, 0x00, 0x12, 0x48, 0x00, 0x00,
0x00, 0x00, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01,
0x00, 0x00, 0x00, 0x0f, 0x87, 0xf9, 0xf0, 0x00, 0x00, 0x00, 0x88, 0x09, 0x00, 0x00, 0x00, 0x00,
0x90, 0x09, 0x00, 0x00, 0x00, 0x0f, 0x90, 0x09, 0xf0, 0x00, 0x00, 0x00, 0x90, 0x09, 0x00, 0x00,
0x00, 0x00, 0x90, 0x09, 0x00, 0x00, 0x00, 0x0f, 0x90, 0x09, 0xf0, 0x00, 0x00, 0x00, 0x90, 0x09,
0x00, 0x00, 0x00, 0x00, 0x90, 0x09, 0x00, 0x00, 0x00, 0x0f, 0x9f, 0xf9, 0xf0, 0x00, 0x00, 0x00,
0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00,
0x00, 0x00, 0x12, 0x48, 0x00, 0x00, 0x00, 0x00, 0x12, 0x48, 0x00, 0x00, 0x00, 0x00, 0x12, 0x48,
0x00, 0x00, 0x00, 0x00, 0x12, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

Binary file not shown.

View File

@ -1,10 +0,0 @@
#include <Watchy.h>
#include "settings.h"
Watchy watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

Binary file not shown.

View File

@ -1,10 +0,0 @@
#include "Watchy_DOS.h"
#include "settings.h"
WatchyDOS watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,31 +0,0 @@
#include "Watchy_DOS.h"
void WatchyDOS::drawWatchFace(){
char time[6];
time[0] = '0' + ((currentTime.Hour/10)%10);
time[1] = '0' + (currentTime.Hour%10);
time[2] = ':';
time[3] = '0' + ((currentTime.Minute/10)%10);
time[4] = '0' + (currentTime.Minute%10);
time[5] = 0;
display.fillScreen(GxEPD_BLACK);
display.setTextColor(GxEPD_WHITE);
display.setFont(&Px437_IBM_BIOS5pt7b);
display.setCursor(0, 24);
display.println("WATCHY-DOS 1.1.8");
display.println("Copyright (c) 2020");
display.println(" ");
display.print("AUTOEXEC BAT ");
display.println(time);
display.print("COMMAND COM ");
display.println(time);
display.print("CONFIG SYS ");
display.println(time);
display.print("ESPTOOL PY ");
display.println(time);
display.println(" ");
display.println(" 4 files 563 bytes");
display.println(" 2048 bytes free");
display.println(" ");
display.println("<C:\\>esptool");
}

View File

@ -1,13 +0,0 @@
#ifndef WATCHY_DOS_H
#define WATCHY_DOS_H
#include <Watchy.h>
#include "Px437_IBM_BIOS5pt7b.h"
class WatchyDOS : public Watchy{
using Watchy::Watchy;
public:
void drawWatchFace();
};
#endif

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

View File

@ -1,10 +0,0 @@
#include "Watchy_MacPaint.h"
#include "settings.h"
WatchyMacPaint watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,19 +0,0 @@
#include "Watchy_MacPaint.h"
const unsigned char *numbers [10] = {numbers0, numbers1, numbers2, numbers3, numbers4, numbers5, numbers6, numbers7, numbers8, numbers9};
void WatchyMacPaint::drawWatchFace(){
display.fillScreen(GxEPD_WHITE);
display.drawBitmap(0, 0, window, DISPLAY_WIDTH, DISPLAY_HEIGHT, GxEPD_BLACK);
//Hour
display.drawBitmap(35, 70, numbers[currentTime.Hour/10], 38, 50, GxEPD_BLACK); //first digit
display.drawBitmap(70, 70, numbers[currentTime.Hour%10], 38, 50, GxEPD_BLACK); //second digit
//Colon
display.drawBitmap(100, 80, colon, 11, 31, GxEPD_BLACK); //second digit
//Minute
display.drawBitmap(115, 70, numbers[currentTime.Minute/10], 38, 50, GxEPD_BLACK); //first digit
display.drawBitmap(153, 70, numbers[currentTime.Minute%10], 38, 50, GxEPD_BLACK); //second digit
}

View File

@ -1,13 +0,0 @@
#ifndef WATCHY_MACPAINT_H
#define WATCHY_MACPAINT_H
#include <Watchy.h>
#include "macpaint.h"
class WatchyMacPaint : public Watchy{
using Watchy::Watchy;
public:
void drawWatchFace();
};
#endif

View File

@ -1,513 +0,0 @@
// 'colon', 11x31px
const unsigned char colon [] PROGMEM = {
0x00, 0x00, 0x07, 0x00, 0x0f, 0xc0, 0x1f, 0xc0, 0x3f, 0xc0, 0x3f, 0xc0, 0x3f, 0xc0, 0x1f, 0xc0,
0x1f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x1f, 0x80, 0x3f, 0x80,
0x7f, 0x80, 0x7f, 0x80, 0x7f, 0x80, 0x3f, 0x80, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x00
};
// 'h0', 38x50px
const unsigned char numbers0 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfc,
0x00, 0x00, 0x00, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x07, 0xff, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x00,
0x00, 0x00, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xfc, 0xe0, 0x00,
0x01, 0xff, 0x81, 0xf0, 0x00, 0x01, 0xff, 0x03, 0xf8, 0x00, 0x01, 0xfe, 0x03, 0xfc, 0x00, 0x03,
0xfc, 0x03, 0xfe, 0x00, 0x03, 0xf8, 0x01, 0xfe, 0x00, 0x07, 0xf8, 0x00, 0xfe, 0x00, 0x07, 0xf0,
0x00, 0xff, 0x00, 0x07, 0xf0, 0x00, 0xff, 0x00, 0x07, 0xf0, 0x00, 0x7f, 0x00, 0x07, 0xf8, 0x00,
0x7f, 0x00, 0x07, 0xfc, 0x00, 0x7f, 0x00, 0x03, 0xfc, 0x00, 0x7f, 0x00, 0x01, 0xfc, 0x00, 0xff,
0x00, 0x01, 0xfc, 0x00, 0xfe, 0x00, 0x01, 0xfe, 0x01, 0xfe, 0x00, 0x00, 0xff, 0xff, 0xfe, 0x00,
0x00, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x7f, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xf8, 0x00, 0x00,
0x1f, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xc0, 0x00, 0x00, 0x03, 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
};
// 'h1', 38x50px
const unsigned char numbers1 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x01,
0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x07, 0xff, 0x00, 0x00, 0x00, 0x0f, 0xff,
0x00, 0x00, 0x00, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0x00,
0x00, 0x00, 0x3f, 0xff, 0x00, 0x00, 0x00, 0x1f, 0x7f, 0x80, 0x00, 0x00, 0x0e, 0x3f, 0x80, 0x00,
0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00,
0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00,
0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f,
0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80,
0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00,
0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00,
0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00,
0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f,
0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00,
0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00,
0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h2', 38x50px
const unsigned char numbers2 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x00, 0x00, 0x00, 0x3f,
0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0x80, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x00, 0x00, 0xff, 0xff,
0xe0, 0x00, 0x01, 0xff, 0xff, 0xf0, 0x00, 0x03, 0xfe, 0x3f, 0xf8, 0x00, 0x07, 0xfc, 0x07, 0xf8,
0x00, 0x07, 0xf8, 0x03, 0xf8, 0x00, 0x07, 0xf0, 0x03, 0xf8, 0x00, 0x07, 0xf0, 0x03, 0xfc, 0x00,
0x07, 0xf0, 0x01, 0xfc, 0x00, 0x07, 0xf0, 0x01, 0xfc, 0x00, 0x07, 0xf0, 0x03, 0xfc, 0x00, 0x07,
0xf8, 0x03, 0xfc, 0x00, 0x07, 0xf8, 0x07, 0xf8, 0x00, 0x03, 0xf8, 0x07, 0xf0, 0x00, 0x01, 0xf0,
0x0f, 0xf0, 0x00, 0x00, 0xe0, 0x1f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xe0, 0x00, 0x00, 0x00, 0x3f,
0xc0, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0xff, 0x80, 0x00, 0x00, 0x01, 0xff, 0x00,
0x00, 0x00, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00,
0x00, 0x0f, 0xf8, 0x00, 0x00, 0x00, 0x1f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00, 0x00, 0x01,
0xff, 0xc0, 0x00, 0x00, 0x03, 0xff, 0x80, 0x00, 0x00, 0x07, 0xff, 0x00, 0x01, 0xc0, 0x0f, 0xfe,
0x00, 0x03, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xf0, 0x0f, 0xff, 0xff, 0xff, 0xf0, 0x07, 0xff, 0xff,
0xff, 0xf0, 0x03, 0xff, 0xff, 0xff, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x3f, 0xff, 0xff,
0x80, 0x00, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h3', 38x50px
const unsigned char numbers3 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0xff, 0x80, 0x00, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x00, 0x3f, 0xff, 0xf8, 0x00, 0x00, 0x7f,
0xff, 0xfc, 0x00, 0x00, 0xff, 0xff, 0xfe, 0x00, 0x01, 0xff, 0xff, 0xff, 0x00, 0x01, 0xff, 0xff,
0xff, 0x00, 0x01, 0xff, 0x01, 0xff, 0x80, 0x01, 0xfc, 0x00, 0x7f, 0x80, 0x01, 0xfc, 0x00, 0x3f,
0xc0, 0x01, 0xfc, 0x00, 0x3f, 0xc0, 0x01, 0xfc, 0x00, 0x1f, 0xc0, 0x01, 0xfc, 0x00, 0x3f, 0xc0,
0x01, 0xfc, 0x00, 0x7f, 0xc0, 0x00, 0xf8, 0x00, 0x7f, 0x80, 0x00, 0x70, 0x00, 0x7f, 0x00, 0x00,
0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x07, 0xfe, 0x00, 0x00, 0x00,
0x0f, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0xf8, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f,
0xf0, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x00, 0x03, 0x80, 0x0f, 0xfe,
0x00, 0x07, 0xc0, 0x07, 0xff, 0x00, 0x0f, 0xe0, 0x00, 0xff, 0x00, 0x1f, 0xe0, 0x00, 0x7f, 0x00,
0x1f, 0xe0, 0x00, 0x7f, 0x00, 0x1f, 0xc0, 0x00, 0x7f, 0x00, 0x1f, 0xc0, 0x00, 0x7f, 0x00, 0x1f,
0xc0, 0x00, 0x7f, 0x00, 0x1f, 0xc0, 0x00, 0x7f, 0x00, 0x1f, 0xf0, 0x00, 0x7f, 0x00, 0x1f, 0xf8,
0x00, 0xff, 0x00, 0x1f, 0xfc, 0x07, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xfe, 0x00, 0x07, 0xff, 0xff,
0xfc, 0x00, 0x03, 0xff, 0xff, 0xf8, 0x00, 0x01, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x3f, 0xff, 0xe0,
0x00, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h4', 38x50px
const unsigned char numbers4 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x7f,
0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00,
0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x70, 0x00, 0x00, 0x7f, 0x00, 0xf8,
0x00, 0x00, 0x7f, 0x01, 0xfc, 0x00, 0x00, 0x7f, 0x01, 0xfc, 0x00, 0x00, 0xff, 0x01, 0xfc, 0x00,
0x00, 0xff, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x01, 0xfc, 0x00, 0x00,
0xfe, 0x01, 0xfc, 0x00, 0x00, 0xfe, 0x01, 0xff, 0x00, 0x00, 0xfe, 0x01, 0xff, 0x80, 0x01, 0xfe,
0x01, 0xff, 0xc0, 0x01, 0xfe, 0x0f, 0xff, 0xc0, 0x01, 0xfd, 0xff, 0xff, 0xc0, 0x01, 0xff, 0xff,
0xff, 0x80, 0x01, 0xff, 0xff, 0xff, 0x00, 0x01, 0xff, 0xff, 0xfe, 0x00, 0x01, 0xff, 0xff, 0xfe,
0x00, 0x01, 0xff, 0xff, 0xfe, 0x00, 0x01, 0xff, 0xfc, 0xfe, 0x00, 0x00, 0xff, 0x80, 0xfe, 0x00,
0x00, 0x70, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00,
0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00,
0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00,
0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe,
0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h5', 38x50px
const unsigned char numbers5 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xfe, 0x00, 0x07,
0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xff,
0xff, 0xff, 0x80, 0x07, 0xff, 0xff, 0xff, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x07, 0xf0, 0x00,
0x00, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x00, 0x00,
0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x7c, 0x00, 0x00, 0x07, 0xff, 0xff, 0x80, 0x00,
0x07, 0xff, 0xff, 0xe0, 0x00, 0x07, 0xff, 0xff, 0xf0, 0x00, 0x07, 0xff, 0xff, 0xf8, 0x00, 0x07,
0xff, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x07, 0xff, 0xef, 0xff, 0x00, 0x07, 0xf0,
0x00, 0xff, 0x80, 0x03, 0xe0, 0x00, 0x7f, 0x80, 0x01, 0xc0, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00,
0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f,
0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x7f, 0x80,
0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00,
0x00, 0x01, 0xfe, 0x00, 0x00, 0x00, 0x0f, 0xfe, 0x00, 0x00, 0x07, 0xff, 0xfc, 0x00, 0x00, 0x0f,
0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xf0, 0x00, 0x00, 0x1f, 0xff, 0xe0, 0x00, 0x00, 0x1f, 0xff,
0xc0, 0x00, 0x00, 0x0f, 0xff, 0x80, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h6', 38x50px
const unsigned char numbers6 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00,
0x00, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x01,
0xff, 0x00, 0x00, 0x00, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x0f, 0xf8,
0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xe0, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00,
0x00, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00,
0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x00, 0x00, 0x00, 0x03,
0xfe, 0x00, 0x00, 0x00, 0x03, 0xfc, 0x00, 0x00, 0x00, 0x03, 0xf8, 0xfe, 0x00, 0x00, 0x07, 0xf9,
0xff, 0x00, 0x00, 0x07, 0xf3, 0xff, 0x80, 0x00, 0x0f, 0xf3, 0xff, 0xc0, 0x00, 0x0f, 0xe3, 0xff,
0xe0, 0x00, 0x0f, 0xe1, 0xff, 0xf0, 0x00, 0x1f, 0xe0, 0xff, 0xf8, 0x00, 0x1f, 0xe0, 0x07, 0xfc,
0x00, 0x1f, 0xc0, 0x03, 0xfc, 0x00, 0x1f, 0xc0, 0x01, 0xfc, 0x00, 0x1f, 0xc0, 0x01, 0xfc, 0x00,
0x1f, 0xc0, 0x01, 0xfc, 0x00, 0x1f, 0xc0, 0x01, 0xfc, 0x00, 0x1f, 0xc0, 0x01, 0xfc, 0x00, 0x1f,
0xc0, 0x01, 0xfc, 0x00, 0x1f, 0xe0, 0x01, 0xfc, 0x00, 0x1f, 0xe0, 0x03, 0xfc, 0x00, 0x0f, 0xe0,
0x1f, 0xf8, 0x00, 0x0f, 0xfc, 0x3f, 0xf8, 0x00, 0x0f, 0xff, 0xff, 0xf0, 0x00, 0x07, 0xff, 0xff,
0xe0, 0x00, 0x03, 0xff, 0xff, 0xc0, 0x00, 0x01, 0xff, 0xff, 0x80, 0x00, 0x00, 0xff, 0xff, 0x00,
0x00, 0x00, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h7', 38x50px
const unsigned char numbers7 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xfe, 0x00, 0x00, 0x07, 0xff,
0xff, 0xfc, 0x00, 0x0f, 0xff, 0xff, 0xfe, 0x00, 0x0f, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff,
0xff, 0x80, 0x07, 0xff, 0xff, 0xff, 0x80, 0x03, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x07, 0xff,
0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x00,
0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x00, 0x03, 0xfc, 0x00, 0x00,
0x00, 0x03, 0xf8, 0x00, 0x00, 0x01, 0xc3, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xf8, 0x00, 0x00, 0x07,
0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff,
0xf8, 0x00, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x7f, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0xfc,
0x00, 0x00, 0x00, 0x1f, 0xf8, 0x00, 0x00, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00,
0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00,
0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00,
0xff, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe,
0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00,
0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h8', 38x50px
const unsigned char numbers8 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x00, 0x00, 0x0f, 0xff, 0x80, 0x00, 0x00,
0x3f, 0xff, 0xc0, 0x00, 0x00, 0x7f, 0xff, 0xe0, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x00, 0x01, 0xff,
0xff, 0xf8, 0x00, 0x03, 0xff, 0xff, 0xf8, 0x00, 0x07, 0xff, 0x8f, 0xf8, 0x00, 0x07, 0xf8, 0x03,
0xf8, 0x00, 0x07, 0xf0, 0x03, 0xf8, 0x00, 0x0f, 0xf0, 0x03, 0xf8, 0x00, 0x0f, 0xf0, 0x03, 0xf8,
0x00, 0x0f, 0xe0, 0x07, 0xf8, 0x00, 0x0f, 0xe0, 0x07, 0xf8, 0x00, 0x0f, 0xe0, 0x07, 0xf0, 0x00,
0x0f, 0xf0, 0x0f, 0xf0, 0x00, 0x0f, 0xf8, 0x1f, 0xf0, 0x00, 0x07, 0xff, 0xdf, 0xe0, 0x00, 0x03,
0xff, 0xff, 0xc0, 0x00, 0x01, 0xff, 0xff, 0x80, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x7f,
0xff, 0xf0, 0x00, 0x00, 0x3f, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xfc, 0x00, 0x00, 0x03, 0xff,
0xfc, 0x00, 0x00, 0x07, 0xff, 0xfe, 0x00, 0x00, 0x07, 0xf9, 0xff, 0x00, 0x00, 0x0f, 0xf0, 0xff,
0x80, 0x00, 0x1f, 0xe0, 0x7f, 0xc0, 0x00, 0x1f, 0xe0, 0x3f, 0xe0, 0x00, 0x1f, 0xc0, 0x1f, 0xe0,
0x00, 0x3f, 0xc0, 0x0f, 0xe0, 0x00, 0x3f, 0xc0, 0x0f, 0xf0, 0x00, 0x3f, 0x80, 0x0f, 0xf0, 0x00,
0x7f, 0x80, 0x07, 0xf0, 0x00, 0x7f, 0x80, 0x0f, 0xf0, 0x00, 0x7f, 0x00, 0x0f, 0xf0, 0x00, 0x7f,
0x80, 0x0f, 0xe0, 0x00, 0x7f, 0x80, 0x1f, 0xe0, 0x00, 0x3f, 0xf0, 0x3f, 0xe0, 0x00, 0x3f, 0xff,
0xff, 0xc0, 0x00, 0x3f, 0xff, 0xff, 0x80, 0x00, 0x1f, 0xff, 0xff, 0x00, 0x00, 0x0f, 0xff, 0xfe,
0x00, 0x00, 0x07, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'h9', 38x50px
const unsigned char numbers9 [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x00,
0x03, 0xf8, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x00, 0x00, 0x00, 0x3f, 0xfe, 0x00, 0x00, 0x00, 0x7f,
0xff, 0x80, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x00, 0x01, 0xff, 0xff, 0xe0, 0x00, 0x03, 0xff, 0xff,
0xe0, 0x00, 0x03, 0xff, 0x1f, 0xe0, 0x00, 0x03, 0xf8, 0x0f, 0xe0, 0x00, 0x07, 0xf8, 0x0f, 0xe0,
0x00, 0x07, 0xf8, 0x1f, 0xe0, 0x00, 0x07, 0xf0, 0x1f, 0xe0, 0x00, 0x07, 0xf0, 0x1f, 0xc0, 0x00,
0x07, 0xf0, 0x3f, 0xc0, 0x00, 0x07, 0xf0, 0x7f, 0xc0, 0x00, 0x07, 0xf0, 0x7f, 0x80, 0x00, 0x07,
0xf8, 0x7f, 0x00, 0x00, 0x07, 0xff, 0xfe, 0x00, 0x00, 0x03, 0xff, 0xfe, 0x00, 0x00, 0x03, 0xff,
0xff, 0x00, 0x00, 0x03, 0xff, 0xff, 0x00, 0x00, 0x01, 0xff, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff,
0x00, 0x00, 0x00, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00,
0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00,
0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00,
0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00,
0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe,
0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00,
0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'macpaint', 200x200px
const unsigned char window [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x00, 0x40, 0x00, 0x10, 0x10, 0x00, 0x80, 0x00, 0x00, 0x00,
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1b, 0x00,
0x8a, 0x40, 0x11, 0xc6, 0x01, 0x08, 0x46, 0x91, 0x00, 0x84, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x96, 0xa0, 0x12, 0xb4, 0x01, 0x15, 0x5a,
0xaa, 0x00, 0xca, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x1f, 0x00, 0x9a, 0xe0, 0x12, 0x94, 0x01, 0x55, 0x55, 0xbb, 0x00, 0x8a, 0xa4, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x92, 0x80, 0x32, 0xd6, 0x01,
0x55, 0x56, 0xa1, 0x80, 0xca, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x00, 0x00, 0x00, 0x40, 0x09, 0x00, 0x00, 0x88, 0x88, 0x10, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x4a, 0xaa, 0xaa, 0xa5, 0x52, 0x55, 0x55, 0x49, 0x24, 0x95,
0x54, 0xa5, 0x55, 0x55, 0x55, 0x4a, 0x55, 0x54, 0xa5, 0x55, 0x4a, 0x55, 0x54, 0xa5, 0x55, 0xb5,
0x55, 0x55, 0x55, 0x55, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x4a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
0x55, 0xbf, 0xde, 0xff, 0xfa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xab, 0x40, 0x01, 0x00, 0x0d, 0x5f, 0x77,
0x77, 0x7f, 0xff, 0x77, 0x77, 0xff, 0x77, 0x77, 0x77, 0x7d, 0xf7, 0x77, 0xdf, 0x77, 0x7d, 0xf7,
0x77, 0xdd, 0x55, 0xc0, 0x00, 0x00, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x41, 0xe2, 0x36, 0x4d,
0x4d, 0xbb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xbb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb,
0x6d, 0xb6, 0xdb, 0x6d, 0x55, 0x84, 0x09, 0x00, 0x2d, 0x6a, 0x02, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xab, 0x48, 0x08,
0x00, 0x06, 0xab, 0x05, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x88, 0x31, 0x20, 0x2d, 0x55, 0x05, 0x56, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xad, 0xaa,
0x4b, 0x80, 0x00, 0x0d, 0x6a, 0x05, 0x6a, 0xd5, 0x55, 0xb6, 0xdb, 0x55, 0xb6, 0xd5, 0xb6, 0xd6,
0xdb, 0x6d, 0x6d, 0xb6, 0xdb, 0x5b, 0x6d, 0x69, 0x55, 0xc4, 0x02, 0x00, 0x0a, 0xab, 0x7a, 0xaa,
0xad, 0xb6, 0xaa, 0xaa, 0xb6, 0xaa, 0xad, 0x55, 0x5a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xad, 0xab, 0x42, 0x01, 0x2a, 0xcd, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x84, 0x00, 0x00, 0x0d, 0x75,
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
0x55, 0x55, 0x55, 0xaa, 0x40, 0x02, 0x00, 0x05, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xf7, 0x7b, 0xff,
0xfd, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x40, 0x00, 0x00, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40,
0x82, 0x04, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x85, 0x60, 0x06, 0x0d, 0xa0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0x41, 0x29, 0x0a, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0xc6, 0x28, 0x0b, 0x0d, 0x20, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x4a, 0x02, 0x11, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x84, 0x11, 0x1d, 0x85,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0x40, 0x10, 0x20, 0x8d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x82, 0x22,
0x20, 0xcd, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40, 0x00, 0x61, 0xa5, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0xd5, 0x53, 0x14, 0x4d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40, 0x0a, 0x82, 0x2d, 0xa0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0x81, 0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x42, 0x82, 0x20, 0x05, 0x20,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0xc2, 0x81, 0x16, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x42, 0xa0, 0x05,
0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x44, 0x9a, 0x0b, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x88,
0x18, 0x0a, 0x05, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x32, 0x0b, 0x0d, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0xc4, 0x59, 0x09, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x42, 0x90, 0x0b, 0x0d, 0x60, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x80, 0x01, 0x00, 0x05, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x7f, 0xff, 0x7b, 0xfd,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0xff, 0xfe, 0x00, 0x06, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x7f, 0x7e,
0x03, 0x0d, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xff, 0x3e, 0x00, 0x8d, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0x7f, 0x7e, 0x07, 0x05, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xff, 0x3e, 0x01, 0x0d, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0x7d, 0x5e, 0x0a, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xfc, 0x9e, 0x12, 0x05, 0xa0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0x7f, 0xfe, 0x14, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xfc, 0x9e, 0x18,
0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x7a, 0x5e, 0x00, 0x05, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xff,
0xff, 0x52, 0x4d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x02, 0x09, 0x2d, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0x80, 0x01, 0x00, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x40, 0x00, 0x03, 0x85, 0x60, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x88, 0x02, 0x04, 0x4d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x46, 0x01, 0x08, 0xcd,
0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0xc1, 0x82, 0x11, 0x8d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x40, 0x60,
0x2b, 0x05, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x80, 0x12, 0x26, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0x40, 0x01, 0x34, 0x0c, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x80, 0x00, 0x00, 0x06, 0xa0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0x40, 0x02, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xff, 0xfb, 0xfb, 0xed, 0x50,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0x40, 0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x80, 0x02, 0x00,
0x05, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x4d, 0xb1, 0x3e, 0xcd, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x80,
0x08, 0x22, 0xad, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x48, 0x09, 0x35, 0x45, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0xc8, 0x08, 0x2a, 0xcd, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x48, 0x0a, 0x2a, 0xad, 0x60, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x8a, 0xa8, 0x3f, 0xc5, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x01, 0x00, 0x0d,
0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0x80, 0x02, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x52, 0xa9,
0x22, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xc8, 0x45, 0x49, 0x55, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0x40, 0x00, 0x00, 0x0d, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x80, 0x02, 0x00, 0x0d, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0x47, 0xf1, 0x1f, 0xc5, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x88, 0x08, 0x2a, 0x4d, 0x60,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0x48, 0x09, 0x35, 0xad, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xc8, 0x08, 0x2a,
0x8d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x40, 0x02, 0x2a, 0xc5, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x87,
0x61, 0x1d, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0x80, 0x02, 0x00, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x7f, 0xff, 0xf7, 0xf5, 0xa0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x80, 0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x01, 0x00, 0x0d,
0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0xc2, 0xc0, 0x0d, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x44, 0x32,
0x15, 0xcd, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x88, 0x08, 0x2a, 0xad, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0x48, 0x09, 0x35, 0x45, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x88, 0x10, 0x35, 0x4d, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0x46, 0xb2, 0x1f, 0x8d, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xc0, 0x01, 0x00, 0x06, 0xa0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0x40, 0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x82, 0x93, 0x00,
0x4d, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x69, 0x4a, 0xb6, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x80,
0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x02, 0x00, 0x0d, 0x20, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0xc7, 0x31, 0x19, 0x8d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x48, 0x88, 0x2e, 0xc5, 0x50, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x88, 0x09, 0x32, 0x4d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x40, 0x10, 0x2a, 0xcd,
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0x84, 0x22, 0x15, 0x8d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x41, 0x81,
0x0e, 0x05, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0xc0, 0x00, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0x40, 0x02, 0x00, 0x0d, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x7f, 0xfb, 0xf7, 0xb5, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0x80, 0x00, 0x00, 0x0d, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40, 0x02, 0x00, 0x0d, 0x60,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0xc1, 0xb0, 0x06, 0xc5, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x42, 0x12, 0x0a,
0xcd, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x84, 0x21, 0x1a, 0x8d, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x44,
0x60, 0x2b, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x80, 0x22, 0x29, 0x8e, 0xa0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0x4d, 0x11, 0x3f, 0xca, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0xc0, 0x40, 0x00, 0x0d, 0x50, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x40, 0x02, 0x00, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x80, 0x01, 0x00, 0x0d,
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0x7f, 0xff, 0xff, 0xfd, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0xaa, 0xaa,
0xaa, 0xaa, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x50, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0xab, 0xdb, 0x6d, 0xad, 0xad, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40, 0x00, 0x00, 0x0d, 0x20,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x01, 0xaa, 0x80, 0x00, 0x00, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40, 0x00, 0x00,
0x04, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x80, 0x00, 0x00, 0x0e, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x40,
0x00, 0x00, 0x0a, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xc0, 0x2a, 0xa8, 0x4d, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x55, 0x40, 0x00, 0x00, 0x05, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0x80, 0x00, 0x00, 0x0d, 0x50, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0x55, 0x40, 0x40, 0x00, 0x0d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0x81, 0x80, 0x00, 0x0d,
0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x01, 0x55, 0x43, 0x00, 0x00, 0x05, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xab, 0xda, 0x3f,
0xff, 0x8d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x4c, 0x00, 0x00, 0x0d, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa,
0x80, 0x00, 0x00, 0x0d, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x02,
0x04, 0x08, 0x10, 0x20, 0x40, 0x81, 0x00, 0x01, 0x55, 0x40, 0x00, 0x00, 0x05, 0x64, 0x92, 0x94,
0xa5, 0x29, 0x4a, 0x52, 0x94, 0xa5, 0x54, 0x28, 0x50, 0xa1, 0x42, 0x85, 0x0a, 0x14, 0x28, 0x54,
0x91, 0xab, 0x80, 0x00, 0x00, 0x0d, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x55, 0x40, 0x3f, 0xff, 0x8d, 0xa4,
0x94, 0x92, 0x49, 0x24, 0x92, 0x49, 0x49, 0x29, 0x25, 0x4a, 0x95, 0x29, 0x29, 0x52, 0xa4, 0xa5,
0x25, 0x24, 0x95, 0x55, 0xc0, 0x00, 0x00, 0x85, 0x55, 0x6a, 0xd5, 0xad, 0x5b, 0x5a, 0xb6, 0xaa,
0xd5, 0x55, 0x55, 0x55, 0x56, 0xaa, 0xaa, 0xab, 0x55, 0x5a, 0xab, 0x6a, 0xab, 0x40, 0x00, 0x00,
0x0d, 0x55, 0x55, 0x55, 0x55, 0x54, 0xaa, 0xa9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
0x55, 0x55, 0x55, 0x55, 0x2a, 0xaa, 0x80, 0x00, 0x00, 0x0d, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x40,
0x00, 0x00, 0x0d, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x4a, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xab, 0x80, 0x00, 0x40, 0x05, 0x6e, 0xdb, 0x6d, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xef, 0x6d, 0xf7, 0x7d, 0xdf, 0xdd, 0xdd, 0xfb, 0xbb, 0xfb,
0xd5, 0x40, 0x3f, 0xff, 0x8d, 0x40, 0x00, 0x00, 0xff, 0xfb, 0xba, 0xdb, 0x08, 0x5b, 0xb8, 0x41,
0x00, 0x00, 0x00, 0x88, 0xa2, 0x48, 0x84, 0x46, 0x88, 0xd5, 0xc0, 0x3f, 0xff, 0x8d, 0x40, 0x00,
0x00, 0xff, 0xfd, 0xdf, 0x77, 0x6b, 0x6e, 0xef, 0x7f, 0x00, 0x48, 0x89, 0x05, 0x77, 0x45, 0x31,
0x12, 0xad, 0xd5, 0x40, 0x00, 0x00, 0x0d, 0x43, 0xff, 0xf8, 0xff, 0xee, 0xeb, 0xdd, 0x55, 0x7b,
0xb9, 0x00, 0x00, 0x40, 0x4e, 0x72, 0xaa, 0xe2, 0x12, 0xaa, 0xee, 0xd5, 0x80, 0x00, 0x00, 0x0a,
0xc3, 0xff, 0xf8, 0xff, 0xfd, 0xdd, 0x7f, 0x55, 0x5e, 0xed, 0xff, 0x00, 0x41, 0x08, 0x85, 0x9c,
0x94, 0xaa, 0xaa, 0x99, 0xd5, 0x40, 0x00, 0x00, 0x0d, 0x43, 0xff, 0xf0, 0xff, 0xfb, 0xbf, 0xd5,
0xaa, 0xb7, 0xb8, 0x00, 0x00, 0x42, 0x28, 0x8a, 0xaa, 0xc8, 0x94, 0x03, 0x88, 0xd5, 0x80, 0x00,
0x00, 0x0d, 0x43, 0xff, 0xf8, 0xff, 0xfd, 0xd5, 0x7f, 0x55, 0x6d, 0xef, 0xff, 0x08, 0x48, 0x08,
0x89, 0x67, 0x4a, 0x91, 0x12, 0xad, 0xd6, 0x40, 0x00, 0x00, 0x05, 0x43, 0xff, 0xf8, 0xff, 0xee,
0xff, 0xeb, 0x55, 0x7e, 0xb8, 0x01, 0x00, 0x44, 0x4a, 0x22, 0x2a, 0x62, 0x32, 0xaa, 0xea, 0xd5,
0xc0, 0x3f, 0xff, 0x8d, 0x43, 0xff, 0xf8, 0xff, 0xff, 0xda, 0xdf, 0x55, 0x57, 0xed, 0xdd, 0x00,
0x41, 0x09, 0x55, 0xdc, 0xa2, 0x2a, 0xa2, 0xaa, 0xd5, 0x40, 0x3f, 0xff, 0x8d, 0x43, 0xff, 0xf0,
0xaa, 0xb1, 0x36, 0xb5, 0xaa, 0xba, 0xba, 0xab, 0xff, 0xfa, 0xbd, 0xab, 0x33, 0xdd, 0xdb, 0xbe,
0xdd, 0xd5, 0x80, 0x3f, 0xff, 0x8d, 0x43, 0xff, 0xf8, 0x80, 0x24, 0x04, 0x01, 0x12, 0x60, 0x0c,
0x41, 0x00, 0x00, 0x00, 0x8a, 0xcc, 0x40, 0x0b, 0x9a, 0x00, 0x6b, 0x40, 0x3f, 0xff, 0x8d, 0x43,
0xff, 0xf8, 0x00, 0x20, 0x12, 0x81, 0x44, 0x25, 0x48, 0xa6, 0x44, 0x48, 0x89, 0x14, 0x44, 0x51,
0x1e, 0xa4, 0x84, 0x55, 0x80, 0x00, 0x00, 0x05, 0x43, 0xff, 0xf9, 0x00, 0x20, 0x44, 0x11, 0x11,
0x60, 0x2b, 0x11, 0x11, 0x80, 0x0a, 0x23, 0x33, 0x7f, 0xfc, 0xee, 0xaa, 0xea, 0x40, 0x00, 0x00,
0x0d, 0xc3, 0xff, 0xf0, 0x80, 0x21, 0x04, 0x01, 0x44, 0x2a, 0x88, 0x01, 0x44, 0x62, 0x28, 0x8a,
0x11, 0x40, 0x0a, 0xaa, 0x8c, 0xd5, 0xc0, 0x00, 0x00, 0x0d, 0x43, 0xff, 0xf8, 0x00, 0x20, 0x04,
0x45, 0x12, 0xa0, 0x0c, 0x43, 0x00, 0x40, 0x08, 0x8a, 0xcc, 0x48, 0x93, 0x9a, 0x40, 0x55, 0x40,
0x00, 0x00, 0x0d, 0x40, 0x00, 0x00, 0x80, 0x20, 0x04, 0x01, 0x24, 0x64, 0xac, 0x4d, 0x4a, 0x48,
0xc9, 0x12, 0x44, 0x41, 0x1e, 0x64, 0x04, 0x6b, 0x80, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x80,
0x21, 0x10, 0x21, 0x01, 0x21, 0x09, 0x31, 0x11, 0x40, 0x0a, 0x23, 0x33, 0x7b, 0x7c, 0xee, 0xca,
0xd5, 0x40, 0x00, 0x00, 0x0d, 0x40, 0x00, 0x01, 0x00, 0x24, 0x45, 0x05, 0x54, 0x64, 0x4a, 0x01,
0x00, 0x53, 0x29, 0x11, 0x11, 0x4c, 0x93, 0xaa, 0xaa, 0xd5, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xaa, 0x92, 0x54, 0xa4, 0xaa, 0x4a,
0x55, 0x55, 0x55, 0x49, 0x24, 0xaa, 0xa4, 0xa4, 0xa4, 0x49, 0x29, 0x55, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xab, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x5b, 0x55, 0x56,
0xab, 0x55, 0xaa, 0xaa, 0xab, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
};

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

View File

@ -1,10 +0,0 @@
#include "Watchy_Mario.h"
#include "settings.h"
WatchyMario watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,65 +0,0 @@
#include "Watchy_Mario.h"
#define NUM_W 44
#define NUM_H 44
#define COIN_W 24
#define COIN_H 30
#define PIPE_W 42
#define PIPE_H 47
#define MARIO_W 56
#define MARIO_H 54
#define NUM_SPACING 4
#define COIN_SPACING 4
#define FLOOR_H 19
#define PIPE_PADDING DISPLAY_HEIGHT - FLOOR_H - PIPE_H
#define X_PADDING (DISPLAY_WIDTH - (4*NUM_W) - (3*NUM_SPACING))/2
#define Y_PADDING 2*COIN_SPACING+COIN_H
const unsigned char *numbers [10] = {mario0, mario1, mario2, mario3, mario4, mario5, mario6, mario7, mario8, mario9};
void WatchyMario::drawWatchFace(){
display.fillScreen(GxEPD_WHITE);
display.drawBitmap(0, 0, mariobg, DISPLAY_WIDTH, DISPLAY_HEIGHT, GxEPD_BLACK);
int hour10 = currentTime.Hour/10;
int hour01 = currentTime.Hour%10;
int minute10 = currentTime.Minute/10;
int minute01 = currentTime.Minute%10;
int pos = 0;
if(hour01 == 0 && minute10 == 0 && minute01 == 0){
pos = 0;
}
else if(minute10 == 0 && minute01 == 0){
pos = 1;
}
else if(minute01 == 0){
pos = 2;
}else{
pos = 3;
}
display.drawBitmap(X_PADDING + pos*(NUM_SPACING + NUM_W) + (NUM_W/2 - MARIO_W/2) + (pos < 2 ? 8 : -8), Y_PADDING+NUM_H + 4, pos < 2 ? mariomariol : mariomarior, MARIO_W, MARIO_H, GxEPD_BLACK); //mario
display.drawBitmap(X_PADDING + pos*(NUM_SPACING + NUM_W) + (NUM_W/2 - COIN_W/2), COIN_SPACING, mariocoin, COIN_W, COIN_H, GxEPD_BLACK); //coin
if(pos == 0){
display.drawBitmap(DISPLAY_WIDTH - 2*PIPE_W, PIPE_PADDING, mariopipe, PIPE_W, PIPE_H, GxEPD_BLACK); //pipe
}
else if(pos == 1 || pos == 2){
display.drawBitmap(X_PADDING, PIPE_PADDING, mariopipe, PIPE_W, PIPE_H, GxEPD_BLACK); //pipe
display.drawBitmap(DISPLAY_WIDTH - PIPE_W - X_PADDING, PIPE_PADDING, mariopipe, PIPE_W, PIPE_H, GxEPD_BLACK); //pipe
}
else{
display.drawBitmap(2*PIPE_W, PIPE_PADDING, mariopipe, PIPE_W, PIPE_H, GxEPD_BLACK); //pipe
}
//Hour
display.drawBitmap(X_PADDING, pos == 0 ? Y_PADDING : Y_PADDING + 20, numbers[hour10], NUM_W, NUM_H, GxEPD_BLACK); //first digit
display.drawBitmap(X_PADDING+NUM_SPACING+NUM_W, pos == 1 ? Y_PADDING : Y_PADDING + 20, numbers[hour01], NUM_W, NUM_H, GxEPD_BLACK); //second digit
//Minute
display.drawBitmap(X_PADDING+2*(NUM_SPACING+NUM_W), pos == 2 ? Y_PADDING : Y_PADDING + 20, numbers[minute10], NUM_W, NUM_H, GxEPD_BLACK); //first digit
display.drawBitmap(X_PADDING+3*(NUM_SPACING+NUM_W), pos == 3 ? Y_PADDING : Y_PADDING + 20, numbers[minute01], NUM_W, NUM_H, GxEPD_BLACK); //second digit
}

View File

@ -1,13 +0,0 @@
#ifndef WATCHY_MARIO_H
#define WATCHY_MARIO_H
#include <Watchy.h>
#include "mario.h"
class WatchyMario: public Watchy{
using Watchy::Watchy;
public:
void drawWatchFace();
};
#endif

View File

@ -1,600 +0,0 @@
// '0', 44x44px
const unsigned char mario0 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xfc, 0x00, 0x0f,
0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0,
0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0,
0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0,
0xd0, 0xfc, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '1', 44x44px
const unsigned char mario1 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x00, 0xff, 0xc0, 0x01, 0x70, 0xe0, 0x00, 0xff, 0xc0, 0x02, 0xb0,
0xd0, 0x00, 0xc0, 0xc0, 0x01, 0x70, 0xe0, 0x00, 0xc0, 0xc0, 0x02, 0xb0, 0xd0, 0x03, 0x00, 0xc0,
0x01, 0x70, 0xe0, 0x03, 0x00, 0xc0, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0xc0, 0x01, 0x70, 0xe0, 0x0c,
0x00, 0xc0, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0xc0, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0xc0, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0xc0, 0x01, 0x70, 0xe0, 0x0f, 0xc0, 0xc0, 0x02, 0xb0, 0xd0, 0x0f, 0xc0, 0xc0,
0x01, 0x70, 0xe0, 0x00, 0xc0, 0xc0, 0x02, 0xb0, 0xd0, 0x00, 0xc0, 0xc0, 0x01, 0x70, 0xe0, 0x00,
0xc0, 0xc0, 0x02, 0xb0, 0xd0, 0x00, 0xc0, 0xc0, 0x01, 0x70, 0xe0, 0x00, 0xc0, 0xc0, 0x02, 0xb0,
0xd0, 0x00, 0xc0, 0xc0, 0x01, 0x70, 0xe0, 0x00, 0xc0, 0xc0, 0x02, 0xb0, 0xd0, 0x00, 0xc0, 0xc0,
0x01, 0x70, 0xe0, 0x00, 0xc0, 0xc0, 0x02, 0xb0, 0xd0, 0x00, 0xc0, 0xc0, 0x01, 0x70, 0xe0, 0x0f,
0xc0, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xc0, 0xfc, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '2', 44x44px
const unsigned char mario2 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xfc, 0x00, 0x0f,
0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0,
0xd0, 0xff, 0xe1, 0x80, 0xc1, 0x70, 0xe0, 0xff, 0xe1, 0x80, 0xc2, 0xb0, 0xd0, 0x00, 0x01, 0x80,
0xc1, 0x70, 0xe0, 0x00, 0x07, 0x80, 0xc2, 0xb0, 0xd0, 0x00, 0x07, 0x80, 0xc1, 0x70, 0xe0, 0x00,
0x38, 0x0f, 0xc2, 0xb0, 0xd0, 0x00, 0x38, 0x0f, 0xc1, 0x70, 0xe0, 0x00, 0xc0, 0x0c, 0x02, 0xb0,
0xd0, 0x00, 0xc0, 0x0c, 0x01, 0x70, 0xe0, 0x0f, 0x00, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0x00, 0xfc,
0x01, 0x70, 0xe0, 0x30, 0x00, 0xc0, 0x02, 0xb0, 0xd0, 0x30, 0x00, 0xc0, 0x01, 0x70, 0xe0, 0xc0,
0x00, 0xff, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0xff, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0,
0xd0, 0xc0, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0x00,
0xc1, 0x70, 0xe0, 0xff, 0xff, 0xff, 0xc2, 0xb0, 0xd0, 0xff, 0xff, 0xff, 0xc1, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '3', 44x44px
const unsigned char mario3 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xfc, 0x00, 0x0f,
0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0,
0xd0, 0xff, 0xe1, 0x80, 0xc1, 0x70, 0xe0, 0xff, 0xe1, 0x80, 0xc2, 0xb0, 0xd0, 0x00, 0x07, 0x80,
0xc1, 0x70, 0xe0, 0x00, 0x07, 0x80, 0xc2, 0xb0, 0xd0, 0x00, 0x18, 0x03, 0xc1, 0x70, 0xe0, 0x00,
0x18, 0x03, 0xc2, 0xb0, 0xd0, 0x00, 0x18, 0x03, 0xc1, 0x70, 0xe0, 0x00, 0x07, 0x83, 0xc2, 0xb0,
0xd0, 0x00, 0x07, 0x80, 0xc1, 0x70, 0xe0, 0xff, 0xe1, 0x80, 0xc2, 0xb0, 0xd0, 0xff, 0xe1, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0,
0xd0, 0xfc, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '4', 44x44px
const unsigned char mario4 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x00, 0xff, 0xfc, 0x01, 0x70, 0xe0, 0x00, 0xff, 0xfc, 0x02, 0xb0,
0xd0, 0x03, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x03, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x30, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x30,
0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x30, 0x1e, 0x0c, 0x01, 0x70, 0xe0, 0x30, 0x1e, 0x0c, 0x02, 0xb0,
0xd0, 0x30, 0x66, 0x0c, 0x01, 0x70, 0xe0, 0x30, 0x66, 0x0c, 0x02, 0xb0, 0xd0, 0x30, 0x7e, 0x0f,
0xc1, 0x70, 0xe0, 0x30, 0x7e, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0xc0,
0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0,
0xd0, 0xc0, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0x00,
0xc1, 0x70, 0xe0, 0xff, 0xfc, 0x0f, 0xc2, 0xb0, 0xd0, 0xff, 0xfc, 0x0f, 0xc1, 0x70, 0xe0, 0x00,
0x0c, 0x0c, 0x02, 0xb0, 0xd0, 0x00, 0x0c, 0x0c, 0x01, 0x70, 0xe0, 0x00, 0x0c, 0x0c, 0x02, 0xb0,
0xd0, 0x00, 0x0c, 0x0c, 0x01, 0x70, 0xe0, 0x00, 0x0c, 0x0c, 0x02, 0xb0, 0xd0, 0x00, 0x0c, 0x0c,
0x01, 0x70, 0xe0, 0x00, 0x0f, 0xfc, 0x02, 0xb0, 0xd0, 0x00, 0x0f, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '5', 44x44px
const unsigned char mario5 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0xff, 0xff, 0xff, 0xc1, 0x70, 0xe0, 0xff, 0xff, 0xff, 0xc2, 0xb0,
0xd0, 0xc0, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0x00,
0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0xff, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0xff, 0xc2, 0xb0, 0xd0, 0xc0, 0x60, 0x00, 0x01, 0x70, 0xe0, 0xc0, 0x60, 0x00, 0x02, 0xb0,
0xd0, 0xc0, 0x7f, 0xfc, 0x01, 0x70, 0xe0, 0xc0, 0x7f, 0xfc, 0x02, 0xb0, 0xd0, 0xc0, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0xc0, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xc0, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0xff,
0xfe, 0x0f, 0xc2, 0xb0, 0xd0, 0x3f, 0xff, 0x80, 0xc1, 0x70, 0xe0, 0x00, 0x01, 0x80, 0xc2, 0xb0,
0xd0, 0x00, 0x01, 0x80, 0xc1, 0x70, 0xe0, 0xff, 0xe1, 0x80, 0xc2, 0xb0, 0xd0, 0xff, 0xe1, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0,
0xd0, 0xfc, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '6', 44x44px
const unsigned char mario6 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x03, 0xff, 0xff, 0xc1, 0x70, 0xe0, 0x03, 0xff, 0xff, 0xc2, 0xb0,
0xd0, 0x0c, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0x30, 0x00, 0x00,
0xc1, 0x70, 0xe0, 0x30, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0xff, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0xff, 0xc2, 0xb0, 0xd0, 0xc0, 0x60, 0x00, 0x01, 0x70, 0xe0, 0xc0, 0x60, 0x00, 0x02, 0xb0,
0xd0, 0xc0, 0x7f, 0xfc, 0x01, 0x70, 0xe0, 0xc0, 0x7f, 0xfc, 0x02, 0xb0, 0xd0, 0xc0, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0xc0, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xc0, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0xc0,
0x00, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x7f, 0x80, 0xc2, 0xb0,
0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0,
0xd0, 0xfc, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '7', 44x44px
const unsigned char mario7 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0xff, 0xff, 0xff, 0xc1, 0x70, 0xe0, 0xff, 0xff, 0xff, 0xc2, 0xb0,
0xd0, 0xc0, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xc0, 0x00, 0x00,
0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xff, 0xff, 0x80, 0xc1, 0x70, 0xe0, 0xff,
0xff, 0x80, 0xc2, 0xb0, 0xd0, 0x00, 0x01, 0x80, 0xc1, 0x70, 0xe0, 0x00, 0x01, 0x80, 0xc2, 0xb0,
0xd0, 0x00, 0x06, 0x03, 0x01, 0x70, 0xe0, 0x00, 0x06, 0x03, 0x02, 0xb0, 0xd0, 0x00, 0x18, 0x0c,
0x01, 0x70, 0xe0, 0x00, 0x18, 0x0c, 0x02, 0xb0, 0xd0, 0x00, 0x60, 0x30, 0x01, 0x70, 0xe0, 0x00,
0x60, 0x30, 0x02, 0xb0, 0xd0, 0x01, 0x80, 0xc0, 0x01, 0x70, 0xe0, 0x01, 0x80, 0xc0, 0x02, 0xb0,
0xd0, 0x01, 0x80, 0xc0, 0x01, 0x70, 0xe0, 0x01, 0x80, 0xc0, 0x02, 0xb0, 0xd0, 0x01, 0x80, 0xc0,
0x01, 0x70, 0xe0, 0x01, 0x80, 0xc0, 0x02, 0xb0, 0xd0, 0x01, 0x80, 0xc0, 0x01, 0x70, 0xe0, 0x01,
0x80, 0xc0, 0x02, 0xb0, 0xd0, 0x01, 0x80, 0xc0, 0x01, 0x70, 0xe0, 0x01, 0x80, 0xc0, 0x02, 0xb0,
0xd0, 0x01, 0x80, 0xc0, 0x01, 0x70, 0xe0, 0x01, 0x80, 0xc0, 0x02, 0xb0, 0xd0, 0x01, 0x80, 0xc0,
0x01, 0x70, 0xe0, 0x01, 0xff, 0xc0, 0x02, 0xb0, 0xd0, 0x01, 0xff, 0xc0, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '8', 44x44px
const unsigned char mario8 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xfc, 0x00, 0x0f,
0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0,
0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xf0, 0x00, 0x03, 0xc1, 0x70, 0xe0, 0xf0,
0x00, 0x03, 0xc2, 0xb0, 0xd0, 0xf0, 0x00, 0x03, 0xc1, 0x70, 0xe0, 0xf0, 0x7f, 0x83, 0xc2, 0xb0,
0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0,
0xd0, 0xfc, 0x00, 0x0f, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0x0c, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// '9', 44x44px
const unsigned char mario9 [] PROGMEM = {
0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x35, 0x55, 0x55, 0x55,
0x55, 0xc0, 0x38, 0x00, 0x00, 0x00, 0x0a, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x05, 0x70, 0xe0, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd0, 0x0f, 0xff, 0xfc, 0x01, 0x70, 0xe0, 0x0f, 0xff, 0xfc, 0x02, 0xb0,
0xd0, 0x0c, 0x00, 0x0c, 0x01, 0x70, 0xe0, 0x0c, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xfc, 0x00, 0x0f,
0xc1, 0x70, 0xe0, 0xfc, 0x00, 0x0f, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xc0,
0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0,
0xd0, 0xc0, 0x61, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x61, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x61, 0x80,
0xc1, 0x70, 0xe0, 0xc0, 0x7f, 0x80, 0xc2, 0xb0, 0xd0, 0xc0, 0x7f, 0x80, 0xc1, 0x70, 0xe0, 0xfc,
0x00, 0x00, 0xc2, 0xb0, 0xd0, 0xfc, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0x0c, 0x00, 0x00, 0xc2, 0xb0,
0xd0, 0x0c, 0x00, 0x00, 0xc1, 0x70, 0xe0, 0x0f, 0xff, 0x80, 0xc2, 0xb0, 0xd0, 0x0f, 0xff, 0x80,
0xc1, 0x70, 0xe0, 0x00, 0x01, 0x80, 0xc2, 0xb0, 0xd0, 0x00, 0x01, 0x80, 0xc1, 0x70, 0xe0, 0xff,
0xff, 0x80, 0xc2, 0xb0, 0xd0, 0xff, 0xff, 0x80, 0xc1, 0x70, 0xe0, 0xc0, 0x00, 0x03, 0x02, 0xb0,
0xd0, 0xc0, 0x00, 0x03, 0x01, 0x70, 0xe0, 0xc0, 0x00, 0x0c, 0x02, 0xb0, 0xd0, 0xc0, 0x00, 0x0c,
0x01, 0x70, 0xe0, 0xff, 0xff, 0xf0, 0x02, 0xb0, 0xd0, 0xff, 0xff, 0xf0, 0x01, 0x70, 0xe8, 0x00,
0x00, 0x00, 0x02, 0xb0, 0xd4, 0x00, 0x00, 0x00, 0x05, 0x70, 0xea, 0x00, 0x00, 0x00, 0x0a, 0xb0,
0x35, 0x55, 0x55, 0x55, 0x55, 0xc0, 0x3a, 0xaa, 0xaa, 0xaa, 0xaa, 0xc0, 0x0f, 0xff, 0xff, 0xff,
0xff, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00
};
// 'bg', 200x200px
const unsigned char mariobg [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xff, 0xfe, 0xff, 0xfe, 0xbf,
0xff, 0xaf, 0xff, 0xeb, 0xff, 0xfb, 0xff, 0xfa, 0xff, 0xfe, 0xbf, 0xff, 0xaf, 0xff, 0xef, 0xff,
0xeb, 0xff, 0xfa, 0xe4, 0x7f, 0xfc, 0x7f, 0xfc, 0x4f, 0xff, 0x47, 0xff, 0xc5, 0xff, 0xe4, 0xff,
0xf4, 0x7f, 0xfc, 0x5f, 0xfe, 0x47, 0xff, 0xc7, 0xff, 0xc4, 0xff, 0xf4, 0xaa, 0xaf, 0xea, 0xaf,
0xea, 0xab, 0xfa, 0xaa, 0xfe, 0xaa, 0xbf, 0xaa, 0xbf, 0xaa, 0xaf, 0xea, 0xab, 0xfa, 0xaa, 0xfe,
0xaa, 0xfe, 0xaa, 0xbf, 0xaa, 0x11, 0x17, 0x91, 0x13, 0xd1, 0x11, 0xf1, 0x11, 0x79, 0x11, 0x1f,
0x11, 0x1f, 0x11, 0x13, 0xd1, 0x11, 0xf1, 0x11, 0x79, 0x11, 0x3d, 0x11, 0x1f, 0x11, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x44, 0x44,
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
0x44, 0x44, 0x44, 0x44, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x11, 0x11, 0x11,
0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11,
0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x44,
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44
};
// 'coin', 24x30px
const unsigned char mariocoin [] PROGMEM = {
0x00, 0xff, 0x00, 0x00, 0xff, 0x00, 0x0f, 0x00, 0xf0, 0x0f, 0x00, 0xf0, 0x30, 0x00, 0x0c, 0x30,
0x00, 0x0c, 0x30, 0x14, 0x0c, 0x30, 0x28, 0x0c, 0xc0, 0x43, 0x03, 0xc0, 0x83, 0x03, 0xc0, 0x43,
0x03, 0xc0, 0x83, 0x03, 0xc0, 0x43, 0x03, 0xc0, 0x83, 0x03, 0xc0, 0x43, 0x03, 0xc0, 0x83, 0x03,
0xc0, 0x43, 0x03, 0xc0, 0x83, 0x03, 0xc0, 0x43, 0x03, 0xc0, 0x83, 0x03, 0xc0, 0x43, 0x03, 0xc0,
0x83, 0x03, 0x30, 0x3c, 0x0c, 0x30, 0x3c, 0x0c, 0x30, 0x00, 0x0c, 0x30, 0x00, 0x0c, 0x0f, 0x00,
0xf0, 0x0f, 0x00, 0xf0, 0x00, 0xff, 0x00, 0x00, 0xff, 0x00
};
// 'mario', 56x54px
const unsigned char mariomarior [] PROGMEM = {
0x00, 0x00, 0x03, 0xfc, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x03, 0xfc, 0x00, 0x3f, 0x00, 0x00, 0x00,
0x03, 0x03, 0x3f, 0xf3, 0xfc, 0x00, 0x00, 0x03, 0x03, 0x3f, 0xf3, 0xfc, 0x00, 0x00, 0x03, 0x00,
0xff, 0xf3, 0x03, 0x00, 0x00, 0x03, 0x00, 0xff, 0xf3, 0x03, 0x00, 0x00, 0x03, 0x00, 0xff, 0xfc,
0x03, 0x00, 0x00, 0x03, 0x00, 0xff, 0xfc, 0x03, 0x00, 0x00, 0x03, 0x00, 0xff, 0xff, 0xcc, 0x00,
0x00, 0x03, 0x03, 0xff, 0xff, 0xcc, 0x00, 0x00, 0x03, 0x03, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03,
0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0x00, 0x03, 0xc0, 0x00, 0x00, 0x03, 0xff, 0x00,
0x03, 0xc0, 0x00, 0x00, 0x0f, 0xfc, 0x0c, 0xc3, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x0c, 0xc3, 0x00,
0x00, 0x00, 0x3c, 0xfc, 0x0c, 0xc3, 0x00, 0x00, 0x00, 0x3c, 0xfc, 0x0c, 0xc3, 0x00, 0x00, 0x00,
0x30, 0xff, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x30, 0xff, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x30, 0x00,
0x30, 0x00, 0xc0, 0x00, 0x00, 0x30, 0x00, 0x30, 0x00, 0xc0, 0x00, 0x00, 0x3c, 0x00, 0xff, 0x03,
0xf0, 0x00, 0x00, 0x3c, 0x00, 0xff, 0x03, 0xf0, 0x00, 0x00, 0x03, 0xc0, 0x0f, 0xff, 0x00, 0x00,
0x00, 0x03, 0xc0, 0x0f, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00,
0xff, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x0f, 0x03, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x0f, 0x03, 0xff,
0xfc, 0x00, 0x00, 0x0f, 0xfc, 0x00, 0xf0, 0xfc, 0x00, 0x00, 0x0f, 0xfc, 0x00, 0xf0, 0xfc, 0x00,
0x00, 0x3c, 0x03, 0x00, 0x3c, 0x0f, 0x00, 0x00, 0x3c, 0x03, 0x00, 0x3c, 0x0f, 0x00, 0x00, 0x3c,
0x00, 0xc0, 0x3c, 0x03, 0xc0, 0x00, 0x3c, 0x00, 0xc0, 0x3c, 0x03, 0xc0, 0x00, 0x3f, 0xf0, 0xc3,
0xff, 0xff, 0xc0, 0x3f, 0xff, 0xf0, 0xc3, 0xff, 0xff, 0xc0, 0x3f, 0xff, 0xff, 0xff, 0xf0, 0xfc,
0xf0, 0xfc, 0x3f, 0xff, 0xff, 0xf0, 0xfc, 0xf0, 0xfc, 0x3f, 0xc3, 0xff, 0xf0, 0xff, 0x0c, 0xfc,
0x3f, 0xc3, 0xff, 0xf0, 0xff, 0x0c, 0xfc, 0x3f, 0xcc, 0x0f, 0xff, 0xfc, 0x0c, 0xfc, 0x3f, 0xcc,
0x0f, 0xff, 0xfc, 0x0c, 0xfc, 0x3f, 0xfc, 0xff, 0xff, 0xfc, 0x0c, 0xfc, 0x3f, 0xfc, 0xff, 0xff,
0xfc, 0x0c, 0x3f, 0xff, 0xf0, 0xff, 0xff, 0xfc, 0x0c, 0x3f, 0xff, 0xf0, 0xff, 0xff, 0xfc, 0x0c,
0x00, 0x00, 0x30, 0xff, 0xc0, 0x06, 0x3c, 0x00, 0x00, 0x30, 0xff, 0xc0, 0x06, 0x3c, 0x00, 0x00,
0x30, 0xc0, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x30, 0xc0, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x3f, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00
};
// 'mariol', 56x54px
const unsigned char mariomariol [] PROGMEM = {
0x00, 0xfc, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x3f, 0xc0, 0x00, 0x00, 0x3f, 0xcf,
0xfc, 0xc0, 0xc0, 0x00, 0x00, 0x3f, 0xcf, 0xfc, 0xc0, 0xc0, 0x00, 0x00, 0xc0, 0xcf, 0xff, 0x00,
0xc0, 0x00, 0x00, 0xc0, 0xcf, 0xff, 0x00, 0xc0, 0x00, 0x00, 0xc0, 0x3f, 0xff, 0x00, 0xc0, 0x00,
0x00, 0xc0, 0x3f, 0xff, 0x00, 0xc0, 0x00, 0x00, 0x33, 0xff, 0xff, 0x00, 0xc0, 0x00, 0x00, 0x33,
0xff, 0xff, 0xc0, 0xc0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xc0, 0xc0, 0x00, 0x00, 0x0f, 0xff, 0xff,
0xff, 0xc0, 0x00, 0x00, 0x03, 0xc0, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x03, 0xc0, 0x00, 0xff, 0xc0,
0x00, 0x00, 0x00, 0xc3, 0x30, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0xc3, 0x30, 0x3f, 0xf0, 0x00, 0x00,
0x00, 0xc3, 0x30, 0x3f, 0x3c, 0x00, 0x00, 0x00, 0xc3, 0x30, 0x3f, 0x3c, 0x00, 0x00, 0x03, 0x00,
0x00, 0xff, 0x0c, 0x00, 0x00, 0x03, 0x00, 0x00, 0xff, 0x0c, 0x00, 0x00, 0x03, 0x00, 0x0c, 0x00,
0x0c, 0x00, 0x00, 0x03, 0x00, 0x0c, 0x00, 0x0c, 0x00, 0x00, 0x0f, 0xc0, 0xff, 0x00, 0x3c, 0x00,
0x00, 0x0f, 0xc0, 0xff, 0x00, 0x3c, 0x00, 0x00, 0x00, 0xff, 0xf0, 0x03, 0xc0, 0x00, 0x00, 0x00,
0xff, 0xf0, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x30, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00,
0xff, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xc0, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xc0, 0xf0,
0x00, 0x00, 0x00, 0x3f, 0x0f, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x3f, 0x0f, 0x00, 0x3f, 0xf0, 0x00,
0x00, 0xf0, 0x3c, 0x00, 0xc0, 0x3c, 0x00, 0x00, 0xf0, 0x3c, 0x00, 0xc0, 0x3c, 0x00, 0x03, 0xc0,
0x3c, 0x03, 0x00, 0x3c, 0x00, 0x03, 0xc0, 0x3c, 0x03, 0x00, 0x3c, 0x00, 0x03, 0xff, 0xff, 0xc3,
0x0f, 0xfc, 0x00, 0x03, 0xff, 0xff, 0xc3, 0x0f, 0xff, 0xfc, 0x0f, 0x3f, 0x0f, 0xff, 0xff, 0xff,
0xfc, 0x0f, 0x3f, 0x0f, 0xff, 0xff, 0xfc, 0x3f, 0x30, 0xff, 0x0f, 0xff, 0xc3, 0xfc, 0x3f, 0x30,
0xff, 0x0f, 0xff, 0xc3, 0xfc, 0x3f, 0x30, 0x3f, 0xff, 0xf0, 0x33, 0xfc, 0x3f, 0x30, 0x3f, 0xff,
0xf0, 0x33, 0xfc, 0x3f, 0x30, 0x3f, 0xff, 0xff, 0x3f, 0xfc, 0x3f, 0x30, 0x3f, 0xff, 0xff, 0x3f,
0xfc, 0x3f, 0x30, 0x3f, 0xff, 0xff, 0x0f, 0xff, 0xfc, 0x30, 0x3f, 0xff, 0xff, 0x0f, 0xff, 0xfc,
0x3c, 0x60, 0x03, 0xff, 0x0c, 0x00, 0x00, 0x3c, 0x60, 0x03, 0xff, 0x0c, 0x00, 0x00, 0x1f, 0x80,
0x00, 0x03, 0x0c, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x03, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00
};
// 'pipe', 42x47px
const unsigned char mariopipe [] PROGMEM = {
0x3f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x50, 0x01, 0x11, 0x15, 0x55, 0x80, 0xa8, 0x02, 0xaa, 0xaa,
0xab, 0xc0, 0xd0, 0x04, 0x44, 0x45, 0x55, 0xc0, 0xa8, 0x02, 0xaa, 0xaa, 0xab, 0xc0, 0xd0, 0x01,
0x11, 0x15, 0x55, 0xc0, 0xa8, 0x02, 0xaa, 0xaa, 0xab, 0xc0, 0xd0, 0x04, 0x44, 0x45, 0x55, 0xc0,
0xa8, 0x02, 0xaa, 0xaa, 0xab, 0xc0, 0xd0, 0x01, 0x11, 0x15, 0x55, 0xc0, 0xa8, 0x02, 0xaa, 0xaa,
0xab, 0xc0, 0xd0, 0x04, 0x44, 0x45, 0x55, 0xc0, 0xa8, 0x02, 0xaa, 0xaa, 0xab, 0xc0, 0xd0, 0x01,
0x11, 0x15, 0x55, 0xc0, 0xa8, 0x02, 0xaa, 0xaa, 0xab, 0xc0, 0xd0, 0x04, 0x44, 0x45, 0x55, 0xc0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x80, 0x2a, 0x05, 0x55, 0x55,
0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02,
0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00,
0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02, 0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55,
0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02,
0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00,
0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02, 0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55,
0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02,
0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00,
0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02, 0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55,
0x57, 0x00, 0x34, 0x08, 0x88, 0x8a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00, 0x34, 0x02,
0x22, 0x2a, 0xaf, 0x00, 0x2a, 0x05, 0x55, 0x55, 0x57, 0x00
};

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

View File

@ -1,10 +0,0 @@
#include "Watchy_Pokemon.h"
#include "settings.h"
WatchyPokemon watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,18 +0,0 @@
#include "Watchy_Pokemon.h"
void WatchyPokemon::drawWatchFace(){
display.fillScreen(GxEPD_WHITE);
display.drawBitmap(0, 0, pokemon, DISPLAY_WIDTH, DISPLAY_HEIGHT, GxEPD_BLACK);
display.setTextColor(GxEPD_BLACK);
display.setFont(&FreeMonoBold9pt7b);
display.setCursor(10, 170);
if(currentTime.Hour < 10){
display.print('0');
}
display.print(currentTime.Hour);
display.print(':');
if(currentTime.Minute < 10){
display.print('0');
}
display.print(currentTime.Minute);
}

View File

@ -1,13 +0,0 @@
#ifndef WATCHY_POKEMON_H
#define WATCHY_POKEMON_H
#include <Watchy.h>
#include "pokemon.h"
class WatchyPokemon : public Watchy{
using Watchy::Watchy;
public:
void drawWatchFace();
};
#endif

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

File diff suppressed because it is too large Load Diff

View File

@ -1,151 +0,0 @@
// STARRY HORIZON for Watchy by SQFMI
// Copyright 2021 Dan Delany dan.delany@gmail.com
// Released under free MIT License : https://github.com/dandelany/watchy-faces/blob/main/LICENSE
#include <Watchy.h> //include the Watchy library
#include <Fonts/FreeSansBold9pt7b.h> //include any fonts you want to use
#include "MadeSunflower39pt7b.h"
#include "stars.h"
#include "settings.h"
#define STAR_COUNT 900
const int horizonY = 150;
const int planetR = 650;
struct xyPoint {
int x;
int y;
};
//Star myStars[STAR_COUNT];
void initStars() {
// The random star field is loaded from PROGMEM - see stars.h
// this is the function that was used to generate the stars in stars.h
// it does not run normally but can be used to re-generate stars with different parameters
// tweak as needed, call this function in init, open serial monitor, and paste the results into stars.h
srand(5287); // randomSeed() is not stable on ESP32, use srand
printf("const Star STARS[] PROGMEM = {\n");
for(int i = 0; i < STAR_COUNT; i++) {
int starX = (rand() % 260) - 30;
int starY = (rand() % 260) - 30;
int radius = 0;
if (i > STAR_COUNT * 0.99) radius = 2;
else if (i > STAR_COUNT * 0.80) radius = 1;
printf(" { %d, %d, %d },\n", starX, starY, radius);
// myStars[i] = { starX, starY, radius };
}
printf("};\n");
}
struct xyPoint rotatePointAround(int x, int y, int ox, int oy, double angle) {
// rotate X,Y point around given origin point by a given angle
// based on https://gist.github.com/LyleScott/e36e08bfb23b1f87af68c9051f985302#file-rotate_2d_point-py-L38
double qx = (double)ox + (cos(angle) * (double)(x - ox)) + (sin(angle) * (double)(y - oy));
double qy = (double)oy + (-sin(angle) * (double)(x - ox)) + (cos(angle) * (double)(y - oy));
struct xyPoint newPoint;
newPoint.x = (int)qx;
newPoint.y = (int)qy;
return newPoint;
}
class StarryHorizon : public Watchy {
public:
StarryHorizon(const watchySettings& s) : Watchy(s) {
// uncomment to re-generate stars
// initStars();
}
void drawWatchFace(){
display.fillScreen(GxEPD_BLACK);
display.fillCircle(100, horizonY + planetR, planetR, GxEPD_WHITE);
drawGrid();
drawStars(STARS);
drawTime();
drawDate();
}
void drawGrid() {
int prevY = horizonY;
for(int i = 0; i < 40; i+= 1) {
int y = prevY + int(abs(sin(double(i) / 10) * 10));
if(y <= 200) {
display.drawFastHLine(0, y, 200, GxEPD_BLACK);
}
prevY = y;
}
int vanishY = horizonY - 25;
for (int x = -230; x < 430; x += 20) {
display.drawLine(x, 200, 100, vanishY, GxEPD_BLACK);
}
}
void drawStars(const Star stars[]) {
// draw field of stars
// rotate stars so that they make an entire revolution once per hour
int minute = (int)currentTime.Minute;
double minuteAngle = ((2.0 * M_PI) / 60.0) * (double)minute;
// printf("Minute %d, angle %f\n", (int)currentTime.Minute, minuteAngle);
for(int starI = 0; starI < STAR_COUNT; starI++) {
int starX = stars[starI].x;
int starY = stars[starI].y;
int starR = stars[starI].r;
struct xyPoint rotated = rotatePointAround(starX, starY, 100, 100, minuteAngle);
if(rotated.x < 0 || rotated.y < 0 || rotated.x > 200 || rotated.y > horizonY) {
continue;
}
if(starR == 0) {
display.drawPixel(rotated.x, rotated.y, GxEPD_WHITE);
} else {
display.fillCircle(rotated.x, rotated.y, starR, GxEPD_WHITE);
}
}
}
void drawTime() {
display.setFont(&MADE_Sunflower_PERSONAL_USE39pt7b);
display.setTextColor(GxEPD_WHITE);
display.setTextWrap(false);
char* timeStr;
asprintf(&timeStr, "%d:%02d", currentTime.Hour, currentTime.Minute);
drawCenteredString(timeStr, 100, 115, false);
free(timeStr);
}
void drawDate() {
String monthStr = monthShortStr(currentTime.Month);
String dayOfWeek = dayShortStr(currentTime.Wday);
display.setFont(&FreeSansBold9pt7b);
display.setTextColor(GxEPD_WHITE);
display.setTextWrap(false);
char* dateStr;
asprintf(&dateStr, "%s %s %d", dayOfWeek.c_str(), monthStr.c_str(), currentTime.Day);
drawCenteredString(dateStr, 100, 140, true);
free(dateStr);
}
void drawCenteredString(const String &str, int x, int y, bool drawBg) {
int16_t x1, y1;
uint16_t w, h;
display.getTextBounds(str, x, y, &x1, &y1, &w, &h);
// printf("bounds: %d x %d y, %d x1 %d y1, %d w, %d h\n", 0, 100, x1, y1, w, h);
display.setCursor(x - w / 2, y);
if(drawBg) {
int padY = 3;
int padX = 10;
display.fillRect(x - (w / 2 + padX), y - (h + padY), w + padX*2, h + padY*2, GxEPD_BLACK);
}
// uncomment to draw bounding box
// display.drawRect(x - w / 2, y - h, w, h, GxEPD_WHITE);
display.print(str);
}
};
StarryHorizon face(settings); //instantiate watchface
void setup() {
face.init(); //call init in setup
}
void loop() {
// this should never run, Watchy deep sleeps after init();
}

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

View File

@ -1,910 +0,0 @@
struct Star {
int16_t x;
int16_t y;
int16_t r;
};
// pre-generated random star field
// run initStars to re-generate with different params
const Star STARS[] PROGMEM = {
{ 158, 153, 0 },
{ 180, 217, 0 },
{ 229, 208, 0 },
{ 17, 153, 0 },
{ 115, 13, 0 },
{ 174, 78, 0 },
{ 27, 181, 0 },
{ 80, 15, 0 },
{ 105, 27, 0 },
{ 149, -5, 0 },
{ 12, 150, 0 },
{ 142, 88, 0 },
{ 79, 226, 0 },
{ 159, -19, 0 },
{ 219, 112, 0 },
{ 182, 97, 0 },
{ 167, 225, 0 },
{ 199, -2, 0 },
{ 191, 169, 0 },
{ 209, 24, 0 },
{ 28, 87, 0 },
{ 29, -18, 0 },
{ 66, 107, 0 },
{ 85, 182, 0 },
{ 29, -9, 0 },
{ 141, 108, 0 },
{ 185, -24, 0 },
{ 200, 193, 0 },
{ 135, 128, 0 },
{ 8, 66, 0 },
{ 19, 103, 0 },
{ 52, 74, 0 },
{ 203, -6, 0 },
{ 20, 42, 0 },
{ 59, 106, 0 },
{ -5, 213, 0 },
{ 29, 118, 0 },
{ 215, 85, 0 },
{ 67, 169, 0 },
{ 213, 212, 0 },
{ 15, 37, 0 },
{ 5, 79, 0 },
{ 78, 172, 0 },
{ 4, 138, 0 },
{ 35, 5, 0 },
{ 180, 170, 0 },
{ 61, -3, 0 },
{ 29, 53, 0 },
{ 156, 58, 0 },
{ 162, 38, 0 },
{ -26, 153, 0 },
{ 11, 183, 0 },
{ 76, 181, 0 },
{ -27, 14, 0 },
{ 195, 112, 0 },
{ -26, 185, 0 },
{ 76, 123, 0 },
{ 208, 106, 0 },
{ 123, 55, 0 },
{ 227, 115, 0 },
{ 105, 186, 0 },
{ 29, 14, 0 },
{ -10, 65, 0 },
{ 52, 112, 0 },
{ 56, -5, 0 },
{ 40, 176, 0 },
{ 42, 103, 0 },
{ 94, 33, 0 },
{ 194, 91, 0 },
{ 19, 174, 0 },
{ 121, -20, 0 },
{ 7, 141, 0 },
{ 50, 192, 0 },
{ 96, 113, 0 },
{ 40, -2, 0 },
{ 205, 31, 0 },
{ 64, 201, 0 },
{ 205, 99, 0 },
{ 181, 8, 0 },
{ 178, 138, 0 },
{ 196, 195, 0 },
{ -23, -8, 0 },
{ 89, 37, 0 },
{ 1, 96, 0 },
{ 59, 37, 0 },
{ 113, 85, 0 },
{ -8, 224, 0 },
{ 125, 30, 0 },
{ 131, 67, 0 },
{ -27, 85, 0 },
{ 6, -17, 0 },
{ 215, 175, 0 },
{ 193, -16, 0 },
{ 55, 156, 0 },
{ 119, 24, 0 },
{ 94, 165, 0 },
{ 207, 75, 0 },
{ 195, 137, 0 },
{ 33, 197, 0 },
{ 204, 134, 0 },
{ 59, 98, 0 },
{ 217, 142, 0 },
{ 36, 5, 0 },
{ 104, 218, 0 },
{ 176, 26, 0 },
{ 163, 33, 0 },
{ 91, 48, 0 },
{ 206, 219, 0 },
{ 114, -22, 0 },
{ 27, 98, 0 },
{ 61, 28, 0 },
{ 108, -21, 0 },
{ -8, 173, 0 },
{ 225, 3, 0 },
{ 68, 133, 0 },
{ 116, 188, 0 },
{ 38, 193, 0 },
{ -22, 126, 0 },
{ -8, 179, 0 },
{ 140, 157, 0 },
{ 205, 165, 0 },
{ 143, 98, 0 },
{ 148, 196, 0 },
{ 2, 81, 0 },
{ 49, 71, 0 },
{ 6, 117, 0 },
{ 74, -13, 0 },
{ 161, 208, 0 },
{ 183, 159, 0 },
{ 48, 107, 0 },
{ 72, -19, 0 },
{ 166, 19, 0 },
{ 172, 175, 0 },
{ 3, 55, 0 },
{ 18, 83, 0 },
{ -26, 107, 0 },
{ 58, 164, 0 },
{ 202, 162, 0 },
{ 13, 60, 0 },
{ 85, 86, 0 },
{ 211, 41, 0 },
{ 29, 155, 0 },
{ 144, 22, 0 },
{ -24, 90, 0 },
{ 161, 0, 0 },
{ 5, 153, 0 },
{ 115, 207, 0 },
{ 105, 104, 0 },
{ 124, 158, 0 },
{ 226, 138, 0 },
{ 65, 226, 0 },
{ 181, 191, 0 },
{ 151, -20, 0 },
{ 78, 142, 0 },
{ 149, 35, 0 },
{ 56, 74, 0 },
{ 50, 193, 0 },
{ -13, 121, 0 },
{ 16, 229, 0 },
{ 162, 128, 0 },
{ 36, 202, 0 },
{ 171, 132, 0 },
{ 144, 10, 0 },
{ 197, 114, 0 },
{ 83, 7, 0 },
{ 217, -17, 0 },
{ 218, 191, 0 },
{ 106, 81, 0 },
{ 0, -29, 0 },
{ 181, -25, 0 },
{ 2, 131, 0 },
{ 106, 172, 0 },
{ 39, 191, 0 },
{ 167, 133, 0 },
{ 13, 204, 0 },
{ 15, 214, 0 },
{ 129, 212, 0 },
{ -19, 187, 0 },
{ -23, 119, 0 },
{ 207, 69, 0 },
{ 134, 135, 0 },
{ 15, 137, 0 },
{ 19, 7, 0 },
{ -13, 96, 0 },
{ 105, 160, 0 },
{ 16, -11, 0 },
{ -2, 136, 0 },
{ 39, 160, 0 },
{ 45, 150, 0 },
{ -11, 5, 0 },
{ 76, 61, 0 },
{ -16, 223, 0 },
{ 109, 143, 0 },
{ 144, 94, 0 },
{ 69, 170, 0 },
{ -13, 163, 0 },
{ 141, -21, 0 },
{ 152, -24, 0 },
{ 44, 97, 0 },
{ 98, 57, 0 },
{ 201, -25, 0 },
{ 222, 120, 0 },
{ 132, 221, 0 },
{ 199, 47, 0 },
{ 64, 66, 0 },
{ 105, 201, 0 },
{ -12, -15, 0 },
{ -22, 77, 0 },
{ 59, 222, 0 },
{ 52, 159, 0 },
{ 28, 153, 0 },
{ 20, 83, 0 },
{ 90, 157, 0 },
{ 159, 81, 0 },
{ 99, -27, 0 },
{ -11, 161, 0 },
{ 194, -7, 0 },
{ 52, 196, 0 },
{ 156, 61, 0 },
{ 187, -10, 0 },
{ -22, 225, 0 },
{ 139, 10, 0 },
{ 95, 192, 0 },
{ 172, 86, 0 },
{ 220, 171, 0 },
{ 182, -11, 0 },
{ 8, 155, 0 },
{ -18, -9, 0 },
{ 67, 132, 0 },
{ 11, -30, 0 },
{ 146, 55, 0 },
{ 201, 77, 0 },
{ 117, 223, 0 },
{ 227, 228, 0 },
{ -7, 107, 0 },
{ 102, 206, 0 },
{ 81, 15, 0 },
{ 135, 106, 0 },
{ -29, -2, 0 },
{ -7, 105, 0 },
{ 62, 159, 0 },
{ 59, 21, 0 },
{ 154, 131, 0 },
{ -11, 104, 0 },
{ 24, -24, 0 },
{ 23, 70, 0 },
{ 10, 220, 0 },
{ 192, 195, 0 },
{ 123, 79, 0 },
{ 178, 138, 0 },
{ -12, -1, 0 },
{ 48, 220, 0 },
{ 25, 45, 0 },
{ 67, 199, 0 },
{ 6, 162, 0 },
{ 2, 136, 0 },
{ 171, 47, 0 },
{ 173, 88, 0 },
{ 93, 222, 0 },
{ 139, 180, 0 },
{ 130, 33, 0 },
{ 53, 71, 0 },
{ 39, 108, 0 },
{ 175, 210, 0 },
{ 112, 180, 0 },
{ 155, 200, 0 },
{ 69, -12, 0 },
{ 30, 166, 0 },
{ 197, -6, 0 },
{ 214, 178, 0 },
{ 71, 8, 0 },
{ 126, 14, 0 },
{ 54, 181, 0 },
{ 41, 212, 0 },
{ 145, 182, 0 },
{ 187, 125, 0 },
{ 53, 131, 0 },
{ 83, 63, 0 },
{ 81, 15, 0 },
{ 85, 41, 0 },
{ 54, -9, 0 },
{ 30, -23, 0 },
{ 35, 126, 0 },
{ 40, 36, 0 },
{ 2, 108, 0 },
{ 112, 120, 0 },
{ 64, 82, 0 },
{ 218, 162, 0 },
{ -8, 110, 0 },
{ 87, 78, 0 },
{ 182, 89, 0 },
{ 44, 102, 0 },
{ 227, -10, 0 },
{ 186, 220, 0 },
{ 209, 181, 0 },
{ 180, -6, 0 },
{ 126, 65, 0 },
{ 166, 13, 0 },
{ 191, 29, 0 },
{ 210, 219, 0 },
{ 80, 122, 0 },
{ 109, 74, 0 },
{ 75, 58, 0 },
{ 155, 223, 0 },
{ 153, 48, 0 },
{ 164, 66, 0 },
{ 78, 135, 0 },
{ 159, 217, 0 },
{ 70, 86, 0 },
{ 136, 174, 0 },
{ 56, 57, 0 },
{ 125, 155, 0 },
{ 40, -17, 0 },
{ 193, 109, 0 },
{ -28, 228, 0 },
{ 90, 32, 0 },
{ 18, 228, 0 },
{ 107, 113, 0 },
{ 14, 127, 0 },
{ -26, 221, 0 },
{ 159, 211, 0 },
{ 69, 204, 0 },
{ 78, 109, 0 },
{ 91, 73, 0 },
{ 16, 223, 0 },
{ 134, 225, 0 },
{ 23, 138, 0 },
{ 38, 55, 0 },
{ -20, 104, 0 },
{ 4, 99, 0 },
{ 221, 177, 0 },
{ 108, 68, 0 },
{ 216, 206, 0 },
{ 97, -3, 0 },
{ -23, 215, 0 },
{ 127, -19, 0 },
{ 39, 48, 0 },
{ 66, 170, 0 },
{ 211, 19, 0 },
{ 18, 189, 0 },
{ 11, 129, 0 },
{ 93, 18, 0 },
{ 157, 168, 0 },
{ 71, 118, 0 },
{ 88, -16, 0 },
{ 188, 142, 0 },
{ 97, 165, 0 },
{ 184, 39, 0 },
{ 27, 211, 0 },
{ 172, 126, 0 },
{ 46, 101, 0 },
{ 61, 42, 0 },
{ 75, -4, 0 },
{ 18, 195, 0 },
{ 164, 111, 0 },
{ -27, 158, 0 },
{ 63, -24, 0 },
{ 159, 83, 0 },
{ 225, 1, 0 },
{ 146, 208, 0 },
{ 38, 54, 0 },
{ -10, 200, 0 },
{ 22, 79, 0 },
{ 208, -16, 0 },
{ 229, 21, 0 },
{ -2, 7, 0 },
{ 171, 32, 0 },
{ 57, 156, 0 },
{ 160, 203, 0 },
{ 219, 2, 0 },
{ 202, 91, 0 },
{ 26, -18, 0 },
{ 192, 181, 0 },
{ -20, 125, 0 },
{ 47, 91, 0 },
{ -10, 200, 0 },
{ 38, -20, 0 },
{ 68, 63, 0 },
{ 103, 169, 0 },
{ 68, 78, 0 },
{ 112, -13, 0 },
{ -16, 92, 0 },
{ 2, 63, 0 },
{ 72, 85, 0 },
{ 209, 54, 0 },
{ 218, 70, 0 },
{ 27, 36, 0 },
{ 145, 167, 0 },
{ -25, -30, 0 },
{ 131, -8, 0 },
{ 135, 167, 0 },
{ 119, 163, 0 },
{ 18, 73, 0 },
{ -18, 220, 0 },
{ 127, 227, 0 },
{ 45, 31, 0 },
{ 198, 116, 0 },
{ 133, 197, 0 },
{ 12, 144, 0 },
{ 114, 33, 0 },
{ 218, 217, 0 },
{ 106, 101, 0 },
{ 117, 132, 0 },
{ 127, 206, 0 },
{ 184, 141, 0 },
{ 228, -11, 0 },
{ 87, 112, 0 },
{ 122, 145, 0 },
{ 43, 6, 0 },
{ 90, 205, 0 },
{ 26, 120, 0 },
{ 198, 107, 0 },
{ -20, 225, 0 },
{ -26, 32, 0 },
{ -27, 179, 0 },
{ -3, 151, 0 },
{ 111, 28, 0 },
{ 223, 53, 0 },
{ 45, -5, 0 },
{ 154, -3, 0 },
{ 50, 34, 0 },
{ 193, 134, 0 },
{ 31, 126, 0 },
{ 132, 11, 0 },
{ 128, 65, 0 },
{ -24, 157, 0 },
{ 100, 87, 0 },
{ 21, 31, 0 },
{ 156, 144, 0 },
{ 191, 208, 0 },
{ 134, 51, 0 },
{ 75, 176, 0 },
{ 18, 119, 0 },
{ 101, 122, 0 },
{ 99, 217, 0 },
{ 221, 157, 0 },
{ 172, 229, 0 },
{ 186, 166, 0 },
{ 2, 178, 0 },
{ 149, 105, 0 },
{ 66, 49, 0 },
{ 200, 62, 0 },
{ 107, 150, 0 },
{ 29, 124, 0 },
{ 223, 15, 0 },
{ 80, 51, 0 },
{ 41, 155, 0 },
{ 59, 89, 0 },
{ 164, 126, 0 },
{ 159, 141, 0 },
{ 198, 93, 0 },
{ 35, 181, 0 },
{ 129, 226, 0 },
{ 4, 124, 0 },
{ 23, 198, 0 },
{ 138, -26, 0 },
{ 22, -8, 0 },
{ 134, 70, 0 },
{ 56, 61, 0 },
{ 157, 216, 0 },
{ 217, 40, 0 },
{ 222, 220, 0 },
{ 52, -4, 0 },
{ 13, 125, 0 },
{ 220, 105, 0 },
{ 49, 177, 0 },
{ 92, 194, 0 },
{ 26, 127, 0 },
{ 107, 110, 0 },
{ -25, 172, 0 },
{ 207, 138, 0 },
{ 228, 83, 0 },
{ 80, 152, 0 },
{ 36, 213, 0 },
{ 136, 62, 0 },
{ 135, 93, 0 },
{ 223, 32, 0 },
{ 199, 213, 0 },
{ 203, 35, 0 },
{ 200, 114, 0 },
{ 165, 179, 0 },
{ 212, 87, 0 },
{ 158, 82, 0 },
{ 113, 122, 0 },
{ 132, 48, 0 },
{ 221, 32, 0 },
{ 121, -4, 0 },
{ 93, -26, 0 },
{ -18, -15, 0 },
{ 158, -6, 0 },
{ 172, 205, 0 },
{ -14, 46, 0 },
{ 144, 205, 0 },
{ 22, 74, 0 },
{ 212, 174, 0 },
{ 228, 225, 0 },
{ -23, 155, 0 },
{ -17, 70, 0 },
{ 144, 109, 0 },
{ 91, 153, 0 },
{ 98, 72, 0 },
{ 201, 91, 0 },
{ 66, -7, 0 },
{ 72, 181, 0 },
{ 32, 23, 0 },
{ 135, 155, 0 },
{ 13, 155, 0 },
{ 98, 31, 0 },
{ 186, -5, 0 },
{ 170, 186, 0 },
{ 103, 103, 0 },
{ 105, 26, 0 },
{ 192, 57, 0 },
{ 144, 208, 0 },
{ 39, 165, 0 },
{ 47, 101, 0 },
{ 34, 146, 0 },
{ 198, 174, 0 },
{ 158, 180, 0 },
{ 156, 89, 0 },
{ 83, 23, 0 },
{ 202, 109, 0 },
{ 67, 196, 0 },
{ -15, -27, 0 },
{ 135, 90, 0 },
{ 207, 73, 0 },
{ 38, 180, 0 },
{ 186, 210, 0 },
{ 92, 129, 0 },
{ 4, 102, 0 },
{ 209, 108, 0 },
{ 88, 59, 0 },
{ 102, 54, 0 },
{ 133, 91, 0 },
{ 110, 60, 0 },
{ 22, -12, 0 },
{ 96, 82, 0 },
{ -11, 63, 0 },
{ 92, 17, 0 },
{ 102, 149, 0 },
{ 224, 107, 0 },
{ 24, 229, 0 },
{ 69, 31, 0 },
{ 46, 192, 0 },
{ 24, 176, 0 },
{ 161, 25, 0 },
{ 113, 103, 0 },
{ 132, 130, 0 },
{ 163, 194, 0 },
{ -14, -27, 0 },
{ 200, 203, 0 },
{ 88, 199, 0 },
{ 72, 83, 0 },
{ -17, 222, 0 },
{ 82, 87, 0 },
{ 157, 83, 0 },
{ -28, 86, 0 },
{ 181, 2, 0 },
{ 63, 169, 0 },
{ 188, 148, 0 },
{ 195, 150, 0 },
{ 107, 202, 0 },
{ 229, 101, 0 },
{ 226, -27, 0 },
{ 105, 43, 0 },
{ 36, 94, 0 },
{ 171, 82, 0 },
{ 224, 205, 0 },
{ 152, 170, 0 },
{ 11, 161, 0 },
{ 209, 134, 0 },
{ -15, 79, 0 },
{ 95, -12, 0 },
{ 61, 156, 0 },
{ 139, 185, 0 },
{ 105, 108, 0 },
{ 163, 166, 0 },
{ 68, 191, 0 },
{ 172, 157, 0 },
{ 5, 148, 0 },
{ 178, 214, 0 },
{ -9, 115, 0 },
{ 87, 28, 0 },
{ 57, 198, 0 },
{ 119, 147, 0 },
{ 129, 78, 0 },
{ 94, -2, 0 },
{ 98, 128, 0 },
{ 140, 24, 0 },
{ -15, 39, 0 },
{ 116, 53, 0 },
{ 71, 226, 0 },
{ 143, 174, 0 },
{ 199, 162, 0 },
{ 208, 44, 0 },
{ 101, 42, 0 },
{ 181, 5, 0 },
{ 58, 120, 0 },
{ 57, 33, 0 },
{ 184, -17, 0 },
{ 27, 32, 0 },
{ 174, 60, 0 },
{ 139, 224, 0 },
{ 141, 80, 0 },
{ 21, 103, 0 },
{ 29, 159, 0 },
{ 97, 141, 0 },
{ 24, 192, 0 },
{ 174, 8, 0 },
{ -27, 41, 0 },
{ 217, 11, 0 },
{ 85, 128, 0 },
{ 186, 199, 0 },
{ 202, 158, 0 },
{ 210, 207, 0 },
{ 135, 68, 0 },
{ 115, 170, 0 },
{ 64, 6, 0 },
{ 79, 208, 0 },
{ 174, 154, 0 },
{ 78, 55, 0 },
{ 153, 120, 0 },
{ 210, 38, 0 },
{ 216, 162, 0 },
{ 15, 220, 0 },
{ 196, 2, 0 },
{ 6, 100, 0 },
{ 166, 225, 0 },
{ 72, 95, 0 },
{ 206, 60, 0 },
{ 179, -29, 0 },
{ 19, -1, 0 },
{ 121, 148, 0 },
{ 86, 8, 0 },
{ 50, 214, 0 },
{ 28, 225, 0 },
{ 120, 111, 0 },
{ -18, 28, 0 },
{ 83, 86, 0 },
{ 38, 207, 0 },
{ -14, 206, 0 },
{ -3, 0, 0 },
{ 187, -29, 0 },
{ 100, 159, 0 },
{ 107, 94, 0 },
{ 73, 173, 0 },
{ 206, -25, 0 },
{ 174, 47, 0 },
{ 137, 71, 0 },
{ -16, 180, 0 },
{ 52, 91, 0 },
{ 66, 51, 0 },
{ 51, -21, 0 },
{ 185, 79, 0 },
{ -6, 210, 0 },
{ 110, 84, 0 },
{ 138, 150, 0 },
{ 191, 43, 0 },
{ 4, 109, 0 },
{ 173, 82, 0 },
{ 95, 1, 0 },
{ 183, 36, 0 },
{ 186, -4, 0 },
{ 194, 194, 0 },
{ 170, 166, 0 },
{ 97, 71, 0 },
{ 21, 114, 0 },
{ 206, 127, 0 },
{ 156, 24, 0 },
{ 110, 0, 0 },
{ -2, 151, 0 },
{ 199, -21, 0 },
{ 20, 24, 0 },
{ 27, 8, 0 },
{ 0, 173, 0 },
{ 67, 101, 0 },
{ 21, 68, 0 },
{ 39, 45, 0 },
{ 109, 123, 0 },
{ 72, 70, 0 },
{ 149, 93, 0 },
{ 179, 152, 0 },
{ 175, 51, 0 },
{ 66, -25, 0 },
{ 127, 51, 0 },
{ 71, 36, 0 },
{ 49, 56, 0 },
{ 207, 138, 0 },
{ 15, 123, 0 },
{ 40, 3, 0 },
{ 135, 219, 0 },
{ 96, 39, 0 },
{ 109, -16, 0 },
{ 222, -3, 0 },
{ 45, -16, 0 },
{ 73, 212, 0 },
{ 174, 72, 0 },
{ 52, 229, 0 },
{ 132, -4, 0 },
{ 27, 102, 0 },
{ -3, 60, 0 },
{ 196, 14, 0 },
{ -28, 74, 0 },
{ 59, 27, 0 },
{ 58, 160, 0 },
{ 109, 204, 0 },
{ 91, 41, 0 },
{ 137, 61, 0 },
{ 54, 14, 0 },
{ 23, 63, 0 },
{ 35, 22, 0 },
{ 159, -21, 0 },
{ 136, 43, 0 },
{ 193, -13, 0 },
{ -19, 110, 0 },
{ 164, 122, 0 },
{ 225, 116, 0 },
{ -8, 85, 0 },
{ 97, 6, 0 },
{ 44, 133, 0 },
{ -4, 205, 0 },
{ 207, -17, 1 },
{ 48, 15, 1 },
{ 7, 183, 1 },
{ 227, 218, 1 },
{ 152, 217, 1 },
{ 45, 59, 1 },
{ 66, 96, 1 },
{ 98, 103, 1 },
{ 96, -18, 1 },
{ 54, 140, 1 },
{ 0, 107, 1 },
{ 164, 151, 1 },
{ 152, 97, 1 },
{ 129, 132, 1 },
{ 8, 165, 1 },
{ 13, 50, 1 },
{ 43, 92, 1 },
{ 218, 110, 1 },
{ -8, -23, 1 },
{ 176, 164, 1 },
{ -29, 202, 1 },
{ 208, 203, 1 },
{ 177, 100, 1 },
{ 149, 224, 1 },
{ 184, 197, 1 },
{ 110, 207, 1 },
{ 7, -10, 1 },
{ 127, 219, 1 },
{ 22, 168, 1 },
{ 158, 180, 1 },
{ -7, 8, 1 },
{ 34, 98, 1 },
{ 62, -3, 1 },
{ 39, 105, 1 },
{ 16, 20, 1 },
{ 25, 127, 1 },
{ 147, 18, 1 },
{ -3, 36, 1 },
{ 208, 12, 1 },
{ 9, 132, 1 },
{ -14, -26, 1 },
{ 69, 181, 1 },
{ 206, 98, 1 },
{ 118, 120, 1 },
{ 175, 79, 1 },
{ 214, 109, 1 },
{ 24, 54, 1 },
{ 1, 25, 1 },
{ 73, 121, 1 },
{ 216, -26, 1 },
{ 54, 90, 1 },
{ 193, 190, 1 },
{ 197, 25, 1 },
{ 84, 196, 1 },
{ 76, 158, 1 },
{ 47, -30, 1 },
{ 64, 125, 1 },
{ 31, 36, 1 },
{ 229, -27, 1 },
{ -24, 205, 1 },
{ 46, 11, 1 },
{ 198, 131, 1 },
{ 183, 108, 1 },
{ 38, 116, 1 },
{ 40, 37, 1 },
{ 102, 120, 1 },
{ 198, 160, 1 },
{ 88, 170, 1 },
{ 45, 198, 1 },
{ 3, 202, 1 },
{ 201, 208, 1 },
{ 142, 69, 1 },
{ 56, 6, 1 },
{ 213, 61, 1 },
{ 16, 159, 1 },
{ 160, 8, 1 },
{ 68, 80, 1 },
{ 225, 125, 1 },
{ 124, 4, 1 },
{ 195, 128, 1 },
{ 68, 37, 1 },
{ 228, 193, 1 },
{ 129, 68, 1 },
{ 167, 100, 1 },
{ 115, -6, 1 },
{ -9, 3, 1 },
{ 50, 43, 1 },
{ 229, 111, 1 },
{ 228, 192, 1 },
{ 101, 222, 1 },
{ 9, 165, 1 },
{ 171, 159, 1 },
{ 25, 220, 1 },
{ 59, 68, 1 },
{ 37, 190, 1 },
{ 161, 61, 1 },
{ 111, 189, 1 },
{ -18, 26, 1 },
{ 107, 169, 1 },
{ 29, 193, 1 },
{ -23, 97, 1 },
{ 146, 129, 1 },
{ -10, 116, 1 },
{ 189, 207, 1 },
{ -18, 43, 1 },
{ 9, 212, 1 },
{ 184, -10, 1 },
{ 53, 110, 1 },
{ 155, 96, 1 },
{ 77, 87, 1 },
{ 94, 144, 1 },
{ 189, 180, 1 },
{ -18, 55, 1 },
{ 175, 142, 1 },
{ 225, -28, 1 },
{ 80, 74, 1 },
{ 156, 14, 1 },
{ 138, 222, 1 },
{ 78, -16, 1 },
{ 148, 61, 1 },
{ 221, 197, 1 },
{ 132, 175, 1 },
{ -26, 204, 1 },
{ 25, -24, 1 },
{ 50, 139, 1 },
{ 22, 214, 1 },
{ 15, 204, 1 },
{ 93, 101, 1 },
{ -2, 167, 1 },
{ 151, 80, 1 },
{ 122, 153, 1 },
{ 185, 84, 1 },
{ 23, 221, 1 },
{ 79, 222, 1 },
{ 194, 138, 1 },
{ 198, 222, 1 },
{ 92, -8, 1 },
{ 25, -20, 1 },
{ 32, 174, 1 },
{ -3, 31, 1 },
{ 190, 79, 1 },
{ -18, 23, 1 },
{ 24, 210, 1 },
{ 7, 213, 1 },
{ 184, 109, 1 },
{ 46, 116, 1 },
{ 44, 198, 1 },
{ 202, 31, 1 },
{ 90, 15, 1 },
{ 119, 7, 1 },
{ 4, 149, 1 },
{ 202, 185, 1 },
{ 76, 159, 1 },
{ 187, 36, 1 },
{ 207, 126, 1 },
{ 61, 14, 1 },
{ 149, 108, 1 },
{ 93, 95, 1 },
{ 57, 89, 1 },
{ -13, 91, 1 },
{ 14, 18, 1 },
{ 132, 164, 1 },
{ 186, 188, 1 },
{ 102, 104, 1 },
{ 205, 223, 1 },
{ 38, 110, 1 },
{ 11, 205, 1 },
{ 145, 155, 1 },
{ 197, -3, 1 },
{ 43, 140, 1 },
{ 107, 35, 1 },
{ 142, 155, 2 },
{ 13, 79, 2 },
{ 148, 18, 2 },
{ 204, 104, 2 },
{ 198, 143, 2 },
{ 152, 221, 2 },
{ 96, 184, 2 },
{ -25, 225, 2 },
};

View File

@ -1,10 +0,0 @@
#include "Watchy_Tetris.h"
#include "settings.h"
WatchyTetris watchy(settings);
void setup(){
watchy.init();
}
void loop(){}

View File

@ -1,16 +0,0 @@
#include "Watchy_Tetris.h"
const unsigned char *tetris_nums [10] = {tetris0, tetris1, tetris2, tetris3, tetris4, tetris5, tetris6, tetris7, tetris8, tetris9};
void WatchyTetris::drawWatchFace(){
display.fillScreen(GxEPD_WHITE);
display.drawBitmap(0, 0, tetrisbg, DISPLAY_WIDTH, DISPLAY_HEIGHT, GxEPD_BLACK);
//Hour
display.drawBitmap(25, 20, tetris_nums[currentTime.Hour/10], 40, 60, GxEPD_BLACK); //first digit
display.drawBitmap(75, 20, tetris_nums[currentTime.Hour%10], 40, 60, GxEPD_BLACK); //second digit
//Minute
display.drawBitmap(25, 110, tetris_nums[currentTime.Minute/10], 40, 60, GxEPD_BLACK); //first digit
display.drawBitmap(75, 110, tetris_nums[currentTime.Minute%10], 40, 60, GxEPD_BLACK); //second digit
}

View File

@ -1,13 +0,0 @@
#ifndef WATCHY_TETRIS_H
#define WATCHY_TETRIS_H
#include <Watchy.h>
#include "tetris.h"
class WatchyTetris : public Watchy{
public:
using Watchy::Watchy;
void drawWatchFace();
};
#endif

View File

@ -1,43 +0,0 @@
#ifndef SETTINGS_H
#define SETTINGS_H
//Weather Settings
#define CITY_ID "5128581" //New York City https://openweathermap.org/current#cityid
//You can also use LAT,LON for your location instead of CITY_ID, but not both
//#define LAT "40.7127" //New York City, Looked up on https://www.latlong.net/
//#define LON "-74.0059"
#ifdef CITY_ID
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?id={cityID}&lang={lang}&units={units}&appid={apiKey}" //open weather api using city ID
#else
#define OPENWEATHERMAP_URL "http://api.openweathermap.org/data/2.5/weather?lat={lat}&lon={lon}&lang={lang}&units={units}&appid={apiKey}" //open weather api using lat lon
#endif
#define OPENWEATHERMAP_APIKEY "f058fe1cad2afe8e2ddc5d063a64cecb" //use your own API key :)
#define TEMP_UNIT "metric" //metric = Celsius , imperial = Fahrenheit
#define TEMP_LANG "en"
#define WEATHER_UPDATE_INTERVAL 30 //must be greater than 5, measured in minutes
//NTP Settings
#define NTP_SERVER "pool.ntp.org"
#define GMT_OFFSET_SEC 3600 * -5 //New York is UTC -5 EST, -4 EDT, will be overwritten by weather data
watchySettings settings{
#ifdef CITY_ID
.cityID = CITY_ID,
#else
.cityID = "",
.lat = LAT,
.lon = LON,
#endif
.weatherAPIKey = OPENWEATHERMAP_APIKEY,
.weatherURL = OPENWEATHERMAP_URL,
.weatherUnit = TEMP_UNIT,
.weatherLang = TEMP_LANG,
.weatherUpdateInterval = WEATHER_UPDATE_INTERVAL,
.ntpServer = NTP_SERVER,
.gmtOffset = GMT_OFFSET_SEC,
.vibrateOClock = true,
};
#endif

View File

@ -1,536 +0,0 @@
// 'dither_it_tetris_0', 40x60px
const unsigned char tetris0 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5d, 0x57, 0x55, 0x80, 0xe0, 0x38, 0x0e, 0x03, 0xc0,
0xf0, 0x3d, 0xd7, 0x75, 0x8b, 0x62, 0xd9, 0xce, 0xb3, 0xc3, 0x70, 0xdc, 0xee, 0x7b, 0xbf, 0x6f,
0xda, 0x87, 0x21, 0xad, 0x6b, 0x59, 0x2e, 0x97, 0xd2, 0xf4, 0xbd, 0x57, 0x53, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcd, 0x6a, 0xba, 0xae, 0xa5, 0xa4, 0xf0, 0x1c, 0x07,
0x13, 0xb2, 0xe0, 0x58, 0x16, 0x55, 0xc9, 0x72, 0xdc, 0xb7, 0x73, 0xc4, 0xe0, 0xd8, 0x36, 0x79,
0xaa, 0xff, 0xdf, 0xf7, 0x13, 0xd5, 0x66, 0xb9, 0xae, 0xa5, 0xa4, 0xf2, 0xbc, 0xaf, 0x55, 0x92,
0x7f, 0xff, 0xff, 0xff, 0xd9, 0xc0, 0x00, 0x03, 0xff, 0xc4, 0xc0, 0x00, 0x02, 0x93, 0xd5, 0x40,
0x00, 0x02, 0x49, 0x95, 0xc0, 0x00, 0x03, 0x25, 0xd0, 0x40, 0x00, 0x02, 0xbb, 0xa5, 0xc0, 0x00,
0x03, 0x73, 0xda, 0xc0, 0x00, 0x02, 0x29, 0xc9, 0x40, 0x00, 0x03, 0x45, 0xa5, 0x40, 0x00, 0x02,
0xab, 0xb0, 0xc0, 0x00, 0x03, 0xff, 0xcd, 0xc0, 0x00, 0x03, 0xff, 0xd2, 0x40, 0x00, 0x03, 0x25,
0xa4, 0xc0, 0x00, 0x02, 0xdb, 0xca, 0xc0, 0x00, 0x02, 0xfd, 0xb2, 0xc0, 0x00, 0x03, 0x4b, 0x89,
0x40, 0x00, 0x02, 0xcd, 0xea, 0xc0, 0x00, 0x02, 0xfd, 0xc9, 0x40, 0x00, 0x03, 0x55, 0xa5, 0x40,
0x00, 0x02, 0xab, 0xb2, 0xc0, 0x00, 0x03, 0xff, 0xc9, 0x7f, 0xff, 0xff, 0xff, 0x94, 0xf5, 0x5d,
0x57, 0x25, 0xd2, 0xea, 0xba, 0xae, 0xdb, 0xca, 0x6f, 0xdb, 0xf6, 0xfd, 0xa9, 0x74, 0xdd, 0x37,
0x4b, 0xd5, 0xec, 0xbb, 0x2e, 0xcd, 0xc4, 0xef, 0xdb, 0xf6, 0xfb, 0xaa, 0x75, 0x5d, 0x57, 0x59,
0xd5, 0xea, 0xba, 0xae, 0xa7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb,
0x7b, 0x7e, 0xde, 0x93, 0xd6, 0xed, 0xbb, 0x6e, 0xed, 0xdb, 0xf6, 0xfd, 0xbe, 0xfb, 0xed, 0x7b,
0x5e, 0xd6, 0xcd, 0xdb, 0xf6, 0xfb, 0x7e, 0xcb, 0xed, 0x7b, 0x5e, 0xd7, 0x7d, 0xb7, 0xed, 0xfd,
0xbe, 0xd5, 0xed, 0x7b, 0x5f, 0x6f, 0x2b, 0xff, 0xff, 0xff, 0xff, 0xff
};
// 'dither_it_tetris_1', 40x60px
const unsigned char tetris1 [] PROGMEM = {
0x00, 0x00, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x0d, 0x57, 0x55, 0x00, 0x00, 0x09, 0x56, 0x03, 0x00,
0x00, 0x0d, 0x1f, 0x75, 0x00, 0x00, 0x08, 0xa6, 0xb3, 0x00, 0x00, 0x0e, 0x4e, 0x7b, 0x00, 0x00,
0x0a, 0xaf, 0x21, 0x00, 0x00, 0x0d, 0x56, 0x97, 0x00, 0x00, 0x0a, 0x4f, 0x53, 0x00, 0x00, 0x09,
0x27, 0xff, 0x00, 0x00, 0x0c, 0x9f, 0xff, 0x00, 0x00, 0x0d, 0x4e, 0xa5, 0x00, 0x00, 0x0c, 0xae,
0x13, 0x00, 0x00, 0x0a, 0x57, 0x55, 0x00, 0x00, 0x0b, 0x2e, 0xb3, 0x00, 0x00, 0x0c, 0x96, 0x79,
0x00, 0x00, 0x0d, 0x4f, 0x25, 0x00, 0x00, 0x0a, 0xae, 0x93, 0x00, 0x00, 0x0c, 0x27, 0x55, 0x00,
0x00, 0x0b, 0x57, 0xff, 0x00, 0x00, 0x09, 0x9f, 0xff, 0x00, 0x00, 0x0c, 0x46, 0xab, 0x00, 0x00,
0x0d, 0x5f, 0x03, 0x00, 0x00, 0x0a, 0x4e, 0x75, 0x00, 0x00, 0x0b, 0x27, 0x33, 0x00, 0x00, 0x0c,
0x9e, 0xb9, 0x00, 0x00, 0x0c, 0xae, 0x55, 0x00, 0x00, 0x0a, 0xa7, 0x23, 0x00, 0x00, 0x0d, 0x2e,
0xab, 0x00, 0x00, 0x0a, 0x97, 0xff, 0x00, 0x00, 0x09, 0x2f, 0xff, 0x00, 0x00, 0x0c, 0x97, 0x25,
0x00, 0x00, 0x0d, 0x56, 0xdb, 0x00, 0x00, 0x0c, 0xae, 0xfd, 0x00, 0x00, 0x0a, 0x8e, 0xcb, 0x00,
0x00, 0x0d, 0x5e, 0xcd, 0x00, 0x00, 0x0c, 0x47, 0x7d, 0x00, 0x00, 0x0a, 0xae, 0xd5, 0x00, 0x00,
0x0d, 0x57, 0x2b, 0x00, 0x00, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x0f,
0xbe, 0x93, 0x00, 0x00, 0x0d, 0x6e, 0xed, 0x00, 0x00, 0x0d, 0xb6, 0xfb, 0x00, 0x00, 0x0e, 0xdf,
0x4d, 0x00, 0x00, 0x0b, 0x6e, 0xcb, 0x00, 0x00, 0x0e, 0xde, 0xfd, 0x00, 0x00, 0x0d, 0xb7, 0x55,
0x00, 0x00, 0x0f, 0x7e, 0xab, 0x00, 0x00, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x0f, 0xff, 0xff, 0x00,
0x00, 0x0a, 0x96, 0x93, 0x00, 0x00, 0x0c, 0x0e, 0xed, 0x00, 0x00, 0x08, 0x0e, 0xfb, 0x00, 0x00,
0x0c, 0xb6, 0xcd, 0x00, 0x00, 0x08, 0x37, 0x4b, 0x00, 0x00, 0x0f, 0xf6, 0xfd, 0x00, 0x00, 0x09,
0xae, 0xab, 0x00, 0x00, 0x0c, 0xaf, 0x55, 0x00, 0x00, 0x0f, 0xff, 0xff
};
// 'dither_it_tetris_2', 40x60px
const unsigned char tetris2 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5d, 0x57, 0x55, 0x80, 0xe0, 0x38, 0x0e, 0x03, 0xc0,
0xf0, 0x3c, 0x0f, 0x75, 0x8b, 0x62, 0xd8, 0xb6, 0x73, 0xc3, 0x70, 0xdc, 0x37, 0x3b, 0xbf, 0x6f,
0xdb, 0xf6, 0xa1, 0xad, 0x6b, 0x5a, 0xd6, 0x4b, 0xd2, 0xf4, 0xbd, 0x2f, 0x55, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc9, 0x6a, 0xba, 0xae, 0xab, 0xb6, 0xf0, 0x18, 0x07,
0x03, 0xbf, 0x60, 0x5d, 0xde, 0x75, 0xd2, 0xf2, 0xda, 0xc7, 0x33, 0xb3, 0x60, 0xdd, 0xee, 0xb9,
0xbf, 0x7f, 0xd8, 0x4e, 0x55, 0xd5, 0x66, 0xbd, 0x27, 0x23, 0xaa, 0xf2, 0xba, 0xae, 0xab, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0x53, 0x00, 0x00,
0x00, 0x02, 0x09, 0x00, 0x00, 0x00, 0x03, 0x65, 0x00, 0x00, 0x00, 0x02, 0xbb, 0x00, 0x00, 0x00,
0x02, 0x73, 0x00, 0x00, 0x00, 0x03, 0x29, 0x00, 0x00, 0x00, 0x02, 0x85, 0x00, 0x00, 0x00, 0x03,
0x77, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5d, 0x57, 0x13,
0x80, 0xe0, 0x3a, 0xae, 0xe9, 0xc0, 0xf7, 0x5b, 0xf6, 0xff, 0x8b, 0x67, 0x3b, 0x36, 0xc9, 0xc3,
0x73, 0xbb, 0x2f, 0x4f, 0xbf, 0x6a, 0x1d, 0xf6, 0xf9, 0xad, 0x64, 0xbb, 0x56, 0xad, 0xd2, 0xf5,
0x5c, 0xaf, 0x53, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0xd5, 0x72, 0x50,
0x00, 0x00, 0x80, 0xed, 0xb0, 0x00, 0x00, 0xc0, 0x6f, 0xd0, 0x00, 0x00, 0x8b, 0xec, 0xb0, 0x00,
0x00, 0xc3, 0x74, 0xd0, 0x00, 0x00, 0xbf, 0x6f, 0xd0, 0x00, 0x00, 0xad, 0x6a, 0xb0, 0x00, 0x00,
0xd2, 0xf5, 0x50, 0x00, 0x00, 0xff, 0xff, 0xf0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd5,
0x69, 0x3d, 0x57, 0x55, 0x80, 0xee, 0xd8, 0x0e, 0xab, 0xc0, 0x6f, 0xbc, 0x0e, 0xfd, 0x8b, 0xec,
0xd8, 0xb6, 0xcd, 0xc3, 0x74, 0xdc, 0x37, 0x4b, 0xbf, 0x6f, 0xbb, 0xf6, 0xfd, 0xad, 0x6a, 0xba,
0xd7, 0x55, 0xd2, 0xf5, 0x5d, 0x2e, 0xab, 0xff, 0xff, 0xff, 0xff, 0xff
};
// 'dither_it_tetris_3', 40x60px
const unsigned char tetris3 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0x55, 0x6b, 0x5a, 0xab, 0xa2, 0x29, 0x24, 0x49, 0x29, 0xc9,
0x55, 0x4a, 0xa5, 0x4b, 0xa5, 0x8a, 0x33, 0x14, 0x25, 0xb4, 0x51, 0x88, 0xa9, 0xab, 0xc3, 0x14,
0x56, 0x52, 0x53, 0x9a, 0x52, 0xa4, 0x95, 0x49, 0xd9, 0xd6, 0xd5, 0xb5, 0x5f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc9, 0x6a, 0xba, 0x97, 0x49, 0xb6, 0xe0, 0x1c, 0x4e,
0x23, 0xbf, 0x70, 0x59, 0x57, 0x55, 0xd2, 0xe2, 0xdd, 0xce, 0x73, 0xb3, 0x70, 0xd9, 0xe7, 0x3b,
0xbe, 0xef, 0xdc, 0x4e, 0xa5, 0xd6, 0x6b, 0x5a, 0x96, 0x49, 0xa9, 0xf4, 0xbd, 0x57, 0x57, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0x53, 0x00, 0x00,
0x00, 0x02, 0x09, 0x00, 0x00, 0x00, 0x03, 0x65, 0x00, 0x00, 0x00, 0x02, 0xbb, 0x00, 0x00, 0x00,
0x02, 0x71, 0x00, 0x00, 0x00, 0x03, 0x2b, 0x00, 0x00, 0x00, 0x02, 0x85, 0x00, 0x00, 0x00, 0x03,
0x75, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x35, 0x5d, 0x57, 0x13,
0x00, 0x20, 0x3a, 0xae, 0xed, 0x00, 0x37, 0x5b, 0xf6, 0xfb, 0x00, 0x2b, 0x3b, 0x36, 0xcd, 0x00,
0x27, 0xbb, 0x2f, 0x4b, 0x00, 0x32, 0x1d, 0xf6, 0xfd, 0x00, 0x29, 0x7b, 0x56, 0xab, 0x00, 0x35,
0x3c, 0xaf, 0x55, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00,
0x02, 0x93, 0x00, 0x00, 0x00, 0x03, 0x6d, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00, 0x02,
0xcb, 0x00, 0x00, 0x00, 0x03, 0x4d, 0x00, 0x00, 0x00, 0x02, 0xfb, 0x00, 0x00, 0x00, 0x02, 0xab,
0x00, 0x00, 0x00, 0x03, 0x55, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd5,
0x75, 0x5d, 0x57, 0x25, 0x80, 0xe0, 0x38, 0x0e, 0xdb, 0xc0, 0xf0, 0x3c, 0x0e, 0xfd, 0x8b, 0x62,
0xd8, 0xb6, 0xcb, 0xc3, 0x70, 0xdc, 0x37, 0x4d, 0xbf, 0x6f, 0xdb, 0xf6, 0xfd, 0xad, 0x6b, 0x5a,
0xd6, 0xab, 0xd2, 0xf4, 0xbd, 0x2f, 0x53, 0xff, 0xff, 0xff, 0xff, 0xff
};
// 'dither_it_tetris_4', 40x60px
const unsigned char tetris4 [] PROGMEM = {
0xff, 0xc0, 0x00, 0x03, 0xff, 0xd5, 0x40, 0x00, 0x03, 0xff, 0x80, 0xc0, 0x00, 0x03, 0x4b, 0xc0,
0xc0, 0x00, 0x03, 0x77, 0x8b, 0x40, 0x00, 0x03, 0xad, 0xc3, 0x40, 0x00, 0x03, 0x77, 0xbf, 0x40,
0x00, 0x03, 0xad, 0xad, 0x40, 0x00, 0x02, 0xf7, 0xd2, 0xc0, 0x00, 0x03, 0xaf, 0xff, 0xc0, 0x00,
0x03, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xff, 0xc9, 0x40, 0x00, 0x03, 0xbb, 0xb6, 0xc0, 0x00, 0x03,
0x6f, 0xbf, 0x40, 0x00, 0x03, 0xb5, 0xd2, 0xc0, 0x00, 0x02, 0xdb, 0xb3, 0x40, 0x00, 0x03, 0xb7,
0xbf, 0x40, 0x00, 0x03, 0x6d, 0xd5, 0x40, 0x00, 0x03, 0xb7, 0xaa, 0xc0, 0x00, 0x03, 0x7b, 0xff,
0xc0, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd2, 0xf5, 0x5d, 0x57, 0xb7, 0x88, 0x60,
0x38, 0x0f, 0x6d, 0xd5, 0xf0, 0x3c, 0x0f, 0xb7, 0x9c, 0x62, 0xd8, 0xb6, 0xdb, 0xce, 0xf0, 0xdc,
0x37, 0x6f, 0xa9, 0x6f, 0xdb, 0xf7, 0xb5, 0x92, 0xeb, 0x5a, 0xd7, 0x6f, 0xd4, 0xf4, 0xbd, 0x2f,
0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd4, 0xe9, 0x5a, 0x4e, 0x4b,
0x82, 0x64, 0x3b, 0xb7, 0x75, 0xd9, 0x73, 0x5b, 0xf6, 0xfd, 0xae, 0xeb, 0x3d, 0x2e, 0xcb, 0x9c,
0xe7, 0x9b, 0x37, 0x4d, 0xca, 0x72, 0x5b, 0xee, 0xfb, 0xa1, 0x69, 0x3d, 0x66, 0xab, 0xdd, 0xf5,
0x5a, 0x9f, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00,
0x02, 0x93, 0x00, 0x00, 0x00, 0x02, 0xed, 0x00, 0x00, 0x00, 0x03, 0x7d, 0x00, 0x00, 0x00, 0x02,
0xcb, 0x00, 0x00, 0x00, 0x02, 0xcd, 0x00, 0x00, 0x00, 0x03, 0x7b, 0x00, 0x00, 0x00, 0x02, 0xd9,
0x00, 0x00, 0x00, 0x03, 0x27, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00,
0x00, 0x00, 0x03, 0x25, 0x00, 0x00, 0x00, 0x02, 0xdb, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00,
0x00, 0x03, 0x4b, 0x00, 0x00, 0x00, 0x02, 0xcd, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00,
0x03, 0x55, 0x00, 0x00, 0x00, 0x02, 0xab, 0x00, 0x00, 0x00, 0x03, 0xff
};
// 'dither_it_tetris_5', 40x60px
const unsigned char tetris5 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5f, 0xbf, 0xef, 0x80, 0xe0, 0x3d, 0xee, 0xbb, 0xc0,
0xf0, 0x3f, 0xbf, 0xff, 0x8b, 0x62, 0xdb, 0x37, 0xcd, 0xc3, 0x70, 0xdf, 0x3e, 0xcf, 0xbf, 0x6f,
0xdd, 0xf7, 0xfb, 0xad, 0x6b, 0x5f, 0xdf, 0x6f, 0xd2, 0xf4, 0xbd, 0x77, 0xbb, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0xc9, 0x40, 0x00, 0x00, 0x00, 0xb6, 0xc0, 0x00, 0x00,
0x00, 0xbf, 0x40, 0x00, 0x00, 0x00, 0xd2, 0xc0, 0x00, 0x00, 0x00, 0xb3, 0x40, 0x00, 0x00, 0x00,
0xbf, 0x40, 0x00, 0x00, 0x00, 0xd5, 0x40, 0x00, 0x00, 0x00, 0xaa, 0xc0, 0x00, 0x00, 0x00, 0xff,
0xc0, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd2, 0xff, 0xfd, 0x57, 0xff, 0x88, 0x74,
0xba, 0xaf, 0x4b, 0xd5, 0xf7, 0x7b, 0xf7, 0x77, 0x9c, 0x7a, 0xdb, 0x37, 0xad, 0xce, 0xed, 0xbd,
0x2e, 0xf7, 0xa9, 0x77, 0x7b, 0xf7, 0x5b, 0x92, 0xfa, 0xda, 0xaf, 0xad, 0xd4, 0xf7, 0xbd, 0x57,
0x7b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd4, 0xe9, 0x3a, 0x4e, 0x93,
0x82, 0x64, 0x9b, 0xb6, 0xed, 0xd9, 0x72, 0x5d, 0xf7, 0x7d, 0xae, 0xeb, 0xbb, 0x2e, 0xcb, 0x9c,
0xe7, 0x3b, 0x36, 0xcd, 0xca, 0x72, 0x9b, 0xee, 0xfb, 0xa1, 0x68, 0x5d, 0x67, 0x59, 0xdd, 0xf7,
0x7a, 0x9e, 0xa7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00,
0x03, 0x25, 0x00, 0x00, 0x00, 0x02, 0xdb, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00, 0x03,
0x4b, 0x00, 0x00, 0x00, 0x02, 0xcd, 0x00, 0x00, 0x00, 0x02, 0xfb, 0x00, 0x00, 0x00, 0x03, 0x59,
0x00, 0x00, 0x00, 0x02, 0xa7, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xff,
0xff, 0xff, 0xfc, 0x00, 0xd2, 0xea, 0x5d, 0x2c, 0x00, 0xdd, 0xfb, 0xbd, 0xdc, 0x00, 0xeb, 0x76,
0xfe, 0xb4, 0x00, 0xdd, 0xfb, 0x5b, 0x6c, 0x00, 0xeb, 0x6d, 0xbd, 0xdc, 0x00, 0xbd, 0xf6, 0xfe,
0xb4, 0x00, 0xeb, 0xfb, 0xbd, 0xec, 0x00, 0xff, 0xff, 0xff, 0xfc, 0x00
};
// 'dither_it_tetris_6', 40x60px
const unsigned char tetris6 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5f, 0xbf, 0xef, 0x80, 0xe0, 0x3d, 0xee, 0xbb, 0xc0,
0xf0, 0x3f, 0xbf, 0xff, 0x8b, 0x62, 0xdb, 0x37, 0xcd, 0xc3, 0x70, 0xdf, 0x3e, 0xcf, 0xbf, 0x6f,
0xdd, 0xf7, 0xfb, 0xad, 0x6b, 0x5f, 0xdf, 0x6f, 0xd2, 0xf4, 0xbd, 0x77, 0xbb, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0xc9, 0x40, 0x00, 0x00, 0x00, 0xb6, 0xc0, 0x00, 0x00,
0x00, 0xbf, 0x40, 0x00, 0x00, 0x00, 0xd2, 0xc0, 0x00, 0x00, 0x00, 0xb3, 0x40, 0x00, 0x00, 0x00,
0xbf, 0x40, 0x00, 0x00, 0x00, 0xd5, 0x40, 0x00, 0x00, 0x00, 0xaa, 0xc0, 0x00, 0x00, 0x00, 0xff,
0xc0, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd2, 0xf5, 0x5d, 0x57, 0x55, 0x88, 0x60,
0x3a, 0xae, 0x55, 0xd5, 0xf7, 0x5b, 0xf7, 0x47, 0x9c, 0x67, 0x3b, 0x36, 0x29, 0xce, 0xf3, 0x9d,
0x2f, 0x93, 0xa9, 0x6a, 0x5b, 0xf6, 0xab, 0x92, 0xe4, 0xba, 0xae, 0x95, 0xd4, 0xf5, 0x5d, 0x57,
0x53, 0xff, 0xff, 0xff, 0xfe, 0x49, 0xff, 0xff, 0xff, 0xff, 0x27, 0xf7, 0x7b, 0x7e, 0xdf, 0x53,
0xde, 0xef, 0xdb, 0xf6, 0x95, 0xfb, 0xfe, 0xff, 0xbe, 0xab, 0xb3, 0x78, 0xde, 0x36, 0xc5, 0xf3,
0xec, 0xfb, 0x3f, 0x17, 0xff, 0x7f, 0xdf, 0xf7, 0x63, 0xb7, 0xf7, 0xfd, 0xfe, 0x99, 0xed, 0x7d,
0x5f, 0x56, 0x4b, 0xff, 0xff, 0xff, 0xff, 0x45, 0xff, 0xc0, 0x00, 0x02, 0xb7, 0xee, 0xc0, 0x00,
0x03, 0x41, 0xdf, 0xc0, 0x00, 0x03, 0x37, 0xfb, 0x40, 0x00, 0x02, 0x93, 0xe3, 0xc0, 0x00, 0x02,
0xc9, 0xb3, 0x40, 0x00, 0x03, 0x17, 0xff, 0xc0, 0x00, 0x03, 0x63, 0xde, 0xc0, 0x00, 0x02, 0x95,
0xf5, 0xc0, 0x00, 0x03, 0x2b, 0xff, 0xc0, 0x00, 0x02, 0xc3, 0xff, 0xff, 0xff, 0xfe, 0x2b, 0xee,
0xff, 0xff, 0xff, 0x55, 0xdb, 0xf4, 0xba, 0x97, 0x25, 0xed, 0x77, 0x7e, 0xef, 0x4b, 0xb6, 0xfa,
0xdd, 0xbe, 0x69, 0xdb, 0xed, 0xbe, 0xd7, 0x87, 0xed, 0x77, 0x7b, 0x6e, 0x33, 0xdb, 0xfa, 0xdd,
0xbf, 0x55, 0xf6, 0xf7, 0xbf, 0x6e, 0xcb, 0xff, 0xff, 0xff, 0xff, 0xff
};
// 'dither_it_tetris_7', 40x60px
const unsigned char tetris7 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5d, 0x57, 0x55, 0x80, 0xe0, 0x38, 0x0e, 0xab, 0xc0,
0xf0, 0x3c, 0x0e, 0xfd, 0x8b, 0x62, 0xd8, 0xb6, 0xcd, 0xc3, 0x70, 0xdc, 0x37, 0x4b, 0xbf, 0x6f,
0xdb, 0xf6, 0xfd, 0xad, 0x6b, 0x5a, 0xd7, 0x55, 0xd2, 0xf4, 0xbd, 0x2e, 0xab, 0xff, 0xff, 0xff,
0xff, 0xff, 0x00, 0x00, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x0a, 0x4e, 0x93, 0x00, 0x00, 0x0d, 0xee,
0xed, 0x00, 0x00, 0x0b, 0xb6, 0xfb, 0x00, 0x00, 0x0b, 0x37, 0x4d, 0x00, 0x00, 0x0d, 0x2e, 0xcd,
0x00, 0x00, 0x0b, 0xf6, 0xfb, 0x00, 0x00, 0x0a, 0xae, 0xab, 0x00, 0x00, 0x0d, 0x57, 0x55, 0x00,
0x00, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0x25, 0x00, 0x00,
0x00, 0x02, 0xdb, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00, 0x03, 0x4b, 0x00, 0x00, 0x00,
0x02, 0xcd, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00, 0x03, 0x55, 0x00, 0x00, 0x00, 0x02,
0xab, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0xb7,
0x00, 0x00, 0x00, 0x03, 0x6d, 0x00, 0x00, 0x00, 0x03, 0xb7, 0x00, 0x00, 0x00, 0x02, 0xdb, 0x00,
0x00, 0x00, 0x03, 0xb7, 0x00, 0x00, 0x00, 0x03, 0x6d, 0x00, 0x00, 0x00, 0x03, 0xb7, 0x00, 0x00,
0x00, 0x03, 0x7d, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00,
0x03, 0xb7, 0x00, 0x00, 0x00, 0x03, 0x6b, 0x00, 0x00, 0x00, 0x03, 0xbd, 0x00, 0x00, 0x00, 0x02,
0xd7, 0x00, 0x00, 0x00, 0x03, 0xbb, 0x00, 0x00, 0x00, 0x03, 0x6d, 0x00, 0x00, 0x00, 0x03, 0xb7,
0x00, 0x00, 0x00, 0x03, 0x6d, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00,
0x00, 0x00, 0x03, 0x55, 0x00, 0x00, 0x00, 0x02, 0x03, 0x00, 0x00, 0x00, 0x03, 0x75, 0x00, 0x00,
0x00, 0x02, 0xb3, 0x00, 0x00, 0x00, 0x02, 0x79, 0x00, 0x00, 0x00, 0x03, 0x25, 0x00, 0x00, 0x00,
0x02, 0x93, 0x00, 0x00, 0x00, 0x03, 0x55, 0x00, 0x00, 0x00, 0x03, 0xff
};
// 'dither_it_tetris_8', 40x60px
const unsigned char tetris8 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5d, 0x57, 0x55, 0x80, 0xe0, 0x38, 0x0e, 0x03, 0xc0,
0xf0, 0x3d, 0xd7, 0x75, 0x8b, 0x62, 0xd9, 0xce, 0xb3, 0xc3, 0x70, 0xdc, 0xee, 0x7b, 0xbf, 0x6f,
0xda, 0x87, 0x21, 0xad, 0x6b, 0x59, 0x2e, 0x97, 0xd2, 0xf4, 0xbd, 0x57, 0x53, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xff, 0xc9, 0x40, 0x00, 0x03, 0x2b, 0xb6, 0xc0, 0x00, 0x02,
0x81, 0xbf, 0x40, 0x00, 0x02, 0x6b, 0xd2, 0xc0, 0x00, 0x03, 0x3b, 0xb3, 0x40, 0x00, 0x02, 0xb1,
0xbf, 0x40, 0x00, 0x03, 0x57, 0xd5, 0x40, 0x00, 0x02, 0x09, 0xaa, 0xc0, 0x00, 0x03, 0xb5, 0xff,
0xc0, 0x00, 0x03, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xff, 0xcc, 0xc0, 0x00, 0x02, 0x93, 0xa5, 0x40,
0x00, 0x03, 0x25, 0xb1, 0xc0, 0x00, 0x02, 0xab, 0xca, 0x40, 0x00, 0x02, 0x71, 0xc4, 0xc0, 0x00,
0x03, 0x3b, 0xaa, 0xc0, 0x00, 0x02, 0xa5, 0xd5, 0x40, 0x00, 0x02, 0x4b, 0xa4, 0xc0, 0x00, 0x03,
0x53, 0x92, 0x40, 0x00, 0x03, 0xff, 0xd9, 0xff, 0xff, 0xff, 0xff, 0xc4, 0xf5, 0x5d, 0x57, 0x25,
0xd5, 0x60, 0x3a, 0xae, 0xdb, 0x95, 0xf7, 0x5b, 0xf6, 0xfd, 0xd0, 0x67, 0x3b, 0x37, 0x4b, 0xa5,
0xf3, 0xbb, 0x2e, 0xcd, 0xda, 0xea, 0x1d, 0xf6, 0xfd, 0xc9, 0x64, 0xbb, 0x57, 0x55, 0xa5, 0x75,
0x5c, 0xae, 0xab, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x40, 0x00, 0x03, 0xff, 0xd4, 0xc0, 0x00,
0x03, 0x25, 0xa5, 0x40, 0x00, 0x02, 0xdb, 0xca, 0xc0, 0x00, 0x02, 0xfd, 0xb0, 0xc0, 0x00, 0x03,
0x4b, 0x8b, 0x40, 0x00, 0x02, 0xcd, 0xe8, 0xc0, 0x00, 0x02, 0xfb, 0xca, 0xc0, 0x00, 0x03, 0x59,
0xa5, 0x40, 0x00, 0x02, 0xa7, 0xb2, 0x40, 0x00, 0x03, 0xff, 0xc9, 0xff, 0xff, 0xff, 0xff, 0x94,
0xff, 0xff, 0xff, 0x25, 0xd2, 0x74, 0xba, 0x96, 0xdb, 0xcb, 0x77, 0x7e, 0xee, 0xfd, 0xa8, 0xfa,
0xdd, 0xbe, 0xcb, 0xd5, 0xed, 0xbe, 0xd7, 0x4d, 0xc4, 0x77, 0x7b, 0x6e, 0xfd, 0xaa, 0xfa, 0xdd,
0xbe, 0xab, 0xd5, 0x77, 0xbf, 0x6f, 0x53, 0xff, 0xff, 0xff, 0xff, 0xff
};
// 'dither_it_tetris_9', 40x60px
const unsigned char tetris9 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xd5, 0x75, 0x5f, 0xff, 0xff, 0x80, 0xe0, 0x3d, 0x2e, 0xa5, 0xc0,
0xf0, 0x3d, 0xdf, 0xbb, 0x8b, 0x62, 0xde, 0xb7, 0x6f, 0xc3, 0x70, 0xdb, 0x6f, 0xb5, 0xbf, 0x6f,
0xdd, 0xde, 0xdb, 0xad, 0x6b, 0x5e, 0xb7, 0x6f, 0xd2, 0xf4, 0xbf, 0xef, 0xdb, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xff, 0xd5, 0x40, 0x00, 0x03, 0xbb, 0x80, 0xc0, 0x00, 0x03,
0x6f, 0xc0, 0x40, 0x00, 0x03, 0xb5, 0x8b, 0xc0, 0x00, 0x02, 0xdb, 0xc3, 0x40, 0x00, 0x03, 0x6f,
0xbf, 0x40, 0x00, 0x03, 0xb5, 0xad, 0x40, 0x00, 0x03, 0x6f, 0xd2, 0xc0, 0x00, 0x03, 0xdb, 0xff,
0xc0, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd4, 0xfe, 0xff, 0xbf, 0x77, 0x82, 0x77,
0xba, 0xef, 0xad, 0xd9, 0x7e, 0xff, 0xfe, 0xdb, 0xae, 0xec, 0xdf, 0x37, 0x6f, 0x9c, 0xfc, 0xfb,
0x3f, 0xb5, 0xca, 0x77, 0xdf, 0xee, 0xdf, 0xa1, 0x7f, 0x7d, 0xbf, 0x6b, 0xdd, 0x75, 0xde, 0xef,
0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xaa, 0x95, 0x53, 0x29, 0x23,
0xca, 0x54, 0x49, 0x54, 0xa9, 0xd1, 0x25, 0xac, 0x45, 0x17, 0x8d, 0x94, 0x13, 0x54, 0xa1, 0xf0,
0x4a, 0xd0, 0xab, 0x6f, 0x87, 0x31, 0x26, 0x20, 0x83, 0xd8, 0x94, 0x95, 0x95, 0x59, 0xaa, 0xd6,
0xf4, 0xb5, 0x4d, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00,
0x03, 0x4b, 0x00, 0x00, 0x00, 0x02, 0xb9, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00, 0x03,
0x4b, 0x00, 0x00, 0x00, 0x02, 0xcd, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00, 0x03, 0x55,
0x00, 0x00, 0x00, 0x02, 0xab, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0x00,
0x00, 0x00, 0x03, 0x25, 0x00, 0x00, 0x00, 0x02, 0xdb, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00,
0x00, 0x03, 0x4b, 0x00, 0x00, 0x00, 0x02, 0xcd, 0x00, 0x00, 0x00, 0x02, 0xfd, 0x00, 0x00, 0x00,
0x03, 0x55, 0x00, 0x00, 0x00, 0x02, 0xab, 0x00, 0x00, 0x00, 0x03, 0xff
};
// 'tetris_bg_dither', 200x200px
const unsigned char tetrisbg [] PROGMEM = {
0xff, 0x8a, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29,
0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x42, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4a, 0x1f, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xc6, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4a, 0xdf,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xca, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x82,
0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xdf, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4a, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
0xdf, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x1b, 0x76, 0xed, 0xdb, 0xb7, 0x6e,
0xdc, 0x3f, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xca, 0x1f, 0x0d, 0xad, 0xb6, 0xb6, 0xda, 0xdb, 0x6a, 0x3f, 0xff, 0xb1, 0xa0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0x70, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xff, 0xdf, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0x86, 0x10,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x5f, 0x63, 0xe0,
0xf8, 0x3e, 0x1f, 0x87, 0xf9, 0x3f, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf, 0x47, 0x01, 0xce, 0x73, 0x9c, 0xe7, 0x01, 0x3f, 0xff,
0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f,
0x67, 0x01, 0xce, 0x73, 0x9c, 0xe7, 0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x23, 0xe1, 0xc0, 0x73, 0x9c, 0xe7, 0xe1,
0x3f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x42, 0x1f, 0x60, 0x79, 0xc0, 0x73, 0x9f, 0x87, 0x01, 0x3f, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x80, 0x44, 0x79, 0xce, 0x73, 0x9d,
0x07, 0x01, 0x00, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xff, 0xdd, 0x63, 0xe0, 0xf8, 0x3e, 0x1c, 0xe7, 0xf9, 0x37, 0xff, 0xbf, 0xf0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd7, 0x23, 0xe0, 0xf8,
0x3e, 0x1c, 0xe7, 0xf9, 0x1a, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x08, 0x55, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x37, 0xff, 0x96,
0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdb, 0x50,
0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x2d, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xcd, 0x1b, 0xbd, 0xdd, 0xdd, 0xdd, 0xdd, 0xda, 0x36,
0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42,
0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x16, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xad, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x46, 0x9b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf6, 0xff, 0xbf, 0xf0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd6, 0xa9, 0x4a, 0x55, 0x55,
0x55, 0x55, 0x55, 0xad, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x28, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x92, 0xb0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0xbf, 0xff,
0xef, 0x77, 0x77, 0x77, 0x7f, 0x7f, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x54, 0xd5, 0x29, 0x5a, 0xda, 0xda, 0xda, 0xd2, 0xd5, 0xff,
0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xc0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xd6, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x83, 0xe0, 0x00, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x1d,
0x84, 0x78, 0x00, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x84, 0x78, 0x00, 0xff, 0x82, 0x10, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x00, 0x00, 0x00,
0x00, 0x11, 0x83, 0xe0, 0x00, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xaa, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x11, 0xe4, 0x78, 0x00, 0xff, 0xbf,
0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xc0, 0x00,
0x00, 0x00, 0x00, 0x1f, 0xe4, 0x78, 0x00, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, 0xe0, 0x00,
0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, 0xe0, 0x00, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x86, 0x10, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0xff, 0xff, 0xff, 0xff,
0xfe, 0xf7, 0x7b, 0xff, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x8a, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x96, 0x50,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x40, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x08, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x96, 0xb0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x90,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46,
0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x28, 0x5f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x92, 0xb0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0x1b, 0x76, 0xed, 0xdb,
0xb7, 0x6e, 0xdc, 0x3f, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x59, 0x5f, 0x0d, 0xad, 0xb6, 0xb6, 0xda, 0xdb, 0x6a, 0x3f, 0xff, 0xbf, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x70, 0x00,
0x00, 0x00, 0x00, 0x00, 0x03, 0x3f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff,
0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x9f,
0x67, 0x01, 0xfe, 0x43, 0x9f, 0xe7, 0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x47, 0x01, 0xc0, 0x43, 0x9c, 0x07, 0x01,
0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0xdf, 0x67, 0x01, 0xc0, 0x43, 0x9c, 0x07, 0x01, 0x3f, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f, 0x27, 0x01, 0xf8, 0x43, 0x9f,
0x87, 0x01, 0x3f, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xaa, 0xdf, 0x67, 0x01, 0xc0, 0x43, 0x9c, 0x07, 0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x47, 0x01, 0xc0,
0x36, 0x1c, 0x07, 0x01, 0x3f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x67, 0xf9, 0xfe, 0x0c, 0x1f, 0xe7, 0xf9, 0x3f, 0xff, 0x92,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0x27,
0xf9, 0xfe, 0x0c, 0x1f, 0xe7, 0xf9, 0x3f, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f,
0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
0xdf, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0x60, 0x00, 0x00, 0x00, 0x0f, 0x80,
0x01, 0x3f, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x8a, 0xdf, 0x20, 0x00, 0x00, 0x00, 0x11, 0xe0, 0x01, 0x3f, 0xff, 0x96, 0x50, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0x60, 0x00, 0x00, 0x00,
0x11, 0xe0, 0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xff, 0xdf, 0x40, 0x00, 0x00, 0x00, 0x11, 0xe0, 0x01, 0x3f, 0xff, 0x90, 0x80,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x60, 0x00,
0x00, 0x00, 0x0f, 0xe0, 0x01, 0x3f, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x9f, 0x20, 0x00, 0x00, 0x00, 0x01, 0xe0, 0x01, 0x3f, 0xff,
0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf,
0x60, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x40, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x01,
0x3f, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x08, 0x5f, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf, 0x30, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xff, 0xdf, 0x17, 0xff, 0xff, 0xff, 0xfb, 0xbd, 0xec, 0x3f, 0xff, 0x90, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb1,
0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28,
0x5f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0x1b, 0x76, 0xed, 0xdb, 0xb7, 0x6e,
0xdc, 0x3f, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x59, 0x5f, 0x0d, 0xad, 0xb6, 0xb6, 0xda, 0xdb, 0x6a, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x70, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x3f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x42, 0x1f, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0x95, 0xa0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x9f, 0x67, 0x00,
0xf8, 0x43, 0x9f, 0xe3, 0xe1, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x47, 0x00, 0x30, 0x73, 0x9c, 0x07, 0x01, 0x3f, 0xff,
0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf,
0x67, 0x00, 0x30, 0x73, 0x9c, 0x07, 0x01, 0x3f, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f, 0x27, 0x00, 0x30, 0x7b, 0x9f, 0x83, 0xe1,
0x3f, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xaa, 0xdf, 0x67, 0x00, 0x30, 0x4f, 0x9c, 0x00, 0x79, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x47, 0x00, 0x30, 0x47, 0x9c,
0x04, 0x79, 0x3f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x42, 0x1f, 0x67, 0xf8, 0xf8, 0x43, 0x9f, 0xe3, 0xe1, 0x3f, 0xff, 0x92, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0x27, 0xf8, 0xf8,
0x43, 0x9f, 0xe3, 0xe1, 0x3f, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0xbf,
0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x40,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0x60, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x01, 0x3f,
0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a,
0xdf, 0x20, 0x00, 0x00, 0x00, 0x1c, 0xe0, 0x01, 0x3f, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0x60, 0x00, 0x00, 0x00, 0x1c, 0xe0,
0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xff, 0xdf, 0x40, 0x00, 0x00, 0x00, 0x1c, 0xe0, 0x01, 0x3f, 0xff, 0x90, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x60, 0x00, 0x00, 0x00,
0x1c, 0xe0, 0x01, 0x3f, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd6, 0x9f, 0x20, 0x00, 0x00, 0x00, 0x1c, 0xe0, 0x01, 0x3f, 0xff, 0xbf, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x60, 0x00,
0x00, 0x00, 0x0f, 0x80, 0x01, 0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0x40, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x01, 0x3f, 0xff,
0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0xdf, 0x17, 0xff, 0xff, 0xff, 0xfb, 0xbd, 0xec, 0x3f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xff, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xca, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb1, 0xa0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x86,
0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59,
0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x42, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x95, 0xa0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x9f, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f, 0xff, 0xc9, 0x24, 0x92, 0x49, 0x24, 0x92, 0x7f, 0xff,
0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf,
0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x17, 0xff, 0xff, 0xff, 0xff, 0xfe,
0x0f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x42, 0x1f, 0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4f, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0xff, 0x2f, 0xff, 0xff, 0xff,
0xff, 0xfe, 0x1f, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x46, 0x9f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf, 0xff, 0xbf, 0xf0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x38, 0x00,
0x00, 0x00, 0x00, 0x01, 0x9f, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0xff, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf, 0xff, 0x92,
0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0xff,
0x18, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4f, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf,
0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
0xdf, 0xff, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00,
0x01, 0xcf, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xd6, 0x9f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4f, 0xff, 0xbf, 0xf0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x38, 0x00, 0x00,
0x00, 0x00, 0x01, 0xcf, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x98, 0x00, 0x00, 0x00, 0x00, 0x01, 0x9f, 0xff, 0x82, 0x10,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f, 0xff, 0x38,
0x00, 0x00, 0x00, 0x00, 0x01, 0xcf, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf, 0xff, 0x3b, 0xff, 0xff, 0xc0, 0x00, 0x01, 0x4f, 0xff,
0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf,
0xff, 0xba, 0x49, 0x92, 0x40, 0x00, 0x01, 0x9f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0xff, 0x3b, 0x25, 0xc9, 0x40, 0x00, 0x01,
0xcf, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xca, 0x1f, 0xff, 0x3a, 0x93, 0xa4, 0xc0, 0x00, 0x01, 0x4f, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0xff, 0x3a, 0x75, 0x9d, 0x40,
0x00, 0x01, 0xcf, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xff, 0xdf, 0xff, 0x9b, 0x31, 0xac, 0x40, 0x00, 0x01, 0x9f, 0xff, 0x86, 0x10, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0xff, 0x3a, 0x4b,
0x85, 0x40, 0x00, 0x01, 0xcf, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0xff, 0x3a, 0xa5, 0xd2, 0xc0, 0x00, 0x01, 0x4f, 0xff, 0x96,
0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0xff,
0xba, 0x13, 0x94, 0x40, 0x00, 0x01, 0x9f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x3b, 0xff, 0xff, 0xc0, 0x00, 0x01, 0xcf,
0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42,
0x1f, 0xff, 0x38, 0x00, 0xff, 0xff, 0xf0, 0x01, 0x4f, 0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x9f, 0xff, 0x38, 0x00, 0x82, 0x64, 0x90,
0x01, 0xcf, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xff, 0xdf, 0xff, 0x98, 0x00, 0xd9, 0x72, 0x50, 0x01, 0x9f, 0xff, 0xbf, 0xf0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x38, 0x00, 0x84,
0xe9, 0x30, 0x01, 0xcf, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x08, 0x5f, 0xff, 0x38, 0x00, 0xad, 0x67, 0x50, 0x01, 0x4f, 0xff, 0x96, 0xb0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdf, 0xff, 0xb8,
0x00, 0xac, 0x6b, 0x10, 0x01, 0x9f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x38, 0x00, 0x92, 0xe1, 0x50, 0x01, 0xcf, 0xff,
0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f,
0xff, 0x38, 0x00, 0xca, 0x74, 0xb0, 0x01, 0x4f, 0xff, 0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0xff, 0x38, 0x00, 0xa1, 0x65, 0x10, 0x01,
0xcf, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x46, 0x9f, 0xff, 0x98, 0x00, 0xff, 0xff, 0xf0, 0x01, 0x9f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x38, 0x00, 0x00, 0x00,
0x00, 0x01, 0xcf, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x28, 0x5f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4f, 0xff, 0x92, 0xb0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf, 0xff, 0xb8, 0x00,
0x00, 0x00, 0x00, 0x01, 0x9f, 0xff, 0x96, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf, 0xff, 0xbf,
0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff,
0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf,
0xff, 0x95, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6,
0x9f, 0xff, 0x98, 0x00, 0x00, 0x00, 0x00, 0x01, 0x9f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00,
0x01, 0xcf, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xff, 0xdf, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4f, 0xff, 0x82, 0x10, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f, 0xff, 0xb8, 0x00, 0x00,
0x00, 0x00, 0x01, 0x9f, 0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xaa, 0xdf, 0xff, 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0xcf, 0xff, 0xbf, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0x17,
0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x1f, 0xff, 0x0d, 0xbb, 0x76, 0xed, 0xdb, 0xb6, 0x1f, 0xff,
0x92, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f,
0xff, 0x86, 0xd6, 0xdb, 0x5b, 0x6d, 0x6c, 0x0f, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x9f, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x3f, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0xdf, 0xff, 0xd5, 0x2a, 0x49, 0x54, 0x95, 0x2a, 0xbf, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x8a, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x96, 0x50, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59, 0x5f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf,
0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x82, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0x96, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa,
0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x42, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x1f, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xb1, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x46, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x86, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0x92, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0xdf,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
};

View File

@ -0,0 +1,106 @@
/*
* Watchy - Analog Example
* Sets the RTC time if not set, goes to sleep and wakes up every minute to update the time on the display
*/
#ifndef ESP32
#error Please select ESP32 Wrover Module under Tools > Board
#endif
#include <DS3232RTC.h>
#include <GxEPD2_BW.h>
#define RTC_PIN GPIO_NUM_33
#define ORIGIN_X 200/2
#define ORIGIN_Y 200/2
#define HOUR_HAND_LENGTH 50
#define HOUR_HAND_WIDTH 11
#define MINUTE_HAND_LENGTH 90
#define MINUTE_HAND_WIDTH 7
DS3232RTC RTC(false);
GxEPD2_BW<GxEPD2_154_D67, GxEPD2_154_D67::HEIGHT> display(GxEPD2_154_D67(/*CS=5*/ SS, /*DC=*/ 17, /*RST=*/ 16, /*BUSY=*/ 4)); // GDEH0154D67
void setup()
{
esp_sleep_wakeup_cause_t wakeup_reason;
wakeup_reason = esp_sleep_get_wakeup_cause();
switch(wakeup_reason)
{
case ESP_SLEEP_WAKEUP_EXT0: updateTime(false); break; //RTC Alarm Interrupt
default: updateTime(true); //Hard Reset
}
esp_sleep_enable_ext0_wakeup(RTC_PIN, 0); //enable deep sleep wake on RTC interrupt
esp_deep_sleep_start();
}
void loop(){}
void updateTime(bool reset)
{
RTC.begin();
if(reset){
RTC.squareWave(SQWAVE_NONE); //disable square wave output
RTC.set(compileTime()); //set RTC time to compile time
RTC.setAlarm(ALM2_EVERY_MINUTE, 0, 0, 0, 0);
RTC.alarmInterrupt(ALARM_2, true); //enable alarm interrupt
}
RTC.alarm(ALARM_2); //resets the alarm flag in the RTC
tmElements_t currentTime;
RTC.read(currentTime);
display.init(0, reset); //_initial_refresh to false to prevent full update on init
display.fillScreen(GxEPD_WHITE);
display.setTextColor(GxEPD_BLACK);
setHands(currentTime);
display.display(true);
display.hibernate();
}
void setHands(tmElements_t time){
//hour
float hour_radians = (((time.Hour % 12)+(time.Minute/60.0))/12.0)*2*M_PI; //radians
int hour_x1 = sinf(hour_radians)*HOUR_HAND_LENGTH;
int hour_y1 = cosf(hour_radians)*HOUR_HAND_LENGTH;
fillRectAngle(ORIGIN_X, ORIGIN_Y, ORIGIN_X+hour_x1, ORIGIN_Y-hour_y1, HOUR_HAND_WIDTH, GxEPD_BLACK);
//minute
float minute_radians = (time.Minute/60.0)*2*M_PI; //radians
int minute_x1 = sinf(minute_radians)*MINUTE_HAND_LENGTH;
int minute_y1 = cosf(minute_radians)*MINUTE_HAND_LENGTH;
fillRectAngle(ORIGIN_X, ORIGIN_Y, ORIGIN_X+minute_x1, ORIGIN_Y-minute_y1, MINUTE_HAND_WIDTH, GxEPD_BLACK);
}
void fillRectAngle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t size, uint16_t color)
{
//x0,y0 to x1,y1 form the center line of the rectangle (width), size is the height
int16_t dif_x = x1 - x0; // numerator of the formula for dy
int16_t dif_y = y1 - y0; // numerator for dx
float sqr = sqrt(dif_x*dif_x + dif_y*dif_y); // denominator of the formulas
int16_t dx = (size / 2.0) * dif_y / sqr; // multiply the fraction with half the width of the rectangle
int16_t dy = (size / 2.0) * dif_x / sqr; // the same for
display.fillTriangle(x0 + dx, y0 - dy, x0 - dx, y0 + dy, x1 + dx, y1 - dy, color);
display.fillTriangle(x0 - dx, y0 + dy, x1 - dx, y1 + dy, x1 + dx, y1 - dy, color);
}
time_t compileTime()
{
const time_t FUDGE(10); //fudge factor to allow for upload time, etc. (seconds, YMMV)
const char *compDate = __DATE__, *compTime = __TIME__, *months = "JanFebMarAprMayJunJulAugSepOctNovDec";
char compMon[3], *m;
strncpy(compMon, compDate, 3);
compMon[3] = '\0';
m = strstr(months, compMon);
tmElements_t tm;
tm.Month = ((m - months) / 3 + 1);
tm.Day = atoi(compDate + 4);
tm.Year = atoi(compDate + 7) - 1970;
tm.Hour = atoi(compTime);
tm.Minute = atoi(compTime + 3);
tm.Second = atoi(compTime + 6);
time_t t = makeTime(tm);
return t + FUDGE; //add fudge factor to allow for compile time
}

View File

@ -0,0 +1,199 @@
// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const uint8_t DSEG7_Classic_Bold_48Bitmaps[] PROGMEM = {
// Bitmap Data:
0x00, // ' '
0x00, // '!'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '"'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '#'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '$'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '%'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '&'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '''
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '('
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ')'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '*'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '+'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ','
0x1F,0xFF,0xF0,0x3F,0xFF,0xF8,0x7F,0xFF,0xFC,0x7F,0xFF,0xFC,0x3F,0xFF,0xF8,0x1F,0xFF,0xF0, // '-'
0x79,0xFB,0xF7,0xEF,0xCF,0x00, // '.'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '/'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '0'
0x00,0x18,0x71,0xE7,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xF9,0xF1,0xE1,0xC1,0x80,0x0E,0x3C,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x3E,0x3C,0x38,0x30,0x00, // '1'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xE6,0x07,0xFF,0xFF,0x38,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0xF8,0x0F,0xFF,0xF9,0xE0,0x7F,0xFF,0xF3,0x83,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0x0F,0xBF,0xFF,0xE0,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0x3D,0xFF,0xFF,0xC0,0xEF,0xFF,0xFF,0x81,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '2'
0x7F,0xFF,0xFF,0x0F,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xE6,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0x9E,0x00,0x00,0x03,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x03,0xE0,0xFF,0xFF,0x9E,0x1F,0xFF,0xFC,0xE3,0xFF,0xFF,0xE6,0x3F,0xFF,0xFE,0x01,0xFF,0xFF,0xCE,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x3E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x3E,0x0F,0xFF,0xF9,0xE1,0xFF,0xFF,0xCE,0x3F,0xFF,0xFE,0x67,0xFF,0xFF,0xF0,0xFF,0xFF,0xFF,0x87,0xFF,0xFF,0xF0, // '3'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x60,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0xE0,0x00,0x00,0x01,0x80,0x00,0x00,0x00, // '4'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x3F,0xFF,0xE7,0x81,0xFF,0xFF,0xCE,0x0F,0xFF,0xFF,0x98,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '5'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '6'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00, // '7'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '8'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x3F,0xFF,0xE7,0x81,0xFF,0xFF,0xCE,0x0F,0xFF,0xFF,0x98,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '9'
0x79,0xF3,0xF7,0xEF,0x86,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x9F,0xBF,0x7E,0x78, // ':'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ';'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '<'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '='
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '>'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '?'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '@'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'A'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'B'
0x03,0xFF,0xFE,0x00,0x7F,0xFF,0xF0,0x0F,0xFF,0xFF,0x8E,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0x5F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x1F,0xFF,0xFF,0xC0, // 'C'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0xFF,0xFF,0x9E,0x07,0xFF,0xFF,0x38,0x3F,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'D'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'E'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xF8,0x00,0x00,0x0F,0x00,0x00,0x00,0xE0,0x00,0x00,0x04,0x00,0x00,0x00, // 'F'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'G'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'H'
0x1C,0x79,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0x7C,0x78,0x70,0x60,0x00, // 'I'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'J'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'K'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0x80,0x00,0x00,0xF0,0x00,0x00,0x0E,0x00,0x00,0x00,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0xF8,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'L'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'M'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0x40,0x00,0x00,0x00, // 'N'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x5F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x00, // 'O'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0x0F,0xBF,0xFF,0xE0,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3C,0x00,0x00,0x00,0xE0,0x00,0x00,0x01,0x00,0x00,0x00,0x00, // 'P'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00, // 'Q'
0x03,0xFF,0xFE,0x00,0xFF,0xFF,0xE0,0x3F,0xFF,0xFE,0x77,0xFF,0xFF,0xCF,0x7F,0xFF,0xF1,0xF7,0xFF,0xFC,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF8,0x00,0x00,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF0,0x00,0x00,0x3C,0x00,0x00,0x07,0x00,0x00,0x00,0x40,0x00,0x00,0x00, // 'R'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x00,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'S'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'T'
0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'U'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0x00,0x00,0x1E,0xF0,0x00,0x00,0x3B,0x80,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'V'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'W'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'X'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x60,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'Y'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xE6,0x07,0xFF,0xFF,0x38,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0xF8,0x00,0x00,0x01,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0x3D,0xFF,0xFF,0xC0,0xEF,0xFF,0xFF,0x81,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'Z'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '['
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '\'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ']'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '^'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '_'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '`'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'a'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'b'
0x03,0xFF,0xFE,0x00,0x7F,0xFF,0xF0,0x0F,0xFF,0xFF,0x8E,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0x5F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x1F,0xFF,0xFF,0xC0, // 'c'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0xFF,0xFF,0x9E,0x07,0xFF,0xFF,0x38,0x3F,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'd'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'e'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xF8,0x00,0x00,0x0F,0x00,0x00,0x00,0xE0,0x00,0x00,0x04,0x00,0x00,0x00, // 'f'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'g'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'h'
0x1C,0x79,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0x7C,0x78,0x70,0x60,0x00, // 'i'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'j'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'k'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0x80,0x00,0x00,0xF0,0x00,0x00,0x0E,0x00,0x00,0x00,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0xF8,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'l'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'm'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0x40,0x00,0x00,0x00, // 'n'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x5F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x00, // 'o'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0x0F,0xBF,0xFF,0xE0,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3C,0x00,0x00,0x00,0xE0,0x00,0x00,0x01,0x00,0x00,0x00,0x00, // 'p'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00, // 'q'
0x03,0xFF,0xFE,0x00,0xFF,0xFF,0xE0,0x3F,0xFF,0xFE,0x77,0xFF,0xFF,0xCF,0x7F,0xFF,0xF1,0xF7,0xFF,0xFC,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF8,0x00,0x00,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF0,0x00,0x00,0x3C,0x00,0x00,0x07,0x00,0x00,0x00,0x40,0x00,0x00,0x00, // 'r'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x00,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 's'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 't'
0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'u'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0x00,0x00,0x1E,0xF0,0x00,0x00,0x3B,0x80,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'v'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'w'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'x'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x60,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'y'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xE6,0x07,0xFF,0xFF,0x38,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0xF8,0x00,0x00,0x01,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0x3D,0xFF,0xFF,0xC0,0xEF,0xFF,0xFF,0x81,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'z'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '{'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '|'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE // '}'
};
const GFXglyph DSEG7_Classic_Bold_48Glyphs[] PROGMEM = {
// bitmapOffset, width, height, xAdvance, xOffset, yOffset
{ 0, 1, 1, 11, 0, 0 }, // ' '
{ 1, 1, 1, 40, 0, 0 }, // '!'
{ 2, 14, 32, 18, 2, -32 }, // '"'
{ 58, 14, 32, 18, 2, -32 }, // '#'
{ 114, 14, 32, 18, 2, -32 }, // '$'
{ 170, 14, 32, 18, 2, -32 }, // '%'
{ 226, 14, 32, 18, 2, -32 }, // '&'
{ 282, 14, 32, 18, 2, -32 }, // '''
{ 338, 14, 32, 18, 2, -32 }, // '('
{ 394, 14, 32, 18, 2, -32 }, // ')'
{ 450, 14, 32, 18, 2, -32 }, // '*'
{ 506, 14, 32, 18, 2, -32 }, // '+'
{ 562, 14, 32, 18, 2, -32 }, // ','
{ 618, 24, 6, 40, 8, -27 }, // '-'
{ 636, 7, 6, 1, -3, -6 }, // '.'
{ 642, 14, 32, 18, 2, -32 }, // '/'
{ 698, 30, 48, 40, 5, -48 }, // '0'
{ 878, 7, 44, 40, 28, -46 }, // '1'
{ 917, 30, 48, 40, 5, -48 }, // '2'
{ 1097, 28, 48, 40, 7, -48 }, // '3'
{ 1265, 30, 44, 40, 5, -46 }, // '4'
{ 1430, 30, 48, 40, 5, -48 }, // '5'
{ 1610, 30, 48, 40, 5, -48 }, // '6'
{ 1790, 30, 46, 40, 5, -48 }, // '7'
{ 1963, 30, 48, 40, 5, -48 }, // '8'
{ 2143, 30, 48, 40, 5, -48 }, // '9'
{ 2323, 7, 25, 11, 2, -36 }, // ':'
{ 2345, 14, 32, 18, 2, -32 }, // ';'
{ 2401, 14, 32, 18, 2, -32 }, // '<'
{ 2457, 14, 32, 18, 2, -32 }, // '='
{ 2513, 14, 32, 18, 2, -32 }, // '>'
{ 2569, 14, 32, 18, 2, -32 }, // '?'
{ 2625, 14, 32, 18, 2, -32 }, // '@'
{ 2681, 30, 46, 40, 5, -48 }, // 'A'
{ 2854, 30, 46, 40, 5, -46 }, // 'B'
{ 3027, 28, 27, 40, 5, -27 }, // 'C'
{ 3122, 30, 46, 40, 5, -46 }, // 'D'
{ 3295, 28, 48, 40, 5, -48 }, // 'E'
{ 3463, 28, 46, 40, 5, -48 }, // 'F'
{ 3624, 30, 48, 40, 5, -48 }, // 'G'
{ 3804, 30, 44, 40, 5, -46 }, // 'H'
{ 3969, 7, 21, 40, 28, -23 }, // 'I'
{ 3988, 30, 46, 40, 5, -46 }, // 'J'
{ 4161, 30, 46, 40, 5, -48 }, // 'K'
{ 4334, 28, 46, 40, 5, -46 }, // 'L'
{ 4495, 30, 46, 40, 5, -48 }, // 'M'
{ 4668, 30, 25, 40, 5, -27 }, // 'N'
{ 4762, 30, 27, 40, 5, -27 }, // 'O'
{ 4864, 30, 46, 40, 5, -48 }, // 'P'
{ 5037, 30, 46, 40, 5, -48 }, // 'Q'
{ 5210, 27, 25, 40, 5, -27 }, // 'R'
{ 5295, 30, 46, 40, 5, -46 }, // 'S'
{ 5468, 28, 46, 40, 5, -46 }, // 'T'
{ 5629, 30, 24, 40, 5, -24 }, // 'U'
{ 5719, 30, 46, 40, 5, -46 }, // 'V'
{ 5892, 30, 46, 40, 5, -46 }, // 'W'
{ 6065, 30, 44, 40, 5, -46 }, // 'X'
{ 6230, 30, 46, 40, 5, -46 }, // 'Y'
{ 6403, 30, 48, 40, 5, -48 }, // 'Z'
{ 6583, 14, 32, 18, 2, -32 }, // '['
{ 6639, 14, 32, 18, 2, -32 }, // '\'
{ 6695, 14, 32, 18, 2, -32 }, // ']'
{ 6751, 14, 32, 18, 2, -32 }, // '^'
{ 6807, 14, 32, 18, 2, -32 }, // '_'
{ 6863, 14, 32, 18, 2, -32 }, // '`'
{ 6919, 30, 46, 40, 5, -48 }, // 'a'
{ 7092, 30, 46, 40, 5, -46 }, // 'b'
{ 7265, 28, 27, 40, 5, -27 }, // 'c'
{ 7360, 30, 46, 40, 5, -46 }, // 'd'
{ 7533, 28, 48, 40, 5, -48 }, // 'e'
{ 7701, 28, 46, 40, 5, -48 }, // 'f'
{ 7862, 30, 48, 40, 5, -48 }, // 'g'
{ 8042, 30, 44, 40, 5, -46 }, // 'h'
{ 8207, 7, 21, 40, 28, -23 }, // 'i'
{ 8226, 30, 46, 40, 5, -46 }, // 'j'
{ 8399, 30, 46, 40, 5, -48 }, // 'k'
{ 8572, 28, 46, 40, 5, -46 }, // 'l'
{ 8733, 30, 46, 40, 5, -48 }, // 'm'
{ 8906, 30, 25, 40, 5, -27 }, // 'n'
{ 9000, 30, 27, 40, 5, -27 }, // 'o'
{ 9102, 30, 46, 40, 5, -48 }, // 'p'
{ 9275, 30, 46, 40, 5, -48 }, // 'q'
{ 9448, 27, 25, 40, 5, -27 }, // 'r'
{ 9533, 30, 46, 40, 5, -46 }, // 's'
{ 9706, 28, 46, 40, 5, -46 }, // 't'
{ 9867, 30, 24, 40, 5, -24 }, // 'u'
{ 9957, 30, 46, 40, 5, -46 }, // 'v'
{ 10130, 30, 46, 40, 5, -46 }, // 'w'
{ 10303, 30, 44, 40, 5, -46 }, // 'x'
{ 10468, 30, 46, 40, 5, -46 }, // 'y'
{ 10641, 30, 48, 40, 5, -48 }, // 'z'
{ 10821, 14, 32, 18, 2, -32 }, // '{'
{ 10877, 14, 32, 18, 2, -32 }, // '|'
{ 10933, 14, 32, 18, 2, -32 } // '}'
};
const GFXfont DSEG7_Classic_Bold_48 PROGMEM = {
(uint8_t *)DSEG7_Classic_Bold_48Bitmaps,(GFXglyph *)DSEG7_Classic_Bold_48Glyphs,0x20, 0x7E, 53};

View File

@ -0,0 +1,87 @@
/*
* Watchy - Basic Example
* Sets the RTC time if not set, goes to sleep and wakes up every minute to update the time on the display
*/
#ifndef ESP32
#error Please select ESP32 Wrover Module under Tools > Board
#endif
#include <DS3232RTC.h>
#include <GxEPD2_BW.h>
#include "DSEG7_Classic_Bold_48.h"
#define RTC_PIN GPIO_NUM_33
DS3232RTC RTC(false);
GxEPD2_BW<GxEPD2_154_D67, GxEPD2_154_D67::HEIGHT> display(GxEPD2_154_D67(/*CS=5*/ SS, /*DC=*/ 17, /*RST=*/ 16, /*BUSY=*/ 4)); // GDEH0154D67
void setup()
{
esp_sleep_wakeup_cause_t wakeup_reason;
wakeup_reason = esp_sleep_get_wakeup_cause();
switch(wakeup_reason)
{
case ESP_SLEEP_WAKEUP_EXT0: updateTime(false); break; //RTC Alarm Interrupt
default: updateTime(true); //Hard Reset
}
esp_sleep_enable_ext0_wakeup(RTC_PIN, 0); //enable deep sleep wake on RTC interrupt
esp_deep_sleep_start();
}
void loop(){}
void updateTime(bool reset)
{
RTC.begin();
if(reset){
RTC.squareWave(SQWAVE_NONE); //disable square wave output
RTC.set(compileTime()); //set RTC time to compile time
RTC.setAlarm(ALM2_EVERY_MINUTE, 0, 0, 0, 0);
RTC.alarmInterrupt(ALARM_2, true); //enable alarm interrupt
}
RTC.alarm(ALARM_2); //resets the alarm flag in the RTC
tmElements_t currentTime;
RTC.read(currentTime);
display.init(0, reset); //_initial_refresh to false to prevent full update on init
display.setFullWindow();
display.fillScreen(GxEPD_BLACK);
display.setTextColor(GxEPD_WHITE);
display.setFont(&DSEG7_Classic_Bold_48);
display.setCursor(15, 120);
if(currentTime.Hour < 10){
display.print('0');
}
display.print(currentTime.Hour);
display.print(':');
if(currentTime.Minute < 10){
display.print('0');
}
display.print(currentTime.Minute);
display.display(true); //partial refresh
display.hibernate();
}
time_t compileTime()
{
const time_t FUDGE(10); //fudge factor to allow for upload time, etc. (seconds, YMMV)
const char *compDate = __DATE__, *compTime = __TIME__, *months = "JanFebMarAprMayJunJulAugSepOctNovDec";
char compMon[3], *m;
strncpy(compMon, compDate, 3);
compMon[3] = '\0';
m = strstr(months, compMon);
tmElements_t tm;
tm.Month = ((m - months) / 3 + 1);
tm.Day = atoi(compDate + 4);
tm.Year = atoi(compDate + 7) - 1970;
tm.Hour = atoi(compTime);
tm.Minute = atoi(compTime + 3);
tm.Second = atoi(compTime + 6);
time_t t = makeTime(tm);
return t + FUDGE; //add fudge factor to allow for compile time
}

View File

@ -0,0 +1,199 @@
// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const uint8_t DSEG14_Classic_Bold_18Bitmaps[] PROGMEM = {
// Bitmap Data:
0x00, // ' '
0x00, // '!'
0x81,0x83,0x36,0x6C,0xD9,0xB1,0x40, // '"'
0xFA,0x28,0xA2,0x8A,0x28,0xA2,0x8A,0x28,0xBE, // '#'
0x7F,0xCB,0xF8,0xC0,0x0C,0xC0,0xCC,0x0C,0xC0,0xCC,0x0C,0x40,0xBB,0x83,0xBA,0x04,0x60,0xC6,0x0C,0x60,0xC6,0x0C,0x60,0x06,0x3F,0xA7,0xFC, // '$'
0x80,0x0C,0x00,0xE1,0x0F,0x10,0xF1,0x0D,0x10,0xD1,0x0B,0xB8,0x3B,0xA1,0x16,0x11,0x63,0x16,0x31,0x62,0x16,0x00,0x60,0x02, // '%'
0xFF,0x8F,0xE0,0x00,0x21,0x06,0x20,0xC4,0x08,0x81,0x10,0x00,0x00,0x08,0x8B,0x11,0x66,0x2C,0xC5,0x90,0xB0,0x06,0x7F,0x5F,0xF0, // '&'
0xDB,0x64,0x00, // '''
0xAA,0x82,0xAA, // '('
0x9B,0x24,0x02,0x5B,0x40, // ')'
0x5A,0x1E,0x87,0xA0,0xE8,0x2A,0x1D,0xC7,0x70,0xA8,0x3A,0x1E,0x87,0xA1,0x68, // '*'
0x18,0x06,0x01,0x80,0x60,0x08,0x1D,0xC7,0x70,0x20,0x18,0x06,0x01,0x80,0x60, // '+'
0x4B,0x68, // ','
0x77,0x1D,0xC0, // '-'
0xD8, // '.'
0x04,0x08,0x10,0x20,0x40,0x00,0x20,0x41,0x83,0x04,0x00, // '/'
0x7F,0xCB,0xFA,0xC0,0x6C,0x16,0xC1,0x6C,0x16,0xC1,0x6C,0x16,0x80,0x28,0x02,0xD0,0x6D,0x06,0xF0,0x6F,0x06,0xE0,0x6C,0x06,0xBF,0xA7,0xFC, // '0'
0x5B,0x6D,0xB2,0x5B,0x6D,0xB2, // '1'
0x7F,0xC3,0xFA,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x3B,0xAB,0xB8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xBF,0x87,0xFC, // '2'
0xFF,0x8F,0xE8,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x77,0x4E,0xE8,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x7F,0x5F,0xF0, // '3'
0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xBA,0x3B,0xA0,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x02, // '4'
0x7F,0xCB,0xF8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xBB,0x83,0xBA,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x3F,0xA7,0xFC, // '5'
0x7F,0xCB,0xF8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xBB,0x8B,0xBA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBF,0xA7,0xFC, // '6'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x20,0x02,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x20, // '7'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xBA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBF,0xA7,0xFC, // '8'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xA3,0xBA,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x3F,0xA7,0xFC, // '9'
0x9A,0x00,0x00,0xD8, // ':'
0xFA,0x28,0xA2,0x8A,0x28,0xA2,0x8A,0x28,0xBE, // ';'
0x02,0x00,0x80,0x20,0x08,0x02,0x00,0x00,0x00,0x80,0x20,0x18,0x06,0x01,0x00,0x00,0x1F,0xCF,0xF8, // '<'
0x77,0x1D,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x3F,0xE0, // '='
0x40,0x18,0x06,0x00,0x80,0x20,0x00,0x00,0x00,0x08,0x02,0x00,0x80,0x20,0x08,0x00,0x1F,0xCF,0xF8, // '>'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x83,0xA0,0x38,0x04,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00, // '?'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x83,0xA8,0x3A,0xC4,0x6C,0xC6,0xCC,0x6C,0xC6,0xCC,0x6C,0x06,0xBF,0xA7,0xFC, // '@'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xBA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x20, // 'A'
0xFF,0x8F,0xE8,0x03,0x0C,0x61,0x8C,0x31,0x86,0x30,0x46,0x07,0x40,0xE8,0x23,0x0C,0x61,0x8C,0x31,0x86,0x30,0x06,0x7F,0x5F,0xF0, // 'B'
0x7F,0xD7,0xF3,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0x80,0x10,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBF,0x8F,0xF8, // 'C'
0xFF,0x8F,0xE8,0x03,0x0C,0x61,0x8C,0x31,0x86,0x30,0x46,0x00,0x40,0x08,0x23,0x0C,0x61,0x8C,0x31,0x86,0x30,0x06,0x7F,0x5F,0xF0, // 'D'
0x7F,0xD7,0xF3,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBB,0x97,0x73,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBF,0x8F,0xF8, // 'E'
0x7F,0xD7,0xF3,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBB,0x97,0x73,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0x80,0x00, // 'F'
0x7F,0xCB,0xF8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0x83,0x88,0x3A,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBF,0xA7,0xFC, // 'G'
0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xBA,0xBB,0xAC,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x68,0x02, // 'H'
0xFF,0x9F,0xC0,0x00,0x60,0x18,0x06,0x01,0x80,0x20,0x00,0x00,0x00,0x80,0x60,0x18,0x06,0x01,0x80,0x00,0x7F,0x3F,0xE0, // 'I'
0x00,0x20,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x02,0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xFA,0x7F,0xC0, // 'J'
0x80,0x60,0x30,0x58,0x2C,0x16,0x0B,0x05,0x70,0xB8,0x60,0xB0,0x58,0x2C,0x16,0x0B,0x01,0x00, // 'K'
0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x04,0x00,0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x05,0xFC,0x7F,0xC0, // 'L'
0x80,0x2C,0x06,0xE1,0x6F,0x16,0xF1,0x6D,0x16,0xD1,0x68,0x02,0x80,0x2C,0x46,0xCC,0x6C,0xC6,0xCC,0x6C,0xC6,0xC0,0x68,0x02, // 'M'
0x80,0x2C,0x06,0xE0,0x6F,0x06,0xF0,0x6D,0x06,0xD0,0x68,0x02,0x80,0x2C,0x16,0xC1,0x6C,0x16,0xC1,0x6C,0x16,0xC0,0x68,0x02, // 'N'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x28,0x02,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBF,0xA7,0xFC, // 'O'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xB8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0x80,0x00, // 'P'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x28,0x02,0xC1,0x6C,0x16,0xC1,0x6C,0x16,0xC1,0x6C,0x06,0xBF,0xA7,0xFC, // 'Q'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xB8,0xC1,0x0C,0x10,0xC1,0x0C,0x10,0xC1,0x0C,0x00,0x80,0x00, // 'R'
0x7F,0xCB,0xF8,0xC0,0x0E,0x00,0xF0,0x0F,0x00,0xD0,0x0D,0x00,0xBB,0x83,0xBA,0x01,0x60,0x16,0x01,0x60,0x16,0x01,0x60,0x06,0x3F,0xA7,0xFC, // 'S'
0xFF,0x9F,0xC0,0x00,0x60,0x18,0x06,0x01,0x80,0x20,0x00,0x00,0x00,0x80,0x60,0x18,0x06,0x01,0x80, // 'T'
0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x68,0x02,0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xFA,0x7F,0xC0, // 'U'
0x80,0x60,0x30,0x58,0x2C,0x16,0x0B,0x05,0x00,0x80,0x68,0x34,0x1E,0x0F,0x07,0x03,0x01,0x00, // 'V'
0x80,0x2C,0x06,0xCC,0x6C,0xC6,0xCC,0x6C,0xC6,0xC4,0x68,0x02,0x80,0x2D,0x16,0xD1,0x6F,0x16,0xF1,0x6E,0x16,0xC0,0x68,0x02, // 'W'
0x85,0x8B,0x12,0x24,0x40,0x00,0x22,0x45,0x8B,0x14,0x20, // 'X'
0x85,0x8B,0x12,0x24,0x40,0x00,0x08,0x30,0x60,0xC1,0x80, // 'Y'
0xFF,0x9F,0xC0,0x00,0x08,0x02,0x00,0x80,0x20,0x08,0x00,0x00,0x02,0x00,0x80,0x60,0x18,0x04,0x00,0x00,0x7F,0x3F,0xE0, // 'Z'
0xFA,0x28,0xA2,0x8A,0x28,0xA2,0x8A,0x28,0xBE, // '['
0x81,0x83,0x02,0x04,0x00,0x00,0x02,0x04,0x08,0x10,0x20, // '\'
0xFA,0x28,0xA2,0x8A,0x28,0xA2,0x8A,0x28,0xBE, // ']'
0x86,0x39,0xEF,0x6B,0x50, // '^'
0x7F,0x3F,0xE0, // '_'
0x9B,0x24, // '`'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xBA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x20, // 'a'
0xFF,0x8F,0xE8,0x03,0x0C,0x61,0x8C,0x31,0x86,0x30,0x46,0x07,0x40,0xE8,0x23,0x0C,0x61,0x8C,0x31,0x86,0x30,0x06,0x7F,0x5F,0xF0, // 'b'
0x7F,0xD7,0xF3,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0x80,0x10,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBF,0x8F,0xF8, // 'c'
0xFF,0x8F,0xE8,0x03,0x0C,0x61,0x8C,0x31,0x86,0x30,0x46,0x00,0x40,0x08,0x23,0x0C,0x61,0x8C,0x31,0x86,0x30,0x06,0x7F,0x5F,0xF0, // 'd'
0x7F,0xD7,0xF3,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBB,0x97,0x73,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBF,0x8F,0xF8, // 'e'
0x7F,0xD7,0xF3,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0xBB,0x97,0x73,0x00,0x60,0x0C,0x01,0x80,0x30,0x06,0x00,0x80,0x00, // 'f'
0x7F,0xCB,0xF8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0x83,0x88,0x3A,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBF,0xA7,0xFC, // 'g'
0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xBA,0xBB,0xAC,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x68,0x02, // 'h'
0xFF,0x9F,0xC0,0x00,0x60,0x18,0x06,0x01,0x80,0x20,0x00,0x00,0x00,0x80,0x60,0x18,0x06,0x01,0x80,0x00,0x7F,0x3F,0xE0, // 'i'
0x00,0x20,0x06,0x00,0x60,0x06,0x00,0x60,0x06,0x00,0x60,0x02,0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xFA,0x7F,0xC0, // 'j'
0x80,0x60,0x30,0x58,0x2C,0x16,0x0B,0x05,0x70,0xB8,0x60,0xB0,0x58,0x2C,0x16,0x0B,0x01,0x00, // 'k'
0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x04,0x00,0x80,0x18,0x03,0x00,0x60,0x0C,0x01,0x80,0x30,0x05,0xFC,0x7F,0xC0, // 'l'
0x80,0x2C,0x06,0xE1,0x6F,0x16,0xF1,0x6D,0x16,0xD1,0x68,0x02,0x80,0x2C,0x46,0xCC,0x6C,0xC6,0xCC,0x6C,0xC6,0xC0,0x68,0x02, // 'm'
0x80,0x2C,0x06,0xE0,0x6F,0x06,0xF0,0x6D,0x06,0xD0,0x68,0x02,0x80,0x2C,0x16,0xC1,0x6C,0x16,0xC1,0x6C,0x16,0xC0,0x68,0x02, // 'n'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x28,0x02,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBF,0xA7,0xFC, // 'o'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xB8,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0xC0,0x0C,0x00,0x80,0x00, // 'p'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0x80,0x28,0x02,0xC1,0x6C,0x16,0xC1,0x6C,0x16,0xC1,0x6C,0x06,0xBF,0xA7,0xFC, // 'q'
0x7F,0xCB,0xFA,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xBB,0xAB,0xB8,0xC1,0x0C,0x10,0xC1,0x0C,0x10,0xC1,0x0C,0x00,0x80,0x00, // 'r'
0x7F,0xCB,0xF8,0xC0,0x0E,0x00,0xF0,0x0F,0x00,0xD0,0x0D,0x00,0xBB,0x83,0xBA,0x01,0x60,0x16,0x01,0x60,0x16,0x01,0x60,0x06,0x3F,0xA7,0xFC, // 's'
0xFF,0x9F,0xC0,0x00,0x60,0x18,0x06,0x01,0x80,0x20,0x00,0x00,0x00,0x80,0x60,0x18,0x06,0x01,0x80, // 't'
0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x68,0x02,0x80,0x2C,0x06,0xC0,0x6C,0x06,0xC0,0x6C,0x06,0xC0,0x6B,0xFA,0x7F,0xC0, // 'u'
0x80,0x60,0x30,0x58,0x2C,0x16,0x0B,0x05,0x00,0x80,0x68,0x34,0x1E,0x0F,0x07,0x03,0x01,0x00, // 'v'
0x80,0x2C,0x06,0xCC,0x6C,0xC6,0xCC,0x6C,0xC6,0xC4,0x68,0x02,0x80,0x2D,0x16,0xD1,0x6F,0x16,0xF1,0x6E,0x16,0xC0,0x68,0x02, // 'w'
0x85,0x8B,0x12,0x24,0x40,0x00,0x22,0x45,0x8B,0x14,0x20, // 'x'
0x85,0x8B,0x12,0x24,0x40,0x00,0x08,0x30,0x60,0xC1,0x80, // 'y'
0xFF,0x9F,0xC0,0x00,0x08,0x02,0x00,0x80,0x20,0x08,0x00,0x00,0x02,0x00,0x80,0x60,0x18,0x04,0x00,0x00,0x7F,0x3F,0xE0, // 'z'
0xFA,0x28,0xA2,0x8A,0x28,0xA2,0x8A,0x28,0xBE, // '{'
0xDB,0x64,0x02,0xDB,0x60, // '|'
0xFA,0x28,0xA2,0x8A,0x28,0xA2,0x8A,0x28,0xBE // '}'
};
const GFXglyph DSEG14_Classic_Bold_18Glyphs[] PROGMEM = {
// bitmapOffset, width, height, xAdvance, xOffset, yOffset
{ 0, 1, 1, 5, 0, 0 }, // ' '
{ 1, 1, 1, 16, 0, 0 }, // '!'
{ 2, 7, 8, 16, 2, -17 }, // '"'
{ 9, 6, 12, 8, 1, -12 }, // '#'
{ 18, 12, 18, 16, 2, -18 }, // '$'
{ 45, 12, 16, 16, 2, -17 }, // '%'
{ 69, 11, 18, 16, 3, -18 }, // '&'
{ 94, 3, 6, 16, 6, -15 }, // '''
{ 97, 2, 12, 16, 9, -15 }, // '('
{ 100, 3, 12, 16, 4, -15 }, // ')'
{ 105, 10, 12, 16, 3, -15 }, // '*'
{ 120, 10, 12, 16, 3, -15 }, // '+'
{ 135, 3, 5, 16, 4, -8 }, // ','
{ 137, 10, 2, 16, 3, -10 }, // '-'
{ 140, 3, 2, 1, -1, -2 }, // '.'
{ 141, 7, 12, 16, 4, -15 }, // '/'
{ 152, 12, 18, 16, 2, -18 }, // '0'
{ 179, 3, 16, 16, 11, -17 }, // '1'
{ 185, 12, 18, 16, 2, -18 }, // '2'
{ 212, 11, 18, 16, 3, -18 }, // '3'
{ 237, 12, 16, 16, 2, -17 }, // '4'
{ 261, 12, 18, 16, 2, -18 }, // '5'
{ 288, 12, 18, 16, 2, -18 }, // '6'
{ 315, 12, 17, 16, 2, -18 }, // '7'
{ 341, 12, 18, 16, 2, -18 }, // '8'
{ 368, 12, 18, 16, 2, -18 }, // '9'
{ 395, 3, 10, 5, 1, -14 }, // ':'
{ 399, 6, 12, 8, 1, -12 }, // ';'
{ 408, 10, 15, 16, 3, -15 }, // '<'
{ 427, 10, 10, 16, 3, -10 }, // '='
{ 440, 10, 15, 16, 3, -15 }, // '>'
{ 459, 12, 15, 16, 2, -18 }, // '?'
{ 482, 12, 18, 16, 2, -18 }, // '@'
{ 509, 12, 17, 16, 2, -18 }, // 'A'
{ 535, 11, 18, 16, 3, -18 }, // 'B'
{ 560, 11, 18, 16, 2, -18 }, // 'C'
{ 585, 11, 18, 16, 3, -18 }, // 'D'
{ 610, 11, 18, 16, 2, -18 }, // 'E'
{ 635, 11, 17, 16, 2, -18 }, // 'F'
{ 659, 12, 18, 16, 2, -18 }, // 'G'
{ 686, 12, 16, 16, 2, -17 }, // 'H'
{ 710, 10, 18, 16, 3, -18 }, // 'I'
{ 733, 12, 17, 16, 2, -17 }, // 'J'
{ 759, 9, 16, 16, 2, -17 }, // 'K'
{ 777, 11, 17, 16, 2, -17 }, // 'L'
{ 801, 12, 16, 16, 2, -17 }, // 'M'
{ 825, 12, 16, 16, 2, -17 }, // 'N'
{ 849, 12, 18, 16, 2, -18 }, // 'O'
{ 876, 12, 17, 16, 2, -18 }, // 'P'
{ 902, 12, 18, 16, 2, -18 }, // 'Q'
{ 929, 12, 17, 16, 2, -18 }, // 'R'
{ 955, 12, 18, 16, 2, -18 }, // 'S'
{ 982, 10, 15, 16, 3, -18 }, // 'T'
{ 1001, 12, 17, 16, 2, -17 }, // 'U'
{ 1027, 9, 16, 16, 2, -17 }, // 'V'
{ 1045, 12, 16, 16, 2, -17 }, // 'W'
{ 1069, 7, 12, 16, 4, -15 }, // 'X'
{ 1080, 7, 12, 16, 4, -15 }, // 'Y'
{ 1091, 10, 18, 16, 3, -18 }, // 'Z'
{ 1114, 6, 12, 8, 1, -12 }, // '['
{ 1123, 7, 12, 16, 4, -15 }, // '\'
{ 1134, 6, 12, 8, 1, -12 }, // ']'
{ 1143, 5, 8, 16, 2, -17 }, // '^'
{ 1148, 10, 2, 16, 3, -2 }, // '_'
{ 1151, 3, 5, 16, 4, -15 }, // '`'
{ 1153, 12, 17, 16, 2, -18 }, // 'a'
{ 1179, 11, 18, 16, 3, -18 }, // 'b'
{ 1204, 11, 18, 16, 2, -18 }, // 'c'
{ 1229, 11, 18, 16, 3, -18 }, // 'd'
{ 1254, 11, 18, 16, 2, -18 }, // 'e'
{ 1279, 11, 17, 16, 2, -18 }, // 'f'
{ 1303, 12, 18, 16, 2, -18 }, // 'g'
{ 1330, 12, 16, 16, 2, -17 }, // 'h'
{ 1354, 10, 18, 16, 3, -18 }, // 'i'
{ 1377, 12, 17, 16, 2, -17 }, // 'j'
{ 1403, 9, 16, 16, 2, -17 }, // 'k'
{ 1421, 11, 17, 16, 2, -17 }, // 'l'
{ 1445, 12, 16, 16, 2, -17 }, // 'm'
{ 1469, 12, 16, 16, 2, -17 }, // 'n'
{ 1493, 12, 18, 16, 2, -18 }, // 'o'
{ 1520, 12, 17, 16, 2, -18 }, // 'p'
{ 1546, 12, 18, 16, 2, -18 }, // 'q'
{ 1573, 12, 17, 16, 2, -18 }, // 'r'
{ 1599, 12, 18, 16, 2, -18 }, // 's'
{ 1626, 10, 15, 16, 3, -18 }, // 't'
{ 1645, 12, 17, 16, 2, -17 }, // 'u'
{ 1671, 9, 16, 16, 2, -17 }, // 'v'
{ 1689, 12, 16, 16, 2, -17 }, // 'w'
{ 1713, 7, 12, 16, 4, -15 }, // 'x'
{ 1724, 7, 12, 16, 4, -15 }, // 'y'
{ 1735, 10, 18, 16, 3, -18 }, // 'z'
{ 1758, 6, 12, 8, 1, -12 }, // '{'
{ 1767, 3, 12, 16, 6, -15 }, // '|'
{ 1772, 6, 12, 8, 1, -12 } // '}'
};
const GFXfont DSEG14_Classic_Bold_18 PROGMEM = {
(uint8_t *)DSEG14_Classic_Bold_18Bitmaps,(GFXglyph *)DSEG14_Classic_Bold_18Glyphs,0x20, 0x7E, 20};

View File

@ -0,0 +1,199 @@
// Created by http://oleddisplay.squix.ch/ Consider a donation
// In case of problems make sure that you are using the font file with the correct version!
const uint8_t DSEG7_Classic_Bold_48Bitmaps[] PROGMEM = {
// Bitmap Data:
0x00, // ' '
0x00, // '!'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '"'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '#'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '$'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '%'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '&'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '''
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '('
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ')'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '*'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '+'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ','
0x1F,0xFF,0xF0,0x3F,0xFF,0xF8,0x7F,0xFF,0xFC,0x7F,0xFF,0xFC,0x3F,0xFF,0xF8,0x1F,0xFF,0xF0, // '-'
0x79,0xFB,0xF7,0xEF,0xCF,0x00, // '.'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '/'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '0'
0x00,0x18,0x71,0xE7,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xF9,0xF1,0xE1,0xC1,0x80,0x0E,0x3C,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x3E,0x3C,0x38,0x30,0x00, // '1'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xE6,0x07,0xFF,0xFF,0x38,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0xF8,0x0F,0xFF,0xF9,0xE0,0x7F,0xFF,0xF3,0x83,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0x0F,0xBF,0xFF,0xE0,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0x3D,0xFF,0xFF,0xC0,0xEF,0xFF,0xFF,0x81,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '2'
0x7F,0xFF,0xFF,0x0F,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xE6,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0x9E,0x00,0x00,0x03,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x03,0xE0,0xFF,0xFF,0x9E,0x1F,0xFF,0xFC,0xE3,0xFF,0xFF,0xE6,0x3F,0xFF,0xFE,0x01,0xFF,0xFF,0xCE,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x3E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x7E,0x00,0x00,0x07,0xE0,0x00,0x00,0x3E,0x0F,0xFF,0xF9,0xE1,0xFF,0xFF,0xCE,0x3F,0xFF,0xFE,0x67,0xFF,0xFF,0xF0,0xFF,0xFF,0xFF,0x87,0xFF,0xFF,0xF0, // '3'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x60,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0xE0,0x00,0x00,0x01,0x80,0x00,0x00,0x00, // '4'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x3F,0xFF,0xE7,0x81,0xFF,0xFF,0xCE,0x0F,0xFF,0xFF,0x98,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '5'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '6'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00, // '7'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '8'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x3F,0xFF,0xE7,0x81,0xFF,0xFF,0xCE,0x0F,0xFF,0xFF,0x98,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // '9'
0x79,0xF3,0xF7,0xEF,0x86,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x9F,0xBF,0x7E,0x78, // ':'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ';'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '<'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '='
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '>'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '?'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '@'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'A'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'B'
0x03,0xFF,0xFE,0x00,0x7F,0xFF,0xF0,0x0F,0xFF,0xFF,0x8E,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0x5F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x1F,0xFF,0xFF,0xC0, // 'C'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0xFF,0xFF,0x9E,0x07,0xFF,0xFF,0x38,0x3F,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'D'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'E'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xF8,0x00,0x00,0x0F,0x00,0x00,0x00,0xE0,0x00,0x00,0x04,0x00,0x00,0x00, // 'F'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'G'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'H'
0x1C,0x79,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0x7C,0x78,0x70,0x60,0x00, // 'I'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'J'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'K'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0x80,0x00,0x00,0xF0,0x00,0x00,0x0E,0x00,0x00,0x00,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0xF8,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'L'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'M'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0x40,0x00,0x00,0x00, // 'N'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x5F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x00, // 'O'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0x0F,0xBF,0xFF,0xE0,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3C,0x00,0x00,0x00,0xE0,0x00,0x00,0x01,0x00,0x00,0x00,0x00, // 'P'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00, // 'Q'
0x03,0xFF,0xFE,0x00,0xFF,0xFF,0xE0,0x3F,0xFF,0xFE,0x77,0xFF,0xFF,0xCF,0x7F,0xFF,0xF1,0xF7,0xFF,0xFC,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF8,0x00,0x00,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF0,0x00,0x00,0x3C,0x00,0x00,0x07,0x00,0x00,0x00,0x40,0x00,0x00,0x00, // 'R'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x00,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'S'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'T'
0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'U'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0x00,0x00,0x1E,0xF0,0x00,0x00,0x3B,0x80,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'V'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'W'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'X'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x60,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'Y'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xE6,0x07,0xFF,0xFF,0x38,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0xF8,0x00,0x00,0x01,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0x3D,0xFF,0xFF,0xC0,0xEF,0xFF,0xFF,0x81,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'Z'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '['
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '\'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // ']'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '^'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '_'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '`'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'a'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'b'
0x03,0xFF,0xFE,0x00,0x7F,0xFF,0xF0,0x0F,0xFF,0xFF,0x8E,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0x5F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x1F,0xFF,0xFF,0xC0, // 'c'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0xFF,0xFF,0x9E,0x07,0xFF,0xFF,0x38,0x3F,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'd'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'e'
0x1F,0xFF,0xFF,0xC3,0xFF,0xFF,0xFE,0x5F,0xFF,0xFF,0xCE,0xFF,0xFF,0xF8,0xF7,0xFF,0xFF,0x0F,0xBF,0xFF,0xE0,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xF8,0x00,0x00,0x0F,0x00,0x00,0x00,0xE0,0x00,0x00,0x04,0x00,0x00,0x00, // 'f'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'g'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x0E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'h'
0x1C,0x79,0xF7,0xEF,0xDF,0xBF,0x7E,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7E,0x7C,0x78,0x70,0x60,0x00, // 'i'
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x03,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x1E,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'j'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x03,0xEF,0xFF,0xF8,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xEF,0xFF,0xF8,0x0F,0x7F,0xFF,0xF0,0x3B,0xFF,0xFF,0xE0,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0xEF,0xBF,0xFF,0xE7,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'k'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0x80,0x00,0x00,0xF0,0x00,0x00,0x0E,0x00,0x00,0x00,0xE0,0x00,0x00,0x0F,0x00,0x00,0x00,0xF8,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 'l'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0x80,0x00,0x07,0xBC,0x00,0x00,0x0E,0xE0,0x00,0x00,0x19,0x00,0x00,0x00,0x00, // 'm'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xE0,0x00,0x01,0xEF,0x00,0x00,0x03,0xB8,0x00,0x00,0x06,0x40,0x00,0x00,0x00, // 'n'
0x03,0xFF,0xFE,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xFF,0xF8,0x3B,0xFF,0xFF,0xE0,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x5F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x00, // 'o'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0xEF,0xFF,0xFF,0x83,0xDF,0xFF,0xFC,0x0F,0xBF,0xFF,0xE0,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3C,0x00,0x00,0x00,0xE0,0x00,0x00,0x01,0x00,0x00,0x00,0x00, // 'p'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3B,0xFF,0xFF,0xE6,0xF7,0xFF,0xFF,0x3B,0xEF,0xFF,0xF9,0xEF,0xC0,0x00,0x0F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x00,0xFB,0xEF,0xFF,0xF9,0xEF,0x7F,0xFF,0xF3,0xBB,0xFF,0xFF,0xE6,0x0F,0xFF,0xFF,0x80,0x1F,0xFF,0xFC,0xE0,0x3F,0xFF,0xE7,0x80,0x00,0x00,0x3E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x07,0x80,0x00,0x00,0x0E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00, // 'q'
0x03,0xFF,0xFE,0x00,0xFF,0xFF,0xE0,0x3F,0xFF,0xFE,0x77,0xFF,0xFF,0xCF,0x7F,0xFF,0xF1,0xF7,0xFF,0xFC,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF8,0x00,0x00,0x3F,0x00,0x00,0x07,0xE0,0x00,0x00,0xFC,0x00,0x00,0x1F,0x80,0x00,0x03,0xF0,0x00,0x00,0x7E,0x00,0x00,0x0F,0xC0,0x00,0x01,0xF0,0x00,0x00,0x3C,0x00,0x00,0x07,0x00,0x00,0x00,0x40,0x00,0x00,0x00, // 'r'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x0F,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3E,0xFF,0xFF,0x80,0xF7,0xFF,0xFF,0x03,0xBF,0xFF,0xFE,0x00,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 's'
0x40,0x00,0x00,0x0E,0x00,0x00,0x00,0xF0,0x00,0x00,0x0F,0x80,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0xF7,0xFF,0xFF,0x0E,0xFF,0xFF,0xF8,0xEF,0xFF,0xFF,0x8F,0x7F,0xFF,0xF0,0xFB,0xFF,0xFE,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFC,0x00,0x00,0x0F,0xC0,0x00,0x00,0xFB,0xFF,0xFE,0x0F,0x7F,0xFF,0xF0,0xEF,0xFF,0xFF,0x85,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xE1,0xFF,0xFF,0xFC, // 't'
0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xEF,0x80,0x00,0x07,0xBF,0x00,0x00,0x3E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x03,0xEF,0xBF,0xFF,0xE7,0xBD,0xFF,0xFF,0xCE,0xEF,0xFF,0xFF,0x99,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'u'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0x00,0x00,0x1E,0xF0,0x00,0x00,0x3B,0x80,0x00,0x00,0x6E,0x00,0x00,0x00,0x3C,0x00,0x00,0x0E,0xF8,0x00,0x00,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'v'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xFB,0xFF,0xFE,0x7B,0xDF,0xFF,0xFC,0xEE,0xFF,0xFF,0xF9,0x97,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'w'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x6E,0xFF,0xFF,0xF8,0x3D,0xFF,0xFF,0xCE,0xFB,0xFF,0xFE,0x7B,0xF0,0x00,0x03,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x3E,0xF8,0x00,0x00,0x7B,0xC0,0x00,0x00,0xEE,0x00,0x00,0x01,0x90,0x00,0x00,0x00, // 'x'
0x40,0x00,0x00,0x03,0x80,0x00,0x00,0x6F,0x00,0x00,0x03,0xBE,0x00,0x00,0x1E,0xFC,0x00,0x00,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x1F,0xBF,0x00,0x00,0x7E,0xFC,0x00,0x01,0xFB,0xF0,0x00,0x07,0xEF,0xC0,0x00,0x0F,0xBE,0xFF,0xFF,0x9E,0xF7,0xFF,0xFF,0x3B,0xBF,0xFF,0xFE,0x60,0xFF,0xFF,0xF8,0x01,0xFF,0xFF,0xCE,0x03,0xFF,0xFE,0x78,0x00,0x00,0x03,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x03,0xFF,0xFE,0x78,0x1F,0xFF,0xFC,0xE0,0xFF,0xFF,0xF9,0x87,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0x00, // 'y'
0x1F,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0xFC,0x03,0xFF,0xFF,0xE6,0x07,0xFF,0xFF,0x38,0x0F,0xFF,0xF9,0xE0,0x00,0x00,0x0F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0,0x00,0x00,0x1F,0x80,0x00,0x00,0x7E,0x00,0x00,0x00,0xF8,0x00,0x00,0x01,0xE0,0x00,0x00,0x03,0x80,0x00,0x00,0x06,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0x0F,0x80,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00,0x00,0x00,0xFC,0x00,0x00,0x03,0xF0,0x00,0x00,0x0F,0xBF,0xFF,0xE0,0x3D,0xFF,0xFF,0xC0,0xEF,0xFF,0xFF,0x81,0x7F,0xFF,0xFF,0x03,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xF0, // 'z'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '{'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE, // '|'
0xFF,0xFB,0xFF,0xEC,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6C,0x01,0xB0,0x06,0xC0,0x1B,0x00,0x6F,0xFF,0xBF,0xFE // '}'
};
const GFXglyph DSEG7_Classic_Bold_48Glyphs[] PROGMEM = {
// bitmapOffset, width, height, xAdvance, xOffset, yOffset
{ 0, 1, 1, 11, 0, 0 }, // ' '
{ 1, 1, 1, 40, 0, 0 }, // '!'
{ 2, 14, 32, 18, 2, -32 }, // '"'
{ 58, 14, 32, 18, 2, -32 }, // '#'
{ 114, 14, 32, 18, 2, -32 }, // '$'
{ 170, 14, 32, 18, 2, -32 }, // '%'
{ 226, 14, 32, 18, 2, -32 }, // '&'
{ 282, 14, 32, 18, 2, -32 }, // '''
{ 338, 14, 32, 18, 2, -32 }, // '('
{ 394, 14, 32, 18, 2, -32 }, // ')'
{ 450, 14, 32, 18, 2, -32 }, // '*'
{ 506, 14, 32, 18, 2, -32 }, // '+'
{ 562, 14, 32, 18, 2, -32 }, // ','
{ 618, 24, 6, 40, 8, -27 }, // '-'
{ 636, 7, 6, 1, -3, -6 }, // '.'
{ 642, 14, 32, 18, 2, -32 }, // '/'
{ 698, 30, 48, 40, 5, -48 }, // '0'
{ 878, 7, 44, 40, 28, -46 }, // '1'
{ 917, 30, 48, 40, 5, -48 }, // '2'
{ 1097, 28, 48, 40, 7, -48 }, // '3'
{ 1265, 30, 44, 40, 5, -46 }, // '4'
{ 1430, 30, 48, 40, 5, -48 }, // '5'
{ 1610, 30, 48, 40, 5, -48 }, // '6'
{ 1790, 30, 46, 40, 5, -48 }, // '7'
{ 1963, 30, 48, 40, 5, -48 }, // '8'
{ 2143, 30, 48, 40, 5, -48 }, // '9'
{ 2323, 7, 25, 11, 2, -36 }, // ':'
{ 2345, 14, 32, 18, 2, -32 }, // ';'
{ 2401, 14, 32, 18, 2, -32 }, // '<'
{ 2457, 14, 32, 18, 2, -32 }, // '='
{ 2513, 14, 32, 18, 2, -32 }, // '>'
{ 2569, 14, 32, 18, 2, -32 }, // '?'
{ 2625, 14, 32, 18, 2, -32 }, // '@'
{ 2681, 30, 46, 40, 5, -48 }, // 'A'
{ 2854, 30, 46, 40, 5, -46 }, // 'B'
{ 3027, 28, 27, 40, 5, -27 }, // 'C'
{ 3122, 30, 46, 40, 5, -46 }, // 'D'
{ 3295, 28, 48, 40, 5, -48 }, // 'E'
{ 3463, 28, 46, 40, 5, -48 }, // 'F'
{ 3624, 30, 48, 40, 5, -48 }, // 'G'
{ 3804, 30, 44, 40, 5, -46 }, // 'H'
{ 3969, 7, 21, 40, 28, -23 }, // 'I'
{ 3988, 30, 46, 40, 5, -46 }, // 'J'
{ 4161, 30, 46, 40, 5, -48 }, // 'K'
{ 4334, 28, 46, 40, 5, -46 }, // 'L'
{ 4495, 30, 46, 40, 5, -48 }, // 'M'
{ 4668, 30, 25, 40, 5, -27 }, // 'N'
{ 4762, 30, 27, 40, 5, -27 }, // 'O'
{ 4864, 30, 46, 40, 5, -48 }, // 'P'
{ 5037, 30, 46, 40, 5, -48 }, // 'Q'
{ 5210, 27, 25, 40, 5, -27 }, // 'R'
{ 5295, 30, 46, 40, 5, -46 }, // 'S'
{ 5468, 28, 46, 40, 5, -46 }, // 'T'
{ 5629, 30, 24, 40, 5, -24 }, // 'U'
{ 5719, 30, 46, 40, 5, -46 }, // 'V'
{ 5892, 30, 46, 40, 5, -46 }, // 'W'
{ 6065, 30, 44, 40, 5, -46 }, // 'X'
{ 6230, 30, 46, 40, 5, -46 }, // 'Y'
{ 6403, 30, 48, 40, 5, -48 }, // 'Z'
{ 6583, 14, 32, 18, 2, -32 }, // '['
{ 6639, 14, 32, 18, 2, -32 }, // '\'
{ 6695, 14, 32, 18, 2, -32 }, // ']'
{ 6751, 14, 32, 18, 2, -32 }, // '^'
{ 6807, 14, 32, 18, 2, -32 }, // '_'
{ 6863, 14, 32, 18, 2, -32 }, // '`'
{ 6919, 30, 46, 40, 5, -48 }, // 'a'
{ 7092, 30, 46, 40, 5, -46 }, // 'b'
{ 7265, 28, 27, 40, 5, -27 }, // 'c'
{ 7360, 30, 46, 40, 5, -46 }, // 'd'
{ 7533, 28, 48, 40, 5, -48 }, // 'e'
{ 7701, 28, 46, 40, 5, -48 }, // 'f'
{ 7862, 30, 48, 40, 5, -48 }, // 'g'
{ 8042, 30, 44, 40, 5, -46 }, // 'h'
{ 8207, 7, 21, 40, 28, -23 }, // 'i'
{ 8226, 30, 46, 40, 5, -46 }, // 'j'
{ 8399, 30, 46, 40, 5, -48 }, // 'k'
{ 8572, 28, 46, 40, 5, -46 }, // 'l'
{ 8733, 30, 46, 40, 5, -48 }, // 'm'
{ 8906, 30, 25, 40, 5, -27 }, // 'n'
{ 9000, 30, 27, 40, 5, -27 }, // 'o'
{ 9102, 30, 46, 40, 5, -48 }, // 'p'
{ 9275, 30, 46, 40, 5, -48 }, // 'q'
{ 9448, 27, 25, 40, 5, -27 }, // 'r'
{ 9533, 30, 46, 40, 5, -46 }, // 's'
{ 9706, 28, 46, 40, 5, -46 }, // 't'
{ 9867, 30, 24, 40, 5, -24 }, // 'u'
{ 9957, 30, 46, 40, 5, -46 }, // 'v'
{ 10130, 30, 46, 40, 5, -46 }, // 'w'
{ 10303, 30, 44, 40, 5, -46 }, // 'x'
{ 10468, 30, 46, 40, 5, -46 }, // 'y'
{ 10641, 30, 48, 40, 5, -48 }, // 'z'
{ 10821, 14, 32, 18, 2, -32 }, // '{'
{ 10877, 14, 32, 18, 2, -32 }, // '|'
{ 10933, 14, 32, 18, 2, -32 } // '}'
};
const GFXfont DSEG7_Classic_Bold_48 PROGMEM = {
(uint8_t *)DSEG7_Classic_Bold_48Bitmaps,(GFXglyph *)DSEG7_Classic_Bold_48Glyphs,0x20, 0x7E, 53};

View File

@ -0,0 +1,142 @@
/*
* Watchy - Button Test Example
* Watchy Basic + testing all 4 buttons
*
* ==============
* |--------------|
* (IO34) BTN 3 | | BTN 1 (IO39)
* | |
* | |
* | |
* (IO35) BTN 4 | | BTN 2 (IO36)
* |--------------|
* ==============
*/
#ifndef ESP32
#error Please select ESP32 Wrover Module under Tools > Board
#endif
#include <DS3232RTC.h>
#include <GxEPD2_BW.h>
#include "DSEG7_Classic_Bold_48.h"
#include "DSEG14_Classic_Bold_18.h"
#define VIB_MOTOR_PIN 27
#define RTC_PIN GPIO_NUM_33
#define BTN_1 GPIO_SEL_39
#define BTN_2 GPIO_SEL_36
#define BTN_3 GPIO_SEL_34
#define BTN_4 GPIO_SEL_35
#define BTN_PIN_MASK BTN_1|BTN_2|BTN_3|BTN_4
DS3232RTC RTC(false);
GxEPD2_BW<GxEPD2_154_D67, GxEPD2_154_D67::HEIGHT> display(GxEPD2_154_D67(/*CS=5*/ SS, /*DC=*/ 17, /*RST=*/ 16, /*BUSY=*/ 4)); // GDEH0154D67
void setup()
{
esp_sleep_wakeup_cause_t wakeup_reason;
wakeup_reason = esp_sleep_get_wakeup_cause();
switch(wakeup_reason)
{
case ESP_SLEEP_WAKEUP_EXT0: updateTime(false); break; //RTC Alarm Interrupt
case ESP_SLEEP_WAKEUP_EXT1: handleButton(); break; //Button Press
default: updateTime(true); //Hard Reset
}
esp_sleep_enable_ext0_wakeup(RTC_PIN, 0); //enable deep sleep wake on RTC interrupt
esp_sleep_enable_ext1_wakeup(BTN_PIN_MASK, ESP_EXT1_WAKEUP_ANY_HIGH); //enable deep sleep wake on button press
esp_deep_sleep_start();
}
void loop(){}
void handleButton()
{
uint64_t wakeupBit = esp_sleep_get_ext1_wakeup_status();
pinMode(VIB_MOTOR_PIN, OUTPUT);
digitalWrite(VIB_MOTOR_PIN, HIGH);
delay(100);
digitalWrite(VIB_MOTOR_PIN, LOW);
display.init();
display.fillScreen(GxEPD_WHITE);
display.setTextColor(GxEPD_BLACK);
display.setFont(&DSEG14_Classic_Bold_18);
display.setCursor(15, 100);
display.println("You pressed");
display.setCursor(65, 140);
if (wakeupBit & BTN_4) {
display.println("BTN 4");
}
else if (wakeupBit & BTN_3) {
display.println("BTN 3");
}
else if (wakeupBit & BTN_2) {
display.println("BTN 2");
}
else if (wakeupBit & BTN_1) {
display.println("BTN 1");
}
display.display(false);
display.hibernate();
}
void updateTime(bool reset)
{
RTC.begin();
if(reset){
RTC.squareWave(SQWAVE_NONE); //disable square wave output
RTC.set(compileTime()); //set RTC time to compile time
RTC.setAlarm(ALM2_EVERY_MINUTE, 0, 0, 0, 0);
RTC.alarmInterrupt(ALARM_2, true); //enable alarm interrupt
}
RTC.alarm(ALARM_2); //resets the alarm flag in the RTC
tmElements_t currentTime;
RTC.read(currentTime);
display.init(0, reset); //_initial_refresh to false to prevent full update on init
display.setFullWindow();
display.fillScreen(GxEPD_BLACK);
display.setTextColor(GxEPD_WHITE);
display.setFont(&DSEG7_Classic_Bold_48);
display.setCursor(15, 120);
if(currentTime.Hour < 10){
display.print('0');
}
display.print(currentTime.Hour);
display.print(':');
if(currentTime.Minute < 10){
display.print('0');
}
display.print(currentTime.Minute);
display.display(true); //partial refresh
display.hibernate();
}
time_t compileTime()
{
const time_t FUDGE(10); //fudge factor to allow for upload time, etc. (seconds, YMMV)
const char *compDate = __DATE__, *compTime = __TIME__, *months = "JanFebMarAprMayJunJulAugSepOctNovDec";
char compMon[3], *m;
strncpy(compMon, compDate, 3);
compMon[3] = '\0';
m = strstr(months, compMon);
tmElements_t tm;
tm.Month = ((m - months) / 3 + 1);
tm.Day = atoi(compDate + 4);
tm.Year = atoi(compDate + 7) - 1970;
tm.Hour = atoi(compTime);
tm.Minute = atoi(compTime + 3);
tm.Second = atoi(compTime + 6);
time_t t = makeTime(tm);
return t + FUDGE; //add fudge factor to allow for compile time
}

View File

@ -0,0 +1,111 @@
/*
* Watchy - DOS Watchface Example
* Sets the RTC time if not set, goes to sleep and wakes up every minute to update the time on the display
*/
#ifndef ESP32
#error Please select ESP32 Wrover Module under Tools > Board
#endif
#include <DS3232RTC.h>
#include <GxEPD2_BW.h>
#include "Px437_IBM_BIOS5pt7b.h"
#define RTC_PIN GPIO_NUM_33
DS3232RTC RTC(false);
GxEPD2_BW<GxEPD2_154_D67, GxEPD2_154_D67::HEIGHT> display(GxEPD2_154_D67(/*CS=5*/ SS, /*DC=*/ 17, /*RST=*/ 16, /*BUSY=*/ 4)); // GDEH0154D67
void setup()
{
esp_sleep_wakeup_cause_t wakeup_reason;
wakeup_reason = esp_sleep_get_wakeup_cause();
switch(wakeup_reason)
{
case ESP_SLEEP_WAKEUP_EXT0: updateTime(false); break; //RTC Alarm Interrupt
default: updateTime(true); //Hard Reset
}
esp_sleep_enable_ext0_wakeup(RTC_PIN, 0); //enable deep sleep wake on RTC interrupt
esp_deep_sleep_start();
}
void loop(){}
void updateTime(bool reset)
{
RTC.begin();
if(reset){
RTC.squareWave(SQWAVE_NONE); //disable square wave output
RTC.set(compileTime()); //set RTC time to compile time
RTC.setAlarm(ALM2_EVERY_MINUTE, 0, 0, 0, 0);
RTC.alarmInterrupt(ALARM_2, true); //enable alarm interrupt
}
RTC.alarm(ALARM_2); //resets the alarm flag in the RTC
tmElements_t currentTime;
RTC.read(currentTime);
char time[6];
time[0] = '0' + ((currentTime.Hour/10)%10);
time[1] = '0' + (currentTime.Hour%10);
time[2] = ':';
time[3] = '0' + ((currentTime.Minute/10)%10);
time[4] = '0' + (currentTime.Minute%10);
time[5] = 0;
display.init(0, reset); //_initial_refresh to false to prevent full update on init
display.setFullWindow();
display.fillScreen(GxEPD_BLACK);
display.setTextColor(GxEPD_WHITE);
display.setFont(&Px437_IBM_BIOS5pt7b);
display.setCursor(0, 24);
display.println("WATCHY-DOS 1.1.4");
display.println("Copyright (c) 2020");
display.println(" ");
display.print("AUTOEXEC BAT ");
display.println(time);
display.print("COMMAND COM ");
display.println(time);
display.print("CONFIG SYS ");
display.println(time);
display.print("ESPTOOL PY ");
display.println(time);
display.println(" ");
display.println(" 4 files 563 bytes");
display.println(" 2048 bytes free");
display.println(" ");
display.println("<C:\\>esptool");
/*
if(currentTime.Hour < 10){
display.print('0');
}
display.print(currentTime.Hour);
display.print(':');
if(currentTime.Minute < 10){
display.print('0');
}
display.print(currentTime.Minute);*/
display.display(true); //partial refresh
display.hibernate();
}
time_t compileTime()
{
const time_t FUDGE(10); //fudge factor to allow for upload time, etc. (seconds, YMMV)
const char *compDate = __DATE__, *compTime = __TIME__, *months = "JanFebMarAprMayJunJulAugSepOctNovDec";
char compMon[3], *m;
strncpy(compMon, compDate, 3);
compMon[3] = '\0';
m = strstr(months, compMon);
tmElements_t tm;
tm.Month = ((m - months) / 3 + 1);
tm.Day = atoi(compDate + 4);
tm.Year = atoi(compDate + 7) - 1970;
tm.Hour = atoi(compTime);
tm.Minute = atoi(compTime + 3);
tm.Second = atoi(compTime + 6);
time_t t = makeTime(tm);
return t + FUDGE; //add fudge factor to allow for compile time
}

View File

@ -0,0 +1,89 @@
/*
* Watchy - Pokemon Watchface Example
* Sets the RTC time if not set, goes to sleep and wakes up every minute to update the time on the display
*/
#ifndef ESP32
#error Please select ESP32 Wrover Module under Tools > Board
#endif
#include <DS3232RTC.h>
#include <GxEPD2_BW.h>
#include <Fonts/FreeMonoBold12pt7b.h>
#include "pokemon.h"
#define RTC_PIN GPIO_NUM_33
DS3232RTC RTC(false);
GxEPD2_BW<GxEPD2_154_D67, GxEPD2_154_D67::HEIGHT> display(GxEPD2_154_D67(/*CS=5*/ SS, /*DC=*/ 17, /*RST=*/ 16, /*BUSY=*/ 4)); // GDEH0154D67
void setup()
{
esp_sleep_wakeup_cause_t wakeup_reason;
wakeup_reason = esp_sleep_get_wakeup_cause();
switch(wakeup_reason)
{
case ESP_SLEEP_WAKEUP_EXT0: updateTime(false); break; //RTC Alarm Interrupt
default: updateTime(true); //Hard Reset
}
esp_sleep_enable_ext0_wakeup(RTC_PIN, 0); //enable deep sleep wake on RTC interrupt
esp_deep_sleep_start();
}
void loop(){}
void updateTime(bool reset)
{
RTC.begin();
if(reset){
RTC.squareWave(SQWAVE_NONE); //disable square wave output
RTC.set(compileTime()); //set RTC time to compile time
RTC.setAlarm(ALM2_EVERY_MINUTE, 0, 0, 0, 0);
RTC.alarmInterrupt(ALARM_2, true); //enable alarm interrupt
}
RTC.alarm(ALARM_2); //resets the alarm flag in the RTC
tmElements_t currentTime;
RTC.read(currentTime);
display.init(0, reset); //_initial_refresh to false to prevent full update on init
display.setFullWindow();
display.fillScreen(GxEPD_WHITE);
display.drawBitmap(0, 0, pokemon, display.epd2.WIDTH, display.epd2.HEIGHT, GxEPD_BLACK);
display.setTextColor(GxEPD_BLACK);
display.setFont(&FreeMonoBold12pt7b);
display.setCursor(10, 170);
if(currentTime.Hour < 10){
display.print('0');
}
display.print(currentTime.Hour);
display.print(':');
if(currentTime.Minute < 10){
display.print('0');
}
display.print(currentTime.Minute);
display.display(true); //partial refresh
display.hibernate();
}
time_t compileTime()
{
const time_t FUDGE(10); //fudge factor to allow for upload time, etc. (seconds, YMMV)
const char *compDate = __DATE__, *compTime = __TIME__, *months = "JanFebMarAprMayJunJulAugSepOctNovDec";
char compMon[3], *m;
strncpy(compMon, compDate, 3);
compMon[3] = '\0';
m = strstr(months, compMon);
tmElements_t tm;
tm.Month = ((m - months) / 3 + 1);
tm.Day = atoi(compDate + 4);
tm.Year = atoi(compDate + 7) - 1970;
tm.Hour = atoi(compTime);
tm.Minute = atoi(compTime + 3);
tm.Second = atoi(compTime + 6);
time_t t = makeTime(tm);
return t + FUDGE; //add fudge factor to allow for compile time
}

View File

@ -1,315 +1,316 @@
const unsigned char pokemon [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xef, 0xfa, 0x06, 0xff, 0xbf, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x02,
0x06, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x03, 0x04, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
0x08, 0x01, 0x8c, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xcf, 0xf1, 0x8c, 0xff, 0x3f, 0xc0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x08, 0x00, 0x50, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x00, 0xd0, 0x80, 0x20,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3e, 0x8f, 0xa0, 0x30, 0xfa, 0x3e, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xef, 0xf8, 0x20,
0xff, 0xbf, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3f, 0xc0, 0x83, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x21, 0x42, 0x02,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x63, 0x42, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x21,
0x42, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc6, 0x23, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x20, 0x07, 0xf2, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x1a, 0x08, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x20, 0x08, 0x1a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x0a, 0x02, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x4f, 0x00, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00,
0x00, 0x00, 0x00, 0x03, 0x07, 0x4f, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00,
0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x5d, 0xa1,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x08, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00,
0x7b, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0xdf, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00,
0x08, 0x00, 0x00, 0x00, 0x1c, 0xe0, 0x00, 0x00, 0x07, 0x8f, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07,
0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1b, 0x10, 0x00,
0x00, 0x18, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x0d, 0x90, 0x00, 0x00, 0xbb, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
0xc8, 0x00, 0x00, 0xe7, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xe8, 0x00, 0x01, 0x3f, 0xfc, 0x00, 0x00,
0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0xe4, 0x00, 0x02, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x02, 0xf4, 0x66, 0x0d, 0xff, 0xe0,
0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f,
0x80, 0x00, 0x00, 0x01, 0xf6, 0x66, 0x07, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x00, 0x00, 0x01, 0x33, 0x89, 0xd7,
0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf0, 0x00, 0x00, 0x01, 0x16, 0x00, 0x2f, 0xff, 0x90, 0x00, 0x00, 0x00, 0x00, 0x01,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0xc0,
0x00, 0x01, 0xff, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x01, 0xf8, 0x1a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x14, 0x01, 0x83, 0xf8, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x05, 0xc7, 0xe0, 0x12, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x19, 0x02, 0x27, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xe7, 0x00,
0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0xef, 0x00, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03,
0xef, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f, 0x03, 0xef, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x60, 0x71, 0xcf, 0x03, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x04, 0x1e, 0x04, 0x00, 0x60, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x10, 0xf8, 0x7e, 0x08, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf3, 0xff, 0x18, 0x00,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3e, 0x03, 0xf1, 0x30, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0xff, 0xf0,
0xf0, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xc0, 0x60, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06,
0x00, 0x00, 0x60, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0c, 0x00, 0x00, 0x60, 0x00, 0xc0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x08, 0x00, 0x00, 0x70, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0x70, 0x01, 0xc0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd0, 0x00, 0x20, 0xf8, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x21, 0xf8,
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x61, 0xf8, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1c, 0x00,
0xf1, 0xf8, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0e, 0x81, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x07, 0x03, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x27, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xee, 0x7b, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0x19, 0xf8, 0xfc, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0x19, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0xf8,
0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0xf0, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x07, 0xe0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf1, 0xfc, 0x83, 0x02, 0x03, 0xe2, 0x06, 0x81, 0x80, 0x00,
0x00, 0x00, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08,
0x20, 0x84, 0x05, 0x06, 0x1a, 0x06, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x60,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0x20, 0x8c, 0x0d, 0x0c, 0x02, 0x06, 0x81,
0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xce, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x08, 0x08, 0x20, 0x88, 0x05, 0x08, 0x02, 0x06, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xce,
0x00, 0xe0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x20, 0xb8, 0x18, 0x88, 0x03,
0xfe, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc3, 0x80, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0x80,
0x00, 0x00, 0x08, 0x00, 0x20, 0xe4, 0x1f, 0xc8, 0x02, 0x02, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00,
0x01, 0xc3, 0x80, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x08, 0x00, 0x20, 0x82, 0x20,
0x64, 0x0a, 0x06, 0x41, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc1, 0xe0, 0x7f, 0x00, 0x00, 0x00,
0x7f, 0x80, 0x00, 0x00, 0x08, 0x00, 0xf8, 0x81, 0x20, 0x63, 0xe2, 0x02, 0x3f, 0x80, 0x00, 0x00,
0x00, 0x00, 0x01, 0xc0, 0x70, 0x7f, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x08, 0x01, 0xf8,
0x80, 0xa0, 0x21, 0xe2, 0x02, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x70, 0x7f, 0x00,
0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x1c, 0x1f, 0xe0, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x1c,
0x1f, 0xe0, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xf8,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x0f, 0x1f, 0xf8, 0x00, 0x0f, 0xfc, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0e, 0x03, 0x9c, 0x38, 0x00, 0x0e, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xc3, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x03, 0x9c, 0x38, 0x00, 0x0e, 0x1c,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xc3, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x80, 0xe3, 0xff, 0xff, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xc0, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0xe3, 0xff, 0xff,
0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xc3, 0x0e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x80, 0xe3, 0xff, 0xff, 0xf0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xf1, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0xe7,
0xe0, 0x01, 0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf9, 0xf8, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0xe7, 0xe0, 0x01, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70,
0x03, 0xe3, 0x00, 0x01, 0x80, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x70, 0x03, 0xe3, 0x00, 0x01, 0x80, 0x1c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00,
0x01, 0xf0, 0x7c, 0x7f, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x02, 0x4f, 0x00, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x01, 0xc0, 0x7c, 0x1c, 0x00, 0x00, 0x00,
0x70, 0x00, 0x00, 0x00, 0x07, 0x4f, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0,
0x00, 0x00, 0x01, 0xc0, 0x7c, 0x1c, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x07, 0x5d, 0xa1,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xc0, 0x00, 0x00, 0x01, 0xc0, 0x70, 0x18, 0x00,
0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x07, 0xdf, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xf8, 0xc0, 0x00, 0x00, 0x01, 0xc0, 0x70, 0x18, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x07,
0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x01, 0xf0, 0x70,
0x78, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x70, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00,
0x70, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x0e, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
0x00, 0x00, 0x0e, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c,
0x1f, 0x80, 0x08, 0x00, 0x0c, 0x1f, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x3f, 0xc0, 0x10, 0x00, 0x1c, 0x3f, 0xc0,
0xc0, 0x00, 0x00, 0x00, 0x7f, 0xe3, 0x00, 0x00, 0x00, 0x0e, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x1c, 0x38, 0xe0, 0x20, 0x00, 0x1c, 0x38, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xe3, 0x00,
0x00, 0x00, 0x0e, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x38, 0xe0, 0x40, 0x00, 0x0c,
0x38, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0xff, 0x83, 0x80, 0x00, 0x00, 0x7e, 0x0c, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x0c, 0x1f, 0xe0, 0x80, 0x00, 0x0c, 0x1f, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0xff,
0x83, 0x80, 0x00, 0x00, 0x7e, 0x0c, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0xe1, 0x00,
0x00, 0x0c, 0x00, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0xff, 0x83, 0xe0, 0x00, 0x00, 0x3c, 0x03, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x0e, 0xc0, 0x00, 0x00, 0x3f, 0x0e, 0xc0, 0xc0, 0x00, 0x00,
0x01, 0xfe, 0x0f, 0xfc, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x9f,
0x84, 0x00, 0x00, 0x7f, 0x9f, 0x80, 0xc0, 0x00, 0x00, 0x01, 0xfe, 0x0f, 0xfc, 0x00, 0x00, 0x00,
0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
0x00, 0x00, 0x00, 0x7f, 0x9f, 0xff, 0xe0, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0x9f, 0xff, 0xe0,
0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xc0, 0x00, 0x00, 0x00, 0x3f, 0x9c, 0x1f, 0xf8, 0x00, 0x00, 0x03, 0xe0, 0x00, 0x01, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x0f, 0x9c,
0x07, 0xff, 0x00, 0x00, 0x03, 0xf8, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x0f, 0x9c, 0x07, 0xff, 0x00, 0x00, 0x03, 0xf8, 0x00,
0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00,
0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x16, 0x7f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xfe, 0x58, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xdc, 0x7f,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x61, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x61, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd,
0x86, 0x33, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x33, 0x7f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xcc, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x78, 0x0d, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xb0, 0x0b, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x0f, 0xf9, 0xfc, 0x3e, 0x20,
0x6f, 0xf8, 0x00, 0xf0, 0x33, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x34, 0x1c, 0x08, 0x00, 0x20, 0x61, 0xa0, 0x60, 0x80, 0x00, 0xb0, 0x2d, 0x00, 0x00,
0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1e, 0x08, 0x00, 0x20,
0xc0, 0x20, 0x60, 0x80, 0x00, 0xf0, 0x21, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x34, 0x1e, 0x08, 0x00, 0x20, 0x80, 0x20, 0x60, 0x80, 0x00, 0xf0, 0x21,
0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1f, 0x0f,
0xf0, 0x20, 0x8f, 0xbf, 0xe0, 0x80, 0x00, 0x85, 0xa1, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1f, 0xc8, 0x00, 0x20, 0x81, 0xa0, 0x20, 0x80, 0x00,
0x85, 0xa2, 0x60, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34,
0x1f, 0x08, 0x00, 0x20, 0x41, 0xa0, 0x60, 0x80, 0x00, 0x07, 0x03, 0x20, 0x00, 0xd0, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1f, 0x08, 0x00, 0xf8, 0x3f, 0x20, 0x20,
0x80, 0x00, 0x07, 0x03, 0xe0, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x34, 0x1e, 0x08, 0x01, 0xf8, 0x1e, 0x20, 0x20, 0x80, 0x00, 0x05, 0x82, 0xe0, 0x00, 0xd0,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1c, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x05, 0x82, 0x60, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x07,
0xe3, 0xfe, 0xff, 0xa0, 0x60, 0x00, 0x00, 0xff, 0x20, 0x28, 0x08, 0xd0, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80, 0x30, 0xe0, 0x00, 0x00,
0x80, 0xa0, 0x2c, 0x08, 0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34,
0x00, 0x00, 0x80, 0x20, 0x80, 0x30, 0xe0, 0x00, 0x00, 0x80, 0xa0, 0x2c, 0x08, 0x50, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80, 0x25, 0x20,
0x00, 0x00, 0x81, 0xa0, 0x29, 0x18, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0xfe, 0x22, 0x20, 0x00, 0x00, 0xff, 0x20, 0x68, 0x98, 0x50,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80,
0x20, 0x20, 0x00, 0x00, 0x84, 0x20, 0x68, 0x48, 0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80, 0x20, 0x20, 0x00, 0x00, 0x82, 0x10, 0x68,
0x38, 0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x03, 0xe0,
0x20, 0xee, 0x20, 0x60, 0x00, 0x00, 0x81, 0x06, 0xe8, 0x18, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x07, 0xe0, 0x20, 0xff, 0xa0, 0x20, 0x00, 0x00, 0x80,
0x87, 0xe8, 0x08, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x0b, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x0d, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0d, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xb0, 0x17,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0xff, 0xff, 0xe5, 0x80, 0x00, 0xf2,
0x80, 0x03, 0xf8, 0x00, 0x1e, 0x10, 0x01, 0x18, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
0x5c, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x60, 0xbf, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x60, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xfd, 0x82, 0x33, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x33, 0x7f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc8, 0x1a, 0x7f, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1a, 0x7f, 0xff, 0xd0, 0x60, 0x04, 0x80, 0x00, 0x00, 0x00,
0x00, 0x03, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// 'pokemo13', 200x200px
const unsigned char pokemon [] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3f, 0xef, 0xfa, 0x06, 0xff, 0xbf, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x02,
0x06, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x03, 0x04, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
0x08, 0x01, 0x8c, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xcf, 0xf1, 0x8c, 0xff, 0x3f, 0xc0, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x08, 0x00, 0x50, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x00, 0xd0, 0x80, 0x20,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3e, 0x8f, 0xa0, 0x30, 0xfa, 0x3e, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xef, 0xf8, 0x20,
0xff, 0xbf, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3f, 0xc0, 0x83, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x21, 0x42, 0x02,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x63, 0x42, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x21,
0x42, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc6, 0x23, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x20, 0x07, 0xf2, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x1a, 0x08, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x20, 0x08, 0x1a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x0a, 0x02, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x4f, 0x00, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00,
0x00, 0x00, 0x00, 0x03, 0x07, 0x4f, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00,
0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x5d, 0xa1,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x08, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00,
0x7b, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0xdf, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00,
0x08, 0x00, 0x00, 0x00, 0x1c, 0xe0, 0x00, 0x00, 0x07, 0x8f, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07,
0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1b, 0x10, 0x00,
0x00, 0x18, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x0d, 0x90, 0x00, 0x00, 0xbb, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
0xc8, 0x00, 0x00, 0xe7, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xe8, 0x00, 0x01, 0x3f, 0xfc, 0x00, 0x00,
0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x02, 0xe4, 0x00, 0x02, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x02, 0xf4, 0x66, 0x0d, 0xff, 0xe0,
0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f,
0x80, 0x00, 0x00, 0x01, 0xf6, 0x66, 0x07, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x80, 0x00, 0x00, 0x01, 0x33, 0x89, 0xd7,
0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf0, 0x00, 0x00, 0x01, 0x16, 0x00, 0x2f, 0xff, 0x90, 0x00, 0x00, 0x00, 0x00, 0x01,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0xc0,
0x00, 0x01, 0xff, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x01, 0xf8, 0x1a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x14, 0x01, 0x83, 0xf8, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x05, 0xc7, 0xe0, 0x12, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x19, 0x02, 0x27, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x02, 0xe7, 0x00,
0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0xef, 0x00, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03,
0xef, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f, 0x03, 0xef, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x60, 0x71, 0xcf, 0x03, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x04, 0x1e, 0x04, 0x00, 0x60, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x10, 0xf8, 0x7e, 0x08, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf3, 0xff, 0x18, 0x00,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3e, 0x03, 0xf1, 0x30, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0xff, 0xf0,
0xf0, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xc0, 0x60, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06,
0x00, 0x00, 0x60, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0c, 0x00, 0x00, 0x60, 0x00, 0xc0, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x08, 0x00, 0x00, 0x70, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x00, 0x00, 0x70, 0x01, 0xc0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd0, 0x00, 0x20, 0xf8, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x21, 0xf8,
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x61, 0xf8, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1c, 0x00,
0xf1, 0xf8, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0e, 0x81, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
0x07, 0x03, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x27, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xee, 0x7b, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0x19, 0xf8, 0xfc, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x38, 0x19, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0xf8,
0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0xf0, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x07, 0xe0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf1, 0xfc, 0x83, 0x02, 0x03, 0xe2, 0x06, 0x81, 0x80, 0x00,
0x00, 0x00, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08,
0x20, 0x84, 0x05, 0x06, 0x1a, 0x06, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfc, 0x00, 0x60,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0x20, 0x8c, 0x0d, 0x0c, 0x02, 0x06, 0x81,
0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xce, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x08, 0x08, 0x20, 0x88, 0x05, 0x08, 0x02, 0x06, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xce,
0x00, 0xe0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x20, 0xb8, 0x18, 0x88, 0x03,
0xfe, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc3, 0x80, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0x80,
0x00, 0x00, 0x08, 0x00, 0x20, 0xe4, 0x1f, 0xc8, 0x02, 0x02, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00,
0x01, 0xc3, 0x80, 0xfc, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x08, 0x00, 0x20, 0x82, 0x20,
0x64, 0x0a, 0x06, 0x41, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc1, 0xe0, 0x7f, 0x00, 0x00, 0x00,
0x7f, 0x80, 0x00, 0x00, 0x08, 0x00, 0xf8, 0x81, 0x20, 0x63, 0xe2, 0x02, 0x3f, 0x80, 0x00, 0x00,
0x00, 0x00, 0x01, 0xc0, 0x70, 0x7f, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x08, 0x01, 0xf8,
0x80, 0xa0, 0x21, 0xe2, 0x02, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x70, 0x7f, 0x00,
0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x1c, 0x1f, 0xe0, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x1c,
0x1f, 0xe0, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xf8,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x0f, 0x1f, 0xf8, 0x00, 0x0f, 0xfc, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0e, 0x03, 0x9c, 0x38, 0x00, 0x0e, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xc3, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x03, 0x9c, 0x38, 0x00, 0x0e, 0x1c,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xc3, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x80, 0xe3, 0xff, 0xff, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xc0, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0xe3, 0xff, 0xff,
0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xc3, 0x0e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x80, 0xe3, 0xff, 0xff, 0xf0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xf1, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0xe7,
0xe0, 0x01, 0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf9, 0xf8, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0xe7, 0xe0, 0x01, 0xc0, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70,
0x03, 0xe3, 0x00, 0x01, 0x80, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x70, 0x03, 0xe3, 0x00, 0x01, 0x80, 0x1c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00,
0x01, 0xf0, 0x7c, 0x7f, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x02, 0x4f, 0x00, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x01, 0xc0, 0x7c, 0x1c, 0x00, 0x00, 0x00,
0x70, 0x00, 0x00, 0x00, 0x07, 0x4f, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0,
0x00, 0x00, 0x01, 0xc0, 0x7c, 0x1c, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x07, 0x5d, 0xa1,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xc0, 0x00, 0x00, 0x01, 0xc0, 0x70, 0x18, 0x00,
0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x07, 0xdf, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xf8, 0xc0, 0x00, 0x00, 0x01, 0xc0, 0x70, 0x18, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x07,
0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x01, 0xf0, 0x70,
0x78, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x70, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00,
0x70, 0x70, 0xe0, 0x00, 0x00, 0x00, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x0e, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00,
0x00, 0x00, 0x0e, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c,
0x1f, 0x80, 0x08, 0x00, 0x0c, 0x1f, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x3f, 0xe0, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x3f, 0xc0, 0x10, 0x00, 0x1c, 0x3f, 0xc0,
0xc0, 0x00, 0x00, 0x00, 0x7f, 0xe3, 0x00, 0x00, 0x00, 0x0e, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x1c, 0x38, 0xe0, 0x20, 0x00, 0x1c, 0x38, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xe3, 0x00,
0x00, 0x00, 0x0e, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x38, 0xe0, 0x40, 0x00, 0x0c,
0x38, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0xff, 0x83, 0x80, 0x00, 0x00, 0x7e, 0x0c, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x0c, 0x1f, 0xe0, 0x80, 0x00, 0x0c, 0x1f, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0xff,
0x83, 0x80, 0x00, 0x00, 0x7e, 0x0c, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0xe1, 0x00,
0x00, 0x0c, 0x00, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0xff, 0x83, 0xe0, 0x00, 0x00, 0x3c, 0x03, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x0e, 0xc0, 0x00, 0x00, 0x3f, 0x0e, 0xc0, 0xc0, 0x00, 0x00,
0x01, 0xfe, 0x0f, 0xfc, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x9f,
0x84, 0x00, 0x00, 0x7f, 0x9f, 0x80, 0xc0, 0x00, 0x00, 0x01, 0xfe, 0x0f, 0xfc, 0x00, 0x00, 0x00,
0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
0x00, 0x00, 0x00, 0x7f, 0x9f, 0xff, 0xe0, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0x9f, 0xff, 0xe0,
0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xc0, 0x00, 0x00, 0x00, 0x3f, 0x9c, 0x1f, 0xf8, 0x00, 0x00, 0x03, 0xe0, 0x00, 0x01, 0xf0,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x0f, 0x9c,
0x07, 0xff, 0x00, 0x00, 0x03, 0xf8, 0x00, 0x01, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x0f, 0x9c, 0x07, 0xff, 0x00, 0x00, 0x03, 0xf8, 0x00,
0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00,
0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00,
0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00,
0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x16, 0x7f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xfe, 0x58, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xdc, 0x7f,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x61, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x61, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd,
0x86, 0x33, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x33, 0x7f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xcc, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x78, 0x0d, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xb0, 0x0b, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x0f, 0xf9, 0xfc, 0x3e, 0x20,
0x6f, 0xf8, 0x00, 0xf0, 0x33, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x34, 0x1c, 0x08, 0x00, 0x20, 0x61, 0xa0, 0x60, 0x80, 0x00, 0xb0, 0x2d, 0x00, 0x00,
0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1e, 0x08, 0x00, 0x20,
0xc0, 0x20, 0x60, 0x80, 0x00, 0xf0, 0x21, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x34, 0x1e, 0x08, 0x00, 0x20, 0x80, 0x20, 0x60, 0x80, 0x00, 0xf0, 0x21,
0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1f, 0x0f,
0xf0, 0x20, 0x8f, 0xbf, 0xe0, 0x80, 0x00, 0x85, 0xa1, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1f, 0xc8, 0x00, 0x20, 0x81, 0xa0, 0x20, 0x80, 0x00,
0x85, 0xa2, 0x60, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34,
0x1f, 0x08, 0x00, 0x20, 0x41, 0xa0, 0x60, 0x80, 0x00, 0x07, 0x03, 0x20, 0x00, 0xd0, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1f, 0x08, 0x00, 0xf8, 0x3f, 0x20, 0x20,
0x80, 0x00, 0x07, 0x03, 0xe0, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x34, 0x1e, 0x08, 0x01, 0xf8, 0x1e, 0x20, 0x20, 0x80, 0x00, 0x05, 0x82, 0xe0, 0x00, 0xd0,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x1c, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x05, 0x82, 0x60, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x07,
0xe3, 0xfe, 0xff, 0xa0, 0x60, 0x00, 0x00, 0xff, 0x20, 0x28, 0x08, 0xd0, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80, 0x30, 0xe0, 0x00, 0x00,
0x80, 0xa0, 0x2c, 0x08, 0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34,
0x00, 0x00, 0x80, 0x20, 0x80, 0x30, 0xe0, 0x00, 0x00, 0x80, 0xa0, 0x2c, 0x08, 0x50, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80, 0x25, 0x20,
0x00, 0x00, 0x81, 0xa0, 0x29, 0x18, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0xfe, 0x22, 0x20, 0x00, 0x00, 0xff, 0x20, 0x68, 0x98, 0x50,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80,
0x20, 0x20, 0x00, 0x00, 0x84, 0x20, 0x68, 0x48, 0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x80, 0x20, 0x80, 0x20, 0x20, 0x00, 0x00, 0x82, 0x10, 0x68,
0x38, 0x50, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x03, 0xe0,
0x20, 0xee, 0x20, 0x60, 0x00, 0x00, 0x81, 0x06, 0xe8, 0x18, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, 0x07, 0xe0, 0x20, 0xff, 0xa0, 0x20, 0x00, 0x00, 0x80,
0x87, 0xe8, 0x08, 0xd0, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x0b, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x0d, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0d, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xb0, 0x17,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0xff, 0xff, 0xe5, 0x80, 0x00, 0xf2,
0x80, 0x03, 0xf8, 0x00, 0x1e, 0x10, 0x01, 0x18, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
0x5c, 0x7f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xfe, 0x60, 0xbf, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x60, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xfd, 0x82, 0x33, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x33, 0x7f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc8, 0x1a, 0x7f, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1a, 0x7f, 0xff, 0xd0, 0x60, 0x04, 0x80, 0x00, 0x00, 0x00,
0x00, 0x03, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -1,76 +0,0 @@
{
"watchfaces" : [
{
"id" : "1",
"name" : "Basic",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/1_Basic.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/Basic",
"version" : "1.0.0"
},
{
"id" : "2",
"name" : "7_SEG",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/2_7_SEG.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/7_SEG",
"version" : "1.0.0"
},
{
"id" : "2A",
"name" : "7_SEG_LIGHT",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/2_7_SEG_LIGHT.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/7_SEG",
"version" : "1.0.0"
},
{
"id" : "3",
"name" : "DOS",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/3_DOS.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/DOS",
"version" : "1.0.0"
},
{
"id" : "4",
"name" : "Pokemon",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/4_Pokemon.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/Pokemon",
"version" : "1.0.0"
},
{
"id" : "5",
"name" : "StarryHorizon",
"author" : "dandelany",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/5_StarryHorizon.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/StarryHorizon",
"version" : "1.0.0"
},
{
"id" : "6",
"name" : "Tetris",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/6_Tetris.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/Tetris",
"version" : "1.0.0"
},
{
"id" : "7",
"name" : "MacPaint",
"author" : "SQFMI",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/7_MacPaint.png",
"source" : "https://github.com/sqfmi/Watchy/tree/master/examples/WatchFaces/MacPaint",
"version" : "1.0.0"
},
{
"id" : "8",
"name" : "Bahn",
"author" : "BraininaBowl",
"screenshot" : "https://raw.githubusercontent.com/sqfmi/Watchy/master/extras/WatchFaces/8_Bahn.png",
"source" : "https://github.com/BraininaBowl/Bahn-for-Watchy",
"version" : "1.0.0"
}
]
}

BIN
extras/Watchy.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 626 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 146 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 154 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 B

View File

@ -1,36 +0,0 @@
{
"name": "Watchy",
"version": "1.4.10",
"description": "Watchy - An Open Source E-Paper Watch by SQFMI",
"authors": [
{
"name": "SQFMI",
"url": "https://github.com/sqfmi"
}
],
"homepage": "https://watchy.sqfmi.com",
"repository": {
"type": "git",
"url": "https://github.com/sqfmi/Watchy.git"
},
"frameworks": "arduino",
"platforms": ["espressif32"],
"dependencies": [
{ "name": "Adafruit GFX Library" },
{ "name": "Arduino_JSON" },
{ "name": "DS3232RTC" },
{ "name": "NTPClient" },
{
"name": "Rtc_Pcf8563",
"version": "https://github.com/orbitalair/Rtc_Pcf8563.git#master"
},
{
"name": "GxEPD2",
"version": "https://github.com/ZinggJM/GxEPD2.git#master"
},
{
"name": "WiFiManager",
"version": "https://github.com/tzapu/WiFiManager.git#2.0.3-alpha"
}
]
}

View File

@ -1,10 +1,9 @@
name=Watchy
version=1.4.10
author=SQFMI
maintainer=SQFMI
sentence=Watchy - An Open Source E-Paper Watch by SQFMI
paragraph=This library contains drivers and code samples for Watchy
category=Other
url=https://watchy.sqfmi.com
architectures=esp32
depends=Adafruit GFX Library,Arduino_JSON,DS3232RTC,NTPClient,Rtc_Pcf8563,GxEPD2,WiFiManager
name=Watchy
version=1.1.5
author=SQFMI
maintainer=SQFMI
sentence=Watchy - An Open Source E-Ink SmartWatch by SQFMI
paragraph=This library contains drivers and code samples for Watchy
category=Other
url=https://github.com/sqfmi/Watchy
depends=GxEPD2,DS3232RTC

View File

@ -1,130 +0,0 @@
#include "BLE.h"
#define SERVICE_UUID_ESPOTA "cd77498e-1ac8-48b6-aba8-4161c7342fce"
#define CHARACTERISTIC_UUID_ID "cd77498f-1ac8-48b6-aba8-4161c7342fce"
#define SERVICE_UUID_OTA "86b12865-4b70-4893-8ce6-9864fc00374d"
#define CHARACTERISTIC_UUID_FW "86b12866-4b70-4893-8ce6-9864fc00374d"
#define CHARACTERISTIC_UUID_HW_VERSION "86b12867-4b70-4893-8ce6-9864fc00374d"
#define CHARACTERISTIC_UUID_WATCHFACE_NAME \
"86b12868-4b70-4893-8ce6-9864fc00374d"
#define FULL_PACKET 512
#define CHARPOS_UPDATE_FLAG 5
#define STATUS_CONNECTED 0
#define STATUS_DISCONNECTED 4
#define STATUS_UPDATING 1
#define STATUS_READY 2
esp_ota_handle_t otaHandler = 0;
int status = -1;
int bytesReceived = 0;
bool updateFlag = false;
class BLECustomServerCallbacks : public BLEServerCallbacks {
void onConnect(BLEServer *pServer) { status = STATUS_CONNECTED; };
void onDisconnect(BLEServer *pServer) { status = STATUS_DISCONNECTED; }
};
class otaCallback : public BLECharacteristicCallbacks {
public:
otaCallback(BLE *ble) { _p_ble = ble; }
BLE *_p_ble;
void onWrite(BLECharacteristic *pCharacteristic);
};
void otaCallback::onWrite(BLECharacteristic *pCharacteristic) {
std::string rxData = pCharacteristic->getValue();
if (!updateFlag) { // If it's the first packet of OTA since bootup, begin OTA
// Serial.println("Begin FW Update");
esp_ota_begin(esp_ota_get_next_update_partition(NULL), OTA_SIZE_UNKNOWN,
&otaHandler);
updateFlag = true;
status = STATUS_UPDATING;
}
if (_p_ble != NULL) {
if (rxData.length() > 0) {
esp_ota_write(otaHandler, rxData.c_str(), rxData.length());
bytesReceived = bytesReceived + rxData.length();
if (rxData.length() != FULL_PACKET) {
esp_ota_end(otaHandler);
// Serial.println("End FW Update");
if (ESP_OK == esp_ota_set_boot_partition(
esp_ota_get_next_update_partition(NULL))) {
status = STATUS_READY;
} else {
// Serial.println("Upload Error");
}
}
}
}
uint8_t txData[5] = {1, 2, 3, 4, 5};
// delay(1000);
pCharacteristic->setValue((uint8_t *)txData, 5);
pCharacteristic->notify();
}
//
// Constructor
BLE::BLE(void) {}
//
// Destructor
BLE::~BLE(void) {}
//
// begin
bool BLE::begin(const char *localName = "Watchy BLE OTA") {
// Create the BLE Device
BLEDevice::init(localName);
// Create the BLE Server
pServer = BLEDevice::createServer();
pServer->setCallbacks(new BLECustomServerCallbacks());
// Create the BLE Service
pESPOTAService = pServer->createService(SERVICE_UUID_ESPOTA);
pService = pServer->createService(SERVICE_UUID_OTA);
// Create a BLE Characteristic
pESPOTAIdCharacteristic = pESPOTAService->createCharacteristic(
CHARACTERISTIC_UUID_ID, BLECharacteristic::PROPERTY_READ);
pVersionCharacteristic = pService->createCharacteristic(
CHARACTERISTIC_UUID_HW_VERSION, BLECharacteristic::PROPERTY_READ);
pWatchFaceNameCharacteristic = pService->createCharacteristic(
CHARACTERISTIC_UUID_WATCHFACE_NAME, BLECharacteristic::PROPERTY_READ);
pOtaCharacteristic = pService->createCharacteristic(
CHARACTERISTIC_UUID_FW,
BLECharacteristic::PROPERTY_NOTIFY | BLECharacteristic::PROPERTY_WRITE);
pOtaCharacteristic->addDescriptor(new BLE2902());
pOtaCharacteristic->setCallbacks(new otaCallback(this));
// Start the service(s)
pESPOTAService->start();
pService->start();
// Start advertising
pServer->getAdvertising()->addServiceUUID(SERVICE_UUID_ESPOTA);
pServer->getAdvertising()->start();
uint8_t hardwareVersion[5] = {HARDWARE_VERSION_MAJOR, HARDWARE_VERSION_MINOR,
SOFTWARE_VERSION_MAJOR, SOFTWARE_VERSION_MINOR,
SOFTWARE_VERSION_PATCH};
pVersionCharacteristic->setValue((uint8_t *)hardwareVersion, 5);
pWatchFaceNameCharacteristic->setValue("Watchy 7 Segment");
return true;
}
int BLE::updateStatus() { return status; }
int BLE::howManyBytes() { return bytesReceived; }

View File

@ -1,40 +0,0 @@
#ifndef _BLE_H_
#define _BLE_H_
#include "Arduino.h"
#include <BLE2902.h>
#include <BLEDevice.h>
#include <BLEServer.h>
#include <BLEUtils.h>
#include "esp_ota_ops.h"
#include "config.h"
class BLE;
class BLE {
public:
BLE(void);
~BLE(void);
bool begin(const char *localName);
int updateStatus();
int howManyBytes();
private:
String local_name;
BLEServer *pServer = NULL;
BLEService *pESPOTAService = NULL;
BLECharacteristic *pESPOTAIdCharacteristic = NULL;
BLEService *pService = NULL;
BLECharacteristic *pVersionCharacteristic = NULL;
BLECharacteristic *pOtaCharacteristic = NULL;
BLECharacteristic *pWatchFaceNameCharacteristic = NULL;
};
#endif

File diff suppressed because it is too large Load Diff

View File

@ -1,502 +0,0 @@
// Display Library for SPI e-paper panels from Dalian Good Display and boards from Waveshare.
// Requires HW SPI and Adafruit_GFX. Caution: the e-paper panels require 3.3V supply AND data lines!
//
// based on Demo Example from Good Display, available here: http://www.e-paper-display.com/download_detail/downloadsId=806.html
// Panel: GDEH0154D67 : http://www.e-paper-display.com/products_detail/productId=455.html
// Controller : SSD1681 : http://www.e-paper-display.com/download_detail/downloadsId=825.html
//
// Author: Jean-Marc Zingg
//
// Version: see library.properties
//
// Library: https://github.com/ZinggJM/GxEPD2
//
// The original code from the author has been slightly modified to improve the performance for Watchy Project:
// Link: https://github.com/sqfmi/Watchy
#include "Display.h"
#include "config.h"
RTC_DATA_ATTR bool displayFullInit = true;
void WatchyDisplay::busyCallback(const void *) {
gpio_wakeup_enable((gpio_num_t)DISPLAY_BUSY, GPIO_INTR_LOW_LEVEL);
esp_sleep_enable_gpio_wakeup();
esp_light_sleep_start();
}
WatchyDisplay::WatchyDisplay() :
GxEPD2_EPD(DISPLAY_CS, DISPLAY_DC, DISPLAY_RES, DISPLAY_BUSY, HIGH, 10000000, WIDTH, HEIGHT, panel, hasColor, hasPartialUpdate, hasFastPartialUpdate)
{
// Setup callback and SPI by default
selectSPI(SPI, SPISettings(20000000, MSBFIRST, SPI_MODE0));
setBusyCallback(busyCallback);
}
void WatchyDisplay::initWatchy() {
// Watchy default initialization
init(0, displayFullInit, 2, true);
}
void WatchyDisplay::asyncPowerOn() {
// This is expensive if unused
if (!waitingPowerOn && !_hibernating) {
_InitDisplay();
_PowerOnAsync();
}
}
void WatchyDisplay::setDarkBorder(bool dark) {
if (_hibernating) return;
darkBorder = dark;
_startTransfer();
_transferCommand(0x3C); // BorderWavefrom
_transfer(dark ? 0x02 : 0x05);
_endTransfer();
}
void WatchyDisplay::clearScreen(uint8_t value)
{
writeScreenBuffer(value);
refresh(true);
writeScreenBufferAgain(value);
}
void WatchyDisplay::writeScreenBuffer(uint8_t value)
{
if (!_using_partial_mode) _Init_Part();
if (_initial_write) _writeScreenBuffer(0x26, value); // set previous
_writeScreenBuffer(0x24, value); // set current
_initial_write = false; // initial full screen buffer clean done
}
void WatchyDisplay::writeScreenBufferAgain(uint8_t value)
{
if (!_using_partial_mode) _Init_Part();
_writeScreenBuffer(0x24, value); // set current
}
void WatchyDisplay::_writeScreenBuffer(uint8_t command, uint8_t value)
{
_startTransfer();
_transferCommand(command);
for (uint32_t i = 0; i < uint32_t(WIDTH) * uint32_t(HEIGHT) / 8; i++)
{
_transfer(value);
}
_endTransfer();
}
void WatchyDisplay::writeImage(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
_writeImage(0x24, bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::writeImageForFullRefresh(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
_writeImage(0x26, bitmap, x, y, w, h, invert, mirror_y, pgm);
_writeImage(0x24, bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::writeImageAgain(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
_writeImage(0x24, bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::_writeImage(uint8_t command, const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (_initial_write) writeScreenBuffer(); // initial full screen buffer clean
#if defined(ESP8266) || defined(ESP32)
yield(); // avoid wdt
#endif
int16_t wb = (w + 7) / 8; // width bytes, bitmaps are padded
x -= x % 8; // byte boundary
w = wb * 8; // byte boundary
int16_t x1 = x < 0 ? 0 : x; // limit
int16_t y1 = y < 0 ? 0 : y; // limit
int16_t w1 = x + w < int16_t(WIDTH) ? w : int16_t(WIDTH) - x; // limit
int16_t h1 = y + h < int16_t(HEIGHT) ? h : int16_t(HEIGHT) - y; // limit
int16_t dx = x1 - x;
int16_t dy = y1 - y;
w1 -= dx;
h1 -= dy;
if ((w1 <= 0) || (h1 <= 0)) return;
if (!_using_partial_mode) _Init_Part();
_setPartialRamArea(x1, y1, w1, h1);
_startTransfer();
_transferCommand(command);
for (int16_t i = 0; i < h1; i++)
{
for (int16_t j = 0; j < w1 / 8; j++)
{
uint8_t data;
// use wb, h of bitmap for index!
int16_t idx = mirror_y ? j + dx / 8 + ((h - 1 - (i + dy))) * wb : j + dx / 8 + (i + dy) * wb;
if (pgm)
{
#if defined(__AVR) || defined(ESP8266) || defined(ESP32)
data = pgm_read_byte(&bitmap[idx]);
#else
data = bitmap[idx];
#endif
}
else
{
data = bitmap[idx];
}
if (invert) data = ~data;
_transfer(data);
}
}
_endTransfer();
#if defined(ESP8266) || defined(ESP32)
yield(); // avoid wdt
#endif
}
void WatchyDisplay::writeImagePart(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
_writeImagePart(0x24, bitmap, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::writeImagePartAgain(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
_writeImagePart(0x24, bitmap, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::_writeImagePart(uint8_t command, const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (_initial_write) writeScreenBuffer(); // initial full screen buffer clean
#if defined(ESP8266) || defined(ESP32)
yield(); // avoid wdt
#endif
if ((w_bitmap < 0) || (h_bitmap < 0) || (w < 0) || (h < 0)) return;
if ((x_part < 0) || (x_part >= w_bitmap)) return;
if ((y_part < 0) || (y_part >= h_bitmap)) return;
int16_t wb_bitmap = (w_bitmap + 7) / 8; // width bytes, bitmaps are padded
x_part -= x_part % 8; // byte boundary
w = w_bitmap - x_part < w ? w_bitmap - x_part : w; // limit
h = h_bitmap - y_part < h ? h_bitmap - y_part : h; // limit
x -= x % 8; // byte boundary
w = 8 * ((w + 7) / 8); // byte boundary, bitmaps are padded
int16_t x1 = x < 0 ? 0 : x; // limit
int16_t y1 = y < 0 ? 0 : y; // limit
int16_t w1 = x + w < int16_t(WIDTH) ? w : int16_t(WIDTH) - x; // limit
int16_t h1 = y + h < int16_t(HEIGHT) ? h : int16_t(HEIGHT) - y; // limit
int16_t dx = x1 - x;
int16_t dy = y1 - y;
w1 -= dx;
h1 -= dy;
if ((w1 <= 0) || (h1 <= 0)) return;
if (!_using_partial_mode) _Init_Part();
_setPartialRamArea(x1, y1, w1, h1);
_startTransfer();
_transferCommand(command);
for (int16_t i = 0; i < h1; i++)
{
for (int16_t j = 0; j < w1 / 8; j++)
{
uint8_t data;
// use wb_bitmap, h_bitmap of bitmap for index!
int16_t idx = mirror_y ? x_part / 8 + j + dx / 8 + ((h_bitmap - 1 - (y_part + i + dy))) * wb_bitmap : x_part / 8 + j + dx / 8 + (y_part + i + dy) * wb_bitmap;
if (pgm)
{
#if defined(__AVR) || defined(ESP8266) || defined(ESP32)
data = pgm_read_byte(&bitmap[idx]);
#else
data = bitmap[idx];
#endif
}
else
{
data = bitmap[idx];
}
if (invert) data = ~data;
_transfer(data);
}
}
_endTransfer();
#if defined(ESP8266) || defined(ESP32)
yield(); // avoid wdt
#endif
}
void WatchyDisplay::writeImage(const uint8_t* black, const uint8_t* color, int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (black)
{
writeImage(black, x, y, w, h, invert, mirror_y, pgm);
}
}
void WatchyDisplay::writeImagePart(const uint8_t* black, const uint8_t* color, int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (black)
{
writeImagePart(black, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
}
}
void WatchyDisplay::writeNative(const uint8_t* data1, const uint8_t* data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (data1)
{
writeImage(data1, x, y, w, h, invert, mirror_y, pgm);
}
}
void WatchyDisplay::drawImage(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
writeImage(bitmap, x, y, w, h, invert, mirror_y, pgm);
refresh(x, y, w, h);
writeImageAgain(bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::drawImagePart(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
writeImagePart(bitmap, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
refresh(x, y, w, h);
writeImagePartAgain(bitmap, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
}
void WatchyDisplay::drawImage(const uint8_t* black, const uint8_t* color, int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (black)
{
drawImage(black, x, y, w, h, invert, mirror_y, pgm);
}
}
void WatchyDisplay::drawImagePart(const uint8_t* black, const uint8_t* color, int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (black)
{
drawImagePart(black, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
}
}
void WatchyDisplay::drawNative(const uint8_t* data1, const uint8_t* data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert, bool mirror_y, bool pgm)
{
if (data1)
{
drawImage(data1, x, y, w, h, invert, mirror_y, pgm);
}
}
void WatchyDisplay::refresh(bool partial_update_mode)
{
if (partial_update_mode) refresh(0, 0, WIDTH, HEIGHT);
else
{
if (_using_partial_mode) _Init_Full();
_Update_Full();
_initial_refresh = false; // initial full update done
}
}
void WatchyDisplay::refresh(int16_t x, int16_t y, int16_t w, int16_t h)
{
if (_initial_refresh) return refresh(false); // initial update needs be full update
// intersection with screen
int16_t w1 = x < 0 ? w + x : w; // reduce
int16_t h1 = y < 0 ? h + y : h; // reduce
int16_t x1 = x < 0 ? 0 : x; // limit
int16_t y1 = y < 0 ? 0 : y; // limit
w1 = x1 + w1 < int16_t(WIDTH) ? w1 : int16_t(WIDTH) - x1; // limit
h1 = y1 + h1 < int16_t(HEIGHT) ? h1 : int16_t(HEIGHT) - y1; // limit
if ((w1 <= 0) || (h1 <= 0)) return;
// make x1, w1 multiple of 8
w1 += x1 % 8;
if (w1 % 8 > 0) w1 += 8 - w1 % 8;
x1 -= x1 % 8;
if (!_using_partial_mode) _Init_Part();
_setPartialRamArea(x1, y1, w1, h1);
_Update_Part();
}
void WatchyDisplay::powerOff()
{
_PowerOff();
}
void WatchyDisplay::hibernate()
{
//_PowerOff(); // Not needed before entering deep sleep
if (_rst >= 0)
{
_writeCommand(0x10); // deep sleep mode
_writeData(0x1); // enter deep sleep
_hibernating = true;
}
}
void WatchyDisplay::_setPartialRamArea(uint16_t x, uint16_t y, uint16_t w, uint16_t h)
{
_startTransfer();
_transferCommand(0x11); // set ram entry mode
_transfer(0x03); // x increase, y increase : normal mode
_transferCommand(0x44);
_transfer(x / 8);
_transfer((x + w - 1) / 8);
_transferCommand(0x45);
_transfer(y % 256);
_transfer(y / 256);
_transfer((y + h - 1) % 256);
_transfer((y + h - 1) / 256);
_transferCommand(0x4e);
_transfer(x / 8);
_transferCommand(0x4f);
_transfer(y % 256);
_transfer(y / 256);
_endTransfer();
}
void WatchyDisplay::_PowerOnAsync()
{
if (_power_is_on)
return;
_startTransfer();
_transferCommand(0x22);
_transfer(0xf8);
_transferCommand(0x20);
_endTransfer();
waitingPowerOn = true;
_power_is_on = true;
}
void WatchyDisplay::_PowerOn()
{
if (waitingPowerOn)
{
waitingPowerOn = false;
_waitWhileBusy("_PowerOn", power_on_time);
}
if (_power_is_on)
return;
_startTransfer();
_transferCommand(0x22);
_transfer(0xf8);
_transferCommand(0x20);
_endTransfer();
_waitWhileBusy("_PowerOn", power_on_time);
_power_is_on = true;
}
void WatchyDisplay::_PowerOff()
{
if (waitingPowerOn)
{
waitingPowerOn = false;
_waitWhileBusy("_PowerOn", power_on_time);
}
if (!_power_is_on)
return;
_startTransfer();
_transferCommand(0x22);
_transfer(0x83);
_transferCommand(0x20);
_endTransfer();
_waitWhileBusy("_PowerOff", power_off_time);
_power_is_on = false;
_using_partial_mode = false;
}
void WatchyDisplay::_InitDisplay()
{
if (_hibernating) _reset();
// No need to soft reset, the Display goes to same state after hard reset
// _writeCommand(0x12); // soft reset
// _waitWhileBusy("_SoftReset", 10); // 10ms max according to specs*/
_startTransfer();
_transferCommand(0x01); // Driver output control
_transfer(0xC7);
_transfer(0x00);
_transfer(0x00);
if (reduceBoosterTime) {
// SSD1675B controller datasheet
_transferCommand(0x0C); // BOOSTER_SOFT_START_CONTROL
// Set the driving strength of GDR for all phases to maximun 0b111 -> 0xF
// Set the minimum off time of GDR to minimum 0x4 (values below sould be same)
_transfer(0xF4); // Phase1 Default value 0x8B
_transfer(0xF4); // Phase2 Default value 0x9C
_transfer(0xF4); // Phase3 Default value 0x96
_transfer(0x00); // Duration of phases, Default 0xF = 0b00 11 11 (40ms Phase 1/2, 10ms Phase 3)
}
_transferCommand(0x18); // Read built-in temperature sensor
_transfer(0x80);
_endTransfer();
setDarkBorder(darkBorder);
_setPartialRamArea(0, 0, WIDTH, HEIGHT);
}
void WatchyDisplay::_reset()
{
// Call default method if not configured the same way
if (_rst < 0 || !_pulldown_rst_mode) {
GxEPD2_EPD::_reset();
return;
}
digitalWrite(_rst, LOW);
pinMode(_rst, OUTPUT);
delay(_reset_duration);
pinMode(_rst, INPUT_PULLUP);
// Tested calling _powerOn() inmediately, and works ok, no need to sleep
// delay(_reset_duration > 10 ? _reset_duration : 0);
_hibernating = false;
}
void WatchyDisplay::_Init_Full()
{
_InitDisplay();
_PowerOn();
_using_partial_mode = false;
}
void WatchyDisplay::_Init_Part()
{
_InitDisplay();
_PowerOn();
_using_partial_mode = true;
}
void WatchyDisplay::_Update_Full()
{
_startTransfer();
_transferCommand(0x22);
_transfer(0xf4);
_transferCommand(0x20);
_endTransfer();
_waitWhileBusy("_Update_Full", full_refresh_time);
displayFullInit = false;
}
void WatchyDisplay::_Update_Part()
{
_startTransfer();
_transferCommand(0x22);
//_transfer(0xcc); // skip temperature load (-5ms)
_transfer(0xfc);
_transferCommand(0x20);
_endTransfer();
_waitWhileBusy("_Update_Part", partial_refresh_time);
}
void WatchyDisplay::_transferCommand(uint8_t value)
{
if (_dc >= 0) digitalWrite(_dc, LOW);
SPI.transfer(value);
if (_dc >= 0) digitalWrite(_dc, HIGH);
}

View File

@ -1,97 +0,0 @@
// Display Library for SPI e-paper panels from Dalian Good Display and boards from Waveshare.
// Requires HW SPI and Adafruit_GFX. Caution: the e-paper panels require 3.3V supply AND data lines!
//
// based on Demo Example from Good Display, available here: http://www.e-paper-display.com/download_detail/downloadsId=806.html
// Panel: GDEH0154D67 : http://www.e-paper-display.com/products_detail/productId=455.html
// Controller : SSD1681 : http://www.e-paper-display.com/download_detail/downloadsId=825.html
//
// Author: Jean-Marc Zingg
//
// Version: see library.properties
//
// Library: https://github.com/ZinggJM/GxEPD2
//
// The original code from the author has been slightly modified to improve the performance for Watchy Project:
// Link: https://github.com/sqfmi/Watchy
#pragma once
#include <GxEPD2_EPD.h>
class WatchyDisplay : public GxEPD2_EPD
{
public:
// attributes
static const uint16_t WIDTH = 200;
static const uint16_t WIDTH_VISIBLE = WIDTH;
static const uint16_t HEIGHT = 200;
static const GxEPD2::Panel panel = GxEPD2::GDEH0154D67;
static const bool hasColor = false;
static const bool hasPartialUpdate = true;
static const bool hasFastPartialUpdate = true;
static const uint16_t power_on_time = 100; // ms, e.g. 95583us
static const uint16_t power_off_time = 150; // ms, e.g. 140621us
static const uint16_t full_refresh_time = 2600; // ms, e.g. 2509602us
static const uint16_t partial_refresh_time = 500; // ms, e.g. 457282us
// constructor
WatchyDisplay();
void initWatchy();
void setDarkBorder(bool darkBorder);
void asyncPowerOn();
void _PowerOnAsync();
bool waitingPowerOn = false;
static void busyCallback(const void *);
// methods (virtual)
// Support for Bitmaps (Sprites) to Controller Buffer and to Screen
void clearScreen(uint8_t value = 0xFF); // init controller memory and screen (default white)
void writeScreenBuffer(uint8_t value = 0xFF); // init controller memory (default white)
void writeScreenBufferAgain(uint8_t value = 0xFF); // init previous buffer controller memory (default white)
// write to controller memory, without screen refresh; x and w should be multiple of 8
void writeImage(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void writeImageForFullRefresh(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void writeImagePart(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void writeImage(const uint8_t* black, const uint8_t* color, int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void writeImagePart(const uint8_t* black, const uint8_t* color, int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
// for differential update: set current and previous buffers equal (for fast partial update to work correctly)
void writeImageAgain(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void writeImagePartAgain(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
// write sprite of native data to controller memory, without screen refresh; x and w should be multiple of 8
void writeNative(const uint8_t* data1, const uint8_t* data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
// write to controller memory, with screen refresh; x and w should be multiple of 8
void drawImage(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void drawImagePart(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void drawImage(const uint8_t* black, const uint8_t* color, int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void drawImagePart(const uint8_t* black, const uint8_t* color, int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
// write sprite of native data to controller memory, with screen refresh; x and w should be multiple of 8
void drawNative(const uint8_t* data1, const uint8_t* data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void refresh(bool partial_update_mode = false); // screen refresh from controller memory to full screen
void refresh(int16_t x, int16_t y, int16_t w, int16_t h); // screen refresh from controller memory, partial screen
void powerOff(); // turns off generation of panel driving voltages, avoids screen fading over time
void hibernate(); // turns powerOff() and sets controller to deep sleep for minimum power use, ONLY if wakeable by RST (rst >= 0)
bool darkBorder = false; // adds a dark border outside the normal screen area
static constexpr bool reduceBoosterTime = true; // Saves ~200ms
private:
void _writeScreenBuffer(uint8_t command, uint8_t value);
void _writeImage(uint8_t command, const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void _writeImagePart(uint8_t command, const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
int16_t x, int16_t y, int16_t w, int16_t h, bool invert = false, bool mirror_y = false, bool pgm = false);
void _setPartialRamArea(uint16_t x, uint16_t y, uint16_t w, uint16_t h);
void _PowerOn();
void _PowerOff();
void _InitDisplay();
void _Init_Full();
void _Init_Part();
void _Update_Full();
void _Update_Part();
void _reset();
void _transferCommand(uint8_t command);
};

File diff suppressed because it is too large Load Diff

View File

@ -1,101 +0,0 @@
#ifndef WATCHY_H
#define WATCHY_H
#include <Arduino.h>
#include <WiFiManager.h>
#include <HTTPClient.h>
#include <NTPClient.h>
#include <WiFiUdp.h>
#include <Arduino_JSON.h>
#include <GxEPD2_BW.h>
#include <Wire.h>
#include <Fonts/FreeMonoBold9pt7b.h>
#include "DSEG7_Classic_Bold_53.h"
#include "Display.h"
#include "WatchyRTC.h"
#include "BLE.h"
#include "bma.h"
#include "config.h"
#include "esp_chip_info.h"
typedef struct weatherData {
int8_t temperature;
int16_t weatherConditionCode;
bool isMetric;
String weatherDescription;
bool external;
tmElements_t sunrise;
tmElements_t sunset;
} weatherData;
typedef struct watchySettings {
// Weather Settings
String cityID;
String lat;
String lon;
String weatherAPIKey;
String weatherURL;
String weatherUnit;
String weatherLang;
int8_t weatherUpdateInterval;
// NTP Settings
String ntpServer;
int gmtOffset;
//
bool vibrateOClock;
} watchySettings;
class Watchy {
public:
static WatchyRTC RTC;
static GxEPD2_BW<WatchyDisplay, WatchyDisplay::HEIGHT> display;
tmElements_t currentTime;
watchySettings settings;
public:
explicit Watchy(const watchySettings &s) : settings(s) {} // constructor
void init(String datetime = "");
void deepSleep();
float getBatteryVoltage();
uint8_t getBoardRevision();
void vibMotor(uint8_t intervalMs = 100, uint8_t length = 20);
virtual void handleButtonPress();
void showMenu(byte menuIndex, bool partialRefresh);
void showFastMenu(byte menuIndex);
void showAbout();
void showBuzz();
void showAccelerometer();
void showUpdateFW();
void showSyncNTP();
bool syncNTP();
bool syncNTP(long gmt);
bool syncNTP(long gmt, String ntpServer);
void setTime();
void setupWifi();
bool connectWiFi();
weatherData getWeatherData();
void updateFWBegin();
void showWatchFace(bool partialRefresh);
virtual void drawWatchFace(); // override this method for different watch
// faces
private:
void _bmaConfig();
static void _configModeCallback(WiFiManager *myWiFiManager);
static uint16_t _readRegister(uint8_t address, uint8_t reg, uint8_t *data,
uint16_t len);
static uint16_t _writeRegister(uint8_t address, uint8_t reg, uint8_t *data,
uint16_t len);
weatherData _getWeatherData(String cityID, String lat, String lon, String units, String lang,
String url, String apiKey, uint8_t updateInterval);
};
extern RTC_DATA_ATTR int guiState;
extern RTC_DATA_ATTR int menuIndex;
extern RTC_DATA_ATTR BMA423 sensor;
extern RTC_DATA_ATTR bool WIFI_CONFIGURED;
extern RTC_DATA_ATTR bool BLE_CONFIGURED;
#endif

View File

@ -1,150 +0,0 @@
#include "WatchyRTC.h"
WatchyRTC::WatchyRTC() : rtc_ds(false) {}
void WatchyRTC::init() {
byte error;
Wire.beginTransmission(RTC_DS_ADDR);
error = Wire.endTransmission();
if (error == 0) {
rtcType = DS3231;
} else {
Wire.beginTransmission(RTC_PCF_ADDR);
error = Wire.endTransmission();
if (error == 0) {
rtcType = PCF8563;
} else {
// RTC Error
}
}
}
void WatchyRTC::config(
String datetime) { // String datetime format is YYYY:MM:DD:HH:MM:SS
if (rtcType == DS3231) {
_DSConfig(datetime);
} else {
_PCFConfig(datetime);
}
}
void WatchyRTC::clearAlarm() {
if (rtcType == DS3231) {
rtc_ds.alarm(DS3232RTC::ALARM_2);
} else {
int nextAlarmMinute = 0;
rtc_pcf.clearAlarm(); // resets the alarm flag in the RTC
nextAlarmMinute = rtc_pcf.getMinute();
nextAlarmMinute =
(nextAlarmMinute == 59)
? 0
: (nextAlarmMinute + 1); // set alarm to trigger 1 minute from now
rtc_pcf.setAlarm(nextAlarmMinute, 99, 99, 99);
}
}
void WatchyRTC::read(tmElements_t &tm) {
if (rtcType == DS3231) {
rtc_ds.read(tm);
} else {
rtc_pcf.getDate();
tm.Year = y2kYearToTm(rtc_pcf.getYear());
tm.Month = rtc_pcf.getMonth();
tm.Day = rtc_pcf.getDay();
tm.Wday =
rtc_pcf.getWeekday() + 1; // TimeLib & DS3231 has Wday range of 1-7, but
// PCF8563 stores day of week in 0-6 range
tm.Hour = rtc_pcf.getHour();
tm.Minute = rtc_pcf.getMinute();
tm.Second = rtc_pcf.getSecond();
}
}
void WatchyRTC::set(tmElements_t tm) {
if (rtcType == DS3231) {
time_t t = makeTime(tm);
rtc_ds.set(t);
} else {
time_t t = makeTime(tm); // make and break to calculate tm.Wday
breakTime(t, tm);
// day, weekday, month, century(1=1900, 0=2000), year(0-99)
rtc_pcf.setDate(
tm.Day, tm.Wday - 1, tm.Month, 0,
tmYearToY2k(tm.Year)); // TimeLib & DS3231 has Wday range of 1-7, but
// PCF8563 stores day of week in 0-6 range
// hr, min, sec
rtc_pcf.setTime(tm.Hour, tm.Minute, tm.Second);
clearAlarm();
}
}
uint8_t WatchyRTC::temperature() {
if (rtcType == DS3231) {
return rtc_ds.temperature();
} else {
return 255; // error
}
}
void WatchyRTC::_DSConfig(
String datetime) { // String datetime is YYYY:MM:DD:HH:MM:SS
if (datetime != "") {
tmElements_t tm;
tm.Year = CalendarYrToTm(_getValue(datetime, ':', 0).toInt()); // YYYY -
// 1970
tm.Month = _getValue(datetime, ':', 1).toInt();
tm.Day = _getValue(datetime, ':', 2).toInt();
tm.Hour = _getValue(datetime, ':', 3).toInt();
tm.Minute = _getValue(datetime, ':', 4).toInt();
tm.Second = _getValue(datetime, ':', 5).toInt();
time_t t = makeTime(tm);
rtc_ds.set(t);
}
// https://github.com/JChristensen/DS3232RTC
rtc_ds.squareWave(DS3232RTC::SQWAVE_NONE); // disable square wave output
rtc_ds.setAlarm(DS3232RTC::ALM2_EVERY_MINUTE, 0, 0, 0,
0); // alarm wakes up Watchy every minute
rtc_ds.alarmInterrupt(DS3232RTC::ALARM_2, true); // enable alarm interrupt
}
void WatchyRTC::_PCFConfig(
String datetime) { // String datetime is YYYY:MM:DD:HH:MM:SS
if (datetime != "") {
tmElements_t tm;
tm.Year = CalendarYrToTm(_getValue(datetime, ':', 0).toInt()); // YYYY -
// 1970
tm.Month = _getValue(datetime, ':', 1).toInt();
tm.Day = _getValue(datetime, ':', 2).toInt();
tm.Hour = _getValue(datetime, ':', 3).toInt();
tm.Minute = _getValue(datetime, ':', 4).toInt();
tm.Second = _getValue(datetime, ':', 5).toInt();
time_t t = makeTime(tm); // make and break to calculate tm.Wday
breakTime(t, tm);
// day, weekday, month, century(1=1900, 0=2000), year(0-99)
rtc_pcf.setDate(
tm.Day, tm.Wday - 1, tm.Month, 0,
tmYearToY2k(tm.Year)); // TimeLib & DS3231 has Wday range of 1-7, but
// PCF8563 stores day of week in 0-6 range
// hr, min, sec
rtc_pcf.setTime(tm.Hour, tm.Minute, tm.Second);
}
// on POR event, PCF8563 sets month to 0, which will give an error since
// months are 1-12
clearAlarm();
}
String WatchyRTC::_getValue(String data, char separator, int index) {
int found = 0;
int strIndex[] = {0, -1};
int maxIndex = data.length() - 1;
for (int i = 0; i <= maxIndex && found <= index; i++) {
if (data.charAt(i) == separator || i == maxIndex) {
found++;
strIndex[0] = strIndex[1] + 1;
strIndex[1] = (i == maxIndex) ? i + 1 : i;
}
}
return found > index ? data.substring(strIndex[0], strIndex[1]) : "";
}

View File

@ -1,38 +0,0 @@
#ifndef WATCHY_RTC_H
#define WATCHY_RTC_H
#include "config.h"
#include "time.h"
#include <DS3232RTC.h>
#include <Rtc_Pcf8563.h>
#define DS3231 1
#define PCF8563 2
#define RTC_DS_ADDR 0x68
#define RTC_PCF_ADDR 0x51
#define YEAR_OFFSET_DS 1970
#define YEAR_OFFSET_PCF 2000
class WatchyRTC {
public:
DS3232RTC rtc_ds;
Rtc_Pcf8563 rtc_pcf;
uint8_t rtcType;
public:
WatchyRTC();
void init();
void config(String datetime); // String datetime format is YYYY:MM:DD:HH:MM:SS
void clearAlarm();
void read(tmElements_t &tm);
void set(tmElements_t tm);
uint8_t temperature();
private:
void _DSConfig(String datetime);
void _PCFConfig(String datetime);
int _getDayOfWeek(int d, int m, int y);
String _getValue(String data, char separator, int index);
};
#endif

View File

@ -1,283 +0,0 @@
#include "bma.h"
#define DEBUGPORT Serial
#ifdef DEBUGPORT
#define DEBUG(...) DEBUGPORT.printf(__VA_ARGS__)
#else
#define DEBUG(...)
#endif
BMA423::BMA423() {
__readRegisterFptr = nullptr;
__writeRegisterFptr = nullptr;
__delayCallBlackFptr = nullptr;
__init = false;
}
BMA423::~BMA423() {}
bool BMA423::begin(bma4_com_fptr_t readCallBlack,
bma4_com_fptr_t writeCallBlack,
bma4_delay_fptr_t delayCallBlack, uint8_t address) {
if (__init || readCallBlack == nullptr || writeCallBlack == nullptr ||
delayCallBlack == nullptr) {
return true;
}
__readRegisterFptr = readCallBlack;
__writeRegisterFptr = writeCallBlack;
__delayCallBlackFptr = delayCallBlack;
__devFptr.dev_addr = address;
__devFptr.interface = BMA4_I2C_INTERFACE;
__devFptr.bus_read = readCallBlack;
__devFptr.bus_write = writeCallBlack;
__devFptr.delay = delayCallBlack;
__devFptr.read_write_len = 8;
__devFptr.resolution = 12;
__devFptr.feature_len = BMA423_FEATURE_SIZE;
softReset();
__delayCallBlackFptr(20);
if (bma423_init(&__devFptr) != BMA4_OK) {
DEBUG("BMA423 FAIL\n");
return false;
}
if (bma423_write_config_file(&__devFptr) != BMA4_OK) {
DEBUG("BMA423 Write Config FAIL\n");
return false;
}
__init = true;
struct bma4_int_pin_config config;
config.edge_ctrl = BMA4_LEVEL_TRIGGER;
config.lvl = BMA4_ACTIVE_HIGH;
config.od = BMA4_PUSH_PULL;
config.output_en = BMA4_OUTPUT_ENABLE;
config.input_en = BMA4_INPUT_DISABLE;
if (bma4_set_int_pin_config(&config, BMA4_INTR1_MAP, &__devFptr) != BMA4_OK) {
DEBUG("BMA423 SET INT FAIL\n");
return false;
}
return true;
}
void BMA423::softReset() {
uint8_t reg = BMA4_RESET_ADDR;
__writeRegisterFptr(BMA4_I2C_ADDR_PRIMARY, BMA4_RESET_SET_MASK, &reg, 1);
}
void BMA423::shutDown() {
bma4_set_advance_power_save(BMA4_DISABLE, &__devFptr);
}
void BMA423::wakeUp() { bma4_set_advance_power_save(BMA4_ENABLE, &__devFptr); }
uint16_t BMA423::getErrorCode() {
struct bma4_err_reg err;
uint16_t rslt = bma4_get_error_status(&err, &__devFptr);
return rslt;
}
uint16_t BMA423::getStatus() {
uint8_t status;
bma4_get_status(&status, &__devFptr);
return status;
}
uint32_t BMA423::getSensorTime() {
uint32_t ms;
bma4_get_sensor_time(&ms, &__devFptr);
return ms;
}
bool BMA423::selfTest() {
return (BMA4_OK ==
bma4_selftest_config(BMA4_ACCEL_SELFTEST_ENABLE_MSK, &__devFptr));
}
uint8_t BMA423::getDirection() {
Accel acc;
if (bma4_read_accel_xyz(&acc, &__devFptr) != BMA4_OK) {
return 0;
}
uint16_t absX = abs(acc.x);
uint16_t absY = abs(acc.y);
uint16_t absZ = abs(acc.z);
if ((absZ > absX) && (absZ > absY)) {
if (acc.z > 0) {
return DIRECTION_DISP_DOWN;
} else {
return DIRECTION_DISP_UP;
}
} else if ((absY > absX) && (absY > absZ)) {
if (acc.y > 0) {
return DIRECTION_RIGHT_EDGE;
} else {
return DIRECTION_LEFT_EDGE;
}
} else {
if (acc.x < 0) {
return DIRECTION_BOTTOM_EDGE;
} else {
return DIRECTION_TOP_EDGE;
}
}
}
float BMA423::readTemperature() {
int32_t data = 0;
bma4_get_temperature(&data, BMA4_DEG, &__devFptr);
float res = (float)data / (float)BMA4_SCALE_TEMP;
/* 0x80 - temp read from the register and 23 is the ambient temp added.
* If the temp read from register is 0x80, it means no valid
* information is available */
if (((data - 23) / BMA4_SCALE_TEMP) == 0x80) {
res = 0;
}
return res;
}
float BMA423::readTemperatureF() {
float temp = readTemperature();
if (temp != 0) {
temp = temp * 1.8 + 32.0;
}
return (temp);
}
bool BMA423::getAccel(Accel &acc) {
memset(&acc, 0, sizeof(acc));
if (bma4_read_accel_xyz(&acc, &__devFptr) != BMA4_OK) {
return false;
}
return true;
}
bool BMA423::getAccelEnable() {
uint8_t en;
bma4_get_accel_enable(&en, &__devFptr);
return (en & BMA4_ACCEL_ENABLE_POS) == BMA4_ACCEL_ENABLE_POS;
}
bool BMA423::disableAccel() { return enableAccel(false); }
bool BMA423::enableAccel(bool en) {
return (BMA4_OK ==
bma4_set_accel_enable(en ? BMA4_ENABLE : BMA4_DISABLE, &__devFptr));
}
bool BMA423::setAccelConfig(Acfg &cfg) {
return (BMA4_OK == bma4_set_accel_config(&cfg, &__devFptr));
}
bool BMA423::getAccelConfig(Acfg &cfg) {
return (BMA4_OK == bma4_get_accel_config(&cfg, &__devFptr));
}
bool BMA423::setRemapAxes(struct bma423_axes_remap *remap_data) {
return (BMA4_OK == bma423_set_remap_axes(remap_data, &__devFptr));
}
bool BMA423::resetStepCounter() {
return BMA4_OK == bma423_reset_step_counter(&__devFptr);
}
uint32_t BMA423::getCounter() {
uint32_t stepCount;
if (bma423_step_counter_output(&stepCount, &__devFptr) == BMA4_OK) {
return stepCount;
}
return 0;
}
bool BMA423::setINTPinConfig(struct bma4_int_pin_config config,
uint8_t pinMap) {
return BMA4_OK == bma4_set_int_pin_config(&config, pinMap, &__devFptr);
}
bool BMA423::getINT() {
return bma423_read_int_status(&__IRQ_MASK, &__devFptr) == BMA4_OK;
}
uint8_t BMA423::getIRQMASK() { return __IRQ_MASK; }
bool BMA423::disableIRQ(uint16_t int_map) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP, int_map, BMA4_DISABLE,
&__devFptr));
}
bool BMA423::enableIRQ(uint16_t int_map) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP, int_map, BMA4_ENABLE,
&__devFptr));
}
bool BMA423::enableFeature(uint8_t feature, uint8_t enable) {
if ((feature & BMA423_STEP_CNTR) == BMA423_STEP_CNTR) {
bma423_step_detector_enable(enable ? BMA4_ENABLE : BMA4_DISABLE,
&__devFptr);
}
return (BMA4_OK == bma423_feature_enable(feature, enable, &__devFptr));
}
bool BMA423::isStepCounter() {
return (bool)(BMA423_STEP_CNTR_INT & __IRQ_MASK);
}
bool BMA423::isDoubleClick() { return (bool)(BMA423_WAKEUP_INT & __IRQ_MASK); }
bool BMA423::isTilt() { return (bool)(BMA423_TILT_INT & __IRQ_MASK); }
bool BMA423::isActivity() { return (bool)(BMA423_ACTIVITY_INT & __IRQ_MASK); }
bool BMA423::isAnyNoMotion() {
return (bool)(BMA423_ANY_NO_MOTION_INT & __IRQ_MASK);
}
bool BMA423::enableStepCountInterrupt(bool en) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP, BMA423_STEP_CNTR_INT,
en, &__devFptr));
}
bool BMA423::enableTiltInterrupt(bool en) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP, BMA423_TILT_INT, en,
&__devFptr));
}
bool BMA423::enableWakeupInterrupt(bool en) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP, BMA423_WAKEUP_INT, en,
&__devFptr));
}
bool BMA423::enableAnyNoMotionInterrupt(bool en) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP,
BMA423_ANY_NO_MOTION_INT, en,
&__devFptr));
}
bool BMA423::enableActivityInterrupt(bool en) {
return (BMA4_OK == bma423_map_interrupt(BMA4_INTR1_MAP, BMA423_ACTIVITY_INT,
en, &__devFptr));
}
const char *BMA423::getActivity() {
uint8_t activity;
bma423_activity_output(&activity, &__devFptr);
if (activity & BMA423_USER_STATIONARY) {
return "BMA423_USER_STATIONARY";
} else if (activity & BMA423_USER_WALKING) {
return "BMA423_USER_WALKING";
} else if (activity & BMA423_USER_RUNNING) {
return "BMA423_USER_RUNNING";
} else if (activity & BMA423_STATE_INVALID) {
return "BMA423_STATE_INVALID";
}
return "None";
}

View File

@ -1,87 +0,0 @@
#pragma once
#ifdef ARDUINO
#include <Arduino.h>
#else
#include <stdlib.h>
#endif
#include "bma423.h"
enum {
DIRECTION_TOP_EDGE = 0,
DIRECTION_BOTTOM_EDGE = 1,
DIRECTION_LEFT_EDGE = 2,
DIRECTION_RIGHT_EDGE = 3,
DIRECTION_DISP_UP = 4,
DIRECTION_DISP_DOWN = 5
};
typedef struct bma4_accel Accel;
typedef struct bma4_accel_config Acfg;
class BMA423 {
public:
BMA423();
~BMA423();
bool begin(bma4_com_fptr_t readCallBlack, bma4_com_fptr_t writeCallBlack,
bma4_delay_fptr_t delayCallBlack,
uint8_t address = BMA4_I2C_ADDR_PRIMARY);
void softReset();
void shutDown();
void wakeUp();
bool selfTest();
uint8_t getDirection();
bool setAccelConfig(Acfg &cfg);
bool getAccelConfig(Acfg &cfg);
bool getAccel(Accel &acc);
bool getAccelEnable();
bool disableAccel();
bool enableAccel(bool en = true);
bool setINTPinConfig(struct bma4_int_pin_config config, uint8_t pinMap);
bool getINT();
uint8_t getIRQMASK();
bool disableIRQ(uint16_t int_map = BMA423_STEP_CNTR_INT);
bool enableIRQ(uint16_t int_map = BMA423_STEP_CNTR_INT);
bool isStepCounter();
bool isDoubleClick();
bool isTilt();
bool isActivity();
bool isAnyNoMotion();
bool resetStepCounter();
uint32_t getCounter();
float readTemperature();
float readTemperatureF();
uint16_t getErrorCode();
uint16_t getStatus();
uint32_t getSensorTime();
const char *getActivity();
bool setRemapAxes(struct bma423_axes_remap *remap_data);
bool enableFeature(uint8_t feature, uint8_t enable);
bool enableStepCountInterrupt(bool en = true);
bool enableTiltInterrupt(bool en = true);
bool enableWakeupInterrupt(bool en = true);
bool enableAnyNoMotionInterrupt(bool en = true);
bool enableActivityInterrupt(bool en = true);
private:
bma4_com_fptr_t __readRegisterFptr;
bma4_com_fptr_t __writeRegisterFptr;
bma4_delay_fptr_t __delayCallBlackFptr;
uint8_t __address;
uint16_t __IRQ_MASK;
bool __init;
struct bma4_dev __devFptr;
};

Some files were not shown because too many files have changed in this diff Show More